Пример #1
0
        override public void overlapped(FlxObject obj)
        {
            base.overlapped(obj);

            string overlappedWith = obj.GetType().ToString();

            if ((overlappedWith == "Lemonade.Army" ||
                 overlappedWith == "Lemonade.Inspector" ||
                 overlappedWith == "Lemonade.Chef" ||
                 overlappedWith == "Lemonade.Worker") && !flickering())
            {
                if (obj.dead == false && control == Controls.player)
                {
                    //if (dead == false) FlxG.play("Lemonade/sfx/deathSFX", 0.8f, false);
                    //flicker(2);
                    //kill();
                }
            }
            else if (overlappedWith == "Lemonade.Trampoline")
            {
                velocity.Y      = -1000;
                trampolineTimer = 0.0f;
            }
            else if (overlappedWith == "Lemonade.FilingCabinet")
            {
                originalPosition.X = obj.x;
                originalPosition.Y = obj.y;
            }
        }
Пример #2
0
        public override void overlapped(FlxObject obj)
        {
            base.overlapped(obj);

            if (obj.GetType().ToString() == "Lemonade.Liselot" || obj.GetType().ToString() == "Lemonade.Andre")
            {
                if (canClose > 4)
                {
                    FlxG.play("Lemonade/sfx/cw_sound03", 0.8f, false);

                    play("closed", true);

                    canClose = 0;
                }
            }
        }
Пример #3
0
        public override void overlapped(FlxObject obj)
        {
            string overlappedWith = obj.GetType().ToString();

            if (overlappedWith == "Lemonade.Andre")
            {
                play("boing", true);
            }
        }
Пример #4
0
        override public void overlapped(FlxObject obj)
        {
            base.overlapped(obj);

            string overlappedWith = obj.GetType().ToString();

            if ((overlappedWith == "Lemonade.Army" ||
                 overlappedWith == "Lemonade.Inspector" ||
                 overlappedWith == "Lemonade.Chef" ||
                 overlappedWith == "Lemonade.Worker") && !flickering())
            {
                if (obj.dead == false && control == Controls.player)
                {
                    //if (dead == false) FlxG.play("Lemonade/sfx/deathSFX", 0.8f, false);
                    //flicker(2);
                    //kill();
                }
            }
            else if (overlappedWith == "Lemonade.Liselot")
            {
                if (piggyBacking == false && dead == false && flickering() == false)
                {
                    FlxG.play("Lemonade/sfx/cw_sound34", 0.8f, false);

                    control      = Controls.player;
                    piggyBacking = true;
                    ((Liselot)(obj)).piggyBacking = true;
                    ((Liselot)(obj)).parent       = this;
                    ((Liselot)(obj)).control      = Controls.none;
                }
            }
            else if (overlappedWith == "Lemonade.FilingCabinet")
            {
                originalPosition.X = obj.x + 30;
                originalPosition.Y = obj.y;
            }
            else if (overlappedWith == "Lemonade.LargeCrate")
            {
                //Console.WriteLine("crate overlapp");

                ((LargeCrate)(obj)).canExplode = true;

                //if (dashTimer > dashMaxLimit)
                //{
                //    obj.kill();
                //    obj.x = -1000;
                //    obj.y = -1000;
                //}
            }
            //else if (overlappedWith == "Lemonade.Spike")
            //{
            //    //Console.WriteLine("Spike overlapp");
            //    hurt(1);
            //}
        }
Пример #5
0
        public override void overlapped(FlxObject obj)
        {
            base.overlapped(obj);
            if (obj.GetType().ToString() == "Lemonade.Trampoline" && !dead)
            {
                velocity.Y      = -1000;
                trampolineTimer = 0.0f;
            }
            //else if (obj.GetType().ToString() == "Lemonade.Ramp")
            //{
            //    float delta = x % 20;

            //    //FlxU.solveXCollision(obj, null);

            //}
            else if (obj.GetType().ToString() == "Lemonade.Coin")
            {
                obj.kill();
                Lemonade_Globals.coins++;
                Lemonade_Globals.coinsThisLevel++;

                FlxG.play("Lemonade/sfx/cw_sound39");
                //FlxG.flash.start(Color.White);
                FlxG.quake.start(0.008f, 0.155f);
            }
            else if (obj.GetType().ToString() == "Lemonade.Spike")
            {
                //Console.WriteLine("Spike overlapp");
                if (dead == false && onScreen())
                {
                    FlxG.play("Lemonade/sfx/cw_sound44", 0.8f, false);
                }

                hurt(1);
            }
        }
Пример #6
0
        public override void hitBottom(FlxObject Contact, float Velocity)
        {
            //Console.WriteLine(Contact.GetType().ToString());

            if (Contact.GetType().ToString() == "SuperLemonadeFactory4.MovingBlock" && (Contact.velocity.Y != 0 || Contact.velocity.X != 0))
            {
                //if (this.x > (Contact.x + 12) && this.x < (Contact.x + Contact.width - 12))
                shouldStop = true;
            }
            else
            {
                shouldStop = false;
            }

            base.hitBottom(Contact, Velocity);
        }
        public override void overlapped(FlxObject obj)
        {
            base.overlapped(obj);

            if (Math.Abs(velocity.X) > 1 || Math.Abs(velocity.Y) > 1)
            {
                if (obj.GetType().ToString() == "Lemonade.Worker" && obj.dead == false)
                {
                    //Lemonade_Globals.gameProgress[Lemonade_Globals.location + "_" + FlxG.level.ToString()].KilledWorker = true;
                    obj.kill();
                    play("explode");
                    velocity.X = 0;

                    FlxG.play("Lemonade/sfx/cw_sound38", 0.5f, false);
                }
                else if (obj.GetType().ToString() == "Lemonade.Army" && obj.dead == false)
                {
                    //Lemonade_Globals.gameProgress[Lemonade_Globals.location + "_" + FlxG.level.ToString()].KilledArmy = true;
                    obj.kill();
                    play("explode");
                    velocity.X = 0;

                    FlxG.play("Lemonade/sfx/cw_sound38", 0.5f, false);
                }
                else if (obj.GetType().ToString() == "Lemonade.Chef" && obj.dead == false)
                {
                    //Lemonade_Globals.gameProgress[Lemonade_Globals.location + "_" + FlxG.level.ToString()].KilledChef = true;
                    obj.kill();
                    play("explode");
                    velocity.X = 0;

                    FlxG.play("Lemonade/sfx/cw_sound38", 0.5f, false);
                }
                else if (obj.GetType().ToString() == "Lemonade.Inspector" && obj.dead == false)
                {
                    //Lemonade_Globals.gameProgress[Lemonade_Globals.location + "_" + FlxG.level.ToString()].KilledInspector = true;
                    obj.kill();
                    play("explode");
                    velocity.X = 0;

                    FlxG.play("Lemonade/sfx/cw_sound38", 0.5f, false);
                }
            }

            if (obj.GetType().ToString() == "Lemonade.Liselot" || obj.GetType().ToString() == "Lemonade.Andre")
            {
                if (((FlxPlatformActor)(obj)).control == FlxPlatformActor.Controls.player && parent == null)
                {
                    FlxG.showHud();

                    //Console.WriteLine("Small crate is at {0} {1} collider is {2} {3} Zoom {4} ", x, y, this.getScreenXY().X, this.getScreenXY().Y, FlxG.zoom);


                    if (FlxG.BUILD_TYPE == FlxG.BUILD_TYPE_PC)
                    {
                        if (FlxG.lastControlTypeUsed == FlxG.CONTROL_TYPE_KEYBOARD)
                        {
                            FlxG._game.hud.setHudGamepadButton(
                                FlxHud.TYPE_KEYBOARD_DIRECTION,
                                FlxHud.Keyboard_Arrow_Down,
                                (this.getScreenXY().X *FlxG.zoom) - 80,
                                (this.getScreenXY().Y *FlxG.zoom) - 120);

                            FlxG._game.hud.setHudGamepadButton(FlxHud.TYPE_KEYBOARD,
                                                               FlxHud.Keyboard_C,
                                                               (this.getScreenXY().X *FlxG.zoom) + 20,
                                                               (this.getScreenXY().Y *FlxG.zoom) - 120);
                        }
                        else if (FlxG.lastControlTypeUsed == FlxG.CONTROL_TYPE_GAMEPAD)
                        {
                            FlxG._game.hud.setHudGamepadButton(FlxHud.TYPE_XBOX_DIRECTION,
                                                               FlxHud.xboxDPadDown,
                                                               (this.getScreenXY().X *FlxG.zoom) - 80,
                                                               (this.getScreenXY().Y *FlxG.zoom) - 120);

                            FlxG._game.hud.setHudGamepadButton(FlxHud.TYPE_XBOX,
                                                               FlxHud.xboxButtonX,
                                                               (this.getScreenXY().X *FlxG.zoom) + 20,
                                                               (this.getScreenXY().Y *FlxG.zoom) - 120);
                        }
                    }
                    if (FlxG.BUILD_TYPE == FlxG.BUILD_TYPE_OUYA)
                    {
                        FlxG._game.hud.setHudGamepadButton(FlxHud.TYPE_OUYA_DIRECTION,
                                                           FlxHud.ouyaDPadDown,
                                                           (this.getScreenXY().X *FlxG.zoom) - 80,
                                                           (this.getScreenXY().Y *FlxG.zoom) - 120);

                        FlxG._game.hud.setHudGamepadButton(FlxHud.TYPE_OUYA,
                                                           FlxHud.ouyaButtonU,
                                                           (this.getScreenXY().X *FlxG.zoom) + 20,
                                                           (this.getScreenXY().Y *FlxG.zoom) - 120);
                    }

                    FlxG._game.hud.resetTime();
                    FlxG._game.hud.timeToShowButton = 0.05f;

                    throwTimer = 0;

                    if (canParent)
                    {
                        parent = obj;
                        Console.WriteLine("can parent == True);");
                    }

                    canParent = false;
                }
            }
            else
            {
                canParent = false;
            }

            if (obj.GetType().ToString() == "Lemonade.Trampoline")
            {
                trampolineTimer = 0;
                velocity.Y      = -1000;
            }

            if (obj.GetType().ToString() == "Lemonade.Spike")
            {
                play("explode");
            }
        }