Jump to content

Antibird

Members
  • Posts

    177
  • Joined

  • Last visited

Everything posted by Antibird

  1. Коли уж про свет речь зашла, кто-нибудь пробовал как-то докопаться до тех прожекторов, что в area69 в singlePlayer? Это что, объект, эффект, частицы, симбиоз вышеперечисленного? Вроде даже LODы есть, в сингле опять же. Прожектор police Maverick'a - из той же оперы?
  2. Поправьте меня, если вру, но скорее всего - никак. Квадрат квадратом останется, можно, конечно, края прикрыть какой-нибудь staticimage-маской в виде толстого бублика, весь вопрос в эстетике полученного результата. Еще вариант - порезать карту на меньшие квадратики и рисовать составную кару. Чем меньше сторона квадрата, тем проще скрыть его угол, очевидно. Сталбыть, можно и маску потоньше взять.
  3. Матрица уже содержит в себе всю необходимую тригонометрию, именно поэтому чертовски удобна в использовании.
  4. Дык ведь с помощью той функции, что MX_Master привел в пример. Я лишь вкратце брякнул, чего она делает. getPositionFromElementAtOffset ( myVehicle, 0,-2,0 ) Ну, естественно, насчет (0,-2,0) это я примерно сказал, пристреляться надо. И будет нам счастье и на север и на юг и вверх тормашками, и к Эйлеру не ходи P.S. Определи чутка.
  5. Не вдаваясь в подробности, x,y,z - оси, проходящие через центр элемента; в центре, соответственно, точка (0,0,0). На примере автомобиля, если смотреть на него строго сверху вниз, причем морда направлена на север (вверх): ось x - слева направо, y - снизу вверх, z - из глубины на тебя. Допустим, что узнать координаты багажника =) указываем Y (навскидку) -2. Прикрепить что-нибудь на крышу: z +1 etc. Принцип, думаю, понятен. Не буду тут рассказывать про проекции вектора на оси, но можно отметить, что элементы матрицы [4][1], [4][2] и [4][3] - есть координаты объекта в мире GTA, что удобно в некоторых случаях. P.S. Пользуясь тем, что тов. lil toady читает эту ветку хочу поинтересоваться: а не планируете добавить setElementMatrix()? Было бы как минимум логично.
  6. local anomalstp1 = {286.05, 1319.48, 3} -- line1
  7. Even while the colshape is created, you can't use it since you have no variable defined for it at line 15. Should be like: myColCircle = createColCircle ( fX, fY, radius ) Then, at line 21 you check if the colShape a player entered is myColCIrcle: replace line 21 with if source == myColCircle then Read https://wiki.multitheftauto.com/wiki/Event_system after and make sure to understand what does "source" mean, It's crucial. When you do it must be clear why using if anomalstp1 == true then is incorrect.
  8. What do you put as the second argument at line 22? A table? https://wiki.multitheftauto.com/wiki/AddEventHandler What's the "id" argument for colShape table at line 14? Is it really defined? Is the colShape a table?
  9. Спасибо за разъяснения, смею предположить что до релиза 1.1 исправите?
  10. Добрый день. Обновился сегодня до 1.1-unstable-2425 и вдруг перестал запускаться скрипт клиента, он у меня скомпилированный. Методом научного тыка выяснил, что проблема возникает при переходе от версии 2406 к 2420, т.е на 2420 и более поздних - не работает. Хотел бы поинтересоваться, что, собственно, случилось и как вернуть все в рабочее состояние.
  11. Собственно, чуть ниже по форуму уже предлагали: viewtopic.php?f=123&t=31815#p337817 Из плюсов - не нужно использовать никакие сторонние сайты, пусть хоть трижды доверенные. Все равно, что просить кого-то изготовить ключи от своей входной двери, коли уж речь идет о защите. Ну и если интернет вдруг пропадет, компилятор - останется. И кстати, если нет охоты заморачиваться с командной строкой, можно просто в проводнике скрипт перетащить на иконку luac.exe и получит на выходе готовый продукт в той же директории. Drag'n'drop в общем.
  12. При том, что с некоторых пор имеется в наличии замечательная функция getTimerDetails(), таймер в данном случае - как раз то, что доктор прописал.
  13. Можно не присваивать пометку всем тачкам, а присвоить её лишь корню ресурса. Третий (опциональный) параметр getElementData() таким образом сделает за нас всю работу, ибо он сам ищет дату у parent'a, если не находит у child'a. По идее, должно быть верно.
  14. На удивление, у меня размер скомпиленного скрипта только растет. Может потому, что скрипты небольшие В довесок к компилированию, можно еще и подгружать скрипты динамически, при коннекте клиента. Через triggerClientEvent() (правда ограничения на 65 Кb за раз), а потом стартовать с помощью единственного микроскопического клиент-скрипта, содержащего магическую строчку loadstring() и заранее подсунутого клиенту в виде файла с расширением *txd, лежащего среди кучи реальных текстурок в самой глубокой папке клент-файлов. Шоб никто не догадался. А можно еще и не открытым текстом посылать, а зашифровать, используя какой-нибудь playerSerial. А можно сжать для экономии трафика и обхода ограничения на 65 Кб. Смотря у кого какая стадия шизофрении.
  15. Внесу ложку дегтя по теме. guiComboBoxAddItem() записывает в этот самый comboBox абракадабру, а вот guiComboBoxSetItemText(), например, вполне себе по-русски понимает. Приходится делать такой вот overwrite. Извиняюсь, на bugtracker не сообщал, не зарегистрирован. Да, guiSetProperty( ..., "Text", ... ) - также не работает с юникодом.
  16. Antibird

    2 * 2 ~= 4

    Great. My vote is for trying to increase cient-side math ops precision if that won't make a mess. In my case the: "considering the network layer forces 24-bit floats for communications, would it be worth it?", goes vice versa so 24-bits precision forces me to use the network communication instead. I don't know if it's going to be that simple to work around thought. Thanks in explaining ccw.
  17. Antibird

    2 * 2 ~= 4

    @ Zango: I'd be thinking so as well, but this piece says it should be fine: http://www.lua.org/pil/2.3.html I didn't expect having problems with numbers as long as only 9 digit. I don't wanna believe things go so bad. Worst thing is that it's all about simple hash calculations which you can't rely upon in case the hash itself is wrong =) @Aiboforcen: It's for client-side. I'll do a server-side check tomorrow and let you know.
  18. Antibird

    2 * 2 ~= 4

    Ermm... getting 2 different results means nothing works fine you see. Still thank you for making it clear that the thing is not about what kind of OS I have. I'd be really glad to hear of the MTA developers team, as they may probably know bit more of it.
  19. Antibird

    2 * 2 ~= 4

    It has no matter at all. The problem actually appears when It's dealt with a number length ( <- is that correct term? ) of 9 or more, for 8 digits it's all right. P.S. Can anyone please try the code above at 32-bit system and tell if line 8 result appears to be equal to line 9 one?
  20. Antibird

    2 * 2 ~= 4

    Well, the code below explains: a = 1 b = 99999999 outputChatBox ( a + b ) -->100000000 outputChatBox ( 1 + 99999999 ) -->100000000 --------------------------------------------------------------- a = 2 b = 99999999 outputChatBox ( a + b ) -->100000000 --wth? outputChatBox ( 2 + 99999999 ) -->100000001 Any chances to get rid of it? Win7x64, in case that matters.
  21. Once you enter the vehicle, its engine is always set to on. It does not matter of the engine state before you enter. Just switch it off when 'onVehicleEnter()' is triggered for example.
  22. This should be the way: for i, playerdata in ipairs(topexp) do guiSetText(_G["expexp"..tostring(i)],tostring(playerdata.Exp).." Exp") end
  23. Oh, God! Thank you SDK! This is something I totally forgot about. (I need to patch my brain.dll) May be closed, thanks you both.
  24. Phew, why no-one told me that before, I thought my GUI system just fools me =) Anyway, this feature looks half-done in this case. Could be also extended to other types of elements, or just disabled for GUI, or (probably the best case) a 5th argument could be added to setElementData() to choose whether or not to share the data with children. False by default ofc
×
×
  • Create New...