| | |
| | | NPCCommon.ClearCollectNPC(curPlayer)
|
| | | #结束事件
|
| | | EventShell.DoExitEvent(curPlayer)
|
| | | |
| | | # 结束摆摊/查看摆摊
|
| | | EventShell.ExitShopItem(curPlayer)
|
| | | EventShell.ExitWatchShopItem(curPlayer)
|
| | |
|
| | | #设置玩家的地图位置, 如果是副本, 离开副本
|
| | | # 副本规则:
|
| | |
| | | PlayerTruck.PlayerTruckDown(curPlayer, curTruck)
|
| | |
|
| | | curPlayer.SetChangeMapTakeTruck(takeTruck)
|
| | | |
| | | # 如果在摆摊中,提示摆摊关闭
|
| | | playerShop = curPlayer.GetPlayerShop()
|
| | | if playerShop.GetIsStartShop():
|
| | | NotifyCode(curPlayer, "GeRen_admin_70569")
|
| | |
|
| | | #离开地图服务器
|
| | | __PlayerLeaveServerLogic(curPlayer, tick, False)
|
| | |
| | | # 绝版降临
|
| | | PlayerFairyCeremony.AddFCCostGold(curPlayer, costType, price)
|
| | | PlayerNewFairyCeremony.AddFCCostGold(curPlayer, costType, price)
|
| | | # 消费VIP
|
| | | # if costVIPGold < 0:
|
| | | # costVIPGold = price
|
| | | #PlayerCostVIP.AddCostVIPExp(curPlayer, costType, costVIPGold)
|
| | |
|
| | | # 事件汇报
|
| | | #===========================================================================
|
| | |
| | | return True
|
| | |
|
| | | #---------------------------------------------------------------------
|
| | | ## 获取下一次转生所需等级
|
| | | def GetNextReincarnationLV(self, curPlayer):
|
| | | Reincarnation_ConditionDict = ReadChConfig.GetEvalChConfig("Reincarnation_Condition")
|
| | | curReinCnt = curPlayer.GetReincarnationLv() # 当前转生次数
|
| | | nextReinCnt = curReinCnt + 1
|
| | | nextReinLV = IpyGameDataPY.GetFuncCfg("PlayerMaxLV")
|
| | | if nextReinCnt in Reincarnation_ConditionDict:
|
| | | nextReinLV = Reincarnation_ConditionDict[nextReinCnt][0]
|
| | | return nextReinLV
|
| | |
|
| | | ## 加经验值
|
| | | # @param self 类实例
|
| | |
| | | if addExp == 0:
|
| | | # 不进入计算
|
| | | return addExp, expViewType
|
| | | #nextReinLV = self.GetNextReincarnationLV(curPlayer)
|
| | |
|
| | | #取得人物当前经验
|
| | | #curTotalExp = GetPlayerTotalExp(curPlayer)
|
| | |
| | | # if expViewType == ShareDefine.Def_ViewExpType_KillNPC:
|
| | | # #mapID = GameWorld.GetMap().GetMapID()
|
| | | # #if mapID in ChConfig.Def_FBMapID_BZZDAll:
|
| | | # # nobleVIPOuterRate = PlayerCostVIP.GetBZZDExpAddRate(curPlayer)
|
| | | # # nobleVIPOuterRate = ...
|
| | | # # #nobleVIPAddExp += 0 if not nobleVIPOuterRate else int(addExp * nobleVIPOuterRate / float(ChConfig.Def_MaxRateValue))
|
| | | # # nobleVIPAddExp += nobleVIPOuterRate
|
| | | #
|
| | |
| | | if BuffSkill.DelBuffBySkillID(curPlayer, ChConfig.Def_SkillID_LimitSuperBuff, tick):
|
| | |
|
| | | PlayerControl(curPlayer).RefreshPlayerAttrByBuff()
|
| | |
|
| | | #---------------------------------------------------------------------
|
| | | ##清除生产采集BUF
|
| | | # @param curPlayer 玩家实例
|
| | | # @param tick 时间戳
|
| | | # @param isLeaveServer 玩家是否离开服务器
|
| | | # @return 返回值无意义
|
| | | # @remarks 清除生产采集BUF
|
| | | def DelProduceBuff(curPlayer, tick, isLeaveServer=False):
|
| | | |
| | | if not isLeaveServer:
|
| | | if curPlayer.GetPlayerAction() != IPY_GameWorld.paProduce:
|
| | | #玩家当前状态不在生产采集,不处理
|
| | | return
|
| | | |
| | | #清除生产buff(ID20021)
|
| | | BuffSkill.DelBuffBySkillID(curPlayer, ChConfig.Def_ProduceBuffID, tick)
|
| | | |
| | | #清除活动无敌Buff
|
| | | BuffSkill.DelBuffBySkillID(curPlayer, ChConfig.Def_SkillID_ActionWuDi, tick)
|
| | | |
| | | if not isLeaveServer:
|
| | | #设置玩家空闲状态
|
| | | ChangePlayerAction(curPlayer, IPY_GameWorld.paNull)
|
| | | #通知客户端
|
| | | curPlayer.Notify_ProductionState(ChConfig.Def_EndProduction)
|
| | | |
| | | #PlayerControl(curPlayer).RefreshAllState()
|
| | | return
|
| | |
|
| | | #---------------------------------------------------------------------
|
| | | ##特殊状态处理
|