// 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"); }; }
// 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 } }
public XmlGameLevel Find(int gameLevel) { if (this.gameLevelDictionary.ContainsKey(gameLevel)) { return(this.gameLevelDictionary[gameLevel]); } XmlGameLevel xmlGameLevel = new XmlGameLevel(); return(xmlGameLevel); }
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); } }