Автор | Сообщение |
Mud - Warrant Officer -
| 1082 |
Doom Rate: 1.97 Posts quality: +700 |
Отправлено: 04.01.19 09:03:46 | | | Arkady Yaborev
Если в свойствах секторов прописать в высоту пола и потолка ++96,то все сектора поднимутся на 96 юнитов. Тоже самое с опусканием, только будет уже --96 |
|
|
3 |
1 |
|
|
| |
Arkady Yaborev - UAC Gunner -
| 44 |
Doom Rate: 2 Posts quality: +20 |
Отправлено: 04.01.19 09:52:50 | | | Serious_MOod пишет: | Если в свойствах секторов прописать в высоту пола и потолка ++96,то все сектора поднимутся на 96 юнитов. Тоже самое с опусканием, только будет уже --96 |
Спасибо. Проверил, работает.))
Добавлено спустя 2 дня 6 часов 17 минут 16 секунд:
Очередной вопрос.)) В свойствах актеров есть Rotation. Angle - вижу, работает. Но ни Pitch, ни Roll никакого влияние на отображение не оказывают. Нужно где-то, что-то прописать? Как-то не хотелось бы загружать две отдельных модели: ведро и ведро, лежащее на боку.)) Пользуюсь GZDoom Builder 2.3 | |
|
| |
theleo_ua = Colonel =
| 4796 |
Doom Rate: 1.8 Posts quality: +1032 |
Отправлено: 06.01.19 16:29:19 | | | Arkady Yaborev пишет: |
Очередной вопрос.)) В свойствах актеров есть Rotation. Angle - вижу, работает. Но ни Pitch, ни Roll никакого влияние на отображение не оказывают. Нужно где-то, что-то прописать? Как-то не хотелось бы загружать две отдельных модели: ведро и ведро, лежащее на боку.)) Пользуюсь GZDoom Builder 2.3 |
USEACTORPITCH
Model's pitch adjusts to match actor's pitch.
USEACTORROLL
Model's roll, adjusts to match actor's roll.
PitchOffset angle
Changes model pitch angle by the given floating point value in degrees.
RollOffset angle
Changes model roll angle by the given floating point value in degrees.
(c) https://zdoom.org/wiki/MODELDEF
И проверь сначала, работает ли просто в игре (не в редакторе) | |
|
3 |
1 |
|
|
| |
Arkady Yaborev - UAC Gunner -
| 44 |
Doom Rate: 2 Posts quality: +20 |
Отправлено: 06.01.19 18:07:42 | | | theleo_ua пишет: | USEACTORPITCH
Model's pitch adjusts to match actor's pitch.
USEACTORROLL
Model's roll, adjusts to match actor's roll.
PitchOffset angle
Changes model pitch angle by the given floating point value in degrees.
RollOffset angle
Changes model roll angle by the given floating point value in degrees. |
Свойства (PitchOffset, например) попробовал. Работает и в редакторе и в игре. Ключи же мне непонятно куда вставлять в MODELDEF. Попробовал по аналогии с DECORATE написать +USEACTORROLL . В редакторе ничего не происходит, а в игре - ругается при загрузке на эти строчки и... тоже ничего не происходит. По ссылке сходил, но там нет примеров использования ключей.
Все, разобрался. Надо было флаги без плюсов писать. В редакторе не видно, а в игре модель наклоняется. | |
|
| |
theleo_ua = Colonel =
| 4796 |
Doom Rate: 1.8 Posts quality: +1032 |
Отправлено: 06.01.19 20:02:08 | | | Arkady Yaborev пишет: | В редакторе не видно, а в игре модель наклоняется. |
Ок - значит либо редактор не умеет в наклон моделей, либо там какие-то опции/функции внутри самого редактора. Те, кто шарят в редакторе, думаю подскажут | |
|
3 |
1 |
|
|
| |
Arkady Yaborev - UAC Gunner -
| 44 |
Doom Rate: 2 Posts quality: +20 |
Отправлено: 08.01.19 07:55:43 | | | Вопрос по динамическим источникам света (GZDoom Builder). Нужно чтобы было похоже на свет свечи. Flicker - слишком резкий и дерганый. Pulse - медленный и монотонный. Наверняка есть какая-то возможность повлиять на частоту моргания. Подскажите как? | |
|
| |
N00b Chief Petty Officer
| 922 |
Doom Rate: 2.15 Posts quality: +384 |
Отправлено: 08.01.19 12:21:50 | | | Arkady Yaborev
Wiki пишет:
| the angle is used to determine the probability the light will flicker to its secondary radius |
То есть, средняя "частота моргания" (вероятность мерцания, видимо, за игровой тик) зависит от переменной "угол" актора-источника (это такая хитрая костыльная передача параметра). Можно начать со значения вроде 4 или 8 и настроить по своему вкусу. Аналогично с PointLightPulse, там углом определяется период (здесь уже нужны большие значения). | |
|
| |
theleo_ua = Colonel =
| 4796 |
Doom Rate: 1.8 Posts quality: +1032 |
Отправлено: 08.01.19 13:01:37 | | | N00b2015 пишет: | зависит от переменной "угол" актора-источника |
Всмысле угол вращения по горизонтали? Т.е. смена частоты мигания будет изменять угол взгляда автора? | |
|
3 |
1 |
|
|
| |
N00b Chief Petty Officer
| 922 |
Doom Rate: 2.15 Posts quality: +384 |
Отправлено: 08.01.19 15:14:33 | | | theleo_ua
Да, тот, который angle, а не pitch и не roll. Под источником я имел в виду сам динлайт, а не то, к чему он может быть приделан через gldefs.
Вот насчёт второго не уверен: попробовал скриптом сменить угол, частота осталась прежней. Деактивировал, активировал снова, опять сменил — никакого эффекта. | |
|
| |
Arkady Yaborev - UAC Gunner -
| 44 |
Doom Rate: 2 Posts quality: +20 |
Отправлено: 08.01.19 17:19:39 | | | N00b2015 пишет: | То есть, средняя "частота моргания" (вероятность мерцания, видимо, за игровой тик) зависит от переменной "угол" актора-источника (это такая хитрая костыльная передача параметра). Можно начать со значения вроде 4 или 8 и настроить по своему вкусу. Аналогично с PointLightPulse, там углом определяется период (здесь уже нужны большие значения). |
Спасибо. Это частично решило проблему. Правда дерганость flicker light не исчезла. Но удалось добиться сносной имитации с помощью двух источников: flicker и random.)) | |
|
| |
Void Weaver = Captain =
| 2496 |
Doom Rate: 1.82 Posts quality: +808 |
Отправлено: 14.01.19 21:30:23 | | | Давненько я ничё не справшивал. )
Как записать чтобы монстр-актор А, мог спаунить монстр-актора Б с тем же ко-вом хп что имеет на момент вызова?
Например если у А 1к хп из 1000, то Б тоже соспаунится с 1к хп из 1000, но если на момент вызова у А 500 хп из 1000, то и у Б будет 500 хп из 1000. Онли декор. | |
|
1 |
9 |
1 |
|
|
| |
N00b Chief Petty Officer
| 922 |
Doom Rate: 2.15 Posts quality: +384 |
Отправлено: 14.01.19 22:41:20 | | | Void Weaver
Есть ли у А свободный указатель (например, tracer)? Если да, то можно попробовать заспаунить Б как tracer А и сразу вызвать A_SetHealth:
actor NewCyber: Cyberdemon replaces Cyberdemon {
-MISSILEMORE
states {
Missile:
CYBR E 6 A_FaceTarget
CYBR F 12
CYBR F 0 A_SpawnItemEx("Zombieman", 96, 0, 0, 0, 0, 0, 0, SXF_NOCHECKPOSITION|SXF_ISTRACER)
CYBR F 0 A_SetHealth(health, AAPTR_TRACER)
Goto See
}
}
Вероятно, иногда будет багаться, немного потестил, вроде не заметил проблем. Они точно будут, если акторов Б нужно сразу много заспаунить. |
|
|
| |
Void Weaver = Captain =
| 2496 |
Doom Rate: 1.82 Posts quality: +808 |
Отправлено: 14.01.19 22:54:12 | | | Да, ща тоже до этого же допёр. =D Только надо будет дистанс-чеки отладить.
Actor DImp : DoomImp //replaces DoomImp
{
Health 5000
States
{
Melee:
Missile:
TNT1 A 0 A_Jump(128,"Cloning")
TROO EF 8 A_FaceTarget
TROO G 6 A_CustomComboAttack("DrainImpBall", 32, 3 * random(1, 8), "imp/melee")
Goto See
Cloning:
TROO EF 8 A_FaceTarget
TROO G 6 A_FaceTarget
CloningStep:
TNT1 A 0 A_JumpIf(CountProximity("Clone",1024)==1,"See")
TNT1 A 0 A_SpawnItemEx("Clone",frandom(-45.0,45.0),frandom(-45.0,45.0),0,0,0,0,0,SXF_TRANSFERPOINTERS|SXF_SETMASTER)
TNT1 A 0 A_JumpIf(CountProximity("Clone",512.0)==0,"CloningStep")
TNT1 A 0 A_GiveToChildren("SpawnHealthCounter",Health)
Goto See
}
}
Actor SpawnHealthCounter : Inventory {Inventory.MaxAmount 0x7FFFFFFF}
Actor Clone : DoomImp
{
Health 5000
States
{
Spawn:
TNT1 A 0 NoDelay A_SetHealth(CountInv("SpawnHealthCounter"))
TROO AB 10 A_Look
}
}
Добавлено спустя 6 минут 23 секунды:
N00b2015
Кстати сэнкс - я чё-т забыл что A_SetHealth можно по поинтеру адресовать, так что итем-звенья тут реально лишние.
N00b2015 пишет: | Они точно будут, если акторов Б нужно сразу много заспаунить. | Не, мне нужен только 1 "клон", но если разрешить сразу несколько то тогда однозначно мой вариант с A_GiveToChildren\CountInv. | |
|
1 |
9 |
1 |
|
|
| |
Chaingunner - Captain -
| 2181 |
Doom Rate: 2.26 Posts quality: +1085 |
Отправлено: 29.01.19 11:21:27 | | | Формат Doom 2(Vanilla):
Чем отличаются экшены "Door Close" и "Door Close stay" ? | |
|
2 |
2 |
1 |
|
|
| |
Артём = Sergeant Major =
| 661 |
Doom Rate: 1.64 Posts quality: +227 |
Отправлено: 29.01.19 12:26:18 | | | Chaingunner
Наверное, Door Close Stay свидетельствует о том, что дверь будет закрыта в результате триггера, закрывшего эту дверь, до следующего триггера, открывающего эту же самую дверь (Door open Stay, Door Open Wait Close и т.п.). Обычный Door Close я в ванилле не встречал, но думаю, что суть такая же. Поправьте, если я ошибся. | |
|
| |
N00b Chief Petty Officer
| 922 |
Doom Rate: 2.15 Posts quality: +384 |
Отправлено: 29.01.19 12:42:38 | | | Chaingunner
А можно номера этих экшенов? Просто в gzdb они почти все (кроме 110 "W1 Door Close (fast)") заканчиваются на "Stay", а в других редакторах могут называться по-другому.
Есть ещё "Close Wait Open" (и те два секторных экшена №10 и №14 ) Так о каких речь? |
Рейтинг сообщения: +1, отметил(и): Артём |
|
| |
Void Weaver = Captain =
| 2496 |
Doom Rate: 1.82 Posts quality: +808 |
Отправлено: 07.02.19 16:50:43 | | | Ребьзь, можно ли на декоре:
а) передать значение Альфы от снаряда к владельцу оного, не задействуя кастоминвентори? A_SpawnItemEx умеет трансферить Альфу но только спауну, а мне нужно наоборот: от спауна к хозяину. Прям оч. нужно. Но без кастоминвентори.
б) провести чек значения Альфы по поинтеру или у вызывающего ф-цию? Чем угодно, лишь бы чек вернул значение. | |
|
1 |
9 |
1 |
|
|
| |
JSO x - 2nd Lieutenant -
| 1334 |
Doom Rate: 2.26 Posts quality: +726 |
Отправлено: 07.02.19 22:16:23 | | | Нормальными (да и откровенно двинутыми) способами на Decorate -- нет; нет. А ZScript тебе не предлагать, как понимаю.
Очень вряд ли, но можно попробовать GetActorProperty() с A_TransferPointers(). Пока продумать не смог, так как 22:15, а я какой день уже не высыпаюсь. |
|
|
2 |
7 |
1 |
|
|
| |
alekv - Colonel -
| | 4168 |
Doom Rate: 1.87 Posts quality: +949 |
Отправлено: 07.02.19 22:28:52 | | | Да ацсом можно, спавнишь снаряд с тидом, когда тебе известен тид и ты можешь запросить его проперти прозрачности
А еще можно заюзать зскрипт что на много лучше будет. |
|
|
1 |
3 |
1 |
|
|
| |
Void Weaver = Captain =
| 2496 |
Doom Rate: 1.82 Posts quality: +808 |
Отправлено: 08.02.19 14:16:17 | | | JSO x, alekv
ГетАкторПроперти штука конечно клёвая и код вроде не сложный, спс, но в АЦС и тиды я тоже не умею. Я даже джамп из анонимной ф-ции прописать не смог.
-----------
1. Тогда такой вопрос. Как можно записать покадровый сдвиг Альфы аналогично ф-циям A_Fade(In\Out\To) но чтобы сохранялся РендерСтайл? A_SetRenderStyle конечно оперирует разными стилями, но лишена автоматического сдвига, - каждый шаг придётся задавать вручную, ну типа
TNT1 A 1 A_SetRenderStyle(0.988)
TNT1 A 1 A_SetRenderStyle(0.976)
TNT1 A 1 A_SetRenderStyle(0.964)... А это мне не подходит, тем более при таких маленьких шагах. Можно было бы записать цикличный юзервар в A_SetRenderStyle, но основная загвоздка в том что Альфа у меня меняется через взятие кастоминвентори итема. А долбаные _Фэйды ломают рендерстайл актора, отличный от Транслюцент.
Ну или если ставить вопрос иначе, то можно что-нибудь сделать с А_Фэйд чтобы они не меняли рендерстайл актора? Не страдать рукожопием, спасибо N00b2015.
2. Какие флаги\проперти итемов (волыны, аптечки, броньки) влияют на коллизии оных? Т. е. что нужно добавить итему чтобы его нельзя было подобрать?
Делал так, но аптечки почему-то всё равно подбираются:
Actor Hp : Health replaces Health
{
States
{
Spawn:
TNT1 A 0 NoDelay A_GiveInventory("DimensionMark2") //Это строка для другого кода
TNT1 A 0 A_ChangeFlag("NOINTERACTION",1)
Goto Super::Spawn
}
} Решено, - надо наследовать от производных аптечек а не от базового Health, тогда флаг работает.
3. Можно ли чем-нибудь пробить DORMANT флаг или это абсолютная неуязвимость? | |
|
1 |
9 |
1 |
|
|
| |