Ejemplo n.º 1
0
 void placeTower()
 {
     if (m_isPlacingTower && m_currentBuilding != null)
     {
         Vector2 mousePosition = Camera.main.ScreenToWorldPoint(Input.mousePosition);
         m_currentBuilding.transform.position = mousePosition;
         if (SpriteManage.canPlaceItem(Camera.main.WorldToScreenPoint(mousePosition), m_currentBuilding))
         {
             m_currentBuilding.GetComponent <SpriteRenderer>().color = new Color(1.0f, 1.0f, 1.0f, 1.0f);
             // change is collider istrigger to false
             m_currentBuilding.GetComponent <BoxCollider2D>().isTrigger    = false;
             m_currentBuilding.GetComponent <CircleCollider2D>().isTrigger = true;
             m_currentBuilding.GetComponent <Tower>().m_IsPlaced           = true;
             m_currentBuilding = null;
             m_isPlacingTower  = false;
             InventoryItem tower = m_Character.m_Weapons.findItem(ItemType.TOWER);
             tower.m_Quantity--;
             m_Character.m_Weapons.setQuantity(tower);
             if (tower.m_Quantity <= 0)
             {
                 m_Character.changeWeapon(0);
             }
         }
         else
         {
             Debug.Log("cant place");
         }
     }
 }
Ejemplo n.º 2
0
 void WalkToCastle()
 {
     if (!GetComponent <BoxCollider2D>().isTrigger)
     {
         return;
     }
     if (SpriteManage.canPlaceItem(Camera.main.WorldToScreenPoint(transform.position), gameObject))
     {
         GetComponent <BoxCollider2D>().isTrigger = false;
     }
     m_EnemyTarget = m_Castle.gameObject;
 }
Ejemplo n.º 3
0
    void moveTowerWithMouse()
    {
        if (m_isPlacingTower && m_currentBuilding != null)
        {
            m_currentBuilding.GetComponent <BoxCollider2D>().isTrigger    = true;
            m_currentBuilding.GetComponent <CircleCollider2D>().isTrigger = true;

            Vector2 mousePosition = Camera.main.ScreenToWorldPoint(Input.mousePosition);
            m_currentBuilding.transform.position = mousePosition;
            if (SpriteManage.canPlaceItem(Camera.main.WorldToScreenPoint(mousePosition), m_currentBuilding))
            {
                m_currentBuilding.GetComponent <SpriteRenderer>().color = new Color(1, 1, 1, .5f);
                Debug.Log("can place");
            }
            else
            {
                m_currentBuilding.GetComponent <SpriteRenderer>().color = new Color(1, 0, 0, .5f);
                Debug.Log("cannt place");
            }
        }
    }
Ejemplo n.º 4
0
    void FixedUpdate()
    {
        if (mainGame.m_IsPause)
        {
            return;
        }
        m_AttackDelay -= Time.fixedDeltaTime;
        if (m_EnemyTarget == null)
        {
            m_EnemyTarget = GameObject.Find("castle");
            Debug.Assert(m_EnemyTarget);
        }
        if (SpriteManage.canPlaceItem(Camera.main.WorldToScreenPoint(transform.position), gameObject))
        //if (m_timeToTurnOnBoundingBox <= 0)
        {
            GetComponent <BoxCollider2D>().isTrigger = false;
        }

        Attack();

        ChangeFacingDirection();
    }