|
@@ -143,19 +143,33 @@ class Info_UserBase extends Object_ext {
|
|
|
//ActiveProc::ChangeTili($amt);
|
|
|
TaskProc::OnAccumulateTiliNum($amt);
|
|
|
for ($i = 0; $i < $amt; $i++) {
|
|
|
- if ((now() - $this->tili_ts) / glc()->tili_RecoverTS < glc()->tili_RecoverrMax) {
|
|
|
+ if ((now() - $this->tili_ts) / glc()->tili_RecoverTS < $this->GetTili_RecoverrMax()) {
|
|
|
$this->tili_ts -= glc()->tili_RecoverTS;
|
|
|
} else {
|
|
|
$this->tili++;
|
|
|
}
|
|
|
}
|
|
|
}
|
|
|
+
|
|
|
+ /**
|
|
|
+ * 体力恢复的最大值(购买或者邮件领取的可以超出,超出后体力恢复失效)
|
|
|
+ */
|
|
|
+ function GetTili_RecoverrMax() {
|
|
|
+ $maxTili = glc()->tili_RecoverrMax;
|
|
|
+ $monthTs = 30 * 24 * 60 * 60;
|
|
|
+ if(ctx()->privateState->honourCardShop_ts > 0 && now() - ctx()->privateState->honourCardShop_ts < $monthTs){
|
|
|
+ $maxTili += glc()->tili_RecoverrMax_Add_HonourCard;
|
|
|
+ }
|
|
|
+
|
|
|
+ return $maxTili;
|
|
|
+ }
|
|
|
|
|
|
/**
|
|
|
* 检查并修改体力ts的最小值.
|
|
|
*/
|
|
|
function Reset_tilits() {
|
|
|
- $min = now() - glc()->tili_RecoverTS * glc()->tili_RecoverrMax;
|
|
|
+ $maxTili = $this->GetTili_RecoverrMax();
|
|
|
+ $min = now() - glc()->tili_RecoverTS * $maxTili;
|
|
|
if ($this->tili_ts < $min) {
|
|
|
$this->tili_ts = $min;
|
|
|
}
|
|
@@ -191,8 +205,9 @@ class Info_UserBase extends Object_ext {
|
|
|
* @return int 计算当前可用体力值
|
|
|
*/
|
|
|
function CurTili() {
|
|
|
+ $maxTili = $this->GetTili_RecoverrMax();
|
|
|
$rec = (now() - $this->tili_ts) / glc()->tili_RecoverTS;
|
|
|
- $rec = glc()->tili_RecoverrMax < $rec ? glc()->tili_RecoverrMax : $rec;
|
|
|
+ $rec = $maxTili < $rec ? $maxTili : $rec;
|
|
|
$t = $this->tili + $rec;
|
|
|
return $t;
|
|
|
}
|
|
@@ -240,11 +255,11 @@ class Info_UserBase extends Object_ext {
|
|
|
if ($amt >= 0) {
|
|
|
if ($this->cash - $amt >= 0) {
|
|
|
$this->cash -= $amt;
|
|
|
+ TaskProc::OnConsumeCashNum($amt);
|
|
|
return true;
|
|
|
}
|
|
|
}
|
|
|
-
|
|
|
- TaskProc::OnConsumeCashNum($amt);
|
|
|
+
|
|
|
return false;
|
|
|
}
|
|
|
|