Spoiler
#include <amxmod>
#include <amxmisc>
#include <file>
new glos[3];
new glos1[2];
new glos2[2];
new glos3[2];
public plugin_init() {
register_plugin("SH Addon 1","1.3","O2lsie");
register_concmd("amx_votemod", "vote_mod", ADMIN_RCON);
register_concmd("amx_votemod1", "vote1", ADMIN_RCON);
register_concmd("amx_votemod2", "vote2", ADMIN_RCON);
register_concmd("amx_votemod3", "vote3", ADMIN_RCON);
register_menucmd(register_menuid("vote"),(1<<0)|(1<<1)|(1<<2),"glosowanie");
register_menucmd(register_menuid("vote1"),(1<<0)|(1<<1),"glosowanie1");
register_menucmd(register_menuid("vote2"),(1<<0)|(1<<1),"glosowanie2");
register_menucmd(register_menuid("vote3"),(1<<0)|(1<<1),"glosowanie3");
set_task(30.0, "vote_mod");
return PLUGIN_CONTINUE;
}
public vote_mod()
{
show_menu(0,(1<<0)|(1<<1)|(1<<2), "\rJaki chcesz mod na nastepna mape:^n\y1: Zwykly SuperHero^n2: Death Match + Free For All^n3: Death Match + CS Flags", 10, "vote");
set_task(20.0,"endvote");
glos[0] = 0;
glos[1] = 0;
glos[2] = 0;
return PLUGIN_HANDLED;
}
public glosowanie(id,key)
{
++ glos[key];
return PLUGIN_HANDLED;
}
public endvote()
{
static configdir[64],plik[128];
get_configsdir(configdir,63);
if((glos[0] > glos[1]) && (glos[0] > glos[2])){
client_print(0,print_chat,"Nastepna mapa bedzie bez dodatkowych modow!" );
delete_file("/addons/amxmodx/configs/plugins-csdm.ini");
rmdir("/sprawdzacz");
}
else if((glos[1] > glos[0]) && (glos[1] > glos[2])){
client_print(0,print_chat,"Mod na nastepna mape to Death Match i Free For All!" );
delete_file("/addons/amxmodx/configs/plugins-csdm.ini");
new wpis[128], wpis2[128], wpis3[128], wpis4[128], wpis5[128];
format(wpis,127,"csdm_main.amxx");
format(wpis2,127,"csdm_misc.amxx");
format(wpis3,127,"csdm_spawn_preset.amxx");
format(wpis4,127,"csdm_ffa.amxx");
format(wpis5,127,"csdm_tickets.amxx");
formatex(plik,127,"%s/plugins-csdm.ini",configdir);
write_file(plik,wpis,-1);
write_file(plik,wpis2,-1);
write_file(plik,wpis3,-1);
write_file(plik,wpis4,-1);
write_file(plik,wpis5,-1);
mkdir("/sprawdzacz");
}
else if((glos[2] > glos[0]) && (glos[2] > glos[1])){
client_print(0,print_chat,"Mod na nastepnq mape to Death Match i CS Flags!" );
delete_file("/addons/amxmodx/configs/plugins-csdm.ini");
new wpis[128], wpis2[128], wpis3[128], wpis4[128];
format(wpis,127,"csdm_main.amxx");
format(wpis2,127,"csdm_misc.amxx");
format(wpis3,127,"csdm_spawn_preset.amxx");
format(wpis4,127,"csflags.amxx");
formatex(plik,127,"%s/plugins-csdm.ini",configdir);
write_file(plik,wpis,-1);
write_file(plik,wpis2,-1);
write_file(plik,wpis3,-1);
write_file(plik,wpis4,-1);
mkdir("/sprawdzacz");
}
else if((glos[0] == glos[1]) && (glos[2] < glos[0])){
client_print(0,print_chat,"Trzeba rozstrzygnac..." );
vote1();
}
else if((glos[0] == glos[2]) && (glos[1] < glos[0])){
client_print(0,print_chat,"Trzeba rozstrzygnac..." );
vote2();
}
else if((glos[2] == glos[1]) && (glos[0] < glos[2])){
client_print(0,print_chat,"Trzeba rozstrzygnac..." );
vote3();
}
else if((glos[0] == glos[1]) && (glos[1] == glos[2])){
client_print(0,print_chat,"Glosowanie nieudane, powtarzamy." );
vote_mod();
}
}
public vote1()
{
show_menu(0,(1<<0)|(1<<1), "\rJaki chcesz mod na nastepna mape:^n/y1: Zwyky SuperHero^n2: Death Match + Free For All", 10, "vote1");
set_task(12.0,"zrob1");
glos1[0] = 0;
glos1[1] = 0;
return PLUGIN_HANDLED;
}
public glosowanie1(id,key)
{
++ glos1[key];
return PLUGIN_HANDLED;
}
public zrob1(){
static configdir[64],plik[128];
get_configsdir(configdir,63);
if(glos1[0] > glos1[1]){
client_print(0,print_chat,"Nastepna mapa bez dodatkowych modow!" );
delete_file("/addons/amxmodx/configs/plugins-csdm.ini");
rmdir("/sprawdzacz");
}
else if(glos1[0] < glos1[1]){
client_print(0,print_chat,"Mod na nastepnq mape to Death Match i Free For All!" );
delete_file("/addons/amxmodx/configs/plugins-csdm.ini");
new wpis[128], wpis2[128], wpis3[128], wpis4[128], wpis5[128];
format(wpis,127,"csdm_main.amxx");
format(wpis2,127,"csdm_misc.amxx");
format(wpis3,127,"csdm_spawn_preset.amxx");
format(wpis4,127,"csdm_ffa.amxx");
format(wpis5,127,"csdm_tickets.amxx");
formatex(plik,127,"%s/plugins-csdm.ini",configdir);
write_file(plik,wpis,-1);
write_file(plik,wpis2,-1);
write_file(plik,wpis3,-1);
write_file(plik,wpis4,-1);
write_file(plik,wpis5,-1);
mkdir("/sprawdzacz");
}
else if(glos1[0] == glos1[1]){
client_print(0,print_chat,"Głosowanie nieudane, powtarzamy." );
vote1();
}
}
public vote2()
{
show_menu(0,(1<<0)|(1<<1), "\rJaki chcesz mod na nastepna mape:^n\y1: Czysty SuperHero^n2: Death Match + CS Flags", 10, "vote2");
set_task(12.0,"zrob2");
glos2[0] = 0;
glos2[1] = 0;
return PLUGIN_HANDLED;
}
public glosowanie2(id,key)
{
++ glos2[key];
return PLUGIN_HANDLED;
}
public zrob2(){
static configdir[64],plik[128];
get_configsdir(configdir,63);
if(glos2[0] > glos2[1]){
client_print(0,print_chat,"Nastepna mapa bez dodatkowych modow!" );
delete_file("/addons/amxmodx/configs/plugins-csdm.ini");
rmdir("/sprawdzacz");
}
else if(glos2[0] < glos2[1]){
client_print(0,print_chat,"Mod na nastepna mape to Death Match i CS Flags!" );
delete_file("/addons/amxmodx/configs/plugins-csdm.ini");
new wpis[128], wpis2[128], wpis3[128], wpis4[128];
format(wpis,127,"csdm_main.amxx");
format(wpis2,127,"csdm_misc.amxx");
format(wpis3,127,"csdm_spawn_preset.amxx");
format(wpis4,127,"csflags.amxx");
formatex(plik,127,"%s/plugins-csdm.ini",configdir);
write_file(plik,wpis,-1);
write_file(plik,wpis2,-1);
write_file(plik,wpis3,-1);
write_file(plik,wpis4,-1);
mkdir("/sprawdzacz");
}
else if(glos2[0] == glos2[1]){
client_print(0,print_chat,"Głosowanie nieudane, powtarzamy." );
vote2();
}
}
public vote3()
{
show_menu(0,(1<<0)|(1<<1), "\rJaki chcesz mod na nastepna mape:^n\y1: Death Match + Free For All^n2: Death Match + CS Flags", 10, "vote3");
set_task(12.0,"zrob3");
glos3[0] = 0;
glos3[1] = 0;
return PLUGIN_HANDLED;
}
public glosowanie3(id,key)
{
++ glos3[key];
return PLUGIN_HANDLED;
}
public zrob3(){
static configdir[64],plik[128];
get_configsdir(configdir,63);
if(glos3[0] > glos3[1]){
client_print(0,print_chat,"Mod na nastepna mape to Death Match i Free For All!" );
delete_file("/addons/amxmodx/configs/plugins-csdm.ini");
new wpis[128], wpis2[128], wpis3[128], wpis4[128], wpis5[128];
format(wpis,127,"csdm_main.amxx");
format(wpis2,127,"csdm_misc.amxx");
format(wpis3,127,"csdm_spawn_preset.amxx");
format(wpis4,127,"csdm_ffa.amxx");
format(wpis5,127,"csdm_tickets.amxx");
formatex(plik,127,"%s/plugins-csdm.ini",configdir);
write_file(plik,wpis,-1);
write_file(plik,wpis2,-1);
write_file(plik,wpis3,-1);
write_file(plik,wpis4,-1);
write_file(plik,wpis5,-1);
}
else if(glos3[0] < glos3[1]){
client_print(0,print_chat,"Mod na nastepna mape to Death Match i CS Flags!" );
delete_file("/addons/amxmodx/configs/plugins-csdm.ini");
new wpis[128], wpis2[128], wpis3[128], wpis4[128];
format(wpis,127,"csdm_main.amxx");
format(wpis2,127,"csdm_misc.amxx");
format(wpis3,127,"csdm_spawn_preset.amxx");
format(wpis4,127,"csflags.amxx");
formatex(plik,127,"%s/plugins-csdm.ini",configdir);
write_file(plik,wpis,-1);
write_file(plik,wpis2,-1);
write_file(plik,wpis3,-1);
write_file(plik,wpis4,-1);
mkdir("/sprawdzacz");
}
else if(glos3[0] == glos3[1]){
client_print(0,print_chat,"Głosowanie nieudane, powtarzamy." );
vote3();
}
}