The SAL
GZDB отличается от DB2 Лишь новыми фичами вроде
The SAL :
показываеться слопы, Translucent линии и т.д.[/offtopic]
И многих других, все эти навороты по желанию можно выключать правда не понимаю зачем? Если мапиш под оригинальный Doom так там выбирается формат карты и слоупов и прочего в настройках линии вобще не показывает. Еще очень полезное в GZDB проверка на ошибки своей карты, например на не используемые текстуры, это одна из, не считая ошибок в decorate. Да он по всем параметрам превосходит DB2, скорее всего ты растерялся увидев большое кол. новых инструментов которые тоже можно убирать из вида, если не ошибаюсь
PepeL
Тебе бы еще плагин скачать для создания 3д полов, полезная штука)
У меня тут вопрос возник, 3д вода может иметь зеркальное отражение которое прописывается в acs Sector_SetPlaneReflection(1,80,0);?
Может там как-то по особому надо добавлять отражение?
В сборке нет, по моему из-за того что он еще не доделан до конца, тем не менее работает отлично.
Положи в папку GZDoom_Builder/Plugins, в GZDB появится соответствующая иконка слева 3D Floor editing mode, в настройках GZDB можно задать плагину горячую кнопку. Как делать 3д полы с помощью плагина думаю разберешься, единственное надо что бы возле крестика по центру сетки в 2д режиме ничего не было настроено, секторов и т.д.
Возник вопрос по ACS. У меня есть скрипт на карте, который, в свою очередь, вызывает другой скрипт через ACS_Execute(X,0,0,0,0). Этот другой скрипт напрямую влияет на игрока (например, сменяет оружие). Но, как показала практика, никаких действий не происходит (игрок не меняет оружие), если скрипт вызывается таким способом, однако, если прописать в консоле puke X, то всё работает как надо. Вопрос такой: как заставить работать скрипт для каждого игрока через ACS_Execute (мультиплеер, условия для всех равные, порт задротиум)?
Подозреваю, что как-то через SetActivator, но пока не знаю как...
P.S: кстати, как сделать притягивающего (в буквальном смысле) к себе игроков актёра?
Добавлено спустя 4 часа 40 минут 22 секунды:
От я дурень! Оказалось, что скрипт прекрасно работает, если сделать так:
Скрытый текст:
Создаём новый скрипт в начале
script N ENTER
{
Thing_ChangeTID(0, 1000 + PlayerNumber()); // выдаём тиды всем игрокам
delay(1); // делаем задержку, чтобы скрипт не крашнулся
restart; // т.к после смерти тид обнуляется (чего я не знал), нужно запетлить код
}
а в самом скрипте прописать что-то вроде этого:
for(int playersnum;playersnum
{
setActivator(1000+playersnum); // устанавливаем поочерёдно каждого
setweapon("fist"); // меняем текущему тиду оружие
}
За этим циклом обнуляем параметр playersnum, чтобы использовать его ещё раз в будущем или сделать цикл в цикле.
Мне нужен именно актёр, который будет преследовать игрока и притягивать его к себе (причём притягивать он должен со всех сторон одновременно, т.е даже если актёр стоит не лицом к игроку). Line special мне тут вряд ли поможет (или я что-то совсем не догоняю).
Добавлено спустя 19 минут 51 секунду:
Ладно. одной проблемой меньше. Я впихнул ThrustThing к актёру, вроде работает, но беда в другом: у меня несколько игроков на карте, у каждого свой тид, как мне задать несколько чисел в одном параметре (в Decorate), т.е чтобы в параметре TID был значение от и до.
P.S: Всё равно пока работает криво. Похоже тянет только в одном направлении.
притягивать он должен со всех сторон одновременно, т.е даже если актёр стоит не лицом к игроку
ThrustThing как раз к этому безразличен.
+Ku6EPyXOBEPTKA+ :
Всё равно пока работает криво.
Тригонометрия тебе в помощь.
Ну и моё переведенное руководство, тоже: http://rghost.ru/58823422
См. разделы:
* Математические функции
* Акторы. Игроки/Координаты, скорости.
* Акторы. Игроки/Углы взгляда.
* Физика/Гравитация
* Физика/Сопротивление воздуха
* Физика/Приложение силы к предмету
Мне нужен именно актёр, который будет преследовать игрока и притягивать его к себе (причём притягивать он должен со всех сторон одновременно, т.е даже если актёр стоит не лицом к игроку). Line special мне тут вряд ли поможет (или я что-то совсем не догоняю).
VladGuardian :
Тригонометрия тебе в помощь.
Никакой тригонометрии не надо. Есть такой экшн: A_RadiusThrust. Просто значение Force должно быть отрицательным, чтобы затягивать в себя акторов. Хотя возможно актор будет затягивать в себя и монстров.
Никакой тригонометрии не надо. Есть такой экшн: A_RadiusThrust. Просто значение Force должно быть отрицательным, чтобы затягивать в себя акторов. Хотя возможно актор будет затягивать в себя и монстров.
Это всё замечательно, если бы не один весьма забавный факт: ввод отрицательных чисел в A_RadiusThrust был введён только в 2.7.1 для ЗД и в 2.1 для ГЗД, а поскольку карта запилена под зандру, то путь развития по понятным причинам выходит иной и схожесть заканчивается ещё в далёких версиях назад. Вот такая вот ерунда. забавно получается, что в ГЗ научились уже делать туман в 3д секторах, а в задротиуме нет.
И ещё, на всякий случай, раз повторю: АЦС мне не нужен, мне нужно только в декорейте.
В общем, возвращаюсь к вопросу о всасывании игроков актёром. Обходных АЦС путей в зандрице (теперь я понимаю всю глубину смысла этого слова) я не нашёл, ибо в A_RadiusThrust до сих пор не додумались сделать ввод отрицательных значений. Пошёл всё же путём АЦС:
Итак, мой метод таков: получаю координаты "всасывателя" (тид задаётся ещё при спавне), присваиваю их переменным (х1,y1), получаю координаты игрока, присваиваю их переменным (x2,y2), получаю тангенс угла из получившихся расстояний (разница между x-ами и y-ами - катеты, а вся фигура - прямоугольный треугольник) и возвращаю функцию, получив угол, который я пишу в параметре angle. Всё это происходит в цикле, чтобы угол генерировался каждый раз, корректируя движение игрока к "всасывателю".
Что же выходит на деле:
Язык кода не знает что такое tg (про arctg вообще молчу). Как и куда вылезать из получившегося значения - я никак не разберу. В общем, получается тригонометрическая... она самая. Возможно с утра чего нибудь придумаю, но голову ломать надоело.
P.S: зол на задротиум, как никогда... однако переводить всё в гозу ещё геморрней.
Можно сделать что-то вроде таблицы Брадиса, но из-за больших неточностей, угол придётся прописывать как промежуточное значение, а в игре будут лаги при корректировке. Может есть более просто способ? А то уже хочется плюнуть на это всё.
Спасибо. Действительно работает, причём значение можно прям так подставлять в thrustthing. Но появилась неожиданная проблема: сила прикладывается в нормальном направлении, однако при очень малых значениях скрипт начинает чудить. Когда игрок близко подлетает к "всасывателю", то начинает "дрожать" (дёргать влево-вправо) и замедлять ход, пока не остановится у какой-то точки словно не упрётся в стену. Если подпрыгнуть, то вообще начинается декаданс (видимо удар об какую-то поверхность вызывает нехилую обратную силу).
P.S: Поставил hudmessage для параметра угла, при приближении к "всасывателю", он резко меняется.
P.P.S: И да... а как быть со стенами? ThrustThing работает как приложение силы к толкаемому объекту, а передача силы от объекта к объекту. Т.е "Всасыватель" будет через стены всасывать (прошу прощения за такую фразу)
Парни, а как проверить, что рукопашное оружие попало по монстру?(т.е. вызвало кровь и т.п.). Делаю просто кулаки из SW и там они становятся окровавленные при попадании по противнику.
Уже не нужно, разобрался. Теперь другой вопрос - как сделать ядовитый дым наподобе того, что в хексене? У меня есть актор - дымовая шашка(Кастомная инвентория), при активации выпускается снаряд, который отпрыгивает от стен. Когда снаряд переходит в стейт Death, начинает испускаться дым, а сама шашка игрока дамажит. На снаряде стоит дамаг-тип(произвольный). У игрока прописан стейт Pain для данного дамаг-типа. Когда дымовая шашка дамажит игрока, то звук начинает вопроизводиться при получении дамага по нескольку раз(сколько надамажило, столько и вопроизвелось). У хексеновского дамага от ядовитого дыма такой фигни нет. Смотрел оригинальные акторы и дамаг-типы - дельного ничего не нашёл.
Подскажите, пожалуйста, можно ли в WhackEd4 сделать так, что-бы игрок стартовал без пистолета? Если да, то как? Если нет, то как это сделать на DEHACKED?
И как, когда спаун без пистолета, сделать, что бы он где то лежал? (Что-бы подобрать его)[/youtube]