
Ok... I made this a while ago, some of you might have seen it

- Code: Select all
//=============================================================================
// ControlPoint. Made by Alex, visit http://www.dxalpha.com/
//=============================================================================
class ControlPoint extends DeusExDecoration;
var int PlayerTeam;
var Pawn Controller;
var bool bFirst;
// Make it var(), so it's editable in SDK
var() string ControlPointName;
/*
Texture's used:
Neutral:
FireTexture'Effects.UserInterface.WhiteStatic'
NSF:
FireTexture'Effects.liquid.Virus_SFX'
Unatco:
FireTexture'Effects.Fire.Wepn_Prifle_SFX'
*/
function PostBeginPlay()
{
SetTimer(30.0, true);
}
function Frob(Actor Frobber, Inventory frobWith)
{
if(DeusExPlayer(Frobber) != None)
{
if(DeusExPlayer(Controller) == None)
{
Controller = DeusExPlayer(Frobber);
PlayerTeam = DeusExPlayer(Frobber).PlayerReplicationInfo.Team;
BroadCastMessage("ControlPoint"@ControlPointName@"has been taken over by"@DeusExPlayer(Frobber).PlayerReplicationInfo.PlayerName);
if(DeusExPlayer(Frobber).PlayerReplicationInfo.Team == 0)
{
MultiSkins[1]=FireTexture'Effects.Fire.Wepn_Prifle_SFX';
LightSaturation=0;
LightHue=80;
} else {
MultiSkins[1]=FireTexture'Effects.liquid.Virus_SFX';
LightSaturation=0;
LightHue=0;
}
} else {
if(DeusExPlayer(Controller).PlayerReplicationInfo.Team == DeusExPlayer(Frobber).PlayerReplicationInfo.Team)
{
DeusExPlayer(Frobber).ClientMessage("|p2This control point already belongs to your team.");
} else {
Controller = DeusExPlayer(Frobber);
PlayerTeam = DeusExPlayer(Frobber).PlayerReplicationInfo.Team;
BroadCastMessage("ControlPoint"@ControlPointName@"has been taken over by"@DeusExPlayer(Frobber).PlayerReplicationInfo.PlayerName);
if(DeusExPlayer(Frobber).PlayerReplicationInfo.Team == 0)
{
MultiSkins[1]=FireTexture'Effects.Fire.Wepn_Prifle_SFX';
LightSaturation=0;
LightHue=80;
} else {
MultiSkins[1]=FireTexture'Effects.liquid.Virus_SFX';
LightSaturation=0;
LightHue=0;
}
}
}
}
}
function Timer()
{
if(bFirst != True)
{
bFirst = True;
if(DeusExPlayer(Controller) != None && DeusExPlayer(Controller).PlayerReplicationInfo.Team == PlayerTeam)
{
} else {
Controller=None;
MultiSkins[1]=FireTexture'Effects.UserInterface.WhiteStatic';
LightHue=0;
LightSaturation=255;
}
} else {
if(DeusExPlayer(Controller) != None && DeusExPlayer(Controller).PlayerReplicationInfo.Team == PlayerTeam)
{
Controller.PlayerReplicationInfo.Score += 1;
} else {
Controller=None;
MultiSkins[1]=FireTexture'Effects.UserInterface.WhiteStatic';
LightHue=0;
LightSaturation=255;
}
bFirst = False;
}
}
defaultproperties
{
ControlPointName="Control Point"
bInvincible=True
bPushable=False
bCanBeBase=True
bFlammable=False
ItemName="Control Point"
bBlockSight=True
Mesh=LodMesh'DeusExDeco.BarrelAmbrosia'
MultiSkins(1)=FireTexture'Effects.UserInterface.WhiteStatic'
CollisionRadius=16.000000
CollisionHeight=28.770000
LightType=LT_Steady
LightEffect=LE_WateryShimmer
LightBrightness=96
LightSaturation=255
LightHue=0
LightRadius=4
Mass=80.000000
Buoyancy=12.000000
}
Just look at it, and ask questions if desired. Do not be ashamed if you don't get something!