home *** CD-ROM | disk | FTP | other *** search
/ NEXT Generation 27 / NEXT27.iso / pc / demos / emperor / dx3.exe / SDK / SAMPLES / ROCKEM / CONTROL.H < prev    next >
C/C++ Source or Header  |  1996-08-28  |  1KB  |  73 lines

  1. /*==========================================================================
  2.  *
  3.  *  Copyright (C) 1995, 1996 Microsoft Corporation. All Rights Reserved.
  4.  *
  5.  *  File: control.h
  6.  *
  7.  ***************************************************************************/
  8.  
  9. #ifndef __CONTROL_H_
  10. #define __CONTROL_H_
  11.  
  12. // Type to define what app is currently doing
  13. typedef enum
  14. {
  15.     DOING_INTRO,
  16.     PLAYING_DEMO,
  17.     BETWEEN_CAM_VIEWS,
  18. }
  19. AppState;
  20.  
  21. // Type to define what state the opponent is in
  22. typedef enum
  23. {
  24.     DEFENSIVE,
  25.     CAUTIOUS,
  26.     AGGRESSIVE,
  27. }
  28. PlayerState;
  29.  
  30. // Type to define what kind of camera angles were using
  31. typedef enum
  32. {
  33.     OVER_SHOULDER,
  34.     BOTH_IN_VIEW,
  35.     PILOT_VIEW,
  36. }
  37. CameraState;
  38.  
  39. // Type to define what action the player is doing
  40. typedef enum
  41. {
  42.     BOBBING,
  43.     WALKING,
  44.     PUNCHING,
  45.     BLOCKING,
  46.     BEEN_HIT,
  47.     DEAD,
  48.     VICTORY,
  49.     DISABLED,
  50. }
  51. PlayerActionState;
  52.  
  53. // Structures
  54. struct AnimArgs
  55. {
  56.     LPDIRECT3DRMANIMATIONSET    lpAnimSet;
  57.     D3DVALUE                    time;
  58. };
  59.  
  60. void Player1AnimationCallback(LPDIRECT3DRMFRAME obj, void* arg, D3DVALUE delta);
  61. void Player2AnimationCallback(LPDIRECT3DRMFRAME obj, void* arg, D3DVALUE delta);
  62.  
  63. void CheckInputAndUpdate();
  64. void UpdateOpponent();
  65. void UpdateDebris();
  66. void RunIntro();
  67. void PositionCamera();
  68. void TransitionCamera();
  69. void AddDebris(D3DVECTOR vOrg, D3DVECTOR vVel, LPDIRECT3DRMMESHBUILDER pDebris);
  70.  
  71. #endif
  72.  
  73.