Cogito, ergo sum
UE1:NBSPBadge (Class)
From Unreal Wiki, The Unreal Engine Documentation Site
Purpose[edit]
This class is used to display a logo.
Variables[edit]
Discussion[edit]
Possible improvements[edit]
Complete source code[edit]
//============================================================================= // NBSPBadge ==> NoBullShitPlus v1.09 //============================================================================= class NBSPBadge extends Mutator; #exec Texture Import File=../NBSP_Forced109/Classes/NoBullShitPlus.pcx Name=NBSPShield Mips=Off enum EDrawState { DRAW_BLANK, DRAW_FADE_IN, DRAW_DISPLAY, DRAW_FADE_OUT, DRAW_DONE }; var private string VersionStr; // Holds the version code from VUC++ var PlayerPawn PP; var private bool bDrawSplash; var private EDrawState DrawState; var private float DrawTime; var private float DrawTick; var private bool bInitialized; var private string zzMsg; var private float WaitTime, FadeInTime, AliveTime, FadeOutTime; simulated function PostRender (private Canvas Canvas) { Super.PostRender(Canvas); //Do Mutator if (( PP != None ) && ( PP.PlayerReplicationInfo != None ) && ( DrawState != DRAW_DONE )) { if ( !bDrawSplash ) { bDrawSplash=True; DrawState=DRAW_BLANK; DrawTick=0.06; SetTimer(DrawTick,True); } else { DrawSplash(Canvas); } } if ( NextMutator != None ) NextMutator.PostRender(Canvas); } simulated function DrawSplash (private Canvas Canvas) { local Font PreviousFont; local bool PreviousCenter; local Color PreviousColor; local byte PreviousStyle; local float zzX,zzY; if ( DrawState != DRAW_BLANK ) { PreviousCenter=Canvas.bCenter; PreviousColor=Canvas.DrawColor; PreviousFont=Canvas.Font; PreviousStyle=Canvas.Style; Canvas.Reset(); Canvas.SetPos(12.00,80.00); zzX = 10; // Canvas.ClipX / 2; zzY = Canvas.ClipY - 128; switch (DrawState) { case DRAW_FADE_IN: Canvas.Style=ERenderStyle.STY_Translucent; Canvas.DrawColor = ChallengeHud(PP.myHUD).WhiteColor * DrawTime; break; case DRAW_DISPLAY: Canvas.Style=ERenderStyle.STY_Translucent; Canvas.DrawColor = ChallengeHud(PP.myHUD).WhiteColor; break; case DRAW_FADE_OUT: Canvas.Style=ERenderStyle.STY_Translucent; Canvas.DrawColor = ChallengeHud(PP.myHUD).WhiteColor * (FadeOutTime - DrawTime); break; default: } if (!bInitialized) zzMsg = "Initiating..."; else zzMsg = "This Server Is Protected!"; Canvas.SetPos(zzX,zzY); Canvas.DrawIcon(texture'NBSPShield',1.00); Canvas.SetPos(zzX+70,zzY+36); Canvas.Font = ChallengeHUD(PP.myHUD).MyFonts.GetSmallestFont(Canvas.ClipX); Canvas.DrawText(zzMsg); Canvas.SetPos(zzX+70,zzY+10); Canvas.Font = ChallengeHUD(PP.myHUD).MyFonts.GetMediumFont(Canvas.ClipX); Canvas.DrawText(VersionStr); Canvas.Style = ERenderStyle.STY_Normal; } } simulated function Timer () { DrawTime=DrawTime + DrawTick; switch (DrawState) { case DRAW_BLANK: if ( DrawTime >= WaitTime ) { DrawState=DRAW_FADE_IN; DrawTime=0.00; } break; case DRAW_FADE_IN: if ( DrawTime >= FadeInTime ) { if (!bInitialized) { bInitialized=True; } PP.ClientPlaySound(Sound'SpeechWindowClick',False); DrawState=DRAW_DISPLAY; DrawTime=0.00; } break; case DRAW_DISPLAY: if (( PP != None ) && ( PP.PlayerReplicationInfo != None ) && ( PP.PlayerReplicationInfo.bWaitingPlayer ) && ( PP.GameReplicationInfo.GameClass != "RocketArena.RocketArenaGame")) { DrawTime=0.00; } if ( DrawTime >= AliveTime ) { DrawState=DRAW_FADE_OUT; DrawTime=0.00; } break; case DRAW_FADE_OUT: if ( DrawTime >= FadeOutTime ) { DrawState=DRAW_DONE; DrawTime=0.00; } break; case DRAW_DONE: SetTimer(0.00,False); break; default: } Super.Timer(); } defaultproperties { VersionStr="NoBullShitPlus v1.09" RemoteRole=ROLE_SimulatedProxy bAlwaysRelevant=True bNetTemporary=True WaitTime=0.20 FadeInTime=1.00 AliveTime=3.50 FadeOutTime=1.00 }