-
Posts
1,739 -
Joined
-
Last visited
Everything posted by Kernell
-
Это есть и в МТАРП (где используется Lua), но это не является частью библиотеки. У меня это в виде отдельного пула который связывает объект класса с нужным элементом. Вырос и воспитан на Сях, терпеть не могу basic-подобные языки =) Всё по разному. Вызов функций через плагин в любом случае идёт через Lua. Скорость не сильно проседает. А вот моя библиотека Blowfish на C# работает в 3 раза быстрее чем на Lua.
-
Скину наработки из MTA RP, думаю под Lua переписать не составит труда Angle - чтобы узнать угол между двумя векторами Rotate - чтобы повернуть вектор на указанный угол (возвращает новый вектор) public float Angle( Vector3 to ) { return ( 360.0f - ( (float)Math.Atan2( to.X - this.X, to.Y - this.Y ) * 180.0f / (float)Math.PI ) ) % 360.0f; } public Vector3 Rotate( float angle ) { angle = (float)Math.PI * angle / 180.0f; return new Vector3( this.X * (float)Math.Cos( angle ) - this.Y * (float)Math.Sin( angle ), this.X * (float)Math.Sin( angle ) + this.Y * (float)Math.Cos( angle ), this.Z ); }
-
В ней есть нехороший костыль, который может несколько раз создавать объект. Это как бы не вызовет проблем, но мне например подобные вещи не нравятся. После того как перепишу серверную часть своего проекта на C#, выложу библиотеку которую я написал для него (там много фишек, например скрытая передача this, вызов методов через точку и т.д.)
-
Не надо использовать колшейпы в циклах, они для этого не предназначены. Колшейпы нужно использовать в событиях когда элемент вошел или вышел из него.
-
https://github.com/mabako/mta-paradise/ ... ut.lua#L60
-
В Lua, в качестве ключа таблицы может выступать всё что угодно. Не получай ID игрока (которого нет). Просто используй самого игрока как индекс таблицы. ElementData используется обычно только для того чтобы быстро и просто синхронизировать данные между сервером и всеми игроками (включая тех которые зайдут позже). Под самим игроком я имею ввиду его element (userdata). Тут нет айдишников, тут каждая сущность - это элемент, который не является числом. Если знаком с C++, то считай это указателем на объект.
-
В таком случае может быть стоит почитать пару уроков по Visual Studio?
-
Даю подсказку: для клиентской стороны свои события. Заходишь на wiki и в разделе Client Events ищешь нужное
-
После изучения Pawno, наверное стоит попробовать изучить Notepad++
-
В целом со многим согласен с тобой, но тем не менее подобные сообщение как у ТС оставляют за собой негативное впечатление, они как минимум показывают некомпетентность автора. Так что такой пост привлечёт разве что тех, о ком ты написал =) И что-то до сих пор нету того самого ТЗ...
-
Ты сейчас говоришь об исключениях, а о них я упомянул выше, тем самым показывая то, что не внимательно читал мой пост. Во-вторых, речь не о знаниях в областях МТА или просто Lua. Disinterpreter`а я знаю как минимум 3 года и скажу, что таких людей можно добавлять в исключения. В 16 лет человек рассуждал не хуже 18-летнего.
-
Оглянись, все вокруг делят по возрасту.. На детей, школьников (хотя по сути те же дети) и взрослых. Получается все вокруг ненормальные? Можно конечно кричать, мол возраст не показатель, и тому подобное. Но в большинстве случаях возраст ещё какой показатель. Я например с подозрением отношусь к лицам младше 18 лет, по очевидным причинам, но тем не менее для меня приоритетным является рассудительность человека и то как он мыслит, что напрямую зависит от возраста, если быть точнее - от жизненного опыта. А какой может быть жизненный опыт у ребёнка? (не беря редкие исключения, которые с 14 лет начали жить самостоятельно и т.д.). Это как бы норма. А вот говорить о 30-летних мужиках которые ведут себя хуже детей - не норма, поэтому о них я не буду говорить Вот взять к примеру эту тему: глядя на её содержание, у меня отпадает желание вообще связываться с этим всем, не говоря уже о том что автор просит связаться с ним через ВК. А эта тема что ли для рекламы, или что? Форум как никак. Выше (что не является оффтопом) я описал, какой минимум ожидаю увидеть от более менее грамотного заказчика (примеров полно, можно посмотреть на всяких фрилансерских сайтах).
-
18 лет, а такие ошибки.. Даже ВК когда-то стоял 99-ый год. Смотрю исправили уже =) А вообще распишите проект подробно, дабы каждый мог ознакомится с хотя бы, но примерным планом работы. Да, и так же не указали, ищите бесплатного скриптера или же есть какие-то другие варианты?
-
Мне в скайпе говорят, что по голосу мне 27, по внешности 18, а на самом деле 22 =)
-
Обе БД работают на языке SQL, не вижу каких либо преград для того чтобы написать скрипт с несколькими запросами в БД.
-
Потому что срабатывает событие __call которое является как бы конструктором, он создаёт новый объект, делает ей метатаблицу и возвращает его (объект). Об этом тоже было сказано в уроке.
-
Это понятно, непонятно то, как сделать одну функцию для n объектов. Т.е. есть, например, функция: function cars:delDoor(args) --body end Для конкретного объекта можно её вызвать так (но в данном случае self = cars): cars:delDoor(carMustang) cars:delDoor(carBus) cars:delDoor(carBullet) Но как её вызвать так?: carMustang:delDoor() carBus:delDoor() carBullet:delDoor() viewtopic.php?f=153&t=57987 - только вместо обработчиков событий используйте свои функции.
-
http://www.lua.ru/doc/2.5.9.html
-
Отбиндить нельзя, а вот отключить можно: toggleControl
-
onClientRender + getControlState( "aim_weapon" ) Уточните, что имеется ввиду под "двигать"? setElementAttachedOffsets
-
Интересный вопрос, даже не думал о том чтобы делать из него C++. Моей целью было сделать полноценное ООП которое ничем не будет уступать ООП в других языках, в том же C# например. Более того я люблю Си-подобные языки, и терпеть не могу синтаксис типа бейсика, за что собственно не люблю Lua. Синтаксис я старался делать похожим ради того чтобы было просто привычно, и красиво =) P.S. стрелочку в Lua реализовать не реально, это синтаксическая ошибка. Всё работает через точку, как в C# (хотя и там есть стрелочка).
-
точно не дает, тем более что вы сами начали дискуссию на эту тему, в результате которой вам несколько людей указали на вашу неправоту. Это дает повод усомниться в вашей компетенции, и традиционным, благонамеренным решением считается послать человека изучать документацию до тех пор, пока он эту компетенцию не обретет. Эти несколько людей так и не смогли ответить на вопрос ТС ибо не понимают что требуется, но вместо этого пытаются доказать всем и без этого очевидные вещи. Тем же самым и Вы занимаетесь. Перечитайте тему с самого начала, и хорошенько вдумайтесь, что требовалось. Так же обратите внимание, то "ООП" которое сейчас реализовано в МТА, можно было бы с таким же успехом реализовать и на самой Lua с помощью тех же метатаблиц. Но об этом вы молчите. Здесь не обсуждается "что можно, а что нельзя", я в своём моде реализовал классы таким образом что даже не надо передавать self, вместо этого скрытно передаётся this и собственно вызов метода происходит через точку. А объявление самого класса почти ничем не отличается от того же C# (за исключением некоторых мелких моментов, но всё равно выглядит очень не плохо). При этом имеется возможность переопределить методы get и set. Естественно это всё давно у меня существует до введения ООП в МТА. Но опять же так возвращаясь к теме - тут не обсуждаются возможности Lua. Вопрос был другой. Более того речь шла о том, чтобы эти механизмы работали на более низком уровне, а не на Lua, в силу производительности и возможности не подключать lua-файлы в каждый ресурс. Но судя по Вашей логике, вам и не нужны те же regexp реализованные на C++ и экспортнутые в Lua, наверное просто потому что не видите разницы. Я так понимаю Вы бы и с удовольствием написали свою библиотеку той же preg на Lua и пользовались бы =)
-
Может быть вы наконец научитесь читать? Если кто не понял, под "библиотекой" подразумевалась библиотека написанная на самой Lua. Не Вам мне объяснять как реализовать классы в Lua посредством самого языка. Я уже всё в этой теме объяснил, видимо Вы не достаточно понимаете о чём здесь идёт речь.
-
А какая собственно разница? Да действительно, какая разница, надеть часы на руку или руку на часы? Так и у тебя.