Stalk15
Для только костюмов можно писать:
local outfit = db.actor:get_current_outfit() --/ пошустрее выполняется.
Gun12
Тогда уж можно и так: if get_clsid(outfit) == clsid.equ_exo then
тогда точно все именно экзы будут в условии.
В правиле бывают исключения ... ;-)
Stalk15
Ты лучше вместо 'благодарю' - запость рабочий вариант по мотивам советов!
Поглядим, понял иль ... 'как обычно' ... скопипастил ;-), это и будет самой хорошей 'благодарностью'!
Artos
Раз мы тут краем тему FS затронули - требуется внести с твоей стороны толику ясност**5003c54314580bda8be6**","weapons\\w_pb.ltx") then
fs:file_delete( "$game_config$","weapons\\w_pb.ltx")[/code]
но похожая конструкция (кроме как сделать конкатенацию ничего в голову не пришло) с переименованием не прокатила:
[code]if fs:exist("$game_config$","weapons\\_w_pb.ltx") then
fs:file_rename("$game_config$".."weapons\\_w_pb.ltx", "$game_config$".."weapons\\w_pb.ltx", true)[/code]
что паршиво - методы исключения не выдают - просто ничего не делают, если путь не верный или файл не найден (делал и просто без проверки на существование файла).
В общем непонятно как тут то путь правильно задать ...и с копированием та же непонятка. Не пробовал ради эксперимента эти методы потестить?
(можно ли из всего этого какую ту пользу извлечь - трудно сказать - поэтому чисто для того чтоб знать как работает пробую).
sevitov_yura
такого метода как settext нет
есть SetText и SetTextST - так что вылет в первую очередь из-за этого.
попробуй сделать так:
self.caption2:SetText('привет') -- без всего кода уверен быть не могу - но попробуй.
Разработки: "Тотализатор","Kill-zone", "Mega-bomba", Mega_gravi",
"Рандомные тайники(а также декодер, мины+диалоговый аддон"), "Выбрасываемый рюкзак", "Аналоговые часики на худ"
erlik Сейчас немного подзабыл свои мытарства по подобному поводу и могу что-то упустить. Но если действительно понадобится - поднапрягусь.
Возился с кейлогером. Хотел изменять файл внутри "\gamedata\config\", но ....
Не удалось. Пришел к выводу, что применение методов FS приводит к блокировке доступа на изменение к файлам в этой папке (и вроде как подпапках - уточню).
Вот тут: топик 'shoc keylogger' на SGC форуме (в самом конце топика) немного подробнее писал ...
Разрабы, кастрировав компиллятор LUA в Сталкер:SoC на методы 'io', можно сказать закрыли нормальный доступ на изменения файлов-конфигов.
GIDDRA
Не трожь Сидора если не хочешь гимора.
можно его сделать смертным, поменяв его конфиг, но ... многочисленные скрипты НЕ предусматривают его смерти и тебе придется перекраивить кучу скриптов.
Darien Fx
Если посмотришь в симбионовском 'm_net_utils' в самом конце класс CFake_NetPacket, то увидишь, что метод w_matrix() в пакетах в Симбионе не применяется (аналогично и в АМК и пр.библиотеках) и заменен эквивалентами, хотя ... в конкретном случае может быть применен.
Так что не заморачивайся, это уже из области нюансов применения.
Ну а то, что идет смещение на 2 байта - то, алогично выше, метод w_begin() (оперирующий именно 2-мя байтами) не применим, вот 'в ручную' и приходится их отсекать.
Ну и конечно, а откуда отсчитывать 2 иль еще сколько байт?
Строка: spk:w_begin(0) - устанавливает начало пакета, чтобы была точка отсчета!
Принудительная установка в начало отсчета (пакета) для ТЧ не столь критична, но(!) в ЧН и ЗП - обязательна. Так что нет смысла филонить и в ТЧ.
Малейший сбой при работе с нет-пакетами чреват фаталами и битыми сэйвами.
erlik Сорри, что буду вспоминать кусками, но возможно и куски помогут.
В твоем варианте ты неверно обрашаешься к файлу: fs:file_rename(...)
Ты же его еще**5001c54314580bda8be6**istFiles, FS.FS_RootOnly),"my_file.ltx" )
if flist:Size() > 0 then
local file = flist:GetAt(0)
return file --/> собственно нужный файл
end
end[/code]
ну и далее ... что то типа:[code]function MyFunk()
local file = Get_MyFile()
if file then
file:file_rename(...)
...
end
end[/code] - хотя может и туплю ... попозже вникну.
sevitov_yura
У тебя не метод неправильный, а собственно self.caption2 == nil, о чем и говорит тебе лог.
Ищи где потерял или делай проверку на 'не нил' перед использованием.
И в любом случае: метод применим к классу объекта, а для нас в твоем куске self.caption2 - абсолютно неизвестно что и тем более какого класса.
Не задавай безинформативных вопросов, плз.
добавлено спустя 4 минут
Учи азы!
Строк ты сколь угодно можешь иметь, и даже правильно объявить переменную.
Но скриптам в твоем случае ни какие-то строки важны, а значение переменной! И она у тебя или необъявлена или имеет значение 'nil'.
Более тут телепатией заниматься не намерен.
Подскажите пожалуйста! Вот прописал в скрипте такую фигню:
local ini = ini_file("weapons\\w_ak74_up.ltx") --загружается без вылетов
А как теперь сделать чтоб прикрепить его к ak74, это все для того же чтоб во время игры менять файл конфигов оружия, или может быть нужно в этом самом файле w_ak74_up.ltx прописать чтонить чтоб он конфиги считывал с другого файла?
А комаду в cfg_load нужно прописывать в скрипте также как и ini?
sevitov_yura
Чего написать? :lok5)
Держи: lua_help.script - тут все классы из оригинала.
У последний раз повторяю: Заниматься телепатией более НЕ намерен.
Или задаешь вопрос со всем необходимым для его понимания материалом/информацией, или копайся сам! Byurrer
У тебя все же очень слабовато со скриптами.
Советую или делать или начать с чего-то попроще.
Судя по вопросу 'ak74' - это объект в игре. К виртуальному объекту в игре реальный файл НЕ прикрепишь. :-)
И опять тебе пытаемся пояснить, что секция объекта может быть расположена только в одном файле и НЕ может быть до(пере)записана из другого.
'cfg_load' - консольная команда, в скрипт прописать можно (см.аналоги) но это бессмысленно в твоем случае.
Если бы пояснил что ты хочешь получить в конечном итоге - возможно поискали бы возможные варианты реализации...
Artos в конечном итоге я хочу получить вот че:
1. ремонт как в ЧН и модернизация
2. смена визуала при определенной изношенности
Жаль что никак не сделать!
Byurrer
'Как в ЧН' - ну очень конкретно. Сейчас тут целый мод по модернизации аля ЧН бум писать :-)
Создай дублирующую секцию своего ak74 с нужными названиями и с модифицированными параметрами, какие потребно и ... по факту окончания модернизации подменяй оружие со старой сейцией на оружие с модифицированной.
Думаю тебе не осилить подмену визуала по износу. Ищи скриптера, который умеет работать с нет-пакетамит и захочет написать для тебя.
Ну или ... как выше - меняй стволы исправный->потертый->покалеченый->сломаный, для чего создай соответствующие секции с нужными визуалами. Хлопот тут оч.немало.
Ну или третий вариант: бери чью-то готовую библиотеку по нет-пакетам и 'в темную' ее используй.
Artos как я понял ты предлагаешь сделать так: я прихожу к механику он мне типа чинит или модифицирует, а сам процесс модификации происходит лишь за счет удаления старой не модифицированной пушки на новую модифицированную по нужным параметрам? И также с визуалом? Ну а как тогда быть если на оружии прицел или глушитель или подствольник или все вместе?
Stalk15
Собственно сами таймеры не особенно загружают биндеры (их и без тебя тикает не мало).
Загружает вот что: fun_kvests.kvest_secret_merc_fail() --/ выполняем действие
Если там будут немаленькие вычисления ... делай выводы.
Ну и иногда таймеры можно объединять с целью вычисления единожды общих переменных. Byurrer
Ты постоянно задаешь куцие вопросы, как будто по аське общаешься. Постарайся не чатить и задавать информативные вопросы/просьбы.
Сам просишь поподробнее и даже не удосуживаешься попросить поподробнее.
Ты думаешь я понял что/о чем 'поподробнее' для тебя?
И вроде дал ссылку на мод, где во всех подробностях можно посмотреть ремон/модификацию.
Можешь найти подобное и в Симбионе (m_dlg_rep.script).
люди тзвините за тупой вопрос, но не могли бы вы подсказать как сделать так , чтобы сталкеры ходили с новым оружием
а если писать очень долго скиньте ссылочку не тутор
зарание спасибо
g-side
Думаю, тебе подойдет такой небольшой туторчик:
Хочу изменить вооружение NPC. Как это сделать?
Для этого нужно распаковать папку gamedata.db0 с помощью STALKER_Data_Unpaker. После распаковки находим папку gamedata.db0\config\gameplay. В ней находятся файлы character_desc_хххххх. Для редактирования нужно воспользоваться текстовым редактором WordPad (MFC). Рассмотрим на примере локации Кордон.
Открываем файл character_desc_escape
В оригинале вооружение у Волка выглядит так:
Т.е у нас Волк теперь вооружён Ак-74 с глушителем, прицелом и подствольным гранатомётом. Ну и т.д. можно изменить вооружение всем НПС. Вот что у меня получилось:
Также можно изменять всё вооружение описанное в файле выбранной вами локации.
Эта тема закрыта, публикация новых сообщений недоступна.
Продолжая пользоваться сайтом, вы соглашаетесь с использованием файлов cookie. Страницы сайта могут содержать информацию, запрещенную для просмотра посетителям младше 18 лет. Авторское право на серию игр «S.T.A.L.K.E.R» и используемые в ней материалы принадлежит GSC Game World.