Implemented Plugin Interface

This commit is contained in:
Shoghi Cervantes Pueyo 2012-12-26 13:33:43 +01:00
parent 00fea6461c
commit 987a6e635e
4 changed files with 22 additions and 4 deletions

View File

@ -161,3 +161,10 @@ class PluginAPI extends stdClass{
} }
} }
} }
interface Plugin{
public function __construct($api, $server = false);
public function init();
public function __destruct();
}

View File

@ -9,7 +9,7 @@ class=ExamplePlugin
*/ */
class ExamplePlugin{ class ExamplePlugin implements Plugin{
private $api; private $api;
public function __construct($api, $server = false){ public function __construct($api, $server = false){
$this->api = $api; $this->api = $api;
@ -19,6 +19,10 @@ class ExamplePlugin{
$this->api->console->register("example", "Example command", array($this, "handleCommand")); $this->api->console->register("example", "Example command", array($this, "handleCommand"));
} }
public function __destruct(){
}
public function handleCommand($cmd, $arg){ public function handleCommand($cmd, $arg){
switch($cmd){ switch($cmd){
case "example": case "example":

View File

@ -10,7 +10,7 @@ class=ReactorAsWater
*/ */
class ReactorAsWater{ class ReactorAsWater implements Plugin{
private $api; private $api;
public function __construct($api, $server = false){ public function __construct($api, $server = false){
$this->api = $api; $this->api = $api;
@ -21,6 +21,9 @@ class ReactorAsWater{
$this->api->addHandler("player.equipment.change", array($this, "handle"), 15); $this->api->addHandler("player.equipment.change", array($this, "handle"), 15);
} }
public function __destruct(){
}
public function handle(&$data, $event){ public function handle(&$data, $event){
switch($event){ switch($event){

View File

@ -10,7 +10,7 @@ class=SpawnChanger
*/ */
class SpawnChanger{ class SpawnChanger implements Plugin{
private $api, $config, $path; private $api, $config, $path;
public function __construct($api, $server = false){ public function __construct($api, $server = false){
$this->api = $api; $this->api = $api;
@ -37,6 +37,10 @@ class SpawnChanger{
$this->api->console->register("spawn", "Teleports to spawn", array($this, "command")); $this->api->console->register("spawn", "Teleports to spawn", array($this, "command"));
} }
public function __destruct(){
}
public function command($cmd, $args){ public function command($cmd, $args){
switch($cmd){ switch($cmd){
case "spawnchanger": case "spawnchanger":