Пример #1
0
        public bool Execute(CompanionBase companion)
        {
            var emotion = Instances.GetEmotions()[0];

            companion.SetMood(emotion);

            if (Time.Elapsed(companion.GetPreviousBehaviourChange(), 3))
            {
            }

            var pos = companion.GetPosition();

            pos.X += -2;

            if (pos.X == 0 | pos.X + 224 == Instances.GetScreenDimension().GetWidth())
            {
                // random chance of climbing
            }

            if (pos.X < 0 || pos.X + 224 > Instances.GetScreenDimension().GetWidth() || pos.Y < 0 || pos.Y + 224 > Instances.GetScreenDimension().GetHeight())
            {
                Random rnd = new Random();
                pos = new Point(rnd.Next(Instances.GetScreenDimension().GetWidth()), rnd.Next(Instances.GetScreenDimension().GetHeight()));
            }

            companion.SetPosition(pos);

            return(true);
        }
Пример #2
0
        public bool Execute(CompanionBase companion)
        {
            //
            // als er imitation nodig is
            // ik heb uitgezet dat ie standaard de emotie overneemt
            // de emoties die gedetecteerd worden staan in Instances.GetEmotions()
            // die zetten we in Program
            // of de companion ook die emotion eigenmaakt is afhankelijk van of je het hierzo zet
            var emotion = Instances.GetEmotions()[0];

            companion.SetMood(emotion);

            // als je wilt checken of bepaalde tijd voorbij is sinds vorige gedrag verandering, in dit geval 3 seconden
            if (Time.Elapsed(companion.GetPreviousBehaviourChange(), 3))
            {
            }
            // positie aanpassen
            var pos = companion.GetPosition();

            if (_goingUp)
            {
                // Speed for jumping.
                pos.Y += -5;
                // Check whether desired jump height has been achieved.
                if (pos.Y <= -100)
                {
                    _goingUp = false;
                }
            }
            else
            {
                // Speed for falling.
                pos.Y += 7;
                // Check whether companion is back on 'the Ground'.
                if (pos.Y >= 0)
                {
                    _goingUp = true;
                }
            }


            //Near side?
            if (pos.X == 0 | pos.X + 224 == Instances.GetScreenDimension().GetWidth())
            {
                // random chance of climbing
            }

            if (pos.X < 0 || pos.X + 224 > Instances.GetScreenDimension().GetWidth() || pos.Y < 0 || pos.Y + 224 > Instances.GetScreenDimension().GetHeight())
            {
                Random rnd = new Random();
                pos = new Point(rnd.Next(Instances.GetScreenDimension().GetWidth()), rnd.Next(Instances.GetScreenDimension().GetHeight()));
            }

            // position
            companion.SetPosition(pos);

            return(true);
        }
Пример #3
0
        public bool Execute(CompanionBase companion)
        {
            var emotion = Instances.GetEmotions()[0];

            companion.SetMood(emotion);

            //Time counter Animation
            if (Time.Elapsed(companion.GetPreviousBehaviourChange(), 3))
            {
            }
            // Position
            var pos = companion.GetPosition();

            if (_goingSide)
            {
                // Speed for wiggle.
                pos.X += -1;
                // Check whether desired wiggle distance has been achieved.
                if (pos.X <= -30)
                {
                    _goingSide = false;
                }
            }
            else
            {
                // Speed for wiggling back.
                pos.X += 1;
                // Check whether companion is on orginal spot..
                if (pos.X >= 0)
                {
                    _goingSide = true;
                }
            }


            //Near side?
            if (pos.X == 0 | pos.X + 224 == Instances.GetScreenDimension().GetWidth())
            {
                // random chance of climbing
            }

            if (pos.X < 0 || pos.X + 224 > Instances.GetScreenDimension().GetWidth() || pos.Y < 0 || pos.Y + 224 > Instances.GetScreenDimension().GetHeight())
            {
                Random rnd = new Random();
                pos = new Point(rnd.Next(Instances.GetScreenDimension().GetWidth()), rnd.Next(Instances.GetScreenDimension().GetHeight()));
            }

            // position
            companion.SetPosition(pos);

            return(true);
        }
Пример #4
0
        public bool Execute(CompanionBase companion)
        {
            var emotion = Instances.GetEmotions()[0];

            companion.SetMood(emotion);

            if (Time.Elapsed(companion.GetPreviousBehaviourChange(), 3))
            {
            }

            var pos = companion.GetPosition();

            if (_goingUp && _keepGoing)
            {
                // Speed for jumping.
                pos.Y += -10;
                // Check if desired jump height has been achieved.
                if (pos.Y <= -100)
                {
                    _goingUp = false;
                }
            }
            else if (_keepGoing)
            {
                // Speed for falling.
                pos.Y += 10;
                // Check whether companion is back on 'the ground'.
                if (pos.Y >= 0)
                {
                    _goingUp = true;
                    // Makes it jump once.
                    _keepGoing = false;
                }
            }

            if (pos.X == 0 | pos.X + 224 == Instances.GetScreenDimension().GetWidth())
            {
                // random chance of climbing
            }

            if (pos.X < 0 || pos.X + 224 > Instances.GetScreenDimension().GetWidth() || pos.Y < 0 || pos.Y + 224 > Instances.GetScreenDimension().GetHeight())
            {
                Random rnd = new Random();
                pos = new Point(rnd.Next(Instances.GetScreenDimension().GetWidth()), rnd.Next(Instances.GetScreenDimension().GetHeight()));
            }

            companion.SetPosition(pos);

            return(true);
        }
Пример #5
0
        public bool Execute(CompanionBase companion)
        {
            // ik heb uitgezet dat ie standaard de emotie overneemt
            // de emoties die gedetecteerd worden staan in Instances.GetEmotions()
            // die zetten we in Program
            // of de companion ook die emotion eigenmaakt is afhankelijk van of je het hierzo zet
            var emotion = Instances.GetEmotions()[0];

            companion.SetMood(emotion);

            // als je wilt checken of bepaalde tijd voorbij is sinds vorige gedrag verandering, in dit geval 3 seconden
            if (Time.Elapsed(companion.GetPreviousBehaviourChange(), 3))
            {
            }

            // positie aanpassen
            var pos = companion.GetPosition();

            //pos.X += 0;

            // kijken of we bij de rand zijn i.v.m. klimmen, ervan uitgaande dat alle animaties 224*224 gebruiken
            if (pos.X == 0 | pos.X + 224 == Instances.GetScreenDimension().GetWidth())
            {
                // random chance of climbing
            }

            if (pos.X < 0 || pos.X + 224 > Instances.GetScreenDimension().GetWidth() || pos.Y < 0 || pos.Y + 224 > Instances.GetScreenDimension().GetHeight())
            {
                Random rnd = new Random();
                pos = new Point(rnd.Next(Instances.GetScreenDimension().GetWidth()), rnd.Next(Instances.GetScreenDimension().GetHeight()));
            }

            companion.SetPosition(pos);

            return(true);
        }
Пример #6
0
 // hasta la vista companion
 public void DisposeCompanion(CompanionBase companion)
 {
     _companions.Remove(companion);
 }
Пример #7
0
 public void AddCompanion(CompanionBase companion)
 {
     _companions.Add(companion);
 }
Пример #8
0
 public bool Execute(CompanionBase companion)
 {
     return(true);
 }