ftp.nice.ch/Attic/openStep/games/Solitaire.3.1.s.tgz#/Solitaire.3.1/Games/Pyramid/Pyramid.h

This is Pyramid.h in view mode; [Download] [Up]

/* indent:4  tabsize:8  font:fixed-width */

/*---------------------------------------------------------------------------
|----------------------------------------------------------------------------
|
|    Pyramid:GameModule
|
|    Pyramid solitaire module.
|
|    CREDITS
|
|    Gary Ritchie<gary@uaneuro.uah.ualberta.ca>
|        -- design, implementation, documentation
|
|----------------------------------------------------------------------------
\---------------------------------------------------------------------------*/


#import <AppKit/AppKit.h>
#import <Solitaire/GameModule.h>

@class CardPileView;

#define IBOutlet


@interface Pyramid:GameModule
{
    id gameDelegate;
    id wasteDelegate;
    id stockDelegate;
    id discardDelegate;
    
    IBOutlet CardPileView* stockCardPileView;	/* stock pile */
    IBOutlet CardPileView* wasteCardPileView;	/* waste pile */
    IBOutlet CardPileView* discardCardPileViewL;/* left pile holding matching pairs */
    IBOutlet CardPileView* discardCardPileViewR;/* right pile holding matching pairs */
    
    id gamePileGroupView;	/* a group of the following 28 pileViews */
    IBOutlet  CardPileView* 	gamePileView1;	/* pyramid piles, starting at the top point */
    IBOutlet CardPileView* 	gamePileView2;
    IBOutlet CardPileView* 	gamePileView3;
    IBOutlet CardPileView* 	gamePileView4;
    IBOutlet CardPileView* 	gamePileView5;
    IBOutlet CardPileView* 	gamePileView6;
    IBOutlet CardPileView* 	gamePileView7;
    IBOutlet CardPileView* 	gamePileView8;
    IBOutlet CardPileView* 	gamePileView9;
    IBOutlet CardPileView* 	gamePileView10;
    IBOutlet CardPileView* 	gamePileView11;
    IBOutlet CardPileView* 	gamePileView12;
    IBOutlet CardPileView* 	gamePileView13;
    IBOutlet CardPileView* 	gamePileView14;
    IBOutlet CardPileView* 	gamePileView15;
    IBOutlet CardPileView* 	gamePileView16;
    IBOutlet CardPileView* 	gamePileView17;
    IBOutlet CardPileView* 	gamePileView18;
    IBOutlet CardPileView* 	gamePileView19;
    IBOutlet CardPileView* 	gamePileView20;
    IBOutlet CardPileView* 	gamePileView21;
    IBOutlet CardPileView* 	gamePileView22;
    IBOutlet CardPileView* 	gamePileView23;
    IBOutlet CardPileView* 	gamePileView24;
    IBOutlet CardPileView*  gamePileView25;
    IBOutlet CardPileView* 	gamePileView26;
    IBOutlet CardPileView* 	gamePileView27;
    IBOutlet CardPileView* 	gamePileView28;

    CardPile* 		prevDeck;		// for implementing "restart game" option
    CardPileView* 	gameCardPiles[28];       // array'd references to above 28 views

    int dealCount;              // number of passes through the stock pile
                                // "1" indicates we are on the first pass
    BOOL gameInProgress;        // TRUE unless user has won/lost game
    BOOL pyramidEmpty;
}

/*" Our single instance "*/
+ (Pyramid*) sharedInstance;

/*" Initialization/deallocation "*/
- initFromBundle:(NSBundle*)aBundle withName:(NSString*)name;

/*" Game specific "*/
- (void) setupGame:(BOOL)redeal;

- (int) dealCount;
- (void) setDealCount:(int)count;
- (void) incDealCount;
- (void) determineScore;

@end

These are the contents of the former NiCE NeXT User Group NeXTSTEP/OpenStep software archive, currently hosted by Netfuture.ch.