/* @(#) 1.4 com/src/samples/cardgame/iodcard.hpp, odcardgamepart, od96nt, odnt9712d 11/5/96 18:12:36 [3/21/97 17:40:15] */
/*====START_GENERATED_PROLOG======================================
 */
/*
 *   COMPONENT_NAME: odother
 *
 *   CLASSES: none
 *
 *   ORIGINS: 82,27
 *
 *
 *   (C) COPYRIGHT International Business Machines Corp. 1995,1996
 *   All Rights Reserved
 *   Licensed Materials - Property of IBM
 *   US Government Users Restricted Rights - Use, duplication or
 *   disclosure restricted by GSA ADP Schedule Contract with IBM Corp.
 *   	
 *   IBM DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE, INCLUDING
 *   ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
 *   PURPOSE. IN NO EVENT SHALL IBM BE LIABLE FOR ANY SPECIAL, INDIRECT OR
 *   CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF
 *   USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR
 *   OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE
 *   OR PERFORMANCE OF THIS SOFTWARE.
 */
/*====END_GENERATED_PROLOG========================================
 */

#define FAILURE 0
#define SUCCESS 1
#define NULLDESC {typeNull, kODNULL}

const ODType   kPartHandlerName         = "CardGame";
const ODType   kPartHandlerDisplayName  = "Card Game";
const ODType   kKindCardGamePart        = "CardGame";
const ODType   kKindBitmapPart          = "Bitmap";
const ODType   kCardGameKindDisplayName = "Card Game";
const ODType   kSampleCategory          = "Sample";
#ifdef _PLATFORM_OS2_
const ODType   kSampleCategoryDisplayName = "IBM OpenDoc for OS/2 Sample";
#endif
#ifdef _PLATFORM_WIN32_
const ODType   kSampleCategoryDisplayName = "IBM OpenDoc for Windows Sample";
#endif

const ODType   kCardGameDataValue       = "Card Game Data";
const ODType   kCardGameFileName        = "iodcard.dll";
const ODType   kCardBitmapsPath         = "Cards\\";
const ODType   kCardGameSrcPath         = "src\\cardgame\\";

#ifdef _LEFT_TO_PORT_
const ODType   kLinkInfoData            = "DrgDrp Link";
const ODType   kCardGameLinkData        = "Card Game Link Data";
#endif


#define BLACKJACK      0
#define STUD_5_POKER   1
#define STUD_7_POKER   2
#define DRAW_POKER     3

#define BLANK          0
#define JACK           11
#define QUEEN          12
#define KING           13
#define ACE            14

#define HIGH_CARD      0
#define PAIR           1000
#define TWO_PAIR       2000
#define THREE_OF_KIND  3000
#define STRAIGHT       4000
#define FLUSH          5000
#define FULL_HOUSE     6000
#define STRAIGHT_FLUSH 7000
#define FOUR_OF_KIND   8000
#define ROYAL_FLUSH    9000

#define CARDS_1_TO_5   kODTrue
#define CARDS_6_TO_7   kODFalse
#define DISCARD        -1
#define MAX_DISCARDS   3

#define DEALER         0
#define PLAYER         1
#define DEFAULT5_WIDTH 540
#define DEFAULT7_WIDTH 740
#define DEFAULT_HEIGHT 410
#define RECT_X_POS     125
#define RECT_WIDTH     291
#define BUTTON_WIDTH   130
#define DISCARD_WIDTH  475
#define BUTTON_HEIGHT  25
#define DISCARD_HEIGHT 35
#define TITLE_X_POS    182
#define TITLE_WIDTH    175
#define TEXT_WIDTH     125
#define TEXT_LINK_WIDTH 80
#define TEXT_HEIGHT    27
#define LINK_X_POS     130
#define BET_X_POS      415
#define BUTTON1_X_POS  35
#define BUTTON2_X_POS  205
#define BUTTON3_X_POS  375
#define DISCARD_X_POS  35
#define CARD_WIDTH     84
#define CARD_HEIGHT    126
#define CARD_SPACE     16
#define CARD1_X_POS    28
#define CARD6_X_POS    528
#define ICON_WIDTH     32
#define ICON_HEIGHT    32

#ifdef _PLATFORM_OS2_
#define TEXT_Y_POS     0
#define TITLE_Y_POS    375
#define BUTTON_Y_POS   46
#define DISCARD_Y_POS  41
#define DEALER_Y_POS   230
#define PLAYER_Y_POS   90
#define ICON_Y_POS     368
#define GAMEICON_Y_POS 208
#endif
#ifdef _PLATFORM_WIN32_
#define TEXT_Y_POS     DEFAULT_HEIGHT-TEXT_HEIGHT
#define TITLE_Y_POS    DEFAULT_HEIGHT-TEXT_HEIGHT-375
#define BUTTON_Y_POS   DEFAULT_HEIGHT-BUTTON_HEIGHT-46
#define DISCARD_Y_POS  DEFAULT_HEIGHT-BUTTON_HEIGHT-46
#define DEALER_Y_POS   DEFAULT_HEIGHT-CARD_HEIGHT-230
#define PLAYER_Y_POS   DEFAULT_HEIGHT-CARD_HEIGHT-90
#define ICON_Y_POS     DEFAULT_HEIGHT-ICON_HEIGHT-368
#define GAMEICON_Y_POS DEFAULT_HEIGHT-ICON_HEIGHT-208
#endif

#define HEARTICON_X_POS   36
#define SPADEICON_X_POS   104
#define DIAMONDICON_X_POS 404
#define CLUBICON_X_POS    474
#define GAMEICON_X_POS    185

#define BET_LOWER_BOUND   1
#define BET_UPPER_BOUND   99
#define DEFAULT_BET       5
#define BLUFF_THRESHOLD   7

#define MIN_WINDOW_ID  5000
#define FRAME_ID       5000
#define TITLE_ID       5001
#define RECTANGLE_ID   5002
#define MONEY_ID       5003
#define POT_ID         5004
#define BET_ID         5005
#define BUTTON1_ID     5006
#define BUTTON2_ID     5007
#define BUTTON3_ID     5008
#define DISCARD_ID     5009
#define HEARTICON_ID   5010
#define DIAMONDICON_ID 5011
#define SPADEICON_ID   5012
#define CLUBICON_ID    5013
#define MONEY_LINK_ID  5014
#define GAMEICON_ID    5015
#define MAX_WINDOW_ID  5016

#define SET_DATA       6000
#define NEW_BITMAP     6001

#define BlackJackTitle "*** BlackJack ***"
#define PokerTitle     "*** Poker ***"
#define HitString      "Hit"
#define StandString    "Stand"
#define DoubleString   "Double Down"
#define NextBetString  "Change Next Bet..."
#define RaiseString    "Raise"
#define CallString     "Call"
#define DropString     "Fold"
#define DiscardString  "Discard"
#define NextAnteString "Change Next Ante..."
#define GameOverString "Game Over"
#define VictoryMessage "You Win!"
#define DefeatMessage  "You Lose."
#define BJackTieMsg    "Push! (Replay last bet)"
#define PokerTieMsg    "Tie! (Split pot)"
#define BankruptTitle  "Bankrupt!"
#define BankruptMsg    "You have run out of money! (Resetting Money to initial default)"
#define GameChange     "Game Change"
#define DealerPlay     "Dealer's Play"
#define DealerRaises   "Dealer Raises "
#define DealerCalls    "Dealer Calls."
#define DealerFoldMsg  "Dealer Folds!"
#define DiscardDetails "Click on cards to be discarded; when done, click on \"Discard\""
#define MaxDiscardMsg  "Maximum number of discards already reached!"
#define BetErrorMsg    "Bet out of bounds!"
#define NewBlackjack   "The next hand will be Blackjack"
#define New5StudPoker  "The next hand will be 5 Card Stud Poker"
#define New7StudPoker  "The next hand will be 7 Card Stud Poker"
#define NewDrawPoker   "The next hand will be 5 Card Draw Poker"

#define kCardGameBet       1
#define kCardGameAnte      2
#define kCardGameDouble    3
#define kCardGameBankrupt  4

#define SMALLICONSIZE     16
#define LARGEICONSIZE     32
#define THUMBNAILSIZE     64

#ifdef _PLATFORM_WIN32_
#define CLR_DARKGRAY      0x003F3F3F
#endif

