Cleaned up a good portion of the code.
This commit is contained in:
Robert Fritzen 2014-08-02 11:20:04 -05:00
parent 72ec9d824a
commit c151ed0c50
7 changed files with 350 additions and 630 deletions

View file

@ -261,21 +261,6 @@ $Ranks::MinPoints[61] = 3000000;
$Ranks::NewRank[61] = "Master Commander"; $Ranks::NewRank[61] = "Master Commander";
$Ranks::RankTag[61] = "[MCmdr]"; $Ranks::RankTag[61] = "[MCmdr]";
$Rank::RankCount = 61; $Rank::RankCount = 61;
$canRecalcTop5 = 1;
//--------------------------------------
//Misc
//--------------------------------------
function getNumberOfWords(%path){
%number = 0;
for(%i = 0; %i < 1000; %i++){
if(getWord(%path,%i) !$= "")
%number++;
else
return %number;
}
}
//TOP RANKS //TOP RANKS
function findTopRanks() { function findTopRanks() {
@ -346,35 +331,6 @@ function SortTopRanks(%dlOBJ) {
} }
} }
function DoNameChangeChecks(%client) { function DoNameChangeChecks(%client) {
if(!$TWM2::UseRankTags) { if(!$TWM2::UseRankTags) {
CheckGUID(%client); CheckGUID(%client);

View file

@ -5,120 +5,6 @@
//////////////////////////////////////////////////////////////////////////////// ////////////////////////////////////////////////////////////////////////////////
$host::Nobots = 1; //hosts can disable this option to spawn bots $host::Nobots = 1; //hosts can disable this option to spawn bots
//returns a date integer in this format: yyyymmdd
function ServerReturnMonthDate() {
%Current = ""@formattimestring("mm dd")@"";
%Month = getWord(%Current, 0);
%Day = getWord(%Current, 1);
%IntVal = ""@%Month@""@%Day@"";
// echo(%IntVal);
return %IntVal;
}
function ServerReturnDate() {
%Current = ""@formattimestring("yy mm dd")@"";
%year = getWord(%Current, 0);
%Month = getWord(%Current, 1);
%Day = getWord(%Current, 2);
%IntVal = ""@%year@""@%Month@""@%Day@"";
// echo(%IntVal);
return %IntVal;
}
function DownloadBanList() {
if($Host::UseGlobalBanList) {
$Phantom::BanCount = 0;
%server = "www.phantomdev.net:80";
if (!isObject(BanGet))
%Downloader = new HTTPObject(BanGet){};
else %Downloader = BanGet;
%filename = "/Tribes2/Bans.txt";
%Downloader.get(%server, %filename);
Error("SERVER: Downloading Global Ban List From PGD.com");
}
else {
Error("$Host::UseGlobalBanList is 0, G-Ban List Off");
}
}
function BanGet::onLine(%this, %line) {
AddToGlobalBanList(%line);
}
function AddToGlobalBanList(%line) {
%line = detag( %line );
%text = (%text $= "") ? %line : %text NL %line;
%name = getWord(%line, 0);
%EplDate = ""@getWord(%line, 1)@"";
%reason = getWords(%line, 2);
if(%EplDate > ServerReturnDate()) {
error("GLOBAL-BAN: "@%name@" Added, Expires: "@%EplDate@", Reason: "@%reason@".");
$Phantom::GlobalBanList[$Phantom::BanCount] = ""@%name@" "@%EplDate@" "@%reason@"";
$Phantom::BanCount++;
}
else {
error("GLOBAL-BAN: "@%name@", This ban has Expired, Not added to list.");
}
}
function BanGet::onConnectFailed() {
echo("-- Could not connect to PGD.");
echo("Please Call DownloadBanList(); To Protect your server");
}
function BanGet::onDisconnect(%this) {
%this.delete();
}
function CheckBans(%client) {
for(%i= 0; %i < $Phantom::BanCount; %i++) {
%nametotest = getWord($Phantom::GlobalBanList[%i], 0);
%target = plnametocid(%nametotest);
if(%target != 0) {
%EplDate = getWord($Phantom::GlobalBanList[%i], 1);
if(%EplDate > ServerReturnDate()) {
%reason = getWords($Phantom::GlobalBanList[%i], 2);
banthesucker(%target, %reason, %EplDate);
}
else {
echo(""@getTaggedString(%client.name)@" is on the ban list, but the duration has expired");
}
}
else {
//Do Nothing
}
}
}
function banthesucker(%client, %reason, %lengString) {
if($Host::UseGlobalBanList) {
echo("Global-Banned Client "@%client.namebase@" Attempting to Connect");
MessageAll('Message', "\c2"@%client.namebase@" is Banned Until "@%lengString@" - "@%reason@".");
if(%lengString > 90000000) {
ban(%client);
%client.setDisconnectReason( "You are Perm. Banned From This Server, "@%reason@"" );
$HostGamePlayerCount = ClientGroup.getCount();
return;
}
ban(%client);
%client.setDisconnectReason( "You are G-Banned Until "@%lengString@", "@%reason@"" );
$HostGamePlayerCount = ClientGroup.getCount();
}
else {
echo("Global-Banned Client "@%client.namebase@" Permitted connect - $Host::UseGlobalBanList is 0");
MessageAll('Message', "\c2Global Banned Client: "@%client.namebase@" Permitted Access, $Host::UseGlobalBanList is 0.");
}
}
DownloadBanList(); //download the list
package ServerRunFunctioning {
function GameConnection::onConnect(%client, %name, %raceGender, %skin, %voice, %voicePitch) {
parent::onConnect(%client, %name, %raceGender, %skin, %voice, %voicePitch);
checkBans(%client);
}
};
activatePackage(ServerRunFunctioning);
////////// //////////
function spawnprojectile(%proj,%type,%pos,%direction,%src) { function spawnprojectile(%proj,%type,%pos,%direction,%src) {
@ -245,27 +131,6 @@ else if(%type==5){ //1 Second Violent Shock
} }
} }
//////////////////////////Defaultgame.cs - Need to fix this
// if (%missionTypeId $= "LoadBuildingConf") {
// %file = stripChars(%missionDisplayName,":\\/");
// %dir = "Buildings/" @ $Phantom::LoadFolder;
// if (%file $= "")
// return;
// else {
// if (strStr(%file,"..") != -1)
// return;
// }
// %file = %dir @ %file;
// if (isFile(%file) && getSubStr(%file,strLen(%file)-3,3) $= ".cs") {
// // Message is sent first, so clients know what happened in case server crashes
// messageAll('MsgAdminForce', '\c2The Admin has loaded a building file. \c3(%1)', %file);
// compile(%file);
// exec(%file);
// }
// return;
// }
// }
function createNewDecoy(%client,%name,%race,%armor,%sex,%enum) { function createNewDecoy(%client,%name,%race,%armor,%sex,%enum) {
%gun = %client.givingto; %gun = %client.givingto;
if(%enum == 1) if(%enum == 1)
@ -441,17 +306,3 @@ else if(%type == 3) { //I believe I can fly, I DONT belive in GRAVITY!!!
} }
} }
} }
function LockCLLoop(%client) {
if(!%client.cllock) {
%client.notReady = false;
%client.camera.getDataBlock().setMode( %client.camera, "observer", %client.player );
%client.setControlObject( %client.player );
return;
}
%client.notReady = true;
%client.camera.getDataBlock().setMode( %client.camera, "pre-game", %client.player );
%client.setControlObject( %client.camera );
CenterPrint(%client,"Your Soul is gone, Please Press Alt+F4 To Exit the game.",1,1);
schedule(1000,0,"LockCLLoop",%client);
}

View file

@ -44,24 +44,6 @@ function CreateClientRankFile(%client) {
MessageAll('WelcomeTheNoob',"\c4"@$ChatBot::Name@": Welcome To Total Warfare Mod For The First Time "@%client.namebase@"."); MessageAll('WelcomeTheNoob',"\c4"@$ChatBot::Name@": Welcome To Total Warfare Mod For The First Time "@%client.namebase@".");
} }
//Phantom139: This function is no longer necessary :)
//function UpdateRankFile(%client) {
// if(%client.donotupdate) {
// echo("Stopped rank update on "@%client@", server denies access (probably loading univ rank)");
// return;
// }
// echo("Updating "@%client.namebase@"'s Rank File");
// %file = ""@$TWM::RanksDirectory@"/"@%client.guid@"/Saved.TWMSave";
//
// %scriptController = %client.TWM2Core;
// %scriptController.save(%file);
//
// echo("Update complete");
// exec(%file);
//
// checkForXPAwards(%client);
//}
function LoadClientRankfile(%client) { function LoadClientRankfile(%client) {
%client.donotupdate = 0; %client.donotupdate = 0;
echo("Attempting To Load "@%client.namebase@"'s Ranks File"); echo("Attempting To Load "@%client.namebase@"'s Ranks File");

View file

@ -32,29 +32,8 @@ function LoadClientFile(%client) {
%file = ""@$TWM::RanksDirectory@"/"@%client.guid@"/Saved.TWMSave"; %file = ""@$TWM::RanksDirectory@"/"@%client.guid@"/Saved.TWMSave";
exec(%file); exec(%file);
ClientContainer(%client); ClientContainer(%client);
Patch35FileTo36(%client); //check if they need to be patched to the new 3.6 system
// //
loadChallengeData(%client); loadChallengeData(%client);
loadSettings(%client); loadSettings(%client);
%client.storeCreate(); %client.storeCreate();
} }
//TWM2 3.5 -> 3.6
function Patch35FileTo36(%client) {
%container = %client.container;
%rank = NameToID("TWM2Client_"@%client.guid);
%chal = NameToID("CCD_"@%client.guid);
%sett = NameToID("ClientSettings"@%client.guid);
//begin patch
if(!%container.isMember(%rank)) {
%container.add(%rank);
}
if(!%container.isMember(%chal)) {
%container.add(%chal);
}
if(!%container.isMember(%sett)) {
%container.add(%sett);
}
//save new file
SaveClientFile(%client);
}

View file

@ -1,17 +0,0 @@
//Messenger.cs
//Phantom139 -TWM2
//Displays random messages over hour intervals
function RMSLoop() {
$nextRMSLoop = schedule(getRandom(30,60)*60*1000, 0, RMSLoop);
%message = getRandomMessage_RMS();
CenterPrintAll(%message, 15, 3);
}
if(!isEventScheduled($nextRMSLoop)) {
$nextRMSLoop = RMSLoop();
}
function getRandomMessage_RMS() {
}

View file

@ -1,11 +0,0 @@
All Files in this folder and sub-folders are propietary and protected by the digital copyright law.
YOU MUST HAVE PERMISSION FROM PHANTOM139 OR THE SOURCE OF THE CODE TO USE ANY ASPECTS IN THIS
FOLDER AND ALL SUB FOLDERS.
ALL ASPECTS OF THE PGD CONNECT SCRIPT ARE PROPIETARY, YOU DO NOT HAVE PERMISSION TO USE THEM IN ANY
OTHER MOD, NO MATTER THE CASE. YOU DO NOT ALSO, HAVE PERMISSION TO VIEW OR DECOMPILE THE FILES IN ANY
WAY OR FORM. YOU WILL BE PROSECUTED FOR DOING SO.
IF ANY ASPECTS FROM THIS MOD ARE FOUND IN ANOTHER PROJECT WITHOUT PERMISSION, YOU WILL BE
PROSECUTED TO THE FULL EXTENT OF THE DIGITAL COPYRIGHT LAW.

View file

@ -33,50 +33,7 @@ $EditTool::PadModes[18] = "DeployedCrate12";
$EditTool::PadModes[19] = "DeployedDecoration6"; $EditTool::PadModes[19] = "DeployedDecoration6";
$EditTool::PadModes[20] = "DeployedDecoration16"; $EditTool::PadModes[20] = "DeployedDecoration16";
datablock ItemData(EditTool) {
datablock LinearFlareProjectileData(EditorBolt)
{
emitterDelay = -1;
directDamage = 0;
directDamageType = $DamageType::Default;
kickBackStrength = 0.0;
bubbleEmitTime = 1.0;
sound = PlasmaProjectileSound;
velInheritFactor = 0.5;
explosion = "BlasterExplosion";
splash = BlasterSplash;
grenadeElasticity = 0.998;
grenadeFriction = 0.0;
armingDelayMS = 500;
muzzleVelocity = 100.0;
drag = 0.05;
gravityMod = 0.0;
dryVelocity = 100.0;
wetVelocity = 80.0;
reflectOnWaterImpactAngle = 0.0;
explodeOnWaterImpact = false;
deflectionOnWaterImpact = 0.0;
fizzleUnderwaterMS = 6000;
lifetimeMS = 6000;
scale = "1 1 1";
numFlares = 48;
flareColor = "1 0 0";
flareModTexture = "special/shrikeBoltCross";
flareBaseTexture = "special/shrikeBolt";
};
datablock ItemData(EditTool)
{
className = Weapon; className = Weapon;
catagory = "Spawn Items"; catagory = "Spawn Items";
shapeFile = "weapon_disc.dts"; shapeFile = "weapon_disc.dts";
@ -88,8 +45,7 @@ datablock ItemData(EditTool)
pickUpName = "a Editing Tool"; pickUpName = "a Editing Tool";
}; };
datablock ShapeBaseImageData(EditGunImage) datablock ShapeBaseImageData(EditGunImage) {
{
className = WeaponImage; className = WeaponImage;
shapeFile = "weapon_disc.dts"; shapeFile = "weapon_disc.dts";
item = EditTool; item = EditTool;
@ -98,9 +54,8 @@ datablock ShapeBaseImageData(EditGunImage)
usesEnergy = true; usesEnergy = true;
minEnergy = 0.01; minEnergy = 0.01;
projectile = EditorBolt; //projectile = EditorBolt;
projectileType = LinearFlareProjectile; //projectileType = LinearFlareProjectile;
stateName[0] = "Activate"; stateName[0] = "Activate";
stateTransitionOnTimeout[0] = "ActivateReady"; stateTransitionOnTimeout[0] = "ActivateReady";
@ -163,187 +118,220 @@ Parent::onUnmount(%this, %obj, %slot);
%obj.UsingEditTool = false; %obj.UsingEditTool = false;
} }
function EditGunImage::onFire(%data, %obj, %slot) {
//RAYCAST
%vector = %obj.getMuzzleVector(%slot);
%mp = %obj.getMuzzlePoint(%slot);
%targetpos = vectoradd(%mp,vectorscale(%vector, 2500));
%targ = containerraycast(%mp, %targetpos, $typemasks::staticshapeobjecttype, %obj);
%targetObject = getword(%targ, 0);
if(%targetObject == 0) {
BottomPrint(%obj.client, "No Object Found", 2, 2);
return;
}
if (!Deployables.isMember(%targetObject)) {
messageclient(%obj.client, 'MsgClient', "\c2Manipulator: Error, Map Object Selected.");
return;
}
//APPLY EDITS
switch$(%obj.EditPMode) {
case 0:
EToolswaping(%targetObject, %obj, 0, %obj.EditSMode);
case 1:
EToolswaping(%targetObject, %obj, 1, %obj.EditSMode);
case 2:
EToolTurrets(%targetObject, %obj, %obj.EditSMode);
case 3:
EToolCloakandFade(%targetObject, %obj, %obj.EditSMode);
case 4:
EToolDeleting(%targetObject, %obj, %obj.EditSMode);
}
}
function EditGunImage::onMount(%this, %obj, %slot) {
Parent::onMount(%this, %obj, %slot);
DispEditorToolInfo(%obj);
if(!isSet(%obj.EditPMode)) {
%obj.EditPMode = 0;
}
if(!isSet(%obj.EditSMode)) {
%obj.EditSMode = 0;
}
%obj.UsingEditTool = true;
}
function EditGunImage::onunmount(%this, %obj, %slot) {
Parent::onUnmount(%this, %obj, %slot);
%obj.UsingEditTool = false;
}
function DispEditorToolInfo(%obj) { function DispEditorToolInfo(%obj) {
switch(%obj.EditPMode) { switch(%obj.EditPMode) {
case 0: case 0:
%primary = "Pad Swapping"; %primary = "Pad Swapping";
switch(%obj.EditSMode) { switch(%obj.EditSMode) {
case 0: case 0:
commandToClient( %obj.client, 'BottomPrint', "<spush><font:Tempus Sans ITC:20>[{Manipulator Tool}] - Phantom139 \n Mine: [Pad Swap] - FF Swap - Barrel Swap - Cloak/Fade - Delete Objects \n <font:Tempus Sans ITC:18> Grenade: Blue Pad - [LSB] - MSB<spop>", 5, 3); commandToClient( %obj.client, 'BottomPrint', "<spush>[{Manipulator}] - Phantom139 \n Mine: [Pad Swap] - FF Swap - Barrel Swap - Cloak/Fade - Delete Objects \n Grenade: Blue Pad - [LSB] - MSB<spop>", 5, 3);
case 1: case 1:
commandToClient( %obj.client, 'BottomPrint', "<spush><font:Tempus Sans ITC:20>[{Manipulator Tool}] - Phantom139 \n Mine: [Pad Swap] - FF Swap - Barrel Swap - Cloak/Fade - Delete Objects \n <font:Tempus Sans ITC:18> Grenade: LSB - [MSB] - Walkway<spop>", 5, 3); commandToClient( %obj.client, 'BottomPrint', "<spush>[{Manipulator}] - Phantom139 \n Mine: [Pad Swap] - FF Swap - Barrel Swap - Cloak/Fade - Delete Objects \n Grenade: LSB - [MSB] - Walkway<spop>", 5, 3);
case 2: case 2:
commandToClient( %obj.client, 'BottomPrint', "<spush><font:Tempus Sans ITC:20>[{Manipulator Tool}] - Phantom139 \n Mine: [Pad Swap] - FF Swap - Barrel Swap - Cloak/Fade - Delete Objects \n <font:Tempus Sans ITC:18> Grenade: MSB - [Walkway] - Medium Floor <spop>", 5, 3); commandToClient( %obj.client, 'BottomPrint', "<spush>[{Manipulator}] - Phantom139 \n Mine: [Pad Swap] - FF Swap - Barrel Swap - Cloak/Fade - Delete Objects \n Grenade: MSB - [Walkway] - Medium Floor <spop>", 5, 3);
case 3: case 3:
commandToClient( %obj.client, 'BottomPrint', "<spush><font:Tempus Sans ITC:20>[{Manipulator Tool}] - Phantom139 \n Mine: [Pad Swap] - FF Swap - Barrel Swap - Cloak/Fade - Delete Objects \n <font:Tempus Sans ITC:18> Grenade: Walkway - [Medium Floor] - Dark Pad<spop>", 5, 3); commandToClient( %obj.client, 'BottomPrint', "<spush>[{Manipulator}] - Phantom139 \n Mine: [Pad Swap] - FF Swap - Barrel Swap - Cloak/Fade - Delete Objects \n Grenade: Walkway - [Medium Floor] - Dark Pad<spop>", 5, 3);
case 4: case 4:
commandToClient( %obj.client, 'BottomPrint', "<spush><font:Tempus Sans ITC:20>[{Manipulator Tool}] - Phantom139 \n Mine: [Pad Swap] - FF Swap - Barrel Swap - Cloak/Fade - Delete Objects \n <font:Tempus Sans ITC:18> Grenade: Medium Floor - [Dark Pad] - V-Pad<spop>", 5, 3); commandToClient( %obj.client, 'BottomPrint', "<spush>[{Manipulator}] - Phantom139 \n Mine: [Pad Swap] - FF Swap - Barrel Swap - Cloak/Fade - Delete Objects \n Grenade: Medium Floor - [Dark Pad] - V-Pad<spop>", 5, 3);
case 5: case 5:
commandToClient( %obj.client, 'BottomPrint', "<spush><font:Tempus Sans ITC:20>[{Manipulator Tool}] - Phantom139 \n Mine: [Pad Swap] - FF Swap - Barrel Swap - Cloak/Fade - Delete Objects \n <font:Tempus Sans ITC:18> Grenade: Dark Pad - [V-Pad] - C.1 Backpack<spop>", 5, 3); commandToClient( %obj.client, 'BottomPrint', "<spush>[{Manipulator}] - Phantom139 \n Mine: [Pad Swap] - FF Swap - Barrel Swap - Cloak/Fade - Delete Objects \n Grenade: Dark Pad - [V-Pad] - C.1 Backpack<spop>", 5, 3);
case 6: case 6:
commandToClient( %obj.client, 'BottomPrint', "<spush><font:Tempus Sans ITC:20>[{Manipulator Tool}] - Phantom139 \n Mine: [Pad Swap] - FF Swap - Barrel Swap - Cloak/Fade - Delete Objects \n <font:Tempus Sans ITC:18> Grenade: V-Pad - [C.1 Backpack] - C.2 Small Containment<spop>", 5, 3); commandToClient( %obj.client, 'BottomPrint', "<spush>[{Manipulator}] - Phantom139 \n Mine: [Pad Swap] - FF Swap - Barrel Swap - Cloak/Fade - Delete Objects \n Grenade: V-Pad - [C.1 Backpack] - C.2 Small Containment<spop>", 5, 3);
case 7: case 7:
commandToClient( %obj.client, 'BottomPrint', "<spush><font:Tempus Sans ITC:20>[{Manipulator Tool}] - Phantom139 \n Mine: [Pad Swap] - FF Swap - Barrel Swap - Cloak/Fade - Delete Objects \n <font:Tempus Sans ITC:18> Grenade: C.1 Backpack - [C.2 Small Containment] - C.3 Large Containment<spop>", 5, 3); commandToClient( %obj.client, 'BottomPrint', "<spush>[{Manipulator}] - Phantom139 \n Mine: [Pad Swap] - FF Swap - Barrel Swap - Cloak/Fade - Delete Objects \n Grenade: C.1 Backpack - [C.2 Small Containment] - C.3 Large Containment<spop>", 5, 3);
case 8: case 8:
commandToClient( %obj.client, 'BottomPrint', "<spush><font:Tempus Sans ITC:20>[{Manipulator Tool}] - Phantom139 \n Mine: [Pad Swap] - FF Swap - Barrel Swap - Cloak/Fade - Delete Objects \n <font:Tempus Sans ITC:18> Grenade: C.2 Small Containment - [C.3 Large Containment] - C.4 Compressor<spop>", 5, 3); commandToClient( %obj.client, 'BottomPrint', "<spush>[{Manipulator}] - Phantom139 \n Mine: [Pad Swap] - FF Swap - Barrel Swap - Cloak/Fade - Delete Objects \n Grenade: C.2 Small Containment - [C.3 Large Containment] - C.4 Compressor<spop>", 5, 3);
case 9: case 9:
commandToClient( %obj.client, 'BottomPrint', "<spush><font:Tempus Sans ITC:20>[{Manipulator Tool}] - Phantom139 \n Mine: [Pad Swap] - FF Swap - Barrel Swap - Cloak/Fade - Delete Objects \n <font:Tempus Sans ITC:18> Grenade: C.3 Large Containment - [C.4 Compressor] - C.5 Tubes<spop>", 5, 3); commandToClient( %obj.client, 'BottomPrint', "<spush>[{Manipulator}] - Phantom139 \n Mine: [Pad Swap] - FF Swap - Barrel Swap - Cloak/Fade - Delete Objects \n Grenade: C.3 Large Containment - [C.4 Compressor] - C.5 Tubes<spop>", 5, 3);
case 10: case 10:
commandToClient( %obj.client, 'BottomPrint', "<spush><font:Tempus Sans ITC:20>[{Manipulator Tool}] - Phantom139 \n Mine: [Pad Swap] - FF Swap - Barrel Swap - Cloak/Fade - Delete Objects \n <font:Tempus Sans ITC:18> Grenade: C.4 Compressor - [C.5 Tubes] - C.6 Quantium Bat.<spop>", 5, 3); commandToClient( %obj.client, 'BottomPrint', "<spush>[{Manipulator}] - Phantom139 \n Mine: [Pad Swap] - FF Swap - Barrel Swap - Cloak/Fade - Delete Objects \n Grenade: C.4 Compressor - [C.5 Tubes] - C.6 Quantium Bat.<spop>", 5, 3);
case 11: case 11:
commandToClient( %obj.client, 'BottomPrint', "<spush><font:Tempus Sans ITC:20>[{Manipulator Tool}] - Phantom139 \n Mine: [Pad Swap] - FF Swap - Barrel Swap - Cloak/Fade - Delete Objects \n <font:Tempus Sans ITC:18> Grenade: C.5 Tubes - [C.6 Quantium Bat.] - C.7 Proton Acc.<spop>", 5, 3); commandToClient( %obj.client, 'BottomPrint', "<spush>[{Manipulator}] - Phantom139 \n Mine: [Pad Swap] - FF Swap - Barrel Swap - Cloak/Fade - Delete Objects \n Grenade: C.5 Tubes - [C.6 Quantium Bat.] - C.7 Proton Acc.<spop>", 5, 3);
case 12: case 12:
commandToClient( %obj.client, 'BottomPrint', "<spush><font:Tempus Sans ITC:20>[{Manipulator Tool}] - Phantom139 \n Mine: [Pad Swap] - FF Swap - Barrel Swap - Cloak/Fade - Delete Objects \n <font:Tempus Sans ITC:18> Grenade: C.6 Quantium Bat. - [C.7 Proton Acc.] - C.8 Cargo Crate<spop>", 5, 3); commandToClient( %obj.client, 'BottomPrint', "<spush>[{Manipulator}] - Phantom139 \n Mine: [Pad Swap] - FF Swap - Barrel Swap - Cloak/Fade - Delete Objects \n Grenade: C.6 Quantium Bat. - [C.7 Proton Acc.] - C.8 Cargo Crate<spop>", 5, 3);
case 13: case 13:
commandToClient( %obj.client, 'BottomPrint', "<spush><font:Tempus Sans ITC:20>[{Manipulator Tool}] - Phantom139 \n Mine: [Pad Swap] - FF Swap - Barrel Swap - Cloak/Fade - Delete Objects \n <font:Tempus Sans ITC:18> Grenade: C.7 Proton Acc. - [C.8 Cargo Crate] - C.9 Mag Cooler<spop>", 5, 3); commandToClient( %obj.client, 'BottomPrint', "<spush>[{Manipulator}] - Phantom139 \n Mine: [Pad Swap] - FF Swap - Barrel Swap - Cloak/Fade - Delete Objects \n Grenade: C.7 Proton Acc. - [C.8 Cargo Crate] - C.9 Mag Cooler<spop>", 5, 3);
case 14: case 14:
commandToClient( %obj.client, 'BottomPrint', "<spush><font:Tempus Sans ITC:20>[{Manipulator Tool}] - Phantom139 \n Mine: [Pad Swap] - FF Swap - Barrel Swap - Cloak/Fade - Delete Objects \n <font:Tempus Sans ITC:18> Grenade: C.8 Cargo Crate - [C.9 Mag Cooler] - C.10 Recycle Unit<spop>", 5, 3); commandToClient( %obj.client, 'BottomPrint', "<spush>[{Manipulator}] - Phantom139 \n Mine: [Pad Swap] - FF Swap - Barrel Swap - Cloak/Fade - Delete Objects \n Grenade: C.8 Cargo Crate - [C.9 Mag Cooler] - C.10 Recycle Unit<spop>", 5, 3);
case 15: case 15:
commandToClient( %obj.client, 'BottomPrint', "<spush><font:Tempus Sans ITC:20>[{Manipulator Tool}] - Phantom139 \n Mine: [Pad Swap] - FF Swap - Barrel Swap - Cloak/Fade - Delete Objects \n <font:Tempus Sans ITC:18> Grenade: C.9 Mag Cooler - [C.10 Recycle Unit] - C.11 Fuel Canister<spop>", 5, 3); commandToClient( %obj.client, 'BottomPrint', "<spush>[{Manipulator}] - Phantom139 \n Mine: [Pad Swap] - FF Swap - Barrel Swap - Cloak/Fade - Delete Objects \n Grenade: C.9 Mag Cooler - [C.10 Recycle Unit] - C.11 Fuel Canister<spop>", 5, 3);
case 16: case 16:
commandToClient( %obj.client, 'BottomPrint', "<spush><font:Tempus Sans ITC:20>[{Manipulator Tool}] - Phantom139 \n Mine: [Pad Swap] - FF Swap - Barrel Swap - Cloak/Fade - Delete Objects \n <font:Tempus Sans ITC:18> Grenade: C.10 Recycle Unit - [C.11 Fuel Canister] - C.12 Wooden Box<spop>", 5, 3); commandToClient( %obj.client, 'BottomPrint', "<spush>[{Manipulator}] - Phantom139 \n Mine: [Pad Swap] - FF Swap - Barrel Swap - Cloak/Fade - Delete Objects \n Grenade: C.10 Recycle Unit - [C.11 Fuel Canister] - C.12 Wooden Box<spop>", 5, 3);
case 17: case 17:
commandToClient( %obj.client, 'BottomPrint', "<spush><font:Tempus Sans ITC:20>[{Manipulator Tool}] - Phantom139 \n Mine: [Pad Swap] - FF Swap - Barrel Swap - Cloak/Fade - Delete Objects \n <font:Tempus Sans ITC:18> Grenade: C.11 Fuel Canister - [C.12 Wooden Box] - C.13 Plasma Router<spop>", 5, 3); commandToClient( %obj.client, 'BottomPrint', "<spush>[{Manipulator}] - Phantom139 \n Mine: [Pad Swap] - FF Swap - Barrel Swap - Cloak/Fade - Delete Objects \n Grenade: C.11 Fuel Canister - [C.12 Wooden Box] - C.13 Plasma Router<spop>", 5, 3);
case 18: case 18:
commandToClient( %obj.client, 'BottomPrint', "<spush><font:Tempus Sans ITC:20>[{Manipulator Tool}] - Phantom139 \n Mine: [Pad Swap] - FF Swap - Barrel Swap - Cloak/Fade - Delete Objects \n <font:Tempus Sans ITC:18> Grenade: C.12 Wooden Box - [C.13 Plasma Router] - Statue Base<spop>", 5, 3); commandToClient( %obj.client, 'BottomPrint', "<spush>[{Manipulator}] - Phantom139 \n Mine: [Pad Swap] - FF Swap - Barrel Swap - Cloak/Fade - Delete Objects \n Grenade: C.12 Wooden Box - [C.13 Plasma Router] - Statue Base<spop>", 5, 3);
case 19: case 19:
commandToClient( %obj.client, 'BottomPrint', "<spush><font:Tempus Sans ITC:20>[{Manipulator Tool}] - Phantom139 \n Mine: [Pad Swap] - FF Swap - Barrel Swap - Cloak/Fade - Delete Objects \n <font:Tempus Sans ITC:18> Grenade: C.13 Plasma Router - [Statue Base] - Blue Pad<spop>", 5, 3); commandToClient( %obj.client, 'BottomPrint', "<spush>[{Manipulator}] - Phantom139 \n Mine: [Pad Swap] - FF Swap - Barrel Swap - Cloak/Fade - Delete Objects \n Grenade: C.13 Plasma Router - [Statue Base] - Blue Pad<spop>", 5, 3);
case 20: case 20:
commandToClient( %obj.client, 'BottomPrint', "<spush><font:Tempus Sans ITC:20>[{Manipulator Tool}] - Phantom139 \n Mine: [Pad Swap] - FF Swap - Barrel Swap - Cloak/Fade - Delete Objects \n <font:Tempus Sans ITC:18> Grenade: Statue Base - [Blue Pad] - LSB<spop>", 5, 3); commandToClient( %obj.client, 'BottomPrint', "<spush>[{Manipulator}] - Phantom139 \n Mine: [Pad Swap] - FF Swap - Barrel Swap - Cloak/Fade - Delete Objects \n Grenade: Statue Base - [Blue Pad] - LSB<spop>", 5, 3);
} }
case 1: case 1:
%primary = "Force-Field Swapping"; %primary = "Force-Field Swapping";
switch(%obj.EditSMode) { switch(%obj.EditSMode) {
case 0: case 0:
commandToClient( %obj.client, 'BottomPrint', "<spush><font:Tempus Sans ITC:20>[{Manipulator Tool}] - Phantom139 \n Mine: Pad Swap - [FF Swap] - Barrel Swap - Cloak/Fade - Delete Objects \n <font:Tempus Sans ITC:18> Grenade: All Pass Yellow - [Solid White] - Solid Red<spop>", 5, 3); commandToClient( %obj.client, 'BottomPrint', "<spush>[{Manipulator}] - Phantom139 \n Mine: Pad Swap - [FF Swap] - Barrel Swap - Cloak/Fade - Delete Objects \n Grenade: All Pass Yellow - [Solid White] - Solid Red<spop>", 5, 3);
case 1: case 1:
commandToClient( %obj.client, 'BottomPrint', "<spush><font:Tempus Sans ITC:20>[{Manipulator Tool}] - Phantom139 \n Mine: Pad Swap - [FF Swap] - Barrel Swap - Cloak/Fade - Delete Objects \n <font:Tempus Sans ITC:18> Grenade: Solid White - [Solid Red] - Solid Green<spop>", 5, 3); commandToClient( %obj.client, 'BottomPrint', "<spush>[{Manipulator}] - Phantom139 \n Mine: Pad Swap - [FF Swap] - Barrel Swap - Cloak/Fade - Delete Objects \n Grenade: Solid White - [Solid Red] - Solid Green<spop>", 5, 3);
case 2: case 2:
commandToClient( %obj.client, 'BottomPrint', "<spush><font:Tempus Sans ITC:20>[{Manipulator Tool}] - Phantom139 \n Mine: Pad Swap - [FF Swap] - Barrel Swap - Cloak/Fade - Delete Objects \n <font:Tempus Sans ITC:18> Grenade: Solid Red - [Solid Green] - Solid Blue<spop>", 5, 3); commandToClient( %obj.client, 'BottomPrint', "<spush>[{Manipulator}] - Phantom139 \n Mine: Pad Swap - [FF Swap] - Barrel Swap - Cloak/Fade - Delete Objects \n Grenade: Solid Red - [Solid Green] - Solid Blue<spop>", 5, 3);
case 3: case 3:
commandToClient( %obj.client, 'BottomPrint', "<spush><font:Tempus Sans ITC:20>[{Manipulator Tool}] - Phantom139 \n Mine: Pad Swap - [FF Swap] - Barrel Swap - Cloak/Fade - Delete Objects \n <font:Tempus Sans ITC:18> Grenade: Solid Green - [Solid Blue] - Solid Cyan<spop>", 5, 3); commandToClient( %obj.client, 'BottomPrint', "<spush>[{Manipulator}] - Phantom139 \n Mine: Pad Swap - [FF Swap] - Barrel Swap - Cloak/Fade - Delete Objects \n Grenade: Solid Green - [Solid Blue] - Solid Cyan<spop>", 5, 3);
case 4: case 4:
commandToClient( %obj.client, 'BottomPrint', "<spush><font:Tempus Sans ITC:20>[{Manipulator Tool}] - Phantom139 \n Mine: Pad Swap - [FF Swap] - Barrel Swap - Cloak/Fade - Delete Objects \n <font:Tempus Sans ITC:18> Grenade: Solid Blue - [Solid Cyan] - Solid Magenta<spop>", 5, 3); commandToClient( %obj.client, 'BottomPrint', "<spush>[{Manipulator}] - Phantom139 \n Mine: Pad Swap - [FF Swap] - Barrel Swap - Cloak/Fade - Delete Objects \n Grenade: Solid Blue - [Solid Cyan] - Solid Magenta<spop>", 5, 3);
case 5: case 5:
commandToClient( %obj.client, 'BottomPrint', "<spush><font:Tempus Sans ITC:20>[{Manipulator Tool}] - Phantom139 \n Mine: Pad Swap - [FF Swap] - Barrel Swap - Cloak/Fade - Delete Objects \n <font:Tempus Sans ITC:18> Grenade: Solid Cyan - [Solid Magenta] - Solid Yellow<spop>", 5, 3); commandToClient( %obj.client, 'BottomPrint', "<spush>[{Manipulator}] - Phantom139 \n Mine: Pad Swap - [FF Swap] - Barrel Swap - Cloak/Fade - Delete Objects \n Grenade: Solid Cyan - [Solid Magenta] - Solid Yellow<spop>", 5, 3);
case 6: case 6:
commandToClient( %obj.client, 'BottomPrint', "<spush><font:Tempus Sans ITC:20>[{Manipulator Tool}] - Phantom139 \n Mine: Pad Swap - [FF Swap] - Barrel Swap - Cloak/Fade - Delete Objects \n <font:Tempus Sans ITC:18> Grenade: Solid Magenta - [Solid Yellow] - Team Pass White<spop>", 5, 3); commandToClient( %obj.client, 'BottomPrint', "<spush>[{Manipulator}] - Phantom139 \n Mine: Pad Swap - [FF Swap] - Barrel Swap - Cloak/Fade - Delete Objects \n Grenade: Solid Magenta - [Solid Yellow] - Team Pass White<spop>", 5, 3);
case 7: case 7:
commandToClient( %obj.client, 'BottomPrint', "<spush><font:Tempus Sans ITC:20>[{Manipulator Tool}] - Phantom139 \n Mine: Pad Swap - [FF Swap] - Barrel Swap - Cloak/Fade - Delete Objects \n <font:Tempus Sans ITC:18> Grenade: Solid Yellow - [Team Pass White] - Team Pass Red<spop>", 5, 3); commandToClient( %obj.client, 'BottomPrint', "<spush>[{Manipulator}] - Phantom139 \n Mine: Pad Swap - [FF Swap] - Barrel Swap - Cloak/Fade - Delete Objects \n Grenade: Solid Yellow - [Team Pass White] - Team Pass Red<spop>", 5, 3);
case 8: case 8:
commandToClient( %obj.client, 'BottomPrint', "<spush><font:Tempus Sans ITC:20>[{Manipulator Tool}] - Phantom139 \n Mine: Pad Swap - [FF Swap] - Barrel Swap - Cloak/Fade - Delete Objects \n <font:Tempus Sans ITC:18> Grenade: Team Pass White - [Team Pass Red] - Team Pass Green<spop>", 5, 3); commandToClient( %obj.client, 'BottomPrint', "<spush>[{Manipulator}] - Phantom139 \n Mine: Pad Swap - [FF Swap] - Barrel Swap - Cloak/Fade - Delete Objects \n Grenade: Team Pass White - [Team Pass Red] - Team Pass Green<spop>", 5, 3);
case 9: case 9:
commandToClient( %obj.client, 'BottomPrint', "<spush><font:Tempus Sans ITC:20>[{Manipulator Tool}] - Phantom139 \n Mine: Pad Swap - [FF Swap] - Barrel Swap - Cloak/Fade - Delete Objects \n <font:Tempus Sans ITC:18> Grenade: Team Pass Red - [Team Pass Green] - Team Pass Blue<spop>", 5, 3); commandToClient( %obj.client, 'BottomPrint', "<spush>[{Manipulator}] - Phantom139 \n Mine: Pad Swap - [FF Swap] - Barrel Swap - Cloak/Fade - Delete Objects \n Grenade: Team Pass Red - [Team Pass Green] - Team Pass Blue<spop>", 5, 3);
case 10: case 10:
commandToClient( %obj.client, 'BottomPrint', "<spush><font:Tempus Sans ITC:20>[{Manipulator Tool}] - Phantom139 \n Mine: Pad Swap - [FF Swap] - Barrel Swap - Cloak/Fade - Delete Objects \n <font:Tempus Sans ITC:18> Grenade: Team Pass Green - [Team Pass Blue] - Team Pass Cyan<spop>", 5, 3); commandToClient( %obj.client, 'BottomPrint', "<spush>[{Manipulator}] - Phantom139 \n Mine: Pad Swap - [FF Swap] - Barrel Swap - Cloak/Fade - Delete Objects \n Grenade: Team Pass Green - [Team Pass Blue] - Team Pass Cyan<spop>", 5, 3);
case 11: case 11:
commandToClient( %obj.client, 'BottomPrint', "<spush><font:Tempus Sans ITC:20>[{Manipulator Tool}] - Phantom139 \n Mine: Pad Swap - [FF Swap] - Barrel Swap - Cloak/Fade - Delete Objects \n <font:Tempus Sans ITC:18> Grenade: Team Pass Blue - [Team Pass Cyan] - Team Pass Magenta<spop>", 5, 3); commandToClient( %obj.client, 'BottomPrint', "<spush>[{Manipulator}] - Phantom139 \n Mine: Pad Swap - [FF Swap] - Barrel Swap - Cloak/Fade - Delete Objects \n Grenade: Team Pass Blue - [Team Pass Cyan] - Team Pass Magenta<spop>", 5, 3);
case 12: case 12:
commandToClient( %obj.client, 'BottomPrint', "<spush><font:Tempus Sans ITC:20>[{Manipulator Tool}] - Phantom139 \n Mine: Pad Swap - [FF Swap] - Barrel Swap - Cloak/Fade - Delete Objects \n <font:Tempus Sans ITC:18> Grenade: Team Pass Cyan - [Team Pass Magenta] - Team Pass Yellow<spop>", 5, 3); commandToClient( %obj.client, 'BottomPrint', "<spush>[{Manipulator}] - Phantom139 \n Mine: Pad Swap - [FF Swap] - Barrel Swap - Cloak/Fade - Delete Objects \n Grenade: Team Pass Cyan - [Team Pass Magenta] - Team Pass Yellow<spop>", 5, 3);
case 13: case 13:
commandToClient( %obj.client, 'BottomPrint', "<spush><font:Tempus Sans ITC:20>[{Manipulator Tool}] - Phantom139 \n Mine: Pad Swap - [FF Swap] - Barrel Swap - Cloak/Fade - Delete Objects \n <font:Tempus Sans ITC:18> Grenade: Team Pass Magenta - [Team Pass Yellow] - All Pass White<spop>", 5, 3); commandToClient( %obj.client, 'BottomPrint', "<spush>[{Manipulator}] - Phantom139 \n Mine: Pad Swap - [FF Swap] - Barrel Swap - Cloak/Fade - Delete Objects \n Grenade: Team Pass Magenta - [Team Pass Yellow] - All Pass White<spop>", 5, 3);
case 14: case 14:
commandToClient( %obj.client, 'BottomPrint', "<spush><font:Tempus Sans ITC:20>[{Manipulator Tool}] - Phantom139 \n Mine: Pad Swap - [FF Swap] - Barrel Swap - Cloak/Fade - Delete Objects \n <font:Tempus Sans ITC:18> Grenade: Team Pass Yellow - [All Pass White] - All Pass Red<spop>", 5, 3); commandToClient( %obj.client, 'BottomPrint', "<spush>[{Manipulator}] - Phantom139 \n Mine: Pad Swap - [FF Swap] - Barrel Swap - Cloak/Fade - Delete Objects \n Grenade: Team Pass Yellow - [All Pass White] - All Pass Red<spop>", 5, 3);
case 15: case 15:
commandToClient( %obj.client, 'BottomPrint', "<spush><font:Tempus Sans ITC:20>[{Manipulator Tool}] - Phantom139 \n Mine: Pad Swap - [FF Swap] - Barrel Swap - Cloak/Fade - Delete Objects \n <font:Tempus Sans ITC:18> Grenade: All Pass White - [All Pass Red] - All Pass Green<spop>", 5, 3); commandToClient( %obj.client, 'BottomPrint', "<spush>[{Manipulator}] - Phantom139 \n Mine: Pad Swap - [FF Swap] - Barrel Swap - Cloak/Fade - Delete Objects \n Grenade: All Pass White - [All Pass Red] - All Pass Green<spop>", 5, 3);
case 16: case 16:
commandToClient( %obj.client, 'BottomPrint', "<spush><font:Tempus Sans ITC:20>[{Manipulator Tool}] - Phantom139 \n Mine: Pad Swap - [FF Swap] - Barrel Swap - Cloak/Fade - Delete Objects \n <font:Tempus Sans ITC:18> Grenade: All Pass Red - [All Pass Green] - All Pass Blue<spop>", 5, 3); commandToClient( %obj.client, 'BottomPrint', "<spush>[{Manipulator}] - Phantom139 \n Mine: Pad Swap - [FF Swap] - Barrel Swap - Cloak/Fade - Delete Objects \n Grenade: All Pass Red - [All Pass Green] - All Pass Blue<spop>", 5, 3);
case 17: case 17:
commandToClient( %obj.client, 'BottomPrint', "<spush><font:Tempus Sans ITC:20>[{Manipulator Tool}] - Phantom139 \n Mine: Pad Swap - [FF Swap] - Barrel Swap - Cloak/Fade - Delete Objects \n <font:Tempus Sans ITC:18> Grenade: All Pass Green - [All Pass Blue] - All Pass Cyan<spop>", 5, 3); commandToClient( %obj.client, 'BottomPrint', "<spush>[{Manipulator}] - Phantom139 \n Mine: Pad Swap - [FF Swap] - Barrel Swap - Cloak/Fade - Delete Objects \n Grenade: All Pass Green - [All Pass Blue] - All Pass Cyan<spop>", 5, 3);
case 18: case 18:
commandToClient( %obj.client, 'BottomPrint', "<spush><font:Tempus Sans ITC:20>[{Manipulator Tool}] - Phantom139 \n Mine: Pad Swap - [FF Swap] - Barrel Swap - Cloak/Fade - Delete Objects \n <font:Tempus Sans ITC:18> Grenade: All Pass Blue - [All Pass Cyan] - All Pass Magenta<spop>", 5, 3); commandToClient( %obj.client, 'BottomPrint', "<spush>[{Manipulator}] - Phantom139 \n Mine: Pad Swap - [FF Swap] - Barrel Swap - Cloak/Fade - Delete Objects \n Grenade: All Pass Blue - [All Pass Cyan] - All Pass Magenta<spop>", 5, 3);
case 19: case 19:
commandToClient( %obj.client, 'BottomPrint', "<spush><font:Tempus Sans ITC:20>[{Manipulator Tool}] - Phantom139 \n Mine: Pad Swap - [FF Swap] - Barrel Swap - Cloak/Fade - Delete Objects \n <font:Tempus Sans ITC:18> Grenade: All Pass Cyan - [All Pass Magenta] - All Pass Yellow<spop>", 5, 3); commandToClient( %obj.client, 'BottomPrint', "<spush>[{Manipulator}] - Phantom139 \n Mine: Pad Swap - [FF Swap] - Barrel Swap - Cloak/Fade - Delete Objects \n Grenade: All Pass Cyan - [All Pass Magenta] - All Pass Yellow<spop>", 5, 3);
case 20: case 20:
commandToClient( %obj.client, 'BottomPrint', "<spush><font:Tempus Sans ITC:20>[{Manipulator Tool}] - Phantom139 \n Mine: Pad Swap - [FF Swap] - Barrel Swap - Cloak/Fade - Delete Objects \n <font:Tempus Sans ITC:18> Grenade: All Pass Magenta - [All Pass Yellow] - Solid White<spop>", 5, 3); commandToClient( %obj.client, 'BottomPrint', "<spush>[{Manipulator}] - Phantom139 \n Mine: Pad Swap - [FF Swap] - Barrel Swap - Cloak/Fade - Delete Objects \n Grenade: All Pass Magenta - [All Pass Yellow] - Solid White<spop>", 5, 3);
} }
case 2: case 2:
%primary = "Turret Barrel Swapping"; %primary = "Turret Barrel Swapping";
switch(%obj.EditSMode) { switch(%obj.EditSMode) {
case 0: case 0:
commandToClient( %obj.client, 'BottomPrint', "<spush><font:Tempus Sans ITC:20>[{Manipulator Tool}] - Phantom139 \n Mine: Pad Swap - FF Swap - [Barrel Swap] - Cloak/Fade - Delete Objects \n <font:Tempus Sans ITC:18> Grenade: Mortar - [Anti Air] - Missile<spop>", 5, 3); commandToClient( %obj.client, 'BottomPrint', "<spush>[{Manipulator}] - Phantom139 \n Mine: Pad Swap - FF Swap - [Barrel Swap] - Cloak/Fade - Delete Objects \n Grenade: Mortar - [Anti Air] - Missile<spop>", 5, 3);
case 1: case 1:
commandToClient( %obj.client, 'BottomPrint', "<spush><font:Tempus Sans ITC:20>[{Manipulator Tool}] - Phantom139 \n Mine: Pad Swap - FF Swap - [Barrel Swap] - Cloak/Fade - Delete Objects \n <font:Tempus Sans ITC:18> Grenade: Anti Air - [Missile] - Plasma<spop>", 5, 3); commandToClient( %obj.client, 'BottomPrint', "<spush>[{Manipulator}] - Phantom139 \n Mine: Pad Swap - FF Swap - [Barrel Swap] - Cloak/Fade - Delete Objects \n Grenade: Anti Air - [Missile] - Plasma<spop>", 5, 3);
case 2: case 2:
commandToClient( %obj.client, 'BottomPrint', "<spush><font:Tempus Sans ITC:20>[{Manipulator Tool}] - Phantom139 \n Mine: Pad Swap - FF Swap - [Barrel Swap] - Cloak/Fade - Delete Objects \n <font:Tempus Sans ITC:18> Grenade: Missile - [Plasma] - ELF<spop>", 5, 3); commandToClient( %obj.client, 'BottomPrint', "<spush>[{Manipulator}] - Phantom139 \n Mine: Pad Swap - FF Swap - [Barrel Swap] - Cloak/Fade - Delete Objects \n Grenade: Missile - [Plasma] - ELF<spop>", 5, 3);
case 3: case 3:
commandToClient( %obj.client, 'BottomPrint', "<spush><font:Tempus Sans ITC:20>[{Manipulator Tool}] - Phantom139 \n Mine: Pad Swap - FF Swap - [Barrel Swap] - Cloak/Fade - Delete Objects \n <font:Tempus Sans ITC:18> Grenade: Plasma - [ELF] - Mortar<spop>", 5, 3); commandToClient( %obj.client, 'BottomPrint', "<spush>[{Manipulator}] - Phantom139 \n Mine: Pad Swap - FF Swap - [Barrel Swap] - Cloak/Fade - Delete Objects \n Grenade: Plasma - [ELF] - Mortar<spop>", 5, 3);
case 4: case 4:
commandToClient( %obj.client, 'BottomPrint', "<spush><font:Tempus Sans ITC:20>[{Manipulator Tool}] - Phantom139 \n Mine: Pad Swap - FF Swap - [Barrel Swap] - Cloak/Fade - Delete Objects \n <font:Tempus Sans ITC:18> Grenade: ELF - [Mortar] - Anti Air<spop>", 5, 3); commandToClient( %obj.client, 'BottomPrint', "<spush>[{Manipulator}] - Phantom139 \n Mine: Pad Swap - FF Swap - [Barrel Swap] - Cloak/Fade - Delete Objects \n Grenade: ELF - [Mortar] - Anti Air<spop>", 5, 3);
} }
case 3: case 3:
switch(%obj.EditSMode) { switch(%obj.EditSMode) {
case 0: case 0:
commandToClient( %obj.client, 'BottomPrint', "<spush><font:Tempus Sans ITC:20>[{Manipulator Tool}] - Phantom139 \n Mine: Pad Swap - FF Swap - Barrel Swap - [Cloak/Fade] - Delete Objects \n <font:Tempus Sans ITC:18> Grenade: [Cloak] - UnCloak - Fade - UnFade <spop>", 5, 3); commandToClient( %obj.client, 'BottomPrint', "<spush>[{Manipulator}] - Phantom139 \n Mine: Pad Swap - FF Swap - Barrel Swap - [Cloak/Fade] - Delete Objects \n Grenade: [Cloak] - UnCloak - Fade - UnFade <spop>", 5, 3);
case 1: case 1:
commandToClient( %obj.client, 'BottomPrint', "<spush><font:Tempus Sans ITC:20>[{Manipulator Tool}] - Phantom139 \n Mine: Pad Swap - FF Swap - Barrel Swap - [Cloak/Fade] - Delete Objects \n <font:Tempus Sans ITC:18> Grenade: Cloak - [UnCloak] - Fade - UnFade <spop>", 5, 3); commandToClient( %obj.client, 'BottomPrint', "<spush>[{Manipulator}] - Phantom139 \n Mine: Pad Swap - FF Swap - Barrel Swap - [Cloak/Fade] - Delete Objects \n Grenade: Cloak - [UnCloak] - Fade - UnFade <spop>", 5, 3);
case 2: case 2:
commandToClient( %obj.client, 'BottomPrint', "<spush><font:Tempus Sans ITC:20>[{Manipulator Tool}] - Phantom139 \n Mine: Pad Swap - FF Swap - Barrel Swap - [Cloak/Fade] - Delete Objects \n <font:Tempus Sans ITC:18> Grenade: Cloak - UnCloak - [Fade] - UnFade <spop>", 5, 3); commandToClient( %obj.client, 'BottomPrint', "<spush>[{Manipulator}] - Phantom139 \n Mine: Pad Swap - FF Swap - Barrel Swap - [Cloak/Fade] - Delete Objects \n Grenade: Cloak - UnCloak - [Fade] - UnFade <spop>", 5, 3);
case 3: case 3:
commandToClient( %obj.client, 'BottomPrint', "<spush><font:Tempus Sans ITC:20>[{Manipulator Tool}] - Phantom139 \n Mine: Pad Swap - FF Swap - Barrel Swap - [Cloak/Fade] - Delete Objects \n <font:Tempus Sans ITC:18> Grenade: Cloak - UnCloak - Fade - [UnFade] <spop>", 5, 3); commandToClient( %obj.client, 'BottomPrint', "<spush>[{Manipulator}] - Phantom139 \n Mine: Pad Swap - FF Swap - Barrel Swap - [Cloak/Fade] - Delete Objects \n Grenade: Cloak - UnCloak - Fade - [UnFade] <spop>", 5, 3);
} }
case 4: case 4:
switch(%obj.EditSMode) { switch(%obj.EditSMode) {
case 0: case 0:
commandToClient( %obj.client, 'BottomPrint', "<spush><font:Tempus Sans ITC:20>[{Manipulator Tool}] - Phantom139 \n Mine: Pad Swap - FF Swap - Barrel Swap - Cloak/Fade - [Delete Objects] \n <font:Tempus Sans ITC:18> Grenade: [Single] - Cascade <spop>", 5, 3); commandToClient( %obj.client, 'BottomPrint', "<spush>[{Manipulator}] - Phantom139 \n Mine: Pad Swap - FF Swap - Barrel Swap - Cloak/Fade - [Delete Objects] \n Grenade: [Single] - Cascade <spop>", 5, 3);
case 1: case 1:
commandToClient( %obj.client, 'BottomPrint', "<spush><font:Tempus Sans ITC:20>[{Manipulator Tool}] - Phantom139 \n Mine: Pad Swap - FF Swap - Barrel Swap - Cloak/Fade - [Delete Objects] \n <font:Tempus Sans ITC:18> Grenade: Single - [Cascade] <spop>", 5, 3); commandToClient( %obj.client, 'BottomPrint', "<spush>[{Manipulator}] - Phantom139 \n Mine: Pad Swap - FF Swap - Barrel Swap - Cloak/Fade - [Delete Objects] \n Grenade: Single - [Cascade] <spop>", 5, 3);
} }
} }
} }
function ChangeEditGunMode(%this, %data, %PriSec) { //This Is Easier To use function ChangeEditGunMode(%this, %data, %PriSec) { //This Is Easier To use
if(%PriSec == 1) { //Primary if(%PriSec == 1) { //Primary
if (!(getSimTime() > (%this.mineModeTime + 100))) if (!(getSimTime() > (%this.mineModeTime + 100)))
return; return;
%this.mineModeTime = getSimTime(); %this.mineModeTime = getSimTime();
%this.EditPMode++; %this.EditPMode++;
%this.EditSMode = 0; //Reset Secondary Mode TO Prevent Errors %this.EditSMode = 0; //Reset Secondary Mode TO Prevent Errors
if (%this.EditPMode > 4) { if (%this.EditPMode > 4) {
%this.EditPMode = 0; %this.EditPMode = 0;
}
DispEditorToolInfo(%this);
return;
}
else { //Secondary
if (!(getSimTime() > (%this.grenadeModeTime + 100)))
return;
%this.grenadeModeTime = getSimTime();
%this.EditSMode++;
//Check Primaries
if(%this.EditPMode == 0 && %this.EditSMode > 20) {
%this.EditSMode = 0;
}
else if(%this.EditPMode == 1 && %this.EditSMode > 20) {
%this.EditSMode = 0;
}
else if(%this.EditPMode == 2 && %this.EditSMode > 4) {
%this.EditSMode = 0;
}
else if(%this.EditPMode == 3 && %this.EditSMode > 3) {
%this.EditSMode = 0;
}
else if(%this.EditPMode == 4 && %this.EditSMode > 1) {
%this.EditSMode = 0;
}
DispEditorToolInfo(%this);
return;
}
}
function EditorBolt::onCollision(%data,%projectile,%targetObject,%modifier,%position,%normal) {
switch$(%projectile.sourceObject.EditPMode) {
case 0:
EToolswaping(%targetObject,%projectile.sourceObject,0,%projectile.sourceObject.EditSMode);
case 1:
EToolswaping(%targetObject,%projectile.sourceObject,1,%projectile.sourceObject.EditSMode);
case 2:
EToolTurrets(%targetObject,%projectile.sourceObject,%projectile.sourceObject.EditSMode);
case 3:
EToolCloakandFade(%targetObject,%projectile.sourceObject,%projectile.sourceObject.EditSMode);
case 4:
EToolDeleting(%targetObject,%projectile.sourceObject,%projectile.sourceObject.EditSMode);
} }
DispEditorToolInfo(%this);
return;
}
else { //Secondary
if (!(getSimTime() > (%this.grenadeModeTime + 100)))
return;
%this.grenadeModeTime = getSimTime();
%this.EditSMode++;
//Check Primaries
if(%this.EditPMode == 0 && %this.EditSMode > 20) {
%this.EditSMode = 0;
}
else if(%this.EditPMode == 1 && %this.EditSMode > 20) {
%this.EditSMode = 0;
}
else if(%this.EditPMode == 2 && %this.EditSMode > 4) {
%this.EditSMode = 0;
}
else if(%this.EditPMode == 3 && %this.EditSMode > 3) {
%this.EditSMode = 0;
}
else if(%this.EditPMode == 4 && %this.EditSMode > 1) {
%this.EditSMode = 0;
}
DispEditorToolInfo(%this);
return;
}
} }
//Editor Tool Functioning //Editor Tool Functioning
@ -353,208 +341,200 @@ function EditorBolt::onCollision(%data,%projectile,%targetObject,%modifier,%posi
function EToolDeleting(%tobj,%plyr,%Mode) { function EToolDeleting(%tobj,%plyr,%Mode) {
%cl=%plyr.client; %cl=%plyr.client;
if ( %tobj.ownerGUID != %cl.guid){ if ( %tobj.ownerGUID != %cl.guid){
if (!%cl.isadmin && !%cl.issuperadmin){ if (!%cl.isadmin && !%cl.issuperadmin){
if (%tobj.ownerGUID !$=""){ if (%tobj.ownerGUID !$=""){
messageclient(%cl, 'MsgClient', "\c2TextureTool: Error, You Do Not Own This Piece."); messageclient(%cl, 'MsgClient', "\c2TextureTool: Error, You Do Not Own This Piece.");
return; return;
} }
} }
} }
if (%tobj.squaresize !$="") { if (%tobj.squaresize !$="") {
messageclient(%cl, 'MsgClient', "\c2TextureTool: Error, Unknown Object Selected."); messageclient(%cl, 'MsgClient', "\c2TextureTool: Error, Unknown Object Selected.");
return; return;
} }
if (!Deployables.isMember(%tobj)) { if (!Deployables.isMember(%tobj)) {
messageclient(%cl, 'MsgClient', "\c2TextureTool: Error, Map Object Selected."); messageclient(%cl, 'MsgClient', "\c2TextureTool: Error, Map Object Selected.");
return; return;
} }
switch(%Mode) { switch(%Mode) {
case 0: case 0:
messageclient(%cl, 'MsgClient', "\c2TextureTool: Deleting Object."); messageclient(%cl, 'MsgClient', "\c2TextureTool: Deleting Object.");
%tobj.getDataBlock().disassemble(%plyr, %tobj); //this found in constructionTool.cs %tobj.getDataBlock().disassemble(%plyr, %tobj); //this found in constructionTool.cs
case 1: case 1:
messageclient(%cl, 'MsgClient', "\c2TextureTool: Cascade Deleting Object (All Conective Objects)."); messageclient(%cl, 'MsgClient', "\c2TextureTool: Cascade Deleting Object (All Conective Objects).");
cascade(%tobj,true); cascade(%tobj,true);
} }
} }
// //
function EToolCloakandFade(%tobj,%plyr,%Mode) { function EToolCloakandFade(%tobj,%plyr,%Mode) {
%cl=%plyr.client; %cl=%plyr.client;
if ( %tobj.ownerGUID != %cl.guid){ if (%tobj.ownerGUID != %cl.guid){
if (!%cl.isadmin && !%cl.issuperadmin){ if (!%cl.isadmin && !%cl.issuperadmin){
if (%tobj.ownerGUID !$=""){ if (%tobj.ownerGUID !$=""){
messageclient(%cl, 'MsgClient', "\c2TextureTool: Error, You Do Not Own This Piece."); messageclient(%cl, 'MsgClient', "\c2TextureTool: Error, You Do Not Own This Piece.");
return; return;
} }
} }
} }
if (%tobj.squaresize !$="") { if (%tobj.squaresize !$="") {
messageclient(%cl, 'MsgClient', "\c2TextureTool: Error, Unknown Object Selected."); messageclient(%cl, 'MsgClient', "\c2TextureTool: Error, Unknown Object Selected.");
return; return;
} }
if (!Deployables.isMember(%tobj)) { if (!Deployables.isMember(%tobj)) {
messageclient(%cl, 'MsgClient', "\c2TextureTool: Error, Map Object Selected."); messageclient(%cl, 'MsgClient', "\c2TextureTool: Error, Map Object Selected.");
return; return;
} }
switch(%Mode) { switch(%Mode) {
case 0: case 0:
messageclient(%cl, 'MsgClient', "\c2TextureTool: Object Cloaked"); messageclient(%cl, 'MsgClient', "\c2TextureTool: Object Cloaked");
%tobj.setCloaked(true); %tobj.setCloaked(true);
%tobj.cloaked = 1; %tobj.cloaked = 1;
case 1: case 1:
messageclient(%cl, 'MsgClient', "\c2TextureTool: Object Un-Cloaked"); messageclient(%cl, 'MsgClient', "\c2TextureTool: Object Un-Cloaked");
%tobj.setCloaked(false); %tobj.setCloaked(false);
%tobj.cloaked = 0; %tobj.cloaked = 0;
case 2: case 2:
messageclient(%cl, 'MsgClient', "\c2TextureTool: Object Faded"); messageclient(%cl, 'MsgClient', "\c2TextureTool: Object Faded");
%tobj.startfade(1,0,1); %tobj.startfade(1,0,1);
case 3: case 3:
messageclient(%cl, 'MsgClient', "\c2TextureTool: Object Un-Faded"); messageclient(%cl, 'MsgClient', "\c2TextureTool: Object Un-Faded");
%tobj.startfade(1,0,0); %tobj.startfade(1,0,0);
} }
} }
// //
function EToolTurrets(%tobj,%plyr,%Mode) { function EToolTurrets(%tobj,%plyr,%Mode) {
%cl=%plyr.client; %cl=%plyr.client;
if ( %tobj.ownerGUID != %cl.guid){ if ( %tobj.ownerGUID != %cl.guid){
if (!%cl.isadmin && !%cl.issuperadmin){ if (!%cl.isadmin && !%cl.issuperadmin){
if (%tobj.ownerGUID !$=""){ if (%tobj.ownerGUID !$=""){
messageclient(%cl, 'MsgClient', "\c2TextureTool: Error, You Do Not Own This Piece."); messageclient(%cl, 'MsgClient', "\c2TextureTool: Error, You Do Not Own This Piece.");
return; return;
} }
} }
} }
if (%tobj.squaresize !$="") { if (%tobj.squaresize !$="") {
messageclient(%cl, 'MsgClient', "\c2TextureTool: Error, Unknown Object Selected."); messageclient(%cl, 'MsgClient', "\c2TextureTool: Error, Unknown Object Selected.");
return; return;
} }
%classname= %tobj.getDataBlock().getName(); %classname= %tobj.getDataBlock().getName();
if(%classname $= "TurretBaseLarge" || %classname $= "TurretDeployedBase") { if(%classname $= "TurretBaseLarge" || %classname $= "TurretDeployedBase") {
switch$(%mode) { //Thanks for help on this Krash.. switch$(%mode) { //Thanks for help on this Krash..
case 0: case 0:
%tobj.mountImage("AABarrelLarge", 0); %tobj.mountImage("AABarrelLarge", 0);
messageclient(%cl, 'MsgClient', '\c5TextureTool: Swapping Barrel with AA Barrel.'); messageclient(%cl, 'MsgClient', '\c5TextureTool: Swapping Barrel with AA Barrel.');
case 1: case 1:
%tobj.mountImage("MissileBarrelLarge", 0); %tobj.mountImage("MissileBarrelLarge", 0);
messageclient(%cl, 'MsgClient', '\c5TextureTool: Swapping Barrel with Missile Barrel.'); messageclient(%cl, 'MsgClient', '\c5TextureTool: Swapping Barrel with Missile Barrel.');
case 2: case 2:
%tobj.mountImage("PlasmaBarrelLarge", 0); %tobj.mountImage("PlasmaBarrelLarge", 0);
messageclient(%cl, 'MsgClient', '\c5TextureTool: Swapping Barrel with Plasma Barrel.'); messageclient(%cl, 'MsgClient', '\c5TextureTool: Swapping Barrel with Plasma Barrel.');
case 3: case 3:
%tobj.mountImage("ELFBarrelLarge", 0); %tobj.mountImage("ELFBarrelLarge", 0);
messageclient(%cl, 'MsgClient', '\c5TextureTool: Swapping Barrel with ELF Barrel.'); messageclient(%cl, 'MsgClient', '\c5TextureTool: Swapping Barrel with ELF Barrel.');
case 4: case 4:
%tobj.mountImage("MortarBarrelLarge", 0); %tobj.mountImage("MortarBarrelLarge", 0);
messageclient(%cl, 'MsgClient', '\c5TextureTool: Swapping Barrel with Mortar Barrel.'); messageclient(%cl, 'MsgClient', '\c5TextureTool: Swapping Barrel with Mortar Barrel.');
} }
} }
else { else {
messageclient(%cl, 'MsgClient', "\c2TextureTool: Error, Object not a base turret."); messageclient(%cl, 'MsgClient', "\c2TextureTool: Error, Object not a base turret.");
return; return;
} }
} }
function EToolswaping(%tobj,%plyr,%PMode,%SMode){ function EToolswaping(%tobj,%plyr,%PMode,%SMode){
//Could be cleaned up a bit later, but it works. //Could be cleaned up a bit later, but it works.
%sender=%plyr.client; %sender = %plyr.client;
if ( %tobj.ownerGUID != %sender.guid){ if (%tobj.ownerGUID != %sender.guid){
if (!%sender.isadmin && !%sender.issuperadmin){ if (!%sender.isadmin && !%sender.issuperadmin){
if (%tobj.ownerGUID !$=""){ if (%tobj.ownerGUID !$= ""){
messageclient(%sender, 'MsgClient', '\c2You do not own this.'); messageclient(%sender, 'MsgClient', '\c2You do not own this.');
return; return;
} }
} }
} }
if (%tobj.squaresize !$="") if (%tobj.squaresize !$="")
return; return;
%classname= %tobj.getDataBlock().classname; %classname= %tobj.getDataBlock().classname;
%objscale = %tobj.scale; %objscale = %tobj.scale;
%grounded = %tobj.grounded; %grounded = %tobj.grounded;
%pwrfreq = %tobj.powerFreq; %pwrfreq = %tobj.powerFreq;
%Transform = %tobj.getTransform(); %Transform = %tobj.getTransform();
////////////// if (%pmode == 1) {
//forcefeild// %db = "DeployedForceField"@%SMode;
////////////// %deplObj = new ("ForceFieldBare")() {
if (%classname$="forcefield" && %pmode==1){
%db="DeployedForceField"@%SMode;
%deplObj = new ("ForceFieldBare")() {
dataBlock = %db; dataBlock = %db;
scale = %objscale; scale = %objscale;
}; };
%deplObj.setTransform(%Transform); %deplObj.setTransform(%Transform);
if (%tobj.noSlow == true){ if (%tobj.noSlow == true){
%deplObj.noSlow = true; %deplObj.noSlow = true;
%deplObj.pzone.delete(); %deplObj.pzone.delete();
%deplObj.pzone = ""; %deplObj.pzone = "";
} }
if (%tobj.pzone !$= "") if (%tobj.pzone !$= "")
%tobj.pzone.delete(); %tobj.pzone.delete();
%tobj.delete(); %tobj.delete();
// misc info // misc info
addDSurface(%item.surface,%deplObj); addDSurface(%item.surface,%deplObj);
// [[Settings]]: // [[Settings]]:
%deplObj.grounded = %grounded; %deplObj.grounded = %grounded;
%deplObj.needsFit = 1; %deplObj.needsFit = 1;
// [[Normal Stuff]]: // [[Normal Stuff]]:
// set team, owner, and handle // set team, owner, and handle
%deplObj.team = %plyr.client.team; %deplObj.team = %plyr.client.team;
%deplObj.setOwner(%plyr); %deplObj.setOwner(%plyr);
// set power frequency // set power frequency
%deplObj.powerFreq = %pwrfreq; %deplObj.powerFreq = %pwrfreq;
// set the sensor group if it needs one // set the sensor group if it needs one
if (%deplObj.getTarget() != -1) if (%deplObj.getTarget() != -1)
setTargetSensorGroup(%deplObj.getTarget(), %plyr.client.team); setTargetSensorGroup(%deplObj.getTarget(), %plyr.client.team);
// place the deployable in the MissionCleanup/Deployables group (AI reasons) // place the deployable in the MissionCleanup/Deployables group (AI reasons)
addToDeployGroup(%deplObj); addToDeployGroup(%deplObj);
//let the AI know as well... //let the AI know as well...
AIDeployObject(%plyr.client, %deplObj); AIDeployObject(%plyr.client, %deplObj);
// increment the team count for this deployed object // increment the team count for this deployed object
$TeamDeployedCount[%plyr.team, %item.item]++; $TeamDeployedCount[%plyr.team, %item.item]++;
// Power object // Power object
checkPowerObject(%deplObj); checkPowerObject(%deplObj);
return %deplObj; return %deplObj;
} }
///////////%objscale = %tobj.scale; else if (%pmode == 0 && (%classname $= "decoration" || %classname $= "crate"
//pads //%oldpos = %tobj.position; || %classname $= "floor" || %classname $= "spine" || %classname $= "mspine"
///////////%oldrot = %tobj.rotation; || %classname $= "wall" || %classname $= "wwall" || %classname $= "Wspine"
else if (%pmode==0 && ((%classname $= "decoration" && %tobj.getDataBlock().getname() $="DeployedDecoration6") || %classname $= "crate" || %classname $= "floor" || %classname $= "spine" || %classname $= "mspine" || %classname $= "wall" || %classname $= "wwall" || %classname $= "Wspine" || %classname $= "Sspine" || %classname $= "floor" || %classname $= "door")) || %classname $= "Sspine" || %classname $= "floor" || %classname $= "door")) {
{ %tobj.setCloaked(true);
%tobj.setCloaked(true); %tobj.schedule(290, "setCloaked", false);
%tobj.schedule(290, "setCloaked", false); if (%tobj.isdoor == 1 || %tobj.getdatablock().getname() $="DeployedTdoor"){
if (%tobj.isdoor == 1 || %tobj.getdatablock().getname() $="DeployedTdoor"){ if (%tobj.canmove == false) //if it cant move
if (%tobj.canmove == false) //if it cant move return;
return; if (%tobj.state !$="closed" && %tobj.state !$="")
if (%tobj.state !$="closed" && %tobj.state !$="") return;
return; }
} %db = getword($EditTool::PadModes[%SMode],0);
if (%tobj.isobjective > 0) if (%tobj.getdatablock().getname() $="DeployedFloor")
return; %datablock="DeployedwWall";
else if (%tobj.getdatablock().getname() $="DeployedMSpinering")
%db = getword($EditTool::PadModes[%SMode],0); %datablock="DeployedMSpine";
if (%tobj.getdatablock().getname() $="DeployedFloor") else if (%tobj.getdatablock().getname() $="DeployedTdoor") {
%datablock="DeployedwWall"; %datablock="DeployedMSpine";
else if (%tobj.getdatablock().getname() $="DeployedMSpinering") }
%datablock="DeployedMSpine";
else if (%tobj.getdatablock().getname() $="DeployedTdoor"){
%datablock="DeployedMSpine";
}
else
%datablock=%tobj.getdatablock().getname();
else
%datablock = %tobj.getdatablock().getname();
%team = %tobj.team; %team = %tobj.team;
%owner = %tobj.owner; %owner = %tobj.owner;
if (%tobj.ownerGUID>0) if (%tobj.ownerGUID>0)