Fix UBC for 1.54

Soldiers no longer inherit hitpoints from CaManBase
Adds a macro to deal with them
This commit is contained in:
PabstMirror 2015-11-20 23:27:29 -06:00
parent d0cb09196d
commit c2564de5ef
3 changed files with 82 additions and 174 deletions

View File

@ -183,13 +183,13 @@ class CfgGlasses {
ACE_Resistance = 1; ACE_Resistance = 1;
ACE_Protection = 1; ACE_Protection = 1;
}; };
class G_Bandanna_sport:G_Bandanna_blk { class G_Bandanna_sport: G_Bandanna_shades {
ACE_Color[] = {1,0,0}; ACE_Color[] = {1,0,0};
ACE_TintAmount=COLOUR; ACE_TintAmount=COLOUR;
ACE_Resistance = 1; ACE_Resistance = 1;
ACE_Protection = 1; ACE_Protection = 1;
}; };
class G_Bandanna_aviator:G_Bandanna_blk { class G_Bandanna_aviator: G_Bandanna_shades {
ACE_Color[] = {0,0,-1}; ACE_Color[] = {0,0,-1};
ACE_TintAmount=COLOUR; ACE_TintAmount=COLOUR;
ACE_Resistance = 1; ACE_Resistance = 1;

View File

@ -42,7 +42,8 @@ class CfgWeapons {
class H_PilotHelmetFighter_O: H_PilotHelmetFighter_B {}; class H_PilotHelmetFighter_O: H_PilotHelmetFighter_B {};
class H_PilotHelmetFighter_I: H_PilotHelmetFighter_B {}; class H_PilotHelmetFighter_I: H_PilotHelmetFighter_B {};
class H_Cap_headphones: H_HelmetB { class HelmetBase;
class H_Cap_headphones: HelmetBase {
GVAR(protection) = 0.5; GVAR(protection) = 0.5;
GVAR(lowerVolume) = 0.60; GVAR(lowerVolume) = 0.60;
}; };

View File

@ -433,39 +433,38 @@ class CfgVehicles {
#define ARM_LEG_ARMOR_BETTER 5 #define ARM_LEG_ARMOR_BETTER 5
#define ARM_LEG_ARMOR_CSAT 4 #define ARM_LEG_ARMOR_CSAT 4
class Land; #define ADD_ACE_HITPOINTS(ARM_ARMOR,LEG_ARMOR) \
class Man: Land { class HitLeftArm { \
class HitPoints; armor = ARM_ARMOR; \
}; material = -1; \
name = "hand_l"; \
passThrough = 1; \
radius = 0.08; \
explosionShielding = 1; \
visual = "injury_hands"; \
minimalHit = 0.01; \
}; \
class HitRightArm: HitLeftArm { \
name = "hand_r"; \
}; \
class HitLeftLeg { \
armor = LEG_ARMOR; \
material = -1; \
name = "leg_l"; \
passThrough = 1; \
radius = 0.1; \
explosionShielding = 1; \
visual = "injury_legs"; \
minimalHit = 0.01; \
}; \
class HitRightLeg: HitLeftLeg { \
name = "leg_r"; \
}; \
class Man;
class CAManBase: Man { class CAManBase: Man {
class HitPoints: HitPoints { // custom hitpoints. addons might want to adjust these accordingly class HitPoints {
class HitLeftArm { ADD_ACE_HITPOINTS(ARM_LEG_ARMOR_DEFAULT,ARM_LEG_ARMOR_DEFAULT);
armor = ARM_LEG_ARMOR_DEFAULT;
material = -1;
name = "hand_l"; // @todo hopefully these still include the whole arm + hands
passThrough = 1;
radius = 0.08;
explosionShielding = 1;
visual = "injury_hands";
minimalHit = 0.01;
};
class HitRightArm: HitLeftArm {
name = "hand_r"; // @todo hopefully these still include the whole arm + hands
};
class HitLeftLeg {
armor = ARM_LEG_ARMOR_DEFAULT;
material = -1;
name = "leg_l";
passThrough = 1;
radius = 0.1;
explosionShielding = 1;
visual = "injury_legs";
minimalHit = 0.01;
};
class HitRightLeg: HitLeftLeg {
name = "leg_r";
};
}; };
class ACE_SelfActions { class ACE_SelfActions {
@ -525,174 +524,82 @@ class CfgVehicles {
class B_Soldier_base_F: SoldierWB {}; class B_Soldier_base_F: SoldierWB {};
class B_Soldier_04_f: B_Soldier_base_F { class B_Soldier_04_f: B_Soldier_base_F {
class HitPoints: HitPoints { class HitPoints {
class HitHead; ADD_ACE_HITPOINTS(ARM_LEG_ARMOR_BETTER,ARM_LEG_ARMOR_BETTER);
class HitBody;
class HitHands;
class HitLegs;
class HitLeftArm: HitLeftArm {
armor = ARM_LEG_ARMOR_BETTER;
};
class HitRightArm: HitRightArm {
armor = ARM_LEG_ARMOR_BETTER;
};
class HitLeftLeg: HitLeftLeg {
armor = ARM_LEG_ARMOR_BETTER;
};
class HitRightLeg: HitRightLeg {
armor = ARM_LEG_ARMOR_BETTER;
};
}; };
}; };
class B_Soldier_05_f: B_Soldier_base_F { class B_Soldier_05_f: B_Soldier_base_F {
class HitPoints: HitPoints { class HitPoints {
class HitHead; ADD_ACE_HITPOINTS(ARM_LEG_ARMOR_BETTER,ARM_LEG_ARMOR_BETTER);
class HitBody;
class HitHands;
class HitLegs;
class HitLeftArm: HitLeftArm {
armor = ARM_LEG_ARMOR_BETTER;
};
class HitRightArm: HitRightArm {
armor = ARM_LEG_ARMOR_BETTER;
};
class HitLeftLeg: HitLeftLeg {
armor = ARM_LEG_ARMOR_BETTER;
};
class HitRightLeg: HitRightLeg {
armor = ARM_LEG_ARMOR_BETTER;
};
}; };
}; };
class I_Soldier_base_F: SoldierGB {}; class I_Soldier_base_F: SoldierGB {};
class I_Soldier_03_F: I_Soldier_base_F { class I_Soldier_03_F: I_Soldier_base_F {
class HitPoints: HitPoints { class HitPoints {
class HitHead; ADD_ACE_HITPOINTS(ARM_LEG_ARMOR_BETTER,ARM_LEG_ARMOR_BETTER);
class HitBody;
class HitHands;
class HitLegs;
class HitLeftArm: HitLeftArm {
armor = ARM_LEG_ARMOR_BETTER;
};
class HitRightArm: HitRightArm {
armor = ARM_LEG_ARMOR_BETTER;
};
class HitLeftLeg: HitLeftLeg {
armor = ARM_LEG_ARMOR_BETTER;
};
class HitRightLeg: HitRightLeg {
armor = ARM_LEG_ARMOR_BETTER;
};
}; };
}; };
class I_Soldier_04_F: I_Soldier_base_F { class I_Soldier_04_F: I_Soldier_base_F {
class HitPoints: HitPoints { class HitPoints {
class HitHead; ADD_ACE_HITPOINTS(ARM_LEG_ARMOR_BETTER,ARM_LEG_ARMOR_BETTER);
class HitBody;
class HitHands;
class HitLegs;
class HitLeftArm: HitLeftArm {
armor = ARM_LEG_ARMOR_BETTER;
};
class HitRightArm: HitRightArm {
armor = ARM_LEG_ARMOR_BETTER;
};
class HitLeftLeg: HitLeftLeg {
armor = ARM_LEG_ARMOR_BETTER;
};
class HitRightLeg: HitRightLeg {
armor = ARM_LEG_ARMOR_BETTER;
};
}; };
}; };
class O_Soldier_base_F: SoldierEB { class O_Soldier_base_F: SoldierEB {
class HitPoints: HitPoints { class HitPoints {
class HitHead; ADD_ACE_HITPOINTS(ARM_LEG_ARMOR_CSAT,ARM_LEG_ARMOR_BETTER);
class HitBody;
class HitHands;
class HitLegs;
class HitLeftArm: HitLeftArm {
armor = ARM_LEG_ARMOR_CSAT;
};
class HitRightArm: HitRightArm {
armor = ARM_LEG_ARMOR_CSAT;
};
class HitLeftLeg: HitLeftLeg {
armor = ARM_LEG_ARMOR_CSAT;
};
class HitRightLeg: HitRightLeg {
armor = ARM_LEG_ARMOR_CSAT;
};
}; };
}; };
class O_Soldier_diver_base_F: O_Soldier_base_F {
class HitPoints {
ADD_ACE_HITPOINTS(ARM_LEG_ARMOR_CSAT,ARM_LEG_ARMOR_BETTER);
};
};
class O_Soldier_02_F: O_Soldier_base_F { class O_Soldier_02_F: O_Soldier_base_F {
class HitPoints: HitPoints { class HitPoints {
class HitHead; ADD_ACE_HITPOINTS(ARM_LEG_ARMOR_CSAT,ARM_LEG_ARMOR_BETTER);
class HitBody;
class HitHands;
class HitLegs;
class HitLeftArm: HitLeftArm {
armor = ARM_LEG_ARMOR_CSAT;
};
class HitRightArm: HitRightArm {
armor = ARM_LEG_ARMOR_CSAT;
};
class HitLeftLeg: HitLeftLeg {
armor = ARM_LEG_ARMOR_CSAT;
};
class HitRightLeg: HitRightLeg {
armor = ARM_LEG_ARMOR_CSAT;
};
}; };
}; };
class O_officer_F: O_Soldier_base_F { class O_officer_F: O_Soldier_base_F {
class HitPoints: HitPoints { class HitPoints {
class HitHead; ADD_ACE_HITPOINTS(ARM_LEG_ARMOR_CSAT,ARM_LEG_ARMOR_BETTER);
class HitBody;
class HitHands;
class HitLegs;
class HitLeftArm: HitLeftArm {
armor = ARM_LEG_ARMOR_CSAT; // @todo is that suppossed to be the case?
};
class HitRightArm: HitRightArm {
armor = ARM_LEG_ARMOR_CSAT;
};
class HitLeftLeg: HitLeftLeg {
armor = ARM_LEG_ARMOR_CSAT;
};
class HitRightLeg: HitRightLeg {
armor = ARM_LEG_ARMOR_CSAT;
};
}; };
}; };
class O_Protagonist_VR_F: O_Soldier_base_F { //These VR guys already have limb hitpoints that we should be able to use
class HitPoints: HitPoints { //Note: the selections are a little weird, eg: class leg_l {name = "leg_l";};
class HitHead; // class B_Soldier_VR_F: B_Soldier_base_F { {
class HitBody; // class HitPoints {
class HitHands; //Has class hand_l, hand_r, leg_l, leg_r Hitpoints already
class HitLegs; // };
class HitLeftArm: HitLeftArm { // };
armor = 2; // class O_Soldier_VR_F: O_Soldier_base_F { {
}; // class HitPoints {
class HitRightArm: HitRightArm { //Has class hand_l, hand_r, leg_l, leg_r Hitpoints already
armor = 2; // };
}; // };
class HitLeftLeg: HitLeftLeg { // class I_Soldier_VR_F: I_Soldier_base_F { {
armor = 2; // class HitPoints {
}; //Has class hand_l, hand_r, leg_l, leg_r Hitpoints already
class HitRightLeg: HitRightLeg { // };
armor = 2; // };
}; // class C_Soldier_VR_F: C_man_1 {
}; // class HitPoints {
}; //Has class hand_l, hand_r, leg_l, leg_r Hitpoints already
// };
// };
// class O_Protagonist_VR_F: O_Soldier_base_F {
// class HitPoints {
//Has class hand_l, hand_r, leg_l, leg_r Hitpoints already
// };
// };
class MapBoard_altis_F; class MapBoard_altis_F;
class ACE_bodyBagObject: MapBoard_altis_F { class ACE_bodyBagObject: MapBoard_altis_F {