User Tools

Site Tools


script_syntax

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revisionPrevious revision
Next revision
Previous revision
Next revisionBoth sides next revision
script_syntax [2017/10/13 11:16] justinscript_syntax [2019/04/18 16:03] – external edit 127.0.0.1
Line 2: Line 2:
 ---- ----
  
-The scripting language in RPG in a Box is a simple imperative language designed specifically for the engine. It is based on the language described [[http://jayconrod.com/posts/37/a-simple-interpreter-from-scratch-in-python-part-1|here]] in the series of articles by Jay Conrod.+The scripting language in RPG in a Box is a simple imperative language designed specifically for the engine. It is based on the language described [[https://jayconrod.com/posts/37/a-simple-interpreter-from-scratch-in-python-part-1|here]] in the series of articles by Jay Conrod. The syntax is useful to know for creating [[quick script|quick scripts]] for tiles and objects in the [[Map Editor]] or for script nodes in the [[Dialogue Editor]].
  
-=====Statements====== +=====Statements===== 
-Statements are the basic building blocks of the scripting language and represent a particular action to be taken. Currently, a statement can be either a function call or a conditional "if/then/else/end" statement. Multiple statements must be separated from each other using semicolons (;).+Statements are the basic building blocks of the scripting language and represent a particular action to be taken. Currently, a statement can be either a function call or a conditional "if/then/else/end" statement. Multiple statements must be separated from each other using semicolons (;). Whitespace between statements is ignored, although newlines and indentation are recommended for ease of reading.
  
 ====Function Calls==== ====Function Calls====
Line 21: Line 21:
  
 ====If/Then/Else/End (Conditional)==== ====If/Then/Else/End (Conditional)====
-The "if/then/else/end" syntax allow you to branch your logic according to the results of evaluating a condition. In the order listed, it consists of the keyword "if", a condition to check, the "then" keyword, any statements to execute if the condition is true, optionally the "else" keyword followed by any statements to execute if the condition is not true, and lastly the "end" keyword. See [[Conditional Expression]] for more information and a list of valid comparison operators that can be used in the condition.+The "if/then/else/end" syntax allow you to branch your logic according to the results of a condition being evaluated. In the order listed, it consists of the keyword "if", a condition to check, the "then" keyword, any statements to execute if the condition is true, optionally the "else" keyword followed by any statements to execute if the condition is not true, and lastly the "end" keyword. See [[Conditional Expression]] for more information and a list of valid comparison operators that can be used in the condition.
  
 **Examples:** **Examples:**
 <code lua> <code lua>
-if global.property["xyz"== true then +if global.property["gem_count"> 5 then 
-   display_message("")+   display_message("You've collected more than 5 gems!")
 end end
 </code> </code>
script_syntax.txt · Last modified: 2023/11/06 14:13 by justin