Правила форума Гаранты форума
Размещение рекламы AMX-X компилятор

Здравствуйте, гость Вход | Регистрация

Наши новости:

14-дек
24-апр
10-апр
11-апр

> Правила форума

Этот раздел, как вы могли заметить по названию, предназначен для решения вопросов по поводу уже существующих модов и плагинов.
Пожалуйста, если у вас проблема с написанием плагина, не путайте этот раздел с разделом по скриптингу.
Для поиска плагинов и модов существует соответствующий раздел.

Название темы должно соответствовать содержанию. Темы с названием типа "Помогите", "Вопрос", "парни подскажите..." - будут удалены.
Все темы, не относящиеся к "Вопросам по модам и плагинам", будут удалены или перемещены в соответствующий раздел.

Правила оформления темы:
1. Помимо заголовка не забудьте верно сформулировать свой вопрос.
2. Выложите исходник (в тег кода + ) или ссылку на плагин который вызывает у вас вопросы.
3. Выложите лог с ошибками (если имеется) под спойлер

не корректно работает плагин timelimitvote.amxx

, х3 чё с ним
Статус пользователя edge
сообщение 25.10.2012, 12:08
Сообщение #1


Стаж: 14 лет

Сообщений: 556
Благодарностей: 43
Полезность: < 0

вообщем, вместо того, чтобы использовать значения, которые я указал, плагин берёт такие : 30 , 40 и 60 минут.
Как сказал аффтар, "нужно в amxx.cfg выставлять значения так":
amx_tl_20
amx_tl_30
amx_tl_40 и т. д. НО: толку нет, как вылазит голосование за 30 , 40 и 60 так и вылазит !! В чём могёт быть дело ?!
Исходник:
киндохси
#include <amxmodx>
#include <amxmisc>

#define PLUGIN "TimeLimit vote"
#define AUTHOR "many"
#define VERSION "0.3"

#define MAX_RESULTS 3

//thnx pr4er for help

new Float:g_timelimit
new menu

new g_voteCount[MAX_RESULTS + 1]
new g_tls[MAX_RESULTS]
new tls[MAX_RESULTS]

public plugin_init()
{
register_plugin(PLUGIN, VERSION, AUTHOR)

new name[12], string[12]
new multiplic = 30 // +++++

for(new i=0;i<MAX_RESULTS;i++)
{
format(name, sizeof name -1, "amx_tl_%d", i+1)

format(string, sizeof string -1, "%d", multiplic)

tls[i] = register_cvar(name, string)

multiplic += 15
}
}

public plugin_cfg()
{
menu = menu_create("\wСколько вы хотите поиграть на этой карте?", "menu_handler")

for(new i=0;i<MAX_RESULTS;i++)
g_tls[i] = get_pcvar_num(tls[i])

set_task(180.0, "start_vote")

build_menu()
}

build_menu()
{
new option[64], temp[12]
for(new i=0;i<MAX_RESULTS;i++)
{
format(option, sizeof option -1, "\w%d минут", g_tls[i])
format(temp, sizeof temp -1, "%d", i+1)

menu_additem(menu, option, temp, 0)
}

menu_setprop(menu, MPROP_EXIT, MEXIT_ALL)
}

public start_vote(id)
{
new players[32], inum, i
get_players(players, inum, "ch")

for(i=0;i<inum;i++)
menu_display(players[i], menu, 0)

set_task(15.0, "finish_vote")

for(i=1;i<(MAX_RESULTS+1);i++)
g_voteCount[i] = 0

return PLUGIN_CONTINUE
}

public menu_handler(id, menu, item)
{
if( !is_user_connected( id ) )
return PLUGIN_HANDLED

if(item == MENU_EXIT)
{
menu_cancel(id)

return PLUGIN_HANDLED
}

new data[6], name[32]
new access, callback

menu_item_getinfo(menu, item, access, data, 5, "", 0, callback)

new key = str_to_num(data)
get_user_name(id, name, 31)

client_print(0, print_chat, "%s Проголосовал за %d минут", name, g_tls[key -1])

g_voteCount[key]++

menu_cancel(id)

return PLUGIN_HANDLED
}

public finish_vote()
{
g_timelimit = get_cvar_float("mp_timelimit")

new best = 0, i

for(i=0;i<(MAX_RESULTS+1);i++)
{
if(g_voteCount[i] > g_voteCount[best])
best = i
}

new votesNum = 0
for(i=0;i<(MAX_RESULTS+1);i++)
votesNum += g_voteCount[i]

new iRatio = votesNum ? floatround(get_cvar_float("amx_vote_ratio") * float(votesNum), floatround_ceil) : 1
new iResult = g_voteCount[best]

if(iResult >= iRatio)
{
new new_time = g_tls[best -1]

client_print(0, print_chat, "Голосование завершено. Timelimit равен %d минутам", new_time)

set_cvar_num("mp_timelimit", new_time)
}
else
{
client_print(0, print_chat, "Голосование не состоялось..")
}

new players[32], inum
get_players(players, inum, "ch")

for(i=0;i<inum;i++)
client_cmd(players[i], "slot10")
}

public plugin_end()
{
set_cvar_float("mp_timelimit", g_timelimit)
}
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   Цитировать сообщение
Статус пользователя edge
сообщение 26.10.2012, 12:24
Сообщение #2


Стаж: 14 лет

Сообщений: 556
Благодарностей: 43
Полезность: < 0

Апс
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
  Тема закрытаНачать новую тему
 
0 пользователей и 1 гостей читают эту тему: