game2005api/webapp/mt/Season.php
aozhiwei 0e63848930 1
2021-11-25 10:22:12 +08:00

108 lines
2.6 KiB
PHP

<?php
namespace mt;
use phpcommon;
class Season {
public static function get($id)
{
return array_key_exists($id, self::getMetaList()) ? self::getMetaList()[$id] : null;
}
protected static function getMetaList()
{
if (!self::$metaList) {
self::$metaList = getMetaTable('season@season.php');
}
return self::$metaList;
}
public static function getSeasonRewardByLv($lv)
{
$seasonCfg = self::getMetaList();
return $seasonCfg;
}
public static function getSeasonCfg()
{
$seasonCfg = self::getMetaList();
return $seasonCfg;
}
public static function getTaskCfgByID($_itemID)
{
$playerSkinCfg = self::getMetaList();
$itemData = null;
foreach($playerSkinCfg as $item)
{
$tmpItemID = $item["id"];
if($tmpItemID == $_itemID)
{
$itemData = $item;
break;
}
}
return $itemData;
}
public static function getOldSeason($id)
{
$meta = self::get($id);
return array(
'number' => $meta['season_number'],
'open_time' => $meta['time1'],
'end_time' => $meta['time2'],
'reward' => $meta['season_reward'],
#'weekreward' => $meta['week_reward'],
'season_overreward' => $meta['season_overreward'],
'reward2' => $meta['season_reward2'],
);
}
public static function getCurrSeasonTime()
{
$seasonTime = 0;
foreach (self::getMetaList() as $meta) {
if (phpcommon\getNowTime() >= strtotime($meta['open_time']) &&
phpcommon\getNowTime() <= strtotime($meta['end_time'])) {
$seasonTime = strtotime($meta['end_time']);
break;
}
}
return $seasonTime;
}
public static function getNowSeason()
{
foreach (self::getMetaList() as $meta) {
if (phpcommon\getNowTime() >= strtotime($meta['open_time']) &&
phpcommon\getNowTime() <= strtotime($meta['end_time'])) {
return $meta;
}
}
return null;
}
public static function getNowSeasonNum()
{
$i = 0;
foreach (self::getMetaList() as $meta) {
if (phpcommon\getNowTime() >= strtotime($meta['open_time']) &&
phpcommon\getNowTime() <= strtotime($meta['end_time'])) {
break;
}
++$i;
}
return $i;
}
protected static $itemArr;
protected static $metaList;
}