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

Doom Rate: 1.98

Posts quality: +128
Ссылка на пост №701 Отправлено: 06.04.21 11:59:17
ZZYZX пишет:
while updating the total monster count of the map accordingly


....Sets or clears the FRIENDLY flag of the calling actor while updating the total monster count of the map accordingly. If the calling actor's health is 0 or below, the flag is merely changed, while the total monster count remains untouched......

Это работает и сейчас через A_changeflag
JSO x
UAC Sergeant Major
Next rank: UAC Sergeant Major after 70 points
690

Doom Rate: 2.27

Posts quality: +291
Ссылка на пост №702 Отправлено: 06.04.21 21:43:22
Чисто обёртка -- похоже, просто чуть более безопасная.


Здесь есть исходный её код. Вызывает нативную CountAsKill(), код которой находится тут.

Разворачиваем обратным ходом. Третья ссылка:
// Возвращает "true", только если актор учитывается в счётчике монстров и не является "другом".
bool CountsAsKill() const {
    return (flags & MF_COUNTKILL) && !(flags & MF_FRIENDLY);
}

Вторая ссылка -- вызов нативной функции (на ум пришло сравнение «инверсия "extern"-кейворда»), то есть её можно пропустить, делает она всё равно ровно то же самое.

Первая ссылка:
void A_SetFriendly (bool set) {
    // Если актор ДО преобразования жив и является учитываемым при подсчёте врагом, то временно исключаем его:
    if (CountsAsKill() && health > 0)
        level.total_monsters--;

    // Устанавливаем/снимаем сам флаг:
    bFriendly = set;

    // Если актор ПОСЛЕ преобразования жив и является учитываемым при подсчёте врагом, то вставляем его в общее число врагов:
    if (CountsAsKill() && health > 0)
        level.total_monsters++;
}


Добавлено спустя 1 день 15 часов 20 минут 54 секунды:

ADD: нашёл обычную обработку флагов, 58 строк, вызывающих отдельные функции распознавания флага по переданной строке, нахождения этого флага среди всех, потенциального отлинковывания/отсоединения от игрового мира, изменения флага и потенциального прилинковывания актора обратно к миру. Зато универсальная.

Так что "A_SetFriendly( bool set )" -- элементарно огромное ускорение доступа к изменению флага.

Рейтинг сообщения: +1, отметил(и): YURA_111
1 5
MaStErDommind
= UAC Gunner =
Next rank: - Corporal - after 18 points
62

Doom Rate: 2

Posts quality: +2
Ссылка на пост №703 Отправлено: 08.04.21 17:31:10
Заменил название, при запуске пишет, что карта MAP01 не найдена.
ZZYZX
- UAC Commissar -
Next rank: = UAC Commissar = after 192 pointsМодератор форума
6108

Doom Rate: 1.69

Posts quality: +1507
Ссылка на пост №704 Отправлено: 08.04.21 20:41:39
Так нижний MAP01 убери.
2 2 1
MaStErDommind
= UAC Gunner =
Next rank: - Corporal - after 18 points
62

Doom Rate: 2

Posts quality: +2
Ссылка на пост №705 Отправлено: 08.04.21 21:18:47
Если уберу, название останется прежним, а в zdoom.pk3 не изменяется.
Димультра
Recruit
Next rank: Marine after 2 points
18

Doom Rate: 2

Posts quality: +4
Ссылка на пост №706 Отправлено: 21.04.21 16:49:49
Здравствуйте, уважаемые члены сообщества Doom Power!
Я работаю над WAD на GZDOOM при помощи GZDoom builder-а, используя систему сценариев (ACS) и диалогов (Srife).
Столкнулся со следующим препятствием. Скажите, пожалуйста, возможно ли вызывать Named-скрипты из Conversation? Понятно что для вызова сценария с цифровом название нужно, например, написать так:
Special = 80;
Arg0 = 1;
Arg1 = 1;

А что надо сделать для того, чтобы вызвать именованный скрипт?
Arg0 = “AnyScript”;
— Такой вариант не сработает.
Буду благодарен помощь — Дмитрий.
MaStErDommind
= UAC Gunner =
Next rank: - Corporal - after 18 points
62

Doom Rate: 2

Posts quality: +2
Ссылка на пост №707 Отправлено: 22.04.21 12:42:05
Объединил в slade карты с ресурсами в мегавад. При завершении карты переходит в концовку doom2(на фоне icon of sin и все монстры по порядку с возможностью уничтожения на любую клавишу), хотя так быть не должно, возможно это из-за записи в MAPINFO:

(map MAP01 "engineering compartments"
{
sky1 = "SKY1"
music = "map1"
}
)?

До этого в mapinfo также была строчка levelnum = - с соответствующим номером карты, но и с ней такая же ситуация была.
YURA_111
UAC Sergeant Major
Next rank: UAC Sergeant Major after 36 points
724

Doom Rate: 1.98

Posts quality: +128
Ссылка на пост №708 Отправлено: 22.04.21 13:15:12
MaStErDommind пишет:
При завершении карты переходит в концовку doom2


Отсутствует подобная строчка:
next = "MAP02" (или секретнекст)
MaStErDommind
= UAC Gunner =
Next rank: - Corporal - after 18 points
62

Doom Rate: 2

Posts quality: +2
Ссылка на пост №709 Отправлено: 22.04.21 14:11:00
Под Z/Gz портами вад работает, включая собственную музыку и названия карт. Пробовал под doomsday(jdoom), подключил в snowberry в разделе pwads, музыка в меню отсутствует(была заменена), в картах - стандартная музыка и названия карт doom2.

Выходит, jdoom не понимает записи, сделанной в slade в mapinfo?
Кисель
Marine
Next rank: Marine 1st class after 6 points
24

Doom Rate: 2

Ссылка на пост №710 Отправлено: 23.04.21 15:22:21
Li$TeR пишет:
Я так подозреваю, что у тебя направление линии, котоаря отвечает за телепорт-просрана была)0
Да не. Я уж не помню че было, но точно не это
Кисель
Marine
Next rank: Marine 1st class after 6 points
24

Doom Rate: 2

Ссылка на пост №711 Отправлено: 30.04.21 23:59:01
Спустя кучу времени опять обращаюсь с проблемой Hexen вадника. Внезапно на одном из уровней скрипты перестали работать. Типо, на первом уровне я делал скрипт с принтом текста на экран. Повторил буквально те же действия и текст, не работает. Выдает ошибку Unable to start the compiler (zdoom_acc). Win32Exception: Не удается найти указанный файл. Кто нибудь может подсказать на что он ругается в этот раз?
ChaingunPredator
- 2nd Lieutenant -
Next rank: = 2nd Lieutenant = after 146 pointsМодератор форума
1294

Doom Rate: 2.49

Posts quality: +104
Ссылка на пост №712 Отправлено: 01.05.21 16:10:22
MaStErDommind пишет:
Выходит, jdoom не понимает записи, сделанной в slade в mapinfo?

Маловероятно. MAPINFO будет однозначно работать в семействе портов Zdoom.
1 2 5
Страница 36 из 36Перейти наверх Пред.  1, 2, 3 ... 34, 35, 36
   Список разделов - Местечко мапперов и моддеров - Тема для новичков. Вопросы по маппингу/моддингу - любые!-2