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

[SoC] Ковыряемся в файлах

Рекомендуемые сообщения

@Colder 

Ну так в чем проблема? Сделать для одинаковых секций накопление счетчика, затем значение этого счетчика вывести как "хN". Что именно не получается? Давай свой код сюда, будем его доводить до рабочего, а то одна теория.

Да, и не плохо бы знать, для чего вообще твой список - только показать наличие определенных предметов, или все же какие-то действия игрока с предметами в списке?

  • Спасибо 1
  • Согласен 1
Ссылка на комментарий

Всем привет! Подскажите пожалуйста, можно ли через диалог запустить функцию из скрипта?

Скрытый текст

-- Спавн для каждого уровня (вызывается из респавнера)
function level_spawn()
local level_name = level.name()

---- Болото ----
if level_name == "l14_swamp" then
    proceed_spawn("zombie_4_normal", vector():set(156.8, 1.75, -242.2), 324805,2978, 1, level_name.."_zombie_portion_1", "fake")
    proceed_spawn("zombie_5_normal", vector():set(115.5, 1.5, -229.6), 271759, 2978, 1, level_name.."_zombie_portion_2", "fake")
    proceed_spawn("zombie_6_normal", vector():set(117.6, 2.1, -252), 274325, 2978, 1, level_name.."_zombie_portion_3", "fake")
    proceed_spawn("zombie_immortal_2_normal", vector():set(87.5, 1.5, -249.9), 236228, 2978, 1, level_name.."_zombie_portion_4", "fake")
    proceed_spawn("zombie_7_normal", vector():set(129.5, 1.5, -259), 289597, 2978, 1, level_name.."_zombie_portion_5", "fake")
    proceed_spawn("parazit", vector():set(199.497086, 1.781619, -13.102522), 378693, 2982, 5, level_name.."_zombie_portion_6")
    proceed_spawn("korpus", vector():set(199.497086, 1.781619, -13.102522), 378693, 2982, 5, level_name.."_zombie_portion_7")
    proceed_spawn("m_controller_old", vector():set(199.497086, 1.781619, -13.102522), 378693, 2982, 1, level_name.."_controller_portion_1")
    proceed_spawn("parazit", vector():set(44.488670, 2.072286, -213.825104), 183686, 2969, 5, level_name.."_zombie_portion_8")
    proceed_spawn("korpus", vector():set(44.488670, 2.072286, -213.825104), 183686, 2969, 5, level_name.."_zombie_portion_9")
    proceed_spawn("m_controller_old", vector():set(44.488670, 2.072286, -213.825104), 183686, 2969, 1, level_name.."_controller_portion_2")
    proceed_spawn("parazit", vector():set(-120.058258, 5.545723, -56.413452), 11769, 2956, 5, level_name.."_zombie_portion_10")
    proceed_spawn("korpus", vector():set(-120.058258, 5.545723, -56.413452), 11769, 2956, 5, level_name.."_zombie_portion_11")
    proceed_spawn("m_controller_old", vector():set(-120.058258, 5.545723, -56.413452), 11769, 2956, 1, level_name.."_controller_portion_3")
    proceed_spawn("chimera_normal", vector():set(61.812492, 2.151937, -33.168354), 204545, 2972, 2, level_name.."_chimera_portion_1")
    proceed_spawn("bloodsucker_swamp", vector():set(61.812492, 2.151937, -33.168354), 204545, 2972, 3, level_name.."_bloodsucker_portion_1")
end

 

Изменено пользователем INNOCENT KILLAZ
Ссылка на комментарий

@INNOCENT KILLAZ 

Вы бы почаще читали справочные материалы по моддингу Сталкера, к примеру тут, "Справочник по ф-циям и классам", "Уроки по модостроению". И было-бы меньше элементарных вопросов. И в чем проблема посмотреть оригинальные диалоги, как там сделано?

            <phrase id="7">
                <text>dialog_7</text>
                <action>имя_скрипт_файла.имя_ф-ции</action>
                <next>8</next>
            </phrase>

  • Спасибо 1
  • Нравится 1
  • Согласен 6
Ссылка на комментарий

@INNOCENT KILLAZ вообще для этого используются уникальные квесты, а не типовые. Но как вариант наверно можно попробовать через infoportion.  Создаешь свой infoportion, вставляешь его активацию в диалог. А в файл task_manager.ltx вставляешь в нужный тебе квест: init_condition = {твой infoportion}. Этот схема когда задания выдаются при переходе на локу, но должна и с infoportion работать. Ну в теории конечно, проверять надо.

Изменено пользователем Lieutenant Novikov
Дописал инфу
  • Спасибо 1
  • Согласен 1
  • Полезно 1
Ссылка на комментарий

@INNOCENT KILLAZ Для рандомных тасков попробуй, может заработает. Вызывай из диалога

 

<action>имя_твоего_скрипта.имя_твоей_ф-ии</action>

 

function (имя_твоей_ф-ии)

   local new_task = CGameTask()
   new_task:load("ид_таска")
   db.actor:give_task(new_task, 3600*1000, true)

end

  • Полезно 1
  • Сомнительно 1

Сталкер - наше всё!

Ссылка на комментарий

@INNOCENT KILLAZ , из скриптов:

function funcname()

  local mgr = task_manager.get_random_task()

  mgr:action_give_task(db.actor, nil, nil, mgr.task_info["id_таска"].yes_phrase_id)

end

А функцию, соответственно, вызвать из диалога через action.

  • Полезно 4

Аддон для ОП-2.09.2: Яндекс/Google/GitHub

naxac.gif

Ссылка на комментарий

Вводные: task_manager, циклические задания типа "найти объект" (арт, конечность etc).

При выкладывании/выбрасывании квестового предмета информация о стадии задания не изменяется (pda, ньюсы)

Что-то нашкодил или действительно имеет место быть? Если всё-таки второе, где-то можно посмотреть культурное исправление этого безобразия?

 

Ссылка на комментарий
15 минут назад, Купер сказал:

При выкладывании/выбрасывании квестового предмета информация о стадии задания не изменяется

В ТЧ так и должно быть. Если подзадание выполнилось/провалилось, то оно больше не обновляется.

Изменено пользователем naxac
  • Спасибо 1
  • Полезно 1

Аддон для ОП-2.09.2: Яндекс/Google/GitHub

naxac.gif

Ссылка на комментарий

@naxac , т.е. никто это правил? Т.е., уточню, что хотелось-бы:

1. Взяли цикличку.

2. Получили предмет. Статус задания обновился (в pda + ньюс о стадии задания)

3. На сдавая задания - предмет "потеряли" <-  (в pda + ньюс о стадии задания) ?

  • Сомнительно 1
Ссылка на комментарий

@Купер , насколько знаю - нет. Для этого вроде правка движка нужна.

Изменено пользователем naxac
  • Спасибо 1
  • Согласен 1

Аддон для ОП-2.09.2: Яндекс/Google/GitHub

naxac.gif

Ссылка на комментарий
33 минуты назад, Купер сказал:

уточню, что хотелось-бы

Выложил квестовый предмет в нычку - задание провалено. :WhiteVoid_2:

  • Не согласен 1
  • Смешно 1

Отношения между людьми- главная ценность в человеческом обществе.
Любая полученная информация- это только повод для размышлений, а не побуждение к действию.
Это должен знать каждый: уроки боевой подготовки Дяди Саши https://yadi.sk/d/60Ec2B06goLAE
Накопано и накнопано:https://yadi.sk/d/mzVY5jQEspwpt

Ссылка на комментарий

Подскажите, пожалуйста, как можно одним скриптом перенести все предметы в инвентаре Меченого в ящик, чтобы, в дальнейшем, была предусмотрена возможность забрать их оттуда? Нужно это сделать без скриптов АМК.

Изменено пользователем Rod_K
Ссылка на комментарий
12 часов назад, Купер сказал:

При выкладывании/выбрасывании квестового предмета

 

11 часов назад, Купер сказал:

3. На сдавая задания - предмет "потеряли"

 

11 часов назад, aromatizer сказал:

Выложил квестовый предмет в нычку - задание провалено

 

Господа ЕМНИП - специально для этого есть 

quest_item  = true

чтобы ни продать, ни потерять, ни в нычку выкласть.

  • Согласен 3
Ссылка на комментарий

@ted.80 , разговор про "циклички":

А найди-ка мне Медузу, хвост псевдособаки. Квестовые предметы? ;)

 

@Rod_K , ключевой момент: искомый ящик находится онлайн ( в пределах алайфа) или нет?

Ссылка на комментарий
38 минут назад, Купер сказал:

разговор про "циклички":

 Сорян не доглядел, тогда только искать движкоправки

или писать свои коды с кучей проверок.

  • Согласен 1
Ссылка на комментарий
13 часов назад, aromatizer сказал:

Выложил квестовый предмет в нычку - задание провалено.

Зачем такое? Задача в квесте - сдать предмет задания заказчику, а каким макаром - это проблема игрока. Откуда такая тяга издеваться над игроком, обставляя его высосанными из известного пальца дурацкими ограничениями?

 

@Rod_K 

db.actor:transfer_item(game_object* <что>, game_object* <кому>) -- передать предмет, работает только для объектов, находящихся он-лайн.

  • Согласен 2
  • Полезно 1
Ссылка на комментарий

@ted.80 Насколько помню, цикличка моим кодом выдавалась. Дальше не проверял. Да и код не мой, кто-то подсказал в свое время.

Сталкер - наше всё!

Ссылка на комментарий

Что-то я никак не разберусь, что отвечает за инерцию оружия при стрейфе в прицеливании? OGSR двигло, есть такое и в самом ogsr и модах на его основе. 

Нарыл 

\gamedata\config\external.ltx

 

; Инерция при прицеливании. По умолчанию эффект не сильный, не навязчивый.
default_allow_zoom_inertion = true

; Наклоны оружия при стрейфах. По умолчанию эффект не сильный, не навязчивый.
default_strafe_enabled = true

 

Поменял на false - нет эффекта. Что еще можно глянуть?

 

Ссылка на комментарий

Создайте аккаунт или авторизуйтесь, чтобы оставить комментарий

Комментарии могут оставлять только зарегистрированные пользователи

Создать аккаунт

Зарегистрировать новый аккаунт в нашем сообществе. Это несложно!

Зарегистрировать новый аккаунт

Войти

Есть аккаунт? Войти.

Войти
  • Недавно просматривали   1 пользователь

AMK-Team.ru

×
×
  • Создать...