400.0
750
400
750.0
false
0.0
-65536
10
10
-1
12
181.0
true
true
true
true
21.0
729.0
false
0.0
-65536
10
10
-1
12
25.0
true
true
true
true
706.0
22.0
373.0
false
0.0
178.0
true
true
true
true
22.0
728.0
220.0
false
0.0
23.0
true
true
true
true
707.0
22.0
false
-65536
10
10
-1
12
87.0
true
true
true
true
21.0
381.0
119.0
false
0.0
87.0
true
true
true
true
21.0
565.0
254.0
false
398.0
true
true
true
true
21.0
1.0
filename
page4$0.mml
date
1251487477000
url
/Users/ddamelin/Desktop/Movement_of_electrons.ap/page4$0.mml
size
22097
codebase
/Users/ddamelin/Desktop/Movement_of_electrons.ap
define %d 0.5;
define %electron_speed 2500;
define %i 0;
define %flag 0;
define %posCharge 1;
define %negCharge -1;
define %move 1;
define %addPos 2;
define %addNeg 3;
define %buttonSelected %move;
define %selAtom 0;
define %lastAtom 0;
beginmouse:pressed;
set %selAtom whichParticle(%mouse_x/10,%mouse_y/10);
if (%selAtom == 0);
select atom none;
endif;
endmouse:pressed;
beginmouse:released;
set %lastAtom %number_of_atoms-1;
set atom[%lastAtom].movable off;
if (%buttonSelected == %addPos);
set atom[%lastAtom].charge %posCharge;
select atom none;
endif;
if (%buttonSelected == %addNeg);
set atom[%lastAtom].charge %negCharge;
select atom none;
endif;
paint;
endmouse:released;
30
Collision
1
set %flag count(-1, %rectangle[2].x, %rectangle[2].y, %rectangle[2].width, %rectangle[2].height);
if (%flag > 0);
stop;
message youWin.html;
else;
set %i 0;
while(%i < %number_of_obstacles);
set %flag count(-1, %obstacle[%i].x-%d, %obstacle[%i].y-%d, %obstacle[%i].width + 2*%d, %obstacle[%i].height + 2*%d);
if(%flag > 0);
stop;
message collision.html;
select element 1;
remove;
set %flag 0;
endif;
%i++;
endwhile;
endif;
1.0
true
None
-16776961
255
0
255
255
0
0
255
255
false
11.0
1
22.0
40.0
194.5
18.0
false
33.0
1
1
18.0
22.0
183.5
false
34.0
1
2
0
false
15.0
732.0
183.0
false