-
Число публикаций
618 -
Регистрация
-
Последнее посещение
-
Дней в топе
1 -
AMKoin
47 [Подарить AMKoin]
Весь контент пользователя Nazgool
-
Язык Lua. Общие вопросы программирования
Nazgool ответил на тему форума автора Malandrinus в Скрипты / конфиги / движок
Так, коллеги. Знаете - хорошо, не знаете - считаю что нужно сказать. Ковырялся тут и снова "попался" на штуку, которую многие, наверняка и, знают, а некоторые. возможно, и нет. Забыв о нюансах, автоматом, пытался сравнить два float числа. Знаю что одинаковые - а она (разрабовская lua) отвечает что нет, разные. Есть такая подлость от GSC. Если вдруг придётся сравнивать , то я использую : function math.round(num, accuracy) return tonumber(string.format('%0.'..(accuracy or 0)..'f', num)) end accuracy - ширина float-а -
Индифферентный Маргинал Классный вопрос! До сих пор думаю как него ответить. Возможных вариантов куча...Размышляю, и ни один не даёт однозначного ответа.
-
Если в наше время ХОТЯТ знать, то это уже очень не плохо. Остальное приложиться. Конечно всё зависит от личных качеств каждого познающего.
-
Совершенно верно. Конечно перебор массива for start,limit,step do работет гораздо быстрее. Но всё зависит от конкретной ситуации. Объявление функции может быть. Но потом она находиться на стеке достаточно близко Если нужно что-то использовать многократно, то лучше объявить функцию и затем обращаться к ней Это верно. iterate_inventory раза в два быстрее. Почему? Выше писал и... ...из уже заранее объявленной функции внутри db.actor:iterate_inventory(function (dummy,item) abramcumner Дружище, вижу что тут. Ответь мне сам знаешь где
-
Согласен. Сказать нечего. Извинились. Получилось, конечно, не красиво. Поругали. И что теперь? Давайте четвертуем? В наше время это уже не исключение, а правило?
-
Язык Lua. Общие вопросы программирования
Nazgool ответил на тему форума автора Malandrinus в Скрипты / конфиги / движок
Streels Изучай книгу Roberto Ierusalimschi "Programming in Lua (Second Edition)" А дальше само пойдет. -
@Старлей, Сейчас существует не один вариант автоматизированной работы с нетпакетом . Но поскольку хочешь увидеть структуру, то нужно смотреть в ACDC. Там отслеживать последовательности... В общем вспомнил, что несколько лет назад делал себе утилиту для создания пакета. Так толком и не доделал. На данный момент так уже не поступают, но раз я забыл выкинуть, то посмотришь в ней структуру. http://rghost.ru/54850426 А я её удалю наконец, раз на глаза попалась
-
Я лично делал ореховое варенье. Пальцы пол года не отмывались. Говорят вкусно. А по мне - гадость редкосная.
-
@BFG, На эту тему. Известно, но не могу не вспомнить. Возили как-то немцев в каком-то колхозе осматривать чего-то там. По пути УАЗик стал. Лопнул ремень. Водила взял какой-то шланг, шпагат, что там ещё... В общем минут через 10-15 машина поехала. Немцы сказали лишь одно, - "Теперь мы понимаем почему проиграли войну"
-
[SoC] Ковыряемся в файлах
Nazgool ответил на тему форума автора Halford в Скрипты / конфиги / движок
Ну тогда тебе нужно одно из двух : 1. что бы кто-то это сделал. 2. самому изучить предмет необходимости, и спрашивать тут. Про первое я уже сказал. Второе зависит от тебя. Но для обоих вариантов нужны нам нужны исходники мода. Как без них можно помочь - не представляю. -
[SoC] Ковыряемся в файлах
Nazgool ответил на тему форума автора Halford в Скрипты / конфиги / движок
Ребят, а что, на Инсайде нет ни одной статьи по работе с UI? Что-то не нашел, или не туда смотрел. Может написать нужно? -
[SoC] Ковыряемся в файлах
Nazgool ответил на тему форума автора Halford в Скрипты / конфиги / движок
@34534, Izuchaesch sozdanie okon klassov CUI. V etih oknah sozdaesch knopki. Na knopki veschaesch action na vypolnenie spawna (alife():create(...)). Поскольку мы можем только догадываться о том, что за мод, то найди *.script файлы интерфейса этого меню. И добавь в него еще одну кнопку (по примеру из этого файла). Это может быть CUIButton, CUI3tButton, InitButton или Init3tButton. Рассказывать о принципах построения окон тут никто не будет. Это нужно знать. А чтобы знать - нужно изучать. Если при изучении будут не понятные моменты, то милости просим. Объясним. А "вынь, да положь" тут не проходит. Нахлебников не жалуют. Как-то не повелось. Уж извини. -
Есть на инсайде програмка - script Syntax Checker
-
@Akella-96 aka SvD, При такой неопределённой ситуации нужно начинать с all.spawn-а Логика рестриктора сна (напр. Затона) name = zat_a2_sr_sleep находиться в файле cfg = scripts\sr_sleep.ltx. Нужно проверить, срабатывает ли рестриктор при заходе в него ГГ : on_actor_inside = sr_idle@run %=run_tutorial(tutorial_sleep)% Должна вызываться функция xr_effects.run_tutorial Проставь выводы в лог и посмотри что работает а что нет. Для проверки нахождения в зонах (рестрикторах и т.д.) удобно пользоваться расширением sData, которое выводит различные параметры на экран в режиме реального времени.
-
[SoC] Ковыряемся в файлах
Nazgool ответил на тему форума автора Halford в Скрипты / конфиги / движок
Вот тут ещё есть textures\wm -
[SoC] Ковыряемся в файлах
Nazgool ответил на тему форума автора Halford в Скрипты / конфиги / движок
Romann Это может быть банальная синтаксическая ошибка в скрипте. Проверь изменённые скрипты чекером. -
[SoC] Ковыряемся в файлах
Nazgool ответил на тему форума автора Halford в Скрипты / конфиги / движок
Вплотную я этим не занимался, но если бы занялся, то начал бы с xr_meet.script и функции init_meet Там в основном настройки никакие : def.meet_state = "5|wait@wait" def.meet_state_wpn = "5|backoff@threat_weap" -- Только тут, по идее, орёт "Опусти ствол" def.meet_state = "2|wait" def.meet_state_wpn = "" Наибольше под всех подходит блоки : if tostring(scheme) == "nil" - т.е. если нет схемы, и else - т.е. сталкеры Остальные по усмотрению. Можно и свои дописать(переписать). И может быть файла xr_logic.script и функции cfg_get_overrides -
[SoC] Ковыряемся в файлах
Nazgool ответил на тему форума автора Halford в Скрипты / конфиги / движок
MrGROX -
[SoC] Ковыряемся в файлах
Nazgool ответил на тему форума автора Halford в Скрипты / конфиги / движок
Ali_Babai_45 Пожалуйста. Вот тебе мой CHM по Lua 5.1 (правда ещё в стадии разработки, поэтому пока не всё, да и оформлять не успеваю), Делаю в виде учебника. Почитай пока то, что есть. А вопросы, если будут, то либо в Скриптование, либо в Язык Lua. Общие вопросы программирования. В зависимости от сути вопроса. http://rghost.ru/54049614 -
[SoC] Ковыряемся в файлах
Nazgool ответил на тему форума автора Halford в Скрипты / конфиги / движок
Капрал Хикс Это может проверить только сам Ali_Babai_45. xrСпавнера больше, наверное, ни у кого не осталось. -
[SoC] Ковыряемся в файлах
Nazgool ответил на тему форума автора Halford в Скрипты / конфиги / движок
Вы не совсем усвоили эти уроки. тов. abramcumner уже объяснил Вам причину работы игры при добавлении "лишнего" end-а. Оператор end в Lua закрывает некий блок, участок кода, который должен быть открыт где-то ранее. Вот такие блоки : do ... end if ... then ... end if ... then ... else ... end if ... then ... elseif ... then ... end if ... then ... elseif ... then ... else ... end while ... do ... end for var = start, stop do ... end for var = start, stop, step do ... end function name() ... end Может что-то и упустил, не суть важно. Например есть функция : function name() -- что-то делаем end Эта функция является блоком кода. Этот блок открывается ключевым словом function и обязательно должен быть закрыт (и закрывается) ключевым словом конца блока end. Что будет, если по Вашему примеру, вставить в тело функции "лишний" end.: function name() -- что-то делаем end -- ВОТ ЭТОТ end Блок также откроется ключевым словом function и закроется end-ом. Но новым, вставленным. Компилятор продолжает читать код, и наталкивается ещё на один end, который должен закрыть открытый ранее блок. Но ранее ничего не открывалось (function уже не открыта, она закрылась "своим" end-ом) Ошибка. Поэтому повторю. Как уже говорил abramcumner, после "порчи" файла лишним end-ом по счастливому стечению обстоятельств, или по недосмотру разрабов, игра не вылетает. -
Shadows Каждый преследует свои цели. Предлагая идею динамического файла, я не не ставлю цели читать оригинальные в принципе. Потому что мне это не нужно. Пока не задавали дополнительных вопросов, но я опережу события. Дело в том, что создавая объект окна, я храню в его userdat-е только участок кода, который описывает сам объект. Практически это всегда простая таблица, изредка со вложенной таблицей. Применять для этого специальный синтаксис, я думаю, не целесообразно. Опять же, учитывая поставленные цели. Это я делаю для того, чтобы не перезаписывать весь файл. Неизвестно каких размеров он мог бы быть. Небольшой блок кода записывается практически мгновенно. Поэтому и работа функции (той же find) предполагает работу с классическим XML. А для Сталкера идея и исполнение Charsi отличное.
-
[SoC] Ковыряемся в файлах
Nazgool ответил на тему форума автора Halford в Скрипты / конфиги / движок
_Val_ +1 Я полагаю что такая система даже while true do end сожрет и не подавиться) -
Подготавливаю русский мануал. Заодно и правленый LuaXml.lua подкину. Там функция find не очень. Да и добавил несколько новых. http://rghost.ru/53555112 Остальные ответы по ходу дела.
-
Да, это то. Ещё нужна библиотека LuaXml. Там одна dll-ка и lua файл.
- [ЧН] OGSM CS 1.8 CE Fixes
- [ЧН] HARDWARMOD 3.2
- [ЗП] The Long Road
- [ЧН] New vision of War
- [ЧН] Old Good Stalker Mod - Clear Sky
- [ЗП] Unofficial Patch
- [ЗП] Смерти вопреки
- [ЗП] Контракт на хорошую жизнь
- [ЗП] Shoker Weapon Mod 2.1
- [ЗП] Hardcore pack for SGM 2.2
- [ЗП] Контракт Синдиката
- [ЗП] Клондайк 2.0
- ...и другие моды