Если ребус разгадан правильно, то подключка таблицы
reputation_spillover_template) Ну и правочка небольшая...
Код:
Index: include/functions.php
===================================================================
--- include/functions.php (revision 41)
+++ include/functions.php (working copy)
@@ -937,7 +937,7 @@
}
function getRepRewRate($faction_id)
{
- global $dDB, $config;
+ global $dDB;
$faction = $dDB->selectCell("-- CACHE: 1h
SELECT `quest_rate` FROM `reputation_reward_rate` WHERE `faction` = ?d", $faction_id);
if (!$faction)
@@ -945,6 +945,12 @@
return $faction;
}
+function getRepSpillover($faction_id)
+{
+ global $dDB;
+ return $dDB->select("-- CACHE: 1h
+ SELECT * FROM `reputation_spillover_template` WHERE `faction` = ?d", $faction_id);
+}
//********************************************************************************
$Quality = array(
Index: include/report_generator.php
===================================================================
--- include/report_generator.php (revision 41)
+++ include/report_generator.php (working copy)
@@ -1123,6 +1123,38 @@
$quest['RewRepValue'.$i]=$quest['RewRepValue'.$i]*$quest_rate[$i];
}
+
+ if ($quest['RewRepFaction1'] AND !$quest['RewRepFaction2'] AND
+ !$quest['RewRepFaction3'] AND !$quest['RewRepFaction4'] AND
+ !$quest['RewRepFaction5'])
+ {
+ $spillover=getRepSpillover($quest['RewRepFaction1']);
+ if ($spillover)
+ foreach ($spillover as $faction)
+ {
+ if ($faction['faction1'])
+ {
+ $quest['RewRepFaction2']=$faction['faction1'];
+ $quest['RewRepValue2']=$quest['RewRepValue1']*$faction['rate_1'];
+ }
+ if ($faction['faction2'])
+ {
+ $quest['RewRepFaction3']=$faction['faction2'];
+ $quest['RewRepValue3']=$quest['RewRepValue1']*$faction['rate_2'];
+ }
+ if ($faction['faction3'])
+ {
+ $quest['RewRepFaction4']=$faction['faction3'];
+ $quest['RewRepValue4']=$quest['RewRepValue1']*$faction['rate_3'];
+ }
+ if ($faction['faction4'])
+ {
+ $quest['RewRepFaction5']=$faction['faction4'];
+ $quest['RewRepValue5']=$quest['RewRepValue1']*$faction['rate_4'];
+ }
+ }
+ }
+
if ($quest['RewRepFaction1'])echo getFactionName($quest['RewRepFaction1']).': '.$quest['RewRepValue1'].'<br>';
if ($quest['RewRepFaction2'])echo getFactionName($quest['RewRepFaction2']).': '.$quest['RewRepValue2'].'<br>';
if ($quest['RewRepFaction3'])echo getFactionName($quest['RewRepFaction3']).': '.$quest['RewRepValue3'].'<br>';
Index: module/show/show_quest.php
===================================================================
--- module/show/show_quest.php (revision 41)
+++ module/show/show_quest.php (working copy)
@@ -242,6 +242,37 @@
$quest['RewRepValue'.$i]=$quest['RewRepValue'.$i]*$quest_rate[$i];
}
+ if ($quest['RewRepFaction1'] AND !$quest['RewRepFaction2'] AND
+ !$quest['RewRepFaction3'] AND !$quest['RewRepFaction4'] AND
+ !$quest['RewRepFaction5'])
+ {
+ $spillover=getRepSpillover($quest['RewRepFaction1']);
+ if ($spillover)
+ foreach ($spillover as $faction)
+ {
+ if ($faction['faction1'])
+ {
+ $quest['RewRepFaction2']=$faction['faction1'];
+ $quest['RewRepValue2']=$quest['RewRepValue1']*$faction['rate_1'];
+ }
+ if ($faction['faction2'])
+ {
+ $quest['RewRepFaction3']=$faction['faction2'];
+ $quest['RewRepValue3']=$quest['RewRepValue1']*$faction['rate_2'];
+ }
+ if ($faction['faction3'])
+ {
+ $quest['RewRepFaction4']=$faction['faction3'];
+ $quest['RewRepValue4']=$quest['RewRepValue1']*$faction['rate_3'];
+ }
+ if ($faction['faction4'])
+ {
+ $quest['RewRepFaction5']=$faction['faction4'];
+ $quest['RewRepValue5']=$quest['RewRepValue1']*$faction['rate_4'];
+ }
+ }
+ }
+
if ($quest['RewRepFaction1'] OR $quest['RewRepFaction2'] OR
$quest['RewRepFaction3'] OR $quest['RewRepFaction4'] OR
$quest['RewRepFaction5'])