Advertisement
Guest User

Untitled

a guest
Jun 24th, 2018
84
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. var config byte MaxPlayersZedHeatlh;
  2.  
  3. function SetMonsterDefaults( KFPawn_Monster P )
  4. {
  5.     local byte i;
  6.     local float HealthMod;
  7.     local float HeadHealthMod;
  8.     local float TotalSpeedMod, StartingSpeedMod;
  9.     local float DamageMod;
  10.     local int LivingPlayerCount;
  11.    
  12.     DamageMod = 1.0;
  13.     HealthMod = 1.0;
  14.     HeadHealthMod = 1.0;
  15.    
  16.     if ( MaxPlayersZedHealth > 0 )
  17.     {
  18.         LivingPlayerCount = Min( GetLivingPlayerCount(), MaxPlayersZedHealth );
  19.     }
  20.     else
  21.     {
  22.         LivingPlayerCount = GetLivingPlayerCount();
  23.     }
  24.    
  25.     if( P.bVersusZed )
  26.     {
  27.         DifficultyInfo.GetVersusHealthModifier(P, LivingPlayerCount, HealthMod, HeadHealthMod);
  28.  
  29.         HealthMod *= GameConductor.CurrentVersusZedHealthMod;
  30.         HeadHealthMod *= GameConductor.CurrentVersusZedHealthMod;
  31.  
  32.         P.DifficultyDamageMod = DamageMod * GameConductor.CurrentVersusZedDamageMod;
  33.  
  34.         StartingSpeedMod = 1.f;
  35.         TotalSpeedMod = 1.f;
  36.     }
  37.     else
  38.     {
  39.         DifficultyInfo.GetAIHealthModifier(P, GameDifficulty, LivingPlayerCount, HealthMod, HeadHealthMod);
  40.         DamageMod = DifficultyInfo.GetAIDamageModifier(P, GameDifficulty,bOnePlayerAtStart);
  41.  
  42.         P.DifficultyDamageMod = DamageMod;
  43.  
  44.         StartingSpeedMod = DifficultyInfo.GetAISpeedMod(P, GameDifficulty);
  45.         TotalSpeedMod = GameConductor.CurrentAIMovementSpeedMod * StartingSpeedMod;
  46.     }
  47.    
  48.     if( P.default.HealthMax == 0 )
  49.     {
  50.         P.HealthMax = P.default.Health * HealthMod;
  51.     }
  52.     else
  53.     {
  54.         P.HealthMax = P.default.HealthMax * HealthMod;
  55.     }
  56.  
  57.     if (OutbreakEvent != none)
  58.     {
  59.         OutbreakEvent.AdjustMonsterDefaults(P);
  60.     }
  61.    
  62.     for( i=0; i<4; ++i )
  63.     {
  64.         KFPawn_MonsterBoss(P).SummonWaves[i].PhaseOneWave = BossHelperSquadOne;
  65.         KFPawn_MonsterBoss(P).SummonWaves[i].PhaseTwoWave = BossHelperSquadTwo;
  66.         KFPawn_MonsterBoss(P).SummonWaves[i].PhaseThreeWave = BossHelperSquadThree;                
  67.     }
  68.    
  69.     P.GroundSpeed = P.default.GroundSpeed * TotalSpeedMod;
  70.     P.SprintSpeed = P.default.SprintSpeed * TotalSpeedMod;
  71.     P.NormalGroundSpeed = P.GroundSpeed;
  72.     P.NormalSprintSpeed = P.SprintSpeed;
  73.     P.InitialGroundSpeedModifier = StartingSpeedMod;
  74.     P.Health = P.default.Health * HealthMod;
  75.     P.ApplySpecialZoneHealthMod(HeadHealthMod);
  76.     P.GameResistancePct = DifficultyInfo.GetDamageResistanceModifier(LivingPlayerCount);
  77.  
  78.     `log("==== SetMonsterDefaults for pawn: " @P @"====",bLogAIDefaults);
  79.     `log("HealthMod: " @HealthMod @ "Original Health: " @P.default.Health @" Final Health = " @P.Health, bLogAIDefaults);
  80.     `log("HeadHealthMod: " @HeadHealthMod @ "Original Head Health: " @P.default.HitZones[HZI_HEAD].GoreHealth @" Final Head Health = " @P.HitZones[HZI_HEAD].GoreHealth, bLogAIDefaults);
  81.     `log("GroundSpeedMod: " @TotalSpeedMod @" Final Ground Speed = " @P.GroundSpeed, bLogAIDefaults);
  82.     `log("SprintSpeedMod: " @TotalSpeedMod @" Final Sprint Speed = " @P.SprintSpeed, bLogAIDefaults);
  83.     `log("DamageMod: " @DamageMod @" Final Melee Damage = " @P.MeleeAttackHelper.BaseDamage * DamageMod, bLogAIDefaults);
  84. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement