
Today’s code challenge is about being cool.
Problem Description:
A number is cool if it’s a multiple of 11 or if it is one more than a multiple of 11.
Return true if the given non-negative number is cool.

Today’s code challenge is about being cool.
Problem Description:
A number is cool if it’s a multiple of 11 or if it is one more than a multiple of 11.
Return true if the given non-negative number is cool.

Continuing our Swift 3 Challenges today’s challenge has to do with order.
Problem Description:
Given three ints, first, second, third, return true if
the second is greater than first, and third is greater than second.
However, with the exception that if the parameter “itsOk” is true,
second does not need to be greater than first but still better be less than third.

Another day, another Swift 3 puzzle. This one is about singing birds. Remember to try it before you look at my solution.
The problem description states:
The birds in Florida like to sing during favorable temperatures.
In particular, they sing if the temperature is between 60 and 90 (inclusive).
Unless it is summer, then the upper limit is 100 instead of 90.
Given an int temperature and a boolean isSummer,
return true if the birds are singing and false otherwise.

I’ve started doing code puzzles from CodingBat. CodingBat is a project by Nick Parlante, a computer science lecturer at Stanford. Continue reading

When creating a level we randomly select fruit for a tile. This “randomness” causes matches to pre-exist in a level when presented to a player. This would reduce the challenge of the puzzle and should not be the case. We can easily eliminate these match chains by updating the Level class. Continue reading

In order to provide a visual cue to the player the selected swiped fruit should be highlighted momentarily in order to indicate which fruit the player is about to swap. This selection highlighting animation can be achieved by temporarily placing a highlighted version of the sprite on top of the current sprite and having it along for the ride in the swap animation and eventually fading out. Continue reading

Having completed the swipe to swap it was time to update the model and animate the swap. This involved creating a new Swap struct. In Swift the struct is a value type versus a class which is a reference type. Here it makes sense to use a struct since the swap is inert and only stores data. The logic of handling the swap is not done by the swap itself. The detection of the swap is handled in the Game Scene and the real game logic is in the Game View Controller. Continue reading

The essence of the match-three game is to move fruits such that three fruits of the same type match up. This move is done with a swipe. The Game Scene is the best place for implementing the detection of the player’s swipes that will reposition the fruits into this match pattern. The reposition is called the swap. Recognizing these swipes to swap in SpriteKit is best done with the touchesBegan, touchesMoved, and touchesEnded functions. Continue reading

Once the model was viewable it was time to load levels from a file in order to enable dynamic patterns. The file needed to have a pattern defined so that every level isn’t just a 9×9 grid. This pattern would be best represented in an array of arrays or a 2D Array. That would most easily be stored in a JSON file. Continue reading

Seeing your App on device for the first time (or even in the simulator) can be an amazing feeling. That was my goal for today. After having the images and enough model classes it was time to invoke the model from the GameViewController. Continue reading