Welcome to U.A.C. [O.S.A.]
login / register 
Status: Guest
Архивы форума | iddqd.ru
Wolf 3D
ПравилаПравила ПоискПоиск
18+
Создание нового оружия в (г)здуме Пред.  1, 2, 3 ... 7, 8, 9 ... 11, 12, 13  След.
   Список разделов - Флуд и устаревшие темы - Создание нового оружия в (г)здумеОтветить
АвторСообщение
zer0
= Sergeant Major =
Next rank: UAC Sergeant Major after 25 points
655

Doom Rate: 2.13

Posts quality: +57
Ссылка на пост №141 Отправлено: 14.09.07 06:36:42
Не-а, не вижу эффекта, не получается...

Вот как оно выглядит:


actor Flshball
{
radius 8
height 8
speed 128
renderstyle Add
alpha 0.75
PROJECTILE
+NOBLOCKMAP
+NOGRAVITY
states
{
Spawn:
FLBL A 1 A_CustomMissile("Flshball1",0,0,0)
FLBL BCDEF 1 bright
goto Death
Death:
FLBL F 1 bright
stop
}
}

actor Flshball1
{
radius 8
height 8
renderstyle Add
alpha 0.75
+NOBLOCKMAP
+NOGRAVITY
states
{
Spawn:
FLBL A 1 A_CustomMissile("Flshball2",0,0,0)
FLBL BCDEF 1 bright
goto Death
Death:
FLBL F 1 bright
stop
}
}

actor Flshball2
{
radius 8
height 8
renderstyle Add
alpha 0.75
+NOBLOCKMAP
+NOGRAVITY
states
{
Spawn:
FLBL A 1 A_CustomMissile("Flshball3",0,0,0)
FLBL BCDEF 1 bright
goto Death
Death:
FLBL F 1 bright
stop
}
}

actor Flshball3
{
radius 8
height 8
renderstyle Add
alpha 0.75
+NOBLOCKMAP
+NOGRAVITY
states
{
Spawn:
FLBL ABCDEF 1 bright
goto Death
Death:
FLBL F 1 bright
stop
}
}



Вначале я еще ставил им скорость. Первому 128, второму 64, потом 32... но все было точно так же.
2 1 2
Falcor
- Master Sergeant -
Next rank: = Master Sergeant = after 56 points
404

Doom Rate: 2.54

Ссылка на пост №142 Отправлено: 14.09.07 06:47:44
Полагаю, здесь уже можно помочь лишь тонкой настройкой.
1
dukenator
UAC Sergeant Major
Next rank: UAC Sergeant Major after 34 points
726

Doom Rate: 2.06

Posts quality: +103
Ссылка на пост №143 Отправлено: 14.09.07 10:13:44
А вот как сделать оружие, выстрел которого притягивает к себе врагов?
1 1 1
Falcor
- Master Sergeant -
Next rank: = Master Sergeant = after 56 points
404

Doom Rate: 2.54

Ссылка на пост №144 Отправлено: 14.09.07 10:35:24
dukenator
Кажется, в wrw.wad был гарпун, если тебе интересно.
1
zer0
= Sergeant Major =
Next rank: UAC Sergeant Major after 25 points
655

Doom Rate: 2.13

Posts quality: +57
Ссылка на пост №145 Отправлено: 14.09.07 12:04:04
Falcor
Но вот Shadowman привел пример рокеттрейла (там даже скорости у трейла не было, кстати, почему?), и я в основном скопировал - но эффекта не видно вообще. Я думаю, если бы просто были криво подобраны параметры, хоть что-то было бы заметно...

Вообще, это не самое важное. Я хотел попросить другое.
Вернемся к описанию "кнопки ВКЛ/ВЫКЛ" от Guest'а:


Actor LightSwitch
{
inventory.maxamount 1
-INVBAR // Это, впрочем, необязательно.
}


ACTOR Doom3Flashlight : Weapon 30030
{
...

Ready:
D3FG A 1 A_WeaponReady
TNT1 A 0 A_JumpIfInventory("LightSwitch", 1, 1)
LOOP
TNT1 A 0
D3FG A 1 A_FireCustomMissile ("FlshBall")
LOOP

Fire:
D3FG A 0
D3FG A 0 A_JumpIfInventory("LightSwitch", 1, 3)
D3FG A 1 A_GiveInventory("LightSwitch", 1)
D3FG A 1 A_PlaySound(string soundname) //если захочешь озвучить щелчок выключателя
GOTO Ready
D3FG A 0
D3FG A 1 A_TakeInventory("LightSwitch", 1)
D3FG A 1 A_PlaySound(string soundname)
GOTO Ready



Я был бы ПРЕМНОГО благодарен, если понимающий человек даст мне комментарии к... ну, наверное, к каждой строчке - описание, как действует JumpIfInventory и проч., т.к. я хоть и читал ВИКИ, кое-что мне не совсем понятно. А то Guest услужливо откомментировал единственную строчку, которая как раз и была абсолютно понятна... В общем, помогите мне продолжить обучение декорейту, пожалуйста :o

ADDED:

И еще одна важная штука. Я в KEYCONF как положено создал новый раздел под кнопки, где есть функция Reload. Она у меня упорно отказывается работать. Выглядит это так (выдрано из Zdoom advanced):

addmenukey "Reload" +z_reload
alias +z_reload "use ReloadActive"
alias -z_reload "use ReloadCancel"
defaultbind r +z_reload

Я не совсем понимаю - на что ссылается "use ReloadActive" и "use ReloadCancel"?
2 1 2
Shadowman
UAC General
Next rank: Unavailable after 0 points
8712

Doom Rate: 2.06

Posts quality: +2246
Ссылка на пост №146 Отправлено: 14.09.07 13:04:28
zer0:
(там даже скорости у трейла не было, кстати, почему?),

Cкорость не ставил, так как она нулевая (и по умолчанию оно и задает 0).
Насчет команд: A_JumpIfInventory("LightSwitch", x, y) - перебрасывает на стейт +y к текущему, если в инвентаре находится предмет LightSwitch, в количестве хотя бы x.
Имхо в вики про это достаточно понятно написано.
zer0
Ты лучше сперва сооруди какую-нибудь пушку попроще, а то сразу за фонарь взялся. Вот на ее примере и обкатаешь базовые вещи оружейного декорэйта, а потом уже и фонарь сделаешь :)
Про релоад - это к Guest'у.
1 7 2
zer0
= Sergeant Major =
Next rank: UAC Sergeant Major after 25 points
655

Doom Rate: 2.13

Posts quality: +57
Ссылка на пост №147 Отправлено: 14.09.07 13:29:13
Shadowman
ну так если я решил делать такой вад, какой я решил, то и объекты к нему соответствующие... и фонарь - важнее всего. Кроме того, если не считать возможности "вкл/выкл", я уже добился практически того, что хотел. Я вообще уже успел воткнуть туда шотган и револьвер, правда с револьвером какие-то непонятки... все с тем же релоадом.

Про JumpIfInventory - смысл-то я понял. Только некоторые мелочи не совсем понятны. Например, что будет меняться, если я буду увеличивать число тиков в той строке, где стоит JumpIfInventory?
2 1 2
dukenator
UAC Sergeant Major
Next rank: UAC Sergeant Major after 34 points
726

Doom Rate: 2.06

Posts quality: +103
Ссылка на пост №148 Отправлено: 14.09.07 13:39:03
Falcor
Выложи, пожалуйста!

ЗЫ Там сделано через LoreShot? интерестно...
ЗЗЫ Да не, мне нужно чтобы монстры притягивались не к игроку, а к шарику - выстрелу...
1 1 1
Falcor
- Master Sergeant -
Next rank: = Master Sergeant = after 56 points
404

Doom Rate: 2.54

Ссылка на пост №149 Отправлено: 14.09.07 13:51:47
dukenator
http://www.doomworld.com/idgames/index.php?id=13852
Это версия 1.5а
Перезалейте куданить версию 2.2, если кто вытянет!
1
dukenator
UAC Sergeant Major
Next rank: UAC Sergeant Major after 34 points
726

Doom Rate: 2.06

Posts quality: +103
Ссылка на пост №150 Отправлено: 14.09.07 14:01:48
zer0:
Например, что будет меняться, если я буду увеличивать число тиков в той строке, где стоит JumpIfInventory?

Ничего особо выдающегося не будет...
В той строке, где у тебя стоит jumpifinventory всегда ставь ноль тиков - так будет надежнее.
1 1 1
zer0
= Sergeant Major =
Next rank: UAC Sergeant Major after 25 points
655

Doom Rate: 2.13

Posts quality: +57
Ссылка на пост №151 Отправлено: 14.09.07 14:07:59
Так, с перезарядкой мне все стало более-менее ясно. Но вот есть косяк. Выдернул я из "WW-Diaz" револьвер, заставил его у себя работать. Теперь начал пытаться заставить его автоматически перезаряжаться, когда барабан пустеет (в WW-Diaz он перезаряжается только reload), и, в качестве образца, стал смотреть на выдранную из Zdoom Advanced Weapons двустволку, которая успешно перезаряжается и кнопкой и по опустении боезапаса. Вот какой у меня получился револьвер:


ACTOR Revolver : Weapon 30301
{
//$Category weapons
Inventory.PickupMessage "I got a Revolver"
Inventory.PickupSound "webpick"
Weapon.AmmoType "MagnumClip"
Weapon.AmmoGive 0
Weapon.AmmoUse 1
Weapon.AmmoType2 "ExtraMagnumAmmo"
Weapon.AmmoGive2 2
Weapon.AmmoUse2 0
Radius 12
Height 12
scale 0.35
+AMMO_OPTIONAL
+NOEXTREMEDEATH
+NOAUTOFIRE
States
{
Spawn:
REVP A 1
LOOP
Select:
REVG A 1 A_Raise
Loop
Deselect:
REVG A 1 A_Lower
Loop
Ready:
REVG A 0 A_JumpIfInventory("Reload",1,2)
REVG A 1 A_WeaponReady
Loop
//Reload:
TNT1 A 0 A_JumpIfInventory("MagnumClip",4,2)
TNT1 A 0 A_JumpIfInventory("ExtraMagnumAmmo",1,2)
TNT1 A 0 A_WeaponReady
Goto Ready+1
REVR ABC 2
REVR D 3 A_PlayWeaponSound("webload")
REVR EFH 3
REVR I 25
TNT1 A 0 A_TakeInventory("ExtraMagnumAmmo",1)
TNT1 A 0 A_GiveInventory("MagnumClip",7)
REVR J 3
REVR KL 4
REVR M 3
REVR NO 5
REVR PQ 2
REVR RS 1
REVG ABAABBAAABBB 1
goto Ready
Fire:
REVG A 0 A_JumpIfNoAmmo(6)
REVG A 0 A_PlayWeaponSound("webfire")
REVG BA 2
REVF A 0 BRIGHT A_GunFlash
REVF A 2 BRIGHT A_FireBullets(2,1,-1,30,0,1)
REVG D 1 A_FireCustomMissile("PistolSmokeSpawner",0,0,6,8)
REVG FEDCAA 1
Goto Ready
REVG A 0 A_WeaponReady
Goto Ready+2
AltFire:
REVG C 2
REVM A 2 A_PlayWeaponSound("melee/swing")
REVM B 1
REVM C 1 A_CustomPunch(5,0,0,"HitPuff")
REVM DE 1
REVM FGHI 2
REVG A 2
Goto Ready
Flash:
TNT1 A 0
TNT1 A 2 A_Light2
TNT1 A 2 A_Light1
TNT1 A 1 A_Light0
Stop
}
}


Ну и не хочет он перезаряжаться автоматически, никак. При нажатии reload - все как надо, а когда просто пустеет магазин - только выдает свой стандартный сиквенс (просто прокрутка барабана вхолостую), и ничего больше. Сижу, пялюсь, не могу понять, в чем тут дело...

ADDED:

А также мне интересно, можно ли заставить оружие стрелять сразу несколькими видами проджектайлов? Причем не по очереди, а одновременно.
2 1 2
Guest
= 2nd Lieutenant =
Next rank: - 1st Lieutenant - after 167 points
1473

Doom Rate: 2.5

Posts quality: +182
Ссылка на пост №152 Отправлено: 14.09.07 18:44:53
dukenator:
В той строке, где у тебя стоит jumpifinventory всегда ставь ноль тиков - так будет надежнее.

Поясни, чем надежнее?

zer0:
а когда просто пустеет магазин - только выдает свой стандартный сиквенс

Собственно и не должен, из того что написано.

zer0:
А также мне интересно, можно ли заставить оружие стрелять сразу несколькими видами проджектайлов? Причем не по очереди, а одновременно.

В Греции все есть.
3 1
Shadowman
UAC General
Next rank: Unavailable after 0 points
8712

Doom Rate: 2.06

Posts quality: +2246
Ссылка на пост №153 Отправлено: 14.09.07 19:27:04
zer0:
Причем не по очереди, а одновременно.

"Одновременность" достигается тем, что указываешь величину тика = 0 напротив каждой строчки, испускающей снаряд. Вот и все.
1 7 2
zer0
= Sergeant Major =
Next rank: UAC Sergeant Major after 25 points
655

Doom Rate: 2.13

Posts quality: +57
Ссылка на пост №154 Отправлено: 14.09.07 22:28:23
Ладно, к черту этот револьвер. Оставлю так. Это даже будет давать хороший эффект, учитывая тематику того, над чем я работаю...

Shadowman
ну так вроде говорилось, что против запуска снаряда не стоит ставить 0. Лично у меня при этом игра вылетает при попытке стрелять.
2 1 2
Shadowman
UAC General
Next rank: Unavailable after 0 points
8712

Doom Rate: 2.06

Posts quality: +2246
Ссылка на пост №155 Отправлено: 15.09.07 00:24:40
zer0
А зачем при всех ноль? Ставь на последнем выстреле число, а на предыдущих нули.
1 7 2
dukenator
UAC Sergeant Major
Next rank: UAC Sergeant Major after 34 points
726

Doom Rate: 2.06

Posts quality: +103
Ссылка на пост №156 Отправлено: 15.09.07 02:38:03
Guest:
Поясни, чем надежнее?

Тем, что не будет задержки перед "прыжком", и если прыжок стоит в самом начале кода,
то в случае инвентаря действие без задержки переместится на ту часть кода, куда идет прыжок.

Люди, объясните пожалуйста, как сделать оружие типа БФГ, чтобы к шарику притягивало монстров!
1 1 1
zer0
= Sergeant Major =
Next rank: UAC Sergeant Major after 25 points
655

Doom Rate: 2.13

Posts quality: +57
Ссылка на пост №157 Отправлено: 15.09.07 10:57:10
Люди, а вот у меня проблема с картинками... Мне, значит, понадобилось сделать обычную руку, держащую фонарь, без перчатки (та, что в Doom 3 Weapons мне не подходила). И где ее взять? Подумал сделать из обычной фотографии, но при перемене цвета в indexed получается очень посредственное изображение, а нарисовать его сам с нуля я вряд ли смогу... Может в качестве ресурсника что-нибудь подскажете? :)


ADDED:
и еще... нет ли способа как-нибудь замедлить расход патронов у оружия? Ну, типа, чтобы оно использовало не 1 за выстрел, а меньше... я знаю, что цифры меньше 1 оно не воспринимает. Просто я пытался сделать у фонаря расходуемые батарейки, а в таком случае, чтобы полного заряда хватало хотя бы на 1.5 реальных часа, ему приходится ставить 600000 патронов, а быстро бегущие цифры выглядят не ахти как, да и к тому же в стандартном думовском HUD еще и не отображаются корректно...
2 1 2
dukenator
UAC Sergeant Major
Next rank: UAC Sergeant Major after 34 points
726

Doom Rate: 2.06

Posts quality: +103
Ссылка на пост №158 Отправлено: 15.09.07 12:11:24
zer0
Сделай примерно вот так:
...
Fire:
FONR A 0 A_Jump(32,2)
FONR A 3 A_FireCustomMissile("Light",0,0,0)
Goto Ready
FONR A 3 A_FireCustomMissile("Light,0,1,0)
Goto Ready
...
При выстреле светом в 1/8 доле случаев 1 патрон расходуется, в остальных - 0.
Так можно снизить расход патронов.
1 1 1
Falcor
- Master Sergeant -
Next rank: = Master Sergeant = after 56 points
404

Doom Rate: 2.54

Ссылка на пост №159 Отправлено: 15.09.07 12:39:07
dukenator
К черту рандом, проще сделать встроенный АЦС-скрипт.
1
dukenator
UAC Sergeant Major
Next rank: UAC Sergeant Major after 34 points
726

Doom Rate: 2.06

Posts quality: +103
Ссылка на пост №160 Отправлено: 15.09.07 13:27:04
Falcor
Можно и АЦС, но это, по моему, будет уже перебор...

zer0
Ну зачем фонарь!?
Чувак, не с того надо начинать!
Учится делать оружие надо начинать или с пистолетов(без перезарядки и прочих гадостей жизни),
или с БФГ...
1 1 1
Страница 8 из 13Перейти наверх Пред.  1, 2, 3 ... 7, 8, 9 ... 11, 12, 13  След.
   Список разделов - Флуд и устаревшие темы - Создание нового оружия в (г)здуме