我是基于directx7,用delphi写出来的,感觉在自己的电脑运行还很正常。dd56001
//绘制我机撞毁火焰
if(deadflamestatus<>0)then
begin
rect.Left :=deadflamepos.X;
rect.top:=deadflamepos.Y;
rect.Right :=rect.left+66;
rect.Bottom :=rect.top+66;
srect.Left :=(deadflamestatus-1)*66;
srect.top:=0;
srect.Right :=srect.left+66;
srect.Bottom :=srect.top+66;
//绘制火焰
rval:=FDDSBack.Blt(@rect, FDDSDead, @srect, DDBLT_WAIT or DDBLT_KEYSRC , nil);
if(rval = DDERR_SURFACELOST) then
FDDSBack._Restore;
tempint:=gettickcount;
if(tempint-oldtime3>200)then
begin
oldtime3:=GetTickCount;
deadflamestatus:=deadflamestatus+1;//更新火焰状态
if (deadflamestatus=9 ) then
deadflamestatus:=0;//火焰完毕
end;
end;
[ 本帖最后由 海鱼 于 2008-11-16 19:35 编辑 ]
//绘制我机撞毁火焰
if(deadflamestatus<>0)then
begin
rect.Left :=deadflamepos.X;
rect.top:=deadflamepos.Y;
rect.Right :=rect.left+66;
rect.Bottom :=rect.top+66;
srect.Left :=(deadflamestatus-1)*66;
srect.top:=0;
srect.Right :=srect.left+66;
srect.Bottom :=srect.top+66;
//绘制火焰
rval:=FDDSBack.Blt(@rect, FDDSDead, @srect, DDBLT_WAIT or DDBLT_KEYSRC , nil);
if(rval = DDERR_SURFACELOST) then
FDDSBack._Restore;
tempint:=gettickcount;
if(tempint-oldtime3>200)then
begin
oldtime3:=GetTickCount;
deadflamestatus:=deadflamestatus+1;//更新火焰状态
if (deadflamestatus=9 ) then
deadflamestatus:=0;//火焰完毕
end;
end;
[ 本帖最后由 海鱼 于 2008-11-16 19:35 编辑 ]
玩电脑游戏好象已经是十年前的事了,支持一下。
拿分。。。
海鱼,有空教我做一个。
本来不喜欢玩游戏的,基于是海鱼的作品,支持一下,玩了,很好玩。继续加油!!
下载,试玩了一下,不错
支持下,为了顶贴
海鱼是编程高手啊!:handshake
的确好玩。:lol
:loveliness: wo b u you xi d
不会玩,海鱼教教!tzm581