mirror of
https://github.com/alliedmodders/amxmodx.git
synced 2024-12-25 06:15:37 +03:00
Moved to other dirs
This commit is contained in:
parent
027ae6dc7e
commit
227fb0411e
@ -1,61 +0,0 @@
|
|||||||
|
|
||||||
#if defined _csstats_included
|
|
||||||
#endinput
|
|
||||||
#endif
|
|
||||||
#define _csstats_included
|
|
||||||
|
|
||||||
/* Gets stats from given weapon index. If wpnindex is 0
|
|
||||||
* then the stats are from all weapons. If weapon has not been used function
|
|
||||||
* returns 0 in other case 1. Fields in stats are:
|
|
||||||
* 0 - kills
|
|
||||||
* 1 - deaths
|
|
||||||
* 2 - headshots
|
|
||||||
* 3 - teamkilling
|
|
||||||
* 4 - shots
|
|
||||||
* 5 - hits
|
|
||||||
* 6 - damage
|
|
||||||
|
|
||||||
* For body hits fields see amxconst.inc. */
|
|
||||||
native get_user_wstats(index,wpnindex,stats[8],bodyhits[8]);
|
|
||||||
|
|
||||||
/* Gets round stats from given weapon index.*/
|
|
||||||
native get_user_wrstats(index,wpnindex,stats[8],bodyhits[8]);
|
|
||||||
|
|
||||||
/* Gets overall stats which are stored in file on server
|
|
||||||
* and updated on every respawn or user disconnect.
|
|
||||||
* Function returns the position in stats by diff. kills to deaths. */
|
|
||||||
native get_user_stats(index,stats[8],bodyhits[8]);
|
|
||||||
|
|
||||||
/* Gets round stats of player. */
|
|
||||||
native get_user_rstats(index,stats[8],bodyhits[8]);
|
|
||||||
|
|
||||||
/* Gets stats with which user have killed/hurt his victim. If victim is 0
|
|
||||||
* then stats are from all victims. If victim has not been hurt, function
|
|
||||||
* returns 0 in other case 1. User stats are reset on his respawn. */
|
|
||||||
native get_user_vstats(index,victim,stats[8],bodyhits[8],wpnname[]="",len=0);
|
|
||||||
|
|
||||||
/* Gets stats with which user have been killed/hurt. If killer is 0
|
|
||||||
* then stats are from all attacks. If killer has not hurt user, function
|
|
||||||
* returns 0 in other case 1. User stats are reset on his respawn. */
|
|
||||||
native get_user_astats(index,wpnindex,stats[8],bodyhits[8],wpnname[]="",len=0);
|
|
||||||
|
|
||||||
/* Resets life, weapon, victims and attackers user stats. */
|
|
||||||
native reset_user_wstats(index);
|
|
||||||
|
|
||||||
/* Gets overall stats which stored in stats.dat file in amx folder
|
|
||||||
* and updated on every mapchange or user disconnect.
|
|
||||||
* Function returns next index of stats entry or 0 if no more exists. */
|
|
||||||
native get_stats(index,stats[8],bodyhits[8],name[],len);
|
|
||||||
|
|
||||||
/* Returns number of all entries in stats. */
|
|
||||||
native get_statsnum();
|
|
||||||
|
|
||||||
/*
|
|
||||||
* new stats:
|
|
||||||
* 0 - total defusions
|
|
||||||
* 1 - bomb defused
|
|
||||||
* 2 - bomb plants
|
|
||||||
* 3 - bomb explosions
|
|
||||||
*/
|
|
||||||
native get_user_stats2(index,stats[4]);
|
|
||||||
native get_stats2(index,stats[4]);
|
|
@ -1,59 +0,0 @@
|
|||||||
/* CSX functions
|
|
||||||
*
|
|
||||||
* (c) 2004, SidLuke
|
|
||||||
* This file is provided as is (no warranties).
|
|
||||||
*/
|
|
||||||
|
|
||||||
#if defined _csx_included
|
|
||||||
#endinput
|
|
||||||
#endif
|
|
||||||
#define _csx_included
|
|
||||||
|
|
||||||
#include <csstats>
|
|
||||||
|
|
||||||
/*
|
|
||||||
* Forwards
|
|
||||||
*/
|
|
||||||
|
|
||||||
/* Function is called after player to player attacks ,
|
|
||||||
* if players were damaged by teammate TA is set to 1 */
|
|
||||||
forward client_damage(attacker,victim,damage,wpnindex,hitplace,TA);
|
|
||||||
|
|
||||||
/* Function is called after player death ,
|
|
||||||
* if player was killed by teammate TK is set to 1 */
|
|
||||||
forward client_death(killer,victim,wpnindex,hitplace,TK);
|
|
||||||
|
|
||||||
forward grenade_throw( index,greindex,wId );
|
|
||||||
|
|
||||||
forward bomb_planting(planter);
|
|
||||||
forward bomb_planted(planter);
|
|
||||||
forward bomb_explode(planter,defuser);
|
|
||||||
forward bomb_defusing(defuser);
|
|
||||||
forward bomb_defused(defuser);
|
|
||||||
|
|
||||||
/************* Shared Natives Start ********************************/
|
|
||||||
|
|
||||||
/* Custom Weapon Support */
|
|
||||||
/* function will return index of new weapon */
|
|
||||||
native custom_weapon_add( wpnname[],melee = 0,logname[]="" );
|
|
||||||
/* Function will pass damage done by this custom weapon to stats module and other plugins */
|
|
||||||
native custom_weapon_dmg( weapon, att, vic, damage, hitplace=0 );
|
|
||||||
/* Function will pass info about custom weapon shot to stats module */
|
|
||||||
native custom_weapon_shot( weapon,index ); // weapon id , player id
|
|
||||||
|
|
||||||
/* function will return 1 if true */
|
|
||||||
native xmod_is_melee_wpn(wpnindex);
|
|
||||||
|
|
||||||
/* Returns weapon name. */
|
|
||||||
native xmod_get_wpnname(wpnindex,name[],len);
|
|
||||||
|
|
||||||
/* Returns weapon logname. */
|
|
||||||
native xmod_get_wpnlogname(wpnindex,name[],len);
|
|
||||||
|
|
||||||
/* Returns weapons array size */
|
|
||||||
native xmod_get_maxweapons();
|
|
||||||
|
|
||||||
/* Returns stats array size */
|
|
||||||
native xmod_get_stats_size();
|
|
||||||
|
|
||||||
/************* Shared Natives End ********************************/
|
|
@ -1,515 +0,0 @@
|
|||||||
/* AMX Mod X
|
|
||||||
* Misc. Stats Plugin
|
|
||||||
*
|
|
||||||
* by the AMX Mod X Development Team
|
|
||||||
* originally developed by OLO
|
|
||||||
*
|
|
||||||
* This file is part of AMX Mod X.
|
|
||||||
*
|
|
||||||
*
|
|
||||||
* 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
|
|
||||||
*
|
|
||||||
* In addition, as a special exception, the author gives permission to
|
|
||||||
* link the code of this program with the Half-Life Game Engine ("HL
|
|
||||||
* Engine") and Modified Game Libraries ("MODs") developed by Valve,
|
|
||||||
* L.L.C ("Valve"). You must obey the GNU General Public License in all
|
|
||||||
* respects for all of the code used other than the HL Engine and MODs
|
|
||||||
* from Valve. If you modify this file, you may extend this exception
|
|
||||||
* to your version of the file, but you are not obligated to do so. If
|
|
||||||
* you do not wish to do so, delete this exception statement from your
|
|
||||||
* version.
|
|
||||||
*/
|
|
||||||
|
|
||||||
#include <amxmodx>
|
|
||||||
|
|
||||||
public MultiKill
|
|
||||||
public MultiKillSound
|
|
||||||
public BombPlanting
|
|
||||||
public BombDefusing
|
|
||||||
public BombPlanted
|
|
||||||
public BombDefused
|
|
||||||
public BombFailed
|
|
||||||
public BombPickUp
|
|
||||||
public BombDrop
|
|
||||||
public BombCountVoice
|
|
||||||
public BombCountDef
|
|
||||||
public BombReached
|
|
||||||
public ItalyBonusKill
|
|
||||||
public EnemyRemaining
|
|
||||||
public LastMan
|
|
||||||
public KnifeKill
|
|
||||||
public KnifeKillSound
|
|
||||||
public GrenadeKill
|
|
||||||
public GrenadeSuicide
|
|
||||||
public HeadShotKill
|
|
||||||
public HeadShotKillSound
|
|
||||||
public RoundCounterSound
|
|
||||||
public RoundCounter
|
|
||||||
public KillingStreak
|
|
||||||
public KillingStreakSound
|
|
||||||
public DoubleKill
|
|
||||||
public DoubleKillSound
|
|
||||||
public PlayerName
|
|
||||||
public FirstBloodSound
|
|
||||||
|
|
||||||
new g_streakKills[33][2]
|
|
||||||
new g_multiKills[33][2]
|
|
||||||
new g_C4Timer
|
|
||||||
new g_Defusing
|
|
||||||
new g_Planter
|
|
||||||
new Float:g_LastOmg
|
|
||||||
new g_LastAnnounce
|
|
||||||
new g_roundCount
|
|
||||||
new Float:g_doubleKill
|
|
||||||
new g_doubleKillId
|
|
||||||
new g_friend[33]
|
|
||||||
new g_firstBlood
|
|
||||||
|
|
||||||
new g_MultiKillMsg[7][] = {
|
|
||||||
"Multi-Kill! %s^n%L %d %L (%d %L)",
|
|
||||||
"Ultra-Kill!!! %s^n%L %d %L (%d %L)",
|
|
||||||
"%s IS ON A KILLING SPREE!!!^n%L %d %L (%d %L)",
|
|
||||||
"RAMPAGE!!! %s^n%L %d %L (%d hs)" ,
|
|
||||||
"%s IS UNSTOPPABLE!!!^n%L %d %L (%d %L)",
|
|
||||||
"%s IS A MONSTER!^n%L %d %L (%d %L)",
|
|
||||||
"%s IS GODLIKE!!!!^n%L %d %L (%d %L)"
|
|
||||||
}
|
|
||||||
new g_Sounds[7][] = {
|
|
||||||
"multikill",
|
|
||||||
"ultrakill",
|
|
||||||
"killingspree",
|
|
||||||
"rampage",
|
|
||||||
"unstoppable",
|
|
||||||
"monsterkill",
|
|
||||||
"godlike"
|
|
||||||
}
|
|
||||||
new g_KillingMsg[7][] = {
|
|
||||||
"%s: Multi-Kill!",
|
|
||||||
"%s: Ultra-Kill!!!",
|
|
||||||
"%s IS ON A KILLING SPREE!!!",
|
|
||||||
"%s: RAMPAGE!!!",
|
|
||||||
"%s IS UNSTOPPABLE!!!",
|
|
||||||
"%s IS A MONSTER!",
|
|
||||||
"%s IS GODLIKE!!!"
|
|
||||||
}
|
|
||||||
new g_KinfeMsg[4][] = {
|
|
||||||
"KNIFE_MSG_1",
|
|
||||||
"KNIFE_MSG_2",
|
|
||||||
"KNIFE_MSG_3",
|
|
||||||
"KNIFE_MSG_4"
|
|
||||||
}
|
|
||||||
new g_LastMessages[4][] = {
|
|
||||||
"LAST_MSG_1",
|
|
||||||
"LAST_MSG_2",
|
|
||||||
"LAST_MSG_3",
|
|
||||||
"LAST_MSG_4"
|
|
||||||
}
|
|
||||||
new g_HeMessages[4][] = {
|
|
||||||
"HE_MSG_1",
|
|
||||||
"HE_MSG_2",
|
|
||||||
"HE_MSG_3",
|
|
||||||
"HE_MSG_4"
|
|
||||||
}
|
|
||||||
new g_SHeMessages[4][] = {
|
|
||||||
"SHE_MSG_1",
|
|
||||||
"SHE_MSG_2",
|
|
||||||
"SHE_MSG_3",
|
|
||||||
"SHE_MSG_4"
|
|
||||||
}
|
|
||||||
new g_HeadShots[7][] = {
|
|
||||||
"HS_MSG_1",
|
|
||||||
"HS_MSG_2",
|
|
||||||
"HS_MSG_3",
|
|
||||||
"HS_MSG_4",
|
|
||||||
"HS_MSG_5",
|
|
||||||
"HS_MSG_6",
|
|
||||||
"HS_MSG_7"
|
|
||||||
}
|
|
||||||
|
|
||||||
new g_teamsNames[4][] = {
|
|
||||||
"TERRORIST",
|
|
||||||
"CT",
|
|
||||||
"TERRORISTS",
|
|
||||||
"CTS"
|
|
||||||
}
|
|
||||||
|
|
||||||
public plugin_init() {
|
|
||||||
register_plugin("CS Misc. Stats",AMXX_VERSION_STR,"AMXX Dev Team")
|
|
||||||
register_dictionary("miscstats.txt")
|
|
||||||
register_event("TextMsg","eRestart","a","2&#Game_C","2&#Game_w")
|
|
||||||
register_event("SendAudio", "eEndRound", "a", "2&%!MRAD_terwin","2&%!MRAD_ctwin","2&%!MRAD_rounddraw")
|
|
||||||
register_event("RoundTime", "eNewRound", "bc")
|
|
||||||
register_event("StatusValue","setTeam","be","1=1")
|
|
||||||
register_event("StatusValue","showStatus","be","1=2","2!0")
|
|
||||||
register_event("StatusValue","hideStatus","be","1=1","2=0")
|
|
||||||
new mapname[32]
|
|
||||||
get_mapname(mapname,31)
|
|
||||||
if (equali(mapname,"de_",3)||equali(mapname,"csde_",5)) {
|
|
||||||
register_event("StatusIcon", "eGotBomb", "be", "1=1", "1=2", "2=c4")
|
|
||||||
register_event("TextMsg", "eBombPickUp", "bc", "2&#Got_bomb")
|
|
||||||
register_event("TextMsg", "eBombDrop", "bc", "2&#Game_bomb_d")
|
|
||||||
}
|
|
||||||
else if ( equali( mapname , "cs_italy" ) ) {
|
|
||||||
register_event( "23" , "chickenKill", "a" , "1=108" , /*"12=106",*/ "15=4" )
|
|
||||||
register_event( "23" , "radioKill", "a" , "1=108" , /*"12=294",*/ "15=2" )
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
public plugin_cfg() {
|
|
||||||
new g_addStast[] = "amx_statscfg add ^"%s^" %s"
|
|
||||||
server_cmd(g_addStast,"MultiKill","MultiKill")
|
|
||||||
server_cmd(g_addStast,"MultiKillSound","MultiKillSound")
|
|
||||||
server_cmd(g_addStast,"Bomb Planting","BombPlanting")
|
|
||||||
server_cmd(g_addStast,"Bomb Defusing","BombDefusing")
|
|
||||||
server_cmd(g_addStast,"Bomb Planted","BombPlanted")
|
|
||||||
server_cmd(g_addStast,"Bomb Defuse Succ.","BombDefused")
|
|
||||||
server_cmd(g_addStast,"Bomb Def. Failure","BombFailed")
|
|
||||||
server_cmd(g_addStast,"Bomb PickUp","BombPickUp")
|
|
||||||
server_cmd(g_addStast,"Bomb Drop","BombDrop")
|
|
||||||
server_cmd(g_addStast,"Bomb Count Down","BombCountVoice")
|
|
||||||
server_cmd(g_addStast,"Bomb Count Down (def)","BombCountDef")
|
|
||||||
server_cmd(g_addStast,"Bomb Site Reached","BombReached")
|
|
||||||
server_cmd(g_addStast,"Italy Bonus Kill","ItalyBonusKill")
|
|
||||||
server_cmd(g_addStast,"Last Man","LastMan")
|
|
||||||
server_cmd(g_addStast,"Knife Kill","KnifeKill")
|
|
||||||
server_cmd(g_addStast,"Knife Kill Sound","KnifeKillSound")
|
|
||||||
server_cmd(g_addStast,"Grenade Kill","GrenadeKill")
|
|
||||||
server_cmd(g_addStast,"Grenade Suicide","GrenadeSuicide")
|
|
||||||
server_cmd(g_addStast,"HeadShot Kill","HeadShotKill")
|
|
||||||
server_cmd(g_addStast,"HeadShot Kill Sound","HeadShotKillSound")
|
|
||||||
server_cmd(g_addStast,"Round Counter","RoundCounter")
|
|
||||||
server_cmd(g_addStast,"Round Counter Sound","RoundCounterSound")
|
|
||||||
server_cmd(g_addStast,"Killing Streak","KillingStreak")
|
|
||||||
server_cmd(g_addStast,"Killing Streak Sound","KillingStreakSound")
|
|
||||||
server_cmd(g_addStast,"Enemy Remaining","EnemyRemaining")
|
|
||||||
server_cmd(g_addStast,"Double Kill","DoubleKill")
|
|
||||||
server_cmd(g_addStast,"Double Kill Sound","DoubleKillSound")
|
|
||||||
server_cmd(g_addStast,"Player Name","PlayerName")
|
|
||||||
server_cmd(g_addStast,"First Blood Sound","FirstBloodSound")
|
|
||||||
}
|
|
||||||
|
|
||||||
public client_putinserver(id)
|
|
||||||
g_multiKills[id] = g_streakKills[ id ] = { 0 , 0 }
|
|
||||||
|
|
||||||
public client_death(killer,victim,wpnindex,hitplace,TK) {
|
|
||||||
|
|
||||||
new headshot = ( hitplace == HIT_HEAD ) ? 1:0
|
|
||||||
|
|
||||||
if ( g_firstBlood ) {
|
|
||||||
g_firstBlood = 0
|
|
||||||
if ( FirstBloodSound ) client_cmd(0,"spk misc/firstblood")
|
|
||||||
}
|
|
||||||
if ( (KillingStreak || KillingStreakSound) && !TK ) {
|
|
||||||
g_streakKills[ killer ][ 0 ]++
|
|
||||||
g_streakKills[ killer ][ 1 ] = 0
|
|
||||||
g_streakKills[ victim ][ 1 ]++
|
|
||||||
g_streakKills[ victim ][ 0 ] = 0
|
|
||||||
new a = g_streakKills[ killer ][ 0 ] - 3
|
|
||||||
if ( (a > -1) && !( a % 2 ) ) {
|
|
||||||
new name[32]
|
|
||||||
get_user_name( killer , name , 31 )
|
|
||||||
if ( (a >>= 1) > 6 ) a = 6
|
|
||||||
if ( KillingStreak ){
|
|
||||||
set_hudmessage(0, 100, 255, 0.05, 0.55, 2, 0.02, 6.0, 0.01, 0.1, 3)
|
|
||||||
show_hudmessage(0,g_KillingMsg[ a ], name )
|
|
||||||
}
|
|
||||||
if ( KillingStreakSound ) client_cmd( 0, "spk misc/%s", g_Sounds[ a ] )
|
|
||||||
}
|
|
||||||
}
|
|
||||||
if ( MultiKill || MultiKillSound ) {
|
|
||||||
if (killer && !TK ) {
|
|
||||||
g_multiKills[killer][0]++
|
|
||||||
g_multiKills[killer][1] += headshot
|
|
||||||
new param[2]
|
|
||||||
param[0] = killer
|
|
||||||
param[1] = g_multiKills[killer][0]
|
|
||||||
set_task( 4.0 + float( param[1] ) ,"checkKills",0,param,2)
|
|
||||||
}
|
|
||||||
}
|
|
||||||
if ( EnemyRemaining ) {
|
|
||||||
new ppl[32], pplnum
|
|
||||||
new team = get_user_team( victim ) - 1
|
|
||||||
get_players(ppl,pplnum,"e", g_teamsNames[1 - team] )
|
|
||||||
if (pplnum) {
|
|
||||||
new eppl[32], epplnum
|
|
||||||
get_players(eppl,epplnum,"ae",g_teamsNames[team])
|
|
||||||
if (epplnum) {
|
|
||||||
new message[128],team_name[32]
|
|
||||||
set_hudmessage(255,255,255,0.02,0.85,2, 0.05, 0.1, 0.02, 3.0, 3)
|
|
||||||
for(new a=0; a<pplnum; ++a){
|
|
||||||
format(team_name,31,"%L",ppl[a],(epplnum==1)?g_teamsNames[team]:g_teamsNames[team+2])
|
|
||||||
format(message,127,"%L",ppl[a],"REMAINING",epplnum,team_name)
|
|
||||||
show_hudmessage(ppl[a],message)
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
if ( LastMan ) {
|
|
||||||
new cts[32], ts[32], ctsnum, tsnum
|
|
||||||
get_players(cts,ctsnum,"ae", g_teamsNames[1] )
|
|
||||||
get_players(ts,tsnum,"ae", g_teamsNames[0] )
|
|
||||||
if ( ctsnum == 1 && tsnum == 1 ) {
|
|
||||||
new ctname[32], tname[32]
|
|
||||||
get_user_name(cts[0],ctname,31)
|
|
||||||
get_user_name(ts[0],tname,31)
|
|
||||||
set_hudmessage(0, 255, 255, -1.0, 0.35, 0, 6.0, 6.0, 0.5, 0.15, 3)
|
|
||||||
show_hudmessage(0,"%s vs. %s",ctname,tname)
|
|
||||||
client_cmd(0,"spk misc/maytheforce")
|
|
||||||
}
|
|
||||||
else if ( !g_LastAnnounce ) {
|
|
||||||
new oposite = 0, team = 0
|
|
||||||
if ( ctsnum == 1 && tsnum > 1 ) {
|
|
||||||
g_LastAnnounce = cts[0]
|
|
||||||
oposite = tsnum
|
|
||||||
team = 0
|
|
||||||
}
|
|
||||||
else if ( tsnum == 1 && ctsnum > 1 ) {
|
|
||||||
g_LastAnnounce = ts[0]
|
|
||||||
oposite = ctsnum
|
|
||||||
team = 1
|
|
||||||
}
|
|
||||||
if (g_LastAnnounce) {
|
|
||||||
new name[32]
|
|
||||||
get_user_name(g_LastAnnounce,name,31)
|
|
||||||
set_hudmessage(0, 255, 255, -1.0, 0.35, 0, 6.0, 6.0, 0.5, 0.15, 3)
|
|
||||||
show_hudmessage(0,"%s (%d HP) vs. %d %s%s: %L",name,
|
|
||||||
get_user_health(g_LastAnnounce),oposite,
|
|
||||||
g_teamsNames[team],(oposite==1)?"":"S",LANG_PLAYER,g_LastMessages[ random_num(0,3) ] )
|
|
||||||
client_cmd(g_LastAnnounce,"spk misc/oneandonly")
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
if ( wpnindex == 29 && ( KnifeKill || KnifeKillSound ) ) {
|
|
||||||
if ( KnifeKill ) {
|
|
||||||
new killer_name[32],victim_name[32]
|
|
||||||
get_user_name(killer,killer_name,31)
|
|
||||||
get_user_name(victim,victim_name,31)
|
|
||||||
set_hudmessage(255, 100, 100, -1.0, 0.25, 1, 6.0, 6.0, 0.5, 0.15, 1)
|
|
||||||
show_hudmessage(0,"%L",LANG_PLAYER,g_KinfeMsg[ random_num(0,3) ],killer_name,victim_name)
|
|
||||||
}
|
|
||||||
if ( KnifeKillSound ) client_cmd(0,"spk misc/humiliation")
|
|
||||||
}
|
|
||||||
|
|
||||||
if ( wpnindex == 4 && (GrenadeKill || GrenadeSuicide) ) {
|
|
||||||
new killer_name[32],victim_name[32]
|
|
||||||
get_user_name(killer,killer_name,32)
|
|
||||||
get_user_name(victim,victim_name,32)
|
|
||||||
set_hudmessage(255, 100, 100, -1.0, 0.25, 1, 6.0, 6.0, 0.5, 0.15, 1)
|
|
||||||
if ( killer != victim ) {
|
|
||||||
if ( GrenadeKill ) show_hudmessage(0,"%L",LANG_PLAYER,g_HeMessages[ random_num(0,3)],killer_name,victim_name)
|
|
||||||
}
|
|
||||||
else if ( GrenadeSuicide ) show_hudmessage(0,"%L",LANG_PLAYER,g_SHeMessages[ random_num(0,3) ],victim_name)
|
|
||||||
}
|
|
||||||
if ( headshot && (HeadShotKill || HeadShotKillSound) ) {
|
|
||||||
if ( HeadShotKill ) {
|
|
||||||
new killer_name[32], victim_name[32], weapon_name[32], message[128], players[32], pnum
|
|
||||||
get_weaponname(wpnindex,weapon_name,31)
|
|
||||||
get_user_name(killer,killer_name,31)
|
|
||||||
get_user_name(victim,victim_name,31)
|
|
||||||
|
|
||||||
get_players(players,pnum,"c")
|
|
||||||
for (new i=0;i<pnum;i++) {
|
|
||||||
format( message, 127, "%L",players[i],g_HeadShots[ random_num(0,6) ] )
|
|
||||||
replace( message, 127 , "$vn", victim_name )
|
|
||||||
replace( message, 127 , "$wn", weapon_name )
|
|
||||||
replace( message, 127 , "$kn", killer_name )
|
|
||||||
set_hudmessage(100, 100, 255, -1.0, 0.29, 0, 6.0, 6.0, 0.5, 0.15, 1)
|
|
||||||
show_hudmessage(players[i],message )
|
|
||||||
}
|
|
||||||
}
|
|
||||||
if ( HeadShotKillSound ) {
|
|
||||||
client_cmd(killer,"spk misc/headshot")
|
|
||||||
client_cmd(victim,"spk misc/headshot")
|
|
||||||
}
|
|
||||||
}
|
|
||||||
if ( DoubleKill || DoubleKillSound ) {
|
|
||||||
new Float:nowtime = get_gametime()
|
|
||||||
if ( g_doubleKill == nowtime && g_doubleKillId == killer ) {
|
|
||||||
if ( DoubleKill ) {
|
|
||||||
new name[32]
|
|
||||||
get_user_name( killer , name , 31 )
|
|
||||||
set_hudmessage(255, 0, 255, -1.0, 0.35, 0, 6.0, 6.0, 0.5, 0.15, 3)
|
|
||||||
show_hudmessage(0,"%L",LANG_PLAYER,"DOUBLE_KILL",name )
|
|
||||||
}
|
|
||||||
if ( DoubleKillSound ) client_cmd(0,"spk misc/doublekill")
|
|
||||||
}
|
|
||||||
g_doubleKill = nowtime
|
|
||||||
g_doubleKillId = killer
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
public hideStatus(id) {
|
|
||||||
if ( PlayerName ) {
|
|
||||||
set_hudmessage(0,0,0,0.0,0.0,0, 0.0, 0.01, 0.0, 0.0, 4)
|
|
||||||
show_hudmessage(id,"")
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
public setTeam(id)
|
|
||||||
g_friend[id] = read_data(2)
|
|
||||||
|
|
||||||
public showStatus(id) {
|
|
||||||
if ( PlayerName ) {
|
|
||||||
new name[32],pid = read_data(2)
|
|
||||||
get_user_name(pid,name,31)
|
|
||||||
new color1 = 0,color2 = 0
|
|
||||||
if ( get_user_team(pid)==1 )
|
|
||||||
color1 = 255
|
|
||||||
else
|
|
||||||
color2 = 255
|
|
||||||
if (g_friend[id]==1) { // friend
|
|
||||||
new clip, ammo, wpnid = get_user_weapon(pid,clip,ammo)
|
|
||||||
new wpnname[32]
|
|
||||||
get_weaponname(wpnid,wpnname,31)
|
|
||||||
set_hudmessage(color1,50,color2,-1.0,0.60,1, 0.01, 3.0, 0.01, 0.01, 4)
|
|
||||||
show_hudmessage(id,"%s -- %d HP / %d AP / %s",name,
|
|
||||||
get_user_health(pid),get_user_armor(pid),wpnname[7])
|
|
||||||
}
|
|
||||||
else {
|
|
||||||
set_hudmessage(color1,50,color2,-1.0,0.60,1, 0.01, 3.0, 0.01, 0.01, 4)
|
|
||||||
show_hudmessage(id,name)
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
public eNewRound()
|
|
||||||
if ( read_data(1) == floatround(get_cvar_float("mp_roundtime") * 60.0) ) {
|
|
||||||
g_firstBlood = 1
|
|
||||||
g_C4Timer = 0
|
|
||||||
++g_roundCount
|
|
||||||
if ( RoundCounter ) {
|
|
||||||
set_hudmessage(200, 0, 0, -1.0, 0.30, 0, 6.0, 6.0, 0.5, 0.15, 1)
|
|
||||||
show_hudmessage(0, "%L", LANG_PLAYER, "PREPARE_FIGHT", g_roundCount )
|
|
||||||
}
|
|
||||||
if ( RoundCounterSound ) client_cmd( 0 , "spk misc/prepare" )
|
|
||||||
if ( KillingStreak ) {
|
|
||||||
new appl[32],ppl, i
|
|
||||||
get_players(appl,ppl, "ac" )
|
|
||||||
for (new a = 0; a < ppl; ++a) {
|
|
||||||
i = appl[ a ]
|
|
||||||
if ( g_streakKills[ i ][ 0 ] >= 2 )
|
|
||||||
client_print( i , print_chat , "* %L", i, "KILLED_ROW", g_streakKills[ i ][ 0 ] )
|
|
||||||
else if ( g_streakKills[ i ][ 1 ] >= 2 )
|
|
||||||
client_print( i , print_chat , "* %L", i, "DIED_ROUNDS", g_streakKills[ i ][ 1 ] )
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
public eRestart() {
|
|
||||||
eEndRound()
|
|
||||||
g_roundCount = 0
|
|
||||||
g_firstBlood = 1
|
|
||||||
}
|
|
||||||
|
|
||||||
public eEndRound() {
|
|
||||||
g_C4Timer = -2
|
|
||||||
g_LastOmg = 0.0
|
|
||||||
remove_task(8038)
|
|
||||||
g_LastAnnounce = 0
|
|
||||||
}
|
|
||||||
|
|
||||||
public checkKills(param[]) {
|
|
||||||
new id = param[0]
|
|
||||||
new a = param[1]
|
|
||||||
if (a == g_multiKills[id][0]) {
|
|
||||||
a -= 3
|
|
||||||
if ( a > -1 ) {
|
|
||||||
if ( MultiKill ) {
|
|
||||||
new name[32]
|
|
||||||
get_user_name(id,name,31)
|
|
||||||
set_hudmessage(255, 0, 100, 0.05, 0.65, 2, 0.02, 6.0, 0.01, 0.1, 2)
|
|
||||||
if ( a > 6 ) a = 6
|
|
||||||
show_hudmessage(0,g_MultiKillMsg[a],name,LANG_PLAYER,"WITH",g_multiKills[id][0],LANG_PLAYER,"KILLS",g_multiKills[id][1],LANG_PLAYER,"HS")
|
|
||||||
}
|
|
||||||
if ( MultiKillSound ) client_cmd(0,"spk misc/%s",g_Sounds[a])
|
|
||||||
}
|
|
||||||
g_multiKills[id] = { 0,0 }
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
public chickenKill()
|
|
||||||
if ( ItalyBonusKill ) announceEvent( 0 , "KILLED_CHICKEN" )
|
|
||||||
|
|
||||||
public radioKill() {
|
|
||||||
if ( ItalyBonusKill ) announceEvent( 0 , "BLEW_RADIO" )
|
|
||||||
}
|
|
||||||
|
|
||||||
announceEvent( id, message[] ) {
|
|
||||||
new name[32]
|
|
||||||
get_user_name(id, name , 31)
|
|
||||||
set_hudmessage(255, 100, 50, -1.0, 0.30, 0, 6.0, 6.0, 0.5, 0.15, 1)
|
|
||||||
show_hudmessage(0,"%L",LANG_PLAYER,message,name)
|
|
||||||
}
|
|
||||||
|
|
||||||
public eBombPickUp(id)
|
|
||||||
if (BombPickUp) announceEvent(id , "PICKED_BOMB")
|
|
||||||
|
|
||||||
public eBombDrop()
|
|
||||||
if (BombDrop) announceEvent(g_Planter , "DROPPED_BOMB")
|
|
||||||
|
|
||||||
public eGotBomb(id) {
|
|
||||||
g_Planter = id
|
|
||||||
if ( BombReached && read_data(1)==2 && g_LastOmg<get_gametime()) {
|
|
||||||
g_LastOmg = get_gametime() + 15.0
|
|
||||||
announceEvent(g_Planter, "REACHED_TARGET" )
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
public bombTimer() {
|
|
||||||
if (--g_C4Timer > 0) {
|
|
||||||
if (BombCountVoice) {
|
|
||||||
if (g_C4Timer == 30 || g_C4Timer == 20) {
|
|
||||||
new temp[48]
|
|
||||||
num_to_word(g_C4Timer,temp,47)
|
|
||||||
client_cmd(0,"spk ^"vox/%s seconds until explosion^"",temp)
|
|
||||||
}
|
|
||||||
else if (g_C4Timer < 11) {
|
|
||||||
new temp[48]
|
|
||||||
num_to_word(g_C4Timer,temp,47)
|
|
||||||
client_cmd(0,"spk ^"vox/%s^"",temp)
|
|
||||||
}
|
|
||||||
}
|
|
||||||
if (BombCountDef && g_Defusing) client_print(g_Defusing,print_center,"%d",g_C4Timer)
|
|
||||||
}
|
|
||||||
else remove_task(8038)
|
|
||||||
}
|
|
||||||
|
|
||||||
public bomb_planted(planter){
|
|
||||||
g_Defusing = 0
|
|
||||||
if (BombPlanted) announceEvent(planter, "SET_UP_BOMB" )
|
|
||||||
g_C4Timer = get_cvar_num("mp_c4timer")
|
|
||||||
set_task(1.0,"bombTimer",8038,"",0,"b")
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
public bomb_planting(planter)
|
|
||||||
if (BombPlanting) announceEvent(planter, "PLANT_BOMB" )
|
|
||||||
|
|
||||||
public bomb_defusing(defuser){
|
|
||||||
if (BombDefusing) announceEvent(defuser, "DEFUSING_BOMB" )
|
|
||||||
g_Defusing = defuser
|
|
||||||
}
|
|
||||||
|
|
||||||
public bomb_defused(defuser)
|
|
||||||
if (BombDefused) announceEvent(defuser, "DEFUSED_BOMB" )
|
|
||||||
|
|
||||||
public bomb_explode(planter,defuser)
|
|
||||||
if (BombFailed && defuser) announceEvent(defuser , "FAILED_DEFU" )
|
|
||||||
|
|
||||||
public plugin_modules()
|
|
||||||
{
|
|
||||||
require_module("csx")
|
|
||||||
}
|
|
@ -1,93 +0,0 @@
|
|||||||
[en]
|
|
||||||
WITH = with
|
|
||||||
KNIFE_MSG_1 = %s sliced and diced %s
|
|
||||||
KNIFE_MSG_2 = %s pulled out knife and gutted %s
|
|
||||||
KNIFE_MSG_3 = %s sneaks carefully behind and knifed %s
|
|
||||||
KNIFE_MSG_4 = %s knived %s
|
|
||||||
LAST_MSG_1 = Now all depend on you!
|
|
||||||
LAST_MSG_2 = I hope you still have a healthpack.
|
|
||||||
LAST_MSG_3 = All your teammates were killed. Good luck!
|
|
||||||
LAST_MSG_4 = Now you are alone. Have fun!
|
|
||||||
HE_MSG_1 = %s sends a little gift to %s
|
|
||||||
HE_MSG_2 = %s throws a small present to %s
|
|
||||||
HE_MSG_3 = %s made a precision throw to %s
|
|
||||||
HE_MSG_4 = %s got a big explosion for %s
|
|
||||||
SHE_MSG_1 = %s detonated himself with a grenade
|
|
||||||
SHE_MSG_2 = %s trys the effect of an HE Grenade
|
|
||||||
SHE_MSG_3 = %s swallows grenades whole!
|
|
||||||
SHE_MSG_4 = %s explodes!
|
|
||||||
HS_MSG_1 = $kn killed $vn with a well^nplaced shot to the head!
|
|
||||||
HS_MSG_2 = $kn removed $vn's^nhead with the $wn
|
|
||||||
HS_MSG_3 = $kn turned $vn's head^ninto pudding with the $wn
|
|
||||||
HS_MSG_4 = $vn got pwned by $kn
|
|
||||||
HS_MSG_5 = $vn's head has been^nturned into red jello
|
|
||||||
HS_MSG_6 = $kn has superb aim with the $wn,^nas $vn well knows.
|
|
||||||
HS_MSG_7 = $vn's head stayed in $kn's^ncrosshairs a bit too long...
|
|
||||||
DOUBLE_KILL = Wow! %s made a double kill!!!
|
|
||||||
PREPARE_FIGHT = Prepare to FIGHT!^nRound %d
|
|
||||||
KILLED_ROW = You've killed %d in a row so far
|
|
||||||
DIED_ROUNDS = Careful! You've died %d rounds in a row now...
|
|
||||||
KILLED_CHICKEN = Somebody killed a chicken!!!
|
|
||||||
BLEW_RADIO = Somebody blew up the radio!!!
|
|
||||||
REACHED_TARGET = Omg! %s reached the target!
|
|
||||||
PLANT_BOMB = %s is planting the bomb!
|
|
||||||
DEFUSING_BOMB = %s is defusing the bomb...
|
|
||||||
SET_UP_BOMB = %s set us up the bomb!!!
|
|
||||||
DEFUSED_BOMB = %s defused the bomb!
|
|
||||||
FAILED_DEFU = %s failed to defuse the bomb...
|
|
||||||
PICKED_BOMB = %s picked up the bomb...
|
|
||||||
DROPPED_BOMB = %s dropped the bomb!!!
|
|
||||||
CT = CT
|
|
||||||
CTS = CTS
|
|
||||||
TERRORIST = TERRORIST
|
|
||||||
TERRORISTS = TERRORISTS
|
|
||||||
REMAINING = %d %s Remaining...
|
|
||||||
KILLS = kills
|
|
||||||
HS = hs
|
|
||||||
|
|
||||||
[pl]
|
|
||||||
WITH = z
|
|
||||||
KNIFE_MSG_1 = %s pokroil na plasterki %s
|
|
||||||
KNIFE_MSG_2 = Doktor %s zoperowal nozem %s. ^nNiestety pacjent zmarl.
|
|
||||||
KNIFE_MSG_3 = %s wycial scyzorykiem serce %s
|
|
||||||
KNIFE_MSG_4 = %s uzyl noza na %s
|
|
||||||
LAST_MSG_1 = Cala reszta kibicuje ci zza grobu.
|
|
||||||
LAST_MSG_2 = Wyglada na to, ze kumple cie zostawili...
|
|
||||||
LAST_MSG_3 = Tylko tobie zycie sie nie znudzilo. Narazie...
|
|
||||||
LAST_MSG_4 = Czy zauwazyles ze poluja juz tylko na ciebie?
|
|
||||||
HE_MSG_1 = %s wyslal prezent do %s
|
|
||||||
HE_MSG_2 = %s rzucil conieco do %s
|
|
||||||
HE_MSG_3 = %s celnie rzucil w kierunku %s
|
|
||||||
HE_MSG_4 = %s zrobil duze bum dla %s
|
|
||||||
SHE_MSG_1 = %s rozwalil sie za pomoca granata
|
|
||||||
SHE_MSG_2 = %s dowiedzial sie co to granat
|
|
||||||
SHE_MSG_3 = %s jest kamikaze
|
|
||||||
SHE_MSG_4 = %s odlecial na 3 metry
|
|
||||||
HS_MSG_1 = $kn zrobil $vn trzecie oko!
|
|
||||||
HS_MSG_2 = $kn pozbawil $vn^nglowy z niewielka pomoca $wn
|
|
||||||
HS_MSG_3 = $vn zawdziecza $kn brak glowy
|
|
||||||
HS_MSG_4 = $vn zalozyl sie o glowe z kn^ni przegral...
|
|
||||||
HS_MSG_5 = $kn przekonal sie ze $vn cos jednak w glowie mial.
|
|
||||||
HS_MSG_6 = Lowca glow $kn dziekuje $vn za kolejne trofeum.
|
|
||||||
HS_MSG_7 = $vn nie ma glowy do tej gry.
|
|
||||||
DOUBLE_KILL = WoW! %s zabil od razu dwoch !
|
|
||||||
PREPARE_FIGHT = Przygotuj sie!^nRunda %d
|
|
||||||
KILLED_ROW = Zabiles %d razy pod rzad jak narazie
|
|
||||||
DIED_ROUNDS = Uwazaj! Zginales %d rund(y) pod rzad...
|
|
||||||
KILLED_CHICKEN = Ktos zabil kurczaka!!!
|
|
||||||
BLEW_RADIO = Ktos wysadzil radio!!!
|
|
||||||
REACHED_TARGET = O boshe! %s dostal sie do celu!
|
|
||||||
PLANT_BOMB = %s podklada bombe!
|
|
||||||
DEFUSING_BOMB = %s rozbraja bombe...
|
|
||||||
SET_UP_BOMB = %s nastawil bombe!!!
|
|
||||||
DEFUSED_BOMB = %s rozbroil bombe!
|
|
||||||
FAILED_DEFU = %s nie rozbroil bomby...
|
|
||||||
PICKED_BOMB = %s podniosl bombe...
|
|
||||||
DROPPED_BOMB = %s upuscil bombe!!!
|
|
||||||
CT = Anty-Terrorysta
|
|
||||||
CTS = Anty-Terrorystow
|
|
||||||
TERRORIST = Terrorysta
|
|
||||||
TERRORISTS = Terrorystow
|
|
||||||
REMAINING = Jeszcze %d %s do zabicia...
|
|
||||||
KILLS = zabojstwami
|
|
||||||
HS = w glowe
|
|
File diff suppressed because it is too large
Load Diff
Loading…
Reference in New Issue
Block a user