Показ квестодателя, если квест записан в
game_event_creature_quest:
Код:
Index: include/report_generator.php
===================================================================
--- include/report_generator.php (revision 46)
+++ include/report_generator.php (working copy)
@@ -1051,6 +1051,15 @@
foreach ($src as $creature){localiseCreature($creature);r_npcRName($creature);}
return;
}
+ else
+ if ($src = $dDB->select(
+ 'SELECT `entry`, `name`, `subname`, `faction_A`
+ FROM `creature_template` left join `game_event_creature_quest` ON `creature_template`.`entry` = `game_event_creature_quest`.`id`
+ WHERE `game_event_creature_quest`.`quest` = ?d', $data['entry']))
+ {
+ foreach ($src as $creature){localiseCreature($creature);r_npcRName($creature);}
+ return;
+ }
// Search GO quest giver
if ($src = $dDB->select(
'SELECT `entry`, `name`
@@ -1203,6 +1212,7 @@
case 'go_giver': $this->table = '(`quest_template` join `gameobject_questrelation` ON `quest_template`.`entry` = `gameobject_questrelation`.`quest`)';break;
case 'go_take': $this->table = '(`quest_template` join `gameobject_involvedrelation` ON `quest_template`.`entry` = `gameobject_involvedrelation`.`quest`)';break;
case 'npc_giver': $this->table = '(`quest_template` join `creature_questrelation` ON `quest_template`.`entry` = `creature_questrelation`.`quest`)';break;
+ case 'npc_giver_event': $this->table = '(`quest_template` join `game_event_creature_quest` ON `quest_template`.`entry` = `game_event_creature_quest`.`quest`)';break;
case 'npc_take': $this->table = '(`quest_template` join `creature_involvedrelation` ON `quest_template`.`entry` = `creature_involvedrelation`.`quest`)';break;
case 'mail_loot': $this->table = '(`quest_template` join `mail_loot_template` ON `quest_template`.`RewMailTemplateId` = `mail_loot_template`.`entry`)';break;
default: $this->table = '`quest_template`';break;
Index: module/show/show_npc.php
===================================================================
--- module/show/show_npc.php (revision 46)
+++ module/show/show_npc.php (working copy)
@@ -193,6 +193,17 @@
$giveQuest->createReport($lang['give_quest']);
}
}
+
+ if ($cr['npcflag']&(UNIT_NPC_FLAG_QUESTGIVER))
+ {
+ $giveQuest =&new QuestReportGenerator('npc_giver_event');
+ $fields = array('QUEST_REPORT_LEVEL', 'QUEST_REPORT_NAME', 'QUEST_REPORT_REWARD');
+ if ($giveQuest->Init($fields, $baseLink, 'qgeLIST', $config['fade_limit'], 'name'))
+ {
+ $giveQuest->getGiveTakeList($entry);
+ $giveQuest->createReport($lang['give_quest_event']);
+ }
+ }
//**************************************************
// Take quests
//**************************************************
Index: module/show/show_quest.php
===================================================================
--- module/show/show_quest.php (revision 46)
+++ module/show/show_quest.php (working copy)
@@ -306,6 +306,23 @@
echo "</TD></TR>";
$number++;
}
+else
+if ($rows = $dDB->select("SELECT *
+ FROM `creature_template` join `game_event_creature_quest`
+ WHERE
+ `game_event_creature_quest`.`quest` = ?d AND
+ `game_event_creature_quest`.`id` = `creature_template`.`entry`", $quest['entry']))
+foreach ($rows as $creature)
+{
+ localiseCreature($creature);
+ $loyality = getLoyality($creature['faction_A']);
+ echo "<TR><TD><A style='float: right;' href=\"?map&npc=$creature[entry]\">$lang[map]</A>";
+ echo "<A href=\"?npc=$creature[entry]\">$creature[name]</A> ($loyality)";
+ if ($creature['subname'] != "")
+ echo "<BR><FONT color=#008800 size=-3><$creature[subname]></FONT>";
+ echo "</TD></TR>";
+ $number++;
+}
if ($rows = $dDB->select("SELECT *
FROM `gameobject_template` join `gameobject_questrelation`
Index: lang/lang.en.php
===================================================================
--- lang/lang.en.php (revision 46)
+++ lang/lang.en.php (working copy)
@@ -172,6 +172,7 @@
'req_for_quest' => 'Required for quest',
'kill_kredit_group' => 'Group',
'give_quest' => 'Give quest',
+'give_quest_event' => 'Give quest(in event)',
'take_quest' => 'Take quest',
'give_skin' => 'Skinning',
'can_pickpocketing' => 'Pickpocketing...',
Index: lang/lang.ru.php
===================================================================
--- lang/lang.ru.php (revision 46)
+++ lang/lang.ru.php (working copy)
@@ -173,6 +173,7 @@
'req_for_quest' => 'Требуется для квеста',
'kill_kredit_group' => 'Группа',
'give_quest' => 'Даёт квесты',
+'give_quest_event' => 'Даёт квесты(в событие)',
'take_quest' => 'Принимает квесты',
'give_skin' => 'Можно снять шкуру',
'can_pickpocketing' => 'Можно украсть...',
адд: Добавил забытый текст.)