Advertisement
Guest User

canvas.js

a guest
Nov 19th, 2017
70
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. var global = require('./global');
  2.  
  3. class Canvas {
  4.     constructor(params) {
  5.         this.directionLock = false;
  6.         this.target = global.target;
  7.         this.reenviar = true;
  8.         this.socket = global.socket;
  9.         this.directions = [];
  10.         var self = this;
  11.  
  12.         this.cv = document.getElementById('cvs');
  13.         this.cv.width = global.screenWidth;
  14.         this.cv.height = global.screenHeight;
  15.         this.cv.addEventListener('mousemove', this.gameInput, false);
  16.         this.cv.addEventListener('keydown', this.keyboardDown, false);
  17.         this.cv.addEventListener('keyup', this.keyboardUp, false);
  18.         this.cv.addEventListener("mousedown", this.mouseDown, false);
  19.         this.cv.addEventListener("mouseup", this.mouseUp, false);
  20.         this.cv.parent = self;
  21.         global.canvas = this;
  22.     }
  23.    
  24.     keyboardDown(event) {
  25.         switch (event.keyCode) {
  26.         case global.KEY_UP_ARROW:
  27.         case global.KEY_UP:     this.parent.socket.emit('command', 'up', true); break;
  28.         case global.KEY_DOWN_ARROW:
  29.         case global.KEY_DOWN:   this.parent.socket.emit('command', 'down', true); break;
  30.         case global.KEY_LEFT_ARROW:
  31.         case global.KEY_LEFT:   this.parent.socket.emit('command', 'left', true); break;
  32.         case global.KEY_RIGHT_ARROW:
  33.         case global.KEY_RIGHT:  this.parent.socket.emit('command', 'right', true); break;
  34.         case global.KEY_LEVEL_UP: this.parent.socket.emit('levelup'); break;
  35.         }
  36.         if (!event.repeat) {
  37.             switch (event.keyCode) {
  38.             case global.KEY_AUTO_SPIN:    this.parent.socket.emit('toggle', 'autospin'); break;
  39.             case global.KEY_AUTO_FIRE:    this.parent.socket.emit('toggle', 'autofire'); break;
  40.             case global.KEY_OVER_RIDE:    this.parent.socket.emit('toggle', 'override'); break;
  41.             }
  42.             if (global.canSkill) {
  43.                 switch (event.keyCode) {
  44.                 case global.KEY_UPGRADE_ATK:  this.parent.socket.emit('skillChange', 'atk'); break;
  45.                 case global.KEY_UPGRADE_HTL:  this.parent.socket.emit('skillChange', 'hlt'); break;
  46.                 case global.KEY_UPGRADE_SPD:  this.parent.socket.emit('skillChange', 'spd'); break;
  47.                 case global.KEY_UPGRADE_STR:  this.parent.socket.emit('skillChange', 'str'); break;
  48.                 case global.KEY_UPGRADE_PEN:  this.parent.socket.emit('skillChange', 'pen'); break;
  49.                 case global.KEY_UPGRADE_DAM:  this.parent.socket.emit('skillChange', 'dam'); break;
  50.                 case global.KEY_UPGRADE_RLD:  this.parent.socket.emit('skillChange', 'rld'); break;
  51.                 case global.KEY_UPGRADE_MOB:  this.parent.socket.emit('skillChange', 'mob'); break;
  52.                 case global.KEY_UPGRADE_RGN:  this.parent.socket.emit('skillChange', 'rgn'); break;
  53.                 case global.KEY_UPGRADE_SHI:  this.parent.socket.emit('skillChange', 'shi'); break;
  54.                 }
  55.             }
  56.             if (global.canUpgrade) {
  57.                 switch (event.keyCode) {
  58.                 case global.KEY_CHOOSE_1:  this.parent.socket.emit('upgrade', 0); break;
  59.                 case global.KEY_CHOOSE_2:  this.parent.socket.emit('upgrade', 1); break;
  60.                 case global.KEY_CHOOSE_3:  this.parent.socket.emit('upgrade', 2); break;
  61.                 case global.KEY_CHOOSE_4:  this.parent.socket.emit('upgrade', 3); break;
  62.                 case global.KEY_CHOOSE_5:  this.parent.socket.emit('upgrade', 4); break;
  63.                 case global.KEY_CHOOSE_6:  this.parent.socket.emit('upgrade', 5); break;
  64.                 case global.KEY_CHOOSE_7:  this.parent.socket.emit('upgrade', 6); break;
  65.                 case global.KEY_CHOOSE_8:  this.parent.socket.emit('upgrade', 7); break;
  66.                 }
  67.             }
  68.         }
  69.     }    
  70.     keyboardUp(event) {
  71.         switch (event.keyCode) {
  72.         case global.KEY_UP_ARROW:
  73.         case global.KEY_UP:     this.parent.socket.emit('command', 'up', false); break;
  74.         case global.KEY_DOWN_ARROW:
  75.         case global.KEY_DOWN:   this.parent.socket.emit('command', 'down', false); break;
  76.         case global.KEY_LEFT_ARROW:
  77.         case global.KEY_LEFT:   this.parent.socket.emit('command', 'left', false); break;
  78.         case global.KEY_RIGHT_ARROW:
  79.         case global.KEY_RIGHT:  this.parent.socket.emit('command', 'right', false); break;
  80.         }
  81.     }          
  82.     mouseDown(event) {
  83.         switch (event.button) {
  84.         case 0: this.parent.socket.emit('command', 'lmb', true); break;
  85.         case 1: this.parent.socket.emit('command', 'mmb', true); break;
  86.         case 2: this.parent.socket.emit('command', 'rmb', true); break;
  87.         }
  88.     }
  89.     mouseUp(event) {
  90.         switch (event.button) {
  91.         case 0: this.parent.socket.emit('command', 'lmb', false); break;
  92.         case 1: this.parent.socket.emit('command', 'mmb', false); break;
  93.         case 2: this.parent.socket.emit('command', 'rmb', false); break;
  94.         }
  95.     }
  96.  
  97.     // Mouse location (we send target information in the heartbeat)
  98.     gameInput(mouse) {
  99.         this.parent.target.x = mouse.clientX - this.width / 2;
  100.         this.parent.target.y = mouse.clientY - this.height / 2;
  101.         global.target = this.parent.target;
  102.     }
  103. }
  104.  
  105. module.exports = Canvas;
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement