您好,欢迎光临本网站![请登录][注册会员]  
文件名称: 用vc++编写的俄罗斯方块游戏
  所属分类: C++
  开发工具:
  文件大小: 3mb
  下载次数: 0
  上传时间: 2011-04-13
  提 供 者: JYMZ*****
 详细说明: int CIBrick::shiftLeft (CBin*bin) { unsigned int posX; posX=getPosX(); posX=posX-1; setPosX(posX); if(checkCollision(bin)==0) { setPosX(posX+1); return 0; } return 1; } int CIBrick::shiftDown (CBin*bin) { unsigned int posY; posY=getPosY(); posY=posY+1; setPosY(posY); if (checkCollision(bin)==0) { setPosY(posY-1); return 0; } return 1; } int CIBrick::shiftRight (CBin*bin) { unsigned int posX; posX =getPosX(); posX=posX+1; setPosX(posX); if(checkCollision(bin)==0) { setPosX(posX-1); return 0; } return 1; } int CIBrick::rotateClockwise(CBin*bin) { unsigned int orientation,oldOrientation; orientation=getOrientation(); oldOrientation=orientation; if (orientation==3) orientation=0; else orientation=orientation+1; setOrientation(orientation); if(checkCollision(bin)==0) { setOrientation(oldOrientation); return 0; } return 1; } int CIBrick::checkCollision(CBin*bin) { unsigned int width; unsigned int height; unsigned char**image; unsigned int orientation; unsigned int posX; unsigned int posY; width=bin->getWidth(); height=bin->getHeight(); image=new unsigned char* [height]; for(unsigned int i=0;igetImage(image); orientation=getOrientation(); posX=getPosX(); posY=getPosY(); if (orientation==0) { if((posX+1<1)||(posX>width-1)||(posY<1)||(posY+2>height-1)) return 0; if((image[posY-1][posX]!=0)||(image[posY][posX]!=0)||(image[posY+1][posX]!=0)||(image[posY+2][posX]!=0)) return 0; } if(orientation==1) { if ((posX<2)||(posX+1>width-1)||(posY+1)<1||(posY>height-1)) return 0; if ((image[posY][posX-2]!=0)||(image[posY][posX-1]!=0)||(image[posY][posX]!=0)||(image[posY][posX+1]!=0)) return 0; } if (orientation==2) { if((posX+1<1)||(posX>width-1)||(posY<2)||(posY+1>height-1)) return 0; if ((image[posY-2][posX]!=0)||(image[posY-1][posX]!=0)||(image[posY][posX]!=0)||(image[posY+1][posX]!=0)) return 0; } if (orientation==3) { if ((posX<1)||(posX+2>width-1)||(posY+1<1)||(posY>height-1)) return 0; if ((image[posY][posX-1]!=0)||(image[posY][posX]!=0)||(image[posY][posX+1]!=0)||(image[posY][posX+2]!=0)) return 0; } return 1; } void CIBrick::operator>>(unsigned char** binImage) { unsigned int orientation ; unsigned int posX; unsigned int posY; unsigned char colour; posX=getPosX(); posY=getPosY(); orientation=getOrientation(); colour=getColour(); if(orientation==0) { binImage[posY-1][posX]=colour; binImage[posY][posX]=colour; binImage[posY+1][posX]=colour; binImage[posY+2][posX]=colour; } if(orientation==1) { binImage[posY][posX-2]=colour; binImage[posY][posX-1]=colour; binImage[posY][posX]=colour; binImage[posY][posX+1]=colour; } if (orientation==2) { binImage[posY-2][posX]=colour; binImage[posY-1][posX]=colour; binImage[posY][posX]=colour; binImage[posY+1][posX]=colour; } if (orientation==3) { binImage[posY][posX-1]=colour; binImage[posY][posX]=colour; binImage[posY][posX+1]=colour; binImage[posY][posX+2]=colour; } } void CIBrick::putAtTop(unsigned int newOrient,unsigned int newPosX) { setPosX(newPosX); setOrientation(newOrient); switch (newOrient) { case 0: setPosY(1);break; case 1: setPosY(0);break; case 2: setPosY(2);break; case 3: setPosY(0);break; } } int CLBrick::shiftLeft (CBin*bin) { unsigned int posX; posX=getPosX(); posX=posX-1; setPosX(posX); ...展开收缩
(系统自动生成,下载前可以参看下载内容)

下载文件列表

相关说明

  • 本站资源为会员上传分享交流与学习,如有侵犯您的权益,请联系我们删除.
  • 本站是交换下载平台,提供交流渠道,下载内容来自于网络,除下载问题外,其它问题请自行百度
  • 本站已设置防盗链,请勿用迅雷、QQ旋风等多线程下载软件下载资源,下载后用WinRAR最新版进行解压.
  • 如果您发现内容无法下载,请稍后再次尝试;或者到消费记录里找到下载记录反馈给我们.
  • 下载后发现下载的内容跟说明不相乎,请到消费记录里找到下载记录反馈给我们,经确认后退回积分.
  • 如下载前有疑问,可以通过点击"提供者"的名字,查看对方的联系方式,联系对方咨询.
 相关搜索: 俄罗斯方块游戏
 输入关键字,在本站1000多万海量源码库中尽情搜索: