SoliderJah Posted July 20, 2013 Share Posted July 20, 2013 Привет! Так как я практически не знаком с GUI и времени его изучать нет, прошу помощи у вас! Создал GUI окно помощи в GUI Editor, и сейчас нужно сделать так, чтобы игроку, при нажатии на определённую клавишу выводилось окно с помощью. Так же требуется автоматическое изменение окна под разрешение экрана или что-то типа того, думаю вы поняли о чём я. Собственно само окно: GUIEditor = { tab = {}, window = {}, tabpanel = {}, memo = {} } addEventHandler("onClientResourceStart", resourceRoot, function GUIHelpMenu() GUIEditor.window[1] = guiCreateWindow(356, 189, 639, 412, "Помощь. Открыть/Закрыть окно - F5.", false) guiWindowSetSizable(GUIEditor.window[1], false) guiSetAlpha(GUIEditor.window[1], 1.00) GUIEditor.tabpanel[1] = guiCreateTabPanel(25, 27, 591, 372, false, GUIEditor.window[1]) GUIEditor.tab[1] = guiCreateTab("Правила сервера", GUIEditor.tabpanel[1]) GUIEditor.memo[1] = guiCreateMemo(5, 4, 581, 336, "текст", false, GUIEditor.tab[1]) guiMemoSetReadOnly(GUIEditor.memo[1], true) GUIEditor.tab[2] = guiCreateTab("Команды сервера", GUIEditor.tabpanel[1]) GUIEditor.memo[2] = guiCreateMemo(5, 4, 581, 336, "текст", false, GUIEditor.tab[2]) guiMemoSetReadOnly(GUIEditor.memo[2], true) GUIEditor.tab[3] = guiCreateTab("Другая полезная информация", GUIEditor.tabpanel[1]) GUIEditor.memo[3] = guiCreateMemo(5, 4, 581, 336, "текст", false, GUIEditor.tab[3]) guiMemoSetReadOnly(GUIEditor.memo[3], true) GUIEditor.tab[4] = guiCreateTab("Слова от администрации", GUIEditor.tabpanel[1]) GUIEditor.memo[4] = guiCreateMemo(5, 4, 581, 336, "текст", false, GUIEditor.tab[4]) guiMemoSetReadOnly(GUIEditor.memo[4], true) end ) PS. Если кто то сделает, пожалуйста, объясните как, дабы в следующий раз не спрашивать. Link to comment
KruTolic_rus Posted July 20, 2013 Share Posted July 20, 2013 (edited) Ты собираешся все делать в клиенте? Если нужно будет выполнить серверную функцию,понадобится triggerServerEvent Судя по твоему варианту,достаточно все в клиент Выполнять все следует с эвентом onClientGUIClick Если тебе нужно сделать бинд на GUIEditor.window[1] дабы оно открывалось и закрывалось- допиши bindKey ("f5","down",GUIHelpMenu) и удали addEventHandler("onClientResourceStart", resourceRoot, (9 строка) -т.к. при старте ресурса у всех будет высвечиватся это окошко,а кому это надо? Напиши что именно тебе надо? У тебя нет кнопок,и я не могу понять,что за "окно с помощью"? Если ты хочешь,что бы при нажатии в GUI окне какой нибудь кнопки,тебе надо: addEventHandler("OnClientGUIClick",кнопка,которую нажать,функция) Пример: function ClickForSomething () ---Делай тут что -то outputChatBox ("Что-то,только не source,ведь это кнопка,которая была нажата",getRootElement()) end addEventHandler("OnClientGUIClick",GUIEditor.tab[4],ClickForSomething) Edited July 20, 2013 by Guest Link to comment
SoliderJah Posted July 20, 2013 Author Share Posted July 20, 2013 Ну-с, help меню же знаешь что такое? Вот у меня точно такой же, но немного изменённый. Из кнопок там только переключение в табе и скроллинг, больше ничего нет. Нужно сделать максимально просто и понятное меню, я выполнил его. За то что объяснил - спасибо, потом попробую доделать - отпишу. Link to comment
Kenix Posted July 20, 2013 Share Posted July 20, 2013 Нету такого события OnClientGUIClick, есть onClientGUIClick ! В мта все названия функций и событий начинаются с малой буквы. Второй аргумент у функции outputChatBox это первый цвет ( дальше идут остальные ) в формате rgb, а у вас это элемент. Перед тем как помогать кому-то нужно самому знать, иначе человек вас поймёт, но неверно. Link to comment
KruTolic_rus Posted July 20, 2013 Share Posted July 20, 2013 Нету такого события OnClientGUIClick, есть onClientGUIClick ! В мта все названия функций и событий начинаются с малой буквы. Второй аргумент у функции outputChatBox это первый цвет ( дальше идут остальные ) в формате rgb, а у вас это элемент. Перед тем как помогать кому-то нужно самому знать, иначе человек вас поймёт, но неверно. Долбанная привычка с большой писать,спасибо,уже поправил. А насчет outputChatBox,в нем 2 аргумент это кому видел текст,посмотрите внимательнее,я только что перепроверил. Link to comment
Kenix Posted July 20, 2013 Share Posted July 20, 2013 Нет, на стороне клиента аргументы совсем другие для этой функции. Link to comment
CocaColaBear Posted July 20, 2013 Share Posted July 20, 2013 А насчет outputChatBox,в нем 2 аргумент это кому видел текст,посмотрите внимательнее,я только что перепроверил. Ты не то посмотрел. Второй аргумент outputChatBox - первый из трех цветов. Это же клиент, а на стороне клиента нельзя отправить сообщения другим игрокам, следовательно нет смысла показывать кто увидит сообщение. Link to comment
KruTolic_rus Posted July 20, 2013 Share Posted July 20, 2013 А насчет outputChatBox,в нем 2 аргумент это кому видел текст,посмотрите внимательнее,я только что перепроверил. Ты не то посмотрел. Второй аргумент outputChatBox - первый из трех цветов. Это же клиент, а на стороне клиента нельзя отправить сообщения другим игрокам, следовательно нет смысла показывать кто увидит сообщение. А действительно...приношу извинение всем,кому доставил неудобства,я сегодня на понтах,весь в сервере своем Каждый день по 5-6 часов дорабатываю сервер. Еще раз извините Link to comment
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now