This commit is contained in:
aozhiwei 2022-06-14 14:48:53 +08:00
parent 8471f8dab1
commit 201d7f0b44
2 changed files with 18 additions and 4 deletions

View File

@ -149,10 +149,10 @@ class Hero extends BaseModel {
$newAttr = emptyReplace(json_decode($row['rand_attr'], true), array());
$baseAttr = mt\Hero::getHeroAttr($heroMeta);
mt\AttrHelper::mergeAttr($newAttr, $baseAttr);
$hp = $heroMeta['hp'] * (1 + mt\AttrHelper::getRateVal($newAttr, kHAT_Hp));
$speed = $heroMeta['move_speed'] * (1 + mt\AttrHelper::getRateVal($newAttr, kHAT_Speed));
$atk = $heroMeta['damage'] * (1 + mt\AttrHelper::getRateVal($newAttr, kHAT_Atk));
$def = $heroMeta['defence'] * (1 + mt\AttrHelper::getRateVal($newAttr, kHAT_Def));
$hp = $heroMeta['hp'] * (1 + mt\AttrHelper::getRateValEx($newAttr, kHAT_Hp));
$speed = $heroMeta['move_speed'] * (1 + mt\AttrHelper::getRateValEx($newAttr, kHAT_Speed));
$atk = $heroMeta['damage'] * (1 + mt\AttrHelper::getRateValEx($newAttr, kHAT_Atk));
$def = $heroMeta['defence'] * (1 + mt\AttrHelper::getRateValEx($newAttr, kHAT_Def));
if ($qualityMeta) {
$hp = $hp * (1 + $qualityMeta['promote'] / 100.0);
}

View File

@ -94,4 +94,18 @@ class AttrHelper {
return null;
}
public static function getRateValEx($randAttr, $attrId, $defVal = 0)
{
if (!$randAttr) {
return $defVal;
}
foreach ($randAttr as $attr){
if ($attr['attr_id'] == $attrId &&
$attr['type'] == kHAT_RATE_VAL) {
return $attr['val'];
}
}
return $defVal;
}
}