正在做推箱子游戏,请问如何实现暂停和重新开始? 设置了定时器,不知道如何暂停的时候把定时器也一起暂停 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 推箱子游戏VC6源代码 仓库番游戏VC6源代码 http://download.csdn.net/detail/zhao4zhong1/3230945 直接KillTimer,重新开始时再SetTimer,具体参数查阅MSDN 定时器没有办法暂停,不过可以KillTimer杀掉定时器,然后继续的时候,重新SetTimer创建定时器 可以定义一个变量,比如:bool m_pause;在开始游戏的时候置为true:m_pause=false;SetTimer(...);在OnTimer()里:if(!m_pause) process_my_task();这样,在暂停的时候,直接置m_pause为true就可以了重新开始的话,需要两部分的操作:1. 置m_pause为true2. 复位所有的游戏变量3. 置m_pause为false其实更好的方法是新定义一个变量,比如bool m_rest,在开始游戏的时候置为false:m_pause=false;m_reset=false;SetTimer(...);在OnTimer()里:if(m_reset){ reset_all_things(); m_reset=false;}if(!m_pause) process_my_task();在需要重新开始的时候,只需要:m_reset=true;就行了 你在你的游戏帧处理函数里最开头加一个静态变量判断是否暂停:若它是true,直接return;否则执行函数。 授权认证编程中的一些问题 有VC高手会用OD调试分析软件流程进行拦截的吗?需要获得IE一个属性窗口。1000RMB酬谢! 谁能在pudn上帮我下载一个工程 好迷茫~~~ 曲线的打印问题! 用过VB、VC和BC的人请进 求救!UDP接收信息莫名丢失 类的相互调用问题-视窗和对话框传输数据解决方案-Apply按钮的实现? 关于:MFC的CSock类 Win7系统混音器Mixer读写问题 win32运用mfc问题 MFC多线程消息通信
bool m_pause;
在开始游戏的时候置为true:
m_pause=false;
SetTimer(...);
在OnTimer()里:
if(!m_pause)
process_my_task();
这样,在暂停的时候,直接置m_pause为true就可以了重新开始的话,需要两部分的操作:
1. 置m_pause为true
2. 复位所有的游戏变量
3. 置m_pause为false
其实更好的方法是新定义一个变量,比如bool m_rest,在开始游戏的时候置为false:
m_pause=false;
m_reset=false;
SetTimer(...);
在OnTimer()里:
if(m_reset)
{
reset_all_things();
m_reset=false;
}
if(!m_pause)
process_my_task();
在需要重新开始的时候,只需要:
m_reset=true;
就行了
加一个静态变量判断是否暂停:
若它是true,直接return;
否则执行函数。