⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 badfish.hpp

📁 超级玛丽
💻 HPP
字号:

#ifndef _BADFISH_HPP_
#define _BADFISH_HPP_


class BadFish: public MoveableObject
{
private:


	
	JSprite* mRun;
	JSprite* mIdle;
	JSprite* mJump;
	JSprite* mDuck;

	float mTall;
    int mCoinCount;
	int mCurLife;
	JTexture* mTexture_2;
	

public:
	BadFish(GameStatePlay* app);
	virtual ~BadFish();

	virtual void Update(float dt);
	

	//virtual void HitLeft();
    //virtual void HitRight();

	int GetCoinCount();

	int GetCurLife();

	void SetCoinCount(int count);
	void SetCurLife(int life);

	bool md;

};




BadFish::BadFish(GameStatePlay* app): MoveableObject(app)
{
	md = false;
	mTexture_2 = mEngine->LoadTexture("Res/zhangyu.png", true);	
	//mMap = mApp->GetTileMap();
	//这里的mTexture是GameStatePlay里的mTexture也就是BadFish的纹理
	//mIdle = new JSprite(mTexture, 0, 0, 100, 95);
	//mIdle->SetHotSpot(0.0f, 95.0f);
	mJump = new JSprite(mTexture_2, 0, 0, 100, 95);
	mJump->SetHotSpot(0.0f, 95.0f);
	//mDuck = new JSprite(mTexture, 400, 0, 100, 95);
	//mDuck->SetHotSpot(0.0f, 95.0f);
    
	//设置与走路相关的动画
	//mRun = new JSprite(mTexture, 0, 0, 100, 95);
	//mRun->SetHotSpot(0.0f, 95.0f);
	//mRun->AddFrame(100,0,100,95);
	//mRun->AddFrame(200,0,100,95);
	//mRun->StartAnimation();
    
	//设置初始动作为mIdle
	mCurrAnimation = mJump;
	mCurrAnimation->SetFlip(false);
	

	mX = 320.0f;
	mY = 300.0f;

	mTall = 64.0f;
//	mFlipped = true;
//	mJumping = false;

	mXVelocity = -DEFAULT_WALK_SPEED;
	mYVelocity = 0.0f;
	mFlipped = false;

	mYRenderOffset = 3.0f;

	mHScale = 0.70f;
	mVScale = 0.70f;

	mLeftAdjustment = 23;
	mRightAdjustment = 47;

	mHitLeftAdjustment = 12;
	mHitRightAdjustment = 58;

	mFallLeftAdjustment = -20;
	mFallRightAdjustment = -10;

}


BadFish::~BadFish()
{
	
	//delete mRun;
	//delete mIdle;
	//delete mDuck;
	delete mJump;

}






/*void BadFish::HitLeft()
{

	mXVelocity = DEFAULT_WALK_SPEED;
	mFlipped = true;
	mCurrAnimation->SetFlip(true);
}


void BadFish::HitRight()
{

	mXVelocity = -DEFAULT_WALK_SPEED;
	mFlipped = false;
	mCurrAnimation->SetFlip(false);
}*/




void BadFish::Update(float dt)
{
	if (!mJumping)
	{
		if(mY >= 447)
		{                         //这一段描述了Mario的跳跃情况
			mCurrAnimation = mJump;
			mJumping = true;
			mYVelocity = 0.9*BIGM_INITIAL_JUMP_VEL;
			mApp->PlaySfx(SFX_JUMP2);
		}
	}
	if(mX <= 16){
		mXVelocity = -mXVelocity;
		mX += (16 - mX) * 2;
		mCurrAnimation->SetFlip(true);
	}
	if(mX >= 552){
		mXVelocity = -mXVelocity;
		mX -= (mX - 552) * 2;
		mCurrAnimation->SetFlip(false);
	}
	MoveableObject::Update(dt);
}



#endif

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -