//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 #define MLGetMechStatus 68 #define MLGetBlackMarketItemCount 69 //Expansion Functions //Black Market Support #define BMDataSetupSalvageChits 71 //IDs, tradeValues, num #define BMDataSetupOfferingChits 72 #define BMDataSetupMarketChits 73 #define BMDataSetupAcquiringChits 74 #define BMOfferItemForTrade 75 //ID #define BMCancelOfferForTrade 76 //ID #define BMAcquireItemForTrade 77 //ID #define BMCancelAcquireForTrade 78 //ID #define BMIsTradeValid 79 #define BMGetOfferingValue 80 #define BMGetAcquiringValue 81 #define BMExecuteTrade 82 #define BMExit 83 #define BMDataSetupBeamWeaponSalvageChits 84 #define BMDataSetupBallisticWeaponSalvageChits 85 #define BMDataSetupMissileWeaponSalvageChits 86 #define BMDataSetupMechSalvageChits 87 #define BMDataSetupBeamWeaponMarketChits 88 #define BMDataSetupBallisticWeaponMarketChits 89 #define BMDataSetupMissileWeaponMarketChits 90 #define BMDataSetupMechMarketChits 91 #define BMRestore 92 // Enhanced Optics #define MLGetEnhancedOptics 93 #define MLSetEnhancedOptics 94 // IFF Jammer #define MLGetIFF_Jammer 95 #define MLSetIFF_Jammer 96 //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 #define FirstMechID 0 #define M_Argus 0 #define M_Atlas 1 #define M_Awesome 2 #define M_Bushwacker 3 #define M_Catapult 4 #define M_Chimera 5 #define M_Cougar 6 #define M_Daishi 7 #define M_Hellspawn 8 #define M_Loki 9 #define M_Madcat 10 #define M_Madcat_MKII 11 #define M_Mauler 12 #define M_Novacat 13 #define M_Osiris 14 #define M_Raven 15 #define M_Shadowcat 16 #define M_Thanatos 17 #define M_Thor 18 #define M_Uziel 19 #define M_Vulture 20 //black Knight #define M_Sunder 21 #define M_Uller 22 #define M_Ryoken 23 #define M_Wolfhound 24 #define M_BlackKnight 25 //mech packs #define M_Dragon 26 #define M_Masakari 27 #define M_CauldronBorn 28 #define M_Highlander 29 #define M_Zeus 30 #define M_Hunchback 31 #define M_ArcticWolf 32 #define M_Kodiak 33 #define LastMechID 33 #define NoMechID 34 //This is used for the stack sprites in the campaign screen... #define M_CameraShip LastMechID+1 #define EmptyMechID LastMechID+2 #define LastVengeanceMechID M_Vulture #define LastBlackKnightMechID M_BlackKnight #define LastMechPackMechID M_Kodiak //Expansion Mech trading chits //This offset for Mech ID is so that //you can trade chassis on the Black Market //by trading these Mech Chits //Since Weapons are traded as well, the Mech these //Mech chit IDs need to be unique among the weapons. // #define FirstMechChitID 150 //Weapon IDs #define EmptyWeaponID -1 //Beams #define FirstWeaponID 0 #define FirstBeamID 0 #define W_Flamer 0 #define W_Bombast 1 #define W_ERLargeLaser 2 #define W_ERMediumLaser 3 #define W_ERSmallLaser 4 #define W_LargeLaser 5 #define W_MediumLaser 6 #define W_SmallLaser 7 #define W_ERPPC 8 #define W_PPC 9 #define W_ERLargePulse 10 #define W_ERMediumPulse 11 #define W_ERSmallPulse 12 #define W_LargePulse 13 #define W_MediumPulse 14 #define W_SmallPulse 15 //expansion #define W_LargeXPulse 16 #define W_MedXPulse 17 #define W_SmallXPulse 18 #define W_ERFlamer 19 #define LastBeamID 19 //Missiles #define FirstMissileID 51 #define W_LRM5 51 #define W_LRM10 52 #define W_LRM15 53 #define W_LRM20 54 #define W_ClanLRM5 55 #define W_ClanLRM10 56 #define W_ClanLRM15 57 #define W_ClanLRM20 58 #define W_MRM10 59 #define W_MRM20 60 #define W_MRM30 61 #define W_MRM40 62 #define W_SRM2 63 #define W_SRM4 64 #define W_SRM6 65 #define W_SSRM2 66 #define W_SSRM4 67 #define W_SSRM6 68 #define W_Thunderbolt 69 #define W_NarcBeacon 70 #define W_ClanNarcBeacon 71 #define W_Flare 72 #define W_HighExplosive 73 #define W_ArtilleryStrike 74 #define W_SMRM10 75 #define W_SMRM20 76 #define W_SMRM30 77 #define W_SMRM40 78 #define LastMissileID 78 //Projectiles #define FirstProjectileID 100 #define W_AC5 100 #define W_AC10 101 #define W_AC20 102 #define W_LBXAC10 103 #define W_LBXAC20 104 #define W_ClanLBXAC10 105 #define W_ClanLBXAC20 106 #define W_UltraAC2 107 #define W_UltraAC5 108 #define W_UltraAC10 109 #define W_UltraAC20 110 #define W_ClanUltraAC2 111 #define W_ClanUltraAC5 112 #define W_ClanUltraAC10 113 #define W_ClanUltraAC20 114 #define W_ClanGauss 115 #define W_Gauss 116 #define W_LightGauss 117 #define W_LongTom 118 #define W_ClusterBomb 119 #define W_MachineGun 120 #define W_ClanMachineGun 121 #define W_HeavyGauss 122 #define LastProjectileID 122 #define LastWeaponID 122 //unique weapon #define W_ModlLaser 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 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_Ferro 0 #define Armor_Reactive 1 #define Armor_Reflective 2 //Internal Values #define Internal_Standard 0 #define Internal_EndoSteel 1 //Tech Types #define Tech_IS 0 #define Tech_Clan 1