Book Image

Developing Mobile Games with Moai SDK

By : Francisco Tufró
Book Image

Developing Mobile Games with Moai SDK

By: Francisco Tufró

Overview of this book

<p>Moai SDK is a fast, minimalist, open-source Lua mobile framework for pro game developers. Moai is built around Lua, a common programming language for games, and offers a single open-source platform for both the front-end elements seen by consumers and the back-end infrastructure.<br /><br />Developing Mobile Games with Moai SDK will guide you through the creation of two game prototypes in a step-by-step way, giving you the basic tools you need in order to create your own games.<br /><br />Developing Mobile Games with Moai SDK introduces the basic concepts behind game development, and takes you through the development of a tile-based memotest, and a platform game prototype as well. You'll end up with a good codebase to start writing your own games.</p> <p>You will learn some tricks that come from real life experience while creating a small framework that will allow you to display images, play sounds, grab input, and so on. You'll also learn how to implement physics using Box2D bindings, and everything in Lua, without having to use any compilations. After doing this, we'll take a look at how to deploy your game to iOS and run it on an iPhone.</p> <p><br />With this book, you should be ready to go and create your own game, release it to the Apple Store, and have enough tools to dig deeper into Moai SDK.</p>
Table of Contents (20 chapters)
Developing Mobile Games with Moai SDK
Credits
About the Author
About the Reviewers
www.PacktPub.com
Preface
7
Concentration Gameplay
Index

Movement


Now let's get right into the important stuff. First we'll define a couple of methods on Character. Then we'll rebuild InputManager to handle key events instead of mouse events and integrate that with our game.

  1. The first method we're going to use will make our character run. It will be called when we press the A or D keys, moving left or right respectively. We'll pass it two parameters, direction (-1 for left, 1 for right) and keyDown, which is a Boolean value that tells us if the player is pressing the key.

  2. The first thing we do is use the direction parameter in combination with setScl (used to scale objects). The idea is that if you scale a sprite by a negative factor, it flips in the direction of the scaled component, so what we're doing here is telling our sprite to face left or right according to what key the player pressed.

    function Character:run ( direction, keyDown )
        if keyDown then
        self.prop:setScl ( direction, 1 )
  3. Then, we force the linear velocity by 100 in the specified...