game2006api/webapp/events/HashRate.php
2024-08-05 16:25:29 +08:00

57 lines
1.7 KiB
PHP

<?php
namespace events;
require_once('models/BigData.php');
require_once('mt/AchievementsPower.php');
use models\BigData;
use mt\AchievementsPower;
class HashRate
{
public static function onSpendGold($goldNum){
self::_updateTaskSchedule(AchievementsPower::SPEND_GOLD,$goldNum);
}
public static function onSynHero($number){
self::_updateTaskSchedule(AchievementsPower::SYN_HERO,$number);
}
public static function onSynChip($number){
self::_updateTaskSchedule(AchievementsPower::SYN_CHIP,$number);
}
public static function onSynSkin($number){
self::_updateTaskSchedule(AchievementsPower::SYN_SKIN,$number);
}
public static function onUpLvHero(){
self::_updateTaskSchedule(AchievementsPower::UP_HERO,1);
}
public static function onUpLvChip(){
self::_updateTaskSchedule(AchievementsPower::UP_CHIP,1);
}
private static function _updateTaskSchedule($completionType,$number){
$tasks = BigData::getData(BigData::OFFER_INTEGRAL_HASHRATE_TYPE);
foreach ($tasks['task3'] as &$task){
$meta = AchievementsPower::find($task['task_id']);
if ($meta['Completion_type'] == $completionType){
$task['current'] += $number;
}
}
foreach ($tasks['task4'] as &$task){
$meta = AchievementsPower::find($task['task_id']);
if ($meta['Completion_type'] == $completionType){
$task['current'] += $number;
}
}
BigData::setData(BigData::OFFER_INTEGRAL_HASHRATE_TYPE,
json_encode($tasks));
}
}