Объект func_platrot используется для создания обыкновенных брашей (Entity-браши), которые могут двигаться только вверх или вниз и при этом вращаться.
Этот объект всегда появляется на карте так, как будто бы он уже прошёл путь снизу вверх и уже находится "вверху", поэтому для него в первую очередь нужно использовать функцию "GoDown". Эта ошибка проявляется только если у объекта есть имя.
Если в свойстве "Move Distance" будет установлено значение 0, то объект будет двигаться с ошибкой. При этом объект сначала начнёт своё движение (хотя не должен бы был), а спустя какое время резко окажется в той же точке, откуда начинал двигаться. При этом меняется его состояние "вверху"/"внизу".
Внимание: Флажок "Toggle" должен быть всегда установлен, иначе игра при загрузке карты выведет ошибку: plat_trigger: backwards mins/maxs, а это, в свою очередь, приведёт к краху игры.
Воздержитесь от использования объекта func_platrot на ваших картах.
csssdk_func_platrot.vmf
На карте несколько платформ func_platrot. Для каждой поставлен пульт с двумя кнопками. Для всех пультов левая кнопка вызывает функцию "GoUp", а правая – "GoDown". Объект func_platrot испещрён ошибками и недоработками и ставит под большое сомнение необходимость и рациональность своего использования. Однако нужно познакомится с этим объектом поближе.
Первое на что стоит обратить внимание - для абсолютно всех платформ на этой карте первой нужно нажимать правую кнопку, чтобы платформа начала движение. Правая кнопка вызывает для платформ функцию "GoDown", о чём было сказано выше. Почему первой нужно вызывать функцию "GoDown", а не "GoUp"? Это баг, описанный в пункте "Ошибки". Обратите так же внимание на то, что абсолютно все платформы в начале каждого раунды появляются уже повёрнутыми на свой угол "Rotation Distance". Это тоже баг, описанный в пункте "Ошибки".
Не трудно заметить, что первые две платформы не работают. Точнее они работают, но с ошибками. Начиная двигаться в каком-либо направлении, они вдруг внезапно прекращают своё движение, и оказываются в той же точке, откуда начинали двигаться. Это происходи из-за того, что у этих платформ свойство "Travel Altitude" равно 0. Это ещё один баг, описанный в пункте "Ошибки".
Третья платформа кое-как настроена правильно. В свойстве "Travel Altitude" стоит значение "-100". Это означает, что платформа при вызове функции "GoDown" поедет вверх. Вообще бардак, правда? Если бы значение этого свойства равнялось "100", то при вызове функции "GoDown" платформа поехала бы вниз и уехала бы при этом за границы карты.
Четвёртая платформа. Тут всё ещё смешнее. Вроде как, платформа выглядит красиво – бордюрчики, бочка, стильный пульт управления. Однако за этой красотой скрывается ещё один недокументированный баг. Встаньте на платформу и начните на ней движение вверх, а во время движения заденьте что-нибудь, находящееся вместе с вами на платформе. Если это сделать, то здоровье игрока начнёт стремительно уменьшаться, потому что прикосновение к вращающейся платформе считается за попытку заблокировать объект func_platrot. Каждая попытка блокирования отнимает у игрока по 1 проценту жизни, а так как это происходит с частотой обновления сервера, то при стандартных настройках сервера, примерно за 3 секунды непрерывного блокировании объекта func_platrot, игрок потеряет всё своё здоровье. Во время блокировки платформа не будет двигаться вообще. Так же, при каждом блокировании направление движения платформы изменяется, поэтому платформа при стандартных настройках сервера, может менять направление своего движения до 33 раз в секунду.
Пятая и шестая платформы демонстрируют вращение объектов func_platrot вокруг разных осей вращения. Обратите внимание, что тени на платформах не меняются в каком бы положении не находились объекты.