public BlockStateMachine(BlockForm block) { QuestionBlock = new QuestionBlockState(this, block); UsedBlock = new UsedBlockState(this, block); BrickBlock = new BrickBlockState(this, block); FloorBlock = new FloorBlockState(this, block); PyramidBlock = new PyramidBlockState(this, block); HiddenBlock = new HiddenBlockState(this, block); VMovingBlock = new VMovingBlockState(this, block); HMovingBlock = new HMovingBlockState(this, block); }
public BrickEntity(ObstacleFactory factory, Vector2 position, Entity ItemEnt) : base(factory, ItemEnt) { Block = (AbstractObstacle)SpriteFactory.getSprite((int)obstacleTypes.BRICKBLOCK); Block.Position = position; Block.Position = Vector2.Clamp(this.Position, new Vector2(0f, Position.Y - 2f), new Vector2(1000000f, Position.Y)); B = new AbstractObstacle[4]; for (int i = 0; i < 4; i++) { B[i] = (AbstractObstacle)SpriteFactory.getSprite((int)obstacleTypes.BRICKSHARD); B[i].Position = Block.Position; B[i].Velocity = Vector2.Zero; } Sprite.Position = position; Block.Velocity = Vector2.Zero; float originalPos = Block.Position.Y; BlockSM = new BlockStateMachine(this); CurrentBlockState = new BrickBlockState(BlockSM, this); }