diff --git a/BigBaseV2/src/gta/PickupRewards.h b/BigBaseV2/src/gta/PickupRewards.h new file mode 100644 index 00000000..c3c7dd4f --- /dev/null +++ b/BigBaseV2/src/gta/PickupRewards.h @@ -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") +}; \ No newline at end of file diff --git a/BigBaseV2/src/gta/VehicleValues.h b/BigBaseV2/src/gta/VehicleValues.h new file mode 100644 index 00000000..844ff3b8 --- /dev/null +++ b/BigBaseV2/src/gta/VehicleValues.h @@ -0,0 +1,2942 @@ +#pragma once + +#include "Vehicles.h" + +enum SeatPositions +{ + SEAT_DRIVER = -1, + SEAT_PASSENGER = 0, + SEAT_BACKDRIVER = 1, + SEAT_BACKPASSENGER = 2 +}; + +enum WheelTypes +{ + WHEEL_TYPE_STOCK = -1, + WHEEL_TYPE_SPORT, + WHEEL_TYPE_MUSCLE, + WHEEL_TYPE_LOWRIDER, + WHEEL_TYPE_SUV, + WHEEL_TYPE_OFFROAD, + WHEEL_TYPE_TUNER, + WHEEL_TYPE_BIKEWHEELS, + WHEEL_TYPE_HIGHEND, + WHEEL_TYPE_BENNYS_ORIGINAL, + WHEEL_TYPE_BENNYS_BESPOKE +}; + +enum VehicleWeapons +{ + VEHICLE_WEAPON_AKULA_BARRAGE = 0x880D14F2, + VEHICLE_WEAPON_AKULA_MINIGUN = 0x19B95679, + VEHICLE_WEAPON_AKULA_MISSILE = 0x7CBE304C, + VEHICLE_WEAPON_AKULA_TURRET_DUAL = 0x1C6D0842, + VEHICLE_WEAPON_AKULA_TURRET_SINGLE = 0xB5B3B9AD, + VEHICLE_WEAPON_APC_CANNON = 0x138F71D8, + VEHICLE_WEAPON_APC_MG = 0xB56E4E4, + VEHICLE_WEAPON_APC_MISSILE = 0x44A56189, + VEHICLE_WEAPON_ARDENT_MG = 0xC44E4341, + VEHICLE_WEAPON_AVENGER_CANNON = 0x9867203B, + VEHICLE_WEAPON_BARRAGE_REAR_GL = 0xA44C228D, + VEHICLE_WEAPON_BARRAGE_REAR_MG = 0x47894765, + VEHICLE_WEAPON_BARRAGE_REAR_MINIGUN = 0x1F545F65, + VEHICLE_WEAPON_BARRAGE_TOP_MG = 0xF7498994, + VEHICLE_WEAPON_BARRAGE_TOP_MINIGUN = 0x3B9EBD01, + VEHICLE_WEAPON_BOMBUSHKA_CANNON = 0xD8443A59, + VEHICLE_WEAPON_BOMBUSHKA_DUALMG = 0x2C2B2D58, + VEHICLE_WEAPON_CANNON_BLAZER = 0xEBF9FF3E, + VEHICLE_WEAPON_CARACARA_MG = 0x6C516BA8, + VEHICLE_WEAPON_CARACARA_MINIGUN = 0x4FCBDC7B, + VEHICLE_WEAPON_CHERNO_MISSILE = 0xA247D03E, + VEHICLE_WEAPON_COMET_MG = 0xEAA835F3, + VEHICLE_WEAPON_DELUXO_MG = 0x9AFF6376, + VEHICLE_WEAPON_DELUXO_MISSILE = 0xB4F96934, + VEHICLE_WEAPON_DOGFIGHTER_MG = 0x5F1834E2, + VEHICLE_WEAPON_DOGFIGHTER_MISSILE = 0xCA46F87D, + VEHICLE_WEAPON_DUNE_GRENADELAUNCHER = 0xA0FC710D, + VEHICLE_WEAPON_DUNE_MG = 0xD11507CF, + VEHICLE_WEAPON_DUNE_MINIGUN = 0x54672A71, + VEHICLE_WEAPON_ENEMY_LASER = 0x5D6660AB, + VEHICLE_WEAPON_HACKER_MISSILE = 0x766FF7B1, + VEHICLE_WEAPON_HACKER_MISSILE_HOMING = 0x77EACF96, + VEHICLE_WEAPON_HALFTRACK_DUALMG = 0x4F6384FB, + VEHICLE_WEAPON_HALFTRACK_QUADMG = 0x491B2E74, + VEHICLE_WEAPON_HAVOK_MINIGUN = 0x32FE9EEF, + VEHICLE_WEAPON_HUNTER_BARRAGE = 0x2ED14835, + VEHICLE_WEAPON_HUNTER_CANNON = 0x2A00AB1A, + VEHICLE_WEAPON_HUNTER_MG = 0x42BA80A7, + VEHICLE_WEAPON_HUNTER_MISSILE = 0x924A5F5, + VEHICLE_WEAPON_INSURGENT_MINIGUN = 0xAA886DF8, + VEHICLE_WEAPON_KHANJALI_CANNON = 0x1E3ACFA0, + VEHICLE_WEAPON_KHANJALI_CANNON_HEAVY = 0x838B716D, + VEHICLE_WEAPON_KHANJALI_GL = 0x178605E2, + VEHICLE_WEAPON_KHANJALI_MG = 0x2A6F8E1D, + VEHICLE_WEAPON_MENACER_MG = 0xDFCAF8A4, + VEHICLE_WEAPON_MICROLIGHT_MG = 0xC4E0216C, + VEHICLE_WEAPON_MOBILEOPS_CANNON = 0xE53E69A4, + VEHICLE_WEAPON_MOGUL_DUALNOSE = 0xE5F3AE2F, + VEHICLE_WEAPON_MOGUL_DUALTURRET = 0xBA277C01, + VEHICLE_WEAPON_MOGUL_NOSE = 0xF6189F4A, + VEHICLE_WEAPON_MOGUL_TURRET = 0xE2FD135E, + VEHICLE_WEAPON_MULE4_MG = 0x84558727, + VEHICLE_WEAPON_MULE4_MISSILE = 0x4772F84B, + VEHICLE_WEAPON_MULE4_TURRET_GL = 0xDD124A65, + VEHICLE_WEAPON_NIGHTSHARK_MG = 0xA61AC574, + VEHICLE_WEAPON_NOSE_TURRET_VALKYRIE = 0x4170E491, + VEHICLE_WEAPON_OPPRESSOR_MG = 0xD9322EDD, + VEHICLE_WEAPON_OPPRESSOR_MISSILE = 0x8BB7C63E, + VEHICLE_WEAPON_OPPRESSOR2_CANNON = 0xD64D3469, + VEHICLE_WEAPON_OPPRESSOR2_MG = 0xE2451DD6, + VEHICLE_WEAPON_OPPRESSOR2_MISSILE = 0x753A78F1, + VEHICLE_WEAPON_PLANE_ROCKET = 0xCF0896E0, + VEHICLE_WEAPON_PLAYER_BUZZARD = 0x46B89C8E, + VEHICLE_WEAPON_PLAYER_LAZER = 0xE2822A29, + VEHICLE_WEAPON_PLAYER_SAVAGE = 0x61A31349, + VEHICLE_WEAPON_POUNDER2_BARRAGE = 0x926B8CE4, + VEHICLE_WEAPON_POUNDER2_GL = 0x9318FF16, + VEHICLE_WEAPON_POUNDER2_MINI = 0x86E6F84E, + VEHICLE_WEAPON_POUNDER2_MISSILE = 0x9A8EA9A, + VEHICLE_WEAPON_RADAR = 0xD276317E, + VEHICLE_WEAPON_REVOLTER_MG = 0xBD5E626A, + VEHICLE_WEAPON_ROGUE_CANNON = 0xE72ABBC2, + VEHICLE_WEAPON_ROGUE_MG = 0x97273CD, + VEHICLE_WEAPON_ROGUE_MISSILE = 0x6C88E47D, + VEHICLE_WEAPON_RUINER_BULLET = 0x2FCC0F9, + VEHICLE_WEAPON_RUINER_ROCKET = 0x50DC6AB, + VEHICLE_WEAPON_SAVESTRA_MG = 0xEB41E84E, + VEHICLE_WEAPON_SCRAMJET_MG = 0xDCE6112, + VEHICLE_WEAPON_SCRAMJET_MISSILE = 0xBCE908DB, + VEHICLE_WEAPON_SEABREEZE_MG = 0x51B8D4E8, + VEHICLE_WEAPON_SEARCHLIGHT = 0xCDAC517D, + VEHICLE_WEAPON_SPACE_ROCKET = 0xF8A3939F, + VEHICLE_WEAPON_SPEEDO4_MG = 0xC7FCF93C, + VEHICLE_WEAPON_SPEEDO4_TURRET_MG = 0xD6561141, + VEHICLE_WEAPON_SPEEDO4_TURRET_MINI = 0x9EFE3EBA, + VEHICLE_WEAPON_STRIKEFORCE_BARRAGE = 0x39BC6683, + VEHICLE_WEAPON_STRIKEFORCE_CANNON = 0x38F41EAB, + VEHICLE_WEAPON_STRIKEFORCE_MISSILE = 0x1EF01D8A, + VEHICLE_WEAPON_SUBCAR_MG = 0x461DDDB0, + VEHICLE_WEAPON_SUBCAR_MISSILE = 0xD4897C0E, + VEHICLE_WEAPON_SUBCAR_TORPEDO = 0xE783C3BA, + VEHICLE_WEAPON_TAMPA_DUALMINIGUN = 0x67FDCFE4, + VEHICLE_WEAPON_TAMPA_FIXEDMINIGUN = 0xDAC57AAD, + VEHICLE_WEAPON_TAMPA_MISSILE = 0x9E5840A2, + VEHICLE_WEAPON_TAMPA_MORTAR = 0x3C83C410, + VEHICLE_WEAPON_TANK = 0x73F7C04B, + VEHICLE_WEAPON_TECHNICAL_MINIGUN = 0xDB894608, + VEHICLE_WEAPON_THRUSTER_MG = 0x652E1D9D, + VEHICLE_WEAPON_THRUSTER_MISSILE = 0x4635DD15, + VEHICLE_WEAPON_TRAILER_DUALAA = 0x808C4D4C, + VEHICLE_WEAPON_TRAILER_MISSILE = 0x145599F7, + VEHICLE_WEAPON_TRAILER_QUADMG = 0x4711B02C, + VEHICLE_WEAPON_TULA_DUALMG = 0xB0D15C0B, + VEHICLE_WEAPON_TULA_MG = 0x488BD081, + VEHICLE_WEAPON_TULA_MINIGUN = 0x1670C4A8, + VEHICLE_WEAPON_TULA_NOSEMG = 0x419D8E15, + VEHICLE_WEAPON_TURRET_BOXVILLE = 0xB54F4918, + VEHICLE_WEAPON_TURRET_INSURGENT = 0x44DB5498, + VEHICLE_WEAPON_TURRET_LIMO = 0x2B796481, + VEHICLE_WEAPON_TURRET_TECHNICAL = 0x7FD2EA0B, + VEHICLE_WEAPON_TURRET_VALKYRIE = 0xA4513E35, + VEHICLE_WEAPON_VIGILANTE_MG = 0xF4077EE7, + VEHICLE_WEAPON_VIGILANTE_MISSILE = 0x504DA665, + VEHICLE_WEAPON_VISERIS_MG = 0x87A02E06, + VEHICLE_WEAPON_VOLATOL_DUALMG = 0x4497AC40, + VEHICLE_WEAPON_WATER_CANNON = 0x67D18297 +}; + +enum TunerTypes +{ + WHEEL_TUNER_STOCK = -1, + WHEEL_TUNER_COSMO, + WHEEL_TUNER_SUPERMESH, + WHEEL_TUNER_OUTSIDER, + WHEEL_TUNER_ROLLAS, + WHEEL_TUNER_DRIFFMEISTER, + WHEEL_TUNER_SLICER, + WHEEL_TUNER_ELQUATRO, + WHEEL_TUNER_DUBBED, + WHEEL_TUNER_FIVESTAR, + WHEEL_TUNER_SLIDEWAYS, + WHEEL_TUNER_APEX, + WHEEL_TUNER_STANCEDEG, + WHEEL_TUNER_COUNTERSTEER, + WHEEL_TUNER_ENDOV1, + WHEEL_TUNER_ENDOV2DISH, + WHEEL_TUNER_GUPPEZ, + WHEEL_TUNER_CHOKADORI, + WHEEL_TUNER_CHICANE, + WHEEL_TUNER_SAISOKU, + WHEEL_TUNER_DISHEDEIGHT, + WHEEL_TUNER_FUJIWARA, + WHEEL_TUNER_ZOKUSHA, + WHEEL_TUNER_BATTLEVLLL, + WHEEL_TUNER_RALLYMASTER +}; + +enum HighEndWheels +{ + WHEEL_HIGHEND_STOCK = -1, + WHEEL_HIGHEND_SHADOW, + WHEEL_HIGHEND_HYPHER, + WHEEL_HIGHEND_BLADE, + WHEEL_HIGHEND_DIAMOND, + WHEEL_HIGHEND_SUPAGEE, + WHEEL_HIGHEND_CHROMATICZ, + WHEEL_HIGHEND_MERCIECHLIP, + WHEEL_HIGHEND_OBEYRS, + WHEEL_HIGHEND_GTCHROME, + WHEEL_HIGHEND_CHEETAHR, + WHEEL_HIGHEND_SOLAR, + WHEEL_HIGHEND_SPLITTEN, + WHEEL_HIGHEND_DASHVIP, + WHEEL_HIGHEND_LOZSPEEDTEN, + WHEEL_HIGHEND_CARBONINFERNO, + WHEEL_HIGHEND_CARBONSHADOW, + WHEEL_HIGHEND_CARBONZ, + WHEEL_HIGHEND_CARBONSOLAR, + WHEEL_HIGHEND_CARBONCHEETAHR, + WHEEL_HIGHEND_CARBONSRACER +}; + +enum LowriderWheels +{ + WHEEL_LOWRIDER_STOCK = -1, + WHEEL_LOWRIDER_FLARE, + WHEEL_LOWRIDER_WIRED, + WHEEL_LOWRIDER_TRIPLEGOLDS, + WHEEL_LOWRIDER_BIGWORM, + WHEEL_LOWRIDER_SEVENFIVES, + WHEEL_LOWRIDER_SPLITSIX, + WHEEL_LOWRIDER_FRESHMESH, + WHEEL_LOWRIDER_LEADSLED, + WHEEL_LOWRIDER_TURBINE, + WHEEL_LOWRIDER_SUPERFIN, + WHEEL_LOWRIDER_CLASSICROD, + WHEEL_LOWRIDER_DOLLAR, + WHEEL_LOWRIDER_DUKES, + WHEEL_LOWRIDER_LOWFIVE, + WHEEL_LOWRIDER_GOOCH, +}; + +enum MuscleWheels +{ + WHEEL_MUSCLE_STOCK = -1, + WHEEL_MUSCLE_CLASSICFIVE, + WHEEL_MUSCLE_DUKES, + WHEEL_MUSCLE_MUSCLEFREAK, + WHEEL_MUSCLE_KRACKA, + WHEEL_MUSCLE_AZREA, + WHEEL_MUSCLE_MECHA, + WHEEL_MUSCLE_BLACKTOP, + WHEEL_MUSCLE_DRAGSPL, + WHEEL_MUSCLE_REVOLVER, + WHEEL_MUSCLE_CLASSICROD, + WHEEL_MUSCLE_FAIRLRE, + WHEEL_MUSCLE_SPOONER, + WHEEL_MUSCLE_FIVESTAR, + WHEEL_MUSCLE_OLDSCHOOL, + WHEEL_MUSCLE_ELJEFE, + WHEEL_MUSCLE_DODMAN, + WHEEL_MUSCLE_SIXGUN, + WHEEL_MUSCLE_MERCENARY +}; + +enum OffroadWheels +{ + WHEEL_OFFROAD_STOCK = -1, + WHEEL_OFFROAD_RAIDER, + WHEEL_OFFROAD_MUDSLINGER, + WHEEL_OFFROAD_NEVIS, + WHEEL_OFFROAD_CAIRNGORM, + WHEEL_OFFROAD_AMAZON, + WHEEL_OFFROAD_CHALLENGER, + WHEEL_OFFROAD_DUNEBASHER, + WHEEL_OFFROAD_FIVESTAR, + WHEEL_OFFROAD_ROCKCRAWLER, + WHEEL_OFFROAD_MILSPECSTEELIE +}; + +enum SportWheels +{ + WHEEL_SPORT_STOCK = -1, + WHEEL_SPORT_INFERNO, + WHEEL_SPORT_DEEPFIVE, + WHEEL_SPORT_LOZSPEED, + WHEEL_SPORT_DIAMONDCUT, + WHEEL_SPORT_CHRONO, + WHEEL_SPORT_FEROCCIRR, + WHEEL_SPORT_FIFTYNINE, + WHEEL_SPORT_MERCIE, + WHEEL_SPORT_SYNTHETICZ, + WHEEL_SPORT_ORGANICTYPED, + WHEEL_SPORT_ENDOV1, + WHEEL_SPORT_DUPER7, + WHEEL_SPORT_UZER, + WHEEL_SPORT_GROUNDRIDE, + WHEEL_SPORT_SRACER, + WHEEL_SPORT_VENUM, + WHEEL_SPORT_COSMO, + WHEEL_SPORT_DASHVIP, + WHEEL_SPORT_ICEKID, + WHEEL_SPORT_RUFFWELD, + WHEEL_SPORT_WANGENMASTER, + WHEEL_SPORT_SUPERFIVE, + WHEEL_SPORT_ENDOV2, + WHEEL_SPORT_SLITSIX +}; + +enum SUVWheels +{ + WHEEL_SUV_STOCK = -1, + WHEEL_SUV_VIP, + WHEEL_SUV_BENEFACTOR, + WHEEL_SUV_COSMO, + WHEEL_SUV_BIPPU, + WHEEL_SUV_ROYALSIX, + WHEEL_SUV_FAGORME, + WHEEL_SUV_DELUXE, + WHEEL_SUV_ICEDOUT, + WHEEL_SUV_COGNSCENTI, + WHEEL_SUV_LOZSPEEDTEN, + WHEEL_SUV_SUPERNOVA, + WHEEL_SUV_OBEYRS, + WHEEL_SUV_LOZSPEEDBALLER, + WHEEL_SUV_EXTRAVAGANZO, + WHEEL_SUV_SPLITSIX, + WHEEL_SUV_EMPOWERED, + WHEEL_SUV_SUNRISE, + WHEEL_SUV_DASHVIP, + WHEEL_SUV_CUTTER +}; + +enum BikeWheels +{ + WHEEL_BIKE_STOCK = -1, + WHEEL_BIKE_SPEEDWAY, + WHEEL_BIKE_STREETSPECIAL, + WHEEL_BIKE_RACER, + WHEEL_BIKE_TRACKSTAR, + WHEEL_BIKE_OVERLORD, + WHEEL_BIKE_TRIDENT, + WHEEL_BIKE_TRIPLETHREAT, + WHEEL_BIKE_STILLETO, + WHEEL_BIKE_WIRES, + WHEEL_BIKE_BOBBER, + WHEEL_BIKE_SOLIDUS, + WHEEL_BIKE_ICESHIELD, + WHEEL_BIKE_LOOPS +}; + +enum VehicleModType +{ + MOD_SPOILERS, + MOD_FRONTBUMPER, + MOD_REARBUMPER, + MOD_SIDESKIRT, + MOD_EXHAUST, + MOD_FRAME, + MOD_GRILLE, + MOD_HOOD, + MOD_FENDER, + MOD_RIGHTFENDER, + MOD_ROOF, + MOD_ENGINE, + MOD_BRAKES, + MOD_TRANSMISSION, + MOD_HORNS, + MOD_SUSPENSION, + MOD_ARMOR, + MOD_FRONTWHEEL = 23, + MOD_REARWHEEL, + MOD_PLATEHOLDER, + MOD_VANITYPLATES, + MOD_TRIMDESIGN, + MOD_ORNAMENTS, + MOD_DASHBOARD, + MOD_DIALDESIGN, + MOD_DOORSPEAKERS, + MOD_SEATS, + MOD_STEERINGWHEELS, + MOD_COLUMNSHIFTERLEVERS, + MOD_PLAQUES, + MOD_SPEAKERS, + MOD_TRUNK, + MOD_HYDRAULICS, + MOD_ENGINEBLOCK, + MOD_AIRFILTER, + MOD_STRUTS, + MOD_ARCHCOVER, + MOD_AERIALS, + MOD_TRIM, + MOD_TANK, + MOD_WINDOWS, + MOD_DOORS, + MOD_LIVERY +}; + +static const char* mod_names[] = { "MOD_SPOILERS", "MOD_FRONTBUMPER", "MOD_REARBUMPER", "MOD_SIDESKIRT", "MOD_EXHAUST", "MOD_FRAME", "MOD_GRILLE", "MOD_HOOD", "MOD_FENDER", "MOD_RIGHTFENDER", "MOD_ROOF", "MOD_ENGINE", "MOD_BRAKES", "MOD_TRANSMISSION", "MOD_HORNS", "MOD_SUSPENSION", "MOD_ARMOR", "", "MOD_TURBO", "", "MOD_TIRESMOKE", "", "MOD_XENONHEADLIGHTS", "MOD_FRONTWHEEL", "MOD_REARWHEEL", "MOD_PLATEHOLDER", "MOD_VANITYPLATES", "MOD_TRIMDESIGN", "MOD_ORNAMENTS", "MOD_DASHBOARD", "MOD_DIALDESIGN", "MOD_DOORSPEAKERS", "MOD_SEATS", "MOD_STEERINGWHEELS", "MOD_COLUMNSHIFTERLEVERS", "MOD_PLAQUES", "MOD_SPEAKERS", "MOD_TRUNK", "MOD_HYDRAULICS", "MOD_ENGINEBLOCK", "MOD_AIRFILTER", "MOD_STRUTS", "MOD_ARCHCOVER", "MOD_AERIALS", "MOD_TRIM", "MOD_TANK", "MOD_WINDOWS", "", "MOD_LIVERY" }; + +enum VehicleToggleModType +{ + MOD_TURBO = 18, + MOD_TIRESMOKE = 20, + MOD_XENONHEADLIGHTS = 22 +}; + +enum VehicleModHorns +{ + HORN_STOCK = -1, + HORN_TRUCK, + HORN_POLICE, + HORN_CLOWN, + HORN_MUSICAL1, + HORN_MUSICAL2, + HORN_MUSICAL3, + HORN_MUSICAL4, + HORN_MUSICAL5, + HORN_SADTROMBONE, + HORN_CLASSICAL1, + HORN_CLASSICAL2, + HORN_CLASSICAL3, + HORN_CLASSICAL4, + HORN_CLASSICAL5, + HORN_CLASSICAL6, + HORN_CLASSICAL7, + HORN_SCALEDO, + HORN_SCALERE, + HORN_SCALEMI, + HORN_SCALEFA, + HORN_SCALESOL, + HORN_SCALELA, + HORN_SCALETI, + HORN_SCALEDO_HIGH, + HORN_JAZZ1, + HORN_JAZZ2, + HORN_JAZZ3, + HORN_JAZZLOOP, + HORN_STARSPANGBAN1, + HORN_STARSPANGBAN2, + HORN_STARSPANGBAN3, + HORN_STARSPANGBAN4, + HORN_CLASSICAL_LOOP, + HORN_CLASSICAL, + HORN_CLASSICAL_LOOP2, + HORN_CLASSICAL_HORN_LOOP, + HORN_CLASSICAL_HORN_LOOP2, + HORN_CLASSICAL_HORN_LOOP3, + HORN_HALLOWEEN_LOOP, + HORN_HALLOWEEN, + HORN_HALLOWEEN2_LOOP, + HORN_HALLOWEEN2, + HORN_SANANDREAS_LOOP, + HORN_SANANDREAS, + HORN_LIBERTYCITY_LOOP, + HORN_LIBERTYCITY, + HORN_XMAS, + HORN_XMAS_BACKGROUND, + HORN_XMAS2, + HORN_XMAS2_BACKGROUND, + HORN_XMAS3, + HORN_XMAS3_BACKGROUND +}; + +enum VehicleAddonLevel +{ + MOD_INDEX_OFF = -1, + MOD_INDEX_ONE, //To determine mod index, look at the mod menu in LSC, the first item is MOD_INDEX_ONE. Count down to the item you want. Stock counts as OFF. + MOD_INDEX_TWO, + MOD_INDEX_THREE, + MOD_INDEX_FOUR, + MOD_INDEX_FIVE, + MOD_INDEX_SIX, + MOD_INDEX_SEVEN, + MOD_INDEX_EIGHT, + MOD_INDEX_NINE +}; + +enum NeonLightLocations +{ + NEON_LEFT, + NEON_RIGHT, + NEON_FRONT, + NEON_BACK +}; + +enum VehicleColorsChrome +{ + COLOR_CHROME = 120 +}; + +enum VehicleColorsClassic +{ + COLOR_CLASSIC_BLACK = 0, + COLOR_CLASSIC_CARBON_BLACK = 147, + COLOR_CLASSIC_GRAPHITE = 1, + COLOR_CLASSIC_ANHRACITE_BLACK = 11, + COLOR_CLASSIC_BLACK_STEEL = 2, + COLOR_CLASSIC_DARK_STEEL = 3, + COLOR_CLASSIC_SILVER = 4, + COLOR_CLASSIC_BLUISH_SILVER = 5, + COLOR_CLASSIC_ROLLED_STEEL = 6, + COLOR_CLASSIC_SHADOW_SILVER = 7, + COLOR_CLASSIC_STONE_SILVER = 8, + COLOR_CLASSIC_MIDNIGHT_SILVER = 9, + COLOR_CLASSIC_CAST_IRON_SILVER = 10, + COLOR_CLASSIC_RED = 27, + COLOR_CLASSIC_TORINO_RED = 28, + COLOR_CLASSIC_FORMULA_RED = 29, + COLOR_CLASSIC_LAVA_RED = 150, + COLOR_CLASSIC_BLAZE_RED = 30, + COLOR_CLASSIC_GRACE_RED = 31, + COLOR_CLASSIC_GARNET_RED = 32, + COLOR_CLASSIC_SUNSET_RED = 33, + COLOR_CLASSIC_CABERNET_RED = 34, + COLOR_CLASSIC_WINE_RED = 143, + COLOR_CLASSIC_CANDY_RED = 35, + COLOR_CLASSIC_HOT_PINK = 135, + COLOR_CLASSIC_PFSITER_PINK = 137, + COLOR_CLASSIC_SALMON_PINK = 136, + COLOR_CLASSIC_SUNRISE_ORANGE = 36, + COLOR_CLASSIC_ORANGE = 38, + COLOR_CLASSIC_BRIGHT_ORANGE = 138, + COLOR_CLASSIC_GOLD = 99, + COLOR_CLASSIC_BRONZE = 90, + COLOR_CLASSIC_YELLOW = 88, + COLOR_CLASSIC_RACE_YELLOW = 89, + COLOR_CLASSIC_DEW_YELLOW = 91, + COLOR_CLASSIC_DARK_GREEN = 49, + COLOR_CLASSIC_RACING_GREEN = 50, + COLOR_CLASSIC_SEA_GREEN = 51, + COLOR_CLASSIC_OLIVE_GREEN = 52, + COLOR_CLASSIC_BRIGHT_GREEN = 53, + COLOR_CLASSIC_GASOLINE_GREEN = 54, + COLOR_CLASSIC_LIME_GREEN = 92, + COLOR_CLASSIC_MIDNIGHT_BLUE = 141, + COLOR_CLASSIC_GALAXY_BLUE = 61, + COLOR_CLASSIC_DARK_BLUE = 62, + COLOR_CLASSIC_SAXON_BLUE = 63, + COLOR_CLASSIC_BLUE = 64, + COLOR_CLASSIC_MARINER_BLUE = 65, + COLOR_CLASSIC_HARBOR_BLUE = 66, + COLOR_CLASSIC_DIAMOND_BLUE = 67, + COLOR_CLASSIC_SURF_BLUE = 68, + COLOR_CLASSIC_NAUTICAL_BLUE = 69, + COLOR_CLASSIC_RACING_BLUE = 73, + COLOR_CLASSIC_ULTRA_BLUE = 70, + COLOR_CLASSIC_LIGHT_BLUE = 74, + COLOR_CLASSIC_CHOCOLATE_BROWN = 96, + COLOR_CLASSIC_BISON_BROWN = 101, + COLOR_CLASSIC_CREEEN_BROWN = 95, + COLOR_CLASSIC_FELTZER_BROWN = 94, + COLOR_CLASSIC_MAPLE_BROWN = 97, + COLOR_CLASSIC_BEECHWOOD_BROWN = 103, + COLOR_CLASSIC_SIENNA_BROWN = 104, + COLOR_CLASSIC_SADDLE_BROWN = 98, + COLOR_CLASSIC_MOSS_BROWN = 100, + COLOR_CLASSIC_WOODBEECH_BROWN = 102, + COLOR_CLASSIC_STRAW_BROWN = 99, + COLOR_CLASSIC_SANDY_BROWN = 105, + COLOR_CLASSIC_BLEACHED_BROWN = 106, + COLOR_CLASSIC_SCHAFTER_PURPLE = 71, + COLOR_CLASSIC_SPINNAKER_PURPLE = 72, + COLOR_CLASSIC_MIDNIGHT_PURPLE = 142, + COLOR_CLASSIC_BRIGHT_PURPLE = 145, + COLOR_CLASSIC_CREAM = 107, + COLOR_CLASSIC_ICE_WHITE = 111, + COLOR_CLASSIC_FROST_WHITE = 112 +}; + +enum VehicleColorsMatte +{ + COLOR_MATTE_BLACK = 12, + COLOR_MATTE_GRAY = 13, + COLOR_MATTE_LIGHT_GRAY = 14, + COLOR_MATTE_ICE_WHITE = 131, + COLOR_MATTE_BLUE = 83, + COLOR_MATTE_DARK_BLUE = 82, + COLOR_MATTE_MIDNIGHT_BLUE = 84, + COLOR_MATTE_MIDNIGHT_PURPLE = 149, + COLOR_MATTE_SCHAFTER_PURPLE = 148, + COLOR_MATTE_RED = 39, + COLOR_MATTE_DARK_RED = 40, + COLOR_MATTE_ORANGE = 41, + COLOR_MATTE_YELLOW = 42, + COLOR_MATTE_LIME_GREEN = 55, + COLOR_MATTE_GREEN = 128, + COLOR_MATTE_FOREST_GREEN = 151, + COLOR_MATTE_FOLIAGE_GREEN = 155, + COLOR_MATTE_OLIVE_DARB = 152, + COLOR_MATTE_DARK_EARTH = 153, + COLOR_MATTE_DESERT_TAN = 154 +}; + +enum VehicleColorsMetals +{ + //COLOR_METALS_PEARLESCENT_STEEL = 18, + COLOR_METALS_BRUSHED_STEEL = 117, + COLOR_METALS_BRUSHED_BLACK_STEEL = 118, + COLOR_METALS_BRUSHED_ALUMINUM = 119, + COLOR_METALS_PURE_GOLD = 158, + COLOR_METALS_BRUSHED_GOLD = 159, + //COLOR_METALS_PEARLESCENT_GOLD = 160 +}; + +enum PlateTextIndexs +{ + PLATE_BLUEONWHITE1, + PLATE_YELLOWONBLACK, + PLATE_YELLOWONBLUE, + PLATE_BLUEONWHITE2, + PLATE_BLUEONWHITE3, + PLATE_YANKTON +}; + +enum WindowTints //m8 do you even int tint? +{ + WINDOWTINT_NONE, + WINDOWTINT_BLACK, + WINDOWTINT_DARKSMOKE, + WINDOWTINT_LIGHTSMOKE, + WINDOWTINT_STOCK, + WINDOWTINT_LIMO, + WINDOWTINT_GREEN +}; + +#define NEON_COLOR_WHITE 222, 222, 255 +#define NEON_COLOR_BLUE 2, 21, 255 +#define NEON_COLOR_ELECTRICBLUE 3, 83, 255 +#define NEON_COLOR_MINTGREEN 0, 255, 140 +#define NEON_COLOR_LIMEGREEN 94, 255, 1 +#define NEON_COLOR_YELLOW 255, 255, 0 +#define NEON_COLOR_GOLDENSHOWER 255, 150, 5 +#define NEON_COLOR_ORANGE 255, 62, 0 +#define NEON_COLOR_RED 255, 1, 1 +#define NEON_COLOR_PONYPINK 255, 50, 100 //Fag +#define NEON_COLOR_HOTPINK 255, 5, 190 +#define NEON_COLOR_PURPLE 35, 1, 255 +#define NEON_COLOR_BACKLIGHT 15, 3, 255 + +#define TIRESMOKE_COLOR_WHITE 255, 255, 255 +#define TIRESMOKE_COLOR_BLACK 20, 20, 20 +#define TIRESMOKE_COLOR_BLUE 0, 174, 239 +#define TIRESMOKE_COLOR_YELLOW 252, 238, 0 +#define TIRESMOKE_COLOR_PURPLE 100, 79, 142 +#define TIRESMOKE_COLOR_ORANGE 255, 127, 0 +#define TIRESMOKE_COLOR_GREEN 114, 204, 114 +#define TIRESMOKE_COLOR_RED 226, 6, 6 +#define TIRESMOKE_COLOR_PINK 203, 54, 148 +#define TIRESMOKE_COLOR_BROWN 180, 130, 97 +#define TIRESMOKE_COLOR_PATRIOT 0, 0, 0 + +static bool GetVehicleInfoForClanLogo(Hash vehicleModel, rage::vector3& x, rage::vector3& y, rage::vector3& z, float& scale) +{ + switch (vehicleModel) + { + case VEHICLE_DOMINATOR: + x = { 0.0f, 1.4f, 1.0f }; + y = { 0.0f, 0.0f, -1.0f }; + z = { -1.0f, 0.0f, 0.0f }; + scale = 0.5f; + return true; + case VEHICLE_FELTZER2: + x = { 0.0f, 1.4f, 1.0f }; + y = { 0.0f, 0.0f, -1.0f }; + z = { -1.0f, 0.0f, 0.0f }; + scale = 0.5f; + return true; + case VEHICLE_ADDER: + x = { 0.0f, 1.54f, 1.0f }; + y = { 0.0f, 0.0f, -1.0f }; + z = { -1.0f, 0.0f, 0.0f }; + scale = 0.5f; + return true; + case VEHICLE_AKUMA: + x = { 0.0f, 0.06f, 1.0f }; + y = { 0.0f, 0.0f, -1.0f }; + z = { -1.0f, 0.0f, 0.0f }; + scale = 0.18f; + return true; + case VEHICLE_ASEA: + x = { 0.0f, 1.5f, 1.0f }; + y = { 0.0f, 0.0f, -1.0f }; + z = { -1.0f, 0.0f, 0.0f }; + scale = 0.5f; + return true; + case VEHICLE_ASTEROPE: + x = { 0.0f, 1.7f, 1.0f }; + y = { 0.0f, 0.0f, -1.0f }; + z = { -1.0f, 0.0f, 0.0f }; + scale = 0.5f; + return true; + case VEHICLE_BAGGER: + x = { -1.0f, 0.16f, 0.283f }; + y = { 1.0f, 0.0f, 0.0f }; + z = { 0.0f, -1.0f, 0.0f }; + scale = 0.09f; + return true; + case VEHICLE_BALLER: + x = { 0.0f, 1.4f, 1.0f }; + y = { 0.0f, 0.0f, -1.0f }; + z = { -1.0f, 0.0f, 0.0f }; + scale = 0.5f; + return true; + case VEHICLE_BALLER2: + x = { 0.0f, 1.55f, 1.0f }; + y = { 0.0f, 0.0f, -1.0f }; + z = { -1.0f, 0.0f, 0.0f }; + scale = 0.5f; + return true; + case VEHICLE_BANSHEE: + x = { 0.0f, 0.94f, 1.0f }; + y = { 0.0f, 0.0f, -1.0f }; + z = { -1.0f, 0.0f, 0.0f }; + scale = 0.4f; + return true; + case VEHICLE_BATI: + x = { 0.0f, 0.2f, 1.0f }; + y = { 0.0f, 0.0f, -1.0f }; + z = { -1.0f, 0.0f, 0.0f }; + scale = 0.15f; + return true; + case VEHICLE_BATI2: + x = { 0.0f, 0.2f, 1.0f }; + y = { 0.0f, 0.0f, -1.0f }; + z = { -1.0f, 0.0f, 0.0f }; + scale = 0.15f; + return true; + case VEHICLE_BFINJECTION: + x = { -1.0f, 0.08f, 0.19f }; + y = { 1.0f, 0.0f, 0.0f }; + z = { 0.0f, -1.0f, 0.0f }; + scale = 0.5f; + return true; + case VEHICLE_BISON: + x = { 0.0f, 1.99f, 1.0f }; + y = { 0.0f, 0.0f, -1.0f }; + z = { -1.0f, 0.0f, 0.0f }; + scale = 0.5f; + return true; + case VEHICLE_BJXL: + x = { 0.0f, 1.2f, 1.0f }; + y = { 0.0f, 0.0f, -1.0f }; + z = { -1.0f, 0.0f, 0.0f }; + scale = 0.4f; + return true; + case VEHICLE_BLISTA: + x = { 0.0f, 1.49f, 1.0f }; + y = { 0.0f, 0.0f, -1.0f }; + z = { -1.0f, 0.0f, 0.0f }; + scale = 0.29f; + return true; + case VEHICLE_BOBCATXL: + x = { 0.0f, 1.68f, 1.0f }; + y = { 0.0f, 0.0f, -1.0f }; + z = { -1.0f, 0.0f, 0.0f }; + scale = 0.65f; + return true; + case VEHICLE_BODHI2: + x = { 0.0f, 1.95f, 1.0f }; + y = { 0.0f, 0.0f, -1.0f }; + z = { -1.0f, 0.0f, 0.0f }; + scale = 0.5f; + return true; + case VEHICLE_BUCCANEER: + x = { 0.0f, 2.01f, 1.0f }; + y = { 0.0f, 0.0f, -1.0f }; + z = { -1.0f, 0.0f, 0.0f }; + scale = 0.37f; + return true; + case VEHICLE_BUFFALO: + x = { 0.0f, 1.6f, 1.0f }; + y = { 0.0f, 0.0f, -1.0f }; + z = { -1.0f, 0.0f, 0.0f }; + scale = 0.5f; + return true; + case VEHICLE_BUFFALO2: + x = { 0.0f, 2.24f, 1.0f }; + y = { 0.0f, 0.0f, -1.0f }; + z = { -1.0f, 0.0f, 0.0f }; + scale = 0.2f; + return true; + case VEHICLE_BULLET: + x = { -1.57f, 0.07f, 0.16f }; + y = { 1.0f, 0.0f, 0.0f }; + z = { 0.0f, -1.0f, 0.0f }; + scale = 0.3f; + return true; + case VEHICLE_CARBONRS: + x = { 0.0f, 0.09f, 1.0f }; + y = { 0.0f, 0.0f, -1.0f }; + z = { -1.0f, 0.0f, 0.0f }; + scale = 0.18f; + return true; + case VEHICLE_CARBONIZZARE: + x = { 0.0f, 1.45f, 1.0f }; + y = { 0.0f, -0.11f, -1.0f }; + z = { -1.0f, 0.0f, 0.0f }; + scale = 0.5f; + return true; + case VEHICLE_CAVALCADE: + x = { 0.0f, 1.51f, 1.0f }; + y = { 0.0f, 0.0f, -1.0f }; + z = { -1.0f, 0.0f, 0.0f }; + scale = 0.55f; + return true; + case VEHICLE_CAVALCADE2: + x = { 0.0f, 1.59f, 1.0f }; + y = { 0.0f, 0.0f, -1.0f }; + z = { -1.0f, 0.0f, 0.0f }; + scale = 0.5f; + return true; + case VEHICLE_CHEETAH: + x = { -1.61f, 0.26f, 0.17f }; + y = { 0.9f, 0.0f, 0.0f }; + z = { 0.0f, -1.0f, 0.0f }; + scale = 0.35f; + return true; + case VEHICLE_COGCABRIO: + x = { 0.0f, 1.42f, 1.0f }; + y = { 0.0f, 0.0f, -1.0f }; + z = { -1.0f, 0.0f, 0.0f }; + scale = 0.5f; + return true; + case VEHICLE_COMET2: + x = { 0.0f, 1.35f, 1.0f }; + y = { 0.0f, 0.0f, -1.0f }; + z = { -1.0f, 0.0f, 0.0f }; + scale = 0.5f; + return true; + case VEHICLE_COQUETTE: + x = { 0.0f, 0.96f, 1.0f }; + y = { 0.0f, 0.0f, -1.0f }; + z = { -1.0f, 0.0f, 0.0f }; + scale = 0.22f; + return true; + case VEHICLE_DAEMON: + x = { 0.0f, 0.06f, 1.0f }; + y = { 0.0f, 0.0f, -1.0f }; + z = { -1.0f, 0.0f, 0.0f }; + scale = 0.15f; + return true; + case VEHICLE_DILETTANTE: + x = { 0.0f, 1.59f, 1.0f }; + y = { 0.0f, 0.0f, -1.0f }; + z = { -1.0f, 0.0f, 0.0f }; + scale = 0.5f; + return true; + case VEHICLE_DLOADER: + x = { 0.0f, 1.52f, 1.0f }; + y = { 0.0f, 0.0f, -1.0f }; + z = { -1.0f, 0.0f, 0.0f }; + scale = 0.5f; + return true; + case VEHICLE_DOUBLE: + x = { 0.0f, 0.08f, 1.0f }; + y = { 0.0f, 0.0f, -1.0f }; + z = { -1.0f, 0.0f, 0.0f }; + scale = 0.2f; + return true; + case VEHICLE_DUBSTA: + x = { -1.71f, 0.31f, 0.27f }; + y = { 1.0f, 0.0f, 0.0f }; + z = { 0.0f, -1.0f, 0.0f }; + scale = 0.5f; + return true; + case VEHICLE_DUBSTA2: + x = { 0.0f, 1.4f, 1.0f }; + y = { 0.0f, 0.0f, -1.0f }; + z = { -1.0f, 0.0f, 0.0f }; + scale = 0.75f; + return true; + case VEHICLE_ELEGY2: + x = { 0.0f, 1.14f, 1.0f }; + y = { 0.0f, 0.0f, -1.0f }; + z = { -1.0f, 0.0f, 0.0f }; + scale = 0.35f; + return true; + case VEHICLE_EMPEROR: + x = { 0.0f, 1.31f, 1.0f }; + y = { 0.0f, 0.0f, -1.0f }; + z = { -1.0f, 0.0f, 0.0f }; + scale = 0.5f; + return true; + case VEHICLE_EMPEROR2: + x = { 0.0f, 1.31f, 1.0f }; + y = { 0.0f, 0.0f, -1.0f }; + z = { -1.0f, 0.0f, 0.0f }; + scale = 0.5f; + return true; + case VEHICLE_ENTITYXF: + x = { -1.52f, 0.41f, 0.15f }; + y = { 1.0f, 0.0f, 0.0f }; + z = { 0.0f, -1.0f, 0.0f }; + scale = 0.3f; + return true; + case VEHICLE_EXEMPLAR: + x = { 0.0f, 1.32f, 1.0f }; + y = { 0.0f, 0.0f, -1.0f }; + z = { -1.0f, 0.0f, 0.0f }; + scale = 0.5f; + return true; + case VEHICLE_F620: + x = { 0.0f, 1.28f, 1.0f }; + y = { 0.0f, 0.0f, -1.0f }; + z = { -1.0f, 0.0f, 0.0f }; + scale = 0.45f; + return true; + case VEHICLE_FAGGIO2: + x = { -1.0f, -0.48f, -0.11f }; + y = { 1.0f, 0.0f, 0.0f }; + z = { 0.0f, -1.0f, 0.0f }; + scale = 0.15f; + return true; + case VEHICLE_FELON: + x = { 0.0f, 1.24f, 1.0f }; + y = { 0.0f, 0.0f, -1.0f }; + z = { -1.0f, 0.0f, 0.0f }; + scale = 0.35f; + return true; + case VEHICLE_FELON2: + x = { 0.0f, 1.24f, 1.0f }; + y = { 0.0f, 0.0f, -1.0f }; + z = { -1.0f, 0.0f, 0.0f }; + scale = 0.35f; + return true; + case VEHICLE_FQ2: + x = { 0.0f, 1.4f, 1.0f }; + y = { 0.0f, 0.0f, -1.0f }; + z = { -1.0f, 0.0f, 0.0f }; + scale = 0.5f; + return true; + case VEHICLE_FUGITIVE: + x = { 0.0f, 1.62f, 1.0f }; + y = { 0.0f, 0.0f, -1.0f }; + z = { -1.0f, 0.0f, 0.0f }; + scale = 0.5f; + return true; + case VEHICLE_FUSILADE: + x = { 0.0f, 0.98f, 1.0f }; + y = { 0.0f, 0.0f, -1.0f }; + z = { -1.0f, 0.0f, 0.0f }; + scale = 0.2f; + return true; + case VEHICLE_FUTO: + x = { 0.0f, 1.28f, 1.0f }; + y = { 0.0f, 0.0f, -1.0f }; + z = { -1.0f, 0.0f, 0.0f }; + scale = 0.45f; + return true; + case VEHICLE_GAUNTLET: + x = { 0.0f, 1.735f, 1.05f }; + y = { 0.0f, 0.0f, -1.0f }; + z = { -1.0f, 0.0f, 0.0f }; + scale = 0.33f; + return true; + case VEHICLE_GRANGER: + x = { 0.0f, 2.07f, 1.0f }; + y = { 0.0f, 0.0f, -1.0f }; + z = { -1.0f, 0.0f, 0.0f }; + scale = 0.5f; + return true; + case VEHICLE_GRESLEY: + x = { 0.0f, 1.75f, 1.0f }; + y = { 0.0f, 0.0f, -1.0f }; + z = { -1.0f, 0.0f, 0.0f }; + scale = 0.5f; + return true; + case VEHICLE_HABANERO: + x = { 0.0f, 1.69f, 1.0f }; + y = { 0.0f, 0.0f, -1.0f }; + z = { -1.0f, 0.0f, 0.0f }; + scale = 0.5f; + return true; + case VEHICLE_HEXER: + x = { 0.0f, -0.46f, 1.0f }; + y = { 0.0f, 1.0f, -1.0f }; + z = { -1.0f, 0.0f, 0.0f }; + scale = 0.14f; + return true; + case VEHICLE_HOTKNIFE: + x = { -1.43f, -0.14f, 0.18f }; + y = { 1.0f, 0.0f, 0.0f }; + z = { 0.0f, -1.0f, 0.0f }; + scale = 0.5f; + return true; + case VEHICLE_INFERNUS: + x = { -1.0f, 0.33f, 0.08f }; + y = { 1.0f, 0.0f, 0.0f }; + z = { 0.0f, -1.0f, 0.06f }; + scale = 0.25f; + return true; + case VEHICLE_INGOT: + x = { 0.0f, 1.58f, 1.0f }; + y = { 0.0f, 0.0f, -1.0f }; + z = { -1.0f, 0.0f, 0.0f }; + scale = 0.5f; + return true; + case VEHICLE_INTRUDER: + x = { 0.0f, 1.623f, 1.0f }; + y = { 0.0f, 0.0f, -1.0f }; + z = { -1.0f, 0.0f, 0.0f }; + scale = 0.5f; + return true; + case VEHICLE_ISSI2: + x = { 0.0f, 1.21f, 1.0f }; + y = { 0.0f, 0.0f, -1.0f }; + z = { -1.0f, 0.0f, 0.0f }; + scale = 0.3f; + return true; + case VEHICLE_JACKAL: + x = { 0.0f, 1.36f, 1.0f }; + y = { 0.0f, 0.0f, -1.0f }; + z = { -1.0f, 0.0f, 0.0f }; + scale = 0.4f; + return true; + case VEHICLE_JB700: + x = { 0.0f, 1.2f, 1.0f }; + y = { 0.0f, 0.0f, -1.0f }; + z = { -1.0f, 0.0f, 0.0f }; + scale = 0.37f; + return true; + case VEHICLE_KHAMELION: + x = { 0.0f, 1.46f, 1.0f }; + y = { 0.0f, 0.0f, -1.0f }; + z = { -1.0f, 0.0f, 0.0f }; + scale = 0.475f; + return true; + case VEHICLE_LANDSTALKER: + x = { 0.0f, 1.83f, 1.0f }; + y = { 0.0f, 0.0f, -1.0f }; + z = { -1.0f, 0.0f, 0.0f }; + scale = 0.5f; + return true; + case VEHICLE_MANANA: + x = { 0.0f, 0.86f, 1.0f }; + y = { 0.0f, 0.0f, -1.0f }; + z = { -1.0f, 0.0f, 0.0f }; + scale = 0.37f; + return true; + case VEHICLE_MESA: + x = { 0.0f, 1.47f, 1.0f }; + y = { 0.0f, 0.0f, -1.0f }; + z = { -1.0f, 0.0f, 0.0f }; + scale = 0.5f; + return true; + case VEHICLE_MESA3: + x = { 0.0f, 1.47f, 1.0f }; + y = { 0.0f, 0.0f, -1.0f }; + z = { -1.0f, 0.0f, 0.0f }; + scale = 0.5f; + return true; + case VEHICLE_MINIVAN: + x = { 0.0f, 1.95f, 1.0f }; + y = { 0.0f, 0.0f, -1.0f }; + z = { -1.0f, 0.0f, 0.0f }; + scale = 0.5f; + return true; + case VEHICLE_MONROE: + x = { 0.0f, 1.23f, 1.0f }; + y = { 0.0f, 0.0f, -1.0f }; + z = { -1.0f, 0.0f, 0.0f }; + scale = 0.43f; + return true; + case VEHICLE_NEMESIS: + x = { 0.0f, 0.14f, 1.0f }; + y = { 0.0f, 0.0f, -1.0f }; + z = { -1.0f, 0.0f, 0.0f }; + scale = 0.1f; + return true; + case VEHICLE_NINEF: + x = { 0.0f, 1.7f, 1.0f }; + y = { 0.0f, 0.0f, -1.0f }; + z = { -1.0f, 0.0f, 0.0f }; + scale = 0.5f; + return true; + case VEHICLE_NINEF2: + x = { 0.0f, 1.7f, 1.0f }; + y = { 0.0f, 0.0f, -1.0f }; + z = { -1.0f, 0.0f, 0.0f }; + scale = 0.5f; + return true; + case VEHICLE_ORACLE: + x = { 0.0f, 1.6f, 1.0f }; + y = { 0.0f, 0.0f, -1.0f }; + z = { -1.0f, 0.0f, 0.0f }; + scale = 0.5f; + return true; + case VEHICLE_ORACLE2: + x = { 0.0f, 1.7f, 1.0f }; + y = { 0.0f, 0.0f, -1.0f }; + z = { -1.0f, 0.0f, 0.0f }; + scale = 0.5f; + return true; + case VEHICLE_PATRIOT: + x = { 0.0f, 1.75f, 1.0f }; + y = { 0.0f, 0.0f, -1.0f }; + z = { -1.0f, 0.0f, 0.0f }; + scale = 0.5f; + return true; + case VEHICLE_PCJ: + x = { 0.0f, 0.02f, 1.0f }; + y = { 0.0f, 0.0f, -1.0f }; + z = { -1.0f, 0.0f, 0.0f }; + scale = 0.15f; + return true; + case VEHICLE_PENUMBRA: + x = { 0.0f, 1.46f, 1.0f }; + y = { 0.0f, 0.0f, -1.0f }; + z = { -1.0f, 0.0f, 0.0f }; + scale = 0.5f; + return true; + case VEHICLE_PEYOTE: + x = { -1.0f, -0.36f, 0.2125f }; + y = { 1.0f, 0.0f, 0.0f }; + z = { 0.0f, -1.0f, 0.0f }; + scale = 0.5f; + return true; + case VEHICLE_PHOENIX: + x = { 0.0f, 1.833f, 1.0f }; + y = { 0.0f, 0.0f, -1.0f }; + z = { -1.0f, 0.0f, 0.0f }; + scale = 0.44f; + return true; + case VEHICLE_PICADOR: + x = { 0.0f, 1.43f, 1.0f }; + y = { 0.0f, 0.0f, -1.0f }; + z = { -1.0f, 0.0f, 0.0f }; + scale = 0.515f; + return true; + case VEHICLE_PRAIRIE: + x = { 0.0f, 1.41f, 1.0f }; + y = { 0.0f, 0.0f, -1.0f }; + z = { -1.0f, 0.0f, 0.0f }; + scale = 0.31f; + return true; + case VEHICLE_PREMIER: + x = { 0.0f, 1.6f, 1.0f }; + y = { 0.0f, 0.0f, -1.0f }; + z = { -1.0f, 0.0f, 0.0f }; + scale = 0.5f; + return true; + case VEHICLE_PRIMO: + x = { 0.0f, 1.62f, 1.0f }; + y = { 0.0f, 0.0f, -1.0f }; + z = { -1.0f, 0.0f, 0.0f }; + scale = 0.5f; + return true; + case VEHICLE_RADI: + x = { 0.0f, 1.74f, 1.0f }; + y = { 0.0f, 0.0f, -1.0f }; + z = { -1.0f, 0.0f, 0.0f }; + scale = 0.5f; + return true; + case VEHICLE_RANCHERXL: + x = { 0.0f, 1.54f, 1.0f }; + y = { 0.0f, 0.0f, -1.0f }; + z = { -1.0f, 0.0f, 0.0f }; + scale = 0.5f; + return true; + case VEHICLE_RAPIDGT: + x = { 0.0f, 1.263f, 1.0f }; + y = { 0.0f, 0.0f, -1.0f }; + z = { -1.0f, 0.0f, 0.0f }; + scale = 0.5f; + return true; + case VEHICLE_RAPIDGT2: + x = { 0.0f, 1.263f, 1.0f }; + y = { 0.0f, 0.0f, -1.0f }; + z = { -1.0f, 0.0f, 0.0f }; + scale = 0.5f; + return true; + case VEHICLE_RATLOADER: + x = { -1.78f, 0.52f, 0.52f }; + y = { 1.0f, 0.0f, 0.0f }; + z = { 0.0f, -1.0f, 0.0f }; + scale = 0.45f; + return true; + case VEHICLE_REBEL: + x = { -1.22f, 0.6f, 0.44f }; + y = { 1.0f, 0.0f, 0.0f }; + z = { 0.0f, -1.0f, 0.0f }; + scale = 0.5f; + return true; + case VEHICLE_REBEL2: + x = { 0.0f, 1.623f, 1.0f }; + y = { 0.0f, 0.0f, -1.0f }; + z = { -1.0f, 0.0f, 0.0f }; + scale = 0.5f; + return true; + case VEHICLE_REGINA: + x = { 0.0f, 1.473f, 1.0f }; + y = { 0.0f, 0.0f, -1.0f }; + z = { -1.0f, 0.0f, 0.0f }; + scale = 0.5f; + return true; + case VEHICLE_ROCOTO: + x = { 0.0f, 1.623f, 1.0f }; + y = { 0.0f, 0.0f, -1.0f }; + z = { -1.0f, 0.0f, 0.0f }; + scale = 0.5f; + return true; + case VEHICLE_ROMERO: + x = { 0.0f, 1.83f, 1.0f }; + y = { 0.0f, 0.0f, -1.0f }; + z = { -1.0f, 0.0f, 0.0f }; + scale = 0.5f; + return true; + case VEHICLE_RUFFIAN: + x = { 0.0f, -0.02f, 1.0f }; + y = { 0.0f, 0.0f, -1.0f }; + z = { -1.0f, 0.0f, 0.0f }; + scale = 0.19f; + return true; + case VEHICLE_RUINER: + x = { 0.0f, 1.34f, 1.0f }; + y = { 0.0f, 0.0f, -1.0f }; + z = { -1.0f, 0.0f, 0.0f }; + scale = 0.5f; + return true; + case VEHICLE_SABREGT: + x = { -1.0f, 0.0f, 0.14f }; + y = { 1.0f, 0.0f, 0.0f }; + z = { 0.0f, -1.0f, 0.015f }; + scale = 0.35f; + return true; + case VEHICLE_SADLER: + x = { 0.0f, 2.26f, 1.0f }; + y = { 0.0f, 0.0f, -1.0f }; + z = { -1.0f, 0.0f, 0.0f }; + scale = 0.5f; + return true; + case VEHICLE_SANDKING: + x = { 0.0f, 2.496f, 1.55f }; + y = { 0.0f, 0.0f, -1.0f }; + z = { -1.0f, 0.0f, 0.0f }; + scale = 0.5f; + return true; + case VEHICLE_SANDKING2: + x = { 0.0f, 2.286f, 1.55f }; + y = { 0.0f, 0.0f, -1.0f }; + z = { -1.0f, 0.0f, 0.0f }; + scale = 0.5f; + return true; + case VEHICLE_SCHAFTER2: + x = { 0.0f, 1.56f, 1.0f }; + y = { 0.0f, 0.0f, -1.0f }; + z = { -1.0f, 0.0f, 0.0f }; + scale = 0.28f; + return true; + case VEHICLE_SCHWARZER: + x = { 0.0f, 1.43f, 1.0f }; + y = { 0.0f, 0.0f, -1.0f }; + z = { -1.0f, 0.0f, 0.0f }; + scale = 0.28f; + return true; + case VEHICLE_SEMINOLE: + x = { 0.0f, 1.45f, 1.0f }; + y = { 0.0f, 0.0f, -1.0f }; + z = { -1.0f, 0.0f, 0.0f }; + scale = 0.5f; + return true; + case VEHICLE_SENTINEL: + x = { 0.0f, 1.52f, 1.0f }; + y = { 0.0f, 0.0f, -1.0f }; + z = { -1.0f, 0.0f, 0.0f }; + scale = 0.5f; + return true; + case VEHICLE_SENTINEL2: + x = { 0.0f, 1.52f, 1.0f }; + y = { 0.0f, 0.0f, -1.0f }; + z = { -1.0f, 0.0f, 0.0f }; + scale = 0.5f; + return true; + case VEHICLE_SERRANO: + x = { 0.0f, 1.68f, 1.0f }; + y = { 0.0f, 0.0f, -1.0f }; + z = { -1.0f, 0.0f, 0.0f }; + scale = 0.49f; + return true; + case VEHICLE_STANIER: + x = { 0.0f, 1.55f, 1.0f }; + y = { 0.0f, 0.0f, -1.0f }; + z = { -1.0f, 0.0f, 0.0f }; + scale = 0.5f; + return true; + case VEHICLE_STINGER: + x = { 0.0f, 1.3f, 1.0f }; + y = { 0.0f, 0.0f, -1.0f }; + z = { -1.0f, 0.0f, 0.0f }; + scale = 0.5f; + return true; + case VEHICLE_STINGERGT: + x = { -1.0f, -0.17f, 0.12f }; + y = { 1.0f, 0.0f, 0.0f }; + z = { 0.0f, -1.0f, 0.0f }; + scale = 0.35f; + return true; + case VEHICLE_STRATUM: + x = { 0.0f, 1.52f, 1.0f }; + y = { 0.0f, 0.0f, -1.0f }; + z = { -1.0f, 0.0f, 0.0f }; + scale = 0.5f; + return true; + case VEHICLE_SULTAN: + x = { 0.0f, 1.77f, 1.0f }; + y = { 0.0f, 0.0f, -1.0f }; + z = { -1.0f, 0.0f, 0.0f }; + scale = 0.33f; + return true; + case VEHICLE_SUPERD: + x = { 0.0f, 1.62f, 1.0f }; + y = { 0.0f, 0.0f, -1.0f }; + z = { -1.0f, 0.0f, 0.0f }; + scale = 0.5f; + return true; + case VEHICLE_SURANO: + x = { 0.0f, 1.38f, 1.0f }; + y = { 0.0f, 0.0f, -1.0f }; + z = { -1.0f, 0.0f, 0.0f }; + scale = 0.5f; + return true; + case VEHICLE_SURFER: + x = { 0.0f, 2.48f, 0.26f }; + y = { 0.0f, -1.0f, -0.212f }; + z = { -1.0f, 0.0f, 0.0f }; + scale = 0.32f; + return true; + case VEHICLE_SURFER2: + x = { 0.0f, 2.48f, 0.26f }; + y = { 0.0f, -1.0f, -0.212f }; + z = { -1.0f, 0.0f, 0.0f }; + scale = 0.32f; + return true; + case VEHICLE_SURGE: + x = { 0.0f, 1.69f, 1.0f }; + y = { 0.0f, 0.0f, -1.0f }; + z = { -1.0f, 0.0f, 0.0f }; + scale = 0.5f; + return true; + case VEHICLE_TAILGATER: + x = { 0.0f, 1.783f, 1.0f }; + y = { 0.0f, 0.0f, -1.0f }; + z = { -1.0f, 0.0f, 0.0f }; + scale = 0.4f; + return true; + case VEHICLE_TORNADO: + x = { -1.23f, 0.11f, -0.21f }; + y = { 1.0f, 0.0f, 0.0f }; + z = { 0.0f, -1.0f, 0.0f }; + scale = 0.4f; + return true; + case VEHICLE_TORNADO2: + x = { 0.0f, 1.44f, 1.0f }; + y = { 0.0f, 0.0f, -1.0f }; + z = { -1.0f, 0.0f, 0.0f }; + scale = 0.5f; + return true; + case VEHICLE_TORNADO3: + x = { 0.0f, 1.44f, 1.0f }; + y = { 0.0f, 0.0f, -1.0f }; + z = { -1.0f, 0.0f, 0.0f }; + scale = 0.5f; + return true; + case VEHICLE_VACCA: + x = { 0.0f, 1.76f, 1.0f }; + y = { 0.0f, 0.0f, -1.0f }; + z = { -1.0f, 0.0f, 0.0f }; + scale = 0.35f; + return true; + case VEHICLE_VADER: + x = { 0.0f, 0.08f, 1.0f }; + y = { 0.0f, 0.0f, -1.0f }; + z = { -1.0f, 0.0f, 0.0f }; + scale = 0.15f; + return true; + case VEHICLE_VIGERO: + x = { -1.0f, 0.11f, -0.15f }; + y = { 1.0f, 0.0f, 0.0f }; + z = { 0.0f, -1.0f, 0.0f }; + scale = 0.45f; + return true; + case VEHICLE_VOLTIC: + x = { 0.0f, 1.763f, 1.0f }; + y = { 0.0f, 0.0f, -1.0f }; + z = { -1.0f, 0.0f, 0.0f }; + scale = 0.29f; + return true; + case VEHICLE_VOODOO2: + x = { 0.0f, 1.48f, 1.0f }; + y = { 0.0f, 0.0f, -1.0f }; + z = { -1.0f, 0.0f, 0.0f }; + scale = 0.5f; + return true; + case VEHICLE_WASHINGTON: + x = { 0.0f, 1.61f, 1.0f }; + y = { 0.0f, 0.0f, -1.0f }; + z = { -1.0f, 0.0f, 0.0f }; + scale = 0.5f; + return true; + case VEHICLE_YOUGA: + x = { 0.0f, 2.352f, 1.003f }; + y = { 0.0f, -1.0f, -1.0f }; + z = { -1.0f, 0.0f, 0.0f }; + scale = 0.175f; + return true; + case VEHICLE_ZION: + x = { 0.0f, 1.48f, 1.0f }; + y = { 0.0f, 0.0f, -1.0f }; + z = { -1.0f, 0.0f, 0.0f }; + scale = 0.45f; + return true; + case VEHICLE_ZION2: + x = { 0.0f, 1.48f, 1.0f }; + y = { 0.0f, 0.0f, -1.0f }; + z = { -1.0f, 0.0f, 0.0f }; + scale = 0.45f; + return true; + case VEHICLE_ZTYPE: + x = { -0.96f, -0.69f, 0.35f }; + y = { 1.0f, 0.0f, 0.0f }; + z = { 0.0f, -1.0f, 0.0f }; + scale = 0.4f; + return true; + case VEHICLE_KALAHARI: + x = { -1.0f, 0.18f, 0.1f }; + y = { 1.0f, 0.0f, 0.0f }; + z = { 0.0f, -1.0f, 0.0f }; + scale = 0.5f; + return true; + case VEHICLE_PARADISE: + x = { 0.0f, 2.23f, 1.0f }; + y = { 0.0f, -0.22f, -1.0f }; + z = { -1.0f, 0.0f, 0.0f }; + scale = 0.5f; + return true; + case VEHICLE_ALPHA: + x = { -1.0f, 0.18f, -0.05f }; + y = { 1.0f, 0.0f, 0.0f }; + z = { 0.0f, -1.0f, 0.0f }; + scale = 0.5f; + return true; + case VEHICLE_HUNTLEY: + x = { 0.0f, 1.52f, 0.99f }; + y = { 0.0f, 0.0f, -1.0f }; + z = { -1.0f, 0.0f, 0.0f }; + scale = 0.4f; + return true; + case VEHICLE_ZENTORNO: + x = { -1.24f, 0.42f, -0.14f }; + y = { 1.0f, 0.0f, 0.0f }; + z = { 0.0f, -1.0f, 0.035f }; + scale = 0.3f; + return true; + case VEHICLE_JESTER: + x = { -1.0f, 0.17f, 0.22f }; + y = { 1.0f, 0.0f, 0.0f }; + z = { 0.0f, -1.0f, 0.05f }; + scale = 0.33f; + return true; + case VEHICLE_MASSACRO: + x = { 0.0f, 1.37f, 1.0f }; + y = { 0.0f, 0.0f, -1.0f }; + z = { -1.0f, 0.0f, 0.0f }; + scale = 0.33f; + return true; + case VEHICLE_TURISMOR: + x = { -1.0f, 0.3f, 0.27f }; + y = { 1.0f, 0.0f, 0.0f }; + z = { 0.0f, -1.0f, 0.0f }; + scale = 0.35f; + return true; + case VEHICLE_THRUST: + x = { -1.0f, 0.405f, 0.4625f }; + y = { 1.0f, 0.0f, 0.0f }; + z = { 0.0f, -1.0f, 0.0f }; + scale = 0.1625f; + return true; + case VEHICLE_BTYPE: + x = { 0.0f, 1.143f, 1.0f }; + y = { 0.0f, 0.0f, -1.0f }; + z = { -1.0f, 0.0f, 0.0f }; + scale = 0.7125f; + return true; + case VEHICLE_RHAPSODY: + x = { -1.0f, -0.47f, -0.25f }; + y = { 1.0f, 0.0f, 0.0f }; + z = { 0.0f, -1.0f, 0.0f }; + scale = 0.2625f; + return true; + case VEHICLE_GLENDALE: + x = { 0.0f, 1.683f, 1.0f }; + y = { 0.0f, 0.0f, -1.0f }; + z = { -1.0f, 0.0f, 0.0f }; + scale = 0.775f; + return true; + case VEHICLE_WARRENER: + x = { 0.0f, 1.623f, 1.0f }; + y = { 0.0f, 0.0f, -1.0f }; + z = { -1.0f, 0.0f, 0.0f }; + scale = 0.775f; + return true; + case VEHICLE_BLADE: + x = { -1.0f, 0.445f, 0.2075f }; + y = { 1.0f, 0.0f, 0.0f }; + z = { 0.0f, -1.0f, 0.0f }; + scale = 0.325f; + return true; + case VEHICLE_PANTO: + x = { -1.0f, 0.0f, 0.335f }; + y = { 1.0f, 0.0f, 0.0f }; + z = { 0.0f, -1.0f, 0.0f }; + scale = 0.5f; + return true; + case VEHICLE_DUBSTA3: + x = { -1.0f, 0.34f, 0.2975f }; + y = { 1.0f, 0.0f, 0.0f }; + z = { 0.0f, -1.0f, 0.0f }; + scale = 0.5f; + return true; + case VEHICLE_PIGALLE: + x = { 0.0f, 1.623f, 1.0f }; + y = { 0.0f, 0.0f, -1.0f }; + z = { -1.0f, 0.0f, 0.0f }; + scale = 0.5f; + return true; + case VEHICLE_COQUETTE2: + x = { -1.0f, -0.1775f, 0.195f }; + y = { 1.0f, 0.0f, 0.0f }; + z = { 0.0f, -1.0f, 0.0f }; + scale = 0.35f; + return true; + case VEHICLE_INNOVATION: + x = { 0.0f, 0.15f, 1.0f }; + y = { 0.0f, 0.0f, -1.0f }; + z = { -1.0f, 0.0f, 0.0f }; + scale = 0.18f; + return true; + case VEHICLE_HAKUCHOU: + x = { 0.0f, 0.27f, 0.845f }; + y = { 0.0f, 0.0f, -1.0f }; + z = { -1.0f, 0.0f, 0.0f }; + scale = 0.16f; + return true; + case VEHICLE_FUROREGT: + x = { -1.0f, 0.0f, 0.2075f }; + y = { 1.0f, 0.0f, 0.0f }; + z = { 0.0f, -1.0f, 0.0f }; + scale = 0.45f; + return true; + case VEHICLE_RATLOADER2: + x = { -1.78f, 0.52f, 0.52f }; + y = { 1.0f, 0.0f, 0.0f }; + z = { 0.0f, -1.0f, 0.0f }; + scale = 0.45f; + return true; + case VEHICLE_SLAMVAN: + x = { -1.0f, 0.275f, 0.195f }; + y = { 1.0f, 0.0f, 0.0f }; + z = { 0.0f, -1.0f, 0.0f }; + scale = 0.5f; + return true; + case VEHICLE_DUKES2: + x = { -1.0f, 0.0f, 0.0f }; + y = { 1.0f, 0.0f, 0.0f }; + z = { 0.0f, -1.0f, 0.0f }; + scale = 0.375f; + return true; + case VEHICLE_DUKES: + x = { -1.0f, 0.0f, 0.0375f }; + y = { 1.0f, 0.0f, 0.0f }; + z = { 0.0f, -1.0f, 0.0f }; + scale = 0.3875f; + return true; + case VEHICLE_STALION: + x = { -1.0f, 0.0f, 0.0925f }; + y = { 1.0f, 0.0f, 0.0f }; + z = { 0.0f, -1.0f, 0.0f }; + scale = 0.4375f; + return true; + case VEHICLE_BLISTA2: + x = { -1.0f, 0.5325f, 0.245f }; + y = { 1.0f, 0.0f, 0.0f }; + z = { 0.0f, -1.0f, 0.0f }; + scale = 0.2875f; + return true; + case VEHICLE_CASCO: + x = { 0.0f, 0.94f, 1.03f }; + y = { 0.0f, -0.03f, -1.0f }; + z = { -1.0f, 0.0f, 0.0f }; + scale = 0.3f; + return true; + case VEHICLE_ENDURO: + x = { 0.0f, -0.17f, 1.0f }; + y = { 0.0f, 0.34f, -0.786f }; + z = { -1.0f, 0.0f, 0.0f }; + scale = 0.15f; + return true; + case VEHICLE_GBURRITO2: + x = { 0.0f, 2.32f, 0.94f }; + y = { 0.0f, -0.182f, -1.0f }; + z = { -1.0f, 0.0f, 0.0f }; + scale = 0.4f; + return true; + case VEHICLE_GUARDIAN: + x = { -1.94f, 1.07f, 0.38f }; + y = { 1.0f, 0.0f, 0.0f }; + z = { 0.0f, -1.0f, 0.0f }; + scale = 0.35f; + return true; + case VEHICLE_KURUMA: + case VEHICLE_KURUMA2: + x = { -1.0f, 0.2475f, -0.175f }; + y = { 1.0f, 0.0f, 0.0f }; + z = { 0.0f, -1.0f, 0.0f }; + scale = 0.435f; + return true; + case VEHICLE_LECTRO: + x = { 0.0f, 0.3f, 1.0f }; + y = { 0.0f, 0.0f, -1.0f }; + z = { -1.0f, 0.0f, 0.0f }; + scale = 0.09f; + return true; + case VEHICLE_FELTZER3: + x = { 0.0f, 1.4f, 1.0f }; + y = { 0.0f, 0.0f, -1.0f }; + z = { -1.0f, 0.0f, 0.0f }; + scale = 0.5f; + return true; + case VEHICLE_OSIRIS: + x = { -1.0f, 0.27f, -0.03f }; + y = { 1.0f, 0.0f, 0.0f }; + z = { 0.0f, -1.0f, 0.0f }; + scale = 0.3f; + return true; + case VEHICLE_VIRGO: + x = { -1.05f, 0.0f, 0.075f }; + y = { 1.0f, 0.0f, 0.0f }; + z = { 0.0f, -1.0f, 0.0f }; + scale = 0.45f; + return true; + case VEHICLE_WINDSOR: + x = { -1.2f, -0.39f, 0.12f }; + y = { 1.0f, 0.0f, 0.0f }; + z = { 0.0f, -1.0f, 0.0f }; + scale = 0.55f; + return true; + case VEHICLE_BRAWLER: + x = { -1.0f, -0.21f, 0.0f }; + y = { 1.0f, 0.0f, 0.0f }; + z = { 0.0f, -1.0f, 0.0f }; + scale = 0.45f; + return true; + case VEHICLE_CHINO: + x = { -1.05f, 0.0f, 0.075f }; + y = { 1.0f, 0.0f, 0.0f }; + z = { 0.0f, -1.0f, 0.0f }; + scale = 0.45f; + return true; + case VEHICLE_COQUETTE3: + x = { -1.0f, -0.1775f, 0.195f }; + y = { 1.0f, 0.0f, 0.0f }; + z = { 0.0f, -1.0f, 0.0f }; + scale = 0.35f; + return true; + case VEHICLE_T20: + x = { -1.0f, 0.4f, -0.12f }; + y = { 1.0f, 0.0f, 0.0f }; + z = { 0.0f, -1.0f, 0.0f }; + scale = 0.2f; + return true; + case VEHICLE_VINDICATOR: + x = { -1.0f, 0.21f, 0.24f }; + y = { 1.0f, 0.0f, 0.0f }; + z = { 0.0f, -1.0f, 0.0f }; + scale = 0.3f; + return true; + case VEHICLE_FACTION: + x = { -1.0f, 0.0f, 0.15f }; + y = { 1.0f, 0.0f, 0.0f }; + z = { 0.0f, -1.0f, 0.0f }; + scale = 0.5f; + return true; + case VEHICLE_FACTION2: + x = { -1.0f, 0.0f, 0.15f }; + y = { 1.0f, 0.0f, 0.0f }; + z = { 0.0f, -1.0f, 0.0f }; + scale = 0.5f; + return true; + case VEHICLE_BUCCANEER2: + x = { 0.0f, 2.01f, 1.0f }; + y = { 0.0f, 0.0f, -1.0f }; + z = { -1.0f, 0.0f, 0.0f }; + scale = 0.37f; + return true; + case VEHICLE_CHINO2: + x = { -1.05f, 0.0f, 0.075f }; + y = { 1.0f, 0.0f, 0.0f }; + z = { 0.0f, -1.0f, 0.0f }; + scale = 0.45f; + return true; + case VEHICLE_MOONBEAM: + x = { 0.0f, 1.713f, 1.0f }; + y = { 0.0f, 0.0f, -1.0f }; + z = { -1.0f, 0.0f, 0.0f }; + scale = 0.5f; + return true; + case VEHICLE_MOONBEAM2: + x = { 0.0f, 1.713f, 1.0f }; + y = { 0.0f, 0.0f, -1.0f }; + z = { -1.0f, 0.0f, 0.0f }; + scale = 0.5f; + return true; + case VEHICLE_PRIMO2: + x = { -1.0f, 0.42f, 0.0f }; + y = { 1.0f, 0.0f, 0.0f }; + z = { 0.0f, -1.0f, 0.0f }; + scale = 0.5f; + return true; + case VEHICLE_VOODOO: + x = { -1.12f, 0.0f, 0.0f }; + y = { 1.0f, 0.0f, 0.0f }; + z = { 0.0f, -1.0f, 0.0f }; + scale = 0.5f; + return true; + case VEHICLE_FACTION3: + x = { -1.0f, 0.0f, 0.5f }; + y = { 1.0f, 0.0f, 0.0f }; + z = { 0.0f, -1.0f, 0.0f }; + scale = 0.5f; + return true; + case VEHICLE_SABREGT2: + x = { -1.0f, 0.0f, 0.14f }; + y = { 1.0f, 0.0f, 0.0f }; + z = { 0.0f, -1.0f, 0.015f }; + scale = 0.35f; + return true; + case VEHICLE_TORNADO5: + x = { -1.0f, 0.15f, -0.09f }; + y = { 1.0f, 0.0f, 0.0f }; + z = { 0.0f, -1.0f, 0.0f }; + scale = 0.45f; + return true; + case VEHICLE_VIRGO2: + x = { -1.0f, 0.0f, 0.1225f }; + y = { 1.0f, 0.0f, 0.0f }; + z = { 0.0f, -1.0f, 0.0f }; + scale = 0.375f; + return true; + case VEHICLE_VIRGO3: + x = { -1.0f, 0.0f, 0.1225f }; + y = { 1.0f, 0.0f, 0.0f }; + z = { 0.0f, -1.0f, 0.0f }; + scale = 0.375f; + return true; + case VEHICLE_MINIVAN2: + x = { 0.0f, 1.95f, 1.0f }; + y = { 0.0f, 0.0f, -1.0f }; + z = { -1.0f, 0.0f, 0.0f }; + scale = 0.5f; + return true; + case VEHICLE_SLAMVAN3: + x = { -1.0f, 0.275f, 0.195f }; + y = { 1.0f, 0.0f, 0.0f }; + z = { 0.0f, -1.0f, 0.0f }; + scale = 0.5f; + return true; + case VEHICLE_BTYPE2: + x = { -1.0f, -0.1f, 0.4f }; + y = { 1.0f, 0.0f, 0.0f }; + z = { 0.0f, -1.0f, 0.0f }; + scale = 0.5f; + return true; + case VEHICLE_LURCHER: + x = { -1.0f, 0.0f, 0.3f }; + y = { 1.0f, 0.0f, 0.0f }; + z = { 0.0f, -1.0f, 0.0f }; + scale = 0.45f; + return true; + case VEHICLE_BALLER3: + x = { 0.0f, 1.4f, 1.0f }; + y = { 0.0f, 0.0f, -1.0f }; + z = { -1.0f, 0.0f, 0.0f }; + scale = 0.5f; + return true; + case VEHICLE_BALLER4: + x = { 0.0f, 1.4f, 1.0f }; + y = { 0.0f, 0.0f, -1.0f }; + z = { -1.0f, 0.0f, 0.0f }; + scale = 0.5f; + return true; + case VEHICLE_BALLER5: + x = { 0.0f, 1.4f, 1.0f }; + y = { 0.0f, 0.0f, -1.0f }; + z = { -1.0f, 0.0f, 0.0f }; + scale = 0.5f; + return true; + case VEHICLE_BALLER6: + x = { 0.0f, 1.4f, 1.0f }; + y = { 0.0f, 0.0f, -1.0f }; + z = { -1.0f, 0.0f, 0.0f }; + scale = 0.5f; + return true; + case VEHICLE_COG55: + x = { -1.0f, 0.37f, 0.13f }; + y = { 1.0f, 0.0f, 0.0f }; + z = { 0.0f, -1.0f, 0.0f }; + scale = 0.45f; + return true; + case VEHICLE_COG552: + x = { -1.0f, 0.37f, 0.13f }; + y = { 1.0f, 0.0f, 0.0f }; + z = { 0.0f, -1.0f, 0.0f }; + scale = 0.45f; + return true; + case VEHICLE_COGNOSCENTI: + x = { -1.0f, 0.37f, 0.13f }; + y = { 1.0f, 0.0f, 0.0f }; + z = { 0.0f, -1.0f, 0.0f }; + scale = 0.45f; + return true; + case VEHICLE_COGNOSCENTI2: + x = { -1.0f, 0.37f, 0.13f }; + y = { 1.0f, 0.0f, 0.0f }; + z = { 0.0f, -1.0f, 0.0f }; + scale = 0.45f; + return true; + case VEHICLE_MAMBA: + x = { -1.0f, -0.18f, 0.21f }; + y = { 1.0f, 0.0f, 0.0f }; + z = { 0.0f, -1.0f, 0.0f }; + scale = 0.35f; + return true; + case VEHICLE_NIGHTSHADE: + x = { -1.0f, -0.2f, 0.17f }; + y = { 1.0f, 0.0f, 0.0f }; + z = { 0.0f, -1.0f, 0.0f }; + scale = 0.45f; + return true; + case VEHICLE_SCHAFTER3: + x = { 0.0f, 1.56f, 1.0f }; + y = { 0.0f, 0.0f, -1.0f }; + z = { -1.0f, 0.0f, 0.0f }; + scale = 0.28f; + return true; + case VEHICLE_SCHAFTER4: + x = { 0.0f, 1.56f, 1.0f }; + y = { 0.0f, 0.0f, -1.0f }; + z = { -1.0f, 0.0f, 0.0f }; + scale = 0.28f; + return true; + case VEHICLE_SCHAFTER5: + x = { 0.0f, 1.56f, 1.0f }; + y = { 0.0f, 0.0f, -1.0f }; + z = { -1.0f, 0.0f, 0.0f }; + scale = 0.28f; + return true; + case VEHICLE_SCHAFTER6: + x = { 0.0f, 1.56f, 1.0f }; + y = { 0.0f, 0.0f, -1.0f }; + z = { -1.0f, 0.0f, 0.0f }; + scale = 0.28f; + return true; + case VEHICLE_VERLIERER2: + x = { -1.0f, -0.21f, 0.03f }; + y = { 1.0f, 0.0f, 0.0f }; + z = { 0.0f, -1.0f, 0.0f }; + scale = 0.4f; + return true; + case VEHICLE_TAMPA: + x = { -1.0f, 0.0f, 0.12f }; + y = { 1.0f, 0.0f, 0.0f }; + z = { 0.0f, -1.0f, 0.0f }; + scale = 0.45f; + return true; + case VEHICLE_BANSHEE2: + x = { -1.0f, -0.4f, 0.075f }; + y = { 1.0f, 0.0f, 0.0f }; + z = { 0.0f, -1.0f, 0.0f }; + scale = 0.4f; + return true; + case VEHICLE_SULTANRS: + x = { 0.0f, 1.77f, 1.0f }; + y = { 0.0f, 0.0f, -1.0f }; + z = { -1.0f, 0.0f, 0.0f }; + scale = 0.33f; + return true; + case VEHICLE_BTYPE3: + x = { -1.0f, -0.1f, 0.4f }; + y = { 1.0f, 0.0f, 0.0f }; + z = { 0.0f, -1.0f, 0.0f }; + scale = 0.5f; + return true; + case VEHICLE_BESTIAGTS: + x = { -1.0f, -0.06f, 0.4f }; + y = { 1.0f, 0.0f, 0.0f }; + z = { 0.0f, -1.0f, 0.0f }; + scale = 0.4f; + return true; + case VEHICLE_SEVEN70: + x = { -1.0f, -0.21f, 0.25f }; + y = { 1.0f, 0.0f, 0.0f }; + z = { 0.0f, -1.0f, 0.0f }; + scale = 0.35f; + return true; + case VEHICLE_FMJ: + x = { -1.0f, -0.06f, 0.21f }; + y = { 1.0f, 0.0f, 0.0f }; + z = { 0.0f, -1.0f, 0.0f }; + scale = 0.3f; + return true; + case VEHICLE_PFISTER811: + x = { -1.0f, 0.06f, 0.25f }; + y = { 1.0f, 0.0f, 0.0f }; + z = { 0.0f, -1.0f, 0.0f }; + scale = 0.45f; + return true; + case VEHICLE_PROTOTIPO: + x = { -1.0f, 0.3f, 0.27f }; + y = { 1.0f, 0.0f, 0.0f }; + z = { 0.0f, -1.0f, 0.0f }; + scale = 0.35f; + return true; + case VEHICLE_REAPER: + x = { -1.0f, 0.48f, 0.0f }; + y = { 1.0f, 0.0f, 0.0f }; + z = { 0.0f, -1.0f, 0.0f }; + scale = 0.3f; + return true; + case VEHICLE_RUMPO3: + x = { 0.0f, 2.103f, 1.0f }; + y = { 0.0f, 0.0f, -1.0f }; + z = { -1.0f, 0.0f, 0.0f }; + scale = 0.5f; + return true; + case VEHICLE_WINDSOR2: + x = { -1.2f, 0.03f, 0.24f }; + y = { 1.0f, 0.0f, 0.0f }; + z = { 0.0f, -1.0f, 0.0f }; + scale = 0.55f; + return true; + case VEHICLE_XLS: + x = { -1.0f, 0.36f, -0.15f }; + y = { 1.0f, 0.0f, 0.0f }; + z = { 0.0f, -1.0f, 0.0f }; + scale = 0.45f; + return true; + case VEHICLE_XLS2: + x = { -1.0f, 0.36f, -0.15f }; + y = { 1.0f, 0.0f, 0.0f }; + z = { 0.0f, -1.0f, 0.0f }; + scale = 0.45f; + return true; + case VEHICLE_BRIOSO: + x = { -1.0f, -0.06f, 0.565f }; + y = { 1.0f, 0.0f, 0.0f }; + z = { 0.0f, -1.0f, 0.0f }; + scale = 0.3f; + return true; + case VEHICLE_CONTENDER: + x = { 0.0f, 2.33f, 1.0f }; + y = { 0.0f, 0.0f, -1.0f }; + z = { -1.0f, 0.0f, 0.0f }; + scale = 0.5f; + return true; + case VEHICLE_LE7B: + x = { -1.0f, -0.12f, 0.235f }; + y = { 1.0f, 0.0f, 0.0f }; + z = { 0.0f, -1.0f, 0.0f }; + scale = 0.3f; + return true; + case VEHICLE_OMNIS: + x = { -1.0f, 0.03f, 0.18f }; + y = { 1.0f, 0.0f, 0.0f }; + z = { 0.0f, -1.0f, 0.0f }; + scale = 0.45f; + return true; + case VEHICLE_TROPOS: + x = { -1.0f, 0.0f, 0.24f }; + y = { 1.0f, 0.0f, 0.0f }; + z = { 0.0f, -1.0f, 0.0f }; + scale = 0.35f; + return true; + case VEHICLE_AVARUS: + x = { -1.0f, 0.27f, 0.25f }; + y = { 1.0f, 0.0f, 0.0f }; + z = { 0.0f, -1.0f, 0.0f }; + scale = 0.1f; + return true; + case VEHICLE_DAEMON2: + x = { -1.0f, 0.27f, 0.29f }; + y = { 1.0f, 0.0f, 0.0f }; + z = { 0.0f, -1.0f, 0.0f }; + scale = 0.1f; + return true; + case VEHICLE_DEFILER: + x = { -1.0f, 0.0f, 0.34f }; + y = { 1.0f, 0.0f, 0.0f }; + z = { 0.0f, -1.0f, 0.0f }; + scale = 0.125f; + return true; + case VEHICLE_ESSKEY: + x = { -1.0f, 0.335f, 0.31f }; + y = { 1.0f, 0.0f, 0.0f }; + z = { 0.0f, -1.0f, 0.0f }; + scale = 0.09f; + return true; + case VEHICLE_HAKUCHOU2: + x = { 0.0f, 0.27f, 0.845f }; + y = { 0.0f, 0.0f, -1.0f }; + z = { -1.0f, 0.0f, 0.0f }; + scale = 0.15f; + return true; + case VEHICLE_NIGHTBLADE: + x = { 0.0f, -0.133f, 0.61f }; + y = { 0.0f, 0.0f, -1.0f }; + z = { -1.0f, 0.0f, 0.0f }; + scale = 0.125f; + return true; + case VEHICLE_RATBIKE: + x = { -1.0f, 0.31f, 0.24f }; + y = { 1.0f, 0.0f, 0.0f }; + z = { 0.0f, -1.0f, 0.0f }; + scale = 0.1f; + return true; + case VEHICLE_SHOTARO: + x = { -1.0f, 0.06f, 0.325f }; + y = { 1.0f, 0.0f, 0.0f }; + z = { 0.0f, -1.0f, 0.0f }; + scale = 0.1f; + return true; + case VEHICLE_ZOMBIEA: + x = { -1.0f, 0.3f, 0.25f }; + y = { 1.0f, 0.0f, 0.0f }; + z = { 0.0f, -1.0f, 0.0f }; + scale = 0.1f; + return true; + case VEHICLE_ZOMBIEB: + x = { -1.0f, 0.2f, 0.25f }; + y = { 1.0f, 0.0f, 0.0f }; + z = { 0.0f, -1.0f, 0.0f }; + scale = 0.1f; + return true; + case VEHICLE_VORTEX: + x = { -1.0f, 0.18f, 0.37f }; + y = { 1.0f, 0.0f, 0.0f }; + z = { 0.0f, -1.0f, 0.0f }; + scale = 0.095f; + return true; + case VEHICLE_TORNADO6: + x = { -1.0f, -0.03f, -0.24f }; + y = { 1.0f, 0.0f, 0.0f }; + z = { 0.0f, -1.0f, 0.0f }; + scale = 0.3f; + return true; + case VEHICLE_YOUGA2: + x = { 0.0f, 2.352f, 0.253f }; + y = { 0.0f, -1.0f, -0.256f }; + z = { -1.0f, 0.0f, 0.0f }; + scale = 0.175f; + return true; + case VEHICLE_WOLFSBANE: + x = { -1.0f, 0.33f, 0.24f }; + y = { 1.0f, 0.0f, 0.0f }; + z = { 0.0f, -1.0f, 0.0f }; + scale = 0.1f; + return true; + case VEHICLE_FAGGIO3: + x = { -1.0f, -0.54f, -0.11f }; + y = { 1.0f, 0.0f, 0.0f }; + z = { 0.0f, -1.0f, 0.0f }; + scale = 0.15f; + return true; + case VEHICLE_FAGGIO: + x = { -0.9875f, -0.0175f, -0.01f }; + y = { 0.8975f, -0.26f, -0.0725f }; + z = { 0.0f, -1.0f, 0.0f }; + scale = 0.1625f; + return true; + case VEHICLE_COMET3: + x = { -1.0f, 0.0f, 0.295f }; + y = { 1.0f, 0.0f, 0.0f }; + z = { 0.0f, -1.0f, 0.0f }; + scale = 0.4f; + return true; + case VEHICLE_DIABLOUS: + x = { -1.0f, 0.006f, 0.382f }; + y = { 1.0f, 0.0f, 0.0f }; + z = { 0.0f, -1.0f, 0.0f }; + scale = 0.1f; + return true; + case VEHICLE_DIABLOUS2: + x = { -1.0f, 0.225f, 0.541f }; + y = { 1.0f, 0.0f, 0.0f }; + z = { 0.0f, -1.0f, 0.0f }; + scale = 0.1f; + return true; + case VEHICLE_ELEGY: + x = { 0.0f, 1.14f, 1.0f }; + y = { 0.0f, 0.0f, -1.0f }; + z = { -1.0f, 0.0f, 0.0f }; + scale = 0.35f; + return true; + case VEHICLE_FCR: + x = { -1.0f, 0.234f, 0.376f }; + y = { 1.0f, 0.0f, 0.0f }; + z = { 0.0f, -1.0f, 0.0f }; + scale = 0.1f; + return true; + case VEHICLE_FCR2: + x = { -1.0f, 0.234f, 0.376f }; + y = { 1.0f, 0.0f, 0.0f }; + z = { 0.0f, -1.0f, 0.0f }; + scale = 0.1f; + return true; + case VEHICLE_ITALIGTB: + x = { -1.0f, -0.024f, 0.187f }; + y = { 1.0f, 0.0f, 0.0f }; + z = { 0.0f, -1.0f, 0.0f }; + scale = 0.25f; + return true; + case VEHICLE_ITALIGTB2: + x = { -1.0f, -0.024f, 0.187f }; + y = { 1.0f, 0.0f, 0.0f }; + z = { 0.0f, -1.0f, 0.0f }; + scale = 0.25f; + return true; + case VEHICLE_NERO: + x = { -1.0f, 0.237f, 0.09f }; + y = { 1.0f, 0.0f, 0.0f }; + z = { 0.0f, -1.0f, 0.0f }; + scale = 0.25f; + return true; + case VEHICLE_NERO2: + x = { -1.0f, 0.237f, 0.09f }; + y = { 1.0f, 0.0f, 0.0f }; + z = { 0.0f, -1.0f, 0.0f }; + scale = 0.25f; + return true; + case VEHICLE_PENETRATOR: + x = { -1.0f, 0.153f, 0.295f }; + y = { 1.0f, 0.0f, 0.0f }; + z = { 0.0f, -1.0f, 0.0f }; + scale = 0.35f; + return true; + case VEHICLE_RUINER2: + x = { 0.363f, 1.34f, 1.0f }; + y = { 0.0f, 0.0f, -1.0f }; + z = { -1.0f, 0.0f, 0.0f }; + scale = 0.4f; + return true; + case VEHICLE_RUINER3: + x = { 0.363f, 1.34f, 1.0f }; + y = { 0.0f, 0.0f, -1.0f }; + z = { -1.0f, 0.0f, 0.0f }; + scale = 0.4f; + return true; + case VEHICLE_SPECTER: + x = { -1.0f, -0.273f, -0.02f }; + y = { 1.0f, 0.0f, 0.0f }; + z = { 0.0f, -1.0f, 0.0f }; + scale = 0.2f; + return true; + case VEHICLE_SPECTER2: + x = { -1.0f, -0.273f, 0.286f }; + y = { 1.0f, 0.0f, 0.0f }; + z = { 0.0f, -1.0f, 0.0f }; + scale = 0.2f; + return true; + case VEHICLE_TECHNICAL2: + x = { 0.0f, 1.623f, 1.0f }; + y = { 0.0f, 0.0f, -1.0f }; + z = { -1.0f, 0.0f, 0.0f }; + scale = 0.5f; + return true; + case VEHICLE_TEMPESTA: + x = { -1.0f, 0.0f, 0.253f }; + y = { 1.0f, 0.0f, 0.0f }; + z = { 0.0f, -1.0f, 0.0f }; + scale = 0.25f; + return true; + case VEHICLE_VOLTIC2: + x = { 0.0f, 1.763f, 1.0f }; + y = { 0.0f, 0.0f, -1.0f }; + z = { -1.0f, 0.0f, 0.0f }; + scale = 0.29f; + return true; + case VEHICLE_INFERNUS2: + x = { -1.0f, 0.33f, 0.06f }; + y = { 1.0f, 0.0f, 0.0f }; + z = { 0.0f, -1.0f, 0.06f }; + scale = 0.2f; + return true; + case VEHICLE_RUSTON: + x = { -1.0f, -0.273f, 0.084f }; + y = { 1.0f, 0.0f, 0.0f }; + z = { 0.0f, -1.0f, 0.0f }; + scale = 0.15f; + return true; + case VEHICLE_TURISMO2: + x = { -1.0f, 0.159f, -0.193f }; + y = { 1.0f, 0.0f, 0.0f }; + z = { 0.0f, -1.0f, 0.0f }; + scale = 0.25f; + return true; + case VEHICLE_ARDENT: + x = { -1.0f, 0.309f, 0.276f }; + y = { 1.0f, 0.0f, 0.0f }; + z = { 0.0f, -1.0f, 0.0f }; + scale = 0.2f; + return true; + case VEHICLE_CHEETAH2: + x = { -1.0f, 0.159f, -0.127f }; + y = { 1.0f, 0.0f, 0.0f }; + z = { 0.0f, -1.0f, 0.0f }; + scale = 0.25f; + return true; + case VEHICLE_HALFTRACK: + x = { -1.0f, 0.501f, 0.531f }; + y = { 1.0f, 0.0f, 0.0f }; + z = { 0.0f, -1.0f, 0.0f }; + scale = 0.35f; + return true; + case VEHICLE_NIGHTSHARK: + x = { -1.5f, 0.42f, 0.584f }; + y = { 1.0f, 0.0f, 0.0f }; + z = { 0.0f, -1.0f, 0.0f }; + scale = 0.3f; + return true; + case VEHICLE_OPPRESSOR: + x = { -1.0f, 0.306f, 0.355f }; + y = { 1.0f, 0.0f, 0.0f }; + z = { 0.0f, -1.0f, 0.0f }; + scale = 0.08f; + return true; + case VEHICLE_TAMPA3: + x = { 0.0f, 1.515f, 1.0f }; + y = { 0.0f, 0.0f, -1.0f }; + z = { -1.0f, 0.0f, 0.0f }; + scale = 0.275f; + return true; + case VEHICLE_TECHNICAL3: + x = { 0.0f, 1.623f, 1.0f }; + y = { 0.0f, 0.0f, -1.0f }; + z = { -1.0f, 0.0f, 0.0f }; + scale = 0.43f; + return true; + case VEHICLE_TORERO: + x = { -1.0f, 0.201f, 0.114f }; + y = { 1.0f, 0.0f, 0.0f }; + z = { 0.0f, -1.0f, 0.0f }; + scale = 0.3f; + return true; + case VEHICLE_VAGNER: + x = { -1.5f, 0.906f, 0.071f }; + y = { 1.0f, 0.0f, 0.0f }; + z = { 0.0f, -1.0f, 0.0f }; + scale = 0.1f; + return true; + case VEHICLE_XA21: + x = { -1.0f, 0.441f, 0.13f }; + y = { 1.0f, 0.0f, 0.0f }; + z = { 0.0f, -1.0f, 0.0f }; + scale = 0.25f; + return true; + case VEHICLE_PHANTOM3: + x = { -1.3f, 2.045f, 0.802f }; + y = { 1.0f, 0.0f, 0.0f }; + z = { 0.0f, -1.0f, 0.0f }; + scale = 0.45f; + return true; + case VEHICLE_HAULER2: + x = { -1.627f, 2.456f, 0.745f }; + y = { 1.0f, 0.0f, 0.0f }; + z = { 0.0f, -1.0f, 0.0f }; + scale = 0.45f; + return true; + case VEHICLE_CYCLONE: + x = { -1.0f, 0.186f, 0.382f }; + y = { 1.0f, 0.0f, 0.0f }; + z = { 0.0f, -1.0f, 0.0f }; + scale = 0.2f; + return true; + case VEHICLE_VISIONE: + x = { -1.0f, 0.432f, 0.031f }; + y = { 1.0f, 0.0f, 0.0f }; + z = { 0.0f, -1.0f, 0.0f }; + scale = 0.15f; + return true; + case VEHICLE_VIGILANTE: + x = { -1.0f, 0.232f, 0.24f }; + y = { 1.0f, 0.0f, 0.0f }; + z = { 0.0f, -1.0f, 0.0f }; + scale = 0.175f; + return true; + case VEHICLE_RETINUE: + x = { -1.0f, -0.018f, 0.253f }; + y = { 1.0f, 0.0f, 0.0f }; + z = { 0.0f, -1.0f, 0.0f }; + scale = 0.3f; + return true; + case VEHICLE_RAPIDGT3: + x = { 0.0f, 1.972f, 1.0f }; + y = { 0.0f, 0.0f, -1.0f }; + z = { -1.0f, 0.0f, 0.0f }; + scale = 0.18f; + return true; + case VEHICLE_AVENGER: + x = { -2.02f, 6.45f, -0.716f }; + y = { 1.0f, 0.0f, 0.0f }; + z = { 0.0f, -1.0f, 0.0f }; + scale = 0.35f; + return true; + case VEHICLE_DELUXO: + x = { -1.0f, -0.291f, 0.247f }; + y = { 1.0f, 0.0f, 0.0f }; + z = { 0.0f, -1.0f, 0.0f }; + scale = 0.2f; + return true; + case VEHICLE_STROMBERG: + x = { -1.0f, 0.23f, 0.247f }; + y = { 1.0f, 0.0f, 0.0f }; + z = { 0.0f, -1.0f, 0.0f }; + scale = 0.2f; + return true; + case VEHICLE_RIOT2: + x = { -1.891f, 2.144f, 0.657f }; + y = { 1.0f, 0.0f, 0.0f }; + z = { 0.0f, -1.0f, 0.0f }; + scale = 0.35f; + return true; + case VEHICLE_CHERNOBOG: + x = { -2.127f, 5.413f, 1.132f }; + y = { 1.0f, 0.0f, 0.0f }; + z = { 0.0f, -1.0f, 0.0f }; + scale = 0.34f; + return true; + case VEHICLE_KHANJALI: + x = { -0.897f, 1.391f, 1.0f }; + y = { 0.0f, 0.0f, -1.0f }; + z = { -1.0f, 0.0f, 0.0f }; + scale = 0.4f; + return true; + case VEHICLE_BARRAGE: + x = { -1.51f, 0.71f, 0.451f }; + y = { 1.0f, 0.0f, 0.0f }; + z = { 0.0f, -1.0f, 0.0f }; + scale = 0.25f; + return true; + case VEHICLE_COMET4: + x = { -1.0f, 0.298f, 0.257f }; + y = { 1.0f, 0.0f, 0.0f }; + z = { 0.0f, -1.0f, 0.0f }; + scale = 0.36f; + return true; + case VEHICLE_NEON: + x = { -1.0f, 0.181f, -0.066f }; + y = { 1.0f, 0.0f, 0.0f }; + z = { 0.0f, -1.0f, 0.0f }; + scale = 0.3f; + return true; + case VEHICLE_STREITER: + x = { -1.0f, 0.301f, 0.295f }; + y = { 1.0f, 0.0f, 0.0f }; + z = { 0.0f, -1.0f, 0.0f }; + scale = 0.4f; + return true; + case VEHICLE_SENTINEL3: + x = { 0.0f, 1.52f, 1.0f }; + y = { 0.0f, 0.0f, -1.0f }; + z = { -1.0f, 0.0f, 0.0f }; + scale = 0.5f; + return true; + case VEHICLE_YOSEMITE: + x = { -1.0f, 0.252f, 0.201f }; + y = { 1.0f, 0.0f, 0.0f }; + z = { 0.0f, -1.0f, 0.0f }; + scale = 0.3f; + return true; + case VEHICLE_SC1: + x = { -1.0f, 0.616f, -0.131f }; + y = { 1.0f, 0.0f, 0.0f }; + z = { 0.0f, -1.0f, 0.0f }; + scale = 0.25f; + return true; + case VEHICLE_AUTARCH: + x = { -1.0f, 0.0f, 0.116f }; + y = { 1.0f, 0.0f, 0.0f }; + z = { 0.0f, -1.0f, 0.0f }; + scale = 0.25f; + return true; + case VEHICLE_GT500: + x = { -1.0f, 0.0f, 0.0f }; + y = { 1.0f, 0.0f, 0.0f }; + z = { 0.0f, -1.0f, 0.0f }; + scale = 0.25f; + return true; + case VEHICLE_HUSTLER: + x = { -1.0f, -0.228f, 0.321f }; + y = { 1.0f, 0.0f, 0.0f }; + z = { 0.0f, -1.0f, 0.0f }; + scale = 0.4f; + return true; + case VEHICLE_REVOLTER: + x = { -1.0f, 0.203f, 0.126f }; + y = { 1.0f, 0.0f, 0.0f }; + z = { 0.0f, -1.0f, 0.0f }; + scale = 0.45f; + return true; + case VEHICLE_PARIAH: + x = { -1.0f, -0.126f, 0.208f }; + y = { 1.0f, 0.0f, 0.0f }; + z = { 0.0f, -1.0f, 0.0f }; + scale = 0.35f; + return true; + case VEHICLE_RAIDEN: + x = { -1.0f, 0.252f, -0.095f }; + y = { 1.0f, 0.0f, 0.0f }; + z = { 0.0f, -1.0f, 0.0f }; + scale = 0.35f; + return true; + case VEHICLE_SAVESTRA: + x = { -1.0f, 0.0f, 0.25f }; + y = { 1.0f, 0.0f, 0.0f }; + z = { 0.0f, -1.0f, 0.0f }; + scale = 0.35f; + return true; + case VEHICLE_RIATA: + x = { -1.3f, 0.18f, 0.511f }; + y = { 1.0f, 0.0f, 0.0f }; + z = { 0.0f, -1.0f, 0.0f }; + scale = 0.3f; + return true; + case VEHICLE_HERMES: + x = { -1.0f, -0.134f, 0.158f }; + y = { 1.0f, 0.0f, 0.0f }; + z = { 0.0f, -1.0f, 0.0f }; + scale = 0.4f; + return true; + case VEHICLE_COMET5: + x = { -1.0f, 0.002f, 0.031f }; + y = { 1.0f, 0.0f, 0.0f }; + z = { 0.0f, -1.0f, 0.0f }; + scale = 0.35f; + return true; + case VEHICLE_Z190: + x = { -1.0f, -0.175f, 0.242f }; + y = { 1.0f, 0.0f, 0.0f }; + z = { 0.0f, -1.0f, 0.0f }; + scale = 0.4f; + return true; + case VEHICLE_VISERIS: + x = { -1.0f, 0.0f, 0.244f }; + y = { 1.0f, 0.0f, 0.0f }; + z = { 0.0f, -1.0f, 0.0f }; + scale = 0.275f; + return true; + case VEHICLE_KAMACHO: + x = { 0.0f, 1.623f, 1.0f }; + y = { 0.0f, 0.0f, -1.0f }; + z = { -1.0f, 0.0f, 0.0f }; + scale = 0.5f; + return true; + case VEHICLE_GB200: + x = { -1.0f, 0.0f, 0.407f }; + y = { 1.0f, 0.0f, 0.0f }; + z = { 0.0f, -1.0f, 0.0f }; + scale = 0.225f; + return true; + case VEHICLE_FAGALOA: + x = { -1.0f, 0.0f, 0.225f }; + y = { 1.0f, 0.0f, 0.0f }; + z = { 0.0f, -1.0f, 0.0f }; + scale = 0.4f; + return true; + case VEHICLE_ELLIE: + x = { -1.0f, 0.441f, -0.128f }; + y = { 1.0f, 0.0f, 0.0f }; + z = { 0.0f, -1.0f, 0.0f }; + scale = 0.35f; + return true; + case VEHICLE_ISSI3: + x = { -1.0f, 0.195f, 0.246f }; + y = { 1.0f, 0.0f, 0.0f }; + z = { 0.0f, -1.0f, 0.0f }; + scale = 0.4f; + return true; + case VEHICLE_MICHELLI: + x = { -1.0f, 0.0f, 0.0805f }; + y = { 1.0f, 0.0f, 0.0f }; + z = { 0.0f, -1.0f, 0.0f }; + scale = 0.35f; + return true; + case VEHICLE_FLASHGT: + x = { 0.0f, 1.592f, 1.0f }; + y = { 0.0f, 0.0f, -1.0f }; + z = { -1.0f, 0.0f, 0.0f }; + scale = 0.25f; + return true; + case VEHICLE_HOTRING: + x = { -1.0f, 0.0f, 0.0f }; + y = { 1.0f, 0.0f, 0.0f }; + z = { 0.0f, -1.0f, 0.0f }; + scale = 0.5f; + return true; + case VEHICLE_TEZERACT: + x = { -1.0f, 0.679f, 0.514f }; + y = { 1.0f, 0.0f, -0.75f }; + z = { 0.0f, -1.0f, 0.0f }; + scale = 0.175f; + return true; + case VEHICLE_TYRANT: + x = { -1.588f, 0.315f, 0.337f }; + y = { 1.0f, 0.0f, 0.0f }; + z = { 0.0f, -1.0f, 0.0f }; + scale = 0.3f; + return true; + case VEHICLE_DOMINATOR3: + x = { -1.0f, 0.0f, 0.221f }; + y = { 1.0f, 0.0f, 0.0f }; + z = { 0.0f, -1.0f, 0.0f }; + scale = 0.5f; + return true; + case VEHICLE_TAIPAN: + x = { -1.0f, 0.0f, 0.219f }; + y = { 1.0f, 0.0f, 0.0f }; + z = { 0.0f, -1.0f, 0.0f }; + scale = 0.4f; + return true; + case VEHICLE_ENTITY2: + x = { -1.52f, 0.41f, 0.15f }; + y = { 1.0f, 0.0f, 0.0f }; + z = { 0.0f, -1.0f, 0.0f }; + scale = 0.3f; + return true; + case VEHICLE_JESTER3: + x = { -1.0f, 0.0f, 0.297f }; + y = { 1.0f, 0.0f, 0.0f }; + z = { 0.0f, -1.0f, 0.0f }; + scale = 0.4f; + return true; + case VEHICLE_CHEBUREK: + x = { -1.0f, 0.393f, 0.162f }; + y = { 1.0f, 0.0f, 0.0f }; + z = { 0.0f, -1.0f, 0.0f }; + scale = 0.375f; + return true; + case VEHICLE_CARACARA: + x = { -1.0f, 1.266f, 0.4115f }; + y = { 1.0f, 0.0f, 0.0f }; + z = { 0.0f, -1.0f, 0.0f }; + scale = 0.4f; + return true; + case VEHICLE_SPEEDO4: + x = { -1.5f, 0.833f, 0.391f }; + y = { 1.0f, 0.0f, 0.0f }; + z = { 0.0f, -1.0f, 0.0f }; + scale = 0.2f; + return true; + case VEHICLE_MULE4: + x = { -1.125f, 2.691f, 0.318f }; + y = { 1.0f, 0.0f, 0.0f }; + z = { 0.0f, -1.0f, 0.0f }; + scale = 0.35f; + return true; + case VEHICLE_POUNDER2: + x = { -1.5f, 1.853f, 0.779f }; + y = { 1.0f, 0.0f, 0.0f }; + z = { 0.0f, -1.0f, 0.0f }; + scale = 0.38f; + return true; + case VEHICLE_SWINGER: + x = { -1.0f, 0.195f, 0.105f }; + y = { 1.0f, 0.0f, 0.0f }; + z = { 0.0f, -1.0f, 0.0f }; + scale = 0.35f; + return true; + case VEHICLE_MENACER: + x = { -1.73f, 0.159f, 0.61f }; + y = { 1.0f, 0.12f, 0.0f }; + z = { 0.0f, -1.0f, 0.0f }; + scale = 0.4f; + return true; + case VEHICLE_SCRAMJET: + x = { -1.0f, -0.188f, 0.0f }; + y = { 1.0f, 0.0f, 0.0f }; + z = { 0.0f, -1.0f, 0.0f }; + scale = 0.25f; + return true; + case VEHICLE_PATRIOT2: + x = { -1.213f, 1.546f, 0.511f }; + y = { 1.0f, 0.0f, 0.0f }; + z = { 0.0f, -1.0f, 0.0f }; + scale = 0.3f; + return true; + case VEHICLE_STAFFORD: + x = { -1.0f, 0.036f, 0.096f }; + y = { 1.0f, 0.0f, 0.0f }; + z = { 0.0f, -1.0f, 0.0f }; + scale = 0.4f; + return true; + case VEHICLE_FREECRAWLER: + x = { -1.0f, 0.249f, 0.511f }; + y = { 1.0f, 0.0f, 0.0f }; + z = { 0.0f, -1.0f, 0.0f }; + scale = 0.4f; + return true; + case VEHICLE_OPPRESSOR2: + x = { -1.0f, 0.306f, 0.355f }; + y = { 1.0f, 0.0f, 0.0f }; + z = { 0.0f, -1.0f, 0.0f }; + scale = 0.08f; + return true; + case VEHICLE_TERBYTE: + x = { -1.73f, 3.397f, 0.724f }; + y = { 1.0f, 0.12f, 0.0f }; + z = { 0.0f, -1.0f, 0.0f }; + scale = 0.25f; + return true; + case VEHICLE_BRUISER: + case VEHICLE_BRUISER2: + case VEHICLE_BRUISER3: + x = { 0.0f, 2.12f, 1.241f }; + y = { 0.0f, 0.0f, -1.0f }; + z = { -1.0f, 0.0f, 0.084f }; + scale = 0.775f; + return true; + case VEHICLE_BRUTUS: + case VEHICLE_BRUTUS2: + case VEHICLE_BRUTUS3: + x = { -1.0f, 0.446f, 0.247f }; + y = { 1.0f, 0.0f, 0.0f }; + z = { 0.0f, -1.0f, 0.0f }; + scale = 0.4f; + return true; + case VEHICLE_CERBERUS: + case VEHICLE_CERBERUS2: + case VEHICLE_CERBERUS3: + x = { -1.432f, 1.443f, 1.292f }; + y = { 1.0f, 0.0f, 0.0f }; + z = { 0.0f, -1.0f, 0.0f }; + scale = 0.5f; + return true; + case VEHICLE_CLIQUE: + x = { -1.0f, 0.167f, 0.159f }; + y = { 1.0f, 0.0f, 0.0f }; + z = { 0.0f, -1.0f, 0.0f }; + scale = 0.4f; + return true; + case VEHICLE_DEVESTE: + x = { -1.5f, 1.066f, 0.13f }; + y = { 1.0f, 0.0f, 0.0f }; + z = { 0.0f, -1.0f, 0.0f }; + scale = 0.15f; + return true; + case VEHICLE_DEVIANT: + x = { -1.0f, 0.111f, 0.123f }; + y = { 1.0f, 0.0f, 0.0f }; + z = { 0.0f, -1.0f, 0.0f }; + scale = 0.45f; + return true; + case VEHICLE_DOMINATOR4: + case VEHICLE_DOMINATOR5: + case VEHICLE_DOMINATOR6: + x = { -1.0f, 0.0f, 0.417f }; + y = { 1.0f, 0.0f, 0.0f }; + z = { 0.0f, -1.0f, 0.0f }; + scale = 0.4f; + return true; + case VEHICLE_IMPALER: + case VEHICLE_IMPALER2: + case VEHICLE_IMPALER3: + case VEHICLE_IMPALER4: + x = { -1.0f, 0.0f, 0.137f }; + y = { 1.0f, 0.0f, 0.0f }; + z = { 0.0f, -1.0f, 0.0f }; + scale = 0.35f; + return true; + case VEHICLE_IMPERATOR: + case VEHICLE_IMPERATOR2: + case VEHICLE_IMPERATOR3: + x = { -1.0f, 0.0f, 0.295f }; + y = { 1.0f, 0.0f, 0.0f }; + z = { 0.0f, -1.0f, 0.0f }; + scale = 0.4f; + return true; + case VEHICLE_ISSI4: + case VEHICLE_ISSI5: + case VEHICLE_ISSI6: + x = { -1.0f, 0.195f, 0.246f }; + y = { 1.0f, 0.0f, 0.0f }; + z = { 0.0f, -1.0f, 0.0f }; + scale = 0.4f; + return true; + case VEHICLE_ITALIGTO: + x = { -1.0f, -0.091f, 0.207f }; + y = { 1.0f, 0.0f, 0.0f }; + z = { 0.0f, -1.0f, 0.0f }; + scale = 0.25f; + return true; + case VEHICLE_MONSTER3: + case VEHICLE_MONSTER4: + case VEHICLE_MONSTER5: + x = { -1.78f, 0.445f, 0.81f }; + y = { 1.0f, 0.0f, 0.0f }; + z = { 0.0f, -1.0f, 0.0f }; + scale = 0.45f; + return true; + case VEHICLE_SCHLAGEN: + x = { -1.0f, -0.105f, 0.262f }; + y = { 1.0f, 0.0f, 0.0f }; + z = { 0.0f, -1.0f, 0.0f }; + scale = 0.4f; + return true; + case VEHICLE_SLAMVAN4: + case VEHICLE_SLAMVAN5: + case VEHICLE_SLAMVAN6: + x = { -1.0f, 0.152f, 0.537f }; + y = { 1.0f, 0.0f, 0.0f }; + z = { 0.0f, -1.0f, 0.0f }; + scale = 0.5f; + return true; + case VEHICLE_TOROS: + x = { -1.0f, 0.415f, 0.394f }; + y = { 1.0f, 0.0f, 0.0f }; + z = { 0.0f, -1.0f, 0.0f }; + scale = 0.4f; + return true; + case VEHICLE_TULIP: + x = { -1.0f, 0.171f, 0.223f }; + y = { 1.0f, 0.0f, 0.0f }; + z = { 0.0f, -1.0f, 0.0f }; + scale = 0.35f; + return true; + case VEHICLE_VAMOS: + x = { -1.0f, 0.0f, 0.163f }; + y = { 1.0f, 0.0f, 0.0f }; + z = { 0.0f, -1.0f, 0.0f }; + scale = 0.4f; + return true; + case VEHICLE_ZR380: + case VEHICLE_ZR3802: + case VEHICLE_ZR3803: + x = { -1.0f, 0.0f, 0.286f }; + y = { 1.0f, 0.0f, 0.0f }; + z = { 0.0f, -1.0f, 0.0f }; + scale = 0.45f; + return true; + case VEHICLE_CARACARA2: + x = { -1.0f, 0.687f, 0.4115f }; + y = { 1.0f, 0.0f, 0.0f }; + z = { 0.0f, -1.0f, 0.0f }; + scale = 0.4f; + return true; + case VEHICLE_DRAFTER: + x = { -1.045f, 0.15f, 0.09f }; + y = { 1.0f, 0.0f, 0.0f }; + z = { 0.0f, -1.0f, 0.0f }; + scale = 0.4f; + return true; + case VEHICLE_DYNASTY: + x = { -1.0f, 0.12f, 0.334f }; + y = { 1.0f, 0.0f, 0.0f }; + z = { 0.0f, -1.0f, 0.0f }; + scale = 0.35f; + return true; + case VEHICLE_EMERUS: + x = { -1.0f, 0.372f, 0.439f }; + y = { 1.0f, 0.0f, 0.0f }; + z = { 0.0f, -1.0f, 0.0f }; + scale = 0.1f; + return true; + case VEHICLE_GAUNTLET3: + x = { -1.0f, 0.0f, 0.222f }; + y = { 1.0f, 0.0f, 0.0f }; + z = { 0.0f, -1.0f, 0.0f }; + scale = 0.33f; + return true; + case VEHICLE_GAUNTLET4: + x = { -1.0f, 0.0f, 0.222f }; + y = { 1.0f, 0.0f, 0.0f }; + z = { 0.0f, -1.0f, 0.0f }; + scale = 0.33f; + return true; + case VEHICLE_HELLION: + x = { -1.0f, 0.27f, 0.246f }; + y = { 1.0f, 0.0f, 0.0f }; + z = { 0.0f, -1.0f, 0.0f }; + scale = 0.35f; + return true; + case VEHICLE_ISSI7: + x = { -1.0f, 0.195f, -0.063f }; + y = { 1.0f, 0.0f, 0.0f }; + z = { 0.0f, -1.0f, 0.0f }; + scale = 0.4f; + return true; + case VEHICLE_JUGULAR: + x = { -1.0f, 0.213f, 0.213f }; + y = { 1.0f, 0.0f, 0.0f }; + z = { 0.0f, -1.0f, 0.0f }; + scale = 0.45f; + return true; + case VEHICLE_KRIEGER: + x = { -1.0f, 0.576f, -0.123f }; + y = { 0.997f, -0.105f, 0.0f }; + z = { 0.0f, -1.0f, 0.0f }; + scale = 0.25f; + return true; + case VEHICLE_LOCUST: + x = { -1.0f, -0.207f, 0.042f }; + y = { 1.0f, 0.0f, 0.0f }; + z = { 0.0f, -1.0f, 0.0f }; + scale = 0.2f; + return true; + case VEHICLE_NEBULA: + x = { -1.0f, 0.012f, 0.147f }; + y = { 1.0f, 0.0f, 0.0f }; + z = { 0.0f, -1.0f, 0.0f }; + scale = 0.35f; + return true; + case VEHICLE_NEO: + x = { -1.0f, 0.216f, 0.216f }; + y = { 1.0f, 0.0f, 0.0f }; + z = { 0.0f, -1.0f, 0.0f }; + scale = 0.3f; + return true; + case VEHICLE_NOVAK: + x = { -1.0f, 0.24f, 0.255f }; + y = { 1.0f, 0.0f, 0.0f }; + z = { 0.0f, -1.0f, 0.0f }; + scale = 0.35f; + return true; + case VEHICLE_PARAGON: + case VEHICLE_PARAGON2: + x = { -1.0f, 0.0f, 0.156f }; + y = { 1.0f, 0.0f, 0.0f }; + z = { 0.0f, -1.0f, 0.0f }; + scale = 0.45f; + return true; + case VEHICLE_PEYOTE2: + x = { -1.0f, -0.36f, 0.2125f }; + y = { 1.0f, 0.0f, 0.0f }; + z = { 0.0f, -1.0f, 0.0f }; + scale = 0.5f; + return true; + case VEHICLE_S80: + x = { -1.0f, 0.357f, 0.256f }; + y = { 1.0f, 0.0f, 0.0f }; + z = { 0.0f, -1.0f, 0.0f }; + scale = 0.2f; + return true; + case VEHICLE_THRAX: + x = { -1.0f, 0.426f, 0.339f }; + y = { 1.0f, 0.06f, 0.0f }; + z = { 0.0f, -1.0f, 0.0f }; + scale = 0.3f; + return true; + case VEHICLE_ZION3: + x = { -1.0f, 0.108f, 0.234f }; + y = { 1.0f, 0.0f, 0.0f }; + z = { 0.0f, -1.0f, 0.0f }; + scale = 0.25f; + return true; + case VEHICLE_ZORRUSSO: + x = { -1.0f, 0.273f, -0.06f }; + y = { 1.0f, 0.0f, 0.0f }; + z = { 0.0f, -1.0f, 0.0f }; + scale = 0.25f; + return true; + case VEHICLE_SLAMVAN2: + x = { -1.0f, 0.35f, 0.456f }; + y = { 1.0f, 0.0f, 0.0f }; + z = { 0.0f, -1.0f, 0.0f }; + scale = 0.25f; + return true; + case VEHICLE_REBLA: + x = { 0.0f, 1.9002f, 1.0f }; + y = { 0.0f, 0.0f, -1.0f }; + z = { -1.0f, 0.0f, 0.0f }; + scale = 0.3f; + return true; + case VEHICLE_ASBO: + x = { -1.0f, 0.104f, 0.339f }; + y = { 1.0f, 0.0f, 0.0f }; + z = { 0.0f, -1.0f, 0.0f }; + scale = 0.3f; + return true; + case VEHICLE_SUGOI: + x = { -1.0f, 0.104f, 0.223f }; + y = { 1.0f, 0.0f, 0.0f }; + z = { 0.0f, -1.0f, 0.0f }; + scale = 0.4f; + return true; + case VEHICLE_KOMODA: + x = { -1.0f, 0.104f, 0.155f }; + y = { 1.0f, 0.0f, 0.0f }; + z = { 0.0f, -1.0f, 0.0f }; + scale = 0.4f; + return true; + case VEHICLE_VSTR: + x = { -1.0f, 0.104f, 0.155f }; + y = { 1.0f, 0.0f, 0.0f }; + z = { 0.0f, -1.0f, 0.0f }; + scale = 0.4f; + return true; + case VEHICLE_SULTAN2: + x = { -1.0f, 0.313f, 0.16f }; + y = { 1.0f, 0.0f, 0.0f }; + z = { 0.0f, -1.0f, 0.0f }; + scale = 0.35f; + return true; + case VEHICLE_KANJO: + x = { -1.0f, 0.313f, 0.16f }; + y = { 1.0f, 0.0f, 0.0f }; + z = { 0.0f, -1.0f, 0.0f }; + scale = 0.35f; + return true; + case VEHICLE_JB7002: + x = { 0.0f, 1.2f, 1.0f }; + y = { 0.0f, 0.0f, -1.0f }; + z = { -1.0f, 0.0f, 0.0f }; + scale = 0.37f; + return true; + case VEHICLE_YOSEMITE2: + x = { -1.0f, 0.252f, 0.201f }; + y = { 1.0f, 0.0f, 0.0f }; + z = { 0.0f, -1.0f, 0.0f }; + scale = 0.3f; + return true; + case VEHICLE_RETINUE2: + x = { -1.0f, -0.018f, 0.253f }; + y = { 1.0f, 0.0f, 0.0f }; + z = { 0.0f, -1.0f, 0.0f }; + scale = 0.3f; + return true; + case VEHICLE_FURIA: + x = { -1.0f, 0.0965f, 0.149f }; + y = { 1.0f, 0.0f, 0.0f }; + z = { 0.0f, -1.0f, 0.0f }; + scale = 0.5f; + return true; + case VEHICLE_EVERON: + x = { 0.0f, 2.019f, 1.0f }; + y = { 0.0f, 0.0f, -1.0f }; + z = { -1.0f, 0.0f, 0.0f }; + scale = 0.5f; + return true; + case VEHICLE_IMORGON: + x = { -1.5f, 0.42f, -0.2f }; + y = { 1.0f, -0.0997f, 0.0415f }; + z = { 0.0f, -1.0f, 0.0f }; + scale = 0.45f; + return true; + case VEHICLE_ZHABA: + x = { -1.202f, 0.034f, 0.6635f }; + y = { 1.0f, -0.002f, 0.0f }; + z = { 0.0f, -0.7398f, 0.0f }; + scale = 0.4f; + return true; + default: + return false; + } +} \ No newline at end of file diff --git a/BigBaseV2/src/gta/Vehicles.h b/BigBaseV2/src/gta/Vehicles.h new file mode 100644 index 00000000..11e4e94f --- /dev/null +++ b/BigBaseV2/src/gta/Vehicles.h @@ -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"), +}; \ No newline at end of file diff --git a/BigBaseV2/src/gta/Weapons.h b/BigBaseV2/src/gta/Weapons.h new file mode 100644 index 00000000..5fd8138b --- /dev/null +++ b/BigBaseV2/src/gta/Weapons.h @@ -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") +}; \ No newline at end of file diff --git a/BigBaseV2/src/gta/blip.hpp b/BigBaseV2/src/gta/blip.hpp new file mode 100644 index 00000000..391e57df --- /dev/null +++ b/BigBaseV2/src/gta/blip.hpp @@ -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 +} \ No newline at end of file diff --git a/BigBaseV2/src/gta/decal_controller.hpp b/BigBaseV2/src/gta/decal_controller.hpp new file mode 100644 index 00000000..6b81a4ab --- /dev/null +++ b/BigBaseV2/src/gta/decal_controller.hpp @@ -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_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."); +} \ No newline at end of file diff --git a/BigBaseV2/src/gta/enums.hpp b/BigBaseV2/src/gta/enums.hpp index e894fbad..157ce592 100644 --- a/BigBaseV2/src/gta/enums.hpp +++ b/BigBaseV2/src/gta/enums.hpp @@ -1,7 +1,1688 @@ -#pragma once -#include - -enum eGameState : std::uint32_t -{ - Playing = 0 -}; +#pragma once +#include + +enum eGameState : std::uint32_t +{ + Playing = 0 +}; + +constexpr auto MAX_PLAYERS = 32; + +enum ControllerInputs : std::uint32_t +{ + INPUT_NEXT_CAMERA, + INPUT_LOOK_LR, + INPUT_LOOK_UD, + INPUT_LOOK_UP_ONLY, + INPUT_LOOK_DOWN_ONLY, + INPUT_LOOK_LEFT_ONLY, + INPUT_LOOK_RIGHT_ONLY, + INPUT_CINEMATIC_SLOWMO, + INPUT_SCRIPTED_FLY_UD, + INPUT_SCRIPTED_FLY_LR, + INPUT_SCRIPTED_FLY_ZUP, + INPUT_SCRIPTED_FLY_ZDOWN, + INPUT_WEAPON_WHEEL_UD, + INPUT_WEAPON_WHEEL_LR, + INPUT_WEAPON_WHEEL_NEXT, + INPUT_WEAPON_WHEEL_PREV, + INPUT_SELECT_NEXT_WEAPON, + INPUT_SELECT_PREV_WEAPON, + INPUT_SKIP_CUTSCENE, + INPUT_CHARACTER_WHEEL, + INPUT_MULTIPLAYER_INFO, + INPUT_SPRINT, + INPUT_JUMP, + INPUT_ENTER, + INPUT_ATTACK, + INPUT_AIM, + INPUT_LOOK_BEHIND, + INPUT_PHONE, + INPUT_SPECIAL_ABILITY, + INPUT_SPECIAL_ABILITY_SECONDARY, + INPUT_MOVE_LR, + INPUT_MOVE_UD, + INPUT_MOVE_UP_ONLY, + INPUT_MOVE_DOWN_ONLY, + INPUT_MOVE_LEFT_ONLY, + INPUT_MOVE_RIGHT_ONLY, + INPUT_DUCK, + INPUT_SELECT_WEAPON, + INPUT_PICKUP, + INPUT_SNIPER_ZOOM, + INPUT_SNIPER_ZOOM_IN_ONLY, + INPUT_SNIPER_ZOOM_OUT_ONLY, + INPUT_SNIPER_ZOOM_IN_SECONDARY, + INPUT_SNIPER_ZOOM_OUT_SECONDARY, + INPUT_COVER, + INPUT_RELOAD, + INPUT_TALK, + INPUT_DETONATE, + INPUT_HUD_SPECIAL, + INPUT_ARREST, + INPUT_ACCURATE_AIM, + INPUT_CONTEXT, + INPUT_CONTEXT_SECONDARY, + INPUT_WEAPON_SPECIAL, + INPUT_WEAPON_SPECIAL_TWO, + INPUT_DIVE, + INPUT_DROP_WEAPON, + INPUT_DROP_AMMO, + INPUT_THROW_GRENADE, + INPUT_VEH_MOVE_LR, + INPUT_VEH_MOVE_UD, + INPUT_VEH_MOVE_UP_ONLY, + INPUT_VEH_MOVE_DOWN_ONLY, + INPUT_VEH_MOVE_LEFT_ONLY, + INPUT_VEH_MOVE_RIGHT_ONLY, + INPUT_VEH_SPECIAL, + INPUT_VEH_GUN_LR, + INPUT_VEH_GUN_UD, + INPUT_VEH_AIM, + INPUT_VEH_ATTACK, + INPUT_VEH_ATTACK2, + INPUT_VEH_ACCELERATE, + INPUT_VEH_BRAKE, + INPUT_VEH_DUCK, + INPUT_VEH_HEADLIGHT, + INPUT_VEH_EXIT, + INPUT_VEH_HANDBRAKE, + INPUT_VEH_HOTWIRE_LEFT, + INPUT_VEH_HOTWIRE_RIGHT, + INPUT_VEH_LOOK_BEHIND, + INPUT_VEH_CIN_CAM, + INPUT_VEH_NEXT_RADIO, + INPUT_VEH_PREV_RADIO, + INPUT_VEH_NEXT_RADIO_TRACK, + INPUT_VEH_PREV_RADIO_TRACK, + INPUT_VEH_RADIO_WHEEL, + INPUT_VEH_HORN, + INPUT_VEH_FLY_THROTTLE_UP, + INPUT_VEH_FLY_THROTTLE_DOWN, + INPUT_VEH_FLY_YAW_LEFT, + INPUT_VEH_FLY_YAW_RIGHT, + INPUT_VEH_PASSENGER_AIM, + INPUT_VEH_PASSENGER_ATTACK, + INPUT_VEH_SPECIAL_ABILITY_FRANKLIN, + INPUT_VEH_STUNT_UD, + INPUT_VEH_CINEMATIC_UD, + INPUT_VEH_CINEMATIC_UP_ONLY, + INPUT_VEH_CINEMATIC_DOWN_ONLY, + INPUT_VEH_CINEMATIC_LR, + INPUT_VEH_SELECT_NEXT_WEAPON, + INPUT_VEH_SELECT_PREV_WEAPON, + INPUT_VEH_ROOF, + INPUT_VEH_JUMP, + INPUT_VEH_GRAPPLING_HOOK, + INPUT_VEH_SHUFFLE, + INPUT_VEH_DROP_PROJECTILE, + INPUT_VEH_MOUSE_CONTROL_OVERRIDE, + INPUT_VEH_FLY_ROLL_LR, + INPUT_VEH_FLY_ROLL_LEFT_ONLY, + INPUT_VEH_FLY_ROLL_RIGHT_ONLY, + INPUT_VEH_FLY_PITCH_UD, + INPUT_VEH_FLY_PITCH_UP_ONLY, + INPUT_VEH_FLY_PITCH_DOWN_ONLY, + INPUT_VEH_FLY_UNDERCARRIAGE, + INPUT_VEH_FLY_ATTACK, + INPUT_VEH_FLY_SELECT_NEXT_WEAPON, + INPUT_VEH_FLY_SELECT_PREV_WEAPON, + INPUT_VEH_FLY_SELECT_TARGET_LEFT, + INPUT_VEH_FLY_SELECT_TARGET_RIGHT, + INPUT_VEH_FLY_VERTICAL_FLIGHT_MODE, + INPUT_VEH_FLY_DUCK, + INPUT_VEH_FLY_ATTACK_CAMERA, + INPUT_VEH_FLY_MOUSE_CONTROL_OVERRIDE, + INPUT_VEH_SUB_TURN_LR, + INPUT_VEH_SUB_TURN_LEFT_ONLY, + INPUT_VEH_SUB_TURN_RIGHT_ONLY, + INPUT_VEH_SUB_PITCH_UD, + INPUT_VEH_SUB_PITCH_UP_ONLY, + INPUT_VEH_SUB_PITCH_DOWN_ONLY, + INPUT_VEH_SUB_THROTTLE_UP, + INPUT_VEH_SUB_THROTTLE_DOWN, + INPUT_VEH_SUB_ASCEND, + INPUT_VEH_SUB_DESCEND, + INPUT_VEH_SUB_TURN_HARD_LEFT, + INPUT_VEH_SUB_TURN_HARD_RIGHT, + INPUT_VEH_SUB_MOUSE_CONTROL_OVERRIDE, + INPUT_VEH_PUSHBIKE_PEDAL, + INPUT_VEH_PUSHBIKE_SPRINT, + INPUT_VEH_PUSHBIKE_FRONT_BRAKE, + INPUT_VEH_PUSHBIKE_REAR_BRAKE, + INPUT_MELEE_ATTACK_LIGHT, + INPUT_MELEE_ATTACK_HEAVY, + INPUT_MELEE_ATTACK_ALTERNATE, + INPUT_MELEE_BLOCK, + INPUT_PARACHUTE_DEPLOY, + INPUT_PARACHUTE_DETACH, + INPUT_PARACHUTE_TURN_LR, + INPUT_PARACHUTE_TURN_LEFT_ONLY, + INPUT_PARACHUTE_TURN_RIGHT_ONLY, + INPUT_PARACHUTE_PITCH_UD, + INPUT_PARACHUTE_PITCH_UP_ONLY, + INPUT_PARACHUTE_PITCH_DOWN_ONLY, + INPUT_PARACHUTE_BRAKE_LEFT, + INPUT_PARACHUTE_BRAKE_RIGHT, + INPUT_PARACHUTE_SMOKE, + INPUT_PARACHUTE_PRECISION_LANDING, + INPUT_MAP, + INPUT_SELECT_WEAPON_UNARMED, + INPUT_SELECT_WEAPON_MELEE, + INPUT_SELECT_WEAPON_HANDGUN, + INPUT_SELECT_WEAPON_SHOTGUN, + INPUT_SELECT_WEAPON_SMG, + INPUT_SELECT_WEAPON_AUTO_RIFLE, + INPUT_SELECT_WEAPON_SNIPER, + INPUT_SELECT_WEAPON_HEAVY, + INPUT_SELECT_WEAPON_SPECIAL, + INPUT_SELECT_CHARACTER_MICHAEL, + INPUT_SELECT_CHARACTER_FRANKLIN, + INPUT_SELECT_CHARACTER_TREVOR, + INPUT_SELECT_CHARACTER_MULTIPLAYER, + INPUT_SAVE_REPLAY_CLIP, + INPUT_SPECIAL_ABILITY_PC, + INPUT_CELLPHONE_UP, + INPUT_CELLPHONE_DOWN, + INPUT_CELLPHONE_LEFT, + INPUT_CELLPHONE_RIGHT, + INPUT_CELLPHONE_SELECT, + INPUT_CELLPHONE_CANCEL, + INPUT_CELLPHONE_OPTION, + INPUT_CELLPHONE_EXTRA_OPTION, + INPUT_CELLPHONE_SCROLL_FORWARD, + INPUT_CELLPHONE_SCROLL_BACKWARD, + INPUT_CELLPHONE_CAMERA_FOCUS_LOCK, + INPUT_CELLPHONE_CAMERA_GRID, + INPUT_CELLPHONE_CAMERA_SELFIE, + INPUT_CELLPHONE_CAMERA_DOF, + INPUT_CELLPHONE_CAMERA_EXPRESSION, + INPUT_FRONTEND_DOWN, + INPUT_FRONTEND_UP, + INPUT_FRONTEND_LEFT, + INPUT_FRONTEND_RIGHT, + INPUT_FRONTEND_RDOWN, + INPUT_FRONTEND_RUP, + INPUT_FRONTEND_RLEFT, + INPUT_FRONTEND_RRIGHT, + INPUT_FRONTEND_AXIS_X, + INPUT_FRONTEND_AXIS_Y, + INPUT_FRONTEND_RIGHT_AXIS_X, + INPUT_FRONTEND_RIGHT_AXIS_Y, + INPUT_FRONTEND_PAUSE, + INPUT_FRONTEND_PAUSE_ALTERNATE, + INPUT_FRONTEND_ACCEPT, + INPUT_FRONTEND_CANCEL, + INPUT_FRONTEND_X, + INPUT_FRONTEND_Y, + INPUT_FRONTEND_LB, + INPUT_FRONTEND_RB, + INPUT_FRONTEND_LT, + INPUT_FRONTEND_RT, + INPUT_FRONTEND_LS, + INPUT_FRONTEND_RS, + INPUT_FRONTEND_LEADERBOARD, + INPUT_FRONTEND_SOCIAL_CLUB, + INPUT_FRONTEND_SOCIAL_CLUB_SECONDARY, + INPUT_FRONTEND_DELETE, + INPUT_FRONTEND_ENDSCREEN_ACCEPT, + INPUT_FRONTEND_ENDSCREEN_EXPAND, + INPUT_FRONTEND_SELECT, + INPUT_SCRIPT_LEFT_AXIS_X, + INPUT_SCRIPT_LEFT_AXIS_Y, + INPUT_SCRIPT_RIGHT_AXIS_X, + INPUT_SCRIPT_RIGHT_AXIS_Y, + INPUT_SCRIPT_RUP, + INPUT_SCRIPT_RDOWN, + INPUT_SCRIPT_RLEFT, + INPUT_SCRIPT_RRIGHT, + INPUT_SCRIPT_LB, + INPUT_SCRIPT_RB, + INPUT_SCRIPT_LT, + INPUT_SCRIPT_RT, + INPUT_SCRIPT_LS, + INPUT_SCRIPT_RS, + INPUT_SCRIPT_PAD_UP, + INPUT_SCRIPT_PAD_DOWN, + INPUT_SCRIPT_PAD_LEFT, + INPUT_SCRIPT_PAD_RIGHT, + INPUT_SCRIPT_SELECT, + INPUT_CURSOR_ACCEPT, + INPUT_CURSOR_CANCEL, + INPUT_CURSOR_X, + INPUT_CURSOR_Y, + INPUT_CURSOR_SCROLL_UP, + INPUT_CURSOR_SCROLL_DOWN, + INPUT_ENTER_CHEAT_CODE, + INPUT_INTERACTION_MENU, + INPUT_MP_TEXT_CHAT_ALL, + INPUT_MP_TEXT_CHAT_TEAM, + INPUT_MP_TEXT_CHAT_FRIENDS, + INPUT_MP_TEXT_CHAT_CREW, + INPUT_PUSH_TO_TALK, + INPUT_CREATOR_LS, + INPUT_CREATOR_RS, + INPUT_CREATOR_LT, + INPUT_CREATOR_RT, + INPUT_CREATOR_MENU_TOGGLE, + INPUT_CREATOR_ACCEPT, + INPUT_CREATOR_DELETE, + INPUT_ATTACK2, + INPUT_RAPPEL_JUMP, + INPUT_RAPPEL_LONG_JUMP, + INPUT_RAPPEL_SMASH_WINDOW, + INPUT_PREV_WEAPON, + INPUT_NEXT_WEAPON, + INPUT_MELEE_ATTACK1, + INPUT_MELEE_ATTACK2, + INPUT_WHISTLE, + INPUT_MOVE_LEFT, + INPUT_MOVE_RIGHT, + INPUT_MOVE_UP, + INPUT_MOVE_DOWN, + INPUT_LOOK_LEFT, + INPUT_LOOK_RIGHT, + INPUT_LOOK_UP, + INPUT_LOOK_DOWN, + INPUT_SNIPER_ZOOM_IN, + INPUT_SNIPER_ZOOM_OUT, + INPUT_SNIPER_ZOOM_IN_ALTERNATE, + INPUT_SNIPER_ZOOM_OUT_ALTERNATE, + INPUT_VEH_MOVE_LEFT, + INPUT_VEH_MOVE_RIGHT, + INPUT_VEH_MOVE_UP, + INPUT_VEH_MOVE_DOWN, + INPUT_VEH_GUN_LEFT, + INPUT_VEH_GUN_RIGHT, + INPUT_VEH_GUN_UP, + INPUT_VEH_GUN_DOWN, + INPUT_VEH_LOOK_LEFT, + INPUT_VEH_LOOK_RIGHT, + INPUT_REPLAY_START_STOP_RECORDING, + INPUT_REPLAY_START_STOP_RECORDING_SECONDARY, + INPUT_SCALED_LOOK_LR, + INPUT_SCALED_LOOK_UD, + INPUT_SCALED_LOOK_UP_ONLY, + INPUT_SCALED_LOOK_DOWN_ONLY, + INPUT_SCALED_LOOK_LEFT_ONLY, + INPUT_SCALED_LOOK_RIGHT_ONLY, + INPUT_REPLAY_MARKER_DELETE, + INPUT_REPLAY_CLIP_DELETE, + INPUT_REPLAY_PAUSE, + INPUT_REPLAY_REWIND, + INPUT_REPLAY_FFWD, + INPUT_REPLAY_NEWMARKER, + INPUT_REPLAY_RECORD, + INPUT_REPLAY_SCREENSHOT, + INPUT_REPLAY_HIDEHUD, + INPUT_REPLAY_STARTPOINT, + INPUT_REPLAY_ENDPOINT, + INPUT_REPLAY_ADVANCE, + INPUT_REPLAY_BACK, + INPUT_REPLAY_TOOLS, + INPUT_REPLAY_RESTART, + INPUT_REPLAY_SHOWHOTKEY, + INPUT_REPLAY_CYCLEMARKERLEFT, + INPUT_REPLAY_CYCLEMARKERRIGHT, + INPUT_REPLAY_FOVINCREASE, + INPUT_REPLAY_FOVDECREASE, + INPUT_REPLAY_CAMERAUP, + INPUT_REPLAY_CAMERADOWN, + INPUT_REPLAY_SAVE, + INPUT_REPLAY_TOGGLETIME, + INPUT_REPLAY_TOGGLETIPS, + INPUT_REPLAY_PREVIEW, + INPUT_REPLAY_TOGGLE_TIMELINE, + INPUT_REPLAY_TIMELINE_PICKUP_CLIP, + INPUT_REPLAY_TIMELINE_DUPLICATE_CLIP, + INPUT_REPLAY_TIMELINE_PLACE_CLIP, + INPUT_REPLAY_CTRL, + INPUT_REPLAY_TIMELINE_SAVE, + INPUT_REPLAY_PREVIEW_AUDIO, + INPUT_VEH_DRIVE_LOOK, + INPUT_VEH_DRIVE_LOOK2, + INPUT_VEH_FLY_ATTACK2, + INPUT_RADIO_WHEEL_UD, + INPUT_RADIO_WHEEL_LR, + INPUT_VEH_SLOWMO_UD, + INPUT_VEH_SLOWMO_UP_ONLY, + INPUT_VEH_SLOWMO_DOWN_ONLY, + INPUT_VEH_HYDRAULICS_CONTROL_TOGGLE, + INPUT_VEH_HYDRAULICS_CONTROL_LEFT, + INPUT_VEH_HYDRAULICS_CONTROL_RIGHT, + INPUT_VEH_HYDRAULICS_CONTROL_UP, + INPUT_VEH_HYDRAULICS_CONTROL_DOWN, + INPUT_VEH_HYDRAULICS_CONTROL_LR, + INPUT_VEH_HYDRAULICS_CONTROL_UD, + INPUT_SWITCH_VISOR, + INPUT_VEH_MELEE_HOLD, + INPUT_VEH_MELEE_LEFT, + INPUT_VEH_MELEE_RIGHT, + INPUT_MAP_POI, + INPUT_REPLAY_SNAPMATIC_PHOTO, + INPUT_VEH_CAR_JUMP, + INPUT_VEH_ROCKET_BOOST, + INPUT_VEH_FLY_BOOST, + INPUT_VEH_PARACHUTE, + INPUT_VEH_BIKE_WINGS, + INPUT_VEH_FLY_BOMB_BAY, + INPUT_VEH_FLY_COUNTER, + INPUT_VEH_TRANSFORM, + MAX_INPUTS, + UNDEFINED_INPUT, + DYNAMIC_MAPPING_MOUSE_X, + DYNAMIC_MAPPING_MOUSE_Y, + FIRST_INPUT, + SCRIPTED_INPUT_FIRST, + SCRIPTED_INPUT_LAST +}; + +enum ExplosionTypes : std::uint32_t +{ + EXPLOSION_GRENADE, + EXPLOSION_GRENADELAUNCHER, + EXPLOSION_STICKYBOMB, + EXPLOSION_MOLOTOV, + EXPLOSION_ROCKET, + EXPLOSION_TANKSHELL, + EXPLOSION_HI_OCTANE, + EXPLOSION_CAR, + EXPLOSION_PLANE, + EXPLOSION_PETROL_PUMP, + EXPLOSION_BIKE, + EXPLOSION_DIR_STEAM, + EXPLOSION_DIR_FLAME, + EXPLOSION_DIR_WATER_HYDRANT, + EXPLOSION_DIR_GAS_CANISTER, + EXPLOSION_BOAT, + EXPLOSION_SHIP_DESTROY, + EXPLOSION_TRUCK, + EXPLOSION_BULLET, + EXPLOSION_SMOKEGRENADELAUNCHER, + EXPLOSION_SMOKEGRENADE, + EXPLOSION_BZGAS, + EXPLOSION_FLARE, + EXPLOSION_GAS_CANISTER, + EXPLOSION_EXTINGUISHER, + EXPLOSION_PROGRAMMABLEAR, + EXPLOSION_TRAIN, + EXPLOSION_BARREL, + EXPLOSION_PROPANE, + EXPLOSION_BLIMP, + EXPLOSION_DIR_FLAME_EXPLODE, + EXPLOSION_TANKER, + EXPLOSION_PLANE_ROCKET, + EXPLOSION_VEHICLE_BULLET, + EXPLOSION_GAS_TANK, + EXPLOSION_BIRD_CRAP, + EXPLOSION_SNOWBALL = 39 +}; + +enum HudColor : std::uint32_t +{ + HUD_COLOUR_PURE_WHITE, + HUD_COLOUR_WHITE, + HUD_COLOUR_BLACK, + HUD_COLOUR_GREY, + HUD_COLOUR_GREYLIGHT, + HUD_COLOUR_GREYDARK, + HUD_COLOUR_RED, + HUD_COLOUR_REDLIGHT, + HUD_COLOUR_REDDARK, + HUD_COLOUR_BLUE, + HUD_COLOUR_BLUELIGHT, + HUD_COLOUR_BLUEDARK, + HUD_COLOUR_YELLOW, + HUD_COLOUR_YELLOWLIGHT, + HUD_COLOUR_YELLOWDARK, + HUD_COLOUR_ORANGE, + HUD_COLOUR_ORANGELIGHT, + HUD_COLOUR_ORANGEDARK, + HUD_COLOUR_GREEN, + HUD_COLOUR_GREENLIGHT, + HUD_COLOUR_GREENDARK, + HUD_COLOUR_PURPLE, + HUD_COLOUR_PURPLELIGHT, + HUD_COLOUR_PURPLEDARK, + HUD_COLOUR_PINK, + HUD_COLOUR_RADAR_HEALTH, + HUD_COLOUR_RADAR_ARMOUR, + HUD_COLOUR_RADAR_DAMAGE, + HUD_COLOUR_NET_PLAYER1, + HUD_COLOUR_NET_PLAYER2, + HUD_COLOUR_NET_PLAYER3, + HUD_COLOUR_NET_PLAYER4, + HUD_COLOUR_NET_PLAYER5, + HUD_COLOUR_NET_PLAYER6, + HUD_COLOUR_NET_PLAYER7, + HUD_COLOUR_NET_PLAYER8, + HUD_COLOUR_NET_PLAYER9, + HUD_COLOUR_NET_PLAYER10, + HUD_COLOUR_NET_PLAYER11, + HUD_COLOUR_NET_PLAYER12, + HUD_COLOUR_NET_PLAYER13, + HUD_COLOUR_NET_PLAYER14, + HUD_COLOUR_NET_PLAYER15, + HUD_COLOUR_NET_PLAYER16, + HUD_COLOUR_NET_PLAYER17, + HUD_COLOUR_NET_PLAYER18, + HUD_COLOUR_NET_PLAYER19, + HUD_COLOUR_NET_PLAYER20, + HUD_COLOUR_NET_PLAYER21, + HUD_COLOUR_NET_PLAYER22, + HUD_COLOUR_NET_PLAYER23, + HUD_COLOUR_NET_PLAYER24, + HUD_COLOUR_NET_PLAYER25, + HUD_COLOUR_NET_PLAYER26, + HUD_COLOUR_NET_PLAYER27, + HUD_COLOUR_NET_PLAYER28, + HUD_COLOUR_NET_PLAYER29, + HUD_COLOUR_NET_PLAYER30, + HUD_COLOUR_NET_PLAYER31, + HUD_COLOUR_NET_PLAYER32, + HUD_COLOUR_SIMPLEBLIP_DEFAULT, + HUD_COLOUR_MENU_BLUE, + HUD_COLOUR_MENU_GREY_LIGHT, + HUD_COLOUR_MENU_BLUE_EXTRA_DARK, + HUD_COLOUR_MENU_YELLOW, + HUD_COLOUR_MENU_YELLOW_DARK, + HUD_COLOUR_MENU_GREEN, + HUD_COLOUR_MENU_GREY, + HUD_COLOUR_MENU_GREY_DARK, + HUD_COLOUR_MENU_HIGHLIGHT, + HUD_COLOUR_MENU_STANDARD, + HUD_COLOUR_MENU_DIMMED, + HUD_COLOUR_MENU_EXTRA_DIMMED, + HUD_COLOUR_BRIEF_TITLE, + HUD_COLOUR_MID_GREY_MP, + HUD_COLOUR_NET_PLAYER1_DARK, + HUD_COLOUR_NET_PLAYER2_DARK, + HUD_COLOUR_NET_PLAYER3_DARK, + HUD_COLOUR_NET_PLAYER4_DARK, + HUD_COLOUR_NET_PLAYER5_DARK, + HUD_COLOUR_NET_PLAYER6_DARK, + HUD_COLOUR_NET_PLAYER7_DARK, + HUD_COLOUR_NET_PLAYER8_DARK, + HUD_COLOUR_NET_PLAYER9_DARK, + HUD_COLOUR_NET_PLAYER10_DARK, + HUD_COLOUR_NET_PLAYER11_DARK, + HUD_COLOUR_NET_PLAYER12_DARK, + HUD_COLOUR_NET_PLAYER13_DARK, + HUD_COLOUR_NET_PLAYER14_DARK, + HUD_COLOUR_NET_PLAYER15_DARK, + HUD_COLOUR_NET_PLAYER16_DARK, + HUD_COLOUR_NET_PLAYER17_DARK, + HUD_COLOUR_NET_PLAYER18_DARK, + HUD_COLOUR_NET_PLAYER19_DARK, + HUD_COLOUR_NET_PLAYER20_DARK, + HUD_COLOUR_NET_PLAYER21_DARK, + HUD_COLOUR_NET_PLAYER22_DARK, + HUD_COLOUR_NET_PLAYER23_DARK, + HUD_COLOUR_NET_PLAYER24_DARK, + HUD_COLOUR_NET_PLAYER25_DARK, + HUD_COLOUR_NET_PLAYER26_DARK, + HUD_COLOUR_NET_PLAYER27_DARK, + HUD_COLOUR_NET_PLAYER28_DARK, + HUD_COLOUR_NET_PLAYER29_DARK, + HUD_COLOUR_NET_PLAYER30_DARK, + HUD_COLOUR_NET_PLAYER31_DARK, + HUD_COLOUR_NET_PLAYER32_DARK, + HUD_COLOUR_BRONZE, + HUD_COLOUR_SILVER, + HUD_COLOUR_GOLD, + HUD_COLOUR_PLATINUM, + HUD_COLOUR_GANG1, + HUD_COLOUR_GANG2, + HUD_COLOUR_GANG3, + HUD_COLOUR_GANG4, + HUD_COLOUR_SAME_CREW, + HUD_COLOUR_FREEMODE, + HUD_COLOUR_PAUSE_BG, + HUD_COLOUR_FRIENDLY, + HUD_COLOUR_ENEMY, + HUD_COLOUR_LOCATION, + HUD_COLOUR_PICKUP, + HUD_COLOUR_PAUSE_SINGLEPLAYER, + HUD_COLOUR_FREEMODE_DARK, + HUD_COLOUR_INACTIVE_MISSION, + HUD_COLOUR_DAMAGE, + HUD_COLOUR_PINKLIGHT, + HUD_COLOUR_PM_MITEM_HIGHLIGHT, + HUD_COLOUR_SCRIPT_VARIABLE, + HUD_COLOUR_YOGA, + HUD_COLOUR_TENNIS, + HUD_COLOUR_GOLF, + HUD_COLOUR_SHOOTING_RANGE, + HUD_COLOUR_FLIGHT_SCHOOL, + HUD_COLOUR_NORTH_BLUE, + HUD_COLOUR_SOCIAL_CLUB, + HUD_COLOUR_PLATFORM_BLUE, + HUD_COLOUR_PLATFORM_GREEN, + HUD_COLOUR_PLATFORM_GREY, + HUD_COLOUR_FACEBOOK_BLUE, + HUD_COLOUR_INGAME_BG, + HUD_COLOUR_DARTS, + HUD_COLOUR_WAYPOINT, + HUD_COLOUR_MICHAEL, + HUD_COLOUR_FRANKLIN, + HUD_COLOUR_TREVOR, + HUD_COLOUR_GOLF_P1, + HUD_COLOUR_GOLF_P2, + HUD_COLOUR_GOLF_P3, + HUD_COLOUR_GOLF_P4, + HUD_COLOUR_WAYPOINTLIGHT, + HUD_COLOUR_WAYPOINTDARK, + HUD_COLOUR_PANEL_LIGHT, + HUD_COLOUR_MICHAEL_DARK, + HUD_COLOUR_FRANKLIN_DARK, + HUD_COLOUR_TREVOR_DARK, + HUD_COLOUR_OBJECTIVE_ROUTE, + HUD_COLOUR_PAUSEMAP_TINT, + HUD_COLOUR_PAUSE_DESELECT, + HUD_COLOUR_PM_WEAPONS_PURCHASABLE, + HUD_COLOUR_PM_WEAPONS_LOCKED, + HUD_COLOUR_END_SCREEN_BG, + HUD_COLOUR_CHOP, + HUD_COLOUR_PAUSEMAP_TINT_HALF, + HUD_COLOUR_NORTH_BLUE_OFFICIAL, + HUD_COLOUR_SCRIPT_VARIABLE_2, + HUD_COLOUR_H, + HUD_COLOUR_HDARK, + HUD_COLOUR_T, + HUD_COLOUR_TDARK, + HUD_COLOUR_HSHARD, + HUD_COLOUR_CONTROLLER_MICHAEL, + HUD_COLOUR_CONTROLLER_FRANKLIN, + HUD_COLOUR_CONTROLLER_TREVOR, + HUD_COLOUR_CONTROLLER_CHOP, + HUD_COLOUR_VIDEO_EDITOR_VIDEO, + HUD_COLOUR_VIDEO_EDITOR_AUDIO, + HUD_COLOUR_VIDEO_EDITOR_TEXT, + HUD_COLOUR_HB_BLUE, + HUD_COLOUR_HB_YELLOW, + HUD_COLOUR_VIDEO_EDITOR_SCORE, + HUD_COLOUR_VIDEO_EDITOR_AUDIO_FADEOUT, + HUD_COLOUR_VIDEO_EDITOR_TEXT_FADEOUT, + HUD_COLOUR_VIDEO_EDITOR_SCORE_FADEOUT, + HUD_COLOUR_HEIST_BACKGROUND, + HUD_COLOUR_VIDEO_EDITOR_AMBIENT, + HUD_COLOUR_VIDEO_EDITOR_AMBIENT_FADEOUT, + HUD_COLOUR_GB, + HUD_COLOUR_G, + HUD_COLOUR_B, + HUD_COLOUR_LOW_FLOW, + HUD_COLOUR_LOW_FLOW_DARK, + HUD_COLOUR_G1, + HUD_COLOUR_G2, + HUD_COLOUR_G3, + HUD_COLOUR_G4, + HUD_COLOUR_G5, + HUD_COLOUR_G6, + HUD_COLOUR_G7, + HUD_COLOUR_G8, + HUD_COLOUR_G9, + HUD_COLOUR_G10, + HUD_COLOUR_G11, + HUD_COLOUR_G12, + HUD_COLOUR_G13, + HUD_COLOUR_G14, + HUD_COLOUR_G15, + HUD_COLOUR_ADVERSARY, + HUD_COLOUR_DEGEN_RED, + HUD_COLOUR_DEGEN_YELLOW, + HUD_COLOUR_DEGEN_GREEN, + HUD_COLOUR_DEGEN_CYAN, + HUD_COLOUR_DEGEN_BLUE, + HUD_COLOUR_DEGEN_MAGENTA, + HUD_COLOUR_STUNT_1, + HUD_COLOUR_STUNT_2 +}; + +enum RadioStationIndexes : std::uint32_t +{ + RADIO_LSROCKRADIO, + RADIO_NONSTOPPOPFM, + RADIO_RADIOLOSSANTOS, + RADIO_CHANNELX, + RADIO_WCTR, + RADIO_REBELRADIO, + RADIO_SOULWAX, + RADIO_EASTLOSFM, + RADIO_WESTCOASTCLASSICS, + RADIO_BLUEARK, + RADIO_WORLDWIDEFM, + RADIO_FLYLO, + RADIO_THELOWDOWN, + RADIO_THELAB, + RADIO_RADIOMIRRORPARK, + RADIO_SPACE1032, + RADIO_VINEWOODBOULEVARD, + RADIO_BLONDEDLOSSANDOS, + RADIO_SELFRADIO, + RADIO_BLANECOUNTYTALK, + RADIO_LOSSANTOSUNDERGROUNDRADIO, + RADIO_OFF +}; + +enum NetObjEntityType : uint16_t +{ + NetObjEntityType_Automobile, + NetObjEntityType_Bike, + NetObjEntityType_Boat, + NetObjEntityType_Door, + NetObjEntityType_Heli, + NetObjEntityType_Object, + NetObjEntityType_Ped, + NetObjEntityType_Pickup, + NetObjEntityType_PickupPlacement, + NetObjEntityType_Plane, + NetObjEntityType_Submarine, + NetObjEntityType_Player, + NetObjEntityType_Trailer, + NetObjEntityType_Train, + NetObjEntityType_Max +}; + +enum RockstarEvent : uint16_t +{ + OBJECT_ID_FREED_EVENT, + OBJECT_ID_REQUEST_EVENT, + ARRAY_DATA_VERIFY_EVENT, + SCRIPT_ARRAY_DATA_VERIFY_EVENT, + REQUEST_CONTROL_EVENT, + GIVE_CONTROL_EVENT, + WEAPON_DAMAGE_EVENT, + REQUEST_PICKUP_EVENT, + REQUEST_MAP_PICKUP_EVENT, + GAME_CLOCK_EVENT, + GAME_WEATHER_EVENT, + RESPAWN_PLAYER_PED_EVENT, + GIVE_WEAPON_EVENT, + REMOVE_WEAPON_EVENT, + REMOVE_ALL_WEAPONS_EVENT, + VEHICLE_COMPONENT_CONTROL_EVENT, + FIRE_EVENT, + EXPLOSION_EVENT, + START_PROJECTILE_EVENT, + UPDATE_PROJECTILE_TARGET_EVENT, + REMOVE_PROJECTILE_ENTITY_EVENT, + BREAK_PROJECTILE_TARGET_LOCK_EVENT, + ALTER_WANTED_LEVEL_EVENT, + CHANGE_RADIO_STATION_EVENT, + RAGDOLL_REQUEST_EVENT, + PLAYER_TAUNT_EVENT, + PLAYER_CARD_STAT_EVENT, + DOOR_BREAK_EVENT, + SCRIPTED_GAME_EVENT, + REMOTE_SCRIPT_INFO_EVENT, + REMOTE_SCRIPT_LEAVE_EVENT, + MARK_AS_NO_LONGER_NEEDED_EVENT, + CONVERT_TO_SCRIPT_ENTITY_EVENT, + SCRIPT_WORLD_STATE_EVENT, + CLEAR_AREA_EVENT, + CLEAR_RECTANGLE_AREA_EVENT, + NETWORK_REQUEST_SYNCED_SCENE_EVENT, + NETWORK_START_SYNCED_SCENE_EVENT, + NETWORK_STOP_SYNCED_SCENE_EVENT, + NETWORK_UPDATE_SYNCED_SCENE_EVENT, + INCIDENT_ENTITY_EVENT, + GIVE_PED_SCRIPTED_TASK_EVENT, + GIVE_PED_SEQUENCE_TASK_EVENT, + NETWORK_CLEAR_PED_TASKS_EVENT, + NETWORK_START_PED_ARREST_EVENT, + NETWORK_START_PED_UNCUFF_EVENT, + NETWORK_SOUND_CAR_HORN_EVENT, + NETWORK_ENTITY_AREA_STATUS_EVENT, + NETWORK_GARAGE_OCCUPIED_STATUS_EVENT, + PED_CONVERSATION_LINE_EVENT, + SCRIPT_ENTITY_STATE_CHANGE_EVENT, + NETWORK_PLAY_SOUND_EVENT, + NETWORK_STOP_SOUND_EVENT, + NETWORK_PLAY_AIRDEFENSE_FIRE_EVENT, + NETWORK_BANK_REQUEST_EVENT, + NETWORK_AUDIO_BARK_EVENT, + REQUEST_DOOR_EVENT, + NETWORK_TRAIN_REPORT_EVENT, + NETWORK_TRAIN_REQUEST_EVENT, + NETWORK_INCREMENT_STAT_EVENT, + MODIFY_VEHICLE_LOCK_WORD_STATE_DATA, + MODIFY_PTFX_WORD_STATE_DATA_SCRIPTED_EVOLVE_EVENT, + REQUEST_PHONE_EXPLOSION_EVENT, + REQUEST_DETACHMENT_EVENT, + KICK_VOTES_EVENT, + GIVE_PICKUP_REWARDS_EVENT, + NETWORK_CRC_HASH_CHECK_EVENT, + BLOW_UP_VEHICLE_EVENT, + NETWORK_SPECIAL_FIRE_EQUIPPED_WEAPON, + NETWORK_RESPONDED_TO_THREAT_EVENT, + NETWORK_SHOUT_TARGET_POSITION, + VOICE_DRIVEN_MOUTH_MOVEMENT_FINISHED_EVENT, + PICKUP_DESTROYED_EVENT, + UPDATE_PLAYER_SCARS_EVENT, + NETWORK_CHECK_EXE_SIZE_EVENT, + NETWORK_PTFX_EVENT, + NETWORK_PED_SEEN_DEAD_PED_EVENT, + REMOVE_STICKY_BOMB_EVENT, + NETWORK_CHECK_CODE_CRCS_EVENT, + INFORM_SILENCED_GUNSHOT_EVENT, + PED_PLAY_PAIN_EVENT, + CACHE_PLAYER_HEAD_BLEND_DATA_EVENT, + REMOVE_PED_FROM_PEDGROUP_EVENT, + REPORT_MYSELF_EVENT, + REPORT_CASH_SPAWN_EVENT, + ACTIVATE_VEHICLE_SPECIAL_ABILITY_EVENT, + BLOCK_WEAPON_SELECTION, + NETWORK_CHECK_CATALOG_CRC +}; + +enum BlipIcons +{ + Null, + Circle, + Empty, + Cop, + CopSearchZone, + Square, + PlayerArrow, + North, + Waypoint, + BigCircle, + BigCircleOutline, + ArrowUpOutlined, + ArrowDownOutlined, + ArrowUp, + ArrowDown, + PoliceHelicopter, + Jet, + Number1, + Number2, + Number3, + Number4, + Number5, + Number6, + Number7, + Number8, + Number9, + Number10, + GTAOCrew, + GTAOFriend, + CableCar = 36, + RaceFinish = 38, + Safehouse = 40, + Cop2, + CopCar, + Helicopter, + ChatBubble = 47, + Garage = 50, + Drugs, + ConvenienceStore, + PoliceCar = 56, + Circle2, + CircleWithStar, + ConvenienceStore2, + ShieldWithStar, + Asterisk, + Helicopter2 = 64, + StrangersAndFreaks = 66, + ArmoredTruck, + TowTruck, + Barber = 71, + LosSantosCustoms, + Clothes, + TattooParlor = 75, + Simeon, + Lester, + Michael, + Trevor, + Heist1, + Rampage = 84, + VinewoodTours, + Franklin, + Franklin2 = 88, + Chinese, + FlightSchool, + Bar = 93, + ParachuteJump, + Heist2 = 96, + CarWash = 100, + ComedyClub = 102, + Darts, + FIB = 106, + Heist3, + DollarSign, + Golf, + AmmuNation, + Exile = 112, + ShootingRange = 119, + Solomon, + StripClub, + Tennis, + Triathlon = 126, + OffRoadRaceFinish, + Key = 134, + MovieTheater, + Music, + Marijuana = 140, + Hunting, + ArmsTraffickingGround = 147, + Nigel = 149, + AssaultRifle, + Bat, + Grenade, + Health, + Knife, + Molotov, + Pistol, + RPG, + Shotgun, + SMG, + Sniper, + SonicWave, + PointOfInterest, + GTAOPassive, + GTAOUsingMenu, + Link = 171, + Minigun = 173, + GrenadeLauncher, + Armor, + Castle, + CameraIcon = 184, + Handcuffs = 188, + Yoga = 197, + Cab, + Number11, + Number12, + Number13, + Number14, + Number15, + Number16, + Shrink, + Epsilon, + PersonalVehicleCar = 225, + PersonalVehicleBike, + Custody = 237, + ArmsTraffickingAir = 251, + Fairground = 266, + PropertyManagement, + Altruist = 269, + Enemy, + Chop = 273, + Dead, + Hooker = 279, + Friend, + BountyHit = 303, + GTAOMission, + GTAOSurvival, + CrateDrop, + PlaneDrop, + Sub, + Race, + Deathmatch, + ArmWrestling, + AmmuNationShootingRange = 313, + RaceAir, + RaceCar, + RaceSea, + GarbageTruck = 318, + Motorcycle = 348, + SafehouseForSale = 350, + Package, + MartinMadrazo, + EnemyHelicopter, + Boost, + Devin, + Marina, + Garage2, + GolfFlag, + Hangar, + Helipad, + JerryCan, + Masks, + HeistSetup, + Incapacitated, + PickupSpawn, + BoilerSuit, + Completed, + Rockets, + GarageForSale, + HelipadForSale, + MarinaForSale, + HangarForSale, + Business = 374, + BusinessForSale, + RaceBike, + Parachute, + TeamDeathmatch, + RaceFoot, + VehicleDeathmatch, + Barry, + Dom, + MaryAnn, + Cletus, + Josh, + Minute, + Omega, + Tonya, + Paparazzo, + Crosshair, + Creator = 398, + CreatorDirection, + Abigail, + Blimp, + Repair, + Testosterone, + Dinghy, + Fanatic, + GangAttack, + Information, + CaptureBriefcase, + LastTeamStanding, + Boat, + CaptureHouse, + JerryCan2 = 415, + RPLogo, + GTAOPlayerSafehouse, + GTAOPlayerSafehouseBounty, + CaptureAmericanFlag, + CaptureFlag, + Tank, + PlayerHelicopter, + PlayerPlane, + PlayerJet, + PlayerArrowNoColor, + PlayerLAPV, + PlayerBoat, + HeistRoom, + Stopwatch = 430, + DollarSignCircled, + Crosshair2, + Crosshair3, + DollarSignSquared, + RaceFlagWithArrow, + Fire, + DoubleDeathmatchSkulls, + CastleIcon, + Crown, + SupplyBag, + QuadirectionalArrows, + Fox, + Triangle, + ThreeBars, + LamarDavis, + Mechanic, + LamarDavisOne, + LamarDavisTwo, + LamarDavisThree, + LamarDavisFour, + LamarDavisFive, + LamarDavisSix, + LamarDavisSeven, + LamarDavisEight, + Yacht, + SmallQuestionMark, + GymBag, + CrosshairWithPersonInMiddle, + PlayerSpeaking, + Taxi, + ShieldWithX, + YachtMinimap, + Fox2, + Hourglass, + SmallQuestionMark2, + Stopwatch2, + Restart, + SunWithEye, + Marijuana2, + Shotgun2, + Jetski, + EyeWithLineThroughIt, + Garage3, + GarageForSale2, + Building, + BuildingForSale, + Truck, + Crate, + Trailer, + Person, + Cargobob, + BigOutlineSquare, + Speedometer, + Ghost, + RemoteControl, + Bomb, + Shield, + StuntRace, + Heart, + StuntRaceMoney, + TeamDeathMatch2, + HouseWithGarage, + QuadirectionalArrowsWithMotorcycle, + CircleWithMotorcycle, + MotorcycleRace, + Weed, + Cocaine, + ForgedDocuments, + Meth, + CounterfeitMoney, + DrugPickup, + BigOne, + BigTwo, + BigThree, + BigFour, + BigFive, + BigSix, + BigSeven, + BigEight, + BigNine, + BigTen, + ATVQuad, + Bus, + BagMaybe, + UpArrowOnSquare, + FourPlayers, + EightPlayers, + TenPlayers, + TwelvePlayers, + SixteenPlayers, + Laptop, + Supercycle, + Supercar, + GarageWithCar, + PaperDocument, + ShieldWithBlackStar, + CraneClaw, + PhantomWedge, + BoxvilleArmored, + Ruiner2000, + RampBuggy, + Wastelander, + RocketVoltic, + TechnicalAqua, + LetterA, + LetterB, + LetterC, + LetterD, + LetterE, + LetterF, + LetterG, + LetterH, + SkullWithTriangleTop, + Wrench, + SteeringWheel, + Trolphy, + Rocket, + Missile, + Bullets, + Parachute2, + Number5WithCircle, + Number10WithCircle, + Number15WithCircle, + Number20WithCircle, + Number30WithCircle, + Bullets2, + Bunker, + InsurgentPickup, + Opressor, + TechnicalCustom, + DuneFAV, + HalfTrack, + AntiAircraftTrailer, + Satelite, + BunkerWithPeople, + ScrewdriverAndHammer, + UpgradedWeaponWorkbench, + CrateWithStraps, + AircraftHanger, + Icosikaitetragon, + RaceflagWithQuestionmark, + AlphaZ1, + Bombushka, + Havok, + HowardNX25, + Hunter, + Ultralight, + Mogul, + Molotok, + Nokota, + Pyro, + Rogue, + Starling, + Starbreeze, + Tula, + GymBagWithLetterH, + LockedCrate, + SateliteIcon, + Avenger, + IAAFacility, + DoomsdayHeist, + SAMTurret, + HackingPuzzleRed, + HackingPuzzleDiode, + Stromburg, + Deluxo, + ThrusterJetpack, + TM02KhanjaliTank, + RCV, + Volatol, + Barrage, + Akula, + Chernobog, + SpeakerMaybe, + YellowishBrownMoneySign, + ComputerTerminal, + HackingPuzzleMirror, + HackingPuzzleReflector, + HackingPuzzleRotator, + RaceFlagWithCrosshair, + RaceFlagWithSteeringWheel, + SeaSparrow, + Caracara, + Nightclub, + CrateB, + VanB, + Diamond, + BullionStacks, + CalculatorMaybe, + CarWithLightningBolt, + HeartIcon, + StarWithAdd, + StarWithSubtract, + BombWithAdd, + BombWithSubtract, + CrosshairDJ, + Drone, + Cashregister, + SpeakerMaybeBigger, + Skull, + FestivalBus, + Terrorbyte, + Menacer, + Scramjet, + PounderCustom, + MuleCustom, + SpeedoCustom, + BlimpIcon, + OpressorMKII, + B11StrikeForce, + GearWithCar, + GearWithMoney, + GearWithWrench, + RaceFlagWithGear, + CrosshairOnCar, + RCBandito, + RCRemote, + FlameSign, + ArrowSign, + GearSign, + RepeatSign, + DownArrowSign, + ExplosionSign, + WheelExplosionSign, + ElevatorSign, + ElevatorSign2, + EjectorPlatformSign, + Bruiser, + Brutus, + Cerberus, + Deathbike, + Dominator, + Impaler, + Imperator, + Issi, + Sasquatch, + Scarab, + Slamvan, + ZR380 +}; + +enum BlipColors +{ + None, + Red, + Green, + Blue, + PlayerColor, + YellowMission, + FriendlyVehicle = 0x26, + MichaelColor = 0x2A, + FranklinColor, + TravorColor, + BlipColorEnemy = 0x31, + MissionVehicle = 0x36, + RedMission = 0x3B, + YellowMission2 = 0x3C, + Mission = 0x42, + WaypointColor = 0x54 +}; + +enum BlipDisplayBits +{ + BlipIsBright = (1 << 1), + BlipEngageFlashing = (1 << 3), + BlipFlashForRoute = (1 << 5), + BlipIsOnMinimap = (1 << 6), + BlipIsHighDetail = (1 << 8), + BlipUseBlipColorForDirection = (1 << 9), + BlipIsSmall = (1 << 10), + BlipShowCone = (1 << 11), + BlipIsMissionCreatorBlip = (1 << 12), + BlipShowCheckmark = (1 << 15), + BlipShowDollarSign = (1 << 16), + BlipShowHeadingIndicator = (1 << 17), + BlipShowFullCircle = (1 << 18), + BlipIsFriend = (1 << 19), + BlipIsCrew = (1 << 20), + BlipIsSelected = (1 << 22), +}; + +enum BlipRenderBits +{ + BlipIsOnScreen = (1 << 6) +}; + +enum eFrameFlags : std::uint32_t +{ + eFrameFlagExplosiveAmmo = 1 << 11, + eFrameFlagFireAmmo = 1 << 12, + eFrameFlagExplosiveMelee = 1 << 13, + eFrameFlagSuperJump = 1 << 14, +}; + +enum eNetObjType +{ + NET_OBJ_TYPE_AUTOMOBILE, + NET_OBJ_TYPE_BIKE, + NET_OBJ_TYPE_BOAT, + NET_OBJ_TYPE_DOOR, + NET_OBJ_TYPE_HELI, + NET_OBJ_TYPE_OBJECT, + NET_OBJ_TYPE_PED, + NET_OBJ_TYPE_PICKUP, + NET_OBJ_TYPE_PICKUP_PLACEMENT, + NET_OBJ_TYPE_PLANE, + NET_OBJ_TYPE_SUBMARINE, + NET_OBJ_TYPE_PLAYER, + NET_OBJ_TYPE_TRAILER, + NET_OBJ_TYPE_TRAIN +}; + +enum eNetObjectFlags : std::uint16_t +{ + NET_OBJ_FLAGS_FROM_SCRIPT = 1 << 2, + NET_OBJ_FLAGS_SCRIPTED = 1 << 6, +}; + +enum eAckCode : std::uint32_t +{ + ACKCODE_SUCCESS, + ACKCODE_FAIL, + ACKCODE_WRONG_OWNER, + ACKCODE_OUT_OF_SEQUENCE, + ACKCODE_NO_OBJECT, + ACKCODE_TOO_MANY_OBJECTS, + ACKCODE_CANT_APPLY_DATA, + ACKCODE_MATCH_NOT_STARTED, + ACKCODE_NONE +}; + +enum PedBones : std::uint32_t +{ + SKEL_ROOT = 0x0, + SKEL_Pelvis = 0x2E28, + SKEL_L_Thigh = 0xE39F, + SKEL_L_Calf = 0xF9BB, + SKEL_L_Foot = 0x3779, + SKEL_L_Toe0 = 0x83C, + EO_L_Foot = 0x84C5, + EO_L_Toe = 0x68BD, + IK_L_Foot = 0xFEDD, + PH_L_Foot = 0xE175, + MH_L_Knee = 0xB3FE, + SKEL_R_Thigh = 0xCA72, + SKEL_R_Calf = 0x9000, + SKEL_R_Foot = 0xCC4D, + SKEL_R_Toe0 = 0x512D, + EO_R_Foot = 0x1096, + EO_R_Toe = 0x7163, + IK_R_Foot = 0x8AAE, + PH_R_Foot = 0x60E6, + MH_R_Knee = 0x3FCF, + RB_L_ThighRoll = 0x5C57, + RB_R_ThighRoll = 0x192A, + SKEL_Spine_Root = 0xE0FD, + SKEL_Spine0 = 0x5C01, + SKEL_Spine1 = 0x60F0, + SKEL_Spine2 = 0x60F1, + SKEL_Spine3 = 0x60F2, + SKEL_L_Clavicle = 0xFCD9, + SKEL_L_UpperArm = 0xB1C5, + SKEL_L_Forearm = 0xEEEB, + SKEL_L_Hand = 0x49D9, + SKEL_L_Finger00 = 0x67F2, + SKEL_L_Finger01 = 0xFF9, + SKEL_L_Finger02 = 0xFFA, + SKEL_L_Finger10 = 0x67F3, + SKEL_L_Finger11 = 0x1049, + SKEL_L_Finger12 = 0x104A, + SKEL_L_Finger20 = 0x67F4, + SKEL_L_Finger21 = 0x1059, + SKEL_L_Finger22 = 0x105A, + SKEL_L_Finger30 = 0x67F5, + SKEL_L_Finger31 = 0x1029, + SKEL_L_Finger32 = 0x102A, + SKEL_L_Finger40 = 0x67F6, + SKEL_L_Finger41 = 0x1039, + SKEL_L_Finger42 = 0x103A, + PH_L_Hand = 0xEB95, + IK_L_Hand = 0x8CBD, + RB_L_ForeArmRoll = 0xEE4F, + RB_L_ArmRoll = 0x1470, + MH_L_Elbow = 0x58B7, + SKEL_R_Clavicle = 0x29D2, + SKEL_R_UpperArm = 0x9D4D, + SKEL_R_Forearm = 0x6E5C, + SKEL_R_Hand = 0xDEAD, + SKEL_R_Finger00 = 0xE5F2, + SKEL_R_Finger01 = 0xFA10, + SKEL_R_Finger02 = 0xFA11, + SKEL_R_Finger10 = 0xE5F3, + SKEL_R_Finger11 = 0xFA60, + SKEL_R_Finger12 = 0xFA61, + SKEL_R_Finger20 = 0xE5F4, + SKEL_R_Finger21 = 0xFA70, + SKEL_R_Finger22 = 0xFA71, + SKEL_R_Finger30 = 0xE5F5, + SKEL_R_Finger31 = 0xFA40, + SKEL_R_Finger32 = 0xFA41, + SKEL_R_Finger40 = 0xE5F6, + SKEL_R_Finger41 = 0xFA50, + SKEL_R_Finger42 = 0xFA51, + PH_R_Hand = 0x6F06, + IK_R_Hand = 0x188E, + RB_R_ForeArmRoll = 0xAB22, + RB_R_ArmRoll = 0x90FF, + MH_R_Elbow = 0xBB0, + SKEL_Neck_1 = 0x9995, + SKEL_Head = 0x796E, + IK_Head = 0x322C, + FACIAL_facialRoot = 0xFE2C, + FB_L_Brow_Out_000 = 0xE3DB, + FB_L_Lid_Upper_000 = 0xB2B6, + FB_L_Eye_000 = 0x62AC, + FB_L_CheekBone_000 = 0x542E, + FB_L_Lip_Corner_000 = 0x74AC, + FB_R_Lid_Upper_000 = 0xAA10, + FB_R_Eye_000 = 0x6B52, + FB_R_CheekBone_000 = 0x4B88, + FB_R_Brow_Out_000 = 0x54C, + FB_R_Lip_Corner_000 = 0x2BA6, + FB_Brow_Centre_000 = 0x9149, + FB_UpperLipRoot_000 = 0x4ED2, + FB_UpperLip_000 = 0xF18F, + FB_L_Lip_Top_000 = 0x4F37, + FB_R_Lip_Top_000 = 0x4537, + FB_Jaw_000 = 0xB4A0, + FB_LowerLipRoot_000 = 0x4324, + FB_LowerLip_000 = 0x508F, + FB_L_Lip_Bot_000 = 0xB93B, + FB_R_Lip_Bot_000 = 0xC33B, + FB_Tongue_000 = 0xB987, + RB_Neck_1 = 0x8B93, + SPR_L_Breast = 0xFC8E, + SPR_R_Breast = 0x885F, + IK_Root = 0xDD1C, + SKEL_Neck_2 = 0x5FD4, + SKEL_Pelvis1 = 0xD003, + SKEL_PelvisRoot = 0x45FC, + SKEL_SADDLE = 0x9524, + MH_L_CalfBack = 0x1013, + MH_L_ThighBack = 0x600D, + SM_L_Skirt = 0xC419, + MH_R_CalfBack = 0xB013, + MH_R_ThighBack = 0x51A3, + SM_R_Skirt = 0x7712, + SM_M_BackSkirtRoll = 0xDBB, + SM_L_BackSkirtRoll = 0x40B2, + SM_R_BackSkirtRoll = 0xC141, + SM_M_FrontSkirtRoll = 0xCDBB, + SM_L_FrontSkirtRoll = 0x9B69, + SM_R_FrontSkirtRoll = 0x86F1, + SM_CockNBalls_ROOT = 0xC67D, + SM_CockNBalls = 0x9D34, + MH_L_Finger00 = 0x8C63, + MH_L_FingerBulge00 = 0x5FB8, + MH_L_Finger10 = 0x8C53, + MH_L_FingerTop00 = 0xA244, + MH_L_HandSide = 0xC78A, + MH_Watch = 0x2738, + MH_L_Sleeve = 0x933C, + MH_R_Finger00 = 0x2C63, + MH_R_FingerBulge00 = 0x69B8, + MH_R_Finger10 = 0x2C53, + MH_R_FingerTop00 = 0xEF4B, + MH_R_HandSide = 0x68FB, + MH_R_Sleeve = 0x92DC, + FACIAL_jaw = 0xB21, + FACIAL_underChin = 0x8A95, + FACIAL_L_underChin = 0x234E, + FACIAL_chin = 0xB578, + FACIAL_chinSkinBottom = 0x98BC, + FACIAL_L_chinSkinBottom = 0x3E8F, + FACIAL_R_chinSkinBottom = 0x9E8F, + FACIAL_tongueA = 0x4A7C, + FACIAL_tongueB = 0x4A7D, + FACIAL_tongueC = 0x4A7E, + FACIAL_tongueD = 0x4A7F, + FACIAL_tongueE = 0x4A80, + FACIAL_L_tongueE = 0x35F2, + FACIAL_R_tongueE = 0x2FF2, + FACIAL_L_tongueD = 0x35F1, + FACIAL_R_tongueD = 0x2FF1, + FACIAL_L_tongueC = 0x35F0, + FACIAL_R_tongueC = 0x2FF0, + FACIAL_L_tongueB = 0x35EF, + FACIAL_R_tongueB = 0x2FEF, + FACIAL_L_tongueA = 0x35EE, + FACIAL_R_tongueA = 0x2FEE, + FACIAL_chinSkinTop = 0x7226, + FACIAL_L_chinSkinTop = 0x3EB3, + FACIAL_chinSkinMid = 0x899A, + FACIAL_L_chinSkinMid = 0x4427, + FACIAL_L_chinSide = 0x4A5E, + FACIAL_R_chinSkinMid = 0xF5AF, + FACIAL_R_chinSkinTop = 0xF03B, + FACIAL_R_chinSide = 0xAA5E, + FACIAL_R_underChin = 0x2BF4, + FACIAL_L_lipLowerSDK = 0xB9E1, + FACIAL_L_lipLowerAnalog = 0x244A, + FACIAL_L_lipLowerThicknessV = 0xC749, + FACIAL_L_lipLowerThicknessH = 0xC67B, + FACIAL_lipLowerSDK = 0x7285, + FACIAL_lipLowerAnalog = 0xD97B, + FACIAL_lipLowerThicknessV = 0xC5BB, + FACIAL_lipLowerThicknessH = 0xC5ED, + FACIAL_R_lipLowerSDK = 0xA034, + FACIAL_R_lipLowerAnalog = 0xC2D9, + FACIAL_R_lipLowerThicknessV = 0xC6E9, + FACIAL_R_lipLowerThicknessH = 0xC6DB, + FACIAL_nose = 0x20F1, + FACIAL_L_nostril = 0x7322, + FACIAL_L_nostrilThickness = 0xC15F, + FACIAL_noseLower = 0xE05A, + FACIAL_L_noseLowerThickness = 0x79D5, + FACIAL_R_noseLowerThickness = 0x7975, + FACIAL_noseTip = 0x6A60, + FACIAL_R_nostril = 0x7922, + FACIAL_R_nostrilThickness = 0x36FF, + FACIAL_noseUpper = 0xA04F, + FACIAL_L_noseUpper = 0x1FB8, + FACIAL_noseBridge = 0x9BA3, + FACIAL_L_nasolabialFurrow = 0x5ACA, + FACIAL_L_nasolabialBulge = 0xCD78, + FACIAL_L_cheekLower = 0x6907, + FACIAL_L_cheekLowerBulge1 = 0xE3FB, + FACIAL_L_cheekLowerBulge2 = 0xE3FC, + FACIAL_L_cheekInner = 0xE7AB, + FACIAL_L_cheekOuter = 0x8161, + FACIAL_L_eyesackLower = 0x771B, + FACIAL_L_eyeball = 0x1744, + FACIAL_L_eyelidLower = 0x998C, + FACIAL_L_eyelidLowerOuterSDK = 0xFE4C, + FACIAL_L_eyelidLowerOuterAnalog = 0xB9AA, + FACIAL_L_eyelashLowerOuter = 0xD7F6, + FACIAL_L_eyelidLowerInnerSDK = 0xF151, + FACIAL_L_eyelidLowerInnerAnalog = 0x8242, + FACIAL_L_eyelashLowerInner = 0x4CCF, + FACIAL_L_eyelidUpper = 0x97C1, + FACIAL_L_eyelidUpperOuterSDK = 0xAF15, + FACIAL_L_eyelidUpperOuterAnalog = 0x67FA, + FACIAL_L_eyelashUpperOuter = 0x27B7, + FACIAL_L_eyelidUpperInnerSDK = 0xD341, + FACIAL_L_eyelidUpperInnerAnalog = 0xF092, + FACIAL_L_eyelashUpperInner = 0x9B1F, + FACIAL_L_eyesackUpperOuterBulge = 0xA559, + FACIAL_L_eyesackUpperInnerBulge = 0x2F2A, + FACIAL_L_eyesackUpperOuterFurrow = 0xC597, + FACIAL_L_eyesackUpperInnerFurrow = 0x52A7, + FACIAL_forehead = 0x9218, + FACIAL_L_foreheadInner = 0x843, + FACIAL_L_foreheadInnerBulge = 0x767C, + FACIAL_L_foreheadOuter = 0x8DCB, + FACIAL_skull = 0x4221, + FACIAL_foreheadUpper = 0xF7D6, + FACIAL_L_foreheadUpperInner = 0xCF13, + FACIAL_L_foreheadUpperOuter = 0x509B, + FACIAL_R_foreheadUpperInner = 0xCEF3, + FACIAL_R_foreheadUpperOuter = 0x507B, + FACIAL_L_temple = 0xAF79, + FACIAL_L_ear = 0x19DD, + FACIAL_L_earLower = 0x6031, + FACIAL_L_masseter = 0x2810, + FACIAL_L_jawRecess = 0x9C7A, + FACIAL_L_cheekOuterSkin = 0x14A5, + FACIAL_R_cheekLower = 0xF367, + FACIAL_R_cheekLowerBulge1 = 0x599B, + FACIAL_R_cheekLowerBulge2 = 0x599C, + FACIAL_R_masseter = 0x810, + FACIAL_R_jawRecess = 0x93D4, + FACIAL_R_ear = 0x1137, + FACIAL_R_earLower = 0x8031, + FACIAL_R_eyesackLower = 0x777B, + FACIAL_R_nasolabialBulge = 0xD61E, + FACIAL_R_cheekOuter = 0xD32, + FACIAL_R_cheekInner = 0x737C, + FACIAL_R_noseUpper = 0x1CD6, + FACIAL_R_foreheadInner = 0xE43, + FACIAL_R_foreheadInnerBulge = 0x769C, + FACIAL_R_foreheadOuter = 0x8FCB, + FACIAL_R_cheekOuterSkin = 0xB334, + FACIAL_R_eyesackUpperInnerFurrow = 0x9FAE, + FACIAL_R_eyesackUpperOuterFurrow = 0x140F, + FACIAL_R_eyesackUpperInnerBulge = 0xA359, + FACIAL_R_eyesackUpperOuterBulge = 0x1AF9, + FACIAL_R_nasolabialFurrow = 0x2CAA, + FACIAL_R_temple = 0xAF19, + FACIAL_R_eyeball = 0x1944, + FACIAL_R_eyelidUpper = 0x7E14, + FACIAL_R_eyelidUpperOuterSDK = 0xB115, + FACIAL_R_eyelidUpperOuterAnalog = 0xF25A, + FACIAL_R_eyelashUpperOuter = 0xE0A, + FACIAL_R_eyelidUpperInnerSDK = 0xD541, + FACIAL_R_eyelidUpperInnerAnalog = 0x7C63, + FACIAL_R_eyelashUpperInner = 0x8172, + FACIAL_R_eyelidLower = 0x7FDF, + FACIAL_R_eyelidLowerOuterSDK = 0x1BD, + FACIAL_R_eyelidLowerOuterAnalog = 0x457B, + FACIAL_R_eyelashLowerOuter = 0xBE49, + FACIAL_R_eyelidLowerInnerSDK = 0xF351, + FACIAL_R_eyelidLowerInnerAnalog = 0xE13, + FACIAL_R_eyelashLowerInner = 0x3322, + FACIAL_L_lipUpperSDK = 0x8F30, + FACIAL_L_lipUpperAnalog = 0xB1CF, + FACIAL_L_lipUpperThicknessH = 0x37CE, + FACIAL_L_lipUpperThicknessV = 0x38BC, + FACIAL_lipUpperSDK = 0x1774, + FACIAL_lipUpperAnalog = 0xE064, + FACIAL_lipUpperThicknessH = 0x7993, + FACIAL_lipUpperThicknessV = 0x7981, + FACIAL_L_lipCornerSDK = 0xB1C, + FACIAL_L_lipCornerAnalog = 0xE568, + FACIAL_L_lipCornerThicknessUpper = 0x7BC, + FACIAL_L_lipCornerThicknessLower = 0xDD42, + FACIAL_R_lipUpperSDK = 0x7583, + FACIAL_R_lipUpperAnalog = 0x51CF, + FACIAL_R_lipUpperThicknessH = 0x382E, + FACIAL_R_lipUpperThicknessV = 0x385C, + FACIAL_R_lipCornerSDK = 0xB3C, + FACIAL_R_lipCornerAnalog = 0xEE0E, + FACIAL_R_lipCornerThicknessUpper = 0x54C3, + FACIAL_R_lipCornerThicknessLower = 0x2BBA, + MH_MulletRoot = 0x3E73, + MH_MulletScaler = 0xA1C2, + MH_Hair_Scale = 0xC664, + MH_Hair_Crown = 0x1675, + SM_Torch = 0x8D6, + FX_Light = 0x8959, + FX_Light_Scale = 0x5038, + FX_Light_Switch = 0xE18E, + BagRoot = 0xAD09, + BagPivotROOT = 0xB836, + BagPivot = 0x4D11, + BagBody = 0xAB6D, + BagBone_R = 0x937, + BagBone_L = 0x991, + SM_LifeSaver_Front = 0x9420, + SM_R_Pouches_ROOT = 0x2962, + SM_R_Pouches = 0x4141, + SM_L_Pouches_ROOT = 0x2A02, + SM_L_Pouches = 0x4B41, + SM_Suit_Back_Flapper = 0xDA2D, + SPR_CopRadio = 0x8245, + SM_LifeSaver_Back = 0x2127, + MH_BlushSlider = 0xA0CE, + SKEL_Tail_01 = 0x347, + SKEL_Tail_02 = 0x348, + MH_L_Concertina_B = 0xC988, + MH_L_Concertina_A = 0xC987, + MH_R_Concertina_B = 0xC8E8, + MH_R_Concertina_A = 0xC8E7, + MH_L_ShoulderBladeRoot = 0x8711, + MH_L_ShoulderBlade = 0x4EAF, + MH_R_ShoulderBladeRoot = 0x3A0A, + MH_R_ShoulderBlade = 0x54AF, + FB_R_Ear_000 = 0x6CDF, + SPR_R_Ear = 0x63B6, + FB_L_Ear_000 = 0x6439, + SPR_L_Ear = 0x5B10, + FB_TongueA_000 = 0x4206, + FB_TongueB_000 = 0x4207, + FB_TongueC_000 = 0x4208, + SKEL_L_Toe1 = 0x1D6B, + SKEL_R_Toe1 = 0xB23F, + SKEL_Tail_03 = 0x349, + SKEL_Tail_04 = 0x34A, + SKEL_Tail_05 = 0x34B, + SPR_Gonads_ROOT = 0xBFDE, + SPR_Gonads = 0x1C00, + FB_L_Brow_Out_001 = 0xE3DB, + FB_L_Lid_Upper_001 = 0xB2B6, + FB_L_Eye_001 = 0x62AC, + FB_L_CheekBone_001 = 0x542E, + FB_L_Lip_Corner_001 = 0x74AC, + FB_R_Lid_Upper_001 = 0xAA10, + FB_R_Eye_001 = 0x6B52, + FB_R_CheekBone_001 = 0x4B88, + FB_R_Brow_Out_001 = 0x54C, + FB_R_Lip_Corner_001 = 0x2BA6, + FB_Brow_Centre_001 = 0x9149, + FB_UpperLipRoot_001 = 0x4ED2, + FB_UpperLip_001 = 0xF18F, + FB_L_Lip_Top_001 = 0x4F37, + FB_R_Lip_Top_001 = 0x4537, + FB_Jaw_001 = 0xB4A0, + FB_LowerLipRoot_001 = 0x4324, + FB_LowerLip_001 = 0x508F, + FB_L_Lip_Bot_001 = 0xB93B, + FB_R_Lip_Bot_001 = 0xC33B, + FB_Tongue_001 = 0xB987 +}; \ No newline at end of file diff --git a/BigBaseV2/src/gta/fwddec.hpp b/BigBaseV2/src/gta/fwddec.hpp index dc76114d..3a6c1fba 100644 --- a/BigBaseV2/src/gta/fwddec.hpp +++ b/BigBaseV2/src/gta/fwddec.hpp @@ -30,6 +30,8 @@ namespace rage class netGameEvent; class netEventMgr; + + class netSyncTree; class netObject; class netObjectMgrBase; @@ -42,6 +44,9 @@ namespace rage class fwExtensibleBase; class fwEntity; class fwArchetype; + + class CVehicle; + class CPed; } class GtaThread; @@ -55,8 +60,6 @@ class CEntity; class CDynamicEntity; class CPhysical; -class CPed; -class CVehicle; class CObject; class CPickup; @@ -66,3 +69,4 @@ class CVehicleFactory; class CNetGamePlayer; class CNetworkPlayerMgr; class CPlayerInfo; +class CNetworkObjectMgr; diff --git a/BigBaseV2/src/gta/matrix.hpp b/BigBaseV2/src/gta/matrix.hpp index 3ee35c21..29097730 100644 --- a/BigBaseV2/src/gta/matrix.hpp +++ b/BigBaseV2/src/gta/matrix.hpp @@ -19,4 +19,16 @@ namespace rage float raw[4 * 4] = {}; }; }; + + class CViewPort + { + public: + char _0x0000[0x24C]; + float m_matrix[0x10]; + }; + + struct ScreenResolution + { + uint32_t w, h; + }; } diff --git a/BigBaseV2/src/gta/net_game_event.hpp b/BigBaseV2/src/gta/net_game_event.hpp index fa4d2def..14658657 100644 --- a/BigBaseV2/src/gta/net_game_event.hpp +++ b/BigBaseV2/src/gta/net_game_event.hpp @@ -1,58 +1,207 @@ -#pragma once -#include -#include "fwddec.hpp" - -#pragma pack(push, 1) -namespace rage -{ - class netGameEvent - { - public: - virtual ~netGameEvent() = default; - - virtual const char *get_name() const = 0; - virtual bool is_applicable_to_player(netPlayer *player) = 0; - virtual bool time_to_resend(std::uint32_t time) = 0; - virtual bool needs_reply() = 0; - - virtual void serialize(datBitBuffer *buffer, netPlayer* source_player, netPlayer* target_player) = 0; - virtual void deserialize(datBitBuffer *buffer, netPlayer* source_player, netPlayer* target_player) = 0; - - virtual bool handle(netPlayer* source_player, netPlayer* target_player) = 0; - - virtual void deserialize_reply(datBitBuffer *buffer, netPlayer* reply_player) = 0; - virtual void serialize_reply(datBitBuffer *buffer, netPlayer* souce_player) = 0; - - virtual void deserialize_extra_data(datBitBuffer *buffer, bool is_reply, netPlayer *player, netPlayer *player2) = 0; - virtual void serialize_extra_data(datBitBuffer *buffer, bool is_reply, netPlayer *player, netPlayer *player2) = 0; - - virtual void _0x60() = 0; - virtual void _0x68() = 0; - virtual void _0x70() = 0; - virtual void _0x78() = 0; - - virtual bool operator==(netGameEvent const& other) = 0; - virtual bool operator!=(netGameEvent const& other) = 0; - - virtual bool must_persist() = 0; - virtual bool must_persist_when_out_of_scope() = 0; - virtual bool has_timed_out() = 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 - 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]; // 0x2C - }; - - static_assert(sizeof(netGameEvent) == 0x30); -} -#pragma pack(pop) +#pragma once +#include +#include "pointers.hpp" +#include "fwddec.hpp" + +#pragma pack(push, 1) +namespace rage +{ + class netPlayer; + class datBitBuffer + { + public: + inline datBitBuffer(void* data, uint32_t size) + { + m_data = data; + m_f8 = 0; + m_maxBit = size * 8; + m_unkBit = 0; + m_curBit = 0; + m_unk2Bit = 0; + m_flagBits = 0; + } + + inline uint32_t GetPosition() + { + return m_unkBit; + } + + inline bool Seek(uint32_t bits) + { + if (bits >= 0) + { + uint32_t length = (m_flagBits & 1) ? m_maxBit : m_curBit; + + if (bits <= length) + { + m_unkBit = bits; + } + } + + return false; + } + + inline int GetDataLength() + { + int leftoverBit = (m_curBit % 8) ? 1 : 0; + + return (m_curBit / 8) + leftoverBit; + } + + inline bool ReadByte(uint8_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 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) \ No newline at end of file diff --git a/BigBaseV2/src/gta/net_object_mgr.hpp b/BigBaseV2/src/gta/net_object_mgr.hpp new file mode 100644 index 00000000..c951f4b5 --- /dev/null +++ b/BigBaseV2/src/gta/net_object_mgr.hpp @@ -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 + { + }; + + 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 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); + }; +}; \ No newline at end of file diff --git a/BigBaseV2/src/gta/player.hpp b/BigBaseV2/src/gta/player.hpp index d6473d31..d1bc41ee 100644 --- a/BigBaseV2/src/gta/player.hpp +++ b/BigBaseV2/src/gta/player.hpp @@ -1,112 +1,141 @@ -#pragma once -#include -#include "fwddec.hpp" -#include "extensible.hpp" -#include "vector.hpp" - -#pragma pack(push, 1) -namespace rage -{ -# pragma warning(push) -# pragma warning(disable : 4201) // nonstandard extension used: nameless struct/union - union netAddress - { - std::uint32_t m_raw; - struct - { - std::uint8_t m_field4; - std::uint8_t m_field3; - std::uint8_t m_field2; - std::uint8_t m_field1; - }; - }; -# pragma warning(pop) - - class netPlayerData - { - public: - std::uint64_t m_unk1; // 0x00 - std::uint64_t m_unk2; // 0x08 - std::uint32_t m_sec_key_time; // 0x10 - netAddress m_lan_ip; // 0x14 - std::uint16_t m_lan_port; // 0x18 - char m_pad1[0x02]; // 0x1A - netAddress m_relay_ip; // 0x1C - std::uint16_t m_relay_port; // 0x20 - char m_pad2[0x02]; // 0x22 - netAddress m_online_ip; // 0x24 - std::uint16_t m_online_port; // 0x26 - char m_pad3[0x1E]; // 0x28 - std::uint64_t m_rockstar_id; // 0x48 - bool m_id_flag; // 0x50 - char m_pad4[0x0B]; // 0x51 - char m_name[0x14]; // 0x5C - }; - - class nonPhysicalPlayerDataBase - { - public: - virtual ~nonPhysicalPlayerDataBase() = default; // 0 (0x00) - virtual void unk_0x08() = 0; // 1 (0x08) - virtual void unk_0x10() = 0; // 2 (0x10) - virtual void unk_0x18() = 0; // 3 (0x18) - virtual void log(netLoggingInterface* logger) = 0; // 4 (0x20) - }; - - class netPlayer - { - public: - virtual ~netPlayer() = default; // 0 (0x00) - virtual void reset() = 0; // 1 (0x08) - virtual bool is_valid() const = 0; // 2 (0x10) - virtual const char *get_name() const = 0; // 3 (0x18) - virtual void _0x20() = 0; // 4 (0x20) - virtual bool is_host() = 0; // 5 (0x28) - virtual netPlayerData *get_net_data() = 0; // 6 (0x30) - virtual void _0x38() = 0; // 7 (0x38) - }; - - class netPlayerMgrBase - { - public: - virtual ~netPlayerMgrBase() = default; // 0 (0x00) - }; -} - -namespace gta -{ - inline constexpr auto num_players = 32; -} - -class CNonPhysicalPlayerData : public rage::nonPhysicalPlayerDataBase -{ -public: - std::int32_t m_bubble_id; // 0x08 - std::int32_t m_player_id; // 0x0C - rage::vector3 m_position; // 0x10 -}; - -class CNetGamePlayer : public rage::netPlayer -{ -public: - -}; - -class CWantedData -{ -public: - char m_padding[0x98]; - std::int32_t m_wanted_level; -}; - -class CPlayerInfo : public rage::fwExtensibleBase -{ -public: - char m_padding1[0x1D8]; // 0x20 - std::uint32_t m_frame_flags; // 0x1F8 - char m_padding2[0x584]; // 0x1FC - CWantedData m_wanted_data; // 0x780 -}; - -static_assert(sizeof(CNonPhysicalPlayerData) == 0x1C); -#pragma pack(pop) +#pragma once +#include +#include "fwddec.hpp" +#include "extensible.hpp" +#include "vector.hpp" +#include "gta\natives.hpp" + +#pragma pack(push, 1) +namespace rage +{ +# pragma warning(push) +# pragma warning(disable : 4201) // nonstandard extension used: nameless struct/union + union netAddress + { + std::uint32_t m_raw; + struct + { + std::uint8_t m_field4; + std::uint8_t m_field3; + std::uint8_t m_field2; + std::uint8_t m_field1; + }; + }; +# pragma warning(pop) + + class netPlayerData + { + public: + std::uint64_t m_unk1; // 0x00 + std::uint64_t m_unk2; // 0x08 + std::uint32_t m_sec_key_time; // 0x10 + netAddress m_lan_ip; // 0x14 + std::uint16_t m_lan_port; // 0x18 + char m_pad1[0x02]; // 0x1A + netAddress m_relay_ip; // 0x1C + std::uint16_t m_relay_port; // 0x20 + char m_pad2[0x02]; // 0x22 + netAddress m_online_ip; // 0x24 + std::uint16_t m_online_port; // 0x26 + char m_pad3[0x1E]; // 0x28 + std::uint64_t m_rockstar_id; // 0x48 + bool m_id_flag; // 0x50 + char m_pad4[0x0B]; // 0x51 + char m_name[0x14]; // 0x5C + }; + + class nonPhysicalPlayerDataBase + { + public: + virtual ~nonPhysicalPlayerDataBase() = default; // 0 (0x00) + virtual void unk_0x08() = 0; // 1 (0x08) + virtual void unk_0x10() = 0; // 2 (0x10) + virtual void unk_0x18() = 0; // 3 (0x18) + virtual void log(netLoggingInterface* logger) = 0; // 4 (0x20) + }; + + class netPlayer + { + public: + virtual ~netPlayer() = default; // 0 (0x00) + virtual void reset() = 0; // 1 (0x08) + virtual bool is_valid() const = 0; // 2 (0x10) + virtual const char *get_name() const = 0; // 3 (0x18) + virtual void _0x20() = 0; // 4 (0x20) + virtual bool is_host() = 0; // 5 (0x28) + virtual netPlayerData *get_net_data() = 0; // 6 (0x30) + virtual void _0x38() = 0; // 7 (0x38) + }; + + class netPlayerMgrBase + { + public: + virtual ~netPlayerMgrBase() = default; // 0 (0x00) + }; +} + +namespace gta +{ + inline constexpr auto num_players = 32; +} + +class CNonPhysicalPlayerData : public rage::nonPhysicalPlayerDataBase +{ +public: + std::int32_t m_bubble_id; // 0x08 + std::int32_t m_player_id; // 0x0C + rage::vector3 m_position; // 0x10 +}; + +class CNetGamePlayer : public rage::netPlayer +{ +public: + char pad_0x0008[0x25]; //0x0008 + std::int8_t player_id; //0x002D + char pad_0x002E[0x7A]; //0x002E + CPlayerInfo* player_info; //0x00A8 + char pad_0x00B0[0x14]; //0x00B0 + std::uint32_t bubble_id; //0x00C4 + Player player; //0x00C8 +}; + +class CPlayerInfo : public rage::fwExtensibleBase +{ +public: + char pad_0020[20]; //0x0020 + std::uint32_t m_internal_ip; //0x0034 + std::uint16_t m_internal_port; //0x0038 + char pad_003A[2]; //0x003A + std::uint32_t m_relay_ip; //0x003C + std::uint16_t m_relay_port; //0x0040 + char pad_0042[2]; //0x0042 + 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) diff --git a/BigBaseV2/src/gta/replay.hpp b/BigBaseV2/src/gta/replay.hpp new file mode 100644 index 00000000..1c5437eb --- /dev/null +++ b/BigBaseV2/src/gta/replay.hpp @@ -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) \ No newline at end of file diff --git a/BigBaseV2/src/gui/base_tab.cpp b/BigBaseV2/src/gui/base_tab.cpp index 39341f86..038f7601 100644 --- a/BigBaseV2/src/gui/base_tab.cpp +++ b/BigBaseV2/src/gui/base_tab.cpp @@ -12,13 +12,13 @@ namespace big { if (ImGui::BeginTabItem("Test")) { - static const char* demo_combo[] + const char* const demo_combo[] { "One", "Two", "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 (ImGui::Checkbox("Bool", g_settings.options["demo bool"].get())) @@ -41,15 +41,10 @@ namespace big } 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; 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. + script::get_current()->yield(); STREAMING::SET_MODEL_AS_NO_LONGER_NEEDED(hash); if (*g_pointers->m_is_session_started) @@ -61,13 +56,6 @@ namespace big NETWORK::SET_NETWORK_ID_EXISTS_ON_ALL_MACHINES(networkId, true); 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 }