10 žaidėjų - de_dust2x2

Šiame forume vartotojai gali prašyti jiems reikiamo plugino.
Forum rules
Šiame forume galite siūlyti idėjas ar prašyti jums reikalingų pluginų. Jei kas nors pradės jį kurti, tai pasirašys Jūsų sukurtoje temoje. Niekada nepykite, jei niekas neatsako į Jūsų prašymą. Gal tai tiesiog per sudėtinga, arba reikalauja per daug darbo.
Post Reply
User avatar
NZT
Flooderis arba specialistas
Posts: 836
Joined: 2011 Aug 18 17:44

10 žaidėjų - de_dust2x2

Post by NZT »

Ieškau plugino, kuris pakeistų žemėlapį į de_dust2x2, jeigu serveryje yra 10 ar mažiau žaidėjų.

User avatar
laimiukas3
Moderatorius
Posts: 4569
Joined: 2012 Aug 03 01:12
Skype: laimiukas3
Location: Vilnius
Contact:

Re: 10 žaidėjų - de_dust2x2

Post by laimiukas3 »

man rodos galima sita pakoreguoti http://makeserver.ru/plaginy/16073-nopl ... pamxx.html
register_plugin(PLUGIN, VERSION, AUTHOR)
npm_map = register_cvar("amx_npm_map", "de_dust2_2x2")
npm_players = register_cvar("amx_npm_players", "10")

Code: Select all

#include <amxmodx>#include <amxmisc>#include <colorchat> #define PLUGIN "No Players Map"#define VERSION "1.0"#define AUTHOR "[SKA]JIbnEJIb" new npm_map, npm_playersnew vote_yes, vote_nonew nmp_on = 1new menu public plugin_init() {    register_plugin(PLUGIN, VERSION, AUTHOR)    npm_map = register_cvar("amx_npm_map", "de_dust2_2x2")    npm_players = register_cvar("amx_npm_players", "10")} public npm(id) {    if(get_playersnum() <= get_pcvar_num(npm_players)) {        new npm_map_str[32], nameMap[128]        get_pcvar_string(npm_map, npm_map_str, charsmax(npm_map_str))        format(nameMap, 127, "\yСменить карту на %s?", npm_map_str)        menu=menu_create(nameMap,"npm_menu")        menu_additem(menu,"\wДа","1")        menu_additem(menu,"\wНет","2")        menu_setprop(menu,MPROP_EXIT,MEXIT_NEVER)            menu_display(id,menu,0)                        set_task(get_cvar_float("amx_vote_time"), "npm_result")    }} public npm_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[^04Информация^01] Игрок ^03%s ^01проголосовал за смену карты.", Name)        }        case 2:{            vote_no = vote_no + 1            ColorChat(0, RED, "^01[^04Информация^01] Игрок ^03%s ^01проголосовал против смены карты.", Name)        }    }    return PLUGIN_HANDLED} public npm_result() {    new Map[32], npm_map_str[32]    menu_destroy(menu)    get_mapname(Map, charsmax(Map))     get_pcvar_string(npm_map, npm_map_str, charsmax(npm_map_str))     if(vote_yes >= vote_no) {        ColorChat(0, RED, "^01[^04Информация^01] Голосование завершено. Следующая карта ^03%s^01.", npm_map_str)        set_task(4.0, "npm_changelevel")    }    else {        ColorChat(0, RED, "^01[^04Информация^01] Голосование завершено. Карта продлена на ^03%d^01 минут.", get_cvar_num("amx_extendmap_step"))        vote_yes = 0        vote_no = 0        set_task((get_cvar_float("amx_extendmap_step")*60), "npm_extend")    }} public npm_changelevel() {    new npm_map_str[32]    get_pcvar_string(npm_map, npm_map_str, charsmax(npm_map_str))     server_cmd("changelevel %s", npm_map_str) } public npm_extend() {    nmp_on = 1} public client_putinserver(id) {    if(nmp_on != 1)         return PLUGIN_HANDLED     new Players[32], Map[32], npm_map_str[32]    get_mapname(Map, charsmax(Map))    get_pcvar_string(npm_map, npm_map_str, charsmax(npm_map_str))    if(equali(Map, npm_map_str))        return PLUGIN_HANDLED     new playerCount, i, player    get_players(Players, playerCount, "ch")     nmp_on = 0    for (i=0; i<playerCount; i++) {        player = Players[i]                set_task(20.0, "npm", player)    }    return PLUGIN_CONTINUE} public client_disconnect(id) {    if(nmp_on != 1)         return PLUGIN_HANDLED     new Players[32], Map[32], npm_map_str[32]    get_mapname(Map, charsmax(Map))    get_pcvar_string(npm_map, npm_map_str, charsmax(npm_map_str))    if(equali(Map, npm_map_str))        return PLUGIN_HANDLED     new playerCount, i, player    get_players(Players, playerCount, "ch")     for (i=0; i<playerCount; i++) {        player = Players[i]                set_task(20.0, "npm", player)    }    return PLUGIN_CONTINUE}
Image
Image
Image

User avatar
NZT
Flooderis arba specialistas
Posts: 836
Joined: 2011 Aug 18 17:44

Re: 10 žaidėjų - de_dust2x2

Post by NZT »

Dėkui (+karma).

Reikia pataisyt:

Code: Select all

Invalid menu id 1(2)[AMXX] Displaying debug trace (plugin "noplayers_map.amxx", version "1.0")[AMXX] Run time error 10: native error (native "menu_item_getinfo")[AMXX]    [0] noplayers_map.sma::npm_menu (line 40)
Ir būtų geriau, kad tą meniu išmestų truputį vėliau, nes jeigu žaidėjams siunčia naują map'ą, o žaidėjų yra apie 20, tai išmes tą meniu ir iškart pasikeis map'as.

Post Reply

Who is online

Users browsing this forum: No registered users and 1 guest