Welcome to U.A.C. [O.S.A.]
login / register
Status: Guest
Архивы форума | iddqd.ru
Wolf 3D
ПравилаПравила ПоискПоиск
18+
Скриптинг [Заказываем скрипты/Делимся скриптами] Пред.  1, 2, 3, 4, 5, 6, 7, 8
   Список разделов - Местечко мапперов и моддеров - Скриптинг [Заказываем скрипты/Делимся скриптами]Ответить

Тип вашего основного переносного компьютера
Ответ если Вы программист: [Да! Буду просматривать заказы и размещать скрипты]
18%
 18% [ 7 ]
Ответ если Вы программист: [Нет! Эта тема бред]
5%
 5% [ 2 ]
Ответ если Вы программист: [Буду иногда размещать скрипты, но заказы.. лень]
32%
 32% [ 12 ]
Ответ если Вы заказчик: [Да!]
43%
 43% [ 16 ]
Ответ если Вы заказчик: [Нет!]
0%
 0% [ 0 ]
Проголосовало думеров : 37
Всего оставлено голосов : 37
Голосование без ограничения по времени

АвторСообщение
dukenator
= Sergeant Major =
Next rank: UAC Sergeant Major after 40 points
640

Doom Rate: 2

Posts quality: +31
Ссылка на пост №141 Отправлено: 14.06.19 14:44:22
Сиюминутный оффтоп, если никто не возражает. Как вам кажется, народ активно осваивает ZScript, или он остаётся уделом нескольких упёртых? Как обстоят дела с туториалами? Синтаксис еще развивается?
1 1
JSO x
= Sergeant Major =
Next rank: UAC Sergeant Major after 34 points
646

Doom Rate: 2.32

Posts quality: +262
Ссылка на пост №142 Отправлено: 14.06.19 23:28:01
FoxPlays пишет:
Добавил тебя как автора мода на форуме здума :D

Так а чего же ты раньше-то не сказал, что это для общедоступного мода? Я бы покрасивее код написал...

dukenator пишет:
Как вам кажется, народ активно осваивает ZScript, или он остаётся уделом нескольких упёртых?

Смотря где. В русскоязычной среде относительно знающих ZScript по пальцам пересчитать можно, в англоязычной в основном на нём разговоры и ведутся. Мануалы -- только ZDoom wiki, расспросы что-то уже знающих да анализ чужого кода. Синтаксис -- да, развивается, и несколько моих любимых функций работают уже не так, например, нет флага "level.frozen", он теперь зачем-то превращён в функцию "level.SetFrozen( bool on )".

Рейтинг сообщения: +1, отметил(и): Void Weaver
1 5
Void Weaver
= Captain =
Next rank: - Major - after 144 points
2496

Doom Rate: 1.82

Posts quality: +795
Ссылка на пост №143 Отправлено: 15.06.19 01:29:41
JSO x пишет:
Смотря где. В русскоязычной среде относительно знающих ZScript по пальцам пересчитать можно, в англоязычной в основном на нём разговоры и ведутся.
Всё так. Более того, за бугром ZScript активно лоббируется и продвигается в массы.

Касаемо мануалов неплохой мини-гайд набросал Matt, ещё Marrub попиливает доки. JSO x и ZZYZX кстати уже кидали прямые ссыли на последний проект.

Рейтинг сообщения: +1, отметил(и): MyNameIs
1 9 1
YURA_111
UAC Sergeant Major
Next rank: UAC Sergeant Major after 66 points
694

Doom Rate: 1.98

Posts quality: +120
Ссылка на пост №144 Отправлено: 21.09.19 20:15:04
Заказ на Z-скрипт от: yura_111

Описание: В альт-худе дума указывается текущее количество убитых монстров и их общее количество в уровне (через дробь. Пример: 135/443). НО когда играешь в кооперативе это значение у каждого игрока нужно каждый раз суммировать, дабы знать - сколько реально убито и сколько еще живности на уровне дышит, т.к. у каждого игрока пишется количество убитых именно им монстров. Особенно это напрягает когда игроков больше двух.

Подробно что должен делать скрипт: Просьба написать Z-скрипт так (если это возможно конечно), чтобы одно из значений указывало общее количество убитых монстров всеми игроками - например так 135/402/443 (135 убил ВАСЯ, 402 убитых всего, 443 вообще монстров в уровне). И тоже самое на секреты и предметы.

Под какой порт: GZDOOM 3.6
Shadowman
- UAC Commissar -
Next rank: = UAC Commissar = after 21 points
6279

Doom Rate: 2.2

Posts quality: +642
Ссылка на пост №145 Отправлено: 10.11.19 19:46:38
Хотелось бы прояснить следующие вопросы:
1) На уровне хаба запускается скрипт N1 с циклом While ( ), длящийся некоторое время, игрок выходит на соседний уровень в хабе, затем сразу же возвращается обратно. При входе на карту в библиотеке прописан запуск скрипта N1, если выполняется условие. У игрока оно выполняется. Но на карте скрипт N1 уже был запущен ранее. Вопрос: будет ли продолжаться действие ранее запущенного скрипта или скрипт из библиотеки перезапустит его? Если запущенный ранее скрипт продолжает работать, то запуск из библиотеки не сработает?
Все запуски скрипта - через ACS_NamedExecute.
Пример скрипта:
Скрытый текст:

script "TerrorCounterART" (void)
{

while ((CheckInventory("PipeOfConfusion") > 0)&&(Checkinventory("TerrorActiveCheck") > 0)&&(Checkinventory("TerrorScrollActiveCheck") == 0))
	{        
PlaySound(5000, "item/terror", 7, 1.0, TRUE);
	delay(35);
	TakeInventory("PipeOfConfusion", 1);
	}
while ((TerrorDuration > 0)&&(Checkinventory("TerrorScrollActiveCheck") > 0)&&(Checkinventory("TerrorActiveCheck") == 0))
	{    
PlaySound(5000, "item/terror", 7, 1.0, TRUE);    
	delay(35);
	TerrorDuration-=1;
	}
if (Checkinventory("TerrorART") > 0) 
 {
StopSound(5000, 7);
TakeInventory("TerrorART",1);
TakeInventory("TerrorScrollActiveCheck",1);
TakeInventory("TerrorActiveCheck",1);
   }
}



2) Команда ACS_Terminate как именно прекращает действие скрипта с циклом While (см. пример выше)?
Скрипт обрывается сразу или действие в цикле проиграется до конца времени 35 тиков, прежде чем скрипт завершится? Скажем, если команда ACS_Terminate поступила в то время, когда в скрипте работала задержка (например, прошло 15 тиков из 35), то как сработает эта команда?
1 7 2
Void Weaver
= Captain =
Next rank: - Major - after 144 points
2496

Doom Rate: 1.82

Posts quality: +795
Ссылка на пост №146 Отправлено: 11.11.19 00:06:15
Создание зачётного сообщения/новости (+20)
Эти вопросы уместнее в теме "Вопросов".

2) ЕЯПП то ACS_Terminate прерывает любой скрипт, который при этом НЕ является типом ENTER, НЕ вызван через ACS_ExecuteAlways или НЕ работает на другой карте кроме той где вызывается сам ACS_Terminate:

Using ACS_Terminate is exactly the same thing as using terminate within that script, except that it can be called on scripts that are currently "running" (see below) on other maps in the same hub. The target script, if it's in the same map, is immediately halted. A subsequent call to the same script will start it over from the beginning.

Что касается прерывания внутренних циклов скрипта то чек на выход ACS_Terminate (или terminate;) должен находиться внутри цикла:

Termination of course only makes sense in scripts that have code that runs for more than one tick. Thus, yes, tehy can be terminated at any point via terminate. You could use a workaround for outside termination by calling another ACS script that in thrun switches a bool to false and the looping script, each cycle, checks if the loop is true and if not, terminates itself (the bool would have to be set teh true before the loop is started, of course).

Рейтинг сообщения: +2, отметил(и): Shadowman, alekv
1 9 1
Shadowman
- UAC Commissar -
Next rank: = UAC Commissar = after 21 points
6279

Doom Rate: 2.2

Posts quality: +642
Ссылка на пост №147 Отправлено: 12.11.19 11:23:19
Void Weaver
Спасибо, опытным путем установил, что если скрипт был запущен ранее, то новый запуск через ACS_Execute не сработает. Прерывание скрипта делается сразу по ACS_Terminate. А вот так, как советуют в цитате ("изменять переменную, которая используется в цикле скрипта"), не годится, т.к. если цикл имеет какую-то длительность, то смена переменной начнет работать лишь после того, как завершится длительность текущего цикла (в начале которого переменная была True), что может вызвать рассинхрон с другими скриптами по задумке.
Так что лучше напрямую, ACS_Terminate.

Рейтинг сообщения: +1, отметил(и): Void Weaver
1 7 2
bolon
- Lance Corporal -
Next rank: = Lance Corporal = after 10 points
150

Doom Rate: 10

Posts quality: +19
Ссылка на пост №148 Отправлено: 04.07.20 17:48:53
Отличный креатив или рецензия на ресурс (+40)
Скрипт мышки.
Скрытый текст:

Скрипт мышки.

Автор: bolon

Описание: Скрипт мышки с двумя кнопками, есть поддержка 3-х сигналов, Pressed, Just-Pressed, Released. Также, по рекомендации ZZYZX, добавил игнорирование m_yaw, m_pitch и invertmouse.

Как добавить: добавляешь содержимое pk3, в свой pk3, и в нужном тебе месте вызываешь скрипт "drawMouse". Синтаксис у него следующий:
drawMouse(включен, tid_игрока)

где,
* Если включен не 0, то появляется мышка. Через этот аргумент можно включать/отключать мышку.
* tid_игрока - tid игрока которого замораживает, при использовании мышки.

Также, настройка происходит через cvarinfo, там задается разрешение экрана (SetHudSize), чувствительность мышки, также там хранятся координаты, флаги, и т.д. и т.п.
Ссылка\код: Скачать pk3 с MEGA


Рейтинг сообщения: +2, отметил(и): VladGuardian, JSO x
3
YURA_111
UAC Sergeant Major
Next rank: UAC Sergeant Major after 66 points
694

Doom Rate: 1.98

Posts quality: +120
Ссылка на пост №149 Отправлено: 16.09.20 10:45:13
Доброго времени суток!

Может ли кто-то помочь в написании скрипта разделения кнопки USE/Open/Respawn на две отдельные: USE/Open и Respawn? Жутко мешает одному из 6-и наших "кооперативщиков", т.к. во время смерти она случайно (на постоянной основе) жмет машинально кнопку и соответственно респавнится, теряя весь инвентарь (злясь на всех и вся). Естественно воскресить после респавна уже нельзя, и поэтому она требует чтобы все шестеро вышли и загрузили сохранение :bitsa: ...

Заказ на Z-скрипт от: YURA111

Подробно что должен делать Z-скрипт: Разделение кнопки USE/OPEN/RESPAWN на две различные USE/OPEN и RESPAWN

Под какой порт: GZDOOM 4.5-pre137
Страница 8 из 8Перейти наверх Пред.  1, 2, 3, 4, 5, 6, 7, 8
   Список разделов - Местечко мапперов и моддеров - Скриптинг [Заказываем скрипты/Делимся скриптами]