function sendNotification($id, $sender, $public) { echo '<h1>'; echo $sender ? 'With sender' : 'Without sender'; echo ' and '; echo $public ? 'public' : 'private'; echo '</h1>'; $player = Dolumar_Players_Player::getFromId($id); $other = Dolumar_Players_Player::getFromId(Neuron_Core_Tools::getInput('_GET', 'from', 'int', 1)); if ($sender) { echo '<p>Message was sent from ' . $other->getNickname() . '.</p>'; } $player->sendNotification('test', 'system', array('target' => $other, 'defender' => $other->getMainVillage(), 'pl_defender' => $other, 'village' => $player->getMainVillage(), 'player' => $player), $sender ? $other : null, $public); echo '<p style="color: green;">A notification has been sent to user ' . $player->getName() . '.</p>'; }
<?php $player = new Dolumar_Players_Player(1); echo print_r($player->calculateNewStartLocation(array(0, 0), Dolumar_Races_Race::getRace('DarkElves')));
public function addEndVacationLog(Dolumar_Players_Player $member) { $village = $member->getMainVillage(); $this->addLog($village, 'vacation_end'); }
<?php define('NOTIFICATION_DEBUG', true); //echo '<h1>With sender & private</h1>'; //$player->sendNotification ('test', 'system', array ('user' => $other), $other); $plid = Neuron_Core_Tools::getInput('_GET', 'id', 'int', 0); $action = Neuron_Core_Tools::getInput('_GET', 'action', 'varchar', false); $player = $plid > 0 ? Dolumar_Players_Player::getFromId($plid) : false; if ($player) { $player->updateScore(); } else { echo '<p style="color: red;">User not found! Append id=USER_ID to the URL.</p>'; }
<?php define('NOTIFICATION_DEBUG', true); $player = Dolumar_Players_Player::getFromId(612); //echo '<h1>With sender & private</h1>'; //$player->sendNotification ('test', 'system', array ('user' => $other), $other); echo '<h1>Updating profilebox</h1>'; /* $pl_attacker->sendNotification ( 'attacking', 'battle', array ( 'defender' => $oTarget, 'pl_defender' => $oTarget->getOwner (), 'village' => $this ), $pl_attacker, true // This is a public message ); */ $player->updateProfilebox(); echo '<p style="color: green;">Players ' . $player->getName() . ' profilebox has been updated.</p>';
public function getPlayerSide(Dolumar_Players_Player $player) { //return new Dolumar_Underworld_Models_Side (1); $clan = $player->getMainClan(); if ($clan) { if ($side = $this->getSide($clan)) { return $side; } else { return new Dolumar_Underworld_Models_Side(0); } } else { return new Dolumar_Underworld_Models_Side(0); } }
public static function removeLeader(Dolumar_Underworld_Models_Army $army, Dolumar_Players_Player $player) { Neuron_DB_Database::getInstance()->query("\n\t\t\tDELETE FROM\n\t\t\t\tunderworld_armies_leaders\n\t\t\tWHERE\n\t\t\t\tua_id = {$army->getId()} AND\n\t\t\t\tplid = {$player->getId()}\n\t\t"); }
public function canView(Dolumar_Players_Player $me) { $mission = $this->getMap()->getMission(); $side = $mission->getSide($me->getMainClan()); return $this->getSide()->equals($side); }
<?php define('NOTIFICATION_DEBUG', true); $player = Dolumar_Players_Player::getFromId(Neuron_Core_Tools::getInput('_GET', 'user', 'int')); //echo '<h1>With sender & private</h1>'; //$player->sendNotification ('test', 'system', array ('user' => $other), $other); echo '<h1>Updating profilebox</h1>'; /* $pl_attacker->sendNotification ( 'attacking', 'battle', array ( 'defender' => $oTarget, 'pl_defender' => $oTarget->getOwner (), 'village' => $this ), $pl_attacker, true // This is a public message ); */ $player->updateScore(); echo '<p style="color: green;">Players ' . $player->getName() . ' profilebox has been updated.</p>';
public function getRefresh() { $db = Neuron_Core_Database::__getInstance(); $input = $this->getRequestData(); if (!isset($input['channel'])) { $this->switchChannel($this->getDefaultChannel()); } else { $this->channel = intval($input['channel']); } $data = $this->getRequestData(); $newStuff = $data['lastMessage']; $maxtime = NOW + 25; // Check for new messages $messages = $this->getLastMessages($newStuff); if ($messages === false) { return; } // Close the session (lock) session_write_close(); // Only use persistent connection if we also use memcache // Otherwise it would stress out the database $usePersistence = self::USE_PERSISTENT_CONNECTIONS && defined('MEMCACHE_IP'); // Sleep until there are messages if ($usePersistence) { while (count($messages) == 0 && time() < $maxtime) { // Check again $messages = $this->getLastMessages($newStuff); if ($messages === false) { return; } // Sleep half a second //usleep (500); usleep(0.5 * 1000000); } } else { $messages = $this->getLastMessages($newStuff); if ($messages == false) { return; } } // Debug check if (count($messages) == 0) { return; } $page = new Neuron_Core_Template(); $i = 0; $login = Neuron_Core_Login::__getInstance(); $plid = $login->isLogin() ? $login->getUserId() : 0; $player = Neuron_GameServer::getPlayer(); foreach ($messages as $v) { $sender = Neuron_GameServer::getPlayer($v['plid']); $biggest = $v['msgId']; if ($player && $player->isIgnoring($v['plid'])) { continue; } $i++; $sTarget = null; $iTarget = null; $message = $v['msg']; /* const CHAT_GROUP_ALL = 0; const CHAT_GROUP_USER = 1; const CHAT_GROUP_CLAN = 2; */ switch ($v['target_group']) { case self::CHAT_GROUP_USER: $sClassname = 'message'; $sTarget = Dolumar_Players_Player::getFromId($v['target_id'])->getDisplayName(); $iTarget = $v['target_id']; break; case self::CHAT_GROUP_CLAN: $sClassname = 'clan'; break; case self::CHAT_GROUP_ALL: default: switch ($v['mtype']) { case self::CHAT_CLASS_ME: $sClassname = 'all me'; break; case self::CHAT_CLASS_REGULAR: default: $sClassname = 'all'; break; } break; } $page->addListValue('msgs', array('message' => Neuron_Core_Tools::output_text($message, true, true, false, false), 'date' => date(self::DATE_FORMAT, $v['datum']), 'nickname' => $sender->getDisplayName(), 'plid' => $v['plid'], 'class' => $sClassname, 'target' => $sTarget, 'targetId' => $iTarget, 'isMine' => $v['plid'] == $plid)); } if ($i > 0) { // Shouldn't ever be true... but well, just to be sure. if ($biggest > $this->objCache->getCache($this->sCacheKey)) { $this->objCache->setCache($this->sCacheKey, $biggest); } $this->addHtmlToElement('chatdiv', $page->parse('chatmsgs.tpl'), 'bottom'); } if ($biggest > $newStuff) { $this->updateRequestData(array('lastMessage' => $biggest, 'channel' => $this->channel)); } }