hxp
2025-12-09 414e694600077975d13979e925e152a52f4f8d03
ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/GM/Commands/Hero.py
@@ -42,6 +42,8 @@
        GameWorld.DebugAnswer(curPlayer, "重置图鉴: Hero t 0 [重置阵容推荐]")
        GameWorld.DebugAnswer(curPlayer, "重置重生: Hero r")
        GameWorld.DebugAnswer(curPlayer, "武将皮肤: Hero sk 武将ID 皮肤索引 是否解锁")
        GameWorld.DebugAnswer(curPlayer, "重置宿缘: Hero sy 0")
        GameWorld.DebugAnswer(curPlayer, "设置宿缘: Hero sy 宿缘ID 等级 [是否激活]")
        GameWorld.DebugAnswer(curPlayer, "清空武将: ClearPack 35")
        GameWorld.DebugAnswer(curPlayer, "新增武将: MakeItemCount 英雄ID [个数]")
        GameWorld.DebugAnswer(curPlayer, "阵容上阵: Hero f 阵容ID [武将ID ...]")
@@ -126,6 +128,44 @@
        PlayerHero.ActiveHeroSkin(curPlayer, heroID, skinIndex, isActive)
        return
    
    # 宿缘
    if value == "sy":
        syncIDList = []
        if not value2:
            ipyDataMgr = IpyGameDataPY.IPY_Data()
            for index in range(ipyDataMgr.GetHeroFatesCount()):
                ipyData = ipyDataMgr.GetHeroFatesByIndex(index)
                fatesID = ipyData.GetFatesID()
                if not PlayerHero.GetHeroFatesState(curPlayer, fatesID):
                    continue
                PlayerHero.SetHeroFatesState(curPlayer, fatesID, 0)
                PlayerHero.SetHeroFatesLV(curPlayer, fatesID, 0)
                syncIDList.append(fatesID)
            GameWorld.DebugAnswer(curPlayer, "重置宿缘")
        else:
            fatesID = value2
            fatesLV = msgList[2] if len(msgList) > 2 else 0
            fatesState = msgList[3] if len(msgList) > 3 else None
            ipyData = IpyGameDataPY.GetIpyGameData("HeroFates", fatesID)
            if not ipyData:
                GameWorld.DebugAnswer(curPlayer, "宿缘ID不存在: %s" % fatesID)
                return
            if fatesLV:
                fatesQuality = ipyData.GetFatesQuality()
                if not IpyGameDataPY.GetIpyGameData("HeroFatesQualityLV", fatesQuality, fatesLV):
                    GameWorld.DebugAnswer(curPlayer, "宿缘品质(%s)等级(%s)不存在" % (fatesQuality, fatesLV))
                    return
            syncIDList.append(fatesID)
            if fatesState != None:
                PlayerHero.SetHeroFatesState(curPlayer, fatesID, fatesState)
            else:
                fatesState = PlayerHero.GetHeroFatesState(curPlayer, fatesID)
            PlayerHero.SetHeroFatesLV(curPlayer, fatesID, fatesLV)
            GameWorld.DebugAnswer(curPlayer, "设置宿缘ID=%s,LV=%s,State=%s" % (fatesID, fatesLV, fatesState))
        PlayerHero.Sync_HeroFatesInfo(curPlayer, syncIDList)
        PlayerHero.RefreshLordAttr(curPlayer)
        return
    itemIndex = value2
    heroItem = PlayerHero.GetHeroItem(curPlayer, itemIndex)
    if not heroItem: