Jump to content

FalKRiSt

Members
  • Posts

    26
  • Joined

  • Last visited

Everything posted by FalKRiSt

  1. Допусти взяв из HTML у объекта есть параметр стиля repeat, по x или y или по той и той координате. Как же растянуть картинку таким же результатом в MTA? Я так понимаю при создании картинки ей нужно устанавливать параметр через guiSetProperty. Какой именно?
  2. Не уважаемый... _Dark_ ... Политика запрета удаления копирайтов - наше дело.... Это условие, по которому распространяется сборка с открытым исходным кодом... Есть все основания написать защиту, при которой удаление копирайтов будет не возможно. Основание - это вы... нам не свойственно писать и продавать то, что в принципе не западло выложить в общий доступ, но и так же хочется, что бы и про нас не забывали. Поставьте себя на наше место... Вот кого я ненавижу, так это зараз, которые просто присваивают проделанную работу себе, потом еще и гордятся что мол такие выпупыристые сделали такое (а по сути не сделали ни хрена.. ). Как этих людей назвать? "неблагодарные свиньи"... Таким макаром и отношением вас к нашим трудам -подталкивает к тому чтобы закрыть проект как OpenSource и начать приват разработку... Будь благодарен тому что дают, а как это исполнено не ваше дело. Мы пишем так как мы пишем... Предложения и помощь по каким-либо изменениям вы можете высказать на форуме.. Рассмотрим и прими решение. -------------------- Вот когда сделаешь что-то сам, тогда и поговорим..
  3. О тех багах, которые вы исправили просим отписываться на нашем форуме, указывая код на который вы исправили!
  4. Возник такой вопрос, можно-ли организовать подобие Api в ресурсах MTA, для примера допустим у нас есть 2 папочки с ресурсами. Назовем их example_1 и example_2. В example_1 мы создаем meta.xml и ресурс с именем resource_1.lua. и помещаем туда к примеру функцию суммы двух чисел: function MatchSumm(a,b) outputChatBox(tostring(a).."+"..tostring(b).."="..tostring(a+b)) c = a + b end Так же создаем в папочке example_2 ресурс с именем resource_2.lua, где мы вызываем данную функцию, причём присваиваем результат какой-либо переменной. И еще, есть ли возможно просто счесть переменную из resource_1.lua ресурсом resource_2.lua?
  5. Проблема решена, способ найден. Кому интересно, пишите в личку или в асю, расскажу как (7274080)
  6. Как выловить GUI комбобокс, в котором произвели выбор? я пользуюсь событием onClientGUIComboBoxAccepted, но так же у меня есть 2 комбобокса, которые нужно как-то различать... Заранее благодарю
  7. Проблема решена, тему можно закрывать или удалять... всё дело заключалось в demension'е. Сами объекты я создавал путём перехода в интерьер ZIP и поднимался выше этак на 500 координат по Z, тем самым dimension он брал тот к которому принадлежит ZIP. =)
  8. Да, полный... самое что интересное он его выполнять выполняет, но объекты не создаёт... Проверка на работоспособность: воткнул outputChatBox в конец кода, текст выводит но объекты не создаёт. Цель всего этого сделать некую задержку для создания объектов...
  9. Я немного не понял что вы этим от меня хотели, но через MTA-SE ошибок скрипта нет никаких. Если без таймера делать, то всё нормально, но опять же лучше обойтись без этого а сделать через таймер.
  10. На данный момент я пытаюсь создать объект на клиентской стороне через таймер, но почему-то не работает. Вот к примеру код по типу моего: function LoadMapObjects () createObject(7940,49.59999847,-128.10000610,1367.40002441) createObject(4808,33.90000153,-136.00000000,1364.44006348) createObject(1496,48.40000153,-130.05000305,1365.30004883) createObject(672,58.40000153,-115.19999695,1364.50000000) createObject(671,46.50000000,-122.59999847,1368.19995117) createObject(5772,56.59999847,-255.80000305,1367.40002441,0,0,270) end setTimer(LoadMapObjects, 5000, 1) В чём тут таится ошибка?
  11. if string.match(login, '[^a-zA-Z]') then guiSetText(GUILabel[11], "ППЦ") end Данный вариант сработал. Спасибо всем за помощь =)
  12. Тогда всплывает потребность проверки на наличие посторонних знаков, нашел функцию string.match, но всё не понял как она работает. вот код: if not string.match(login, '[a-zA-Z]') then guiSetText(GUILabel[11], "ППЦ") end В данном случае почему то даже если текст к примеру "Aaaaa12", то данное выражение считается верным почему то...
  13. Как реализовать данную проверку? Ясно лишь одно - проверка каждого символа, т.е. через цикл от 1 до длины текста (собственно string.len()) нужно проверять, принадлежит ли данный символ массиву данных. Могу сказать что в Delphi она проверяется примерно так: if text in ['a'..'z','A'..'Z','0'..'9'] и т.д., вопрос, как это реализуется в LUA? уже перерыл кучу инфы =)
  14. Я ценю то, что вы пытаетесь помочь, но в данном коде изъян. Дело в том, что при заходе на сервер, таким способом устанавливаются минуты, но не секунды. Исходя из этого получается что к примеру зашёл человек на сервер, а спустя какое-то время (к примеру секунд 20) заходит еще. В итоге получается, что у них время асинхронно на 20 секунд. Для РП мода это не очень хороший вариант. О том, что я пытаюсь реализовать. Изначально по средствам showPlayerHudComponent (source,"clock",false), мы убираем часы, после спавна игрока мы рисуем с помощью dxDrawText новые часы. Далее запрашиваем время от сервер (Час, минуту, секунду). когда клиент их получает начинаем работу таймера, с интервалом в секунду. В итоге проходя через условия расчёта, что при значении секунд равных 60 он сбрасывает на 0 а к секции минуты +1. В итоге и синхронизация времени высокая, погрешность тут я думаю может быть в раёне 2 секунд.
  15. Есть еще вопрос, вот по поводу таймера. В какой момент времени, а точнее после какого события он включается? Я так понял он включается при старте сервера, тогда как реализовать включение таймера после определенного события, допустим после спавна игрока? Я так понимаю, нужно написать функцию, которую присвоить событию onPlayerSpawn addEventHandler("onPlayerSpawn",getRootElement(),TImerStart) [i][color=#BFBFBF]-- где TImerStart функция которая состоит всеголишь из setTimer()[/color][/i] и уже потом при этом событии оно запускается, но идёт ли нужный мне повтор? То, что вы написали получается что сервер производит постоянное обновление тем самым допустим расчитывая на крупный онлайн к примеру 500 - сервер вынужден отправлять 500 пакетов за раз только в этой функции. Будет ли удобней сделать к примеру только отправку часа, минут и секунд, а уже потом на стороне клиента каждую секунду выполнять функцию просчёта времени?
  16. MX_Master, во, спасибо тебе огромное, теперь я в полне понял как это работает =) Благодарю всех кто хоть как-то помог, даже самую малость =) Побольше бы таких людей =]
  17. Ну вот смотри, сейчас я пытаюсь реализовать синхронизацию реального времени по средствам запроса времени на сервере, т.е. через функцию getRealTime(), в итоге мы получим данные вида, к примеру: realtime = getRealTime() и получаем по частям: realtime.hour , realtime.minute, realtime.second далее нужно их передать клиенту, т.е. все выше-перечисленные переменные и присвоить уже на стороне клиента объекту dxDrawText. а уже потом на стороне клиента с помощью таймера будет просчитываться время по таймеру. Как передать данные с сервера клиенту?
  18. Форумчане, я начинающий программист в сфере модов на МТА, и потихоньку разбираюсь в этом, но есть один вопрос, который я не могу понять. Как происходит обмен данными между сервером и клиентом. К примеру как передать время которое сейчас на серверной машине, клиенту у которого к примеру переданное значение мы вписываем в dxDrawText. Очень буду благодарен если вы объясните доступно весь этот процесс (не создавал бы тему, не найдя понятного объяснения или урока). Как я понял должны быть функция на обеих сторонах (клиент и сервер), и в итоге функция клиента вызывает функцию сервера, тем самым получает какой-то отклик в виде данных, которые нам и нужны. В теории всё понял, но на практике как реализовать еще не понял. Заранее буду благодарен.
×
×
  • Create New...