Łap:
Spoiler
#include <amxmodx>
#include <fakemeta>
#include <hamsandwich>
#include <codmod>
#define VERSION "0.1"
#define MAX 32
#define IsPlayer(%1) (1 <= %1 <= MAX && is_user_connected(%1))
new g_iZemsta[MAX+1];
new bool:g_bAsysta[MAX+1][MAX+1];
new g_pCvarAsysta;
new g_pCvarZemsta;
public plugin_init() {
register_plugin("Dodatkowy Exp", VERSION, "DarkGL")
g_pCvarAsysta = register_cvar("cod_xp_asysta", "10");
g_pCvarZemsta = register_cvar("cod_xp_zemsta", "10");
register_event("DeathMsg", "eventDeath", "a");
register_event("HLTV", "newRound", "a", "1=0", "2=0")
RegisterHam(Ham_TakeDamage, "player", "fwDamage", 1);
}
public newRound()
{
for(new i = 0;i <= MAX;i++){
for(new j = 0;j <= MAX;j++)
g_bAsysta[i][j] = false;
}
}
public client_connect(id){
for(new j = 0;j <= MAX;j++) g_bAsysta[id][j] = false;
g_iZemsta[id] = 0;
}
public fwDamage(iVictim, iInflicter, iAttacker, Float:fDamage, iBitDamage){
if( (IsPlayer(iAttacker) && IsPlayer(iVictim)) && !g_bAsysta[iAttacker][iVictim] && get_user_team(iVictim) != get_user_team(iAttacker) && iVictim != iAttacker)
g_bAsysta[iAttacker][iVictim] = true;
return HAM_IGNORED;
}
public eventDeath(){
new iKiller = read_data(1);
new iVictim = read_data(2);
if(IsPlayer(iKiller) && IsPlayer(iVictim) && iKiller != iVictim){
g_iZemsta[iVictim] = iKiller;
new iXp = get_pcvar_num(g_pCvarZemsta);
new sName[32];
get_user_name(iVictim, sName, sizeof sName - 1);
if(g_iZemsta[iKiller] && g_iZemsta[iKiller] == iVictim){
client_print(iKiller, print_chat, "Zemsciles sie na graczu %s^n^n+ %d XP", sName, iXp);
cod_set_user_xp(iKiller, cod_get_user_xp(iKiller) + iXp);
g_iZemsta[iKiller] = 0;
}
iXp = get_pcvar_num(g_pCvarAsysta);
for(new i = 0 ; i <= MAX; i ++){
if(i == iKiller) continue;
if(g_bAsysta[i][iVictim]){
client_print(i, print_chat, "Asystowales w zabiciu gracza %s^n^n+ %d XP", sName, iXp);
cod_set_user_xp(i, cod_get_user_xp(i) + iXp);
}
g_bAsysta[i][iVictim] = false;
}
}
}

Dodatki SourceMod




Moja zawartość
Mężczyzna



cod_adminmenu.amxx
Napisane przez