All pastes #470587 Raw Edit

Mine

public text v1 · immutable
·published 2007-05-04 11:12 UTC
rendered paste body
#import <Cocoa/Cocoa.h>
#import "Board.h"

@interface Piece : NSObject {
	int owner;			/*
					 	 *  Specifies the owner of the piece, 
						 *	0 == white 
						 *	1 == black
						 */
	BOOL moved;			// Has the piece moved?												
	BOOL diagonal;		// Allows the piece to move diagonally.	
	BOOL horizontal;
	BOOL vertical;
	BOOL forward_only;	// Restricts the piece to forward movement only				
	BOOL special; 		// Used for moves like castling, en passant 							
	int max_diagonal;	// Use to set restrictions on diagonal movement						
	int max_horizontal;	
	int max_vertical;
	int x;				// Stores the current location x of the piece on the board
	int y;
	BOOL selected;
	int mover_int;
	BOOL can_jump;		// Since most pieces can't jump, this is set to NO by default in
						// Piece.m, call -(void) set_can_jump to set to YES.
}

// init variables

-(void) initVar;

// Getters

-(BOOL) can_jump;
-(BOOL) selected;
-(int) owner;
-(BOOL) moved;
-(BOOL) diagonal;
-(BOOL) horizontal;
-(BOOL) vertical;
-(BOOL) forward_only;
-(BOOL) special;
-(int) max_diagonal;
-(int) max_horizontal;
-(int) max_vertical;
-(int) x;
-(int) y;


// Setters

-(void) set_can_jump;
-(void) set_selected;
-(void) set_deselected;
-(void) set_owner: (int) new_owner;
-(void) set_moved;
-(void) set_diagonal: (BOOL) yn;
-(void) set_horizontal: (BOOL) yn;
-(void) set_vertical: (BOOL) yn;
-(void) set_forward_only: (BOOL) yn;
-(void) set_special: (BOOL) yn;
-(void) set_max_diagonal: (int) max;
-(void) set_max_horizontal: (int) max;
-(void) set_max_vertical: (int) max;
-(void) set_x: (int) new_x 
		and_y: (int) new_y;

// Do'ers

-(id) init_with_owner: (int) own	
			 and_diag: (BOOL) diag				
			  and_hoz: (BOOL) hoz				
			 and_vert: (BOOL) vert				
			and_fonly: (BOOL) fonly				
			and_specl: (BOOL) specl				 
			 and_maxd: (BOOL) maxd 
			 and_maxh: (BOOL) maxh 
			 and_maxv: (BOOL) maxv 
				and_x: (BOOL) newx 
				and_y: (BOOL) newy;					
-(BOOL) move_diagonal_x: (int) new_x 
				  and_y: (int) new_y;
-(BOOL) move_horizontal_x: (int) new_x 
					and_y: (int) new_y;
-(BOOL) move_vertical_x: (int) new_x 
				  and_y: (int) new_y;
-(BOOL) move_x: (int) new_x						// Method does nothing until over-ride
		 and_y: (int) new_y;					
-(void) print;
-(void) piece_usage;							// Method does nothing until over-ride
-(*Path) find_diagonal_path_x: (int) newx 
						and_y: (int) newy;
-(*Path) find_horizontal_path_x: (int) newx 
						  and_y: (int) newy;
-(*Path) find_vertical_path_x: (int) newx 
						and_y: (int) newy;
-(*Path) find_path_x: (int) newx 
			   and_y: (int) newy;

@end