Автор | Сообщение |
+Ku6EPyXOBEPTKA+ - 2nd Lieutenant -
 | 1413 |
 Doom Rate: 1.75
|
Отправлено: 08.10.11 23:39:05 | | | Здравствуйте, дорогие думеры. Сегодня меня интересует следующий вопрос: как поместить актёра (тип MapRevealer) в INVBAR? Проще говоря, как переместить "allmap бонус" в инвентарь? Дело в том, что инвентарный класс MapRevealer не видит флаги для inventory. А заменить такой бонус на CustomInventory не удастся, поскольку этот бонус заменяет allmap. У кого какие идеи?
P.S: Порт Gzoom/ZDoom | |
|
1 |
1 |
2 |
 |
|
| |
bed.intruder]ASTS[ Chief Petty Officer
 | 1006 |
 Doom Rate: 1.67
|
Отправлено: 08.10.11 23:45:16 | | | Делаешь CustomInventory, который в стейте Pickup дает игроку нужный поверап. Проблем то. | |
|
| |
+Ku6EPyXOBEPTKA+ - 2nd Lieutenant -
 | 1413 |
 Doom Rate: 1.75
|
Отправлено: 08.10.11 23:50:47 | | | bed.intruder]ASTS[ : | Делаешь CustomInventory, который в стейте Pickup дает игроку нужный поверап. Проблем то. |
1. Стейт pickup - отвечает за действия во время подбора, а мне нужно сделать так, что бы я сам мог использовать этот бонус (т.е когда мне это понадобится). В таком случае нужен стейт Use. Вот только у меня баг. Если в стейте Pickup ничего, кроме нулевого стейта, то бонус не берётся в инвентарь, а если ничего не писать, то берётся оригинальный стейт.. а если написать ещё что-нибудь, то... опять ничего не произойдёт.
2. Мне нужно заметить старый. А replaces не меняет тип бонуса, что означает провал.
3. Мне нужно избавиться от autoactivate, что из-за 1 пункта является невозможным. | |
|
1 |
1 |
2 |
 |
|
| |
bed.intruder]ASTS[ Chief Petty Officer
 | 1006 |
 Doom Rate: 1.67
|
Отправлено: 08.10.11 23:56:33 | | | 1. Ступил, бывает. Конечно же use.
2. actor PowerupCopy: MyPowerup
{}
actor MyPowerupGiver: CustomInventory replaces MyPowerup
...
use:
TNT1 A 0 A_GiveInventory( "MyPowerupCopy", 1 )
stop | |
|
| |
+Ku6EPyXOBEPTKA+ - 2nd Lieutenant -
 | 1413 |
 Doom Rate: 1.75
|
Отправлено: 09.10.11 00:10:30 | | | bed.intruder]ASTS[ : | 2. actor PowerupCopy: MyPowerup.... и.т.д |
Так, а как это мне увязать с заменой allmap? Просто мне нужно заменить оригинальный бонус, а тут просто смена типа?... или я что-то не понял? | |
|
1 |
1 |
2 |
 |
|
| |
bed.intruder]ASTS[ Chief Petty Officer
 | 1006 |
 Doom Rate: 1.67
|
Отправлено: 09.10.11 00:14:06 | | | Сначала ты просто копируешь нужный итем. Потом ты создаешь инвентарь, который выдает копию итема (действует эта копия 100% так же, как оригинал). Этот инвентарь заменяет оригинал итема.
На каком этапе не понятно?  | |
|
| |
+Ku6EPyXOBEPTKA+ - 2nd Lieutenant -
 | 1413 |
 Doom Rate: 1.75
|
Отправлено: 09.10.11 00:16:25 | | | Я уже разобрался. Большое спасибо. | |
|
1 |
1 |
2 |
 |
|
| |
YURA_111 UAC Sergeant Major
 | 736 |
 Doom Rate: 2.17
|
Отправлено: 13.10.11 19:16:02 | | | Добрый вечер всем. Народ помогите, т.к. запарился искать на WIKI.
Собственно мне нужно монстру сделать подобие берсерка которое есть у ДумПлеера (только чтобы у монстра он не заканчивался и был изначально).
Первое я испробовал A_M_Punch(10) - но эта функция только для ScriptedMarine и производных, короче не прокатило. Поискав по вики нашел: A_CustomPunch - это для игрока - не катит, дальше A_MeleeAttack - эта функция как описывается там, толи уже депрекейтыд, толи будет - я так и не понял, но там написано что нужно использовать A_CustomMeleeAttack. Это вроде походит, но КАК УЗНАТЬ повреждения которые наносит игрок при берсерке и правильно их поставить в A_CustomMeleeAttack ? | |
|
| |
Cherepoc = Master Sergeant =
 | 514 |
 Doom Rate: 1.73
|
Отправлено: 13.10.11 19:46:09 | | | YURA_111 : | КАК УЗНАТЬ повреждения которые наносит игрок при берсерке и правильно их поставить в A_CustomMeleeAttack |
Первый же параметр и есть повреждения. И это - точные повреждения. Сколько укажешь, столько моб и будет наносить.
EDIT. А, понял. Вот так надо:
A_CustomMeleeAttack( Random (1, 10) * 20 )
Обычно игрок наносит урон от одного до десяти умножить на два (то бишь от 2 до 20 с шагом 2). При берсерке урон умножается в 10 раз. | |
|
| |
YURA_111 UAC Sergeant Major
 | 736 |
 Doom Rate: 2.17
|
Отправлено: 13.10.11 20:15:58 | | | Cherepoc
Все понял - Спасибо !
А инфу по дэмэйджу конечно ты брал отсюда http://zdoom.org/wiki/A_Punch, а я не догадался туда заглянуть... | |
|
| |
Push Start To Rich = Master Corporal =
 | 252 |
 Doom Rate: 1.63
|
Отправлено: 15.10.11 10:39:25 | | | У меня есть вопрос, почему у 3д полы в DB2 (в Gzdoom visual mode) опускаются только на 8 пикселей и дальше не идут? Происходит довольно часто, перезапуск не всегда помогает. | |
|
| |
riderr3 Marine 1st class
 | 32 |
 Doom Rate: 1.88
|
Отправлено: 19.10.11 01:54:56 | | | Эвгэн : | Можно ли сделать в gzdoom переход между локациями не опускающейся картинкой (как в оригинале), а поставить картинку с надписью "загрузка" (аля Квака и Халфа)? |
Тут хабы помогут.
http://zdoom.org/wiki/Hub
Сразу несколько уровней будут находиться в одном кластере.
Ну и приправить скриптами. | |
|
| |
StasBFG[iddqd] -= DoomGod =-
 |  | 3287 |
 Doom Rate: 2.14
|
|
1 |
2 |
2 |
 |
|
| |
Эвгэн = Master Corporal =
 | 246 |
Doom Rate: 2
|
Отправлено: 19.10.11 18:53:56 | | | Можно ли скриптом сделать такие трюки:
1. При пересечении линии\сектора играется определенный звук, один раз. И при повторном пересечении линии\сектора уже не воспроизводится
2. При пересечении линии\сектора меняется фоновая музыка. Опять же скрипт действует единожды.
Порт Gzdoom
Заранее спасибо | |
|
| |
LEX SAFONOV UAC Sergeant Major
 | 685 |
 Doom Rate: 1.49
|
Отправлено: 19.10.11 19:01:49 | | | Народ есть вопросик.
Затея появилась сделать ручную гранату с силой броска. Собсна появилась идея оформить скорость снаряда не как константу, а как переменную. Т.е. - читаем из какого либо итема число, это число присваиваем какой либо переменной и при броске снаряду ставим скорость той самой переменной. Собсна это первый вопрос. Второй - будет ли такая вещь работать в мультиплеере?
Да и про другой способ - делать несколько снарядов на основе одно и того же, я уже знаю) (aka HandGrenade с рейлма) | |
|
| |
Эвгэн = Master Corporal =
 | 246 |
Doom Rate: 2
|
Отправлено: 19.10.11 19:04:33 | | | Чуть не забыл:
3. Уже не скриптом. Какая команда в декорейте отвечает за то, что сфера из дума при подборе отправляется в хексеновский инвентарь (гздум)? | |
|
| |
LEX SAFONOV UAC Sergeant Major
 | 685 |
 Doom Rate: 1.49
|
Отправлено: 19.10.11 19:07:19 | | | Эвгэн : | 3. Уже не скриптом. Какая команда в декорейте отвечает за то, что сфера из дума при подборе отправляется в хексеновский инвентарь (гздум)? |
замути сферу как инвентарный итем(либо на основе, либо заменяй по верх) и по идее она не будет активироваться автоматом. | |
|
| |
Эвгэн = Master Corporal =
 | 246 |
Doom Rate: 2
|
Отправлено: 19.10.11 19:11:51 | | | а что нужно дописать в декорейте для этого (или это вообще не в декорейте)? | |
|
| |
LEX SAFONOV UAC Sergeant Major
 | 685 |
 Doom Rate: 1.49
|
Отправлено: 19.10.11 19:28:35 | | | вообще по идее - копируешь код оригинал сферы(кстати какой именно?) и добавляешь ей параметр отображения в инвентаре. Точно не помню, либо CustomInventory, либо просто Inventory(это нужно добавить после двоеточия, где ещё название актора), а так же убираешь у неё параметр автоактивации (+INVENTORY.AUTOACTIVATE, этого параметра не должно быть). Так же чтобы инвентарь отображался в списке инвентаря надо добавить +INVENTORY.INVBAR в параметры. Толком не могу ща объяснить, ибо со сферами никогда дела не имел) | |
|
| |
bed.intruder]ASTS[ Chief Petty Officer
 | 1006 |
 Doom Rate: 1.67
|
Отправлено: 19.10.11 19:50:30 | | | Эвгэн
actor newSphere : xxx replace xxx //xxx - название нужного итема
{
-INVENTORY.AUTOACTIVATE
} | |
|
| |