rott/kf_sources/KFOldSchoolZeds/Classes/ControllerGorefastOS.uc
2026-07-14 20:27:09 +07:00

62 lines
1.5 KiB
Ucode

//Controller class for Gorefast ✓
class ControllerGorefastOS extends KFMonsterControllerOS;
var bool bDoneSpottedCheck;
//Fixes slow charge for charging zeds
//Credits:NikC for forum link, aleat0r for the code
state WaitForAnim
{
ignores SeePlayer,HearNoise,Timer,EnemyNotVisible,NotifyBump,Startle;
function EndState()
{
if (Pawn != None)
{
Pawn.AccelRate = Pawn.Default.AccelRate;
Pawn.GroundSpeed = ZombieGorefastOS(Pawn).GetOriginalGroundSpeed();
}
bUseFreezeHack = False;
}
}
//Ditto
state DoorBashing
{
ignores EnemyNotVisible,SeeMonster;
function EndState()
{
if (Pawn != None)
{
Pawn.AccelRate = Pawn.Default.AccelRate;
Pawn.GroundSpeed = ZombieGorefastOS(Pawn).GetOriginalGroundSpeed();
}
}
}
//Players that spot a Gorefast will have a 25% chance to call him out
state ZombieHunt
{
event SeePlayer(Pawn SeenPlayer)
{
if ( !bDoneSpottedCheck && PlayerController(SeenPlayer.Controller) != none )
{
if ( !KFGameType(Level.Game).bDidSpottedGorefastMessage && FRand() < 0.25 )
{
PlayerController(SeenPlayer.Controller).Speech('AUTO', 13, "");
KFGameType(Level.Game).bDidSpottedGorefastMessage = true;
}
bDoneSpottedCheck = true;
}
global.SeePlayer(SeenPlayer);
}
}
defaultproperties
{
StrafingAbility=0.500000
}