End map vote
-
Guardian Angel
Извън линия - VIP
- Мнения: 186
- Регистриран на: 18 Окт 2016, 02:00
- Местоположение: Петрич
- Се отблагодари: 1 път
- Получена благодарност: 22 пъти
End map vote
Здравейте! Имам нужда от следния плъгин
В края на всяка карта да излиза вот за играчите да гласуват на въпрос "Харесва ли ви картата?" и отговори "да" "не" . Като резултатите да се записват в текстови файл - пример:
gg_ironcore_pyramid
да - 30
не - 9
Искам го за гън гейм сървър , там картите са много и често се сменят и има доста които не се харесват на играчите, та по тоя начин искам да се пресеят лошите карти. Обаче не знам как точно ще стане защото играта там приключва при минаването на всички оръжия и при победа на някой от играчите то се отваря motd прозорец в който се уведомява кой е спечелил и разни други работи. Та не знам дали ще може при спечелването на картата да се спира играта и да се стартира вота за 5 сек да речем и след това да изскача motd прозореца или пък вота да излиза когато някой играч стигне последния левел - ножа
В края на всяка карта да излиза вот за играчите да гласуват на въпрос "Харесва ли ви картата?" и отговори "да" "не" . Като резултатите да се записват в текстови файл - пример:
gg_ironcore_pyramid
да - 30
не - 9
Искам го за гън гейм сървър , там картите са много и често се сменят и има доста които не се харесват на играчите, та по тоя начин искам да се пресеят лошите карти. Обаче не знам как точно ще стане защото играта там приключва при минаването на всички оръжия и при победа на някой от играчите то се отваря motd прозорец в който се уведомява кой е спечелил и разни други работи. Та не знам дали ще може при спечелването на картата да се спира играта и да се стартира вота за 5 сек да речем и след това да изскача motd прозореца или пък вота да излиза когато някой играч стигне последния левел - ножа
-
hackera457
Извън линия - Модератор
- Мнения: 768
- Регистриран на: 01 Ное 2016, 09:46
- Местоположение: София
- Се отблагодари: 1 път
- Получена благодарност: 124 пъти
- Обратна връзка:
Re: End map vote
Код за потвърждение: Избери целия код
#include <amxmodx>
#include <amxmisc>
#include <nvault>
#define PLUGIN "Map Rating"
#define VERSION "1.0"
#define AUTHOR "hackera457"
#pragma semicolon 1
#define ADMIN_ACCESS ADMIN_KICK
enum _:VOTES
{
VOTE_YES,
VOTE_NO
};
new g_iVotes[VOTES], g_szMap[32], g_iMapVault;
new bool:g_bIsVoted[33] = false;
public plugin_init()
{
register_plugin(PLUGIN,VERSION,AUTHOR);
register_concmd("maprating_show","cmdMapResults",ADMIN_ACCESS,"<map>");
register_clcmd("say /maprate","StartMapRate");
get_mapname(g_szMap,charsmax(g_szMap));
g_iMapVault = nvault_open("MAPRating");
LoadMapVote();
}
public StartMapRate(id)
{
if(!is_user_connected(id) || is_user_bot(id) || is_user_hltv(id))
return PLUGIN_HANDLED;
new szMenuTitle[128];
formatex(szMenuTitle, charsmax(szMenuTitle),"\rHaresva li ti kartata: \y%s^n\rGlasove \dDA: \y%i^n\rGlasove \dNE:\y%i",g_szMap,g_iVotes[VOTE_YES],g_iVotes[VOTE_NO]);
new menu = menu_create(szMenuTitle,"handlerVoteMenu");
menu_additem(menu,"\yDa","1",0);
menu_additem(menu,"\yNe","2",0);
menu_setprop(menu,MPROP_EXITNAME,"Zatvori");
menu_display(id,menu,0);
return PLUGIN_HANDLED;
}
public handlerVoteMenu(id,iMenu,iItem)
{
if(iItem == MENU_EXIT)
{
menu_destroy(iMenu);
return PLUGIN_HANDLED;
}
if(g_bIsVoted[id])
{
client_print(id,print_chat,"[MapRate] You already gave rating for this map!");
return PLUGIN_HANDLED;
}
new szData[6], szName[64];
new item_access, item_callback;
menu_item_getinfo(iMenu,iItem,item_access,szData, charsmax(szData),szName,charsmax(szName),item_callback);
new key = str_to_num(szData);
switch(key)
{
case 1:
{
g_bIsVoted[id] = true;
g_iVotes[VOTE_YES]++;
client_print(id,print_chat,"[MapRate] You have successfuly voted for this map with YES!");
}
case 2:
{
g_bIsVoted[id] = true;
g_iVotes[VOTE_NO]++;
client_print(id,print_chat,"[MapRate] You have successfuly voted for this map with NO!");
}
}
menu_destroy(iMenu);
return PLUGIN_HANDLED;
}
public client_putinserver(id)
{
if(!g_bIsVoted[id])
set_task(1.0,"StartMapRate",id,_,_,_,0);
}
public plugin_end()
{
SaveMapVote();
}
public SaveMapVote()
{
new szVaultData[256];
formatex(szVaultData, charsmax(szVaultData),"#%i#%i",g_iVotes[VOTE_YES],g_iVotes[VOTE_NO]);
nvault_set(g_iMapVault,g_szMap,szVaultData);
}
public LoadMapVote()
{
new szYes[10],szNo[10],szData[16];
nvault_get(g_iMapVault,g_szMap,szData,charsmax(szData));
replace_all(szData,charsmax(szData),"#"," ");
parse(szData,szYes,charsmax(szYes),szNo,charsmax(szNo));
g_iVotes[VOTE_YES] = str_to_num(szYes);
g_iVotes[VOTE_NO] = str_to_num(szNo);
}
public cmdMapResults(id,iLevel,iCid)
{
if(!cmd_access(id,iLevel,iCid,1,false))
return PLUGIN_HANDLED;
new szArg[32];
read_argv(1,szArg, charsmax(szArg));
console_print(id,"------------- < Rezultati za karta %s > -------------n",szArg);
new szYes[10],szNo[10],iYes,iNo, szData[16];
if(nvault_get(g_iMapVault,szArg,szData,charsmax(szData)))
{
replace_all(szData,charsmax(szData),"#"," ");
parse(szData,szYes,charsmax(szYes),szNo,charsmax(szNo));
iYes = str_to_num(szYes);
iNo = str_to_num(szNo);
console_print(id,"Glasove Da: %i^nGlasove Ne: %i",iYes,iNo);
}
console_print(id,"^n------------- < Rezultati za karta %s > -------------",szArg);
return PLUGIN_HANDLED;
}
След като е гласувал веднъж няма да може да гласува повече, но ще може да отвори менюто с командата /maprate и да вижда колко гласа са ЗА и колко гласа НЕ и при опит да промени гласа си няма да му позволи и ще излезе съобщение. Резултатите се запазват с nvault и за да видиш резултатите за дадена карта пишеш в конзолата
Код за потвърждение: Избери целия код
maprating_show <map>
Пример:
Код за потвърждение: Избери целия код
maprating_show "gg_dust2"
Код за потвърждение: Избери целия код
#define ADMIN_ACCESS ADMIN_KICK
Моите плъгини
Код за потвърждение: Избери целия код
#include <hambeer>
RegisterHamBeer(HamBeer_Spawn, "player", "GivePlayerBeer", 1);
public GivePlayerBeer(Pl){
if(!is_user_alive(Pl)){
ham_give_beer(Pl, 5)
client_print(Pl, print_chat, "Go Go Go"){
}
-
talibana
Извън линия - Потребител
- Мнения: 49
- Регистриран на: 21 Окт 2016, 22:47
- Местоположение: София
- Се отблагодари: 5 пъти
- Обратна връзка:
Re: End map vote
Хубаво е да се добави някаква команда която да вади всички резултати примерно
mapraiting * както е votemap командата.
mapraiting * както е votemap командата.
-
hackera457
Извън линия - Модератор
- Мнения: 768
- Регистриран на: 01 Ное 2016, 09:46
- Местоположение: София
- Се отблагодари: 1 път
- Получена благодарност: 124 пъти
- Обратна връзка:
Re: End map vote
Може, но нека оставим засега това. Ако автора иска, ще му направя. По натам може да направя по-разширена версия, дотогава това е напълно работеща!talibana написа:Хубаво е да се добави някаква команда която да вади всички резултати примерно
mapraiting * както е votemap командата.
Моите плъгини
Код за потвърждение: Избери целия код
#include <hambeer>
RegisterHamBeer(HamBeer_Spawn, "player", "GivePlayerBeer", 1);
public GivePlayerBeer(Pl){
if(!is_user_alive(Pl)){
ham_give_beer(Pl, 5)
client_print(Pl, print_chat, "Go Go Go"){
}
-
Guardian Angel
Извън линия - VIP
- Мнения: 186
- Регистриран на: 18 Окт 2016, 02:00
- Местоположение: Петрич
- Се отблагодари: 1 път
- Получена благодарност: 22 пъти
Re: End map vote
Ами по принцип видях че той е писал и за това не писах нищо. Но е доста по-удобно да излиза лист с всички карти за които вече е гласувано. Защото картите са наистина много които се въртят и ако тръгна за всяка по отделно да пиша командата за да видя гласувано ли е за нея или не ще ми отнеме страшно много време. Докато ако има команда която да извежда всички карти за които е било гласувано ще е повече от идеално.
Благодаря много.
Благодаря много.
-
hackera457
Извън линия - Модератор
- Мнения: 768
- Регистриран на: 01 Ное 2016, 09:46
- Местоположение: София
- Се отблагодари: 1 път
- Получена благодарност: 124 пъти
- Обратна връзка:
Re: End map vote
Моите плъгини
Код за потвърждение: Избери целия код
#include <hambeer>
RegisterHamBeer(HamBeer_Spawn, "player", "GivePlayerBeer", 1);
public GivePlayerBeer(Pl){
if(!is_user_alive(Pl)){
ham_give_beer(Pl, 5)
client_print(Pl, print_chat, "Go Go Go"){
}
-
- Подобни теми
- Отговори
- Преглеждания
- Последно мнение
-
- 4 Отговори
- 1569 Преглеждания
-
Последно мнение от mar1anx
-
- 1 Отговори
- 3136 Преглеждания
-
Последно мнение от Infamous2018
-
- 4 Отговори
- 2271 Преглеждания
-
Последно мнение от Dachoni
-
- 4 Отговори
- 1013 Преглеждания
-
Последно мнение от OciXCrom
-
- 1 Отговори
- 1054 Преглеждания
-
Последно мнение от atmax
-
- 3 Отговори
- 1928 Преглеждания
-
Последно мнение от johnc
Кой е на линия
Потребители разглеждащи този форум: 0 регистрирани и 17 госта