Jump to content
Форум МТА — GTA MTA: SA онлайн игра

скриптинг Помощь по скриптингу


HomoS
 Share

Recommended Posts

Если вы не знаете как исправить скрипт и чтобы решить проблему, вам нужно скинуть целый код - эта тема не для вас.
Для вас: http://mta-download.ru/forum/store/category/3-скриптер-мта/

Если вы хотите разобраться в каком-либо вопросе, получить развернутый ответ, получить уточнения по скриптингу МТА - добро пожаловать.

Рекомендуется задавать вопросы по конструкции:

  1. Как написать такой-то скрипт или систему
  2. Есть такая-то проблема, как ее исправить?
  3. Вылезает такая-то ошибка, как исправить? (Приложить кусок кода с ошибкой)

На эти вопросы будут даваться прямые указания - какие функции использовать, как оптимизировать код и т.п.

  • Like 1
Link to comment
Share on other sites

  • 4 weeks later...

@GeraldGrander Новичку писать систему домов будет тяжело, т.к. здесь не только нужно описывать действия маркеров (что довольно просто), но и расставлять dx-объекты, прописывать отображение, писать события кнопок для GUI, рисовать само GUI.

Link to comment
Share on other sites

  • 8 months later...

Я написал скрипт по видео "якобы он добавляет команды Armour и health" после его запуск команды не работают, подскажите что делать.

function healt(source)
    money = getPlayerMoney(source)
    if (money >= 100) then
        takePlayermoney(source, 100)
        x, y, z = getElementPcsition(source)
        health = createPikup(x, y + 1, z, 0, 100, 0, 100)
        local time1 = setTimer(function()
            destroyElement(health)
        end, 10000, 1)
    end
end
addCommandHandler("health", healt)

function armo(source)
    money1 = getPlayerMoney(source)
    if (money >= 120) then
        takePlayermoney(source, 120)
        x, y, z = getElementPcsition(source)
        armour = createPikup(x, y + 1, z, 1, 200, 0, 20)
        local time2 = setTimer(function()
            destroyElement(armour)
        end, 10000, 1)
    end
end
addCommandHandler("armour", armo)
<meta>
	<info name="prob" version="0.1" type="misc" author="STV" description="Script"/>

	<script src="prob.lua" type="Server"/>
</meta>

 

Link to comment
Share on other sites

Вот такая проблема, практический на каждом моде котором я скачивал, что делать?


Problem with resource: car_shop+gate; Couldn't find meta.xml file for resource 'car_shop+gate'
Resources: 225 loaded, 1 failed

Link to comment
Share on other sites

  • 5 months later...
  • 1 month later...
  • 2 weeks later...
  • 4 months later...

Поздно наверно пишу но ошибка в том что это СЕРВЕРНЫЙ СКРИПТ а на стороне сервера addCommandHandler должен получать два аргумента 
 

addCommandHandler("testcmd", function(player,command)
  -- тело функции на сервере с получение игрока который вызвал событие и команды которую он ввел
  end)

и на примере вашей функции healt код должен был выглядить так
 

function healt(source,cmd)
    money = getPlayerMoney(source)
    if (money >= 100) then
        takePlayermoney(source, 100)
        x, y, z = getElementPcsition(source)
        health = createPikup(x, y + 1, z, 0, 100, 0, 100)
        local time1 = setTimer(function()
            destroyElement(health)
        end, 10000, 1)
    end
end
addCommandHandler("health", healt)

ПОЛЬЗУЙТЕСЬ debugscript 2 скорее всего скрипт вывел бы на экран ошибку что то типа argument 2 вернул nil либо что то в этом духе 

Вот что про функцию сказано на MTA WIKI 
handlerFunction: эта функция предназначена для запуска команды, которая должна быть определена до добавления обработчика. Эта функция может принимать два параметра, playerSource и commandName, а затем столько параметров, сколько вы ожидаете после вашей команды (см. Ниже). Это все необязательно.

А на стороне клиента 
то есть на клиентской стороне это должно было выглядить так

function healt(cmd) source тут не нужен ибо на клиенте только один игрок и это мы и получать источника который ввёл команду ненужно.

Link to comment
Share on other sites

  • 3 weeks later...
  • 1 year later...
В 07.04.2020 в 10:41, Vantsev сказал:

Здравствуйте, интересует такой вопрос: я хочу заменить карту на F11, только у себя, но на чужом сервере. Как я могу это сделать?

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

Link to comment
Share on other sites

  • 2 years later...

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

 Share

  • Similar Content

    • By JeSS_TV
      Не могу синхронизировать систему домов, систему автосалона и систему банков между собой чтобы при покупке авто деньги списывались с банка и чтоб в панели ф3 были места под машину.
×
×
  • Create New...