MemberStatus.cpp
上传用户:semy2100
上传日期:2013-01-22
资源大小:3633k
文件大小:2k
源码类别:

射击游戏

开发平台:

Visual C++

  1. /********************************************************************
  2. *                        空运爆发                                    *
  3. *                       Version 2.0                                  *
  4. * 本游戏全部代码由:                                                 *
  5. *                   冲天实验室   梁锋 编写                           *
  6. *                    邮箱:lenwine@126.com                           *
  7. *                bbs: http://free2.e-168.cn/lenwind (正在开发中...)  *
  8. **********************************************************************/
  9. //////////////////////////////////////////////////////////////////////
  10. #include "stdafx.h"
  11. bool MemberStatus::leaverect()//判断是否超出客户区,如果是则X Y 坐标为返回当前值
  12. {
  13. return GetX()<0 || GetY()<0 || GetX()+Bitlong >=mManager->Imglong-1 || GetY()+Bittall>=mManager->Imgtall-1;
  14. }
  15. bool MemberStatus::leaveline()
  16. {
  17. return x+Bitlong<0 || y+Bittall<0 || x>=mManager->Imglong || y>=mManager->Imgtall;
  18. }
  19. MemberStatus::MemberStatus(Manager *mgr,int xv,int yv)
  20. {
  21. //初始化时不作任何动作
  22. bx=0;
  23. by=0;
  24. Bitlong=0;
  25. Bittall=0;
  26. rx=0;
  27. ry=0;
  28. rlong=0;
  29. rtall=0;
  30. alive=1;
  31. alive2=1;
  32. shootpower=1;
  33. Work=true;
  34. spx=0;
  35. spy=0;
  36. x=xv;
  37. y=yv;
  38. mManager=mgr;
  39. }
  40. void MemberStatus::ChangePlace()
  41. {
  42. x-=Bitlong/2;
  43. if(x<0)
  44. x=0;
  45. else if(x+Bitlong-1>=mManager->Imglong)
  46. x=mManager->Imglong-Bitlong;
  47. if(y<0)
  48. y=y-Bittall;
  49. else
  50. y-=Bittall/2;
  51. }
  52. void MemberStatus::Update()
  53. {
  54. if(alive>0)
  55. {
  56. x+=spx*mManager->GetTs();
  57. y+=spy*mManager->GetTs();
  58. }
  59. mManager->PrintMember(this);
  60. }
  61. void MemberStatus::Update2()
  62. {
  63. if(alive2>0)
  64. {
  65. x+=spx*mManager->GetTs();
  66. y+=spy*mManager->GetTs();
  67. }
  68. mManager->PrintMember(this);
  69. }