Artos
варианты в общем понял - буду пробовать.
у меня сначала то кнопка к статику аттачилась - но потому я его убрал.
и сейчас кнопка при активации класса хоть появляется (со второго раза после перезагрузки игры) но потом получаю вылет по стеку.
ошибку понял - будем пробовать иначе делать. За анализ спасибо :-)
Разработки: "Тотализатор","Kill-zone", "Mega-bomba", Mega_gravi",
"Рандомные тайники(а также декодер, мины+диалоговый аддон"), "Выбрасываемый рюкзак", "Аналоговые часики на худ"
erlik
Вообще-то мне интересна данная тема.
В Симбионе тоже намереваюсь доделать нечто аналогичное, т.е. уже выведенные в инвентори дополнительные слоты (виджетами) превратить в 'кнопки', т.е. по кликам по ним - вынимать предметы (нож/бинокль/детектор) из слотов.
Но ... пока не приступал к этому вплотную, только наметки.
Так что - если у тебя/меня будут подвижки - можем или скорректировать друг друга или запараллелить поиск решений.
Правда есть нюанс, :-), ты уже ковыряешься, а я пока ... филоню, и вплотную займусь не раньше конца наступающей недели.
Кто может объяснить такое, все однотипные квесты взять нельзя, ну в смысле можно но игра вылетает когда вы нажимаете в диалоге. Так, и еще вылетает когда спрашиваешь у НПСов что то вроде "что интересного можешь рассказать?" Блин почему понять не могу, знаю лишь то, что когда XSpawner ом
[spоiler]НПСа спавнишь то появляются эти глюки у него, у него лучше ничего не спрашивать а то игра вылетает.
добавлено спустя 16 минут
[1636]
; cse_abstract properties
section_name = stalker
name = esc_stalker
position = -247.257,-19.54525,-129.7213
direction = 0,0,0
P.S.
При создании поста или при его редактировании ты пишешь в окне ввода, над которым имеется панелька с форумными html-кодами, позволяющая форматировать вводимый текст и включать различные элементы (картинки/смайлики/...).
Под значком похожим на 'выноску' имеется подменю, в котором есть различные элементы, в том числе и 'Спойлер'. Выделив текст, который желательно скрыть, применяешь этот тип форматирования.
Можно также 'ручками' это же сделать,
заключив скрываемые строки в теги [spоiler]Hide Text[spоiler], получится так =>
Hide Text
.
Для редакирования твоего поста над ним же нажми <Править>.
(судя по умению вставлять смайлики - тебе знакома панелька тэгов)
Artos извени брат не вкурсах. Ести подскажеш сделаю:-G
добавлено спустя 1 минуту
:-cool)XrKamp
отредактировал(а) djslavikoz: 15-06-2010 10:16 GMT3 час. 1. Вы сейчас в интернете
2. Вы на сайте stalker-portal
3. Вы читаете
5. Вы не заметили, что отсутствует пункт 4
6. Вы это проверили
7. Вы улыбаетесь
8. Поставь себе в подпись и нас будет больше
Artos
В общем пока с чебаттонами проблема:
вывел я все четыре - но выводятся они только после перезагрузки игры и вторичной попытки активации меню через level.start_stop_menu(this.Gravi(), true) (в скрипте на использование предмета) и через секунд 10-30 получаю вылет stake trace - в логе вот это
stack trace:
001B:007E1853 XRLUA.DLL, luabind::detail::do_call_member_selection()
001B:0320AC73 xrGame.dll
к тому ж каллбеки не работают - хотя кнопки зажигаются и гасятся при нажатии.
делал так
часть кода опускаю
function Gravi:InitControls()
self:Init(0,0,1024,768)
local stat= CUIStatic() --определяем класс виджета
stat:SetAutoDelete(true) --автоудоление виджета
stat:Init(391, 495, 300, 200) --устанавливаем координаты и размер виджета.
--stat:InitTexture("ui\\screen.dds")
--stat:ClipperOn()
stat:SetWindowName("static_1") --назначаем ему произвольное имя,
stat:SetFont(GetFontMedium()) --назначим шрифт выводимому тексту.
stat:SetTextX(60)
stat:SetTextY(105)
stat:SetTextColor(238,155,23,255)
stat:SetTextAlign(0)
local text = "Настройки гравипушки"
stat:SetText(text)
self:AttachChild(stat)
Все спавнить научился, но такая фигня, значит кровосос или еще кто то возле Сидора спавнится, но при тех же значениях гейм вертикса и id=214 но уже на блокпосте не появляется(все тоже самое но координаты другие уже) , и почему он там не появляется я не знаю, ну я думаю что 2 псевдогиганта и 3 кровососа просто так не могут исчезнуть, и трупы вояк должны были бы быть. Но их нет.
Artos
В общем я от вылета избавился. ( была пара лишних строчек в коде )
Но результат такой: при выводе через level.start_stop_menu(this.Gravi(), true) весь набор кнопок появляется в инвентаре по прежнему только после перезагрузки игры.
А при выводе через
local inventory = level.main_input_receiver()
if inventory then
news_manager.send_tip(db.actor, "Инвентарь открыт", 0, "trader", 10000)
my_wnd = this.Gravi() --/ определяем виджет
if my_wnd then
inventory:AttachChild(my_wnd) --/ аттачим виджет
news_manager.send_tip(db.actor, "Есть виджет", 0, "trader", 10000)
весь набор кнопок появляется только когда инвентарь закрыть - то есть каллбек на открытие инвентаря то срабатывает(оба сообщения появляются) - но сами кнопки появляются как статик на худе по выходу из инвентаря. По нажатии ESC виджет исчезает. Ну и опять же каллбеки на нажатия кнопок не работают.
В общем на данный момент я честно говоря запутался что к чему аттачить чтобы было так как мне надо - активация виджета внутри инвентаря на его открытие (ну плюс еще одно условие) и деактивация при закрытии инвентаря...
PS: и еще - понял одну вещь - а состояния то кнопок включено\отключено не сохраняется...
а без этого - вся затея теряет свой смысл.
Разработки: "Тотализатор","Kill-zone", "Mega-bomba", Mega_gravi",
"Рандомные тайники(а также декодер, мины+диалоговый аддон"), "Выбрасываемый рюкзак", "Аналоговые часики на худ"
Я хочу поставить ограничение на еду, допустим съедаем мы 3-4 банки тушенки и потом если съесть ещё одну, высветится сообщение: Мол меченый наелся до усёру. А потом вообще запретить ему есть еду на определённое время. Такое возможно? Никто мне не скажет как это сделать?
отредактировал(а) Fantom2323: 15-06-2010 15:31 GMT3 час. Новый проект в разработке, ищи в моём журнале.
В теории - всё легко, а вот на деле - гораздо сложнее.
Непохоже что в твоем таймере вообще что-то выводится на худ.
Во первых непонятно что это за нигде не объявленная переменная time_m
Во вторых я нигде не обнаружил чтобы функция Timer_N_minutes() (в том варианте который используешь ты ) что либо возвращала - так что в этом месте local time_gg = tim.Timer_N_minutes() у тебя переменной time_gg ничего присваиваться не будет.
А поставить нужное действие после оконча**5001c54314580bda8be6** st = hud:GetCustomStatic("hud_timer")
if st==nil then
hud:AddCustomStatic("hud_timer", true)
st = hud:GetCustomStatic("hud_timer")
end
if last~=nil then
local hours = math.floor(last/3600000)
local minutes = math.floor(last/60000 - hours*60)
local seconds = math.floor(last/1000 - hours*3600 - minutes*60)
local text = string.format("%02d:%02d:%02d",hours,minutes,seconds) -- выводим время в формате 00:00:00
-- local text=string.format("%.f",last/1000)
st:wnd():SetTextST(text)
end
else
if hud:GetCustomStatic("hud_timer")~=nil then
hud:RemoveCustomStatic("hud_timer")
end
end
end [/code]
Разработки: "Тотализатор","Kill-zone", "Mega-bomba", Mega_gravi",
"Рандомные тайники(а также декодер, мины+диалоговый аддон"), "Выбрасываемый рюкзак", "Аналоговые часики на худ"
erlik
ясно... (что у меня не таймер а не пойми что...)
а как при старте таймер заспавнить В РУКИ ГГ предмет(ну оружие) и из инвентаря всё что есть удалить, а по окончанию удалить этот ствол и вернуть всё что удалили при старте???
добавлено спустя 3 минут
erlik
перечисление общей сумы вот так выглядит:
db.actor:give_money(sxron) -- вот не уверен что именно так... я про sxron ну по идее должно перечислиться бабло которое накопилось в банке...
отредактировал(а) Николай ФеНиКс: 15-06-2010 16:49 GMT3 час.
Николай ФеНиКс
Чтобы заспавнить прямо в руки нужно предварительно проверить нет ли у ГГ активной вещи в нужном тебе слоте - и если есть то выбросить\удалить ее (методы drop\release) - а потом уже **5001c54314580bda8be6**tring(item:section()).." индекс: "..tostring(i), " ", "_"))
local sobj = alife():object(item:id())
if sobj then
alife():release(sobj,true)
end
end
end
удаляет все - и пда, и болт, и фонарик и бинокль и детектор.
[/code]
а чтобы вернуть все на родину - нужно все что было у ГГ перед удалением записать в табличку, а табличку еще и сохранить - если промежуток времени между удалением и обратным возвратом немаленький.
PS: еще можно сделать трансфер вещей в какой-нить ящик, а потом перебрать его содержимое - по парент айди- и все вернуть ГГ.
Mehanik Yar и djslavikoz
уберите наконец свои портянки в спойлеры
слово spoiler [спойлер по английски] в квадратных скобках неужели так сложно написать? и между ними уже текст.
spoiler текст spoiler только втором слове нужно слеш поставить / перед буквой s
отредактировал(а) erlik: 15-06-2010 17:16 GMT3 час. Разработки: "Тотализатор","Kill-zone", "Mega-bomba", Mega_gravi",
"Рандомные тайники(а также декодер, мины+диалоговый аддон"), "Выбрасываемый рюкзак", "Аналоговые часики на худ"
erlik
мне 2-ой способ по душе=)
ну с ящиком=)
как сделать? (это походу способ который используется на арене, когда заказываешь бой все шмотки удаляются в ящик, а забираешь их сам) как это сделать?
люди! я начинающий модмейкер! все программы есть руки есть фантазия тоже! единственное-игра категорически против папки gamedata! даже добавив ее пустую игра вылетает! вообще не работает игра с распакованной gamedata из db-шных файлов! посоветуйте что сделать надо? версия 1.0004-1.0005!
НАЖМИ НА СПОЙЛЕР
все про свободу в журнале
оставляйте пожалуйста коментарии!!!
erlik
Я попробовал твою функцию таймера с худом запустить - таймер запускается, а худ таймера нет.
Вызывал через диалог так: timer.hud_static timer.start_timer_minutes.Ни чего не появляется:-G
добавлено спустя 1 минуту
gerasader
Интересно, какой же лог вылета из-за пустой папки геймдата...Поделись логом...
отредактировал(а) Stalk15: 15-06-2010 17:32 GMT3 час. Новые фишки для сталкера(см. журнал)
Николай ФеНиКс
Ээ..Нет.А что надо было(риторический вопрос:-))...А в каком конфиге писать, в ui_custom_msgs?
Блин, а от куда коор**5001c54314580bda8be6**e="0" la_text="1" la_alpha="1">
[/code]
Эта тема закрыта, публикация новых сообщений недоступна.
Продолжая пользоваться сайтом, вы соглашаетесь с использованием файлов cookie. Страницы сайта могут содержать информацию, запрещенную для просмотра посетителям младше 18 лет. Авторское право на серию игр «S.T.A.L.K.E.R» и используемые в ней материалы принадлежит GSC Game World.