code: function(x, y) {
          this._super(me.GUI_Object, "init", [ x, y, {
              // background "fix" part of the joypad
              image: game.texture,
              region : "shadedDark07.png",
              anchorPoint : new me.Vector2d(0, 0)
          } ]);
  
          // mobile part of the joypad
          this.pad = new me.Sprite(x, y, {
              image: game.texture,
              region : "shadedDark01.png",
              anchorPoint : new me.Vector2d(0, 0)
          });
  
          // default relative position from the back of the joypad
          this.relative = new me.Vector2d(
              this.width / 2 - this.pad.width / 2,
              this.height / 2 - this.pad.height /2
          );
  
          // offset by which the joypad move when pressed/moved
          this.joypad_offset = new me.Vector2d();
  
          // default opacity
          this.setOpacity(0.25);
  
          // cursors status
          // TODO make it configurable
          this.cursors = {
              up: false,
              down: false,
              left: false,
              right: false
          };
  
          // register on the pointermove event
          me.input.registerPointerEvent('pointermove', this, this.pointerMove.bind(this));
      }
docs: constructor