rovied Posted April 8, 2016 Share Posted April 8, 2016 Нажимаю на форму ввода (в любое место, даже на заголовок окна) т.е. не на кнопку, а событие onClientGUIClick все равно срабатывает. Как это отключить? Решил проблему установив параметр getPropagated = false функции addEventHandler() addEventHandler("onClientGUIClick", GUILogin.button[1], onClickBtnLogin, false) было addEventHandler("onClientGUIClick", GUILogin.button[1], onClickBtnLogin) Link to comment
rovied Posted April 9, 2016 Share Posted April 9, 2016 login: you successfully logged in Как убрать это сообщение при авторизации? В поиске не нашел должного ответа. Link to comment
Kenix Posted April 10, 2016 Share Posted April 10, 2016 login: you successfully logged inКак убрать это сообщение при авторизации? В поиске не нашел должного ответа. Никак, они выводится через сервер. MTA10_Server/mods/deathmatch/logic/CAccountManager.cpp Строки: 839-841 https://github.com/multitheftauto/mtasa ... anager.cpp Link to comment
rovied Posted April 11, 2016 Share Posted April 11, 2016 login: you successfully logged inКак убрать это сообщение при авторизации? В поиске не нашел должного ответа. Никак, они выводится через сервер. MTA10_Server/mods/deathmatch/logic/CAccountManager.cpp Строки: 839-841 https://github.com/multitheftauto/mtasa ... anager.cpp Большое спасибо за ответ. Видел на одном сервере при авторизации такое сообщение не выводилось. Теперь полагаю что там регистрация написана вообще без использования встроенных функций. Link to comment
rovied Posted April 11, 2016 Share Posted April 11, 2016 Как отключить возможность писать в чат из консоли? Link to comment
AMARANT Posted April 12, 2016 Share Posted April 12, 2016 Заблокировать команду "msg". local prohibitedCommands = {["msg"]=true} function noMsg(cmd) if prohibitedCommands[cmd] then outputChatBox("Эта команда запрещена.",source) cancelEvent() end end addEventHandler("onPlayerCommand",root,noMsg) Link to comment
rovied Posted April 12, 2016 Share Posted April 12, 2016 Заблокировать команду "msg". local prohibitedCommands = {["msg"]=true} function noMsg(cmd) if prohibitedCommands[cmd] then outputChatBox("Эта команда запрещена.",source) cancelEvent() end end addEventHandler("onPlayerCommand",root,noMsg) Спасибо за ответ! local prohibitedCommand = {["say"] = true, ["msg"] = true, ["nick"] = true, ["me"] = true} function prohibitCmd(cmd) if (prohibitedCommand[cmd]) then outputConsole("Эта команда запрещена.") print("Player executed: " .. cmd) cancelEvent() end end addEventHandler("onPlayerCommand", getRootElement(), prohibitCmd) Link to comment
rovied Posted April 16, 2016 Share Posted April 16, 2016 setPlayerNametagText(...) не работает с кириллицей? У меня вместо русского имени выводится __________. Если возможно то как это исправить? setElementID(...) если я игроку поставлю идентификатор с помощью этой функции, потом когда он (игрок) перезайдет на сервер ему нужно заново устанавливать идентификатор или эта функция работает как setAccountData(...)? Тот самый вопрос если при перезапуске сервера? Link to comment
Kenix Posted April 16, 2016 Share Posted April 16, 2016 1. Делать свои неймтеги используя setElementData, хранить информацию в таблице. 2. Индификатор сбрасывается после удаления/выхода игрока из сервера. Перезапуск сервера также считается. Что ты конкретно хочешь сделать? Link to comment
rovied Posted April 16, 2016 Share Posted April 16, 2016 1. Делать свои неймтеги используя setElementData, хранить информацию в таблице.2. Индификатор сбрасывается после удаления/выхода игрока из сервера. Перезапуск сервера также считается. Что ты конкретно хочешь сделать? Благодарю за ответ. Я уже сделал, что надо было. Просто нужно было уточнить эти вопросы, чтобы не наделать ошибок в дальнейшем. Да и как-то костыльно получается с неймтегами, брать 3д текст, делать его видимым для всех и потом атачить. Можно было просто сделать это все одной функцией. Link to comment
rovied Posted April 18, 2016 Share Posted April 18, 2016 А функция setWeatherBlended(id) не работает? Тестировал у себя - ноль реакции, ни через минуту ни через две. Тестил на серверной и на клиентской стороне. Результат одинаковый. setWeather(id) работает нормально. Link to comment
Kenix Posted April 18, 2016 Share Posted April 18, 2016 setWeatherBlended зависит от setMinuteDuration напрямую Link to comment
rovied Posted April 19, 2016 Share Posted April 19, 2016 все верно, работает. Если у меня setMinuteDuration(60000) то погода изменится через час получается? Как же тогда сделать чтобы она менялась в течение 1-2 минут как указано в документации при таком setMinuteDuration? Link to comment
Kenix Posted April 19, 2016 Share Posted April 19, 2016 Смена погоды происходит за 2 игровых часа, стандартная длительность игровой минуты 1 секунда. Ну тут только если свою погоду делать. (Используя setSkyGradient, setRainLevel ) + шейдер. На баг трекере есть запрос, можно задонатить, тогда запрос станет приоритетным: https://bugs.mtasa.com/view.php?id=4531 Link to comment
rovied Posted April 21, 2016 Share Posted April 21, 2016 Как отследить событие когда игрок летит(падает)? Link to comment
rovied Posted April 24, 2016 Share Posted April 24, 2016 Есть какая-нибудь встроенная функция чтобы получить ближайший транспорт к игроку. Или только перебором в цикле всего транспорта и getDistanceBetweenPoints3D(...)? Link to comment
Kenix Posted April 24, 2016 Share Posted April 24, 2016 getElementsByType getElementPosition getDistanceBetweenPoints3D Через цикл. Link to comment
rovied Posted April 26, 2016 Share Posted April 26, 2016 Если уничтожить элемент (например marker) функцией destroyElement нужно ли вместе с этим удалять и повешенный addEventHandler("onMarkerHit", marker, func) обработчик на этот элемент. Или после дестроя обработчики также удаляются? Link to comment
Kenix Posted April 26, 2016 Share Posted April 26, 2016 При уничтожении элемента, все что связано с ним удаляется (элемент дата, события, а также дочерние элементы). Те события, которые у тебя были повешены на элемент не будут вызваны больше. Файл MTA10_Server/mods/deathmatch/logic/CElement.cpp (строка 77) Файл MTA10/mods/shared_logic/CClientEntity.cpp (строка 72) Ссылка (Сервер): https://github.com/multitheftauto/mtasa ... nt.cpp#L77 Ссылка (клиент): https://github.com/multitheftauto/mtasa ... ty.cpp#L72 Link to comment
rovied Posted April 30, 2016 Share Posted April 30, 2016 При входе в колшейп на клиентской стороне выводится сообщение function startTimerHit( hitElement ) outputChatBox("Сообщение") end Это сообщение видят все игроки. Чтобы увидел сообщение только тот кто вошел в колшейп нужно сообщение отправлять на сервере с visibleTo? Или у меня что-то не так? Link to comment
Kenix Posted April 30, 2016 Share Posted April 30, 2016 if hitElement == localPlayer then Link to comment
rovied Posted April 30, 2016 Share Posted April 30, 2016 if hitElement == localPlayer then Точно! Спасибо большое) Link to comment
K1parik Posted May 2, 2016 Share Posted May 2, 2016 Подскажите как сделать колеса у тс непробиваемыми или как отследить выстрелы по ним? Link to comment
Easterdie Posted May 5, 2016 Share Posted May 5, 2016 https://wiki.multitheftauto.com/wiki/Ge ... heelStates при дамаге по транспорту брать статус колёс 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