示例#1
0
    /// <summary>
    /// 初始化战斗
    /// </summary>
    public void InitFight(int cloneId)
    {
        if (cloneId < 1)
        {
            return;
        }
        mCloneId = cloneId;

        CloneSceneProperty cs = XmlManager.Instance.GetCloneSceneProperty(mCloneId);

        if (cs == null)
        {
            return;
        }

        // 预加载资源
        PreLoadObject(cs);

        // 初始化怪物信息
        InitMonster(cs.mCloneSceneMonsterInfoList);

        // 初始化战斗UI
        InitFightUI();

        // 战斗开始倒计时
        TimerManager.AddTimerCount("FightCountDown", mFightPrepareTime, FightCountDown);
    }
示例#2
0
    void PreLoadObject(CloneSceneProperty cs)
    {
        // 预缓存怪物预设
        int count = cs.mCloneSceneMonsterInfoList.Count;

        for (int i = 0; i < count; ++i)
        {
            int monsterId = cs.mCloneSceneMonsterInfoList[i].mMonsterId;
        }

        // 预缓存主角技能特效预设
    }
示例#3
0
    bool LoadCloneSceneProperty()
    {
        byte[] asset = ResourceManager.Instance.GetXml("CloneScene");
        if (asset == null)
        {
            return(false);
        }

        TbXmlNode docNode = TbXml.Load(asset).docNode;

        if (docNode == null)
        {
            return(false);
        }

        List <TbXmlNode> xmlNodeList = docNode.GetNodes("CloneScene/Property");
        int xmlNodeListLength        = xmlNodeList.Count;

        if (xmlNodeListLength < 1)
        {
            return(false);
        }

        for (int i = 0; i < xmlNodeListLength; ++i)
        {
            TbXmlNode          node = xmlNodeList[i] as TbXmlNode;
            CloneSceneProperty cs   = new CloneSceneProperty();
            int id = node.GetIntValue("CloneSceneId");

            cs.mCloneSceneMonsterInfoList = new List <CloneSceneProperty.CloneSceneMonsterInfo>();
            List <TbXmlNode> childNode = node.GetNodes("CloneSceneMonsterInfo");
            for (int j = 0; j < childNode.Count; ++j)
            {
                TbXmlNode child = childNode[j] as TbXmlNode;
                CloneSceneProperty.CloneSceneMonsterInfo csm = new CloneSceneProperty.CloneSceneMonsterInfo();
                csm.mMonsterId        = child.GetIntValue("MonsterId");
                csm.mMonsterPosition  = UtilTools.FormatStringVector3(child.GetStringValue("MonsterPosition"));
                csm.mMonsterRotationY = child.GetFloatValue("MonsterRotationY");
                csm.mMonsterScale     = child.GetFloatValue("MonsterScale");

                cs.mCloneSceneMonsterInfoList.Add(csm);
            }

            mCloneScenePropertyDic.Add(id, cs);
        }

        return(true);
    }