UnrealI
Class KingOfTheHill

source: e:\games\UnrealTournament\UnrealI\Classes\KingOfTheHill.uc
Core.Object
   |
   +--Engine.Actor
      |
      +--Engine.Info
         |
         +--Engine.GameInfo
            |
            +--UnrealShare.UnrealGameInfo
               |
               +--UnrealShare.DeathMatchGame
                  |
                  +--UnrealI.KingOfTheHill
Direct Known Subclasses:None

class KingOfTheHill
extends UnrealShare.DeathMatchGame

//============================================================================= // KingOfTheHill. //=============================================================================
Variables
 string KingMessage
 Pawn king


Function Summary
 void CrownNewKing(Pawn newKing)
 void Killed(Pawn killer, Pawn Other, name damageType)



Source Code


00001	//=============================================================================
00002	// KingOfTheHill.
00003	//=============================================================================
00004	class KingOfTheHill extends DeathMatchGame;
00005	
00006	var pawn king;
00007	var localized string KingMessage;
00008	
00009	function Killed(pawn killer, pawn Other, name damageType)
00010	{
00011		Other.AmbientGlow = 0;
00012		Other.LightType = LT_None;
00013		Other.DamageScaling = 1.0;
00014		Other.bUnLit = false;
00015	
00016		if ( (King == Other) || (King == None) )
00017		{
00018			if ( (killer == None) || (killer == Other) 
00019					|| (killer.Health <= 0) )
00020			{
00021				if ( (killer == King) && (King == Other) )
00022					King.PlayerReplicationInfo.Score -= 4;
00023				King = None;
00024			} 
00025			else if ( killer != king )
00026				CrownNewKing(killer);
00027		}	
00028				
00029		Super.Killed(killer, Other, damageType);
00030	}
00031	
00032	function CrownNewKing(pawn newKing)
00033	{
00034		local Inventory Inv;
00035		
00036		King = newKing;
00037		BroadcastMessage(newKing.PlayerReplicationInfo.PlayerName$KingMessage, true);
00038		NewKing.health = Max(NewKing.Health, 100);
00039		NewKing.bUnLit = true; 
00040		NewKing.PlayerReplicationInfo.Score += 5.0;
00041		NewKing.DamageScaling = 2.0;
00042		NewKing.LightEffect=LE_NonIncidence;
00043		NewKing.LightBrightness=255;
00044		NewKing.LightHue=0;
00045		NewKing.LightRadius=10;
00046		NewKing.LightSaturation=0;
00047		NewKing.AmbientGlow = 200;
00048		NewKing.bUnlit = true;
00049		NewKing.LightType=LT_Steady;
00050	}
00051	
00052	defaultproperties
00053	{
00054	     KingMessage=" is the new king of the hill!"
00055	     BeaconName="King"
00056	     GameName="King of the Hill"
00057	}

End Source Code