ftp.nice.ch/pub/next/games/network/Splat.1.0.s.tar.gz#/Splat-1.0/Rules.h

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

/*
 * Rules
 * description: abstract superclass for a rules object for board games
 * history:
 *	2/15/93 [Erik Kay] - created
 *	6/13/93	[Erik Kay] - made into abstract superclass
 */

#import <appkit/appkit.h>
#import "Board.h"

@interface Rules:Object
{
    Board * initialBoard;
    move_list possible_moves;
}

- (List *)validMoves:(Board *)b forPlayer:(square_state)piece;
- (BOOL)validMove:(move *)mv onBoard:(Board *)b;
- doMove:(move *)mv onBoard:(Board *)b;
- (Board *)undoMove:(move_list *)mvlist;
- setInitialBoard:(Board *)b;
- (BOOL)gameOver:(Board *)b forPlayer:(square_state)player;
- winner:game;

@end

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