Member
|
06-22-2018
, 02:05
Re: [L4D & L4D2] Super Tanks++ (v8.8, 06-21-2018)
|
#122
|
I have modified the super tank to increase health based on the number of players. But I'm going to get some more sophisticated, because it's harder to keep the super tank up to date for me. This could be implemented by the author of the plug-in, or I'll do it later
PHP Code:
public Action tTimerTankSpawn(Handle timer, any userid) { int client = GetClientOfUserId(userid); if (bIsBotInfected(client) && bIsTank(client)) { switch (g_iTankType[client]) { case 0: vSetName(client); case 1: vSetName(client, "Acidic Tank", true, true, true, 255, 0, 0, 255, "255 0 0"); case 2: vSetName(client, "Ammo Tank", true, true, true, 5, 20, 35, 255, "5 20 35"); case 3: vSetName(client, "Blind Tank", true, true, true, 30, 20, 0, 255, "30 20 0"); case 4: vSetName(client, "Bomber Tank", true, true, true, 15, 15, 15, 255, "15 15 15"); case 5: vSetName(client, "Boomer Tank", true, true, true, 0, 0, 65, 255, "0 0 65"); case 6: vSetName(client, "Charger Tank", true, true, true, 25, 255, 115, 255, "25 255 115"); case 7: vSetName(client, "Clone Tank", true, true, true, 140, 40, 255, 255, "140 40 255"); case 8: vSetName(client, "Common Tank", true, true, true, 190, 255, 250, 255, "190 255 250"); case 9: vSetName(client, "Drug Tank", true, true, true, 55, 205, 65, 255, "55 205 65"); case 10: vSetName(client, "Fire Tank", true, true, true, 255, 135, 0, 255, "255 135 0"); case 11: vSetName(client, "Flash Tank", true, true, true, 255, 255, 0, 150, "255 255 0", RENDER_TRANSTEXTURE); case 12: vSetName(client, "Flinger Tank", true, true, true, 25, 40, 130, 255, "25 40 130"); case 13: vSetName(client, "Ghost Tank", true, true, true, 150, 150, 150, 150, "150 150 150", RENDER_TRANSTEXTURE); case 14: vSetName(client, "Gravity Tank", true, true, true, 255, 0, 0, 255, "255 0 0"); case 15: vSetName(client, "Healer Tank", true, true, true, 255, 255, 255, 255, "255 255 255"); case 16: vSetName(client, "Hunter Tank", true, true, true, 200, 200, 200, 255, "200 200 200"); case 17: vSetName(client, "Hypnotizer Tank", true, true, true, 255, 250, 45, 255, "255 250 45"); case 18: vSetName(client, "Ice Tank", true, true, true, 170, 240, 255, 200, "170 240 255", RENDER_TRANSTEXTURE); case 19: vSetName(client, "Idler Tank", true, true, true, 10, 40, 15, 255, "10 40 15"); case 20: vSetName(client, "Inverter Tank", true, true, true, 250, 65, 255, 255, "250 65 255"); case 21: vSetName(client, "Jockey Tank", true, true, true, 130, 0, 0, 255, "130 0 0"); case 22: { vJumperEffect(client); vSetName(client, "Jumper Tank", true, true, true, 225, 0, 205, 255, "225 0 205"); } case 23: vSetName(client, "Meteor Tank", true, true, true, 200, 200, 200, 255, "200 200 200"); case 24: vSetName(client, "Puke Tank", true, true, true, 140, 0, 0, 255, "140 0 0"); case 25: vSetName(client, "Restarter Tank", true, true, true, 225, 235, 0, 255, "225 235 0"); case 26: vSetName(client, "Rocketeer Tank", true, true, true, 255, 180, 50, 255, "255 180 50"); case 27: vSetName(client, "Shake Tank", true, true, true, 0, 170, 255, 255, "0 170 255"); case 28: { if (!g_bShielded[client]) { vShieldAbility(client, true); } vSetName(client, "Shield Tank", true, true, true, 25, 125, 125, 255, "25 125 125"); } case 29: vSetName(client, "Shove Tank", true, true, true, 25, 10, 0, 255, "25 10 0"); case 30: vSetName(client, "Slugger Tank", true, true, true, 0, 0, 50, 255, "0 0 50"); case 31: { vSmokerEffect(client); vSetName(client, "Smoker Tank", true, true, true, 200, 100, 145, 255, "200 100 145"); } case 32: vSetName(client, "Spitter Tank", true, true, true, 255, 80, 150, 255, "255 80 150"); case 33: vSetName(client, "Stun Tank", true, true, true, 255, 185, 45, 255, "255 185 45"); case 34: vSetName(client, "Visual Tank", true, true, true, 255, 40, 10, 255, "255 40 10"); case 35: vSetName(client, "Warp Tank", true, true, true, 225, 100, 0, 255, "225 100 0"); case 36: vSetName(client, "Witch Tank", true, true, true, 255, 210, 80, 255, "255 210 80"); }
//////////////////////////////////////////////////////////////////////////////////////////////////// //if (g_cvSTExtraHealth[g_iTankType[client]].IntValue > 0) { // int iHealth = GetClientHealth(client); // SetEntityHealth(client, iHealth + g_cvSTExtraHealth[g_iTankType[client]].IntValue); //}
int ClientCount = Client_GetCount(true, false); int iHealth = GetClientHealth(client); int ExtraHealth = (ClientCount > 1) ? (g_cvSTExtraHealth[g_iTankType[client]].IntValue > 0) ? g_cvSTExtraHealth[g_iTankType[client]].IntValue * ClientCount + iHealth : GetRandomInt(2500, 3500) * ClientCount + iHealth : (g_cvSTExtraHealth[g_iTankType[client]].IntValue > 0) ? g_cvSTExtraHealth[g_iTankType[client]].IntValue + iHealth : iHealth; SetEntityHealth(client, (ExtraHealth > 62400) ? 62400 : ExtraHealth); ////////////////////////////////////////////////////////////////////////////////////////////////////
vThrowInterval(client, g_cvSTThrowInterval[g_iTankType[client]].FloatValue); } }
stock int Client_GetCount(bool countInGameOnly=true, bool countFakeClients=true) { int numClients = 0;
for (int client=1; client <= MaxClients; client++) {
if (!IsClientConnected(client)) { continue; }
if (countInGameOnly && !IsClientInGame(client)) { continue; }
if (!countFakeClients && IsFakeClient(client)) { continue; }
numClients++; }
return numClients; }
__________________
Last edited by emsit; 06-22-2018 at 02:15.
|
|