Help changing TK Plugin, Ban by IP instead AuthId
Hello I need to modify a TK Plugin to work on Lan. Because on Lan we have STEAM_ID_LAN instead a "real" number of Steam Id.
The plugin is : http://www.dodplugins.net/download.php?id=544 I think I shuould modify this part: Code:
else if (tkcount[teamkiller[id]] > zTKs){Code:
else if(get_cvar_num("dod_tkrevenge_useamxbans") == 0){I found this part of a modify plmenu.sma that ban by IP, may be help...: Code:
/* ---------- check for Steam ID added by MistaGee -------------------- |
Re: Help changing TK Plugin, Ban by IP instead AuthId
Code:
Try that.... Can't guarantee it'll work though. |
I tried but I cant compile it : WARNING 217: loose indentation
Which is teh problem? |
It's compiled 100% but your indenting is teh suck.
|
After a good identing, I tried the code that mysticssjgoku4 (thanks mysticssjgoku4) wrote for me but dont work :( , the plugin still not ban by IP. Any Ideas? Sorry Im a newie and I cant make it work...
The big problem is that DoD (Day of Defeat) dont have any TK plugin that work on LAN. I found ATAC TK plugin that have LAN option but dont work for DoD :cry: . So please DoD community need help with a TK plugin that work on LAN! and kick/ban players by IP. I will post the original plugin that works with authid and I think only a little part must be modify, please HELP ME! This is the complete original code: [code]// // AMX Mod X Script // // Developed by The AMX Mod X DoD Community // http://www.dodplugins.net // // Authors: [FV] FeuerSturm & |BW|.Zor // // // This program is free software; you can redistribute it and/or // modify it under the terms of the GNU General Public License // as published by the Free Software Foundation; either version 2 // of the License, or (at your option) any later version. // // This program is distributed in the hope that it will be useful, // but WITHOUT ANY WARRANTY; without even the implied warranty of // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the // GNU General Public License for more details. // // You should have received a copy of the GNU General Public License // along with this program; if not, write to the Free Software // Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. // // // // INSTALLATION (STANDARD VERSION): // ================================ // // you have to create a folder called "tks" in your // /addons/amxmodx/configs/ folder. // if you don't do this, the TK save feature will not // work. // // // // INSTALLATION (MYSQL VERSION): // ============================= // // the plugin will create a table called "tks" in your // database, you don't have to do anything manually. // // // // USAGE (cvars for amxx.cfg): // =========================== // // dod_tkrevenge_enabled <1/0> = enable/disable DoD TK Revenge // by default // // dod_tkrevenge_obeyimmunity <1/0> = enable/disable Admins with flag // "a" (Immunity) being excluded // from any revenge for TA/TKs. // // dod_tkrevenge_options <1/2/3/4> = sets the menu options for the // DoD TK Revenge Menu: // 1 = Forgive!, 1hp (& Glow!), Slay! // 2 = Forgive!, Slay! // 3 = Forgive!, Slap 50percent!, Slay! // 4 = Forgive!, DON'T Forgive! // // dod_tkrevenge_enableglow <1/0> = enable/disable glowing players // (menu & bot actions) // // dod_tkrevenge_forgiveslap <1/0> = enable/disable slapping the TKer // without damage if "Forgive!" was // chosen by the victim // // dod_tkrevenge_respawnslay <1/0> = enable/disable slaying TeamKillers // after respawning who have already // been dead when "Slay" was chosen // // dod_tkrevenge_killfx <1/0> = enable/disable special effects // for killing the TeamKiller // (fire explosion with sound) // // dod_tkrevenge_playersaytks <1/0> = allow/disallow players to check their // current TK-Count by saying "/tks" // // dod_tkrevenge_displaytacount <1/0> = enable/disable displaying a hudmessage // to players with info about their TA count // when it's increased. // // dod_tkrevenge_displaytkcount <1/0> = enable/disable displaying a hudmessage // to players with info about their TK count // when it's increased or decreased. // // dod_tkrevenge_tasequaltk <amount> = number of TeamAttacks that equal // an unforgiven TeamKill // (set to 0 to disable!) // // dod_tkrevenge_tareset <1/0> = enable/disable resetting every player's // current TA-count on round start // // dod_tkrevenge_novictimdeath <1/0> = enable/disable feature that prevents // victim's deaths to be increased by TKs // // dod_tkrevenge_spawnprotect <1/0> = enable/disable automatic slaying of // team killers in defined spawn time // // dod_tkrevenge_spawntahandle <1/2/0> = sets handling for Spawn-TAs // 1 = Mirror Damage // 2 = Kill TeamAttacker immediately // 0 = disabled // (spawnprotect feature needs to be enabled!) // // dod_tkrevenge_addmirrordmg <amount> = sets amount of HP a SpawnAttacker loses // additionally to the damage mirrored back // at him from attacking a teammate // (only applies if "spawntahandle" is "1"!) // // dod_tkrevenge_spawndistance <amount> = distance to spawnpoint within what // TKs are considered Spawn-TKs // (default: 800) // // dod_tkrevenge_spawntkcount <amount> = number of warnings to add to the // spawn killers tk-count. // // dod_tkrevenge_warnings <amount> = number of unforgiven TKs until // player is kicked/banned // (1hp/Slap are not counted as unforgiven) // // dod_tkrevenge_ban <1/0> = set to 1 to ban the teamkiller after // your amount of warnings. // set to 0 to just kick him // // dod_tkrevenge_bantime <time> = time in minutes to ban a teamkiller // from the server (if you enabled ban) // // dod_tkrevenge_useamxbans <1/0> = enable/disable using AMXBans to ban // players for excessive TeamKilling // // dod_tkrevenge_amxbansreason <reason> = sets reason which is displayed in AMXBans // Webinterface (use quotes!) // (default: "Excessive TeamKilling") // // dod_tkrevenge_meleeslay <1/0> = immediatly kill player on melee // TA/TK (see description for more info!) // // dod_tkrevenge_meleetkcount <amount> = number of warnings to add to the // back stabbers tk-count. // // dod_tkrevenge_nadetkcount <1/0> = enable/disable increasing the tk-count // on unforgiven grenade tks // // dod_tkrevenge_karmareducetk <amount> = Karma points needed to reduce player's // TK-count by 1 while a TK zeroes the // karma counter again! // (set to 0 to disable) // // dod_tkrevenge_killkarma <amount> = amount of karma points a player gains // for killing an enemy // // dod_tkrevenge_scorekarma <amount> = amount of karma points a player gains // for capping a flag // // dod_tkrevenge_botaction <1/2/3/4/5/0> = sets action for TKs on Bots // 1 = Forgive! // 2 = 1hp (& Glow!) // 3 = Slay! // 4 = Slap 50percent! // 5 = DON'T Forgive! // 0 = disabled // // dod_tkrevenge_savetks <1/0> = enable/disable saving each player's // TK-count and reload it on reconnect // // // // DESCRIPTION: // ============ // // - This plugin is a simple but effective TK Revenge provider, // a menu pops up for the victim of a teamkiller and he can choose // to "Forgive!", "Glow & 1hp!" or "Slap with 50percent!" or "Slay!" // the teamkiller. // You can set what option will appear in the TK Revenge menu. // * Forgive! just slaps the TKer without damage // * 1hp (& Glow)! sets him to 1hp (and makes him glow in his team's color) // until he respawns. (Glow can be enabled/disabled) // * Slap with 50percent! will slap him with 50% damage of his current // health // * Slay! will added 1 to his tk count and kills him if he's alive // and his tk count is checked against the number of warnings you // set up and a yellow hudmessage saying // "TeamKill Warning X/X: Watch your fire!" // is shown. once the tk count equals the warnings the hudmessage // is shown in red. on the next unforgiven tk the teamkiller will // either be kicked or banned for X minutes. (depends on your setup) // * DON'T Forgive! does the same as "Slay!" but without killing the // attacker. // - TeamKills don't have to be counted as deaths for Victims. // - Melee TAs/TKs can be handled different, it's possible // to directly slay on a melee TA/TK without giving the victim // the ability to forgive or glow. if the attacker is slayed for // a melee attack, his tk count is not increased, but if he // is slayed for a melee tk, it will be increased by the set amount. // Knife, Spade, K43 Butt, Garand Butt & Bayonet are considered // melee weapons. // - A specified amount of TAs can count as an unforgiven TK. // - Spawn TeamKills can be handled different as well. If a TK // occurs in your defined distance after respawn, the team killer can be // slayed and his tk-count will be increased by the set amount. // - Grenade TeamKills can be handled on a special way as well, you // can set up either to increase the tk-count or not if "Slay!" // was chosen by the victim of a friendly grenade. // - The TK-Count of players can be decreased // by 1 if they gain a set amount of karma without doing any Tks. // (Karma can consist of FlagCaps and EnemyKills) // - TeamKillers can be slayed after respawning if they are already dead // - You can set your bots (if you are using Sturmbot/Shrikebot for example) // to react on TKs with forgiving, 1hp (& glowing) or Slapping and slaying the // teamkiller. // That way you can be sure that your bots aren't the easy shooting targets // for teamkillers. // - Every player's tk-count can be saved and reloaded if he reconnects. // This feature is independent from time and map, his info is saved for good // until you either delete it, or the TKer starts to play serious and gets his // tk-count decreased. this prevents hardcore teamkillers from simply // reconnecting to the server to get their tk-count zeroed. // Note: if you use this feature, be sure to use banning of teamkillers, // otherwise it wouldn't make any sense to use this feature. // - AMXBans can be used to ban teamkillers. // - Admins with access level ADMIN_IMMUNITY can be excluded from any punishments // for a tk, the plugin just just ignores their teamkills. // // // // AMX Mod X, DoDx, DoDFun & Fun modules needed! // // // To do: // // - nothing so far! :D // // // CHANGELOG: // ========== // // - 27.11.2004 Version 0.5beta // Initial Release // // - 30.11.2004 Version 0.6beta // added feature: // - melee TAs/TKs can be handled // different now, it's possible // to directly slay on a melee // TA/TK without giving the victim // the ability to forgive or glow. // if the attacker is slayed for // a melee attack, his tk count // is not increased, but if he // is slayed for a melee tk, // it will be increased. // bug fixes: // - fixed oversight that tk count // wasn't increased on "Slay!" when // teamkiller was already dead. // generic changes: // - sound "it's time to choose" is played // to the victim when the menu comes up. // (a different sound for axis and allies) // - renamed "Glow!" to "1hp & Glow!" // according to what it actually does. // // - 22.12.2004 Version 0.7beta // added feature: // - grenade TKs can be handled on a special // way now, it's possible to enable/disable // increasing the killer's TK-count after // an unforgiven grenade tk. // // - 31.12.2004 Version 0.8beta // added features: // - by killing X enemies without any TKs // between, the TK-Count of a player // can be reduced by one. // - added tk-revenge for bots that are tked, // you can set the bots to forgive, // 1hp & glow or slay the teamkiller. // (or disable any bot action) // // - 08.01.2005 Version 0.9beta // added feature: // - every player's tk-count can be saved and // reloaded if he reconnects. // This feature is independent from time and // map, his info is saved for good until you // either delete it, or the TKer starts to play // serious and gets his tk-count decreased. // this prevents hardcore teamkillers from // simply reconnecting to the server to get their // tk-count zeroed. // Note: the tk-count will be reset after the // player reached the tk-limit and got // kicked and/or banned. // BIG thanks to Zor for adding this whole feature // and finally making this plugin competitive to // the DoDx TK Manager. // bugfixes: // - fixed oversight that the tk-count was increased // by 2 for killing a bot with a melee weapon and // the botaction set to "Slay!". // - fixed minor bug in a info message when a player // gets banned for excessive tking. // // - 18.01.2005 Version 0.9beta2 (a.k.a. almost final) // added feature: // - the name of the player that teamkilled the // victim is displayed in the DoD TK Revenge // Menu right after the options. So people know // who they are actually about to punish or forgive. // // - 22.01.2005 Version 0.95beta // added features: // - automatic Spawn-TK treatment // * a tk within a set time after respawn will // result in slaying the TKer and increasing // his TK-count by your set amount. // - TK Revenge Menu layout can be changed by CVar // * "1hp & Glow!" can be replaced with "Slap with 50percent!" // or removed at all so that it's only "Forgive!" and "Slay!". // * the glowing option can be disabled. // - TK-Count for Melee-Slays can be increased by // custom amount of warnings // - Admin Immunity can be turned on/off // // - 23.01.2005 Version 0.95beta2 // added feature: // - AMXBans can be used to ban players from the server. // (dod_tkrevenge_useamxbans 1) // // - 28.01.2005 Version 0.99beta // cosmetic patches: // - i changed the code a bit, so AMXBans recognizes the ban // lenght correctly, before it showed a permanent ban as // time 0.00000000 in the web-banlist, now it says "Permanent". // same for ban lengths like "7 days" etc. which was displayed // as 10080.0000000 before. // - i replaced the message that is displayed to all players when // someone gets banned to reflect the correct length instead // of showing a big amount of minutes. // so my advice for the ban lenght you choose: // use only full hours, full days, full weeks or full months, // then it will be displayed correctly. // 1 day = 1440 minutes // 1 week = 10080 minutes // 1 month = 40320 minutes // multiply those values with the amount of hours/days/weeks // or months you want people to be banned and use that value // as banlength! // Example: 4 days = 5760 minutes as banlenght // // - 01.02.2005 Version 0.99beta2 // added features: // - new menu layout "4" which will be "Forgive!" and // "DON'T Forgive!" (basically does the same as "Slay!" just // without killing the attacker) // - new botaction "5" which will be "DON'T Forgive!" // - new cvar to set to not increase victim's death on TKs // general: // - DoDFun module is required now! // // - 04.02.2005 Version 0.99beta3 "feature lock" // added feature: // - you can choose whether to slap the teamkiller without // damage when "Forgive!" was chosen, or not. // // - 09.04.2005 Version 0.99beta4 // tweaked feature: // - you can enable mirror damage within your set spawntime, // so that people that just try to bring your health a bit // down without killing you will only be hurting themselves. // you can enable/disable that with the new cvar // "dod_tkrevenge_spawntahandle" // // - 07.05.2005 Version 0.999beta // mysql tweaks by Zor(only MySQL-Version!): // - Worked on the sql connection area and now only have one // connect instead of a bunch. // general tweaks: // - optimized the code a bit // // - 18.05.2005 Version 0.9pre-final // bugfixes: // - disabled revenge menu for spawn tks // - mirrordamage works correctly now // - fixed some problems with bot actions // - fixed multiple messages for melee spawn tks // general changes: // - code optimizations // additions: // - added cvar to allow players to check their // tk-counts by saying "/tks". // (new cvar: dod_tkrevenge_playersaytks <1/0>) // - added cvar to specify the banreason which is // displayed in the AMXBans Webinterface // (only works if AMXBans is used!) // (new cvar: dod_tkrevenge_amxbansreason <"Your reason here!">) // // - 18.05.2005 Version 0.9pre-final2 // bugfixes: // - fixed TK Revenge Menu comming up after Grenade TKs // when Grenade TK-Count is disabled on MenuLayout 4 // (Forgive!/DON'T Forgive!) // - TK Revenge Menu now stays open until the victim // chose an option. // // - 15.07.2005 Version 0.9pre-final3 // tweaks: // - removed "spawntime" check to indentify SpawnTKs // and replaced it with a distance check between the victim's // spawnpoint and the postion of being TKed/TAed. // (new cvar: "dod_tkrevenge_spawndistance") // // - 29.07.2005 Version 0.9pre-final4 // nice little update: // - added special effects for killing the TeamKiller, // if enabled, the player dies in fire explosion with sound. // (new cvar: dod_tkrevenge_killfx <1/0>) // NOTE: only players in a small radius around the killed // player hear the sound, so don't worry about being // "sound-spammed" all the time // // - 12.08.2005 Version 0.9pre-final5 // major tweaks: // - changed cvar "dod_tkrevenge_killsreducetk" to // "dod_tkrevenge_karmareducetks" and added two new cvars: // "dod_tkrevenge_killkarma" and // "dod_tkrevenge_scorekarma" so that flagcaps can be // taken into account for reducing someone's tkcount // as well as killing enemies. // the "karmareducetks" cvar specifies the needed amount // of karma to reduce the player's tkcount by 1 while // "killkarma" specifies how many karma points are added // per enemykill and "scorekarma" specifies how many // karma points are added for capping a flag. // - added cvar "dod_tkrevenge_tasequaltk" which specifies // the amount of TeamAttacks that equal 1 unforgiven TK and // added cvar "dod_tkrevenge_tareset" which allows you to // either reset each players TA-count on every roundstart // or keep it until it equals a TK and automatically is reset // // - 21.08.2005 Version 0.9pre-final6 // bug fixes: // - fixed bug of TK-victims of admins not getting the death // removed if "dod_tkrevenge_obeyimmunity" was enabled // additions: // - added cvars "dod_tkrevenge_displaytacount" and // "dod_tkrevenge_displaytkcount" which lets you specify // if the hudmessages should be shown or not when a player's // TA/TK count is increased (or decreased by Karma Points). // // - 27.11.2005 Version 0.9pre-final7 // bug fixes: // - raised stability of the plugin // - fixed spawnprotection not working correctly // - fixed new players being punished for TKs they // didn't commit. this happened because of not // clearing victim's "TeamKiller Cache" once // a TeamKiller disconnected before he could // receive his punishment // generic changes: // - removed cvar "dod_tkrevenge_mirrordmg" // additions: // - added 2 modes for handling Spawn-TAs: // SpawnMirrorDamage & InstantAttackerDeath // (new cvar "dod_tkrevenge_spawntahandle") // - added feature to slay TeamKillers after // respawning if they were already dead when // the victim chose "Slay!" from the menu // (new cvar "dod_tkrevenge_respawnslay") // - added cvar "dod_tkrevenge_addmirrordmg" // to specify how many HP a SpawnAttacker loses // additionally to the damage mirrored back at him. // (only applies if "dod_tkrevenge_spawntahandle" // is set to "1"!) // #include <amxmodx> #include <amxmisc> #include <dodx> #include <dodfun> #include <fun> new tkcount[33], teamkiller[33], tkillglow[33], meleetk[33], nadetk[33], karma[33], spawned[33] new spawnorigin[33][3], killorigin[33][3], tkerorigin[33][3], killerburn, tacount[33], respawnslay[33] public plugin_init(){ register_plugin("DoD TK Revenge","0.9pre-final7","AMXX DoD Team") register_statsfwd(XMF_SCORE) register_statsfwd(XMF_DAMAGE) register_statsfwd(XMF_DEATH) register_clcmd("say /tks","say_tks",0,"- display current TK Count") register_cvar("dod_tkrevenge_enabled","1") register_cvar("dod_tkrevenge_obeyimmunity","1 ") register_cvar("dod_tkrevenge_warnings","5") register_cvar("dod_tkrevenge_playersaytks","1 ") register_cvar("dod_tkrevenge_displaytacount", "1") register_cvar("dod_tkrevenge_displaytkcount", "1") register_cvar("dod_tkrevenge_tasequaltk","10" ) register_cvar("dod_tkrevenge_tareset","1") register_cvar("dod_tkrevenge_ban","1") register_cvar("dod_tkrevenge_bantime","1440") register_cvar("dod_tkrevenge_useamxbans","0") register_cvar("dod_tkrevenge_amxbansreason"," Excessive TeamKilling") register_cvar("dod_tkrevenge_options","1") register_cvar("dod_tkrevenge_novictimdeath"," 1") register_cvar("dod_tkrevenge_enableglow","1") register_cvar("dod_tkrevenge_forgiveslap","1" ) register_cvar("dod_tkrevenge_respawnslay","1" ) register_cvar("dod_tkrevenge_killfx","1") register_cvar("dod_tkrevenge_spawnprotect","1 ") register_cvar("dod_tkrevenge_spawntahandle"," 2") register_cvar("dod_tkrevenge_addmirrordmg","5 ") register_cvar("dod_tkrevenge_spawndistance"," 800") register_cvar("dod_tkrevenge_spawntkcount","3 ") register_cvar("dod_tkrevenge_meleeslay","1") register_cvar("dod_tkrevenge_meleetkcount","2 ") register_cvar("dod_tkrevenge_nadetkcount","0" ) register_cvar("dod_tkrevenge_karmareducetk"," 25") register_cvar("dod_tkrevenge_scorekarma","2") register_cvar("dod_tkrevenge_killkarma","1") register_cvar("dod_tkrevenge_botaction","0") register_cvar("dod_tkrevenge_savetks","1") register_menucmd(register_menuid("DoD TK Revenge"),(1<<0)|(1<<1)|(1<<2),"tkrevenge_opt ions") register_event("ResetHUD","player_respawn","b e") register_event("RoundState","reset_teamattack s","a","1=3","1=4") set_cvar_num("mp_tkpenalty",-1) } public plugin_modules(){ require_module("dodx") require_module("dodfun") require_module("fun") } public plugin_precache(){ killerburn = precache_model("sprites/explode1.spr") } public client_authorized(id){ tkcount[id] = 0 tkillglow[id] = 0 teamkiller[id] = 0 meleetk[id] = 0 nadetk[id] = 0 karma[id] = 0 spawned[id] = 0 tacount[id] = 0 } public client_putinserver(id){ if(get_cvar_num("dod_tkrevenge_savetks") == 1){ new steamid[32] get_user_authid(id, steamid, 31) new tkfile[64] get_configsdir(tkfile,63) add(tkfile, 63, "/tks/%s.txt") format(tkfile, 63, tkfile, steamid) replace(tkfile, 63, ":", "_") replace(tkfile, 63, ":", "_") if(file_exists(tkfile)){ new text[32] new a = 0 if(read_file(tkfile, 0, text, 31, a)){ tkcount[id] = str_to_num(text) } } } return PLUGIN_CONTINUE } public client_disconnect(id){ if(get_cvar_num("dod_tkrevenge_savetks") == 1){ new steamid[32] get_user_authid(id, steamid, 31) new tkfile[64] get_configsdir(tkfile,63) add(tkfile, 63, "/tks/%s.txt") format(tkfile, 63, tkfile, steamid) replace(tkfile, 63, ":", "_") replace(tkfile, 63, ":", "_") if(tkcount[id] == 0 || tkcount[id] > get_cvar_num("dod_tkrevenge_warnings")){ if(file_exists(tkfile)){ delete_file(tkfile) } } else if(tkcount[id] > 0 && tkcount[id] <= get_cvar_num("dod_tkrevenge_warnings")){ new tks[32] num_to_str(tkcount[id], tks, 31) write_file(tkfile, tks, 0) } } new plist[32],pnum get_players(plist,pnum) for(new i=0; i<pnum; i++){ if(is_user_connected(plist[i]) == 1 && teamkiller[plist[i]] == id){ teamkiller[plist[i]] = 0 } } return PLUGIN_CONTINUE } public reset_teamattacks(){ if(get_cvar_num("dod_tkrevenge_tareset") == 1){ new plist[32],pnum get_players(plist,pnum) for(new i=0; i<pnum; i++){ if(is_user_connected(plist[i]) == 1 && tacount[plist[i]] > 0){ tacount[plist[i]] = 0 } } return PLUGIN_CONTINUE } return PLUGIN_CONTINUE } public client_score(index,score,total){ if(get_cvar_num("dod_tkrevenge_enabled") == 0 || ((get_user_flags(index)&ADMIN_IMMUNITY) && get_cvar_num("dod_tkrevenge_obeyimmunity") == 1)){ return PLUGIN_CONTINUE } if(is_user_bot(index) == 0 && get_cvar_num("dod_tkrevenge_karmareducetk") != 0){ new addkarma = get_cvar_num("dod_tkrevenge_scorekarma") karma[index] += addkarma new player = index checkkarma(player) return PLUGIN_CONTINUE } return PLUGIN_CONTINUE } public client_damage(attacker,victim,damage,wpnindex ,hitplace,TA){ if(TA == 0 || attacker==victim || ((get_user_flags(attacker)&ADMIN_IMMUNITY) && get_cvar_num("dod_tkrevenge_obeyimmunity") == 1)){ return PLUGIN_CONTINUE } new meleeta = 0 if(get_cvar_num("dod_tkrevenge_enabled") == 1){ if(get_cvar_num("dod_tkrevenge_meleeslay") == 1){ if(wpnindex == DODW_GARAND_BUTT || wpnindex == DODW_K43_BUTT || wpnindex == DODW_KAR_BAYONET || wpnindex == DODW_AMERKNIFE || wpnindex == DODW_BRITKNIFE || wpnindex == DODW_GERKNIFE || wpnindex == DODW_SPADE || wpnindex == DODW_ENFIELD_BAYONET){ meleeta = 1 new param[4] param[0] = victim param[1] = attacker param[2] = wpnindex param[3] = damage set_task(0.1,"melee_attack_handle",0,param,4) } } if(get_cvar_num("dod_tkrevenge_spawnprotect" ) == 1 && meleeta == 0){ get_user_origin(victim,killorigin[victim]) if(get_distance(killorigin[victim],spawnorigi n[victim]) < get_cvar_num("dod_tkrevenge_spawndistance")){ spawned[victim] = 1 if(is_user_alive(victim) == 1 && get_cvar_num("dod_tkrevenge_spawntahandle") == 1){ new param[4] param[0] = victim param[1] = attacker param[2] = wpnindex param[3] = damage set_task(0.0,"change_health",0,param,4) } else if(is_user_alive(victim) == 1 && is_user_alive(attacker) == 1 && get_cvar_num("dod_tkrevenge_spawntahandle") == 2){ new victimname[32] get_user_name(victim,victimname,31) new attackername[32] get_user_name(attacker,attackername,31) client_print(0, print_chat, "[DoD TK Revenge] %s has been slayed for Spawn-TeamAttacking %s!",attackername,victimname) new killerid = attacker set_task(0.1,"kill_teamkiller",killerid) } } else { spawned[victim] = 0 } } } if(get_cvar_num("dod_tkrevenge_tasequaltk") != 0){ if(wpnindex != DODW_HANDGRENADE && wpnindex != DODW_STICKGRENADE && wpnindex != DODW_MILLS_BOMB){ tacount[attacker]++ checktaer(attacker) } } return PLUGIN_CONTINUE } public change_health(param[]){ if(is_user_alive(param[0]) == 1){ set_user_health(param[0],get_user_health(para m[0]) + param[3]) } new dmgaddition = get_cvar_num("dod_tkrevenge_addmirrordmg") if(is_user_alive(param[1]) == 1){ new oldhealth = get_user_health(param[1]) if(oldhealth > (param[3] + dmgaddition)){ set_user_health(param[1],get_user_health(para m[1]) - (param[3] + dmgaddition)) } else if(oldhealth <= (param[3] + dmgaddition)){ new killerid = param[1] kill_teamkiller(killerid) } } } public client_death(killer,victim,wpnindex,hitplace, TK){ if(killer==victim || (is_user_bot(victim) == 1 && is_user_bot(killer) == 1)){ return PLUGIN_CONTINUE } if(get_user_flags(killer)&ADMIN_IMMUNITY && get_cvar_num("dod_tkrevenge_obeyimmunity") == 1){ if(get_cvar_num("dod_tkrevenge_novictimdeath" ) == 1 && TK == 1){ new victimdeaths = dod_get_pl_deaths(victim) dod_set_pl_deaths(victim,(victimdeaths -= 1)) } return PLUGIN_CONTINUE } if(TK == 0){ if(is_user_bot(killer) == 0 && get_cvar_num("dod_tkrevenge_karmareducetk") != 0){ new addkarma = get_cvar_num("dod_tkrevenge_killkarma") karma[killer] += addkarma new player = killer checkkarma(player) return PLUGIN_CONTINUE } } else if(TK == 1){ if(get_cvar_num("dod_tkrevenge_spawnprotect" ) == 1){ get_user_origin(victim,killorigin[victim]) if(get_distance(killorigin[victim],spawnorigi n[victim]) < get_cvar_num("dod_tkrevenge_spawndistance")){ spawned[victim] = 1 } else { spawned[victim] = 0 } } new param[3] param[0] = victim param[1] = killer param[2] = wpnindex set_task(0.2,"death_handle",0,param,3) } return PLUGIN_CONTINUE } public death_handle(param[]){ new victim = param[0] new killer = param[1] new wpnindex = param[2] new id = victim teamkiller[id] = killer if(spawned[victim] == 1 && meleetk[killer] == 0){ new victimname[32] get_user_name(victim,victimname,31) new killername[32] get_user_name(killer,killername,31) if(is_user_alive(killer) == 1){ client_print(0, print_chat, "[DoD TK Revenge] %s has been slayed for Spawn-TeamKilling %s!",killername,victimname) new killerid = killer set_task(0.1,"kill_teamkiller",killerid) } else if(is_user_alive(killer) == 0){ client_print(0, print_chat, "[DoD TK Revenge] %s's TK-Count has been increased for Spawn-TeamKilling %s!",killername,victimname) } new spawntkcount = get_cvar_num("dod_tkrevenge_spawntkcount") tkcount[killer] += spawntkcount karma[killer] = 0 checktker(id) } else if(spawned[victim] == 1 && meleetk[killer] == 1){ meleetk[killer] = 0 } if(is_user_bot(victim) == 1 && get_cvar_num("dod_tkrevenge_enabled") == 1){ new victimname[32] get_user_name(victim,victimname,31) new killername[32] get_user_name(killer,killername,31) if(get_cvar_num("dod_tkrevenge_botaction") == 0){ karma[killer] = 0 } else if(get_cvar_num("dod_tkrevenge_botaction") == 1){ if(is_user_alive(killer) == 0 || get_cvar_num("dod_tkrevenge_forgiveslap") == 0){ client_print(0,print_chat,"[DoD TK Revenge] %s hugs %s and forgives the TeamKill!",victimname,killername) karma[killer] = 0 } else if(is_user_alive(killer) == 1 && get_cvar_num("dod_tkrevenge_forgiveslap") == 1){ client_print(0,print_chat, "[DoD TK Revenge] %s slaps %s and forgives the TeamKill!",victimname,killername) user_slap(killer,0) karma[killer] = 0 } } else if(get_cvar_num("dod_tkrevenge_botaction") == 2){ if(is_user_alive(killer) == 0){ karma[killer] = 0 } else if(is_user_alive(killer) == 1){ if(get_cvar_num("dod_tkrevenge_enableglow") == 1){ client_print(0, print_chat, "[DoD TK Revenge] %s made %s glow and set him to 1hp for TeamKilling",victimname,killername) if(get_user_team(killer) == 1){ set_user_rendering(killer,kRenderFxGlowShell, 0,255,0,kRenderNormal,25) tkillglow[killer] = 1 } else if(get_user_team(killer) == 2){ set_user_rendering(killer,kRenderFxGlowShell, 255,0,0,kRenderNormal,25) tkillglow[killer] = 1 } } else if(get_cvar_num("dod_tkrevenge_enableglow") == 0){ client_print(0, print_chat, "[DoD TK Revenge] %s set %s to 1hp for TeamKilling",victimname,killername) } set_user_health(killer,1) karma[killer] = 0 } } else if(get_cvar_num("dod_tkrevenge_botaction") == 3){ if(wpnindex == DODW_HANDGRENADE || wpnindex == DODW_STICKGRENADE || wpnindex == DODW_MILLS_BOMB){ if(get_cvar_num("dod_tkrevenge_nadetkcount") == 0){ nadetk[killer] = 1 } else if(get_cvar_num("dod_tkrevenge_nadetkcount") == 1){ nadetk[killer] = 0 } } if(meleetk[killer] == 0 && spawned[victim] == 0){ if(is_user_alive(killer) == 0){ if(nadetk[killer] == 0){ client_print(0,print_chat,"[DoD TK Revenge] %s's TK-Count was increased for TeamKilling %s!",killername,victimname) karma[killer] = 0 if(spawned[victim] == 0){ tkcount[killer]++ } else if(spawned[victim] == 1){ new spawntkcount = get_cvar_num("dod_tkrevenge_spawntkcount") tkcount[killer] += spawntkcount } checktker(id) } else if(nadetk[killer] == 1){ karma[killer] = 0 } } else if(is_user_alive(killer) == 1){ client_print(0, print_chat, "[DoD TK Revenge] %s has slayed %s for TeamKilling!",victimname,killername) new killerid = killer set_task(0.1,"kill_teamkiller",killerid) if(nadetk[killer] == 0){ karma[killer] = 0 if(spawned[victim] == 0){ tkcount[killer]++ } else if(spawned[victim] == 1){ new spawntkcount = get_cvar_num("dod_tkrevenge_spawntkcount") tkcount[killer] += spawntkcount } checktker(id) } } } else if(meleetk[killer] == 1){ meleetk[killer] = 0 } } else if(get_cvar_num("dod_tkrevenge_botaction") == 4){ if(is_user_alive(killer) == 0){ karma[killer] = 0 return PLUGIN_HANDLED } else if(is_user_alive(killer) == 1){ client_print(0, print_chat, "[DoD TK Revenge] %s slapped %s with 50percent health for TeamKilling",victimname,killername) new health = get_user_health(killer) new slappower = health/2 user_slap(killer,slappower) karma[killer] = 0 } } else if(get_cvar_num("dod_tkrevenge_botaction") == 5){ if(wpnindex == DODW_HANDGRENADE || wpnindex == DODW_STICKGRENADE || wpnindex == DODW_MILLS_BOMB){ if(get_cvar_num("dod_tkrevenge_nadetkcount") == 0){ nadetk[killer] = 1 } else if(get_cvar_num("dod_tkrevenge_nadetkcount") == 1){ nadetk[killer] = 0 } } if(meleetk[killer] == 0 && spawned[victim] == 0){ if(nadetk[killer] == 0){ client_print(0,print_chat,"[DoD TK Revenge] %s did NOT forgive %s the TeamKill!",victimname,killername) karma[killer] = 0 if(spawned[victim] == 0){ tkcount[killer]++ } else if(spawned[victim] == 1){ new spawntkcount = get_cvar_num("dod_tkrevenge_spawntkcount") tkcount[killer] += spawntkcount } checktker(id) } else if(nadetk[killer] == 1){ karma[killer] = 0 } } else if(meleetk[killer] == 1){ meleetk[killer] = 0 } } } if(is_user_bot(victim) == 0 && get_cvar_num("dod_tkrevenge_enabled") == 1){ if(wpnindex == DODW_HANDGRENADE || wpnindex == DODW_STICKGRENADE || wpnindex == DODW_MILLS_BOMB){ if(get_cvar_num("dod_tkrevenge_nadetkcount") == 0){ nadetk[killer] = 1 } else if(get_cvar_num("dod_tkrevenge_nadetkcount") == 1){ nadetk[killer] = 0 } } karma[killer] = 0 if(meleetk[killer] == 0 && spawned[victim] == 0){ set_task(0.3,"tkrevenge_menu",0,param,2) } if(meleetk[killer] == 1){ meleetk[killer] = 0 } } if(get_cvar_num("dod_tkrevenge_novictimdeath" ) == 1){ new victimdeaths = dod_get_pl_deaths(victim) dod_set_pl_deaths(victim,(victimdeaths -= 1)) } return PLUGIN_CONTINUE } public melee_attack_handle(param[]){ new meleeattacker[32] new meleevictim[32] new meleelogname[32] new meleewpnname[32] get_user_name(param[1],meleeattacker,31) get_user_name(param[0],meleevictim,31) xmod_get_wpnlogname(param[2],meleelogname,31) dod_wpnlog_to_name(meleelogname,meleewpnname, 31) new killerid = param[1] kill_teamkiller(killerid) if(is_user_alive(param[0]) == 1){ client_print(0,print_chat,"[DoD TK Revenge] %s has been slayed for trying to kill %s with his %s!",meleeattacker,meleevictim,meleewpnname) karma[param[1]] = 0 if(get_cvar_num("dod_tkrevenge_spawntahandle" ) == 1 && spawned[param[0]] == 1){ set_task(0.0,"change_health",0,param,4) } } else if(is_user_alive(param[0]) == 0){ meleetk[param[1]] = 1 new id = param[0] teamkiller[id] = param[1] if(spawned[id] == 0){ new meleetkcount = get_cvar_num("dod_tkrevenge_meleetkcount") tkcount[teamkiller[id]] += meleetkcount } else if(spawned[id] == 1){ new spawntkcount = get_cvar_num("dod_tkrevenge_spawntkcount") tkcount[teamkiller[id]] += spawntkcount } checktker(id) karma[param[1]] = 0 client_print(0,print_chat,"[DoD TK Revenge] %s has been slayed for killing %s with his %s!",meleeattacker,meleevictim,meleewpnname) } } public tkrevenge_menu(param[]){ if(get_cvar_num("dod_tkrevenge_options") == 1){ new revenge_menu[1024] new key new tkername[32] get_user_name(param[1],tkername,31) if(get_cvar_num("dod_tkrevenge_enableglow") == 1){ format(revenge_menu,1023,"\rDoD TK Revenge\R^n^n\y1.\w Forgive!^n\y2.\w Glow & 1hp!^n\y3.\w Slay!^n^nKiller: %s",tkername) } else if(get_cvar_num("dod_tkrevenge_enableglow") == 0){ format(revenge_menu,1023,"\rDoD TK Revenge\R^n^n\y1.\w Forgive!^n\y2.\w 1hp!^n\y3.\w Slay!^n^nKiller: %s",tkername) } key = (1<<0)|(1<<1)|(1<<2) show_menu(param[0],key,revenge_menu) if(get_user_team(param[0]) == 1){ client_cmd(param[0],"spk Gman/Gman_Choose1") } else if(get_user_team(param[0]) == 2){ client_cmd(param[0],"spk Gman/Gman_Choose2") } return PLUGIN_CONTINUE } else if(get_cvar_num("dod_tkrevenge_options") == 2){ new revenge_menu[1024] new key new tkername[32] get_user_name(param[1],tkername,31) format(revenge_menu,1023,"\rDoD TK Revenge\R^n^n\y1.\w Forgive!^n\y2.\w Slay!^n^nKiller: %s",tkername) key = (1<<0)|(1<<1) show_menu(param[0],key,revenge_menu) if(get_user_team(param[0]) == 1){ client_cmd(param[0],"spk Gman/Gman_Choose1") } else if(get_user_team(param[0]) == 2){ client_cmd(param[0],"spk Gman/Gman_Choose2") } return PLUGIN_CONTINUE } else if(get_cvar_num("dod_tkrevenge_options") == 3){ new revenge_menu[1024] new key new tkername[32] get_user_name(param[1],tkername,31) format(revenge_menu,1023,"\rDoD TK Revenge\R^n^n\y1.\w Forgive!^n\y2.\w Slap 50percent!^n\y3.\w Slay!^n^nKiller: %s",tkername) key = (1<<0)|(1<<1)|(1<<2) show_menu(param[0],key,revenge_menu) if(get_user_team(param[0]) == 1){ client_cmd(param[0],"spk Gman/Gman_Choose1") } else if(get_user_team(param[0]) == 2){ client_cmd(param[0],"spk Gman/Gman_Choose2") } return PLUGIN_CONTINUE } else if(get_cvar_num("dod_tkrevenge_options") == 4){ if(nadetk[param[1]] == 1 && get_cvar_num("dod_tkrevenge_nadetkcount") == 0){ return PLUGIN_CONTINUE } new revenge_menu[1024] new key new tkername[32] get_user_name(param[1],tkername,31) format(revenge_menu,1023,"\rDoD TK Revenge\R^n^n\y1.\w Forgive!^n\y2.\w DON'T Forgive!^n^nKiller: %s",tkername) key = (1<<0)|(1<<1) show_menu(param[0],key,revenge_menu) if(get_user_team(param[0]) == 1){ client_cmd(param[0],"spk Gman/Gman_Choose1") } else if(get_user_team(param[0]) == 2){ client_cmd(param[0],"spk Gman/Gman_Choose2") } return PLUGIN_CONTINUE } return PLUGIN_CONTINUE } public tkrevenge_options(id,key){ if(teamkiller[id] == 0){ client_print(id,print_chat,"[DoD TK Revenge] Sorry, your TeamKiller has disconnected!") return PLUGIN_HANDLED } new victimname[32] get_user_name(id,victimname,31) new killername[32] get_user_name(teamkiller[id],killername,31) if(get_cvar_num("dod_tkrevenge_options") == 1){ switch(key){ case 0: { if(is_user_alive(teamkiller[id]) == 0 || get_cvar_num("dod_tkrevenge_forgiveslap") == 0){ client_print(0,print_chat,"[DoD TK Revenge] %s hugs %s and forgives the TeamKill!",victimname,killername) return PLUGIN_HANDLED } else if(is_user_alive(teamkiller[id]) == 1 && get_cvar_num("dod_tkrevenge_forgiveslap") == 1){ client_print(0,print_chat, "[DoD TK Revenge] %s slaps %s and forgives the TeamKill!",victimname,killername) user_slap(teamkiller[id],0) } } case 1: { if(is_user_alive(teamkiller[id]) == 0){ client_print(id,print_chat,"[DoD TK Revenge] Sorry %s, %s is already dead!",victimname,killername) return PLUGIN_HANDLED } else if(is_user_alive(teamkiller[id]) == 1){ if(get_cvar_num("dod_tkrevenge_enableglow") == 1){ client_print(0, print_chat, "[DoD TK Revenge] %s made %s glow and set him to 1hp for TeamKilling",victimname,killername) if(get_user_team(teamkiller[id]) == 1){ set_user_rendering(teamkiller[id],kRenderFxGl owShell,0,255,0,kRenderNormal,25) tkillglow[teamkiller[id]] = 1 } else if(get_user_team(teamkiller[id]) == 2){ set_user_rendering(teamkiller[id],kRenderFxGl owShell,255,0,0,kRenderNormal,25) tkillglow[teamkiller[id]] = 1 } } else if(get_cvar_num("dod_tkrevenge_enableglow") == 0){ client_print(0, print_chat, "[DoD TK Revenge] %s set %s to 1hp for TeamKilling",victimname,killername) } set_user_health(teamkiller[id],1) } } case 2: { if(is_user_alive(teamkiller[id]) == 0){ if(is_user_bot(teamkiller[id]) == 0){ if(nadetk[teamkiller[id]] == 0){ if(get_cvar_num("dod_tkrevenge_respawnslay") == 1){ respawnslay[teamkiller[id]] = 1 client_print(0,print_chat,"[DoD TK Revenge] %s will be slayed after respawn for TeamKilling %s!",killername,victimname) } else if(get_cvar_num("dod_tkrevenge_respawnslay") == 0){ client_print(0,print_chat,"[DoD TK Revenge] %s's TK-Count was increased for TeamKilling %s!",killername,victimname) } tkcount[teamkiller[id]]++ checktker(id) return PLUGIN_HANDLED } else if(nadetk[teamkiller[id]] == 1){ if(get_cvar_num("dod_tkrevenge_respawnslay") == 1){ respawnslay[teamkiller[id]] = 1 client_print(0,print_chat,"[DoD TK Revenge] %s will be slayed after respawn for TeamKilling %s!",killername,victimname) } else if(get_cvar_num("dod_tkrevenge_respawnslay") == 0){ client_print(id,print_chat,"[DoD TK Revenge] Sorry %s, but %s is already dead!",victimname,killername) } return PLUGIN_HANDLED } } else if(is_user_bot(teamkiller[id]) == 1){ client_print(id,print_chat,"[DoD TK Revenge] Sorry %s, but %s is already dead!",victimname,killername) } } else if(is_user_alive(teamkiller[id]) == 1){ client_print(0, print_chat, "[DoD TK Revenge] %s has slayed %s for TeamKilling!",victimname,killername) new killerid = teamkiller[id] kill_teamkiller(killerid) if(nadetk[teamkiller[id]] == 0 && is_user_bot(teamkiller[id]) == 0){ tkcount[teamkiller[id]]++ checktker(id) } } } } } else if(get_cvar_num("dod_tkrevenge_options") == 2){ switch(key){ case 0: { if(is_user_alive(teamkiller[id]) == 0 || get_cvar_num("dod_tkrevenge_forgiveslap") == 0){ client_print(0,print_chat,"[DoD TK Revenge] %s hugs %s and forgives the TeamKill!",victimname,killername) return PLUGIN_HANDLED } else if(is_user_alive(teamkiller[id]) == 1 && get_cvar_num("dod_tkrevenge_forgiveslap") == 1){ client_print(0,print_chat, "[DoD TK Revenge] %s slaps %s and forgives the TeamKill!",victimname,killername) user_slap(teamkiller[id],0) } } case 1: { if(is_user_alive(teamkiller[id]) == 0){ if(is_user_bot(teamkiller[id]) == 0){ if(nadetk[teamkiller[id]] == 0){ if(get_cvar_num("dod_tkrevenge_respawnslay") == 1){ respawnslay[teamkiller[id]] = 1 client_print(0,print_chat,"[DoD TK Revenge] %s will be slayed after respawn for TeamKilling %s!",killername,victimname) } else if(get_cvar_num("dod_tkrevenge_respawnslay") == 0){ client_print(0,print_chat,"[DoD TK Revenge] %s's TK-Count was increased for TeamKilling %s!",killername,victimname) } tkcount[teamkiller[id]]++ checktker(id) return PLUGIN_HANDLED } else if(nadetk[teamkiller[id]] == 1){ if(get_cvar_num("dod_tkrevenge_respawnslay") == 1){ respawnslay[teamkiller[id]] = 1 client_print(0,print_chat,"[DoD TK Revenge] %s will be slayed after respawn for TeamKilling %s!",killername,victimname) } else if(get_cvar_num("dod_tkrevenge_respawnslay") == 0){ client_print(id,print_chat,"[DoD TK Revenge] Sorry %s, but %s is already dead!",victimname,killername) } return PLUGIN_HANDLED } } else if(is_user_bot(teamkiller[id]) == 1){ client_print(id,print_chat,"[DoD TK Revenge] Sorry %s, but %s is already dead!",victimname,killername) } } else if(is_user_alive(teamkiller[id]) == 1){ client_print(0, print_chat, "[DoD TK Revenge] %s has slayed %s for TeamKilling!",victimname,killername) new killerid = teamkiller[id] kill_teamkiller(killerid) if(nadetk[teamkiller[id]] == 0 && is_user_bot(teamkiller[id]) == 0){ tkcount[teamkiller[id]]++ checktker(id) } } } } } if(get_cvar_num("dod_tkrevenge_options") == 3){ switch(key){ case 0: { if(is_user_alive(teamkiller[id]) == 0 || get_cvar_num("dod_tkrevenge_forgiveslap") == 0){ client_print(0,print_chat,"[DoD TK Revenge] %s hugs %s and forgives the TeamKill!",victimname,killername) return PLUGIN_HANDLED } else if(is_user_alive(teamkiller[id]) == 1 && get_cvar_num("dod_tkrevenge_forgiveslap") == 1){ client_print(0,print_chat, "[DoD TK Revenge] %s slaps %s and forgives the TeamKill!",victimname,killername) user_slap(teamkiller[id],0) } } case 1: { if(is_user_alive(teamkiller[id]) == 0){ client_print(id,print_chat,"[DoD TK Revenge] Sorry %s, %s is already dead!",victimname,killername) return PLUGIN_HANDLED } else if(is_user_alive(teamkiller[id]) == 1){ client_print(0, print_chat, "[DoD TK Revenge] %s slapped %s with 50percent health for TeamKilling",victimname,killername) new health = get_user_health(teamkiller[id]) new slappower = health/2 user_slap(teamkiller[id],slappower) } } case 2: { if(is_user_alive(teamkiller[id]) == 0){ if(is_user_bot(teamkiller[id]) == 0){ if(nadetk[teamkiller[id]] == 0){ if(get_cvar_num("dod_tkrevenge_respawnslay") == 1){ respawnslay[teamkiller[id]] = 1 client_print(0,print_chat,"[DoD TK Revenge] %s will be slayed after respawn for TeamKilling %s!",killername,victimname) } else if(get_cvar_num("dod_tkrevenge_respawnslay") == 0){ client_print(0,print_chat,"[DoD TK Revenge] %s's TK-Count was increased for TeamKilling %s!",killername,victimname) } tkcount[teamkiller[id]]++ checktker(id) return PLUGIN_HANDLED } else if(nadetk[teamkiller[id]] == 1){ if(get_cvar_num("dod_tkrevenge_respawnslay") == 1){ respawnslay[teamkiller[id]] = 1 client_print(0,print_chat,"[DoD TK Revenge] %s will be slayed after respawn for TeamKilling %s!",killername,victimname) } else if(get_cvar_num("dod_tkrevenge_respawnslay") == 0){ client_print(id,print_chat,"[DoD TK Revenge] Sorry %s, but %s is already dead!",victimname,killername) } return PLUGIN_HANDLED } } else if(is_user_bot(teamkiller[id]) == 1){ client_print(id,print_chat,"[DoD TK Revenge] Sorry %s, but %s is already dead!",victimname,killername) } } else if(is_user_alive(teamkiller[id]) == 1){ client_print(0, print_chat, "[DoD TK Revenge] %s has slayed %s for TeamKilling!",victimname,killername) new killerid = teamkiller[id] kill_teamkiller(killerid) if(nadetk[teamkiller[id]] == 0 && is_user_bot(teamkiller[id]) == 0){ tkcount[teamkiller[id]]++ checktker(id) } } } } } else if(get_cvar_num("dod_tkrevenge_options") == 4){ switch(key){ case 0: { if(is_user_alive(teamkiller[id]) == 0 || get_cvar_num("dod_tkrevenge_forgiveslap") == 0){ client_print(0,print_chat,"[DoD TK Revenge] %s hugs %s and forgives the TeamKill!",victimname,killername) return PLUGIN_HANDLED } else if(is_user_alive(teamkiller[id]) == 1 && get_cvar_num("dod_tkrevenge_forgiveslap") == 1){ client_print(0,print_chat, "[DoD TK Revenge] %s slaps %s and forgives the TeamKill!",victimname,killername) user_slap(teamkiller[id],0) } } case 1: { client_print(0,print_chat,"[DoD TK Revenge] %s did NOT forgive %s the TeamKill!",victimname,killername) if(nadetk[teamkiller[id]] == 0 && is_user_bot(teamkiller[id]) == 0){ tkcount[teamkiller[id]]++ checktker(id) } } } } return PLUGIN_HANDLED } public player_respawn(id){ if(tkillglow[id] == 1){ set_user_rendering(id,kRenderFxGlowShell,0,0, 0,kRenderNormal,25) tkillglow[id] = 0 } if(respawnslay[id] == 1){ new killerid = id respawnslay[id] = 0 new respawnname[32] get_user_name(id,respawnname,31) client_print(0,print_chat,"[DoD TK Revenge] %s has been slayed for his previous unforgiven TeamKill!",respawnname) set_task(0.1,"kill_teamkiller",killerid) return PLUGIN_CONTINUE } if(get_cvar_num("dod_tkrevenge_spawnprotect" ) == 1){ set_task(0.1,"get_spawnorigin",id) } spawned |
Bump!
|
Can someone change it to work on lan PLEASE!? :(
|
| All times are GMT -4. The time now is 20:26. |
Powered by vBulletin®
Copyright ©2000 - 2024, vBulletin Solutions, Inc.