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

Doom Rate: 2.5

Posts quality: +182
Ссылка на пост №121 Отправлено: 13.09.07 19:40:16
zer0:
но ноль тиков - это копия того, что написано про стандартный думовский плазмаган, там то же самое 0_о

http://208.78.96.242/wiki/Classes:PlasmaRifle

Гды ты там ноль тиков увидел?

zer0:
врезается в стену и остается лежать на полу, сияя

Такое тоже встречалось; это когда актор, исполняющий по мысли роль прожектайла не определен как прожектайл. Глянь, например сюда:
http://208.78.96.242/wiki/Classes:Rocket

Ключевое слово - PROJECTILE
3 1
zer0
= Sergeant Major =
Next rank: UAC Sergeant Major after 25 points
655

Doom Rate: 2.13

Posts quality: +57
Ссылка на пост №122 Отправлено: 13.09.07 19:41:32
Опа! У меня почти получилось! :) Почти настоящий свет, осталось только парочку вещей подкрутить :)


ADDED:

Есть! Я это сделал! :) Мой первый сложный декорейт объект :) Это фонарь и он действительно довольно натурально светит на ограниченной дистанции. Остался лишь последий вопрос. Как сделать, чтобы последовательность Fire включалась при нажатии кнопки огня и выключалась при втором нажатии? А то держать кнопку зажатой немного напрягает...

Да, и еще одно. Скажем так... количество снарядов на один определнный отрезок линии в определенный момент времени зависит только от скорости снарядов?


ADDED:

Нет, не совсем получилось... Все-таки, видно, что это отдельные шары, а не цельная линия света. Если бы их было больше, и они стояли бы плотнее друг к другу... Но как? Если я увеличиваю скорость больше сотни, то получается, что вспышек остается всего две - одна на месте самого плейера, а другая - в конце "луча".

ADDED:

Да, если наоборот уменьшить скорость, то "луч" получается более плотным. Вот так:


actor Flshball replaces PlasmaBall
{
spawnid 51
radius 13
height 8
speed 32
renderstyle Add
alpha 0.75
PROJECTILE
states
{
Spawn:
FLBL A 5 bright
goto Death
Death:
FLBL A 1 bright
stop
}
}


Но единственный косяк, что в таком случае с ним как раз и можно "как со струей" играться... Впрочем, не то, чтобы это было бы сильно плохо. Однако жаль, что нет эффекта рассеивания света.
2 1 2
Guest
= 2nd Lieutenant =
Next rank: - 1st Lieutenant - after 167 points
1473

Doom Rate: 2.5

Posts quality: +182
Ссылка на пост №123 Отправлено: 13.09.07 19:59:23
zer0:
Все-таки, видно, что это отдельные шары

Шары динамик лайта, или спрайты?

zer0:
Как сделать, чтобы последовательность Fire включалась при нажатии кнопки огня и выключалась при втором нажатии? А то держать кнопку зажатой немного напрягает...

Тебе уже сказали, как это можно ПОПРОБОВАТЬ.
3 1
zer0
= Sergeant Major =
Next rank: UAC Sergeant Major after 25 points
655

Doom Rate: 2.13

Posts quality: +57
Ссылка на пост №124 Отправлено: 13.09.07 20:09:48

Сделать проверку специтема в [Ready], а на [Fire] сделать выдачу\изъятие этого итема (в зависимости от того, есть ли он у игрока).


Вот что мне сказали. Если честно, я не понял. КАКОГО итема? И ЧТО должно быть связано с этой проверкой?
2 1 2
Guest
= 2nd Lieutenant =
Next rank: - 1st Lieutenant - after 167 points
1473

Doom Rate: 2.5

Posts quality: +182
Ссылка на пост №125 Отправлено: 13.09.07 20:28:43
zer0:
Вот что мне сказали. Если честно, я не понял. КАКОГО итема? И ЧТО должно быть связано с этой проверкой?

Ох...

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

Что-то в этом духе. Писал на коленке, поэтому могут быть ошибки. Время, необходимое на данные действия прикинешь сам, единички там стоят условно.


zer0:
Но единственный косяк, что в таком случае с ним как раз и можно "как со струей" играться... Впрочем, не то, чтобы это было бы сильно плохо. Однако жаль, что нет эффекта рассеивания света.

Здесь тоже есть возможность поиграться с параметрами и попытаться достичь приемлемого результата без снижения скорости. Рассеяние тоже можно попробовать (думаю знаю как, хотя заранее не обещаю, что будет выглядеть как надо, ибо раньше не делал)
3 1
zer0
= Sergeant Major =
Next rank: UAC Sergeant Major after 25 points
655

Doom Rate: 2.13

Posts quality: +57
Ссылка на пост №126 Отправлено: 13.09.07 20:59:45
Guest
спасибо, это уже лучше :) Я ж полный ламер в декорейте, прошу учитывать...

Я не все понял, но сейчас попробую разобраться...
2 1 2
Falcor
- Master Sergeant -
Next rank: = Master Sergeant = after 56 points
404

Doom Rate: 2.54

Ссылка на пост №127 Отправлено: 13.09.07 21:01:45
zer0:
разве в Ready вообще нужно что-то про этот итем писать?

Еще как нужно.
По сути, фонарь стреляет светом на стейте [Ready], а стейт [Fire] используется лишь для переключения режима ВКЛ/ВЫКЛ.
1
zer0
= Sergeant Major =
Next rank: UAC Sergeant Major after 25 points
655

Doom Rate: 2.13

Posts quality: +57
Ссылка на пост №128 Отправлено: 13.09.07 21:02:59
Да, я снова кое-что напутал... сейчас попробую вписать все так.
2 1 2
Guest
= 2nd Lieutenant =
Next rank: - 1st Lieutenant - after 167 points
1473

Doom Rate: 2.5

Posts quality: +182
Ссылка на пост №129 Отправлено: 13.09.07 21:12:49
zer0:
разве в Ready вообще нужно что-то про этот итем писать?

Декорейт в известный границах довольно гибкая штука; тебе не все равно, из-под какого стейта работает актор? Тут вопрос удобства, а в нашем случае даже и необходимость. Все эти "реди", "селекты" и пр. - ярлыки для движка, а не тебя. Кстати, последняя версия Здума позволяет создавать свои стейты, если на то есть необходимость. Например, какое-то действия актора засунуть в стейт VinnyPooh, и адресовать по необходимости туда GOTO VinnyPooh. Я абсолютно серъезно.
3 1
Falcor
- Master Sergeant -
Next rank: = Master Sergeant = after 56 points
404

Doom Rate: 2.54

Ссылка на пост №130 Отправлено: 13.09.07 21:14:21
Guest:
Кстати, последняя версия Здума позволяет создавать свои стейты, если на то есть необходимость.

Так-так-так-так...
Постой. Не пнешь ссылкой? :o
Это мне будет очень полезно. :)
1
zer0
= Sergeant Major =
Next rank: UAC Sergeant Major after 25 points
655

Doom Rate: 2.13

Posts quality: +57
Ссылка на пост №131 Отправлено: 13.09.07 21:14:42
Гм... в общем, как бы получилось. Но кое-какие неприятственные вещи есть... Например, "включенный" свет дергается - это, я думаю, естественно, раз поток проджектайлов идет не беспрерывно, а постоянно появляясь и исчезая. Во-вторых, на нажатие фонарь реагирует как-то дерганно... надо очень быстро и аккуратно стукнуть по кнопке, иначе он может не включиться, а если зажать - включится, и выключиться, когда кнопка отожмется. Поэтому, я не знаю, может обойтись более простым вариантом...
2 1 2
Falcor
- Master Sergeant -
Next rank: = Master Sergeant = after 56 points
404

Doom Rate: 2.54

Ссылка на пост №132 Отправлено: 13.09.07 21:16:58
zer0:
Во-вторых, на нажатие фонарь реагирует как-то дерганно... надо очень быстро и аккуратно стукнуть по кнопке, иначе он может не включиться, а если зажать - включится, и выключиться, когда кнопка отожмется.

Кажется, что-то было для таких случаев...
К сожалению, точно не помню, но Гест должен знать
(ЗЫ: Гест, сорри, что стрелки перевожу... :oops:)
1
Guest
= 2nd Lieutenant =
Next rank: - 1st Lieutenant - after 167 points
1473

Doom Rate: 2.5

Posts quality: +182
Ссылка на пост №133 Отправлено: 13.09.07 21:33:09
Falcor:
Постой. Не пнешь ссылкой?

Кину ссылку на мод WW, где это применялось, когда найду.

zer0:
Поэтому, я не знаю, может обойтись более простым вариантом...

А это и есть простой вариант :) Тюнить нужно, а не руки опускать.

zer0:
Во-вторых, на нажатие фонарь реагирует как-то дерганно... надо очень быстро и аккуратно стукнуть по кнопке, иначе он может не включиться, а если зажать - включится, и выключиться, когда кнопка отожмется.

Это происходит из-за того, что переключение занимает слишком мало времени. Чтобы лучше реагировал на переключения, стоит удлинить промежуток WeaponReady, а поскольку это увиличивает паузы между пусками прожектайлов, то лечить надо так - прожектайл в полете периодически выпускает такие же прожектайлы, как и он сам (есс-но в том же направлении), но скорость которых чуть меньше. Отставая, они будут заполнять промежутки и освещать их. Если надо, они в свою очередь так же могут выпускать еще более медленные фонарики. Скорости нужно подбирать самому, пока не начнет нравится, заочно не насоветуешь.

Кстати, рассеяние тоже можно изобразить. Динамик лайт приписывается определенному фрейму данного актора, если в полете фреймы называть по-разному, то им соответственно можно приписывать динамиклайты большего радиуса, что и эмулирует некоторое рассеяние.

Короче, все проблемы лечатся терпеливой настройкой, это точно говорю.
3 1
zer0
= Sergeant Major =
Next rank: UAC Sergeant Major after 25 points
655

Doom Rate: 2.13

Posts quality: +57
Ссылка на пост №134 Отправлено: 13.09.07 21:36:54
Guest
насчет рассеяния по кадрам - до этого я уже догадался и сделал. А вот насчет выпуска проджектайлами других... Это типа надо в спауне самого актора-проджектайла писать запуск другого через A_FireCustomMissile?
2 1 2
Shadowman
UAC General
Next rank: Unavailable after 0 points
8712

Doom Rate: 2.06

Posts quality: +2246
Ссылка на пост №135 Отправлено: 13.09.07 21:41:38
zer0
Вот простой пример таких проджектайлов:
ACTOR CannonFireBall
{
obituary "%o rode %k's fireball."
radius 11
height 8
speed 25
damage 20
seesound "weapons/rocklf"
deathsound "weapons/rocklx"
PROJECTILE
+RANDOMIZE
states
{
Spawn:
FIRB AAAA 1 bright A_CustomMissile("FireBallTrail",0,0,0)
loop
Death:
FIRB B 4 bright A_Explode
FIRB C 4 bright
FIRB DEFGHIJ 4 bright
stop
}
}

ACTOR FireBallTrail
{
RENDERSTYLE Translucent
Alpha 0.35
+NOBLOCKMAP
+NOGRAVITY
States
{
Spawn:
FIRT AABBCCDDEE 2
Stop
}
}
По необходимости скорость у "следа" может быть не нулевая, также "следы" могут выпускать вторичные следы и т.д. до нужной густоты.
1 7 2
Guest
= 2nd Lieutenant =
Next rank: - 1st Lieutenant - after 167 points
1473

Doom Rate: 2.5

Posts quality: +182
Ссылка на пост №136 Отправлено: 13.09.07 21:41:46
zer0:
Это типа надо в спауне самого актора-проджектайла писать запуск другого через A_FireCustomMissile?

Не обязательно в спауне, где удобно. Только не A_FireCustomMissile, поскольку вроде это только функция оружия, а "автором" яаляется уже сторонний актор, а не фонарик, а A_CustomMissile.
3 1
zer0
= Sergeant Major =
Next rank: UAC Sergeant Major after 25 points
655

Doom Rate: 2.13

Posts quality: +57
Ссылка на пост №137 Отправлено: 13.09.07 22:31:32
что означает текст ошибки:
Expected ',', got ')'
?

В принципе, что это значит ,я понимаю, но не понимаю, почему. Он спотыкается на строчке

FLBL A 1 A_CustomMissile("Flshball1,0,0,0")


Это текст в акторе Flshball. Flshball1 должен быть его "следом"...
2 1 2
Falcor
- Master Sergeant -
Next rank: = Master Sergeant = after 56 points
404

Doom Rate: 2.54

Ссылка на пост №138 Отправлено: 13.09.07 22:34:14
FLBL A 1 A_CustomMissile("Flshball1",0,0,0)

Так будет правильнее.
1
Guest
= 2nd Lieutenant =
Next rank: - 1st Lieutenant - after 167 points
1473

Doom Rate: 2.5

Posts quality: +182
Ссылка на пост №139 Отправлено: 13.09.07 22:35:01
Falcor:
Постой. Не пнешь ссылкой?

Вот, вроде оно. Ссылка на скачку в первом посте страницы (вроде рабочая):
http://forum.drdteam.org/viewtopic.php?t=35&postdays=0&postorder=asc&start=585
3 1
Falcor
- Master Sergeant -
Next rank: = Master Sergeant = after 56 points
404

Doom Rate: 2.54

Ссылка на пост №140 Отправлено: 13.09.07 22:36:30
Guest:
Вот, вроде оно.

Спс :)
Будем учиться дальше :shock:
1
Страница 7 из 13Перейти наверх Пред.  1, 2, 3 ... 6, 7, 8 ... 11, 12, 13  След.
   Список разделов - Флуд и устаревшие темы - Создание нового оружия в (г)здуме