// Use this for initialization override public void Start() { m_heroList = new List <Hero>(); m_transform = this.transform; m_indexId = 0; for (int i = 0; i < m_selfHeroList.Count; i++) { Hero selfHero = new Hero(1, 1, m_selfHeroList[i]); selfHero.SetParent(m_transform); selfHero.SetPosition(m_selfHeroList[i].transform.localPosition); m_heroList.Add(selfHero); selfHero.Camp = 0; selfHero.indexId = i; CBaseObject pObject = new CBaseObject(selfHero.indexId); pObject.Camp = 0; pObject.indexId = selfHero.indexId; pObject.SetPosition(m_selfHeroList[i].transform.localPosition); pObject.SetNode(selfHero); BattleSceneProcessor.Instance.m_attackerHeroList.Add(pObject); } ushort baseId = 0; float attackRange = 0; float attackSpeed = 1.5f; ushort moveSpeed = 10; short hp = 0; for (int i = 0; i < m_enemyHeroList.Count; i++) { if (m_enemyHeroList[i].tag.CompareTo("Soldier_0") == 0) { baseId = 5001; attackRange = 10; attackSpeed = 2.0f; moveSpeed = 10; hp = 0; } else if (m_enemyHeroList[i].tag.CompareTo("Soldier_1") == 0) { baseId = 5002; attackRange = 2; attackSpeed = 2.5f; moveSpeed = 5; hp = -500; } else if (m_enemyHeroList[i].tag.CompareTo("Soldier_2") == 0) { baseId = 5003; attackRange = 1.5f; attackSpeed = 1.5f; moveSpeed = 7; hp = -300; } Hero enemyHero = new Hero(baseId, 1, m_enemyHeroList[i]); enemyHero.ID = baseId; enemyHero.SetParent(m_transform); enemyHero.SetPosition(m_enemyHeroList[i].transform.localPosition); m_heroList.Add(enemyHero); enemyHero.Camp = 1; enemyHero.indexId = 1000 + i; enemyHero.AttackRange = attackRange; enemyHero.moveData.MoveSpeed = moveSpeed; enemyHero.SetCurrentHP(hp); enemyHero.RegressPosition = m_enemyHeroList[i].transform.localPosition; CBaseObject pObject = new CBaseObject(enemyHero.indexId); pObject.Camp = 1; pObject.indexId = enemyHero.indexId; pObject.SetPosition(m_enemyHeroList[i].transform.localPosition); pObject.SetNode(enemyHero); pObject.AttackRange = attackRange; pObject.AttackSpeed = attackSpeed; pObject.SetCurrentHP(hp); BattleSceneProcessor.Instance.m_defenderHeroList.Add(pObject); } for (int i = 0; i < m_enemyBuildingList.Count; i++) { BuildingNode pBuild = new BuildingNode(1, 1, m_enemyBuildingList[i]); pBuild.SetPosition(m_enemyBuildingList[i].transform.localPosition); pBuild.Camp = 1; pBuild.indexId = 2000 + i; CBaseObject pObject = new CBaseObject(1); pObject.indexId = pBuild.indexId; pObject.Camp = 1; pObject.SetPosition(m_enemyBuildingList[i].transform.localPosition); pObject.SetNode(pBuild); BattleSceneProcessor.Instance.m_defenderBuildingList.Add(pObject); } GameData.Instance.actConfig.GetActionSequence(1); base.Start(); MapManager.Instance.CurrentMap = this; BattleSceneProcessor.Instance.BattleStart(); }