06Linuxwuliqiang.blog.chinaunix.net
linux_wuliqiang
业精于勤,荒于嬉
全部博文(763)
生活小常识(7)
git(3)
Socket(12)
Bash(1)
命令(Commond)(7)
服务器(32)
Linux内核(0)
vi_gcc_gdb_emacs(3)
Makefile(8)
C++容器(7)
项目管理(0)
代码管理(3)
Android(18)
MTK(3)
Iphone(109)
Symbian(0)
点阵字库(3)
环境搭建(1)
寻路算法(2)
字库相关(2)
Unity3D(17)
MD2_3D动画显示(1)
地图相关(11)
Hge Engine(0)
Cocos2d(14)
文件解析(3)
图片解析(11)
OpenGL(53)
游戏架构(1)
ECMAScript(1)
Flash(0)
Html5(11)
Jsp(6)
Eclipse(4)
J2ee_project(0)
文件上传(0)
UI(0)
J2ME(14)
reportTable(0)
2018年(6)
2017年(15)
2016年(2)
2015年(31)
2014年(14)
2013年(87)
2012年(75)
2011年(94)
2010年(190)
2009年(38)
2008年(183)
2007年(28)
Tay_linu
niao5929
shencz20
qssjh035
mugua250
youngmam
xixichen
CU官方博
commshar
leonlinl
leleston
smile124
甜菜妙妙
test1
xinshou6
bingor
speed
格伯纳
分类: C/C++
2010-01-19 09:30:11
/** 函数说明: 更新游戏中的日期信息* 参数描述: void* 返回值: void* 备注说明: g_game_time, g_game_day, g_game_month, g_game_year 为全局变量* 如果是2月先判断是不是润年,是则29天,否则28天;* 如果是1,3,5,7,8,10,12 则是31天,如果是4,6,9,11则是30天;* 作者: nothing**/void update_date_time( void ) { // 游戏中 100ms 刷新一次, 即游戏刷新一次的时间大概为: 0.1 秒 if (g_game_time % 100 == 0) { g_game_day += 1; //假设:现实中10秒为游戏时间1天 switch (g_game_month) { case 1: case 3: case 5: case 7: case 8: case 10: case 12: { if (g_game_day > 31) { g_game_day = 1; g_game_month++; // 过了一个月 } } break; case 2: // 第二月需要特殊处理 { // 闰年的判断 if ( (g_game_year / 4 == 0) && (g_game_year / 100 != 0) || (g_game_year / 400 == 0) ) { if (g_game_day > 28) { g_game_day = 1; g_game_month++; } } else if (g_game_day > 29) { g_game_day = 1; g_game_month++; } } break; case 4: case 6: case 9: case 11: if (g_game_day == 31) { g_game_day = 1; g_game_month++; } break; } if (g_game_month > 12 ) { g_game_year += 1; g_game_month = 1; } save_data_time(); } return ;}
上一篇:是互联网成就了谷歌 (日记 [2010年01月13日])
下一篇:获取iPhone用户手机号
登录 注册