. * * * ************************************************************************ * * main.php * * initial php file * */ declare(ticks = 1); error_reporting(E_ALL & ~E_STRICT); require_once("Uplink/Uplink.class.php"); require_once("ModCMD/ModCMD.class.php"); require_once("BotLoader/BotLoader.class.php"); require_once("Tools/timer.inc.php"); require_once("Tools/Table.class.php"); if(function_exists("pcntl_signal")) { pcntl_signal(SIGINT, 'shutdown'); pcntl_signal(SIGTERM, 'shutdown'); } function myErrorHandler($errorcode, $errortext, $errorfile, $errorline) { switch ($errorcode) { case E_USER_ERROR: echo $errorcode.': '.$errortext.' in '.$errorfile.' Line '.$errorline; break; case E_USER_WARNING: echo $errorcode.': '.$errortext.' in '.$errorfile.' Line '.$errorline; break; case E_USER_NOTICE: echo $errorcode.': '.$errortext.' in '.$errorfile.' Line '.$errorline; break; default: echo $errorcode.': '.$errortext.' in '.$errorfile.' Line '.$errorline; break; } return true; } $error_handler = set_error_handler("myErrorHandler"); //basicly here is nothing, yet :D $uplink = new Uplink(); require_once("config.inc.php"); $uplink->setEventHandler(ModCMD::getEventHandler()); $uplink->initialize(); $botloader = new BotLoader($uplink); $botloader->loadBots(); BotLoader::load("ModManager", "ModManager.class.php"); function shutdown($signal = 0) { global $botloader; global $uplink; echo "\n\nrecived shutdown instruction...\n"; $botloader->unloadBots(); $botloader->save(); $uplink->shutdown(); exit; } while(true) { $uplink->loop(); $botloader->loop(); timer_loop(); if(function_exists("pcntl_signal_dispatch")) pcntl_signal_dispatch(); } ?>