Catalog npm
PACKAGE EXPLORERView in registry

2dgameinputs

npm

a 2d game input handler

Versions collected3
Direct dependencies0From release 1.2.0
Last observed20 Oct, 19:11 UTC

README

Current package documentation

MIT License LinkedIn

About The Project

Markdown Logo

When you want to quckly add Game Inputs in your javascript game.

It supports the following inputs :

  • Keyboard press
  • Button touch
  • TouchScreen swipes
  • Virtual Joystick

Getting Started

Use the following url to download the library from a CDN.

 https://unpkg.com/2dgameinputs/InputHandler.js

Usage :

1. joystick

  • import the JOYSTICK class
  import { JOYSTICK } from "https://unpkg.com/2dgameinputs/InputHandler.js";
  • create an instance of the JOYSTIC class.
  var joystick = new JOYSTICK();
  • The instance has a 'controller' property which has a 'value' property.

    console.log(joystick.controller.value);
    
  • This property is a vector with an 'x'and 'y' , each with a value ranging from -1 to 1.

    
      "x": 0,
      "y": 0
    
    

    example:

    move player to the right and left.

    function gameLoop(){
      if( joystick.controller.value.x > 0){
        player.position.x++
      }
    
      if( joystick.controller.value.x < 0){
        player.position.x--
      }
    }
    
    

2. button

  • import the BUTTON class
  import { BUTTON } from "https://unpkg.com/2dgameinputs/InputHandler.js";
  • create an instance of the BUTTON class that takes an element id as its only parameter.
  var hitbtn = new BUTTON('btn');
  • The instance has a 'pressed' property that is a boolean value.

    console.log(hitbtn);
    
  • This property is TRUE when the element is pressed and FALSE otherwise.

    example:

    a jump button

    function gameLoop(){
      if( hitbtn){
        player.position.y++
      }
    
    }
    
    

3. keyboard press

  • import the INPUTHANDLER class
  import { INPUTHANDLER } from "https://unpkg.com/2dgameinputs/InputHandler.js";
  • create an instance of the INPUTHANDLER class.
  const inputHandler = new INPUTHANDLER();
  • The instance has a 'addkeys' method that accepts a string (HTML keys) .

    inputHandler.addkeys('a')
    inputHandler.addkeys('d')
    
  • The instance has a 'getKey' method that returns a boolean value.

    let a = inputHandler.getKey('a');
    
    let d = inputHandler.getKey('d');
    

    example:

    move player to the right and left.

    function gameLoop(){
      if( d){
        player.position.x++
      }
    
      if( a){
        player.position.x--
      }
    }
    
    

3. touchscreen swipe

  • import the SWIPE class
  import { SWIPE } from "https://unpkg.com/2dgameinputs/InputHandler.js";
  • create an instance of the SWIPE class.
  var swipe = new SWIPE();
  • The instance has four methods that each returns a boolean value .

    let swipeDown = swipe.swipeDown()
    let swiperight = swipe.swipeRight()
    let swipeleft = swipe.swipeLeft()
    let swipeup = swipe.swipeUp()
    

    example:

    move player to the right and left.

    function gameLoop(){
      if( swiperight){
        player.position.x++
      }
    
      if(swipeleft){
        player.position.x--
      }
    }
    
    

License

Distributed under the MIT License. See LICENSE.txt for more information.

(back to top)

Contact

email:

website:

(back to top)

Downloads & popularity

Awaiting observations

No metric observations yet

Download counts and popularity will appear here as the collector receives them.

Versions 3

Collected releases
VersionPublishedDirect dependenciesOpen version
1.2.0Registry latest8 Apr 20240
1.1.08 Apr 20240
1.0.08 Apr 20240

Package advisories

0
No matching advisories collected

This describes our collected data; it is not a security assessment.

Repository

PENDING
alphayo-the-developer/inputhandler

Shared repository data · GitHub

License detected in repository
Not collected

Metadata history

Meaningful changes
Current collected state Current

Observed since 20 Oct, 19:11 UTC

No superseded metadata states collected. Unchanged observations do not create new revisions.

Record identity

package:503b1777b79e1e2bc306377f1b20dd5940cecf5632f0346d858fe56d4887c773