Harita Oylama (Map Chooser)
Moderatör: Moderatörler
-
Konu Sahibi - Mesajlar: 1531
- Kayıt: Sal May 10, 2016 12:21 pm
- Konum: İstanbul
- Server Ip/DNS: 213.238.173.117
- Clan İsmi: Holigan | Clan
Harita Oylama (Map Chooser)
Arkadaşlar sizden bir harita oylama eklentisi isteyeceğim isteklerim aşağıda;
Şuan oynanan mapın süresi bitince gelen oylamada,şuan oynanan map'ten önce oynanan 3 harita oylamada çıkmayacak.
Oylamada çıkan seçenek sayısı 6 olacak ve 1. seçenekte Rastgele Oy Ver seçeneği bulunacak ve oyuncular oyun esnasında oyunda daldıklarından ötürü sürekli ilk seçenekteki map'i seçemeyecekler.
Not : CSM Harita Oylama Sistemi (CSM MAP CHOOSER) üzerine edit yapmamanızı istiyorum.
Standart oylama eklentisi olabilir veya elinde farklı ve sorunsuz bir harita oylama sistemi olan varsa edit çekip atabilirse iyi olur.
@redarmygaming
@Yek'-ta
@PaZee
Şuan oynanan mapın süresi bitince gelen oylamada,şuan oynanan map'ten önce oynanan 3 harita oylamada çıkmayacak.
Oylamada çıkan seçenek sayısı 6 olacak ve 1. seçenekte Rastgele Oy Ver seçeneği bulunacak ve oyuncular oyun esnasında oyunda daldıklarından ötürü sürekli ilk seçenekteki map'i seçemeyecekler.
Not : CSM Harita Oylama Sistemi (CSM MAP CHOOSER) üzerine edit yapmamanızı istiyorum.
Standart oylama eklentisi olabilir veya elinde farklı ve sorunsuz bir harita oylama sistemi olan varsa edit çekip atabilirse iyi olur.
@redarmygaming
@Yek'-ta
@PaZee
Link: | |
Linklerini gizle |
-
- Mesajlar: 1761
- Kayıt: Çrş Şub 22, 2017 11:28 pm
- Konum: Istanbul
- Server Ip/DNS: Cs.teknoklan.com
- Clan İsmi: TeknoKlan
- İletişim:
Harita Oylama (Map Chooser)
konuyu tasidim eklenti isteklerine acicaksin bu tur konulari.
Link: | |
Linklerini gizle |
-
Konu Sahibi - Mesajlar: 1531
- Kayıt: Sal May 10, 2016 12:21 pm
- Konum: İstanbul
- Server Ip/DNS: 213.238.173.117
- Clan İsmi: Holigan | Clan
-
- Mesajlar: 1761
- Kayıt: Çrş Şub 22, 2017 11:28 pm
- Konum: Istanbul
- Server Ip/DNS: Cs.teknoklan.com
- Clan İsmi: TeknoKlan
- İletişim:
Harita Oylama (Map Chooser)
Buyur ;
Kod: Tümünü seç
#include <amxmodx>
#include <amxmisc>
#include <fakemeta>
#define MAX_MAP 250
new g_iTimerVote[33];
new g_iNumRTV;
new g_iPlayerProcc;
new bool:g_LastRound;
new b_HasRTV[33];
new Float:g_iLastSec[33];
new bool:g_Vote;
new bool:b_HasAlreadyVoted[33];
new iAllVoted;
new sonuc;
new SmiLe[MAX_MAP][250],configsdir[250],komutdosyasi[250],CSmiLeFaCe[MAX_MAP][250],CSmiLeFaCee,FaCe[6],LeFa[6];
new REKLAMCVAR;
new REKLAM[32];
#define TimeVote 30
new bironcekiharita;
new bironcekiharitacevir[32];
new ondanbironcekiharita;
new ondanbironcekiharitacevir[32];
new ondanbirbironcekiharita;
new ondanbirbironcekiharitacevir[32];
new elsonunubekle
public plugin_init()
{
register_plugin("CSM Harita Sistemi [RTV]", "2.0", "-CSmiLeFaCe");
register_clcmd("say /RTV", "RockTheVote")
register_clcmd("say !RTV", "RockTheVote")
register_clcmd("say .RTV", "RockTheVote")
register_clcmd("say /haritalar", "oynanilanharitalarinsirasi")
register_clcmd("say !haritalar", "oynanilanharitalarinsirasi")
register_clcmd("say .haritalar", "oynanilanharitalarinsirasi")
register_concmd("say nextmap", "Show_Nextmap")
register_menucmd(register_menuid("VoteMenu"), 1023, "ActionVoteMenu");
register_logevent("RoundEnd", 2, "1=Round_End")
elsonunubekle = register_cvar("csm_elsonunubekle","1")
bironcekiharita = register_cvar("csm_bironcekiharita","YOK")
get_pcvar_string(bironcekiharita,bironcekiharitacevir,31)
ondanbironcekiharita = register_cvar("csm_ondanbironcekiharita","YOK")
get_pcvar_string(ondanbironcekiharita,ondanbironcekiharitacevir,31)
ondanbirbironcekiharita = register_cvar("csm_ondanbirbironcekiharita","YOK")
get_pcvar_string(ondanbirbironcekiharita,ondanbirbironcekiharitacevir,31)
new suankimap[250];
get_mapname(suankimap,249);
set_cvar_string("csm_ondanbirbironcekiharita", ondanbironcekiharitacevir);
set_cvar_string("csm_ondanbironcekiharita", bironcekiharitacevir);
set_cvar_string("csm_bironcekiharita", suankimap);
set_task(45.0, "ClCmdVote", _, _, _, "d") //Buradaki 45 timeleft'in bitmesine kaç saniye kala çalışacağını gösterir.
register_cvar("amx_nextmap", "");
set_cvar_string("amx_nextmap", "");
REKLAMCVAR = register_cvar("csm_sayreklam","csplugin")
get_pcvar_string(REKLAMCVAR,REKLAM,31)
}
public oynanilanharitalarinsirasi(id){
new suankimap[250];
get_mapname(suankimap,249);
ChatColor(id,"Oynanilan haritalarin sirasi; !team%s !y--> !team%s !y--> !team%s !y--> !team%s",ondanbirbironcekiharitacevir,ondanbironcekiharitacevir ,bironcekiharitacevir, suankimap);
}
public plugin_natives()
{
register_native("HaritaOyla", "ClCmdVote", 1) //Başka eklentiler ile birleştirmek için native kullandım.
}
public Show_Nextmap(id)
{
new harita[32]
get_cvar_string("amx_nextmap",harita,sizeof(harita) - 1)
if(harita[0])
{
ChatColor(id, "!teamSonraki Harita: !g%s", harita)
}
else
ChatColor(id, "!teamSonraki Harita daha oylanmadi.")
}
public RoundEnd()
if(g_LastRound)
set_task(1.0, "changelevel");
public RockTheVote(id)
{
if(g_Vote)
{
ChatColor(id, "!teamOylama basladi.")
return PLUGIN_CONTINUE;
}
if(b_HasRTV[id])
{
ChatColor(id, "!teamOylama icin hazirsiniz.")
return PLUGIN_CONTINUE;
}
new iNum, szPlayers[32];
get_players(szPlayers, iNum, "hc")
g_iNumRTV++;
b_HasRTV[id] = true;
if(g_iNumRTV == iNum)
{
ChatColor(0, "!teamKatilimci!g(%d) !teamgerekli sayiya ulasti. Harita oylamasi geliyor..", g_iNumRTV)
set_task(5.0, "ClCmdVote");
}
else
ChatColor(0, "!teamOylama icin !g%d !teamkadar istege ihtiyacimiz var !gsay /RTV", iNum-g_iNumRTV)
return PLUGIN_HANDLED;
}
public LoadMapsInVote()
{
get_configsdir(configsdir,249);
new szMapName[ 64 ];
get_mapname( szMapName, 63 );
new satirsayisi,sonuc;
format(komutdosyasi,249,"%s/maps.ini",configsdir);
for(new i=0,deger;i<MAX_MAP;i++){
sonuc = read_file(komutdosyasi,i,SmiLe[i],249,satirsayisi);
if(sonuc != 0){
CSmiLeFaCee++;
CSmiLeFaCe[CSmiLeFaCee] = SmiLe[i];
deger++;}
}
}
public ClCmdVote(){
client_cmd(0, "spk Gman/gman_choose2")
set_cvar_float("mp_timelimit", 0.0)
set_task(1.0, "ValueVote", _, _, _, "a", 6);
}
public ValueVote()
{
static timer = 6
timer--
switch(timer)
{
case 0:
{
ChatColor(0, "!teamHarita oylamasi !gAKTIF")
g_Vote = true;
FaCe[0] = 0;
FaCe[1] = 0;
FaCe[2] = 0;
FaCe[3] = 0;
FaCe[4] = 0;
startvote()
arrayset(FaCe, 0, sizeof(FaCe));
arrayset(g_iTimerVote, TimeVote-10, 33);
arrayset(b_HasAlreadyVoted, false, 33);
set_task(float(TimeVote), "endvote");
timer = 6;
set_cvar_string("amx_nextmap", "[Oylamada]");
}
default:
{
ChatColor(0, "!teamHarita oylamasinin baslamasina !g%d saniye..", timer)
}
}
}
public startvote()
{
if(!g_Vote)
return PLUGIN_CONTINUE;
CSmiLeFaCee = 0;
LoadMapsInVote()
new suankimap[250];
get_mapname(suankimap,249);
if(CSmiLeFaCee >= 6){
LeFa[0] = random_num(1,CSmiLeFaCee);
LeFa[1] = random_num(1,CSmiLeFaCee);
LeFa[2] = random_num(1,CSmiLeFaCee);
LeFa[3] = random_num(1,CSmiLeFaCee);
LeFa[4] = random_num(1,CSmiLeFaCee);
for(new i = 0;i<5;i++){
for(new j = 0;j<5;j++){
if(i == j)
continue;
if(LeFa[i] == LeFa[j] || equal(CSmiLeFaCe[LeFa[i]],suankimap) || equal(CSmiLeFaCe[LeFa[i]],bironcekiharitacevir) || equal(CSmiLeFaCe[LeFa[i]],ondanbironcekiharitacevir)){
LeFa[i] = random_num(1,CSmiLeFaCee); // ||
i = 0;}
}
}
}
return PLUGIN_HANDLED;
}
public ChooseMap(id)
{
if(!g_Vote)
return PLUGIN_CONTINUE;
static Item[64];
new Menu,szSec[32];
formatex(Item,charsmax(Item),"\yHarita Oylama Zamani Toplam Oy %d : ^n\dOylamanin bitmesine \r%d \dSaniye^n",iAllVoted, g_iTimerVote[id], szSec)
Menu = menu_create(Item,"ActionVoteMenu")
formatex(Item,charsmax(Item),"\yRastgele Kullan")
menu_additem(Menu,Item,"1")
formatex(Item,charsmax(Item),"\r \w%s \d[\y%d%%\d]",CSmiLeFaCe[LeFa[1]], FaCe[1] * g_iPlayerProcc)
menu_additem(Menu,Item,"2")
formatex(Item,charsmax(Item),"\r \w%s \d[\y%d%%\d]",CSmiLeFaCe[LeFa[2]], FaCe[2] * g_iPlayerProcc)
menu_additem(Menu,Item,"3")
formatex(Item,charsmax(Item),"\r \w%s \d[\y%d%%\d]",CSmiLeFaCe[LeFa[3]], FaCe[3] * g_iPlayerProcc)
menu_additem(Menu,Item,"4")
formatex(Item,charsmax(Item),"\r \w%s \d[\y%d%%\d]",CSmiLeFaCe[LeFa[4]], FaCe[4] * g_iPlayerProcc)
menu_additem(Menu,Item,"5")
formatex(Item,charsmax(Item),"\r \w%s \d[\y%d%%\d]",CSmiLeFaCe[LeFa[5]], FaCe[5] * g_iPlayerProcc)
menu_additem(Menu,Item,"6")
formatex(Item,charsmax(Item),"\rOylamaya Katilma")
menu_additem(Menu,Item,"7")
menu_setprop(Menu, MPROP_EXITNAME, "\rCikis")
menu_setprop(Menu, MPROP_EXIT, MEXIT_ALL)
menu_display(id, Menu)
return PLUGIN_HANDLED
}
public ActionVoteMenu(id,menu,item)
{
new szName[32]
get_user_name(id, szName, 31)
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)
if(!b_HasAlreadyVoted[id])
{
switch(key)
{
case 1:
{
new tus = random_num(1,5)
FaCe[tus]++
client_cmd(id, "spk Gman/gman_noreg")
b_HasAlreadyVoted[id] = true;
ChatColor(0, "!g%s !teamoyuncusunun sectigi harita !g%s", szName, CSmiLeFaCe[LeFa[tus]]);
iAllVoted++;
}
case 2:
{
FaCe[key-1]++
client_cmd(id, "spk Gman/gman_noreg")
b_HasAlreadyVoted[id] = true;
ChatColor(0, "!g%s !teamoyuncusunun sectigi harita !g%s", szName, CSmiLeFaCe[LeFa[key-1]]);
iAllVoted++;
}
case 3:
{
FaCe[key-1]++
client_cmd(id, "spk Gman/gman_noreg")
b_HasAlreadyVoted[id] = true;
ChatColor(0, "!g%s !teamoyuncusunun sectigi harita !g%s", szName, CSmiLeFaCe[LeFa[key-1]]);
iAllVoted++;
}
case 4:
{
FaCe[key-1]++
client_cmd(id, "spk Gman/gman_noreg")
b_HasAlreadyVoted[id] = true;
ChatColor(0, "!g%s !teamoyuncusunun sectigi harita !g%s", szName, CSmiLeFaCe[LeFa[key-1]]);
iAllVoted++;
}
case 5:
{
FaCe[key-1]++
client_cmd(id, "spk Gman/gman_noreg")
b_HasAlreadyVoted[id] = true;
ChatColor(0, "!g%s !teamoyuncusunun sectigi harita !g%s", szName, CSmiLeFaCe[LeFa[key-1]]);
iAllVoted++;
}
case 6:
{
FaCe[key-1]++
client_cmd(id, "spk Gman/gman_noreg")
b_HasAlreadyVoted[id] = true;
ChatColor(0, "!g%s !teamoyuncusunun sectigi harita !g%s", szName, CSmiLeFaCe[LeFa[key-1]]);
iAllVoted++;
}
case 7:
{
if(!b_HasAlreadyVoted[id])
{
ChatColor(0, "!g%s !teamoylamaya katilmadi.", szName);
b_HasAlreadyVoted[id] = true;
}
return PLUGIN_CONTINUE;
}
}
}
menu_destroy(menu)
return PLUGIN_HANDLED
}
public endvote()
{
new kazanan = LeFa[0], eniyiharita = FaCe[0];
for(new i = 0; i <5; i++){
if(FaCe[i] > eniyiharita){
kazanan = LeFa[i];
eniyiharita = FaCe[i];}
}
g_Vote = false;
if(!is_map_valid(CSmiLeFaCe[kazanan]))
{
FaCe[0] = 0;
FaCe[1] = 0;
FaCe[2] = 0;
FaCe[3] = 0;
FaCe[4] = 0;
iAllVoted = 0;
client_cmd(0, "spk Gman/gman_nowork")
set_task(5.0, "ClCmdVote");
ChatColor(0, "!teamSeçilen harita !g%s ^"!ycstrike/maps!g^" !teamklasöründe !gYOK.!teamOylama islemi yeniden yapilacak.", CSmiLeFaCe[kazanan])
return PLUGIN_HANDLED;
}
ChatColor(0, "!teamSonraki Harita: !g%s", CSmiLeFaCe[kazanan])
set_cvar_string("amx_nextmap", CSmiLeFaCe[kazanan]);
sonuc = kazanan;
if(get_pcvar_num(elsonunubekle) == 1){
g_LastRound = true;
set_dhudmessage( 149,68,0, -1.0, -0.70, 2, 4.0, 11.0, 0.01, 1.5 )
show_dhudmessage(0, "Sonraki Harita: %s^nHarita el sonunda degisecek",CSmiLeFaCe[kazanan])
}
else{
set_task(1.0, "changelevel");
}
return PLUGIN_HANDLED;
}
public changelevel()
{
set_cvar_float("mp_timelimit", 0.0);
set_dhudmessage( 0,255,0, -1.0, -0.40, 0, 11.0, 6.0, 0.1, 1.5 )
show_dhudmessage(0, "^nHarita %s olarak degistiriliyor", CSmiLeFaCe[sonuc])
//client_cmd(0, "spk Gman/gman_wise")
new iNum, szPlayers[32];
get_players(szPlayers, iNum)
for(new i; i < iNum; i++)
{
client_cmd(szPlayers[i], "drop;wait;wait;wait;wait;wait;drop;wait;wait;wait;wait;wait;drop");
set_pev(szPlayers[i], pev_flags, pev(szPlayers[i], pev_flags) | FL_FROZEN)
}
set_task(3.5, "changelevel1");
set_task(6.0, "changelevel2");
}
public changelevel1()
{
new _modName[10]
get_modname(_modName, 9)
if (!equal(_modName, "zp"))
{
message_begin(MSG_ALL, SVC_INTERMISSION)
message_end()
}
}
public changelevel2()
{
server_cmd("changelevel %s", CSmiLeFaCe[sonuc]);
}
public client_PreThink(id)
{
if(!g_Vote)
return;
if(g_iTimerVote[id] <= -1)
return;
if(iAllVoted)
g_iPlayerProcc = 100 / iAllVoted;
else
g_iPlayerProcc = 0;
if((get_gametime() - g_iLastSec[id]) >= 1.0)
if(g_iTimerVote[id] != 0)
g_iTimerVote[id]--, ChooseMap(id), g_iLastSec[id] = get_gametime();
else
show_menu(id, 0, "^n"), g_iTimerVote[id] = -1;
}
stock ChatColor(const id, const input[], any:...)
{
new count = 1, players[32]
static msg[191]
vformat(msg, 190, input, 3)
format(msg, sizeof(msg), "^1[^4%s^1] %s", REKLAM, msg)
replace_all(msg, 190, "!g", "^4")
replace_all(msg, 190, "!y", "^1")
replace_all(msg, 190, "!team", "^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();
}
}
}
}
Link: | |
Linklerini gizle |
-
Konu Sahibi - Mesajlar: 1531
- Kayıt: Sal May 10, 2016 12:21 pm
- Konum: İstanbul
- Server Ip/DNS: 213.238.173.117
- Clan İsmi: Holigan | Clan
Harita Oylama (Map Chooser)
Dostum eline sağlık eklenti sorunsuz gibi gözüküyor.
Sadece ufak bir sorun var seçenek sayısı 6 fakat;
1 map ismi %
2 map ismi %
3 map ismi %
4 map ismi %
5 map ismi %
6 %
6. seçenekte map ismi yok.
Sadece ufak bir sorun var seçenek sayısı 6 fakat;
1 map ismi %
2 map ismi %
3 map ismi %
4 map ismi %
5 map ismi %
6 %
6. seçenekte map ismi yok.
PaZee yazdı:Buyur ;
Kod: Tümünü seç
#include <amxmodx> #include <amxmisc> #include <fakemeta> #define MAX_MAP 250 new g_iTimerVote[33]; new g_iNumRTV; new g_iPlayerProcc; new bool:g_LastRound; new b_HasRTV[33]; new Float:g_iLastSec[33]; new bool:g_Vote; new bool:b_HasAlreadyVoted[33]; new iAllVoted; new sonuc; new SmiLe[MAX_MAP][250],configsdir[250],komutdosyasi[250],CSmiLeFaCe[MAX_MAP][250],CSmiLeFaCee,FaCe[6],LeFa[6]; new REKLAMCVAR; new REKLAM[32]; #define TimeVote 30 new bironcekiharita; new bironcekiharitacevir[32]; new ondanbironcekiharita; new ondanbironcekiharitacevir[32]; new ondanbirbironcekiharita; new ondanbirbironcekiharitacevir[32]; new elsonunubekle public plugin_init() { register_plugin("CSM Harita Sistemi [RTV]", "2.0", "-CSmiLeFaCe"); register_clcmd("say /RTV", "RockTheVote") register_clcmd("say !RTV", "RockTheVote") register_clcmd("say .RTV", "RockTheVote") register_clcmd("say /haritalar", "oynanilanharitalarinsirasi") register_clcmd("say !haritalar", "oynanilanharitalarinsirasi") register_clcmd("say .haritalar", "oynanilanharitalarinsirasi") register_concmd("say nextmap", "Show_Nextmap") register_menucmd(register_menuid("VoteMenu"), 1023, "ActionVoteMenu"); register_logevent("RoundEnd", 2, "1=Round_End") elsonunubekle = register_cvar("csm_elsonunubekle","1") bironcekiharita = register_cvar("csm_bironcekiharita","YOK") get_pcvar_string(bironcekiharita,bironcekiharitacevir,31) ondanbironcekiharita = register_cvar("csm_ondanbironcekiharita","YOK") get_pcvar_string(ondanbironcekiharita,ondanbironcekiharitacevir,31) ondanbirbironcekiharita = register_cvar("csm_ondanbirbironcekiharita","YOK") get_pcvar_string(ondanbirbironcekiharita,ondanbirbironcekiharitacevir,31) new suankimap[250]; get_mapname(suankimap,249); set_cvar_string("csm_ondanbirbironcekiharita", ondanbironcekiharitacevir); set_cvar_string("csm_ondanbironcekiharita", bironcekiharitacevir); set_cvar_string("csm_bironcekiharita", suankimap); set_task(45.0, "ClCmdVote", _, _, _, "d") //Buradaki 45 timeleft'in bitmesine kaç saniye kala çalışacağını gösterir. register_cvar("amx_nextmap", ""); set_cvar_string("amx_nextmap", ""); REKLAMCVAR = register_cvar("csm_sayreklam","csplugin") get_pcvar_string(REKLAMCVAR,REKLAM,31) } public oynanilanharitalarinsirasi(id){ new suankimap[250]; get_mapname(suankimap,249); ChatColor(id,"Oynanilan haritalarin sirasi; !team%s !y--> !team%s !y--> !team%s !y--> !team%s",ondanbirbironcekiharitacevir,ondanbironcekiharitacevir ,bironcekiharitacevir, suankimap); } public plugin_natives() { register_native("HaritaOyla", "ClCmdVote", 1) //Başka eklentiler ile birleştirmek için native kullandım. } public Show_Nextmap(id) { new harita[32] get_cvar_string("amx_nextmap",harita,sizeof(harita) - 1) if(harita[0]) { ChatColor(id, "!teamSonraki Harita: !g%s", harita) } else ChatColor(id, "!teamSonraki Harita daha oylanmadi.") } public RoundEnd() if(g_LastRound) set_task(1.0, "changelevel"); public RockTheVote(id) { if(g_Vote) { ChatColor(id, "!teamOylama basladi.") return PLUGIN_CONTINUE; } if(b_HasRTV[id]) { ChatColor(id, "!teamOylama icin hazirsiniz.") return PLUGIN_CONTINUE; } new iNum, szPlayers[32]; get_players(szPlayers, iNum, "hc") g_iNumRTV++; b_HasRTV[id] = true; if(g_iNumRTV == iNum) { ChatColor(0, "!teamKatilimci!g(%d) !teamgerekli sayiya ulasti. Harita oylamasi geliyor..", g_iNumRTV) set_task(5.0, "ClCmdVote"); } else ChatColor(0, "!teamOylama icin !g%d !teamkadar istege ihtiyacimiz var !gsay /RTV", iNum-g_iNumRTV) return PLUGIN_HANDLED; } public LoadMapsInVote() { get_configsdir(configsdir,249); new szMapName[ 64 ]; get_mapname( szMapName, 63 ); new satirsayisi,sonuc; format(komutdosyasi,249,"%s/maps.ini",configsdir); for(new i=0,deger;i<MAX_MAP;i++){ sonuc = read_file(komutdosyasi,i,SmiLe[i],249,satirsayisi); if(sonuc != 0){ CSmiLeFaCee++; CSmiLeFaCe[CSmiLeFaCee] = SmiLe[i]; deger++;} } } public ClCmdVote(){ client_cmd(0, "spk Gman/gman_choose2") set_cvar_float("mp_timelimit", 0.0) set_task(1.0, "ValueVote", _, _, _, "a", 6); } public ValueVote() { static timer = 6 timer-- switch(timer) { case 0: { ChatColor(0, "!teamHarita oylamasi !gAKTIF") g_Vote = true; FaCe[0] = 0; FaCe[1] = 0; FaCe[2] = 0; FaCe[3] = 0; FaCe[4] = 0; startvote() arrayset(FaCe, 0, sizeof(FaCe)); arrayset(g_iTimerVote, TimeVote-10, 33); arrayset(b_HasAlreadyVoted, false, 33); set_task(float(TimeVote), "endvote"); timer = 6; set_cvar_string("amx_nextmap", "[Oylamada]"); } default: { ChatColor(0, "!teamHarita oylamasinin baslamasina !g%d saniye..", timer) } } } public startvote() { if(!g_Vote) return PLUGIN_CONTINUE; CSmiLeFaCee = 0; LoadMapsInVote() new suankimap[250]; get_mapname(suankimap,249); if(CSmiLeFaCee >= 6){ LeFa[0] = random_num(1,CSmiLeFaCee); LeFa[1] = random_num(1,CSmiLeFaCee); LeFa[2] = random_num(1,CSmiLeFaCee); LeFa[3] = random_num(1,CSmiLeFaCee); LeFa[4] = random_num(1,CSmiLeFaCee); for(new i = 0;i<5;i++){ for(new j = 0;j<5;j++){ if(i == j) continue; if(LeFa[i] == LeFa[j] || equal(CSmiLeFaCe[LeFa[i]],suankimap) || equal(CSmiLeFaCe[LeFa[i]],bironcekiharitacevir) || equal(CSmiLeFaCe[LeFa[i]],ondanbironcekiharitacevir)){ LeFa[i] = random_num(1,CSmiLeFaCee); // || i = 0;} } } } return PLUGIN_HANDLED; } public ChooseMap(id) { if(!g_Vote) return PLUGIN_CONTINUE; static Item[64]; new Menu,szSec[32]; formatex(Item,charsmax(Item),"\yHarita Oylama Zamani Toplam Oy %d : ^n\dOylamanin bitmesine \r%d \dSaniye^n",iAllVoted, g_iTimerVote[id], szSec) Menu = menu_create(Item,"ActionVoteMenu") formatex(Item,charsmax(Item),"\yRastgele Kullan") menu_additem(Menu,Item,"1") formatex(Item,charsmax(Item),"\r \w%s \d[\y%d%%\d]",CSmiLeFaCe[LeFa[1]], FaCe[1] * g_iPlayerProcc) menu_additem(Menu,Item,"2") formatex(Item,charsmax(Item),"\r \w%s \d[\y%d%%\d]",CSmiLeFaCe[LeFa[2]], FaCe[2] * g_iPlayerProcc) menu_additem(Menu,Item,"3") formatex(Item,charsmax(Item),"\r \w%s \d[\y%d%%\d]",CSmiLeFaCe[LeFa[3]], FaCe[3] * g_iPlayerProcc) menu_additem(Menu,Item,"4") formatex(Item,charsmax(Item),"\r \w%s \d[\y%d%%\d]",CSmiLeFaCe[LeFa[4]], FaCe[4] * g_iPlayerProcc) menu_additem(Menu,Item,"5") formatex(Item,charsmax(Item),"\r \w%s \d[\y%d%%\d]",CSmiLeFaCe[LeFa[5]], FaCe[5] * g_iPlayerProcc) menu_additem(Menu,Item,"6") formatex(Item,charsmax(Item),"\rOylamaya Katilma") menu_additem(Menu,Item,"7") menu_setprop(Menu, MPROP_EXITNAME, "\rCikis") menu_setprop(Menu, MPROP_EXIT, MEXIT_ALL) menu_display(id, Menu) return PLUGIN_HANDLED } public ActionVoteMenu(id,menu,item) { new szName[32] get_user_name(id, szName, 31) 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) if(!b_HasAlreadyVoted[id]) { switch(key) { case 1: { new tus = random_num(1,5) FaCe[tus]++ client_cmd(id, "spk Gman/gman_noreg") b_HasAlreadyVoted[id] = true; ChatColor(0, "!g%s !teamoyuncusunun sectigi harita !g%s", szName, CSmiLeFaCe[LeFa[tus]]); iAllVoted++; } case 2: { FaCe[key-1]++ client_cmd(id, "spk Gman/gman_noreg") b_HasAlreadyVoted[id] = true; ChatColor(0, "!g%s !teamoyuncusunun sectigi harita !g%s", szName, CSmiLeFaCe[LeFa[key-1]]); iAllVoted++; } case 3: { FaCe[key-1]++ client_cmd(id, "spk Gman/gman_noreg") b_HasAlreadyVoted[id] = true; ChatColor(0, "!g%s !teamoyuncusunun sectigi harita !g%s", szName, CSmiLeFaCe[LeFa[key-1]]); iAllVoted++; } case 4: { FaCe[key-1]++ client_cmd(id, "spk Gman/gman_noreg") b_HasAlreadyVoted[id] = true; ChatColor(0, "!g%s !teamoyuncusunun sectigi harita !g%s", szName, CSmiLeFaCe[LeFa[key-1]]); iAllVoted++; } case 5: { FaCe[key-1]++ client_cmd(id, "spk Gman/gman_noreg") b_HasAlreadyVoted[id] = true; ChatColor(0, "!g%s !teamoyuncusunun sectigi harita !g%s", szName, CSmiLeFaCe[LeFa[key-1]]); iAllVoted++; } case 6: { FaCe[key-1]++ client_cmd(id, "spk Gman/gman_noreg") b_HasAlreadyVoted[id] = true; ChatColor(0, "!g%s !teamoyuncusunun sectigi harita !g%s", szName, CSmiLeFaCe[LeFa[key-1]]); iAllVoted++; } case 7: { if(!b_HasAlreadyVoted[id]) { ChatColor(0, "!g%s !teamoylamaya katilmadi.", szName); b_HasAlreadyVoted[id] = true; } return PLUGIN_CONTINUE; } } } menu_destroy(menu) return PLUGIN_HANDLED } public endvote() { new kazanan = LeFa[0], eniyiharita = FaCe[0]; for(new i = 0; i <5; i++){ if(FaCe[i] > eniyiharita){ kazanan = LeFa[i]; eniyiharita = FaCe[i];} } g_Vote = false; if(!is_map_valid(CSmiLeFaCe[kazanan])) { FaCe[0] = 0; FaCe[1] = 0; FaCe[2] = 0; FaCe[3] = 0; FaCe[4] = 0; iAllVoted = 0; client_cmd(0, "spk Gman/gman_nowork") set_task(5.0, "ClCmdVote"); ChatColor(0, "!teamSeçilen harita !g%s ^"!ycstrike/maps!g^" !teamklasöründe !gYOK.!teamOylama islemi yeniden yapilacak.", CSmiLeFaCe[kazanan]) return PLUGIN_HANDLED; } ChatColor(0, "!teamSonraki Harita: !g%s", CSmiLeFaCe[kazanan]) set_cvar_string("amx_nextmap", CSmiLeFaCe[kazanan]); sonuc = kazanan; if(get_pcvar_num(elsonunubekle) == 1){ g_LastRound = true; set_dhudmessage( 149,68,0, -1.0, -0.70, 2, 4.0, 11.0, 0.01, 1.5 ) show_dhudmessage(0, "Sonraki Harita: %s^nHarita el sonunda degisecek",CSmiLeFaCe[kazanan]) } else{ set_task(1.0, "changelevel"); } return PLUGIN_HANDLED; } public changelevel() { set_cvar_float("mp_timelimit", 0.0); set_dhudmessage( 0,255,0, -1.0, -0.40, 0, 11.0, 6.0, 0.1, 1.5 ) show_dhudmessage(0, "^nHarita %s olarak degistiriliyor", CSmiLeFaCe[sonuc]) //client_cmd(0, "spk Gman/gman_wise") new iNum, szPlayers[32]; get_players(szPlayers, iNum) for(new i; i < iNum; i++) { client_cmd(szPlayers[i], "drop;wait;wait;wait;wait;wait;drop;wait;wait;wait;wait;wait;drop"); set_pev(szPlayers[i], pev_flags, pev(szPlayers[i], pev_flags) | FL_FROZEN) } set_task(3.5, "changelevel1"); set_task(6.0, "changelevel2"); } public changelevel1() { new _modName[10] get_modname(_modName, 9) if (!equal(_modName, "zp")) { message_begin(MSG_ALL, SVC_INTERMISSION) message_end() } } public changelevel2() { server_cmd("changelevel %s", CSmiLeFaCe[sonuc]); } public client_PreThink(id) { if(!g_Vote) return; if(g_iTimerVote[id] <= -1) return; if(iAllVoted) g_iPlayerProcc = 100 / iAllVoted; else g_iPlayerProcc = 0; if((get_gametime() - g_iLastSec[id]) >= 1.0) if(g_iTimerVote[id] != 0) g_iTimerVote[id]--, ChooseMap(id), g_iLastSec[id] = get_gametime(); else show_menu(id, 0, "^n"), g_iTimerVote[id] = -1; } stock ChatColor(const id, const input[], any:...) { new count = 1, players[32] static msg[191] vformat(msg, 190, input, 3) format(msg, sizeof(msg), "^1[^4%s^1] %s", REKLAM, msg) replace_all(msg, 190, "!g", "^4") replace_all(msg, 190, "!y", "^1") replace_all(msg, 190, "!team", "^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(); } } } }
Link: | |
Linklerini gizle |
-
- Mesajlar: 1761
- Kayıt: Çrş Şub 22, 2017 11:28 pm
- Konum: Istanbul
- Server Ip/DNS: Cs.teknoklan.com
- Clan İsmi: TeknoKlan
- İletişim:
-
Konu Sahibi - Mesajlar: 1531
- Kayıt: Sal May 10, 2016 12:21 pm
- Konum: İstanbul
- Server Ip/DNS: 213.238.173.117
- Clan İsmi: Holigan | Clan
Harita Oylama (Map Chooser)
zm_ice_attack5PaZee yazdı:maps.ini de kac tane map var ?
zm_holigan_base
zm_mountain_base
zm_street_base
zm_gold_dust_new
zm_3day
zm_snow_dust2
zm_sea_dust2
zm_heal_dust2_v2
zm_holigan_dust2
zm_dust2_CSO
zm_fdust2x2
zm_3room
zm_holigan_cross
zm_x2_holiganz
zm_x3_holiganz
zm_titan
zm_citylost_b5
zm_blue_base_new
zm_gold_dust_new
Link: | |
Linklerini gizle |
-
- Mesajlar: 1761
- Kayıt: Çrş Şub 22, 2017 11:28 pm
- Konum: Istanbul
- Server Ip/DNS: Cs.teknoklan.com
- Clan İsmi: TeknoKlan
- İletişim:
Harita Oylama (Map Chooser)
plugine 4 tane map adanmis kusura bakma bazen geceleri sinyal gidip gelebiliyor buyur
;

Kod: Tümünü seç
#include <amxmodx>
#include <amxmisc>
#include <fakemeta>
#define MAX_MAP 250
new g_iTimerVote[33];
new g_iNumRTV;
new g_iPlayerProcc;
new bool:g_LastRound;
new b_HasRTV[33];
new Float:g_iLastSec[33];
new bool:g_Vote;
new bool:b_HasAlreadyVoted[33];
new iAllVoted;
new sonuc;
new SmiLe[MAX_MAP][250],configsdir[250],komutdosyasi[250],CSmiLeFaCe[MAX_MAP][250],CSmiLeFaCee,FaCe[6],LeFa[6];
new REKLAMCVAR;
new REKLAM[32];
#define TimeVote 30
new bironcekiharita;
new bironcekiharitacevir[32];
new ondanbironcekiharita;
new ondanbironcekiharitacevir[32];
new ondanbirbironcekiharita;
new ondanbirbironcekiharitacevir[32];
new elsonunubekle
public plugin_init()
{
register_plugin("CSM Harita Sistemi [RTV]", "2.0", "-CSmiLeFaCe");
register_clcmd("say /RTV", "RockTheVote")
register_clcmd("say !RTV", "RockTheVote")
register_clcmd("say .RTV", "RockTheVote")
register_clcmd("say /haritalar", "oynanilanharitalarinsirasi")
register_clcmd("say !haritalar", "oynanilanharitalarinsirasi")
register_clcmd("say .haritalar", "oynanilanharitalarinsirasi")
register_concmd("say nextmap", "Show_Nextmap")
register_menucmd(register_menuid("VoteMenu"), 1023, "ActionVoteMenu");
register_logevent("RoundEnd", 2, "1=Round_End")
elsonunubekle = register_cvar("csm_elsonunubekle","1")
bironcekiharita = register_cvar("csm_bironcekiharita","YOK")
get_pcvar_string(bironcekiharita,bironcekiharitacevir,31)
ondanbironcekiharita = register_cvar("csm_ondanbironcekiharita","YOK")
get_pcvar_string(ondanbironcekiharita,ondanbironcekiharitacevir,31)
ondanbirbironcekiharita = register_cvar("csm_ondanbirbironcekiharita","YOK")
get_pcvar_string(ondanbirbironcekiharita,ondanbirbironcekiharitacevir,31)
new suankimap[250];
get_mapname(suankimap,249);
set_cvar_string("csm_ondanbirbironcekiharita", ondanbironcekiharitacevir);
set_cvar_string("csm_ondanbironcekiharita", bironcekiharitacevir);
set_cvar_string("csm_bironcekiharita", suankimap);
set_task(45.0, "ClCmdVote", _, _, _, "d") //Buradaki 45 timeleft'in bitmesine kaç saniye kala çalışacağını gösterir.
register_cvar("amx_nextmap", "");
set_cvar_string("amx_nextmap", "");
REKLAMCVAR = register_cvar("csm_sayreklam","csplugin")
get_pcvar_string(REKLAMCVAR,REKLAM,31)
}
public oynanilanharitalarinsirasi(id){
new suankimap[250];
get_mapname(suankimap,249);
ChatColor(id,"Oynanilan haritalarin sirasi; !team%s !y--> !team%s !y--> !team%s !y--> !team%s",ondanbirbironcekiharitacevir,ondanbironcekiharitacevir ,bironcekiharitacevir, suankimap);
}
public plugin_natives()
{
register_native("HaritaOyla", "ClCmdVote", 1) //Başka eklentiler ile birleştirmek için native kullandım.
}
public Show_Nextmap(id)
{
new harita[32]
get_cvar_string("amx_nextmap",harita,sizeof(harita) - 1)
if(harita[0])
{
ChatColor(id, "!teamSonraki Harita: !g%s", harita)
}
else
ChatColor(id, "!teamSonraki Harita daha oylanmadi.")
}
public RoundEnd()
if(g_LastRound)
set_task(1.0, "changelevel");
public RockTheVote(id)
{
if(g_Vote)
{
ChatColor(id, "!teamOylama basladi.")
return PLUGIN_CONTINUE;
}
if(b_HasRTV[id])
{
ChatColor(id, "!teamOylama icin hazirsiniz.")
return PLUGIN_CONTINUE;
}
new iNum, szPlayers[32];
get_players(szPlayers, iNum, "hc")
g_iNumRTV++;
b_HasRTV[id] = true;
if(g_iNumRTV == iNum)
{
ChatColor(0, "!teamKatilimci!g(%d) !teamgerekli sayiya ulasti. Harita oylamasi geliyor..", g_iNumRTV)
set_task(5.0, "ClCmdVote");
}
else
ChatColor(0, "!teamOylama icin !g%d !teamkadar istege ihtiyacimiz var !gsay /RTV", iNum-g_iNumRTV)
return PLUGIN_HANDLED;
}
public LoadMapsInVote()
{
get_configsdir(configsdir,249);
new szMapName[ 64 ];
get_mapname( szMapName, 63 );
new satirsayisi,sonuc;
format(komutdosyasi,249,"%s/maps.ini",configsdir);
for(new i=0,deger;i<MAX_MAP;i++){
sonuc = read_file(komutdosyasi,i,SmiLe[i],249,satirsayisi);
if(sonuc != 0){
CSmiLeFaCee++;
CSmiLeFaCe[CSmiLeFaCee] = SmiLe[i];
deger++;}
}
}
public ClCmdVote(){
client_cmd(0, "spk Gman/gman_choose2")
set_cvar_float("mp_timelimit", 0.0)
set_task(1.0, "ValueVote", _, _, _, "a", 6);
}
public ValueVote()
{
static timer = 6
timer--
switch(timer)
{
case 0:
{
ChatColor(0, "!teamHarita oylamasi !gAKTIF")
g_Vote = true;
FaCe[0] = 0;
FaCe[1] = 0;
FaCe[2] = 0;
FaCe[3] = 0;
FaCe[4] = 0;
startvote()
arrayset(FaCe, 0, sizeof(FaCe));
arrayset(g_iTimerVote, TimeVote-10, 33);
arrayset(b_HasAlreadyVoted, false, 33);
set_task(float(TimeVote), "endvote");
timer = 6;
set_cvar_string("amx_nextmap", "[Oylamada]");
}
default:
{
ChatColor(0, "!teamHarita oylamasinin baslamasina !g%d saniye..", timer)
}
}
}
public startvote()
{
if(!g_Vote)
return PLUGIN_CONTINUE;
CSmiLeFaCee = 0;
LoadMapsInVote()
new suankimap[250];
get_mapname(suankimap,249);
if(CSmiLeFaCee >= 6){
LeFa[0] = random_num(1,CSmiLeFaCee);
LeFa[1] = random_num(1,CSmiLeFaCee);
LeFa[2] = random_num(1,CSmiLeFaCee);
LeFa[3] = random_num(1,CSmiLeFaCee);
LeFa[4] = random_num(1,CSmiLeFaCee);
for(new i = 0;i<5;i++){
for(new j = 0;j<5;j++){
if(i == j)
continue;
if(LeFa[i] == LeFa[j] || equal(CSmiLeFaCe[LeFa[i]],suankimap) || equal(CSmiLeFaCe[LeFa[i]],bironcekiharitacevir) || equal(CSmiLeFaCe[LeFa[i]],ondanbironcekiharitacevir)){
LeFa[i] = random_num(1,CSmiLeFaCee); // ||
i = 0;}
}
}
}
return PLUGIN_HANDLED;
}
public ChooseMap(id)
{
if(!g_Vote)
return PLUGIN_CONTINUE;
static Item[64];
new Menu,szSec[32];
formatex(Item,charsmax(Item),"\yHarita Oylama Zamani Toplam Oy %d : ^n\dOylamanin bitmesine \r%d \dSaniye^n",iAllVoted, g_iTimerVote[id], szSec)
Menu = menu_create(Item,"ActionVoteMenu")
formatex(Item,charsmax(Item),"\yRastgele Kullan")
menu_additem(Menu,Item,"1")
formatex(Item,charsmax(Item),"\r \w%s \d[\y%d%%\d]",CSmiLeFaCe[LeFa[1]], FaCe[1] * g_iPlayerProcc)
menu_additem(Menu,Item,"2")
formatex(Item,charsmax(Item),"\r \w%s \d[\y%d%%\d]",CSmiLeFaCe[LeFa[2]], FaCe[2] * g_iPlayerProcc)
menu_additem(Menu,Item,"3")
formatex(Item,charsmax(Item),"\r \w%s \d[\y%d%%\d]",CSmiLeFaCe[LeFa[3]], FaCe[3] * g_iPlayerProcc)
menu_additem(Menu,Item,"4")
formatex(Item,charsmax(Item),"\r \w%s \d[\y%d%%\d]",CSmiLeFaCe[LeFa[4]], FaCe[4] * g_iPlayerProcc)
menu_additem(Menu,Item,"5")
formatex(Item,charsmax(Item),"\rOylamaya Katilma")
menu_additem(Menu,Item,"6")
menu_setprop(Menu, MPROP_EXITNAME, "\rCikis")
menu_setprop(Menu, MPROP_EXIT, MEXIT_ALL)
menu_display(id, Menu)
return PLUGIN_HANDLED
}
public ActionVoteMenu(id,menu,item)
{
new szName[32]
get_user_name(id, szName, 31)
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)
if(!b_HasAlreadyVoted[id])
{
switch(key)
{
case 1:
{
new tus = random_num(1,5)
FaCe[tus]++
client_cmd(id, "spk Gman/gman_noreg")
b_HasAlreadyVoted[id] = true;
ChatColor(0, "!g%s !teamoyuncusunun sectigi harita !g%s", szName, CSmiLeFaCe[LeFa[tus]]);
iAllVoted++;
}
case 2:
{
FaCe[key-1]++
client_cmd(id, "spk Gman/gman_noreg")
b_HasAlreadyVoted[id] = true;
ChatColor(0, "!g%s !teamoyuncusunun sectigi harita !g%s", szName, CSmiLeFaCe[LeFa[key-1]]);
iAllVoted++;
}
case 3:
{
FaCe[key-1]++
client_cmd(id, "spk Gman/gman_noreg")
b_HasAlreadyVoted[id] = true;
ChatColor(0, "!g%s !teamoyuncusunun sectigi harita !g%s", szName, CSmiLeFaCe[LeFa[key-1]]);
iAllVoted++;
}
case 4:
{
FaCe[key-1]++
client_cmd(id, "spk Gman/gman_noreg")
b_HasAlreadyVoted[id] = true;
ChatColor(0, "!g%s !teamoyuncusunun sectigi harita !g%s", szName, CSmiLeFaCe[LeFa[key-1]]);
iAllVoted++;
}
case 5:
{
FaCe[key-1]++
client_cmd(id, "spk Gman/gman_noreg")
b_HasAlreadyVoted[id] = true;
ChatColor(0, "!g%s !teamoyuncusunun sectigi harita !g%s", szName, CSmiLeFaCe[LeFa[key-1]]);
iAllVoted++;
}
case 6:
{
if(!b_HasAlreadyVoted[id])
{
ChatColor(0, "!g%s !teamoylamaya katilmadi.", szName);
b_HasAlreadyVoted[id] = true;
}
return PLUGIN_CONTINUE;
}
}
}
menu_destroy(menu)
return PLUGIN_HANDLED
}
public endvote()
{
new kazanan = LeFa[0], eniyiharita = FaCe[0];
for(new i = 0; i <5; i++){
if(FaCe[i] > eniyiharita){
kazanan = LeFa[i];
eniyiharita = FaCe[i];}
}
g_Vote = false;
if(!is_map_valid(CSmiLeFaCe[kazanan]))
{
FaCe[0] = 0;
FaCe[1] = 0;
FaCe[2] = 0;
FaCe[3] = 0;
FaCe[4] = 0;
iAllVoted = 0;
client_cmd(0, "spk Gman/gman_nowork")
set_task(5.0, "ClCmdVote");
ChatColor(0, "!teamSeçilen harita !g%s ^"!ycstrike/maps!g^" !teamklasöründe !gYOK.!teamOylama islemi yeniden yapilacak.", CSmiLeFaCe[kazanan])
return PLUGIN_HANDLED;
}
ChatColor(0, "!teamSonraki Harita: !g%s", CSmiLeFaCe[kazanan])
set_cvar_string("amx_nextmap", CSmiLeFaCe[kazanan]);
sonuc = kazanan;
if(get_pcvar_num(elsonunubekle) == 1){
g_LastRound = true;
set_dhudmessage( 149,68,0, -1.0, -0.70, 2, 4.0, 11.0, 0.01, 1.5 )
show_dhudmessage(0, "Sonraki Harita: %s^nHarita el sonunda degisecek",CSmiLeFaCe[kazanan])
}
else{
set_task(1.0, "changelevel");
}
return PLUGIN_HANDLED;
}
public changelevel()
{
set_cvar_float("mp_timelimit", 0.0);
set_dhudmessage( 0,255,0, -1.0, -0.40, 0, 11.0, 6.0, 0.1, 1.5 )
show_dhudmessage(0, "^nHarita %s olarak degistiriliyor", CSmiLeFaCe[sonuc])
//client_cmd(0, "spk Gman/gman_wise")
new iNum, szPlayers[32];
get_players(szPlayers, iNum)
for(new i; i < iNum; i++)
{
client_cmd(szPlayers[i], "drop;wait;wait;wait;wait;wait;drop;wait;wait;wait;wait;wait;drop");
set_pev(szPlayers[i], pev_flags, pev(szPlayers[i], pev_flags) | FL_FROZEN)
}
set_task(3.5, "changelevel1");
set_task(6.0, "changelevel2");
}
public changelevel1()
{
new _modName[10]
get_modname(_modName, 9)
if (!equal(_modName, "zp"))
{
message_begin(MSG_ALL, SVC_INTERMISSION)
message_end()
}
}
public changelevel2()
{
server_cmd("changelevel %s", CSmiLeFaCe[sonuc]);
}
public client_PreThink(id)
{
if(!g_Vote)
return;
if(g_iTimerVote[id] <= -1)
return;
if(iAllVoted)
g_iPlayerProcc = 100 / iAllVoted;
else
g_iPlayerProcc = 0;
if((get_gametime() - g_iLastSec[id]) >= 1.0)
if(g_iTimerVote[id] != 0)
g_iTimerVote[id]--, ChooseMap(id), g_iLastSec[id] = get_gametime();
else
show_menu(id, 0, "^n"), g_iTimerVote[id] = -1;
}
stock ChatColor(const id, const input[], any:...)
{
new count = 1, players[32]
static msg[191]
vformat(msg, 190, input, 3)
format(msg, sizeof(msg), "^1[^4%s^1] %s", REKLAM, msg)
replace_all(msg, 190, "!g", "^4")
replace_all(msg, 190, "!y", "^1")
replace_all(msg, 190, "!team", "^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();
}
}
}
}
Link: | |
Linklerini gizle |
-
Konu Sahibi - Mesajlar: 1531
- Kayıt: Sal May 10, 2016 12:21 pm
- Konum: İstanbul
- Server Ip/DNS: 213.238.173.117
- Clan İsmi: Holigan | Clan
Harita Oylama (Map Chooser)
Oylama esnasında sol tarafta her hangi bir işlem yapılamıyor.
Örneğin harita oylaması mapin başlarında gelirse silah alma menüsü kullanılamıyor.
Onu da ayarlarmısın.
Örneğin harita oylaması mapin başlarında gelirse silah alma menüsü kullanılamıyor.
Onu da ayarlarmısın.
PaZee yazdı:plugine 4 tane map adanmis kusura bakma bazen geceleri sinyal gidip gelebiliyor buyur;
Kod: Tümünü seç
#include <amxmodx> #include <amxmisc> #include <fakemeta> #define MAX_MAP 250 new g_iTimerVote[33]; new g_iNumRTV; new g_iPlayerProcc; new bool:g_LastRound; new b_HasRTV[33]; new Float:g_iLastSec[33]; new bool:g_Vote; new bool:b_HasAlreadyVoted[33]; new iAllVoted; new sonuc; new SmiLe[MAX_MAP][250],configsdir[250],komutdosyasi[250],CSmiLeFaCe[MAX_MAP][250],CSmiLeFaCee,FaCe[6],LeFa[6]; new REKLAMCVAR; new REKLAM[32]; #define TimeVote 30 new bironcekiharita; new bironcekiharitacevir[32]; new ondanbironcekiharita; new ondanbironcekiharitacevir[32]; new ondanbirbironcekiharita; new ondanbirbironcekiharitacevir[32]; new elsonunubekle public plugin_init() { register_plugin("CSM Harita Sistemi [RTV]", "2.0", "-CSmiLeFaCe"); register_clcmd("say /RTV", "RockTheVote") register_clcmd("say !RTV", "RockTheVote") register_clcmd("say .RTV", "RockTheVote") register_clcmd("say /haritalar", "oynanilanharitalarinsirasi") register_clcmd("say !haritalar", "oynanilanharitalarinsirasi") register_clcmd("say .haritalar", "oynanilanharitalarinsirasi") register_concmd("say nextmap", "Show_Nextmap") register_menucmd(register_menuid("VoteMenu"), 1023, "ActionVoteMenu"); register_logevent("RoundEnd", 2, "1=Round_End") elsonunubekle = register_cvar("csm_elsonunubekle","1") bironcekiharita = register_cvar("csm_bironcekiharita","YOK") get_pcvar_string(bironcekiharita,bironcekiharitacevir,31) ondanbironcekiharita = register_cvar("csm_ondanbironcekiharita","YOK") get_pcvar_string(ondanbironcekiharita,ondanbironcekiharitacevir,31) ondanbirbironcekiharita = register_cvar("csm_ondanbirbironcekiharita","YOK") get_pcvar_string(ondanbirbironcekiharita,ondanbirbironcekiharitacevir,31) new suankimap[250]; get_mapname(suankimap,249); set_cvar_string("csm_ondanbirbironcekiharita", ondanbironcekiharitacevir); set_cvar_string("csm_ondanbironcekiharita", bironcekiharitacevir); set_cvar_string("csm_bironcekiharita", suankimap); set_task(45.0, "ClCmdVote", _, _, _, "d") //Buradaki 45 timeleft'in bitmesine kaç saniye kala çalışacağını gösterir. register_cvar("amx_nextmap", ""); set_cvar_string("amx_nextmap", ""); REKLAMCVAR = register_cvar("csm_sayreklam","csplugin") get_pcvar_string(REKLAMCVAR,REKLAM,31) } public oynanilanharitalarinsirasi(id){ new suankimap[250]; get_mapname(suankimap,249); ChatColor(id,"Oynanilan haritalarin sirasi; !team%s !y--> !team%s !y--> !team%s !y--> !team%s",ondanbirbironcekiharitacevir,ondanbironcekiharitacevir ,bironcekiharitacevir, suankimap); } public plugin_natives() { register_native("HaritaOyla", "ClCmdVote", 1) //Başka eklentiler ile birleştirmek için native kullandım. } public Show_Nextmap(id) { new harita[32] get_cvar_string("amx_nextmap",harita,sizeof(harita) - 1) if(harita[0]) { ChatColor(id, "!teamSonraki Harita: !g%s", harita) } else ChatColor(id, "!teamSonraki Harita daha oylanmadi.") } public RoundEnd() if(g_LastRound) set_task(1.0, "changelevel"); public RockTheVote(id) { if(g_Vote) { ChatColor(id, "!teamOylama basladi.") return PLUGIN_CONTINUE; } if(b_HasRTV[id]) { ChatColor(id, "!teamOylama icin hazirsiniz.") return PLUGIN_CONTINUE; } new iNum, szPlayers[32]; get_players(szPlayers, iNum, "hc") g_iNumRTV++; b_HasRTV[id] = true; if(g_iNumRTV == iNum) { ChatColor(0, "!teamKatilimci!g(%d) !teamgerekli sayiya ulasti. Harita oylamasi geliyor..", g_iNumRTV) set_task(5.0, "ClCmdVote"); } else ChatColor(0, "!teamOylama icin !g%d !teamkadar istege ihtiyacimiz var !gsay /RTV", iNum-g_iNumRTV) return PLUGIN_HANDLED; } public LoadMapsInVote() { get_configsdir(configsdir,249); new szMapName[ 64 ]; get_mapname( szMapName, 63 ); new satirsayisi,sonuc; format(komutdosyasi,249,"%s/maps.ini",configsdir); for(new i=0,deger;i<MAX_MAP;i++){ sonuc = read_file(komutdosyasi,i,SmiLe[i],249,satirsayisi); if(sonuc != 0){ CSmiLeFaCee++; CSmiLeFaCe[CSmiLeFaCee] = SmiLe[i]; deger++;} } } public ClCmdVote(){ client_cmd(0, "spk Gman/gman_choose2") set_cvar_float("mp_timelimit", 0.0) set_task(1.0, "ValueVote", _, _, _, "a", 6); } public ValueVote() { static timer = 6 timer-- switch(timer) { case 0: { ChatColor(0, "!teamHarita oylamasi !gAKTIF") g_Vote = true; FaCe[0] = 0; FaCe[1] = 0; FaCe[2] = 0; FaCe[3] = 0; FaCe[4] = 0; startvote() arrayset(FaCe, 0, sizeof(FaCe)); arrayset(g_iTimerVote, TimeVote-10, 33); arrayset(b_HasAlreadyVoted, false, 33); set_task(float(TimeVote), "endvote"); timer = 6; set_cvar_string("amx_nextmap", "[Oylamada]"); } default: { ChatColor(0, "!teamHarita oylamasinin baslamasina !g%d saniye..", timer) } } } public startvote() { if(!g_Vote) return PLUGIN_CONTINUE; CSmiLeFaCee = 0; LoadMapsInVote() new suankimap[250]; get_mapname(suankimap,249); if(CSmiLeFaCee >= 6){ LeFa[0] = random_num(1,CSmiLeFaCee); LeFa[1] = random_num(1,CSmiLeFaCee); LeFa[2] = random_num(1,CSmiLeFaCee); LeFa[3] = random_num(1,CSmiLeFaCee); LeFa[4] = random_num(1,CSmiLeFaCee); for(new i = 0;i<5;i++){ for(new j = 0;j<5;j++){ if(i == j) continue; if(LeFa[i] == LeFa[j] || equal(CSmiLeFaCe[LeFa[i]],suankimap) || equal(CSmiLeFaCe[LeFa[i]],bironcekiharitacevir) || equal(CSmiLeFaCe[LeFa[i]],ondanbironcekiharitacevir)){ LeFa[i] = random_num(1,CSmiLeFaCee); // || i = 0;} } } } return PLUGIN_HANDLED; } public ChooseMap(id) { if(!g_Vote) return PLUGIN_CONTINUE; static Item[64]; new Menu,szSec[32]; formatex(Item,charsmax(Item),"\yHarita Oylama Zamani Toplam Oy %d : ^n\dOylamanin bitmesine \r%d \dSaniye^n",iAllVoted, g_iTimerVote[id], szSec) Menu = menu_create(Item,"ActionVoteMenu") formatex(Item,charsmax(Item),"\yRastgele Kullan") menu_additem(Menu,Item,"1") formatex(Item,charsmax(Item),"\r \w%s \d[\y%d%%\d]",CSmiLeFaCe[LeFa[1]], FaCe[1] * g_iPlayerProcc) menu_additem(Menu,Item,"2") formatex(Item,charsmax(Item),"\r \w%s \d[\y%d%%\d]",CSmiLeFaCe[LeFa[2]], FaCe[2] * g_iPlayerProcc) menu_additem(Menu,Item,"3") formatex(Item,charsmax(Item),"\r \w%s \d[\y%d%%\d]",CSmiLeFaCe[LeFa[3]], FaCe[3] * g_iPlayerProcc) menu_additem(Menu,Item,"4") formatex(Item,charsmax(Item),"\r \w%s \d[\y%d%%\d]",CSmiLeFaCe[LeFa[4]], FaCe[4] * g_iPlayerProcc) menu_additem(Menu,Item,"5") formatex(Item,charsmax(Item),"\rOylamaya Katilma") menu_additem(Menu,Item,"6") menu_setprop(Menu, MPROP_EXITNAME, "\rCikis") menu_setprop(Menu, MPROP_EXIT, MEXIT_ALL) menu_display(id, Menu) return PLUGIN_HANDLED } public ActionVoteMenu(id,menu,item) { new szName[32] get_user_name(id, szName, 31) 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) if(!b_HasAlreadyVoted[id]) { switch(key) { case 1: { new tus = random_num(1,5) FaCe[tus]++ client_cmd(id, "spk Gman/gman_noreg") b_HasAlreadyVoted[id] = true; ChatColor(0, "!g%s !teamoyuncusunun sectigi harita !g%s", szName, CSmiLeFaCe[LeFa[tus]]); iAllVoted++; } case 2: { FaCe[key-1]++ client_cmd(id, "spk Gman/gman_noreg") b_HasAlreadyVoted[id] = true; ChatColor(0, "!g%s !teamoyuncusunun sectigi harita !g%s", szName, CSmiLeFaCe[LeFa[key-1]]); iAllVoted++; } case 3: { FaCe[key-1]++ client_cmd(id, "spk Gman/gman_noreg") b_HasAlreadyVoted[id] = true; ChatColor(0, "!g%s !teamoyuncusunun sectigi harita !g%s", szName, CSmiLeFaCe[LeFa[key-1]]); iAllVoted++; } case 4: { FaCe[key-1]++ client_cmd(id, "spk Gman/gman_noreg") b_HasAlreadyVoted[id] = true; ChatColor(0, "!g%s !teamoyuncusunun sectigi harita !g%s", szName, CSmiLeFaCe[LeFa[key-1]]); iAllVoted++; } case 5: { FaCe[key-1]++ client_cmd(id, "spk Gman/gman_noreg") b_HasAlreadyVoted[id] = true; ChatColor(0, "!g%s !teamoyuncusunun sectigi harita !g%s", szName, CSmiLeFaCe[LeFa[key-1]]); iAllVoted++; } case 6: { if(!b_HasAlreadyVoted[id]) { ChatColor(0, "!g%s !teamoylamaya katilmadi.", szName); b_HasAlreadyVoted[id] = true; } return PLUGIN_CONTINUE; } } } menu_destroy(menu) return PLUGIN_HANDLED } public endvote() { new kazanan = LeFa[0], eniyiharita = FaCe[0]; for(new i = 0; i <5; i++){ if(FaCe[i] > eniyiharita){ kazanan = LeFa[i]; eniyiharita = FaCe[i];} } g_Vote = false; if(!is_map_valid(CSmiLeFaCe[kazanan])) { FaCe[0] = 0; FaCe[1] = 0; FaCe[2] = 0; FaCe[3] = 0; FaCe[4] = 0; iAllVoted = 0; client_cmd(0, "spk Gman/gman_nowork") set_task(5.0, "ClCmdVote"); ChatColor(0, "!teamSeçilen harita !g%s ^"!ycstrike/maps!g^" !teamklasöründe !gYOK.!teamOylama islemi yeniden yapilacak.", CSmiLeFaCe[kazanan]) return PLUGIN_HANDLED; } ChatColor(0, "!teamSonraki Harita: !g%s", CSmiLeFaCe[kazanan]) set_cvar_string("amx_nextmap", CSmiLeFaCe[kazanan]); sonuc = kazanan; if(get_pcvar_num(elsonunubekle) == 1){ g_LastRound = true; set_dhudmessage( 149,68,0, -1.0, -0.70, 2, 4.0, 11.0, 0.01, 1.5 ) show_dhudmessage(0, "Sonraki Harita: %s^nHarita el sonunda degisecek",CSmiLeFaCe[kazanan]) } else{ set_task(1.0, "changelevel"); } return PLUGIN_HANDLED; } public changelevel() { set_cvar_float("mp_timelimit", 0.0); set_dhudmessage( 0,255,0, -1.0, -0.40, 0, 11.0, 6.0, 0.1, 1.5 ) show_dhudmessage(0, "^nHarita %s olarak degistiriliyor", CSmiLeFaCe[sonuc]) //client_cmd(0, "spk Gman/gman_wise") new iNum, szPlayers[32]; get_players(szPlayers, iNum) for(new i; i < iNum; i++) { client_cmd(szPlayers[i], "drop;wait;wait;wait;wait;wait;drop;wait;wait;wait;wait;wait;drop"); set_pev(szPlayers[i], pev_flags, pev(szPlayers[i], pev_flags) | FL_FROZEN) } set_task(3.5, "changelevel1"); set_task(6.0, "changelevel2"); } public changelevel1() { new _modName[10] get_modname(_modName, 9) if (!equal(_modName, "zp")) { message_begin(MSG_ALL, SVC_INTERMISSION) message_end() } } public changelevel2() { server_cmd("changelevel %s", CSmiLeFaCe[sonuc]); } public client_PreThink(id) { if(!g_Vote) return; if(g_iTimerVote[id] <= -1) return; if(iAllVoted) g_iPlayerProcc = 100 / iAllVoted; else g_iPlayerProcc = 0; if((get_gametime() - g_iLastSec[id]) >= 1.0) if(g_iTimerVote[id] != 0) g_iTimerVote[id]--, ChooseMap(id), g_iLastSec[id] = get_gametime(); else show_menu(id, 0, "^n"), g_iTimerVote[id] = -1; } stock ChatColor(const id, const input[], any:...) { new count = 1, players[32] static msg[191] vformat(msg, 190, input, 3) format(msg, sizeof(msg), "^1[^4%s^1] %s", REKLAM, msg) replace_all(msg, 190, "!g", "^4") replace_all(msg, 190, "!y", "^1") replace_all(msg, 190, "!team", "^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(); } } } }
Link: | |
Linklerini gizle |