284 lines
11 KiB
C++
284 lines
11 KiB
C++
#pragma once
|
|
|
|
#include "CommandListActionItemData.hpp"
|
|
|
|
enum eExplosionTag
|
|
{
|
|
EXP_TAG_DONTCARE = -1,
|
|
EXP_TAG_GRENADE,
|
|
EXP_TAG_GRENADELAUNCHER,
|
|
EXP_TAG_STICKYBOMB,
|
|
EXP_TAG_MOLOTOV,
|
|
EXP_TAG_ROCKET,
|
|
EXP_TAG_TANKSHELL,
|
|
EXP_TAG_HI_OCTANE,
|
|
EXP_TAG_CAR,
|
|
EXP_TAG_PLANE,
|
|
EXP_TAG_PETROL_PUMP,
|
|
EXP_TAG_BIKE,
|
|
EXP_TAG_DIR_STEAM,
|
|
EXP_TAG_DIR_FLAME,
|
|
EXP_TAG_DIR_WATER_HYDRANT,
|
|
EXP_TAG_DIR_GAS_CANISTER,
|
|
EXP_TAG_BOAT,
|
|
EXP_TAG_SHIP_DESTROY,
|
|
EXP_TAG_TRUCK,
|
|
EXP_TAG_BULLET,
|
|
EXP_TAG_SMOKEGRENADELAUNCHER,
|
|
EXP_TAG_SMOKEGRENADE,
|
|
EXP_TAG_BZGAS,
|
|
EXP_TAG_FLARE,
|
|
EXP_TAG_GAS_CANISTER,
|
|
EXP_TAG_EXTINGUISHER,
|
|
EXP_TAG_PROGRAMMABLEAR,
|
|
EXP_TAG_TRAIN,
|
|
EXP_TAG_BARREL,
|
|
EXP_TAG_PROPANE,
|
|
EXP_TAG_BLIMP,
|
|
EXP_TAG_DIR_FLAME_EXPLODE,
|
|
EXP_TAG_TANKER,
|
|
EXP_TAG_PLANE_ROCKET,
|
|
EXP_TAG_VEHICLE_BULLET,
|
|
EXP_TAG_GAS_TANK,
|
|
EXP_TAG_BIRD_CRAP,
|
|
EXP_TAG_RAILGUN,
|
|
EXP_TAG_BLIMP2,
|
|
EXP_TAG_FIREWORK,
|
|
EXP_TAG_SNOWBALL,
|
|
EXP_TAG_PROXMINE,
|
|
EXP_TAG_VALKYRIE_CANNON,
|
|
EXP_TAG_AIR_DEFENCE,
|
|
EXP_TAG_PIPEBOMB,
|
|
EXP_TAG_VEHICLEMINE,
|
|
EXP_TAG_EXPLOSIVEAMMO,
|
|
EXP_TAG_APCSHELL,
|
|
EXP_TAG_BOMB_CLUSTER,
|
|
EXP_TAG_BOMB_GAS,
|
|
EXP_TAG_BOMB_INCENDIARY,
|
|
EXP_TAG_BOMB_STANDARD,
|
|
EXP_TAG_TORPEDO,
|
|
EXP_TAG_TORPEDO_UNDERWATER,
|
|
EXP_TAG_BOMBUSHKA_CANNON,
|
|
EXP_TAG_BOMB_CLUSTER_SECONDARY,
|
|
EXP_TAG_HUNTER_BARRAGE,
|
|
EXP_TAG_HUNTER_CANNON,
|
|
EXP_TAG_ROGUE_CANNON,
|
|
EXP_TAG_MINE_UNDERWATER,
|
|
EXP_TAG_ORBITAL_CANNON,
|
|
EXP_TAG_BOMB_STANDARD_WIDE,
|
|
EXP_TAG_EXPLOSIVEAMMO_SHOTGUN,
|
|
EXP_TAG_OPPRESSOR2_CANNON,
|
|
EXP_TAG_MORTAR_KINETIC,
|
|
EXP_TAG_VEHICLEMINE_KINETIC,
|
|
EXP_TAG_VEHICLEMINE_EMP,
|
|
EXP_TAG_VEHICLEMINE_SPIKE,
|
|
EXP_TAG_VEHICLEMINE_SLICK,
|
|
EXP_TAG_VEHICLEMINE_TAR,
|
|
EXP_TAG_SCRIPT_DRONE,
|
|
EXP_TAG_RAYGUN,
|
|
EXP_TAG_BURIEDMINE,
|
|
EXP_TAG_SCRIPT_MISSILE,
|
|
EXP_TAG_RCTANK_ROCKET,
|
|
EXP_TAG_BOMB_WATER,
|
|
EXP_TAG_BOMB_WATER_SECONDARY,
|
|
EXP_TAG_MINE_CNCSPIKE,
|
|
EXP_TAG_BZGAS_MK2,
|
|
EXP_TAG_FLASHGRENADE,
|
|
EXP_TAG_STUNGRENADE,
|
|
EXP_TAG_CNC_KINETICRAM,
|
|
EXP_TAG_SCRIPT_MISSILE_LARGE,
|
|
EXP_TAG_SUBMARINE_BIG,
|
|
EXP_TAG_EMPLAUNCHER_EMP,
|
|
EXP_TAG_RAILGUNXM3,
|
|
EXP_TAG_BALANCED_CANNONS,
|
|
};
|
|
|
|
namespace Stand
|
|
{
|
|
inline Label explosion_tag_labels[] = {
|
|
LOC("EXP_TAG_GRENADE"),
|
|
LOC("EXP_TAG_GRENADELAUNCHER"),
|
|
LOC("EXP_TAG_STICKYBOMB"),
|
|
LOC("EXP_TAG_MOLOTOV"),
|
|
LOC("EXP_TAG_ROCKET"),
|
|
LOC("EXP_TAG_TANKSHELL"),
|
|
LOC("EXP_TAG_HI_OCTANE"),
|
|
LOC("EXP_TAG_CAR"),
|
|
LOC("EXP_TAG_PLANE"),
|
|
LOC("EXP_TAG_PETROL_PUMP"),
|
|
LOC("EXP_TAG_BIKE"),
|
|
LOC("EXP_TAG_DIR_STEAM"),
|
|
LOC("EXP_TAG_DIR_FLAME"),
|
|
LOC("EXP_TAG_DIR_WATER_HYDRANT"),
|
|
LOC("EXP_TAG_DIR_GAS_CANISTER"),
|
|
LOC("EXP_TAG_BOAT"),
|
|
LOC("EXP_TAG_SHIP_DESTROY"),
|
|
LOC("EXP_TAG_TRUCK"),
|
|
LOC("EXP_TAG_BULLET"),
|
|
LOC("EXP_TAG_SMOKEGRENADELAUNCHER"),
|
|
LOC("EXP_TAG_SMOKEGRENADE"),
|
|
LOC("EXP_TAG_BZGAS"),
|
|
LOC("EXP_TAG_FLARE"),
|
|
LOC("EXP_TAG_GAS_CANISTER"),
|
|
LOC("EXP_TAG_EXTINGUISHER"),
|
|
LOC("EXP_TAG_PROGRAMMABLEAR"),
|
|
LOC("EXP_TAG_TRAIN"),
|
|
LOC("EXP_TAG_BARREL"),
|
|
LOC("EXP_TAG_PROPANE"),
|
|
LOC("EXP_TAG_BLIMP"),
|
|
LOC("EXP_TAG_DIR_FLAME_EXPLODE"),
|
|
LOC("EXP_TAG_TANKER"),
|
|
LOC("EXP_TAG_PLANE_ROCKET"),
|
|
LOC("EXP_TAG_VEHICLE_BULLET"),
|
|
LOC("EXP_TAG_GAS_TANK"),
|
|
LOC("EXP_TAG_BIRD_CRAP"),
|
|
LOC("EXP_TAG_RAILGUN"),
|
|
LOC("EXP_TAG_BLIMP2"),
|
|
LOC("EXP_TAG_FIREWORK"),
|
|
LOC("EXP_TAG_SNOWBALL"),
|
|
LOC("EXP_TAG_PROXMINE"),
|
|
LOC("EXP_TAG_VALKYRIE_CANNON"),
|
|
LOC("EXP_TAG_AIR_DEFENCE"),
|
|
LOC("EXP_TAG_PIPEBOMB"),
|
|
LOC("EXP_TAG_VEHICLEMINE"),
|
|
LOC("EXP_TAG_EXPLOSIVEAMMO"),
|
|
LOC("EXP_TAG_APCSHELL"),
|
|
LOC("EXP_TAG_BOMB_CLUSTER"),
|
|
LOC("EXP_TAG_BOMB_GAS"),
|
|
LOC("EXP_TAG_BOMB_INCENDIARY"),
|
|
LOC("EXP_TAG_BOMB_STANDARD"),
|
|
LOC("EXP_TAG_TORPEDO"),
|
|
LOC("EXP_TAG_TORPEDO_UNDERWATER"),
|
|
LOC("EXP_TAG_BOMBUSHKA_CANNON"),
|
|
LOC("EXP_TAG_BOMB_CLUSTER_SECONDARY"),
|
|
LOC("EXP_TAG_HUNTER_BARRAGE"),
|
|
LOC("EXP_TAG_HUNTER_CANNON"),
|
|
LOC("EXP_TAG_ROGUE_CANNON"),
|
|
LOC("EXP_TAG_MINE_UNDERWATER"),
|
|
LOC("EXP_TAG_ORBITAL_CANNON"),
|
|
LOC("EXP_TAG_BOMB_STANDARD_WIDE"),
|
|
LOC("EXP_TAG_EXPLOSIVEAMMO_SHOTGUN"),
|
|
LOC("EXP_TAG_OPPRESSOR2_CANNON"),
|
|
LOC("EXP_TAG_MORTAR_KINETIC"),
|
|
LOC("EXP_TAG_VEHICLEMINE_KINETIC"),
|
|
LOC("EXP_TAG_VEHICLEMINE_EMP"),
|
|
LOC("EXP_TAG_VEHICLEMINE_SPIKE"),
|
|
LOC("EXP_TAG_VEHICLEMINE_SLICK"),
|
|
LOC("EXP_TAG_VEHICLEMINE_TAR"),
|
|
LOC("EXP_TAG_SCRIPT_DRONE"),
|
|
LOC("EXP_TAG_RAYGUN"),
|
|
LOC("EXP_TAG_BURIEDMINE"),
|
|
LOC("EXP_TAG_SCRIPT_MISSILE"),
|
|
LOC("EXP_TAG_RCTANK_ROCKET"),
|
|
LOC("EXP_TAG_BOMB_WATER"),
|
|
LOC("EXP_TAG_BOMB_WATER_SECONDARY"),
|
|
LOC("EXP_TAG_MINE_CNCSPIKE"),
|
|
LOC("EXP_TAG_BZGAS_MK2"),
|
|
LOC("EXP_TAG_FLASHGRENADE"),
|
|
LOC("EXP_TAG_STUNGRENADE"),
|
|
LOC("EXP_TAG_CNC_KINETICRAM"),
|
|
LOC("EXP_TAG_SCRIPT_MISSILE_LARGE"),
|
|
LOC("EXP_TAG_SUBMARINE_BIG"),
|
|
LOC("EXP_TAG_EMPLAUNCHER_EMP"),
|
|
LOC("EXP_TAG_RAILGUNXM3"),
|
|
LOC("EXP_TAG_BALANCED_CANNONS"),
|
|
};
|
|
|
|
[[nodiscard]] inline std::vector<CommandListActionItemData> eExplosionTag_getListActionItems(bool includeDontCare = false)
|
|
{
|
|
std::vector<CommandListActionItemData> options = {
|
|
{ EXP_TAG_GRENADE, explosion_tag_labels[EXP_TAG_GRENADE] },
|
|
{ EXP_TAG_GRENADELAUNCHER, explosion_tag_labels[EXP_TAG_GRENADELAUNCHER] },
|
|
{ EXP_TAG_STICKYBOMB, explosion_tag_labels[EXP_TAG_STICKYBOMB] },
|
|
{ EXP_TAG_MOLOTOV, explosion_tag_labels[EXP_TAG_MOLOTOV] },
|
|
{ EXP_TAG_ROCKET, explosion_tag_labels[EXP_TAG_ROCKET] },
|
|
{ EXP_TAG_TANKSHELL, explosion_tag_labels[EXP_TAG_TANKSHELL] },
|
|
{ EXP_TAG_HI_OCTANE, explosion_tag_labels[EXP_TAG_HI_OCTANE] },
|
|
{ EXP_TAG_CAR, explosion_tag_labels[EXP_TAG_CAR] },
|
|
{ EXP_TAG_PLANE, explosion_tag_labels[EXP_TAG_PLANE] },
|
|
{ EXP_TAG_PETROL_PUMP, explosion_tag_labels[EXP_TAG_PETROL_PUMP] },
|
|
{ EXP_TAG_BIKE, explosion_tag_labels[EXP_TAG_BIKE] },
|
|
{ EXP_TAG_DIR_STEAM, explosion_tag_labels[EXP_TAG_DIR_STEAM] },
|
|
{ EXP_TAG_DIR_FLAME, explosion_tag_labels[EXP_TAG_DIR_FLAME] },
|
|
{ EXP_TAG_DIR_WATER_HYDRANT, explosion_tag_labels[EXP_TAG_DIR_WATER_HYDRANT] },
|
|
{ EXP_TAG_DIR_GAS_CANISTER, explosion_tag_labels[EXP_TAG_DIR_GAS_CANISTER] },
|
|
{ EXP_TAG_BOAT, explosion_tag_labels[EXP_TAG_BOAT] },
|
|
{ EXP_TAG_SHIP_DESTROY, explosion_tag_labels[EXP_TAG_SHIP_DESTROY] },
|
|
{ EXP_TAG_TRUCK, explosion_tag_labels[EXP_TAG_TRUCK] },
|
|
{ EXP_TAG_BULLET, explosion_tag_labels[EXP_TAG_BULLET] },
|
|
{ EXP_TAG_SMOKEGRENADELAUNCHER, explosion_tag_labels[EXP_TAG_SMOKEGRENADELAUNCHER] },
|
|
{ EXP_TAG_SMOKEGRENADE, explosion_tag_labels[EXP_TAG_SMOKEGRENADE] },
|
|
{ EXP_TAG_BZGAS, explosion_tag_labels[EXP_TAG_BZGAS] },
|
|
{ EXP_TAG_FLARE, explosion_tag_labels[EXP_TAG_FLARE] },
|
|
{ EXP_TAG_GAS_CANISTER, explosion_tag_labels[EXP_TAG_GAS_CANISTER] },
|
|
{ EXP_TAG_EXTINGUISHER, explosion_tag_labels[EXP_TAG_EXTINGUISHER] },
|
|
{ EXP_TAG_PROGRAMMABLEAR, explosion_tag_labels[EXP_TAG_PROGRAMMABLEAR] },
|
|
{ EXP_TAG_TRAIN, explosion_tag_labels[EXP_TAG_TRAIN] },
|
|
{ EXP_TAG_BARREL, explosion_tag_labels[EXP_TAG_BARREL] },
|
|
{ EXP_TAG_PROPANE, explosion_tag_labels[EXP_TAG_PROPANE] },
|
|
{ EXP_TAG_BLIMP, explosion_tag_labels[EXP_TAG_BLIMP] },
|
|
//{EXP_TAG_DIR_FLAME_EXPLODE, explosion_tag_labels[EXP_TAG_DIR_FLAME_EXPLODE]}, -- Same as 12
|
|
{ EXP_TAG_TANKER, explosion_tag_labels[EXP_TAG_TANKER] },
|
|
{ EXP_TAG_PLANE_ROCKET, explosion_tag_labels[EXP_TAG_PLANE_ROCKET] },
|
|
{ EXP_TAG_VEHICLE_BULLET, explosion_tag_labels[EXP_TAG_VEHICLE_BULLET] },
|
|
{ EXP_TAG_GAS_TANK, explosion_tag_labels[EXP_TAG_GAS_TANK] },
|
|
//{EXP_TAG_BIRD_CRAP, explosion_tag_labels[EXP_TAG_BIRD_CRAP]}, -- No effect as far as I can tell
|
|
{ EXP_TAG_RAILGUN, explosion_tag_labels[EXP_TAG_RAILGUN] },
|
|
{ EXP_TAG_BLIMP2, explosion_tag_labels[EXP_TAG_BLIMP2] },
|
|
{ EXP_TAG_FIREWORK, explosion_tag_labels[EXP_TAG_FIREWORK] },
|
|
{ EXP_TAG_SNOWBALL, explosion_tag_labels[EXP_TAG_SNOWBALL] },
|
|
{ EXP_TAG_PROXMINE, explosion_tag_labels[EXP_TAG_PROXMINE] },
|
|
{ EXP_TAG_VALKYRIE_CANNON, explosion_tag_labels[EXP_TAG_VALKYRIE_CANNON] },
|
|
{ EXP_TAG_AIR_DEFENCE, explosion_tag_labels[EXP_TAG_AIR_DEFENCE] },
|
|
{ EXP_TAG_PIPEBOMB, explosion_tag_labels[EXP_TAG_PIPEBOMB] },
|
|
{ EXP_TAG_VEHICLEMINE, explosion_tag_labels[EXP_TAG_VEHICLEMINE] },
|
|
{ EXP_TAG_EXPLOSIVEAMMO, explosion_tag_labels[EXP_TAG_EXPLOSIVEAMMO] },
|
|
{ EXP_TAG_APCSHELL, explosion_tag_labels[EXP_TAG_APCSHELL] },
|
|
{ EXP_TAG_BOMB_CLUSTER, explosion_tag_labels[EXP_TAG_BOMB_CLUSTER] },
|
|
{ EXP_TAG_BOMB_GAS, explosion_tag_labels[EXP_TAG_BOMB_GAS] },
|
|
{ EXP_TAG_BOMB_INCENDIARY, explosion_tag_labels[EXP_TAG_BOMB_INCENDIARY] },
|
|
{ EXP_TAG_BOMB_STANDARD, explosion_tag_labels[EXP_TAG_BOMB_STANDARD] },
|
|
{ EXP_TAG_TORPEDO, explosion_tag_labels[EXP_TAG_TORPEDO] },
|
|
{ EXP_TAG_TORPEDO_UNDERWATER, explosion_tag_labels[EXP_TAG_TORPEDO_UNDERWATER] },
|
|
{ EXP_TAG_BOMBUSHKA_CANNON, explosion_tag_labels[EXP_TAG_BOMBUSHKA_CANNON] },
|
|
{ EXP_TAG_BOMB_CLUSTER_SECONDARY, explosion_tag_labels[EXP_TAG_BOMB_CLUSTER_SECONDARY] },
|
|
{ EXP_TAG_HUNTER_BARRAGE, explosion_tag_labels[EXP_TAG_HUNTER_BARRAGE] },
|
|
{ EXP_TAG_HUNTER_CANNON, explosion_tag_labels[EXP_TAG_HUNTER_CANNON] },
|
|
{ EXP_TAG_ROGUE_CANNON, explosion_tag_labels[EXP_TAG_ROGUE_CANNON] },
|
|
{ EXP_TAG_MINE_UNDERWATER, explosion_tag_labels[EXP_TAG_MINE_UNDERWATER] },
|
|
{ EXP_TAG_ORBITAL_CANNON, explosion_tag_labels[EXP_TAG_ORBITAL_CANNON] },
|
|
{ EXP_TAG_BOMB_STANDARD_WIDE, explosion_tag_labels[EXP_TAG_BOMB_STANDARD_WIDE] },
|
|
{ EXP_TAG_EXPLOSIVEAMMO_SHOTGUN, explosion_tag_labels[EXP_TAG_EXPLOSIVEAMMO_SHOTGUN] },
|
|
{ EXP_TAG_OPPRESSOR2_CANNON, explosion_tag_labels[EXP_TAG_OPPRESSOR2_CANNON] },
|
|
{ EXP_TAG_MORTAR_KINETIC, explosion_tag_labels[EXP_TAG_MORTAR_KINETIC] },
|
|
{ EXP_TAG_VEHICLEMINE_KINETIC, explosion_tag_labels[EXP_TAG_VEHICLEMINE_KINETIC] },
|
|
{ EXP_TAG_VEHICLEMINE_EMP, explosion_tag_labels[EXP_TAG_VEHICLEMINE_EMP] },
|
|
{ EXP_TAG_VEHICLEMINE_SPIKE, explosion_tag_labels[EXP_TAG_VEHICLEMINE_SPIKE] },
|
|
{ EXP_TAG_VEHICLEMINE_SLICK, explosion_tag_labels[EXP_TAG_VEHICLEMINE_SLICK] },
|
|
{ EXP_TAG_VEHICLEMINE_TAR, explosion_tag_labels[EXP_TAG_VEHICLEMINE_TAR] },
|
|
{ EXP_TAG_SCRIPT_DRONE, explosion_tag_labels[EXP_TAG_SCRIPT_DRONE] },
|
|
{ EXP_TAG_RAYGUN, explosion_tag_labels[EXP_TAG_RAYGUN] },
|
|
{ EXP_TAG_BURIEDMINE, explosion_tag_labels[EXP_TAG_BURIEDMINE] },
|
|
{ EXP_TAG_SCRIPT_MISSILE, explosion_tag_labels[EXP_TAG_SCRIPT_MISSILE] },
|
|
{ EXP_TAG_RCTANK_ROCKET, explosion_tag_labels[EXP_TAG_RCTANK_ROCKET] },
|
|
{ EXP_TAG_BOMB_WATER, explosion_tag_labels[EXP_TAG_BOMB_WATER] },
|
|
{ EXP_TAG_BOMB_WATER_SECONDARY, explosion_tag_labels[EXP_TAG_BOMB_WATER_SECONDARY] },
|
|
{ EXP_TAG_MINE_CNCSPIKE, explosion_tag_labels[EXP_TAG_MINE_CNCSPIKE] },
|
|
{ EXP_TAG_BZGAS_MK2, explosion_tag_labels[EXP_TAG_BZGAS_MK2] },
|
|
{ EXP_TAG_FLASHGRENADE, explosion_tag_labels[EXP_TAG_FLASHGRENADE] },
|
|
{ EXP_TAG_STUNGRENADE, explosion_tag_labels[EXP_TAG_STUNGRENADE] },
|
|
{ EXP_TAG_CNC_KINETICRAM, explosion_tag_labels[EXP_TAG_CNC_KINETICRAM] },
|
|
{ EXP_TAG_SCRIPT_MISSILE_LARGE, explosion_tag_labels[EXP_TAG_SCRIPT_MISSILE_LARGE] },
|
|
{ EXP_TAG_SUBMARINE_BIG, explosion_tag_labels[EXP_TAG_SUBMARINE_BIG] },
|
|
{ EXP_TAG_EMPLAUNCHER_EMP, explosion_tag_labels[EXP_TAG_EMPLAUNCHER_EMP] },
|
|
{ EXP_TAG_RAILGUNXM3, explosion_tag_labels[EXP_TAG_RAILGUNXM3] },
|
|
{ EXP_TAG_BALANCED_CANNONS, explosion_tag_labels[EXP_TAG_BALANCED_CANNONS] },
|
|
};
|
|
if (includeDontCare)
|
|
{
|
|
options.insert(options.begin(), { EXP_TAG_DONTCARE, LOC("DOFF") });
|
|
}
|
|
return options;
|
|
}
|
|
}
|