fix tripware turret
This commit is contained in:
parent
b90da74582
commit
177f5bc56c
@ -120,6 +120,12 @@ function Initialize()
|
||||
|
||||
MyKFGI.KFGFxManagerClass = class'MskGsGFxMoviePlayer_Manager';
|
||||
MyKFGI.MyKFGRI.VoteCollectorClass = class'MskGsVoteCollector';
|
||||
if (MyKFGI.PlayerControllerClass == class'KFGame.KFPlayerController')
|
||||
MyKFGI.PlayerControllerClass = class'MskGsPlayerController';
|
||||
else if (MyKFGI.PlayerControllerClass == class'KFGameContent.KFPlayerControllerVersus')
|
||||
MyKFGI.PlayerControllerClass = class'MskGsPlayerControllerVersus';
|
||||
else if (MyKFGI.PlayerControllerClass == class'KFGame.KFPlayerController_WeeklySurvival')
|
||||
MyKFGI.PlayerControllerClass = class'MskGsPlayerController_WeeklySurvival';
|
||||
MyKFGI.MyKFGRI.VoteCollector = new(MyKFGI.MyKFGRI) MyKFGI.MyKFGRI.VoteCollectorClass;
|
||||
|
||||
VoteCollector = MskGsVoteCollector(MyKFGI.MyKFGRI.VoteCollector);
|
||||
@ -292,6 +298,8 @@ function NotifyLogin(Controller C)
|
||||
|
||||
Initialize();
|
||||
|
||||
`log("NotifyLogin:" @ C);
|
||||
|
||||
RepInfo = Spawn(class'MskGsRepInfo', KFPlayerController(C));
|
||||
RepInfo.C = C;
|
||||
RepInfo.Mut = Self;
|
||||
|
65
MskGs/Classes/MskGsPlayerController.uc
Normal file
65
MskGs/Classes/MskGsPlayerController.uc
Normal file
@ -0,0 +1,65 @@
|
||||
class MskGsPlayerController extends KFPlayerController;
|
||||
|
||||
event Destroyed()
|
||||
{
|
||||
local KFProjectile KFProj;
|
||||
local int i;
|
||||
|
||||
// Stop currently playing stingers when the map is being switched
|
||||
if( StingerAkComponent != none )
|
||||
{
|
||||
StingerAkComponent.StopEvents();
|
||||
}
|
||||
|
||||
// Useful:
|
||||
// https://wiki.beyondunreal.com/What_happens_when_an_Actor_is_destroyed
|
||||
for (i = DeployedTurrets.Length - 1; i >= 0; --i)
|
||||
{
|
||||
if (DeployedTurrets[i] != None)
|
||||
if (!DeployedTurrets[i].bPendingDelete && !DeployedTurrets[i].bDeleteMe)
|
||||
DeployedTurrets[i].Destroy();
|
||||
|
||||
// don't worry about the Destroyed event on Turret
|
||||
// because it doesn't do anything if the turret is not in the list
|
||||
DeployedTurrets.Remove(i, 1);
|
||||
}
|
||||
|
||||
SetRTPCValue( 'Health', 100, true );
|
||||
PostAkEvent( LowHealthStopEvent );
|
||||
bPlayingLowHealthSFX = false;
|
||||
|
||||
// Update projectiles in the world
|
||||
foreach DynamicActors( class'KFProjectile', KFProj )
|
||||
{
|
||||
if( KFProj.InstigatorController == self )
|
||||
{
|
||||
KFProj.OnInstigatorControllerLeft();
|
||||
}
|
||||
}
|
||||
|
||||
if( LocalCustomizationPawn != none && !LocalCustomizationPawn.bPendingDelete )
|
||||
{
|
||||
LocalCustomizationPawn.Destroy();
|
||||
}
|
||||
|
||||
if (OnlineSub != none)
|
||||
{
|
||||
OnlineSub.ClearAllReadOnlineAvatarByNameCompleteDelegates();
|
||||
OnlineSub.ClearAllReadOnlineAvatarCompleteDelegates();
|
||||
}
|
||||
|
||||
if (WorldInfo.NetMode != NM_DedicatedServer)
|
||||
{
|
||||
ClearMixerDelegates();
|
||||
ClearDiscord();
|
||||
}
|
||||
|
||||
ClientMatchEnded();
|
||||
|
||||
Super(GamePlayerController).Destroyed();
|
||||
}
|
||||
|
||||
defaultproperties
|
||||
{
|
||||
|
||||
}
|
65
MskGs/Classes/MskGsPlayerControllerVersus.uc
Normal file
65
MskGs/Classes/MskGsPlayerControllerVersus.uc
Normal file
@ -0,0 +1,65 @@
|
||||
class MskGsPlayerControllerVersus extends KFPlayerControllerVersus;
|
||||
|
||||
event Destroyed()
|
||||
{
|
||||
local KFProjectile KFProj;
|
||||
local int i;
|
||||
|
||||
// Stop currently playing stingers when the map is being switched
|
||||
if( StingerAkComponent != none )
|
||||
{
|
||||
StingerAkComponent.StopEvents();
|
||||
}
|
||||
|
||||
// Useful:
|
||||
// https://wiki.beyondunreal.com/What_happens_when_an_Actor_is_destroyed
|
||||
for (i = DeployedTurrets.Length - 1; i >= 0; --i)
|
||||
{
|
||||
if (DeployedTurrets[i] != None)
|
||||
if (!DeployedTurrets[i].bPendingDelete && !DeployedTurrets[i].bDeleteMe)
|
||||
DeployedTurrets[i].Destroy();
|
||||
|
||||
// don't worry about the Destroyed event on Turret
|
||||
// because it doesn't do anything if the turret is not in the list
|
||||
DeployedTurrets.Remove(i, 1);
|
||||
}
|
||||
|
||||
SetRTPCValue( 'Health', 100, true );
|
||||
PostAkEvent( LowHealthStopEvent );
|
||||
bPlayingLowHealthSFX = false;
|
||||
|
||||
// Update projectiles in the world
|
||||
foreach DynamicActors( class'KFProjectile', KFProj )
|
||||
{
|
||||
if( KFProj.InstigatorController == self )
|
||||
{
|
||||
KFProj.OnInstigatorControllerLeft();
|
||||
}
|
||||
}
|
||||
|
||||
if( LocalCustomizationPawn != none && !LocalCustomizationPawn.bPendingDelete )
|
||||
{
|
||||
LocalCustomizationPawn.Destroy();
|
||||
}
|
||||
|
||||
if (OnlineSub != none)
|
||||
{
|
||||
OnlineSub.ClearAllReadOnlineAvatarByNameCompleteDelegates();
|
||||
OnlineSub.ClearAllReadOnlineAvatarCompleteDelegates();
|
||||
}
|
||||
|
||||
if (WorldInfo.NetMode != NM_DedicatedServer)
|
||||
{
|
||||
ClearMixerDelegates();
|
||||
ClearDiscord();
|
||||
}
|
||||
|
||||
ClientMatchEnded();
|
||||
|
||||
Super(GamePlayerController).Destroyed();
|
||||
}
|
||||
|
||||
defaultproperties
|
||||
{
|
||||
|
||||
}
|
65
MskGs/Classes/MskGsPlayerController_WeeklySurvival.uc
Normal file
65
MskGs/Classes/MskGsPlayerController_WeeklySurvival.uc
Normal file
@ -0,0 +1,65 @@
|
||||
class MskGsPlayerController_WeeklySurvival extends KFPlayerController_WeeklySurvival;
|
||||
|
||||
event Destroyed()
|
||||
{
|
||||
local KFProjectile KFProj;
|
||||
local int i;
|
||||
|
||||
// Stop currently playing stingers when the map is being switched
|
||||
if( StingerAkComponent != none )
|
||||
{
|
||||
StingerAkComponent.StopEvents();
|
||||
}
|
||||
|
||||
// Useful:
|
||||
// https://wiki.beyondunreal.com/What_happens_when_an_Actor_is_destroyed
|
||||
for (i = DeployedTurrets.Length - 1; i >= 0; --i)
|
||||
{
|
||||
if (DeployedTurrets[i] != None)
|
||||
if (!DeployedTurrets[i].bPendingDelete && !DeployedTurrets[i].bDeleteMe)
|
||||
DeployedTurrets[i].Destroy();
|
||||
|
||||
// don't worry about the Destroyed event on Turret
|
||||
// because it doesn't do anything if the turret is not in the list
|
||||
DeployedTurrets.Remove(i, 1);
|
||||
}
|
||||
|
||||
SetRTPCValue( 'Health', 100, true );
|
||||
PostAkEvent( LowHealthStopEvent );
|
||||
bPlayingLowHealthSFX = false;
|
||||
|
||||
// Update projectiles in the world
|
||||
foreach DynamicActors( class'KFProjectile', KFProj )
|
||||
{
|
||||
if( KFProj.InstigatorController == self )
|
||||
{
|
||||
KFProj.OnInstigatorControllerLeft();
|
||||
}
|
||||
}
|
||||
|
||||
if( LocalCustomizationPawn != none && !LocalCustomizationPawn.bPendingDelete )
|
||||
{
|
||||
LocalCustomizationPawn.Destroy();
|
||||
}
|
||||
|
||||
if (OnlineSub != none)
|
||||
{
|
||||
OnlineSub.ClearAllReadOnlineAvatarByNameCompleteDelegates();
|
||||
OnlineSub.ClearAllReadOnlineAvatarCompleteDelegates();
|
||||
}
|
||||
|
||||
if (WorldInfo.NetMode != NM_DedicatedServer)
|
||||
{
|
||||
ClearMixerDelegates();
|
||||
ClearDiscord();
|
||||
}
|
||||
|
||||
ClientMatchEnded();
|
||||
|
||||
Super(GamePlayerController).Destroyed();
|
||||
}
|
||||
|
||||
defaultproperties
|
||||
{
|
||||
|
||||
}
|
2
tools
2
tools
@ -1 +1 @@
|
||||
Subproject commit 49fcaf67a29c5b478dc10f1f0ae08ed43017cd36
|
||||
Subproject commit 02222cf4536ac3b4dc9341c17549f77bd8efd4a4
|
Loading…
x
Reference in New Issue
Block a user