Denizen/0.7/Interact Scripts/Commands: Difference between revisions

From Citizens Wiki
No edit summary
No edit summary
Line 1: Line 1:
== Interact Script Commands ==
<div style="margin-right:2.0em; padding:10px; font-family:museo-sans; font-size:110%;">
<div style="margin-right:2.0em; padding:10px; font-family:museo-sans; font-size:110%;">
Note: There are plenty more to come, be patient, more are coming! Have ideas for a good command? Let me know!
Interact Script Commands are used to make the Denizen perform actions in an Interact Script. They are written in a [[YAML]] sequence under the Script node of an [[Denizen/Interact_Scripts/Triggers|Interact Trigger]]. A single entry in the sequence contains a Command and Modifiers. Some commands have no available modifiers.


<code>[] indicates required field, () indicates an optional field, OR indicates alternative usage.</code>
</div>
</div>


===Syntax===
Syntax is very important for proper execution.
*Command must be upper-case (i.e CHAT not chat)
*Modifiers are not case sensitive.
*Modifiers in '''[Brackets]''' are '''required''' for the command to execute. [A or B] means ''either'' A or B is required.
*Modifiers in '''(Parentheses)''' are optional, and generally change the default behavior of the command.
*Modifiers that take a value are of the form MODIFIER:VALUE.
**If the VALUE of the modifier contains a space, such as in the case of a NPC or script name, the whole modifier must be put in quotes.
**Example: <code>- TELEPORT BOOKMARK:Bob:Bobshouse</code> is okay, but <code>- TELEPORT 'BOOKMARK:Bob Jones:Bobshouse'</code> requires the quotes to function properly.
Example:
<pre>
Click Trigger:
  Script:
  - COMMAND1 MODIFIER1 MODIFIER3:VALUE
  - EMOTE "giggles"
</pre>
===List of Commands===
====Script Flow====
====Script Flow====
<div style="font-family:museo-sans;">
<div style="font-family:museo-sans;">

Revision as of 05:28, 21 August 2012

Interact Script Commands are used to make the Denizen perform actions in an Interact Script. They are written in a YAML sequence under the Script node of an Interact Trigger. A single entry in the sequence contains a Command and Modifiers. Some commands have no available modifiers.

Syntax

Syntax is very important for proper execution.

  • Command must be upper-case (i.e CHAT not chat)
  • Modifiers are not case sensitive.
  • Modifiers in [Brackets] are required for the command to execute. [A or B] means either A or B is required.
  • Modifiers in (Parentheses) are optional, and generally change the default behavior of the command.
  • Modifiers that take a value are of the form MODIFIER:VALUE.
    • If the VALUE of the modifier contains a space, such as in the case of a NPC or script name, the whole modifier must be put in quotes.
    • Example: - TELEPORT BOOKMARK:Bob:Bobshouse is okay, but - TELEPORT 'BOOKMARK:Bob Jones:Bobshouse' requires the quotes to function properly.

Example:

Click Trigger:
  Script:
  - COMMAND1 MODIFIER1 MODIFIER3:VALUE
  - EMOTE "giggles"

List of Commands

Script Flow

These commands have no external affect on the world, but can control the flow of scripts within Denizen. Though not required, and with the exception of WAIT, it is generally recommended to run these as Instant Commands to ensure smooth Script feedback to players.

Server

The commands below require Vault and a valid permissions system. Though Vault is not required to use Denizen, the commands below DO require Vault and its dependencies to be installed. Remember: Vault is not an economy or permissions system, merely a hook to help Denizen connect to your favorite systems!

Speech

These commands show some text to the player interacting, and usually to bystanders around. Note that all text commands must be surrounded by quotes single ' or double ". See: Which Quotes? for more information. Text commands also have some auto-formatting, such as making sure no words will be cut off on long messages, and applying color codes. See: Denizen Color Codes. Formatting for how NPCs and Players talk can be customized in the config.yml.

You can use the following placeholders to fill in specific information:

  • <NPC> - The Denizens's name.
  • <PLAYER> - The interacting Player's name
  • <DISPLAYNAME> - The interacting Player's display name
  • <HEALTH> - The interacting Player's heath
  • <WORLD> - The name of the Denizen's world

If you use the NOPLAYER modifier on a text command the <PLAYER>, <DISPLAYNAME> and <HEALTH> tags are not available.

Movement

Denizen NPC commands are meant to help bring your Denizen to life by allowing fine-control of small movements. These are not necessarily meant for making the Denizen NPC do large/long activities, those will instead be done by the Activities, which is just now starting to be implemented into Denizen. The next 'large' update will focus on Activities.

World Interaction

These commands do something physical to the world or player.

Player Interaction