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 — detailing the Render event


Ok, let's start with detailing the OnRender method.

  1. 1. First, before we render anything, we will clear the screen with a nice blue color.

    Method OnRender:Int()
    Cls(0, 0, 50)
    
  2. 2. Next, we will call different render methods, depending on the mode the game is in.

    Select gameMode
    Case gmMenu, gmGameOver
    RenderGame()
    RenderMenu()
    Case gmPlay
    RenderGame()
    End
    Return True
    End
    
  3. 3. Add the RenderMenu method. Inside, we will draw different text, depending on the mode the game is in.

    Method RenderMenu:Int()
    Local cd:Int = Rnd(0,100)
    If gameMode = gmMenu
    SetColor(255-cd,0,0)
    Local s1:String = "*** Rocket Commander ***"
    DrawText(s1, cWidth/2, cHeight/2 - 48, 0.5, 0.0)
    SetColor(255,255,255)
    Local s2:String = "Press P to start the game"
    DrawText(s2, cWidth/2, cHeight/2, 0.5, 0.0)
    Local s3:String = "Press A Or S To fire the rockets"
    DrawText(s3, cWidth/2, cHeight/2 + 48, 0.5, 0.0)
    Else
    SetColor(255-cd, 0, 0)
    Local s1:String = "*** GAME OVER ***"
    DrawText(s1, cWidth...