public override void UpdateCollision(CAnimationObject _Object) { if (CheckCollision(_Object) != DirectCollision.NONE && m_Status != IDStatus.UNACTIVATE) { switch (_Object.IDObject) { case IDObject.MISC_IRON_BRICK: case IDObject.MISC_BASE_BRICK: case IDObject.MISC_HARD_BRICK: if (CheckCollision(_Object) == DirectCollision.TOP) { m_Velocity.Y = 0.0f; m_Position.Y = _Object.Position.Y - Sprite.FrameHeight; } else if (CheckCollision(_Object) == DirectCollision.RIGHT) { m_Dir = IDDir.RIGHT; } else if (CheckCollision(_Object) == DirectCollision.LEFT) { m_Dir = IDDir.LEFT; } else if (CheckCollision(_Object) == DirectCollision.BOTTOM) { m_Velocity.Y = -m_Velocity.Y; } break; default: break; } } base.UpdateCollision(_Object); }
public BossBullet(Vector2 _Position, IDDir _Direction) : base(_Position) { Sprite = new CSprite(CResourceManager.GetInstance().GetResource(IDResource.ENEMY_BOSS_BULLET)); Sprite.Depth = GlobalValue.ENEMY_SPRITE_DEPTH; Direction = _Direction; IDObject = IDObject.ENEMY_BOSS_BULLET; }
public Bullet(Vector2 _Position, IDDir _Dir) : base(_Position) { m_IDObject = IDObject.BULLET; m_Sprite = new CSprite(CResourceManager.GetInstance().GetResource(IDResource.BULLET)); Direction = _Dir; Sprite.Depth = GlobalValue.MARIO_SPRITE_DEPTH; }
public Goomba(Vector2 _Position,IDDir _Dir) : base(_Position) { m_IDObject = IDObject.ENEMY_GOOMBA_OW; m_Sprite = new CSprite(CResourceManager.GetInstance().GetResource(IDResource.ENEMY_GOOMBA_OW)); Direction = _Dir; m_Status = IDStatus.ALIVE; Sprite.Depth = GlobalValue.ENEMY_SPRITE_DEPTH; }
public Goomba(Vector2 _Position, IDDir _Dir) : base(_Position) { m_IDObject = IDObject.ENEMY_GOOMBA_OW; m_Sprite = new CSprite(CResourceManager.GetInstance().GetResource(IDResource.ENEMY_GOOMBA_OW)); Direction = _Dir; m_Status = IDStatus.ALIVE; Sprite.Depth = GlobalValue.ENEMY_SPRITE_DEPTH; }
public override void UpdateMovement(GameTime _GameTime, CInput _Input) { if (m_Status == IDStatus.ACTIVATE) { m_Velocity = new Vector2(0, -0.05f); } if (oldPosition.Y - m_Position.Y > Sprite.FrameHeight && m_Status == IDStatus.ACTIVATE) { m_Status = IDStatus.RUN; //m_Velocity = Vector2.Zero; m_Dir = IDDir.RIGHT; } if (m_Status == IDStatus.RUN) { m_Accel.Y = 0.0098f; if (m_Dir == IDDir.LEFT) { //m_Status = IDStatus.RUN; m_Velocity = new Vector2(-0.2f, m_Velocity.Y); } if (m_Dir == IDDir.RIGHT) { //m_Status = IDStatus.RUN; m_Velocity = new Vector2(0.2f, m_Velocity.Y); } } if (m_Velocity.Y > 1.0f) { m_Velocity.Y = 1.0f; } if (m_Velocity.X > 0.2f) { m_Velocity.X = 0.2f; } if (m_Velocity.X < -0.2) { m_Velocity.X = -0.2f; } base.Update(_GameTime, _Input); }
public override void UpdateMovement(GameTime _GameTime, CInput _Input) { if (m_IDObject == IDObject.ITEM_SUPER_MUSHROOM) { if (m_Status == IDStatus.ACTIVATE) { m_Velocity = new Vector2(0, -0.01f); } if (oldPosition.Y - m_Position.Y > Sprite.FrameHeight && m_Status == IDStatus.ACTIVATE) { m_Status = IDStatus.RUN; //m_Velocity = Vector2.Zero; m_Dir = IDDir.RIGHT; } if (m_Status == IDStatus.RUN) { m_Accel.Y = 0.00098f; if (m_Dir == IDDir.LEFT) { //m_Status = IDStatus.RUN; m_Velocity = new Vector2(-0.1f, m_Velocity.Y); } if (m_Dir == IDDir.RIGHT) { //m_Status = IDStatus.RUN; m_Velocity = new Vector2(0.1f, m_Velocity.Y); } } if (m_Velocity.Y > 1.0f) { m_Velocity.Y = 1.0f; } if (m_Velocity.X > 0.1f) { m_Velocity.X = 0.1f; } if (m_Velocity.X < -0.1) { m_Velocity.X = -0.1f; } } if (IDObject == IDObject.ITEM_FIRE_FLOWER) { if (m_Status == IDStatus.ACTIVATE) { m_Velocity = new Vector2(0, -0.01f); } if (oldPosition.Y - m_Position.Y > Sprite.FrameHeight - 1 && m_Status == IDStatus.ACTIVATE && Status != IDStatus.UNACTIVATE)//dung animation chay len { m_Status = IDStatus.ALIVE; m_Velocity = Vector2.Zero; } } base.Update(_GameTime, _Input); }
public override void UpdateMovement(GameTime _GameTime, CInput _Input) { if (m_IDObject == IDObject.ITEM_SUPER_MUSHROOM) { if (m_Status == IDStatus.ACTIVATE) { m_Velocity = new Vector2(0, -0.01f); } if (oldPosition.Y - m_Position.Y > Sprite.FrameHeight && m_Status == IDStatus.ACTIVATE) { m_Status = IDStatus.RUN; //m_Velocity = Vector2.Zero; m_Dir = IDDir.RIGHT; } if (m_Status == IDStatus.RUN) { m_Accel.Y = 0.00098f; if (m_Dir == IDDir.LEFT) { //m_Status = IDStatus.RUN; m_Velocity = new Vector2(-0.1f, m_Velocity.Y); } if (m_Dir == IDDir.RIGHT) { //m_Status = IDStatus.RUN; m_Velocity = new Vector2(0.1f, m_Velocity.Y); } } if (m_Velocity.Y > 1.0f) m_Velocity.Y = 1.0f; if (m_Velocity.X > 0.1f) m_Velocity.X = 0.1f; if (m_Velocity.X < -0.1) m_Velocity.X = -0.1f; } if (IDObject == IDObject.ITEM_FIRE_FLOWER) { if (m_Status == IDStatus.ACTIVATE) { m_Velocity = new Vector2(0, -0.01f); } if (oldPosition.Y - m_Position.Y > Sprite.FrameHeight - 1 && m_Status == IDStatus.ACTIVATE && Status != IDStatus.UNACTIVATE)//dung animation chay len { m_Status = IDStatus.ALIVE; m_Velocity = Vector2.Zero; } } base.Update(_GameTime, _Input); }
public override void UpdateMovement(GameTime _GameTime, CInput _Input) { if (m_Status == IDStatus.ACTIVATE) { m_Velocity = new Vector2(0, -0.05f); } if (oldPosition.Y - m_Position.Y > Sprite.FrameHeight && m_Status == IDStatus.ACTIVATE) { m_Status = IDStatus.RUN; //m_Velocity = Vector2.Zero; m_Dir = IDDir.RIGHT; } if (m_Status == IDStatus.RUN) { m_Accel.Y = 0.0098f; if (m_Dir == IDDir.LEFT) { //m_Status = IDStatus.RUN; m_Velocity = new Vector2(-0.2f, m_Velocity.Y); } if (m_Dir == IDDir.RIGHT) { //m_Status = IDStatus.RUN; m_Velocity = new Vector2(0.2f, m_Velocity.Y); } } if (m_Velocity.Y > 1.0f) m_Velocity.Y = 1.0f; if (m_Velocity.X > 0.2f) m_Velocity.X = 0.2f; if (m_Velocity.X < -0.2) m_Velocity.X = -0.2f; base.Update(_GameTime, _Input); }