This article's documentation is for anything that uses the Source engine. Click here for more information.

env_message

Материал из Valve Developer Community
Перейти к: навигация, поиск
English (en)Русский (ru)中文 (zh)
Править
Env message.png
class hierarchy
CMessage defined in EnvMessage.cpp
CPointEntity
CBaseEntity

env_message — это точечный объект мира, доступный во всех играх на платформе Source Source. Она выводит текстовое сообщение на HUD игрока, предварительно заданное в файле /scripts/titles.txt.

Icon-Bug.pngОшибка:Не функционирует в Counter-Strike: Source и Left 4 Dead 2.


В коде это представлено классом CMessage, определённым в файле EnvMessage.cpp.

Флаги

  •  [1] : Play Once – одноразовое проигрывание
  •  [2] : All Clients – проигрывать у всех игроков (в мультиплеере)

Ключевые значения

Message Text (message) <string>
Сообщение, которое будет показано. Смотрите выше.
Sound Effect (messagesound) <sound>
При показе сообщения будет воспроизведен этот звуковой эффект, исходящий от этого объекта.
Volume 0-10 (messagevolume) <string>
Громкость звукового эффекта.
Sound Radius (messageattenuation) <choices>
Насколько велик радиус распространения звука.
  • 0: Small Radius – Малый радиус
  • 1: Medium Radius – Средний радиус
  • 2: Large Radius – Большой радиус
  • 3: Play Everywhere – Проигрывать на всю карту

Base:
Name (targetname) <string>
The name that other entities use to refer to this entity.
Parent (parentname) <targetname>
Maintain the same initial offset to this entity. An attachment point can also be used if separated by a comma at the end. (parentname [targetname],[attachment])
Tip.pngСовет:Entities transition to the next map with their parents
Tip.pngСовет:phys_constraint can be used as a workaround if parenting fails.
Origin (X Y Z) (origin) <coordinates>
The position of this entity's center in the world. Rotating entities typically rotate around their origin.
Note.pngПримечание:Hammer does not move the entities accordingly only in the editor.
Pitch Yaw Roll (X Y Z) (angles) <angle>
This entity's orientation in the world. Pitch is rotation around the Y axis, yaw is the rotation around the Z axis, roll is the rotation around the X axis.
Note.pngПримечание:This works on brush entities, although Hammer doesn't show the new angles.
Classname (classname) <string> Отсутствует в FGD!
Determines the characteristics of the entity before it spawns.
Tip.pngСовет:Changing this on runtime still has use, like making matching an entry in S_PreserveEnts will persist the entity on new rounds!
Spawnflags (spawnflags) <flags> Отсутствует в FGD!
Toggles exclusive features of an entity, its specific number is determined by the combination of flags added.
Effects (effects) <flags> Отсутствует в FGD!
Combination of effect flags to use.
Entity Scripts (vscripts) <scriptlist> (во всех играх начиная с Left 4 Dead 2) (также в Team Fortress 2)
Space delimited list of VScript files (without file extension) that are executed after all entities have spawned. The scripts are all executed in the same script scope, later ones overwriting any identical variables and functions. Scripts executed on the worldspawn entity will be placed in root scope.
Think function (thinkfunction) <string> (во всех играх начиная с Left 4 Dead 2) (также в Team Fortress 2)
Name of the function within this entity's script that'll be called automatically every 100 milliseconds, or a user-defined interval if the function returns a number. Avoid expensive operations in this function, as it may cause performance problems.
Lag Compensation (LagCompensate) <boolean> (во всех играх начиная с Left 4 Dead 2) Отсутствует в FGD!
Set to Yes to lag compensate this entity. Should be used very sparingly!
Is Automatic-Aim Target (is_autoaim_target) <boolean> (во всех играх начиная с Counter-Strike: Global Offensive) Отсутствует в FGD!
If set to 1, this entity will slow down aiming movement for consoles and joystick controllers when the entity is under the crosshairs.

Inputs

ShowMessage
Показывает сообщение и воспроизводит звук.

Outputs

OnShowMessage
Срабатывает при активации сообщения.

File format

Каждая запись сообщения в titles.txt организована так же, как и другие текстовые файлы Valve. Пример: Title { Text Value }. Сообщение может ссылаться на локализованную строку с префиксом #.

Этот текст может быть отформатирован различными способами, в соответствии с предоставленным синтаксисом. resource/clientscheme.res отвечает за семейство шрифтов, размер и вес сообщения. Чтобы изменить размер, найдите CenterPrintText в res файле.

Могут быть определены переменные, которые будут влиять на все сообщения под ними, пока не будут перезаписаны другим значением.

Varaible Parameters Description
$position float, float Положение текста на экране.
Clarify: in pixels or in parts?
Первое значение – это горизонталь, второе – вертикаль. -1 – центрирование
$effect integer Как это отображается. 0 – постепенное включение/выключение, 1 – мерцающие титры, 2 – напечатание
$fxtime float При использовании эффекта 2 задается, сколько времени потребуется каждой букве в секундах, чтобы изменить цвет подсветки на обычный по мере их появления.
$color R G B Цвет текста: красный, синий, зеленый в диапазоне от 0 до 255
$fadein float Время затухания сообщения или каждого символа в секундах
$fadeout float Время затухания в секундах
$holdtime float Как долго ждать после включения, прежде чем погаснуть

Если вы внесете отдельную модификацию, вы можете дополнить этот файл своими собственными записями. Заголовки по умолчанию из HL2 перечислены ниже:

Message Value Printed Text
CR1 Testing 1
CR2 Testing 2
CR3 Testing 3
GAMEOVER_ALLY ASSIGNMENT: TERMINATED

SUBJECT: FREEMAN

REASON: FAILURE TO PRESERVE MISSION-CRITICAL PERSONNEL

GAMEOVER_OBJECT ASSIGNMENT: TERMINATED

SUBJECT: FREEMAN

REASON: FAILURE TO PRESERVE MISSION-CRITICAL RESOURCES

GAMEOVER_TIMER ASSIGNMENT: TERMINATED

SUBJECT: FREEMAN

REASON: FAILURE TO PREVENT TIME-CRITICAL SEQUENCE

GAMEOVER_STUCK ASSIGNMENT: TERMINATED

SUBJECT: FREEMAN

REASON: DEMONSTRATION OF EXCEEDINGLY POOR JUDGMENT

CHAPTER1_TITLE POINT INSERTION
CHAPTER2_TITLE "A RED LETTER DAY"
CHAPTER3_TITLE ROUTE KANAL
CHAPTER4_TITLE WATER HAZARD
CHAPTER5_TITLE BLACK MESA EAST
CHAPTER6_TITLE "WE DON'T GO TO RAVENHOLM..."
CHAPTER7_TITLE HIGHWAY 17
CHAPTER8_TITLE SANDTRAPS
CHAPTER9_TITLE NOVA PROSPEKT
CHAPTER9A_TITLE ENTANGLEMENT
CHAPTER10_TITLE ANTICITIZEN ONE
CHAPTER11_TITLE "FOLLOW FREEMAN!"
CHAPTER12_TITLE OUR BENEFACTORS
CHAPTER13_TITLE DARK ENERGY
GAMESAVED Saved...
GAMETITLE Half-Life

Файлы

  1. scripts/titles.txt

Смотрите также

  • game_text - Аналогичная сущность, которая позволяет вам определять текст непосредственно в Hammer editor.
  • env_hudhint - Аналогичный объект, который отображает предопределенные подсказки HUD об элементах управления и других вещах.