コード例 #1
0
ファイル: guilds_model.php プロジェクト: Alexy234/modernaac
 public function createGuild($name, $character)
 {
     $ots = POT::getInstance();
     $ots->connect(POT::DB_MYSQL, connection());
     $player = new OTS_Player();
     $player->load($character);
     $new_guild = new OTS_Guild();
     $new_guild->setCreationData(time());
     $new_guild->setName($name);
     $new_guild->setOwner($player);
     $new_guild->save();
     $new_guild->setCustomField('motd', 'New guild. Leader must edit this text :)');
     $new_guild->setCustomField('creationdata', time());
     $new_guild->setCustomField('world_id', $player->getWorld());
     $ranks = $new_guild->getGuildRanksList();
     $ranks->orderBy('level', POT::ORDER_DESC);
     foreach ($ranks as $rank) {
         if ($rank->getLevel() == 3) {
             $player->setRank($rank);
             $player->save();
         }
     }
     $ide = new IDE();
     $ide->redirect(WEBSITE . "/index.php/guilds/view/" . $new_guild->getId());
     success("{$name} has been created.");
 }
コード例 #2
0
 public function listRequests()
 {
     $invites = array();
     foreach ($this->db->query('SELECT ' . $this->db->fieldName('player_id') . ' FROM ' . $this->db->tableName('guild_invites') . ' WHERE ' . $this->db->fieldName('guild_id') . ' = ' . $this->db->quote($this->guild->id)) as $invite) {
         $player = new OTS_Player();
         $player->load($invite['player_id']);
         $invites[] = $player;
     }
     return $invites;
 }
コード例 #3
0
 /**
  * @version 0.1.0
  * @return array Array of OTS_Player objects from given account.
  * @throws E_OTS_NotLoaded If account is not loaded.
  * @deprecated 0.0.5 Use getPlayersList().
  */
 public function getPlayers()
 {
     if (!isset($this->data['id'])) {
         throw new E_OTS_NotLoaded();
     }
     $players = array();
     foreach ($this->db->query('SELECT ' . $this->db->fieldName('id') . ' FROM ' . $this->db->tableName('players') . ' WHERE ' . $this->db->fieldName('account_id') . ' = ' . $this->data['id'])->fetchAll() as $player) {
         // creates new object
         $object = new OTS_Player();
         $object->load($player['id']);
         $players[] = $object;
     }
     return $players;
 }
コード例 #4
0
ファイル: characters.php プロジェクト: Codex-NG/poketibia
     $bgcolor = $config['site']['lightborder'];
 }
 $number_of_rows++;
 $main_content .= '<TR BGCOLOR="' . $bgcolor . '"><TD>Sex:</TD><TD>';
 $main_content .= $player->getSex() == 0 ? 'female' : 'male';
 $main_content .= '</TD></TR>';
 if ($config['site']['show_marriage_info']) {
     if (is_int($number_of_rows / 2)) {
         $bgcolor = $config['site']['darkborder'];
     } else {
         $bgcolor = $config['site']['lightborder'];
     }
     $number_of_rows++;
     $main_content .= '<TR BGCOLOR="' . $bgcolor . '"><TD>Marital status:</TD><TD>';
     $marriage = new OTS_Player();
     $marriage->load($player->getMarriage());
     if ($marriage->isLoaded()) {
         $main_content .= 'married to <a href="?subtopic=characters&name=' . urlencode($marriage->getName()) . '"><b>' . $marriage->getName() . '</b></a></TD></TR>';
     } else {
         $main_content .= 'single</TD></TR>';
     }
 }
 if (is_int($number_of_rows / 2)) {
     $bgcolor = $config['site']['darkborder'];
 } else {
     $bgcolor = $config['site']['lightborder'];
 }
 $number_of_rows++;
 $main_content .= '<TR BGCOLOR="' . $bgcolor . '"><TD>Profession:</TD><TD>' . $vocation_name[$player->getWorld()][$player->getPromotion()][$player->getVocation()] . '</TD></TR>';
 if (is_int($number_of_rows / 2)) {
     $bgcolor = $config['site']['darkborder'];
コード例 #5
0
ファイル: OTS_Guild.php プロジェクト: Codex-NG/poketibia
 /**
  * Returns owning player of this player.
  * 
  * @version 0.1.0
  * @return OTS_Player Owning player.
  * @throws E_OTS_NotLoaded If guild is not loaded.
  * @throws PDOException On PDO operation error.
  */
 public function getOwner()
 {
     if (!isset($this->data['ownerid'])) {
         throw new E_OTS_NotLoaded();
     }
     $owner = new OTS_Player();
     $owner->load($this->data['ownerid']);
     return $owner;
 }
コード例 #6
0
ファイル: guilds.php プロジェクト: Alexy234/modernaac
 public function join($guild_name, $player_name)
 {
     $guild_name = (int) $guild_name;
     $player_name = (int) $player_name;
     $ide = new IDE();
     if (empty($guild_name) or empty($player_name)) {
         $ide->redirect(WEBSITE . "/index.php/guilds");
     }
     $ots = POT::getInstance();
     $ots->connect(POT::DB_MYSQL, connection());
     $guild = $ots->createObject('Guild');
     $guild->load($guild_name);
     if (!$guild->isLoaded()) {
         $ide->redirect(WEBSITE . "/index.php/guilds");
     }
     $player = new OTS_Player();
     $player->load($player_name);
     if (!$player->isLoaded()) {
         $ide->redirect(WEBSITE . "/index.php/guilds");
     }
     if ($player->getAccount()->getId() != $_SESSION['account_id']) {
         $ide->redirect(WEBSITE . "/index.php/guilds");
     }
     require_once 'system/application/libraries/POT/InvitesDriver.php';
     new InvitesDriver($guild);
     $invited_list = $guild->listInvites();
     if (!in_array($player->getId(), $invited_list)) {
         $ide->redirect(WEBSITE . "/index.php/guilds");
     }
     $guild->acceptInvite($player);
     $ide->redirect(WEBSITE . "/index.php/guilds/view/" . $guild->getId() . "/1");
 }
コード例 #7
0
ファイル: OTS_House.php プロジェクト: Tobbebror/POT
 /**
  * Returns current house owner.
  * 
  * @version 0.1.0
  * @since 0.1.0
  * @return OTS_Player|null Player that currently owns house (null if there is no owner).
  */
 public function getOwner()
 {
     if (isset($this->data['owner']) && $this->data['owner'] != 0) {
         $player = new OTS_Player();
         $player->load($this->data['owner']);
         return $player;
     } else {
         return null;
     }
 }
コード例 #8
0
ファイル: OTS_Auction.php プロジェクト: Tobbebror/POT
 /**
  * Returns current house auction player winner.
  * 
  * @version 0.1.0
  * @since 0.2.0b+SVN
  * @return OTS_Player|null Player that currently wins house auction (null if there is no one).
  */
 public function getPlayer()
 {
     if (isset($this->data['player_id'])) {
         $player = new OTS_Player();
         $player->load($this->data['player_id']);
         return $player;
     } else {
         return null;
     }
 }
コード例 #9
0
ファイル: driver.php プロジェクト: Tobbebror/POT
    }
    // commits invitation
    public function submitRequest(OTS_Player $player)
    {
        $rank = null;
        // finds normal member rank
        foreach ($this->guild->getGuildRanks() as $guildRank) {
            if ($guildRank->getLevel() == 1) {
                $rank = $guildRank;
                break;
            }
        }
        $player->setRank($rank);
        $player->save();
        // clears invitation
        $this->deleteRequest($player);
    }
}
/*
    Parts of this class driver has been taken from OTSCMS (http://otscms.com/) project source code.
*/
// loads player wiht ID 1
$player = new OTS_Player();
$player->load(1);
// loads guild with ID 1
$guild = new OTS_Guild();
$guild->load(1);
// creates invitation logic driver for your implementation for current guild
new InvitesDriver($guild);
// note that you call guild method!
$guild->invite($player);