npm package discovery and stats viewer.

Discover Tips

  • General search

    [free text search, go nuts!]

  • Package details

    pkg:[package-name]

  • User packages

    @[username]

Sponsor

Optimize Toolset

I’ve always been into building performant and accessible sites, but lately I’ve been taking it extremely seriously. So much so that I’ve been building a tool to help me optimize and monitor the sites that I build to make sure that I’m making an attempt to offer the best experience to those who visit them. If you’re into performant, accessible and SEO friendly sites, you might like it too! You can check it out at Optimize Toolset.

About

Hi, 👋, I’m Ryan Hefner  and I built this site for me, and you! The goal of this site was to provide an easy way for me to check the stats on my npm packages, both for prioritizing issues and updates, and to give me a little kick in the pants to keep up on stuff.

As I was building it, I realized that I was actually using the tool to build the tool, and figured I might as well put this out there and hopefully others will find it to be a fast and useful way to search and browse npm packages as I have.

If you’re interested in other things I’m working on, follow me on Twitter or check out the open source projects I’ve been publishing on GitHub.

I am also working on a Twitter bot for this site to tweet the most popular, newest, random packages from npm. Please follow that account now and it will start sending out packages soon–ish.

Open Software & Tools

This site wouldn’t be possible without the immense generosity and tireless efforts from the people who make contributions to the world and share their work via open source initiatives. Thank you 🙏

© 2024 – Pkg Stats / Ryan Hefner

game_score

v1.0.2

Published

This package handles logic to create a scored Game with User health and life attributes. It provides helper functions to hook into common game logic such as handling score, decrementing health, losing life, game over, etc.

Downloads

4

Readme

Game Score

This package handles logic to create a scored Game with User health and life attributes. It provides helper functions to hook into common game logic such as handling score, decrementing health, losing life, game over, etc.

Installation

npm install game_score

How to Use

To use this package, create an instance of both a user and a game.

var Game = createGame();
var User = createUser();

The create based functions return objects that contain suggested default attributes.

Default Game Object
{
  lives: 3, // integer
  scoreIncrement: 1, // integer
  healthDecrement: 25, // percentage based integer
  difficulty: "easy", // string
  userPlay: false, // boolean
  gameComplete: false,  // boolean
  highScore: 0 // integer
};
Default User Object
{
  name: "Sneaky Snek", // string
  health: 100, // percentage based integer
  currentScore: 0 // integer
};

Custom Game/User properties

Both createGame() and createUser() accept objects which can be used to overwrite default user/games values or add custom ones.

var Game = createGame({
  lives: 4,
  bonus: 100
});

var User = createUser({
  name: "Solid State",
  color: "blue"
});

The resulting user and game objects are as follows:

Customized Game Object
{
  lives: 4, // default override
  bonus: 100, // custom property
  scoreIncrement: 1,
  healthDecrement: 25,
  difficulty: "easy",
  userPlay: false,
  gameComplete: false,  
  highScore: 0
};
Customized User Object
{
  name: "Solid State", // default override
  color: "blue", // custom property
  health: 100,
  currentScore: 0
};

Incrementing Score

incrementScore();

This function will increment the score based on the increment value set in the Game object.

It also returns an updated User object.

Decrementing Health

decrementHealth(func);

This function will decrement the player's score based on the decrement value set in the Game object and will automatically trigger loseLife() and gameOver() based on the game parameters set in the Game object.

The decrementHealth() function returns an updated User object when called and accepts a callback function that is executed on game over as a parameter.

Losing Life

loseLife(func)

loseLife() is automatically called when the health of a life has been decremented to 0. You can force the loss of a life by calling this function manually.

The loseLife() function accepts a callback function that is executed on game over as a parameter.

Game Over

gameOver(func);

gameOver() is automatically called on the loss of the player's last life. The gameOver() function can be called manually and accepts a callback function as a parameter.

Reset Game

resetGame();

resetGame() is automatically called on game over. You can force a game reset by calling this function manually.