예제 #1
0
 private static function HandleNPCs()
 {
     if (!is_array(self::$m_npcs)) {
         return false;
     }
     $npcs = array();
     foreach (self::$m_npcs as $npc) {
         if (WoW_Locale::GetLocaleID() != LOCALE_EN) {
             if (isset($npc['name_loc']) && $npc['name_loc'] != null) {
                 $npc['name'] = $npc['name_loc'];
                 unset($npc['name_loc']);
             }
             if (isset($npc['subname_loc']) && $npc['subname_loc'] != null) {
                 $npc['subname'] = $npc['subname_loc'];
                 unset($npc['subname_loc']);
             }
         }
         $npcs[] = $npc;
     }
     self::$m_npcs = $npcs;
     unset($npcs, $npc);
 }
예제 #2
0
<?php

$npc = WoW_NPCs::GetNPC();
?>

<script type="text/javascript">//<![CDATA[
var _ = g_users;
var lv_comments0 = [];
var _ = g_users;
var lv_screenshots = [];
var lv_videos = [];
var lv_links = [];
var g_pageInfo = {type: 1, typeId: <?php 
echo $npc['entry'];
?>
, name: '<?php 
echo str_replace("'", "\\'", $npc['name']);
?>
'};
PageTemplate.set({breadcrumb: [0,4,<?php 
echo $npc['type'];
?>
,0]});
//]]></script>

<table class="infobox">
<tr><th id="infobox-quick-facts">Quick Facts</th></tr>
<tr><td><div class="infobox-spacer"></div><div id="sdhafcuvh0"></div></td></tr>
<tr><th id="infobox-screenshots">Screenshots</th></tr>
<tr><td><div class="infobox-spacer"></div><div id="infobox-sticky-ss"></div></td></tr>
<tr><th id="infobox-videos">Videos</th></tr>
예제 #3
0
 private static function InitNPCs()
 {
     self::AssignTemplatePageIndex(array('npcs', 'npc'));
     WoW_Template::SetPageData('activeTab', 0);
     WoW_NPCs::InitPage(WoW_Template::GetPageIndex(), self::GetPageAction());
 }
예제 #4
0
 private static function HandleAchievement()
 {
     if (!is_array(self::$m_achievement)) {
         return false;
     }
     $ach =& self::$m_achievement;
     $ach['name'] = $ach['name_' . WoW_Locale::GetLocale()];
     $ach['desc'] = $ach['desc_' . WoW_Locale::GetLocale()];
     $ach['titleReward'] = $ach['titleReward_' . WoW_Locale::GetLocale()];
     WoW_Template::SetPageData('db_page_title', $ach['name'] . ' - ');
     if ($ach['parentCategory'] == 1) {
         $ach['type'] = 2;
     } else {
         $ach['type'] = 1;
     }
     // Check titleReward
     if ($ach['titleReward'] != null) {
         // Check rewards (item or title)
         $rewards = DB::World()->selectRow("SELECT * FROM achievement_reward WHERE entry = %d", $ach['id']);
         if (is_array($rewards)) {
             // Item?
             $ach['titleReward'] = array();
             if ($rewards['item'] > 0) {
                 $ach['titleReward'][] = array('type' => 'item', 'data' => WoW_Items::GetBasicItemInfo($rewards['item']));
             }
             if ($rewards['title_A'] > 0 || $rewards['title_H'] > 0) {
                 $ach['titleReward'][] = array('type' => 'title', 'data' => DB::World()->select("SELECT id, title_M_%s AS title FROM DBPREFIX_titles WHERE id IN (%s)", WoW_Locale::GetLocale(), array($rewards['title_A'], $rewards['title_H'])));
             }
         }
     } else {
         $ach['titleReward'] = array();
     }
     WoW_Template::SetPageData('breadcrumb', '0,9,' . $ach['categoryId']);
     if (is_array($ach['criterias'])) {
         // CRITERA STRING SHOULD BE GENERATED HERE, NOT IN VIEW!
         foreach ($ach['criterias'] as &$cr) {
             $cr['name'] = $cr['name_' . WoW_Locale::GetLocale()];
             $cr['criteria_string'] = $cr['name'];
             switch ($cr['requiredType']) {
                 case ACHIEVEMENT_CRITERIA_TYPE_KILL_CREATURE:
                     $cr['criteria_string'] = '<a href="' . WoW::GetWoWPath() . '/npc=' . $cr['data'] . '">' . WoW_NPCs::GetNPCInfo($cr['data'], 'name') . '</a> ' . WoW_Locale::GetString('template_achievement_slain');
                     break;
                 case ACHIEVEMENT_CRITERIA_TYPE_COMPLETE_ACHIEVEMENT:
                     $cr['criteria_string'] = '<a href="' . WoW::GetWoWPath() . '/achievement=' . $cr['data'] . '">' . self::GetAchievementInfo($cr['data'], 'name') . '</a>';
                     //$cr['data_achievement'] = self::GetBasicAchievementInfo($cr['data']);
                     break;
                 case ACHIEVEMENT_CRITERIA_TYPE_LEARN_SPELL:
                     break;
                 case ACHIEVEMENT_CRITERIA_TYPE_OWN_ITEM:
                 case ACHIEVEMENT_CRITERIA_TYPE_USE_ITEM:
                 case ACHIEVEMENT_CRITERIA_TYPE_LOOT_ITEM:
                 case ACHIEVEMENT_CRITERIA_TYPE_EQUIP_EPIC_ITEM:
                 case ACHIEVEMENT_CRITERIA_TYPE_EQUIP_ITEM:
                     break;
                 case ACHIEVEMENT_CRITERIA_TYPE_LEARN_SKILL_LEVEL:
                 case ACHIEVEMENT_CRITERIA_TYPE_REACH_SKILL_LEVEL:
                     break;
                 case ACHIEVEMENT_CRITERIA_TYPE_CAST_SPELL:
                     break;
                 case ACHIEVEMENT_CRITERIA_TYPE_COMPLETE_QUEST:
                     break;
                 case ACHIEVEMENT_CRITERIA_TYPE_GAIN_REPUTATION:
                     break;
                 case ACHIEVEMENT_CRITERIA_TYPE_GAIN_EXALTED_REPUTATION:
                     break;
             }
         }
     }
 }
예제 #5
0
</tr></table><div id="fi_criteria" class="padded criteria"><div></div></div><div><a href="javascript:;" id="fi_addcriteria" onclick="fi_addCriterion(this); return false">Add another filter</a></div><div class="padded2">Match: <input type="radio" name="ma" value="" id="ma-0" checked="checked" /><label for="ma-0">All filters</label><input type="radio" name="ma" value="1" id="ma-1" /><label for="ma-1">At least one</label></div>

<div class="padded"></div>
<input type="submit" value="Apply filter" /><div class="clear"></div></form><div class="pad"></div></div>

<script type="text/javascript">//<![CDATA[
fi_init('npcs');
//]]></script>

<div id="lv-npcs" class="listview"></div>
<script type="text/javascript">//<![CDATA[
new Listview({template: 'npc', id: 'npcs', note: $WH.sprintf(LANG.lvnote_npcsfound, <?php 
echo WoW_NPCs::GetCount();
?>
, 200) + LANG.dash + LANG.lvnote_tryfiltering, _truncated: 1, data: [
<?php 
$npcs = WoW_NPCs::GetNPCs();
if (is_array($npcs)) {
    $count = count($npcs);
    $current = 1;
    foreach ($npcs as $npc) {
        echo sprintf('{"boss":%d,"classification":%d,"id":%d,"location":[%d],"maxlevel":%d,"minlevel":%d,"name":"%s","react":[-1,-1],%s"type":%d}', $npc['rank'] == 3 ? 1 : 0, $npc['rank'], $npc['entry'], isset($npc['zoneID']) ? $npc['zoneID'] : 0, $npc['rank'] == 3 ? 999 : $npc['maxlevel'], $npc['rank'] == 3 ? 999 : $npc['minlevel'], str_replace('"', '\\"', $npc['name']), $npc['subname'] != null ? '"tag":"' . str_replace('"', '\\"', $npc['subname']) . '",' : null, $npc['type']);
        if ($current < $count) {
            echo ', ';
        }
    }
}
?>
]});
//]]></script>