Автор | Сообщение |
Reiko - Master Corporal -
| 237 |
Doom Rate: 1.73
|
Отправлено: 13.08.07 23:47:06 | | | dukenator Жаль... =========== У меня проблема - пытаюсь я сделать монстра наподобие iceguy из hexen, сделал почти все статы кроме смерти. Как мне сделать, чтобы когда монстр умерал - разлетался на куски как iceguy? | |
|
| |
Guest = 2nd Lieutenant =
| 1473 |
Doom Rate: 2.5 Posts quality: +182 |
Отправлено: 14.08.07 00:10:27 | | | Reiko: | У меня проблема - пытаюсь я сделать монстра наподобие iceguy из hexen, сделал почти все статы кроме смерти. Как мне сделать, чтобы когда монстр умерал - разлетался на куски как iceguy? |
Если смерть не спрайтовая (а раз спрашиваешь, значит нет), то в death-стейте нужно прописать испускание соответствующих прожектайлов с малой скоростью и, возможно, для плавности с lowgravity. | |
|
3 |
1 |
|
|
| |
Shadowman UAC General
| 8391 |
Doom Rate: 2.08 Posts quality: +1993 |
Отправлено: 14.08.07 13:53:34 | | | Вопрос такой - как имитировать поведение монстра наподобие амфибии из Хексена? Вроде как он подбегает, выныривает и кусает, и пока игрок стоит вплотную, оно кусается (то есть цикл после melee attack проверяет - есть ли игрок рядом, если есть, то кусать дальше), как только игрок отошел - оно снова куда-то заныривает и далее ходит ищет игрока уже ТАМ. Подозреваю, что мне нужен экшен наподобие A_CPosRefire Но для ближней атаки такого нету и ничего подходящего в вики сыскать не удалось. Использование же обычных экшенов делает поведение монстра крайне некрасивым (то есть он постоянно будет выпрыгивать, когда кусать, а не 1 раз, как задумывалось). Вот такие пироги. | |
|
1 |
7 |
2 |
|
|
| |
Guest = 2nd Lieutenant =
| 1473 |
Doom Rate: 2.5 Posts quality: +182 |
Отправлено: 14.08.07 13:58:31 | | | Shadowman: | амфибии из Хексена? |
Если это зеленая ящерка, выныривающая перед игроком, то она была сделана в Zdoom community project, глянь там. А технически, думается, оно никуда не ныряет и ТАМ не ищет, просто для определенных фреймов спрайт прозрачный. Ведь когда оно перед тобой, пусть и ТАМ, ты через него не перешагнешь, и в самом Хексене вроде как так и было. | |
|
3 |
1 |
|
|
| |
Shadowman UAC General
| 8391 |
Doom Rate: 2.08 Posts quality: +1993 |
Отправлено: 14.08.07 14:09:01 | | | Guest: | Если это зеленая ящерка, выныривающая перед игроком, то она была сделана в Zdoom community project, глянь там. |
Глянул. Декорэйт вообще без строчек чистое наследование свойств от монстра хексена без попытки вникнуть в его внутреннее устройство. Если б я делал точно такую же ящерицу, я бы так и поступил, но у меня задумка иная была, как тут через наследование быть, не знаю... | |
|
1 |
7 |
2 |
|
|
| |
dukenator UAC Sergeant Major
| 726 |
Doom Rate: 2.06 Posts quality: +99 |
Отправлено: 15.08.07 04:46:31 | | | Shadowman Элементарно. Это примерно вот так: States { Spawn: ZVER AB 10 Loop See: ZVER ABCD 3 A_Chase Loop Missile: ZVER H 0 A_JumpIfInventory("Hidden",1,30) \\а если зверок уже занырнул? ZVER HIJ 3 // зверек ныряет ZVER A 0 A_GiveInventory("Hidden",1) ZVER A 0 A_HideThing \\все, зверька не видно ZVER A 0 A_ChangeFlag("NOBLOCKMAP",1) \\он занырнул, верно? а потому пуля его теперь не достанет ZVER AAAAAAAAAAAAAAAAA 3 A_Chase \\он плывет под водой ZVER A 0 A_TakeInventory("Hidden",1) ZVER A 0 A_UnHideThing ZVER A 0 A_ChangeFlag("NOBLOCKMAP",0) ZVER JIH 3 \\ он вынырнул Goto See Goto See+7 \\если зверек войдет в стат миссиле уже скрытым, то он не погрузиться, а продолжит плыть Melee: ZVER E 0 A_JumpIfInventory("Hidden",1,4) \\если зверок к был под водой, то он вынырнет ZVER EF 5 A_FaceTarget ZVER G 5 A_SargAttack Goto See ZVER E 0 A_UnHideThing ZVER E 0 A_TakeInventory("Hidden",1) ZVER A 0 A_ChangeFlag("NOBLOCKMAP",0) ZVER JIH 3 ZVER EF 5 A_FaceTarget ZVER G 5 A_SargAttack Goto See Death: ZVER K 3 A_Scream ZVER L 3 A_Fall ZVER M 3 A_NoBlocking ZVER N -1 Stop } }
Actor Hidden : CustomInventory { Inventory.Amount 1 Inventory.MaxAmount 1 } | |
|
| |
Shadowman UAC General
| 8391 |
Doom Rate: 2.08 Posts quality: +1993 |
Отправлено: 15.08.07 10:36:32 | | | dukenator: | ZVER E 0 A_JumpIfInventory("Hidden",1,4) \\если зверок к был под водой, то он вынырнет ZVER EF 5 A_FaceTarget ZVER G 5 A_SargAttack Goto See |
В целом идею понял, я и забыл, что у монстров тоже инвентарь есть. А вот насчет See ты что-то напутал: у тебя ж в See всего 4 стата, потому экшен Goto See+7 неясно куда выводит. Потом статы See - это что? по идее это должны быть поиск игрока под водой, то есть в See присутствует ныряние изначально. Потому если после атаки отправлять на See - тоже надо прописывать стэйты ныряния и т.п.
ЗЫ. Почему слово "команда" автозаменяется на community? | |
|
1 |
7 |
2 |
|
|
| |
dukenator UAC Sergeant Major
| 726 |
Doom Rate: 2.06 Posts quality: +99 |
Отправлено: 15.08.07 14:01:50 | | | Shadowman Извини, ошибочка вышла. Вот так: Spawn: ZVER AB 10 Loop See: ZVER ABCD 3 A_Chase Loop Missile: ZVER H 0 A_JumpIfInventory("Hidden",1,30) \\а если зверок уже занырнул? ZVER HIJ 3 // зверек ныряет ZVER A 0 A_GiveInventory("Hidden",1) ZVER A 0 A_HideThing \\все, зверька не видно ZVER A 0 A_ChangeFlag("NOBLOCKMAP",1) \\он занырнул, верно? а потому пуля его теперь не достанет ZVER AAAAAAAAAAAAAAAAA 3 A_Chase \\он плывет под водой ZVER A 0 A_TakeInventory("Hidden",1) ZVER A 0 A_UnHideThing ZVER A 0 A_ChangeFlag("NOBLOCKMAP",0) ZVER JIH 3 \\ он вынырнул Goto See Goto Missile+7 \\если зверек войдет в стат миссиле уже скрытым, то он не погрузиться, а продолжит плыть Melee: ZVER E 0 A_JumpIfInventory("Hidden",1,4) \\если зверок к был под водой, то он вынырнет ZVER EF 5 A_FaceTarget ZVER G 5 A_SargAttack Goto Missile ZVER E 0 A_UnHideThing ZVER E 0 A_TakeInventory("Hidden",1) ZVER A 0 A_ChangeFlag("NOBLOCKMAP",0) ZVER JIH 3 ZVER EF 5 A_FaceTarget ZVER G 5 A_SargAttack Goto Missile Death: ZVER K 3 A_Scream ZVER L 3 A_Fall ZVER M 3 A_NoBlocking ZVER N -1 Stop } } | |
|
| |
Shadowman UAC General
| 8391 |
Doom Rate: 2.08 Posts quality: +1993 |
Отправлено: 15.08.07 14:56:29 | | | dukenator Ок, спс. Попробую прикрутить | |
|
1 |
7 |
2 |
|
|
| |
Reiko - Master Corporal -
| 237 |
Doom Rate: 1.73
|
Отправлено: 11.09.07 15:02:49 | | | хелп, А как делать колонну которая при виде игрока стреляет плазмой?(и когда игрок исчезает из поля зрения колонны она перестает стрелять) | |
|
| |
Falcor - Master Sergeant -
| 404 |
Doom Rate: 2.54
|
Отправлено: 11.09.07 15:09:37 | | | Обычный монстр с нулевой скоростью передвижения. | |
|
| |
Eternal - Captain -
| 2306 |
Doom Rate: 3.7 Posts quality: +13 |
Отправлено: 11.09.07 15:10:17 | | | Reiko: | А как делать колонну которая при виде игрока стреляет плазмой? |
Турельку хочешь сделать? Ну как... делаешь колонну монстром без скорости, и всё. Лучше вот скажи как сделать чтобы оно всегда стреляло? Видит игрока, или нет. Просто перманентно... без перерыва. | |
|
2 |
2 |
2 |
|
|
| |
entryway -= DoomGod =-
| 1795 |
Doom Rate: 2.74 Posts quality: +1 |
Отправлено: 11.09.07 15:23:57 | | | dukenator: | ZVER AAAAAAAAAAAAAAAAA |
это декорейт так смешно выглядит? | |
|
3 |
1 |
1 |
|
|
| |
Reiko - Master Corporal -
| 237 |
Doom Rate: 1.73
|
Отправлено: 11.09.07 15:38:21 | | | Eternal вот помудохался и написал вот
actor tower
{
obituary "%o was perforated by a turrel."
health 1000
radius 16
height 60
mass 10000
speed 0
painchance 170
bloodcolor grey
MONSTER
+FLOORCLIP
states
{
Spawn:
TLP2 ABCD 10 A_Look
loop
See:
TLP2 AABBCCDD 3 A_Chase
loop
Missile:
TLP2 A 10 A_FaceTarget
TLP2 A 4 bright A_CustomMissile("plasmaball",50,0,0,0)
TLP2 A 1 A_CPosRefire
goto Missile+1
Pain:
TLP2 A 3
TLP2 A 3 A_Pain
goto spawn
Death:
TLP2 A 1
TLP2 B 1 A_Scream
TLP2 C 5
TLP2 D 5 A_Playsound("baby/death")
TLP2 A -1
stop
}
}
| |
|
| |
Eternal - Captain -
| 2306 |
Doom Rate: 3.7 Posts quality: +13 |
Отправлено: 11.09.07 16:06:08 | | | Reiko Ну и я о том же, простенько и со вкусом Токо спрайтов смерти нужно...бы. А теперь попробуй сделать так, чтобы оно палило (куда-то) просто так, без игрока... | |
|
2 |
2 |
2 |
|
|
| |
Midnighter Recruit
| 12 |
Doom Rate: 1.67
|
Отправлено: 11.09.07 16:18:48 | | | А возможен на базе непрерывно стреляющей турельки портал для монстров? Хочется добавить подобное. | |
|
| |
nprotect - 2nd Lieutenant -
| 1343 |
Doom Rate: 2.45
|
Отправлено: 11.09.07 16:37:31 | | | Eternal: | А теперь попробуй сделать так, чтобы оно палило (куда-то) просто так, без игрока... |
а нельзя разве скриптом? ну что-нибудь типа Spawn_Projectile, я просто не помню синтаксиса | |
|
1 |
2 |
1 |
|
|
| |
Eternal - Captain -
| 2306 |
Doom Rate: 3.7 Posts quality: +13 |
Отправлено: 11.09.07 16:55:37 | | | nprotect Можно, только неизвестно будет ли это в здум-ин-дум работать, может будет, а может нет, нужно же через декорэйт мутить. В гозоформате можно конечно же... | |
|
2 |
2 |
2 |
|
|
| |
nprotect - 2nd Lieutenant -
| 1343 |
Doom Rate: 2.45
|
Отправлено: 11.09.07 17:32:17 | | | Eternal не, зачем decorate. просто стационарный скрипт, open к примеру. или просто при пересечении линии. а потом вызывать его через определенный промежуток, delay(xx) и restart | |
|
1 |
2 |
1 |
|
|
| |
Eternal - Captain -
| 2306 |
Doom Rate: 3.7 Posts quality: +13 |
Отправлено: 11.09.07 17:35:44 | | | nprotect Дык я ж про формат Zdoom-in-doom. Какой open... Вот какие скрипты декорейт понимает? Какие-то ведь понимает, стало быть они будут работать и не в хексен формате? | |
|
2 |
2 |
2 |
|
|
| |