Jump to content

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


Recommended Posts

Posted
function wfir () 
    outputChatBox("2") 
    outputChatBox(tostring(isElement( source ))) 
    outputChatBox(tostring(getElementType( source ))) 
    if source and getElementType( source ) == "player" then 
        local weapon = getPedWeapon (source) 
        outputChatBox(tostring(weapon)) 
        outputChatBox(tostring(getElementData (source, "currentweapon_1"))) 
        if weapon == 31 and getElementData (source, "currentweapon_1") == "M4A1 CCO" then 
            cancelEvent() 
            outputChatBox("222") 
        end 
    end 
end 
addEventHandler( "onWeaponFire",getRootElement(),wfir) 

Что не так? почему эвент не триггериЦа когда игрок стреляет?

Это событие вызывается только при стрельбе кастомного оружия. Используй onClientPlayerWeaponFire для отслеживания выстрелов игрока.

Posted

function weaponSwitch (weapon) 
    cancelEvent() 
addEventHandler ( "onClientPlayerWeaponFire", getLocalPlayer(), weaponSwitch ) 

когда стреляю пуля всё равно вылетает, как быть? что делаю не так? :o

  • Moderators
Posted
function weaponSwitch (weapon) 
    cancelEvent() 
addEventHandler ( "onClientPlayerWeaponFire", getLocalPlayer(), weaponSwitch ) 

когда стреляю пуля всё равно вылетает, как быть? что делаю не так? :o

Это событие нельзя отменить. Как вариант, можно использовать toggleControl для блокировки кнопки/клавиши стрельбы.

  • 5 weeks later...
Posted

Ребят, подскажите как сделать проверку на то находится игрок в интерьере или нет?

Posted
local bInInterior = getElementInterior( pPlayer ) ~= 0; 

Можешь написать проверку ещё и на измерение.

http://vk.com/the_kenix

Вопросы задавайте на форуме, не пишите мне в личку.

Please don't pm me.

Posted

Ребята, подскажите пожалуйста, как можно выключить консоль в игре?

С помощью toggleControl, как я понял такой возможности нет.

Posted

Её разве вообще можно отключить? Я так понимаю это сделано из соображений безопасности

Не оказываю поддержку посредством личных сообщений, ICQ, ВК и тому подобное. Все вопросы задавайте на форуме.

Posted

Я вот пытаюсь сделать шейдер уменьшение части тела.

Вот нашел пост где Кеникс говорит что это возможно.

3. Пишем шейдер, который уменьшает размер элемента

https://wiki.multitheftauto.com/wiki/Sh ... #Ped_morph (посмотреть и сделать на основе его, там используется уменьшение/увеличение частей всего тела, думаю можно поэкспериментировать)

Но писал в личку Ren_712 он сказал что это невозможно, т.к. нельзя с точностью изменять форму объекта. Даже в том же Ped_morph'е размер изменяется очень криво.

Так все же, возможно ли это или нет?

Posted

сделать его тоньше или толще можно, но что конкретно имеется в виду под "уменьшить"?

http://bpb-team.ru/ - особый вид людей.
http://vk.com/mtapro - турниры и мероприятия в мта

<Easterdie> kye why samp has not updates or it make slowly?
<Kyeman> I have not src of SA-MP and have use hex editor for change version to next 0.3a, 0.3c, 0.3x, 0.3z etc.

Posted
сделать его тоньше или толще можно, но что конкретно имеется в виду под "уменьшить"?

Скин полностью уменьшить в размере, без потери формы.

Posted
сделать его тоньше или толще можно, но что конкретно имеется в виду под "уменьшить"?

Скин полностью уменьшить в размере, без потери формы.

Хз. Мб глупость говорю пишу, но... Мб уменьшить модель и текстуру?

Posted
Хз. Мб глупость говорю пишу, но... Мб уменьшить модель и текстуру?

Мне в основном работать прийдется с CJ'ем, а его .dff заменить нельзя, да и если можно было, то это займет кучу памяти, что уже лучше реально залить изображения, о чем мне так кричали в англ. ветке.

Posted

Очень мало инфы по рейсовому режиму.

Интересно, можно ли в процессе гонок перемещать чекпойнты? Или хотя бы менять их тип (с ореола на столб помогло бы).

Posted
С чекпоинтами можно осуществлять любые операции, как и с элементами.

Пробовал setElementPosition и moveObject. При обратном получении координат с помощью getElementPosition координаты меняются. Но рейсовый сервер об этом не знает :shock:. Визуально чекпойнты остаются где были. И берутся машинами они где видны :(:(

Posted
Элемент какого типа вы редактировали?

checkpoint

Вот так написано на стороне клиента (step - метка в параметрах того чекпойнта, который я хочу двигать на запад):

local objs = {} -- для того, что будем просматривать 
addEventHandler("onClientResourceStart",resourceRoot, 
function() 
  objs = getElementsByType("checkpoint",source) 
  setTimer(function() 
    for i, object in ipairs(objs) do 
      local step = getElementData(object,"step") 
      if step then -- выбираем те чекпойнты, которые помечены "step" 
        local x,y,z = getElementPosition(object) 
        x = x - 1 
        outputChatBox ("X: " .. x ) 
        setElementPosition(object,x,y,z) 
      end 
    end 
  end,500,0) 
end) 
  

В чате числа меняются, а вот на карте ничего не происходит.

Posted

Подскажи есть ли какое условие которое будет проверять надет прибор ночного видения или нет?

Posted
Элемент какого типа вы редактировали?

checkpoint

Вот так написано на стороне клиента (step - метка в параметрах того чекпойнта, который я хочу двигать на запад):

local objs = {} -- для того, что будем просматривать 
addEventHandler("onClientResourceStart",resourceRoot, 
function() 
  objs = getElementsByType("checkpoint",source) 
  setTimer(function() 
    for i, object in ipairs(objs) do 
      local step = getElementData(object,"step") 
      if step then -- выбираем те чекпойнты, которые помечены "step" 
        local x,y,z = getElementPosition(object) 
        x = x - 1 
        outputChatBox ("X: " .. x ) 
        setElementPosition(object,x,y,z) 
      end 
    end 
  end,500,0) 
end) 
  

В чате числа меняются, а вот на карте ничего не происходит.

Значит маркеры не связаны родственными связями с чекпоинтами, попробуйте искать маркеры, проверить всю их элементдату, возможно, поможет

Posted

Подскажите как можно сделать рестарт определенного ресурса на сервере например каждый час?

Posted
Подскажите как можно сделать рестарт определенного ресурса на сервере например каждый час?

Таймер и restartResource в другом ресурсе.

А зачем тебе это? Скорее всего есть вариант получше.

Posted
Подскажите как можно сделать рестарт определенного ресурса на сервере например каждый час?

Таймер и restartResource в другом ресурсе.

А зачем тебе это? Скорее всего есть вариант получше.

проблема такая. нашел тут один ресурс на открытие частей транспорта. и все бы хорошо, но иногда он перестает работать. анимация и звуки проигрываются, а двери не открываются. а поскольку знаний в луа у меня 0,08% то исправить или написать свой не могу. а рестарт всегда помогал :lol:

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...