DayZ 1.27
DayZ Explorer by KGB
 
Загрузка...
Поиск...
Не найдено
HealthRegen.c
См. документацию.
2{
11
12 override bool ActivateCondition(PlayerBase player)
13 {
14 return true;
15 }
16
17 override void OnActivate(PlayerBase player)
18 {
19 }
20
21 override void OnReconnect(PlayerBase player)
22 {
23
24 }
25
26 override bool DeactivateCondition(PlayerBase player)
27 {
28 return false;
29 }
30
31 override void OnTick(PlayerBase player, float deltaT)
32 {
33 if (player.IsAlive())//this needs to be here, some of the other modifiers can kill the character during the same modifier tick, and not checking here can partially revive him(resulting in a broken char)
34 {
35
36 float regen_speed = player.GetHealthRegenSpeed() * deltaT;;
37 player.AddHealth("GlobalHealth", "Health" , regen_speed );
38
39 player.AddHealth("RightArm","Health",regen_speed * PlayerConstants.DAMAGE_ZONE_BLOOD_REGEN_MODIFIER );
40 player.AddHealth("RightHand","Health",regen_speed * PlayerConstants.DAMAGE_ZONE_BLOOD_REGEN_MODIFIER);
41 player.AddHealth("LeftArm","Health",regen_speed * PlayerConstants.DAMAGE_ZONE_BLOOD_REGEN_MODIFIER);
42 player.AddHealth("LeftHand","Health",regen_speed * PlayerConstants.DAMAGE_ZONE_BLOOD_REGEN_MODIFIER);
43
44 //Leg regen when legs are NOT BROKEN
45 if ( player.GetBrokenLegs() == eBrokenLegs.NO_BROKEN_LEGS )
46 {
47 player.AddHealth("RightLeg","Health", PlayerConstants.LEG_HEALTH_REGEN);
48 player.AddHealth("RightFoot","Health", PlayerConstants.LEG_HEALTH_REGEN);
49 player.AddHealth("LeftLeg","Health", PlayerConstants.LEG_HEALTH_REGEN);
50 player.AddHealth("LeftFoot","Health", PlayerConstants.LEG_HEALTH_REGEN);
51 }
52 else
53 {
54 //Leg regen when legs are BROKEN or SPLINTED
55 player.AddHealth("RightLeg","Health", PlayerConstants.LEG_HEALTH_REGEN_BROKEN);
56 player.AddHealth("RightFoot","Health",PlayerConstants.LEG_HEALTH_REGEN_BROKEN);
57 player.AddHealth("LeftLeg","Health", PlayerConstants.LEG_HEALTH_REGEN_BROKEN);
58 player.AddHealth("LeftFoot","Health", PlayerConstants.LEG_HEALTH_REGEN_BROKEN);
59 }
60
61 player.AddHealth("Torso","Health",regen_speed * PlayerConstants.DAMAGE_ZONE_BLOOD_REGEN_MODIFIER);
62
63 // We increase head health regeneration as it is unclear to players what health level individual zones have
64 player.AddHealth("Head","Health",( regen_speed * PlayerConstants.DAMAGE_ZONE_BLOOD_REGEN_MODIFIER ) * 2 );
65 }
66 }
67};
eBrokenLegs
Определения EBrokenLegs.c:2
int m_ID
ID of effect, given by SEffectManager when registered (automatically done when playing through it)
Определения Effect.c:49
bool m_TrackActivatedTime
overall time this modifier was active
Определения ModifierBase.c:14
void DisableDeactivateCheck()
Определения ModifierBase.c:86
float m_TickIntervalActive
Определения ModifierBase.c:18
float m_TickIntervalInactive
Определения ModifierBase.c:17
const int DEFAULT_TICK_TIME_INACTIVE
Определения ModifiersManager.c:29
enum eModifierSyncIDs DEFAULT_TICK_TIME_ACTIVE
override bool ActivateCondition(PlayerBase player)
Определения HealthRegen.c:12
override bool DeactivateCondition(PlayerBase player)
Определения HealthRegen.c:26
override void Init()
Определения HealthRegen.c:3
override void OnActivate(PlayerBase player)
Определения HealthRegen.c:17
override void OnTick(PlayerBase player, float deltaT)
Определения HealthRegen.c:31
override void OnReconnect(PlayerBase player)
Определения HealthRegen.c:21
Определения HealthRegen.c:2
Определения BreathVapourMdfr.c:4
Определения PlayerBaseClient.c:2
static const float DAMAGE_ZONE_BLOOD_REGEN_MODIFIER
Определения PlayerConstants.c:100
static const float LEG_HEALTH_REGEN_BROKEN
Определения PlayerConstants.c:152
static const float LEG_HEALTH_REGEN
Определения PlayerConstants.c:151
Определения PlayerConstants.c:2
eModifiers
Определения eModifiers.c:2