
Arisu
Members-
Posts
322 -
Joined
-
Last visited
Everything posted by Arisu
-
Библиотека на самой Lua? Ну пожалуйста, Lua определяет метатаблицы и метаметоды, это и есть библиотека для создания собственных классов. Что-то еще? Напишите свой враппер для этих функций, чтобы было "красивенько" и однострочно. Может, вы имели ввиду создание новых сущностей в игре? Нет, за этим точно не в луа идти нужно, и, надеюсь, зеленый ник вам это позволяет осознавать. А вот общаться в такой манере, как точно не дает, тем более что вы сами начали дискуссию на эту тему, в результате которой вам несколько людей указали на вашу неправоту. Это дает повод усомниться в вашей компетенции, и традиционным, благонамеренным решением считается послать человека изучать документацию до тех пор, пока он эту компетенцию не обретет.
-
Предусмотрено. При помощи метатаблиц, как и сами классы в Lua. Это единственный способ, потому что язык не имеет ООП как такового, но даже при помощи метатаблиц это получается почти полноценное ООП. Обращение через двоеточие - доступ к полям и методам объекта. Полиморфизм ест. Контроль доступа возлагается на плечи программиста. Наследование - пожалуйста, вот наследование. Не можешь изучить основные принципы используемого языка, и требуешь то, что уже есть? На мета-таблицах это все реализовано, которые аккуратно сложены в _G. Бери и модифицируй как хочешь прямо в рантайме, в пределах вм целого ресурса. См. выше. См. выше. Возьми и реализуй такой класс, ссылку выше я дал, поля onStart, onStop реализуешь, можешь даже в виде таблиц как в твоем любимом C#, оператор сложения в Lua перегружается тоже. Имитация ООП в Lua делается без библиотек, через пару строк и метатаблицы. Достаточно изучить используемый язык. Так что, см. выше.
-
За дураков держишь? Скрипт ругается на строку 462, выложено от силы строк двести, иди сука сам угадывай, какая из них 462. Угадаешь - тогда и возвращайся.
-
Попробуйте с setElementSyncer поколдовать, поставьте для прицепа тот же, что и для машины, вдруг поможет.
-
Не можешь деньгами - плати натурой. Ну, эээ, в смысле, рекламой, услугой или еще чем-то.
-
Формулы-то правильные. Из кватернионов получаются действительные углы. Видимо, они в другом базисе. Если можно мне - образец ipl, и скриншот того, как должно быть? Поколдую над этим.
-
Угу, и работает он в пределах одного ресурса. И приорити задаются в пределах ресурса, а если что-то извне начинает воздействовать - тут же начинается беспорядок.
-
Че вы к этим кватернионам прицепились. Пять лет прошло, не могут матчасть изучить. http://gtamodding.ru/wiki/IPL#INST Вот в готовом виде алгоритм. http://www.euclideanspace.com/maths/geometry/rotations/conversions/quaternionToEuler/
-
Хреновый способ. На клиенте все скрипты определения урона поломаются. И на сервере тоже всё пойдет наперекосяк. Ведь на дворе шел 2014 год, а в идеальном мультиплеере калбеки вызывались беспорядочно, а функцию wasDamageCancelled так и не предусмотрели. Хотя в другом конкурирующем моде это было решено легко и просто: вызовом каллбеков в скриптах последовательно.
-
А я на сколько помню, в официальной документации об этом не говорится ничего. https://wiki.multitheftauto.com/wiki/SetAccountData
-
И мне вас жаль. Надеюсь, 85 ГБ памяти должно хватить. Навыки работы с SQL, безусловно, нужны. Но не следует применять их там, где нету на то острой необходимости. С этого места поподробней. Вы осведомлены о том, какого масштаба проект делает автор топика? Если нет - то и не делайте заявлений о нецелесообразности того или иного способа. Пускай автор и решает, что ему будет нужнее. Синхронно или нет - я тоже не помню, но вы же не собираетесь дергать ее постоянно. Небольшие одноразовые блокировки можно перетерпеть, а дальше можно держать данные в памяти.
-
Блаблабла, изучите SQL. Блин, серьезно, опять? На этом форуме так любят SQL, что обязательно его изучить и использовать везде, где только можно? Стоп, не надо. Как я уже писал где-то здесь, в мта есть встроенная база данных SQLite, и для хранения инвентарей, привязанных к аккаунту, вполне хватит ее возможностей. При этом язык SQL не нужно знать вообще, так как есть встроенные функции setAccountData и getAccountData, которые делают всю сложную работу за вас. Чтобы сохранить инвентарь (а это, вероятнее всего, отдельная таблица), рекомендую просто сериализовать его и записывать полученную строку в аккаунт. Для загрузки, прочитать из аккаунта и десериализовать. Не надо городить отдельных баз данных для этого, всё уже придумано для вас.
-
Какой из этих МП сейчас живой? Просили достойную альтернативу, а предложили мёртвые проекты с "программистами" которые ещё только учатся на исходниках MTA Это намек на то, что пора перестать е**ть Сан Андреас, и перейти уже к е**нию GTA IV, а SA уже похоронить и забыть. Вот идите и займитесь этими проектами, чтоб они не были "мертвыми".
-
А ты предложи достойную альтернативу!!! Чтобы было api хорошие Гибкость в кастюмизации Что работало на любом ведре не у всех hi-end И главное парог вхождения низкий IV-MP? MTA: Orange?
-
>2005+9 >GTA San Andreas Ненужно, закопайте уже и займитесь чем-нибудь полезным, вместо ковыряния движка десятилетней давности.
-
UAC вообще не нужен. Нужно сидеть не из-под админа, и тогда проблем не будет вообще. Совсем уже из ума выжили со своим оффтопиком. Если использовать слово "нормальный" в значении - такой, как другие; обычный; то все верно. Если же вы намекаете на то, что бесплатное ПО некачественное, или не удовлетворяет каким-либо важным для вас критериям, то для начала следует указать, каким критериям оно должно отвечать, а уже потом делать резкие выводы и обобщать.
-
Телепаты в отпуске. Выложите логи МТА, пожалуйста.
-
Что-то мне подсказывает, что айпи там записаны в виде int32
-
Диалог мягко намекает на ботнеты и лаги сети из-за вирусов Я мягко намекаю, что какого черта клиент вообще заботится о том, есть у меня антивирь, или нету. Или это не он, а вирус?
-
Для dxDraw картинка просто рисуется на экран, для guiStaticImageLoadImage создается объект в CEGUI. Вот и разница.
-
А это вообще что, и зачем оно входит в МТА? Как связаны антивирус и игровой клиент?
-
С тем, что выполнение guiStaticImageLoadImage - это какой-то очень ресурсозатратный процесс, я полагаю.
-
Вот лучше не надо использовать сервер. Убивать нужно сразу и на клиенте, и голову клиент угадает в точности так же, как и пошлет ее на сервер, но при этом моментально. Т.е. попадание в голову на сервере изначально будет все равно на клиенте зафиксировано.