opencanvas5 [opencanvas中文版]

9790 170 0

通过webrtc通道传送远程自动绘图脚本typingSpeed(0,0); //type as fast as possible

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)