-  |
-
-
-
- Character Information |
-
+
+  |
+
+
+
+ Character Information |
+
- getCustomField('country'));
-
- echo
- ''.
- 'Name: |
- ' . $flag . ' '.$player->getName().''.$oldName.
- ' | ';
-
- echo
- 'Sex: | '.
- ($player->getSex() == 0 ? 'female' : 'male').
- ' | ';
-
- if($config['characters']['marriage_info'] && fieldExist('marriage', 'players'))
- {
- echo
- 'Marital status: | ';
- $marriage = new OTS_Player();
- $marriage->load($player->getMarriage());
- if($marriage->isLoaded())
- echo 'married to ' . getPlayerLink($marriage->getName());
- else
- echo 'single';
- echo
- ' | ';
- }
+ getCustomField('country'));
echo
- ''.
- 'Profession: | ' . $config['vocations'][$player->getVocation()] . ' | '.
- ' ';
-
- if($config['characters']['level'])
- echo 'Level: | '.$player->getLevel().' | ';
-
- if($config['characters']['experience'])
- echo 'Experience: | '.$player->getExperience().' | ';
-
- if($config['characters']['magic_level'])
- echo'Magic Level: | '.$player->getMagLevel().' | ';
-
- //frags
- if(tableExist('player_killers') && $config['characters']['frags']) {
- $frags_count = 0;
- $frags_query = $db->query(
- 'SELECT COUNT(`player_id`) as `frags`' .
- 'FROM `player_killers`' .
- 'WHERE `player_id` = ' .$player->getId() . ' ' .
- 'GROUP BY `player_id`' .
- 'ORDER BY COUNT(`player_id`) DESC');
-
- if($frags_query->rowCount() > 0)
- {
- $frags_query = $frags_query->fetch();
- $frags_count = $frags_query['frags'];
- }
-
- echo
- 'Frags: | ' . $frags_count . ' | ';
- }
-
- if(!empty($config['towns'][$player->getTownId()]))
- echo 'Residence: | ' . $config['towns'][$player->getTownId()] . ' | ';
-
- if($config['characters']['balance'])
- echo 'Balance: | '.$player->getBalance().' Gold Coins. | ';
-
- $town_field = 'town';
- if(fieldExist('town_id', 'houses'))
- $town_field = 'town_id';
- else if(fieldExist('townid', 'houses'))
- $town_field = 'townid';
-
- $house = $db->query('SELECT `id`, `paid`, `name`, `' . $town_field . '` FROM `houses` WHERE `owner` = '.$player->getId())->fetch();
- if(isset($house['id']))
- {
- if($house['paid'] > 0)
- $add = ' is paid until '.date("M d Y", $house['paid']);
-
- echo
- '
- House: |
-
-
- '.$house['name'].' ('.$config['towns'][$house[$town_field]].')'.$add.' |
-
-
- |
-
- |
- ';
- }
-
- $rank_of_player = $player->getRank();
- if($rank_of_player->isLoaded()) {
- $guild = $rank_of_player->getGuild();
- if($guild->isLoaded()) {
- $guild_name = $guild->getName();
- echo
- ''.
- 'Guild membership: | '.$rank_of_player->getName().' of the ' . getGuildLink($guild_name) . ' | '.
- ' ';
- }
- }
+ ''.
+ 'Name: |
+ ' . $flag . ' '.$player->getName().''.$oldName.
+ ' | ';
echo
- 'Last login: | ';
- $lastlogin = $player->getLastLogin();
- if(empty($lastlogin))
- echo 'Never logged in.';
+ ' | Sex: | '.
+ ($player->getSex() == 0 ? 'female' : 'male').
+ ' | ';
+
+ if($config['characters']['marriage_info'] && fieldExist('marriage', 'players'))
+ {
+ echo
+ 'Marital status: | ';
+ $marriage = new OTS_Player();
+ $marriage->load($player->getMarriage());
+ if($marriage->isLoaded())
+ echo 'married to ' . getPlayerLink($marriage->getName());
else
- echo date("M d Y, H:i:s", $lastlogin).' CEST';
-
- echo ' | ';
- if($config['characters']['creation_date'])
- echo
- 'Created: | '.date("M d Y, H:i:s", $player->getCreated()).' CEST | ';
-
- $comment = $player->getComment();/*
- $newlines = array("\r\n", "\n", "\r");
- $comment_with_lines = str_replace($newlines, ' ', $comment, $count);
- if($count < 50)
- $comment = $comment_with_lines;*/
- if(!empty($comment))
- echo 'Comment: | ' . wordwrap(nl2br($comment), 60, " ", true) . ' | ';
+ echo 'single';
+ echo
+ '';
+ }
echo
- 'Account Status: | ' . (($account->isPremium()) ? 'Premium Account' : 'Free Account') . ' | '.
- ' ';
+ ' | '.
+ 'Profession: | ' . $config['vocations'][$player->getVocation()] . ' | '.
+ ' ';
- echo ' '.
- '';
+ if($config['characters']['level'])
+ echo ' Level: | '.$player->getLevel().' | ';
- if($config['characters']['skills'])
- {
- if(fieldExist('skill_fist', 'players')) {// tfs 1.0+
- $skills_db = $db->query('SELECT `skill_fist`, `skill_club`, `skill_sword`, `skill_axe`, `skill_dist`, `skill_shielding`, `skill_fishing` FROM `players` WHERE `id` = ' . $player->getId())->fetch();
-
- $skill_ids = array(
- POT::SKILL_FIST => 'skill_fist',
- POT::SKILL_CLUB => 'skill_club',
- POT::SKILL_SWORD => 'skill_sword',
- POT::SKILL_AXE => 'skill_axe',
- POT::SKILL_DIST => 'skill_dist',
- POT::SKILL_SHIELD => 'skill_shielding',
- POT::SKILL_FISH => 'skill_fishing',
- );
-
- $skills = array();
- foreach($skill_ids as $skillid => $field_name) {
- $skills[] = array('skillid' => $skillid, 'value' => $skills_db[$field_name]);
- }
- }
- else
- $skills = $db->query('SELECT `skillid`, `value` FROM `player_skills` WHERE `player_id` = ' . $player->getId() . ' LIMIT 7');
- echo '
- '.
- '
-
- Skills |
- ';
+ if($config['characters']['experience'])
+ echo 'Experience: | '.$player->getExperience().' | ';
- $i = 0;
- foreach($skills as $skill)
- {
- echo
- '
- ' . getSkillName($skill['skillid']) . ' |
- ' . $skill['value'] . ' |
- ';
- }
+ if($config['characters']['magic_level'])
+ echo'Magic Level: | '.$player->getMagLevel().' | ';
- echo
- '
- | ';
- }
+ //frags
+ if(tableExist('player_killers') && $config['characters']['frags']) {
+ $frags_count = 0;
+ $frags_query = $db->query(
+ 'SELECT COUNT(`player_id`) as `frags`' .
+ 'FROM `player_killers`' .
+ 'WHERE `player_id` = ' .$player->getId() . ' ' .
+ 'GROUP BY `player_id`' .
+ 'ORDER BY COUNT(`player_id`) DESC');
- if($config['characters']['quests'] && !empty($config['quests']))
- {
- $quests = $config['quests'];
- $sql_query_in = '';
- $i = 0;
- foreach($quests as $quest_name => $quest_storage)
- {
- if($i != 0)
- $sql_query_in .= ', ';
-
- $sql_query_in .= $quest_storage;
- $i++;
- }
-
- $storage_sql = $db->query('SELECT `key`, `value` FROM `player_storage` WHERE `player_id` = '.$player->getId().' AND `key` IN (' . $sql_query_in . ')');
- $player_storage = array();
- foreach($storage_sql as $storage)
- $player_storage[$storage['key']] = $storage['value'];
-
- echo '
- '.
- '
-
- Quests |
- ';
-
- //for($i=0; $i < count($quests); $i++)
- $i = 0;
- foreach($quests as $name => $storage)
- {
- $i++;
- echo
- '
- '.$name.' |
- .'.png) |
- ';
- }
-
- echo
- '
- | ';
- }
-
- if($config['characters']['equipment'])
- {
- echo '
- '.
- ''.
- 'Equipment | '.
- ''.generate_player_lookup($player).' |
-
- | ';
- }
-
- echo ' ';
-
-
- if(tableExist('killers')) {
- $player_deaths = $db->query('SELECT `id`, `date`, `level` FROM `player_deaths` WHERE `player_id` = '.$player->getId().' ORDER BY `date` DESC LIMIT 0,10;');
- if(count($player_deaths))
+ if($frags_query->rowCount() > 0)
{
- $dead_add_content = '
Character Deaths | ';
+ $frags_query = $frags_query->fetch();
+ $frags_count = $frags_query['frags'];
+ }
- $number_of_rows = 0;
- foreach($player_deaths as $death)
- {
- $dead_add_content .= "
- ".date("j M Y, H:i", $death['date'])." |
- ";
- $killers = $db->query("SELECT environment_killers.name AS monster_name, players.name AS player_name, players.deleted AS player_exists FROM killers LEFT JOIN environment_killers ON killers.id = environment_killers.kill_id
- LEFT JOIN player_killers ON killers.id = player_killers.kill_id LEFT JOIN players ON players.id = player_killers.player_id
- WHERE killers.death_id = '".$death['id']."' ORDER BY killers.final_hit DESC, killers.id ASC")->fetchAll();
+ echo
+ ' | Frags: | ' . $frags_count . ' | ';
+ }
- $i = 0;
- $count = count($killers);
- foreach($killers as $killer)
- {
- $i++;
- if($killer['player_name'] != "")
- {
- if($i == 1)
- $dead_add_content .= "Killed at level ".$death['level']."";
- else if($i == $count)
- $dead_add_content .= " and";
- else
- $dead_add_content .= ",";
+ if(!empty($config['towns'][$player->getTownId()]))
+ echo 'Residence: | ' . $config['towns'][$player->getTownId()] . ' | ';
- $dead_add_content .= " by ";
- if($killer['monster_name'] != "")
- $dead_add_content .= $killer['monster_name']." summoned by ";
+ if($config['characters']['balance'])
+ echo 'Balance: | '.$player->getBalance().' Gold Coins. | ';
- if($killer['player_exists'] == 0)
- $dead_add_content .= getPlayerLink($killer['player_name']);
- else
- $dead_add_content .= $killer['player_name'];
- }
- else
- {
- if($i == 1)
- $dead_add_content .= "Died at level ".$death['level']."";
- else if($i == $count)
- $dead_add_content .= " and";
- else
- $dead_add_content .= ",";
+ $town_field = 'town';
+ if(fieldExist('town_id', 'houses'))
+ $town_field = 'town_id';
+ else if(fieldExist('townid', 'houses'))
+ $town_field = 'townid';
+
+ $house = $db->query('SELECT `id`, `paid`, `name`, `' . $town_field . '` FROM `houses` WHERE `owner` = '.$player->getId())->fetch();
+ if(isset($house['id']))
+ {
+ if($house['paid'] > 0)
+ $add = ' is paid until '.date("M d Y", $house['paid']);
- $dead_add_content .= " by ".$killer['monster_name'];
- }
- }
+ echo
+ '
+ House: |
+
+
+ '.$house['name'].' ('.$config['towns'][$house[$town_field]].')'.$add.' |
+
+
+ |
+
+ |
+ ';
+ }
- $dead_add_content .= ".";
- }
-
- if($number_of_rows > 0)
- echo $dead_add_content . ' ';
+ $rank_of_player = $player->getRank();
+ if($rank_of_player->isLoaded()) {
+ $guild = $rank_of_player->getGuild();
+ if($guild->isLoaded()) {
+ $guild_name = $guild->getName();
+ echo
+ ''.
+ 'Guild membership: | '.$rank_of_player->getName().' of the ' . getGuildLink($guild_name) . ' | '.
+ ' ';
}
}
- else {
- $deaths = $db->query('SELECT
- `player_id`, `time`, `level`, `killed_by`, `is_player`,
- `mostdamage_by`, `mostdamage_is_player`, `unjustified`, `mostdamage_unjustified`
- FROM `player_deaths`
- WHERE `player_id` = ' . $player->getId() . ' ORDER BY `time` DESC LIMIT 10;');
- if(count($deaths))
+ echo
+ 'Last login: | ';
+ $lastlogin = $player->getLastLogin();
+ if(empty($lastlogin))
+ echo 'Never logged in.';
+ else
+ echo date("M d Y, H:i:s", $lastlogin).' CEST';
+
+ echo ' | ';
+ if($config['characters']['creation_date'])
+ echo
+ 'Created: | '.date("M d Y, H:i:s", $player->getCreated()).' CEST | ';
+
+ $comment = $player->getComment();/*
+ $newlines = array("\r\n", "\n", "\r");
+ $comment_with_lines = str_replace($newlines, ' ', $comment, $count);
+ if($count < 50)
+ $comment = $comment_with_lines;*/
+ if(!empty($comment))
+ echo 'Comment: | ' . wordwrap(nl2br($comment), 60, " ", true) . ' | ';
+
+ echo
+ 'Account Status: | ' . (($account->isPremium()) ? 'Premium Account' : 'Free Account') . ' | '.
+ ' ';
+
+ echo ' '.
+ '';
+
+ if($config['characters']['skills'])
{
- $dead_add_content = '
Character Deaths | ';
-
- $number_of_rows = 0;
- foreach($deaths as $death)
- {
- $dead_add_content .= "
- ".date("j M Y, H:i", $death['time'])." |
- ";
-
- $lasthit = ($death['is_player']) ? getPlayerLink($death['killed_by']) : $death['killed_by'];
- $dead_add_content .= 'Killed at level ' . $death['level'] . ' by ' . $lasthit;
- if($death['unjustified']) {
- $dead_add_content .= " (unjustified)";
- }
-
- $mostdmg = ($death['mostdamage_by'] !== $death['killed_by']) ? true : false;
- if($mostdmg)
- {
- $mostdmg = ($death['mostdamage_is_player']) ? getPlayerLink($death['mostdamage_by']) : $death['mostdamage_by'];
- $dead_add_content .= ' and by ' . $mostdmg;
-
- if ($death['mostdamage_unjustified']) {
- $dead_add_content .= " (unjustified)";
- }
- }
- else {
- $dead_add_content .= " (soloed)";
- }
+ if(fieldExist('skill_fist', 'players')) {// tfs 1.0+
+ $skills_db = $db->query('SELECT `skill_fist`, `skill_club`, `skill_sword`, `skill_axe`, `skill_dist`, `skill_shielding`, `skill_fishing` FROM `players` WHERE `id` = ' . $player->getId())->fetch();
- $dead_add_content .= ". | ";
+ $skill_ids = array(
+ POT::SKILL_FIST => 'skill_fist',
+ POT::SKILL_CLUB => 'skill_club',
+ POT::SKILL_SWORD => 'skill_sword',
+ POT::SKILL_AXE => 'skill_axe',
+ POT::SKILL_DIST => 'skill_dist',
+ POT::SKILL_SHIELD => 'skill_shielding',
+ POT::SKILL_FISH => 'skill_fishing',
+ );
+
+ $skills = array();
+ foreach($skill_ids as $skillid => $field_name) {
+ $skills[] = array('skillid' => $skillid, 'value' => $skills_db[$field_name]);
+ }
}
-
- if($number_of_rows > 0)
- echo $dead_add_content . ' ';
- }
- }
+ else
+ $skills = $db->query('SELECT `skillid`, `value` FROM `player_skills` WHERE `player_id` = ' . $player->getId() . ' LIMIT 7');
+ echo '
+ '.
+ '
+
+ Skills |
+ ';
- if($config['characters']['frags'])
- {
- //frags list by Xampy
- $i = 0;
- $frags_limit = 10; // frags limit to show? // default: 10
- $player_frags = $db->query('SELECT `player_deaths`.*, `players`.`name`, `killers`.`unjustified` FROM `player_deaths` LEFT JOIN `killers` ON `killers`.`death_id` = `player_deaths`.`id` LEFT JOIN `player_killers` ON `player_killers`.`kill_id` = `killers`.`id` LEFT JOIN `players` ON `players`.`id` = `player_deaths`.`player_id` WHERE `player_killers`.`player_id` = '.$player->getId().' ORDER BY `date` DESC LIMIT 0,'.$frags_limit.';');
- if(count($player_frags))
+ $i = 0;
+ foreach($skills as $skill)
+ {
+ echo
+ '
+ ' . getSkillName($skill['skillid']) . ' |
+ ' . $skill['value'] . ' |
+ ';
+ }
+
+ echo
+ '
+ | ';
+ }
+
+ if($config['characters']['quests'] && !empty($config['quests']))
{
- $frags = 0;
- $frag_add_content .= '
Victims | ';
- foreach($player_frags as $frag)
+ $quests = $config['quests'];
+ $sql_query_in = '';
+ $i = 0;
+ foreach($quests as $quest_name => $quest_storage)
{
- $frags++;
- $frag_add_content .= '
- ' . date("j M Y, H:i", $frag['date']) . ' |
- Fragged ' . $frag[name] . ' at level ' . $frag[level];
+ if($i != 0)
+ $sql_query_in .= ', ';
- $frag_add_content .= ". (".(($frag['unjustified'] == 0) ? "Justified" : "Unjustified").") | ";
+ $sql_query_in .= $quest_storage;
+ $i++;
}
- if($frags > 0)
- echo $frag_add_content . ' ';
+
+ $storage_sql = $db->query('SELECT `key`, `value` FROM `player_storage` WHERE `player_id` = '.$player->getId().' AND `key` IN (' . $sql_query_in . ')');
+ $player_storage = array();
+ foreach($storage_sql as $storage)
+ $player_storage[$storage['key']] = $storage['value'];
+
+ echo '
+ '.
+ '
+
+ Quests |
+ ';
+
+ //for($i=0; $i < count($quests); $i++)
+ $i = 0;
+ foreach($quests as $name => $storage)
+ {
+ $i++;
+ echo
+ '
+ '.$name.' |
+ .'.png) |
+ ';
+ }
+
+ echo
+ '
+ | ';
}
- }
- //Signature
- //Js
- if($config['signature_enabled'])
- {
- echo '';
- echo '
- Signature |
- ';
- $signature_url = BASE_URL . 'tools/signature/?name=' . urlencode($player->getName());
- if($config['friendly_urls'])
- $signature_url = BASE_URL . urlencode($player->getName()) . '.png';
-
- echo '
-
-
- Show links
-
-
- |
- ';
- }
-
- if($player->getCustomField('hidden') != 1)
- {
- $rows = 0;
- echo '
-
-
- Account Information |
- ';
-
- $realName = $account->getCustomField('rlname');
- if(!empty($realName))
+ if($config['characters']['equipment'])
{
echo '
-
- Real name: |
- '.$realName.' |
- ';
+ '.
+ ''.
+ 'Equipment | '.
+ ''.generate_player_lookup($player).' |
+
+ | ';
}
- $group = $player->getGroup();
- if($group->isLoaded() && $group->getId() != 1)
+ echo ' ';
+
+
+ if(tableExist('killers')) {
+ $player_deaths = $db->query('SELECT `id`, `date`, `level` FROM `player_deaths` WHERE `player_id` = '.$player->getId().' ORDER BY `date` DESC LIMIT 0,10;');
+ if(count($player_deaths))
+ {
+ $dead_add_content = '
Character Deaths | ';
+
+ $number_of_rows = 0;
+ foreach($player_deaths as $death)
{
- echo
- '
- Position: |
- ' . ucfirst($group->getName()) . ' |
- ';
- }
+ $dead_add_content .= "
+ ".date("j M Y, H:i", $death['date'])." |
+ ";
+ $killers = $db->query("SELECT environment_killers.name AS monster_name, players.name AS player_name, players.deleted AS player_exists FROM killers LEFT JOIN environment_killers ON killers.id = environment_killers.kill_id
+LEFT JOIN player_killers ON killers.id = player_killers.kill_id LEFT JOIN players ON players.id = player_killers.player_id
+WHERE killers.death_id = '".$death['id']."' ORDER BY killers.final_hit DESC, killers.id ASC")->fetchAll();
- $realLocation = $account->getCustomField('location');
- if(isset($realLocation[0]))
- {
- echo
- ' |
- Location: |
- '.$realLocation.' |
- ';
- }
-
- echo
- '
- Created: | ';
- $bannedUntil = '';
- if(tableExist('account_bans'))
- $banned = $db->query('SELECT `expires_at` as `expires` FROM `account_bans` WHERE `account_id` = '.$account->getId().' and `expires_at` > ' . time());
- else
- $banned = $db->query('SELECT `expires` FROM `bans` WHERE (`value` = '.$account->getId().' or `value` = '.$player->getId().') and `active` = 1 and `type` != 2 and `type` != 4 and `expires` > ' . time());
- foreach($banned as $ban)
+ $i = 0;
+ $count = count($killers);
+ foreach($killers as $killer)
+ {
+ $i++;
+ if($killer['player_name'] != "")
{
- if($ban['type'] != 2 and $ban['type'] != 4)
- $bannedUntil = ' [Banished '.($ban['expires'] == "-1" ? 'forever' : 'until '.date("d F Y, h:s", $ban['expires'])).']';
+ if($i == 1)
+ $dead_add_content .= "Killed at level ".$death['level']."";
+ else if($i == $count)
+ $dead_add_content .= " and";
+ else
+ $dead_add_content .= ",";
+
+ $dead_add_content .= " by ";
+ if($killer['monster_name'] != "")
+ $dead_add_content .= $killer['monster_name']." summoned by ";
+
+ if($killer['player_exists'] == 0)
+ $dead_add_content .= getPlayerLink($killer['player_name']);
+ else
+ $dead_add_content .= $killer['player_name'];
}
- echo ''.date("j F Y, g:i a", $account->getCustomField("created")).$bannedUntil.' |
-
- ';
+ else
+ {
+ if($i == 1)
+ $dead_add_content .= "Died at level ".$death['level']."";
+ else if($i == $count)
+ $dead_add_content .= " and";
+ else
+ $dead_add_content .= ",";
- echo '
-
-
- Characters |
-
-
- Name |
- Level |
- Status |
- |
- ';
+ $dead_add_content .= " by ".$killer['monster_name'];
+ }
+ }
- $account_players = $account->getPlayersList();
- $account_players->orderBy('name');
- $player_number = 0;
- foreach($account_players as $player_list)
- {
- $player_list_status = '';
- if($player_list->isHidden())
- continue;
-
- $player_number++;
- if($player_list->isOnline())
- $player_list_status = 'Online';
-
- echo ''.$player_number.'. '.$player_list->getName();
- echo ($player_list->isDeleted()) ? ' [DELETED]' : '';
- echo ' | '.$player_list->getLevel().' '.$config['vocations'][$player_list->getVocation()].' | ' . $player_list_status . ' | | ';
- }
- echo '  | ';
- }
- echo '
' . generate_search_table();
- echo ' ';
- }
- else
- {
- $search_errors[] = 'Character ' . $name . ' does not exist or has been deleted.';
- output_errors($search_errors);
- $search_errors = array();
-
- $promotion = '';
- if(fieldExist('promotion', 'players'))
- $promotion = ', `promotion`';
-
- $deleted = 'deleted';
- if(fieldExist('deletion', 'players'))
- $deleted = 'deletion';
-
- $query = $db->query('SELECT `name`, `level`, `vocation`' . $promotion . ' FROM `players` WHERE `name` LIKE ' . $db->quote('%' . $name . '%') . ' AND ' . $deleted . ' != 1;');
- if($query->rowCount() > 0)
- {
- echo 'Did you mean:';
- foreach($query as $player) {
- if(isset($player['promotion'])) {
- if((int)$player['promotion'] > 0)
- $player['vocation'] + ($player['promotion'] * 4);
+ $dead_add_content .= ". |
";
}
- echo '