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

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


Svoboда

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

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

 

Скажем, он включен пока нет инфопоршен-1. Получив его он отключается. Через некоторое время мне надо его опять включить при получении инфопоршен-2. И потом опять выкл. при инфопоршен-3.

---------------------------------

www.amk-zone.de

Поделиться этим сообщением


Ссылка на сообщение

Доброго времени суток!

 

Знающие люди, помогите с проблемой. Два дня корячусь, весь моск уже вынесла.

 

В "забытой деревне" создаю гулаг монолитовцев. Всё прописано где надо, это уже не первый мой гулаг. Тем более этот по определению рабочий, взят со всеми потрохами из НС5 от Дэна. Все координаты прописаны верно, сам гулаг в аллспавне и скриптах, логика, пути итд. Спавню аллспавном любого нужного монолитовца в этот гулаг. При начале новой игры успеваю увидеть как этот непись начинает шагать куда-то в степь, куда ему совсем не надо и вылет с ошибкой в state_mgr.script stack overflow.

 

Что я делаю не так? Хоть головой об стенку бейся... :(

---------------------------------

www.amk-zone.de

Поделиться этим сообщением


Ссылка на сообщение

Знающие камрады, подскажите - есть ли способ закрепить кость у заспавненного скриптом предмета?

---------------------------------

www.amk-zone.de

Поделиться этим сообщением


Ссылка на сообщение

@Карлан, спасибо за наводку. Разобрался, всё работает.

---------------------------------

www.amk-zone.de

Поделиться этим сообщением


Ссылка на сообщение

 В целом лучше конечно нет-пакет юзать, но я так, может кому надо будет.

 

Я через нетпакет сделал. Для моих целей (подспавн небольшого кол-ва предметов по ходу сюжета, для более реалистичной "жизни Зоны") хватает абсолютно.

---------------------------------

www.amk-zone.de

Поделиться этим сообщением


Ссылка на сообщение

Добрый день, камрады!

Может ли кто-нибудь знающий объяснить мне на пальцах, как заставить сохраняться например менеджеры заданий и тайников в свои отдельные нетпакеты, а не в пакет актора? Ну и читаться из своих, соответственно.
 

При использовании se_stor от Артоса.

Ибо жрут они немеряно и я имею постоянные проблемы с переполнением нетпакета актора, из-за множества квестов, связаных с ними тайников, предметов и прочего содержимого в моём моде.

Для меня это тёмный лес, модуль Артоса я подключить ещё смог в своё время, а дальше затык. Я честно признаюсь, что я "моддер-солянщик", знания скриптов на уровне WinMerge и if/then.

Считаю, что разбор проблемы с примерами кода (если решение возможно, конечно) помог бы не только мне.

---------------------------------

www.amk-zone.de

Поделиться этим сообщением


Ссылка на сообщение

 

 

Соответственно в вашем случае пройтись по коду, найти все места чтения-записи каких либо данных, и вместо вызовов костылей насилующих нетпакет актора, поставить вызовы se_stor.

 

О, уже немного понятнее, спасибо. Буду разбираться.

---------------------------------

www.amk-zone.de

Поделиться этим сообщением


Ссылка на сообщение

Знающие, дапоможите - как бы запретить ГГ подбирать предметы в определённом радиусе ?

---------------------------------

www.amk-zone.de

Поделиться этим сообщением


Ссылка на сообщение

@UnLoaded

 

Я туда и копаю, но не выходит что-то.

Смысл в том, что хочу запретить подбирать с оружием в руках.

 

Update: Разобрался, всё получилось. :)

Изменено пользователем Wlad777

---------------------------------

www.amk-zone.de

Поделиться этим сообщением


Ссылка на сообщение

Камрады, подскажите.

Есть на уровне несколько однотипных объектов.

Какой функцией можно определить что расстояние до самого ближнего к ГГ меньше определённого расстояния?

В этих переборах и таблицах я всегда путаюсь. :(

  • Полезно 1

---------------------------------

www.amk-zone.de

Поделиться этим сообщением


Ссылка на сообщение

@Kirgudu, Уже понятнее, спасибо.

А как мне этот массив получить то сначала?

 

Вот заспавнены у меня на уровне, в разных местах, скажем 15 объектов секции [safemarker].

  • Полезно 1

---------------------------------

www.amk-zone.de

Поделиться этим сообщением


Ссылка на сообщение

Камрады, подскажите, значение голода можно скриптово прочитать/установить?

---------------------------------

www.amk-zone.de

Поделиться этим сообщением


Ссылка на сообщение

@Wlad777, без движковых правок - нет.

Плохо. Опять костыли на костылях городить придётся.

 

А вот следующий вопрос: есть zone_flame_small, рядом стоит актор. Дистанция до этого конкретного костра получена, нужно узнать горит он или нет. Можно ли это отследить?

Изменено пользователем Wlad777

---------------------------------

www.amk-zone.de

Поделиться этим сообщением


Ссылка на сообщение

 

 

А вот следующий вопрос: есть zone_flame_small, рядом стоит актор. Дистанция до этого конкретного костра получена, нужно узнать горит он или нет. Можно ли это отследить?

 

Камрады, неужели ни у кого нет идеи и желания подсказать?

Как узнать, выключена эта аномалия или включена?

---------------------------------

www.amk-zone.de

Поделиться этим сообщением


Ссылка на сообщение

@Карлан, Очень избыточно для проверки, что рядом можно сожрать еду.

 

@dsh, мод динамических костров от kstn. Тушит/зажигает через disable_anomaly() / enable_anomaly()

 

Я думал, может есть способ отследить проигрываются ли партиклы огня, например.

---------------------------------

www.amk-zone.de

Поделиться этим сообщением


Ссылка на сообщение

 

 

Wlad777, ты прикалываешь или что?

 

Вот на такие заходы всегда хочется взять и нагрубить в ответ. Ты считаешь, что все тут скриптеры от бога? Я вот не скриптер, что делать?

 

Шевеление бровями на форуме уже зашкаливает, по сравнению с начальными годами. :(

 

 

 

смотри particle_object, там есть метод playing(), дальше рассказывать?

 

Да, рассказывай.

Актор стоит у аномалии , её idle_particles в конфиге explosions\campfire_05

Сделай мне, пожалуйста, отрывок кода, возвращающий true/false, в зависимости от того, активен ли idle_particles

  • Согласен 3

---------------------------------

www.amk-zone.de

Поделиться этим сообщением


Ссылка на сообщение

 

 

Если стоит xray-extensions, можно попробовать получить текущий стейт аномалии, он хранится в m_eZoneState класса CCustomZone. Если аномалия выключена, стейт будет равен eZoneStateDisabled.

 

Стоит ОГСЕ-движок. Там есть, не в курсе?

---------------------------------

www.amk-zone.de

Поделиться этим сообщением


Ссылка на сообщение

@vampirnik77, xray-extensions в помощь.

 

 

[ТЧ] Добавлены функции, позволяющие перемещать предметы между рюкзаком, слотами и поясом:

  • move_to_ruck -- переместить в рюкзак
  • move_to_belt -- переместить на пояс
  • move_to_slot -- переместить в слот (какой именно, определяется секцией предмета)
  • move_to_slot_and_activate -- переместить в слот с одновременной активацией

Функции вызываются для клиентского актора: actor:move_to_belt(item)

---------------------------------

www.amk-zone.de

Поделиться этим сообщением


Ссылка на сообщение

Камрады, здравствуйте!

Прошу помощи у скриптовиков. Есть у меня в xr_motivator-е, в колбеке на смерть непися, вот такой кусок кода:

 

if bind_power_supply then
		local sobj = alife():object(self.object:id())
		local np = net_packet()
		local vis = ""

		sobj:STATE_Write(np)
		np:r_seek(4)
		vis = np:r_stringZ() -- profile
		np:r_advance(4)
		vis = np:r_stringZ() -- class
		np:r_advance(12)
		vis = np:r_stringZ() -- charname
		np:r_advance(18)
		vis = np:r_stringZ() -- custom
		np:r_advance(8)
		vis = np:r_stringZ() -- visual
		if string.find(vis,"exo") then
			spawn.inv("power_supply",self.object:id())
			local batt_max = math.random (0,2)
			for i = 1, batt_max do
				spawn.inv("power_core",self.object:id())
			end
		end
	end

 

 

 

В некоторых ситуациях, при смерти непися, sobj в строке sobj:STATE_Write(np) возвращает nil и естественно крашит игру.

 

Помогите забороть, пожалуйста

Изменено пользователем Wlad777

---------------------------------

www.amk-zone.de

Поделиться этим сообщением


Ссылка на сообщение
  • Недавно просматривали   0 пользователей

    • Ни один зарегистрированный пользователь не просматривает эту страницу.
×
×
  • Создать...