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

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


Svoboда

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

XMK

По-моему через скрипт заспаунить сразу мертвого не получится, можно конечно его потом убить функцией npc:kill(npc) где npc это ссылка на непися, а через all.spawn спауниться без проблем, в параметрах объекта выстави health = 0 и upd:health = 0 и вроде все.

  • Спасибо 1

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


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

XMK

Несовсем, попробуй вот так, должно сработать:

function dead_body_spawn()
    npc=alife():create("чувак 1",vector():set(-243.6, -0.67, 309.62), 366014, 20)
    npc:kill(npc)
end

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


Ссылка на сообщение
зомба 2008, а ты где ее нашел? Ни в ЧН ни ТЧ такой функции нет.

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


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

Pihan13, а это как понимать?

[logic]
cfg = scripts\escape\esc_mayfun.ltx
END

[collide]
ignore_static
END

END должен быть только один, да и вообще это:

[collide]
ignore_static

надо скорее всего в файл логики прописывать.

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

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


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

ANour, если спаунишь через all.spawn то параметр direction, если скриптом, то не знаю.

 

Добавлено через 5 мин.:

Влад

1 вот пример выполнения консольной команды через скрипт:

get_console():execute("hud_crosshair 1")

2 так сразу и не скажешь, зависит от того, что конкретно надо, но на вскидку: получи координаты ГГ и прибавь 20 к нужной координате

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

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


Ссылка на сообщение
ANour, если все по нулям смотрит на север, а вот в чем измеряется я не помню.

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


Ссылка на сообщение
skylancer-3441, покажи что уже сделал, чтоб легче было найти ошибку.

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


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

skylancer-3441, ну с диалогом ты сам накосячил, ты в эту фразу:

<phrase id="1">

<text>test_dialog_1</text>

<next>2</next>

<next>3</next>

<next>4</next>

<next>5</next>

</phrase>

прописал вызов всех следующих реплик. <next>n</next>, это вызов реплики с номером n после окончания фразы, а по спавну, у тебя вызов спавна вообще непонятно где висит, если тебе надо, чтоб спаунилось после определенной фразы, надо вызов спавна заключать внутри этой фразы, то есть между тегом <phrase id="n"> и тегом </phrase>.

Да и еще, левел вертеккс и гейм вертекс у тебя верные?

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

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


Ссылка на сообщение
Labus, а откуда ты взял этот inv_weight? Такой функции не существует в природе, есть хороший файлик который называется lua_help.script поищи в классе game_object, авось найдешь что подходящее. А вот max_weight вообще нужно из конфига брать.

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


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

Labus, если что то не работает, значит ты не правильно используешь функции этого класса, функции из этого класса можно вызывать не для всех game_object, для начала смотри как используется интересующая тебя функция в оригинальных скриптах, если ее там нет, значит пробуем метод научного тыка. В этом классе почти все, а скорее всего все функции используются в игре, в скриптах или в движке, так что не надо говорить, что они не работают.

По теме: логически помысли. Задача: узнать вес всех предметов в инвентаре, решение: перебрать все предметы инвентаря и сложить их вес. Как узнать максимальный вес я уже говорил.

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

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


Ссылка на сообщение
TREWKO, нельзя, имя текстуры вшито в модель.

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


Ссылка на сообщение
STARTS, а ты self.object откуда берешь? Вот он и ругается на несуществующую переменную.

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


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

STARTS, напиши примерно так:

function vvod_antirada()
  if db.actor.radiation >= 0.1 and db.actor:object"medkit" then
    local news_text = "%c[255,160,160,160]Автоматическая система ввода медицинских препаратов\\n%c[default]Выполняю:%c[255,230,0,0]Ввожу в организм противорадиационные препараты%c[default]" 
    db.actor:give_game_news(news_text, "ui\\ui_iconsTotal",Frect():set(0,188,83,47), 0, 3000)
    db.actor:eat(db.actor:object("medkit"))
  end

end

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


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

TREWKO, звук заглушить можно через свойство volume, пример:

snd_obj.volume=2

snd_obj - это звук, вместо числа ставь нужную громкость, 1 это нормальная громкость файла

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

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


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

TREWKO, забыл убрать текстуру когда костюма нет, вот так сделай:

function outfit_hud()
    local outfit = db.actor:item_in_slot(6)
    if outfit ~= nil then
        local hudoutfit = outfit:section()
        if hudoutfit=="exo_div_outfit" then
            local hud = get_hud()
            hud:AddCustomStatic("hud_cop_static", true)
        elseif hudoutfit==nil then
            local hud = get_hud()
            hud:RemoveCustomStatic("hud_cop_static", false)
        end
    else
        local hud = get_hud()
        hud:RemoveCustomStatic("hud_cop_static", false)
    end
end

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


Ссылка на сообщение
PavelSnork, была у меня такая проблемам, возникает она из-за недостающих параметров в секции спавна, проверь все секции спавна на соответсвие их такимже секциям из оригинального спавна.

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


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

STARTS, вылет же тебе советует пере собрать спавн, а ты с графом что делал?

 

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

сделай то что я раньше писал, скорее всего из-за этого.

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

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


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

Darien, а ради интересу заглянуть в оригинальные скрипты и узнать как же правильно пользовать функцию не догадался видать.

level.name() == "l01_escape"

 

и думаю лучше всетаки будет через elseif, почище, хотя функционально ничего не измениться.

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

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


Ссылка на сообщение
кровоSTALKER, синтаксическая ошибка в chimera_mod.script, если конечно этот файл вообще существует...

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


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

кровоSTALKER, покажи код, в слепую ничего не понятно.

 

============================

на первый взгляд все нормально, ругань идет на саму функцию, странно, попробуй закоментировать все внутри функции и проверь, потом раскоментируй немного и еще раз проверь и так пока все не раскоментиш, проще будет поймать косяк.

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

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


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

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