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

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


Svoboда

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

Может есть у кого скрипт, возвращающий количество предметов в инвентаре? Каждой конкретной item_section.

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

Жить стало лучше, жить стало веселей. А когда веселей живётся, то работа скорится.

img.php?nick=Balavnik&sert=2&text=t6

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


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

Кстати, хотел спросить, можно ли из функции менять глобальную переменную? Мне нужно для реализации "отбирания" и запоминания текущих вещей актора, с последующим возвращением строго по списку.

Жить стало лучше, жить стало веселей. А когда веселей живётся, то работа скорится.

img.php?nick=Balavnik&sert=2&text=t6

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


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

@KirguduИ до какого момента они хранятся в кэшэ игры? Ведь в самом списке в файле ничего не меняется. 

Жить стало лучше, жить стало веселей. А когда веселей живётся, то работа скорится.

img.php?nick=Balavnik&sert=2&text=t6

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


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

@Kirgudu Т.е. сам массив в  скриптовом файле .script по факту меняется  после выполнения функции enumerate_items? А можно ли в одном месте запомнить, и потом в любой момент обращаться(я понял так, что после перезагрузки сейва массив становится пустым т.к. кэш скриптов сброшен)? Или это уже вне компетенции встроенного Lua, и нужно менять движок?

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

Жить стало лучше, жить стало веселей. А когда веселей живётся, то работа скорится.

img.php?nick=Balavnik&sert=2&text=t6

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


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

Скопил пару вопросов:

 

1. Можно ли скриптово менять user.ltx и actor.ltx?

 

2. В bind_stalker следует добавлять условия в общий апдейтер? Например, чтобы проверить, не имеет ли игрок определённого поршня. Или это будет сильно грузить игру?

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

Жить стало лучше, жить стало веселей. А когда веселей живётся, то работа скорится.

img.php?nick=Balavnik&sert=2&text=t6

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


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

@Norman Eisenherz Сразу скажу, что моддингом занимаюсь на OGSR. Мне нужно править actor и отлавливать события для того, чтобы можно было по факту получения инфопоршня менять переносимый вес актору. 

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

Жить стало лучше, жить стало веселей. А когда веселей живётся, то работа скорится.

img.php?nick=Balavnik&sert=2&text=t6

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


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

Как скриптово получить информацию о состоянии оружия/брони?

Жить стало лучше, жить стало веселей. А когда веселей живётся, то работа скорится.

img.php?nick=Balavnik&sert=2&text=t6

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


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

@Kirgudu Это я как понял вообще для любого объекта. А если из инвентаря? Или нет разницы?

Жить стало лучше, жить стало веселей. А когда веселей живётся, то работа скорится.

img.php?nick=Balavnik&sert=2&text=t6

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


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

@Kirgudu А в cond что будет? Просто число 0-1?

Жить стало лучше, жить стало веселей. А когда веселей живётся, то работа скорится.

img.php?nick=Balavnik&sert=2&text=t6

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


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

Можно ли как-то менять текст диалогов скриптово? Делаю Сидоровича ремонтником, нужно чтобы стоимость ремонта и название починяемого ствола рассчитывались в скрипте.

Жить стало лучше, жить стало веселей. А когда веселей живётся, то работа скорится.

img.php?nick=Balavnik&sert=2&text=t6

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


Ссылка на сообщение
26.12.2018 в 22:50, dPlayer сказал:

которая запоминает НПС

Можно например сохранять на сейвы списочек уже сказанных фраз что-то типа list = { Идентификатор npc = {dialog1, dialog2 и т.д.}}. 

 

Потом написать скрипт, который проверяет, сказал ли конкретный текущий нпс какой-либо текст путём проверки list[Идентификатор npc] на предмет отсутствия ранее сказанной фразы. Если текст нпс говорил, то просто вставить в диалог через give_talk_message сообщение типа "Ничего сказать не могу." 

 

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

Жить стало лучше, жить стало веселей. А когда веселей живётся, то работа скорится.

img.php?nick=Balavnik&sert=2&text=t6

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


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

Как можно получить id создаваемого объекта? Или сам объект. Пробовал просто object= alife():create(...), но create похоже ничего не возвращает. 

  • Не согласен 1

Жить стало лучше, жить стало веселей. А когда веселей живётся, то работа скорится.

img.php?nick=Balavnik&sert=2&text=t6

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


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

@Kirgudu Хм. Может я неправильно пишу? Прикладываю код.

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

Объект в онлайне.

local dolg = create("bar_dolg_respawn_3",-212.095703125,-23.186395645142,-122.46632385254,41290,59, 1)
release_dolg_kordon(dolg)


function release_dolg_kordon(obj)
	send_message("HI") // Отладка
	if obj ~= nil then
		local objid = alife():object(obj.id)
		alife():release(objid, true)
	end
end

 

 

P.s. Я видимо ещё не до конца понял многих тонкостей концепции алайфа.

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

Жить стало лучше, жить стало веселей. А когда веселей живётся, то работа скорится.

img.php?nick=Balavnik&sert=2&text=t6

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


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

Можно ли менять свойства объектов, например condition у оружия, просто делая равенство См.Пример., или существуют специальные методы?

 

Скрытый текст
weapon:condition() = 1

 

 

Жить стало лучше, жить стало веселей. А когда веселей живётся, то работа скорится.

img.php?nick=Balavnik&sert=2&text=t6

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


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

@Norman Eisenherz А где-то можно список получить этих методов? Каждый раз спрашивать - засорять тему.

Жить стало лучше, жить стало веселей. А когда веселей живётся, то работа скорится.

img.php?nick=Balavnik&sert=2&text=t6

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


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

Каким образом лучше всего таймеры делать? В биндере прописывать или как-то иначе?

Жить стало лучше, жить стало веселей. А когда веселей живётся, то работа скорится.

img.php?nick=Balavnik&sert=2&text=t6

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


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

Каким образом лучше всего отслеживать события? Например, поднятие актором определённого предмета двигает поршень. Думаю, в  bind_stalker прописывать не лучшая идея.

Жить стало лучше, жить стало веселей. А когда веселей живётся, то работа скорится.

img.php?nick=Balavnik&sert=2&text=t6

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


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

@mole venomous А не будет ли это шибко сильно тормозить игру? Я просто хочу таким макаром обработать +- 70 объектов.

Жить стало лучше, жить стало веселей. А когда веселей живётся, то работа скорится.

img.php?nick=Balavnik&sert=2&text=t6

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


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

Вырезаны ли функции работы с файловой системой? Хочу считать количество смертей актора. 

 

Какими командами можно редактировать user.ltx?

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

Жить стало лучше, жить стало веселей. А когда веселей живётся, то работа скорится.

img.php?nick=Balavnik&sert=2&text=t6

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


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

Товарищи, parent_id ящика в  оффлайне как получить? Что-то не нашел нигде инфы.

 

Прикладываю код. Суть: спавн объекта секции(пока водки) в ящике по известному sid. Пока не выходит реализовать.

 

Скрытый текст
function spawn_remkom(first_speaker, second_speaker)
	local sim = alife()
	local obj = level.object_by_sid(5003)
	alife():create("vodka",vector():set(39.420829772949,-0.10841239988804,25.139078140259), 1, obj:game_vertex_id(), obj:id())
	
end

 

 

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

Жить стало лучше, жить стало веселей. А когда веселей живётся, то работа скорится.

img.php?nick=Balavnik&sert=2&text=t6

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


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

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