Cu ajutorul acestui plugin puteti uita de acest fel de probleme.
Acest plugin in functie de playeri schimba singur harta.
Daca sunt mai putini de 10 jucatori pe server, se incepe o votarea pentru a schimba harta.
Numarul minim de jucatori il setati in CVAR (Default: 10 jucatori)
Harta pentru vot o setati in CVAR (Default: de_dust2_2x2)
Daca majoriteatea jucatilor au votat "Pentru" , harta se schimba , daca nu sunt destui voturi , mapa va fi extinsa.
Astept pareri.
Descarcare: Click Aici ! [Hot files] / Link 2 [GirlShare] !
Nume: Min Players Map Changer
Autor: ExoTiQ
Versiune: 1.0
Min Players Map Changer
Cod: Selectaţi tot
#include <amxmodx>
#include <amxmisc>
#include <colorchat>
#define PLUGIN "MinPlayersMapChanger"
#define VERSION "1.0"
#define AUTHOR "ExoTiQ"
new mpm_map, mpm_players
new vote_yes, vote_no
new mmp_on = 1
new menu
public plugin_init() {
register_plugin(PLUGIN, VERSION, AUTHOR)
mpm_map = register_cvar("amx_mpm_map", "de_dust2_2x2")
mpm_players = register_cvar("amx_mpm_players", "10")
}
public mpm(id) {
if(get_playersnum() <= get_pcvar_num(mpm_players)) {
new mpm_map_str[32], nameMap[128]
get_pcvar_string(mpm_map, mpm_map_str, charsmax(mpm_map_str))
format(nameMap, 127, "\ySchimbam Harta pe %s?", mpm_map_str)
menu=menu_create(nameMap,"mpm_menu")
menu_additem(menu,"\wDa","1")
menu_additem(menu,"\wNu","2")
menu_setprop(menu,MPROP_EXIT,MEXIT_NEVER)
menu_display(id,menu,0)
set_task(get_cvar_float("amx_vote_time"), "mpm_result")
}
}
public mpm_menu(id,menu,item) {
new data[6],iName[64],access, callback, Name[32]
get_user_name(id, Name, charsmax(Name))
menu_item_getinfo(menu,item,access,data,5,iName,63,callback)
new key = str_to_num(data)
switch(key) {
case 1:{
vote_yes = vote_yes + 1
ColorChat(0, BLUE, "^01[^04Map Changer Information^01] Jucatorul ^03%s ^01a votat ^04[Pentru].", Name)
}
case 2:{
vote_no = vote_no + 1
ColorChat(0, RED, "^01[^04Map Changer Information^01] Jucatorul ^03%s ^01a votat ^04[Contra].", Name)
}
}
return PLUGIN_HANDLED
}
public mpm_result() {
new Map[32], mpm_map_str[32]
menu_destroy(menu)
get_mapname(Map, charsmax(Map))
get_pcvar_string(mpm_map, mpm_map_str, charsmax(mpm_map_str))
if(vote_yes >= vote_no) {
ColorChat(0, RED, "^01[^04Map Changer Information^01] Votarea s-a incheiat, urmatoarea harta va fi ^03%s^01.", mpm_map_str)
set_task(4.0, "mpm_changelevel")
}
else {
ColorChat(0, RED, "^01[^04Map Changer Information^01] Datorita votarii, harta curenta va fi extinsa pentru ^03%d^01 minute.", get_cvar_num("amx_extendmap_step"))
vote_yes = 0
vote_no = 0
set_task((get_cvar_float("amx_extendmap_step")*30), "mpm_extend")
}
}
public mpm_changelevel() {
new mpm_map_str[32]
get_pcvar_string(mpm_map, mpm_map_str, charsmax(mpm_map_str))
server_cmd("changelevel %s", mpm_map_str)
}
public mpm_extend() {
mmp_on = 1
}
public client_putinserver(id) {
if(mmp_on != 1)
return PLUGIN_HANDLED
new Players[32], Map[32], mpm_map_str[32]
get_mapname(Map, charsmax(Map))
get_pcvar_string(mpm_map, mpm_map_str, charsmax(mpm_map_str))
if(equali(Map, mpm_map_str))
return PLUGIN_HANDLED
new playerCount, i, player
get_players(Players, playerCount, "ch")
mmp_on = 0
for (i=0; i<playerCount; i++) {
player = Players
set_task(20.0, "mpm", player)
}
return PLUGIN_CONTINUE
}
public client_disconnect(id) {
if(mmp_on != 1)
return PLUGIN_HANDLED
new Players[32], Map[32], mpm_map_str[32]
get_mapname(Map, charsmax(Map))
get_pcvar_string(mpm_map, mpm_map_str, charsmax(mpm_map_str))
if(equali(Map, mpm_map_str))
return PLUGIN_HANDLED
new playerCount, i, player
get_players(Players, playerCount, "ch")
for (i=0; i<playerCount; i++) {
player = Players
set_task(20.0, "mpm", player)
}
return PLUGIN_CONTINUE
}
Comenzi:-
Cvaruri:
Cod: Selectaţi tot
amx_mpm_map - (default: de_dust2_2x2) Aici setati harta pentru vot.
amx_mpm_players - (default: 10) - Aici setati numarul minim de jucatori.
1. Fisierul MinPlayersMapChanger.amxx il puneti in addons/amxmodx/plugins
2. Fisierul MinPlayersMapChanger.sma il puneti in addons/amxmodx/scripting
3. Intrati in fisierul addons/amxmodx/configs/plugins.ini si adaugati la sfarsitul fisierului:
Cod: Selectaţi tot
MinPlayersMapChanger.amxx
Descarcare: Click Aici !