| | |
| | | import EventReport
|
| | | import PlayerCoat
|
| | | import PlayerGatherSoul
|
| | | import PlayerArrestTask
|
| | | #import PlayerArrestTask
|
| | | import PlayerRune
|
| | | import IpyGameDataPY
|
| | | import FormulaControl
|
| | |
| | | return
|
| | |
|
| | | curPlayer.SetActionObj(curNPC)
|
| | | PlayerControl.ChangePlayerAction(curPlayer, IPY_GameWorld.paNull)
|
| | |
|
| | | if NPCCommon.OnCollectNPCBegin(curPlayer, curNPC, tick):
|
| | | return
|
| | |
| | | RunQuestEvent(curPlayer, 'on_deactive', missionID, Def_RunQuestType_RunAll)
|
| | | return
|
| | |
|
| | | #---------------------------------------------------------------------
|
| | | ##任务触发器_OnCoin 换取金钱事件
|
| | | #@param curPlayer 玩家实例
|
| | | #@return 返回值无意义
|
| | | #@remarks 任务触发器_OnCoin 换取金钱事件
|
| | | def EventResponse_OnCoin(curPlayer):
|
| | | RunQuestEvent(curPlayer, 'on_coin', 'on_coin', Def_RunQuestType_RunAll)
|
| | | curPlayer.DataServer_CheckPrizeItem()
|
| | | return
|
| | |
|
| | | #---------------------------------------------------------------------
|
| | | ##任务触发器_OnDig 挖宝进度条结束后触发
|
| | |
| | | GameWorld.DebugLog("任务状态(%s)不可提交,不能完成任务!taskID=%s" % (missionState, taskID))
|
| | | return
|
| | |
|
| | | curQuestData = QuestManager.FindQuest(taskID)
|
| | | |
| | | rewardPer = 100 if rewardPer <= 0 else rewardPer
|
| | | moneyType, moneyCnt = 0, 0
|
| | | curQuestData = QuestManager.FindQuest(taskID)
|
| | | # 环任务支持多倍奖励领取
|
| | | if curQuestData != None and curQuestData.Type in QuestCommon.Def_RunTask_Type_List:
|
| | | if rewardPer != 100:
|
| | |
| | | RunQuestEvent(curPlayer, "on_trialtowercnt", cnt, Def_RunQuestType_Normal)
|
| | | return
|
| | |
|
| | | ## 通关天星塔第X层
|
| | | # @param curPlayer 玩家实例
|
| | | # @param eventName |
| | | # @return None
|
| | | def EventRespons_SkyTowerCnt(curPlayer, cnt):
|
| | | RunQuestEvent(curPlayer, "skytowerpass", cnt, Def_RunQuestType_Normal)
|
| | | return
|
| | |
|
| | | ##护送X次美女
|
| | | # @param curPlayer 玩家实例
|
| | | # @param eventName 事件名
|
| | |
| | | RunQuestEvent(curPlayer, "passiveset", "passiveset", Def_RunQuestType_Normal)
|
| | | return
|
| | |
|
| | | def EventRespons_PlusGodWeapon(curPlayer):
|
| | | def EventRespons_PlusGodWeapon(curPlayer, weaponType):
|
| | | #神兵锤炼
|
| | | RunQuestEvent(curPlayer, "plusgodweapon", "plusgodweapon", Def_RunQuestType_Normal)
|
| | | RunQuestEvent(curPlayer, "plusgodweapon", weaponType, Def_RunQuestType_Normal)
|
| | | return
|
| | | def EventRespons_GodWeaponUp(curPlayer, weaponType, attrLV):
|
| | | # 神兵升级
|
| | | RunQuestEvent(curPlayer, "godweaponup", "%s_%s"%(weaponType, attrLV), Def_RunQuestType_Normal)
|
| | | return
|
| | |
|
| | | def EventRespons_RefineItem(curPlayer, alchemyLV):
|
| | | def EventRespons_RefineItem(curPlayer, alchemyLV, alchemyItemID):
|
| | | #八卦炉炼丹
|
| | | RunQuestEvent(curPlayer, "refineitem", alchemyLV, Def_RunQuestType_Normal)
|
| | | RunQuestEvent(curPlayer, "refineitem", "refineitem", Def_RunQuestType_Normal)
|
| | | #这两个接口策划暂时不用,先注释,使用新的连某个丹药接口
|
| | | #RunQuestEvent(curPlayer, "refineitem", alchemyLV, Def_RunQuestType_Normal)
|
| | | #RunQuestEvent(curPlayer, "refineitem", "refineitem", Def_RunQuestType_Normal)
|
| | | RunQuestEvent(curPlayer, "refineitem", alchemyItemID, Def_RunQuestType_Normal)
|
| | | return
|
| | |
|
| | | def EventRespons_RefineStoveUp(curPlayer, alchemyLV):
|
| | | #八卦炉升至X级
|
| | | RunQuestEvent(curPlayer, "refinestoveup", alchemyLV, Def_RunQuestType_Normal)
|
| | | RunQuestEvent(curPlayer, "refinestoveup", alchemyLV, Def_RunQuestType_RunAll)
|
| | | return
|
| | |
|
| | | def EventRespons_GetRealmPoint(curPlayer):
|
| | |
| | | RunQuestEvent(curPlayer, "equipplus", '%s_%s'%(classLV, partPlusLV), Def_RunQuestType_Normal)
|
| | | return
|
| | |
|
| | | def EventRespons_EquipStar(curPlayer):
|
| | | #装备总星级变化
|
| | | RunQuestEvent(curPlayer, "equipstar", "equipstar", Def_RunQuestType_Normal)
|
| | | def EventRespons_EquipPlusEvolve(curPlayer, nextEvolveLV):
|
| | | #强化进化
|
| | | RunQuestEvent(curPlayer, "equipplusevolve", "equipplusevolve", Def_RunQuestType_Normal)
|
| | | return
|
| | |
|
| | | def EventRespons_Talk(curPlayer, eventName):
|
| | |
| | | RunQuestEvent(curPlayer, "talk", eventName, Def_RunQuestType_Normal)
|
| | | return
|
| | |
|
| | | def EventRespons_FairyDomain(curPlayer):
|
| | | def EventRespons_FairyDomain(curPlayer, eventType):
|
| | | #完成缥缈仙域事件
|
| | | RunQuestEvent(curPlayer, "fairydomain", 'fairydomain', Def_RunQuestType_Normal)
|
| | | RunQuestEvent(curPlayer, "fairydomain", eventType, Def_RunQuestType_Normal)
|
| | | return
|
| | |
|
| | | def EventRespons_AroundMission(curPlayer, missionType):
|
| | | #完成跑环任务
|
| | | RunQuestEvent(curPlayer, "aroundfinish", missionType, Def_RunQuestType_Normal)
|
| | | return
|
| | |
|
| | | def EventRespons_Pray(curPlayer, prayType):
|
| | | #完成祈愿
|
| | | RunQuestEvent(curPlayer, "pray", prayType, Def_RunQuestType_Normal)
|
| | | return
|
| | |
|
| | | def EventRespons_ThinkMagicWeapon(curPlayer):
|
| | | #感应法宝
|
| | | RunQuestEvent(curPlayer, "thinkfabao", 'thinkfabao', Def_RunQuestType_Normal)
|
| | | return
|
| | |
|
| | | def EventRespons_ElementSkill(curPlayer, mainSkillID, skillElementType, updSelectSkillLV):
|
| | | #激活五行专精 主技能ID_专精类型_激活等级.xml
|
| | | RunQuestEvent(curPlayer, "elementskill", '%s_%s_%s'%(mainSkillID, skillElementType, updSelectSkillLV), Def_RunQuestType_Normal)
|
| | | return
|
| | |
|
| | | def EventRespons_EquipStarUp(curPlayer):
|
| | | #装备升星
|
| | | RunQuestEvent(curPlayer, "equipstarup", 'equipstarup', Def_RunQuestType_Normal)
|
| | | return
|
| | |
|
| | | def EventRespons_InlayStone(curPlayer):
|
| | | #宝石镶嵌
|
| | | RunQuestEvent(curPlayer, "inlaystone", 'inlaystone', Def_RunQuestType_Normal)
|
| | | return
|
| | |
|
| | | def EventRespons_StoneChange(curPlayer):
|
| | | # 宝石变更
|
| | | RunQuestEvent(curPlayer, "stonechange", 'stonechange', Def_RunQuestType_Normal)
|
| | | return
|
| | |
|
| | | def EventRespons_EquipItem(curPlayer):
|
| | | #穿脱装备
|
| | | RunQuestEvent(curPlayer, "equipitem", 'equipitem', Def_RunQuestType_Normal)
|
| | | return
|
| | |
|
| | | def EventRespons_SkillUp(curPlayer, FuncType, skillLV):
|
| | | #升级技能
|
| | | RunQuestEvent(curPlayer, "skillup", FuncType, Def_RunQuestType_Normal)
|
| | | RunQuestEvent(curPlayer, "skillup", '%s_%s' % (FuncType, skillLV), Def_RunQuestType_Normal)
|
| | | return
|
| | |
|
| | | def EventRespons_LingGenQualityUP(curPlayer, attrID, qualityLV):
|
| | | #灵根升品
|
| | | RunQuestEvent(curPlayer, "linggenqualityup", '%s_%s' % (attrID, qualityLV), Def_RunQuestType_Normal)
|
| | | return
|
| | |
|
| | | def EventRespons_AddPoint(curPlayer):
|
| | | #灵根加点
|
| | | RunQuestEvent(curPlayer, "addpoint", '0', Def_RunQuestType_Normal)
|
| | | return
|
| | |
|
| | | def EventRespons_ActivityAward(curPlayer, awardIndex):
|
| | | #活跃领奖
|
| | | RunQuestEvent(curPlayer, "activityaward", awardIndex, Def_RunQuestType_Normal)
|
| | | return
|
| | |
|
| | | def EventRespons_AddActivityValue(curPlayer):
|
| | | # 增加活跃度
|
| | | RunQuestEvent(curPlayer, "addactivity", "addactivity", Def_RunQuestType_Normal)
|
| | | return
|
| | |
|
| | | def EventRespons_HorsePetBoss(curPlayer):
|
| | | #参加骑宠BOSS
|
| | | RunQuestEvent(curPlayer, "horsepetboss", 'horsepetboss', Def_RunQuestType_Normal)
|
| | | return
|
| | |
|
| | | def EventRespons_LingGenReset(curPlayer):
|
| | | #灵根重置
|
| | | RunQuestEvent(curPlayer, "linggenreset", 'linggenreset', Def_RunQuestType_Normal)
|
| | | return
|
| | |
|
| | | def EventRespons_UseMissionItem(curPlayer, missionID):
|
| | | # 使用物品触发任务
|
| | | RunQuestEvent(curPlayer, "usemissionitem", missionID, Def_RunQuestType_RunAll)
|
| | | return
|
| | |
|
| | | def EventRespons_XBXZ(curPlayer, MWID):
|
| | | # 仙宝寻主领奖
|
| | | RunQuestEvent(curPlayer, "xbxz", MWID, Def_RunQuestType_Normal)
|
| | | return
|
| | |
|
| | | def EventRespons_AddAuctionEquip(curPlayer, color):
|
| | | # 上架装备拍品
|
| | | RunQuestEvent(curPlayer, "addauctionequip", color, Def_RunQuestType_Normal)
|
| | | return
|
| | |
|
| | | def EventRespons_BuyAuctionEquip(curPlayer, color):
|
| | | # 购买装备拍品
|
| | | RunQuestEvent(curPlayer, "buyauctionequip", color, Def_RunQuestType_Normal)
|
| | | return
|
| | |
|
| | | def EventRespons_OnMoneyChange(curPlayer, moneyType):
|
| | | # 货币变更时
|
| | | |
| | | # 暂开放灵石
|
| | | if moneyType not in [IPY_GameWorld.TYPE_Price_Gold_Paper]:
|
| | | return
|
| | | RunQuestEvent(curPlayer, "onmoneychange", moneyType, Def_RunQuestType_Normal)
|
| | | return
|
| | |
|
| | | def EventRespons_ActivityPlace(curPlayer, event, runall=False):
|
| | | ''' 活跃放置事件
|
| | | @param event: 可启动 canstart、启动 start、可领奖 cangetreward、领奖 getreward
|
| | | '''
|
| | | RunQuestEvent(curPlayer, "activityplace", event, Def_RunQuestType_RunAll if runall else Def_RunQuestType_Normal)
|
| | | return
|
| | |
|
| | | #---------------------------------------------------------------------
|
| | |
|
| | | #================================================================================
|
| | |
| | | PlayerControl.NotifyCode(curPlayer, "Task_cannot_Delete02")
|
| | | return
|
| | |
|
| | | if GameWorld.GetMap().GetMapFBType() != IPY_GameWorld.fbtNull:
|
| | | PlayerControl.NotifyCode(curPlayer, "GeRen_hgg_880525")
|
| | | #if GameWorld.GetMap().GetMapFBType() != IPY_GameWorld.fbtNull:
|
| | | # PlayerControl.NotifyCode(curPlayer, "GeRen_hgg_880525")
|
| | | # return
|
| | | |
| | | curQuestData = QuestManager.FindQuest(missionID)
|
| | | if not curQuestData:
|
| | | return
|
| | |
|
| | | #放弃悬赏任务
|
| | | if missionID == ChConfig.Def_ArrestMissionID:
|
| | | PlayerArrestTask.OnDeleteArrestTask(curPlayer)
|
| | | |
| | | |
| | | #if missionID == ChConfig.Def_ArrestMissionID:
|
| | | # PlayerArrestTask.OnDeleteArrestTask(curPlayer)
|
| | | |
| | | #先在任务表中找数据, 如果找到了, 就不遍历XML了
|
| | | if __DoLogic_DeleteMission(curPlayer, curMission):
|
| | | GameWorld.Log("在任务表中找数据, 删除任务 = %s, 状态 = %s"%(missionID, missionState), curPlayer.GetID())
|
| | |
| | | # 需要付钱
|
| | | costMoneyList = []
|
| | | if needMoney > 0:
|
| | | costMoneyList = PlayerControl.HaveMoneyEx(curPlayer, IPY_GameWorld.TYPE_Price_Gold_Money, needMoney)
|
| | | costMoneyList = PlayerControl.HaveMoneyEx(curPlayer, IPY_GameWorld.TYPE_Price_Gold_Paper, needMoney)
|
| | | if costMoneyList == []:
|
| | | #金钱不足
|
| | | return False, costMoneyList
|
| | |
| | | RunQuestEvent(curPlayer, "on_revlogintype_event", "on_revlogintype_event", Def_RunQuestType_Normal)
|
| | | return
|
| | |
|
| | | #// A2 07 接受任务 #tagCMTakeTask
|
| | | #
|
| | | #struct tagCMTakeTask
|
| | | #{
|
| | | # tagHead Head;
|
| | | # DWORD TaskID;
|
| | | #};
|
| | | def OnTakeTask(index, clientData, tick):
|
| | | curPlayer = GameWorld.GetPlayerManager().GetPlayerByIndex(index)
|
| | | |
| | | missionID = clientData.TaskID
|
| | | curMission = curPlayer.FindMission(missionID)
|
| | | if not curMission:
|
| | | return
|
| | | |
| | | missionState = curMission.GetState()
|
| | | if missionState != ChConfig.Def_Mission_State_NoAccept:
|
| | | return
|
| | | |
| | | curQuestData = QuestManager.FindQuest(missionID)
|
| | | if not curQuestData:
|
| | | return
|
| | | |
| | | QuestCommon.SetPlayerMissionState(curPlayer, curMission, 1)
|
| | | return
|
| | |
|
| | | #// A2 18 完成任务 #tagCMFinishTask
|
| | | #
|
| | | #struct tagCMFinishTask
|