Class SchlonzTransfire extends Transfire; function projectile SpawnProjectile(Vector Start, Rotator Dir) { local SchlonzTransBeacon TransBeacon; if( TransLauncher( Weapon ).TransBeacon == None ) { if( (Instigator == None) || (Instigator.PlayerReplicationInfo == None) || (Instigator.PlayerReplicationInfo.Team == None) ) TransBeacon = Spawn( class'SchlonzUT.SchlonzTransBeacon',,, Start, Dir ); else if( Instigator.PlayerReplicationInfo.Team.TeamIndex == 0 ) TransBeacon = Spawn( class'SchlonzUT.SchlonzTransBeacon',,, Start, Dir ); else TransBeacon = Spawn( class'SchlonzUT.SchlonzTransBeacon',,, Start, Dir ); TransLauncher( Weapon ).TransBeacon = TransBeacon; Weapon.PlaySound( TransFireSound,SLOT_Interact,,,,,false ); } else { TransLauncher( Weapon ).ViewPlayer(); TransLauncher( Weapon ).TransBeacon.Destroy(); TransLauncher( Weapon ).TransBeacon = None; Weapon.PlaySound( RecallFireSound,SLOT_Interact,,,,,false ); } return TransBeacon; } // SpawnProjectile defaultproperties { ProjectileClass=Class'SchlonzUT.SchlonzTransBeacon' }