Пример #1
0
    // Use this for initialization
    void Start()
    {
        Button          btn         = this.GetComponent <Button> ();
        UIEventListener btnListener = btn.gameObject.AddComponent <UIEventListener> ();

        btnListener.OnClick += delegate(GameObject gb) {
            Debug.Log(gb.name + " OnClick");

            BtlMgr battleMgr = Global.Instance.btlMgr;
            battleMgr.Clear();

            XmlGameLevel xmlGameLevel = Global.Instance.xmlGameLevelMgr.Find(Global.Instance.btlMgr.gameLevel);
            #region 加载背景
            foreach (var v in xmlGameLevel.bgPrefabsList)
            {
                battleMgr.btlBGMgr.Add(v);
            }
            #endregion

            SceneManager.LoadScene("Scenes/Battle");//切换到场景
        };

        btnListener.OnMouseEnter += delegate(GameObject gb) {
            Debug.Log(gb.name + " OnMouseEnter");
        };

        btnListener.OnMouseExit += delegate(GameObject gb) {
            Debug.Log(gb.name + " OnMOuseExit");
        };
    }
Пример #2
0
    // Use this for initialization
    void Start()
    {
        //BtlMgr btlMgr = Global.Instance.btlMgr;
        //BtlPlaneMgr btlPlaneMgr = btlMgr.btlPlaneMgr;
        {
            #region 加载敌人飞机 -> 停机坪
            XmlGameLevel xmlGameLevel = Global.Instance.xmlGameLevelMgr.Find(Global.Instance.btlMgr.gameLevel);
            int          i            = 0;
            foreach (var v in xmlGameLevel.enemyList)
            {
                BtlPlane plane = new BtlPlane();
                plane.xmlGameLevelEnemy = v;
                plane.xmlPlane          = Global.Instance.xmlPlaneMgr.Find(v.planeId);
                plane.camp  = EnumCamp.Red;
                plane.hp    = plane.xmlPlane.hp;
                plane.hpMax = plane.xmlPlane.hp;

                GameObject planePrefabs = (GameObject)Resources.Load(plane.xmlPlane.prefabs);

                Vector3 newPosition = transform.position;
                newPosition.x = i;
                newPosition.y = 2 * Camera.main.orthographicSize;
                newPosition.z = transform.position.z + 1;

                plane.gameObject = Instantiate(planePrefabs, newPosition, transform.rotation);
                plane.gameObject.transform.SetParent(transform);
                plane.gameObject.layer = (int)EnumLayer.Enemy;

                Global.Instance.btlMgr.btlPlaneMgr.parkingApronBtlPlaneEnemyList.Add(plane);
                i++;
            }
            #endregion
        }
    }
Пример #3
0
    public XmlGameLevel Find(int gameLevel)
    {
        if (this.gameLevelDictionary.ContainsKey(gameLevel))
        {
            return(this.gameLevelDictionary[gameLevel]);
        }
        XmlGameLevel xmlGameLevel = new XmlGameLevel();

        return(xmlGameLevel);
    }
Пример #4
0
    public void LoadXml()
    {
        this.gameLevelDictionary.Clear();

        XmlDocument xml     = new XmlDocument();
        string      xmlPath = Application.dataPath + "/Config/gameLevel.xml";

        xml.Load(xmlPath);
        XmlElement  rootElem       = xml.DocumentElement;
        XmlNodeList gameLevelNodes = rootElem.GetElementsByTagName("gameLevel");

        foreach (XmlNode gameLevelNode in gameLevelNodes)
        {
            XmlGameLevel xmlGameLevel = new XmlGameLevel();
            int          gameLevelId  = int.Parse(((XmlElement)gameLevelNode).GetAttribute("id"));

            {
                XmlNodeList nodes = ((XmlElement)gameLevelNode).GetElementsByTagName("bg");
                foreach (XmlNode node in nodes)
                {
                    string prefabs = ((XmlElement)node).GetAttribute("prefabs");
                    xmlGameLevel.AddBgPrefabs(prefabs);
                }
            }
            {
                XmlNodeList nodes = ((XmlElement)gameLevelNode).GetElementsByTagName("enemy");
                foreach (XmlNode node in nodes)
                {
                    XmlGameLevelEnemy enemy = new XmlGameLevelEnemy();
                    enemy.planeId   = int.Parse(((XmlElement)node).GetAttribute("planeId"));
                    enemy.enterTime = float.Parse(((XmlElement)node).GetAttribute("enterTime"));
                    {
                        string   str  = ((XmlElement)node).GetAttribute("enter");
                        string[] data = str.Split(',');
                        enemy.enterX = float.Parse(data[0]);
                        enemy.enterY = float.Parse(data[1]);
                    }

                    {
                        string   str  = ((XmlElement)node).GetAttribute("direction");
                        string[] data = str.Split(',');
                        enemy.directionX = float.Parse(data[0]);
                        enemy.directionY = float.Parse(data[1]);
                    }

                    xmlGameLevel.AddEnemy(enemy);
                }
            }
            this.gameLevelDictionary.Add(gameLevelId, xmlGameLevel);
        }
    }