1
This commit is contained in:
parent
5cf43a7e50
commit
0b7ce1e64f
@ -11,6 +11,18 @@ class FormulaPvp {
|
||||
return array_key_exists($id, self::getMetaList()) ? self::getMetaList()[$id] : null;
|
||||
}
|
||||
|
||||
public static function getByRanked($rankedTopX)
|
||||
{
|
||||
$lastMeta = null;
|
||||
foreach (self::getMetaList() as $meta) {
|
||||
$lastMeta = $meta;
|
||||
if ($rankedTopX <= $meta['top']) {
|
||||
return $meta;
|
||||
}
|
||||
}
|
||||
return $lastMeta;
|
||||
}
|
||||
|
||||
protected static function getMetaList()
|
||||
{
|
||||
if (!self::$metaList) {
|
||||
|
@ -2,6 +2,10 @@
|
||||
|
||||
namespace services;
|
||||
|
||||
require_once('mt/FormulaPvp.php');
|
||||
|
||||
use mt;
|
||||
|
||||
class FormulaService extends BaseService {
|
||||
|
||||
public static function getHeroPvpDailyCegUpLimit($heroDb)
|
||||
@ -18,12 +22,24 @@ class FormulaService extends BaseService {
|
||||
{
|
||||
//PVP角色NFT每日获得极限*(50%*[每局排名TopX%对应比例]+25%*[每局PK人数排名TopX%对应比例]+15%*[每局英雄属性排名TopX%对应比例]+5%*[每局武器属性排名TopX%对应比例]+5%*[每局存活时间排名TopX%对应比例])
|
||||
$upLimit = getXVal($params, 'uplimit');
|
||||
$ranked = getXVal($params, 'ranked');
|
||||
$killsRanked = getXVal($params, 'kills_ranked');
|
||||
$heroRanked = getXVal($params, 'hero_ranked');
|
||||
$weaponRanked = getXVal($params, 'weapon_ranked');
|
||||
$aliveRanked = getXVal($params, 'alive_ranked');
|
||||
return 0;
|
||||
$rankedTopX= getXVal($params, 'ranked_topx');
|
||||
$killsTopX = getXVal($params, 'kills_topx');
|
||||
$heroTopX = getXVal($params, 'hero_topx');
|
||||
$weaponTopX = getXVal($params, 'weapon_topx');
|
||||
$survivalTopX = getXVal($params, 'survival_topx');
|
||||
$meta = mt\FormulaPvp::getByRanked($rankedTopX);
|
||||
if (!$meta) {
|
||||
return 0;
|
||||
}
|
||||
$ceg = $upLimit *
|
||||
(
|
||||
(0.5 * $rankedTopx * $meta['ranked_topx']) +
|
||||
(0.25 * $killsTopx * $meta['kills_topx']) +
|
||||
(0.15 * $killsTopx * $meta['hero_topx']) +
|
||||
(0.5 * $weaponTopx * $meta['weapon_topx']) +
|
||||
(0.5 * $survivalTopx * $meta['survival_topx'])
|
||||
);
|
||||
return $ceg;
|
||||
}
|
||||
|
||||
public static function calcHeroPveCeg($heroDb, $uplimit)
|
||||
@ -43,7 +59,26 @@ class FormulaService extends BaseService {
|
||||
|
||||
public static function calcWeaponPvpCeg($weaponDb)
|
||||
{
|
||||
return 0;
|
||||
//PVP武器NFT每日获得极限*(50%*[每局排名TopX%对应比例]+25%*[每局PK人数排名TopX%对应比例]+15%*[每局英雄属性排名TopX%对应比例]+5%*[每局武器属性排名TopX%对应比例]+5%*[每局存活时间排名TopX%对应比例])
|
||||
$upLimit = getXVal($params, 'uplimit');
|
||||
$rankedTopX= getXVal($params, 'ranked_topx');
|
||||
$killsTopX = getXVal($params, 'kills_topx');
|
||||
$heroTopX = getXVal($params, 'hero_topx');
|
||||
$weaponTopX = getXVal($params, 'weapon_topx');
|
||||
$survivalTopX = getXVal($params, 'survival_topx');
|
||||
$meta = mt\FormulaPvp::getByRanked($rankedTopX);
|
||||
if (!$meta) {
|
||||
return 0;
|
||||
}
|
||||
$ceg = $upLimit *
|
||||
(
|
||||
(0.5 * $rankedTopx * $meta['ranked_topx']) +
|
||||
(0.25 * $killsTopx * $meta['kills_topx']) +
|
||||
(0.15 * $killsTopx * $meta['hero_topx']) +
|
||||
(0.5 * $weaponTopx * $meta['weapon_topx']) +
|
||||
(0.5 * $survivalTopx * $meta['survival_topx'])
|
||||
);
|
||||
return $ceg;
|
||||
}
|
||||
|
||||
public static function calcWeaponPveCeg($weaponDb)
|
||||
|
Loading…
x
Reference in New Issue
Block a user