home *** CD-ROM | disk | FTP | other *** search
/ Usenet 1994 January / usenetsourcesnewsgroupsinfomagicjanuary1994.iso / sources / games / volume13 / okbridge / part07 / scoring.h < prev    next >
C/C++ Source or Header  |  1992-01-12  |  3KB  |  90 lines

  1. /* scoring.h -- scoring functions for the bridge program.
  2.  ! 
  3.  ! Copyright (C) 1990,1991 by Matthew Clegg
  4.  ! 
  5.  ! This program may be copied and distributed freely.  Please do not
  6.  ! charge money for this program or for any program derived from it.
  7.  ! If you modify this program, then include a notice stating plainly
  8.  ! that your program is derived from the okbridge program and is not
  9.  ! the same as the official okbridge program.
  10.  !
  11.  ! I welcome any suggestions for improvement to okbridge, and 
  12.  ! I would be especially happy to receive improved source code.
  13.  ! If you have comments or suggestions, or if you would like to
  14.  ! join the okbridge mailing list, then write to
  15.  !
  16.  !   mclegg@cs.ucsd.edu
  17.  !
  18.  *
  19.  * This file defines the functions used for computing scores.
  20.  * We provide functions for scoring according to the rules of
  21.  * rubber bridge as well as according to the rules of Chicago style
  22.  * bridge.  Instead of being passed parameters, these functions
  23.  * obtain most of their information from the global variables
  24.  * defined in globals.h.
  25.  *
  26.  * I would like to thank Tom Kronmiller for supplying the code
  27.  * for scoring according to the Chicago rules.  Thanks Tom!
  28.  */
  29.  
  30.  
  31. extern int Rubber_score_above ();
  32. /* int Rubber_score_above (int extra); */
  33. /* Computes the above-the-line score for the current contract assuming
  34.  * that 'extra' many tricks below the required number were taken.
  35.  * Returns the score.
  36.  */
  37.  
  38. extern int Rubber_score_below ();
  39. /* int Rubber_score_below (void); */
  40. /* Computes the below-the-line score for the current contract,
  41.  * assuming that it was made.
  42.  */
  43.  
  44. extern int Rubber_score_set ();
  45. /* int Rubber_score_set (int down); */
  46. /* Computes the penalty score for the current contract assuming that
  47.  * 'down' too few tricks were taken.  Returns the score.
  48.  */
  49.  
  50. extern int Chicago_score_made ();
  51. /* int Chicago_score_made (int extra, int vulnerable); */
  52. /* Computes the score for the current contract assuming that it was made
  53.  * and that an additional 'extra' tricks were taken.  'vulnerable' is a
  54.  * boolean flag which indicates whether the declaring team was
  55.  * vulnerable.  Part_score is the 'part score' of the declaring team.
  56.  * The scoring is the same as for rubber bridge, except that bidding and
  57.  * making a game is worth 300 nonvulnerable or 500 vulnerable.
  58.  * Returns the score.
  59.  *
  60.  * Based on code written by Tom Kronmiller
  61.  */
  62.  
  63. extern int Chicago_score_set ();
  64. /* int Chicago_score_set (int down, int vulnerable); */
  65. /* Computes the score for the current contract assuming that it was
  66.  * set and that 'down' too few tricks were taken.  'vulnerable' is
  67.  * a boolean flag which indicates whether the declaring team was
  68.  * vulnerable.  Returns the score.
  69.  *
  70.  * Based on code written by Tom Kronmiller
  71.  */
  72.  
  73. extern int Duplicate_score_made ();
  74. /* int Duplicate_score_made (int extra, int vulnerable); */
  75. /* Computes the score for the current contract assuming that it was made
  76.  * and that an additional 'extra' tricks were taken.  'vulnerable' is a
  77.  * boolean flag which indicates whether the declaring team was
  78.  * vulnerable.  Returns the score.
  79.  */
  80.  
  81. extern int Duplicate_score_set ();
  82. /* int Duplicate_score_set (int down, int vulnerable); */
  83. /* Computes the score for the current contract assuming that it was
  84.  * set and that 'down' too few tricks were taken.  'vulnerable' is
  85.  * a boolean flag which indicates whether the declaring team was
  86.  * vulnerable.  Returns the score.
  87.  */
  88.  
  89.  
  90.