Jump to content

Общий мини "HELP ME" топик по скриптингу


Recommended Posts

Нажимаю на форму ввода (в любое место, даже на заголовок окна) т.е. не на кнопку, а событие onClientGUIClick все равно срабатывает. Как это отключить?

Решил проблему установив параметр getPropagated = false функции addEventHandler()

addEventHandler("onClientGUIClick", GUILogin.button[1], onClickBtnLogin, false)

было

addEventHandler("onClientGUIClick", GUILogin.button[1], onClickBtnLogin)

Link to post
  • Replies 3.1k
  • Created
  • Last Reply

Top Posters In This Topic

Top Posters In This Topic

Popular Posts

Есть два варианта решения проблемы. 1. Можно сделать свою загрузку файлов через triggerLatentClientEvent https://wiki.multitheftauto.com/wiki/TriggerLatentClientEvent Статус загрузки получать че

Для получения информации от сервера используется UDP ASE порт, по стандарту он игровой+123, то есть если игровой 22003, то ASE порт 22126. Спецификацию ASE порта можно найти тут: https://github.com/mu

if getElementType ( source ) == "vehicle" then

login: you successfully logged in

Как убрать это сообщение при авторизации? В поиске не нашел должного ответа.

Никак, они выводится через сервер.

MTA10_Server/mods/deathmatch/logic/CAccountManager.cpp

Строки: 839-841

https://github.com/multitheftauto/mtasa ... anager.cpp

Link to post
login: you successfully logged in

Как убрать это сообщение при авторизации? В поиске не нашел должного ответа.

Никак, они выводится через сервер.

MTA10_Server/mods/deathmatch/logic/CAccountManager.cpp

Строки: 839-841

https://github.com/multitheftauto/mtasa ... anager.cpp

Большое спасибо за ответ. Видел на одном сервере при авторизации такое сообщение не выводилось. Теперь полагаю что там регистрация написана вообще без использования встроенных функций.

Link to post

Заблокировать команду "msg".

local prohibitedCommands = {["msg"]=true} 
  
function noMsg(cmd) 
if prohibitedCommands[cmd] then 
outputChatBox("Эта команда запрещена.",source) 
cancelEvent() 
end 
end 
addEventHandler("onPlayerCommand",root,noMsg) 

Link to post
Заблокировать команду "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 post

setPlayerNametagText(...) не работает с кириллицей? У меня вместо русского имени выводится __________. Если возможно то как это исправить?

setElementID(...) если я игроку поставлю идентификатор с помощью этой функции, потом когда он (игрок) перезайдет на сервер ему нужно заново устанавливать идентификатор или эта функция работает как setAccountData(...)? Тот самый вопрос если при перезапуске сервера?

Link to post

1. Делать свои неймтеги используя setElementData, хранить информацию в таблице.

2. Индификатор сбрасывается после удаления/выхода игрока из сервера. Перезапуск сервера также считается.

Что ты конкретно хочешь сделать?

Link to post
1. Делать свои неймтеги используя setElementData, хранить информацию в таблице.

2. Индификатор сбрасывается после удаления/выхода игрока из сервера. Перезапуск сервера также считается.

Что ты конкретно хочешь сделать?

Благодарю за ответ. Я уже сделал, что надо было. Просто нужно было уточнить эти вопросы, чтобы не наделать ошибок в дальнейшем. Да и как-то костыльно получается с неймтегами, брать 3д текст, делать его видимым для всех и потом атачить. Можно было просто сделать это все одной функцией.

Link to post

А функция setWeatherBlended(id) не работает? Тестировал у себя - ноль реакции, ни через минуту ни через две. Тестил на серверной и на клиентской стороне. Результат одинаковый. setWeather(id) работает нормально.

Link to post

все верно, работает. Если у меня setMinuteDuration(60000) то погода изменится через час получается? Как же тогда сделать чтобы она менялась в течение 1-2 минут как указано в документации при таком setMinuteDuration?

Link to post

Смена погоды происходит за 2 игровых часа, стандартная длительность игровой минуты 1 секунда.

Ну тут только если свою погоду делать. (Используя setSkyGradient, setRainLevel ) + шейдер.

На баг трекере есть запрос, можно задонатить, тогда запрос станет приоритетным:

https://bugs.mtasa.com/view.php?id=4531

Link to post

Есть какая-нибудь встроенная функция чтобы получить ближайший транспорт к игроку. Или только перебором в цикле всего транспорта и getDistanceBetweenPoints3D(...)?

Link to post

Если уничтожить элемент (например marker) функцией

destroyElement 

нужно ли вместе с этим удалять и повешенный

addEventHandler("onMarkerHit", marker, func) 

обработчик на этот элемент. Или после дестроя обработчики также удаляются?

Link to post

При уничтожении элемента, все что связано с ним удаляется (элемент дата, события, а также дочерние элементы). Те события, которые у тебя были повешены на элемент не будут вызваны больше.

Файл 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 post

При входе в колшейп на клиентской стороне выводится сообщение

function startTimerHit( hitElement ) 
        outputChatBox("Сообщение") 
end 

Это сообщение видят все игроки. Чтобы увидел сообщение только тот кто вошел в колшейп нужно сообщение отправлять на сервере с visibleTo? Или у меня что-то не так?

Link to post

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 account

Sign in

Already have an account? Sign in here.

Sign In Now
  • Recently Browsing   0 members

    No registered users viewing this page.


×
×
  • Create New...