Code review changes to base_tab.cpp.

Updated gta folder.
This commit is contained in:
gir489 2020-02-23 12:29:59 -05:00
parent ef676cb8b5
commit 663018a7c2
14 changed files with 7137 additions and 194 deletions

View File

@ -0,0 +1,160 @@
#pragma once
#include "natives.hpp"
#include "gta\joaat.hpp"
enum Rewards : Hash
{
REWARD_AMMO_ADVANCEDRIFLE = RAGE_JOAAT("REWARD_AMMO_ADVANCEDRIFLE"),
REWARD_AMMO_APPISTOL = RAGE_JOAAT("REWARD_AMMO_APPISTOL"),
REWARD_AMMO_ASSAULTRIFLE = RAGE_JOAAT("REWARD_AMMO_ASSAULTRIFLE"),
REWARD_AMMO_ASSAULTSHOTGUN = RAGE_JOAAT("REWARD_AMMO_ASSAULTSHOTGUN"),
REWARD_AMMO_ASSAULTSMG = RAGE_JOAAT("REWARD_AMMO_ASSAULTSMG"),
REWARD_AMMO_AUTOSHOTGUN = RAGE_JOAAT("REWARD_AMMO_AUTOSHOTGUN"),
REWARD_AMMO_BULLET_MP = RAGE_JOAAT("REWARD_AMMO_BULLET_MP"),
REWARD_AMMO_BULLPUPRIFLE = RAGE_JOAAT("REWARD_AMMO_BULLPUPRIFLE"),
REWARD_AMMO_BULLPUPSHOTGUN = RAGE_JOAAT("REWARD_AMMO_BULLPUPSHOTGUN"),
REWARD_AMMO_CARBINERIFLE = RAGE_JOAAT("REWARD_AMMO_CARBINERIFLE"),
REWARD_AMMO_COMBATMG = RAGE_JOAAT("REWARD_AMMO_COMBATMG"),
REWARD_AMMO_COMBATPDW = RAGE_JOAAT("REWARD_AMMO_COMBATPDW"),
REWARD_AMMO_COMBATPISTOL = RAGE_JOAAT("REWARD_AMMO_COMBATPISTOL"),
REWARD_AMMO_COMPACTLAUNCHER = RAGE_JOAAT("REWARD_AMMO_COMPACTLAUNCHER"),
REWARD_AMMO_COMPACTRIFLE = RAGE_JOAAT("REWARD_AMMO_COMPACTRIFLE"),
REWARD_AMMO_DBSHOTGUN = RAGE_JOAAT("REWARD_AMMO_DBSHOTGUN"),
REWARD_AMMO_DOUBLEACTION = RAGE_JOAAT("REWARD_AMMO_DOUBLEACTION"),
REWARD_AMMO_FIREWORK = RAGE_JOAAT("REWARD_AMMO_FIREWORK"),
REWARD_AMMO_FIREWORK_MP = RAGE_JOAAT("REWARD_AMMO_FIREWORK_MP"),
REWARD_AMMO_FLAREGUN = RAGE_JOAAT("REWARD_AMMO_FLAREGUN"),
REWARD_AMMO_GRENADE = RAGE_JOAAT("REWARD_AMMO_GRENADE"),
REWARD_AMMO_GRENADELAUNCHER = RAGE_JOAAT("REWARD_AMMO_GRENADELAUNCHER"),
REWARD_AMMO_GRENADELAUNCHER_MP = RAGE_JOAAT("REWARD_AMMO_GRENADELAUNCHER_MP"),
REWARD_AMMO_GUSENBERG = RAGE_JOAAT("REWARD_AMMO_GUSENBERG"),
REWARD_AMMO_HEAVYPISTOL = RAGE_JOAAT("REWARD_AMMO_HEAVYPISTOL"),
REWARD_AMMO_HEAVYSHOTGUN = RAGE_JOAAT("REWARD_AMMO_HEAVYSHOTGUN"),
REWARD_AMMO_HEAVYSNIPER = RAGE_JOAAT("REWARD_AMMO_HEAVYSNIPER"),
REWARD_AMMO_HOMINGLAUNCHER = RAGE_JOAAT("REWARD_AMMO_HOMINGLAUNCHER"),
REWARD_AMMO_MACHINEPISTOL = RAGE_JOAAT("REWARD_AMMO_MACHINEPISTOL"),
REWARD_AMMO_MARKSMANPISTOL = RAGE_JOAAT("REWARD_AMMO_MARKSMANPISTOL"),
REWARD_AMMO_MARKSMANRIFLE = RAGE_JOAAT("REWARD_AMMO_MARKSMANRIFLE"),
REWARD_AMMO_MG = RAGE_JOAAT("REWARD_AMMO_MG"),
REWARD_AMMO_MICROSMG = RAGE_JOAAT("REWARD_AMMO_MICROSMG"),
REWARD_AMMO_MINIGUN = RAGE_JOAAT("REWARD_AMMO_MINIGUN"),
REWARD_AMMO_MINISMG = RAGE_JOAAT("REWARD_AMMO_MINISMG"),
REWARD_AMMO_MISSILE_MP = RAGE_JOAAT("REWARD_AMMO_MISSILE_MP"),
REWARD_AMMO_MOLOTOV = RAGE_JOAAT("REWARD_AMMO_MOLOTOV"),
REWARD_AMMO_MUSKET = RAGE_JOAAT("REWARD_AMMO_MUSKET"),
REWARD_AMMO_PETROLCAN = RAGE_JOAAT("REWARD_AMMO_PETROLCAN"),
REWARD_AMMO_PIPEBOMB = RAGE_JOAAT("REWARD_AMMO_PIPEBOMB"),
REWARD_AMMO_PISTOL = RAGE_JOAAT("REWARD_AMMO_PISTOL"),
REWARD_AMMO_PISTOL50 = RAGE_JOAAT("REWARD_AMMO_PISTOL50"),
REWARD_AMMO_PROXMINE = RAGE_JOAAT("REWARD_AMMO_PROXMINE"),
REWARD_AMMO_PUMPSHOTGUN = RAGE_JOAAT("REWARD_AMMO_PUMPSHOTGUN"),
REWARD_AMMO_PUMPSHOTGUN_ENTER_VEHICLE = RAGE_JOAAT("REWARD_AMMO_PUMPSHOTGUN_ENTER_VEHICLE"),
REWARD_AMMO_RAILGUN = RAGE_JOAAT("REWARD_AMMO_RAILGUN"),
REWARD_AMMO_RAYPISTOL = RAGE_JOAAT("REWARD_AMMO_RAYPISTOL"),
REWARD_AMMO_REVOLVER = RAGE_JOAAT("REWARD_AMMO_REVOLVER"),
REWARD_AMMO_RPG = RAGE_JOAAT("REWARD_AMMO_RPG"),
REWARD_AMMO_SAWNOFFSHOTGUN = RAGE_JOAAT("REWARD_AMMO_SAWNOFFSHOTGUN"),
REWARD_AMMO_SMG = RAGE_JOAAT("REWARD_AMMO_SMG"),
REWARD_AMMO_SMOKEGRENADE = RAGE_JOAAT("REWARD_AMMO_SMOKEGRENADE"),
REWARD_AMMO_SNIPERRIFLE = RAGE_JOAAT("REWARD_AMMO_SNIPERRIFLE"),
REWARD_AMMO_SNSPISTOL = RAGE_JOAAT("REWARD_AMMO_SNSPISTOL"),
REWARD_AMMO_SPECIALCARBINE = RAGE_JOAAT("REWARD_AMMO_SPECIALCARBINE"),
REWARD_AMMO_STICKYBOMB = RAGE_JOAAT("REWARD_AMMO_STICKYBOMB"),
REWARD_AMMO_STUNGUN = RAGE_JOAAT("REWARD_AMMO_STUNGUN"),
REWARD_AMMO_VINTAGEPISTOL = RAGE_JOAAT("REWARD_AMMO_VINTAGEPISTOL"),
REWARD_ARMOUR = RAGE_JOAAT("REWARD_ARMOUR"),
REWARD_HEALTH = RAGE_JOAAT("REWARD_HEALTH"),
REWARD_HEALTH_ENTER_VEHICLE = RAGE_JOAAT("REWARD_HEALTH_ENTER_VEHICLE"),
REWARD_HEALTH_VARIABLE = RAGE_JOAAT("REWARD_HEALTH_VARIABLE"),
REWARD_MONEY_VARIABLE = RAGE_JOAAT("REWARD_MONEY_VARIABLE"),
REWARD_PARACHUTE = RAGE_JOAAT("REWARD_PARACHUTE"),
REWARD_STAT_HEALTH = RAGE_JOAAT("REWARD_STAT_HEALTH"),
REWARD_STAT_HEALTH_VARIABLE = RAGE_JOAAT("REWARD_STAT_HEALTH_VARIABLE"),
REWARD_STAT_WEAPON = RAGE_JOAAT("REWARD_STAT_WEAPON"),
REWARD_VEHICLE_FIX = RAGE_JOAAT("REWARD_VEHICLE_FIX"),
REWARD_WEAPON_ADVANCEDRIFLE = RAGE_JOAAT("REWARD_WEAPON_ADVANCEDRIFLE"),
REWARD_WEAPON_APPISTOL = RAGE_JOAAT("REWARD_WEAPON_APPISTOL"),
REWARD_WEAPON_ASSAULTRIFLE = RAGE_JOAAT("REWARD_WEAPON_ASSAULTRIFLE"),
REWARD_WEAPON_ASSAULTRIFLE_MK2 = RAGE_JOAAT("REWARD_WEAPON_ASSAULTRIFLE_MK2"),
REWARD_WEAPON_ASSAULTSHOTGUN = RAGE_JOAAT("REWARD_WEAPON_ASSAULTSHOTGUN"),
REWARD_WEAPON_ASSAULTSMG = RAGE_JOAAT("REWARD_WEAPON_ASSAULTSMG"),
REWARD_WEAPON_AUTOSHOTGUN = RAGE_JOAAT("REWARD_WEAPON_AUTOSHOTGUN"),
REWARD_WEAPON_BAT = RAGE_JOAAT("REWARD_WEAPON_BAT"),
REWARD_WEAPON_BATTLEAXE = RAGE_JOAAT("REWARD_WEAPON_BATTLEAXE"),
REWARD_WEAPON_BOTTLE = RAGE_JOAAT("REWARD_WEAPON_BOTTLE"),
REWARD_WEAPON_BULLPUPRIFLE = RAGE_JOAAT("REWARD_WEAPON_BULLPUPRIFLE"),
REWARD_WEAPON_BULLPUPRIFLE_MK2 = RAGE_JOAAT("REWARD_WEAPON_BULLPUPRIFLE_MK2"),
REWARD_WEAPON_BULLPUPSHOTGUN = RAGE_JOAAT("REWARD_WEAPON_BULLPUPSHOTGUN"),
REWARD_WEAPON_CARBINERIFLE = RAGE_JOAAT("REWARD_WEAPON_CARBINERIFLE"),
REWARD_WEAPON_CARBINERIFLE_MK2 = RAGE_JOAAT("REWARD_WEAPON_CARBINERIFLE_MK2"),
REWARD_WEAPON_COMBATMG = RAGE_JOAAT("REWARD_WEAPON_COMBATMG"),
REWARD_WEAPON_COMBATMG_MK2 = RAGE_JOAAT("REWARD_WEAPON_COMBATMG_MK2"),
REWARD_WEAPON_COMBATPDW = RAGE_JOAAT("REWARD_WEAPON_COMBATPDW"),
REWARD_WEAPON_COMBATPISTOL = RAGE_JOAAT("REWARD_WEAPON_COMBATPISTOL"),
REWARD_WEAPON_COMPACTLAUNCHER = RAGE_JOAAT("REWARD_WEAPON_COMPACTLAUNCHER"),
REWARD_WEAPON_COMPACTRIFLE = RAGE_JOAAT("REWARD_WEAPON_COMPACTRIFLE"),
REWARD_WEAPON_CROWBAR = RAGE_JOAAT("REWARD_WEAPON_CROWBAR"),
REWARD_WEAPON_DAGGER = RAGE_JOAAT("REWARD_WEAPON_DAGGER"),
REWARD_WEAPON_DBSHOTGUN = RAGE_JOAAT("REWARD_WEAPON_DBSHOTGUN"),
REWARD_WEAPON_DOUBLEACTION = RAGE_JOAAT("REWARD_WEAPON_DOUBLEACTION"),
REWARD_WEAPON_FIREWORK = RAGE_JOAAT("REWARD_WEAPON_FIREWORK"),
REWARD_WEAPON_FLAREGUN = RAGE_JOAAT("REWARD_WEAPON_FLAREGUN"),
REWARD_WEAPON_FLASHLIGHT = RAGE_JOAAT("REWARD_WEAPON_FLASHLIGHT"),
REWARD_WEAPON_GOLFCLUB = RAGE_JOAAT("REWARD_WEAPON_GOLFCLUB"),
REWARD_WEAPON_GRENADE = RAGE_JOAAT("REWARD_WEAPON_GRENADE"),
REWARD_WEAPON_GRENADELAUNCHER = RAGE_JOAAT("REWARD_WEAPON_GRENADELAUNCHER"),
REWARD_WEAPON_GUSENBERG = RAGE_JOAAT("REWARD_WEAPON_GUSENBERG"),
REWARD_WEAPON_HAMMER = RAGE_JOAAT("REWARD_WEAPON_HAMMER"),
REWARD_WEAPON_HATCHET = RAGE_JOAAT("REWARD_WEAPON_HATCHET"),
REWARD_WEAPON_HEAVYPISTOL = RAGE_JOAAT("REWARD_WEAPON_HEAVYPISTOL"),
REWARD_WEAPON_HEAVYSHOTGUN = RAGE_JOAAT("REWARD_WEAPON_HEAVYSHOTGUN"),
REWARD_WEAPON_HEAVYSNIPER = RAGE_JOAAT("REWARD_WEAPON_HEAVYSNIPER"),
REWARD_WEAPON_HEAVYSNIPER_MK2 = RAGE_JOAAT("REWARD_WEAPON_HEAVYSNIPER_MK2"),
REWARD_WEAPON_HOMINGLAUNCHER = RAGE_JOAAT("REWARD_WEAPON_HOMINGLAUNCHER"),
REWARD_WEAPON_KNIFE = RAGE_JOAAT("REWARD_WEAPON_KNIFE"),
REWARD_WEAPON_KNUCKLE = RAGE_JOAAT("REWARD_WEAPON_KNUCKLE"),
REWARD_WEAPON_MACHETE = RAGE_JOAAT("REWARD_WEAPON_MACHETE"),
REWARD_WEAPON_MACHINEPISTOL = RAGE_JOAAT("REWARD_WEAPON_MACHINEPISTOL"),
REWARD_WEAPON_MARKSMANPISTOL = RAGE_JOAAT("REWARD_WEAPON_MARKSMANPISTOL"),
REWARD_WEAPON_MARKSMANRIFLE = RAGE_JOAAT("REWARD_WEAPON_MARKSMANRIFLE"),
REWARD_WEAPON_MARKSMANRIFLE_MK2 = RAGE_JOAAT("REWARD_WEAPON_MARKSMANRIFLE_MK2"),
REWARD_WEAPON_MG = RAGE_JOAAT("REWARD_WEAPON_MG"),
REWARD_WEAPON_MICROSMG = RAGE_JOAAT("REWARD_WEAPON_MICROSMG"),
REWARD_WEAPON_MINIGUN = RAGE_JOAAT("REWARD_WEAPON_MINIGUN"),
REWARD_WEAPON_MINISMG = RAGE_JOAAT("REWARD_WEAPON_MINISMG"),
REWARD_WEAPON_MOLOTOV = RAGE_JOAAT("REWARD_WEAPON_MOLOTOV"),
REWARD_WEAPON_MUSKET = RAGE_JOAAT("REWARD_WEAPON_MUSKET"),
REWARD_WEAPON_NIGHTSTICK = RAGE_JOAAT("REWARD_WEAPON_NIGHTSTICK"),
REWARD_WEAPON_PETROLCAN = RAGE_JOAAT("REWARD_WEAPON_PETROLCAN"),
REWARD_WEAPON_PIPEBOMB = RAGE_JOAAT("REWARD_WEAPON_PIPEBOMB"),
REWARD_WEAPON_PISTOL = RAGE_JOAAT("REWARD_WEAPON_PISTOL"),
REWARD_WEAPON_PISTOL50 = RAGE_JOAAT("REWARD_WEAPON_PISTOL50"),
REWARD_WEAPON_PISTOL_MK2 = RAGE_JOAAT("REWARD_WEAPON_PISTOL_MK2"),
REWARD_WEAPON_POOLCUE = RAGE_JOAAT("REWARD_WEAPON_POOLCUE"),
REWARD_WEAPON_PROXMINE = RAGE_JOAAT("REWARD_WEAPON_PROXMINE"),
REWARD_WEAPON_PUMPSHOTGUN = RAGE_JOAAT("REWARD_WEAPON_PUMPSHOTGUN"),
REWARD_WEAPON_PUMPSHOTGUN_MK2 = RAGE_JOAAT("REWARD_WEAPON_PUMPSHOTGUN_MK2"),
REWARD_WEAPON_RAILGUN = RAGE_JOAAT("REWARD_WEAPON_RAILGUN"),
REWARD_WEAPON_RAYCARBINE = RAGE_JOAAT("REWARD_WEAPON_RAYCARBINE"),
REWARD_WEAPON_RAYMINIGUN = RAGE_JOAAT("REWARD_WEAPON_RAYMINIGUN"),
REWARD_WEAPON_RAYPISTOL = RAGE_JOAAT("REWARD_WEAPON_RAYPISTOL"),
REWARD_WEAPON_REVOLVER = RAGE_JOAAT("REWARD_WEAPON_REVOLVER"),
REWARD_WEAPON_REVOLVER_MK2 = RAGE_JOAAT("REWARD_WEAPON_REVOLVER_MK2"),
REWARD_WEAPON_RPG = RAGE_JOAAT("REWARD_WEAPON_RPG"),
REWARD_WEAPON_SAWNOFFSHOTGUN = RAGE_JOAAT("REWARD_WEAPON_SAWNOFFSHOTGUN"),
REWARD_WEAPON_SMG = RAGE_JOAAT("REWARD_WEAPON_SMG"),
REWARD_WEAPON_SMG_MK2 = RAGE_JOAAT("REWARD_WEAPON_SMG_MK2"),
REWARD_WEAPON_SMOKEGRENADE = RAGE_JOAAT("REWARD_WEAPON_SMOKEGRENADE"),
REWARD_WEAPON_SNIPERRIFLE = RAGE_JOAAT("REWARD_WEAPON_SNIPERRIFLE"),
REWARD_WEAPON_SNSPISTOL = RAGE_JOAAT("REWARD_WEAPON_SNSPISTOL"),
REWARD_WEAPON_SNSPISTOL_MK2 = RAGE_JOAAT("REWARD_WEAPON_SNSPISTOL_MK2"),
REWARD_WEAPON_SPECIALCARBINE = RAGE_JOAAT("REWARD_WEAPON_SPECIALCARBINE"),
REWARD_WEAPON_SPECIALCARBINE_MK2 = RAGE_JOAAT("REWARD_WEAPON_SPECIALCARBINE_MK2"),
REWARD_WEAPON_STICKYBOMB = RAGE_JOAAT("REWARD_WEAPON_STICKYBOMB"),
REWARD_WEAPON_STONE_HATCHET = RAGE_JOAAT("REWARD_WEAPON_STONE_HATCHET"),
REWARD_WEAPON_STUNGUN = RAGE_JOAAT("REWARD_WEAPON_STUNGUN"),
REWARD_WEAPON_SWITCHBLADE = RAGE_JOAAT("REWARD_WEAPON_SWITCHBLADE"),
REWARD_WEAPON_VINTAGEPISTOL = RAGE_JOAAT("REWARD_WEAPON_VINTAGEPISTOL"),
REWARD_WEAPON_WRENCH = RAGE_JOAAT("REWARD_WEAPON_WRENCH")
};

File diff suppressed because it is too large Load Diff

View File

@ -0,0 +1,786 @@
#pragma once
#include "gta\joaat.hpp"
#include "natives.hpp"
enum Boats : Hash
{
VEHICLE_DINGHY = RAGE_JOAAT("DINGHY"),
VEHICLE_DINGHY2 = RAGE_JOAAT("DINGHY2"),
VEHICLE_DINGHY3 = RAGE_JOAAT("DINGHY3"),
VEHICLE_DINGHY4 = RAGE_JOAAT("DINGHY4"),
VEHICLE_JETMAX = RAGE_JOAAT("JETMAX"),
VEHICLE_MARQUIS = RAGE_JOAAT("MARQUIS"),
VEHICLE_SEASHARK = RAGE_JOAAT("SEASHARK"),
VEHICLE_SEASHARK2 = RAGE_JOAAT("SEASHARK2"),
VEHICLE_SEASHARK3 = RAGE_JOAAT("SEASHARK3"),
VEHICLE_SPEEDER = RAGE_JOAAT("SPEEDER"),
VEHICLE_SPEEDER2 = RAGE_JOAAT("SPEEDER2"),
VEHICLE_SQUALO = RAGE_JOAAT("SQUALO"),
VEHICLE_SUBMERSIBLE = RAGE_JOAAT("SUBMERSIBLE"),
VEHICLE_SUBMERSIBLE2 = RAGE_JOAAT("SUBMERSIBLE2"),
VEHICLE_SUNTRAP = RAGE_JOAAT("SUNTRAP"),
VEHICLE_TORO = RAGE_JOAAT("TORO"),
VEHICLE_TORO2 = RAGE_JOAAT("TORO2"),
VEHICLE_TROPIC = RAGE_JOAAT("TROPIC"),
VEHICLE_TROPIC2 = RAGE_JOAAT("TROPIC2"),
VEHICLE_TUG = RAGE_JOAAT("TUG"),
};
enum Commericals : Hash
{
VEHICLE_BENSON = RAGE_JOAAT("BENSON"),
VEHICLE_BIFF = RAGE_JOAAT("BIFF"),
VEHICLE_HAULER = RAGE_JOAAT("HAULER"),
VEHICLE_HAULER2 = RAGE_JOAAT("HAULER2"),
VEHICLE_MULE = RAGE_JOAAT("MULE"),
VEHICLE_MULE2 = RAGE_JOAAT("MULE2"),
VEHICLE_MULE3 = RAGE_JOAAT("MULE3"),
VEHICLE_MULE4 = RAGE_JOAAT("MULE4"),
VEHICLE_PACKER = RAGE_JOAAT("PACKER"),
VEHICLE_PHANTOM = RAGE_JOAAT("PHANTOM"),
VEHICLE_PHANTOM2 = RAGE_JOAAT("PHANTOM2"),
VEHICLE_PHANTOM3 = RAGE_JOAAT("PHANTOM3"),
VEHICLE_POUNDER = RAGE_JOAAT("POUNDER"),
VEHICLE_POUNDER2 = RAGE_JOAAT("POUNDER2"),
VEHICLE_STOCKADE = RAGE_JOAAT("STOCKADE"),
VEHICLE_STOCKADE3 = RAGE_JOAAT("STOCKADE3"),
VEHICLE_TERBYTE = RAGE_JOAAT("TERBYTE"),
};
enum Compacts : Hash
{
VEHICLE_BLISTA = RAGE_JOAAT("BLISTA"),
VEHICLE_BRIOSO = RAGE_JOAAT("BRIOSO"),
VEHICLE_DILETTANTE = RAGE_JOAAT("DILETTANTE"),
VEHICLE_DILETTANTE2 = RAGE_JOAAT("DILETTANTE2"),
VEHICLE_ISSI2 = RAGE_JOAAT("ISSI2"),
VEHICLE_ISSI3 = RAGE_JOAAT("ISSI3"),
VEHICLE_PANTO = RAGE_JOAAT("PANTO"),
VEHICLE_PRAIRIE = RAGE_JOAAT("PRAIRIE"),
VEHICLE_RHAPSODY = RAGE_JOAAT("RHAPSODY"),
};
enum Coupes : Hash
{
VEHICLE_COGCABRIO = RAGE_JOAAT("COGCABRIO"),
VEHICLE_EXEMPLAR = RAGE_JOAAT("EXEMPLAR"),
VEHICLE_F620 = RAGE_JOAAT("F620"),
VEHICLE_FELON = RAGE_JOAAT("FELON"),
VEHICLE_FELON2 = RAGE_JOAAT("FELON2"),
VEHICLE_JACKAL = RAGE_JOAAT("JACKAL"),
VEHICLE_ORACLE = RAGE_JOAAT("ORACLE"),
VEHICLE_ORACLE2 = RAGE_JOAAT("ORACLE2"),
VEHICLE_SENTINEL = RAGE_JOAAT("SENTINEL"),
VEHICLE_SENTINEL2 = RAGE_JOAAT("SENTINEL2"),
VEHICLE_WINDSOR = RAGE_JOAAT("WINDSOR"),
VEHICLE_WINDSOR2 = RAGE_JOAAT("WINDSOR2"),
VEHICLE_ZION = RAGE_JOAAT("ZION"),
VEHICLE_ZION2 = RAGE_JOAAT("ZION2"),
};
enum Bikes : Hash
{
VEHICLE_BMX = RAGE_JOAAT("BMX"),
VEHICLE_CRUISER = RAGE_JOAAT("CRUISER"),
VEHICLE_FIXTER = RAGE_JOAAT("FIXTER"),
VEHICLE_SCORCHER = RAGE_JOAAT("SCORCHER"),
VEHICLE_TRIBIKE = RAGE_JOAAT("TRIBIKE"),
VEHICLE_TRIBIKE2 = RAGE_JOAAT("TRIBIKE2"),
VEHICLE_TRIBIKE3 = RAGE_JOAAT("TRIBIKE3"),
};
enum Emergency : Hash
{
VEHICLE_AMBULANCE = RAGE_JOAAT("AMBULANCE"),
VEHICLE_FBI = RAGE_JOAAT("FBI"),
VEHICLE_FBI2 = RAGE_JOAAT("FBI2"),
VEHICLE_FIRETRUK = RAGE_JOAAT("FIRETRUK"),
VEHICLE_LGUARD = RAGE_JOAAT("LGUARD"),
VEHICLE_PBUS = RAGE_JOAAT("PBUS"),
VEHICLE_POLICE = RAGE_JOAAT("POLICE"),
VEHICLE_POLICE2 = RAGE_JOAAT("POLICE2"),
VEHICLE_POLICE3 = RAGE_JOAAT("POLICE3"),
VEHICLE_POLICE4 = RAGE_JOAAT("POLICE4"),
VEHICLE_POLICEB = RAGE_JOAAT("POLICEB"),
VEHICLE_POLMAV = RAGE_JOAAT("POLMAV"),
VEHICLE_POLICEOLD1 = RAGE_JOAAT("POLICEOLD1"),
VEHICLE_POLICEOLD2 = RAGE_JOAAT("POLICEOLD2"),
VEHICLE_POLICET = RAGE_JOAAT("POLICET"),
VEHICLE_PRANGER = RAGE_JOAAT("PRANGER"),
VEHICLE_PREDATOR = RAGE_JOAAT("PREDATOR"),
VEHICLE_RIOT = RAGE_JOAAT("RIOT"),
VEHICLE_RIOT2 = RAGE_JOAAT("RIOT2"),
VEHICLE_SHERIFF = RAGE_JOAAT("SHERIFF"),
VEHICLE_SHERIFF2 = RAGE_JOAAT("SHERIFF2"),
};
enum Helicopters : Hash
{
VEHICLE_AKULA = RAGE_JOAAT("AKULA"),
VEHICLE_ANNIHILATOR = RAGE_JOAAT("ANNIHILATOR"),
VEHICLE_BUZZARD = RAGE_JOAAT("BUZZARD"),
VEHICLE_BUZZARD2 = RAGE_JOAAT("BUZZARD2"),
VEHICLE_CARGOBOB = RAGE_JOAAT("CARGOBOB"),
VEHICLE_CARGOBOB2 = RAGE_JOAAT("CARGOBOB2"),
VEHICLE_CARGOBOB3 = RAGE_JOAAT("CARGOBOB3"),
VEHICLE_CARGOBOB4 = RAGE_JOAAT("CARGOBOB4"),
VEHICLE_FROGGER = RAGE_JOAAT("FROGGER"),
VEHICLE_FROGGER2 = RAGE_JOAAT("FROGGER2"),
VEHICLE_HAVOK = RAGE_JOAAT("HAVOK"),
VEHICLE_HUNTER = RAGE_JOAAT("HUNTER"),
VEHICLE_MAVERICK = RAGE_JOAAT("MAVERICK"),
VEHICLE_SAVAGE = RAGE_JOAAT("SAVAGE"),
VEHICLE_SKYLIFT = RAGE_JOAAT("SKYLIFT"),
VEHICLE_SUPERVOLITO = RAGE_JOAAT("SUPERVOLITO"),
VEHICLE_SUPERVOLITO2 = RAGE_JOAAT("SUPERVOLITO2"),
VEHICLE_SWIFT = RAGE_JOAAT("SWIFT"),
VEHICLE_SWIFT2 = RAGE_JOAAT("SWIFT2"),
VEHICLE_VALKYRIE = RAGE_JOAAT("VALKYRIE"),
VEHICLE_VALKYRIE2 = RAGE_JOAAT("VALKYRIE2"),
VEHICLE_VOLATUS = RAGE_JOAAT("VOLATUS"),
};
enum Industrial : Hash
{
VEHICLE_BULLDOZER = RAGE_JOAAT("BULLDOZER"),
VEHICLE_CUTTER = RAGE_JOAAT("CUTTER"),
VEHICLE_DUMP = RAGE_JOAAT("DUMP"),
VEHICLE_FLATBED = RAGE_JOAAT("FLATBED"),
VEHICLE_GUARDIAN = RAGE_JOAAT("GUARDIAN"),
VEHICLE_HANDLER = RAGE_JOAAT("HANDLER"),
VEHICLE_MIXER = RAGE_JOAAT("MIXER"),
VEHICLE_MIXER2 = RAGE_JOAAT("MIXER2"),
VEHICLE_RUBBLE = RAGE_JOAAT("RUBBLE"),
VEHICLE_TIPTRUCK = RAGE_JOAAT("TIPTRUCK"),
VEHICLE_TIPTRUCK2 = RAGE_JOAAT("TIPTRUCK2"),
};
enum Military : Hash
{
VEHICLE_APC = RAGE_JOAAT("APC"),
VEHICLE_BARRACKS = RAGE_JOAAT("BARRACKS"),
VEHICLE_BARRACKS2 = RAGE_JOAAT("BARRACKS2"),
VEHICLE_BARRACKS3 = RAGE_JOAAT("BARRACKS3"),
VEHICLE_BARRAGE = RAGE_JOAAT("BARRAGE"),
VEHICLE_CHERNOBOG = RAGE_JOAAT("CHERNOBOG"),
VEHICLE_CRUSADER = RAGE_JOAAT("CRUSADER"),
VEHICLE_HALFTRACK = RAGE_JOAAT("HALFTRACK"),
VEHICLE_KHANJALI = RAGE_JOAAT("KHANJALI"),
VEHICLE_RHINO = RAGE_JOAAT("RHINO"),
VEHICLE_THRUSTER = RAGE_JOAAT("THRUSTER"),
VEHICLE_TRAILERSMALL2 = RAGE_JOAAT("TRAILERSMALL2"),
};
enum Motorcycles : Hash
{
VEHICLE_AKUMA = RAGE_JOAAT("AKUMA"),
VEHICLE_AVARUS = RAGE_JOAAT("AVARUS"),
VEHICLE_BAGGER = RAGE_JOAAT("BAGGER"),
VEHICLE_BATI = RAGE_JOAAT("BATI"),
VEHICLE_BATI2 = RAGE_JOAAT("BATI2"),
VEHICLE_BF400 = RAGE_JOAAT("BF400"),
VEHICLE_CARBONRS = RAGE_JOAAT("CARBONRS"),
VEHICLE_CHIMERA = RAGE_JOAAT("CHIMERA"),
VEHICLE_CLIFFHANGER = RAGE_JOAAT("CLIFFHANGER"),
VEHICLE_DAEMON = RAGE_JOAAT("DAEMON"),
VEHICLE_DAEMON2 = RAGE_JOAAT("DAEMON2"),
VEHICLE_DEFILER = RAGE_JOAAT("DEFILER"),
VEHICLE_DIABLOUS = RAGE_JOAAT("DIABLOUS"),
VEHICLE_DIABLOUS2 = RAGE_JOAAT("DIABLOUS2"),
VEHICLE_DOUBLE = RAGE_JOAAT("DOUBLE"),
VEHICLE_ENDURO = RAGE_JOAAT("ENDURO"),
VEHICLE_ESSKEY = RAGE_JOAAT("ESSKEY"),
VEHICLE_FAGGIO = RAGE_JOAAT("FAGGIO"),
VEHICLE_FAGGIO2 = RAGE_JOAAT("FAGGIO2"),
VEHICLE_FAGGIO3 = RAGE_JOAAT("FAGGIO3"),
VEHICLE_FCR = RAGE_JOAAT("FCR"),
VEHICLE_FCR2 = RAGE_JOAAT("FCR2"),
VEHICLE_GARGOYLE = RAGE_JOAAT("GARGOYLE"),
VEHICLE_HAKUCHOU = RAGE_JOAAT("HAKUCHOU"),
VEHICLE_HAKUCHOU2 = RAGE_JOAAT("HAKUCHOU2"),
VEHICLE_HEXER = RAGE_JOAAT("HEXER"),
VEHICLE_INNOVATION = RAGE_JOAAT("INNOVATION"),
VEHICLE_LECTRO = RAGE_JOAAT("LECTRO"),
VEHICLE_MANCHEZ = RAGE_JOAAT("MANCHEZ"),
VEHICLE_NEMESIS = RAGE_JOAAT("NEMESIS"),
VEHICLE_NIGHTBLADE = RAGE_JOAAT("NIGHTBLADE"),
VEHICLE_OPPRESSOR = RAGE_JOAAT("OPPRESSOR"),
VEHICLE_OPPRESSOR2 = RAGE_JOAAT("OPPRESSOR2"),
VEHICLE_PCJ = RAGE_JOAAT("PCJ"),
VEHICLE_RATBIKE = RAGE_JOAAT("RATBIKE"),
VEHICLE_RUFFIAN = RAGE_JOAAT("RUFFIAN"),
VEHICLE_SANCHEZ2 = RAGE_JOAAT("SANCHEZ2"),
VEHICLE_SANCTUS = RAGE_JOAAT("SANCTUS"),
VEHICLE_SHOTARO = RAGE_JOAAT("SHOTARO"),
VEHICLE_SOVEREIGN = RAGE_JOAAT("SOVEREIGN"),
VEHICLE_THRUST = RAGE_JOAAT("THRUST"),
VEHICLE_VADER = RAGE_JOAAT("VADER"),
VEHICLE_VINDICATOR = RAGE_JOAAT("VINDICATOR"),
VEHICLE_VORTEX = RAGE_JOAAT("VORTEX"),
VEHICLE_WOLFSBANE = RAGE_JOAAT("WOLFSBANE"),
VEHICLE_ZOMBIEA = RAGE_JOAAT("ZOMBIEA"),
VEHICLE_ZOMBIEB = RAGE_JOAAT("ZOMBIEB"),
};
enum Muscle : Hash
{
VEHICLE_BLADE = RAGE_JOAAT("BLADE"),
VEHICLE_BUCCANEER = RAGE_JOAAT("BUCCANEER"),
VEHICLE_BUCCANEER2 = RAGE_JOAAT("BUCCANEER2"),
VEHICLE_CHINO = RAGE_JOAAT("CHINO"),
VEHICLE_CHINO2 = RAGE_JOAAT("CHINO2"),
VEHICLE_COQUETTE3 = RAGE_JOAAT("COQUETTE3"),
VEHICLE_DOMINATOR = RAGE_JOAAT("DOMINATOR"),
VEHICLE_DOMINATOR2 = RAGE_JOAAT("DOMINATOR2"),
VEHICLE_DOMINATOR3 = RAGE_JOAAT("DOMINATOR3"),
VEHICLE_DUKES = RAGE_JOAAT("DUKES"),
VEHICLE_DUKES2 = RAGE_JOAAT("DUKES2"),
VEHICLE_ELLIE = RAGE_JOAAT("ELLIE"),
VEHICLE_FACTION = RAGE_JOAAT("FACTION"),
VEHICLE_FACTION2 = RAGE_JOAAT("FACTION2"),
VEHICLE_FACTION3 = RAGE_JOAAT("FACTION3"),
VEHICLE_GAUNTLET = RAGE_JOAAT("GAUNTLET"),
VEHICLE_GAUNTLET2 = RAGE_JOAAT("GAUNTLET2"),
VEHICLE_HERMES = RAGE_JOAAT("HERMES"),
VEHICLE_HOTKNIFE = RAGE_JOAAT("HOTKNIFE"),
VEHICLE_LURCHER = RAGE_JOAAT("LURCHER"),
VEHICLE_MOONBEAM = RAGE_JOAAT("MOONBEAM"),
VEHICLE_MOONBEAM2 = RAGE_JOAAT("MOONBEAM2"),
VEHICLE_NIGHTSHADE = RAGE_JOAAT("NIGHTSHADE"),
VEHICLE_PHOENIX = RAGE_JOAAT("PHOENIX"),
VEHICLE_PICADOR = RAGE_JOAAT("PICADOR"),
VEHICLE_RATLOADER = RAGE_JOAAT("RATLOADER"),
VEHICLE_RATLOADER2 = RAGE_JOAAT("RATLOADER2"),
VEHICLE_RUINER = RAGE_JOAAT("RUINER"),
VEHICLE_RUINER2 = RAGE_JOAAT("RUINER2"),
VEHICLE_RUINER3 = RAGE_JOAAT("RUINER3"),
VEHICLE_SABREGT = RAGE_JOAAT("SABREGT"),
VEHICLE_SABREGT2 = RAGE_JOAAT("SABREGT2"),
VEHICLE_SLAMVAN = RAGE_JOAAT("SLAMVAN"),
VEHICLE_SLAMVAN2 = RAGE_JOAAT("SLAMVAN2"),
VEHICLE_SLAMVAN3 = RAGE_JOAAT("SLAMVAN3"),
VEHICLE_STALION = RAGE_JOAAT("STALION"),
VEHICLE_STALION2 = RAGE_JOAAT("STALION2"),
VEHICLE_TAMPA = RAGE_JOAAT("TAMPA"),
VEHICLE_TAMPA3 = RAGE_JOAAT("TAMPA3"),
VEHICLE_VIGERO = RAGE_JOAAT("VIGERO"),
VEHICLE_VIRGO = RAGE_JOAAT("VIRGO"),
VEHICLE_VIRGO2 = RAGE_JOAAT("VIRGO2"),
VEHICLE_VIRGO3 = RAGE_JOAAT("VIRGO3"),
VEHICLE_VOODOO = RAGE_JOAAT("VOODOO"),
VEHICLE_VOODOO2 = RAGE_JOAAT("VOODOO2"),
VEHICLE_YOSEMITE = RAGE_JOAAT("YOSEMITE"),
};
enum OffRoad : Hash
{
VEHICLE_BFINJECTION = RAGE_JOAAT("BFINJECTION"),
VEHICLE_BIFTA = RAGE_JOAAT("BIFTA"),
VEHICLE_BLAZER = RAGE_JOAAT("BLAZER"),
VEHICLE_BLAZER2 = RAGE_JOAAT("BLAZER2"),
VEHICLE_BLAZER3 = RAGE_JOAAT("BLAZER3"),
VEHICLE_BLAZER4 = RAGE_JOAAT("BLAZER4"),
VEHICLE_BLAZER5 = RAGE_JOAAT("BLAZER5"),
VEHICLE_BODHI2 = RAGE_JOAAT("BODHI2"),
VEHICLE_BRAWLER = RAGE_JOAAT("BRAWLER"),
VEHICLE_DLOADER = RAGE_JOAAT("DLOADER"),
VEHICLE_DUBSTA3 = RAGE_JOAAT("DUBSTA3"),
VEHICLE_DUNE = RAGE_JOAAT("DUNE"),
VEHICLE_DUNE2 = RAGE_JOAAT("DUNE2"),
VEHICLE_DUNE3 = RAGE_JOAAT("DUNE3"),
VEHICLE_DUNE4 = RAGE_JOAAT("DUNE4"),
VEHICLE_DUNE5 = RAGE_JOAAT("DUNE5"),
VEHICLE_FREECRAWLER = RAGE_JOAAT("FREECRAWLER"),
VEHICLE_INSURGENT = RAGE_JOAAT("INSURGENT"),
VEHICLE_INSURGENT2 = RAGE_JOAAT("INSURGENT2"),
VEHICLE_INSURGENT3 = RAGE_JOAAT("INSURGENT3"),
VEHICLE_KALAHARI = RAGE_JOAAT("KALAHARI"),
VEHICLE_KAMACHO = RAGE_JOAAT("KAMACHO"),
VEHICLE_MARSHALL = RAGE_JOAAT("MARSHALL"),
VEHICLE_MESA3 = RAGE_JOAAT("MESA3"),
VEHICLE_MONSTER = RAGE_JOAAT("MONSTER"),
VEHICLE_MENACER = RAGE_JOAAT("MENACER"),
VEHICLE_NIGHTSHARK = RAGE_JOAAT("NIGHTSHARK"),
VEHICLE_RANCHERXL = RAGE_JOAAT("RANCHERXL"),
VEHICLE_RANCHERXL2 = RAGE_JOAAT("RANCHERXL2"),
VEHICLE_REBEL = RAGE_JOAAT("REBEL"),
VEHICLE_REBEL2 = RAGE_JOAAT("REBEL2"),
VEHICLE_RIATA = RAGE_JOAAT("RIATA"),
VEHICLE_SANDKING = RAGE_JOAAT("SANDKING"),
VEHICLE_SANDKING2 = RAGE_JOAAT("SANDKING2"),
VEHICLE_TECHNICAL = RAGE_JOAAT("TECHNICAL"),
VEHICLE_TECHNICAL2 = RAGE_JOAAT("TECHNICAL2"),
VEHICLE_TECHNICAL3 = RAGE_JOAAT("TECHNICAL3"),
VEHICLE_TROPHYTRUCK = RAGE_JOAAT("TROPHYTRUCK"),
VEHICLE_TROPHYTRUCK2 = RAGE_JOAAT("TROPHYTRUCK2"),
};
enum Planes : Hash
{
VEHICLE_ALPHAZ1 = RAGE_JOAAT("ALPHAZ1"),
VEHICLE_AVENGER = RAGE_JOAAT("AVENGER"),
VEHICLE_BESRA = RAGE_JOAAT("BESRA"),
VEHICLE_BLIMP = RAGE_JOAAT("BLIMP"),
VEHICLE_BLIMP2 = RAGE_JOAAT("BLIMP2"),
VEHICLE_BLIMP3 = RAGE_JOAAT("BLIMP3"),
VEHICLE_BOMBUSHKA = RAGE_JOAAT("BOMBUSHKA"),
VEHICLE_CARGOPLANE = RAGE_JOAAT("CARGOPLANE"),
VEHICLE_CUBAN800 = RAGE_JOAAT("CUBAN800"),
VEHICLE_DODO = RAGE_JOAAT("DODO"),
VEHICLE_DUSTER = RAGE_JOAAT("DUSTER"),
VEHICLE_HOWARD = RAGE_JOAAT("HOWARD"),
VEHICLE_HYDRA = RAGE_JOAAT("HYDRA"),
VEHICLE_JET = RAGE_JOAAT("JET"),
VEHICLE_LAZER = RAGE_JOAAT("LAZER"),
VEHICLE_LUXOR = RAGE_JOAAT("LUXOR"),
VEHICLE_LUXOR2 = RAGE_JOAAT("LUXOR2"),
VEHICLE_MAMMATUS = RAGE_JOAAT("MAMMATUS"),
VEHICLE_MICROLIGHT = RAGE_JOAAT("MICROLIGHT"),
VEHICLE_MILJET = RAGE_JOAAT("MILJET"),
VEHICLE_MOGUL = RAGE_JOAAT("MOGUL"),
VEHICLE_MOLOTOK = RAGE_JOAAT("MOLOTOK"),
VEHICLE_NIMBUS = RAGE_JOAAT("NIMBUS"),
VEHICLE_NOKOTA = RAGE_JOAAT("NOKOTA"),
VEHICLE_PYRO = RAGE_JOAAT("PYRO"),
VEHICLE_ROGUE = RAGE_JOAAT("ROGUE"),
VEHICLE_SEABREEZE = RAGE_JOAAT("SEABREEZE"),
VEHICLE_SHAMAL = RAGE_JOAAT("SHAMAL"),
VEHICLE_STARLING = RAGE_JOAAT("STARLING"),
VEHICLE_STRIKEFORCE = RAGE_JOAAT("STRIKEFORCE"),
VEHICLE_STUNT = RAGE_JOAAT("STUNT"),
VEHICLE_TITAN = RAGE_JOAAT("TITAN"),
VEHICLE_TULA = RAGE_JOAAT("TULA"),
VEHICLE_VELUM = RAGE_JOAAT("VELUM"),
VEHICLE_VELUM2 = RAGE_JOAAT("VELUM2"),
VEHICLE_VESTRA = RAGE_JOAAT("VESTRA"),
VEHICLE_VOLATOL = RAGE_JOAAT("VOLATOL"),
};
enum SUVs : Hash
{
VEHICLE_BALLER = RAGE_JOAAT("BALLER"),
VEHICLE_BALLER2 = RAGE_JOAAT("BALLER2"),
VEHICLE_BALLER3 = RAGE_JOAAT("BALLER3"),
VEHICLE_BALLER4 = RAGE_JOAAT("BALLER4"),
VEHICLE_BALLER5 = RAGE_JOAAT("BALLER5"),
VEHICLE_BALLER6 = RAGE_JOAAT("BALLER6"),
VEHICLE_BJXL = RAGE_JOAAT("BJXL"),
VEHICLE_CAVALCADE = RAGE_JOAAT("CAVALCADE"),
VEHICLE_CAVALCADE2 = RAGE_JOAAT("CAVALCADE2"),
VEHICLE_CONTENDER = RAGE_JOAAT("CONTENDER"),
VEHICLE_DUBSTA = RAGE_JOAAT("DUBSTA"),
VEHICLE_DUBSTA2 = RAGE_JOAAT("DUBSTA2"),
VEHICLE_FQ2 = RAGE_JOAAT("FQ2"),
VEHICLE_GRANGER = RAGE_JOAAT("GRANGER"),
VEHICLE_GRESLEY = RAGE_JOAAT("GRESLEY"),
VEHICLE_HABANERO = RAGE_JOAAT("HABANERO"),
VEHICLE_HUNTLEY = RAGE_JOAAT("HUNTLEY"),
VEHICLE_LANDSTALKER = RAGE_JOAAT("LANDSTALKER"),
VEHICLE_MESA = RAGE_JOAAT("MESA"),
VEHICLE_MESA2 = RAGE_JOAAT("MESA2"),
VEHICLE_PATRIOT = RAGE_JOAAT("PATRIOT"),
VEHICLE_PATRIOT2 = RAGE_JOAAT("PATRIOT2"),
VEHICLE_RADI = RAGE_JOAAT("RADI"),
VEHICLE_ROCOTO = RAGE_JOAAT("ROCOTO"),
VEHICLE_SEMINOLE = RAGE_JOAAT("SEMINOLE"),
VEHICLE_SERRANO = RAGE_JOAAT("SERRANO"),
VEHICLE_XLS = RAGE_JOAAT("XLS"),
VEHICLE_XLS2 = RAGE_JOAAT("XLS2"),
};
enum Sedans : Hash
{
VEHICLE_ASEA = RAGE_JOAAT("ASEA"),
VEHICLE_ASEA2 = RAGE_JOAAT("ASEA2"),
VEHICLE_ASTEROPE = RAGE_JOAAT("ASTEROPE"),
VEHICLE_CHEBUREK = RAGE_JOAAT("CHEBUREK"),
VEHICLE_COG55 = RAGE_JOAAT("COG55"),
VEHICLE_COG552 = RAGE_JOAAT("COG552"),
VEHICLE_COGNOSCENTI = RAGE_JOAAT("COGNOSCENTI"),
VEHICLE_COGNOSCENTI2 = RAGE_JOAAT("COGNOSCENTI2"),
VEHICLE_EMPEROR = RAGE_JOAAT("EMPEROR"),
VEHICLE_EMPEROR2 = RAGE_JOAAT("EMPEROR2"),
VEHICLE_EMPEROR3 = RAGE_JOAAT("EMPEROR3"),
VEHICLE_FUGITIVE = RAGE_JOAAT("FUGITIVE"),
VEHICLE_GLENDALE = RAGE_JOAAT("GLENDALE"),
VEHICLE_INGOT = RAGE_JOAAT("INGOT"),
VEHICLE_INTRUDER = RAGE_JOAAT("INTRUDER"),
VEHICLE_LIMO2 = RAGE_JOAAT("LIMO2"),
VEHICLE_PREMIER = RAGE_JOAAT("PREMIER"),
VEHICLE_PRIMO = RAGE_JOAAT("PRIMO"),
VEHICLE_PRIMO2 = RAGE_JOAAT("PRIMO2"),
VEHICLE_REGINA = RAGE_JOAAT("REGINA"),
VEHICLE_ROMERO = RAGE_JOAAT("ROMERO"),
VEHICLE_SCHAFTER2 = RAGE_JOAAT("SCHAFTER2"),
VEHICLE_SCHAFTER5 = RAGE_JOAAT("SCHAFTER5"),
VEHICLE_SCHAFTER6 = RAGE_JOAAT("SCHAFTER6"),
VEHICLE_STAFFORD = RAGE_JOAAT("STAFFORD"),
VEHICLE_STANIER = RAGE_JOAAT("STANIER"),
VEHICLE_STRATUM = RAGE_JOAAT("STRATUM"),
VEHICLE_STRETCH = RAGE_JOAAT("STRETCH"),
VEHICLE_SUPERD = RAGE_JOAAT("SUPERD"),
VEHICLE_SURGE = RAGE_JOAAT("SURGE"),
VEHICLE_TAILGATER = RAGE_JOAAT("TAILGATER"),
VEHICLE_WARRENER = RAGE_JOAAT("WARRENER"),
VEHICLE_WASHINGTON = RAGE_JOAAT("WASHINGTON"),
};
enum Service : Hash
{
VEHICLE_AIRBUS = RAGE_JOAAT("AIRBUS"),
VEHICLE_BRICKADE = RAGE_JOAAT("BRICKADE"),
VEHICLE_BUS = RAGE_JOAAT("BUS"),
VEHICLE_COACH = RAGE_JOAAT("COACH"),
VEHICLE_PBUS2 = RAGE_JOAAT("PBUS2"),
VEHICLE_RALLYTRUCK = RAGE_JOAAT("RALLYTRUCK"),
VEHICLE_RENTALBUS = RAGE_JOAAT("RENTALBUS"),
VEHICLE_TAXI = RAGE_JOAAT("TAXI"),
VEHICLE_TOURBUS = RAGE_JOAAT("TOURBUS"),
VEHICLE_TRASH = RAGE_JOAAT("TRASH"),
VEHICLE_TRASH2 = RAGE_JOAAT("TRASH2"),
VEHICLE_WASTELANDER = RAGE_JOAAT("WASTELANDER"),
};
enum Sports : Hash
{
VEHICLE_ALPHA = RAGE_JOAAT("ALPHA"),
VEHICLE_BANSHEE = RAGE_JOAAT("BANSHEE"),
VEHICLE_BESTIAGTS = RAGE_JOAAT("BESTIAGTS"),
VEHICLE_BLISTA2 = RAGE_JOAAT("BLISTA2"),
VEHICLE_BLISTA3 = RAGE_JOAAT("BLISTA3"),
VEHICLE_BUFFALO = RAGE_JOAAT("BUFFALO"),
VEHICLE_BUFFALO2 = RAGE_JOAAT("BUFFALO2"),
VEHICLE_BUFFALO3 = RAGE_JOAAT("BUFFALO3"),
VEHICLE_CARBONIZZARE = RAGE_JOAAT("CARBONIZZARE"),
VEHICLE_COMET2 = RAGE_JOAAT("COMET2"),
VEHICLE_COMET3 = RAGE_JOAAT("COMET3"),
VEHICLE_COMET4 = RAGE_JOAAT("COMET4"),
VEHICLE_COMET5 = RAGE_JOAAT("COMET5"),
VEHICLE_COQUETTE = RAGE_JOAAT("COQUETTE"),
VEHICLE_ELEGY = RAGE_JOAAT("ELEGY"),
VEHICLE_ELEGY2 = RAGE_JOAAT("ELEGY2"),
VEHICLE_FELTZER2 = RAGE_JOAAT("FELTZER2"),
VEHICLE_FLASHGT = RAGE_JOAAT("FLASHGT"),
VEHICLE_FUROREGT = RAGE_JOAAT("FUROREGT"),
VEHICLE_FUSILADE = RAGE_JOAAT("FUSILADE"),
VEHICLE_FUTO = RAGE_JOAAT("FUTO"),
VEHICLE_GB200 = RAGE_JOAAT("GB200"),
VEHICLE_HOTRING = RAGE_JOAAT("HOTRING"),
VEHICLE_JESTER = RAGE_JOAAT("JESTER"),
VEHICLE_JESTER2 = RAGE_JOAAT("JESTER2"),
VEHICLE_JESTER3 = RAGE_JOAAT("JESTER3"),
VEHICLE_KHAMELION = RAGE_JOAAT("KHAMELION"),
VEHICLE_KURUMA = RAGE_JOAAT("KURUMA"),
VEHICLE_KURUMA2 = RAGE_JOAAT("KURUMA2"),
VEHICLE_LYNX2 = RAGE_JOAAT("LYNX2"),
VEHICLE_MASSACRO = RAGE_JOAAT("MASSACRO"),
VEHICLE_MASSACRO2 = RAGE_JOAAT("MASSACRO2"),
VEHICLE_NEON = RAGE_JOAAT("NEON"),
VEHICLE_NINEF = RAGE_JOAAT("NINEF"),
VEHICLE_NINEF2 = RAGE_JOAAT("NINEF2"),
VEHICLE_OMNIS = RAGE_JOAAT("OMNIS"),
VEHICLE_PARIAH = RAGE_JOAAT("PARIAH"),
VEHICLE_PENUMBRA = RAGE_JOAAT("PENUMBRA"),
VEHICLE_RAIDEN = RAGE_JOAAT("RAIDEN"),
VEHICLE_RAPIDGT = RAGE_JOAAT("RAPIDGT"),
VEHICLE_RAPIDGT2 = RAGE_JOAAT("RAPIDGT2"),
VEHICLE_RAPTOR = RAGE_JOAAT("RAPTOR"),
VEHICLE_REVOLTER = RAGE_JOAAT("REVOLTER"),
VEHICLE_RUSTON = RAGE_JOAAT("RUSTON"),
VEHICLE_SCHAFTER3 = RAGE_JOAAT("SCHAFTER3"),
VEHICLE_SCHAFTER4 = RAGE_JOAAT("SCHAFTER4"),
VEHICLE_SCHWARZER = RAGE_JOAAT("SCHWARZER"),
VEHICLE_SENTINEL3 = RAGE_JOAAT("SENTINEL3"),
VEHICLE_SEVEN70 = RAGE_JOAAT("SEVEN70"),
VEHICLE_SPECTER = RAGE_JOAAT("SPECTER"),
VEHICLE_SPECTER2 = RAGE_JOAAT("SPECTER2"),
VEHICLE_STREITER = RAGE_JOAAT("STREITER"),
VEHICLE_SULTAN = RAGE_JOAAT("SULTAN"),
VEHICLE_SURANO = RAGE_JOAAT("SURANO"),
VEHICLE_TAMPA2 = RAGE_JOAAT("TAMPA2"),
VEHICLE_TROPOS = RAGE_JOAAT("TROPOS"),
VEHICLE_VERLIERER2 = RAGE_JOAAT("VERLIERER2"),
};
enum SportsClassic : Hash
{
VEHICLE_ARDENT = RAGE_JOAAT("ARDENT"),
VEHICLE_BTYPE = RAGE_JOAAT("BTYPE"),
VEHICLE_BTYPE2 = RAGE_JOAAT("BTYPE2"),
VEHICLE_BTYPE3 = RAGE_JOAAT("BTYPE3"),
VEHICLE_CASCO = RAGE_JOAAT("CASCO"),
VEHICLE_CHEETAH2 = RAGE_JOAAT("CHEETAH2"),
VEHICLE_COQUETTE2 = RAGE_JOAAT("COQUETTE2"),
VEHICLE_DELUXO = RAGE_JOAAT("DELUXO"),
VEHICLE_FAGALOA = RAGE_JOAAT("FAGALOA"),
VEHICLE_FELTZER3 = RAGE_JOAAT("FELTZER3"),
VEHICLE_GT500 = RAGE_JOAAT("GT500"),
VEHICLE_HUSTLER = RAGE_JOAAT("HUSTLER"),
VEHICLE_INFERNUS2 = RAGE_JOAAT("INFERNUS2"),
VEHICLE_JB700 = RAGE_JOAAT("JB700"),
VEHICLE_MAMBA = RAGE_JOAAT("MAMBA"),
VEHICLE_MANANA = RAGE_JOAAT("MANANA"),
VEHICLE_MICHELLI = RAGE_JOAAT("MICHELLI"),
VEHICLE_MONROE = RAGE_JOAAT("MONROE"),
VEHICLE_PEYOTE = RAGE_JOAAT("PEYOTE"),
VEHICLE_PIGALLE = RAGE_JOAAT("PIGALLE"),
VEHICLE_RAPIDGT3 = RAGE_JOAAT("RAPIDGT3"),
VEHICLE_RETINUE = RAGE_JOAAT("RETINUE"),
VEHICLE_SAVESTRA = RAGE_JOAAT("SAVESTRA"),
VEHICLE_STINGER = RAGE_JOAAT("STINGER"),
VEHICLE_STINGERGT = RAGE_JOAAT("STINGERGT"),
VEHICLE_STROMBERG = RAGE_JOAAT("STROMBERG"),
VEHICLE_SWINGER = RAGE_JOAAT("SWINGER"),
VEHICLE_TORERO = RAGE_JOAAT("TORERO"),
VEHICLE_TORNADO = RAGE_JOAAT("TORNADO"),
VEHICLE_TORNADO2 = RAGE_JOAAT("TORNADO2"),
VEHICLE_TORNADO3 = RAGE_JOAAT("TORNADO3"),
VEHICLE_TORNADO4 = RAGE_JOAAT("TORNADO4"),
VEHICLE_TORNADO5 = RAGE_JOAAT("TORNADO5"),
VEHICLE_TORNADO6 = RAGE_JOAAT("TORNADO6"),
VEHICLE_TURISMO2 = RAGE_JOAAT("TURISMO2"),
VEHICLE_VISERIS = RAGE_JOAAT("VISERIS"),
VEHICLE_Z190 = RAGE_JOAAT("Z190"),
VEHICLE_ZTYPE = RAGE_JOAAT("ZTYPE"),
};
enum Super : Hash
{
VEHICLE_ADDER = RAGE_JOAAT("ADDER"),
VEHICLE_AUTARCH = RAGE_JOAAT("AUTARCH"),
VEHICLE_BANSHEE2 = RAGE_JOAAT("BANSHEE2"),
VEHICLE_BULLET = RAGE_JOAAT("BULLET"),
VEHICLE_CHEETAH = RAGE_JOAAT("CHEETAH"),
VEHICLE_CYCLONE = RAGE_JOAAT("CYCLONE"),
VEHICLE_ENTITYXF = RAGE_JOAAT("ENTITYXF"),
VEHICLE_ENTITY2 = RAGE_JOAAT("ENTITY2"),
VEHICLE_FMJ = RAGE_JOAAT("FMJ"),
VEHICLE_GP1 = RAGE_JOAAT("GP1"),
VEHICLE_INFERNUS = RAGE_JOAAT("INFERNUS"),
VEHICLE_ITALIGTB = RAGE_JOAAT("ITALIGTB"),
VEHICLE_ITALIGTB2 = RAGE_JOAAT("ITALIGTB2"),
VEHICLE_LE7B = RAGE_JOAAT("LE7B"),
VEHICLE_NERO = RAGE_JOAAT("NERO"),
VEHICLE_NERO2 = RAGE_JOAAT("NERO2"),
VEHICLE_OSIRIS = RAGE_JOAAT("OSIRIS"),
VEHICLE_PENETRATOR = RAGE_JOAAT("PENETRATOR"),
VEHICLE_PFISTER811 = RAGE_JOAAT("PFISTER811"),
VEHICLE_PROTOTIPO = RAGE_JOAAT("PROTOTIPO"),
VEHICLE_REAPER = RAGE_JOAAT("REAPER"),
VEHICLE_SC1 = RAGE_JOAAT("SC1"),
VEHICLE_SCRAMJET = RAGE_JOAAT("SCRAMJET"),
VEHICLE_SHEAVA = RAGE_JOAAT("SHEAVA"),
VEHICLE_SULTANRS = RAGE_JOAAT("SULTANRS"),
VEHICLE_T20 = RAGE_JOAAT("T20"),
VEHICLE_TAIPAN = RAGE_JOAAT("TAIPAN"),
VEHICLE_TEMPESTA = RAGE_JOAAT("TEMPESTA"),
VEHICLE_TEZERACT = RAGE_JOAAT("TEZERACT"),
VEHICLE_TURISMOR = RAGE_JOAAT("TURISMOR"),
VEHICLE_TYRANT = RAGE_JOAAT("TYRANT"),
VEHICLE_TYRUS = RAGE_JOAAT("TYRUS"),
VEHICLE_VACCA = RAGE_JOAAT("VACCA"),
VEHICLE_VAGNER = RAGE_JOAAT("VAGNER"),
VEHICLE_VIGILANTE = RAGE_JOAAT("VIGILANTE"),
VEHICLE_VISIONE = RAGE_JOAAT("VISIONE"),
VEHICLE_VOLTIC = RAGE_JOAAT("VOLTIC"),
VEHICLE_VOLTIC2 = RAGE_JOAAT("VOLTIC2"),
VEHICLE_XA21 = RAGE_JOAAT("XA21"),
VEHICLE_ZENTORNO = RAGE_JOAAT("ZENTORNO"),
};
enum Trailers : Hash
{
VEHICLE_ARMYTANKER = RAGE_JOAAT("ARMYTANKER"),
VEHICLE_ARMYTRAILER2 = RAGE_JOAAT("ARMYTRAILER2"),
VEHICLE_BALETRAILER = RAGE_JOAAT("BALETRAILER"),
VEHICLE_BOATTRAILER = RAGE_JOAAT("BOATTRAILER"),
VEHICLE_CABLECAR = RAGE_JOAAT("CABLECAR"),
VEHICLE_DOCKTRAILER = RAGE_JOAAT("DOCKTRAILER"),
VEHICLE_GRAINTRAILER = RAGE_JOAAT("GRAINTRAILER"),
VEHICLE_PROPTRAILER = RAGE_JOAAT("PROPTRAILER"),
VEHICLE_RAKETRAILER = RAGE_JOAAT("RAKETRAILER"),
VEHICLE_TR2 = RAGE_JOAAT("TR2"),
VEHICLE_TR3 = RAGE_JOAAT("TR3"),
VEHICLE_TR4 = RAGE_JOAAT("TR4"),
VEHICLE_TRFLAT = RAGE_JOAAT("TRFLAT"),
VEHICLE_TVTRAILER = RAGE_JOAAT("TVTRAILER"),
VEHICLE_TANKER = RAGE_JOAAT("TANKER"),
VEHICLE_TANKER2 = RAGE_JOAAT("TANKER2"),
VEHICLE_TRAILERLOGS = RAGE_JOAAT("TRAILERLOGS"),
VEHICLE_TRAILERSMALL = RAGE_JOAAT("TRAILERSMALL"),
VEHICLE_TRAILERS = RAGE_JOAAT("TRAILERS"),
VEHICLE_TRAILERS2 = RAGE_JOAAT("TRAILERS2"),
VEHICLE_TRAILERS3 = RAGE_JOAAT("TRAILERS3"),
};
enum Trains : Hash
{
VEHICLE_FREIGHT = RAGE_JOAAT("FREIGHT"),
VEHICLE_FREIGHTCAR = RAGE_JOAAT("FREIGHTCAR"),
VEHICLE_FREIGHTCONT1 = RAGE_JOAAT("FREIGHTCONT1"),
VEHICLE_FREIGHTCONT2 = RAGE_JOAAT("FREIGHTCONT2"),
VEHICLE_FREIGHTGRAIN = RAGE_JOAAT("FREIGHTGRAIN"),
VEHICLE_TANKERCAR = RAGE_JOAAT("TANKERCAR"),
};
enum Utility : Hash
{
VEHICLE_AIRTUG = RAGE_JOAAT("AIRTUG"),
VEHICLE_CADDY = RAGE_JOAAT("CADDY"),
VEHICLE_CADDY2 = RAGE_JOAAT("CADDY2"),
VEHICLE_CADDY3 = RAGE_JOAAT("CADDY3"),
VEHICLE_CARACARA = RAGE_JOAAT("CARACARA"),
VEHICLE_DOCKTUG = RAGE_JOAAT("DOCKTUG"),
VEHICLE_FORKLIFT = RAGE_JOAAT("FORKLIFT"),
VEHICLE_MOWER = RAGE_JOAAT("MOWER"),
VEHICLE_RIPLEY = RAGE_JOAAT("RIPLEY"),
VEHICLE_SADLER = RAGE_JOAAT("SADLER"),
VEHICLE_SADLER2 = RAGE_JOAAT("SADLER2"),
VEHICLE_SCRAP = RAGE_JOAAT("SCRAP"),
VEHICLE_TOWTRUCK = RAGE_JOAAT("TOWTRUCK"),
VEHICLE_TOWTRUCK2 = RAGE_JOAAT("TOWTRUCK2"),
VEHICLE_TRACTOR = RAGE_JOAAT("TRACTOR"),
VEHICLE_TRACTOR2 = RAGE_JOAAT("TRACTOR2"),
VEHICLE_TRACTOR3 = RAGE_JOAAT("TRACTOR3"),
VEHICLE_UTILLITRUCK = RAGE_JOAAT("UTILLITRUCK"),
VEHICLE_UTILLITRUCK2 = RAGE_JOAAT("UTILLITRUCK2"),
VEHICLE_UTILLITRUCK3 = RAGE_JOAAT("UTILLITRUCK3"),
};
enum Vans : Hash
{
VEHICLE_BISON = RAGE_JOAAT("BISON"),
VEHICLE_BISON2 = RAGE_JOAAT("BISON2"),
VEHICLE_BISON3 = RAGE_JOAAT("BISON3"),
VEHICLE_BOBCATXL = RAGE_JOAAT("BOBCATXL"),
VEHICLE_BOXVILLE = RAGE_JOAAT("BOXVILLE"),
VEHICLE_BOXVILLE2 = RAGE_JOAAT("BOXVILLE2"),
VEHICLE_BOXVILLE3 = RAGE_JOAAT("BOXVILLE3"),
VEHICLE_BOXVILLE4 = RAGE_JOAAT("BOXVILLE4"),
VEHICLE_BOXVILLE5 = RAGE_JOAAT("BOXVILLE5"),
VEHICLE_BURRITO = RAGE_JOAAT("BURRITO"),
VEHICLE_BURRITO2 = RAGE_JOAAT("BURRITO2"),
VEHICLE_BURRITO3 = RAGE_JOAAT("BURRITO3"),
VEHICLE_BURRITO4 = RAGE_JOAAT("BURRITO4"),
VEHICLE_BURRITO5 = RAGE_JOAAT("BURRITO5"),
VEHICLE_CAMPER = RAGE_JOAAT("CAMPER"),
VEHICLE_GBURRITO = RAGE_JOAAT("GBURRITO"),
VEHICLE_GBURRITO2 = RAGE_JOAAT("GBURRITO2"),
VEHICLE_JOURNEY = RAGE_JOAAT("JOURNEY"),
VEHICLE_MINIVAN = RAGE_JOAAT("MINIVAN"),
VEHICLE_MINIVAN2 = RAGE_JOAAT("MINIVAN2"),
VEHICLE_PARADISE = RAGE_JOAAT("PARADISE"),
VEHICLE_PONY = RAGE_JOAAT("PONY"),
VEHICLE_PONY2 = RAGE_JOAAT("PONY2"),
VEHICLE_RUMPO = RAGE_JOAAT("RUMPO"),
VEHICLE_RUMPO2 = RAGE_JOAAT("RUMPO2"),
VEHICLE_RUMPO3 = RAGE_JOAAT("RUMPO3"),
VEHICLE_SPEEDO = RAGE_JOAAT("SPEEDO"),
VEHICLE_SPEEDO2 = RAGE_JOAAT("SPEEDO2"),
VEHICLE_SPEEDO4 = RAGE_JOAAT("SPEEDO4"),
VEHICLE_SURFER = RAGE_JOAAT("SURFER"),
VEHICLE_SURFER2 = RAGE_JOAAT("SURFER2"),
VEHICLE_TACO = RAGE_JOAAT("TACO"),
VEHICLE_YOUGA = RAGE_JOAAT("YOUGA"),
VEHICLE_YOUGA2 = RAGE_JOAAT("YOUGA2"),
};
enum ArenaWar : Hash
{
VEHICLE_BRUISER = RAGE_JOAAT("BRUISER"),
VEHICLE_BRUISER2 = RAGE_JOAAT("BRUISER2"),
VEHICLE_BRUISER3 = RAGE_JOAAT("BRUISER3"),
VEHICLE_BRUTUS = RAGE_JOAAT("BRUTUS"),
VEHICLE_BRUTUS2 = RAGE_JOAAT("BRUTUS2"),
VEHICLE_BRUTUS3 = RAGE_JOAAT("BRUTUS3"),
VEHICLE_CERBERUS = RAGE_JOAAT("CERBERUS"),
VEHICLE_CERBERUS2 = RAGE_JOAAT("CERBERUS2"),
VEHICLE_CERBERUS3 = RAGE_JOAAT("CERBERUS3"),
VEHICLE_CLIQUE = RAGE_JOAAT("CLIQUE"),
VEHICLE_DEATHBIKE = RAGE_JOAAT("DEATHBIKE"),
VEHICLE_DEATHBIKE2 = RAGE_JOAAT("DEATHBIKE2"),
VEHICLE_DEATHBIKE3 = RAGE_JOAAT("DEATHBIKE3"),
VEHICLE_DEVESTE = RAGE_JOAAT("DEVESTE"),
VEHICLE_DEVIANT = RAGE_JOAAT("DEVIANT"),
VEHICLE_DOMINATOR4 = RAGE_JOAAT("DOMINATOR4"),
VEHICLE_DOMINATOR5 = RAGE_JOAAT("DOMINATOR5"),
VEHICLE_DOMINATOR6 = RAGE_JOAAT("DOMINATOR6"),
VEHICLE_IMPALER = RAGE_JOAAT("IMPALER"),
VEHICLE_IMPALER2 = RAGE_JOAAT("IMPALER2"),
VEHICLE_IMPALER3 = RAGE_JOAAT("IMPALER3"),
VEHICLE_IMPALER4 = RAGE_JOAAT("IMPALER4"),
VEHICLE_IMPERATOR = RAGE_JOAAT("IMPERATOR"),
VEHICLE_IMPERATOR2 = RAGE_JOAAT("IMPERATOR2"),
VEHICLE_IMPERATOR3 = RAGE_JOAAT("IMPERATOR3"),
VEHICLE_ISSI4 = RAGE_JOAAT("ISSI4"),
VEHICLE_ISSI5 = RAGE_JOAAT("ISSI5"),
VEHICLE_ISSI6 = RAGE_JOAAT("ISSI6"),
VEHICLE_ITALIGTO = RAGE_JOAAT("ITALIGTO"),
VEHICLE_MONSTER3 = RAGE_JOAAT("MONSTER3"),
VEHICLE_MONSTER4 = RAGE_JOAAT("MONSTER4"),
VEHICLE_MONSTER5 = RAGE_JOAAT("MONSTER5"),
VEHICLE_RCBANDITO = RAGE_JOAAT("RCBANDITO"),
VEHICLE_SCARAB2 = RAGE_JOAAT("SCARAB2"),
VEHICLE_SCARAB3 = RAGE_JOAAT("SCARAB3"),
VEHICLE_SCHLAGEN = RAGE_JOAAT("SCHLAGEN"),
VEHICLE_SLAMVAN4 = RAGE_JOAAT("SLAMVAN4"),
VEHICLE_SLAMVAN5 = RAGE_JOAAT("SLAMVAN5"),
VEHICLE_SLAMVAN6 = RAGE_JOAAT("SLAMVAN6"),
VEHICLE_TOROS = RAGE_JOAAT("TOROS"),
VEHICLE_TULIP = RAGE_JOAAT("TULIP"),
VEHICLE_VAMOS = RAGE_JOAAT("VAMOS"),
VEHICLE_ZR380 = RAGE_JOAAT("ZR380"),
VEHICLE_ZR3802 = RAGE_JOAAT("ZR3802"),
VEHICLE_ZR3803 = RAGE_JOAAT("ZR3803"),
};
enum CasinoUpdate : Hash
{
VEHICLE_CARACARA2 = RAGE_JOAAT("CARACARA2"),
VEHICLE_DRAFTER = RAGE_JOAAT("DRAFTER"),
VEHICLE_DYNASTY = RAGE_JOAAT("DYNASTY"),
VEHICLE_EMERUS = RAGE_JOAAT("EMERUS"),
VEHICLE_GAUNTLET3 = RAGE_JOAAT("GAUNTLET3"),
VEHICLE_GAUNTLET4 = RAGE_JOAAT("GAUNTLET4"),
VEHICLE_HELLION = RAGE_JOAAT("HELLION"),
VEHICLE_ISSI7 = RAGE_JOAAT("ISSI7"),
VEHICLE_JUGULAR = RAGE_JOAAT("JUGULAR"),
VEHICLE_KRIEGER = RAGE_JOAAT("KRIEGER"),
VEHICLE_LOCUST = RAGE_JOAAT("LOCUST"),
VEHICLE_NEBULA = RAGE_JOAAT("NEBULA"),
VEHICLE_NEO = RAGE_JOAAT("NEO"),
VEHICLE_NOVAK = RAGE_JOAAT("NOVAK"),
VEHICLE_PARAGON = RAGE_JOAAT("PARAGON"),
VEHICLE_PARAGON2 = RAGE_JOAAT("PARAGON2"),
VEHICLE_PEYOTE2 = RAGE_JOAAT("PEYOTE2"),
VEHICLE_RROCKET = RAGE_JOAAT("RROCKET"),
VEHICLE_S80 = RAGE_JOAAT("S80"),
VEHICLE_THRAX = RAGE_JOAAT("THRAX"),
VEHICLE_ZION3 = RAGE_JOAAT("ZION3"),
VEHICLE_ZORRUSSO = RAGE_JOAAT("ZORRUSSO")
};
enum CasinoHeist : Hash
{
VEHICLE_ASBO = RAGE_JOAAT("ABSO"),
VEHICLE_EVERON = RAGE_JOAAT("EVERON"),
VEHICLE_FORMULA = RAGE_JOAAT("FORMULA"),
VEHICLE_FORMULA2 = RAGE_JOAAT("FORMULA2"),
VEHICLE_FURIA = RAGE_JOAAT("FURIA"),
VEHICLE_IMORGON = RAGE_JOAAT("IMORGON"),
VEHICLE_JB7002 = RAGE_JOAAT("JB7002"),
VEHICLE_KANJO = RAGE_JOAAT("KANJO"),
VEHICLE_KOMODA = RAGE_JOAAT("KOMODA"),
VEHICLE_MINITANK = RAGE_JOAAT("MINITANK"),
VEHICLE_OUTLAW = RAGE_JOAAT("OUTLAW"),
VEHICLE_REBLA = RAGE_JOAAT("REBLA"),
VEHICLE_RETINUE2 = RAGE_JOAAT("RETINUE2"),
VEHICLE_STRYDER = RAGE_JOAAT("STRYDER"),
VEHICLE_SUGOI = RAGE_JOAAT("SUGOI"),
VEHICLE_SULTAN2 = RAGE_JOAAT("SULTAN2"),
VEHICLE_VAGRANT = RAGE_JOAAT("VAGRANT"),
VEHICLE_VSTR = RAGE_JOAAT("VSTR"),
VEHICLE_YOSEMITE2 = RAGE_JOAAT("YOSEMITE2"),
VEHICLE_ZHABA = RAGE_JOAAT("ZHABA"),
};

543
BigBaseV2/src/gta/Weapons.h Normal file
View File

@ -0,0 +1,543 @@
#pragma once
#include "natives.hpp"
#include "gta\joaat.hpp"
enum WeaponHashes : Hash
{
WEAPON_ADVANCEDRIFLE = RAGE_JOAAT("WEAPON_ADVANCEDRIFLE"),
WEAPON_APPISTOL = RAGE_JOAAT("WEAPON_APPISTOL"),
WEAPON_ASSAULTRIFLE = RAGE_JOAAT("WEAPON_ASSAULTRIFLE"),
WEAPON_ASSAULTRIFLE_MK2 = RAGE_JOAAT("WEAPON_ASSAULTRIFLE_MK2"),
WEAPON_ASSAULTSHOTGUN = RAGE_JOAAT("WEAPON_ASSAULTSHOTGUN"),
WEAPON_ASSAULTSMG = RAGE_JOAAT("WEAPON_ASSAULTSMG"),
WEAPON_BALL = RAGE_JOAAT("WEAPON_BALL"),
WEAPON_BAT = RAGE_JOAAT("WEAPON_BAT"),
WEAPON_BATTLEAXE = RAGE_JOAAT("WEAPON_BATTLEAXE"),
WEAPON_BOTTLE = RAGE_JOAAT("WEAPON_BOTTLE"),
WEAPON_BULLPUPRIFLE = RAGE_JOAAT("WEAPON_BULLPUPRIFLE"),
WEAPON_BULLPUPRIFLE_MK2 = RAGE_JOAAT("WEAPON_BULLPUPRIFLE_MK2"),
WEAPON_BULLPUPSHOTGUN = RAGE_JOAAT("WEAPON_BULLPUPSHOTGUN"),
WEAPON_BZGAS = RAGE_JOAAT("WEAPON_BZGAS"),
WEAPON_CARBINERIFLE = RAGE_JOAAT("WEAPON_CARBINERIFLE"),
WEAPON_CARBINERIFLE_MK2 = RAGE_JOAAT("WEAPON_CARBINERIFLE_MK2"),
WEAPON_COMBATMG = RAGE_JOAAT("WEAPON_COMBATMG"),
WEAPON_COMBATMG_MK2 = RAGE_JOAAT("WEAPON_COMBATMG_MK2"),
WEAPON_COMBATPDW = RAGE_JOAAT("WEAPON_COMBATPDW"),
WEAPON_COMBATPISTOL = RAGE_JOAAT("WEAPON_COMBATPISTOL"),
WEAPON_COMPACTLAUNCHER = RAGE_JOAAT("WEAPON_COMPACTLAUNCHER"),
WEAPON_COMPACTRIFLE = RAGE_JOAAT("WEAPON_COMPACTRIFLE"),
WEAPON_CROWBAR = RAGE_JOAAT("WEAPON_CROWBAR"),
WEAPON_DAGGER = RAGE_JOAAT("WEAPON_DAGGER"),
WEAPON_DOUBLEACTION = RAGE_JOAAT("WEAPON_DOUBLEACTION"),
WEAPON_FIREEXTINGUISHER = RAGE_JOAAT("WEAPON_FIREEXTINGUISHER"),
WEAPON_FIREWORK = RAGE_JOAAT("WEAPON_FIREWORK"),
WEAPON_FLARE = RAGE_JOAAT("WEAPON_FLARE"),
WEAPON_FLAREGUN = RAGE_JOAAT("WEAPON_FLAREGUN"),
WEAPON_FLASHLIGHT = RAGE_JOAAT("WEAPON_FLASHLIGHT"),
WEAPON_GOLFCLUB = RAGE_JOAAT("WEAPON_GOLFCLUB"),
WEAPON_GRENADE = RAGE_JOAAT("WEAPON_GRENADE"),
WEAPON_GRENADELAUNCHER = RAGE_JOAAT("WEAPON_GRENADELAUNCHER"),
WEAPON_GRENADELAUNCHER_SMOKE = RAGE_JOAAT("WEAPON_GRENADELAUNCHER_SMOKE"),
WEAPON_GUSENBERG = RAGE_JOAAT("WEAPON_GUSENBERG"),
WEAPON_HAMMER = RAGE_JOAAT("WEAPON_HAMMER"),
WEAPON_HATCHET = RAGE_JOAAT("WEAPON_HATCHET"),
WEAPON_HEAVYPISTOL = RAGE_JOAAT("WEAPON_HEAVYPISTOL"),
WEAPON_HEAVYSHOTGUN = RAGE_JOAAT("WEAPON_HEAVYSHOTGUN"),
WEAPON_HEAVYSNIPER = RAGE_JOAAT("WEAPON_HEAVYSNIPER"),
WEAPON_HEAVYSNIPER_MK2 = RAGE_JOAAT("WEAPON_HEAVYSNIPER_MK2"),
WEAPON_HOMINGLAUNCHER = RAGE_JOAAT("WEAPON_HOMINGLAUNCHER"),
WEAPON_KNIFE = RAGE_JOAAT("WEAPON_KNIFE"),
WEAPON_KNUCKLE = RAGE_JOAAT("WEAPON_KNUCKLE"),
WEAPON_MACHETE = RAGE_JOAAT("WEAPON_MACHETE"),
WEAPON_MACHINEPISTOL = RAGE_JOAAT("WEAPON_MACHINEPISTOL"),
WEAPON_MARKSMANPISTOL = RAGE_JOAAT("WEAPON_MARKSMANPISTOL"),
WEAPON_MARKSMANRIFLE = RAGE_JOAAT("WEAPON_MARKSMANRIFLE"),
WEAPON_MARKSMANRIFLE_MK2 = RAGE_JOAAT("WEAPON_MARKSMANRIFLE_MK2"),
WEAPON_MG = RAGE_JOAAT("WEAPON_MG"),
WEAPON_MICROSMG = RAGE_JOAAT("WEAPON_MICROSMG"),
WEAPON_MINIGUN = RAGE_JOAAT("WEAPON_MINIGUN"),
WEAPON_MINISMG = RAGE_JOAAT("WEAPON_MINISMG"),
WEAPON_MOLOTOV = RAGE_JOAAT("WEAPON_MOLOTOV"),
WEAPON_MUSKET = RAGE_JOAAT("WEAPON_MUSKET"),
WEAPON_NIGHTSTICK = RAGE_JOAAT("WEAPON_NIGHTSTICK"),
WEAPON_PETROLCAN = RAGE_JOAAT("WEAPON_PETROLCAN"),
WEAPON_PIPEBOMB = RAGE_JOAAT("WEAPON_PIPEBOMB"),
WEAPON_PISTOL50 = RAGE_JOAAT("WEAPON_PISTOL50"),
WEAPON_PISTOL = RAGE_JOAAT("WEAPON_PISTOL"),
WEAPON_PISTOL_MK2 = RAGE_JOAAT("WEAPON_PISTOL_MK2"),
WEAPON_POOLCUE = RAGE_JOAAT("WEAPON_POOLCUE"),
WEAPON_PROXMINE = RAGE_JOAAT("WEAPON_PROXMINE"),
WEAPON_PUMPSHOTGUN = RAGE_JOAAT("WEAPON_PUMPSHOTGUN"),
WEAPON_PUMPSHOTGUN_MK2 = RAGE_JOAAT("WEAPON_PUMPSHOTGUN_MK2"),
WEAPON_RAILGUN = RAGE_JOAAT("WEAPON_RAILGUN"),
WEAPON_RAYCARBINE = RAGE_JOAAT("WEAPON_RAYCARBINE"),
WEAPON_RAYPISTOL = RAGE_JOAAT("WEAPON_RAYPISTOL"),
WEAPON_RAYMINIGUN = RAGE_JOAAT("WEAPON_RAYMINIGUN"),
WEAPON_REVOLVER = RAGE_JOAAT("WEAPON_REVOLVER"),
WEAPON_REVOLVER_MK2 = RAGE_JOAAT("WEAPON_REVOLVER_MK2"),
WEAPON_RPG = RAGE_JOAAT("WEAPON_RPG"),
WEAPON_SAWNOFFSHOTGUN = RAGE_JOAAT("WEAPON_SAWNOFFSHOTGUN"),
WEAPON_SMG = RAGE_JOAAT("WEAPON_SMG"),
WEAPON_SMG_MK2 = RAGE_JOAAT("WEAPON_SMG_MK2"),
WEAPON_SMOKEGRENADE = RAGE_JOAAT("WEAPON_SMOKEGRENADE"),
WEAPON_SNIPERRIFLE = RAGE_JOAAT("WEAPON_SNIPERRIFLE"),
WEAPON_SNOWBALL = RAGE_JOAAT("WEAPON_SNOWBALL"),
WEAPON_SNSPISTOL = RAGE_JOAAT("WEAPON_SNSPISTOL"),
WEAPON_SNSPISTOL_MK2 = RAGE_JOAAT("WEAPON_SNSPISTOL_MK2"),
WEAPON_SPECIALCARBINE = RAGE_JOAAT("WEAPON_SPECIALCARBINE"),
WEAPON_SPECIALCARBINE_MK2 = RAGE_JOAAT("WEAPON_SPECIALCARBINE_MK2"),
WEAPON_STICKYBOMB = RAGE_JOAAT("WEAPON_STICKYBOMB"),
WEAPON_STINGER = RAGE_JOAAT("WEAPON_STINGER"),
WEAPON_STONE_HATCHET = RAGE_JOAAT("WEAPON_STONE_HATCHET"),
WEAPON_STUNGUN = RAGE_JOAAT("WEAPON_STUNGUN"),
WEAPON_SWITCHBLADE = RAGE_JOAAT("WEAPON_SWITCHBLADE"),
WEAPON_UNARMED = RAGE_JOAAT("WEAPON_UNARMED"),
WEAPON_VINTAGEPISTOL = RAGE_JOAAT("WEAPON_VINTAGEPISTOL"),
WEAPON_WRENCH = RAGE_JOAAT("WEAPON_WRENCH"),
};
enum Gadgets : Hash
{
GADGET_OBJECT = RAGE_JOAAT("OBJECT"),
GADGET_PARACHUTE = RAGE_JOAAT("GADGET_PARACHUTE")
};
enum WeaponComponents : Hash
{
COMPONENT_ADVANCEDRIFLE_CLIP_01 = RAGE_JOAAT("COMPONENT_ADVANCEDRIFLE_CLIP_01"),
COMPONENT_ADVANCEDRIFLE_CLIP_02 = RAGE_JOAAT("COMPONENT_ADVANCEDRIFLE_CLIP_02"),
COMPONENT_ADVANCEDRIFLE_VARMOD_LUXE = RAGE_JOAAT("COMPONENT_ADVANCEDRIFLE_VARMOD_LUXE"),
COMPONENT_APPISTOL_CLIP_01 = RAGE_JOAAT("COMPONENT_APPISTOL_CLIP_01"),
COMPONENT_APPISTOL_CLIP_02 = RAGE_JOAAT("COMPONENT_APPISTOL_CLIP_02"),
COMPONENT_APPISTOL_VARMOD_LUXE = RAGE_JOAAT("COMPONENT_APPISTOL_VARMOD_LUXE"),
COMPONENT_ASSAULTRIFLE_CLIP_01 = RAGE_JOAAT("COMPONENT_ASSAULTRIFLE_CLIP_01"),
COMPONENT_ASSAULTRIFLE_CLIP_02 = RAGE_JOAAT("COMPONENT_ASSAULTRIFLE_CLIP_02"),
COMPONENT_ASSAULTRIFLE_CLIP_03 = RAGE_JOAAT("COMPONENT_ASSAULTRIFLE_CLIP_03"),
COMPONENT_ASSAULTRIFLE_MK2_CAMO = RAGE_JOAAT("COMPONENT_ASSAULTRIFLE_MK2_CAMO"),
COMPONENT_ASSAULTRIFLE_MK2_CAMO_02 = RAGE_JOAAT("COMPONENT_ASSAULTRIFLE_MK2_CAMO_02"),
COMPONENT_ASSAULTRIFLE_MK2_CAMO_03 = RAGE_JOAAT("COMPONENT_ASSAULTRIFLE_MK2_CAMO_03"),
COMPONENT_ASSAULTRIFLE_MK2_CAMO_04 = RAGE_JOAAT("COMPONENT_ASSAULTRIFLE_MK2_CAMO_04"),
COMPONENT_ASSAULTRIFLE_MK2_CAMO_05 = RAGE_JOAAT("COMPONENT_ASSAULTRIFLE_MK2_CAMO_05"),
COMPONENT_ASSAULTRIFLE_MK2_CAMO_06 = RAGE_JOAAT("COMPONENT_ASSAULTRIFLE_MK2_CAMO_06"),
COMPONENT_ASSAULTRIFLE_MK2_CAMO_07 = RAGE_JOAAT("COMPONENT_ASSAULTRIFLE_MK2_CAMO_07"),
COMPONENT_ASSAULTRIFLE_MK2_CAMO_08 = RAGE_JOAAT("COMPONENT_ASSAULTRIFLE_MK2_CAMO_08"),
COMPONENT_ASSAULTRIFLE_MK2_CAMO_09 = RAGE_JOAAT("COMPONENT_ASSAULTRIFLE_MK2_CAMO_09"),
COMPONENT_ASSAULTRIFLE_MK2_CAMO_10 = RAGE_JOAAT("COMPONENT_ASSAULTRIFLE_MK2_CAMO_10"),
COMPONENT_ASSAULTRIFLE_MK2_CAMO_IND_01 = RAGE_JOAAT("COMPONENT_ASSAULTRIFLE_MK2_CAMO_IND_01"),
COMPONENT_ASSAULTRIFLE_MK2_CLIP_01 = RAGE_JOAAT("COMPONENT_ASSAULTRIFLE_MK2_CLIP_01"),
COMPONENT_ASSAULTRIFLE_MK2_CLIP_02 = RAGE_JOAAT("COMPONENT_ASSAULTRIFLE_MK2_CLIP_02"),
COMPONENT_ASSAULTRIFLE_MK2_CLIP_ARMORPIERCING = RAGE_JOAAT("COMPONENT_ASSAULTRIFLE_MK2_CLIP_ARMORPIERCING"),
COMPONENT_ASSAULTRIFLE_MK2_CLIP_FMJ = RAGE_JOAAT("COMPONENT_ASSAULTRIFLE_MK2_CLIP_FMJ"),
COMPONENT_ASSAULTRIFLE_MK2_CLIP_INCENDIARY = RAGE_JOAAT("COMPONENT_ASSAULTRIFLE_MK2_CLIP_INCENDIARY"),
COMPONENT_ASSAULTRIFLE_MK2_CLIP_TRACER = RAGE_JOAAT("COMPONENT_ASSAULTRIFLE_MK2_CLIP_TRACER"),
COMPONENT_ASSAULTRIFLE_VARMOD_LUXE = RAGE_JOAAT("COMPONENT_ASSAULTRIFLE_VARMOD_LUXE"),
COMPONENT_ASSAULTSHOTGUN_CLIP_01 = RAGE_JOAAT("COMPONENT_ASSAULTSHOTGUN_CLIP_01"),
COMPONENT_ASSAULTSHOTGUN_CLIP_02 = RAGE_JOAAT("COMPONENT_ASSAULTSHOTGUN_CLIP_02"),
COMPONENT_ASSAULTSMG_CLIP_01 = RAGE_JOAAT("COMPONENT_ASSAULTSMG_CLIP_01"),
COMPONENT_ASSAULTSMG_CLIP_02 = RAGE_JOAAT("COMPONENT_ASSAULTSMG_CLIP_02"),
COMPONENT_ASSAULTSMG_VARMOD_LOWRIDER = RAGE_JOAAT("COMPONENT_ASSAULTSMG_VARMOD_LOWRIDER"),
COMPONENT_AT_AR_AFGRIP = RAGE_JOAAT("COMPONENT_AT_AR_AFGRIP"),
COMPONENT_AT_AR_AFGRIP_02 = RAGE_JOAAT("COMPONENT_AT_AR_AFGRIP_02"),
COMPONENT_AT_AR_BARREL_01 = RAGE_JOAAT("COMPONENT_AT_AR_BARREL_01"),
COMPONENT_AT_AR_BARREL_02 = RAGE_JOAAT("COMPONENT_AT_AR_BARREL_02"),
COMPONENT_AT_AR_FLSH = RAGE_JOAAT("COMPONENT_AT_AR_FLSH"),
COMPONENT_AT_AR_SUPP = RAGE_JOAAT("COMPONENT_AT_AR_SUPP"),
COMPONENT_AT_AR_SUPP_02 = RAGE_JOAAT("COMPONENT_AT_AR_SUPP_02"),
COMPONENT_AT_BP_BARREL_01 = RAGE_JOAAT("COMPONENT_AT_BP_BARREL_01"),
COMPONENT_AT_BP_BARREL_02 = RAGE_JOAAT("COMPONENT_AT_BP_BARREL_02"),
COMPONENT_AT_CR_BARREL_01 = RAGE_JOAAT("COMPONENT_AT_CR_BARREL_01"),
COMPONENT_AT_CR_BARREL_02 = RAGE_JOAAT("COMPONENT_AT_CR_BARREL_02"),
COMPONENT_AT_MG_BARREL_01 = RAGE_JOAAT("COMPONENT_AT_MG_BARREL_01"),
COMPONENT_AT_MG_BARREL_02 = RAGE_JOAAT("COMPONENT_AT_MG_BARREL_02"),
COMPONENT_AT_MRFL_BARREL_01 = RAGE_JOAAT("COMPONENT_AT_MRFL_BARREL_01"),
COMPONENT_AT_MRFL_BARREL_02 = RAGE_JOAAT("COMPONENT_AT_MRFL_BARREL_02"),
COMPONENT_AT_MUZZLE_01 = RAGE_JOAAT("COMPONENT_AT_MUZZLE_01"),
COMPONENT_AT_MUZZLE_02 = RAGE_JOAAT("COMPONENT_AT_MUZZLE_02"),
COMPONENT_AT_MUZZLE_03 = RAGE_JOAAT("COMPONENT_AT_MUZZLE_03"),
COMPONENT_AT_MUZZLE_04 = RAGE_JOAAT("COMPONENT_AT_MUZZLE_04"),
COMPONENT_AT_MUZZLE_05 = RAGE_JOAAT("COMPONENT_AT_MUZZLE_05"),
COMPONENT_AT_MUZZLE_06 = RAGE_JOAAT("COMPONENT_AT_MUZZLE_06"),
COMPONENT_AT_MUZZLE_07 = RAGE_JOAAT("COMPONENT_AT_MUZZLE_07"),
COMPONENT_AT_MUZZLE_08 = RAGE_JOAAT("COMPONENT_AT_MUZZLE_08"),
COMPONENT_AT_MUZZLE_09 = RAGE_JOAAT("COMPONENT_AT_MUZZLE_09"),
COMPONENT_AT_PI_COMP = RAGE_JOAAT("COMPONENT_AT_PI_COMP"),
COMPONENT_AT_PI_COMP_02 = RAGE_JOAAT("COMPONENT_AT_PI_COMP_02"),
COMPONENT_AT_PI_COMP_03 = RAGE_JOAAT("COMPONENT_AT_PI_COMP_03"),
COMPONENT_AT_PI_FLSH = RAGE_JOAAT("COMPONENT_AT_PI_FLSH"),
COMPONENT_AT_PI_FLSH_02 = RAGE_JOAAT("COMPONENT_AT_PI_FLSH_02"),
COMPONENT_AT_PI_FLSH_03 = RAGE_JOAAT("COMPONENT_AT_PI_FLSH_03"),
COMPONENT_AT_PI_RAIL = RAGE_JOAAT("COMPONENT_AT_PI_RAIL"),
COMPONENT_AT_PI_RAIL_02 = RAGE_JOAAT("COMPONENT_AT_PI_RAIL_02"),
COMPONENT_AT_PI_SUPP = RAGE_JOAAT("COMPONENT_AT_PI_SUPP"),
COMPONENT_AT_PI_SUPP_02 = RAGE_JOAAT("COMPONENT_AT_PI_SUPP_02"),
COMPONENT_AT_SB_BARREL_01 = RAGE_JOAAT("COMPONENT_AT_SB_BARREL_01"),
COMPONENT_AT_SB_BARREL_02 = RAGE_JOAAT("COMPONENT_AT_SB_BARREL_02"),
COMPONENT_AT_SCOPE_LARGE = RAGE_JOAAT("COMPONENT_AT_SCOPE_LARGE"),
COMPONENT_AT_SCOPE_LARGE_FIXED_ZOOM = RAGE_JOAAT("COMPONENT_AT_SCOPE_LARGE_FIXED_ZOOM"),
COMPONENT_AT_SCOPE_LARGE_FIXED_ZOOM_MK2 = RAGE_JOAAT("COMPONENT_AT_SCOPE_LARGE_FIXED_ZOOM_MK2"),
COMPONENT_AT_SCOPE_LARGE_MK2 = RAGE_JOAAT("COMPONENT_AT_SCOPE_LARGE_MK2"),
COMPONENT_AT_SCOPE_MACRO = RAGE_JOAAT("COMPONENT_AT_SCOPE_MACRO"),
COMPONENT_AT_SCOPE_MACRO_02 = RAGE_JOAAT("COMPONENT_AT_SCOPE_MACRO_02"),
COMPONENT_AT_SCOPE_MACRO_02_MK2 = RAGE_JOAAT("COMPONENT_AT_SCOPE_MACRO_02_MK2"),
COMPONENT_AT_SCOPE_MACRO_02_SMG_MK2 = RAGE_JOAAT("COMPONENT_AT_SCOPE_MACRO_02_SMG_MK2"),
COMPONENT_AT_SCOPE_MACRO_MK2 = RAGE_JOAAT("COMPONENT_AT_SCOPE_MACRO_MK2"),
COMPONENT_AT_SCOPE_MAX = RAGE_JOAAT("COMPONENT_AT_SCOPE_MAX"),
COMPONENT_AT_SCOPE_MEDIUM = RAGE_JOAAT("COMPONENT_AT_SCOPE_MEDIUM"),
COMPONENT_AT_SCOPE_MEDIUM_MK2 = RAGE_JOAAT("COMPONENT_AT_SCOPE_MEDIUM_MK2"),
COMPONENT_AT_SCOPE_NV = RAGE_JOAAT("COMPONENT_AT_SCOPE_NV"),
COMPONENT_AT_SCOPE_SMALL = RAGE_JOAAT("COMPONENT_AT_SCOPE_SMALL"),
COMPONENT_AT_SCOPE_SMALL_02 = RAGE_JOAAT("COMPONENT_AT_SCOPE_SMALL_02"),
COMPONENT_AT_SCOPE_SMALL_MK2 = RAGE_JOAAT("COMPONENT_AT_SCOPE_SMALL_MK2"),
COMPONENT_AT_SCOPE_SMALL_SMG_MK2 = RAGE_JOAAT("COMPONENT_AT_SCOPE_SMALL_SMG_MK2"),
COMPONENT_AT_SCOPE_THERMAL = RAGE_JOAAT("COMPONENT_AT_SCOPE_THERMAL"),
COMPONENT_AT_SC_BARREL_01 = RAGE_JOAAT("COMPONENT_AT_SC_BARREL_01"),
COMPONENT_AT_SC_BARREL_02 = RAGE_JOAAT("COMPONENT_AT_SC_BARREL_02"),
COMPONENT_AT_SIGHTS = RAGE_JOAAT("COMPONENT_AT_SIGHTS"),
COMPONENT_AT_SIGHTS_SMG = RAGE_JOAAT("COMPONENT_AT_SIGHTS_SMG"),
COMPONENT_AT_SR_BARREL_01 = RAGE_JOAAT("COMPONENT_AT_SR_BARREL_01"),
COMPONENT_AT_SR_BARREL_02 = RAGE_JOAAT("COMPONENT_AT_SR_BARREL_02"),
COMPONENT_AT_SR_SUPP = RAGE_JOAAT("COMPONENT_AT_SR_SUPP"),
COMPONENT_AT_SR_SUPP_03 = RAGE_JOAAT("COMPONENT_AT_SR_SUPP_03"),
COMPONENT_BULLPUPRIFLE_CLIP_01 = RAGE_JOAAT("COMPONENT_BULLPUPRIFLE_CLIP_01"),
COMPONENT_BULLPUPRIFLE_CLIP_02 = RAGE_JOAAT("COMPONENT_BULLPUPRIFLE_CLIP_02"),
COMPONENT_BULLPUPRIFLE_MK2_CAMO = RAGE_JOAAT("COMPONENT_BULLPUPRIFLE_MK2_CAMO"),
COMPONENT_BULLPUPRIFLE_MK2_CAMO_02 = RAGE_JOAAT("COMPONENT_BULLPUPRIFLE_MK2_CAMO_02"),
COMPONENT_BULLPUPRIFLE_MK2_CAMO_03 = RAGE_JOAAT("COMPONENT_BULLPUPRIFLE_MK2_CAMO_03"),
COMPONENT_BULLPUPRIFLE_MK2_CAMO_04 = RAGE_JOAAT("COMPONENT_BULLPUPRIFLE_MK2_CAMO_04"),
COMPONENT_BULLPUPRIFLE_MK2_CAMO_05 = RAGE_JOAAT("COMPONENT_BULLPUPRIFLE_MK2_CAMO_05"),
COMPONENT_BULLPUPRIFLE_MK2_CAMO_06 = RAGE_JOAAT("COMPONENT_BULLPUPRIFLE_MK2_CAMO_06"),
COMPONENT_BULLPUPRIFLE_MK2_CAMO_07 = RAGE_JOAAT("COMPONENT_BULLPUPRIFLE_MK2_CAMO_07"),
COMPONENT_BULLPUPRIFLE_MK2_CAMO_08 = RAGE_JOAAT("COMPONENT_BULLPUPRIFLE_MK2_CAMO_08"),
COMPONENT_BULLPUPRIFLE_MK2_CAMO_09 = RAGE_JOAAT("COMPONENT_BULLPUPRIFLE_MK2_CAMO_09"),
COMPONENT_BULLPUPRIFLE_MK2_CAMO_10 = RAGE_JOAAT("COMPONENT_BULLPUPRIFLE_MK2_CAMO_10"),
COMPONENT_BULLPUPRIFLE_MK2_CAMO_IND_01 = RAGE_JOAAT("COMPONENT_BULLPUPRIFLE_MK2_CAMO_IND_01"),
COMPONENT_BULLPUPRIFLE_MK2_CLIP_01 = RAGE_JOAAT("COMPONENT_BULLPUPRIFLE_MK2_CLIP_01"),
COMPONENT_BULLPUPRIFLE_MK2_CLIP_02 = RAGE_JOAAT("COMPONENT_BULLPUPRIFLE_MK2_CLIP_02"),
COMPONENT_BULLPUPRIFLE_MK2_CLIP_ARMORPIERCING = RAGE_JOAAT("COMPONENT_BULLPUPRIFLE_MK2_CLIP_ARMORPIERCING"),
COMPONENT_BULLPUPRIFLE_MK2_CLIP_FMJ = RAGE_JOAAT("COMPONENT_BULLPUPRIFLE_MK2_CLIP_FMJ"),
COMPONENT_BULLPUPRIFLE_MK2_CLIP_INCENDIARY = RAGE_JOAAT("COMPONENT_BULLPUPRIFLE_MK2_CLIP_INCENDIARY"),
COMPONENT_BULLPUPRIFLE_MK2_CLIP_TRACER = RAGE_JOAAT("COMPONENT_BULLPUPRIFLE_MK2_CLIP_TRACER"),
COMPONENT_BULLPUPRIFLE_VARMOD_LOW = RAGE_JOAAT("COMPONENT_BULLPUPRIFLE_VARMOD_LOW"),
COMPONENT_CARBINERIFLE_CLIP_01 = RAGE_JOAAT("COMPONENT_CARBINERIFLE_CLIP_01"),
COMPONENT_CARBINERIFLE_CLIP_02 = RAGE_JOAAT("COMPONENT_CARBINERIFLE_CLIP_02"),
COMPONENT_CARBINERIFLE_CLIP_03 = RAGE_JOAAT("COMPONENT_CARBINERIFLE_CLIP_03"),
COMPONENT_CARBINERIFLE_MK2_CAMO = RAGE_JOAAT("COMPONENT_CARBINERIFLE_MK2_CAMO"),
COMPONENT_CARBINERIFLE_MK2_CAMO_02 = RAGE_JOAAT("COMPONENT_CARBINERIFLE_MK2_CAMO_02"),
COMPONENT_CARBINERIFLE_MK2_CAMO_03 = RAGE_JOAAT("COMPONENT_CARBINERIFLE_MK2_CAMO_03"),
COMPONENT_CARBINERIFLE_MK2_CAMO_04 = RAGE_JOAAT("COMPONENT_CARBINERIFLE_MK2_CAMO_04"),
COMPONENT_CARBINERIFLE_MK2_CAMO_05 = RAGE_JOAAT("COMPONENT_CARBINERIFLE_MK2_CAMO_05"),
COMPONENT_CARBINERIFLE_MK2_CAMO_06 = RAGE_JOAAT("COMPONENT_CARBINERIFLE_MK2_CAMO_06"),
COMPONENT_CARBINERIFLE_MK2_CAMO_07 = RAGE_JOAAT("COMPONENT_CARBINERIFLE_MK2_CAMO_07"),
COMPONENT_CARBINERIFLE_MK2_CAMO_08 = RAGE_JOAAT("COMPONENT_CARBINERIFLE_MK2_CAMO_08"),
COMPONENT_CARBINERIFLE_MK2_CAMO_09 = RAGE_JOAAT("COMPONENT_CARBINERIFLE_MK2_CAMO_09"),
COMPONENT_CARBINERIFLE_MK2_CAMO_10 = RAGE_JOAAT("COMPONENT_CARBINERIFLE_MK2_CAMO_10"),
COMPONENT_CARBINERIFLE_MK2_CAMO_IND_01 = RAGE_JOAAT("COMPONENT_CARBINERIFLE_MK2_CAMO_IND_01"),
COMPONENT_CARBINERIFLE_MK2_CLIP_01 = RAGE_JOAAT("COMPONENT_CARBINERIFLE_MK2_CLIP_01"),
COMPONENT_CARBINERIFLE_MK2_CLIP_02 = RAGE_JOAAT("COMPONENT_CARBINERIFLE_MK2_CLIP_02"),
COMPONENT_CARBINERIFLE_MK2_CLIP_ARMORPIERCING = RAGE_JOAAT("COMPONENT_CARBINERIFLE_MK2_CLIP_ARMORPIERCING"),
COMPONENT_CARBINERIFLE_MK2_CLIP_FMJ = RAGE_JOAAT("COMPONENT_CARBINERIFLE_MK2_CLIP_FMJ"),
COMPONENT_CARBINERIFLE_MK2_CLIP_INCENDIARY = RAGE_JOAAT("COMPONENT_CARBINERIFLE_MK2_CLIP_INCENDIARY"),
COMPONENT_CARBINERIFLE_MK2_CLIP_TRACER = RAGE_JOAAT("COMPONENT_CARBINERIFLE_MK2_CLIP_TRACER"),
COMPONENT_CARBINERIFLE_VARMOD_LUXE = RAGE_JOAAT("COMPONENT_CARBINERIFLE_VARMOD_LUXE"),
COMPONENT_COMBATMG_CLIP_01 = RAGE_JOAAT("COMPONENT_COMBATMG_CLIP_01"),
COMPONENT_COMBATMG_CLIP_02 = RAGE_JOAAT("COMPONENT_COMBATMG_CLIP_02"),
COMPONENT_COMBATMG_MK2_CAMO = RAGE_JOAAT("COMPONENT_COMBATMG_MK2_CAMO"),
COMPONENT_COMBATMG_MK2_CAMO_02 = RAGE_JOAAT("COMPONENT_COMBATMG_MK2_CAMO_02"),
COMPONENT_COMBATMG_MK2_CAMO_03 = RAGE_JOAAT("COMPONENT_COMBATMG_MK2_CAMO_03"),
COMPONENT_COMBATMG_MK2_CAMO_04 = RAGE_JOAAT("COMPONENT_COMBATMG_MK2_CAMO_04"),
COMPONENT_COMBATMG_MK2_CAMO_05 = RAGE_JOAAT("COMPONENT_COMBATMG_MK2_CAMO_05"),
COMPONENT_COMBATMG_MK2_CAMO_06 = RAGE_JOAAT("COMPONENT_COMBATMG_MK2_CAMO_06"),
COMPONENT_COMBATMG_MK2_CAMO_07 = RAGE_JOAAT("COMPONENT_COMBATMG_MK2_CAMO_07"),
COMPONENT_COMBATMG_MK2_CAMO_08 = RAGE_JOAAT("COMPONENT_COMBATMG_MK2_CAMO_08"),
COMPONENT_COMBATMG_MK2_CAMO_09 = RAGE_JOAAT("COMPONENT_COMBATMG_MK2_CAMO_09"),
COMPONENT_COMBATMG_MK2_CAMO_10 = RAGE_JOAAT("COMPONENT_COMBATMG_MK2_CAMO_10"),
COMPONENT_COMBATMG_MK2_CAMO_IND_01 = RAGE_JOAAT("COMPONENT_COMBATMG_MK2_CAMO_IND_01"),
COMPONENT_COMBATMG_MK2_CLIP_01 = RAGE_JOAAT("COMPONENT_COMBATMG_MK2_CLIP_01"),
COMPONENT_COMBATMG_MK2_CLIP_02 = RAGE_JOAAT("COMPONENT_COMBATMG_MK2_CLIP_02"),
COMPONENT_COMBATMG_MK2_CLIP_ARMORPIERCING = RAGE_JOAAT("COMPONENT_COMBATMG_MK2_CLIP_ARMORPIERCING"),
COMPONENT_COMBATMG_MK2_CLIP_FMJ = RAGE_JOAAT("COMPONENT_COMBATMG_MK2_CLIP_FMJ"),
COMPONENT_COMBATMG_MK2_CLIP_INCENDIARY = RAGE_JOAAT("COMPONENT_COMBATMG_MK2_CLIP_INCENDIARY"),
COMPONENT_COMBATMG_MK2_CLIP_TRACER = RAGE_JOAAT("COMPONENT_COMBATMG_MK2_CLIP_TRACER"),
COMPONENT_COMBATMG_VARMOD_LOWRIDER = RAGE_JOAAT("COMPONENT_COMBATMG_VARMOD_LOWRIDER"),
COMPONENT_COMBATPDW_CLIP_01 = RAGE_JOAAT("COMPONENT_COMBATPDW_CLIP_01"),
COMPONENT_COMBATPDW_CLIP_02 = RAGE_JOAAT("COMPONENT_COMBATPDW_CLIP_02"),
COMPONENT_COMBATPDW_CLIP_03 = RAGE_JOAAT("COMPONENT_COMBATPDW_CLIP_03"),
COMPONENT_COMBATPISTOL_CLIP_01 = RAGE_JOAAT("COMPONENT_COMBATPISTOL_CLIP_01"),
COMPONENT_COMBATPISTOL_CLIP_02 = RAGE_JOAAT("COMPONENT_COMBATPISTOL_CLIP_02"),
COMPONENT_COMBATPISTOL_VARMOD_LOWRIDER = RAGE_JOAAT("COMPONENT_COMBATPISTOL_VARMOD_LOWRIDER"),
COMPONENT_COMPACTRIFLE_CLIP_01 = RAGE_JOAAT("COMPONENT_COMPACTRIFLE_CLIP_01"),
COMPONENT_COMPACTRIFLE_CLIP_02 = RAGE_JOAAT("COMPONENT_COMPACTRIFLE_CLIP_02"),
COMPONENT_COMPACTRIFLE_CLIP_03 = RAGE_JOAAT("COMPONENT_COMPACTRIFLE_CLIP_03"),
COMPONENT_GRENADELAUNCHER_CLIP_01 = RAGE_JOAAT("COMPONENT_GRENADELAUNCHER_CLIP_01"),
COMPONENT_GUSENBERG_CLIP_01 = RAGE_JOAAT("COMPONENT_GUSENBERG_CLIP_01"),
COMPONENT_GUSENBERG_CLIP_02 = RAGE_JOAAT("COMPONENT_GUSENBERG_CLIP_02"),
COMPONENT_HEAVYPISTOL_CLIP_01 = RAGE_JOAAT("COMPONENT_HEAVYPISTOL_CLIP_01"),
COMPONENT_HEAVYPISTOL_CLIP_02 = RAGE_JOAAT("COMPONENT_HEAVYPISTOL_CLIP_02"),
COMPONENT_HEAVYPISTOL_VARMOD_LUXE = RAGE_JOAAT("COMPONENT_HEAVYPISTOL_VARMOD_LUXE"),
COMPONENT_HEAVYSHOTGUN_CLIP_01 = RAGE_JOAAT("COMPONENT_HEAVYSHOTGUN_CLIP_01"),
COMPONENT_HEAVYSHOTGUN_CLIP_02 = RAGE_JOAAT("COMPONENT_HEAVYSHOTGUN_CLIP_02"),
COMPONENT_HEAVYSHOTGUN_CLIP_03 = RAGE_JOAAT("COMPONENT_HEAVYSHOTGUN_CLIP_03"),
COMPONENT_HEAVYSNIPER_CLIP_01 = RAGE_JOAAT("COMPONENT_HEAVYSNIPER_CLIP_01"),
COMPONENT_HEAVYSNIPER_MK2_CAMO = RAGE_JOAAT("COMPONENT_HEAVYSNIPER_MK2_CAMO"),
COMPONENT_HEAVYSNIPER_MK2_CAMO_02 = RAGE_JOAAT("COMPONENT_HEAVYSNIPER_MK2_CAMO_02"),
COMPONENT_HEAVYSNIPER_MK2_CAMO_03 = RAGE_JOAAT("COMPONENT_HEAVYSNIPER_MK2_CAMO_03"),
COMPONENT_HEAVYSNIPER_MK2_CAMO_04 = RAGE_JOAAT("COMPONENT_HEAVYSNIPER_MK2_CAMO_04"),
COMPONENT_HEAVYSNIPER_MK2_CAMO_05 = RAGE_JOAAT("COMPONENT_HEAVYSNIPER_MK2_CAMO_05"),
COMPONENT_HEAVYSNIPER_MK2_CAMO_06 = RAGE_JOAAT("COMPONENT_HEAVYSNIPER_MK2_CAMO_06"),
COMPONENT_HEAVYSNIPER_MK2_CAMO_07 = RAGE_JOAAT("COMPONENT_HEAVYSNIPER_MK2_CAMO_07"),
COMPONENT_HEAVYSNIPER_MK2_CAMO_08 = RAGE_JOAAT("COMPONENT_HEAVYSNIPER_MK2_CAMO_08"),
COMPONENT_HEAVYSNIPER_MK2_CAMO_09 = RAGE_JOAAT("COMPONENT_HEAVYSNIPER_MK2_CAMO_09"),
COMPONENT_HEAVYSNIPER_MK2_CAMO_10 = RAGE_JOAAT("COMPONENT_HEAVYSNIPER_MK2_CAMO_10"),
COMPONENT_HEAVYSNIPER_MK2_CAMO_IND_01 = RAGE_JOAAT("COMPONENT_HEAVYSNIPER_MK2_CAMO_IND_01"),
COMPONENT_HEAVYSNIPER_MK2_CLIP_01 = RAGE_JOAAT("COMPONENT_HEAVYSNIPER_MK2_CLIP_01"),
COMPONENT_HEAVYSNIPER_MK2_CLIP_02 = RAGE_JOAAT("COMPONENT_HEAVYSNIPER_MK2_CLIP_02"),
COMPONENT_HEAVYSNIPER_MK2_CLIP_ARMORPIERCING = RAGE_JOAAT("COMPONENT_HEAVYSNIPER_MK2_CLIP_ARMORPIERCING"),
COMPONENT_HEAVYSNIPER_MK2_CLIP_EXPLOSIVE = RAGE_JOAAT("COMPONENT_HEAVYSNIPER_MK2_CLIP_EXPLOSIVE"),
COMPONENT_HEAVYSNIPER_MK2_CLIP_FMJ = RAGE_JOAAT("COMPONENT_HEAVYSNIPER_MK2_CLIP_FMJ"),
COMPONENT_HEAVYSNIPER_MK2_CLIP_INCENDIARY = RAGE_JOAAT("COMPONENT_HEAVYSNIPER_MK2_CLIP_INCENDIARY"),
COMPONENT_KNUCKLE_VARMOD_BALLAS = RAGE_JOAAT("COMPONENT_KNUCKLE_VARMOD_BALLAS"),
COMPONENT_KNUCKLE_VARMOD_BASE = RAGE_JOAAT("COMPONENT_KNUCKLE_VARMOD_BASE"),
COMPONENT_KNUCKLE_VARMOD_DIAMOND = RAGE_JOAAT("COMPONENT_KNUCKLE_VARMOD_DIAMOND"),
COMPONENT_KNUCKLE_VARMOD_DOLLAR = RAGE_JOAAT("COMPONENT_KNUCKLE_VARMOD_DOLLAR"),
COMPONENT_KNUCKLE_VARMOD_HATE = RAGE_JOAAT("COMPONENT_KNUCKLE_VARMOD_HATE"),
COMPONENT_KNUCKLE_VARMOD_KING = RAGE_JOAAT("COMPONENT_KNUCKLE_VARMOD_KING"),
COMPONENT_KNUCKLE_VARMOD_LOVE = RAGE_JOAAT("COMPONENT_KNUCKLE_VARMOD_LOVE"),
COMPONENT_KNUCKLE_VARMOD_PIMP = RAGE_JOAAT("COMPONENT_KNUCKLE_VARMOD_PIMP"),
COMPONENT_KNUCKLE_VARMOD_PLAYER = RAGE_JOAAT("COMPONENT_KNUCKLE_VARMOD_PLAYER"),
COMPONENT_KNUCKLE_VARMOD_VAGOS = RAGE_JOAAT("COMPONENT_KNUCKLE_VARMOD_VAGOS"),
COMPONENT_MACHINEPISTOL_CLIP_01 = RAGE_JOAAT("COMPONENT_MACHINEPISTOL_CLIP_01"),
COMPONENT_MACHINEPISTOL_CLIP_02 = RAGE_JOAAT("COMPONENT_MACHINEPISTOL_CLIP_02"),
COMPONENT_MACHINEPISTOL_CLIP_03 = RAGE_JOAAT("COMPONENT_MACHINEPISTOL_CLIP_03"),
COMPONENT_MARKSMANRIFLE_CLIP_01 = RAGE_JOAAT("COMPONENT_MARKSMANRIFLE_CLIP_01"),
COMPONENT_MARKSMANRIFLE_CLIP_02 = RAGE_JOAAT("COMPONENT_MARKSMANRIFLE_CLIP_02"),
COMPONENT_MARKSMANRIFLE_MK2_CAMO = RAGE_JOAAT("COMPONENT_MARKSMANRIFLE_MK2_CAMO"),
COMPONENT_MARKSMANRIFLE_MK2_CAMO_02 = RAGE_JOAAT("COMPONENT_MARKSMANRIFLE_MK2_CAMO_02"),
COMPONENT_MARKSMANRIFLE_MK2_CAMO_03 = RAGE_JOAAT("COMPONENT_MARKSMANRIFLE_MK2_CAMO_03"),
COMPONENT_MARKSMANRIFLE_MK2_CAMO_04 = RAGE_JOAAT("COMPONENT_MARKSMANRIFLE_MK2_CAMO_04"),
COMPONENT_MARKSMANRIFLE_MK2_CAMO_05 = RAGE_JOAAT("COMPONENT_MARKSMANRIFLE_MK2_CAMO_05"),
COMPONENT_MARKSMANRIFLE_MK2_CAMO_06 = RAGE_JOAAT("COMPONENT_MARKSMANRIFLE_MK2_CAMO_06"),
COMPONENT_MARKSMANRIFLE_MK2_CAMO_07 = RAGE_JOAAT("COMPONENT_MARKSMANRIFLE_MK2_CAMO_07"),
COMPONENT_MARKSMANRIFLE_MK2_CAMO_08 = RAGE_JOAAT("COMPONENT_MARKSMANRIFLE_MK2_CAMO_08"),
COMPONENT_MARKSMANRIFLE_MK2_CAMO_09 = RAGE_JOAAT("COMPONENT_MARKSMANRIFLE_MK2_CAMO_09"),
COMPONENT_MARKSMANRIFLE_MK2_CAMO_10 = RAGE_JOAAT("COMPONENT_MARKSMANRIFLE_MK2_CAMO_10"),
COMPONENT_MARKSMANRIFLE_MK2_CAMO_IND_01 = RAGE_JOAAT("COMPONENT_MARKSMANRIFLE_MK2_CAMO_IND_01"),
COMPONENT_MARKSMANRIFLE_MK2_CLIP_01 = RAGE_JOAAT("COMPONENT_MARKSMANRIFLE_MK2_CLIP_01"),
COMPONENT_MARKSMANRIFLE_MK2_CLIP_02 = RAGE_JOAAT("COMPONENT_MARKSMANRIFLE_MK2_CLIP_02"),
COMPONENT_MARKSMANRIFLE_MK2_CLIP_ARMORPIERCING = RAGE_JOAAT("COMPONENT_MARKSMANRIFLE_MK2_CLIP_ARMORPIERCING"),
COMPONENT_MARKSMANRIFLE_MK2_CLIP_FMJ = RAGE_JOAAT("COMPONENT_MARKSMANRIFLE_MK2_CLIP_FMJ"),
COMPONENT_MARKSMANRIFLE_MK2_CLIP_INCENDIARY = RAGE_JOAAT("COMPONENT_MARKSMANRIFLE_MK2_CLIP_INCENDIARY"),
COMPONENT_MARKSMANRIFLE_MK2_CLIP_TRACER = RAGE_JOAAT("COMPONENT_MARKSMANRIFLE_MK2_CLIP_TRACER"),
COMPONENT_MARKSMANRIFLE_VARMOD_LUXE = RAGE_JOAAT("COMPONENT_MARKSMANRIFLE_VARMOD_LUXE"),
COMPONENT_MG_CLIP_01 = RAGE_JOAAT("COMPONENT_MG_CLIP_01"),
COMPONENT_MG_CLIP_02 = RAGE_JOAAT("COMPONENT_MG_CLIP_02"),
COMPONENT_MG_VARMOD_LOWRIDER = RAGE_JOAAT("COMPONENT_MG_VARMOD_LOWRIDER"),
COMPONENT_MICROSMG_CLIP_01 = RAGE_JOAAT("COMPONENT_MICROSMG_CLIP_01"),
COMPONENT_MICROSMG_CLIP_02 = RAGE_JOAAT("COMPONENT_MICROSMG_CLIP_02"),
COMPONENT_MICROSMG_VARMOD_LUXE = RAGE_JOAAT("COMPONENT_MICROSMG_VARMOD_LUXE"),
COMPONENT_MINISMG_CLIP_01 = RAGE_JOAAT("COMPONENT_MINISMG_CLIP_01"),
COMPONENT_MINISMG_CLIP_02 = RAGE_JOAAT("COMPONENT_MINISMG_CLIP_02"),
COMPONENT_PISTOL50_CLIP_01 = RAGE_JOAAT("COMPONENT_PISTOL50_CLIP_01"),
COMPONENT_PISTOL50_CLIP_02 = RAGE_JOAAT("COMPONENT_PISTOL50_CLIP_02"),
COMPONENT_PISTOL50_VARMOD_LUXE = RAGE_JOAAT("COMPONENT_PISTOL50_VARMOD_LUXE"),
COMPONENT_PISTOL_CLIP_01 = RAGE_JOAAT("COMPONENT_PISTOL_CLIP_01"),
COMPONENT_PISTOL_CLIP_02 = RAGE_JOAAT("COMPONENT_PISTOL_CLIP_02"),
COMPONENT_PISTOL_MK2_CAMO = RAGE_JOAAT("COMPONENT_PISTOL_MK2_CAMO"),
COMPONENT_PISTOL_MK2_CAMO_02 = RAGE_JOAAT("COMPONENT_PISTOL_MK2_CAMO_02"),
COMPONENT_PISTOL_MK2_CAMO_02_SLIDE = RAGE_JOAAT("COMPONENT_PISTOL_MK2_CAMO_02_SLIDE"),
COMPONENT_PISTOL_MK2_CAMO_03 = RAGE_JOAAT("COMPONENT_PISTOL_MK2_CAMO_03"),
COMPONENT_PISTOL_MK2_CAMO_03_SLIDE = RAGE_JOAAT("COMPONENT_PISTOL_MK2_CAMO_03_SLIDE"),
COMPONENT_PISTOL_MK2_CAMO_04 = RAGE_JOAAT("COMPONENT_PISTOL_MK2_CAMO_04"),
COMPONENT_PISTOL_MK2_CAMO_04_SLIDE = RAGE_JOAAT("COMPONENT_PISTOL_MK2_CAMO_04_SLIDE"),
COMPONENT_PISTOL_MK2_CAMO_05 = RAGE_JOAAT("COMPONENT_PISTOL_MK2_CAMO_05"),
COMPONENT_PISTOL_MK2_CAMO_05_SLIDE = RAGE_JOAAT("COMPONENT_PISTOL_MK2_CAMO_05_SLIDE"),
COMPONENT_PISTOL_MK2_CAMO_06 = RAGE_JOAAT("COMPONENT_PISTOL_MK2_CAMO_06"),
COMPONENT_PISTOL_MK2_CAMO_06_SLIDE = RAGE_JOAAT("COMPONENT_PISTOL_MK2_CAMO_06_SLIDE"),
COMPONENT_PISTOL_MK2_CAMO_07 = RAGE_JOAAT("COMPONENT_PISTOL_MK2_CAMO_07"),
COMPONENT_PISTOL_MK2_CAMO_07_SLIDE = RAGE_JOAAT("COMPONENT_PISTOL_MK2_CAMO_07_SLIDE"),
COMPONENT_PISTOL_MK2_CAMO_08 = RAGE_JOAAT("COMPONENT_PISTOL_MK2_CAMO_08"),
COMPONENT_PISTOL_MK2_CAMO_08_SLIDE = RAGE_JOAAT("COMPONENT_PISTOL_MK2_CAMO_08_SLIDE"),
COMPONENT_PISTOL_MK2_CAMO_09 = RAGE_JOAAT("COMPONENT_PISTOL_MK2_CAMO_09"),
COMPONENT_PISTOL_MK2_CAMO_09_SLIDE = RAGE_JOAAT("COMPONENT_PISTOL_MK2_CAMO_09_SLIDE"),
COMPONENT_PISTOL_MK2_CAMO_10 = RAGE_JOAAT("COMPONENT_PISTOL_MK2_CAMO_10"),
COMPONENT_PISTOL_MK2_CAMO_10_SLIDE = RAGE_JOAAT("COMPONENT_PISTOL_MK2_CAMO_10_SLIDE"),
COMPONENT_PISTOL_MK2_CAMO_IND_01 = RAGE_JOAAT("COMPONENT_PISTOL_MK2_CAMO_IND_01"),
COMPONENT_PISTOL_MK2_CAMO_IND_01_SLIDE = RAGE_JOAAT("COMPONENT_PISTOL_MK2_CAMO_IND_01_SLIDE"),
COMPONENT_PISTOL_MK2_CAMO_SLIDE = RAGE_JOAAT("COMPONENT_PISTOL_MK2_CAMO_SLIDE"),
COMPONENT_PISTOL_MK2_CLIP_01 = RAGE_JOAAT("COMPONENT_PISTOL_MK2_CLIP_01"),
COMPONENT_PISTOL_MK2_CLIP_02 = RAGE_JOAAT("COMPONENT_PISTOL_MK2_CLIP_02"),
COMPONENT_PISTOL_MK2_CLIP_FMJ = RAGE_JOAAT("COMPONENT_PISTOL_MK2_CLIP_FMJ"),
COMPONENT_PISTOL_MK2_CLIP_HOLLOWPOINT = RAGE_JOAAT("COMPONENT_PISTOL_MK2_CLIP_HOLLOWPOINT"),
COMPONENT_PISTOL_MK2_CLIP_INCENDIARY = RAGE_JOAAT("COMPONENT_PISTOL_MK2_CLIP_INCENDIARY"),
COMPONENT_PISTOL_MK2_CLIP_TRACER = RAGE_JOAAT("COMPONENT_PISTOL_MK2_CLIP_TRACER"),
COMPONENT_PISTOL_VARMOD_LUXE = RAGE_JOAAT("COMPONENT_PISTOL_VARMOD_LUXE"),
COMPONENT_PUMPSHOTGUN_MK2_CAMO = RAGE_JOAAT("COMPONENT_PUMPSHOTGUN_MK2_CAMO"),
COMPONENT_PUMPSHOTGUN_MK2_CAMO_02 = RAGE_JOAAT("COMPONENT_PUMPSHOTGUN_MK2_CAMO_02"),
COMPONENT_PUMPSHOTGUN_MK2_CAMO_03 = RAGE_JOAAT("COMPONENT_PUMPSHOTGUN_MK2_CAMO_03"),
COMPONENT_PUMPSHOTGUN_MK2_CAMO_04 = RAGE_JOAAT("COMPONENT_PUMPSHOTGUN_MK2_CAMO_04"),
COMPONENT_PUMPSHOTGUN_MK2_CAMO_05 = RAGE_JOAAT("COMPONENT_PUMPSHOTGUN_MK2_CAMO_05"),
COMPONENT_PUMPSHOTGUN_MK2_CAMO_06 = RAGE_JOAAT("COMPONENT_PUMPSHOTGUN_MK2_CAMO_06"),
COMPONENT_PUMPSHOTGUN_MK2_CAMO_07 = RAGE_JOAAT("COMPONENT_PUMPSHOTGUN_MK2_CAMO_07"),
COMPONENT_PUMPSHOTGUN_MK2_CAMO_08 = RAGE_JOAAT("COMPONENT_PUMPSHOTGUN_MK2_CAMO_08"),
COMPONENT_PUMPSHOTGUN_MK2_CAMO_09 = RAGE_JOAAT("COMPONENT_PUMPSHOTGUN_MK2_CAMO_09"),
COMPONENT_PUMPSHOTGUN_MK2_CAMO_10 = RAGE_JOAAT("COMPONENT_PUMPSHOTGUN_MK2_CAMO_10"),
COMPONENT_PUMPSHOTGUN_MK2_CAMO_IND_01 = RAGE_JOAAT("COMPONENT_PUMPSHOTGUN_MK2_CAMO_IND_01"),
COMPONENT_PUMPSHOTGUN_MK2_CLIP_01 = RAGE_JOAAT("COMPONENT_PUMPSHOTGUN_MK2_CLIP_01"),
COMPONENT_PUMPSHOTGUN_MK2_CLIP_ARMORPIERCING = RAGE_JOAAT("COMPONENT_PUMPSHOTGUN_MK2_CLIP_ARMORPIERCING"),
COMPONENT_PUMPSHOTGUN_MK2_CLIP_EXPLOSIVE = RAGE_JOAAT("COMPONENT_PUMPSHOTGUN_MK2_CLIP_EXPLOSIVE"),
COMPONENT_PUMPSHOTGUN_MK2_CLIP_HOLLOWPOINT = RAGE_JOAAT("COMPONENT_PUMPSHOTGUN_MK2_CLIP_HOLLOWPOINT"),
COMPONENT_PUMPSHOTGUN_MK2_CLIP_INCENDIARY = RAGE_JOAAT("COMPONENT_PUMPSHOTGUN_MK2_CLIP_INCENDIARY"),
COMPONENT_PUMPSHOTGUN_VARMOD_LOWRIDER = RAGE_JOAAT("COMPONENT_PUMPSHOTGUN_VARMOD_LOWRIDER"),
COMPONENT_REVOLVER_CLIP_01 = RAGE_JOAAT("COMPONENT_REVOLVER_CLIP_01"),
COMPONENT_REVOLVER_MK2_CAMO = RAGE_JOAAT("COMPONENT_REVOLVER_MK2_CAMO"),
COMPONENT_REVOLVER_MK2_CAMO_02 = RAGE_JOAAT("COMPONENT_REVOLVER_MK2_CAMO_02"),
COMPONENT_REVOLVER_MK2_CAMO_03 = RAGE_JOAAT("COMPONENT_REVOLVER_MK2_CAMO_03"),
COMPONENT_REVOLVER_MK2_CAMO_04 = RAGE_JOAAT("COMPONENT_REVOLVER_MK2_CAMO_04"),
COMPONENT_REVOLVER_MK2_CAMO_05 = RAGE_JOAAT("COMPONENT_REVOLVER_MK2_CAMO_05"),
COMPONENT_REVOLVER_MK2_CAMO_06 = RAGE_JOAAT("COMPONENT_REVOLVER_MK2_CAMO_06"),
COMPONENT_REVOLVER_MK2_CAMO_07 = RAGE_JOAAT("COMPONENT_REVOLVER_MK2_CAMO_07"),
COMPONENT_REVOLVER_MK2_CAMO_08 = RAGE_JOAAT("COMPONENT_REVOLVER_MK2_CAMO_08"),
COMPONENT_REVOLVER_MK2_CAMO_09 = RAGE_JOAAT("COMPONENT_REVOLVER_MK2_CAMO_09"),
COMPONENT_REVOLVER_MK2_CAMO_10 = RAGE_JOAAT("COMPONENT_REVOLVER_MK2_CAMO_10"),
COMPONENT_REVOLVER_MK2_CAMO_IND_01 = RAGE_JOAAT("COMPONENT_REVOLVER_MK2_CAMO_IND_01"),
COMPONENT_REVOLVER_MK2_CLIP_01 = RAGE_JOAAT("COMPONENT_REVOLVER_MK2_CLIP_01"),
COMPONENT_REVOLVER_MK2_CLIP_FMJ = RAGE_JOAAT("COMPONENT_REVOLVER_MK2_CLIP_FMJ"),
COMPONENT_REVOLVER_MK2_CLIP_HOLLOWPOINT = RAGE_JOAAT("COMPONENT_REVOLVER_MK2_CLIP_HOLLOWPOINT"),
COMPONENT_REVOLVER_MK2_CLIP_INCENDIARY = RAGE_JOAAT("COMPONENT_REVOLVER_MK2_CLIP_INCENDIARY"),
COMPONENT_REVOLVER_MK2_CLIP_TRACER = RAGE_JOAAT("COMPONENT_REVOLVER_MK2_CLIP_TRACER"),
COMPONENT_REVOLVER_VARMOD_BOSS = RAGE_JOAAT("COMPONENT_REVOLVER_VARMOD_BOSS"),
COMPONENT_REVOLVER_VARMOD_GOON = RAGE_JOAAT("COMPONENT_REVOLVER_VARMOD_GOON"),
COMPONENT_SAWNOFFSHOTGUN_VARMOD_LUXE = RAGE_JOAAT("COMPONENT_SAWNOFFSHOTGUN_VARMOD_LUXE"),
COMPONENT_SMG_CLIP_01 = RAGE_JOAAT("COMPONENT_SMG_CLIP_01"),
COMPONENT_SMG_CLIP_02 = RAGE_JOAAT("COMPONENT_SMG_CLIP_02"),
COMPONENT_SMG_CLIP_03 = RAGE_JOAAT("COMPONENT_SMG_CLIP_03"),
COMPONENT_SMG_MK2_CAMO = RAGE_JOAAT("COMPONENT_SMG_MK2_CAMO"),
COMPONENT_SMG_MK2_CAMO_02 = RAGE_JOAAT("COMPONENT_SMG_MK2_CAMO_02"),
COMPONENT_SMG_MK2_CAMO_03 = RAGE_JOAAT("COMPONENT_SMG_MK2_CAMO_03"),
COMPONENT_SMG_MK2_CAMO_04 = RAGE_JOAAT("COMPONENT_SMG_MK2_CAMO_04"),
COMPONENT_SMG_MK2_CAMO_05 = RAGE_JOAAT("COMPONENT_SMG_MK2_CAMO_05"),
COMPONENT_SMG_MK2_CAMO_06 = RAGE_JOAAT("COMPONENT_SMG_MK2_CAMO_06"),
COMPONENT_SMG_MK2_CAMO_07 = RAGE_JOAAT("COMPONENT_SMG_MK2_CAMO_07"),
COMPONENT_SMG_MK2_CAMO_08 = RAGE_JOAAT("COMPONENT_SMG_MK2_CAMO_08"),
COMPONENT_SMG_MK2_CAMO_09 = RAGE_JOAAT("COMPONENT_SMG_MK2_CAMO_09"),
COMPONENT_SMG_MK2_CAMO_10 = RAGE_JOAAT("COMPONENT_SMG_MK2_CAMO_10"),
COMPONENT_SMG_MK2_CAMO_IND_01 = RAGE_JOAAT("COMPONENT_SMG_MK2_CAMO_IND_01"),
COMPONENT_SMG_MK2_CLIP_01 = RAGE_JOAAT("COMPONENT_SMG_MK2_CLIP_01"),
COMPONENT_SMG_MK2_CLIP_02 = RAGE_JOAAT("COMPONENT_SMG_MK2_CLIP_02"),
COMPONENT_SMG_MK2_CLIP_FMJ = RAGE_JOAAT("COMPONENT_SMG_MK2_CLIP_FMJ"),
COMPONENT_SMG_MK2_CLIP_HOLLOWPOINT = RAGE_JOAAT("COMPONENT_SMG_MK2_CLIP_HOLLOWPOINT"),
COMPONENT_SMG_MK2_CLIP_INCENDIARY = RAGE_JOAAT("COMPONENT_SMG_MK2_CLIP_INCENDIARY"),
COMPONENT_SMG_MK2_CLIP_TRACER = RAGE_JOAAT("COMPONENT_SMG_MK2_CLIP_TRACER"),
COMPONENT_SMG_VARMOD_LUXE = RAGE_JOAAT("COMPONENT_SMG_VARMOD_LUXE"),
COMPONENT_SNIPERRIFLE_CLIP_01 = RAGE_JOAAT("COMPONENT_SNIPERRIFLE_CLIP_01"),
COMPONENT_SNIPERRIFLE_VARMOD_LUXE = RAGE_JOAAT("COMPONENT_SNIPERRIFLE_VARMOD_LUXE"),
COMPONENT_SNSPISTOL_CLIP_01 = RAGE_JOAAT("COMPONENT_SNSPISTOL_CLIP_01"),
COMPONENT_SNSPISTOL_CLIP_02 = RAGE_JOAAT("COMPONENT_SNSPISTOL_CLIP_02"),
COMPONENT_SNSPISTOL_MK2_CAMO = RAGE_JOAAT("COMPONENT_SNSPISTOL_MK2_CAMO"),
COMPONENT_SNSPISTOL_MK2_CAMO_02 = RAGE_JOAAT("COMPONENT_SNSPISTOL_MK2_CAMO_02"),
COMPONENT_SNSPISTOL_MK2_CAMO_02_SLIDE = RAGE_JOAAT("COMPONENT_SNSPISTOL_MK2_CAMO_02_SLIDE"),
COMPONENT_SNSPISTOL_MK2_CAMO_03 = RAGE_JOAAT("COMPONENT_SNSPISTOL_MK2_CAMO_03"),
COMPONENT_SNSPISTOL_MK2_CAMO_03_SLIDE = RAGE_JOAAT("COMPONENT_SNSPISTOL_MK2_CAMO_03_SLIDE"),
COMPONENT_SNSPISTOL_MK2_CAMO_04 = RAGE_JOAAT("COMPONENT_SNSPISTOL_MK2_CAMO_04"),
COMPONENT_SNSPISTOL_MK2_CAMO_04_SLIDE = RAGE_JOAAT("COMPONENT_SNSPISTOL_MK2_CAMO_04_SLIDE"),
COMPONENT_SNSPISTOL_MK2_CAMO_05 = RAGE_JOAAT("COMPONENT_SNSPISTOL_MK2_CAMO_05"),
COMPONENT_SNSPISTOL_MK2_CAMO_05_SLIDE = RAGE_JOAAT("COMPONENT_SNSPISTOL_MK2_CAMO_05_SLIDE"),
COMPONENT_SNSPISTOL_MK2_CAMO_06 = RAGE_JOAAT("COMPONENT_SNSPISTOL_MK2_CAMO_06"),
COMPONENT_SNSPISTOL_MK2_CAMO_06_SLIDE = RAGE_JOAAT("COMPONENT_SNSPISTOL_MK2_CAMO_06_SLIDE"),
COMPONENT_SNSPISTOL_MK2_CAMO_07 = RAGE_JOAAT("COMPONENT_SNSPISTOL_MK2_CAMO_07"),
COMPONENT_SNSPISTOL_MK2_CAMO_07_SLIDE = RAGE_JOAAT("COMPONENT_SNSPISTOL_MK2_CAMO_07_SLIDE"),
COMPONENT_SNSPISTOL_MK2_CAMO_08 = RAGE_JOAAT("COMPONENT_SNSPISTOL_MK2_CAMO_08"),
COMPONENT_SNSPISTOL_MK2_CAMO_08_SLIDE = RAGE_JOAAT("COMPONENT_SNSPISTOL_MK2_CAMO_08_SLIDE"),
COMPONENT_SNSPISTOL_MK2_CAMO_09 = RAGE_JOAAT("COMPONENT_SNSPISTOL_MK2_CAMO_09"),
COMPONENT_SNSPISTOL_MK2_CAMO_09_SLIDE = RAGE_JOAAT("COMPONENT_SNSPISTOL_MK2_CAMO_09_SLIDE"),
COMPONENT_SNSPISTOL_MK2_CAMO_10 = RAGE_JOAAT("COMPONENT_SNSPISTOL_MK2_CAMO_10"),
COMPONENT_SNSPISTOL_MK2_CAMO_10_SLIDE = RAGE_JOAAT("COMPONENT_SNSPISTOL_MK2_CAMO_10_SLIDE"),
COMPONENT_SNSPISTOL_MK2_CAMO_IND_01 = RAGE_JOAAT("COMPONENT_SNSPISTOL_MK2_CAMO_IND_01"),
COMPONENT_SNSPISTOL_MK2_CAMO_IND_01_SLIDE = RAGE_JOAAT("COMPONENT_SNSPISTOL_MK2_CAMO_IND_01_SLIDE"),
COMPONENT_SNSPISTOL_MK2_CAMO_SLIDE = RAGE_JOAAT("COMPONENT_SNSPISTOL_MK2_CAMO_SLIDE"),
COMPONENT_SNSPISTOL_MK2_CLIP_01 = RAGE_JOAAT("COMPONENT_SNSPISTOL_MK2_CLIP_01"),
COMPONENT_SNSPISTOL_MK2_CLIP_02 = RAGE_JOAAT("COMPONENT_SNSPISTOL_MK2_CLIP_02"),
COMPONENT_SNSPISTOL_MK2_CLIP_FMJ = RAGE_JOAAT("COMPONENT_SNSPISTOL_MK2_CLIP_FMJ"),
COMPONENT_SNSPISTOL_MK2_CLIP_HOLLOWPOINT = RAGE_JOAAT("COMPONENT_SNSPISTOL_MK2_CLIP_HOLLOWPOINT"),
COMPONENT_SNSPISTOL_MK2_CLIP_INCENDIARY = RAGE_JOAAT("COMPONENT_SNSPISTOL_MK2_CLIP_INCENDIARY"),
COMPONENT_SNSPISTOL_MK2_CLIP_TRACER = RAGE_JOAAT("COMPONENT_SNSPISTOL_MK2_CLIP_TRACER"),
COMPONENT_SNSPISTOL_VARMOD_LOWRIDER = RAGE_JOAAT("COMPONENT_SNSPISTOL_VARMOD_LOWRIDER"),
COMPONENT_SPECIALCARBINE_CLIP_01 = RAGE_JOAAT("COMPONENT_SPECIALCARBINE_CLIP_01"),
COMPONENT_SPECIALCARBINE_CLIP_02 = RAGE_JOAAT("COMPONENT_SPECIALCARBINE_CLIP_02"),
COMPONENT_SPECIALCARBINE_CLIP_03 = RAGE_JOAAT("COMPONENT_SPECIALCARBINE_CLIP_03"),
COMPONENT_SPECIALCARBINE_MK2_CAMO = RAGE_JOAAT("COMPONENT_SPECIALCARBINE_MK2_CAMO"),
COMPONENT_SPECIALCARBINE_MK2_CAMO_02 = RAGE_JOAAT("COMPONENT_SPECIALCARBINE_MK2_CAMO_02"),
COMPONENT_SPECIALCARBINE_MK2_CAMO_03 = RAGE_JOAAT("COMPONENT_SPECIALCARBINE_MK2_CAMO_03"),
COMPONENT_SPECIALCARBINE_MK2_CAMO_04 = RAGE_JOAAT("COMPONENT_SPECIALCARBINE_MK2_CAMO_04"),
COMPONENT_SPECIALCARBINE_MK2_CAMO_05 = RAGE_JOAAT("COMPONENT_SPECIALCARBINE_MK2_CAMO_05"),
COMPONENT_SPECIALCARBINE_MK2_CAMO_06 = RAGE_JOAAT("COMPONENT_SPECIALCARBINE_MK2_CAMO_06"),
COMPONENT_SPECIALCARBINE_MK2_CAMO_07 = RAGE_JOAAT("COMPONENT_SPECIALCARBINE_MK2_CAMO_07"),
COMPONENT_SPECIALCARBINE_MK2_CAMO_08 = RAGE_JOAAT("COMPONENT_SPECIALCARBINE_MK2_CAMO_08"),
COMPONENT_SPECIALCARBINE_MK2_CAMO_09 = RAGE_JOAAT("COMPONENT_SPECIALCARBINE_MK2_CAMO_09"),
COMPONENT_SPECIALCARBINE_MK2_CAMO_10 = RAGE_JOAAT("COMPONENT_SPECIALCARBINE_MK2_CAMO_10"),
COMPONENT_SPECIALCARBINE_MK2_CAMO_IND_01 = RAGE_JOAAT("COMPONENT_SPECIALCARBINE_MK2_CAMO_IND_01"),
COMPONENT_SPECIALCARBINE_MK2_CLIP_01 = RAGE_JOAAT("COMPONENT_SPECIALCARBINE_MK2_CLIP_01"),
COMPONENT_SPECIALCARBINE_MK2_CLIP_02 = RAGE_JOAAT("COMPONENT_SPECIALCARBINE_MK2_CLIP_02"),
COMPONENT_SPECIALCARBINE_MK2_CLIP_ARMORPIERCING = RAGE_JOAAT("COMPONENT_SPECIALCARBINE_MK2_CLIP_ARMORPIERCING"),
COMPONENT_SPECIALCARBINE_MK2_CLIP_FMJ = RAGE_JOAAT("COMPONENT_SPECIALCARBINE_MK2_CLIP_FMJ"),
COMPONENT_SPECIALCARBINE_MK2_CLIP_INCENDIARY = RAGE_JOAAT("COMPONENT_SPECIALCARBINE_MK2_CLIP_INCENDIARY"),
COMPONENT_SPECIALCARBINE_MK2_CLIP_TRACER = RAGE_JOAAT("COMPONENT_SPECIALCARBINE_MK2_CLIP_TRACER"),
COMPONENT_SPECIALCARBINE_VARMOD_LOWRIDER = RAGE_JOAAT("COMPONENT_SPECIALCARBINE_VARMOD_LOWRIDER"),
COMPONENT_SWITCHBLADE_VARMOD_BASE = RAGE_JOAAT("COMPONENT_SWITCHBLADE_VARMOD_BASE"),
COMPONENT_SWITCHBLADE_VARMOD_VAR1 = RAGE_JOAAT("COMPONENT_SWITCHBLADE_VARMOD_VAR1"),
COMPONENT_SWITCHBLADE_VARMOD_VAR2 = RAGE_JOAAT("COMPONENT_SWITCHBLADE_VARMOD_VAR2"),
COMPONENT_VINTAGEPISTOL_CLIP_01 = RAGE_JOAAT("COMPONENT_VINTAGEPISTOL_CLIP_01"),
COMPONENT_VINTAGEPISTOL_CLIP_02 = RAGE_JOAAT("COMPONENT_VINTAGEPISTOL_CLIP_02")
};
enum AmmoTypeHashes : Hash
{
AMMO_NULL = 0x0, //Melee
AMMO_PISTOL = RAGE_JOAAT("AMMO_PISTOL"),
AMMO_SMG = RAGE_JOAAT("AMMO_SMG"),
AMMO_RIFLE = RAGE_JOAAT("AMMO_RIFLE"),
AMMO_MG = RAGE_JOAAT("AMMO_MG"),
AMMO_SHOTGUN = RAGE_JOAAT("AMMO_SHOTGUN"),
AMMO_STUNGUN = RAGE_JOAAT("AMMO_STUNGUN"),
AMMO_SNIPER = RAGE_JOAAT("AMMO_SNIPER"),
AMMO_SNIPER_REMOTE = RAGE_JOAAT("AMMO_SNIPER_REMOTE"),
AMMO_GRENADELAUNCHER = RAGE_JOAAT("AMMO_GRENADELAUNCHER"),
AMMO_GRENADELAUNCHER_SMOKE = RAGE_JOAAT("AMMO_GRENADELAUNCHER_SMOKE"),
AMMO_RPG = RAGE_JOAAT("AMMO_RPG"),
AMMO_STINGER = RAGE_JOAAT("AMMO_STINGER"),
AMMO_MINIGUN = RAGE_JOAAT("AMMO_MINIGUN"),
AMMO_GRENADE = RAGE_JOAAT("AMMO_GRENADE"),
AMMO_STICKYBOMB = RAGE_JOAAT("AMMO_STICKYBOMB"),
AMMO_SMOKEGRENADE = RAGE_JOAAT("AMMO_SMOKEGRENADE"),
AMMO_BZGAS = RAGE_JOAAT("AMMO_BZGAS"),
AMMO_MOLOTOV = RAGE_JOAAT("AMMO_MOLOTOV"),
AMMO_FIREEXTINGUISHER = RAGE_JOAAT("AMMO_FIREEXTINGUISHER"),
AMMO_PETROLCAN = RAGE_JOAAT("AMMO_PETROLCAN"),
AMMO_BALL = RAGE_JOAAT("AMMO_BALL"),
AMMO_FLARE = RAGE_JOAAT("AMMO_FLARE"),
AMMO_TANK = RAGE_JOAAT("AMMO_TANK"),
AMMO_SPACE_ROCKET = RAGE_JOAAT("AMMO_SPACE_ROCKET"),
AMMO_PLANE_ROCKET = RAGE_JOAAT("AMMO_PLANE_ROCKET"),
AMMO_PLAYER_LASER = RAGE_JOAAT("AMMO_PLAYER_LASER"),
AMMO_ENEMY_LASER = RAGE_JOAAT("AMMO_ENEMY_LASER"),
AMMO_BIRD_CRAP = RAGE_JOAAT("AMMO_BIRD_CRAP")
};
enum WeaponGroup : Hash
{
GROUP_MELEE = RAGE_JOAAT("GROUP_MELEE"),
GROUP_UNARMED = RAGE_JOAAT("GROUP_UNARMED"),
GROUP_PISTOL = RAGE_JOAAT("GROUP_PISTOL"),
GROUP_RIFLE = RAGE_JOAAT("GROUP_RIFLE"),
GROUP_MG = RAGE_JOAAT("GROUP_MG"),
GROUP_SHOTGUN = RAGE_JOAAT("GROUP_SHOTGUN"),
GROUP_STUNGUN = RAGE_JOAAT("GROUP_STUNGUN"),
GROUP_SNIPER = RAGE_JOAAT("GROUP_SNIPER"),
GROUP_HEAVY = RAGE_JOAAT("GROUP_HEAVY"),
GROUP_THROWN = RAGE_JOAAT("GROUP_THROWN"),
GROUP_FIREEXTINGUISHER = RAGE_JOAAT("GROUP_FIREEXTINGUISHER"),
GROUP_PETROLCAN = RAGE_JOAAT("GROUP_PETROLCAN"),
GROUP_DIGISCANNER = RAGE_JOAAT("GROUP_DIGISCANNER"),
GROUP_NIGHTVISION = RAGE_JOAAT("GROUP_NIGHTVISION"),
GROUP_PARACHUTE = RAGE_JOAAT("GROUP_PARACHUTE")
};

View File

@ -0,0 +1,60 @@
#pragma once
#include "natives.hpp"
namespace rage
{
#pragma pack(push, 1)
class Blip_t
{
public:
int32_t m_id; //0x0000
uint16_t m_blip_array_index; //0x0004
char pad_0006[4]; //0x0006
bool m_active; //0x000A
uint8_t N00000197; //0x000B
int32_t m_entity_id; //0x000C
float m_x; //0x0010
float m_y; //0x0014
float m_z; //0x0018
char pad_001C[4]; //0x001C
uint32_t m_display_bits; //0x0020
uint32_t m_render_bits; //0x0024
char *m_message; //0x0028
char pad_0030[8]; //0x0030
Hash m_description; //0x0038
char pad_003C[4]; //0x003C
int32_t m_icon; //0x0040
int16_t m_flash_interval; //0x0044
int16_t m_flash_timer; //0x0046
uint32_t m_color; //0x0048
uint32_t m_secondary_color; //0x004C
float m_scale_x; //0x0050
float m_scale_y; //0x0054
float m_rotation; //0x0058
uint8_t m_mission_bits; //0x005C
uint8_t m_priority; //0x005D
uint8_t m_display_id; //0x005E
uint8_t m_alpha; //0x005F
int8_t m_category; //0x0060
int8_t m_show_number; //0x0061
char pad_0062[14]; //0x0062
}; //Size: 0x0070
static_assert(sizeof(Blip_t) == 0x70, "Blip_t is not sized properly.");
#pragma pack(pop)
class BlipEntry
{
public:
Blip_t* m_pBlip; //0x0000
};//Size=0x0008
class BlipList
{
public:
BlipEntry m_Blips[1500]; //0x0000
char _0x2EE0[56];
};//Size=0x2F18
}

View File

@ -0,0 +1,90 @@
#pragma once
#include "array.hpp"
namespace rage
{
class decal;
class decal_list;
class decal_controller
{
public:
char pad_0x0000[0xB0]; //0x0000
decal_list* ped_decal_list[69];
decal_list* all_tattoo_decals_active; //0x02D8
}; //Size=0x02E0
class decal_list
{
public:
virtual ~decal_list() = default;
virtual __int64 refresh_list(__int64) = 0;
char pad_0x0000[0x15E0]; //0x0000
rage::atArray<decal> decal_array; //0x15E8
void clear_non_perm_decals_from_decal_array()
{
DWORD v1; // edx
BYTE* v2; // rax
__int64 a1 = (__int64)this;
v1 = 0;
if (*(DWORD*)(a1 + 0x15E0) > 0)
{
v2 = (BYTE*)(a1 + 0x1E4);
do
{
*v2 |= 0x40u;
++v1;
v2 += 0x28;
} while (v1 < *(DWORD*)(a1 + 0x15E0));
}
*(DWORD*)(a1 + 0x15E0) = 0;
}
}; //Size=0x15F1
class decal_helper
{
public:
virtual ~decal_helper() = default;
virtual Hash* get_decal_type(char*) = 0;
};
class decal
{
public:
std::uint32_t N00000001; //0x0000
std::uint8_t N00000028; //0x0004
std::uint8_t N0000002A; //0x0005
char pad_0x0006[0x2]; //0x0006
std::uint64_t N00000002; //0x0008
std::uint64_t N00000003; //0x0010
std::uint64_t N00000004; //0x0018
std::uint32_t N00000005; //0x0020
std::uint32_t N00000022; //0x0024
std::uint32_t N00000006; //0x0028
char pad_0x002C[0x4]; //0x002C
decal_helper* m_decal_helper; //0x0030
std::uint32_t collection; //0x0038
std::uint32_t overlay; //0x003C
std::uint16_t N00000009; //0x0040
std::uint16_t N00000035; //0x0042
std::uint16_t N00000036; //0x0044
char pad_0x0046[0x2]; //0x0046
std::uint32_t N0000000A; //0x0048
std::uint32_t N00000041; //0x004C
std::uint32_t N0000000B; //0x0050
char pad_0x0054[0x4]; //0x0054
std::uint32_t N0000000C; //0x0058
std::uint32_t N00000046; //0x005C
std::uint32_t N0000000D; //0x0060
char pad_0x0064[0x4]; //0x0064
std::uint64_t N0000000E; //0x0068
std::uint8_t N0000000F; //0x0070
char pad_0x0071[0x7]; //0x0071
}; //Size=0x0078
static_assert (sizeof(decal) == 0x78, "decal is not sized properly.");
}

File diff suppressed because it is too large Load Diff

View File

@ -30,6 +30,8 @@ namespace rage
class netGameEvent; class netGameEvent;
class netEventMgr; class netEventMgr;
class netSyncTree;
class netObject; class netObject;
class netObjectMgrBase; class netObjectMgrBase;
@ -42,6 +44,9 @@ namespace rage
class fwExtensibleBase; class fwExtensibleBase;
class fwEntity; class fwEntity;
class fwArchetype; class fwArchetype;
class CVehicle;
class CPed;
} }
class GtaThread; class GtaThread;
@ -55,8 +60,6 @@ class CEntity;
class CDynamicEntity; class CDynamicEntity;
class CPhysical; class CPhysical;
class CPed;
class CVehicle;
class CObject; class CObject;
class CPickup; class CPickup;
@ -66,3 +69,4 @@ class CVehicleFactory;
class CNetGamePlayer; class CNetGamePlayer;
class CNetworkPlayerMgr; class CNetworkPlayerMgr;
class CPlayerInfo; class CPlayerInfo;
class CNetworkObjectMgr;

View File

@ -19,4 +19,16 @@ namespace rage
float raw[4 * 4] = {}; float raw[4 * 4] = {};
}; };
}; };
class CViewPort
{
public:
char _0x0000[0x24C];
float m_matrix[0x10];
};
struct ScreenResolution
{
uint32_t w, h;
};
} }

View File

@ -1,58 +1,207 @@
#pragma once #pragma once
#include <cstdint> #include <cstdint>
#include "fwddec.hpp" #include "pointers.hpp"
#include "fwddec.hpp"
#pragma pack(push, 1)
namespace rage #pragma pack(push, 1)
{ namespace rage
class netGameEvent {
{ class netPlayer;
public: class datBitBuffer
virtual ~netGameEvent() = default; {
public:
virtual const char *get_name() const = 0; inline datBitBuffer(void* data, uint32_t size)
virtual bool is_applicable_to_player(netPlayer *player) = 0; {
virtual bool time_to_resend(std::uint32_t time) = 0; m_data = data;
virtual bool needs_reply() = 0; m_f8 = 0;
m_maxBit = size * 8;
virtual void serialize(datBitBuffer *buffer, netPlayer* source_player, netPlayer* target_player) = 0; m_unkBit = 0;
virtual void deserialize(datBitBuffer *buffer, netPlayer* source_player, netPlayer* target_player) = 0; m_curBit = 0;
m_unk2Bit = 0;
virtual bool handle(netPlayer* source_player, netPlayer* target_player) = 0; m_flagBits = 0;
}
virtual void deserialize_reply(datBitBuffer *buffer, netPlayer* reply_player) = 0;
virtual void serialize_reply(datBitBuffer *buffer, netPlayer* souce_player) = 0; inline uint32_t GetPosition()
{
virtual void deserialize_extra_data(datBitBuffer *buffer, bool is_reply, netPlayer *player, netPlayer *player2) = 0; return m_unkBit;
virtual void serialize_extra_data(datBitBuffer *buffer, bool is_reply, netPlayer *player, netPlayer *player2) = 0; }
virtual void _0x60() = 0; inline bool Seek(uint32_t bits)
virtual void _0x68() = 0; {
virtual void _0x70() = 0; if (bits >= 0)
virtual void _0x78() = 0; {
uint32_t length = (m_flagBits & 1) ? m_maxBit : m_curBit;
virtual bool operator==(netGameEvent const& other) = 0;
virtual bool operator!=(netGameEvent const& other) = 0; if (bits <= length)
{
virtual bool must_persist() = 0; m_unkBit = bits;
virtual bool must_persist_when_out_of_scope() = 0; }
virtual bool has_timed_out() = 0; }
public:
std::uint16_t m_id; // 0x08 return false;
bool m_requires_reply; // 0x0A }
private:
char m_padding1[0x05]; // 0x0B inline int GetDataLength()
public: {
netPlayer* m_source_player; // 0x10 int leftoverBit = (m_curBit % 8) ? 1 : 0;
netPlayer* m_target_player; // 0x18
std::uint32_t m_resend_time; // 0x20 return (m_curBit / 8) + leftoverBit;
std::uint16_t m_0x24; // 0x24 }
std::uint8_t m_0x26; // 0x26
std::uint8_t m_0x27; // 0x27 inline bool ReadByte(uint8_t* integer, int bits)
std::uint32_t m_0x28; // 0x28 {
char m_padding2[0x04]; // 0x2C uint32_t read;
}; if (big::g_pointers->m_read_bitbuf_dword(this, &read, bits))
{
static_assert(sizeof(netGameEvent) == 0x30); *integer = read;
} return true;
#pragma pack(pop) }
return false;
}
inline bool ReadWord(uint16_t* integer, int bits)
{
uint32_t read;
if (big::g_pointers->m_read_bitbuf_dword(this, &read, bits))
{
*integer = read;
return true;
}
return false;
}
inline bool ReadDword(uint32_t* integer, int bits)
{
return big::g_pointers->m_read_bitbuf_dword(this, integer, bits);
}
inline bool ReadInt32(int32_t* integer, int bits)
{
int32_t v8;
int32_t v9;
if (ReadDword((uint32_t*)&v8, 1u) && ReadDword((uint32_t*)&v9, bits - 1))
{
*integer = v8 + (v9 ^ -v8);
return true;
}
return false;
}
inline bool ReadQWord(uint64_t* integer, int bits)
{
if (bits <= 32)
{
uint32_t v10{};
if (ReadDword(&v10, bits))
{
*integer = v10;
return true;
}
return false;
}
else
{
uint32_t v10{}, v11{};
if (ReadDword(&v11, 32u) && ReadDword(&v10, bits - 32u))
{
*integer = v11 | ((uint64_t)v10 << 32);
return true;
}
return false;
}
}
inline bool ReadInt64(int64_t* integer, int bits)
{
uint32_t v8;
uint64_t v9;
if (ReadDword(&v8, 1u) && ReadQWord(&v9, bits - 1))
{
*integer = v8 + (v9 ^ -(int64_t)v8);
return true;
}
return false;
}
inline bool ReadArray(PVOID array, int size)
{
return big::g_pointers->m_read_bitbuf_array(this, array, size, 0);
}
public:
void* m_data; //0x0000
uint32_t m_f8; //0x0008
uint32_t m_maxBit; //0x000C
uint32_t m_unkBit; //0x0010
uint32_t m_curBit; //0x0014
uint32_t m_unk2Bit; //0x0018
uint8_t m_flagBits; //0x001C
};
class netGameEvent
{
public:
virtual ~netGameEvent() = default;
virtual const char* get_name() { return 0; };
virtual bool is_in_scope(netPlayer* player) { return 0; };
virtual bool time_to_resend(std::uint32_t time) { return 0; };
virtual bool can_change_scope() { return 0; };
virtual void prepare_data(datBitBuffer* buffer, netPlayer* source_player, netPlayer* target_player) {};
virtual void handle_data(datBitBuffer* buffer, netPlayer* source_player, netPlayer* target_player) {};
virtual bool decide(netPlayer* source_player, netPlayer* target_player) { return 0; };
virtual void prepare_reply(datBitBuffer* buffer, netPlayer* reply_player) {};
virtual void handle_reply(datBitBuffer* buffer, netPlayer* souce_player) {};
virtual void prepare_extra_data(datBitBuffer* buffer, bool is_reply, netPlayer* player, netPlayer* player2) {};
virtual void handle_extra_data(datBitBuffer* buffer, bool is_reply, netPlayer* player, netPlayer* player2) {};
private:
virtual void unk_0x60() {};
virtual void unk_0x68() {};
virtual void unk_0x70() {};
virtual void unk_0x78() {};
public:
virtual bool operator==(netGameEvent const& other) { return 0; };
virtual bool operator!=(netGameEvent const& other) { return 0; };
virtual bool must_persist() { return 0; };
virtual bool must_persist_when_out_of_scope() { return 0; };
virtual bool has_timed_out() { return 0; };
public:
std::uint16_t m_id; // 0x08
bool m_requires_reply; // 0x0A
private:
char m_padding1[0x05]; // 0x0B
public:
netPlayer* m_source_player; // 0x10
netPlayer* m_target_player; // 0x18
std::uint32_t m_resend_time; // 0x20
private:
std::uint16_t m_0x24; // 0x24
std::uint8_t m_0x26; // 0x26
std::uint8_t m_0x27; // 0x27
std::uint32_t m_0x28; // 0x28
char m_padding2[0x04];
};
}
class CScriptedGameEvent : public rage::netGameEvent
{
public:
char m_padding[0x40]; // 0x30
std::int64_t m_args[54]; // 0x70
std::uint32_t m_bitset; // 0x220
std::uint32_t m_args_size; // 0x224
};
class CNetworkIncrementStatEvent : public rage::netGameEvent
{
public:
Hash m_stat; // 0x30
std::uint32_t m_ammount; // 0x34
};
#pragma pack(pop)

View File

@ -0,0 +1,270 @@
#include "node_list.hpp"
#include "enums.hpp"
#include "..\pointers.hpp"
#include "replay.hpp"
#pragma once
namespace rage
{
class CPlayerSyncTree
{
public:
char pad_0000[8]; //0x0000
netObject* player_object; //0x0008
char pad_0010[256]; //0x0010
}; //Size: 0x0110
class CPlayerAppearanceDataNode
{
public:
char pad_0000[24]; //0x0000
CPlayerSyncTree* sync_tree; //0x0018
char pad_0020[992]; //0x0020
uint32_t model; //0x0400
char pad_0404[124]; //0x0404
}; //Size: 0x0480
class CNetworkSyncDataULBase
{
public:
virtual ~CNetworkSyncDataULBase() = default;
inline virtual void m_8() { }
inline virtual void m_10() { }
inline virtual void m_18() { }
inline virtual void m_20() { }
inline virtual void m_28() { }
inline virtual void m_30() { }
inline virtual void m_38() { }
inline virtual void m_40() { }
inline virtual void m_48() { }
inline virtual void m_50() { }
inline virtual void SetCloningFrequency(int player, int frequency) { }
public:
uint8_t pad_10h[49];
uint8_t ownerId;
uint8_t nextOwnerId;
uint8_t isRemote;
uint8_t wantsToDelete : 1; // netobj+76
uint8_t unk1 : 1;
uint8_t shouldNotBeDeleted : 1;
uint8_t pad_4Dh[3];
uint8_t pad_50h[32];
uint32_t creationAckedPlayers; // netobj+112
uint32_t m64;
uint32_t m68;
uint32_t m6C;
public:
inline bool IsCreationAckedByPlayer(int index)
{
return (creationAckedPlayers & (1 << index)) != 0;
}
};
class netSyncTree
{
public:
char pad_0000[48]; //0x0000
class netSyncTreeNode* m_sync_tree_node; //0x0030
}; //Size: 0x0038
class netSyncTreeNode
{
public:
char pad_0000[192]; //0x0000
uint32_t m_player_model; //0x00C0
uint32_t m_ped_model; //0x00C4
uint32_t m_vehicle_model; //0x00C8
char pad_00CC[84]; //0x00CC
uint32_t m_pickup_model; //0x0120
char pad_0124[44]; //0x0124
uint32_t m_object_model; //0x0150
char pad_0154[692]; //0x0154
}; //Size: 0x0408
class netObject
{
public:
int16_t object_type; //0x0008
int16_t object_id; //0x000A
char pad_000C[61]; //0x000C
int8_t owner_id; //0x0049
int8_t control_id; //0x004A
int8_t next_owner_id; //0x004B
bool is_remote; //0x004C
bool wants_to_delete; //0x004D
char pad_004E[1]; //0x004E
bool should_not_be_deleted; //0x004F
char pad_0050[32]; //0x0050
uint32_t players_acked; //0x0070
char pad_0074[116]; //0x0074
virtual ~netObject() = 0;
virtual void m_8() = 0;
virtual void m_10() = 0;
virtual void m_18() = 0;
virtual void* m_20() = 0;
virtual void m_28() = 0;
virtual netSyncTree* GetSyncTree() = 0;
virtual void m_38() = 0;
virtual void m_40() = 0;
virtual void m_48() = 0;
virtual void m_50() = 0;
virtual void m_58() = 0;
virtual void m_60() = 0;
virtual void m_68() = 0;
virtual void m_70() = 0;
virtual void m_78() = 0;
virtual rage::CObject* GetGameObject() = 0;
virtual void m_88() = 0;
virtual void m_90() = 0;
virtual void m_98() = 0;
virtual int GetObjectFlags() = 0;
virtual void m_A8() = 0;
virtual void m_B0() = 0;
virtual void m_B8() = 0;
virtual void m_C0() = 0;
virtual void m_C8() = 0;
virtual int GetSyncFrequency() = 0;
virtual void m_D8() = 0;
virtual void m_E0() = 0;
virtual void m_E8() = 0;
virtual void m_F0() = 0;
virtual void m_F8() = 0;
virtual void Update() = 0;
virtual bool m_108_1604() = 0; // added in 1604
virtual void m_108() = 0;
virtual void m_110() = 0;
virtual void m_118() = 0;
virtual void m_120() = 0;
virtual void m_128() = 0;
virtual void m_130() = 0;
virtual void m_138() = 0;
virtual void m_140() = 0;
virtual void m_148() = 0;
virtual void m_150() = 0;
virtual bool m_158(void* player, int type, int* outReason) = 0;
virtual void m_160() = 0;
virtual bool m_168(int* outReason) = 0;
virtual void m_170() = 0;
virtual void m_178() = 0;
virtual void m_180() = 0;
virtual void m_188() = 0;
virtual void m_190() = 0;
virtual void m_198() = 0;
virtual void m_1A0() = 0;
virtual void m_1A8() = 0;
virtual void m_1B0() = 0;
virtual void m_1B8() = 0;
virtual void m_1C0() = 0;
virtual void m_1C8() = 0;
virtual void m_1D0() = 0;
virtual void m_1D8() = 0;
virtual void m_1E0() = 0;
virtual void m_1E8() = 0;
virtual void m_1F0() = 0;
virtual void m_1F8() = 0;
virtual void m_200() = 0;
virtual void m_208() = 0;
virtual void m_210() = 0;
virtual void m_218() = 0;
virtual void m_220() = 0;
virtual void m_228() = 0;
virtual void m_230() = 0;
virtual void m_238() = 0;
virtual void m_240() = 0;
virtual void m_248() = 0;
virtual void m_250() = 0;
virtual void m_258() = 0;
virtual void m_260() = 0;
virtual void m_268() = 0;
virtual void m_270() = 0;
virtual void m_278() = 0;
virtual void m_280() = 0;
virtual void m_288() = 0;
virtual void m_290() = 0;
virtual void m_298() = 0;
virtual void m_2A0() = 0;
virtual void m_2A8() = 0;
virtual void m_2B0() = 0;
virtual void m_2B8() = 0;
virtual void m_2C0() = 0;
virtual void m_2C8() = 0;
virtual void m_2D0() = 0;
virtual void m_2D8() = 0;
virtual void m_2E0() = 0;
virtual void m_2E8() = 0;
virtual void m_2F0() = 0;
virtual void m_2F8() = 0;
virtual void m_300() = 0;
virtual void m_308() = 0;
virtual void m_310() = 0;
virtual void m_318() = 0;
virtual void m_320() = 0;
virtual void UpdatePendingVisibilityChanges() = 0;
};
class CNetGamePlayer;
class netObjectMgrBase
{
public:
class atDNetObjectNode : public atDNode<netObject*>
{
};
public:
virtual ~netObjectMgrBase() = default;
virtual void Initialize() = 0;
virtual void Shutdown() = 0;
virtual void Update(bool) = 0;
virtual void AddEntity(void*, void*) = 0;
virtual void UnregisterNetworkObject_(void *unk, bool force) = 0;
virtual void UnregisterNetworkObject(netObject *object, int reason, bool force1, bool force2) = 0;
virtual void ChangeOwner(netObject *object, CNetGamePlayer *player, int migrationType) = 0;
virtual void HandleJoiningPlayer(CNetGamePlayer *player) = 0;
virtual void HandleLeavingPlayer(CNetGamePlayer *player) = 0;
virtual void _0x50(CNetGamePlayer *player) = 0;
virtual void _0x58() = 0;
virtual void RegisterNetworkObject(netObject *object) = 0;
virtual void PackCloneCreate(netObject *object, CNetGamePlayer *player, datBitBuffer *buffer) = 0;
virtual bool PackCloneRemove(netObject *object, CNetGamePlayer *player, bool) = 0;
virtual void _0x78(netObject *object, void*) = 0;
virtual void _0x80() = 0;
virtual void _0x88() = 0;
virtual const char *_0x90(int) = 0;
virtual bool HandleCloneCreate(CNetGamePlayer *source, CNetGamePlayer *target, eNetObjType object_type, std::uint16_t object_id, eNetObjectFlags object_flags, void*, std::uint32_t timestamp) = 0;
virtual void HandleCloneCreateAck(CNetGamePlayer *source, CNetGamePlayer *target, std::uint16_t object_flags, eAckCode ack_code) = 0;
virtual int HandleCloneSync(CNetGamePlayer *source, CNetGamePlayer *target, eNetObjType object_type, std::uint16_t object_id, void*, std::uint16_t, std::uint32_t timestamp) = 0;
virtual void HandleCloneSyncAck(CNetGamePlayer *source, CNetGamePlayer *target, void *, std::uint16_t objectId, eAckCode ack_code) = 0;
virtual void HandleCloneRemove(CNetGamePlayer *source, CNetGamePlayer *target, std::uint16_t object_id, int) = 0;
virtual void HandleCloneRemoveAck(CNetGamePlayer *source, CNetGamePlayer *target, std::uint16_t object_id, eAckCode ack_code) = 0;
virtual void _0xC8() = 0;
public:
atDList<atDNetObjectNode> m_objects_owned_by_player[32];
};
}
class CNetworkObjectMgr : public rage::netObjectMgrBase
{
public:
rage::netObject* find_object_by_id(std::uint16_t object_id, bool can_delete_be_pending)
{
return big::g_pointers->m_find_object_by_id(this, object_id, can_delete_be_pending);
};
};

View File

@ -1,112 +1,141 @@
#pragma once #pragma once
#include <cstdint> #include <cstdint>
#include "fwddec.hpp" #include "fwddec.hpp"
#include "extensible.hpp" #include "extensible.hpp"
#include "vector.hpp" #include "vector.hpp"
#include "gta\natives.hpp"
#pragma pack(push, 1)
namespace rage #pragma pack(push, 1)
{ namespace rage
# pragma warning(push) {
# pragma warning(disable : 4201) // nonstandard extension used: nameless struct/union # pragma warning(push)
union netAddress # pragma warning(disable : 4201) // nonstandard extension used: nameless struct/union
{ union netAddress
std::uint32_t m_raw; {
struct std::uint32_t m_raw;
{ struct
std::uint8_t m_field4; {
std::uint8_t m_field3; std::uint8_t m_field4;
std::uint8_t m_field2; std::uint8_t m_field3;
std::uint8_t m_field1; std::uint8_t m_field2;
}; std::uint8_t m_field1;
}; };
# pragma warning(pop) };
# pragma warning(pop)
class netPlayerData
{ class netPlayerData
public: {
std::uint64_t m_unk1; // 0x00 public:
std::uint64_t m_unk2; // 0x08 std::uint64_t m_unk1; // 0x00
std::uint32_t m_sec_key_time; // 0x10 std::uint64_t m_unk2; // 0x08
netAddress m_lan_ip; // 0x14 std::uint32_t m_sec_key_time; // 0x10
std::uint16_t m_lan_port; // 0x18 netAddress m_lan_ip; // 0x14
char m_pad1[0x02]; // 0x1A std::uint16_t m_lan_port; // 0x18
netAddress m_relay_ip; // 0x1C char m_pad1[0x02]; // 0x1A
std::uint16_t m_relay_port; // 0x20 netAddress m_relay_ip; // 0x1C
char m_pad2[0x02]; // 0x22 std::uint16_t m_relay_port; // 0x20
netAddress m_online_ip; // 0x24 char m_pad2[0x02]; // 0x22
std::uint16_t m_online_port; // 0x26 netAddress m_online_ip; // 0x24
char m_pad3[0x1E]; // 0x28 std::uint16_t m_online_port; // 0x26
std::uint64_t m_rockstar_id; // 0x48 char m_pad3[0x1E]; // 0x28
bool m_id_flag; // 0x50 std::uint64_t m_rockstar_id; // 0x48
char m_pad4[0x0B]; // 0x51 bool m_id_flag; // 0x50
char m_name[0x14]; // 0x5C char m_pad4[0x0B]; // 0x51
}; char m_name[0x14]; // 0x5C
};
class nonPhysicalPlayerDataBase
{ class nonPhysicalPlayerDataBase
public: {
virtual ~nonPhysicalPlayerDataBase() = default; // 0 (0x00) public:
virtual void unk_0x08() = 0; // 1 (0x08) virtual ~nonPhysicalPlayerDataBase() = default; // 0 (0x00)
virtual void unk_0x10() = 0; // 2 (0x10) virtual void unk_0x08() = 0; // 1 (0x08)
virtual void unk_0x18() = 0; // 3 (0x18) virtual void unk_0x10() = 0; // 2 (0x10)
virtual void log(netLoggingInterface* logger) = 0; // 4 (0x20) virtual void unk_0x18() = 0; // 3 (0x18)
}; virtual void log(netLoggingInterface* logger) = 0; // 4 (0x20)
};
class netPlayer
{ class netPlayer
public: {
virtual ~netPlayer() = default; // 0 (0x00) public:
virtual void reset() = 0; // 1 (0x08) virtual ~netPlayer() = default; // 0 (0x00)
virtual bool is_valid() const = 0; // 2 (0x10) virtual void reset() = 0; // 1 (0x08)
virtual const char *get_name() const = 0; // 3 (0x18) virtual bool is_valid() const = 0; // 2 (0x10)
virtual void _0x20() = 0; // 4 (0x20) virtual const char *get_name() const = 0; // 3 (0x18)
virtual bool is_host() = 0; // 5 (0x28) virtual void _0x20() = 0; // 4 (0x20)
virtual netPlayerData *get_net_data() = 0; // 6 (0x30) virtual bool is_host() = 0; // 5 (0x28)
virtual void _0x38() = 0; // 7 (0x38) virtual netPlayerData *get_net_data() = 0; // 6 (0x30)
}; virtual void _0x38() = 0; // 7 (0x38)
};
class netPlayerMgrBase
{ class netPlayerMgrBase
public: {
virtual ~netPlayerMgrBase() = default; // 0 (0x00) public:
}; virtual ~netPlayerMgrBase() = default; // 0 (0x00)
} };
}
namespace gta
{ namespace gta
inline constexpr auto num_players = 32; {
} inline constexpr auto num_players = 32;
}
class CNonPhysicalPlayerData : public rage::nonPhysicalPlayerDataBase
{ class CNonPhysicalPlayerData : public rage::nonPhysicalPlayerDataBase
public: {
std::int32_t m_bubble_id; // 0x08 public:
std::int32_t m_player_id; // 0x0C std::int32_t m_bubble_id; // 0x08
rage::vector3 m_position; // 0x10 std::int32_t m_player_id; // 0x0C
}; rage::vector3 m_position; // 0x10
};
class CNetGamePlayer : public rage::netPlayer
{ class CNetGamePlayer : public rage::netPlayer
public: {
public:
}; char pad_0x0008[0x25]; //0x0008
std::int8_t player_id; //0x002D
class CWantedData char pad_0x002E[0x7A]; //0x002E
{ CPlayerInfo* player_info; //0x00A8
public: char pad_0x00B0[0x14]; //0x00B0
char m_padding[0x98]; std::uint32_t bubble_id; //0x00C4
std::int32_t m_wanted_level; Player player; //0x00C8
}; };
class CPlayerInfo : public rage::fwExtensibleBase class CPlayerInfo : public rage::fwExtensibleBase
{ {
public: public:
char m_padding1[0x1D8]; // 0x20 char pad_0020[20]; //0x0020
std::uint32_t m_frame_flags; // 0x1F8 std::uint32_t m_internal_ip; //0x0034
char m_padding2[0x584]; // 0x1FC std::uint16_t m_internal_port; //0x0038
CWantedData m_wanted_data; // 0x780 char pad_003A[2]; //0x003A
}; std::uint32_t m_relay_ip; //0x003C
std::uint16_t m_relay_port; //0x0040
static_assert(sizeof(CNonPhysicalPlayerData) == 0x1C); char pad_0042[2]; //0x0042
#pragma pack(pop) std::uint32_t m_external_ip; //0x0044
std::uint16_t m_external_port; //0x0048
char pad_004A[30]; //0x004A
std::uint64_t m_rockstar_id; //0x0068
char pad_0070[12]; //0x0070
char m_name[20]; //0x007C
char pad_0090[184]; //0x0090
float m_swim_speed; //0x0148
float m_run_speed; //0x014C
char pad_0150[81]; //0x0150
bool m_is_rockstar_dev; //0x01A1
char pad_01A2[1]; //0x01A2
bool m_is_cheater; //0x01A3
char pad_01A4[11]; //0x01A4
bool m_is_online; //0x01AF
char pad_01B0[24]; //0x01B0
rage::CPed* m_ped; //0x01C8
char pad_01D0[40]; //0x01D0
std::uint32_t m_frame_flags; //0x01F8
char pad_01FC[28]; //0x01FC
std::uint32_t m_player_controls; //0x0218
char pad_021C[1524]; //0x021C
bool m_is_wanted; //0x0810
char pad_0811[51]; //0x0811
std::int32_t m_wanted_level_display; //0x0844
std::int32_t m_wanted_level; //0x0848
}; //Size: 0x084C
static_assert(sizeof(CNonPhysicalPlayerData) == 0x1C);
#pragma pack(pop)

View File

@ -0,0 +1,229 @@
#pragma once
#pragma pack(push, 4)
#include "common.hpp"
#include "fwddec.hpp"
namespace rage
{
class fwEntity
{
public:
char pad_0000[32]; //0x0000
class CBaseModelInfo* m_model_info; //0x0020
int8_t m_invisible; //0x0028
char pad_0029[7]; //0x0029
class CNavigation* m_navigation; //0x0030
char pad_0038[1]; //0x0038
int8_t m_entity_type; //0x0039
char pad_003A[150]; //0x003A
class netObject* m_net_object; //0x00D0
char pad_00D8[176]; //0x00D8
uint32_t m_damage_bits; //0x0188
bool is_invincible() { return(m_damage_bits & (1 << 8)); }
void enable_invincible() { m_damage_bits |= (1 << 8); }
void disable_invincible() { m_damage_bits &= ~(1 << 8); }
}; //Size: 0x018C
static_assert(sizeof(fwEntity) == 0x18C, "fwEntity is not properly sized");
class CVehicle : public fwEntity
{
public:
char pad_018C[2716]; //0x018C
//class CPed* m_driver; //0x0C28
//class CPed* m_occupants[8]; //0x0C30
}; //Size: 0x018C
class CNavigation
{
public:
char pad_0000[32]; //0x0000
float m_heading; //0x0020
float m_heading2; //0x0024
char pad_0028[8]; //0x0028
vector3 m_rotation; //0x0030
char pad_003C[20]; //0x003C
vector3 m_position; //0x0050
}; //Size: 0x005C
class CPed : public fwEntity
{
public:
char pad_018C[2972]; //0x018C
class CVehicle* m_last_vehicle; //0x0D28
char pad_0D30[892]; //0x0D30
int8_t m_decal_index; //0x10AC
int8_t m_decal_info; //0x10AD
char pad_10AE[10]; //0x10AE
class CPlayerInfo* m_player_info; //0x10B8
char pad_10C0[1072]; //0x10C0
class CVehicle* m_last_vehicle2; //0x14F0
}; //Size: 0x14F8
class CPlayerInfo
{
public:
char pad_0000[52]; //0x0000
uint32_t m_internal_ip; //0x0034
uint16_t m_internal_port; //0x0038
char pad_003A[2]; //0x003A
uint32_t m_relay_ip; //0x003C
uint16_t m_relay_port; //0x0040
char pad_0042[2]; //0x0042
uint32_t m_external_ip; //0x0044
uint16_t m_external_port; //0x0048
char pad_004A[30]; //0x004A
uint64_t m_rockstar_id; //0x0068
char pad_0070[12]; //0x0070
char m_name[20]; //0x007C
char pad_0090[184]; //0x0090
float m_swim_speed; //0x0148
float m_run_speed; //0x014C
char pad_0150[81]; //0x0150
bool m_is_rockstar_dev; //0x01A1
char pad_01A2[1]; //0x01A2
bool m_is_cheater; //0x01A3
char pad_01A4[11]; //0x01A4
bool m_is_online; //0x01AF
char pad_01B0[24]; //0x01B0
class CPed* m_ped; //0x01C8
char pad_01D0[40]; //0x01D0
uint32_t m_frame_flags; //0x01F8
char pad_01FC[28]; //0x01FC
uint32_t m_player_controls; //0x0218
char pad_021C[1524]; //0x021C
bool m_is_wanted; //0x0810
char pad_0811[3]; //0x0811
int32_t m_wanted_level_display; //0x0814
int32_t m_wanted_level; //0x0818
}; //Size: 0x081C
class CObject : public fwEntity
{
public:
}; //Size: 0x018C
class CBaseModelInfo
{
public:
char pad_0000[24]; //0x0000
uint32_t m_model; //0x0018
}; //Size: 0x001C
class CPedFactory
{
public:
virtual ~CPedFactory() = default;
class CPed* m_local_ped; //0x0008
}; //Size: 0x0010
class CObjectHandle
{
public:
class CObject* m_object; //0x0000
int32_t m_handle; //0x0008
char pad_000C[4]; //0x000C
}; //Size: 0x0010
static_assert(sizeof(CObjectHandle) == 0x10, "CObjectHandle is not properly sized");
class CObjectList
{
public:
class CObjectHandle m_objects[2300]; //0x0000
}; //Size: 0x8FC0
class CObjectInterface
{
public:
char pad_0000[344]; //0x0000
class CObjectList* m_object_list; //0x0158
int32_t m_max_objects; //0x0160
char pad_0164[4]; //0x0164
int32_t m_cur_objects; //0x0168
rage::CObject* get_object(const int& index)
{
if (index < m_max_objects)
return m_object_list->m_objects[index].m_object;
return nullptr;
}
}; //Size: 0x016C
class CPedHandle
{
public:
class CPed* m_ped; //0x0000
int32_t m_handle; //0x0008
char pad_000C[4]; //0x000C
}; //Size: 0x0010
static_assert(sizeof(CPedHandle) == 0x10, "CPedHandle is not properly sized");
class CPedList
{
public:
class CPedHandle m_peds[256]; //0x0000
}; //Size: 0x1000
class CPedInterface
{
public:
char pad_0000[256]; //0x0000
class CPedList* m_ped_list; //0x0100
int32_t m_max_peds; //0x0108
char pad_010C[4]; //0x010C
int32_t m_cur_peds; //0x0110
CPed* get_ped(const int& index)
{
if (index < m_max_peds)
return m_ped_list->m_peds[index].m_ped;
return nullptr;
}
}; //Size: 0x0114
class CVehicleHandle
{
public:
class CVehicle* m_vehicle; //0x0000
int32_t m_handle; //0x0008
char pad_000C[4]; //0x000C
}; //Size: 0x0010
static_assert(sizeof(CVehicleHandle) == 0x10, "CVehicleHandle is not properly sized");
class CVehicleList
{
public:
class CVehicleHandle m_vehicles[300]; //0x0000
}; //Size: 0x12C0
class CVehicleInterface
{
public:
char pad_0000[384]; //0x0000
class CVehicleList* m_vehicle_list; //0x0180
int32_t m_max_vehicles; //0x0188
char pad_018C[4]; //0x018C
int32_t m_cur_vehicles; //0x0190
CVehicle* get_vehicle(const int& index)
{
if (index < m_max_vehicles)
return m_vehicle_list->m_vehicles[index].m_vehicle;
return nullptr;
}
}; //Size: 0x0194
class CReplayInterface
{
public:
char pad_0000[16]; //0x0000
class CVehicleInterface* m_vehicle_interface; //0x0010
class CPedInterface* m_ped_interface; //0x0018
char pad_0020[8]; //0x0020
class CObjectInterface* m_object_interface; //0x0028
}; //Size: 0x0030
}
#pragma pack(pop)

View File

@ -12,13 +12,13 @@ namespace big
{ {
if (ImGui::BeginTabItem("Test")) if (ImGui::BeginTabItem("Test"))
{ {
static const char* demo_combo[] const char* const demo_combo[]
{ {
"One", "One",
"Two", "Two",
"Three" "Three"
}; };
static double min = 0., max = 10.; const double min = 0., max = 10.;
//If you want to add a new option, you have to first declare it in settings.h's default_options, otherwise, this code will crash when trying to access an option that does not exist in memory. //If you want to add a new option, you have to first declare it in settings.h's default_options, otherwise, this code will crash when trying to access an option that does not exist in memory.
if (ImGui::Checkbox("Bool", g_settings.options["demo bool"].get<bool*>())) if (ImGui::Checkbox("Bool", g_settings.options["demo bool"].get<bool*>()))
@ -41,15 +41,10 @@ namespace big
} }
auto pos = ENTITY::GET_ENTITY_COORDS(PLAYER::PLAYER_PED_ID(), true); auto pos = ENTITY::GET_ENTITY_COORDS(PLAYER::PLAYER_PED_ID(), true);
while (!STREAMING::HAS_MODEL_LOADED(hash))
{
STREAMING::REQUEST_MODEL(hash);
script::get_current()->yield();
}
*(unsigned short*)g_pointers->m_model_spawn_bypass = 0x9090; *(unsigned short*)g_pointers->m_model_spawn_bypass = 0x9090;
Vehicle vehicle = VEHICLE::CREATE_VEHICLE(hash, pos.x, pos.y, pos.z, 0.f, TRUE, FALSE, FALSE); Vehicle vehicle = VEHICLE::CREATE_VEHICLE(hash, pos.x, pos.y, pos.z, 0.f, TRUE, FALSE, FALSE);
*(unsigned short*)g_pointers->m_model_spawn_bypass = 0x0574; //By writing the "old" bypass to the function, running CREATE_VEHICLE, then restoring it, the anti-cheat does not have enough time to catch the function in a dirty state. *(unsigned short*)g_pointers->m_model_spawn_bypass = 0x0574; //By writing the "old" bypass to the function, running CREATE_VEHICLE, then restoring it, the anti-cheat does not have enough time to catch the function in a dirty state.
script::get_current()->yield(); script::get_current()->yield();
STREAMING::SET_MODEL_AS_NO_LONGER_NEEDED(hash); STREAMING::SET_MODEL_AS_NO_LONGER_NEEDED(hash);
if (*g_pointers->m_is_session_started) if (*g_pointers->m_is_session_started)
@ -61,13 +56,6 @@ namespace big
NETWORK::SET_NETWORK_ID_EXISTS_ON_ALL_MACHINES(networkId, true); NETWORK::SET_NETWORK_ID_EXISTS_ON_ALL_MACHINES(networkId, true);
VEHICLE::SET_VEHICLE_IS_STOLEN(vehicle, FALSE); VEHICLE::SET_VEHICLE_IS_STOLEN(vehicle, FALSE);
} }
if (*g_pointers->m_is_session_started)
{
DECORATOR::DECOR_SET_INT(vehicle, "MPBitset", 0);
}
STREAMING::SET_MODEL_AS_NO_LONGER_NEEDED(hash);
} }
QUEUE_JOB_END_CLAUSE QUEUE_JOB_END_CLAUSE
} }