Kod:
#include <amxmodx>
#include <zombieplague>
#include <hamsandwich>
#define TAG "ZP"
new bmOlmedenZombiOldur[33],bmOlmedenZombiYap[33],bmNemesisOldur[33];
new bmGorev[3][33];
public plugin_init() {
register_plugin
("Gorev Menu",
"1.0",
"Berk");
RegisterHam(Ham_Killed, "player", "beAO");
register_clcmd("say /gorev","beGorevMenu");
}
public client_putinserver(bmID){
bmOlmedenZombiOldur[bmID] = 0;
bmOlmedenZombiYap[bmID] = 0;
bmNemesisOldur[bmID] = 0;
for(new i; i < 3; i++){
bmGorev[i][bmID] = 0;
}
}
public beAO(bmVictim, bmAttacker){
if(zp_get_user_nemesis(bmVictim) && !zp_get_user_nemesis(bmAttacker)){
bmNemesisOldur[bmAttacker]++;
}
else if(zp_get_user_zombie(bmVictim) && !zp_get_user_zombie(bmAttacker)){
bmOlmedenZombiOldur[bmAttacker]++;
bmOlmedenZombiYap[bmVictim] = 0;
}
}
public zp_fw_core_infect(bmID, bmAttacker){
bmOlmedenZombiOldur[bmID] = 0;
bmOlmedenZombiYap[bmAttacker]++;
}
public beGorevMenu(bmID){
new menuz;
static amenu[512];
formatex(amenu,charsmax(amenu),"\r{\wZombie Plague 4.3 Fix5a\r} \yGorev Menu (Gorevler)");
menuz = menu_create(amenu,"beGorevMenu_devam");
if(bmGorev[0][bmID] == 0 || bmGorev[1][bmID] == 0 || bmGorev[2][bmID] == 0){
if(bmGorev[0][bmID] != 1){
formatex(amenu,charsmax(amenu),"\yOlmeden 5 Zombi Yap \d[\w%i\r/\w5]",bmOlmedenZombiYap[bmID]);
menu_additem(menuz,amenu,"1");
}
else{
formatex(amenu,charsmax(amenu),"\yOlmeden 5 Zombi Yap [ALINDI]");
menu_additem(menuz,amenu,"1");
}
if(bmGorev[1][bmID] != 1){
formatex(amenu,charsmax(amenu),"\yOlmeden 5 Zombi Oldur \d[\w%i\r/\w5]",bmOlmedenZombiOldur[bmID]);
menu_additem(menuz,amenu,"2");
}
else{
formatex(amenu,charsmax(amenu),"\yOlmeden 5 Zombi Oldur [ALINDI]");
menu_additem(menuz,amenu,"2");
}
if(bmGorev[2][bmID] != 1){
formatex(amenu,charsmax(amenu),"\yNemesis Oldur \d[\w%i\r/\w1]",bmNemesisOldur[bmID]);
menu_additem(menuz,amenu,"3");
}
else{
formatex(amenu,charsmax(amenu),"\yNemesis Oldur [ALINDI]");
menu_additem(menuz,amenu,"3");
}
}
else{
renkli_yazi(bmID,"!n[ !tGorevMenu !n] !gTum gorevler bitmis gozukuyor")
}
menu_setprop(menuz,MPROP_EXITNAME,"\rCikis");
menu_setprop(menuz,MPROP_EXIT,MEXIT_ALL);
menu_display(bmID,menuz,0);
}
public beGorevMenu_devam(bmID,menu,item){
if(item == MENU_EXIT){
menu_destroy(menu);
return PLUGIN_HANDLED;
}
new access,callback,data[6],iname[64];
menu_item_getinfo(menu,item,access,data,5,iname,63,callback);
new key = str_to_num(data);
switch(key){
case 1 : {
if(bmGorev[0][bmID] != 1){
if(bmOlmedenZombiYap[bmID] >= 5){
bmGorev[0][bmID] = 1;
zp_set_user_ammo_packs(bmID,zp_get_user_ammo_packs(bmID) + 20);
renkli_yazi(bmID,"!n[ !t%s !n] !gGorev basarili bir sekilde tamamlandi",TAG)
}
else{
renkli_yazi(bmID,"!n[ !t%s !n] !gGorev icin gerekli kosullari saglamiyorsun",TAG);
}
}
else{
renkli_yazi(bmID,"!n[ !t%s !n] !gBu gorevi zaten tamamladin",TAG);
}
}
case 2 : {
if(bmGorev[1][bmID] != 1){
if(bmOlmedenZombiOldur[bmID] >= 5){
bmGorev[1][bmID] = 1;
zp_set_user_ammo_packs(bmID,zp_get_user_ammo_packs(bmID) + 25);
renkli_yazi(bmID,"!n[ !t%s !n] !gGorev basarili bir sekilde tamamlandi",TAG)
}
else{
renkli_yazi(bmID,"!n[ !t%s !n] !gGorev icin gerekli kosullari saglamiyorsun",TAG);
}
}
else{
renkli_yazi(bmID,"!n[ !t%s!n] !gBu gorevi zaten tamamladin",TAG);
}
}
case 3 : {
if(bmGorev[2][bmID] != 1){
if(bmNemesisOldur[bmID] >= 1){
bmGorev[2][bmID] = 1;
zp_set_user_ammo_packs(bmID,zp_get_user_ammo_packs(bmID) + 50);
renkli_yazi(bmID,"!n[ !t%s !n] !gGorev basarili bir sekilde tamamlandi",TAG)
}
else{
renkli_yazi(bmID,"!n[ !t%s !n] !gGorev icin gerekli kosullari saglamiyorsun",TAG);
}
}
else{
renkli_yazi(bmID,"!n[ !t%s !n] !gBu gorevi zaten tamamladin",TAG);
}
}
}
zp_set_user_ammo_packs(bmID,zp_get_user_ammo_packs(bmID) + 20);
menu_destroy(menu);
return PLUGIN_HANDLED;
}
stock renkli_yazi(const id, const input[], any:...)
{
new count = 1, players[32];
static msg[191];
vformat(msg, 190, input, 3);
replace_all(msg, 190, "!n", "^x01"); // Default Renk(Sarı)
replace_all(msg, 190, "!g", "^x04"); // Yeşil Renk
replace_all(msg, 190, "!t", "^x03"); // Takım Renk( CT mavi , T kırmızı )
if (id) players[0] = id; else get_players(players, count, "ch");{
for (new i = 0; i < count; i++)
{
if (is_user_connected(players[i]))
{
message_begin(MSG_ONE_UNRELIABLE, get_user_msgid("SayText"), _, players[i]);
write_byte(players[i]);
write_string(msg);
message_end();
}
}
}
}
/* AMXX-Studio Notes - DO NOT MODIFY BELOW HERE
*{\\ rtf1\\ ansi\\ deff0{\\ fonttbl{\\ f0\\ fnil Tahoma;}}\n\\ viewkind4\\ uc1\\ pard\\ lang1055\\ f0\\ fs16 \n\\ par }
*/
Survivor oldur 0/1
Veba Modunda Olmeden 3 Insan Oldur 0/3
Veba Modunda Olmeden 3 Zombi Oldur 0/3
Swarm Modunda Olmeden 3 Insan Oldur 0/3
Swarm Modunda Olmeden 3 Zombi Oldur 0/3
Coklu Enfeksiyon Modunda 5 Insani Olmeden Enfekte Et 0/5