//Zone IDs #define MLLeftLegZone 0 #define MLRightLegZone 1 #define MLLeftArmZone 2 #define MLRightArmZone 3 #define MLRightTorsoZone 4 #define MLLeftTorsoZone 5 #define MLCenterTorsoZone 6 #define MLHeadZone 7 #define MLSpecialZone1 8 #define MLSpecialZone2 9 //Callback IDs #define MLGetDummyData -1 #define MLDataSetupLeftArm 0 //IDs, SlotType, SlotSize, ton, dam, range, heat, num #define MLDataSetupRightArm 1 //IDs, SlotType, SlotSize, ton, dam, range, heat, num #define MLDataSetupLeftLeg 2 //IDs, SlotType, SlotSize, ton, dam, range, heat, num #define MLDataSetupRightLeg 3 //IDs, SlotType, SlotSize, ton, dam, range, heat, num #define MLDataSetupLeftTorso 4 //IDs, SlotType, SlotSize, ton, dam, range, heat, num #define MLDataSetupRightTorso 5 //IDs, SlotType, SlotSize, ton, dam, range, heat, num #define MLDataSetupCenterTorso 6 //IDs, SlotType, SlotSize, ton, dam, range, heat, num #define MLDataSetupHead 7 //IDs, SlotType, SlotSize, ton, dam, range, heat, num #define MLDataSetupMechSelection 8 #define MLDataSetupChassisSelection 9 #define MLCreateNewMech 10 #define MLSelectNewMech 11 #define MLInitChassisTab 12 #define MLInitWeaponsTab 13 #define MLInitArmorTab 14 #define MLDataSetupSpecial1 15 //IDs, SlotType, SlotSize, ton, dam, range, heat, num #define MLDataSetupSpecial2 16 //IDs, SlotType, SlotSize, ton, dam, range, heat, num #define MLDataSetupAllWeapons 17 //IDs, SlotType, SlotSize, ton, dam, range, heat, num #define MLDataSetupBeamWeapons 18 //IDs, SlotType, SlotSize, ton, dam, range, heat, num #define MLDataSetupProjectileWeapons 19 //IDs, SlotType, SlotSize, ton, dam, range, heat, num #define MLDataSetupMissileWeapons 20 //IDs, SlotType, SlotSize, ton, dam, range, heat, num #define MLDataSetupGetMechData 21 //ID, ton, battle, heat eff #define MLDataSetupGetMechArmor 22 //Vals, Max Vals, type, int type, points per, ton, tot #define MLDataSetupGetMechNoEditData 23 #define MLDataSetupGetEngineSpeed 24 #define MLSetEngineUpgrade 25 #define MLSetEngineDegrade 26 #define MLDataSetupGetHeatSinks 27 #define MLAddHeatSink 28 #define MLRemoveHeatSink 29 #define MLGetJumpJets 30 #define MLSetJumpJets 31 #define MLGetECM 32 #define MLSetECM 33 #define MLGetBeagle 34 #define MLSetBeagle 35 #define MLSetArmorType 36 #define MLAddArmorToZone 37 #define MLRemoveArmorFromZone 38 //Data manipulation #define MLAddSubsystem 40 #define MLRemoveSubsystem 41 #define MLRemoveAllSubsystems 42 #define MLAutoAddSubsystem 43 //Weapon Grouping #define MLDataGetWeaponGroups 44 #define MLSetWeaponGroup 45 #define MLClearWeaponGroup 46 #define MLSetAllWeaponGroups 47 //other stuff #define MLSave 48 #define MLExit 49 #define MLDeleteMech 50 #define MLRestore 51 #define MLRename 52 //Ammo Support #define MLDataGetWeaponAmmo 53 #define MLAddWeaponAmmo 54 #define MLRemoveWeaponAmmo 55 //Skin Support #define MLGetSkinListCount 56 #define MLDataGetSkinList 57 #define MLSetMechSkin 58 #define MLGetLightAmp 59 #define MLSetLightAmp 60 //Added Functions #define MLSetArmorZoneValue 61 #define MLDistributeArmor 62 #define MLGetAMS 63 #define MLSetAMS 64 #define MLGetLAMS 65 #define MLSetLAMS 66 #define MLGetBaseMechName 67 // MSL 5.02 SubSystems // Enhanced Optics //#define MLGetEnhancedOptics 93 //#define MLSetEnhancedOptics 94 // IFF Jammer #define MLGetIFF_Jammer 68 #define MLSetIFF_Jammer 69 // Advanced Gyro #define MLGetAdvancedGyro 70 #define MLSetAdvancedGyro 71 //Mech IDs // NOTE: IF YOU CHANGE THESE, YOU MUST ALSO CHANGE THE CONSTANTS IN MWCONST.ABI!!! // YOU MUST ALSO CHANGE THE CHASSIS LOOKUP TABLE IN MECH.HPP/MECH.CPP // MSL ADD MECH #define FirstMechID 0 #define M_Annihilator 0 #define M_Archer 1 #define M_Arcticwolf 2 #define M_Ares 3 #define M_Argus 4 #define M_Assassin2 5 #define M_Atlas 6 #define M_Avatar 7 #define M_Awesome 8 #define M_Battlemaster 9 #define M_BattlemasterIIc 10 #define M_Behemoth 11 #define M_BehemothII 12 #define M_Blackhawk 13 #define M_Blackknight 14 #define M_Blacklanner 15 #define M_Brigand 16 #define M_Bushwacker 17 #define M_Catapult 18 #define M_Cauldronborn 19 #define M_Chimera 20 #define M_Commando 21 #define M_Cougar 22 #define M_Cyclops 23 #define M_Daishi 24 #define M_Deimos 25 #define M_Dragon 26 #define M_Fafnir 27 #define M_Flea 28 #define M_Gladiator 29 #define M_Grizzly 30 #define M_Hauptmann 31 #define M_Hellhound 32 #define M_Hellspawn 33 #define M_Highlander 34 #define M_HollanderII 35 #define M_Hunchback 36 #define M_Kodiak 37 #define M_Loki 38 #define M_Longbow 39 #define M_Madcat 40 #define M_Madcat_MKII 41 #define M_Masakari 42 #define M_Mauler 43 #define M_Novacat 44 #define M_Osiris 45 #define M_Owens 46 #define M_Puma 47 #define M_Raven 48 #define M_Rifleman 49 #define M_Ryoken 50 #define M_Shadowcat 51 #define M_Solitaire 52 #define M_Sunder 53 #define M_Templar 54 #define M_Thanatos 55 #define M_Thor 56 #define M_Uller 57 #define M_Urbanmech 58 #define M_Uziel 59 #define M_Victor 60 #define M_Vulture 61 #define M_Warhammer 62 #define M_Wolfhound 63 #define M_Zeus 64 #define LastMechID 64 #define NoMechID 65 //This is used for the stack sprites in the campaign screen... #define M_CameraShip LastMechID+1 #define EmptyMechID LastMechID+2 //Weapon IDs #define EmptyWeaponID -1 //Beams #define FirstWeaponID 0 #define FirstBeamID 0 #define W_SmallLaser 0 #define W_MediumLaser 1 #define W_LargeLaser 2 #define W_SmallPulse 3 #define W_MediumPulse 4 #define W_LargePulse 5 #define W_ERSmallLaser 6 #define W_ERMediumLaser 7 #define W_ERLargeLaser 8 #define W_SmallXPulse 9 #define W_MedXPulse 10 #define W_LargeXPulse 11 #define W_ClanSmallPulse 12 #define W_ClanMediumPulse 13 #define W_ClanLargePulse 14 #define W_ClanERSmallLaser 15 #define W_ClanERMediumLaser 16 #define W_ClanERLargeLaser 17 #define W_PPC 18 #define W_ERPPC 19 #define W_ClanERPPC 20 #define W_Flamer 21 #define W_ERFlamer 22 #define W_Bombast 23 #define LastBeamID 23 //Missiles #define FirstMissileID 51 #define W_SRM2 51 #define W_SRM4 52 #define W_SRM6 53 #define W_ClanSRM2 54 #define W_ClanSRM4 55 #define W_ClanSRM6 56 #define W_SSRM2 57 #define W_SSRM4 58 #define W_SSRM6 59 #define W_ClanSSRM2 60 #define W_ClanSSRM4 61 #define W_ClanSSRM6 62 #define W_MRM10 63 #define W_MRM20 64 #define W_MRM30 65 #define W_MRM40 66 #define W_SMRM10 67 #define W_SMRM20 68 #define W_SMRM30 69 #define W_SMRM40 70 #define W_ClanSMRM10 71 #define W_ClanSMRM20 72 #define W_ClanSMRM30 73 #define W_ClanSMRM40 74 #define W_LRM5 75 #define W_LRM10 76 #define W_LRM15 77 #define W_LRM20 78 #define W_ClanLRM5 79 #define W_ClanLRM10 80 #define W_ClanLRM15 81 #define W_ClanLRM20 82 #define W_Thunderbolt 83 #define W_NarcBeacon 84 #define W_ClanNarcBeacon 85 #define W_Flare 86 #define W_HighExplosive 87 #define W_ArtilleryStrike 88 #define LastMissileID 88 //Projectiles #define FirstProjectileID 100 #define W_AC2 100 #define W_AC5 101 #define W_AC10 102 #define W_AC20 103 #define W_LBXAC10 104 #define W_LBXAC20 105 #define W_ClanLBXAC10 106 #define W_ClanLBXAC20 107 #define W_UltraAC2 108 #define W_UltraAC5 109 #define W_UltraAC10 110 #define W_UltraAC20 111 #define W_ClanUltraAC2 112 #define W_ClanUltraAC5 113 #define W_ClanUltraAC10 114 #define W_ClanUltraAC20 115 #define W_LightGauss 116 #define W_Gauss 117 #define W_HeavyGauss 118 #define W_ClanGauss 119 #define W_MachineGun 120 #define W_ClanMachineGun 121 #define W_LongTom 122 #define LastProjectileID 122 #define LastWeaponID 122 #define FirstGenericSubsystemID 131 #define Sub_JumpJet 131 #define Sub_AMS 132 #define Sub_LAMS 133 #define Sub_ECM 134 #define Sub_HeatSink 135 #define Sub_Beagle 136 #define Sub_LightAmp 137 //#define Sub_EnhancedOptics 138 #define Sub_IFF_Jammer 138 #define Sub_AdvancedGyro 139 #define LastGenericSubsystemID 139 //Weapon Slot defines #define Slot_Empty -1 #define Slot_Missile 0 #define Slot_Projectile 1 #define Slot_Beam 2 #define Slot_Omni 3 //Armor Values #define A_LeftLeg 0 #define A_RightLeg 1 #define A_LeftArm 2 #define A_RightArm 3 #define A_RightTorso 4 #define A_LeftTorso 5 #define A_CenterTorso 6 #define A_RearTorso 7 #define A_Head 8 //Armor Values #define Armor_Standard 0 #define Armor_Ferro 1 #define Armor_Reactive 2 #define Armor_Reflective 3 #define Armor_Solarian 4 //Internal Values #define Internal_Standard 0 #define Internal_EndoSteel 1 //Tech Types #define Tech_IS 0 #define Tech_Clan 1