Beispiel #1
0
 public override void OnCheckpointLoad(CheckpointCrate checkpoint)
 {
     base.OnCheckpointLoad(checkpoint);
     Animation.Reset();
     Velocity = new Vector2(-speed, 0);
     NextCry();
 }
Beispiel #2
0
 public void OnCheckpointLoad(CheckpointCrate checkpoint)
 {
     if (audioSource3D.IsPlaying)
     {
         audioSource3D.StopAudio();
     }
 }
Beispiel #3
0
 void ICheckpointLoadable.OnCheckpointLoad(CheckpointCrate checkpoint)
 {
     if (checkpoint == null || checkpoint.Position.X < initialPos.X)
     {
         OnCheckpointLoad(checkpoint);
     }
 }
        public override void OnCheckpointLoad(CheckpointCrate checkpoint)
        {
            base.OnCheckpointLoad(checkpoint);

            LookDirection   = new Vector2(-1, 0);
            IsTurningAround = false;
            Machine.Switch((int)State.Patrol);
        }
Beispiel #5
0
        protected override void OnCheckpointLoad(CheckpointCrate checkpoint)
        {
            base.OnCheckpointLoad(checkpoint);

            Velocity = Vector2.Zero;
            Position = initialPos;
            IsActive = true;
        }
        protected override void OnCheckpointLoad(CheckpointCrate checkpoint)
        {
            base.OnCheckpointLoad(checkpoint);

            if (checkpoint == null || checkpoint.Position.X < Position.X)
            {
                ((ExplosionCrate)brokenCrate).ResetObjectAlreadyHitted();
            }
        }
Beispiel #7
0
        public override void OnCheckpointLoad(CheckpointCrate checkpoint)
        {
            Velocity = Vector2.Zero;
            base.OnCheckpointLoad(checkpoint);
            IsCrouched    = false;
            LookDirection = new Vector2(-1, 0);

            // Animation.Reset();
        }
Beispiel #8
0
        public override void OnCheckpointLoad(CheckpointCrate checkpoint)
        {
            base.OnCheckpointLoad(checkpoint);
            Animation.Reset();
            Velocity      = Vector2.Zero;
            LookDirection = new Vector2(-1, 0);

            ChangeState(AnimationType.Idle);
        }
        protected override void OnCheckpointLoad(CheckpointCrate checkpoint)
        {
            base.OnCheckpointLoad(checkpoint);

            if (checkpoint == null || checkpoint.Position.X < Position.X)
            {
                RigidBody.IsCollisionsAffected = true;
                brokenCrate.Animation.Reset();
                brokenCrate.IsActive = false;
            }
        }
        protected override void OnCheckpointLoad(CheckpointCrate checkpoint)
        {
            base.OnCheckpointLoad(checkpoint);

            if (checkpoint == null || checkpoint.Position.X < Position.X)
            {
                Animation.Reset();
                Animation.IsActive = false;
                isHitted           = false;
            }
        }
        public static void DestroyAll()
        {
            foreach (IDestroyable d in Destoyables)
            {
                d.Destroy();
            }

            Destoyables.Clear();
            Loadables.Clear();
            CurrentCheckpoint = null;
        }
        void ICheckpointLoadable.OnCheckpointLoad(CheckpointCrate checkpoint)
        {
            if (audioSource != null && audioSource.IsPlaying)
            {
                audioSource.Stop();
            }

            startRotation        = false;
            CanWalkable          = true;
            Velocity             = Vector2.Zero;
            Position             = initialPos;
            sprite.EulerRotation = initialRotation;
        }
Beispiel #13
0
        public void OnCheckpointLoad(CheckpointCrate checkpoint)
        {
            if (audioSourceOnPicked != null)
            {
                if (audioSourceOnPicked.IsPlaying)
                {
                    audioSourceOnPicked.Stop();
                }

                audioSourceOnPicked.Dispose();
                audioSourceOnPicked = null;
            }
        }
Beispiel #14
0
 protected override void OnCheckpointLoad(CheckpointCrate checkpoint)
 {
     base.OnCheckpointLoad(checkpoint);
     if (checkpoint == null || checkpoint.Position.X < Position.X)
     {
         Animation.Reset();
         Animation.IsActive = false;
         //for (int i = 0; i < cratesToActive.Count; i++)
         //{
         //    NitroCrate nitroToLoad = nitroToExplodeOnCheckpointLoaded[i];
         //    nitroToExplode.Add(new NitroCrate(nitroToLoad.Position));
         //}
     }
 }
Beispiel #15
0
        protected override void OnCheckpointLoad(CheckpointCrate checkpoint)
        {
            base.OnCheckpointLoad(checkpoint);


            Position = initialPos;
            Velocity = Vector2.Zero;

            IsActive = true;
            isHitted = false;

            totalTime     = 0;
            timeToMoveGui = TIME_BEFORE_MOVE_GUI;

            sprite.SetMultiplyTint(Vector4.One);
            sprite.scale = initialScale;
        }
        void ICheckpointLoadable.OnCheckpointLoad(CheckpointCrate checkpoint)
        {
            if (checkpoint == null || checkpoint.Position.X < Position.X)
            {
                IsActive        = true;
                crateTriggered  = false;
                crate.IsActive  = false;
                timeToTriggered = TIME_TO_TRIGGER_CRATE;
            }

            if (audioSource != null)
            {
                audioSource.Stop();
                audioSource.Dispose();
                audioSource = null;
            }
        }
        protected override void OnCheckpointLoadable(CheckpointCrate checkpoint)
        {
            base.OnCheckpointLoadable(checkpoint);

            if (checkpoint == null)
            {
                isActiveTrigger = false;
                return;
            }

            float distanceCheckpoint = checkpoint.Position.X - Rect.Position.X;

            if (Math.Abs(distanceCheckpoint) < Game.Window.Width || checkpoint.Position.X < Rect.Position.X)
            {
                isActiveTrigger = false;
            }
        }
Beispiel #18
0
 protected virtual void OnCheckpointLoad(CheckpointCrate checkpoint)
 {
     if (checkpoint == null || checkpoint.Position.X < Position.X)
     {
         isHitted = false;
         IsActive = true;
         // Position = initialPos;
     }
     else
     {
         //se checkpoint != null chiama remove su gamemanager altrimenti su checkpoint
         if (!IsActive)
         {
             Destroy();
         }
     }
 }
Beispiel #19
0
        void ICheckpointLoadable.OnCheckpointLoad(CheckpointCrate checkpoint)
        {
            IsDead   = false;
            isHitted = false;

            timeBlink = 0;

            Position = checkpoint != null ? checkpoint.Position : initialPosition;
            Position = new Vector2(Position.X, Position.Y - Height);
            CameraManager.mainCamera.position = Position;
            CameraManager.ResetCameraViewPort();

            Apple.GuiObject.ResetPosition();
            ExtraLife.GuiObject.ResetPosition();

            Velocity = Vector2.Zero;
            RigidBody.IsCollisionsAffected = true;
            sprite.SetMultiplyTint(Vector4.One);

            StateMachine.Switch((int)State.Idle);

            akuAku.OnCheckpointLoad(checkpoint);
        }
Beispiel #20
0
        protected override void OnCheckpointLoad(CheckpointCrate checkpoint)
        {
            base.OnCheckpointLoad(checkpoint);
            countdownStarted = false;

            if (audioSourceCountDown != null)
            {
                if (audioSourceCountDown.IsPlaying)
                {
                    audioSourceCountDown.Stop();
                }

                audioSourceCountDown.Dispose();
                audioSourceCountDown = null;
            }

            if (checkpoint == null || checkpoint.Position.X < Position.X)
            {
                Animation.Reset();
                Animation.IsActive = false;
                countdownStarted   = false;
                ((ExplosionCrate)brokenCrate).ResetObjectAlreadyHitted();
            }
        }
Beispiel #21
0
        public static void LoadTiledMap(string filename)
        {
            XmlDocument doc = new XmlDocument();

            doc.Load(filename);

            XmlNode root       = doc.DocumentElement;
            int     cols       = int.Parse(root.Attributes["width"].Value);
            int     rows       = int.Parse(root.Attributes["height"].Value);
            int     tileWidth  = int.Parse(root.Attributes["tilewidth"].Value);
            int     tileHeight = int.Parse(root.Attributes["tileheight"].Value);

            XmlNode tileset = root.FirstChild;
            string  source  = tileset.Attributes["source"].Value;

            Dictionary <int, XmlNode> dictProperties;
            List <string>             tileNames = LoadTileSet("Assets/Tiles/" + source, out dictProperties);

            //create ground without colliison
            XmlNode groundData = tileset.NextSibling.FirstChild;

            CreateTileLayer(groundData, ref tileNames, tileWidth, tileHeight, cols, 1);

            //create water
            XmlNode     waterNode = tileset.NextSibling.NextSibling;
            XmlNodeList list      = waterNode.ChildNodes;

            foreach (XmlNode objectNode in list)
            {
                InstantiateWater(objectNode, dictProperties);
            }

            //create middleground object
            XmlNode middleGroundObjects = waterNode.NextSibling;

            CreateObjectsLayers(middleGroundObjects.ChildNodes, ref tileNames, DrawManager.Layer.Middleground);


            //create ground with collision

            XmlNode dataGroundWithRigidbody = middleGroundObjects.NextSibling.FirstChild;

            CreateTileLayer(dataGroundWithRigidbody, ref tileNames, tileWidth, tileHeight, cols);

            /*
             * Create PlayGround Objects
             *
             */

            List <ICheckpointLoadable> objectLoadable = new List <ICheckpointLoadable>();


            //Create player
            XmlNode playerObj  = dataGroundWithRigidbody.ParentNode.NextSibling;
            XmlNode playerNode = playerObj.FirstChild;

            Player p = null;

            if (playerNode != null)
            {
                string xString = playerNode.Attributes["x"].Value;
                float  xPos    = float.Parse(xString, System.Globalization.CultureInfo.InvariantCulture);

                string yString = playerNode.Attributes["y"].Value;
                float  yPos    = float.Parse(yString, System.Globalization.CultureInfo.InvariantCulture);

                Vector2 playerPos = new Vector2(xPos + (int.Parse(playerNode.Attributes["width"].Value) / 2), yPos - (int.Parse(playerNode.Attributes["height"].Value) / 2));

                p = new Player(playerPos);
                PlayScene.Player = p;
            }
            else
            {
                p = new Player(new Vector2(40, Game.Window.Height - 260));
                PlayScene.Player = p;
            }

            objectLoadable.Add(p);

            XmlNode crateNode = playerObj.NextSibling;

            list = crateNode.ChildNodes;

            Dictionary <BorderCrate, int>       borderCrates  = new Dictionary <BorderCrate, int>();
            Dictionary <int, TriggerIronCrate>  triggerCrates = new Dictionary <int, TriggerIronCrate>();
            Dictionary <int, TriggerNitroCrate> triggerNitro  = new Dictionary <int, TriggerNitroCrate>();
            List <CheckpointCrate> checkpoints = new List <CheckpointCrate>();

            foreach (XmlNode objectNode in list)
            {
                InstantiateCrate(objectNode, dictProperties, ref borderCrates, ref triggerCrates,
                                 ref triggerNitro, ref objectLoadable, ref checkpoints);
            }

            foreach (KeyValuePair <BorderCrate, int> b in borderCrates)
            {
                triggerCrates[b.Value].AddCrate(b.Key);
            }

            XmlNode pickableNode = crateNode.NextSibling;

            list = pickableNode.ChildNodes;


            foreach (XmlNode objectNode in list)
            {
                InstantiatePickable(objectNode, dictProperties, ref objectLoadable);
            }

            XmlNode enemiesNode = pickableNode.NextSibling;

            list = enemiesNode.ChildNodes;


            foreach (XmlNode objectNode in list)
            {
                InstantiateEnemies(objectNode, dictProperties, ref objectLoadable);
            }

            XmlNode objectsWalkableNode = enemiesNode.NextSibling;

            list = objectsWalkableNode.ChildNodes;


            foreach (XmlNode objectNode in list)
            {
                InstantiateObjectsWakable(objectNode, dictProperties);
            }

            XmlNode trapNode = objectsWalkableNode.NextSibling;

            list = trapNode.ChildNodes;

            Dictionary <int, ITriggableAction> trapsTriggable = new Dictionary <int, ITriggableAction>();

            foreach (XmlNode objectNode in list)
            {
                InstantiateTraps(objectNode, dictProperties, ref trapsTriggable, ref objectLoadable);
            }

            XmlNode triggersEventNode = trapNode.NextSibling;

            list = triggersEventNode.ChildNodes;

            foreach (XmlNode objectNode in list)
            {
                InstantiateTriggersEvent(objectNode, dictProperties, ref trapsTriggable, ref objectLoadable);
            }

            //create foregroundobjects
            XmlNode foreGroundObjects = triggersEventNode.NextSibling;

            CreateObjectsLayers(foreGroundObjects.ChildNodes, ref tileNames, DrawManager.Layer.Foreground);
            //method to create foreground

            for (int i = 0; i < objectLoadable.Count; i++)
            {
                ICheckpointLoadable loadable = objectLoadable[i];
                CheckpointCrate.AddObjectsToLoad(loadable);
            }

            GameManager.Loadables = objectLoadable;
        }
 protected override void OnCheckpointLoad(CheckpointCrate checkpoint)
 {
 }
Beispiel #23
0
 protected virtual void OnCheckpointLoadable(CheckpointCrate checkpoint)
 {
 }
Beispiel #24
0
 void ICheckpointLoadable.OnCheckpointLoad(CheckpointCrate checkpoint)
 {
     OnCheckpointLoadable(checkpoint);
 }
Beispiel #25
0
 protected virtual void OnCheckpointLoad(CheckpointCrate checkpoint)
 {
     isPicked = false;
     isHitted = false;
 }