home *** CD-ROM | disk | FTP | other *** search
/ DOS/V Power Report 1999 February / VPR9902A.BIN / FFILLY / UG / chara.tfy < prev    next >
Text File  |  1998-04-30  |  4KB  |  117 lines

  1.  
  2.     // set ----------------------------------------------------------------
  3.   int setFrame( int i, int k ){
  4.     if ( i == 0 ) {
  5.       C_W[i]  = K_W[k];  C_H[i]  = K_H[k];
  6.       C_sX[i] = K_sX[k]; C_sY[i] = K_sY[k];
  7.     }
  8.     else {
  9.       C_W[i]  = K_W[k];  C_H[i]  = K_H[k];
  10.       C_sX[i] = C_PW[i] - ( K_sX[k] + K_W[k] );
  11.       C_sY[i] = K_sY[k];
  12.     }
  13.   } // method end
  14.  
  15.     // FB -----------------------------------------------------------------
  16.   int setFB( int f ){
  17.     if ( f == 0 ) { paintOrder[0] = 1; paintOrder[1] = 0;}
  18.     else          { paintOrder[0] = 0; paintOrder[1] = 1;}
  19.   } // method end
  20.  
  21.     // MOUSE --------------------------------------------------------------
  22.   int MouseDown( int i ){
  23.     int cx, cy;
  24.  
  25.     if ( C_AN[i] == AN_MOUNT ) { C_AN[i] = AN_MPUNCH; return; }
  26.  
  27.     cx = ASX + C_X[i] - hsVal;
  28.     cy = ASY + C_Y[i] - vsVal;
  29.     if ( i == 0 ) {
  30.       if ( MesP2 >= cx ) {
  31.         if ( MesP3 <= cy - 50 ) { C_AN[i] = AN_PUNCH; }
  32.         else if ( MesP3 >= cy + 50 )
  33.                                 { C_AN[i] = AN_KICK; }
  34.         else                    { C_AN[i] = AN_MOVE_G; }
  35.       }
  36.       else {
  37.         if ( MesP3 <= cy - 50 ) { C_AN[i] = AN_TUCKLE; }
  38.         else                    { C_AN[i] = AN_MOVE_B; }
  39.       }
  40.     }
  41.     else {
  42.       if ( MesP2 <= cx ) {
  43.         if ( MesP3 <= cy - 50 ) { C_AN[i] = AN_PUNCH; }
  44.         else if ( MesP3 >= cy + 50 )
  45.                                 { C_AN[i] = AN_KICK; }
  46.         else                    { C_AN[i] = AN_MOVE_G; }
  47.       }
  48.       else {
  49.         if ( MesP3 <= cy - 50 ) { C_AN[i] = AN_TUCKLE; }
  50.         else                    { C_AN[i] = AN_MOVE_B; }
  51.       }
  52.     }
  53.   } // method end
  54.  
  55.     // KEY ----------------------------------------------------------------
  56.   int KeyDown( int i ){
  57.     int n;
  58.     if ( i == 0 ) { n = 1; } else { n = 0; }
  59.     // STAND
  60.     if ( C_AN[i] == AN_WAIT ) {
  61.       if ( MesP2 == 0x27 ){  // →
  62.         if ( i == 0 ) { C_AN[i] = AN_MOVE_G; }
  63.         else          { C_AN[i] = AN_MOVE_B; }
  64.       }
  65.       else if ( MesP2 == 0x25 ){  // ←
  66.         if ( i == 0 ) { C_AN[i] = AN_MOVE_B; }
  67.         else          { C_AN[i] = AN_MOVE_G; }
  68.       }
  69.       else if ( MesP2 == 90 ) { C_AN[i] = AN_PUNCH; }  // Z
  70.       else if ( MesP2 == 88 ) { C_AN[i] = AN_KICK; }   // X
  71.       else if ( MesP2 == 67 ) { C_AN[i] = AN_TUCKLE; } // C
  72.     }
  73.     // MOUNT
  74.     else {
  75.       if ( C_AN[i] == AN_MOUNT ) { C_AN[i] = AN_MPUNCH; }
  76.     }
  77.   } // method end
  78.  
  79.     // CPU ----------------------------------------------------------------
  80.   int runCPU( int i, int type ){
  81.     int n;
  82.     int ct, r, last;
  83.     if ( i == 0 ) { n = 1; } else { n = 0; }
  84.     ct = 0; last = 0;
  85.  
  86.     mes( TIME ) {
  87.       if ( gStatus == GS_END || gStatus == GS_DEMO ) { del_me; } // END
  88.       if ( gStatus == GS_PLAY ) {
  89.         step( 10 ){
  90.           ct = ct +1;
  91.           if ( C_AN[i] == AN_WAIT && ( ct >= 3 || Random( 2 ) == 0 ) ) {
  92.             ct = 0;
  93.             if ( 200 < C_X[1] - C_X[0] ) {
  94.               r = Random( 5 );
  95.               if      ( r <  3 ) { C_AN[i] = AN_MOVE_G; last = C_AN[i]; }
  96.               else if ( last != AN_MOVE_B )
  97.                                  { C_AN[i] = AN_MOVE_B; last = C_AN[i]; }
  98.               else               { C_AN[i] = AN_MOVE_G; last = C_AN[i]; }
  99.             }
  100.             else {
  101.               r = Random( 7 );
  102.               if      ( r <= 1 ) { C_AN[i] = AN_PUNCH;  last = C_AN[i]; }
  103.               else if ( r <= 3 ) { C_AN[i] = AN_KICK;   last = C_AN[i]; }
  104.               else if ( r == 5 ) { C_AN[i] = AN_TUCKLE; last = C_AN[i]; }
  105.               else               { C_AN[i] = AN_MOVE_B; last = C_AN[i]; }
  106.             }
  107.           }
  108.         } // step end
  109.         step( 6 ) {
  110.           if( C_AN[i] == AN_MOUNT ){ C_AN[i] = AN_MPUNCH; last = C_AN[i]; }
  111.         }
  112.       } // if gStatus end
  113.     }
  114.   } // method end
  115.  
  116.  
  117.