cs193p – Assignment #2 Task #7

Please note, this blog entry is from a previous course. You might want to check out the current one.

Your Set game should have a Deal button, Score label and Flips label just like your playing card matching game from Assignment 1 does.

In story board copy the flip and the score label as well as the deal button from the game card view to the set card view and link them to the appropriate outlets in the set-card view controller.

The complete code is available on github.

FacebooktwitterredditpinterestlinkedintumblrmailFacebooktwitterredditpinterestlinkedintumblrmail

cs193p – Assignment #2 Task #6

Please note, this blog entry is from a previous course. You might want to check out the current one.

Instead of drawing the cards in the classic form (we’ll do that next week), we’ll use these three characters ▲ ● ■ and use attributes in NSAttributedString to draw them appropriately (i.e. colors and shading).

In story board change the title of the buttons from plain to attributed. Inside the update function generate an attributed strong from the card contents. Check if the current card is a set card and update the attributes using updateAttributedString:withAttributesOfCard:, which we will create next. Finally set the adjusted title off the button:
Continue reading “cs193p – Assignment #2 Task #6”

FacebooktwitterredditpinterestlinkedintumblrmailFacebooktwitterredditpinterestlinkedintumblrmail

cs193p – Assignment #2 Task #5

Please note, this blog entry is from a previous course. You might want to check out the current one.

Your Set game should have 24 cards.

Add 24 custom buttons in storyboard and link them to the cardButtons outlet and flipCard: action method in GameViewController (the parent of SetGameViewController):

cs193p - assignment #2 task #5
cs193p – assignment #2 task #5

Continue reading “cs193p – Assignment #2 Task #5”

FacebooktwitterredditpinterestlinkedintumblrmailFacebooktwitterredditpinterestlinkedintumblrmail

cs193p – Assignment #2 Task #4

Please note, this blog entry is from a previous course. You might want to check out the current one.

Choose reasonable amounts to award the user for successfully finding a set (or incorrectly picking cards which are not a set).

Create three new properties for CardMatchingGame to replace the previously used constants:

@property (nonatomic) int matchBonus;
@property (nonatomic) int mismatchPenalty;
@property (nonatomic) int flipCost;

Continue reading “cs193p – Assignment #2 Task #4”

FacebooktwitterredditpinterestlinkedintumblrmailFacebooktwitterredditpinterestlinkedintumblrmail

cs193p – Assignment #2 Task #3

Please note, this blog entry is from a previous course. You might want to check out the current one.

The Set game only needs to allow users to pick sets and get points for doing so (e.g. it does not redeal new cards when sets are found). In other words, it works just like your other card game (except that it is a 3 card (instead of 2 card) match with different kinds of cards).

In this task we create the actual cards and its deck … and hope that everything is ok because we will not able to test it till later (we could add some unit test, but …)

Similar to PlayingCard, add properties to hold the color, symbol, shading and number of symbols, and provide class methods to access its valid values:
Continue reading “cs193p – Assignment #2 Task #3”

FacebooktwitterredditpinterestlinkedintumblrmailFacebooktwitterredditpinterestlinkedintumblrmail

cs193p – Assignment #2 Task #2

Please note, this blog entry is from a previous course. You might want to check out the current one.

Don’t violate any of the Required Tasks from Assignment 1 in the playing card game tab (in other words, don’t break any non-extra-credit features from last week). The only exception is that your playing card game is required to be a 2-card-match-only game this week, so you can remove the switch or segmented control you added for Required Task #5 in Assignment 1. Your Set game is a 3-card matching game.

Start by moving “everything” which is not matching-card specific to common game view controller. Note that all property declarations need to be in the .h file as well as those methods you need to access from your subclasses and from storyboard (e.g. action methods).
Continue reading “cs193p – Assignment #2 Task #2”

FacebooktwitterredditpinterestlinkedintumblrmailFacebooktwitterredditpinterestlinkedintumblrmail

cs193p – Assignment #2 Task #1

Please note, this blog entry is from a previous course. You might want to check out the current one.

Add a tab bar controller to your application. One tab will be the game you built last week in Assignment 1. The other tab will be a new game, Set. Set is still a card game, so a good solution to this assignment will use object-oriented programming techniques to share a lot of code.

Start by creating a new view controller class GameViewController, and another one SetGameViewController which inherits from the first one. Make the first class also the parent class for the CardGameViewController:

#import "GameViewController.h"
@interface CardGameViewController : GameViewController

GameViewController will hold the “common parts” of the to card game view controllers …

The tab bar controller has already been added during lecture #5. Drag out an additional view controller and link it to the new SetGameViewController class.

The complete code is available on github.

FacebooktwitterredditpinterestlinkedintumblrmailFacebooktwitterredditpinterestlinkedintumblrmail