Mercurial > malikania
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 |
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 } |