💻 ¤ PawnScript is a small interpreted semi-statically-typed object-oriented (and really memory-consuming) language written in Pawn and thus it is its extension (similar to C/C++ or Java/JavaScript). It is designed with the role of enabling modification of the gamemode code on the server during run-time. It contains various features and things that aren't even introduced into Pawn itself. PawnScript has a very complex syntax which makes it very hard to learn but also fragile to small mistakes.
📎 It is made purely for fun and with an intention to learn more about Pawn itself, thus PawnScript should not be taken as a serious language. However, the language itself is still impressive considering it is written in Pawn.
NOTE: Semicolons are completely optional, you can use them according to your preference.
- How to setup PawnScript?
- Project management
- Calling PawnScript from your Pawn code
- How does PawnScript work?
- Errors
- Directives
- Interpreter options
- Interpreter components
- Comments
- Third-party API
- Modules
- Constants
- Variables
- Functions and types of functions
if
-expressionswhile
-loops- Instructions
- Operators
- Namespaces
- Passing arguments to user functions
- Persistent data management
return
- System values
- Tasks
- Function structure types
for
-loops- Data structures and
foreach
switch
andcase
- Function methods
- Tags and
tagof
instruction - Inline functions
typedef
keyword- Enumerators
- Static variables
- Decorators
- Objects and classes
do
statementfinal
keywordtry
,break
andcontinue
- Return reference
- Call templates
- Miscellaneous
- TCI
- Private functions
- Pointers
- Quiet function call
- Register variables
- Class unions
- Examples - see here.
Just regularly check the workflow runs! Always select the latest successful workflow to download the latest build artifacts from.