layout("GB"); //language layout
//Start paint
// waitLEDRepeat(NUM);
press("GUI R");
delay(1000);
type("mspaint\n"); //no need to press ENTEr, encoded in '\n'
delay(2000);
//Maximize paint
press("GUI UP");
//Set canvas size to 1920x1080
press("CTRL E"); //open properties
delay(2000);
type("1920");
press("TAB");
type("1080");
press("ENTER");
//create JavasCript player object
var player = {
speed: 4.0/1920.0,
dir: 0.0,
pos: {"x": 0.5, "y":0.5},
border: {"lx": 0.2, "ly":0.2, "hx": 0.8, "hy": 0.8},
pressed: false,
step : function() {
v = this.getVec();
this.pos.x += v.x;
this.pos.y += v.y;
if (this.pos.x < this.border.lx ||
this.pos.x > this.border.hx ||
this.pos.y < this.border.ly ||
this.pos.y > this.border.hy)
return false;
this.moveMouseToPos();
return true;
}
getVec : function() {
x = Math.sin(this.dir) * this.speed;
y = Math.cos(this.dir) * this.speed;
return {"x": x, "y":y};
}
moveMouseToPos : function() {
moveTo(this.pos.x, this.pos.y)
}
toggleButton : function() {
if (this.pressed) button(BT1);
else button(BTNONE);
this.pressed = !this.pressed;
}
};
//draw border (delays only for visual fx)
delay(500);
moveTo(player.border.lx, player.border.ly);
button(BT1);
moveTo(player.border.hx, player.border.ly); delay(500);
moveTo(player.border.hx, player.border.hy); delay(500);
moveTo(player.border.lx, player.border.hy); delay(500);
moveTo(player.border.lx, player.border.ly);
button(BTNONE);
//game, exits when player position is outside border (absolute mouse positioning)