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

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


Svoboда

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

max_max_08 немного непонял что ты хочешь, но помоему надо просто спокойно спавнить разных нпс где надо и писать путь к одной и той же логике

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


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

Народ, как прикрутить логику при спавне без amk'шных колбеков, а то везде только с ними)..

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


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

SKS не легче скриптом?...спавни актору методом alife():create, и ставь высов в тегах action в инфопоршень о выдаче квеста о стрелке

Niko1995 методом alife():create("",x,y,z,gv,lv)

stalker19965 спавнить машину опять же посоветовал бы скриптом,ну а присваивание логики при спавне проблемой вроде бы не было, а логика вот она

[logic]

active = ph_car1

 

[ph_car1]

path_walk = dar_btr

on_actor_dist_le_nvis = 15| ph_car2

 

[ph_car2]

path_walk = dar_btr

target = actor

track_target = true

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


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

а я делал вообще вот так...

 

if level:name() == "l05_bar" then

-- спавнил

end

 

по памяти так, может метод как ни так написал, но смысл такой :)

 

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

Влад, можно дфиг раскомпилить и перегнать на делфи, там удобней править

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


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

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

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


Ссылка на сообщение
(изменено)

кровоSTALKER если дельного сказать нечего не можешь - промолчи, если бы мне нужны были эти псевдорандомные я бы так и сказал, а мне динамические нужны типа как в моде "Наёмники"

 

типа

phr2:GetPhraseScript():AddPrecondition("условие")

phr2=dlg:AddPhrase("диалог",фраза,фраза,-10000)

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

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


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

В ТЧ максимум что возможно это при открытой игре править\добавлять данные, и тут же перепроверять с обходом fatal error

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


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

окно я сам сделаю, мне не понятно как сам список перевести в окно, или н-р в окнесоздать кнопку а на кнопку вешать вызов моего списка?

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


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

Грубо говоря если так както делать в function class:InitControls()

self:Init(50,50,550,450)

pic:InitTexture([[blabla\blabla_tt]])

pic:SetText(и вот тут мне не ясно к примеру как прочитать мои данные)

pic:SetTextX(-10)

pic:SetTextY(-10)

 

а эм...переменнуб можно передать в окошко?, просто я в перменной определял имена :)

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


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

из функции, я получил имена всех объектов инвентаря,и их надо вывести в окно

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


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

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


Ссылка на сообщение
malandrinus, я туплю видать :crazy: , мне в скобках писать вызов своей функции?

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


Ссылка на сообщение
raf100, не туда попал, тут не логика а функция set_actor_position(ну и всякая лабуда типа координат) и диалоги(активация) :)

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


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

Какой функцией можно закрыть инвентарь?

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


Ссылка на сообщение
ZeeK, запускай таймер, при запуске инфопоршень забирай\выдавай, а при окончании таймера опять же выдавай\забирай поршень, ну и прекондишн на диалог повесь для этого инфопоршня

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


Ссылка на сообщение
(изменено)

кровоSTALKER, бог с вами, тут то зачем такой таймер?(ну если конечно прям этот баг(с перезагрузкой) ненужен то да)

ZeeK,

local time = time_global()
local delay= 60000 -- в данном случае минута 
function blabla()
  if time_global()>time+delay and выдан\не выдан ваш поршень then  
выдать\забрать поршень
    time=time_global()
  end
end

 

ну и вызываете где вам надо, вот этого вполне хватит

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

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


Ссылка на сообщение
(изменено)

Мне нужен алгоритм...я кликаю на "list_item" и мне выпадает рандомный текст(это я сделал), как запомнить какой текст выпал и больше его не выдавать(тексты выдаются из таблицы, так что я предполагаю использовать table.remove), но текстов ограниченное количество, а кликов неограниченное количество, и еще нужно сделать запоминание одного текста для кажлого лист итема...

 

Т.е. нажимаю на "1" грубо говоря, и у меня выпадает "Текст3" к примеру(рандомно разумеется), и он всегда должен выпадать когда я нажимаю на "1"(т.о. table.remove уже и не очень то подходит), а не единожды(как было бы при использовании table.remove).

function ui_c1:OnDelClicked() 
  local list = self:GetListWnd("list_spawn") 
  local index = list:GetSelectedItem()
  if index == -1 then return end 
  local item  = list:GetItem(index)  
  if item == nil then return end
  if index >= 0 then 
    local rndtext = texts[math.random(table.getn(texts))]
    local xml = CScriptXmlInit()
    xml:ParseFile("ui_c1.xml")
    local inf = xml:InitFrame("info_list", self) 
    self.a = xml:InitStatic("info_list:closjpg", inf) 
    self.b = xml:InitStatic("info_list:infotexts", inf) 
    self.b:SetText(rndtext) 
  end
end

 

Пока работает у меня так:

Кликаю на один "list_item", и появляется каждый раз рандомно выбранный текст(первичный выданный не запоминается)...в остальном в принципе как мне и надо.

texts выглядит просто...{"text1","text2","text3"...}

 

Для технических текстов используем тэги спойлера и не "убиваем" форматирование/отступы. --/Artos

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

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


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

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

AMK-Team.ru

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