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

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

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

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

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

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

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

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

Lang Spawn Menu

Kasper55
сообщение 13.6.2012, 18:29
Сообщение #1
Стаж: 16 лет

Сообщений: 1145
Благодарности: выкл.

Можно ли сделать так чтобы меню появлялась с выборами языков 1 раз при конекте игрока?? а не каждый раз при спавне .

Код
#include <amxmodx>
#include <amxmisc>
#include <hamsandwich>

#define PLUGIN "LangSpawnMenu"
#define AUTHOR "remus"
#define VERSION "0.0.1"

new cvar_LangSpawnMenu

public plugin_init()
{
    register_plugin(PLUGIN,VERSION,AUTHOR)
    RegisterHam(Ham_Spawn,"player","LangSpawnTask",1)
    cvar_LangSpawnMenu = register_cvar("amx_langspawnmenu","5")
    register_dictionary("LangSpawnMenu.txt")
}

public LangSpawnTask(id)
{
    if (is_user_alive(id))
    set_task(get_pcvar_float(cvar_LangSpawnMenu),"LangSpawnMenu",id)
}

public LangSpawnMenu(id)
{
    new szText[512 char]
    
    formatex(szText,charsmax(szText),"%L",id,"LANG_SPAWN_TITLE")
    new menu = menu_create(szText,"LangSpawnFuncMenu")
    
    formatex(szText,charsmax(szText),"%L",id,"LANG_SPAWN_EN")
    menu_additem(menu,szText,"1")
    
    formatex(szText,charsmax(szText),"%L",id,"LANG_SPAWN_RU")
    menu_additem(menu,szText,"2")
    
    menu_setprop(menu,MPROP_NUMBER_COLOR,"\w")
    menu_setprop(menu,MPROP_EXIT,-1)
        menu_display(id,menu)
    return PLUGIN_CONTINUE
}

public LangSpawnFuncMenu(id,menu,item)
{
    if(item==MENU_EXIT)
    {
        return PLUGIN_HANDLED
    }
    
    new data[6],iName[64],access,callback
    menu_item_getinfo(menu,item,access,data,charsmax(data),iName,charsmax(iName),callback)
    
    new key = str_to_num(data)
    
    switch(key)
    {
        case 1:
        {
            client_cmd(id,"setinfo lang en")
            client_print(0,print_console,"%L",LANG_PLAYER,"LANG_PLAYER_EN")
            client_print(0,print_chat,"%L",LANG_PLAYER,"LANG_PLAYER_EN")
            return PLUGIN_HANDLED
        }
        case 2:
        {
            client_cmd(id,"setinfo lang ru")
            client_print(0,print_console,"%L",LANG_PLAYER,"LANG_PLAYER_RU")
            client_print(0,print_chat,"%L",LANG_PLAYER,"LANG_PLAYER_RU")
            return PLUGIN_HANDLED
        }
    }
    return PLUGIN_HANDLED}
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   Цитировать сообщение
Статус пользователя Rejiser
сообщение 13.6.2012, 18:59
Сообщение #2


Стаж: 15 лет

Сообщений: 2261
Благодарностей: 1068
Полезность: 870

Можно
Скрытый текст
#include <amxmodx>
#include <amxmisc>
#include <hamsandwich>

#define PLUGIN "LangSpawnMenu"
#define AUTHOR "remus"
#define VERSION "0.0.1"

new cvar_LangSpawnMenu

public plugin_init()
{
register_plugin(PLUGIN,VERSION,AUTHOR)
//RegisterHam(Ham_Spawn,"player","LangSpawnTask",1)
cvar_LangSpawnMenu = register_cvar("amx_langspawnmenu","5")
register_dictionary("LangSpawnMenu.txt")
}

/*
public LangSpawnTask(id)
{
if (is_user_alive(id))
set_task(get_pcvar_float(cvar_LangSpawnMenu),"LangSpawnMenu",id)
}
*/

public client_putinserver(id)
{
set_task(get_pcvar_float(cvar_LangSpawnMenu),"LangSpawnMenu",id)
}

public LangSpawnMenu(id)
{
new szText[512 char]

formatex(szText,charsmax(szText),"%L",id,"LANG_SPAWN_TITLE")
new menu = menu_create(szText,"LangSpawnFuncMenu")

formatex(szText,charsmax(szText),"%L",id,"LANG_SPAWN_EN")
menu_additem(menu,szText,"1")

formatex(szText,charsmax(szText),"%L",id,"LANG_SPAWN_RU")
menu_additem(menu,szText,"2")

menu_setprop(menu,MPROP_NUMBER_COLOR,"\w")
menu_setprop(menu,MPROP_EXIT,-1)
menu_display(id,menu)
return PLUGIN_CONTINUE
}

public LangSpawnFuncMenu(id,menu,item)
{
if(item==MENU_EXIT)
{
return PLUGIN_HANDLED
}

new data[6],iName[64],access,callback
menu_item_getinfo(menu,item,access,data,charsmax(data),iName,charsmax(iName),cal
lback)

new key = str_to_num(data)

switch(key)
{
case 1:
{
client_cmd(id,"setinfo lang en")
client_print(0,print_console,"%L",LANG_PLAYER,"LANG_PLAYER_EN")
client_print(0,print_chat,"%L",LANG_PLAYER,"LANG_PLAYER_EN")
return PLUGIN_HANDLED
}
case 2:
{
client_cmd(id,"setinfo lang ru")
client_print(0,print_console,"%L",LANG_PLAYER,"LANG_PLAYER_RU")
client_print(0,print_chat,"%L",LANG_PLAYER,"LANG_PLAYER_RU")
return PLUGIN_HANDLED
}
}
return PLUGIN_HANDLED
}


Отредактировал: Rejiser, - 14.6.2012, 0:32
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Kasper55
сообщение 13.6.2012, 19:16
Сообщение #3
Стаж: 16 лет

Сообщений: 1145
Благодарности: выкл.

не комлимиться Прикрепленное изображение
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя AndrewZ
сообщение 13.6.2012, 19:19
Сообщение #4


Иконка группы

Стаж: 18 лет
Город: Санкт-Петербург


Сообщений: 4700
Благодарностей: 2452
Полезность: 1018

Код
menu_item_getinfo(menu,item,access,data,charsmax(data),iName,charsmax(iName),cal
lback)


--->

Код
menu_item_getinfo(menu,item,access,data,charsmax(data),iName,charsmax(iName),callback)


cbf1b2bfde1a.gif


Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
Поблагодарили 1 раз
   + Цитировать сообщение
Kasper55
сообщение 13.6.2012, 19:36
Сообщение #5
Стаж: 16 лет

Сообщений: 1145
Благодарности: выкл.

теперь при каждом респауне выбирается язык автоматически , нельзя чтобы выбрал язык и больше он не менялся при каждом респауне
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя AndrewZ
сообщение 13.6.2012, 20:13
Сообщение #6


Иконка группы

Стаж: 18 лет
Город: Санкт-Петербург


Сообщений: 4700
Благодарностей: 2452
Полезность: 1018

Kasper55,
Че?


Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя Rejiser
сообщение 13.6.2012, 20:37
Сообщение #7


Стаж: 15 лет

Сообщений: 2261
Благодарностей: 1068
Полезность: 870

Цитата(Kasper55 @ 13.6.2012, 20:36) *
теперь при каждом респауне выбирается язык автоматически , нельзя чтобы выбрал язык и больше он не менялся при каждом респауне

В плагине, после изменений, нет ничего связанного с респавнами.
Ищи проблему в других плагинах.
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Kasper55
сообщение 13.6.2012, 22:35
Сообщение #8
Стаж: 16 лет

Сообщений: 1145
Благодарности: выкл.

при респауне каждый раз выбираеться язык и это в плагине проблема , нельзя чтобы сделать что бы игрок зашол 1 раз выбрал и все больше не выбирать не приходилось
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
noskill
сообщение 14.6.2012, 0:07
Сообщение #9
Стаж: 14 лет

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

тебе ж выше написали
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя Rejiser
сообщение 14.6.2012, 0:32
Сообщение #10


Стаж: 15 лет

Сообщений: 2261
Благодарностей: 1068
Полезность: 870

Цитата(Kasper55 @ 13.6.2012, 23:35) *
при респауне каждый раз выбираеться язык и это в плагине проблема , нельзя чтобы сделать что бы игрок зашол 1 раз выбрал и все больше не выбирать не приходилось

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