Kod: Tümünü seç
#include <amxmodx>
#include <zombieplague>
#include <fun>
#include <cstrike>
#include <fakemeta>
#include <xs>
#include <hamsandwich>
new g_maxplayers;
new g_msgSayText;
new g_killzmoneround[33];
new g_survivelikehuman[33];
new g_infecthumoneround[33];
new g_killzmoneround1[33];
new g_infecthumoneround1[33];
new g_survivelikezombie[33];
new g_killzmoneround2[33];
new g_killzmoneround3[33];
new g_killzmoneround4[33];
new g_infecthumoneround3[33];
new g_infecthumoneround4[33];
new g_infecthumoneround2[33];
new g_zmkillinfectrowcount[33];
new g_nemesiskiller[33];
new vebadazombivur[33];
new vebadainsanvur[33];
new vebadainsanvur1[33];
new vebadainsanvur2[33];
new vebadainsanvur3[33];
new g_nemesiskiller1[33];
new g_nemesiskiller2[33];
new g_nemesiskiller3[33];
public plugin_init()
{
register_plugin("[ZP] Mission System", "1.0", "ArtaNN");
register_clcmd("say !gorev", "menu_mission_system");
register_clcmd("say /gorev", "menu_mission_system");
register_logevent("roundstart", 2,"1=Round_Start");
register_event("DeathMsg", "DeathMsg", "a" )
g_maxplayers = get_maxplayers();
g_msgSayText = get_user_msgid("SayText");
//RegisterHam(Ham_Killed, "player", "fw_PlayerKilled",1)
return 0;
}
public menu_mission_system(id)
{
new missionmenu = menu_create("\w[\rZP\w] \yGorevlerinizi Tamamlayin \d||^n", "missionmenu_handler", g_maxplayers);
new menu[512];
if (5 > g_killzmoneround[id])
{
formatex(menu, 99, "\wAvci Insan \ySeviye 0 - \rSonraki Seviye: 1 \w(120 Cephane)^n\yOlmeden 5 Zombi Oldur!^n");
}
if (5 <= g_killzmoneround1[id])
{
formatex(menu, 99, "\wAvci Insan \ySeviye 1 - \rSonraki Seviye: 2 \w(320 Cephane)^n\yOlmeden 10 Zombi Oldur!^n");
}
if (10 <= g_killzmoneround2[id])
{
formatex(menu, 99, "\wAvci Insan \ySeviye 2 - \rSonraki Seviye: 3 \w(420 Cephane)^n\yOlmeden 15 Zombi Oldur!^n");
}
if (15 <= g_killzmoneround3[id])
{
formatex(menu, 99, "\wAvci Insan \ySeviye 3 - \rSonraki Seviye: Son Seviye \w(520 Cephane)^n\yOlmeden 20 Zombi Oldur!^n");
}
if (20 <= g_killzmoneround4[id])
{
formatex(menu, 99, "\wAvci Insan \ySeviye 4 - \rGorev Tamamlandi. Son Seviye \w(520 Cephane)^n\yOlmeden 20 Zombi Oldur! \w(Gorev Bitti)^n");
}
////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
menu_additem(missionmenu, menu);
if (5 > g_infecthumoneround[id])
{
formatex(menu, 99, "\wAvci Zombi \ySeviye 0 - \rSonraki Seviye: 1 \w(220 Cephane)^n\yOlmeden 5 Insani Zombi Yap!^n");
}
if (5 <= g_infecthumoneround1[id])
{
formatex(menu, 99, "\wAvci Zombi \ySeviye 1 - \rSonraki Seviye: 2 \w(320 Cephane)^n\yOlmeden 10 Insani Zombi Yap!^n");
}
if ( 10 <= g_infecthumoneround2[id])
{
formatex(menu, 99, "\wAvci Zombi \ySeviye 2 - \rSonraki Seviye: 3 \w(420 Cephane)^n\yOlmeden 15 Insani Zombi Yap!^n");
}
if ( 15 <= g_infecthumoneround3[id])
{
formatex(menu, 99, "\wAvci Zombi \ySeviye 3 - \rSonraki Seviye: Son Seviye \w(620 Cephane)^n\yOlmeden 20 Insani Zombi Yap!^n");
}
if ( 20 <= g_infecthumoneround4[id])
{
formatex(menu, 99, "\wAvci Zombi \ySeviye 4 - \rGorev Tamamlandi. Son Seviye \w(620 Cephane)^n\yOlmeden 20 Insani Zombi Yap! \w(Gorev Bitti)^n");
}
menu_additem(missionmenu, menu);
////////////////////////////////////////////////////////////////////////////////
if (3 > vebadainsanvur[id])
{
formatex(menu, 99, "\wKral Zombi \ySeviye 0 - \rSonraki Seviye: 1 \w(320 Cephane)^n\yVeba Modunda Olmeden 3 Insani Oldur!^n");
}
if (3 <= vebadainsanvur1[id])
{
formatex(menu, 99, "\wKral Zombi \ySeviye 1 - \rSonraki Seviye: 2 \w(420 Cephane)^n\yVeba Modunda Olmeden 6 Insani Oldur!^n");
}
if (6 <= vebadainsanvur2[id])
{
formatex(menu, 99, "\wKral Zombi \ySeviye 2 - \rSonraki Seviye: Son Seviye \w(520 Cephane)^n\yVeba Modunda Olmeden 10 Insani Oldur!^n");
}
if (10 <= vebadainsanvur3[id])
{
formatex(menu, 99, "\wKral Zombi \ySeviye 3 - \rGorev Tamamlandi. Son Seviye \w(520 Cephane)^n\yVeba Modunda Olmeden 10 Insani Oldur! \w(Gorev Bitti)^n");
}
menu_additem(missionmenu, menu);
//////////////////////////////////////////////////////////////////////////////// //////////////////////////////////////////////////////////////////////////////// ////////////////////////////////////////////////////////////////////////////////
if (1 > g_nemesiskiller[id])
{
formatex(menu, 99, "\wTerminator \ySeviye 0 - \rSonraki Seviye: 1 \w(320 Cephane)^n\y 1 Kere Drakula'yi Oldur!^n");
}
if (1 <= g_nemesiskiller1[id])
{
formatex(menu, 99, "\wTerminator \ySeviye 1 - \rSonraki Seviye: 2 \w(420 Cephane)^n\y2 Kere Drakula'yi Oldur!^n");
}
if (2 <= g_nemesiskiller2[id])
{
formatex(menu, 99, "\wTerminator \ySeviye 2 - \rSonraki Seviye: Son Seviye \w(420 Cephane)^n\y3 Kere Drakula'yi Oldur!^n");
}
if (3 <= g_nemesiskiller3[id])
{
formatex(menu, 99, "\wTerminator \ySeviye 3 - \rGorev Tamamlandi. Son Seviye \w(520 Cephane)^n\y3 Kere Drakula'yi Oldur! \w(Gorev Bitti)^n");
}
menu_additem(missionmenu, menu);
menu_setprop(missionmenu,MPROP_NEXTNAME,"\yIleri")
menu_setprop(missionmenu,MPROP_BACKNAME,"\yGeri")
menu_setprop(missionmenu,MPROP_EXITNAME,"\yCikis");
menu_display(id, missionmenu);
return 0;
}
public missionmenu_handler(id, menu, item)
{
return 0;
}
public client_disconnected(id)
{
g_killzmoneround[id] = 0;
g_infecthumoneround[id] = 0;
g_survivelikehuman[id] = 0;
g_killzmoneround1[id] = 0;
g_infecthumoneround1[id] = 0;
g_survivelikezombie[id] = 0;
g_killzmoneround2[id] = 0;
g_infecthumoneround2[id] = 0;
g_zmkillinfectrowcount[id] = 0;
g_nemesiskiller[id] = 0
vebadazombivur[id] = 0
vebadainsanvur[id] = 0
return 0;
}
zp_colored_print(target, message[])
{
static argscount;
static i;
static buffer[512];
argscount = numargs();
if (!target)
{
static player;
player = 1;
while (player <= g_maxplayers)
{
if (is_user_connected(player))
{
static changedcount;
static changed[5];
changedcount = 0;
i = 2;
while (i < argscount)
{
if (getarg(i, g_maxplayers) == -1)
{
setarg(i, g_maxplayers, player);
changed[changedcount] = i;
changedcount += 1;
}
i += 1;
}
vformat(buffer, sizeof buffer - 1, message, 3);
message_begin(MSG_ONE_UNRELIABLE, g_msgSayText, _, player);
write_byte(player);
write_string(buffer);
message_end();
i = 0;
while (i < changedcount)
{
setarg(changed[i], g_maxplayers, -1);
i += 1;
}
}
player += 1;
}
}
else
{
vformat(buffer, sizeof buffer - 1, message, 3);
message_begin(MSG_ONE, g_msgSayText, _, target);
write_byte(target);
write_string(buffer);
message_end();
}
return 0;
}
public zombie_mission_rewards(infected, infector, turnedtonemesis)
{
if (zp_get_user_zombie(infector) && !turnedtonemesis)
{
return 1;
}
return 0;
}
public zombie_mission_rewardsplague(attacker,victim)
{
if (!zp_get_user_zombie(victim) && zp_is_plague_round())
{
return 1;
}
return 0;
}
public zombie_mission_rewardsnemesis(attacker,victim)
{
if (zp_get_user_nemesis(victim))
{
return 1;
}
return 0;
}
public human_mission_rewards(killer, victim)
{
if (!zp_get_user_zombie(killer) && !zp_get_user_survivor(killer) && !zp_get_user_nemesis(victim) && zp_get_user_zombie(victim) && !zp_is_nemesis_round() && !zp_is_survivor_round())
{
return 1;
}
return 0;
}
public zp_user_infected_pre(infected, infector, nemesis)
{
// g_infecthumoneround[infector] ++;
// g_killzmoneround[id] = 0;
//g_killzmoneround[infector] = 0;
if (1 <= infected <= 32 && 1 <= infector <= 32)
{
if (zombie_mission_rewards(infected, infector, nemesis))
{
if (g_infecthumoneround[infector] != 5)
{
g_infecthumoneround[infector]++;
if (g_infecthumoneround[infector] == 5)
{
UTIL_SayText(infector, "!g[ZP] !yInsan !tAvcisi Gorevinde !g1. Seviyeye !yUlasildi.")
UTIL_SayText(infector, "!g[ZP] !yKazanilan Cephane Paketi: !t220")
zp_set_user_ammo_packs(infector, zp_get_user_ammo_packs(infector) + 220);
}
}
if (g_infecthumoneround1[infector] != 10)
{
g_infecthumoneround1[infector]++;
if (g_infecthumoneround1[infector] == 10)
{
UTIL_SayText(infector, "!g[ZP] !yInsan !tAvcisi Gorevinde !g2. Seviyeye !yUlasildi.")
UTIL_SayText(infector, "!g[ZP] !yKazanilan Cephane Paketi: !t320")
zp_set_user_ammo_packs(infector, zp_get_user_ammo_packs(infector) + 320);
}
}
if (g_infecthumoneround2[infector] != 15)
{
g_infecthumoneround2[infector]++;
if (g_infecthumoneround2[infector] == 15)
{
UTIL_SayText(infector, "!g[ZP] !yInsan !tAvcisi Gorevinde !g3. Seviyeye !yUlasildi.")
UTIL_SayText(infector, "!g[ZP] !yKazanilan Cephane Paketi: !t420")
zp_set_user_ammo_packs(infector, zp_get_user_ammo_packs(infector) + 420)
}
}
if (g_infecthumoneround3[infector] == 20)
{
g_infecthumoneround3[infector]++;
if (g_infecthumoneround3[infector] == 20)
{
UTIL_SayText(infector, "!g[ZP] !yInsan !tAvcisi Gorevinde !gSonuncu Seviyeye !yUlasildi.")
UTIL_SayText(infector, "!g[ZP] !yKazanilan Cephane Paketi: !t620")
zp_set_user_ammo_packs(infector, zp_get_user_ammo_packs(infector) + 620)
}
}
}
}
return 0;
}
public fw_PlayerKilled(victim, attacker, shouldgib)
{
}
public DeathMsg()
{
new killer = read_data(1);
new victim = read_data(2);
if (victim == killer)
{
return 1;
}
if (1 <= killer <= 32 && 1 <= victim <= 32)
{
if (human_mission_rewards(killer, victim))
{
if (g_killzmoneround[killer] != 5)
{
g_killzmoneround[killer]++;
if (g_killzmoneround[killer] == 5)
{
UTIL_SayText(killer, "!g[ZP] !yZombi !tAvcisi Gorevinde !g1. Seviyeye !yUlasildi.")
UTIL_SayText(killer, "!g[ZP] !yKazanilan Cephane Paketi: !t120")
zp_set_user_ammo_packs(killer, zp_get_user_ammo_packs(killer) + 120)
}
}
if (g_killzmoneround1[killer] != 10)
{
g_killzmoneround1[killer]++;
if (g_killzmoneround1[killer] == 10)
{
UTIL_SayText(killer, "!g[ZP] !yZombi !tAvcisi Gorevinde !g1. Seviyeye !yUlasildi.")
UTIL_SayText(killer, "!g[ZP] !yKazanilan Cephane Paketi: !t320")
zp_set_user_ammo_packs(killer, zp_get_user_ammo_packs(killer) + 320)
}
}
if (g_killzmoneround2[killer] != 15)
{
g_killzmoneround2[killer]++;
if (g_killzmoneround2[killer] == 15)
{
UTIL_SayText(killer, "!g[ZP] !yZombi !tAvcisi Gorevinde !g3. Seviyeye !yUlasildi.")
UTIL_SayText(killer, "!g[ZP] !yKazanilan Cephane Paketi: !t420")
zp_set_user_ammo_packs(killer, zp_get_user_ammo_packs(killer) + 420)
}
}
if (g_killzmoneround3[killer] != 15)
{
g_killzmoneround3[killer]++;
if (g_killzmoneround3[killer] == 20)
{
UTIL_SayText(killer, "!g[ZP] !yZombi !tAvcisi Gorevinde !gSonuncu Seviyeye !yUlasildi.")
UTIL_SayText(killer, "!g[ZP] !yKazanilan Cephane Paketi: !t520")
zp_set_user_ammo_packs(killer, zp_get_user_ammo_packs(killer) + 520)
}
}
if (!zp_get_user_zombie(victim) && zp_is_plague_round()) {
vebadainsanvur[killer] ++
vebadainsanvur1[killer] ++
vebadainsanvur2[killer] ++
}
if (zp_get_user_nemesis(victim)) {
g_nemesiskiller[killer] ++
g_nemesiskiller1[killer] ++
g_nemesiskiller2[killer] ++
}
}
}
if (vebadainsanvur[killer] != 3)
{
vebadainsanvur[killer]++;
if (vebadainsanvur[killer] == 3)
{
UTIL_SayText(killer, "!g[ZP] !yKral Zombi !tGorevinde !g1. Seviyeye !yUlasildi.")
UTIL_SayText(killer, "!g[ZP] !yKazanilan Cephane Paketi: !t320")
zp_set_user_ammo_packs(killer, zp_get_user_ammo_packs(killer) + 320)
}
}
if (vebadainsanvur1[killer] != 6)
{
vebadainsanvur1[killer]++;
if (vebadainsanvur1[killer] == 6)
{
UTIL_SayText(killer, "!g[ZP] !yKral Zombi !tGorevinde !g2. Seviyeye !yUlasildi.")
UTIL_SayText(killer, "!g[ZP] !yKazanilan Cephane Paketi: !t420")
zp_set_user_ammo_packs(killer, zp_get_user_ammo_packs(killer) + 420)
}
}
if (vebadainsanvur2[killer] != 10)
{
vebadainsanvur2[killer]++;
if (vebadainsanvur2[killer] == 10)
{
UTIL_SayText(killer, "!g[ZP] !yKral Zombi !tGorevinde !gSonuncu Seviyeye !yUlasildi.")
UTIL_SayText(killer, "!g[ZP] !yKazanilan Cephane Paketi: !t520")
zp_set_user_ammo_packs(killer, zp_get_user_ammo_packs(killer) + 520)
}
}
if (g_nemesiskiller[killer] != 1)
{
g_nemesiskiller[killer]++;
if (g_nemesiskiller[killer] == 1)
{
UTIL_SayText(killer, "!g[ZP] !yTerminator !tGorevinde !g1. Seviyeye !yUlasildi.")
UTIL_SayText(killer, "!g[ZP] !yKazanilan Cephane Paketi: !t320")
zp_set_user_ammo_packs(killer, zp_get_user_ammo_packs(killer) + 320)
}
}
if (g_nemesiskiller1[killer] != 2)
{
g_nemesiskiller1[killer]++;
if (g_nemesiskiller1[killer] == 2)
{
UTIL_SayText(killer, "!g[ZP] !yTerminator !tGorevinde !g2. Seviyeye !yUlasildi.")
UTIL_SayText(killer, "!g[ZP] !yKazanilan Cephane Paketi: !t420")
zp_set_user_ammo_packs(killer, zp_get_user_ammo_packs(killer) + 420)
}
}
if (g_nemesiskiller2[killer] != 3)
{
g_nemesiskiller2[killer]++;
if (g_nemesiskiller2[killer] == 3)
{
UTIL_SayText(killer, "!g[ZP] !yTerminator !tGorevinde !gSonuncu Seviyeye !yUlasildi.")
UTIL_SayText(killer, "!g[ZP] !yKazanilan Cephane Paketi: !t520")
zp_set_user_ammo_packs(killer, zp_get_user_ammo_packs(killer) + 520)
}
}
return 0;
}
stock UTIL_SayText(pPlayer, const szMessage[], any:...)
{
new szBuffer[190];
if(numargs() > 2) vformat(szBuffer, charsmax(szBuffer), szMessage, 3);
else copy(szBuffer, charsmax(szBuffer), szMessage);
while(replace(szBuffer, charsmax(szBuffer), "!y", "^1")) {}
while(replace(szBuffer, charsmax(szBuffer), "!t", "^3")) {}
while(replace(szBuffer, charsmax(szBuffer), "!g", "^4")) {}
switch(pPlayer)
{
case 0:
{
for(new iPlayer = 1; iPlayer <= get_maxplayers(); iPlayer++)
{
engfunc(EngFunc_MessageBegin, MSG_ONE_UNRELIABLE, 76, {0.0, 0.0, 0.0}, iPlayer);
write_byte(iPlayer);
write_string(szBuffer);
message_end();
}
}
default:
{
engfunc(EngFunc_MessageBegin, MSG_ONE_UNRELIABLE, 76, {0.0, 0.0, 0.0}, pPlayer);
write_byte(pPlayer);
write_string(szBuffer);
message_end();
}
}
}
/* AMXX-Studio Notes - DO NOT MODIFY BELOW HERE
*{\\ rtf1\\ ansi\\ ansicpg1254\\ deff0\\ deflang1055{\\ fonttbl{\\ f0\\ fnil Tahoma;}}\n\\ viewkind4\\ uc1\\ pard\\ f0\\ fs16 \n\\ par }
*/
/* AMXX-Studio Notes - DO NOT MODIFY BELOW HERE
*{\\ rtf1\\ ansi\\ ansicpg1254\\ deff0\\ deflang1055{\\ fonttbl{\\ f0\\ fnil Tahoma;}}\n\\ viewkind4\\ uc1\\ pard\\ f0\\ fs16 \n\\ par }
*/
/* AMXX-Studio Notes - DO NOT MODIFY BELOW HERE
*{\\ rtf1\\ ansi\\ deff0{\\ fonttbl{\\ f0\\ fnil Tahoma;}}\n\\ viewkind4\\ uc1\\ pard\\ lang1055\\ f0\\ fs16 \n\\ par }
*/