Example #1
0
    // 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();
    }
Example #2
0
    public void MouseDownHandle()
    {
        if (GUIUtility.hotControl != 0)
        {
            _bClickGui = true;
            return;
        }
        if (GameLaunch.Instance && GameLaunch.Instance.ShowHomeEditor)
        {
            return;
        }

        /*Vector3 clickPos = converPosition2Local(Input.mousePosition);
         * _preMousePos = Input.mousePosition;
         * _preMouseDownPos = _preMousePos;
         * //Debug Info
         * Vector3 cellPos = MapManager.Instance.GetCellPosition(clickPos);
         * clickPos = MapManager.Instance.GetPixelPosition(cellPos);
         * Debug.Log("Cell Position:(" + (int)cellPos.x + ", " + (int)cellPos.y + ") ---------- Pixel Position:" + clickPos);*/

        m_startPos = Input.mousePosition;
        Ray        ray = mCamera.ScreenPointToRay(Input.mousePosition);
        RaycastHit hit;

        Physics.Raycast(ray, out hit, 100, mouseHitLayer);
        if (hit.transform != null && hit.transform.name.CompareTo("NormalMap") == 0)
        {
            Hero selfHero = new Hero(1, 1);
            m_heroList.Add(selfHero);
            selfHero.Camp    = 0;
            selfHero.indexId = m_indexId++;
            Vector3 pos = m_endPos = hit.point;
            AddNode(selfHero, pos);

            CBaseObject pObject = new CBaseObject(selfHero.indexId);
            pObject.Camp    = 0;
            pObject.indexId = selfHero.indexId;
            pObject.SetPosition(pos);
            pObject.SetNode(selfHero);
            BattleSceneProcessor.Instance.m_attackerHeroList.Add(pObject);
        }


        /*if (!MapManager.Instance.IsSelfMap())
         *  return;
         * BuildingNode temp = IsSelectedBuilding((int)cellPos.x, (int)cellPos.y) as BuildingNode;
         *
         * if (_selectNode != null && temp != null && temp == _selectNode)
         * {
         *  if (_selectNode.buildInfo.Type == BuildingType.BT_Function && _selectNode.buildInfo.SubType == BuildingSort.BS_CityCenter / *||
         *      _selectNode.buildInfo.Type == BuildingType.BT_COLLECTION* /)
         *      return;
         *  MapManager.Instance.IsDragingNode = true;
         *
         *  if (_selectNode.GridState != Building.GRID_STATE_RED)
         *  {
         *      _selectNode.SetGridState(Building.GRID_STATE_GREEN);
         *      _selectNode.HideSelectEffect();
         *      GameUIRoot.Instance.GetMainFrame().ControlBuildPanelUI.Close();
         *  }
         * }*/
    }