Ejemplo n.º 1
0
    private void OnMouseDown()
    {
        if (buildManager.getGunInShootingMode())
        {
            return;
        }



        downTime  = Time.time;
        isHandled = false;
        //look for a double click
        if (Time.time - lastClick < 0.3)
        {
            // do something because of double click



            if (turret != null)
            {
                Debug.Log("Can't built there! - TODO Display on screen");
                if (turret.GetComponent <Turrent>().getName() == "CrazyGun")
                {
                    buildManager.SelectNode(this);
                    Debug.Log("Theres a CrazyFGun Change the camera");

                    Turrent tempTurrent = turret.GetComponent <Turrent>();
                    tempTurrent.setNode(this);
                    tempTurrent.goToShootMode();
                    //this.CrazyGunInShootingMode = true;
                    buildManager.GunInShootingMode();
                    //buildManager.SelectNode(this);

                    return;
                    // deactivate all mouse down etc functions untill a certein method (to implement) is invoked
                }
                else
                {
                    buildManager.SelectNode(this); // UI to upgrade
                }
                return;
            }
            // check if turret can be build otherwise return
            if (!buildManager.CanBuild)
            {
                return;
            }

            // buildManager.BuildTurretOn(this);
            BuildTurret(buildManager.GetTurretToBuild());
            Turrent tempTurrent1 = turret.GetComponent <Turrent>();
            tempTurrent1.setNode(this);
            justBuilt();
        }
        lastClick = Time.time;
        BuildManager.instance.DeselectNode();
    }
Ejemplo n.º 2
0
        public static Turrent CreateTurrent(FlyEntity parent = null)
        {
            var entity = new Turrent();

            entity.DrawStrategy = new TurrentDrawStrategy();

            if (parent != null)
            {
                entity.AttachTo(parent);
            }

            return(entity);
        }
Ejemplo n.º 3
0
    void EndGame()
    {
        GameObject[] array = GameObject.FindGameObjectsWithTag("Turret");

        foreach (GameObject obj in array)
        {
            Turrent objTemp = obj.GetComponent <Turrent>();
            objTemp.explode();
        }

        gameEnded = true;
        gameOverUI.SetActive(true);
        Debug.Log("Game Over");
    }
Ejemplo n.º 4
0
        protected virtual void OnSceneGUI()
        {
            Turrent component = ( Turrent )target;

            var q = Quaternion.AngleAxis(
                -component.max_rotation_angle / 2, component.rotation_vector);
            Vector3 from = q * component.transform.forward;

            Handles.color = Color.green;

            Handles.DrawSolidArc(
                component.transform.position, component.rotation_vector,
                from, component.max_rotation_angle, 0.2f);
        }
Ejemplo n.º 5
0
 public void upgradesentry()
 {
     if (Pointsystem.score >= target_defense.upgrade_cost)
     {
         if (target_defense.upgrade_count < target_defense.upgrade_max)
         {
             target_defense.upgrade_count++;
             target_defense.currentHealth = target_defense.startingHealth + target_defense.upgrade_health_increase * target_defense.upgrade_count;
             if (target_defense.gameObject.GetComponent <Turrent>())
             {
                 target_turrent             = target_defense.gameObject.GetComponent <Turrent>();
                 target_turrent.turrentdmg += target_turrent.upgrade_dmg;
             }
             Pointsystem.score -= target_defense.upgrade_cost;
         }
     }
 }
Ejemplo n.º 6
0
        public override void OnInspectorGUI()
        {
            Turrent component = ( Turrent )target;

            DrawDefaultInspector();
        }
Ejemplo n.º 7
0
 public override Bullet CreateBullet(Turrent turrent)
 {
     return(EntityFactory.CreateBlackHoleBullet(this.BulletDensity, 2.0f, 90000.0f, 15.0f));
 }
 // Start is called before the first frame update
 void Start()
 {
     turrent = GetComponentInParent <Turrent>();
 }
Ejemplo n.º 9
0
    private void InitTurrent()
    {
        mTurrent = battle.GetMyTurrent();

        oTurrent = battle.GetOppTurrent();

        Dictionary <Unit, Turrent> dic = new Dictionary <Unit, Turrent>();

        for (int i = 0; i < mTurrent.Length; i++)
        {
            Turrent t = mTurrent[i];

            if (t != null)
            {
                Turrent tt;

                if (!dic.TryGetValue(t.parent, out tt))
                {
                    dic.Add(t.parent, t);
                }
                else if (t.pos < tt.pos)
                {
                    dic[t.parent] = t;
                }
            }
        }

        int index = 0;

        IEnumerator <KeyValuePair <Unit, Turrent> > enumerator = dic.GetEnumerator();

        while (enumerator.MoveNext())
        {
            BattleUnit unit;

            if (mTurrentList.Count == index)
            {
                unit = Instantiate(unitRes);

                unit.gameObject.SetActive(true);

                unit.transform.SetParent(battleContainer, false);

                mTurrentList.Add(unit);
            }
            else
            {
                unit = mTurrentList[index];
            }

            (unit.transform as RectTransform).anchoredPosition = (mPosArr[enumerator.Current.Value.pos].transform as RectTransform).anchoredPosition;

            unit.Init(this, true, enumerator.Current.Key, enumerator.Current.Value.pos);

            index++;
        }

        while (mTurrentList.Count > dic.Count)
        {
            Destroy(mTurrentList[mTurrentList.Count - 1].gameObject);

            mTurrentList.RemoveAt(mTurrentList.Count - 1);
        }

        dic.Clear();

        for (int i = 0; i < oTurrent.Length; i++)
        {
            Turrent t = oTurrent[i];

            if (t != null)
            {
                Turrent tt;

                if (!dic.TryGetValue(t.parent, out tt))
                {
                    dic.Add(t.parent, t);
                }
                else if (t.pos < tt.pos)
                {
                    dic[t.parent] = t;
                }
            }
        }

        index = 0;

        enumerator = dic.GetEnumerator();

        while (enumerator.MoveNext())
        {
            BattleUnit unit;

            if (oTurrentList.Count == index)
            {
                unit = Instantiate(unitRes);

                unit.gameObject.SetActive(true);

                unit.transform.SetParent(battleContainer, false);

                oTurrentList.Add(unit);
            }
            else
            {
                unit = oTurrentList[index];
            }

            (unit.transform as RectTransform).anchoredPosition = (oPosArr[enumerator.Current.Value.pos].transform as RectTransform).anchoredPosition;

            unit.Init(this, false, enumerator.Current.Key, enumerator.Current.Value.pos);

            index++;
        }

        while (oTurrentList.Count > dic.Count)
        {
            Destroy(oTurrentList[oTurrentList.Count - 1].gameObject);

            oTurrentList.RemoveAt(oTurrentList.Count - 1);
        }
    }
Ejemplo n.º 10
0
 public virtual Bullet CreateBullet(Turrent turrent)
 {
     return(EntityFactory.CreateBullet(this.BulletDensity, this.BulletTime));
 }