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

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

Gektor, открываешь db.script, там есть функция add_actor, в ней и даешь инфопоршн.

По статистике, 98% системных ошибок находится в полуметре от монитора

«- Александр Григорьевич, доколе же вы будете президентом?

- До Коли, до Коли...»

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

Скачай xrSpawner последней версии. Это для ТЧ. Там уже все машины описаны как секции для алл.спауна.

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

Вот есть скрипт спавна рабочей аномалии.

Есть скрипт спавна рестриктора.

А есть скрипт спавна источника света(вместе с моделью)?

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

Повесил выполнение ф-ции на кнопку:

Expression : fatal error

Function : CScriptEngine::lua_error

File : E:\stalker\patch_1_0004\xr_3da\xrGame\script_engine.cpp

Line : 73

Description : <no expression>

Arguments : LUA error: ...s\s.t.a.l.k.e.r\gamedata\scripts\ui_main_menu.script:315: attempt to call method 'kill' (a nil value)

 

ob = alife():create(section,pos,db.actor:level_vertex_id(),db.actor:game_vertex_id())
ob:kill(ob)

 

Кто знает,в чём трабла?

 

malandrinus

Спасибо!

Изменено пользователем Влад
Не бойтесь совершенства. Вам его не достичь.
C. Дали
Ссылка на комментарий

Влад,

 

После создания объекта ты получаешь серверный объект, ему ещё надо перейти в онлайн. только после перехода в онлайн появится клиентский. Клиентский ты сможешь найти с помощью функции level.object_by_id(). Вот для него и вызывай kill

 

добавлено.

 

Если задачей стоит заспавнить дохлую тушку, то это можно сделать не дожидаясь перехода в онлайн. Можно вызвать для серверного объекта метод on_death(). Это обсуждалось здесь.

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

Плагины Total Commander для работы с игровыми архивами:

Архиваторный плагин (для работы с одиночным архивом): link1 link2

Системный плагин (для распаковки установленной игры): link1 link2

 

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

Работаю с юи-элементами:

Кнопка:

self.W = xml:Init3tButton("test", self)
self:Register(self.W,"test")
self.W:Enable(true)

 

Ф-ция,которая срабатывает при нажатии на эту кнопку:

function ui_test:testButton()
...
self.W:Enable(false)
...
end

Только вот при нажатии на кнопку,она не исчезает.Как быть?

 

 

malandrinus

Спасибо!Снова помог)

Изменено пользователем Влад
Не бойтесь совершенства. Вам его не достичь.
C. Дали
Ссылка на комментарий

Влад,

используй метод Show(true/false).

 

Плагины Total Commander для работы с игровыми архивами:

Архиваторный плагин (для работы с одиночным архивом): link1 link2

Системный плагин (для распаковки установленной игры): link1 link2

 

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

Хотел выести текст в мессаг-боксе,

local xml = CUIScriptWnd()
xml:GetMessageBox("ТЕСТ")

но ничего не произошло..

 

Или такой вариант не катит?

Изменено пользователем Влад
Не бойтесь совершенства. Вам его не достичь.
C. Дали
Ссылка на комментарий

Такой вариант не катит.

То что написал ты, используется по-другому

local xml = CUIScriptWnd()

--...
--здесь нужно создать и зарегистрировать MessageBox под именем "TECT"
--...

-- здесь ты получаешь ранее созданный MessageBox
local message_box = xml:GetMessageBox("ТЕСТ")

-- и здесь можешь с ним что-нибудь сделать, например, показать

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

Вот как сделано в ЗП(файл ui_main_menu.script):

  local message_box = CUIMessageBoxEx()
  message_box:InitMessageBox("message_box_quit_windows")
  message_box:ShowDialog(true)

Можно найти пример и в ТЧ

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

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

в чем может быть проблема? :russian_ru:


Команда ReWrite Team. От сталкера отошли. Пересели за другую платформу.

 

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

А есть где нибудь тутор про динамические диалоги с примерами, вроде всё что есть в скриптовой строке условия ясно, но как именно втыкать и как пользоватся никак не дойдёт...

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

Эм... Ты про пунктик "Что можешь интересного рассказать"? Эти диалоги ДАЛЕКО, не динамические... Прописаны в gamedata\config\gameplay\character_dialogs.xml.

 

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

Возник вопрос: можно ли использовать такую конструкцию?

--Локальная переменная содержащая монстров которые спаунятся на локации где попало.

local spawned_mutants = {

"pseudodog",

"bloodsucker",

"zombie_strong"}

 

--Функция спаунющая мутантов где попало.

function spawn_m()

alife():create(spawned_mutants[math.random(3)], vector():set(x,y,z),lv,gv)

end

 

local x = {

"190"

"453"

"532"}

 

local y = {

"10"

"15"

"2"}

 

local z = {

"867"

"564"

"345"}

 

local lv = {

"100"

"143"

"200"}

 

local gv = {

"432"

"564"

"246"}

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

Изменено пользователем кровоSTALKER
Ссылка на комментарий
кровоSTALKER, ну во первых: переменные нужно объявлять до их использования, во вторых у тебя нет выбора разных координат, а вместо них берется таблица, вылет будет однако, в третьих, левел вертекс и гейм вертекс лучше вычислять для координат, а лучше вообще брать координаты со случайного левел вертекса, посмотри в AMK как там вычисляли координаты для спавна аномалия, на мой взгляд идеальная реализация, сам ей пользуюсь когда надо.
Возможно всё, ну или почти всё.
Ссылка на комментарий

Ещё создал

--Локальная переменная содержащая в себе имена профилей сталкеров подлежащих удалению.

local deleted_stalkers = {"gar_seriy", "gar_hellcar", "gar_bandit_leader"}

 

--Функция берущая имена профилей НПС из локальной переменной и удаляющая их.

function delete_s()

alife():release(deleted_stalkers)

end

вызываемую

level_tasks.add_lchanger_location()

 

self.bCheckStart = false

end

if level.name() == "l02_garbage" then

pioners.delete_s()

end

end

end

но вылетает с таким

FATAL ERROR

 

[error]Expression : fatal error

[error]Function : CScriptEngine::lua_error

[error]File : E:\stalker\patch_1_0004\xr_3da\xrGame\script_engine.cpp

[error]Line : 73

[error]Description : <no expression>

[error]Arguments : LUA error: ... publishing\s.t.a.l.k.e.r\gamedata\scripts\_g.script:20: bad argument #2 to 'format' (string expected, got no value)

 

 

stack trace:

В чём проблема?

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

Хм... А как id получить?

 

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

Тоесть, примерно

local deleted_stalkers = {"gar_seriy", "gar_hellcar", "gar_bandit_leader"}

 

function delete_s()

local se_obj = alife():object(deleted_stalkers)

if se_obj then

alife():release(se_obj, true)

end

end

функция? Но и она не работает...

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

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

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

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

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

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

Войти

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

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

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

AMK-Team.ru

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