0.7.8 • Published 8 years ago

potion-debugger v0.7.8

Weekly downloads
4
License
MIT
Repository
github
Last release
8 years ago

Potion Debugger

Game debugger for Potion framework

Screenshot

Installation

npm install potion-debugger

Features

  • runtime informations
  • togglable settings
  • logging
  • pretty printing objects, arrays
  • error logging with stack traces (even with Browserify using source-map-support)

Usage

Debugger requires some methods to be called

  • update - must be called with time in exitUpdate hook
  • render - must be called in render hook
  • keydown - must be called with key in keydown hook

Debugger also requires runtime property with time on the Potion instance for displaying total game time

var Debugger = require('potion-debugger');

Potion.init(document.querySelector('canvas'), {
  init: function() {
    this.runtime = {
      time: 0
    };

    this.debug = new Debugger(this);
  },

  update: function(time) {
    this.runtime.time += time;
  },

  exitUpdate: function(time) {
    this.debug.update(time);
  },

  render: function() {
    this.debug.render();
  },

  keydown: function(key) {
    this.debug.keydown(key);
  }
});

Keyboard shortcuts

  • F12 toggles all debug rendering
  • **** shows user defined togglable options

Custom options

When creating debugger instance you can pass array of options you want to configure

Keyboard shortcuts are automatically defined based on the position in array

There are already defined 3 custom options for showing fps, time and key/button codes

this.debug = new Debugger(this, [
  { name: 'Show Pathfinding', entry: 'showPathFinding' }
  { name: 'Alert', type: 'call', entry: function() { alert('debug'); } }
]);

name

Rendered name for the option

type

defaults to toggle, can be toggle or call

default

default value

entry

When type is toggle entry will be defined as property on debug instance

example
if (this.debug.showPathFinding) {
  // render
}

When type is call entry is going to be called as function

API

log(message, color=white)

message

Value you want to print to the screen, can be any javascript value (string, object, array, ...)

color

Color you want to use for printing the message

License

MIT license

0.7.8

8 years ago

0.7.6

9 years ago

0.7.5

9 years ago

0.7.4

9 years ago

0.7.3

9 years ago

0.7.2

9 years ago

0.6.3

9 years ago

0.7.1

9 years ago

0.7.0

9 years ago

0.6.2

9 years ago

0.6.1

9 years ago

0.5.3

9 years ago

0.5.2

9 years ago

0.5.0

9 years ago

0.2.0

10 years ago

0.1.0

10 years ago