Beispiel #1
0
        //====================================================================================================
        // ■ UPDATE
        //====================================================================================================
        void Update()
        {
            var position     = Transform.Position;
            var targetHeight = GAMEOBJECT.Find("Center").GetComponent <CENTER>().GetHeight();

            var l = 0.1f;

            Height             = math.lerp(Height, targetHeight, l);
            Transform.Position = math.normalize(position) * Height;

            Transform.Rotate(Axis, RotationSpeed * TIME.deltaTime);

            Transform.RotateAround(new float3(0, 0, 0), PlanetAxis, PlanetRotationSpeed * TIME.deltaTime);

            //Flash
            GameObject.Renderer.material.SetColor("_EmissionColor", new COLOR(FlashValue, FlashValue, FlashValue, 1));
            GameObject.Renderer.material.EnableKeyword("_EMISSION");

            FlashValue = math.lerp(0, FlashValue, 0.1f);

            //Hit Line
            if (TIME.realtimeSinceStartup - HitTime > 3)
            {
                HitFlag = false;
            }
        }
Beispiel #2
0
        //====================================================================================================
        // ■ GUI
        //====================================================================================================
        void OnGUI()
        {
            if (HitFlag)
            {
                UI.Color = COLOR.white;

                var camera   = GAMEOBJECT.Find("Main Camera").Camera;
                var position = camera.WorldToScreenPoint(transform.position);

                //Energy

                UI.Color = (0, 0.4f, 0, 1);

                UI.DrawTexture(new RECTANGLE(position.x, SCREEN.height - position.y - 10, 30, 5), TEXTURE2D.whiteTexture);

                UI.Color = (0, 0.9f, 0, 1);

                UI.DrawTexture(new RECTANGLE(position.x, SCREEN.height - position.y - 10, 30 * HitCount / OriginalHitCount, 5), TEXTURE2D.whiteTexture);
            }

            if (Die)
            {
                UI.Color = COLOR.white;

                ScorePosition = math.lerp(ScorePosition, new float3(SCREEN.width * 0.5f, SCREEN.height, 0), 0.01f);

                //Number
                var rectangle = new RECTANGLE(ScorePosition.x - 60, SCREEN.height - ScorePosition.y, 30, 30);
                INTERFACE.DrawNumber(100, rectangle);
            }
        }
Beispiel #3
0
        //-----------------------------------------------------------------------------------------------------
        // ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■


        //====================================================================================================
        // ■ START
        //====================================================================================================
        void Start()
        {
            PointList = new List <POINT>();

            WallCollider = Transform.Find("WallCollider").GameObject;
            WallCollider.SetActive(false);
        }
Beispiel #4
0
        //====================================================================================================
        // ■ GUI
        //====================================================================================================
        void OnGUI()
        {
            if (Explosion == false)
            {
                UI.Color = COLOR.white;

                var camera   = GAMEOBJECT.Find("Main Camera").Camera;
                var position = camera.WorldToScreenPoint(Transform.Find("Bomb").Position);

                //Name
                UI.DrawLabel(new RECTANGLE(position.x, SCREEN.height - position.y, 200, 30), "" + BombCountDown, 20, true);

                //Energy

                /*			var eline = 100;
                 *
                 *                      UI.Color = (0, 0.4f, 0, 1);
                 *
                 *                      UI.DrawTexture(new RECTANGLE(position.x, SCREEN.height - position.y - 70, 100, 5), TEXTURE2D.whiteTexture);
                 *
                 *                      UI.Color = (0, 0.9f, 0, 1);
                 *
                 *                      UI.DrawTexture(new RECTANGLE(position.x, SCREEN.height - position.y - 70, eline, 5), TEXTURE2D.whiteTexture);
                 */
            }
        }
Beispiel #5
0
        //----------------------------------------------------------------------------------------------------
        // ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■


        //====================================================================================================
        // ■ START
        //====================================================================================================
        void Start()
        {
            //Laser Init
            LaserInstancesObject  = GAMEOBJECT.Find("Instances/Laser Instances");
            LeftLaserObject       = GAMEOBJECT.Find("MainShip/Laser Left");
            RightLaserObject      = GAMEOBJECT.Find("MainShip/Laser Right");
            FrontLeftLaserObject  = GAMEOBJECT.Find("MainShip/Laser Front Left");
            FrontRightLaserObject = GAMEOBJECT.Find("MainShip/Laser Front Right");

            WallInstances = GAMEOBJECT.Find("Instances/Wall Instances");
            WallObject    = GAMEOBJECT.Find("Instances/Wall Instances/WallObject");

            BombInstances = GAMEOBJECT.Find("Instances/Bomb Instances");
            BombObject    = GAMEOBJECT.Find("Instances/Bomb Instances/BombObject");

            LeftLaserObject.SetActive(false);
            RightLaserObject.SetActive(false);
            FrontLeftLaserObject.SetActive(false);
            FrontRightLaserObject.SetActive(false);

            WallObject.SetActive(false);

            BombObject.SetActive(false);

            LaserLastShotTime = LaserRepeatTime;

            Color = OriginalColor;

            PowerLoadTime  = TIME.realtimeSinceStartup;
            ShieldLoadTime = TIME.realtimeSinceStartup;
        }
Beispiel #6
0
        //----------------------------------------------------------------------------------------------------
        // ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■


        //====================================================================================================
        // ■ START
        //====================================================================================================
        void Start()
        {
            AsteroidInstances = GAMEOBJECT.Find("Instances/Asteroid Instances");
            AsteroidObject    = GAMEOBJECT.Find("Instances/Asteroid Instances/AsteroidObject");

            AddAsteroid();
            AddAsteroid();
            AddAsteroid();
            AddAsteroid();
        }
Beispiel #7
0
        //====================================================================================================
        void PutAlien(float3 position, float3 normal)
        {
            var alien = GAMEOBJECT.Instantiate(AlienObject);

            alien.SetActive(true);
            alien.Tag = "Alien";
            alien.Transform.Parent   = AlienInstancesObject.Transform;
            alien.Transform.Position = position;
            alien.Transform.LookAt(normal);
            alien.Transform.LocalScale = AlienObject.Transform.LossyScale;

            AlienCount++;
        }
Beispiel #8
0
        //----------------------------------------------------------------------------------------------------
        // ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■


        //====================================================================================================
        // ■ START
        //====================================================================================================
        void Start()
        {
            Position = transform.position;
            Rotation = transform.rotation;

            var center = GAMEOBJECT.Find("Center").GetComponent <CENTER>();

            SpaceDistance = math.distance(transform.position, center.transform.position);

            TerrainDistance = SpaceDistance * 0.35f;

            Distance = SpaceDistance;
        }
Beispiel #9
0
        //====================================================================================================
        // ■ CHECK TARGET
        //====================================================================================================
        public bool CheckTarget(GAMEOBJECT gameObject)
        {
            int count = TargetList.Count;

            for (int i = 0; i < count; i++)
            {
                if (gameObject == TargetList[i])
                {
                    return(true);
                }
            }
            return(false);
        }
Beispiel #10
0
        //====================================================================================================
        // ■ REMOVE TARGET
        //====================================================================================================
        public bool RemoveTarget(GAMEOBJECT gameObject)
        {
            int count = TargetList.Count;

            for (int i = 0; i < count; i++)
            {
                if (gameObject == TargetList[i])
                {
                    TargetList.RemoveAt(i);
                    return(true);
                }
            }
            return(false);
        }
Beispiel #11
0
        //====================================================================================================
        // ■ UPDATE
        //====================================================================================================
        void Update()
        {
            if (AlienCount < AlienMaxCount)
            {
                var position = new float3(RANDOM.Float(-1, 1), RANDOM.Float(-1, 1), RANDOM.Float(-1, 1));
                var normal   = math.normalize(position);

                var height = GAMEOBJECT.Find("Center").GetComponent <CENTER>().GetHeight();

                position = math.normalize(position) * height;

                PutAlien(position, normal);
            }
        }
Beispiel #12
0
        //====================================================================================================
        // ■ REMOVE ENEMY
        //====================================================================================================
        public bool RemoveEnemy(GAMEOBJECT gameObject)
        {
            int  count = EnemyList.Count;
            bool find  = false;

            for (int i = 0; i < count; i++)
            {
                if (gameObject == EnemyList[i])
                {
                    EnemyList.RemoveAt(i);
                    find = true;
                }
            }
            return(find);
        }
Beispiel #13
0
        //====================================================================================================
        // ■ ADD
        //====================================================================================================
        public void AddPoint(float3 position)
        {
            PointList.Add(new POINT(position, WallHeight));
            Change = true;

            ///////////////////////////
            //Add WallCollider
            //////////////////////////

            var obj = GAMEOBJECT.Instantiate(WallCollider);

            obj.SetActive(true);
            obj.Transform.Parent = Transform;
            obj.Transform.LookAt(position);
            obj.Transform.Position = position;
        }
Beispiel #14
0
        //====================================================================================================
        // ■ LASER SHOT CREATE
        //====================================================================================================
        void LaserShotCreate(GAMEOBJECT laserObject)
        {
            var obj = (GAMEOBJECT)Instantiate(laserObject);

            obj.SetActive(true);
            obj.Tag = "Laser";
            obj.Transform.Parent     = LaserInstancesObject.Transform;
            obj.Transform.Position   = laserObject.Transform.Position;
            obj.Transform.Rotation   = laserObject.Transform.Rotation;
            obj.Transform.LocalScale = laserObject.Transform.LossyScale;

            LASER laser = obj.GetComponent <LASER>();

            laser.SetLaserObject(obj);
            Destroy(obj, LaserLifeTime);
        }
Beispiel #15
0
        //====================================================================================================
        // ■ LATE UPDATE
        //====================================================================================================
        void LateUpdate()
        {
            var center = GAMEOBJECT.Find("Center").GetComponent <CENTER>();

            if (center.State == CENTER.STATE.Space)
            {
                Distance = math.lerp(Distance, SpaceDistance, 0.1f);
            }
            if (center.State == CENTER.STATE.Terrain)
            {
                Distance = math.lerp(Distance, TerrainDistance, 0.1f);
            }

            var targetPosition = center.transform.position - center.transform.forward * Distance;
            var targetRotation = quaternion.LookRotation(center.transform.forward, center.transform.up);

            transform.position = targetPosition;
            transform.rotation = targetRotation;
        }
Beispiel #16
0
        //====================================================================================================
        // ■ HIT
        //====================================================================================================
        public void Hit(int hit = 1)
        {
            HitFlag = true;
            HitTime = TIME.realtimeSinceStartup;

            HitCount -= hit;
            HitCount  = math.max(0, HitCount);

            if (HitCount == 0)
            {
                PLAYER.AddScore(100);

                Destroy(GameObject, 1.0f);
                Die = true;

                var camera = GAMEOBJECT.Find("Main Camera").Camera;
                ScorePosition = camera.WorldToScreenPoint(transform.position);
            }

            Color = COLOR.white;
            Scale = 1.5f;

            GameObject.AudioSource.Play();
        }
Beispiel #17
0
        //====================================================================================================
        // ■ UPDATE
        //====================================================================================================
        void Update()
        {
            var position     = Transform.Position;
            var targetHeight = GAMEOBJECT.Find("Center").GetComponent <CENTER>().GetHeight();
            var l            = 0.1f;

            if (Die)
            {
                targetHeight    = 1;
                l               = 0.03f;
                OriginalColor.a = 0;
            }

            Height             = math.lerp(Height, targetHeight, l);
            Transform.Position = math.normalize(position) * Height;

            //Flash
            Color.r = math.lerp(Color.r, OriginalColor.r, 0.03f);
            Color.g = math.lerp(Color.g, OriginalColor.g, 0.03f);
            Color.b = math.lerp(Color.b, OriginalColor.b, 0.03f);
            Color.a = math.lerp(Color.a, OriginalColor.a, 0.03f);
            var alien    = Transform.Find("Alien");
            var renderer = alien.GameObject.Renderer;
            var material = renderer.material;

            material.SetColor("_Color", Color);

            Scale = math.lerp(Scale, OriginalScale, 0.03f);
            alien.Transform.localScale = new float3(Scale);

            //Hit Line
            if (TIME.realtimeSinceStartup - HitTime > 3)
            {
                HitFlag = false;
            }
        }
Beispiel #18
0
 internal static HandleRef getCPtr(GAMEOBJECT obj)
 {
     return((obj == null) ? new HandleRef(null, IntPtr.Zero) : obj.swigCPtr);
 }
Beispiel #19
0
        //----------------------------------------------------------------------------------------------------
        // ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■


        //====================================================================================================
        // ■ START
        //====================================================================================================
        void Start()
        {
            Center   = GAMEOBJECT.Find("Center").GetComponent <CENTER>();
            MainShip = GAMEOBJECT.Find("MainShip").GetComponent <MAINSHIP>();
        }
Beispiel #20
0
 //====================================================================================================
 public void SetLaserObject(GAMEOBJECT laserObject)
 {
     LaserObject = laserObject;
 }
Beispiel #21
0
 //====================================================================================================
 // ■ ADD ENEMY
 //====================================================================================================
 public void AddEnemy(GAMEOBJECT gameObject)
 {
     EnemyList.Add(gameObject);
 }
Beispiel #22
0
        //-----------------------------------------------------------------------------------------------------
        // ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■


        //====================================================================================================
        // ■ START
        //====================================================================================================
        void Start()
        {
            AlienInstancesObject = GAMEOBJECT.Find("Instances/Alien Instances");
            AlienObject          = GAMEOBJECT.Find("Instances/Alien Instances/AlienObject");
            AlienObject.SetActive(false);
        }
Beispiel #23
0
 //====================================================================================================
 // ■ ADD TARGET
 //====================================================================================================
 public void AddTarget(GAMEOBJECT gameObject)
 {
     TargetList.Add(gameObject);
 }
Beispiel #24
0
        //====================================================================================================
        // ■ UPDATE
        //====================================================================================================
        void Update()
        {
            var center = GAMEOBJECT.Find("Center").GetComponent <CENTER>();

            var position = center.transform.position;
            var rotation = center.transform.rotation;

            transform.position = math.lerp(transform.position, position, 5.0f * TIME.deltaTime);
            transform.rotation = math.slerp(transform.rotation, rotation, 5.0f * TIME.deltaTime);

            //Flash
            Color.r = math.lerp(Color.r, OriginalColor.r, 0.03f);
            Color.g = math.lerp(Color.g, OriginalColor.g, 0.03f);
            Color.b = math.lerp(Color.b, OriginalColor.b, 0.03f);
            var ship     = Transform.Find("Body/Ship");
            var renderer = ship.GameObject.Renderer;
            var material = renderer.material;

            material.SetColor("_EmissionColor", Color);


            //Set Height
            //			transform.position = Vector3.Normalize(transform.position - center) * ShipHeight;


            ////////////////////////////////
            /// WALL UPDATE
            ////////////////////////////////

            if (PLAYER.Shield > 0)
            {
                if (CurrentWall != null)
                {
                    var p = transform.position;

                    if (math.distance(p, OldPosition) > WallUpdateDistance)
                    {
                        CurrentWall.AddPoint(p);
                        OldPosition = p;

                        PLAYER.SubShield(1);
                    }
                }
            }
            else
            {
                StopWall();
            }


            ////////////////////////////////
            /// ITEM LOAD
            ////////////////////////////////

            if (PLAYER.GameOver == false)
            {
                //Power Load
                if (TIME.realtimeSinceStartup - PowerLoadTime > PowerLoadSpeed)
                {
                    PLAYER.AddPower(1);
                    PowerLoadTime = TIME.realtimeSinceStartup;
                }

                //Shield Load
                if (TIME.realtimeSinceStartup - ShieldLoadTime > ShieldLoadSpeed)
                {
                    PLAYER.AddShield(1);
                    ShieldLoadTime = TIME.realtimeSinceStartup;
                }
            }
        }
Beispiel #25
0
        //*****************************************************************************************************

        //-----------------------------------------------------------------------------------------------------
        void Start()
        {
            FlameCenterObject = GAMEOBJECT.Find("MainShip/Flame/FlameCenter/Mesh");
            FlameSideObject   = GAMEOBJECT.Find("MainShip/Flame/FlameSide/Mesh");
        }