- 注册时间
- 2004-11-25
- 最后登录
- 1970-1-1
|

楼主 |
发表于 2006-8-22 16:57:36
|
显示全部楼层
又忘记坐沙发了。-_-",就是一个不停跑动中的精灵,在三层空间中吃宝物,不停的蹦来蹦去的。 -_-",我写过一个坦克,后来速度不行。郁闷阿
看看夭折的坦克图片吧 
GGV 我!#$!@#$!@$#!@#$!@(省略N多脏字)。
很郁闷阿。下面是部分代码。可惜了
//////////////////////////////////////////////
//初始化敌人坦克
//参数: 无
//返回: 无
////////////////////////////////////////////
void RestoreEnemyTank()
{
for(xun=0;xun<=ecount;xun++)
{
e[xun].x=0;
e[xun].y=0;
e[xun].xs=0;
e[xun].ys=0;
e[xun].state=ENOUSE;
e[xun].life=0;
e[xun].style=0;
e[xun].d=0;
}
}
void CreateEnemy()
{
for (xun=0;xun<=ecount;xun++)
{
if (e[xun].state==ENOUSE)
{
e[xun].style=rand()%3;
e[xun].life=0;
e[xun].x=rand()%8*16+8 ;
e[xun].y=8;
e[xun].xs=0;
e[xun].ys=2;
e[xun].d=2;
e[xun].state=ENORMAL;
break;
}
}
}
//////////////////////////////////////////////
//检测地图地形函数
//参数: x,y检测对象的坐标 xspeed,yspeed- x,y的速度 d 检测方向
//返回: 0-存在障碍物 1-不存在障碍物
////////////////////////////////////////////
int MoveCheckMap(int x,int y, int xspeed,int yspeed,int d)
{
if (d==MU)
{
cmx1= (x) /8 ;
cmx2=(x+7)/8;
cmx3=(x+15)/8;
cmy1=(y+yspeed)/8;
if (map[cmx1][cmy1]!=-1) return 0;
if (map[cmx2][cmy1]!=-1) return 0;
if (map[cmx3][cmy1]!=-1) return 0;
return 1;
}
if (d==MR)
{
cmx1=(x+xspeed-1)/8+2;
cmy1= (y) /8 ;
cmy2=(y+7)/8;
cmy3=(y+15)/8;
if (map[cmx1][cmy1]!=-1) return 0;
if (map[cmx1][cmy2]!=-1 ) return 0;
if ( map[cmx1][cmy3]!=-1) return 0;
return 1;
}
if (d==MD)
{
cmx1= (x) /8 ;
cmx2=(x+7)/8;
cmx3=(x+15)/8;
cmy1=(y+yspeed-1)/8+2;
if (map[cmx1][cmy1]!=-1 )return 0;
if ( map[cmx2][cmy1]!=-1 )return 0;
if ( map[cmx3][cmy1]!=-1) return 0;
return 1;
}
if (d==ML)
{
cmx1=(x+xspeed)/8 ;
cmy1= (y) /8 ;
cmy2=(y+7)/8;
cmy3=(y+15)/8;
if (map[cmx1][cmy1]!=-1 ) return 0;
if ( map[cmx1][cmy2]!=-1) return 0;
if ( map[cmx1][cmy3]!=-1) return 0;
return 1;
}
} |
-
|