Cocos2d-x 进度条倒计时实现

本文介绍如何使用Cocos2d-x在游戏中创建并更新进度条,包括背景精灵的设置、进度条的创建及更新逻辑。通过代码示例详细展示了如何调整进度条的位置、尺寸及显示方式。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >


//进度条背景
	CCSprite *progressbgSprite;
	progressbgSprite = CCSprite::create("time_slot-hd.png")	;
	progressbgSprite->setAnchorPoint(ccp(0,0));	//修改定点对应点
	progressbgSprite->setPosition(ccp(0, size.height-22));
	progressbgSprite->setScaleX(0.4f);
	progressbgSprite->setScaleY(0.7f);
	this->addChild(progressbgSprite, 1);
	progressbgSprite->setVisible(true);

	//进度条正面红条
	CCSprite *progressSprite = CCSprite::create("time_bars-hd.png");
	progress = CCProgressTimer::create(progressSprite);//创建进度条
	progress->setAnchorPoint(ccp(0,0));
	progress->setType(kCCProgressTimerTypeBar);	//中间为从左向右的进度条,类型为水平
	progress->setScaleX(0.4f);
	progress->setScaleY(0.7f);
	progress->setPosition(ccp(0,size.height-22));

	//进度动画运动方向
	progress->setMidpoint(ccp(0,0));
	//进度条宽高变化
	progress->setBarChangeRate(ccp(1,0)); //设置进度条为从左向右随进度增长而显现
	progress->setPercentage(100.0f);//值
	this->addChild(progress,1);
	progress->setVisible(true);


void Game::update(float dt)
{	 
 int cu=progress->getPercentage(); //获取进度条的值
 if (cu > 0)
 {
	 cu=cu-1.0f;
	 progress->setPercentage(cu); //设置进度条的值
	 CCString *str = CCString::createWithFormat("%d",cu);
	 numsTTF->setString(str->getCString());//设置进度条上字的值
 }
}




评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值