Phys convert

Материал из CSM Wiki
Версия от 08:52, 21 октября 2009; Kogemyaka (обсуждение | вклад) (Новая страница: «{{sdk beginsrc}} [http://developer.valvesoftware.com/wiki/Phys_convert Phys_convert] == Описание == Объект phys_convert используется для…»)
(разн.) ← Предыдущая | Текущая версия (разн.) | Следующая → (разн.)
Перейти к навигации Перейти к поиску

Оригинал Phys_convert

Описание

Объект phys_convert используется для преобразования любого допустимого Brush-объекта или Prop-объекта в физический объект.

Особенности использования

  • Этот объект обновляется в каждом раунде. Это означает что любые изменения объекта НЕ будут наследоваться в последующих раундах.
  • Объект может быть установлен в любом месте на карте.
  • На карте может быть установлено множество этих объектов

Ошибки

Не обнаружены.

Заметки

После процесса преобразования преобразованный объект будет иметь тип модели столкновения – VPhysics, поэтому преобразованный объект будет вести себя точно так же как объекты с классом func_physbox. Это может сильно помешать игровому процессу, так как объекты с таким типом столкновения мешают игроку пройти и имеют ряд побочных неблагоприятных последствий для игры. Чтобы избежать проблем с этим объектом во время игры, наилучшим решением является изолирование последствий работы объекта phys_convert от игрового пространства карты. Можно так же попробовать заставить преобразованные физические объекты не контактировать с игроком. В этом случае объект phys_convert можно будет использовать и в игровом пространстве карты.

Параметры

  • Entity to Convert – имя объекта (-ов), который будет преобразован физический объект;
  • Model Swap Entity – имя другого объект на карте, который в момент преобразования подменит своей моделью модель объекта "Entity to Convert"; если указано это свойство, то в момент преобразования модель объект "Entity to Convert" будет удалена с карты и на месте неё будет помещена модель объекта "Model Swap Entity", при этом сам объект "Model Swap Entity" не изменится.

Флаги

  • Convert Asleep – "усыпить" преобразованный объект после операции преобразования; преобразованный объект не будет двигаться до тех пор, пока к нему не будет приложена какая-нибудь сила.

Inputs

  • ConvertTarget – начать операцию преобразования объекта "Entity to Convert" в физический объект.

Outputs

  • OnConvert – выполняется после преобразования процесса преобразования объекта "Entity to Convert" в физический объект.

Карта

csssdk_phys_convert.vmf

Используются объекты

  • phys_convert
  • func_detail
  • trigger_once
  • func_brush
  • func_breakable
  • env_physexplosion
  • env_physimpact
  • filter_damage_type
  • prop_door_rotating
  • func_door_rotating
  • prop_dynamic
  • ambient_generic
  • env_dustpuff
  • weapon_m3
  • ammo_buckshot
  • weapon_hegrenade
  • func_wall
  • point_servercommand

Описание карты

Карта демонстрирует несколько способов превращения Prop-объектов и Brush-объектов в физические объекты.

Первая область слева от точки появления игроков преобразует шар func_brush. Объекты func_brush не обновляются в каждом раунде, поэтому подобное преобразование можно будет проделать всего 1 раз за игру. Войдите в эту область и шар упадёт сверху на наклонную плоскость. Через 4 секунды после преобразования будет выполнен рестарт карты. После рестарта убедитесь в том, что в этой области больше нет шара func_brush.

Вторая область слева от точки появления игроков преобразует сразу несколько объектов func_brush, выложенных в виде стены, в физические объекты. Стена разрушится как только игрок войдёт в область в которой расположена стена. Вновь будет выполнен рестарт карты, и в следующем раунде стены уже не будет.

Справа от точки появления игроков, преобразования проводятся над объектами func_breakable, но принцип действия такой же как и в левой части карты. В первой области справа при преобразовании объект func_breakable заменяется объектом func_brush, который расположен рядом. Обратите внимание, что сам объект func_brush не удаляется с карты в последующих раундах. В операции преобразования участвует только его модель а не он сам.

В самой удалённый части карты создано ещё несколько объектов, которые будут преобразованы в физические. Двери используются как двери только до того момента, пока не будут уничтожены их опорные косяки. На разрушаемую часть дверных косяков указывают стрелки на земле. При разрушении дверных косяков, двери преобразовываются в физические объекты. Косяк левой двери можно разрушить обычным выстрелом, а вот косяк правой двери можно разрушить только взрывом. Обратите внимание, что если взорвать косяк левой двери, то дверь останется неподвижно висеть в воздухе пока её не уронят, а вот правая дверь реагирует на взрыв и отлетает от него. Для создания эффекта вылетающей двери используется объект env_physexplosion, расположенный в нужном месте, имеющий нужные настройки и срабатывающий сразу после процесса преобразования объектов. За дверями расположен объект trigger_once, коснувшись которого, в физический объект будет преобразовано целое дерево, которое со скрежетом упадёт на землю.

Кстати, на правой двери прикреплена ручка (prop_dynamic), которая остаётся на двери даже после преобразования её в физический объект. На левой двери тоже прикреплена ручка, но она создаётся при помощи объекта prop_door_rotating и исчезает с левой двери в момент преобразования её в физический объект.