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

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

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

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

Как сделать сохранение настроек плагина ?

Статус пользователя 3ple
сообщение 30.10.2012, 13:32
Сообщение #1
Стаж: 13 лет

Сообщений: 74
Благодарностей: 7
Полезность: 8

Доброго времени суток. Подскажите как сделать плагин так, чтобы игрок мог сохранять настройки плагина (для себя) и чтобы после его повторного захода на сервер настройка автоматически была верной.
В общем виде не могу выразить правильно мысль, поэтому расскажу на примере. Есть плагин damager, который игрок может включить/ отключить для себя. Как сделать так, чтобы после его повторного захода на сервер плагин был включен/отключен (если до выхода был выключен плагин, то потом плагин был также выключен. И наоборот) ?

Исходник
Код
#include <amxmisc>
#include <cstrike>
 
new g_HudSync
new g_OnOff[33] = {false, ...}
 
public plugin_init()
{
register_plugin("Damage", "1.1", "KsV")
 
register_event("Damage", "damage_message", "b", "2!0", "3=0", "4!0")
register_clcmd("say /damager", "ClCmdOnOff")
g_HudSync = CreateHudSyncObj()
}
 
public ClCmdOnOff(id)
{
        // Если правда
        if(g_OnOff[id])
        {
                // Выключаем
                g_OnOff[id] = false
        }
        // Иначе
        else
        {
                // Включаем
                g_OnOff[id] = true
        }
}
 
public damage_message(id)
{
 new attacker = get_user_attacker(id)
 if(!g_OnOff[attacker])
                return PLUGIN_CONTINUE
       
 if (is_user_connected(attacker) && access(attacker, ADMIN_LEVEL_H))
 {
 new damage = read_data(2)
 
 if (cs_get_user_team(id) == CS_TEAM_T)
 {
 set_hudmessage(255, 0, 0, -1.0, 0.55, 2, 0.1, 4.0, 0.02, 0.02, -1)
 }
 
 if (cs_get_user_team(id) == CS_TEAM_CT)
 {
 set_hudmessage(0, 0, 255, -1.0, 0.55, 2, 0.1, 4.0, 0.02, 0.02, -1)
 }
 
 ShowSyncHudMsg(attacker, g_HudSync, "%i", damage)
 }
 return PLUGIN_CONTINUE
}
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   Цитировать сообщение
Safety1st
сообщение 30.10.2012, 15:28
Сообщение #2
Стаж: 14 лет
Город: Moscow

Сообщений: 7228
Благодарностей: 8071
Полезность: 196

Примитивный вариант - сохранять метку в setinfo. Хороший - запись в базу (nVault, MySQL).
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя 3ple
сообщение 30.10.2012, 15:32
Сообщение #3
Стаж: 13 лет

Сообщений: 74
Благодарностей: 7
Полезность: 8

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