Áƒ*žE0@/Ť@Š…łŐ¤üŹĆś/0None FlagMutator EndCarry HolderDiedCoreEngine ScoreCapture PickUpFlag StealFlag BeginCarry DropFlagReturnSystem FlagHasBaseDrawFlagBadgecapture InitFlag AutoReturnY ScriptTextMutatorCanvasHUDPawn BoolPropertyCTFFlagHolderFlagActor IntProperty TextBuffer bChangeSkin bIsNeutralClassPackageObjectPropertyObject FunctionBaseDropperX Direction Capturer CapturePlaceBotpack FlagCount Returner ChallengeHUD€†yAclass FlagMutator extends Mutator; // How the capture calls work: // // Say a Green guy is carrying the Red, Green, and Blue flags and he // touches his flag base. The following calls will be made to all // FlagMutators (not necessarily in this order): // EndCarry(redFlag,greenGuy) // EndCarry(blueFlag,greenGuy) // EndCarry(greenFlag,greenGuy) // Capture(redFlag,greenGuy,greenFlagBase) // Capture(blueFlag,greenGuy,greenFlagBase) // Return(greenFlag,greenGuy) // ScoreCapture(greenGuy,2,greenFlagBase) // ------------------------------------------------------------------------ // Tell the mutator about a new flag // bChangeSkin: Is changing the flag's skin allowable? // bIsNeutral: Does the flag not belong to any team? function InitFlag(CTFFlag Flag,bool bChangeSkin,bool bIsNeutral) { } // ------------------------------------------------------------------------ // Tell the mutator what a flag's base is // It may not be a subclass of BotPack.FlagBase // Flag Domination has a base that inherits from NavigationPoint function FlagHasBase(CTFFlag Flag,Actor Base) { } // ------------------------------------------------------------------------ // Draw something next to the flag icon on the HUD // Direction is where you're drawing relative to the flag // X and Y specify a different point depending on Direction: // 0-Up: point is above the top left corner of the flag // 1-Down: point is below the bottom left corner // 2-Left: point is left of the top left corner // 3-Right: point is right of the top right corner // (couldn't use an enum because they're only available to subclasses) function DrawFlagBadge(CTFFlag Flag,Canvas Canvas,int Direction,int X,int Y,ChallengeHUD HUD) { } // ------------------------------------------------------------------------ // Holder has taken Flag from its base function StealFlag(CTFFlag Flag,Pawn Holder) { } // ------------------------------------------------------------------------ // Holder has picked Flag up after it was dropped function PickUpFlag(CTFFlag Flag,Pawn Holder) { } // ------------------------------------------------------------------------ // Holder has begun carrying Flag // StealFlag or PickUpFlag may also get called function BeginCarry(CTFFlag Flag,Pawn Holder) { } // ------------------------------------------------------------------------ // Flag is now dropped // Note that with InstaDead, flags can be flung from their bases // without being picked up, so they go directly from 'Home' to 'Dropped' // and Dropper will be None function DropFlag(CTFFlag Flag,Pawn Dropper) { } // ------------------------------------------------------------------------ // A flag carrier has died // DropFlag may also be called since it's difficult to separate the two function HolderDied(CTFFlag Flag,Pawn Holder) { } // ------------------------------------------------------------------------ // Holder is no longer carrying Flag // Capture or Return may also get called function EndCarry(CTFFlag Flag,Pawn Holder) { } // ------------------------------------------------------------------------ // Capturer has captured Flag // In a multi-cap, called once for each flag // CapturePlace is where the flag was captured: in CTF, the scorer's FlagBase function Capture(CTFFlag Flag,Pawn Capturer,Actor CapturePlace) { } // ------------------------------------------------------------------------ // Capturer is capturing one or more flags // Called once per capture (not once per flag) // Because Capture gets called once for each flag, // this lets you respond to multi-caps function ScoreCapture(Pawn Capturer,int FlagCount,Actor CapturePlace) { } // ------------------------------------------------------------------------ // Returner is returning a flag to its base // Note that in Flag Domination this will never get called function Return(CTFFlag Flag,Pawn Returner) { } // ------------------------------------------------------------------------ // Flag got bored and went home on its own function AutoReturn(CTFFlag Flag) { } @ €†€€ h  €†€‰ .ü  €† €€€€€Ž 5Š €†€‡<b €†€‡ D=  ‹.˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙ŇCRž‹=$:e €‡ N‰  €†€‡Vv  €†€‡!^L  "€†€‡ $g„  %€†&€‡€‰#(qŕ )€‡*€€‰', yĎ -€†€‡+/€u €†"!˙˙˙˙#"",!˙˙˙˙%!ü˙˙˙!ý˙˙˙!˙˙˙˙!ý˙˙˙!˙˙˙˙!ý˙˙˙!˙˙˙˙!!˙˙˙˙!ü˙˙˙/!˙˙˙˙$!ý˙˙˙‚ Y 4DBf …jM‚ ENŠ RNŠ  ^N… jN‚ EO‚& RO…_O‚  zO‚  GPˆ ) TPˆ ( `Pˆ  lP‚  xP…EQ‚ `Q‚ mQ…zQ‚ UR‚ bR… oR‹UJS‚ _T… lT‚ GU‚' TU…aU‚ |U‚ IV…VV‚  qV‚  ~V…KW‚# fW‚#* sW‚#+ @X…MX‚'* hXˆ'- uX‚'+ AY… NY‚+ iY‚+. vY…CZ‚. ^Z