#!/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, tagPlayerID, valueList): ## »ØºÏÕ½¶·ÇëÇó - µØÍ¼ÑéÖ¤ # Ò¡È˰ïÖú if funcLineID == 0: if not tagPlayerID: 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 else: # ͨ¹ýlineIDÀ©Õ¹Í¬¸ö¹¦ÄÜϵͳϵIJ»Í¬Õ½¶·ÐèÇó pass return True def OnTurnFightOver(curPlayer, mapID, funcLineID, tagPlayerID, valueList, fightRet): ## »ØºÏÕ½¶·½áÊø # @return: ÊÇ·ñÐèҪͬ²½GameServer, ½±ÀøÁбí, ·¢·Å·½Ê½(0-²»·¢·Å, 1-TurnAttackÄ£¿éͳһ·¢·Å, 2-¹¦ÄÜ×Ô¼º¾ö¶¨·¢·ÅÂß¼­) # Ò¡È˰ïÖú if funcLineID == 0: # ÎÞÂÛʤ¸º¶¼ÒªÍ¬²½GameServer»ã±¨½á¹û isWin = fightRet[0] if not isWin: return True, [], 0 awardItemList = IpyGameDataPY.GetFuncEvalCfg("MineAreaHelp", 2) return True, awardItemList, 2 return def OnTurnFightOver_GameServerRet(curPlayer, mapID, funcLineID, tagPlayerID, 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