| QUOTE (Foxx) |
| Ну стандартные анимации ГГ: HMJMPSAA, HMLTHRAA, HMMAXXAA и т.д. |
Могу откатить, но тогда опять вернётся проблема с ГГ'шным fid'ом (/суммон Fakeman
Отправлено 07 сентября 2017 - 15:41
| QUOTE (Foxx) |
| Ну стандартные анимации ГГ: HMJMPSAA, HMLTHRAA, HMMAXXAA и т.д. |
Отправлено 07 сентября 2017 - 15:54
| QUOTE ("Mr.Stalin") |
|
После твоих манипуляций c добавлением ресурсов из олимпа не совсем понятно, что не так на этом скрине |
Отправлено 07 сентября 2017 - 16:07
| QUOTE |
|
Запутал меня. Открыт ли контейнер: obj_is_open(object) or not obj_is_locked(object); Есть ли анимация: art_exists((obj_art_fid(object) bwand 0xFF00FFFF) bwor 0x10000); |
| QUOTE |
| . Раньше работало потому что в хиромоде был трюк со сдвигом fid'а у ГГ вверх на количество существующих анимаций из critters.lst. |
| QUOTE |
| Могу откатить, но тогда опять вернётся проблема с ГГ'шным fid'ом |
Отправлено 07 сентября 2017 - 17:11
| QUOTE (Foxx) |
| Весь смысл appearance_mod пропадает ))) |
| QUOTE (Fakeman) |
| Смотри obj_is_open возвращает True, в том случае если контейнер имеет анимацию открывания/закрывания и когда его текущий анимационный фрейм больше нуля, (obj_is_open использует проверку текущего фрема cur_frm > 0 = True) |
| QUOTE (Fakeman) |
| art_exists тут не приделах. |
| QUOTE |
| if obj_is_open(object) or art_exists((obj_art_fid(object) bwand 0xFF00FFFF) bwor 0x10000) then display_msg("Opened"); |
Отправлено 07 сентября 2017 - 18:23
| QUOTE |
| Немного не так: для контейнеров в cur_frm, содержимое которого возвращает obj_is_open, хранится номер используемой анимации для текущего состояния контейнера. Для закрытого равно 0, а для открытого 1. |
| QUOTE |
|
хранится номер используемой анимации |
| CODE |
|
// basic animations 0-19 #define ANIM_stand (0) #define ANIM_walk (1) #define ANIM_jump_begin (2) #define ANIM_jump_end (3) #define ANIM_climb_ladder (4) #define ANIM_falling (5) |
| QUOTE |
| art_exists((obj_art_fid(object) bwand 0xFF00FFFF) bwor 0x10000) |
Отправлено 07 сентября 2017 - 19:44
| QUOTE (Fakeman) |
| Еще интересует можно ли проверить имеет ли объект контейнер анимацию открывания/закрывания т.е. имеет ли он фреймов >1 ? |
| CODE |
|
variable temp, max_frames := 1; if call_offset_r2(0x419160, obj_art_fid(object), temp) then begin // art_ptr_lock_ max_frames := call_offset_r0(0x41978C); // art_frame_max_frame_ temp := call_offset_r1(0x419260, temp); // art_ptr_unlock_ end if max_frames > 1 then ... |
| QUOTE (Fakeman) |
| Ниче не знаю) |
| QUOTE (Fakeman) |
| Я бы мог воспользоваться предварительной проверкой read_int(object + 0x18), но скрипта так работает, что до использования контейнера нельзя получить указатель на контейнер, а когда уже юзнул контейнер то и вся проверка уже бессмысленна. |
Отправлено 07 сентября 2017 - 20:39
| QUOTE |
| Вообще закралось подозрение что какими-то извращёнными костылями пытаешься воссоздать режим INTFACELOOT;-p |
| CODE |
|
if call_offset_r2(0x419160, obj_art_fid(object), temp) then begin // art_ptr_lock_ max_frames := call_offset_r0(0x41978C); // art_frame_max_frame_ temp := call_offset_r1(0x419260, temp); // art_ptr_unlock_ end |
Отправлено 07 сентября 2017 - 21:58
| CODE |
|
variable temp, frame, max_frames := 1; frame := call_offset_r2(0x419160, obj_art_fid(object), temp); // art_ptr_lock_ if frame then begin max_frames := call_offset_r1(0x41978C, frame); // art_frame_max_frame_ temp := call_offset_r1(0x419260, temp); // art_ptr_unlock_ end if max_frames > 1 then ... |
Отправлено 07 сентября 2017 - 22:45
Отправлено 07 сентября 2017 - 22:51
Отправлено 07 сентября 2017 - 23:02
| QUOTE |
| Объект-то есть? Дай свой полигон для тестов. |
Отправлено 08 сентября 2017 - 00:29
Отправлено 08 сентября 2017 - 02:34
| QUOTE |
| sfall_func2("obj_art_max_frames", object, animID) |
Отправлено 13 сентября 2017 - 20:28
| QUOTE |
| У функции add_mult_objs_to_inven есть забавный недокументированный эффект |
Отправлено 13 сентября 2017 - 22:39
| QUOTE (Fakeman) |
|
Можно этот эффект выключить? |
Отправлено 13 сентября 2017 - 23:16
| QUOTE |
| как с текущим лимитом |
Отправлено 14 сентября 2017 - 01:20
| QUOTE (Fakeman) |
| текущий лимит это что? |
| QUOTE (Fakeman) |
| Странное какое-то решение почему именно 500? для чего как думаешь? |
Отправлено 14 сентября 2017 - 01:53
| QUOTE |
| а может спец.значение чтобы показать что было переполнение. |
Отправлено 20 сентября 2017 - 02:35
| CODE |
|
procedure combat_is_starting_p_proc begin call iSeeYouInCombat in 1; // или "call iSeeYouInCombat when combat_is_initialized;" end procedure combat_is_over_p_proc begin cancel(iSeeYouInCombat); end procedure iSeeYouInCombat begin if combat_is_initialized then begin if obj_can_see_obj(self_obj, dude_obj) and свои_условия_для_нападения then attack_setup(self_obj, dude_obj); else call iSeeYouInCombat in 1; // лучше 0 вместо 1, тогда частота будет максимальная как у critter_p_proc (быстрее заметят) end end |
| CODE |
|
procedure combat_is_starting_p_proc begin addnamedhandler("iSeeYouInCombat", iSeeYouInCombat); // не addnamedevent! signalnamed("iSeeYouInCombat"); end procedure combat_is_over_p_proc begin clearnamed("iSeeYouInCombat"); end procedure iSeeYouInCombat begin if combat_is_initialized then begin if obj_can_see_obj(self_obj, dude_obj) and свои_условия_для_нападения then attack_setup(self_obj, dude_obj); else signalnamed("iSeeYouInCombat"); end end |
Отправлено 20 сентября 2017 - 16:55
| CODE |
|
call [...in | when...] Calls a procedure with an optional delay or condition. |
| CODE |
|
startcritical...endcritical Declares a block of code as critical. |
| CODE |
|
Procedure2 will begin execution immediately after Procedure1 begins execution but possibly before Procedure1 completes. Procedure2 may also finish before Procedure1 if it is shorter or faster than Procedure1 call Procedure1; call Procedure2; |
| Название темы | Форум | Автор | Статистика | Последнее сообщение | |
|---|---|---|---|---|---|
WL2: Детали: платформы и дополнения |
Новости | hamster |
|
|
|
Дополнения для Skyrim будут большими |
Новости | hamster |
|
|
|
Какой перевод в дополнениях для Fallout 3? |
Дело техники | glotokraya |
|
|
|
Модок \ собачка Леди - дополнения для ЧаВо |
Ты — Избранный | The Master |
|
|
|
Неполадка с дополнениями |
Дело техники | Hero of Wasteland |
|
|
0 пользователей, 1 гостей, 0 анонимных