Exemplo n.º 1
0
 private function LoadCharacterList($locale)
 {
     $db = ConnectCharacterDatabase($locale);
     $q = $db->query("\r\nSELECT\r\n\tcharacters.name,\r\n\tw.world_name,\r\n\tguild_members.rank,\r\n\tguild_members.alliance_rank,\r\n\tguild_members.contribution\r\nFROM\r\n\t`guild_members`\r\nLEFT JOIN \r\n\t`characters`\r\n\tON\r\n\t\tcharacters.id = guild_members.character_id\r\nLEFT JOIN \r\n\tworld_data w\r\n\tON\r\n\t\tw.world_id = characters.world_id\r\nWHERE \r\n\tguild_members.guild_id = " . $this->id . "\r\nAND\r\n\tguild_members.world_id = " . $this->world_id . "\r\nAND\r\n\tcharacters.name IS NOT NULL\r\nORDER BY\r\n\trank ASC");
     $this->members = array();
     while ($row = $q->fetch_assoc()) {
         $this->members[] = $row;
     }
 }
function IsOwnCharacter($charname, $locale)
{
    global $_loginaccount;
    $_char_db = ConnectCharacterDatabase($locale);
    $q = $_char_db->query("\r\nSELECT\r\n\tc.internal_id\r\nFROM\r\n\tcharacters c\r\nLEFT JOIN\r\n\tusers u\r\n\tON\r\n\t\tu.id = c.userid\r\nWHERE\r\n\tc.name = '" . $_char_db->real_escape_string($charname) . "'\r\n\tAND\r\n\tu.account_id = " . $_char_db->GetID());
    if ($q->num_rows > 0) {
        $row = $q->fetch_row();
        $q->free();
        return $row[0];
    }
    return false;
}
Exemplo n.º 3
0
 public static function GetAndroid($character_id, $locale)
 {
     $db = ConnectCharacterDatabase($locale);
     $q = $db->query("\r\nSELECT\r\n\t*\r\nFROM\r\n\tandroids\r\nWHERE\r\n\tcharacter_id = " . $character_id);
     if ($q->num_rows == 1) {
         $row = $q->fetch_assoc();
         $q->free();
         $droid = new Android();
         $droid->name = $row['name'];
         $droid->type = $row['type'];
         $droid->face = $row['face'];
         $droid->skin = $row['skin'];
         $droid->hair = $row['hair'];
         return $droid;
     }
     $q->free();
     return null;
 }
Exemplo n.º 4
0
 public function __construct($row, $locale)
 {
     $db = ConnectCharacterDatabase($locale);
     $this->type = ITEM_PET;
     parent::__construct($row);
     $temp = null;
     $q = $db->query("SELECT * FROM pets WHERE cashid = " . $this->cashid . " LIMIT 1");
     $temp = $q->fetch_assoc();
     $q->free();
     $this->name = $temp['name'];
     $this->closeness = (int) $temp['closeness'];
     $this->fullness = (int) $temp['fullness'];
     $this->level = (int) $temp['level'];
 }
function SetCharacterOption($id, $key, $locale, $value)
{
    $db = ConnectCharacterDatabase($locale);
    $q = $db->query("\nINSERT INTO\n\tcharacter_options\nVALUES\n(\n\t" . intval($id) . ",\n\t'" . $db->real_escape_string($key) . "',\n\t'" . $db->real_escape_string($value) . "'\n)\nON DUPLICATE KEY UPDATE\n\toption_value = VALUES(`option_value`)");
}
Exemplo n.º 6
0
<h2>Characters</h2>
<p><b>Tip:</b> For additional options, click on the avatar of a character.</p>
<?php 
require_once __DIR__ . '/../inc/avatar_faces.php';
$char_config = $_loginaccount->GetConfigurationOption('character_config', array('characters' => array(), 'main_character' => null));
$characternames = array();
$query = "\nSELECT \n\tchr.internal_id,\n\tchr.id,\n\tchr.name,\n\tw.world_name\nFROM \n\tcharacters chr \nLEFT JOIN \n\tusers usr \n\tON \n\t\tusr.ID = chr.userid \nLEFT JOIN \n\tworld_data w \n\tON \n\t\tw.world_id = chr.world_id \nWHERE \n\tusr.account_id = '" . $__database->real_escape_string($_loginaccount->GetID()) . "' \nORDER BY \n\tchr.world_id ASC,\n\tchr.level DESC\n";
// printing table rows
$cache = array();
$name_internal_id_list = array();
foreach (array('gms', 'ems') as $locale) {
    $db = ConnectCharacterDatabase($locale);
    $q = $db->query($query);
    while ($row = $q->fetch_assoc()) {
        $row['locale'] = $locale;
        $row['internal_name'] = $locale . ':' . $row['name'];
        $cache[] = $row;
        $characternames[] = $row['internal_name'];
        $name_internal_id_list[$row['internal_name']] = $row['internal_id'];
    }
    $q->free();
}
if ($_SERVER['REQUEST_METHOD'] == 'POST' && isset($_POST['char_shown_option'], $_POST['main_character'])) {
    $char_options = $_POST['char_shown_option'];
    $char_face_options = $_POST['char_face_option'];
    $main_char = $_POST['main_character'];
    $error = '';
    // Lets see if the 'new' main selected exists
    $found = in_array($main_char, $characternames);
    if (!$found) {
        $error = 'An error occurred while selecting the main character.';
    switch ($_GET['size']) {
        case 'original':
        case 'normal':
        case 'big':
        case 'huge':
            $size = $_GET['size'];
            break;
    }
}
$charname = isset($_GET['name']) ? $_GET['name'] : 'RoboticOil';
$tmp_ok = true;
$len = strlen($charname);
if ($len < 4 || $len > 12) {
    $tmp_ok = false;
} else {
    $__char_db = ConnectCharacterDatabase(CURRENT_LOCALE);
    $q = $__char_db->query("SELECT * FROM characters WHERE name = '" . $__char_db->real_escape_string($charname) . "'");
    if ($q->num_rows == 0) {
        $tmp_ok = false;
    }
}
if (!$tmp_ok) {
    echo file_get_contents('http://mapler.me/inc/img/no-character.png');
    die;
}
// Get character attributes
$character_data = $q->fetch_array();
$internal_id = $character_data['internal_id'];
$character_id = $character_data['id'];
$skin = $character_data['skin'] + 2000;
$face = $character_data['eyes'];
Exemplo n.º 8
0
 public function GetMainCharacterName()
 {
     $config = $this->GetConfigurationOption('character_config', array('characters' => array(), 'main_character' => null));
     $name = $config['main_character'];
     if ($name !== null) {
         if (strpos($name, ':') === false) {
             $name = 'gms:' . $name;
             $config['main_character'] = $name;
             $this->SetConfigurationOption('character_config', $config);
         }
         $parts = explode(':', $name);
         $name = $parts[1];
         $locale = $parts[0];
         // Check if exists
         $_char_db = ConnectCharacterDatabase($locale);
         $q = $_char_db->query("SELECT id FROM characters WHERE name = '" . $_char_db->real_escape_string($name) . "'");
         if ($q->num_rows == 0) {
             $name = null;
             $config['main_character'] = null;
             $this->SetConfigurationOption('character_config', $config);
         }
         $q->free();
         if ($name === null) {
             return null;
         }
         return array('locale' => $locale, 'name' => $name);
     }
     return null;
 }
Exemplo n.º 9
0
function GetAlliancedWorldName($worldid, $locale)
{
    $realid = GetAllianceWorldID($worldid, $locale);
    $db = ConnectCharacterDatabase($locale);
    $q = $db->query('SELECT world_name FROM world_data WHERE world_id = ' . intval($realid));
    $row = $q->fetch_row();
    $q->free();
    return $row[0];
}