1 /* ----====----====----====----====----====----====----====----====----====----
4 JewelToy is a simple game played against the clock.
5 Copyright (C) 2001 Giles Williams
7 This program is free software; you can redistribute it and/or
8 modify it under the terms of the GNU General Public License
9 as published by the Free Software Foundation; either version 2
10 of the License, or (at your option) any later version.
12 This program is distributed in the hope that it will be useful,
13 but WITHOUT ANY WARRANTY; without even the implied warranty of
14 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
15 GNU General Public License for more details.
17 You should have received a copy of the GNU General Public License
18 along with this program; if not, write to the Free Software
19 Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
20 ----====----====----====----====----====----====----====----====----====---- */
22 #import <Cocoa/Cocoa.h>
26 @interface Game
: NSObject
29 NSMutableArray
*scoreBubbles
;
32 int sx1
,sy1
,sx2
,sy2
, hintx
, hinty
;
33 int _score
, _bonusMultiplier
, gemsFaded
;
41 @
property (readonly
) int _score
;
42 @
property (readonly
) int _bonusMultiplier
;
45 - (id
)initWithImagesFrom
:(NSArray
*)imageArray
;
46 - (id
)initWithSpritesFrom
:(NSArray
*)spriteArray
;
49 - (void)setImagesFrom
:(NSArray
*)imageArray
;
50 - (void)setSpritesFrom
:(NSArray
*)spriteArray
;
52 - (int)randomGemTypeAt
:(int)x
:(int)y
;
53 - (Gem
*)gemAt
:(int)x
:(int)y
;
54 - (NSMutableArray
*)scoreBubbles
;
56 - (void)setMuted
:(BOOL
)value
;
58 - (void)swap
:(int)x1
:(int)y1
and:(int)x2
:(int)y2
;
61 - (BOOL
)testForThreeAt
:(int)x
:(int)y
;
62 - (BOOL
)checkForThreeAt
:(int)x
:(int)y
;
63 - (BOOL
)finalTestForThreeAt
:(int)x
:(int)y
;
64 - (BOOL
)checkBoardForThrees
;
65 - (BOOL
)boardHasMoves
;
66 - (void)showAllBoardMoves
;
68 - (void)removeFadedGemsAndReorganiseWithImagesFrom
:(NSArray
*)imageArray
;
69 - (void)removeFadedGemsAndReorganiseWithSpritesFrom
:(NSArray
*)spriteArray
;
72 - (void)explodeGameOver
;
73 - (void)wholeNewGameWithImagesFrom
:(NSArray
*)imageArray
;
74 - (void)wholeNewGameWithSpritesFrom
:(NSArray
*)spriteArray
;
77 - (float)collectGemsFaded
;
78 - (void)increaseBonusMultiplier
;