#!/usr/bin/python
|
# -*- coding: GBK -*-
|
#-------------------------------------------------------------------------------
|
#
|
##@package GM.Commands.CrossBattle
|
#
|
# @todo:¿ç·þÕ½³¡
|
# @author hxp
|
# @date 2022-01-06
|
# @version 1.0
|
#
|
# ÏêϸÃèÊö: ¿ç·þÕ½³¡
|
#
|
#-------------------------------------------------------------------------------
|
#"""Version = 2022-01-06 20:30"""
|
#-------------------------------------------------------------------------------
|
|
import GameWorld
|
import GameLogic_CrossBattlefield
|
import ShareDefine
|
import ChConfig
|
import FBCommon
|
|
|
## Â߼ʵÏÖ
|
# @param curPlayer
|
# @param cmdList ²ÎÊýÁбí
|
# @return None
|
def OnExec(curPlayer, cmdList):
|
|
if not cmdList:
|
GameWorld.DebugAnswer(curPlayer, "--------------------------------")
|
GameWorld.DebugAnswer(curPlayer, "ÉèÖÃÍæ¼Ò»ý·Ö: CrossBattle 1 ×Ü»ý·Ö [¿ÉÑ¡Íæ¼ÒID]")
|
GameWorld.DebugAnswer(curPlayer, "ÉèÖÃÍæ¼Ò»÷ɱ: CrossBattle 2 »÷ɱÊý [¿ÉÑ¡Íæ¼ÒID]")
|
GameWorld.DebugAnswer(curPlayer, "ÉèÖÃÍæ¼Ò¹±Ï×: CrossBattle 3 ¹±Ï×¶È [¿ÉÑ¡Íæ¼ÒID]")
|
GameWorld.DebugAnswer(curPlayer, "ÉèÖÃÕóÓª»ý·Ö: CrossBattle 4 ×Ü»ý·Ö [¿ÉÑ¡ÕóÓªID]")
|
GameWorld.DebugAnswer(curPlayer, "ÖØÐÂËæ»ú´ó½±: CrossBattle 5")
|
GameWorld.DebugAnswer(curPlayer, "¸´»îÕóÓªÊØÎÀ: CrossBattle 6")
|
GameWorld.DebugAnswer(curPlayer, "¿ÉÑ¡Íæ¼Ò/ÕóÓªIDûÌîÔòĬÈÏ×ÔÉí")
|
return
|
|
tick = GameWorld.GetGameWorld().GetTick()
|
playerID = curPlayer.GetPlayerID()
|
mapID = FBCommon.GetRecordMapID(GameWorld.GetMap().GetMapID())
|
value1 = cmdList[0]
|
if value1 in [1, 2, 3, 4, 5, 6] and not GameWorld.IsCrossServer() or mapID != ChConfig.Def_FBMapID_CrossBattlefield:
|
GameWorld.DebugAnswer(curPlayer, "¸ÃÃüÁîÐèÔÚ¿ç·þÕ½³¡Ê¹ÓÃCrossServer·¢ËÍ")
|
return
|
|
# ÉèÖÃÍæ¼Ò»ý·Ö
|
if value1 == 1:
|
setScore = cmdList[1] if len(cmdList) > 1 else 1
|
tagPlayerID = cmdList[2] if len(cmdList) > 2 else playerID
|
battleObj = GameLogic_CrossBattlefield.GetBattlePlayerObj(tagPlayerID)
|
battleObj.addPlayerScore(curPlayer, setScore - battleObj.score)
|
GameWorld.DebugAnswer(curPlayer, "Íæ¼Ò(%s)»ý·Ö: %s" % (tagPlayerID, battleObj.score))
|
FBCommon.NotifyCopyMapPlayerFBHelp(tick, GameLogic_CrossBattlefield.DoFBHelp, 0, GameLogic_CrossBattlefield.refreshCrossBattlefield) # ´¥·¢Ë¢ÐÂFBHelp
|
return
|
|
# ÉèÖÃÍæ¼Ò»÷ɱ
|
if value1 == 2:
|
setCount = cmdList[1] if len(cmdList) > 1 else 1
|
tagPlayerID = cmdList[2] if len(cmdList) > 2 else playerID
|
battleObj = GameLogic_CrossBattlefield.GetBattlePlayerObj(tagPlayerID)
|
battleObj.addKillCount(setCount - battleObj.killCount)
|
GameWorld.DebugAnswer(curPlayer, "Íæ¼Ò(%s)»÷ɱÊý: %s, Á¬É±Êý: %s" % (tagPlayerID, battleObj.killCount, battleObj.continueKillCount))
|
FBCommon.NotifyCopyMapPlayerFBHelp(tick, GameLogic_CrossBattlefield.DoFBHelp, 0, GameLogic_CrossBattlefield.refreshCrossBattlefield) # ´¥·¢Ë¢ÐÂFBHelp
|
return
|
|
# ÉèÖÃÍæ¼Ò¹±Ï×¶È
|
if value1 == 3:
|
setProgress = cmdList[1] if len(cmdList) > 1 else 1
|
tagPlayerID = cmdList[2] if len(cmdList) > 2 else playerID
|
battleObj = GameLogic_CrossBattlefield.GetBattlePlayerObj(tagPlayerID)
|
battleObj.addSuperItemContribution(setProgress - battleObj.superItemContribution)
|
GameWorld.DebugAnswer(curPlayer, "Íæ¼Ò(%s)¹±Ï×¶È: %s" % (tagPlayerID, battleObj.superItemContribution))
|
FBCommon.NotifyCopyMapPlayerFBHelp(tick, GameLogic_CrossBattlefield.DoFBHelp, 0, GameLogic_CrossBattlefield.refreshCrossBattlefield) # ´¥·¢Ë¢ÐÂFBHelp
|
return
|
|
# ÉèÖÃÕóÓª»ý·Ö
|
if value1 == 4:
|
setScore = cmdList[1] if len(cmdList) > 1 else 1
|
tagFaction = cmdList[2] if len(cmdList) > 2 else 0
|
if not tagFaction or tagFaction not in ShareDefine.CampTypeList:
|
battleObj = GameLogic_CrossBattlefield.GetBattlePlayerObj(playerID)
|
tagFaction = battleObj.faction
|
factionObj = GameLogic_CrossBattlefield.GetBattleFactionObj(tagFaction)
|
factionObj.addFactionScore(setScore - factionObj.score)
|
GameWorld.DebugAnswer(curPlayer, "ÕóÓª(%s)»ý·Ö: %s" % (tagFaction, factionObj.score))
|
FBCommon.NotifyCopyMapPlayerFBHelp(tick, GameLogic_CrossBattlefield.DoFBHelp, 0, GameLogic_CrossBattlefield.refreshCrossBattlefield) # ´¥·¢Ë¢ÐÂFBHelp
|
return
|
|
# ÖØÖôó½±ÐÅÏ¢
|
if value1 == 5:
|
worldObj = GameLogic_CrossBattlefield.GetBattleWorld()
|
worldObj.RandSuperTask()
|
GameWorld.DebugAnswer(curPlayer, "ÖØÐÂËæ»ú´ó½±OK! %s" % worldObj.superItemInfo)
|
FBCommon.NotifyCopyMapPlayerFBHelp(tick, GameLogic_CrossBattlefield.DoFBHelp, 0, GameLogic_CrossBattlefield.refreshCrossBattlefield) # ´¥·¢Ë¢ÐÂFBHelp
|
return
|
|
# ¸´»îÕóÓªÊØÎÀ
|
if value1 == 6:
|
rebornNPCIDList = GameLogic_CrossBattlefield.rebornGurad()
|
GameWorld.DebugAnswer(curPlayer, "¸´»îÕóÓªÊØÎÀ! %s" % rebornNPCIDList)
|
return
|
|
return
|