Book Image

Monkey Game Development: Beginner's Guide

By : Michael Hartlef
Book Image

Monkey Game Development: Beginner's Guide

By: Michael Hartlef

Overview of this book

Monkey is a programming language and toolset that allows its user to develop modern 2D games easily for mobile and other platforms like iOS, Android, HTML5, FLASH, OSX, Windows and XNA. With Monkey you can create best selling games in a matter of weeks, instead of months.Monkey Game Development Beginner's Guide provides easy-to-follow step by step instructions on how to create eight different 2D games and how to deploy them to various platforms and markets. Learning about the structure of Monkey and how everything works together you will quickly create eight classical games and publish them to the modern app markets. Throughout the book you will learn important game development techniques like collision detection, handling player input with mouse, keyboard or touch events and creating challenging computer AI. The author explains how to emit particle effects, play sound and music files, use sprite sheets, load or save high-score tables and handle different device resolutions. Finally you will learn how to monetize your games so you can generate revenue.
Table of Contents (16 chapters)
Monkey Game Development
Credits
About the Author
About the Reviewers
www.PacktPub.com
Preface
3
Game #2, Rocket Commander
4
Game #3, CometCrusher
5
Game #4, Chain Reaction
6
Game #5, Balls Out!
8
Game #7, Air Dogs 1942
9
Game #8, Treasure Chest

Time for action — loading and saving the high-score list


To load and save the state of a game, and so the high-score list, just copy some code from the game CometCrusher.

  1. 1. Copy the following code from the LoadHighScore method of Chapter 4, Game #3, CometCrusher.

    Method LoadHighScore:Int ()
    Local state:String = LoadState()
    If state Then
    eng.scoreList.LoadFromString(state)
    Endif
    Return 0
    End
    
  2. 2. Again, copy the following code from the SaveHighScore method from Chapter 4, Game #3, CometCrusher.

    Method SaveHighScore:Int ()
    Local hs:String = g.eng.scoreList.SaveToString()
    SaveState(hs)
    Return 0
    End
    

What just happened?

By reusing these two methods, you have saved yourself some valuable time for the future development of this game. It seems small, but when you reuse more and more, the advantage becomes visible.

Showing the high-score screen

When the player wants to see the high-score screen, the game needs to display the score layer with an updated score list.