Aber, aber, aber! Schreien einige. Ich moechte gerne die mailScreen-Klasse erweitern, aber es ist doch alles verschluesselt! Wie mache ich das denn?
Dafuer gibt es auch Abhilfe.
Es wird einen Plugin-Ordner geben, unter twlan-dir/lib/plugins/.
Nehmen wir einfach mal einen Beispiel-Code, um die mailScreen zu erweitern.
lib/plugins/MailPlugin.plugin.php
Dazu legen wir ein Template an!
templates/game_mail_foo.tpl
D.h. die game.php?screen=mail&mode=foo wuerde auf die MailExtension::mailFooMode() umgeleitet.
Das wuerde dann so aussehen:
Klick!
Hiermit kann man auch bereits bestehende Methoden, wie zum Beispiel die mailScreen::main() ersetzen.
Dafuer gibt es auch Abhilfe.
Es wird einen Plugin-Ordner geben, unter twlan-dir/lib/plugins/.
Nehmen wir einfach mal einen Beispiel-Code, um die mailScreen zu erweitern.
lib/plugins/MailPlugin.plugin.php
PHP Code:
/**
* Hello World!
*
* @author Christopher <christopher@twlan.org>
*/
class MailPlugin extends AbstractObject implements PluginInterface {
public function registerPlugins() {
// $this->plugins->registerScreenMethod($screenClassName, $methodName, $callback);
$this->plugins->registerScreenMethod('mailScreen', 'fooMode', array(&$this, 'mailFooMode'));
}
public function mailFooMode() {
$this->tpl->assign('foo', 'haha');
}
}
Dazu legen wir ein Template an!
templates/game_mail_foo.tpl
Code:
<h2>N Abend</h2>
{$foo}
D.h. die game.php?screen=mail&mode=foo wuerde auf die MailExtension::mailFooMode() umgeleitet.
Das wuerde dann so aussehen:
Klick!
Hiermit kann man auch bereits bestehende Methoden, wie zum Beispiel die mailScreen::main() ersetzen.
[ GfX-Dose Forum ]