GSL v1.8 manual
1 General Syntax
1.1 File, Text and Letter Format
1.2 Statement Blocks
1.3 Comments
1.4 Keywords
2 Data Types and Variables
2.1 Basic Data Types
2.2 Literals
2.3 Declaring Variables
2.4 Initial Values
2.5 Constructors
2.6 The Type struct
2.7 The Type array
2.8 Interchangeability of Array and Struct Syntax
2.9 Typecasting
3 Operators
3.1 Assignments
3.2 By Reference / By Value
3.3 Arithmetic Operators
3.4 String Concatenation
3.5 Convenience Operators
3.6 Increment and Decrement
3.7 Comparisons
3.8 Logical Operators
3.9 The Value null
3.10 The unset() Operator
3.11 The instanceof Operator
3.12 The Explicit Typecast Operator
3.13 The Script Output Operator $
3.14 The Conditional Expression Operators ?:
4 Control Structures
4.1 if
4.2 The while Loop
4.3 The for Loop
4.4 The foreach Loop
4.5 break
4.6 continue
5 Functions
5.1 Defining Functions
5.2 Calling Functions
6 Basic System Calls
6.1 echo
6.2 echoln
6.3 warn
6.4 fail
6.5 sleep
6.6 include
6.7 eval
6.8 size
6.9 clone
7 Advanced Concepts
7.1 Extending Structs
7.2 Typerestricted Arrays
7.3 Namespaces
7.4 The Keyword this
7.5 Exiting The Script
7.6 External Variables (@Variables)
7.7 Stack Syntax for Arrays
7.8 Array Index Auto Creation
7.9 Pointers
7.10 The .type Operator
7.11 The .strtotype Operator
7.12 The .typetostr Operator
7.13 The .call() Operator
GMSI beta v2.1.1 manual
8 General GMSI Info
8.1 What does this program do?
8.2 Starting the program
8.3 Resynchronization with WarcraftIII
8.4 Using the GUI
8.5 Using the commandline
8.6 Using maps after they got changed by a script
8.7 Which maps can be altered using the script?
8.8 Writing / Executing scripts
9 The GMSI API
9.1 General Usage of Libraries
9.2 The Type Map and Contained Types
9.3 Loading and Saving Maps with wc3MapIO.gsl
9.4 Building Tooltips and Other Macros with macros.gsl
9.5 Gathering Input Parameters with Arguments and dialog.gsl
9.6 Other Libraries
10 Working with Object Editor Data
10.1 Loading all objects or just the changed ones?
10.2 How are objects stored?
10.3 Accessing Object Attributes
10.4 Double Attributes
10.5 Getting the Type of an Object
10.6 Getting & Setting Additional Object Information
10.7 Iterating Over Arbitrary Sets of Objects
10.8 Links Between Objects