AMX MOD X
Суббота, 04.05.2024, 14:29:37



Приветствую Вас Гость | RSS
[ Главная ] [ трабл с проверкой на админа - AMX Mod X Форум ] [ Регистрация ] [ Вход ]
[ Новые сообщения · Участники · Правила форума · Поиск · RSS ]

Вниманию участников! Данный форум теперь является архивом и вскором времени здесь нельзя будет создавать новых тем! Просьба всем для общения и создания новых тем перейти на наш новый форум: http://amxmodx.su/

  • Страница 1 из 1
  • 1
Модератор форума: slogic, AlMod  
AMX Mod X Форум » Скриптинг » Помощь по скриптингу » трабл с проверкой на админа
трабл с проверкой на админа
FreeKILLДата: Суббота, 09.01.2010, 21:15:50 | Сообщение # 1
Подполковник
Группа: Пользователи
Сообщений: 143
Репутация: 4
Статус: Не в сети
сразу говорю админа как себе дать я знаю) и там все с флагами впорядке.
в юзер ини есть строка с флагами и стандарт плагины работают нормально, но
на мой плагин почему-то выдается право только при наличии всех флагов в юзер ини

а вот сокращенная версия, только то что нужно (на мой взгляд)
[code]
public plugin_init() {
register_plugin(PLUGIN, VERSION, AUTHOR)
register_event( "HLTV", "event_new_round", "a", "1=0", "2=0" )
hp = register_cvar("show_hp", "2")

register_dictionary("admin_control.txt")
register_clcmd("admin_control", "showadmincontrol", ADMIN_MENU, "")
register_menucmd(register_menuid("admincontrol"), keysmenu, "switchmenu")
register_menucmd(register_menuid("Revive Menu2"), 1023, "actionReviveMenu")
register_menucmd(register_menuid("HP Menu"), 1023, "actionHPMenu")
register_menucmd(register_menuid("Speed Menu"), 1023, "actionSpeedMenu")
register_menucmd(register_menuid("Gravity Menu"), 1023, "actionGravityMenu")
register_menucmd(register_menuid("Weapons Menu"), 1023, "actionWeaponsMenu")
register_menucmd(register_menuid("Godmode Menu"), 1023, "actionGodmodeMenu")
register_menucmd(register_menuid("Invisibility Menu"), 1023, "actionInvisibilityMenu")
register_menucmd(register_menuid("GiveMoney Menu"), 1023, "actionMoneyMenu")



}
public showadmincontrol(id,level,cid) {
if (!cmd_access(id, level, cid, 1))
return PLUGIN_HANDLED
g_menuOption[id] =true
g_menuOption2[id] =false
g_menuOption3[id] =false
g_menuOption4[id] =true
g_menuOption5[id] =false
show_menu(id, keysmenu, "\rAdmin Control\w^n^n\y1\w: Give Revive^n\y2\w: Give HP^n\y3\w: Give Speed^n\y4\w: Give Gravity^n\y5\w: Give Weapons^n\y6\w: Give GodMod^n\y7\w: Give Invisibility^n\y8\w: Give Money^n\y9\w: \rDefault All\w^n^n\y0\w: \gExit\w", -1, "admincontrol")
return PLUGIN_HANDLED

}[code]

непойму в чем проблема
"188.134.18.188" "" "u" "de" это моя строка админа в юзер ини

Добавлено (09.01.2010, 21:15:50)
---------------------------------------------
хм, как ни странно проблема исчезла когда я сделал так:

Code


#define ADMIN_ACCESS ADMIN_MENU
public plugin_init() {
  register_clcmd("admin_control", "showadmincontrol", ADMIN_ACCESS, "")
}
public showadmincontrol(id) {
  if (get_user_flags(id) & ADMIN_ACCESS)
  {
   g_menuOption[id] =true
   g_menuOption2[id] =false
   g_menuOption3[id] =false
   g_menuOption4[id] =true
   g_menuOption5[id] =false
   show_menu(id, keysmenu, "\rAdmin Control\w^n^n\y1\w: Give Revive^n\y2\w: Give HP^n\y3\w: Give Speed^n\y4\w: Give Gravity^n\y5\w: Give Weapons^n\y6\w: Give GodMod^n\y7\w: Give Invisibility^n\y8\w: Give Money^n\y9\w: \rDefault All\w^n^n\y0\w: \gExit\w", -1, "admincontrol")
   
   return PLUGIN_CONTINUE
  }
  else
  {
   client_print(id, print_console, "you are not have access for that command")
  }
   
   
  return PLUGIN_HANDLED
   
}

но тут возникает другая, более мелкая проблема что когда вводишь в консольэту команду(admin_control) пишет в консоле command not found. ну вобщем он команду не видит, хотя функцию выполняет(в данном случае меню выводит)
дак в чем же проблема? из за чего так?
 
PomanoBДата: Воскресенье, 10.01.2010, 15:32:43 | Сообщение # 2
Генералиссимус
Группа: Cупер-модеры
Сообщений: 1313
Репутация: 70
Статус: Не в сети
Quote (FreeKILL)
return PLUGIN_CONTINUE

=>
Quote (FreeKILL)
return PLUGIN_HANDLED


http://romanov4400.mybrute.com
 
FreeKILLДата: Воскресенье, 10.01.2010, 15:53:23 | Сообщение # 3
Подполковник
Группа: Пользователи
Сообщений: 143
Репутация: 4
Статус: Не в сети
а где ты PLUGIN_CONTINUE нашел я непойму?)

Добавлено (10.01.2010, 15:53:23)
---------------------------------------------
проблема та в первом коде, а в нем нету plugin_continue

 
PomanoBДата: Воскресенье, 10.01.2010, 15:57:12 | Сообщение # 4
Генералиссимус
Группа: Cупер-модеры
Сообщений: 1313
Репутация: 70
Статус: Не в сети
Quote (FreeKILL)
if (get_user_flags(id) & ADMIN_ACCESS)
  {
   g_menuOption[id] =true
   g_menuOption2[id] =false
   g_menuOption3[id] =false
   g_menuOption4[id] =true
   g_menuOption5[id] =false
   show_menu(id, keysmenu, "\rAdmin Control\w^n^n\y1\w: Give Revive^n\y2\w: Give HP^n\y3\w: Give Speed^n\y4\w: Give Gravity^n\y5\w: Give Weapons^n\y6\w: Give GodMod^n\y7\w: Give Invisibility^n\y8\w: Give Money^n\y9\w: \rDefault All\w^n^n\y0\w: \gExit\w", -1, "admincontrol")
   
   return PLUGIN_CONTINUE
  }

Добавлено (10.01.2010, 15:57:12)
---------------------------------------------
Проблема в первом коде возможно в listen сервере


http://romanov4400.mybrute.com
 
FreeKILLДата: Понедельник, 11.01.2010, 08:39:06 | Сообщение # 5
Подполковник
Группа: Пользователи
Сообщений: 143
Репутация: 4
Статус: Не в сети
вот мой листен
Code
mp_tkpunish 0
mp_startmoney 16000

sv_aim 0  
sv_airaccelerate 10
sv_airmove 1
sv_allowdownload 1
sv_allowupload 1
sv_alltalk 0
sv_cheats 0  
sv_clienttrace 1
sv_clipmode 0  
sv_friction 4
sv_gravity 800  
sv_lan_rate 25000
sv_maxrate 25000  
sv_maxspeed 320
sv_maxunlag 1
sv_maxupdaterate 101
sv_minupdaterate 40
sv_minrate 25000
sv_proxies 1  
sv_send_logos 1
sv_send_resources 1  
sv_stepsize 18
sv_stopspeed 75  
sv_unlag 1
sv_voiceenable 1  
sv_unlagsamples 1
sv_unlagpush 0
sv_logbans 0
sv_logecho 0  
sv_logfile 0
sv_log_onefile 0  

allow_spectators 1  
decalfrequency 60
edgefriction 2  
host_framerate 0
ex_interp 0.01

// load ban files
exec listip.cfg
exec banned.cfg

но если проблема тут, тогда почему другие (стандартные) плагины работают нормально

 
PomanoBДата: Понедельник, 11.01.2010, 15:20:04 | Сообщение # 6
Генералиссимус
Группа: Cупер-модеры
Сообщений: 1313
Репутация: 70
Статус: Не в сети
Я имею ввиду что сервер не выделенный, различается проверка доступа функцией cmd_access для выделенного и не выделенного сервера

http://romanov4400.mybrute.com
 
FreeKILLДата: Понедельник, 11.01.2010, 16:15:33 | Сообщение # 7
Подполковник
Группа: Пользователи
Сообщений: 143
Репутация: 4
Статус: Не в сети
ну ладно впринципе итак все работает как надо и без cmd_access, а сервак у меня хз какой, ип выделинка, порт открыт. я вроде-бы знаю из-за чего команда барахлит... наверно ошибаюсь, но все-же у меня дальше в коде используются команды if(cmd_access(i, ADMIN_IMMUNITY) && i! = id) .... и как я заметил доступ к команде admin_control тоже открывается только с флагом ADMIN_IMMUNITY несмотря на register_clcmd("admin_control","showadmincontrol", ADMIN_MENU,"")
 
AMX Mod X Форум » Скриптинг » Помощь по скриптингу » трабл с проверкой на админа
  • Страница 1 из 1
  • 1
Поиск:

AMX Mod X Russian Community © 2006-2024