_Vincent_ Posted September 6, 2013 Share Posted September 6, 2013 Про Call: https://wiki.multitheftauto.com/wiki/Call Link to comment
TheNormalnij Posted September 6, 2013 Share Posted September 6, 2013 Если команда существует. executeCommandHandler Link to comment
nejiko Posted September 6, 2013 Share Posted September 6, 2013 Если команда существует. executeCommandHandler пробовал не помогло! работало только в клиенте,прочтите первый вопрос я там всё писал... Link to comment
Elengar Posted September 6, 2013 Share Posted September 6, 2013 Если команда существует. executeCommandHandler пробовал не помогло! работало только в клиенте,прочтите первый вопрос я там всё писал... Как, только в клиенте ? Client and Server function И еще, что ты хочешь сделать ? Чтобы кто-то сел в машину, написал /cveh и у его открылось меню ? Link to comment
TheNormalnij Posted September 6, 2013 Share Posted September 6, 2013 тогда надо еще тригер юзать. executeCommandHandler работает только с серверными или клиентскими командами в зависимости от своей принадлежности. Link to comment
Jonathan.P Posted September 6, 2013 Share Posted September 6, 2013 Господа, мне кто-нибудь скажет почему в MAP - файле не работает: <colsphere posX="-1893" posY="863" posZ="36" radius="20" /> ? Пробовал и так: <colshape type="sphere" posX="-1893" posY="863" posZ="36" radius="20" /> - не работает. Есть варианты решения проблемы? Link to comment
Elengar Posted September 7, 2013 Share Posted September 7, 2013 Господа, мне кто-нибудь скажет почему в MAP - файле не работает: <colsphere posX="-1893" posY="863" posZ="36" radius="20" /> ? Пробовал и так: <colshape type="sphere" posX="-1893" posY="863" posZ="36" radius="20" /> - не работает. Есть варианты решения проблемы? Создать колшейп скриптово ? Link to comment
Jonathan.P Posted September 7, 2013 Share Posted September 7, 2013 Да, скриптово то можно, а мне нужно именно в map файле. Link to comment
TheNormalnij Posted September 7, 2013 Share Posted September 7, 2013 В мапе. <wtfzone type="sphere" posX="-1893" posY="863" posZ="36" radius="20" /> В коде ресурса-гейммода: function zonesInit() for _, zone in pairs( getElementsByType( 'wtfzone' ) ) do local x, y, z = getElementPosituion( zone ) createColSphere( x, y, z, tonumber( getElementData( zone, 'radius' ) ) ) end end addEventHandler( 'onGamemodeMapStart', root, zoneInit ) Типо так. Link to comment
Jonathan.P Posted September 7, 2013 Share Posted September 7, 2013 Да знаю, спасибо, но мне бы чисто без скриптов. На вики написано, что так можно, но у меня не работает. https://wiki.multitheftauto.com/wiki/Colshape Link to comment
nejiko Posted September 7, 2013 Share Posted September 7, 2013 Если команда существует. executeCommandHandler пробовал не помогло! работало только в клиенте,прочтите первый вопрос я там всё писал... Как, только в клиенте ? Client and Server function И еще, что ты хочешь сделать ? Чтобы кто-то сел в машину, написал /cveh и у его открылось меню ? Да только не написал,а в GUI нажал кнопку сработала комманда /cvehс проверкой на авто,а то она срабатывала но даже когда не в авто! Link to comment
nejiko Posted September 7, 2013 Share Posted September 7, 2013 тогда надо еще тригер юзать. executeCommandHandler работает только с серверными или клиентскими командами в зависимости от своей принадлежности. В том то и дело,я читал и уже 100 раз перепробовал разных вариантов этой комманды,оно будет загружать команду из другого ресурса? Link to comment
Jonathan.P Posted September 7, 2013 Share Posted September 7, 2013 Господа, предложите вариант решения проблемы - наложение dxDrawText'ов друг на друга. Нужно чтобы один при этом пропадал а другой оставался. Может как-то поманипулировать функцией isLineOfSightClear? Есть варианты? У меня только один - всех dxDrawText'ы запихать в один ресурс. А если без этого? p.s. что-то я тут слишком часто вопросы задаю, и мне всё реже отвечают. Link to comment
TheNormalnij Posted September 7, 2013 Share Posted September 7, 2013 Я уже написал, что команды бывают серверные и клиентские. Возможно, вы не указываете игрока и или не проходит какая нибудь проверка с командной функции. Link to comment
TheNormalnij Posted September 7, 2013 Share Posted September 7, 2013 Господа, предложите вариант решения проблемы - наложение dxDrawText'ов друг на друга. Нужно чтобы один при этом пропадал а другой оставался. Может как-то поманипулировать функцией isLineOfSightClear? Есть варианты? У меня только один - всех dxDrawText'ы запихать в один ресурс. А если без этого? p.s. что-то я тут слишком часто вопросы задаю, и мне всё реже отвечают. Г-но вопрос. Все dx под один onClientRender и там уже манипулировать, можно создать таблицу в которой будут положения текстов, а в ключе их слой. x, y = y, x не отменяли Link to comment
Elengar Posted September 7, 2013 Share Posted September 7, 2013 тогда надо еще тригер юзать. executeCommandHandler работает только с серверными или клиентскими командами в зависимости от своей принадлежности. В том то и дело,я читал и уже 100 раз перепробовал разных вариантов этой комманды,оно будет загружать команду из другого ресурса? Я тебе писал как делать проверку на машину. Ты сам не понимаешь, что тебе нужно. Link to comment
Jonathan.P Posted September 7, 2013 Share Posted September 7, 2013 Г-но вопрос. Все dx под один onClientRender и там уже манипулировать, можно создать таблицу в которой будут положения текстов, а в ключе их слой. x, y = y, x не отменяли Да, вот я и говорю, если только всё в один ресурс, в один onClientRender. Да, таблица тоже вариант, но опять же, всё в один ресурс. Спасибо, я думал может есть где спец. параметр или функция для проверки. Link to comment
Jonathan.P Posted September 9, 2013 Share Posted September 9, 2013 Чем отличаются nametagText и playerName? Точнее 'setPlayerNametagText' и 'setPlayerName'. Link to comment
Kenix Posted September 9, 2013 Share Posted September 9, 2013 Чем отличаются nametagText и playerName? Точнее 'setPlayerNametagText' и 'setPlayerName'. setPlayerName изменяет ник игрока, setPlayerNametagText изменяет текст над самим игроком. Link to comment
Jonathan.P Posted September 9, 2013 Share Posted September 9, 2013 Спасибо, всё прояснилось Link to comment
nejiko Posted September 9, 2013 Share Posted September 9, 2013 function cvehcmd () if (isPedInVehicle (source)) then -- находится ли игрок в транспорте local veh = getPedOccupiedVehicle (source) outputChatBox ("Настройки открыты.", source, 255, 0, 0)-- ниже выполняешь нужные тебе действия call(getResourceFromName("cvehicle"), "enableVehicleControl", "cveh") else outputChatBox ("Вы не в автомобиле!", source, 255, 0, 0) end end addEvent("cvehcmd",true) addEventHandler("cvehcmd",getRootElement(),cvehcmd)-- у тебя ивент, но судя по названию ты хотел команду. addCommandHandler функция, смотри вики function cvehcmd () if (isPedInVehicle (source)) then -- находится ли игрок в транспорте local veh = getPedOccupiedVehicle (source) outputChatBox ("Настройки открыты.", source, 255, 0, 0)-- ниже выполняешь нужные тебе действия executeCommandHandler ( "cveh", playerSource ) else outputChatBox ("Вы не в автомобиле!", source, 255, 0, 0) end end addEvent("cvehcmd",true) addEventHandler("cvehcmd",getRootElement(),cvehcmd)-- у тебя ивент, но судя по названию ты хотел команду. addCommandHandler функция, смотри вики Как его правильно использовать весь гугл перерыл,не работает проверка и тд. работает и тогда работала,я не пойму как она должна срабатывать(( Link to comment
Jonathan.P Posted September 14, 2013 Share Posted September 14, 2013 1)Ребята, а не подскажите как присвоить объекту универсальный dimension, чтобы он находился сразу во всех, не дублируя сам объект? Создал свой интерьер, который должен будет использоваться в 17 дименшонах, а тут проблема. 2) На самодельном инте не работает проверка isPedOnGround. Как бороться? Может какие объекты помогут? Link to comment
Kernell Posted September 15, 2013 Share Posted September 15, 2013 По первому пункту кстати тоже интересно.. Пока только костыль в виде создания объектов когда игрок входит и удалять когда выходит (на клиентской стороне).. хотя это не костыль, а наоборот правильно даже. По второму: проверяйте через isLineOfSightClear (Client-only) Link to comment
Jonathan.P Posted September 15, 2013 Share Posted September 15, 2013 По поводу первого, спасибо, а вот насчет второго поподробней. У меня в инте стоит маркер выхода из него. При заходе на маркер стоит проверка isPedOnGround(чтобы игрок не прыгал на маркер) - во всех стандартных интах работает, а в моем - нет. Как тут поможет isLineOfSightClear? Link to comment
Kenix Posted September 15, 2013 Share Posted September 15, 2013 С помощью isLineOfSightClear проводим линию вниз, если линия не проходит, то значит под игроком есть поверхность. 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