public uint CreateSkillDeployable(SkillType skill, Position position, int rankP)
        {
            SkillDeployable skillDeployable;
            Sprite          sprite;
            Collideable     collideable;
            uint            eid = Entity.NextEntity();

            position.EntityID = eid;

            switch (skill)
            {
            case SkillType.PortableShop:
                skillDeployable = new SkillDeployable()
                {
                    EntityID = eid,
                    duration = 1,
                    rank     = rankP,
                };
                sprite = new Sprite()
                {
                    EntityID     = eid,
                    SpriteSheet  = game.Content.Load <Texture2D>("Spritesheets/shop"),
                    SpriteBounds = new Rectangle(343, 50, 24, 25),
                };
                position.Radius = 5;
                break;

            default:
                throw new Exception("Not a Deployable skill");
            }

            collideable = new Collideable()
            {
                EntityID = eid,
                RoomID   = position.RoomID,
                Bounds   = new CircleBounds(position.Center, position.Radius),
            };

            game.SkillDeployableComponent.Add(eid, skillDeployable);
            game.PositionComponent.Add(eid, position);
            game.SpriteComponent.Add(eid, sprite);
            game.CollisionComponent.Add(eid, collideable);
            return(eid);
        }
        public uint CreateSkillDeployable(Skills skill, Position position)
        {
            SkillDeployable skillDeployable;
            Sprite          sprite;
            Collideable     collideable;
            uint            eid = Entity.NextEntity();

            position.EntityID = eid;

            switch (skill)
            {
            case Skills.healingStation:
                skillDeployable = new SkillDeployable()
                {
                    EntityID = eid,
                    duration = 1,
                };
                sprite = new Sprite()
                {
                    EntityID     = eid,
                    SpriteSheet  = game.Content.Load <Texture2D>("Spritesheets/BlueBullet"),
                    SpriteBounds = new Rectangle(0, 0, 10, 10),
                };
                position.Radius = 5;
                break;

            default:
                throw new Exception("Not a Deployable skill");
            }

            collideable = new Collideable()
            {
                EntityID = eid,
                RoomID   = position.RoomID,
                Bounds   = new CircleBounds(position.Center, position.Radius),
            };

            game.SkillDeployableComponent.Add(eid, skillDeployable);
            game.PositionComponent.Add(eid, position);
            game.SpriteComponent.Add(eid, sprite);
            game.CollisionComponent.Add(eid, collideable);
            return(eid);
        }
Exemplo n.º 3
0
        public uint CreateSkillDeployable(SkillType skill, Position position, int rankP)
        {
            SkillDeployable skillDeployable;
            Sprite sprite;
            Collideable collideable;
            uint eid = Entity.NextEntity();

            position.EntityID = eid;

            switch (skill)
            {
                case SkillType.PortableShop:
                    skillDeployable = new SkillDeployable()
                    {
                        EntityID = eid,
                        duration = 1,
                        rank = rankP,
                    };
                    sprite = new Sprite()
                    {
                        EntityID = eid,
                        SpriteSheet = game.Content.Load<Texture2D>("Spritesheets/shop"),
                        SpriteBounds = new Rectangle(343, 50, 24, 25),
                    };
                    position.Radius = 5;
                    break;
                default:
                    throw new Exception("Not a Deployable skill");
            }

            collideable = new Collideable()
            {
                EntityID = eid,
                RoomID = position.RoomID,
                Bounds = new CircleBounds(position.Center, position.Radius),
            };

            game.SkillDeployableComponent.Add(eid, skillDeployable);
            game.PositionComponent.Add(eid, position);
            game.SpriteComponent.Add(eid, sprite);
            game.CollisionComponent.Add(eid, collideable);
            return eid;
        }
        public uint CreateSkillDeployable(Skills skill, Position position)
        {
            SkillDeployable skillDeployable;
            Sprite sprite;
            Collideable collideable;
            uint eid = Entity.NextEntity();

            position.EntityID = eid;

            switch (skill)
            {
                case Skills.healingStation:
                    skillDeployable = new SkillDeployable()
                    {
                        EntityID = eid,
                        duration = 1,
                    };
                    sprite = new Sprite()
                    {
                        EntityID = eid,
                        SpriteSheet = game.Content.Load<Texture2D>("Spritesheets/BlueBullet"),
                        SpriteBounds = new Rectangle(0, 0, 10, 10),
                    };
                    position.Radius = 5;
                    break;
                default:
                    throw new Exception("Not a Deployable skill");
            }

            collideable = new Collideable()
            {
                EntityID = eid,
                RoomID = position.RoomID,
                Bounds = new CircleBounds(position.Center, position.Radius),
            };

            game.SkillDeployableComponent.Add(eid, skillDeployable);
            game.PositionComponent.Add(eid, position);
            game.SpriteComponent.Add(eid, sprite);
            game.CollisionComponent.Add(eid, collideable);
            return eid;
        }