This commit is contained in:
hujiabin 2024-10-12 14:44:32 +08:00
parent baf41d30f9
commit e9e8020808
2 changed files with 30 additions and 6 deletions

View File

@ -164,10 +164,33 @@ class HeroController extends BaseAuthedController {
$this->_rspErr(1, "Error operation"); $this->_rspErr(1, "Error operation");
return; return;
} }
if ($itemId != $heroMeta['heroPiece'] || $itemNum < $manufactureMeta['needItem']){ if ($heroDb['quality'] > 1 && ($itemId != $heroMeta['heroPiece'] || $itemNum != $manufactureMeta['needItem'])){
$this->_rspErr(100, 'Insufficient material'); $this->_rspErr(100, 'Insufficient material');
return; return;
} }
if ($heroDb['quality'] == 1){
$alternative = explode(":",$manufactureMeta['alternative']);
switch ($itemId){
case $heroMeta['heroPiece'] :{
if ($itemNum != $manufactureMeta['needItem']){
$this->_rspErr(100, 'Insufficient material');
return;
}
}
break;
case $alternative[0] :{
if ($itemNum != $alternative[1]){
$this->_rspErr(100, 'Insufficient material');
return;
}
}
break;
default:{
$this->_rspErr(100, 'item error');
return;
}
}
}
$extraItem = explode("|",$manufactureMeta['extraItem']); $extraItem = explode("|",$manufactureMeta['extraItem']);
$chanceKey = 0; $chanceKey = 0;
if ($extraItemId == $extraItem[0]){ if ($extraItemId == $extraItem[0]){
@ -186,7 +209,7 @@ class HeroController extends BaseAuthedController {
), ),
array( array(
'item_id' => $itemId, 'item_id' => $itemId,
'item_num' => $manufactureMeta['needItem'] 'item_num' => $itemNum
), ),
); );
$lackItem = null; $lackItem = null;
@ -200,6 +223,7 @@ class HeroController extends BaseAuthedController {
$this->_rspErr(3, $this->_getLackItemErrMsg($lackItem)); $this->_rspErr(3, $this->_getLackItemErrMsg($lackItem));
return; return;
} }
//消耗材料 //消耗材料
$this->_decItems($costItems); $this->_decItems($costItems);
// $this->_incPeriodV(TN_HASH_RATE_UP_HERO_TIMES, 0, 1); // $this->_incPeriodV(TN_HASH_RATE_UP_HERO_TIMES, 0, 1);

View File

@ -22,6 +22,10 @@ class RookieTaskService extends BaseService
'target' => getXVal($taskMeta, 'target', 1), 'target' => getXVal($taskMeta, 'target', 1),
'state' => self::NOT_FINISHED_STATE, 'state' => self::NOT_FINISHED_STATE,
); );
if ($taskDto['current'] >= $taskDto['target']) {
$taskDto['current'] = $taskDto['target'];
$taskDto['state'] = self::FINISHED_STATE;
}
$starTime = RookieTask::getMyStarTime(); $starTime = RookieTask::getMyStarTime();
if ($taskMeta['task_day'] > 0){ if ($taskMeta['task_day'] > 0){
$time = ($taskMeta['task_day']-1) * 86400; $time = ($taskMeta['task_day']-1) * 86400;
@ -29,10 +33,6 @@ class RookieTaskService extends BaseService
$taskDto['state'] = self::UNARRIVED_TIME_STATE; $taskDto['state'] = self::UNARRIVED_TIME_STATE;
} }
} }
if ($taskDto['current'] >= $taskDto['target']) {
$taskDto['current'] = $taskDto['target'];
$taskDto['state'] = self::FINISHED_STATE;
}
$taskDb = RookieTask::find($taskMeta['id']); $taskDb = RookieTask::find($taskMeta['id']);
if ($taskDb){ if ($taskDb){
$taskDto['state'] = self::RECEIVED_STATE; $taskDto['state'] = self::RECEIVED_STATE;