Welcome to U.A.C. [O.S.A.]
login / register
Status: Guest
Архивы форума | iddqd.ru
Wolf 3D
ПравилаПравила ПоискПоиск
18+
Тема для новичков. Вопросы по маппингу/моддингу - любые! Пред.  1, 2, 3 ... 332, 333, 334 ... 350, 351, 352  След.
   Список разделов - Местечко мапперов и моддеров - Тема для новичков. Вопросы по маппингу/моддингу - любые!Ответить
АвторСообщение
ZZYZX
UAC Sergeant Major
Next rank: Chief Petty Officer after 29 points
821

Doom Rate: 1.38
Ссылка на пост №6641 Отправлено: 10.04.15 17:53:29
VladGuardian :
Работает, без этих заумных FixedMul.

Даааааа? А ничего что это 0.25*35 это 16384*35 и что это любимая ошибка начинающего ацсника, когда ожидаешь того что ожидаешь, а выходит НЁХ?
Пока лично не увижу, не поверю )
1
cybermind
- Warrant Officer -
Next rank: = Warrant Officer = after 63 points
1077

Doom Rate: 1.87
Ссылка на пост №6642 Отправлено: 10.04.15 18:11:20
ZZYZX
Примени к результату битовый сдвиг вправо на 16 (>> 16 то бишь) и получишь результат в "нормальных" целых числах.
1
VladGuardian
= Major =
Next rank: Lieutenant Colonel after 196 points
3094

Doom Rate: 1.17
Ссылка на пост №6643 Отправлено: 10.04.15 19:56:21
ZZYZX :
Даааааа? А ничего что это 0.25*35 это 16384*35 и что это любимая ошибка начинающего ацсника

Виноват, дружище, действительно еще вправо на 16 бит сдвигать надо:
// задержка на полторы секунды
delay((1.5*35) >> 16);

Давненько программировал на ACS, уже подзабылось.
Но программировал много разного, "начинающим" уже не назовешь.
1 7 13
ZZYZX
UAC Sergeant Major
Next rank: Chief Petty Officer after 29 points
821

Doom Rate: 1.38
Ссылка на пост №6644 Отправлено: 10.04.15 22:41:29
VladGuardian :
Но программировал много разного, "начинающим" уже не назовешь.

Да я не тебя лично имел в виду, а то что я точно не ошибаюсь на предмет того что даёт 0.25*35, потому что это крайне типичный баг.
А вообще такой способ конечно работает, но там будет ограничение на размеры перемножаемых чисел, в то время как FixedMul кастует в инт64.
static __forceinline SDWORD MulScale16 (SDWORD a, SDWORD b) { return (SDWORD)(((SQWORD)a * b) >> 16); }
1
Arkady Yaborev
Marine 1st class
Next rank: - UAC Gunner - after 6 points
34

Doom Rate: 2
Ссылка на пост №6645 Отправлено: 11.04.15 08:33:39
Спасибо всем, кто пытался мне помочь в вопросе про плавный переход музыки. Но я оставил все как есть. Во-первых, для меня все это пока сложновато. Во-вторых, пользуюсь GZDoom Builder версия 1.14 и он ругается, когда пытаюсь в скрипте прописать PlaySound или SoundVolum. Говорит, что они не определены. В общем бросил я эту проблему))).
TesaQ
= Lance Corporal =
Next rank: - Master Corporal - after 22 points
178

Doom Rate: 1.87
Ссылка на пост №6646 Отправлено: 11.04.15 12:55:21
Через какую программу лучше всего добавлять спрайты?к примеру, анимированная стена.И еще, как добавить текстуры через SLADE?Импортировал в .png формате, перевел на думовский, запускаю - текстурок то нет
YURA_111
UAC Sergeant Major
Next rank: UAC Sergeant Major after 24 points
736

Doom Rate: 2.17
Ссылка на пост №6647 Отправлено: 11.04.15 19:44:40
TesaQ

Slade3 вне конкуренции...

Оффсеты проверь
LEX SAFONOV
UAC Sergeant Major
Next rank: UAC Sergeant Major after 75 points
685

Doom Rate: 1.49
Ссылка на пост №6648 Отправлено: 12.04.15 07:30:20
Есть такой вопрос - есть монстр, у него нет pain кадров, но pain-звук есть. Нужно чтобы он воспроизводил звук боли при попадании, но при этом в pain стейт не переходил(т.е. чтобы анимации не прерывались). Возможно ли такое замутить?
YURA_111
UAC Sergeant Major
Next rank: UAC Sergeant Major after 24 points
736

Doom Rate: 2.17
Ссылка на пост №6649 Отправлено: 12.04.15 11:01:43
LEX SAFONOV

Можно! Создай новый тип крови именно для этого монстра. И поставь звук нужный тебе прямо в эту кровь. Соответственно при попадании в монстра, будет появляться кровь и вместе с ней и нужный тебе звук...
The SAL
- Corporal -
Next rank: = Corporal = after 10 points
90

Doom Rate: 2
Ссылка на пост №6650 Отправлено: 12.04.15 11:27:35
Как сделать в Doom in Hexen так, чтобы когда игрок проходил через линию появлялся монстр? Скриптом, естественно. Что-то вроде ThingFadeOut, но я не помню точно. Видел такую штуку на MAP01 Симплиситей. Очень охота такое в свою мапу запихать. :ha:
P.S.: Кстати, появлялся монстрюга еще и с характерным звуком из Doom64
+Ku6EPyXOBEPTKA+
- 2nd Lieutenant -
Next rank: = 2nd Lieutenant = after 27 points
1413

Doom Rate: 1.75
Ссылка на пост №6651 Отправлено: 12.04.15 11:45:56
The SAL :
Как сделать в Doom in Hexen так, чтобы когда игрок проходил через линию появлялся монстр? Скриптом, естественно.


Это когда хеллкнайт спавниться в комнате перед выходом? Так это элементарный Thing_Spawn (можно и через SpawnSpot). Звук свой можно сделать обычной заменой существующий звука телепорта.
1 1 2
The SAL
- Corporal -
Next rank: = Corporal = after 10 points
90

Doom Rate: 2
Ссылка на пост №6652 Отправлено: 12.04.15 13:01:09
+Ku6EPyXOBEPTKA+ :
Это когда хеллкнайт спавниться в комнате перед выходом?

Не то. Я говорю про момент когда хеллнайт ВНЕЗАПНО выпрыгивает на игрока перед тем, как он возьмет синий ключ. В ваде в скриптах это дело записано как Thing_FadeOut, но как этим пользоваться я без понятия, вот и спрашиваю.
LEX SAFONOV
UAC Sergeant Major
Next rank: UAC Sergeant Major after 75 points
685

Doom Rate: 1.49
Ссылка на пост №6653 Отправлено: 12.04.15 15:05:15
Есть вопрос по использованию функции CheckActorFloorTexture.
Сделал вот такой простенький скрипт, так сказать проверить первым делом на игроке:
Script 909 (void)
{
if(CheckActorFloorTexture(0, "FWATER1"))
{
Print(s: "Yes, it's work");
}
else
{
Print(s: "No, it's don't work");
}
}

Иду на текстуру воды, ввожу puke 909 - выдаёт всё время ложный результат, в чём может быть дело?
Archi]ASTS[
UAC General
Next rank: Unavailable after 0 points
12719

Doom Rate: 1.87
Ссылка на пост №6654 Отправлено: 12.04.15 17:29:48
Наверное, дело в том, что это анимированная текстура.
2 1 1
Arkady Yaborev
Marine 1st class
Next rank: - UAC Gunner - after 6 points
34

Doom Rate: 2
Ссылка на пост №6655 Отправлено: 12.04.15 17:48:45
Нет, дело не в том, что текстура анимированная. Я сейчас как раз заканчиваю карту, где это применяется. Не на игроке правда, а на монстре. У меня если монстр с тегом 67 погибает на воде, то открывается проход. Скрипт такой:

script 5 (void)
{
if(CheckActorFloorTexture(67,"fwater1"))
Floor_LowerByValue(71,32,192);
}
Работает.

Добавлено спустя 23 минуты 41 секунду:

2 Lex Safonov

Сейчас попробовал ваш скрипт на тестовой карте. Хм... Все работает.
LEX SAFONOV
UAC Sergeant Major
Next rank: UAC Sergeant Major after 75 points
685

Doom Rate: 1.49
Ссылка на пост №6656 Отправлено: 13.04.15 10:13:02
Archi]ASTS[ :
Наверное, дело в том, что это анимированная текстура.

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

Вот такой скрипт сделал
Script 909 (int IsWater)
{
int FloorNumber = 0;
While(FloorNumber < 26)
{
if(CheckActorFloorTexture(0, FloorTextures[FloorNumber]))
{
IsWater = 1;
SetResultValue(IsWater);
terminate;
}
else
{
FloorNumber += 1;
}
Delay(1);
}
SetResultValue(IsWater);
}

Скрипт должен вернуть результирующую IsWater, если 1, то под актором вода(или что то жидкое короче).

Вот такой декорейт:
Actor SewerBugDoomSpawner
{
States
{
Spawn:
TNT1 A 1
//TNT1 A 1 A_Jump(256, "Spawn1", "Spawn2", "Spawn3") //Закомментировал, пока продумываю спавнер.
TNT1 A 1 A_JumpIf(ACS_ExecuteWithResult(909,0,0,0) == 1, "IsWater")
Loop
Spawn1:
TNT1 A 0 A_SpawnItemEx("EmpireOfficer", 0, 0, floorz-z, 0, 0, 0, 0, SXF_NOCHECKPOSITION)
Stop
Spawn2:
TNT1 A 0 A_SpawnItemEx("EmpireCommando", 0, 0, floorz-z, 0, 0, 0, 0, SXF_NOCHECKPOSITION)
Stop
Spawn3:
TNT1 A 0 A_SpawnItemEx("EmpireInfantryman", 0, 0, floorz-z, 0, 0, 0, 0, SXF_NOCHECKPOSITION)
Stop
IsWater:
TNT1 A 0 A_SpawnItemEx("SewerBug", 0, 0, floorz-z, 0, 0, 0, 0, SXF_NOCHECKPOSITION)
Stop
}
}

По логике вещей актор ничего не должен спавнить, если под ним нет текстуры воды(т.к. там стоит Loop, то он будет просто циклично работать), но теперь почему то срабатывает всё время положительный результат, как будто ACS_ExecuteWithResult(909,0,0,0) всё время выдаёт число 1. Парни где у меня может быть косяк?)
c4tnt
= 1st Lieutenant =
Next rank: - Captain - after 211 points
1879

Doom Rate: 1.92
Ссылка на пост №6657 Отправлено: 13.04.15 15:35:02
Лучше бы убрать оттуда Delay наверное. Плюс не очень понятны манёвры с IsWater
1 1
alekv
= 2nd Lieutenant =
Next rank: - 1st Lieutenant - after 184 points
1456

Doom Rate: 1.68
Ссылка на пост №6658 Отправлено: 13.04.15 16:53:22
Я не проверял, но скорее всего проблема в SetResultValue(IsWater);
У тебя во всех случаях одно и то же значение передает тоесть 1, попробуй вне цыкла SetResultValue(0);
И я не понял зачем вообще цыкл?

Добавлено спустя 22 минуты 37 секунд:

The SAL :
Не то. Я говорю про момент когда хеллнайт ВНЕЗАПНО выпрыгивает на игрока перед тем, как он возьмет синий ключ. В ваде в скриптах это дело записано как Thing_FadeOut, но как этим пользоваться я без понятия, вот и спрашиваю.

Можешь показать кусок кода... я про Thing_FadeOut в вики ничего не нашел. В моде монст как бы выходит из тени чтоли?
Если да, то знаю 1 способ минимум.., но тогда надо делать отдельный стейт в декорейте, как в acs затенить или вывести из тени thing без декорейта незнаю.
1
+Ku6EPyXOBEPTKA+
- 2nd Lieutenant -
Next rank: = 2nd Lieutenant = after 27 points
1413

Doom Rate: 1.75
Ссылка на пост №6659 Отправлено: 13.04.15 18:03:31
alekv :
как в acs затенить или вывести из тени thing без декорейта незнаю.

Возможно через SetActorProperty
1 1 2
alekv
= 2nd Lieutenant =
Next rank: - 1st Lieutenant - after 184 points
1456

Doom Rate: 1.68
Ссылка на пост №6660 Отправлено: 13.04.15 18:17:10
+Ku6EPyXOBEPTKA+ :
Возможно через SetActorProperty

Точно, спасибо, постоянно забываю про ActorProperty. Так еще проще, даже стейты делать не надо =)
1
Страница 333 из 352Перейти наверх Пред.  1, 2, 3 ... 332, 333, 334 ... 350, 351, 352  След.
   Список разделов - Местечко мапперов и моддеров - Тема для новичков. Вопросы по маппингу/моддингу - любые!