This is Blackjack.h in view mode; [Download] [Up]
#import <appkit/appkit.h>
#import "../NEXTVegas/NEXTVegas.h"
#import "BJ.h"
@interface Blackjack:NVDealer
{
id dealerHandText;
id dealerTotalText;
id dealerHandView;
id drawView;
id drawPile;
int numDecks;
id dealButton;
id hitButton;
id standButton;
id doubleButton;
id splitButton;
id surrenderButton;
id hintButton;
id area1PButton;
id area2PButton;
id area3PButton;
id area4PButton;
id area1RemoveWin;
id area2RemoveWin;
id area3RemoveWin;
id area4RemoveWin;
id area1DButton;
id area2DButton;
id area3DButton;
id area4DButton;
id p1HandText;
id p1TotalText;
id p1HandView;
id p1BetView;
id p1InsuranceView;
id p1SplitHandView;
id p1SplitTotalText;
id p1SplitHandText;
id p1DefaultBetText;
id p2HandText;
id p2TotalText;
id p2HandView;
id p2BetView;
id p2InsuranceView;
id p2SplitHandView;
id p2SplitTotalText;
id p2SplitHandText;
id p2DefaultBetText;
id p3HandText;
id p3TotalText;
id p3HandView;
id p3BetView;
id p3InsuranceView;
id p3SplitHandView;
id p3SplitTotalText;
id p3SplitHandText;
id p3DefaultBetText;
id p4HandText;
id p4TotalText;
id p4HandView;
id p4BetView;
id p4InsuranceView;
id p4SplitHandView;
id p4SplitTotalText;
id p4SplitHandText;
id p4DefaultBetText;
id playerPileDelegate;
BJPlayer players[BJ_MAXPLAYERS+1];
// Status variables
int currentPlayer;
int currentHand;
BOOL gameInProgress;
int cardsToDeal;
BOOL dealerShouldFinishHand;
BOOL dealingCards;
// Sounds
id shuffleSound;
id drawSound;
// Preferences
id deckPrefButton;
id dealerHitPrefButton;
id doublePrefButton;
BOOL dealerHitSoft17;
id dealerHitSoft17Text;
BOOL canAlwaysDouble;
BOOL showTotal;
id showTotalButton;
id peakAtHoleButton;
BOOL peakAtHoleAlways;
id reshuffleText;
int reshuffleValue;
id betterHandButton;
BOOL canBetterHandAfterSplittingAces;
id clearTableText;
BOOL friendlyDealer;
id suggestMovesButton;
// Timed entry
DPSTimedEntry kludgeTE;
BOOL initialDeal;
// Debugging ids
id dbWindow;
id dbPnumText;
id dbCnumText;
id dbHnumText;
}
- initializeTable;
- newDeck:sender;
/***************************************************************************************
* Blackjack Methods *
***************************************************************************************/
// Game flow
- startGame;
- (int)getPlayers;
- clearHands;
- dealCards:(int)numCards;
- drawCardForPlayer:(int)playerNum forHand:(int)aHand faceUp:(BOOL)shouldBeUp;
- checkForInsurance;
- payInsuranceBets:(BOOL)shouldPay;
- checkCurrentPlayer;
- doDealersHand;
- setWinStatus;
- payOut;
- payOutForPlayer:(int)playerNum;
- endGame;
// Utility methods
- (BOOL)anyBetsOutsideLimits;
- enableBetViews:(BOOL)flag;
- enableDealButton;
- (BOOL)handIsSoft:(int)aHand forPlayer:(int)playerNum;
- (int)handTotalForPlayer:(int)playerNum forHand:(int)aHand;
- incrementHand;
- setDefaultBet:sender;
- placeDefaultBets;
- removeWinnings;
- playerDidSplit:(int)playerNum;
- (BOOL)playerWillSplit:(int)playerNum;
- updateTable;
- (int)getHintForCurrent;
- giveHintForCurrent:sender;
// Preferences/Defaults
- getPreferences:sender;
- revertPreferences:sender;
- setPreferences:sender;
// Target/Action methods
- deal:sender;
- doubleDown:sender;
- doubleDown;
- hit:sender;
- hit;
- split:sender;
- split;
- stand:sender;
- stand;
- surrender:sender;
- surrender;
- updatePButtons:sender;
- updatePlayerAreas:sender;
// debugging methods
- runDebug;
- dbReplaceCard:sender;
@end
These are the contents of the former NiCE NeXT User Group NeXTSTEP/OpenStep software archive, currently hosted by Netfuture.ch.