| Commit message (Collapse) | Author | Age | Files | Lines |
... | |
| |
| |
| |
| |
| |
| | |
I'm not really sure how, though I suspect it has something to do with the onEnterTransitionDidFinish and onExit methods, but this seems to fix the bug in which tapping on Collect immediately after playing Tutorial would cause Tutorial to play again.
Fixes #208
|
|\ \
| | |
| | |
| | | |
Closes #207
|
| | |
| | |
| | |
| | | |
See https://testflightapp.com/sdk/doc/
|
| | |
| | |
| | |
| | |
| | |
| | | |
The page control updates when you swipe through the levels, but tapping it does nothing. I initially attempted to implement scrolling by tapping on the page control, but for some reason, it worked perfectly in the simulator and only randomly on the iPhone. Very weird.
Refs #207
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
Using http://www.xcombinator.com/2010/09/08/a-paging-uiscrollview-in-cocos2d-with-previews/ as a base, I was able to implement a paging scroller for the level selection screen so players can swipe through available levels and choose one to play.
At this point, the level selection screen is practically done--the only other thing I want to add is a UIPageControl to interact with the scrolling and give the player an indication of how many levels there are.
Refs #207
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
The image for each level selection now has a tutorial bubble-esque border around it, which was achieved using image masking. The border is included in the graying-out effect when the image is being tapped, and it is also included in the grayscaling when the level is not yet unlocked.
Also rewrote most of the selection drawing code. The titles are now drawn above the image, with Quartz instead of Cocos2D. The highscore label is also drawn with Quartz, though it is still below the image. The unlock condition label no longer appears, and instead, locked levels are now tappable and tapping them shows an alert view containing the unlock condition. Will probably be changed to be more elegant later.
Really, the biggest thing left before the selection screen is done is the ability to scroll through levels. The background also needs changing, but that will come later once I recruit a graphics designer. :P
Refs #207
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
Both the Tutorial and Collect game mode selections can now be tapped to start playing the mode. Holding your finger down on a game mode darkens the image, to give the player feedback on the fact that they are touching a button. This only applies to unlocked game modes--not-yet-unlocked game modes are just sprites, not buttons, and do not react to touch. Note that the game mode does not yet transition in with the zoom in/fade in transition combo that is specified in the ticket.
Also fixed a bug that would, if the player hadn't yet unlocked Collect and then played the Tutorial, continue to show the grayscale Collect image even though the button was completely working and tappable.
Also changed Tutorial Mode to bring the player to the game mode selection screen upon completion instead of the main menu.
Refs #207
|
|/ /
| |
| |
| |
| |
| | |
So far, tapping "New Game" shows a screen with two game modes: the tutorial and the classic collect. They both have pictures and Collect's is grayscale if it hasn't been unlocked yet (a.k.a. the tutorial hasn't been completed yet). Also, Collect's title is replaced with question marks and the text "Beat the tutorial!" is shown if it isn't unlocked--if it is unlocked, the player's highscore, if they have one, is shown. A "Back to Main Menu" button is also present. Neither selection is as of yet tappable, and neither picture yet has a border. You cannot scroll through modes yet either.
Refs #207
|
| |
| |
| |
| | |
Closes #206
|
|/
|
|
|
|
| |
Previously, Tutorial Mode decided whether to display the "Game Over" bubble in the setLives method, which is called before the FallingObjectDelegate methods. This caused two bugs: A) showing a tutorial bubble pauses the scheduler and the didMissItem method would under certain circumstances attempt to schedule a delayed action, causing the game to stop processing the tick and jump to showing the tutorial bubble without removing the falling object. When the tutorial bubble got dismissed, tick would be restarted and the player would lose another life. B) didDestroyItem under certain circumstances would attempt to show a tutorial bubble and if the "Game Over" tutorial bubble had already been set, it would be overwritten with the new tutorial bubble, resulting in the "Game Over" tutorial bubble never being shown. Both of these bugs have been fixed by moving the "Game Over" bubble code out of setLives and into didDestroyItem.
Fixes #203, #205
|
|
|
|
| |
Closes #202
|
|
|
|
| |
Fixes #189
|
|
|
|
|
|
| |
A shell script that is run before building now automatically sets the build number of the package to the current revision number, plus a value that increments on every build if the code is dirty (a.k.a. has been modified since being committed).
Also changed the project to automatically use the correct provisioning profile when codesigning instead of having to change it every time the provisioning profile changed.
|
|
|
|
|
|
|
|
| |
GameLayer was also renamed to ClassicGameMode and its pause functionality and score/lives counters were moved out to GameMode. FallingObjectDelegate was created to allow for custom code to be run when items were caught/missed, something that is used extensively by tutorial mode.
Important: Cart Collect's bundle identifier was changed in this revision from com.fourisland.Cart-Collect to com.apatheticink.Cart-Collect, so ensure that before attempting to compile/run this build, you clear your build directory and remove the old version of Cart Collect from your device.
Closes #193
|
|
|
|
| |
Previously, as we did not possess an Apple Developer Account, Cart Collect was configured to easily allow jailbroken development and testing. However, as we now have a developer account, this is no longer necessary and Cart Collect has been configured to codesign legitimately.
|
|
|
|
|
|
|
|
| |
In order to prepare for tutorial mode (and eventually, the other game modes), a lot of GameLayer's functionality (reading the accelerometer, moving the cart, moving falling objects, reacting to collisions…) has been abstracted out to FallingObject and subclasses of FallingObject, as well as a new Cart class, and GameMode, a new superclass of GameLayer. The only things that were not abstracted out that probably will be in the future are the pause functionality and the tutorial bubble functionality (which will in fact be moved to the tutorial mode class).
A lot of work was also done to cut down on compiler warnings and a lot of #imports were moved from header files to implementation files because I realized THAT'S HOW YOU'RE SUPPOSED TO DO IT.
Refs #193
|
|
|
|
|
|
| |
Interesting to note is that, for some reason, the code is calling Landscape Left "Landscape Right". This worries me and makes me think that either I'm not quite sure about the names of the orientations, or that my code is doing something weird.
Fixes #194
|
|
|
|
|
|
|
|
| |
GameLayer now has support for pausing game flow and displaying a tutorial bubble that the user can tap to dismiss. No code has been written, however, to make use of this, because I think it may be simpler to abstract GameLayer out somewhat and create a separate game mode for the tutorial. Deliberation required.
PauseLayer has also been removed and the behavior has been brought into GameLayer.
Refs #193
|
|
|
|
|
|
| |
For some reason, the cocos2d controller doesn't like being set as the root view controller, it just likes having its view added to the window as a subview, so that is now what is done.
Fixes #191
|
|
|