FSB-SPY v1.6 stuff

Evita
04-24-2003, 02:29 PM
for those that want some kind of flag notification (whether its at home or not), replace the code in flagreturn.cs with this code, only 3 lines changed; i marked em:

edit: what this does is very plain: when flag is home, no bitmap is shown (as usual), if friendly flag is gone, then green dot shows up, if enemy flag is gone, red dot shows up.


// [meph]DooM!
//
// Stripped down version of CtfHUD -- only shows flag drop status countdown.
//
//

//$CtfHUD::Bitmap[0, home] = "friendly.home.bmp";
$CtfHUD::Bitmap[0, player] = "FriendlyFlag.bmp"; // uncommented this & renamed bitmap
$CtfHUD::Bitmap[0, field] = "FriendlyFlag.bmp";

//$CtfHUD::Bitmap[1, home] = "enemy.home.bmp";
$CtfHUD::Bitmap[1, player] = "EnemyFlag.bmp"; // uncommented this & renamed bitmap
$CtfHUD::Bitmap[1, field] = "EnemyFlag.bmp";

function CtfHUD::Init()
{
if ($CtfHUD::Loaded)
return;
$CtfHUD::Loaded = true;

//$AOPref::CTFHudPos = "440 631 175 40 ";
//HUD::New::Shaded("CtfHUD::Container", 5, 100, 175, 40, CtfHUD::Wake, CtfHUD::Sleep);
HUD::New("CtfHUD::Container", 726, 724, 175, 40, CtfHUD::Wake, CtfHUD::Sleep);

newObject("CtfHUD::Bitmap0", FearGuiFormattedText, 26, 2, 9, 9);
newObject("CtfHUD::Bitmap1", FearGuiFormattedText, -1, 2, 9, 9);

newObject("CtfHUD::Status0", FearGuiFormattedText, 38, 0, 150, 20);
newObject("CtfHUD::Status1", FearGuiFormattedText, 11, 0, 150, 20);

HUD::Add("CtfHUD::Container", "CtfHUD::Bitmap0");
HUD::Add("CtfHUD::Container", "CtfHUD::Bitmap1");

HUD::Add("CtfHUD::Container", "CtfHUD::Status0");
HUD::Add("CtfHUD::Container", "CtfHUD::Status1");

CtfHUD::Reset();
}

function CtfHUD::Wake()
{
CtfHUD::Update();
}

function CtfHUD::Sleep()
{
}

function CtfHUD::Reset()
{
//Control::SetValue("CtfHUD::Bitmap0", "<b3,3:modules\\ctfhud\\fri endly.bmp>");
//Control::SetValue("CtfHUD::Bitmap1", "<b3,4:modules\\ctfhud\\ene my.bmp>");

CtfHUD::Update();
}


function CtfHUD::SetTeamValue(%slo t, %team)
{
%score = $Flag::Score[%team];
%loc = $Flag::Status[%team];
if (%loc == "home")
{
%loc = "";
//%bmp = $CtfHUD::Bitmap[%slot, home];
}
else if (%loc == "field")
{
%loc = "<F2>" @ $Flag::Timer[%team];
%bmp = $CtfHUD::Bitmap[%slot, field];
}
else
{
%loc = "";
%bmp = $CtfHUD::Bitmap[%slot, player]; //<--uncommented this
}

Control::SetValue("CtfHUD::Bitmap" @ %slot, "<b3,3:FSB-SPY\\Scripts\\BMPs\\" @ %bmp @ ">");
Control::SetValue("CtfHUD::Status" @ %slot, %loc);

}

function CtfHUD::Update()
{
CtfHUD::SetTeamValue(0, Team::Friendly());
CtfHUD::SetTeamValue(1, Team::Enemy());
}

function CtfHUD::SelfUpdate(%clien t, %team)
{
if (%client == getManagerId())
CtfHUD::Update();
}


event::attach(EventFlagUp date, CtfHUD::Update);
event::attach(EventFlagTi merUpdate, CtfHUD::Update);
event::attach(EventClient ChangeTeam, CtfHUD::SelfUpdate);

event::Attach(eventConnec ted, CtfHUD::Reset);
event::Attach(eventChange Mission, CtfHUD::Reset);

CtfHUD::Init();


here is a tv.cs that works for it (a friends request). Set keybind at bottome, by default F6:


function TV::Activate() {

$TV::FlagCarrier = $Flag::Status[Team::Enemy()];
$TV::FlagCarrier = getClientByName($TV::Flag Carrier);

if(Client::GetName($TV::F lagCarrier) == "") {
$TV::Active = "False";
remoteBP(2048, "<jc><f0>No flag-carrier to observe!", 2);
return;
}

if(isObject("CommandGui"))
renameObject("CommandGui", "_CommandGui");

if(!isObject("PlayGui/ObsTV")) {
addToSet(PlayGui, newObject("ObsTV", FearGui::CMDObserve, 0, 0, 1, 1));
}

remoteEval(2048, CommandMode);
RemoteEval(2048, "scom", -1);
Schedule("CursorOff(mainwindow);", 0.3);
Client::ToggleCmdObserver ("True");
Client::cmdObservePlayer( $TV::FlagCarrier);
remoteBP(2048, "<jc><f0>Observing: <f0>" @ Client::GetName($TV::Flag Carrier), 999);
$TV::Active = "True";
}

function TV::DeActivate() {

if(!$TV::Active)
return;

Client::ToggleCmdObserver ("False");
remoteEval(2048, PlayMode);

if($TV::Active)
deleteObject("PlayGui/ObsTV");

renameObject("_CommandGui", "CommandGui");
remoteBP(2048, "", 0.1);
$TV::Active = "False";
}

editActionmap("playmap.sae");
bindCommand(keyboard0, make, "F6", TO, "TV::Activate();");
bindCommand(keyboard0, break, "F6", TO, "TV::DeActivate();");

Nikita
04-25-2003, 07:57 PM
Thanks! :)

Evita
04-28-2003, 02:05 PM
np spy