Class Ext_TraitGhost extends Ext_TraitBase; static function bool PreventDeath( KFPawn_Human Player, Controller Instigator, Class DamType, Ext_PerkBase Perk, byte Level, optional Ext_TraitDataStore Data ) { local Controller C; if( (Instigator==None || Instigator==Player.Controller) && DamType==Class'DmgType_Suicided' ) return false; // Allow normal suicide to go ahead. if( Ext_T_GhostHelper(Data).CanResPlayer(Player,Level) ) { // Abort current special move if( Player.IsDoingSpecialMove() ) Player.SpecialMoveHandler.EndSpecialMove(); // Notify AI to stop hunting me. foreach Player.WorldInfo.AllControllers(class'Controller',C) C.NotifyKilled(Instigator,Player.Controller,Player,DamType); return true; } return false; } defaultproperties { bHighPriorityDeath=true NumLevels=2 TraitData=class'Ext_T_GhostHelper' DefLevelCosts(0)=30 DefLevelCosts(1)=30 DefMinLevel=30 }