Автор | Сообщение |
YURA_111 UAC Sergeant Major
| 768 |
Doom Rate: 1.98 Posts quality: +136 |
Отправлено: 13.02.19 16:14:16 | | | alekv пишет: | Добавь в функцию флаг RGF_NOSIGHT |
В том то и дело, что все добавлено изначально, но не работает... | |
|
| |
alekv - Colonel -
| | 4168 |
Doom Rate: 1.87 Posts quality: +949 |
Отправлено: 13.02.19 17:17:09 | | | YURA_111 пишет: | В том то и дело, что все добавлено изначально, но не работает... |
Ну либо это баг либо ты что-то не так сделал.
Функция точно умеет передавать через стены и т.д., возможно ее поломали.
Посмотри у себя в коде не совершил ли ты ошибки. К примеру раздаешь вещь по радиусу, а тот кто должен принять слишком далеко (у радиусгива есть предел 16000 кажется мап юнитов) либо у него нет инвентаря(к примеру вещь nointeraction или другие классы не имеющие инвентарь) или класс актера не подходит под флажки указанные в функции радиусгива к примеру раздаешь RGF_MONSTERS, а тот кто должен принять не является монстром.
Если уверен что ошибки у тебя нет, репорти баг, потому что его не починят если не напишешь. |
|
|
1 |
3 |
1 |
|
|
| |
Void Weaver = Captain =
| 2496 |
Doom Rate: 1.82 Posts quality: +808 |
Отправлено: 13.02.19 17:49:32 | | | Плюсую алеку за исключением последнего предложения. _РадиусГив работает как часы, по крайней мере в гоззе 3.7.0, как раз с ней вожусь последнюю неделю.
Ну и маленькое дополнение: флаг nointeraction состоит из NOBLOCKMAP и NOSECTOR, т. е. у актора с этими флагами инвентарь вполне может быть, вот только "пробиться" снаружи через эти флаги практически невозможно. И если реципиентом _РадиусГива является снаряд то очевидно что оный не получит никаких предметов ибо снаряды по-умолчанию как раз +NOBLOCKMAP. |
|
|
1 |
9 |
1 |
|
|
| |
YURA_111 UAC Sergeant Major
| 768 |
Doom Rate: 1.98 Posts quality: +136 |
Отправлено: 13.02.19 20:25:10 | | | Спасибо ребята - сам ошибся я, просто не учел что не стоял флаг у снаряда NOExplodeFloor. Он в итоге взрывался раньше чем успевал выдавать этот самый "радиусгив"
Void Weaver пишет: | И если реципиентом _РадиусГива является снаряд то очевидно что оный не получит никаких предметов ибо снаряды по-умолчанию как раз +NOBLOCKMAP. |
В моем варианте снаряд с радиусгив выдает всем инвентори в радиусе 128 + ко всему еще и самому себе и сейчас все работает, т.к понял свою ошибку
https://zdoom.org/wiki/A_RadiusGive
флаг RGF_MISSILES существует как раз для того, чтобы и снарядам можно было выдавать... |
|
|
| |
Void Weaver = Captain =
| 2496 |
Doom Rate: 1.82 Posts quality: +808 |
Отправлено: 13.02.19 22:00:53 | | | YURA_111 пишет: | флаг RGF_MISSILES существует как раз для того, чтобы и снарядам можно было выдавать... | Тогда пардоньте, походу я пропустил момент когда пофиксили RGF_MISSILES, | |
|
1 |
9 |
1 |
|
|
| |
YURA_111 UAC Sergeant Major
| 768 |
Doom Rate: 1.98 Posts quality: +136 |
|
| |
Void Weaver = Captain =
| 2496 |
Doom Rate: 1.82 Posts quality: +808 |
Отправлено: 17.02.19 21:00:13 | | | Такой нубский вопрос: есть ли какой-нибудь шаблон по структурированию акторов в .тхтшниках вне декорэйт лумпа, ну или где можно об этом почитать?
Т. е. если допустим есть вад с лумпом ДЕКОРАТЕ и всё находится в нём, то как рассортировать (и всё это связать) содержимое по отдельным тхт (монстерс, итемс, веапонс и т. д.)?
Где там писать пресловутый include? | |
|
1 |
9 |
1 |
|
|
| |
N00b Chief Petty Officer
| 922 |
Doom Rate: 2.15 Posts quality: +384 |
Отправлено: 17.02.19 22:25:19 | | | Void Weaver
Тебе нужен автоматический конвертер длинной простыни в дерево зависимостей классов? Я таких не знаю, попробуй погуглить (или написать сам на c, c++ или питоне )
Структура pk3 может быть любой, на твой вкус. Можешь обратить внимание на любой крупный (>20mb) проект (ха-ха, за исключением брутала). Торменторовские вроде Stronghold или даже Blade of Agony подойдут неплохо (правда, уже на zscript её перевели давно, но можно найти первую версию, там был decorate; а вообще, в отношении #include эти языки равносильны).
Хотя я вот посмотрел на decorate.txt из stronghold, а там 5k строк, навалена всякая хрень в одну кучу, зато в самом конце несколько десятков инклюдов на классы перекрашенных монстров.
Вообще можно попробовать засовывать в главный decorate.txt только инклюды в стиле
#include "player.txt"
#include "monsters/main.txt"
#include "weapons/main.txt"
#include "items/main.txt"
А в main.txt хранить все инклюды на файлы из этой папки:
monsters/main.txt:
#include "imp.txt"
#include "zombie.txt"
Можно и что-нибудь другое придумать. Шаблон каждый выбирает себе сам. |
|
|
| |
Void Weaver = Captain =
| 2496 |
Doom Rate: 1.82 Posts quality: +808 |
Отправлено: 17.02.19 22:40:27 | | | N00b2015 пишет: | Тебе нужен автоматический конвертер длинной простыни в дерево зависимостей классов? | Та неее, скрипач автоматика не нужна, я и ручками раскидаю. Просто когда и функциональный код и копипастные акторы в одной простыне и глаз замыливается и навигация в лумпе усложняется - скролить долго, да и фиксировать правки сложнее, - забываешь где чо менял. Вот от такого: N00b2015 пишет: | там 5k строк, навалена всякая хрень в одну кучу | мне чота дурно делается (наверное из-за неокрепшей моддерской психики).
Так. Я правильно понимаю что #include "/самсинг.txt" надо пихать в основной лумп ДЕКОРАТЕ и оные тхтшники могут лежать где угодно (в руте или директориях), причём всё это работает онли в виде .pk3, или я опять чего-то не догоняю?
ЭДИТ:
Аааа, ну да, в ваде же лимит имени на 8 символов, а так-то структура инклюдов и ваде пашет. Теперь другое дело, спасибо! | |
|
1 |
9 |
1 |
|
|
| |
YURA_111 UAC Sergeant Major
| 768 |
Doom Rate: 1.98 Posts quality: +136 |
Отправлено: 18.02.19 11:23:50 | | | Void Weaver пишет: | причём всё это работает онли в виде .pk3 |
Не только PK3. Мод можно подключать как папку и вообще не создавать ВАД\PK3-подобные.
Т.е. создаешь папку, и ее "внутренности" должны соответствовать формату. Дальше ее подключаешь к движку как любой ВАД или PK3... | |
|
| |
Doomgay1999 - Corporal -
| 96 |
Doom Rate: 2
|
Отправлено: 27.02.19 00:35:22 | | | А можно сделать так чтобы было два саундтрека на один уровень? | |
|
| |
Invisible Warrior = Lance Corporal =
| 180 |
Doom Rate: 1.96 Posts quality: +82 |
Отправлено: 27.02.19 00:43:12 | | | Doomgay1999
зависит от того, какой порт юзаешь и насколько умеешь моддить. На гздуме можно сделать. Но это надо лезть в код.
Еще можно какой-нибудь программой 2 мидюшки слить в одну и тогда будет играться как бы два трека (но один файл) чередуясь. | |
|
| |
Doomgay1999 - Corporal -
| 96 |
Doom Rate: 2
|
Отправлено: 27.02.19 00:50:13 | | | А что за код? | |
|
| |
Invisible Warrior = Lance Corporal =
| 180 |
Doom Rate: 1.96 Posts quality: +82 |
Отправлено: 27.02.19 01:18:48 | | | Doomgay1999
ну, код дума, или конкретно, код внутри каких-нибудь файлов с модами, которые ты потом засунешь внутрь своего .wad или .pk3 файла. Сразу скажу, что лично я это делать пока не умею, и только представляю примерный набор действий.
Да, еще Gzdoom поддерживает мп3 формат музыки. Можно добавлять его. Вот там-то точно будет довольно просто слить два трека в один (перегнать миди в мп3, если очень нужно, тоже не должно быть суперсложно) | |
|
| |
theleo_ua = Colonel =
| 4796 |
Doom Rate: 1.8 Posts quality: +1032 |
|
3 |
1 |
|
|
| |
BigMemka = 1st Lieutenant =
| 2075 |
Doom Rate: 2.98 Posts quality: +361 |
Отправлено: 27.02.19 09:42:02 | | | Doomgay1999 пишет: | А можно сделать так чтобы было два саундтрека на один уровень? |
В zdoom портах пишешь в скрипте:
Script 1 void
{
SetMusic("название песни", 1);
}
В самой карте указываешь в необходимом месте экшен 80 script 1.
При активации данного экшена активируется скрипт 1, т.е. музыка.
https://zdoom.org/wiki/SetMusic |
|
|
1 |
5 |
1 |
|
|
| |
theleo_ua = Colonel =
| 4796 |
Doom Rate: 1.8 Posts quality: +1032 |
Отправлено: 27.02.19 14:06:42 | | | Doomgay1999, а если способ от BigMemka слишком сложный или неудобный, то просто переведи треки в wav/ogg/mp3/flac, и склей несколько треков в один, будет на каждом уровне по 1 файлу, но по несколько треков | |
|
3 |
1 |
|
|
| |
Void Weaver = Captain =
| 2496 |
Doom Rate: 1.82 Posts quality: +808 |
Отправлено: 28.02.19 10:19:52 | | | Есть обычный ЛостСоул с обычным "RenderStyle SoulTrans", Альфа которого в свою очередь определяется значением transsouls CVAR.
Этому соулу выдаётся ряд кастоминвентори итемов в пикапе которых размещена TNT1 A 0 A_FadeTo(0.00,GetCvar(transsouls)/84.0,0). Однако альфа соула снижается не плавно а резко. ЧЯДНТ?
Пробовал получать transsouls через CVARINFO такой строкой: user float my_transsouls = transsouls; но гозза ругается на то что "transsouls" это плохое значение. | |
|
1 |
9 |
1 |
|
|
| |
YURA_111 UAC Sergeant Major
| 768 |
Doom Rate: 1.98 Posts quality: +136 |
|
| |
Void Weaver = Captain =
| 2496 |
Doom Rate: 1.82 Posts quality: +808 |
Отправлено: 28.02.19 21:27:48 | | | Мне нужно менять только альфу, и ТОЛЬКО "снаружи" актора, вне стэйта. И в этом плане СетРендерСтайл только проигрывает ФэйдТу поскольку не может в шаговый сдвиг.
Плюс, повторяю, альфа RenderStyle SoulTrans зависит от transsouls CVAR; поэтому вопрос тот же: как в декоре оперировать этим цваром для плавного сдвига альфы к нулю и обратно к заданному значению?
Добавлено спустя 6 минут 42 секунды:
А нужно это для того чтобы если игрок поменяет в опциях порта альфу соулов, то и алгоритм также бы учитывал изменения диапазона альфы соулов. Т. е. если соулу выставили 25% видимости то алгоритм двигал бы альфу в пределах от 0 до 0.25, а если у соула выставлена 75% видимость то и механизм работал бы в пределах 0-0.75.
Добавлено спустя 7 часов 19 минут 32 секунды:
Ахтыжебныйтынах... | cvar: The cvar to retrieve. This will not work on anything other than server accessible cvars. |
Добавлено спустя 37 минут 54 секунды:
SetResultValue возвращает целые значения, а что надо прописать в скрипте (и строке декора) чтобы ACS_NamedExecuteWithResult возвращала дробные значения? | |
|
1 |
9 |
1 |
|
|
| |