annotate examples/01-bouncing/client.js @ 26:56cc058200b5

Client: add basic mlk-client code with an example, #472
author David Demelier <markand@malikania.fr>
date Fri, 08 Apr 2016 14:16:47 +0200
parents
children 0a1adf7dcca0
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
26
56cc058200b5 Client: add basic mlk-client code with an example, #472
David Demelier <markand@malikania.fr>
parents:
diff changeset
1 var x = 0;
56cc058200b5 Client: add basic mlk-client code with an example, #472
David Demelier <markand@malikania.fr>
parents:
diff changeset
2 var y = 0;
56cc058200b5 Client: add basic mlk-client code with an example, #472
David Demelier <markand@malikania.fr>
parents:
diff changeset
3
56cc058200b5 Client: add basic mlk-client code with an example, #472
David Demelier <markand@malikania.fr>
parents:
diff changeset
4 var dx = 1;
56cc058200b5 Client: add basic mlk-client code with an example, #472
David Demelier <markand@malikania.fr>
parents:
diff changeset
5 var dy = 1;
56cc058200b5 Client: add basic mlk-client code with an example, #472
David Demelier <markand@malikania.fr>
parents:
diff changeset
6
56cc058200b5 Client: add basic mlk-client code with an example, #472
David Demelier <markand@malikania.fr>
parents:
diff changeset
7 var font;
56cc058200b5 Client: add basic mlk-client code with an example, #472
David Demelier <markand@malikania.fr>
parents:
diff changeset
8 var clip;
56cc058200b5 Client: add basic mlk-client code with an example, #472
David Demelier <markand@malikania.fr>
parents:
diff changeset
9
56cc058200b5 Client: add basic mlk-client code with an example, #472
David Demelier <markand@malikania.fr>
parents:
diff changeset
10 function start(window)
56cc058200b5 Client: add basic mlk-client code with an example, #472
David Demelier <markand@malikania.fr>
parents:
diff changeset
11 {
56cc058200b5 Client: add basic mlk-client code with an example, #472
David Demelier <markand@malikania.fr>
parents:
diff changeset
12 font = new Malikania.Font("fonts/DejaVuSans.ttf", 10);
56cc058200b5 Client: add basic mlk-client code with an example, #472
David Demelier <markand@malikania.fr>
parents:
diff changeset
13 clip = font.clip("Malikania");
56cc058200b5 Client: add basic mlk-client code with an example, #472
David Demelier <markand@malikania.fr>
parents:
diff changeset
14
56cc058200b5 Client: add basic mlk-client code with an example, #472
David Demelier <markand@malikania.fr>
parents:
diff changeset
15 x = (640 / 2) - (clip.width / 2);
56cc058200b5 Client: add basic mlk-client code with an example, #472
David Demelier <markand@malikania.fr>
parents:
diff changeset
16 y = (480 / 2) - (clip.height / 2);
56cc058200b5 Client: add basic mlk-client code with an example, #472
David Demelier <markand@malikania.fr>
parents:
diff changeset
17 }
56cc058200b5 Client: add basic mlk-client code with an example, #472
David Demelier <markand@malikania.fr>
parents:
diff changeset
18
56cc058200b5 Client: add basic mlk-client code with an example, #472
David Demelier <markand@malikania.fr>
parents:
diff changeset
19 function update()
56cc058200b5 Client: add basic mlk-client code with an example, #472
David Demelier <markand@malikania.fr>
parents:
diff changeset
20 {
56cc058200b5 Client: add basic mlk-client code with an example, #472
David Demelier <markand@malikania.fr>
parents:
diff changeset
21 x += dx;
56cc058200b5 Client: add basic mlk-client code with an example, #472
David Demelier <markand@malikania.fr>
parents:
diff changeset
22 y += dy;
56cc058200b5 Client: add basic mlk-client code with an example, #472
David Demelier <markand@malikania.fr>
parents:
diff changeset
23
56cc058200b5 Client: add basic mlk-client code with an example, #472
David Demelier <markand@malikania.fr>
parents:
diff changeset
24 if (x >= 640 - clip.width)
56cc058200b5 Client: add basic mlk-client code with an example, #472
David Demelier <markand@malikania.fr>
parents:
diff changeset
25 dx = -1;
56cc058200b5 Client: add basic mlk-client code with an example, #472
David Demelier <markand@malikania.fr>
parents:
diff changeset
26 else if (x <= 0)
56cc058200b5 Client: add basic mlk-client code with an example, #472
David Demelier <markand@malikania.fr>
parents:
diff changeset
27 dx = 1;
56cc058200b5 Client: add basic mlk-client code with an example, #472
David Demelier <markand@malikania.fr>
parents:
diff changeset
28 if (y >= 480 - clip.height)
56cc058200b5 Client: add basic mlk-client code with an example, #472
David Demelier <markand@malikania.fr>
parents:
diff changeset
29 dy = -1;
56cc058200b5 Client: add basic mlk-client code with an example, #472
David Demelier <markand@malikania.fr>
parents:
diff changeset
30 else if (y <= 0)
56cc058200b5 Client: add basic mlk-client code with an example, #472
David Demelier <markand@malikania.fr>
parents:
diff changeset
31 dy = 1;
56cc058200b5 Client: add basic mlk-client code with an example, #472
David Demelier <markand@malikania.fr>
parents:
diff changeset
32 }
56cc058200b5 Client: add basic mlk-client code with an example, #472
David Demelier <markand@malikania.fr>
parents:
diff changeset
33
56cc058200b5 Client: add basic mlk-client code with an example, #472
David Demelier <markand@malikania.fr>
parents:
diff changeset
34 function draw(window)
56cc058200b5 Client: add basic mlk-client code with an example, #472
David Demelier <markand@malikania.fr>
parents:
diff changeset
35 {
56cc058200b5 Client: add basic mlk-client code with an example, #472
David Demelier <markand@malikania.fr>
parents:
diff changeset
36 window.setDrawingColor('lightskyblue');
56cc058200b5 Client: add basic mlk-client code with an example, #472
David Demelier <markand@malikania.fr>
parents:
diff changeset
37 window.clear();
56cc058200b5 Client: add basic mlk-client code with an example, #472
David Demelier <markand@malikania.fr>
parents:
diff changeset
38 window.setDrawingColor('white');
56cc058200b5 Client: add basic mlk-client code with an example, #472
David Demelier <markand@malikania.fr>
parents:
diff changeset
39 window.drawText('Malikania', font, { x: x, y: y });
56cc058200b5 Client: add basic mlk-client code with an example, #472
David Demelier <markand@malikania.fr>
parents:
diff changeset
40 window.present();
56cc058200b5 Client: add basic mlk-client code with an example, #472
David Demelier <markand@malikania.fr>
parents:
diff changeset
41 }