Перейти к контенту

RayTwitty

Жители
  • Число публикаций

    1 223
  • Регистрация

  • Последнее посещение

  • Дней в топе

    4
  • AMKoin

    1,851 [Подарить AMKoin]

Весь контент пользователя RayTwitty

  1. RayTwitty

    Скриптование

    Ни в оригинале, ни с этим скриптом такого бага я не видел. Смотрите спавн и какое там количество патронов прописано.
  2. RayTwitty

    Скриптование

    @DXatom, можно либо создать объект задания CGameTask, загрузить в него описание задания и собственно выдать во время использования предмета (читать), но зачем запариваться, когда можно повесить выдачу задания на поршен (вроде бы, тег task надо прописать внутрь тега поршена).
  3. RayTwitty

    X-Ray extensions

    Ну-у, назвался груздем... =)
  4. RayTwitty

    X-Ray extensions

    Я бы при проектировании классов оружия начал с перечисления собственно того, что мы хотим от оружия и какое оно вообще должно быть. После того, как на бумажке всё будет сделано, можно приступать к написанию непосредственно кода. Возможно, в один класс и не получится все типы оружия вместить, например, для того же холодного достаточно много расхождений. Ну за деталями только к ним в личку Так могу только сказать, что конечно это всё делается на исходниках.
  5. RayTwitty

    X-Ray extensions

    http://www.gameru.net/forum/index.php?s=&showtopic=23443&view=findpost&p=1505261 SWM, оружейка. Завтра соберу по коммитам и выложу.
  6. RayTwitty

    X-Ray extensions

    Тебе все 50 назвать? О создании единого класса для всего оружия не только ты высказывался Один из моих знакомых, насколько я знаю уже реализовал это на ЗП.
  7. RayTwitty

    X-Ray extensions

    На самом деле, их там даже больше - я ещё не смотрел в сторону перехода онлайн\оффлайн - там и половины из того что должно, не сохраняется. А между сохранениями... Возьми дробовик, заряди разными патронами, сохранись, загрузись - все патроны одного типа. Или без сохранений - возьми РГ-6, заряди, разряди и стреляй дальше. А если его ещё заклинить (сломать), так вообще получится автоматический гранатомет. А багов со стейтами сколько, а со звуками\анимациями... З.Ы. класс РПГ я даже не смотрел ещё, там наверно тоже весело.
  8. RayTwitty

    X-Ray extensions

    Не некоторые, а все. Ибо это не оружие, а один сплошной костыль (ибо больше полусотни багов, это ни в какие ворота).
  9. RayTwitty

    БЛОКпост

    @Serge!, мало того, что ты знал, но не помог администраторам информацией: так ты ещё и наехал на того, кто помог. Надеюсь, тебя отправили далеко и надолго. @Murarius, спасибо, что пофиксили Ещё хотелось бы, чтобы наконец исправили эту полоску в один пиксель под панелью пользователя (как - я писал ранее).
  10. RayTwitty

    Форум: вопросы и предложения

    Для решения этой задачи можно использовать данную возможность CSS: http://htmlbook.ru/css/text-overflow Правда работает только с блочным элементом, что впрочем-то логично.
  11. RayTwitty

    Скриптование

    Сделать паузу перед итерацией либо добавить флажок "removed" удаленному объекту (способ должен сработать, но не гарантирую). ... sobj.removed = true alife():release(sobj.id) npc:iterate_inventory(function(_,item) local sobj = alife():object(item:id()) if sobj and not sobj.removed then ... end end)
  12. RayTwitty

    Разговоры о модах

    Всегда интересовал вопрос: wtf?
  13. Небольшое уточнение - второй аргумент необязательно должен быть каким-то игровым объектом, с помощью него можно передавать любые параметры - строки, таблицы и т.д. Не знаю, разбирал ли кто-то эти методы, но: mark_item_dropped(item) - устанавливает пометку на выкидывание предмета из инвентаря. По сути, это отложенное выкидывание (при drop_item, предмет выкидывается сразу). Дроп происходит на апдейте того объекта (shedule_Update), в котором находится предмет. Метод вызывается для CActor, CAI_Stalker, CAI_Trader.. bool marked_dropped(item) - показывает, установлена ли метка на дроп. Необходимость в отложенном дропе вызвана ситуацией, когда предметом манипулируют сразу несколько схем. Кстати, на удаление тоже не помешало бы сделать такую метку.
  14. RayTwitty

    Скриптование

    Все апдейты объектов вызываются из внутреннего общего апдейта. Переложив на ворон, ты по сути ничего не изменил.
  15. RayTwitty

    Форум: вопросы и предложения

    Если это реализуете с помощью доп. кнопки (кружка) как в списке тем, то возражений не вызовет. А так, лично я использую именно такой переход, какой есть сейчас (на последнее непрочитанное). И что на счет раз и два? Первое же правится элементарно.
  16. RayTwitty

    Скриптование

    Вопрос к знатокам - когда мы удаляем инвентарный ящик, предметы внутри него тоже удаляются? Есть подозрение, что не совсем удаляются...
  17. Не вижу проблем отмасштабировать картинку внутри любого монитора как душе угодно. Например, в студии я заменил размер шрифта на увеличенный, чтобы лишний раз не напрягать глаза, вглядываясь что там написано.
  18. Тут до меня этих "красных словцов" сказали столько, что я бы постеснялся об этом говорить Я уже давно попросил привести какой-нибудь пример из реального кода, в тех же скриптах. А что касается "реализации аппарата логики" - там где я работаю, он полностью соответствует моему пониманию: local a = false if a and print("first") then end print("two") Не только - я там написал ещё для чего. Это зависит не от соотношения сторон монитора, а от многих других параметров)
  19. @Malandrinus, во-первых, я буду поминать те вещи, которые считаю нужным; во-вторых, не надо иметь семи пядей во лбу чтобы знать 0 & .. & .. = 0, поэтому твои линки тут неуместны. В тех языках, которые я подразумевал (и которые скорее всего подразумевали другие), это свойство прекрасно работает. Смысла не лишает, если хочется визуально отделить одно от другого. Да и возможно, в дальнейшем ещё понадобится использовать эту функцию где-нибудь. Я и упоминал, причем сразу сказал, что да, в этом случае условие придется записывать в несколько if-ов. Если вернуться к изначальному вопросу: то я уже по этому поводу высказывался - использую и то, и другое по мере надобности, какого-то фанатичного отношения к чему-то одному у меня нет. Думаю, я ответил на вопрос. З.Ы. забыл написать - наверняка воспринимаемость также зависит от монитора - лесенку удобно рассматривать на 21:9))
  20. По законам мат. логики оно итак не будет выполняться: a & b & cЕсли a = 0, то дальше даже смотреть не будет, соответственно там может быть все что угодно. З.Ы. впрочем, есть ли конкретный код, в скриптах ОГСЕ например? Они у меня в наличии.
  21. Речь не о производительности, да. Понятное дело, что три цикла - это ахтунг, но код нерабочим от этого не стал. Обычно, я "долгие вычисления" делаю где-то в другом месте, а не внутри общей функции. Впрочем, тут дело вкуса - кто-то любит в одну функцию напихать, а кто-то разбивает на подзадачи (доп. функции) и вызывает когда ему нужно. Да и нагляднее это получается - зачем мне видеть процесс, например сортировки массива, если в данной задаче интересно увидеть только результат.
  22. Ты имеешь ввиду лишние вызовы? for i = 1, 65535 do if alife():object(i) and level.object_by_id(i) and level.object_by_id(i):is_stalker() then ... end end смущает что два раза вызвал object_by_id?
  23. Всё там работает Чуть ниже - код заполнения параметров в СДК, поршен можно задать там. Идея ведь в чём - спавним предмет с общей секцией документов и уже персонально этому объекту задаем нужный поршен. Всё логично.
  24. RayTwitty

    Форум: вопросы и предложения

    При нажатии на "Панель модератора". Либо баг панели, либо её вообще не должны видеть кураторы.
  25. У себя поправил по озвученному способу - вроде все норм. Или там какой-то нюанс есть? В свое время сделал апгрейд, который вообще не требовал залезать в скрипты и что-то там править - все делалось внутри двух файлов - конфига оружия и общего конфига апгрейдов. Ну, возможно ещё новые иконки прописать в xml-файлы. Суть, впрочем-то проста - для базового ствола задается т.н. карта апгрейдов - доступных и установленных. При установке этого апгрейда (для него отдельная секция, в которой прописываются параметры - описание, цена и т.п.) оружие подменялось на то, в котором уже прописаны другие доступные и установленные апгрейды. Таким образом, получалась однозначная карта апгрейдов. Плюсы - быстрое освоение технологии, минимальная правка файлов, секция ствола не включает в себя никакой информации об апгрейде (всю инфу можно получить из карты), следовательно можно называть как угодно. Минусы - все-таки подмена секций и переспавн. Можно конечно модифицировать систему, добавив для каждого ствола биндер, в котором бы сохранялась карта и измененные параметры, но руки до этого неизвестно когда дойдут (ведь надо ещё экспортнуть нужные параметры из движка)...
×
×
  • Создать...