40 lines
906 B
Plaintext
40 lines
906 B
Plaintext
class SmartCTFSpawnNotifyPRI expands SpawnNotify;
|
|
|
|
var Actor IpToCountry;
|
|
var bool bChecked;
|
|
|
|
simulated event Actor SpawnNotification( Actor A )
|
|
{
|
|
local Actor Search;
|
|
local SmartCTFPlayerReplicationInfo RI;
|
|
|
|
if( A.Owner == None ) return A;
|
|
if( !A.Owner.IsA( 'PlayerPawn' ) && !A.Owner.IsA( 'Bot' ) ) return A;
|
|
if( !Pawn( A.Owner ).bIsPlayer ) return A;
|
|
|
|
if(!bChecked)
|
|
{
|
|
foreach Level.Game.AllActors(class'Actor', Search, 'IpToCountry')
|
|
{
|
|
IpToCountry=Search;
|
|
break;
|
|
}
|
|
bChecked=True;
|
|
}
|
|
// Spawn SmartCTF PRI for this pawn on the server
|
|
RI=Spawn( class'SmartCTFPlayerReplicationInfo', A );
|
|
if(IpToCountry != None)
|
|
{
|
|
RI.IpToCountry=IpToCountry;
|
|
RI.bIpToCountry=True;
|
|
}
|
|
return A;
|
|
}
|
|
|
|
defaultproperties
|
|
{
|
|
ipToCountry=None
|
|
bChecked=False
|
|
ActorClass=Class'Engine.PlayerReplicationInfo'
|
|
}
|