Search icon CANCEL
Subscription
0
Cart icon
Your Cart (0 item)
Close icon
You have no products in your basket yet
Save more on your purchases! discount-offer-chevron-icon
Savings automatically calculated. No voucher code required.
Arrow left icon
Explore Products
Best Sellers
New Releases
Books
Videos
Audiobooks
Learning Hub
Newsletter Hub
Free Learning
Arrow right icon
Arrow up icon
GO TO TOP
jQuery Game Development Essentials

You're reading from   jQuery Game Development Essentials Learn how to make fun and addictive multi-platform games using jQuery with this book and ebook.

Arrow left icon
Product type Paperback
Published in Apr 2013
Publisher Packt
ISBN-13 9781849695060
Length 244 pages
Edition 1st Edition
Languages
Tools
Arrow right icon
Author (1):
Arrow left icon
Selim Arsever Selim Arsever
Author Profile Icon Selim Arsever
Selim Arsever
Arrow right icon
View More author details
Toc

Table of Contents (17) Chapters Close

jQuery Game Development Essentials
Credits
About the Author
About the Reviewer
www.PacktPub.com
Preface
1. jQuery for Games 2. Creating Our First Game FREE CHAPTER 3. Better, Faster, but not Harder 4. Looking Sideways 5. Putting Things into Perspective 6. Adding Levels to Your Games 7. Making a Multiplayer Game 8. Let's Get Social 9. Making Your Game Mobile 10. Making Some Noise Index

Index

A

  • $.ajax function / Using a tile map editor
    • about / Using $.ajax
  • .animate() function
    • about / Chaining animations
  • .append() function
    • about / .append()
  • addCallback function / One interval to rule them all
  • addSprite function / HTML fragments
  • addTilemap function / Finding the visible tiles
  • analog joystick
    • about / Analog joystick
    • implementing / Analog joystick
    • event handlers / Event handlers
  • Analyser node
    • about / Analyser node
  • animation function / Controlling the player's avatar
  • animations
    • chaining / Chaining animations
    • implementing / Implementing animations
    • adding, to framework / Adding animations to our framework
  • audio
    • abstracting / Abstracting audio
  • audio, abstracting
    • library, using / Using our small library
  • audio element / Preloading a sound
  • audionode.js library / Web Audio API
  • audio tag / HTML5 Audio element

B

  • .bind() function
    • about / .bind()
  • BiquadFilter node
    • about / BiquadFilter node

C

  • .clearQueue() function
    • about / .clearQueue()
  • cancelScheduledValues(time) function / Connecting more nodes
  • canPlayType method / HTML5 Audio element
  • chaining
    • about / Chaining
    • advantages / Chaining
  • cheating, preventing
    • server-side verification / Server-side verification
    • variables, making less readable / Making your variables less readable
    • code, obfuscating / Obfuscating your code
    • network protocol, making less readable / Making your network protocol less readable
  • colliding tiles
    • searching / Finding the colliding tiles
  • collision detection
    • about / Collision detection, Collision detection, Collision detection
    • using / Collision detection
    • implementing / Collision detection
    • tile-maps, colliding with / Colliding with tile maps
    • colliding tiles, finding / Finding the colliding tiles
    • sprite, versus sprite collision / Sprite versus sprite collision
    • player, versus environment collisions / Player versus environment collisions
    • player, versus sprite collision / Player versus sprite collision
  • context.destination object / Loading more than one sound
  • context.listener object / Panner node
  • Convolver effect
    • about / Convolver node
  • Convolver node
    • about / Convolver node
  • CreateJS
    • about / Alternatives to SoundManager
  • CSS transform
    • about / CSS transform
    • adding, to framework / Adding transform to the framework
  • CSS Transforms
    • using, for animating sprites / Moving your sprite around using CSS Transforms

D

  • .delay() function
    • about / .delay()
  • .delegate() function
    • about / .delegate()
  • .dequeue() function
    • about / .dequeue()
  • .detach() function
    • about / .detach()
  • .done()
    • about / .done()
  • d-pad
    • about / D-pad
    • implementing / D-pad
  • Delay node
    • about / Delay node
  • device orientation
    • using / Using device orientation
  • DOM elements
    • data, associating with / Associating data with DOM elements
    • used, for rendering game elements / Learning the basics
  • DynamicCompressor node
    • about / DynamicCompressor node
    • threshold parameter / DynamicCompressor node
    • knee parameter / DynamicCompressor node
    • ratio parameter / DynamicCompressor node
    • reduction parameter / DynamicCompressor node
    • attack parameter / DynamicCompressor node
    • release parameter / DynamicCompressor node

E

  • embed tag / Embedding sound, Implementation, Supported format
  • endCallback function / One interval to rule them all
  • enemies
    • creating / Creating enemies
    • fighting / Fighting enemies
  • event handlers
    • removing / Removing event handlers
  • events handling
    • about / Handling of events
    • .bind() function / .bind()
    • .delegate() function / .delegate()
  • exponentialRampToValueAtTime(value, time) function / Connecting more nodes

F

  • .fail()
    • about / .fail()
  • Facebook developer website
    • URL / Integrating with Facebook
  • Facebook integration
    • about / Integrating with Facebook
    • authentication mechanism / Authenticating with Facebook
    • game achievements, creating / Creating achievements
    • game achievements, publishing / Publishing the achievements
  • Flash
    • about / Flash fallbacks
  • framework, game
    • about / Framework
    • animations, adding / Adding animations to our framework
  • Frogger game
    • creating / Let's get serious – the game
    • states / Main loop
  • FSM
    • about / Main loop
    • implementing / Main loop
    • advantage / Main loop
    • drawing / Main loop
  • fx queue
    • about / Other usages of queues

G

  • $.get / Using $.ajax
  • $.getJSON / Using $.ajax
  • $.getScript / Using $.ajax
  • game
    • framework / Framework
    • sprites / Sprites
    • sprites, animating / Moving sprites around
    • preloading / Preloading
    • initializing / Initializing the game
    • main loop / Main loop
    • collision detection / Collision detection, Collision detection
    • coding / Coding the game
    • occlusion, sorting / Sorting the occlusion
    • sprite occlusion / Sprite occlusion
    • level, versus sprite occlusion / Level versus sprite occlusion
    • cheating, preventing / Making cheating harder
    • registering, with Twitter / Registering your game with Twitter
    • registering, with Facebook / Integrating with Facebook
  • game-springboard integration
    • about / Integrating our game with the springboard
    • game, installing / Making your game installable
    • status bar, configuring / Configuring the status bar
    • application icon, specifying / Specifying the application icon
    • splash screen, specifying / Specifying a splash screen
  • game achievements, Facebook
    • creating / Creating achievements
    • publishing / Publishing the achievements
  • game authentication, Facebook
    • about / Authenticating with Facebook
  • game authentication, Twitter API
    • about / Authentication
  • game framework
    • offline divs / Offline divs
    • groups / Groups
    • sprite transformation / Sprite transformation
    • tile maps / Tile maps
    • collision detection / Collision detection
    • game, coding / Coding the game
    • game screen, setting up / Basic setup of the game screen
    • object-oriented code, for player / Object-oriented code for the player
    • player control / Player control
    • parallax scrolling / Parallax scrolling
    • enemies, creating / Creating enemies
  • game mobile
    • creating / Making your game run well on mobile devices
    • mobile browsers, detecting / Detecting mobile browsers
    • device limitations, memory / Performance limitation – memory
    • device limitations, speed / Performance limitation – speed
    • page's visible area, specifying / Specifying the page's visible area
    • number of sprites, reducing / Level of details
    • touch control / Touch control
    • springboard integration / Integrating our game with the springboard
    • device orientation, using / Using device orientation
    • offline application cache, using / Using the offline application cache
    • web storage, using / Using web storage
  • game screen
    • setting up / Basic setup of the game screen
  • getItem method / Using web storage
  • gf.addGroup function / Groups
  • gf.addSprite function / Groups
  • gf.createTile function / Moving the tile map
  • gf.importTiled function / Using a tile map editor
  • gf.updateVisibility() function / Moving the tile map
  • gf.x function / Moving the tile map
  • gf_tilemap class / Moving the tile map
  • groups
    • about / Groups
  • groups, game
    • organizing / Groups

H

  • .html() function
    • about / .html()
  • highscores
    • publishing, on Twitter / Publishing high scores on Twitter
  • HTML
    • about / Embedding sound
  • HTML5 Audio element
    • about / HTML5 Audio element
    • sound, preloading / Preloading a sound
    • playback, controlling / Playing and stopping sounds
  • HTML fragments
    • about / HTML fragments

I

  • img tag
    • about / HTML5 Audio element
  • impulse
    • about / Convolver node
  • initialize function / Using our small library
  • Internet Explorer / Learning the basics
  • intervals and timeouts
    • reducing / Intervals and timeouts
    • code / Code
  • isometric games
    • occlusion / Occlusion for isometric games
  • isometric tiles
    • dealing with / Isometric tiles
    • isometric tile map, drawing / Drawing an isometric tile map

J

  • jPlayer
    • about / Alternatives to SoundManager
  • jQuery
    • chaining / Chaining
    • polymorphism / Polymorphism
    • events handling / Handling of events
    • data, associating with DOM elements / Associating data with DOM elements
    • DOM manipulating / Manipulating the DOM
  • jQuery's API
    • URL / Stay curious my friend!
  • jQuery 1.7
    • about / jQuery 1.7
  • jQuery animation functions
    • .animate() / Chaining animations
    • .stop() / .stop()
    • .clearQueue() / .clearQueue()
    • .dequeue() / .dequeue()
    • .delay() / .delay()
  • jQuery API documentation
    • URL / Adding animations to our framework
  • jQuery Mobile
    • URL / Making your game run well on mobile devices
  • JSON
    • URL / Searching elements in the database
  • JSON file
    • loading / Loading a JSON file
  • jump method / Controlling the player's avatar

K

  • keyboard polling, game optimization
    • about / Keyboard polling
    • keys state, tracking / Keeping track of the keys' state

L

  • $.load / Using $.ajax
  • leaderboards
    • creating / Creating a simple leaderboard
    • highscores, saving / Saving highscores
    • highscores, retrieving / Retrieving highscores
    • highscores, displaying / Displaying the highscores
  • Learning jQuery
    • URL / Stay curious my friend!
  • library
    • using / Using our small library
  • linearRampToValueAtTime(value, time) function / Connecting more nodes

M

  • main loop, game
    • about / Main loop
    • implementing / Main loop implementation
  • mediaelement.js
    • about / Alternatives to SoundManager
  • MIDI / Supported format
  • mobile browsers
    • detecting / Detecting mobile browsers
    • client-side browser detection / Client-side browser detection
    • server-side detection / Server-side detection
    • feature detection, using / Should you really detect the browser?
  • modulo technique / Collision detection
  • multi-file game
    • implementing / Implementing a multi-file game
    • tile-map, loading / Loading tile maps
    • sprites, loading / Loading sprites and their behavior
    • $.ajax function, using / Using $.ajax
    • JSON file, loading / Loading a JSON file
    • remote script, loading / Loading a remote script
    • call, debugging to $.ajax / Debugging calls to $.ajax
  • multiplayer game
    • players account, managing / Managing the player's account
    • server-side combat, implementing / Implementing server-side combat

N

  • naive implementation
    • about / Naive implementation
  • network traffic, protecting
    • about / Making your network protocol less readable
    • values, encoding / Encoding values
    • variables, naming randomly / Randomly naming the variables
    • random variables, adding / Adding random variables
  • nodes
    • connecting / Connecting more nodes
  • NPCs
    • implementing / Talking to NPCs

O

  • OAuth / Full access to Twitter's API
  • object-oriented code, for player
    • about / Object-oriented code for the player
  • offline application cache
    • using / Using the offline application cache
  • offline divs
    • about / Offline divs
  • OpenAL
    • about / Web Audio API
  • optimizations, game
    • intervals and timeouts, reducing / Intervals and timeouts
    • one single interval, using / One interval to rule them all
    • keyboard polling / Keyboard polling
    • HTML fragments / HTML fragments
    • reflow, avoiding / Avoiding reflow
    • sprite, animating using CSS Transforms / Moving your sprite around using CSS Transforms
    • requestAnimationFrame, using / Using requestAnimationFrame instead of timeouts

P

  • $.post / Using $.ajax
  • .prepend() function
    • about / .prepend()
  • Panner node
    • about / Panner node
  • parallax scrolling
    • about / Parallax scrolling
  • pause function / Playing and stopping sounds
  • Pixen
    • URL / Sprites
  • platform game
    • modifying / Modifying our platform game
  • playback
    • controlling / Playing and stopping sounds
  • player
    • versus, environment collisions / Player versus environment collisions
    • versus, sprite collisions / Player versus sprite collision
  • player control
    • about / Player control
  • players, keeping in sync
    • about / Keeping the players in sync
    • players, retrieving / Retrieving all the other players
    • current player position, updating / Updating the current player position
    • client-side code / Client-side code
  • players account, multiplayer game
    • managing / Managing the player's account
    • elements, searching in database / Searching elements in the database
    • new player, creating in database / Creating a new player in the database
    • player, keeping connected / Keeping the player connected
    • user, logging into game / Logging the user into the game
  • players avatar
    • controlling / Controlling the player's avatar
  • players position
    • updating / Updating the player's position
  • play function / Implementation
  • polygonal collision detection / Collision detection
  • polymorphism
    • about / Polymorphism
    • using / Polymorphism
  • preload function / SoundManager 2
  • preloading
    • about / Preloading

Q

  • queues
    • usage / Other usages of queues

R

  • .remove() function
    • about / .remove()
  • readyState property / Preloading a sound
  • reflow
    • avoiding / Avoiding reflow
  • remote script
    • loading / Loading a remote script
  • requestAnimationFrame
    • using / Using requestAnimationFrame instead of timeouts
  • rgba() function / Talking to NPCs

S

  • .stop() function
    • about / .stop()
  • ScriptProcessor node
    • about / ScriptProcessor node
    • bufferSize parameter / ScriptProcessor node
    • onaudioprocess parameter / ScriptProcessor node
  • server-side combat
    • implementing, in multiplayer game / Implementing server-side combat
  • server-side helper library, Twitter API
    • about / Server-side helper library
  • setInterval / Implementing animations
  • setInterval function / One interval to rule them all
  • setItem method / Using web storage
  • setOrientation function / Panner node
  • setPosition function / Panner node
  • setTargetAtTime(target, time, constant) function / Connecting more nodes
  • setValueAtTime(value, time) function / Connecting more nodes
  • setValueCurveAtTime(valuesArray, time, duration) function / Connecting more nodes
  • setVelocity function / Panner node
  • sound
    • embedding / Embedding sound
    • preloading / Preloading a sound
  • sound, embedding
    • implementation / Implementation
    • supported formats / Supported format
  • soundBuffer object / Basic usage
  • sound effects
    • generating / Generating sound effects
  • SoundJS
    • about / Alternatives to SoundManager
  • SoundManage
    • alternatives / Alternatives to SoundManager
  • SoundManager 2
    • using / SoundManager 2
  • sounds
    • stopping / Playing and stopping sounds
    • playing / Playing and stopping sounds
  • sprite occlusion
    • about / Sprite occlusion
    • managing / Sprite occlusion
  • sprites
    • about / Sprites
    • disadvantages / Sprites, Loading sprites and their behavior
    • advantages / Sprites
    • animations, implementing / Implementing animations
    • animating / Moving sprites around
    • advantage / Loading sprites and their behavior
  • sprite transformation
    • about / Sprite transformation
    • CSS transform / CSS transform
  • startGame function / One interval to rule them all
  • startPreloading function / Initializing the game, One interval to rule them all
  • stop function / Playing and stopping sounds
  • stop method / Implementation

T

  • tile-map
    • loading / Loading tile maps
    • advantages / Loading tile maps
  • tile-map editor
    • using / Using a tile map editor
  • tile map optimization
    • about / Optimizing tile maps for top-down games
    • visible tiles, finding / Finding the visible tiles
    • tile map, moving / Moving the tile map
  • tile maps
    • about / Tile maps
    • advantages / Tile maps
    • constraints / Tile maps
    • naive implementation / Naive implementation
  • top-down games
    • tile-map, optimizing / Optimizing tile maps for top-down games
    • visible tiles, finding / Finding the visible tiles
    • tile-map, moving / Moving the tile map
  • touch control, mobile game
    • about / Touch control
    • d-pad / D-pad
    • analog joystick / Analog joystick
  • touchend handler / Event handlers
  • touchstart event handler / Event handlers
  • Twitter
    • about / Integrating with Twitter
  • Twitter API
    • about / Full access to Twitter's API
    • logging in / Full access to Twitter's API
    • game, registering with Twitter / Registering your game with Twitter
    • server-side helper library / Server-side helper library
    • game, authenticating / Authentication
    • highscores, publishing on Twitter / Publishing high scores on Twitter
  • Twitter developer site
    • URL / Registering your game with Twitter
  • Twitter integration
    • about / Integrating with Twitter
    • Twitter, for dummies / Twitter for dummies
    • Twitter API, accessing / Full access to Twitter's API
  • twitteroauth
    • about / Server-side helper library
  • twitteroauth library / Authentication

W

  • waitForSound function / Using our small library
  • WAV / Supported format
  • WaveShaper node
    • about / WaveShaper node
  • Web Audio API
    • about / Web Audio API
    • usage / Basic usage
    • nodes, connecting / Connecting more nodes
    • multiple sound, loading / Loading more than one sound
  • web storage
    • using / Using web storage
  • World of Ar'PiGi
    • about / World of Ar'PiGi
lock icon The rest of the chapter is locked
arrow left Previous Section
Register for a free Packt account to unlock a world of extra content!
A free Packt account unlocks extra newsletters, articles, discounted offers, and much more. Start advancing your knowledge today.
Unlock this book and the full library FREE for 7 days
Get unlimited access to 7000+ expert-authored eBooks and videos courses covering every tech area you can think of
Renews at $19.99/month. Cancel anytime
Banner background image