Автор | Сообщение |
Shadowman UAC General
| 8391 |
Doom Rate: 2.08 Posts quality: +1995 |
Отправлено: 20.12.07 15:45:07 | | | Кстати, насчет спавнов. Если спавнить на одних и тех же мап спотах, то надо, чтобы отспавненные ранее монстры сошли со своих точек, в противном случае - если они останутся стоять там - дальнейший спавн не будет проходить, так как по умолчанию монстры не могут телефрагить друг друга. | |
|
1 |
7 |
2 |
|
|
| |
Nil = 2nd Lieutenant =
| 1513 |
Doom Rate: 2.31 Posts quality: +64 |
Отправлено: 20.12.07 16:40:50 | | | Shadowman, можно не на слопах, а просто spawn. и вычислять как Xточки.0 + random(-300,300) << 8 Yточки.0 + random(-300,300) << 8 только циферки, понятно, другие | |
|
1 |
2 |
1 |
|
|
| |
nprotect - 2nd Lieutenant -
| 1343 |
Doom Rate: 2.45
|
Отправлено: 20.12.07 17:47:07 | | | Nil: | Shadowman, можно не на слопах |
каких слопах? слопы тут ни при чем вообще, Shadowman писал об объектах Map Spot. не надо путать | |
|
1 |
2 |
1 |
|
|
| |
Nil = 2nd Lieutenant =
| 1513 |
Doom Rate: 2.31 Posts quality: +64 |
Отправлено: 20.12.07 18:02:33 | | | ну ошибся в 1 букву, давно их не ставил... | |
|
1 |
2 |
1 |
|
|
| |
Shadowman UAC General
| 8391 |
Doom Rate: 2.08 Posts quality: +1995 |
Отправлено: 20.12.07 20:09:54 | | | Как сделать расширенное условие для открытие двери после смерти монстров НЕСКОЛЬКИХ ВИДОВ? Во всех примерах, что выше, там только для 1 вида тварей было, потому что в thingCount нужно указывать тип монстра, а не только его тид.
ЗЫ. Вводить счетчик переменной и отправлять на скрипт открывания двери когда ее значение достигнет нужной отметки (то есть количества видов убитых монстров) что-то долго... | |
|
1 |
7 |
2 |
|
|
| |
Nil = 2nd Lieutenant =
| 1513 |
Doom Rate: 2.31 Posts quality: +64 |
Отправлено: 20.12.07 20:43:20 | | | Shadowman, не указывай тип монстра : bool killall = thingcount("",10) ==10; //в killall хрантся, убили ли мы 10 монстров с тагом 10. тип монстра роли не играет. | |
|
1 |
2 |
1 |
|
|
| |
Shadowman UAC General
| 8391 |
Doom Rate: 2.08 Posts quality: +1995 |
Отправлено: 20.12.07 21:37:17 | | | Nil Спасибо, хоть я уже и сделал через 3 скрипта, но на будущее пригодится.
Nil: | bool killall = thingcount("",10) ==10; |
Это переменная? Ее нужно там где переменные писать? или как? Можно простенький завершенный примерчик все же? | |
|
1 |
7 |
2 |
|
|
| |
nprotect - 2nd Lieutenant -
| 1343 |
Doom Rate: 2.45
|
Отправлено: 20.12.07 21:44:26 | | | Nil: | bool killall = thingcount("",10) ==10; |
а такое вообще будет работать в ACS? в Си работало бы, а вот насчет скриптов непонятно и потом, оно же должно проверять постоянно, а в этом примере переменная только объявляется. правильнее было бы наверно так:
bool killall;
script 1 open {... ляляля ...
...
killall = thingcount("",10)==10;
delay(...);
restart;
} | |
|
1 |
2 |
1 |
|
|
| |
Nil = 2nd Lieutenant =
| 1513 |
Doom Rate: 2.31 Posts quality: +64 |
Отправлено: 20.12.07 22:18:50 | | | nprotect, не обязательно проверять постоянно. Это даже нежелательно. Просто повесте ACS_Execute в качестве экшена у монстра и он вызовется после смерти. Я просто привёл пример, Shadowman же спрашивал не о переменных, а о thingcount() | |
|
1 |
2 |
1 |
|
|
| |
nprotect - 2nd Lieutenant -
| 1343 |
Doom Rate: 2.45
|
Отправлено: 20.12.07 22:42:29 | | | Nil: | Просто повесте ACS_Execute в качестве экшена у монстра и он вызовется после смерти. |
да, это пожалуй оптимальный вариант *взял на заметку* | |
|
1 |
2 |
1 |
|
|
| |
Shadowman UAC General
| 8391 |
Doom Rate: 2.08 Posts quality: +1995 |
Отправлено: 20.12.07 23:00:57 | | | Nil: | Просто повесте ACS_Execute в качестве экшена у монстра и он вызовется после смерти. |
Не катит. Мне ж не нужно чтобы после смерти каждого демона вызывался какой-то скрипт. Это только для особых монстров годится, для боссов например. | |
|
1 |
7 |
2 |
|
|
| |
nprotect - 2nd Lieutenant -
| 1343 |
Doom Rate: 2.45
|
Отправлено: 21.12.07 08:54:13 | | | Shadowman да нормально же, это скрипт проверки просто будет, и не надо загружать проц и проверять каждую секунду | |
|
1 |
2 |
1 |
|
|
| |
Nil = 2nd Lieutenant =
| 1513 |
Doom Rate: 2.31 Posts quality: +64 |
Отправлено: 21.12.07 14:21:24 | | | Может, создать тему "Мастер класс скриптинга" и писать туда большие статьи со скриншотами и вадами-примерами? а прозьбы создать статью "по мотивам" в эту тему постить? Я действительно готов писать статьи | |
|
1 |
2 |
1 |
|
|
| |
Shadowman UAC General
| 8391 |
Doom Rate: 2.08 Posts quality: +1995 |
Отправлено: 21.12.07 14:32:15 | | | Nil: | Может, создать тему "Мастер класс скриптинга" |
Давай пока ограничимся этой темой про скрипты. Сюда пиши и статьи, и примеры А плодить кучу тем по одним скриптам ни к чему, тем более понятие "мастер-класс" скриптинга - весьма относительное. Для кого-то может скрипт подсчета отспавненных зверюг - тоже мастер-класс, а кому-то это раз плюнуть:) Или ты хочешь привесить скрипты с библиотеками ACS? Вот библиотеки - это действительно Мастер-класс! Еще не приходилось с ними работать и я толком не понимаю, как это все там делается... | |
|
1 |
7 |
2 |
|
|
| |
Furret = Master Corporal =
| 272 |
Doom Rate: 4.7
|
Отправлено: 21.12.07 14:55:42 | | | Может быть кому полезно будет.
Если нужно найти процедуру, обладающую определённым свойством, то не обязательно лезть в Zdoom Wiki. Тем более не все содержащиеся там срипты может скомпилить Билдер. Пример: Scroll_Texture_Down.
Что предлагаю я? Можно открыть файл ASC.CFG в директории Билдера и пройтись по нему поиском. Дапустим нужно найти процедуру, меняющую текстуру на лайндэфе. Ищем "Texture", читая по-английски пытаемся понять, то ли это. Находим строчку:
| SetLineTexture = "SetLineTexture(line, side, position, texture)"; |
Очевидно, что это и будет то, что нам надо. Такой скрипт Билдер точно примет и скомпилит.
Я всегда их так и ищу. | |
|
| |
Nil = 2nd Lieutenant =
| 1513 |
Doom Rate: 2.31 Posts quality: +64 |
Отправлено: 21.12.07 15:05:35 | | | Furret, ну не на уровне процедур же А на уровне целых задач, а то и методов. Ест идеи, может, скоро чего напишу | |
|
1 |
2 |
1 |
|
|
| |
Shadowman UAC General
| 8391 |
Doom Rate: 2.08 Posts quality: +1995 |
Отправлено: 21.12.07 15:17:33 | | | Furret А еще проще скачать Doom Builder ACS Configuration - есть в Вике - распечатать этот файл и положить на стол рядом с компом. Если нужен какой-то скрипт - смотрим туда. Если непонятно, что он делает (или что означают его параметры) - тогда уже глядим в вики. Я например так и делаю
Nil: | Ест идеи, может, скоро чего напишу |
Ок, ждем статью. Только предварительно уведоми, о чем будешь писать | |
|
1 |
7 |
2 |
|
|
| |
Furret = Master Corporal =
| 272 |
Doom Rate: 4.7
|
Отправлено: 21.12.07 15:27:31 | | | Shadowman: | А еще проще скачать Doom Builder ACS Configuration |
Да и скачивать не надо. Это ТО ЖЕ САМОЕ, что и упомянутый мною ASC.CFG! (открыть Блокнотом) Когда я маплю, он у меня всегда открыт. | |
|
| |
nprotect - 2nd Lieutenant -
| 1343 |
Doom Rate: 2.45
|
Отправлено: 21.12.07 16:42:48 | | | Furret: | что и упомянутый мною ASC.CFG! (открыть Блокнотом) |
твой расчудесный конфиг не дает ни описания параметров, ни даже самого описания функции. здум вики в этом плане гораздо более информативен, и если требуется не просто вспомнить синтаксис, а именно прочитать все про оператор, нужно лезть в вики. с этим SetLineTexture итак все понятно, а вот растолкуй-ка по "конфигу" такую функцию:
Ceiling_CrushRaiseAndStaySilA = "Ceiling_CrushRaiseAndStaySilA(tag, dspeed, uspeed, crush)"; боюсь, что без википедии тут не обойтись, вот для чего спрашивается вики делали, чтоб программерам не пришлось гадать на кофейной гуще и на конфигах | |
|
1 |
2 |
1 |
|
|
| |
Shadowman UAC General
| 8391 |
Doom Rate: 2.08 Posts quality: +1995 |
Отправлено: 22.12.07 00:46:18 | | | Кстати, насчет википедии. Не всегда она верно отражает действительность... или у меня билдер кривой, короче - вот описание скрипта Scroll_Floor как оно дано в вике: http://zdoom.org/wiki/Scroll_Floor А вот при попытке сделать такой скрипт, билдер выдает совсем другой набор параметров:
Scroll_Floor(tag, scrollbits, method xmove, ymove) Причем между method и xmove нет запятой, хотя по идее должна быть. Далее, не ясно, что есть method - это type как в вике? или что-то иное? Попытка насильно вбивать 5 параметр успеха не приносит - ACS отказывается компилить такой скрипт. Как можно решить проблему? | |
|
1 |
7 |
2 |
|
|
| |