| #!/usr/bin/python  | 
| # -*- coding: GBK -*-  | 
| #-------------------------------------------------------------------------------  | 
| #  | 
| ##@package GameWorldLogic.FBProcess.GameLogic_MineArea  | 
| #  | 
| # @todo:¸£µØ  | 
| # @author hxp  | 
| # @date 2024-04-10  | 
| # @version 1.0  | 
| #  | 
| # ÏêϸÃèÊö: ¸£µØ  | 
| #  | 
| #-------------------------------------------------------------------------------  | 
| #"""Version = 2024-04-10 14:00"""  | 
| #-------------------------------------------------------------------------------  | 
|   | 
| import ChConfig  | 
| import IpyGameDataPY  | 
| import PlayerMineArea  | 
| import PlayerControl  | 
| import GameWorld  | 
|   | 
| def OnTurnFightRequest(curPlayer, mapID, funcLineID, tagType, tagID, valueList):  | 
|     ## »ØºÏÕ½¶·ÇëÇó - µØÍ¼ÑéÖ¤  | 
|       | 
|     if tagType != ChConfig.TurnBattle_TagType_Player:  | 
|         GameWorld.DebugLog("ÇëÇó»ØºÏÕ½¶·Ä¿±êÒì³£! mapID=%s,tagType=%s,tagID=%s" % (mapID, tagType, tagID), curPlayer.GetPlayerID())  | 
|         return  | 
|       | 
|     # Ò¡È˰ïÖú  | 
|     if funcLineID == 0:  | 
|         if not tagID:  | 
|             return  | 
|         awardCount = curPlayer.NomalDictGetProperty(ChConfig.Def_PDict_MineHelpAwardCount)  | 
|         awardCountMax = IpyGameDataPY.GetFuncCfg("MineAreaHelp", 1)  | 
|         if awardCountMax and awardCount >= awardCountMax:  | 
|             GameWorld.DebugLog("ÒÑ´ïµ½½ñÈÕ¸£µØ°ïÖú½±Àø´ÎÊýÉÏÏÞ! awardCount=%s" % awardCount, curPlayer.GetPlayerID())  | 
|             return  | 
|     # ×Ô¼ºÇý¸Ï  | 
|     elif funcLineID == 1:  | 
|         pass  | 
|     else:  | 
|         # Í¨¹ýlineIDÀ©Õ¹Í¬¸ö¹¦ÄÜϵͳϵIJ»Í¬Õ½¶·ÐèÇó  | 
|         pass  | 
|       | 
|     return True  | 
|   | 
| def OnTurnFightOver(curPlayer, mapID, funcLineID, tagType, tagID, valueList, fightRet):  | 
|     ## »ØºÏÕ½¶·½áÊø  | 
|     # @return: ÊÇ·ñÐèҪͬ²½GameServer, ½±ÀøÁбí, Í¬²½½á¹ûÐÅÏ¢  | 
|     needSendGameServer = True  | 
|     awardItemList = []  | 
|     overInfoEx = {}  | 
|       | 
|     # Ò¡È˰ïÖú  | 
|     if funcLineID == 0:  | 
|         # ÎÞÂÛʤ¸º¶¼ÒªÍ¬²½GameServer»ã±¨½á¹û  | 
|         isWin = fightRet[0]  | 
|         if not isWin:  | 
|             return needSendGameServer, awardItemList, overInfoEx  | 
|           | 
|         awardItemList = IpyGameDataPY.GetFuncEvalCfg("MineAreaHelp", 2)  | 
|         return needSendGameServer, awardItemList, overInfoEx  | 
|       | 
|     # ×Ô¼ºÇý¸Ï  | 
|     elif funcLineID == 1:  | 
|         return needSendGameServer, awardItemList, overInfoEx  | 
|       | 
|     return  | 
|   | 
| def OnTurnFightOver_GameServerRet(curPlayer, mapID, funcLineID, tagType, tagID, valueList, fightRet, awardItemList, ret):  | 
|     ## »ØºÏÕ½¶·½áÊø - GameServer´¦ÀíÍê±Ï·µ»Ø  | 
|       | 
|     # Ò¡È˰ïÖú  | 
|     if funcLineID == 0:  | 
|         isWin = fightRet[0]  | 
|         if not isWin or not ret:  | 
|             return  | 
|           | 
|         # Ôö¼Ó½±Àø´ÎÊý  | 
|         awardCount = curPlayer.NomalDictGetProperty(ChConfig.Def_PDict_MineHelpAwardCount) + 1  | 
|         PlayerControl.NomalDictSetProperty(curPlayer, ChConfig.Def_PDict_MineHelpAwardCount, awardCount)  | 
|         GameWorld.DebugLog("¸üи£µØ°ïÖúËûÈ˽±Àø´ÎÊý: awardCount=%s" % awardCount, curPlayer.GetPlayerID())  | 
|         PlayerMineArea.SyncPlayerMineAreaInfo(curPlayer)  | 
|           | 
|     return  | 
|   | 
|   |