cyzhao 3 years ago
parent
commit
63e29b8f52
2 changed files with 10 additions and 3 deletions
  1. 2 0
      Gameserver/Amfphp/base/ErrCode.php
  2. 8 3
      Gameserver/Amfphp/process/StoreProc.php

+ 2 - 0
Gameserver/Amfphp/base/ErrCode.php

@@ -585,6 +585,8 @@ class ErrCode {
      * 言灵身上没有宝石
      * 言灵身上没有宝石
      */
      */
     const store_YanLingNotGem = 3422;
     const store_YanLingNotGem = 3422;
+    
+    const store_YanLingHaveGem = 3423;
 // </editor-fold>
 // </editor-fold>
     //  
     //  
     // <editor-fold defaultstate="collapsed" desc="   任务错误码 35xx系列   ">
     // <editor-fold defaultstate="collapsed" desc="   任务错误码 35xx系列   ">

+ 8 - 3
Gameserver/Amfphp/process/StoreProc.php

@@ -89,11 +89,14 @@ class StoreProc {
         my_Assert(CommUtil::isPropertyExists($yanling, $yanlingUid), ErrCode::hero_yanling_errorYanling);       
         my_Assert(CommUtil::isPropertyExists($yanling, $yanlingUid), ErrCode::hero_yanling_errorYanling);       
         my_Assert(CommUtil::isPropertyExists($user->store->items,$gemId) && $user->store->items->$gemId >0, ErrCode::store_itemno_err);
         my_Assert(CommUtil::isPropertyExists($user->store->items,$gemId) && $user->store->items->$gemId >0, ErrCode::store_itemno_err);
         
         
-        StoreProc::removeItemFromStore($user->store, $gemId);
+        
         if(!StlUtil::dictHasProperty($yanling->$yanlingUid,"gemId")){//临时
         if(!StlUtil::dictHasProperty($yanling->$yanlingUid,"gemId")){//临时
             $yanling->$yanlingUid->gemId = 0;
             $yanling->$yanlingUid->gemId = 0;
         }
         }
         
         
+        my_Assert($yanling->$yanlingUid->gemId==0, ErrCode::store_YanLingHaveGem);
+        
+        StoreProc::removeItemFromStore($user->store, $gemId);
         $yanling->$yanlingUid->gemId = $gemId;
         $yanling->$yanlingUid->gemId = $gemId;
         
         
         $user->store->yanling = $yanling;        
         $user->store->yanling = $yanling;        
@@ -141,7 +144,7 @@ class StoreProc {
                
                
         $mo = GameConfig::gem_formula_getItem($gemId);
         $mo = GameConfig::gem_formula_getItem($gemId);
         my_Assert($mo != null, ErrCode::err_const_no); #
         my_Assert($mo != null, ErrCode::err_const_no); #
-        my_Assert($mo->levellimit >= $user->Gem->level, ErrCode::store_GemComplose_ResearchLevelLimit); #
+        my_Assert($mo->levellimit <= $user->Gem->level, ErrCode::store_GemComplose_ResearchLevelLimit); #
         $itemId = $mo->drawItem;
         $itemId = $mo->drawItem;
         if($itemId != ""){
         if($itemId != ""){
             my_Assert(StlUtil::dictHasProperty($user->store->items,$itemId) && $user->store->items->$itemId>0 , ErrCode::store_GemComploseTuZhiNotEnough); #
             my_Assert(StlUtil::dictHasProperty($user->store->items,$itemId) && $user->store->items->$itemId>0 , ErrCode::store_GemComploseTuZhiNotEnough); #
@@ -164,7 +167,9 @@ class StoreProc {
         
         
         //扣除配方金币 宝石
         //扣除配方金币 宝石
         $user->base(true)->Consume_Gold($mo->composeGold);
         $user->base(true)->Consume_Gold($mo->composeGold);
-        StoreProc::removeItemFromStore($user->store, $gList[0],$gList[1]);     
+        StoreProc::removeItemFromStore($user->store, $gList[0],$gList[1]); 
+        $goodsStr = $gemId.',1';
+        StoreProc::AddMultiItemInStore($goodsStr);
         req()->userInfo->game = $user;
         req()->userInfo->game = $user;
                
                
         UserProc::updateUserInfo();                                             # 回写玩家数据
         UserProc::updateUserInfo();                                             # 回写玩家数据