echo "<tr><th>focusId</th><td>" . ($obj['data0'] ? getSpellFocusName($obj['data0'], 1) : "n/a") . "</td>"; echo "<th>dist</th><td>" . $obj['data1'] . "</td></tr>"; echo "<tr><th>linkedTrapId</th><td>" . ($obj['data2'] ? getGameobjectName($obj['data2']) : "n/a") . "</td>"; echo "<th>serverOnly</th><td>" . $obj['data3'] . "</td></tr>"; echo "<tr><th>questID</th><td>" . ($obj['data4'] ? getQuestName($obj['data4']) : "n/a") . "</td>"; echo "<td colspan=2></td></tr>"; break; case GAMEOBJECT_TYPE_TEXT: echo "<tr><th>pageID</th><td>" . $obj['data0'] . "</td></tr>"; echo "<tr><th>language</th><td>" . $obj['data1'] . "</td></tr>"; echo "<tr><th>pageMaterial</th><td>" . $obj['data2'] . "</td></tr>"; echo "<tr><th>allowMounted</th><td>" . $obj['data3'] . "</td></tr>"; break; case GAMEOBJECT_TYPE_GOOBER: echo "<tr><th>lockId</th><td>" . $obj['data0'] . "</td>"; echo "<th>questId</th><td>" . ($obj['data1'] ? getQuestName($obj['data1']) : "n/a") . "</td></tr>"; echo "<tr><th>eventId</th><td>" . $obj['data2'] . "</td>"; echo "<th>autoCloseTime</th><td>" . $obj['data3'] / 1000 . " sec</td></tr>"; echo "<tr><th>customAnim</th><td>" . $obj['data4'] . "</td>"; echo "<th>consumable</th><td>" . $obj['data5'] . "</td></tr>"; echo "<tr><th>cooldown</th><td>" . $obj['data6'] . "</td>"; echo "<th>pageId</th><td>" . $obj['data7'] . "</td></tr>"; echo "<tr><th>language</th><td>" . $obj['data8'] . "</td>"; echo "<th>pageMaterial</th><td>" . $obj['data9'] . "</td></tr>"; echo "<tr><th>spellId</th><td>" . ($obj['data10'] ? getSpellNameFromId($obj['data10']) : "n/a") . "</td>"; echo "<th>noDamageImmune</th><td>" . $obj['data11'] . "</td></tr>"; echo "<tr><th>linkedTrapId</th><td>" . ($obj['data12'] ? getGameobjectName($obj['data12']) : "n/a") . "</td>"; echo "<th>large</th><td>" . $obj['data13'] . "</td></tr>"; echo "<tr><th>openTextID</th><td>" . $obj['data14'] . "</td>"; echo "<th>closeTextID</th><td>" . $obj['data15'] . "</td></tr>"; echo "<tr><th>losOK</th><td>" . $obj['data16'] . "</td>";
function showEffectInfo($spell, $effect, $eff_id) { global $lang; $misc = $spell['EffectMiscValue_' . $effect]; switch ($eff_id) { // школа case 2: echo ' (' . getSpellSchool($spell['SchoolMask']) . ')'; break; // Misc - тип энергии // Misc - тип энергии case 8: // SPELL_EFFECT_POWER_DRAIN // SPELL_EFFECT_POWER_DRAIN case 30: // SPELL_EFFECT_ENERGIZE // SPELL_EFFECT_ENERGIZE case 62: echo ' (' . getPowerTypeName($misc) . ')'; break; case 16: // SPELL_EFFECT_QUEST_COMPLETE // SPELL_EFFECT_QUEST_COMPLETE case 147: // SPELL_EFFECT_QUEST_FAIL // SPELL_EFFECT_QUEST_FAIL case 139: echo ' (' . getQuestName($misc) . ')'; break; case 28: // SPELL_EFFECT_SUMMON // SPELL_EFFECT_SUMMON case 56: // SPELL_EFFECT_SUMMON_PET // SPELL_EFFECT_SUMMON_PET case 90: // Kill Credit // Kill Credit case 134: echo ' (' . getCreatureName($misc) . ')'; break; case 50: // SPELL_EFFECT_SUMMON_OBJECT // SPELL_EFFECT_SUMMON_OBJECT case 76: // SPELL_EFFECT_SUMMON_OBJECT_WILD // SPELL_EFFECT_SUMMON_OBJECT_WILD case 104: case 105: case 106: case 107: echo ' (' . getGameobjectName($misc) . ')'; break; case 53: // SPELL_EFFECT_ENCHANT_ITEM // SPELL_EFFECT_ENCHANT_ITEM case 54: // SPELL_EFFECT_ENCHANT_ITEM_TEMPORARY // SPELL_EFFECT_ENCHANT_ITEM_TEMPORARY case 92: echo ' (' . getEnchantmentDesc($misc) . ')'; break; case 39: echo ' (' . getLaungageName($misc) . ')'; break; case 44: // SPELL_EFFECT_SKILL_STEP // SPELL_EFFECT_SKILL_STEP case 118: echo ' (' . getSkillName($misc) . ')'; break; // Misc - тип рейтинга // Misc - тип рейтинга case 189: echo ' (' . getRatingList($misc) . ')'; break; // Misc - тип диспелла // Misc - тип диспелла case 38: // SPELL_EFFECT_DISPEL // SPELL_EFFECT_DISPEL case 126: echo ' (' . getDispelName(abs($misc)) . ')'; break; // Misc - тип механики // Misc - тип механики case 108: echo ' (' . getMechanicName($misc) . ')'; break; case 94: // SPELL_EFFECT_SELF_RESURRECT // SPELL_EFFECT_SELF_RESURRECT case 113: echo ' (Restore ' . $misc . ' power)'; break; case 103: echo ' (' . getFactionName($misc) . ')'; break; case 33: echo ' (' . getLockType($misc, 2) . ')'; break; case 146: echo ' (' . getRuneName($misc) . ')'; break; case 74: echo ' (' . getGlyphName($misc) . ')'; break; default: if ($misc) { echo ' (' . $misc . ')'; } break; } if ($effect == 1) { // Spell target position on map if ($t = getSpellTargetPosition($spell['id'])) { echo '<a style="float: right;" href="?map&point=' . $t['target_map'] . ':' . $t['target_position_x'] . ':' . $t['target_position_y'] . ':' . $t['target_position_z'] . '">' . $lang['map'] . '</a>'; } // Spell target if ($s = getSpellScriptTarget($spell['id'])) { foreach ($s as $s1) { if ($s1['type'] == 0) { echo '<br><a style="float: right;" href="?object=' . $s1['targetEntry'] . '">' . getGameobjectName($s1['targetEntry'], 0) . '</a>'; } else { if ($s1['type'] == 1) { echo '<br><a style="float: right;" href="?npc=' . $s1['targetEntry'] . '">' . getCreatureName($s1['targetEntry'], 0) . '</a>'; } else { if ($s1['type'] == 2) { echo '<br><a style="float: right;" href="?npc=' . $s1['targetEntry'] . '">' . getCreatureName($s1['targetEntry'], 0) . '</a>'; } } } } } } }
function r_lootRequire($data) { global $lang; $lootcondition = getConditionItem($data['condition_id']); if ($lootcondition) { foreach ($lootcondition as $type) { switch ($type['type']) { case 1: // CONDITION_AURA - spell_id, effindex $spell = getSpell($type['value1'], '`id`, `SpellIconID`'); echo $lang['condition1']; show_spell($spell['id'], $spell['SpellIconID'], 'quest'); break; case 2: // CONDITION_ITEM - item_id, count $item = getItem($type['value1'], '`entry`, `displayid`'); echo $lang['condition2'] . text_show_item($item['entry'], $item['displayid'], 'quest'); if ($type['value2'] > 1) { echo 'x' . $type['value2']; } break; case 3: // CONDITION_ITEM_EQUIPPED - item_id, 0 $item = getItem($type['value1'], '`entry`, `displayid`'); echo $lang['condition3'] . text_show_item($item['entry'], $item['displayid'], 'quest'); break; case 4: // CONDITION_AREAID - area_id 0, 1 (0: in (sub)area, 1: not in (sub)area) if ($type['value2'] > 0) { echo $lang['condition4_1'] . getAreaName($type['value1']); } if ($type['value2'] == 0) { echo getAreaName($type['value1']); } break; case 5: // CONDITION_REPUTATION_RANK_MIN - faction_id, min_rank echo getFactionName($type['value1']) . '=>(' . getReputationRankName($type['value2']) . ')'; break; case 6: // CONDITION_TEAM player_team, 0 (469 - Alliance 67 - Horde) echo getFactionName($type['value1']); break; case 7: // CONDITION_SKILL skill_id, skill_value echo $lang['condition7'] . getSkillName($type['value1']); if ($type['value2'] > 1) { echo ' (' . $type['value2'] . ')'; } break; case 8: // CONDITION_QUESTREWARDED quest_id, 0 echo $lang['condition8'] . getQuestName($type['value1']); break; case 9: // CONDITION_QUESTTAKEN quest_id 0, for condition true while quest active. echo $lang['condition9'] . getQuestName($type['value1']); break; case 10: // CONDITION_AD_COMMISSION_AURA 0, 0 for condition true while one from AD сommission aura active echo $lang['condition10']; break; case 11: // CONDITION_NO_AURA spell_id, effindex $spell = getSpell($type['value1'], '`id`, `SpellIconID`'); echo $lang['condition11']; show_spell($spell['id'], $spell['SpellIconID'], 'quest'); break; case 12: // CONDITION_ACTIVE_GAME_EVENT event_id echo $lang['condition12'] . getGameEventName($type['value1']); break; case 13: // CONDITION_AREA_FLAG area_flag area_flag_not if ($type['value1'] > 0) { echo $lang['condition13_1'] . $type['value1']; } if ($type['value2'] > 0) { echo $lang['condition13_2'] . $type['value2']; } break; case 14: // CONDITION_RACE_CLASS race_mask class_mask if ($type['value1'] > 0) { echo getAllowableRace($type['value1']) . '<br>'; } if ($type['value2'] > 0) { echo getAllowableClass($type['value2']); } break; case 15: // CONDITION_LEVEL player_level 0, 1 or 2 if ($type['value1'] > 0) { echo $type['value1']; } if ($type['value1'] > 0 && $type['value2'] == 0) { echo $lang['condition15_1']; } if ($type['value1'] > 0 && $type['value2'] == 1) { echo $lang['condition15_2']; } if ($type['value1'] > 0 && $type['value2'] == 2) { echo $lang['condition15_3']; } break; case 16: // CONDITION_NOITEM item_id count $item = getItem($type['value1'], '`entry`, `displayid`'); echo $lang['condition16'] . text_show_item($item['entry'], $item['displayid'], 'quest'); if ($type['value1'] > 1) { echo 'x' . $type['value2']; } break; case 17: // CONDITION_SPELL spell_id 0, 1 (0: has spell, 1: hasn't spell) $spell = getSpell($type['value1'], '`id`, `SpellIconID`'); if ($type['value2'] > 0) { echo $lang['condition17_1']; show_spell($spell['id'], $spell['SpellIconID'], 'quest'); } else { echo $lang['condition17_2']; show_spell($spell['id'], $spell['SpellIconID'], 'quest'); } break; case 18: // CONDITION_INSTANCE_SCRIPT instance_condition_id 0, 1, 2, 3, 4 if ($type['value1'] == 0) { echo $lang['condition18_0']; } if ($type['value1'] == 1) { echo $lang['condition18_1']; } if ($type['value1'] == 2) { echo $lang['condition18_2']; } if ($type['value1'] == 3) { echo $lang['condition18_3']; } if ($type['value1'] == 4) { echo $lang['condition18_4']; } break; case 20: // CONDITION_ACHIEVEMENT ach_id 0, 1 (0: has achievement, 1: hasn't achievement) for player if ($type['value2'] > 0) { echo $lang['condition20_1'] . $type['value1']; } else { echo $lang['condition20_2'] . $type['value1']; } break; case 22: // CONDITION_QUEST_NONE quest_id if ($type['value1'] > 0) { echo $lang['condition22'] . getQuestName($type['value1']); } break; case 23: // CONDITION_ITEM_WITH_BANK- item_id, count $item = getItem($type['value1'], '`entry`, `displayid`'); echo $lang['condition23'] . text_show_item($item['entry'], $item['displayid'], 'quest'); if ($type['value2'] > 1) { echo 'x' . $type['value2']; } break; case 24: // NOITEM_WITH_BANK item_id count $item = getItem($type['value1'], '`entry`, `displayid`'); echo $lang['condition24'] . text_show_item($item['entry'], $item['displayid'], 'quest'); if ($type['value1'] > 1) { echo 'x' . $type['value2']; } break; case 25: // CONDITION_NOT_ACTIVE_GAME_EVENT event_id echo $lang['condition25'] . getGameEventName($type['value1']); break; case 26: // CONDITION_ACTIVE_HOLIDAY holiday_id echo $lang['condition26'] . getGameHolidayName($type['value1']); break; case 27: // CONDITION_NOT_ACTIVE_HOLIDAY holiday_id echo $lang['condition27'] . getGameHolidayName($type['value1']); break; case 28: // CONDITION_LEARNABLE_ABILITY spell_id 0 or item_id $spell = getSpell($type['value1'], '`id`, `SpellIconID`'); if ($type['value2'] > 0) { $item = getItem($type['value2'], '`entry`, `displayid`'); echo $lang['condition28_1']; show_spell($spell['id'], $spell['SpellIconID'], 'quest'); echo $lang['condition28_2'] . text_show_item($item['entry'], $item['displayid'], 'quest'); } else { echo $lang['condition28_1']; show_spell($spell['id'], $spell['SpellIconID'], 'quest'); } break; case 29: // CONDITION_SKILL_BELOW skill_id, skill_value echo $lang['condition29'] . getSkillName($type['value1']); if ($type['value2'] > 1) { echo ' (' . $type['value2'] . ')'; } break; case 30: // CONDITION_REPUTATION_RANK_MAX - faction_id, max_rank echo getFactionName($type['value1']) . '<=(' . getReputationRankName($type['value2']) . ')'; break; } } } }