Difference between revisions of "Hooks"

From King Arthur's Gold Wiki
Jump to: navigation, search
Line 1: Line 1:
 
 
Hooks are special methods in KAG 1.0 that are available to be defined in any script, and will run every time.
 
Hooks are special methods in KAG 1.0 that are available to be defined in any script, and will run every time.
  
Line 10: Line 9:
 
<syntaxhighlight lang="cpp" enclose="div">
 
<syntaxhighlight lang="cpp" enclose="div">
 
void onNewPlayerJoin( CRules@ this, CPlayer@ player ) {
 
void onNewPlayerJoin( CRules@ this, CPlayer@ player ) {
     client_AddToChat("Welcome "+player.getUsername()+"!");
+
     if (player !is null) {
 +
      client_AddToChat("Welcome "+player.getUsername()+"!");
 +
    }
 
}
 
}
 
</syntaxhighlight>
 
</syntaxhighlight>

Revision as of 05:56, 24 January 2013

Hooks are special methods in KAG 1.0 that are available to be defined in any script, and will run every time.

The list of hooks can be found at Base/Scripts/Interface/Hooks.txt.

Example

For example, let's say we wanted to show a welcome message to new players that joined. We'd create a mod named "welcome", add it to the gamemodes we want it in, and make a file called "welcome.as" that contained:

void onNewPlayerJoin( CRules@ this, CPlayer@ player ) {
    if (player !is null) {
       client_AddToChat("Welcome "+player.getUsername()+"!");
    }
}

onNewPlayerJoin is a Hook that is run whenever a new Player joins the server. This will send them a Chat message welcoming them.