
Стаж: 12 лет
Сообщений: 1417
Благодарностей: 705
Полезность: 349
|
Клиент со стима зашел на сервер в начале боя, у него показало в таблице сразу 3 фрага. Убил 1 и умер стало 4-1. как такое возможно? из плагинов необычных каких то которые стоит steam bonus Код:
#include <amxmodx> #include <fun> #include <cstrike> #include <hamsandwich>
#pragma semicolon 1
#define PLUGIN "Steam Bonus" #define VERSION "1.3e" #define AUTHOR "Gudaus" #define PREFIX "СЕРВЕР"
#define get_bit(%1,%2) (%1 & (1 << (%2 & 31))) #define set_bit(%1,%2) (%1 |= (1 << (%2 & 31))) #define reset_bit(%1,%2) (%1 &= ~(1 << (%2 & 31)))
new g_bIsSteam;
new round_number;
public plugin_init() { register_plugin(PLUGIN, VERSION, AUTHOR); register_event("TextMsg", "eRestart", "a", "2&#Game_C", "2&#Game_w"); register_event("HLTV", "RoundStart", "a", "1=0", "2=0"); RegisterHam(Ham_Spawn, "player", "fw_CS_RoundRespawn_Post", true); }
public eRestart() round_number = 0;
public RoundStart() round_number++;
public client_putinserver(id) { if(is_user_steam(id)) { set_bit(g_bIsSteam, id); } else reset_bit(g_bIsSteam, id); }
public get_player_deagle(id) { const dropped_weapons = ( 1 << CSW_USP ) | ( 1 << CSW_GLOCK18 ); static iWeapons[ 32 ], iNum, i; iNum = 0; get_user_weapons( id, iWeapons, iNum ); for( i = 0; i < iNum; i++ ) { if( ( 1 << iWeapons[ i ] ) & dropped_weapons ) { switch( iWeapons[ i ]) { case CSW_USP: { engclient_cmd(id, "drop", "weapon_usp"); give_item(id, "weapon_deagle"); cs_set_user_bpammo(id, CSW_DEAGLE, 35); ChatColor(id, "^1[^4%s^1] Ваш бонус за ^4STEAM ^1- Desert Eagle", PREFIX); } case CSW_GLOCK18: { engclient_cmd(id, "drop", "weapon_glock18"); give_item(id, "weapon_deagle"); cs_set_user_bpammo(id, CSW_DEAGLE, 35); ChatColor(id, "^1[^4%s^1] Ваш бонус за ^4STEAM ^1- Desert Eagle", PREFIX); } case CSW_DEAGLE: { cs_set_user_money(id, cs_get_user_money(id) + 1000); ChatColor(id, "^1[^4%s^1] Ваш бонус за ^4STEAM ^1- 1000 ^4$", PREFIX); } } } } }
public fw_CS_RoundRespawn_Post(id) { if(round_number>=3) { if( is_user_alive(id) && get_bit(g_bIsSteam, id)) { new deaths = get_user_deaths(id); new frags = get_user_frags(id); if(deaths!=0) { new soot = frags/deaths; if (soot<1) { switch(random(5)) { case 0: { cs_set_user_money(id, cs_get_user_money(id) + 2000); ChatColor(id, "^1[^4%s^1] Ваш бонус за ^4STEAM ^1- 2000 ^4$", PREFIX); } case 1: { give_item(id, "weapon_hegrenade"); give_item(id, "weapon_flashbang"); give_item(id, "weapon_flashbang"); give_item(id, "weapon_smokegrenade"); ChatColor(id, "^1[^4%s^1] Ваш бонус за ^4STEAM ^1- Все гранаты", PREFIX); } case 2: { cs_set_user_armor(id, 100, CsArmorType:2); ChatColor(id, "^1[^4%s^1] Ваш бонус за ^4STEAM ^1- Броня и Шлем", PREFIX); } case 3: { get_player_deagle(id); } case 4: { cs_set_user_money(id, cs_get_user_money(id) + 1000 + frags*100); ChatColor(id, "^1[^4%s^1] Ваш бонус за ^4STEAM ^1- %d ^4$", PREFIX, 1000 + frags*100); } } } else if (soot == 1) { switch(random(5)) { case 0: { cs_set_user_money(id, cs_get_user_money(id) + 1500); ChatColor(id, "^1[^4%s^1] Ваш бонус за ^4STEAM ^1- 1500 ^4$", PREFIX); } case 1: { give_item(id, "weapon_hegrenade"); give_item(id, "weapon_flashbang"); give_item(id, "weapon_flashbang"); ChatColor(id, "^1[^4%s^1] Ваш бонус за ^4STEAM ^1- HE+Flash гранаты", PREFIX); } case 2: { cs_set_user_armor(id, 100, CsArmorType:2); ChatColor(id, "^1[^4%s^1] Ваш бонус за ^4STEAM ^1- Броня и Шлем", PREFIX); } case 3: { get_player_deagle(id); } case 4: { give_item(id, "weapon_flashbang"); give_item(id, "weapon_flashbang"); give_item(id, "weapon_smokegrenade"); ChatColor(id, "^1[^4%s^1] Ваш бонус за ^4STEAM ^1- Smoke+Flash гранаты", PREFIX); } } } else if (soot == 2) { switch(random(6)) { case 0: { cs_set_user_money(id, cs_get_user_money(id) + 1000); ChatColor(id, "^1[^4%s^1] Ваш бонус за ^4STEAM ^1- 1000 ^4$", PREFIX); } case 1: { give_item(id, "weapon_hegrenade"); give_item(id, "weapon_flashbang"); ChatColor(id, "^1[^4%s^1] Ваш бонус за ^4STEAM ^1- HE+Flash граната", PREFIX); } case 2: { cs_set_user_armor(id, 100, CsArmorType:2); ChatColor(id, "^1[^4%s^1] Ваш бонус за ^4STEAM ^1- Броня и Шлем", PREFIX); } case 3: { get_player_deagle(id); } case 4: { cs_set_user_money(id, cs_get_user_money(id) + (frags-deaths)*100); ChatColor(id, "^1[^4%s^1] Ваш бонус за ^4STEAM ^1- %d ^4$", PREFIX, (frags-deaths)*100); } default: return; } } else if (soot == 3) { switch(random(7)) { case 0: { cs_set_user_money(id, cs_get_user_money(id) + 1000); ChatColor(id, "^1[^4%s^1] Ваш бонус за ^4STEAM ^1- 1000 ^4$", PREFIX); } case 1: { give_item(id, "weapon_hegrenade"); give_item(id, "weapon_flashbang"); cs_set_user_money(id, cs_get_user_money(id) + 500); ChatColor(id, "^1[^4%s^1] Ваш бонус за ^4STEAM ^1- Flash + 500 ^4$", PREFIX); } case 2: { cs_set_user_armor(id, 100, CsArmorType:2); ChatColor(id, "^1[^4%s^1] Ваш бонус за ^4STEAM ^1- Броня и Шлем", PREFIX); } case 3: { get_player_deagle(id); } case 4: { cs_set_user_money(id, cs_get_user_money(id) + (frags-deaths)*70); ChatColor(id, "^1[^4%s^1] Ваш бонус за ^4STEAM ^1- %d ^4$", PREFIX, (frags-deaths)*70); } default: return; } } else { switch(random(8)) { case 0: { cs_set_user_money(id, cs_get_user_money(id) + 1000); ChatColor(id, "^1[^4%s^1] Ваш бонус за ^4STEAM ^1- 1000 ^4$", PREFIX); } case 1: { give_item(id, "weapon_hegrenade"); ChatColor(id, "^1[^4%s^1] Ваш бонус за ^4STEAM ^1- HE граната", PREFIX);
} case 2: { cs_set_user_armor(id, 100, CsArmorType:2); ChatColor(id, "^1[^4%s^1] Ваш бонус за ^4STEAM ^1- Броня и Шлем", PREFIX);
} case 3: { get_player_deagle(id); } case 4: { give_item(id, "weapon_flashbang"); give_item(id, "weapon_flashbang"); ChatColor(id, "^1[^4%s^1] Ваш бонус за ^4STEAM ^1- Flash гранаты", PREFIX);
} default: return; } } } else if (frags!=0) { cs_set_user_money(id, cs_get_user_money(id) + frags*200); ChatColor(id, "^1[^4%s^1] Ваш бонус за ^4STEAM ^1- %d ^4$", PREFIX, frags*200); } } } }
stock bool:is_user_steam(id) { static dp_pointer; if(dp_pointer || (dp_pointer = get_cvar_pointer("dp_r_id_provider"))) { server_cmd("dp_clientinfo %d", id); server_exec(); return (get_pcvar_num(dp_pointer) == 2) ? true : false; } new szAuthid[34]; get_user_authid(id, szAuthid, charsmax(szAuthid)); return (containi(szAuthid, "LAN") < 0); }
stock ChatColor(const id, const szMessage[], any:...) { static pnum, players[32], szMsg[190], IdMsg; vformat(szMsg, charsmax(szMsg), szMessage, 3); if(!IdMsg) IdMsg = get_user_msgid("SayText"); if(id) { if(!is_user_connected(id)) return 0; players[0] = id; pnum = 1; } else get_players(players, pnum, "ch"); for(new i; i < pnum; i++) { message_begin(MSG_ONE, IdMsg, .player = players[i]); write_byte(players[i]); write_string(szMsg); message_end(); } return 1; }
и kills_counter Код:
#include <amxmodx> #include <hamsandwich>
new sprites[][] = { "", "number_1", "number_2", "number_3", "number_4", "number_5", "number_6", "number_7", "number_8", "number_9" }
new g_maxplayers,g_statusicon
new cvColor,cvBlinkTime,cvOverCount
new idid[33] new clor[3]
new Float:blinkTime new overCountSpr[40]
#define RESETBLINK_TASKID 45454
public plugin_init(){ register_plugin("Kills Counter","0.3","serfreeman1337") g_maxplayers = get_maxplayers() g_statusicon = get_user_msgid("StatusIcon") cvColor = register_cvar("ks_color","0 255 0") cvBlinkTime = register_cvar("ks_blink_time","2.0") cvOverCount = register_cvar("ks_over_count_spr","dmg_rad") RegisterHam(Ham_Killed,"player","fw_PlayerKilled",1) RegisterHam(Ham_Spawn,"player","fw_PlayerSpawn",1) }
public plugin_cfg(){ new data[20],raw[3][5] get_pcvar_string(cvColor,data,19) parse(data,raw[0],4,raw[1],4,raw[2],4) clor[0] = str_to_num(raw[0]) clor[1] = str_to_num(raw[1]) clor[2] = str_to_num(raw[2]) blinkTime = get_pcvar_float(cvBlinkTime) get_pcvar_string(cvOverCount,overCountSpr,39) }
public fw_PlayerSpawn(id) icon(id,0) public fw_PlayerKilled(victim,killer){ if(0 < killer <= g_maxplayers){ if(ExecuteHam(Ham_IsAlive,killer)) icon(killer,1) } icon(victim,0) }
public icon(id,style){ if(!style){ if(!idid[id]) return PLUGIN_CONTINUE message_begin(MSG_ONE,g_statusicon,_,id) write_byte(0) write_string(idid[id] < 10 ? sprites[idid[id]] : overCountSpr) message_end() idid[id] = 0 return PLUGIN_CONTINUE } if(0 < idid[id] < 10){ message_begin(MSG_ONE,g_statusicon,_,id) write_byte(0) write_string(sprites[idid[id]]) message_end() } idid[id] ++
message_begin(MSG_ONE,g_statusicon,_,id) write_byte(blinkTime > 0.0 ? 2 : 1) write_string(idid[id] < 10 ? sprites[idid[id]] : overCountSpr) write_byte(clor[0]) write_byte(clor[1]) write_byte(clor[2]) message_end() if(blinkTime > 0.0){ remove_task(RESETBLINK_TASKID + id) set_task(2.0,"resetblink",RESETBLINK_TASKID + id) } return PLUGIN_CONTINUE }
public resetblink(tId){ new id = tId - RESETBLINK_TASKID if(!is_user_connected(id)) return message_begin(MSG_ONE,g_statusicon,_,id) write_byte(1) write_string(idid[id] < 10 ? sprites[idid[id]] : overCountSpr) write_byte(clor[0]) write_byte(clor[1]) write_byte(clor[2]) message_end() }
ну может быть еще StatsX GUI 1.8 + Skill

Создание и редактирование карт ($) - vk.com/id476857873 Настройка и техническое обслуживание ваших игровых серверов - vk.com/id476857873
|