Welcome to U.A.C. [O.S.A.]
login / register
Status: Guest
Архивы форума | iddqd.ru
Wolf 3D
ПравилаПравила ПоискПоиск
18+
Тема для новичков. Вопросы по маппингу/моддингу - любые! Пред.  1, 2, 3 ... 104, 105, 106 ... 350, 351, 352  След.
   Список разделов - Местечко мапперов и моддеров - Тема для новичков. Вопросы по маппингу/моддингу - любые!Ответить
АвторСообщение
+Ku6EPyXOBEPTKA+
- 2nd Lieutenant -
Next rank: = 2nd Lieutenant = after 27 points
1413

Doom Rate: 1.75
Ссылка на пост №2081 Отправлено: 23.10.10 12:31:10
InfernalSky :
скажите как сделать, так чтобы при выстреле в монстра вылетало больше крови


Спавнь отдельные спрайты крови в стейте pain:

InfernalSky :
и ещё, можно ли сделать монстра который действует только в темноте?


А ты просто ставь его в тёмные участки карты и ограничивай блоком монстров его перемещения.
1 1 2
InfernalSky
= Sergeant Major =
Next rank: UAC Sergeant Major after 66 points
614

Doom Rate: 1.87
Ссылка на пост №2082 Отправлено: 23.10.10 13:19:16
+Ku6EPyXOBEPTKA+ :
А ты просто ставь его в тёмные участки карты и ограничивай блоком монстров его перемещения.

я дурак, об этом совсем забыл :o . доперло тогда когда начал монстров ставить

Добавлено спустя 5 минут 19 секунд:

+Ku6EPyXOBEPTKA+
но всё равно спасибо :)
+Ku6EPyXOBEPTKA+
- 2nd Lieutenant -
Next rank: = 2nd Lieutenant = after 27 points
1413

Doom Rate: 1.75
Ссылка на пост №2083 Отправлено: 25.10.10 01:40:55
Что-то не удаётся привязать ACS скрипт... при воспроизведении пишет, что скрипт неизвестный, хотя он существует... вобщем что такое - я не знаю. Использую acs_execute.
Скажите, как правильно привязать acs в стейте?

Если есть другой способ сделать вспышку белого экрана при разрыве снаряда, пишите...
1 1 2
Hutt
- Sergeant Major -
Next rank: = Sergeant Major = after 27 points
573

Doom Rate: 1.33
Ссылка на пост №2084 Отправлено: 25.10.10 19:43:31
Простите дурака в предпоследний раз!
Триста лет не занимался мостами, сейчас взялся - ничего не получается, хотя раньше все было нормально. Подскажите, что я делаю не так?

1. создаю внешний сек4тор


Тфу, я уж думал это я свихнулся, а это глюк редактора. Глюк тем не менее происходит с неприятной регулярностью: почему - то внутренняя сторона линий невидимого сектора приписывается внешнему сектору (я естественно перевожу номер обоих сторон на номер внутренней - и получается черт знает что). Редактор Doom Builder 2.0.1.1157. Отчего такое может происходить?
BeeWen
- Colonel -
Next rank: = Colonel = after 164 points
4276

Doom Rate: 1.64
Ссылка на пост №2085 Отправлено: 25.10.10 19:57:01
Hutt :
Отчего такое может происходить?

Вполне может от неотделенного сектора такое быть. Подвигай вертексы, может где сдублированный с другим сектором найдешь.
1 1 1
Hutt
- Sergeant Major -
Next rank: = Sergeant Major = after 27 points
573

Doom Rate: 1.33
Ссылка на пост №2086 Отправлено: 25.10.10 21:44:20
BeeWen [B0S]
Да там все вроде квадратное, негде ему сныкаться. Так, вообще, это поправимо, но следить за каждой доской моста - изрядная морока.
bed.intruder]ASTS[
Chief Petty Officer
Next rank: - Warrant Officer - after 34 points
1006

Doom Rate: 1.67
Ссылка на пост №2087 Отправлено: 25.10.10 22:24:18
Hutt
Скажу стандартно - попробуй последнюю версию (2.1.0.1356). По крайней мере, в ней ничего подобного не замечал.
Правда, было похожее, когда я делал лестницу, и для быстроты копировал ступени, и вставлял их (слева и справа были "сплошные" стены (impassible) ).
1 1 1
+Ku6EPyXOBEPTKA+
- 2nd Lieutenant -
Next rank: = 2nd Lieutenant = after 27 points
1413

Doom Rate: 1.75
Ссылка на пост №2088 Отправлено: 26.10.10 13:14:21
Достала ошибка P_StartScript: unknown script "номер скрипта". Вобщем прикол в том, что у меня не работает ACS_Execute. Точнее работает неправильно. Я попытался найти как правильно сделать, но так и не удалось посмотреть нужный ход работы... В simple decorate про эту команду говорят вскользь... Нашёл на форуме (т.е. тут) подобную тему, но там не совсем то, что мне нужно... Надо мне сделать так, чтобы скрипт вызывался из стейта оружия... Объясните пожалуйста, что и как нужно сделать по пунктам.
1 1 2
Hutt
- Sergeant Major -
Next rank: = Sergeant Major = after 27 points
573

Doom Rate: 1.33
Ссылка на пост №2089 Отправлено: 26.10.10 15:25:01
bed.intruder[MOD]
Да, было и такое. Спасибо.
Guest
- 2nd Lieutenant -
Next rank: = 2nd Lieutenant = after 84 points
1356

Doom Rate: 2.77
Ссылка на пост №2090 Отправлено: 26.10.10 18:46:50
+Ku6EPyXOBEPTKA+ :
Что-то не удаётся привязать ACS скрипт... при воспроизведении пишет, что скрипт неизвестный, хотя он существует... вобщем что такое - я не знаю. Использую acs_execute.

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

Между маркерами A_Start и A_End помещается откомпилированный скрипт, название lump'а со скриптом - это как раз имя "библиотеки" (произвольное). А lump LOADACS содержит имя той самой библиотеки, что подгружается. Понятно, что сам скрипт должен быть определен как библиотека - в нашем случае первая строчка неоткомпилированного скрипта
#library "DIAZ"
3 1
Azamael [B0S]
- Sergeant Major -
Next rank: = Sergeant Major = after 57 points
543

Doom Rate: 2.46
Ссылка на пост №2091 Отправлено: 27.10.10 14:40:20
Нужно чтобы после смерти монстр через некоторое время опять ожывал (или в том же месте новый такойже появлялся). Если в стейте Death прописать goto look то монстр ожывет но перестанет умирать (из-за того что хелсы на нуле я так понимаю). Если прописать спавн самого себя через spawnitem то ничерта не выходит, если зделать спавн дополнительного обекта, а уже он спавнит нового монстра, то тоже ничего не выходит.
2
+Ku6EPyXOBEPTKA+
- 2nd Lieutenant -
Next rank: = 2nd Lieutenant = after 27 points
1413

Doom Rate: 1.75
Ссылка на пост №2092 Отправлено: 27.10.10 18:14:23
Guest

А какой тип присвоить скрипту компилированному, чтобы execute работал из стейта оружия?... а то что-то не получается
1 1 2
bed.intruder]ASTS[
Chief Petty Officer
Next rank: - Warrant Officer - after 34 points
1006

Doom Rate: 1.67
Ссылка на пост №2093 Отправлено: 27.10.10 18:37:08
+Ku6EPyXOBEPTKA+
script 1 (void), например. void значит, что параметры не требуются. Но их можно добавить: script 1 (int a, string b) - параметры перечисляются через запятую; сначала тип, потом название параметра. int значит, что параметр - это число, string - что это строка (текст).
1 1 1
+Ku6EPyXOBEPTKA+
- 2nd Lieutenant -
Next rank: = 2nd Lieutenant = after 27 points
1413

Doom Rate: 1.75
Ссылка на пост №2094 Отправлено: 27.10.10 19:12:04
bed.intruder[MOD] :
script 1 (void), например. void значит, что параметры не требуются. Но их можно добавить: script 1 (int a, string b) - параметры перечисляются через запятую; сначала тип, потом название параметра. int значит, что параметр - это число, string - что это строка (текст).


Странно... я через (void) делал, а скрипт не срабатывал... но зато исчезла ошибка неизвестного скрипта. Вобщем я ещё покручу.

P.S. Всем спасибо
1 1 2
bed.intruder]ASTS[
Chief Petty Officer
Next rank: - Warrant Officer - after 34 points
1006

Doom Rate: 1.67
Ссылка на пост №2095 Отправлено: 27.10.10 21:05:19
+Ku6EPyXOBEPTKA+
Т.е. не срабатывает? Ошибку не пишет?
Если не секрет, то напиши код скрипта (можно и в личку) и актора, вызывающего скрипт.
1 1 1
Nil
= Major =
Next rank: Lieutenant Colonel after 312 points
2978

Doom Rate: 2.34
Ссылка на пост №2096 Отправлено: 27.10.10 22:34:28
В ACS есть ровно один тип - int. Также существуют массивы int
string - это ещё одно название int, в string хранится НОМЕР строки в списке строк.
fixed - это тот-же int, но там по идее должно содержатся число с фиксированной точкой.
однако никто не запрещает везде использовать int или хранить номера строк в fixed
Ну и небольшой раздел "хозяйке на заметку" :
поскольку обычные строки в ACS изменять нельзя, то можно работать с массивами символов. такой массив выводится с классификатором a :


int mas [6] = {'H','e','l','l','o',0} //6 символов
script 1 (void)
{
  print(a:mas); // будет выведено : Hello
  mas[5] = ' ';
  print(a:mas,s:"on the Earth"); // будет выведено : Hell on the Earth
}

Для вывода важно, чтобы массив символов кончался нулём. очень удобно генерировать массив из константных строк :

int  printstr[255];
function void ToMas(int str)
{
  len = strlen(str);
  for (int i=0;i     printstr[i] = getchar(str,i);
  ptintstr[i] = 0;
}

script 1 (void)
{
  ToMas("Test1");
  print(a:printstr); //напечатает : Test1
  printstr[4] = '2';
  print(a:printstr); //напечатает : Test2
  ToMas("Long string \chwith \crdifferent \cdcolors");
  print(a:printstr); //напечатает разноцветный текст.
}

Где это можно использовать? только в сложных библиотеках с относительно "общим" функционалом. Я использую это для того, чтобы печатать тексты книг с автоматическим переносом по строкам. Ещё можно парсить такисе строки, заменяя в них выражения типа %money на значения какой-нибудь глобальной переменной. Кстати, тут необходима осторожность - если скрипт работает слишком долго, zdoom его просто прибьёт. Выход - использовать delay() где-нибудь внутри длинных циклов (больше 100 итераций)
1 2 1
Player701
- Master Corporal -
Next rank: = Master Corporal = after 38 points
202

Doom Rate: 1.99
Ссылка на пост №2097 Отправлено: 28.10.10 11:35:16
Azamael [B0S]
Thing_Raise. Можно применять и в скриптах, и в декорейте.
1
cybermind
- Warrant Officer -
Next rank: = Warrant Officer = after 63 points
1077

Doom Rate: 1.87
Ссылка на пост №2098 Отправлено: 28.10.10 19:29:53
Как можно увеличить дальность наведения самонаводящихся ракет у игрока? У меня есть оружие, которое выпускает пафф-монстр пулей, и которое затем сразу же выпускает самонаводную ракету, которая по идее должна наводиться на этот пафф. Но есть проблема - ракета не наводится на пафф, если он находится слишком далеко от игрока. Флаг SMF_LOOK не подходит, ракета наводится на ближайшую цель. Делать всем +DONTSEEK тоже резона нет. Есть ли способ решить проблему?
1
InfernalSky
= Sergeant Major =
Next rank: UAC Sergeant Major after 66 points
614

Doom Rate: 1.87
Ссылка на пост №2099 Отправлено: 29.10.10 17:15:14
у мя вопрос.
сделал комнату , натянул текстуры, а там все текстуры меняются, прям при игре
вот скрины:



bed.intruder]ASTS[
Chief Petty Officer
Next rank: - Warrant Officer - after 34 points
1006

Doom Rate: 1.67
Ссылка на пост №2100 Отправлено: 29.10.10 19:53:32
Позволю себе небольшой оффтоп :)

Недавно мне понадобилась функция, которая преобразует строку в число. Но такой функции не оказалось. Тогда я стал писать свою.
Функция будет далее, но сначала немного теории.
В сообщении выше Nil указал, что строка есть последовательность символов. Символы записываются в виде '*' (* - это символ), и представляют число - ACSII-код символа. Так как разница между символами '0' и '9' равна девяти, то для преобразования символа в цифру можно использовать следующее: n = c - '0' (c - символ, n - число). Получить символ из строки можно с помощью функции GetChar.
Теперь немного математики. Возьмем, скажем, последовательность цифр "3654". Число 3654 представляет сумму 3*10^3 + 6*10^2 + 5*10^1 + 4*10^0 (x^n - это возведение числа x в степень n (в ACS он означает несколько другое), любое_число^0 = 1). Вспоминаем разряды из начальных классов :) Здесь есть некая закономерность - разряды идут от числа, равному длине последовательности, уменьшенной на единицу, до нуля. Зная это, можно вывести формулу: sum = a*10^n-1 + b*10^n-2 + ... + x*10^n-n.
А вот и сама функция. Так как в ACS нет оператора возведения в степень, то пришлось взять готовую с вики.

С тегом Code траблы, поэтому код можете найти здесь: http://bed-intruder.narod.ru/stringnum.txt
Также там есть функция извлечения цифры из строки - DigitFromString.

Теперь некоторые комментарии к коду:
Если в числе попадается посторонний символ, будь то буква, знак препинания и прочее, то функция возвращает -1.
r-- значит, что сначала число r используется, а потом уменьшится на единицу. Если r-- заменить на --r, то будет наоборот.
Вот и все :) Помните, если нет нужной функции, то всегда можно сделать свою.
1 1 1
Страница 105 из 352Перейти наверх Пред.  1, 2, 3 ... 104, 105, 106 ... 350, 351, 352  След.
   Список разделов - Местечко мапперов и моддеров - Тема для новичков. Вопросы по маппингу/моддингу - любые!