Esempio n. 1
0
        void spawnItem(int i, Vector2 position)
        {
            int num = i;
            Vector2 pos = position;

            if (i == 0)
                num = RandomProvider.GetRandom().Next(1, 9);

            if (position == Vector2.Zero)
                pos = new Vector2(RandomProvider.GetRandom().Next((int)(TurkeySmashGame.WindowSize.X / 6), (int)(5 * TurkeySmashGame.WindowSize.X / 6)), TurkeySmashGame.WindowSize.Y / 6);

            PhysicsObject item = null;
            switch (num)
            {
                case 1:
                    itemsSprite.Add(football);
                    item = new RoundPhysicsObject(world, pos, 3f, 0.7f, football);
                    break;
                case 2:
                    itemsSprite.Add(caisseSprite);
                    item = new RectPhysicsObject(world, pos, 2.0f, caisseSprite);
                    break;
                case 3:
                    itemsSprite.Add(blocSwag);
                    item = new RectPhysicsObject(world, pos, 1f, blocSwag);
                    break;
                case 4:
                    itemsSprite.Add(pingpong);
                    item = new RoundPhysicsObject(world, pos, 5, 0.90f, pingpong);
                    break;
                case 5:
                    itemsSprite.Add(baguette);
                    item = new RectPhysicsObject(world, pos, 4, baguette);
                    break;
                case 6:
                    itemsSprite.Add(pneu);
                    item = new RoundPhysicsObject(world, pos, 5, 0.75f, pneu);
                    break;
                case 7:
                    itemsSprite.Add(pq);
                    item = new RectPhysicsObject(world, pos, 5, pq);
                    break;
                case 8:
                    itemsSprite.Add(tv);
                    item = new RectPhysicsObject(world, pos, 1, tv);
                    break;
            }
            FarseerBodyUserData userData = new FarseerBodyUserData
            {
                IsCharacter = false,
                IsBonus = false,
                IsItem = true,
            };
            item.body.UserData = userData;
            item.body.Mass = massItem;
            items.Add(item);
        }
Esempio n. 2
0
        /// <summary>
        /// Classe Character animée et possédant un body
        /// </summary>
        /// <param name="world">Monde dans le lequel ce trouve le character</param>
        /// <param name="position">En DisplayUnits(pixels)</param>
        /// <param name="density">Calcule du poids en fonction de la taille</param>
        /// <param name="bodySize">En DisplayUnits(pixels)</param>
        /// <param name="playerindex"></param>
        /// <param name="definition">Propriétés de l'image animée</param>
        public Character(World world, Vector2 position, float density, Vector2 bodySize, PlayerIndex playerindex, AnimatedSpriteDef definition)
            : base(position, definition)
        {
            this.playerindex = playerindex;
            this.world = world;
            this.bodySize = bodySize;
            body = BodyFactory.CreateRectangle(world, ConvertUnits.ToSimUnits(bodySize.X * scale), ConvertUnits.ToSimUnits(bodySize.Y * scale), density);
            body.BodyType = BodyType.Dynamic;
            body.Position = ConvertUnits.ToSimUnits(position);
            body.Restitution = 0.3f;
            body.FixedRotation = true;
            body.Friction = 0.1f;
            FarseerBodyUserData userData = new FarseerBodyUserData
            {
                AssociatedName = definition.AssetName,
                IsCharacter = true,
                Pourcent = 0,
                LastHit = 0
            };
            body.UserData = userData;
            textures.Add(TurkeySmashGame.content.Load<Texture2D>("Jeu\\particules\\star"));
            textures.Add(TurkeySmashGame.content.Load<Texture2D>("Jeu\\particules\\diamond"));
            CurrentFrame = new Point(0, 1);

            punchCharacter = TurkeySmashGame.content.Load<SoundEffect>("Sons\\effets\\PUNCH");
            punchMiss = TurkeySmashGame.content.Load<SoundEffect>("Sons\\effets\\whoosh");
            punchObjet = TurkeySmashGame.content.Load<SoundEffect>("Sons\\effets\\punchboite");
            punchBonus = TurkeySmashGame.content.Load<SoundEffect>("Sons\\effets\\bonus");
            teleportation = TurkeySmashGame.content.Load<SoundEffect>("Sons\\effets\\Teleportation");
        }
Esempio n. 3
0
        void spawnBonus(int i, Vector2 position)
        {
            PhysicsObject thisBonus = null;
            int num = i;
            Vector2 pos = position;

            if (i == 0)
                num = RandomProvider.GetRandom().Next(1, 5);

            if (position == Vector2.Zero)
                pos = new Vector2(RandomProvider.GetRandom().Next((int)(TurkeySmashGame.WindowSize.X / 6), (int)(5 * TurkeySmashGame.WindowSize.X / 6)), TurkeySmashGame.WindowSize.Y / 6);

            switch (num)
            {
                case 1:
                    thisBonus = new RectPhysicsObject(world, pos, 1, dinde);
                    bonusSprite.Add(dinde);
                    FarseerBodyUserData userData1 = new FarseerBodyUserData
                    {
                        IsCharacter = false,
                        IsBonus = true,
                        IsUsed = false,
                        BonusType = "dinde"
                    };
                    thisBonus.body.UserData = userData1;
                    break;
                case 2:
                    thisBonus = new RectPhysicsObject(world, pos, 1, hamburger);
                    FarseerBodyUserData userData2 = new FarseerBodyUserData
                    {
                        IsCharacter = false,
                        IsBonus = true,
                        IsUsed = false,
                        BonusType = "pourcent"
                    };
                    thisBonus.body.UserData = userData2;
                    bonusSprite.Add(hamburger);
                    break;
                case 3:
                    thisBonus = new RectPhysicsObject(world, pos, 1, raquette);
                    FarseerBodyUserData userData3 = new FarseerBodyUserData
                    {
                        IsCharacter = false,
                        IsBonus = true,
                        IsUsed = false,
                        BonusType = "raquette"
                    };
                    thisBonus.body.UserData = userData3;
                    bonusSprite.Add(raquette);
                    break;
                case 4:
                    thisBonus = new RectPhysicsObject(world, pos, 1, invincible);
                    FarseerBodyUserData userData4 = new FarseerBodyUserData
                    {
                        IsCharacter = false,
                        IsBonus = true,
                        IsUsed = false,
                        BonusType = "invincible"
                    };
                    thisBonus.body.UserData = userData4;
                    bonusSprite.Add(invincible);
                    break;
            }
            bonus.Add(thisBonus);
        }