summary refs log tree commit diff stats
Commit message (Collapse)AuthorAgeFilesLines
* Added a UIPageControl to the level selection screen selection_screenStarla Insigna2011-08-235-3/+21
| | | | | | 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
* Added scrolling to level selection screenStarla Insigna2011-08-2312-27/+360
| | | | | | | | 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
* Added borders to level selection imagesStarla Insigna2011-08-2210-277/+253
| | | | | | | | | | 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
* Made game mode selections tappableStarla Insigna2011-08-183-7/+37
| | | | | | | | | | 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
* Started game mode selection screenStarla Insigna2011-08-1815-11/+469
| | | | | | 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
* Renamed project to "Cartographic"Starla Insigna2011-08-183-14/+14
| | | | Closes #206
* Fixed "Game Over" tutorial bubble related bugsStarla Insigna2011-08-171-14/+31
| | | | | | 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
* Made tutorial replayableStarla Insigna2011-08-179-42/+22
| | | | Closes #202
* Fixed game over transitionStarla Insigna2011-08-154-43/+43
| | | | Fixes #189
* Added automatic versioningStarla Insigna2011-08-133-71/+74
| | | | | | 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.
* Added tutorial modeStarla Insigna2011-08-1220-348/+792
| | | | | | | | 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
* Prepared Cart Collect for legitimate developmentStarla Insigna2011-08-102-17/+94
| | | | 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.
* Abstracted a lot of GameLayer's functionality outStarla Insigna2011-08-0923-178/+374
| | | | | | | | 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
* Disabled autorotationStarla Insigna2011-08-091-1/+1
| | | | | | 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
* Implemented tutorial bubblesStarla Insigna2011-08-079-115/+329
| | | | | | | | 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
* Fixed highscore viewer bugStarla Insigna2011-08-011-1/+2
| | | | | | 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
* Initial commit (version 0.2.1)Starla Insigna2011-07-30273-0/+55001