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

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


Svoboда

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

У меня вопрос

Скажите пожайлусто можно ли анимировать камеру гг. Например зделать чтоб гг встал с земли.

А ты в ту тему обратился? =)

 

Попробуй вот это:

http://ifolder.ru/16229318

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


Ссылка на сообщение
как заспавнить к примеру калаш с надетым но снимаемым прицелом через скрипт в руках или в инвентарь к ГГ?

Заспаунить отдельно калаш и отдельно прицел в инвентаре не вариант? А потом нацепить его вручную.

Ты ведь заменяешь один калаш на другой (точнее, такой же, но с другим описанием, хотя тут не важно). Ну и что мешает выполнить проверку, есть ли на удаляемом объекте прицел, и если есть, то заспаунить новый калаш и прицел к нему.

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


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

Возможно ли и есть ли вообще смысл как-то оптимизировать этот скрипт:

local outfitsec
local pow
local snd_volume
local gltimer
local outfit
local timer = 0
local snd_g = sound_object("actor\\breath_gas")
local snd_n = sound_object("actor\\breath_no")
local cyc = 4000 -- max цикл
local pow_lim = 1600 -- min цикл

function update()
outfit = db.actor:get_current_outfit()
if outfit ~= nil then outfitsec = outfit:section() end
if outfit ~= nil 
	and outfitsec ~= "novice_outfit" 
	and outfitsec ~= "bandit_outfit" 
	and outfitsec ~= "shram_outfit" 
	and outfitsec ~= "cs_light_outfit" 
	and outfitsec ~= "svoboda_heavy_outfit" 
	and outfitsec ~= "specops_outfit" 
then
	pow = db.actor.power*cyc
	if pow < pow_lim then pow = pow_lim end

	snd_volume = 1.25-db.actor.power
	if snd_volume > 1 then snd_volume = 1 end
	snd_g.volume = snd_volume

	if timer == 0 then timer = time_global() + pow end
	gltimer = time_global()
	if gltimer > timer then
		snd_g:play_at_pos(db.actor, vector():set(0,0,0), 0, sound_object.s2d)
		timer = 0
	end

else
	pow = db.actor.power*cyc
	if pow < pow_lim then pow = pow_lim end

	snd_volume = 0.9-db.actor.power
	if snd_volume > 0.9 then snd_volume = 0.9 end
	snd_n.volume = snd_volume

	if timer == 0 then timer = time_global() + pow end
	gltimer = time_global()
	if gltimer > timer then
		snd_n:play_at_pos(db.actor, vector():set(0,0,0), 0, sound_object.s2d)
		timer = 0
	end
end
end

 

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


Ссылка на сообщение
(изменено)
Скажите, правильно ли я проверяю группировку любого НПС?:

Если, в целом, эта функция примерно так выглядит, то да:

for id=1,65535 do
local npc_stalker=level.object_by_id(id)
    if npc_stalker then
        if IsStalker(npc_stalker) and npc_stalker:character_community() == "stalker" then
        ...
        end
    end
end

 

 

Stalk15,

Конечно будет напрягать.

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

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

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


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

AMK-Team.ru

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