PHP- Kodu:
/* Plugin generated by AMXX-Studio */
#include <amxmodx>
#include <amxmisc>
#include <jail>
#define PLUGIN "[JB] Bilgi Yarismasi"
#define VERSION "1.0"
#define AUTHOR "akcaliberkk"
new const file[] = "addons/amxmodx/configs/sorular.ini";
new bool:is_winner[33];
new bool:is_game_started;
new winner_list[3][32];
new szCevap[32];
new delay,birinci,ikinci,ucuncu,timeout;
public plugin_init() {
register_plugin(PLUGIN, VERSION, AUTHOR)
if(!file_exists(file)) {
new f = fopen(file,"wt")
fclose(f)
}
delay = register_cvar("bilgi_sure","15.0")
birinci = register_cvar("bilgi_birinci","15")
ikinci = register_cvar("bilgi_ikinci","10")
ucuncu = register_cvar("bilgi_ucuncu","5")
timeout = register_cvar("bilgi_maxdelay","15.0")
register_clcmd("say","HookSay")
register_clcmd("say_team","HookSay")
register_logevent("eRoundStart",2,"1=Round_Start")
}
public eRoundStart() {
if(task_exists(33)) remove_task(33)
ColorChat(0,"^4Bilgi Yarismasi: ^3%d Saniye ^1Sonra ^3Bilgi Yarismasi ^1Baslayacak ! Ilk Bilen^3 3 Kisiye^1 JB Odulu !",get_pcvar_num(delay))
set_task(get_pcvar_float(delay), "BilgiYarismasi",33)
}
public BilgiYarismasi() {
new players[32],inum;
get_players(players,inum)
for(new i; i<inum; i++) {
is_winner[players[i]] = false;
}
szCevap[0] = 0;
winner_list[0][0] = 0;
winner_list[1][0] = 0;
winner_list[2][0] = 0;
new maxlines = file_size(file,1);
new line = random(maxlines);
new szText[96],txtlen;
read_file(file,line,szText,charsmax(szText),txtlen)
if(!szText[0]) return PLUGIN_HANDLED
new szSoru[64];
parse(szText,szSoru,charsmax(szSoru),szCevap,charsmax(szCevap))
ColorChat(0, "^4Bilgi Yarismasi Basladi: ^3Soru: ^1%s",szSoru)
is_game_started = true;
set_task(get_pcvar_float(timeout),"ZorlaDurdur")
return PLUGIN_HANDLED
}
public ZorlaDurdur() {
ColorChat(0, "^4Bilgi Yarismasi: ^3Zaman Asimina Ugradi")
if(winner_list[0][0]) {
new szCondition[64],szCondition2[64];
formatex(szCondition,charsmax(szCondition), "^3Ikinci: ^1%s",winner_list[1])
formatex(szCondition2,charsmax(szCondition2), "^3Ucuncu: ^1%s",winner_list[2])
ColorChat(0, "^4Bilgi Yarismasi: ^3Birinci: ^1%s %s %s",winner_list[0],winner_list[1][0] ? szCondition : "", winner_list[2][0] ? szCondition2 : "")
}
is_game_started = false;
}
public HookSay(id) {
if(!is_game_started) return PLUGIN_CONTINUE
new szSaid[32]; read_args(szSaid,31)
remove_quotes(szSaid)
if(equali(szSaid,szCevap)) {
is_winner[id] = true;
new name[32];
get_user_name(id,name,31)
if(!winner_list[0][0]) {
copy(winner_list[0],31,name)
ColorChat(id,"^4Bilgi Yarismasi: ^1Tebrikler ^3Birinci ^1Oldunuz ! Kazandiginiz JB: ^3%d",get_pcvar_num(birinci))
jb_set_user_packs(id, jb_get_user_packs(id) + get_pcvar_num(birinci) )
}
else if(!winner_list[1][0]) {
copy(winner_list[1],31,name)
ColorChat(id,"^4Bilgi Yarismasi: ^1Tebrikler ^3Ikinci ^1Oldunuz ! Kazandiginiz JB: ^3%d",get_pcvar_num(ikinci))
jb_set_user_packs(id, jb_get_user_packs(id) + get_pcvar_num(ikinci) )
}
else if(!winner_list[2][0]) {
copy(winner_list[2],31,name)
ColorChat(id,"^4Bilgi Yarismasi: ^1Tebrikler ^3Ucuncu ^1Oldunuz ! Kazandiginiz JB: ^3%d",get_pcvar_num(ucuncu))
jb_set_user_packs(id, jb_get_user_packs(id) + get_pcvar_num(ikinci) )
is_game_started = false;
ColorChat(0, "^4Bilgi Yarismasi Bitti: ^3Birinci: ^1%s ^3Ikinci: ^1%s ^3Ucuncu: ^1%s",winner_list[0],winner_list[1],winner_list[2])
}
return PLUGIN_HANDLED
}
return PLUGIN_CONTINUE
}
stock ColorChat(const id, const string[], {Float, Sql, Resul,_}:...) {
new msg[191], players[32], count = 1;
static len;
len = formatex(msg, charsmax(msg), "^x01" );
vformat(msg[len], charsmax(msg) - len, string, 3);
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();
}
}
return;
}
Bu plugini servera kurun ve serverda map değiştirin.