game2006api/webapp/services/FormulaService.php
aozhiwei 0b7ce1e64f 1
2022-05-25 23:20:56 +08:00

90 lines
2.9 KiB
PHP

<?php
namespace services;
require_once('mt/FormulaPvp.php');
use mt;
class FormulaService extends BaseService {
public static function getHeroPvpDailyCegUpLimit($heroDb)
{
return 0;
}
public static function getHeroPveDailyCegUpLimit($heroDb)
{
return 0;
}
public static function calcHeroPvpCeg($heroDb, $params)
{
//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 calcHeroPveCeg($heroDb, $uplimit)
{
return 0;
}
public static function getWeaponPvpDailyCegUpLimit($weaponDb)
{
return 0;
}
public static function getWeaponPveDailyCegUpLimit($weaponDb)
{
return 0;
}
public static function calcWeaponPvpCeg($weaponDb)
{
//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)
{
return 0;
}
}