Sign Up for Free

RunKit +

Try any Node.js package right in your browser

This is a playground to test code. It runs a full Node.js environment and already has all of npm’s 1,000,000+ packages pre-installed, including ebabel-utils with all npm packages installed. Try it out:

var ebabelUtils = require("ebabel-utils")

This service is provided by RunKit and is not affiliated with npm, Inc or the package authors.

ebabel-utils v1.2.0

Small utility functions for game development.

ebabel-utils

Build Status

Small utility functions for game development.

Module install and usage in your game

Install

npm install --save ebabel-utils

Usage

const {
  dice,
  trait,
  positive,
  randomPosOrNeg,
  reducedDistance,
  randomPosition,
  deepCopy,
  countArrayElements,
  distance,
  guid,
  Ido,
  preventXss,
  random,
  randomList,
} = require('ebabel-utils');

// dice
const result = dice();

// trait
const stamina = trait();

// positive
const attack = 5;
const defense = 17;
const score = positive(attack - defense);

// randomPosOrNeg
const spellFizzleEffect = randomPosOrNeg(16);

// reducedDistance
const attackingNpcPosition = [45, 23, -65];
const playerPosition = [34, 0, -10];
const howMuchCloser = 5;
const attackingNpcNextPosition = reducedDistance(attackingNpcPosition, playerPosition, howMuchCloser);

// randomPosition
const spawnAreaSize = [3000, 2000, 3000];
const spawnPosition = randomPosition(spawnAreaSize);

// deepCopy
const original = { strength: 12, life: 56 };
const copy = deepCopy(original);

// countArrayElements
const input = ['orc', 'goblin', 'orc', 'orc', 'elf', 'elf'];
const result = countArrayElements(input);
expect(result['orc']).toBe(3);
expect(result['goblin']).toBe(1);
expect(result['elf']).toBe(2);


// distance
const i = [0, 0, 0];
const j = [10, 0, 0];
const result = distance(i, j);

// guid
const result = guid();

// Ido
const result = Ido();

// preventXss
const safe = '<script></script>';
const result = preventXss('<script></script>');
expect(result).toBe(safe);

// random
const max = 3;
const result = random(max);
expect(result >= 1).toBe(true);
expect(result <= 3).toBe(true);

// randomList
const input = {source:['orc', 'goblin', 'orc', 'orc', 'elf', 'elf'],max:2};
const result = randomList(input);
expect(result.list.length).toBe(2);
expect(result.rest.length).toBe(4); 





Development of this module

Fork this repository on Github, git clone your repository, checkout the develop branch, and when you are done, submit a pull request from your repository develop branch to this repository develop branch.

  • fork this repository on github.com
  • git clone your forked repository.
  • git checkout develop

First step when developing

npm install

Run linting and unit tests

npm test

An html coverage report is to be found in the coverage folder.

Generate documentation

npm run jsdoc

The generated documentation is to be found in the docs folder.

RunKit is a free, in-browser JavaScript dev environment for prototyping Node.js code, with every npm package installed. Sign up to share your code.
Sign Up for Free