xdh
2019-03-14 c68d28b333ae625e4a0fd0ebefa3ebb74d352d00
ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Event/EventSrc/QuestRunner.py
@@ -59,7 +59,9 @@
import PlayerMagicWeapon
import PlayerBossReborn
import PlayerFairyCeremony
import PlayerNewFairyCeremony
import PlayerWeekParty
import PlayerActLogin
import PlayerHorse
import FBCommon
import PyGameData
@@ -1277,7 +1279,7 @@
        #特殊清空处理, 如果没有任务, state为0
        curValue = 0
    elif tagMission == None:
        GameWorld.Log("没有目标任务 %s" % conditionID , curPlayer.GetPlayerID())
        GameWorld.DebugLog("没有目标任务 %s" % conditionID , curPlayer.GetPlayerID())
        return
    else:
        curValue = QuestRunnerValue.GetValue(curPlayer, tagMission, conditionName)
@@ -2532,7 +2534,7 @@
    totalPlusLV = 0
    for packType, equipPartIndexList in ChConfig.Pack_EquipPart_CanPlusStar.items():
        for i in equipPartIndexList:
            partStarLV = ChEquip.GetEquipPartStarLV(curPlayer, packType, i)
            partStarLV = ChEquip.GetEquipPartPlusLV(curPlayer, packType, i)
            totalPlusLV += partStarLV
    
    
@@ -2543,7 +2545,7 @@
#    equipPartIndexList = ChConfig.Pack_EquipPart_CanPlusStar.get(IPY_GameWorld.rptEquip, [])
#    for i in equipPartIndexList:
#        #统计全身强化等级
#        partStarLV = ChEquip.GetEquipPartStarLV(curPlayer, IPY_GameWorld.rptEquip, i)
#        partStarLV = ChEquip.GetEquipPartPlusLV(curPlayer, IPY_GameWorld.rptEquip, i)
#        if partStarLV >= star:
#            partCnt +=1 
    #GameWorld.Log('star=%s,conditionValue=%s,partCnt=%s,%s'%(star,conditionValue,partCnt,QuestRunnerValue.GetEval(conditionType, partCnt, conditionValue)))
@@ -2898,15 +2900,15 @@
        if equipIndex == 0:
            GameWorld.ErrLog("任务赠送装备位置错误 equipIndex=-1")
            return
        if ItemCommon.CheckHasEquip(curPlayer, IPY_GameWorld.rptEquip, equipIndex):
        equipPackIndex = ItemCommon.GetEquipPackIndex(curSingleItem)
        if ItemCommon.CheckHasEquip(curPlayer, IPY_GameWorld.rptEquip, equipPackIndex):
            #物品已存在直接给背包
            if not itemControl.PutInItem(IPY_GameWorld.rptItem, curSingleItem, event=["AddEventItem", False, {'MissionID':missionID}]):
                GameWorld.Log('###任务 = %s给予物品异常, %s, %s' % (missionID, itemID, itemCount), curPlayer.GetPlayerID())
                curSingleItem.Clear()
                return
        else:
            ChEquip.DoPlayerEquipItem(curPlayer, curSingleItem, equipIndex, 0)
            ChEquip.DoPlayerEquipItem(curPlayer, curSingleItem,equipPackIndex, 0)
    
    #ObtainRes01    <n>获得</n><Info Type="Item" Name="Name" ID="{%S1%}"/><n>×</n><n>{%S2%}!</n>
    elif not itemControl.PutInItem(packIndex, curSingleItem, event=["AddEventItem", False, {'MissionID':missionID}]):
@@ -5238,10 +5240,13 @@
    GameWorld.Log('    跑环完成触发活跃度 missionType=%s'%missionType, curPlayer.GetPlayerID())
    if missionType == QuestCommon.Def_Mission_Type_RunDaily:
        PlayerActivity.AddDailyActionFinishCnt(curPlayer, ShareDefine.DailyActionID_DailyRunMission, addCnt)
        PlayerSuccess.DoAddSuccessProgress(curPlayer, ShareDefine.SuccType_FeastRedPack_TaskCRun, addCnt)
        PlayerSuccess.DoAddSuccessProgress(curPlayer, ShareDefine.SuccType_TaskCRun, addCnt)
        PlayerBossReborn.AddBossRebornActionCnt(curPlayer, ChConfig.Def_BRAct_RunTask, addCnt)
        PlayerFairyCeremony.AddFCPartyActionCnt(curPlayer, ChConfig.Def_PPAct_RunTask, addCnt)
        PlayerNewFairyCeremony.AddFCPartyActionCnt(curPlayer, ChConfig.Def_PPAct_RunTask, addCnt)
        PlayerWeekParty.AddWeekPartyActionCnt(curPlayer, ChConfig.Def_WPAct_RunTask, addCnt)
        PlayerActLogin.AddLoginAwardActionCnt(curPlayer, ChConfig.Def_LoginAct_RunTask, 1)
    elif missionType == QuestCommon.Def_Mission_Type_RunFamily:
        PlayerActivity.AddDailyActionFinishCnt(curPlayer, ShareDefine.DailyActionID_FamilyRunMission, addCnt)
        PlayerFamily.AddFamilyActivity(curPlayer, ShareDefine.FamilyActive_Task, addCnt)
@@ -6111,11 +6116,11 @@
# @return 返回值无意义
# @remarks <Set_Equiptotalstar key="" />
def DoType_Set_Equiptotalstar(curPlayer, curMission, curActionNode):
    key = curActionNode.GetAttribute("key")
    questID = GameWorld.ToIntDef(curActionNode.GetAttribute("id"), 0)
    if questID != 0:
        curMission = curPlayer.FindMission(questID)
    curMission.SetProperty(key, ChEquip.GetTotalEquipStars(curPlayer))
#    key = curActionNode.GetAttribute("key")
#    questID = GameWorld.ToIntDef(curActionNode.GetAttribute("id"), 0)
#    if questID != 0:
#        curMission = curPlayer.FindMission(questID)
#    curMission.SetProperty(key, ChEquip.GetTotalEquipStars(curPlayer))
    return
#---------------------------------------------------------------------
##DoType_调度器
@@ -7227,21 +7232,7 @@
    totallv = GameWorld.ToIntDef(curActionNode.GetAttribute("value"), 0)
    return PlayerHorse.GetHorseSumLV(curPlayer) >= totallv
##2阶强化防具套装件数
# @param None
# @return None <Suitplus value="cnt"/>
def ConditionType_Suitplus(curPlayer, curMission, curActionNode):
    needCnt = GameWorld.ToIntDef(curActionNode.GetAttribute("value"), 0)
    equipSuitTypeDict = IpyGameDataPY.GetFuncEvalCfg('EquipSuitType')
    groupCnt = 0 #2阶强化防具套装件数
    for groupType, equipIndexList in equipSuitTypeDict.items():
        for i in equipIndexList:
            suiteInfo = ChEquip.GetSuiteInfoByPlace(curPlayer, i)
            for suiteType, lv in suiteInfo.items():
                if lv >= 2 and int(groupType) == 1 and suiteType == 2:
                    groupCnt +=1
    return groupCnt >= needCnt
##法宝激活个数
# @param None
@@ -7262,7 +7253,7 @@
# @return None <Equiptotalstar value="cnt"/>
def ConditionType_Equiptotalstar(curPlayer, curMission, curActionNode):
    totalcnt = GameWorld.ToIntDef(curActionNode.GetAttribute("value"), 0)
    return ChEquip.GetTotalEquipStars(curPlayer) >= totalcnt
    return #ChEquip.GetTotalEquipStars(curPlayer) >= totalcnt
##激活法宝,确认与成就逻辑后使用
# @param None