#N canvas 43 453 1054 498 10;
#N canvas 44 697 485 278 gem 0;
#N canvas 1106 545 676 481 bloodcells 0;
#X obj 32 46 gemhead;
#X obj 32 72 t a a b;
#X obj 217 64 r boidParam;
#X obj 51 102 spigot;
#X obj 51 220 translateXYZ 0 0 0;
#X obj 32 290 s bloodcell-render;
#X obj 51 127 separator;
#X obj 217 115 s bloodcell-pos;
#N canvas 1467 382 450 300 bloodcell-pool 0;
#X obj 20 20 bloodcell 0;
#X obj 20 20 bloodcell 1;
#X obj 20 20 bloodcell 2;
#X obj 20 20 bloodcell 3;
#X obj 20 20 bloodcell 4;
#X obj 20 20 bloodcell 5;
#X obj 20 20 bloodcell 6;
#X obj 20 20 bloodcell 7;
#X obj 20 20 bloodcell 8;
#X obj 20 20 bloodcell 9;
#X obj 20 20 bloodcell 10;
#X obj 20 20 bloodcell 11;
#X obj 20 20 bloodcell 12;
#X obj 20 20 bloodcell 13;
#X obj 20 20 bloodcell 14;
#X obj 20 20 bloodcell 15;
#X obj 20 20 bloodcell 16;
#X obj 20 20 bloodcell 17;
#X obj 20 20 bloodcell 18;
#X obj 20 20 bloodcell 19;
#X obj 20 20 bloodcell 20;
#X obj 20 20 bloodcell 21;
#X obj 20 20 bloodcell 22;
#X obj 20 20 bloodcell 23;
#X obj 20 20 bloodcell 24;
#X obj 20 20 bloodcell 25;
#X obj 20 20 bloodcell 26;
#X obj 20 20 bloodcell 27;
#X obj 20 20 bloodcell 28;
#X obj 20 20 bloodcell 29;
#X obj 20 20 bloodcell 30;
#X obj 20 20 bloodcell 31;
#X obj 20 20 bloodcell 32;
#X obj 20 20 bloodcell 33;
#X obj 20 20 bloodcell 34;
#X obj 20 20 bloodcell 35;
#X obj 20 20 bloodcell 36;
#X obj 20 20 bloodcell 37;
#X obj 20 20 bloodcell 38;
#X obj 20 20 bloodcell 39;
#X restore 437 100 pd bloodcell-pool;
#X msg 369 274 \; pd-bloodcell-pool obj 20 20 bloodcell \$1;
#X obj 369 219 until 40;
#X msg 369 188 40;
#X obj 369 166 t b b;
#X obj 369 147 bng 15 250 50 0 empty empty empty 17 7 0 10 -262144
-1 -1;
#X obj 86 158 r boidParam;
#X obj 87 179 route attractpt;
#X obj 88 200 unpack f f f;
#X obj 97 99 tgl 15 0 empty empty empty 17 7 0 10 -262144 -1 -1 0 1
;
#X obj 51 251 triangle 0.1;
#N canvas 1352 192 561 777 boids-help 0;
#X msg 47 -33 dump;
#X msg 51 78 neighbors \$1;
#X floatatom 51 63 5 0 4 0 - neighbors -, f 5;
#X floatatom 51 98 5 0 0 0 - maxspeed -, f 5;
#X msg 51 113 maxspeed \$1;
#X floatatom 51 133 5 0 0 0 - minspeed -, f 5;
#X msg 51 148 minspeed \$1;
#X floatatom 51 168 5 0 0 0 - center -, f 5;
#X msg 51 183 center \$1;
#X floatatom 51 203 5 0 0 0 - attract -, f 5;
#X msg 51 218 attract \$1;
#X floatatom 51 238 5 0 0 0 - match -, f 5;
#X msg 51 253 match \$1;
#X floatatom 51 273 5 0 0 0 - avoid -, f 5;
#X msg 51 288 avoid \$1;
#X floatatom 51 308 5 0 0 0 - repel -, f 5;
#X msg 51 323 repel \$1;
#X floatatom 51 343 5 0 0 0 - edgedist -, f 5;
#X msg 51 358 edgedist \$1;
#X floatatom 51 378 5 0 0 0 - speed -, f 5;
#X msg 51 393 speed \$1;
#X floatatom 51 413 5 0 0 0 - inertia -, f 5;
#X msg 51 428 inertia \$1;
#X floatatom 51 448 5 0 0 0 - accel -, f 5;
#X msg 51 463 accel \$1;
#X floatatom 51 483 5 0 0 0 - prefdist -, f 5;
#X msg 51 498 prefdist \$1;
#X msg 47 -14 reset;
#X text 142 113 maximum speed of speed range;
#X text 144 147 minimum speed of speed range;
#X text 141 182 strength of centering instinct;
#X text 143 393 overall speed;
#X text 144 464 speed of acceleration;
#X text 144 495 preferred distance from neighbors;
#X floatatom 52 521 5 0 0 0 - flyrect[0] -, f 5;
#X floatatom 91 521 5 0 0 0 - flyrect[1] -, f 5;
#X floatatom 130 521 5 0 0 0 - flyrect[2] -, f 5;
#X floatatom 169 521 5 0 0 0 - - -, f 5;
#X floatatom 51 580 5 0 0 0 - - -, f 5;
#X floatatom 91 580 5 0 0 0 - - -, f 5;
#X floatatom 51 28 5 0 0 0 - - -, f 5;
#X msg 51 43 number \$1;
#X text 142 41 number of boids;
#X floatatom 47 -67 5 0 0 0 - - -, f 5;
#X msg 47 -52 mode \$1;
#X text 111 -52 output mode;
#X obj 51 641 s boidParam;
#X obj 47 7 s boidParam;
#X text 111 -33 parameter dump;
#X text 110 -13 reset boids randomly inside flyrect;
#X text 142 76 number of neighbors each boid consults when flocking
;
#X text 141 253 strength of neighbor speed matching instinct;
#X text 141 288 strength of neighbor avoidance instinct;
#X text 141 320 strength of wall avoidance instinct;
#X text 143 356 distance of vision for avoiding wall edges;
#X text 144 427 willingness to change speed and direction;
#X text 140 216 strength of attraction to 'attractpt';
#X msg 51 557 flyrect \$1 \$2 \$3 \$4 \$5 \$6;
#X text 177 540 bounding box (walls) in which to fly (l/t/r/b/f/b)
;
#X text 174 579 point to which boids are attracted (x/y/z);
#X obj 51 539 pack 0 0 0 0 0 0;
#X floatatom 208 521 5 0 0 0 - - -, f 5;
#X floatatom 247 521 5 0 0 0 - - -, f 5;
#X msg 51 617 attractpt \$1 \$2 \$3;
#X obj 51 597 pack 0 0 0;
#X floatatom 130 580 5 0 0 0 - - -, f 5;
#X connect 0 0 47 0;
#X connect 1 0 46 0;
#X connect 2 0 1 0;
#X connect 3 0 4 0;
#X connect 4 0 46 0;
#X connect 5 0 6 0;
#X connect 6 0 46 0;
#X connect 7 0 8 0;
#X connect 8 0 46 0;
#X connect 9 0 10 0;
#X connect 10 0 46 0;
#X connect 11 0 12 0;
#X connect 12 0 46 0;
#X connect 13 0 14 0;
#X connect 14 0 46 0;
#X connect 15 0 16 0;
#X connect 16 0 46 0;
#X connect 17 0 18 0;
#X connect 18 0 46 0;
#X connect 19 0 20 0;
#X connect 20 0 46 0;
#X connect 21 0 22 0;
#X connect 22 0 46 0;
#X connect 23 0 24 0;
#X connect 24 0 46 0;
#X connect 25 0 26 0;
#X connect 26 0 46 0;
#X connect 27 0 47 0;
#X connect 34 0 60 0;
#X connect 35 0 60 1;
#X connect 36 0 60 2;
#X connect 37 0 60 3;
#X connect 38 0 64 0;
#X connect 39 0 64 1;
#X connect 40 0 41 0;
#X connect 41 0 46 0;
#X connect 43 0 44 0;
#X connect 44 0 47 0;
#X connect 57 0 46 0;
#X connect 60 0 57 0;
#X connect 61 0 60 4;
#X connect 62 0 60 5;
#X connect 63 0 46 0;
#X connect 64 0 63 0;
#X connect 65 0 64 2;
#X restore 217 42 pd boids-help;
#X msg 447 219 \; pd-bloodcell-pool clear;
#X obj 30 21 inlet;
#N canvas 1308 258 178 480 init 0;
#X obj 34 21 loadbang;
#X obj 94 21 r reset;
#X msg 15 78 \; neighbors 4;
#X msg 15 168 \; center 1;
#X msg 15 228 \; match 1;
#X msg 15 318 \; edgedist 1;
#X msg 15 348 \; speed 3;
#X obj 16 49 b;
#X obj 17 21 bng 15 250 50 0 empty empty empty 0 -6 0 8 -262144 -1
-1;
#X msg 15 258 \; avoid 2;
#X msg 15 288 \; repel 2;
#X msg 15 378 \; inertia 8;
#X msg 15 138 \; minspeed 1;
#X msg 15 108 \; maxspeed 3;
#X msg 15 198 \; attract 3;
#X msg 15 408 \; accel 2;
#X msg 15 438 \; prefdist 1.5;
#X connect 0 0 7 0;
#X connect 1 0 7 0;
#X connect 7 0 2 0;
#X connect 7 0 13 0;
#X connect 7 0 12 0;
#X connect 7 0 3 0;
#X connect 7 0 14 0;
#X connect 7 0 4 0;
#X connect 7 0 9 0;
#X connect 7 0 10 0;
#X connect 7 0 6 0;
#X connect 7 0 11 0;
#X connect 7 0 15 0;
#X connect 7 0 16 0;
#X connect 8 0 7 0;
#X restore 216 17 pd init;
#X obj 217 89 boids/boids3d 40 0;
#X obj 369 248 cyclone/counter;
#X connect 0 0 1 0;
#X connect 1 0 5 0;
#X connect 1 1 3 0;
#X connect 1 2 23 0;
#X connect 2 0 23 0;
#X connect 3 0 6 0;
#X connect 4 0 18 0;
#X connect 6 0 4 0;
#X connect 10 0 24 0;
#X connect 11 0 10 0;
#X connect 12 0 11 0;
#X connect 12 1 20 0;
#X connect 12 1 24 2;
#X connect 13 0 12 0;
#X connect 14 0 15 0;
#X connect 15 0 16 0;
#X connect 16 0 4 1;
#X connect 16 1 4 2;
#X connect 16 2 4 3;
#X connect 17 0 3 1;
#X connect 21 0 0 0;
#X connect 23 0 7 0;
#X connect 24 0 9 0;
#X restore 84 178 pd bloodcells;
#X obj 247 71 world_light;
#N canvas 655 229 918 501 players 0;
#N canvas 1406 703 450 300 players-pool 0;
#X obj 20 20 player 1 7;
#X obj 20 20 player 2 7;
#X obj 20 20 player 3 7;
#X obj 20 20 player 4 7;
#X obj 20 20 player 5 7;
#X obj 20 20 player 6 7;
#X obj 20 20 player 7 7;
#X restore 468 185 pd players-pool;
#X msg 443 131 \; pd-players-pool clear;
#X obj 396 190 until 6;
#X obj 613 113 gemhead;
#X obj 613 207 pix_texture;
#X obj 676 226 s /player/circle/texid;
#X obj 26 215 gemhead;
#X obj 26 258 gemframebuffer;
#X obj 26 462 s /player/framebuffer;
#X obj 26 441 t b;
#X obj 168 237 gemhead;
#X obj 173 291 pix_texture;
#X obj 171 316 square 4;
#X obj 26 284 translateXYZ 0 0 -4;
#X floatatom 129 348 5 0 0 0 - - -, f 5;
#X obj 169 256 alpha;
#X msg 98 207 dimen 1000 1000 \, format RGBA;
#X obj 396 241 + 1;
#X obj 26 358 rotateXYZ -40 0 0;
#X obj 211 262 tgl 15 0 empty empty empty 17 7 0 10 -262144 -1 -1 0
1;
#X obj 270 146 tgl 15 0 empty empty empty 17 7 0 10 -262144 -1 -1 0
1;
#X msg 353 41 6;
#X obj 396 262 pack f f;
#X obj 26 236 alpha;
#X floatatom 426 87 5 0 0 0 - - -, f 5;
#X obj 397 42 r /game/players;
#X msg 396 282 \; pd-players-pool obj 20 20 player \$1 \$2;
#X obj 396 109 t f b f b f;
#X obj 613 163 pix_image ./media/circle_6.png;
#X msg 667 133 open ./media/circle_\$1.png;
#X obj 613 138 alpha;
#X obj 644 185 pix_coloralpha;
#X floatatom 190 346 5 0 0 0 - - -, f 5;
#X obj 26 323 translateXYZ 0 0 -1;
#X obj 23 401 scale 1;
#X floatatom 96 406 5 0 0 0 - - -, f 5;
#X obj 396 219 cyclone/counter;
#X connect 2 0 36 0;
#X connect 3 0 30 0;
#X connect 4 1 5 0;
#X connect 6 0 23 0;
#X connect 7 0 13 0;
#X connect 7 1 11 1;
#X connect 9 0 8 0;
#X connect 10 0 15 0;
#X connect 11 0 12 0;
#X connect 13 0 33 0;
#X connect 14 0 18 1;
#X connect 15 0 11 0;
#X connect 16 0 7 0;
#X connect 17 0 22 0;
#X connect 18 0 34 0;
#X connect 19 0 15 0;
#X connect 20 0 10 0;
#X connect 20 0 6 0;
#X connect 21 0 27 0;
#X connect 22 0 26 0;
#X connect 23 0 7 0;
#X connect 24 0 27 0;
#X connect 27 0 2 0;
#X connect 27 1 36 2;
#X connect 27 2 22 1;
#X connect 27 3 1 0;
#X connect 27 4 29 0;
#X connect 28 0 4 0;
#X connect 29 0 28 0;
#X connect 30 0 28 0;
#X connect 32 0 18 2;
#X connect 33 0 18 0;
#X connect 34 0 9 0;
#X connect 35 0 34 1;
#X connect 36 0 17 0;
#X restore 83 230 pd players;
#X obj 87 158 tgl 15 0 empty empty empty 17 7 0 10 -262144 -1 -1 0
1;
#X obj 246 40 gemhead;
#X obj 84 74 gemwin;
#X msg 91 36 destroy \, 0;
#X msg 62 12 dimen 640 480 \, lighting 1 \, create \, 1;
#X connect 3 0 0 0;
#X connect 4 0 1 0;
#X connect 6 0 5 0;
#X connect 7 0 5 0;
#X restore 376 380 pd gem;
#N canvas 804 140 702 421 variables_list 0;
#X text 47 15 /game;
#X text 100 16 /players - number of players;
#X text 104 40 /start - start a new game;
#X text 106 64 /end n - [1/0] game ended \, 1 win \, 0 lose;
#X text 104 89 /score - current score;
#X text 106 112 /score/max - score limit to win;
#X text 108 135 /point - triggered when a point is scored;
#X text 108 189 /level/n A B - A/B minimum/maximum value for range
of nth level;
#X text 111 160 /duration - max duration of a play in minutes;
#X text 40 302 /player/#;
#X text 109 301 n x - # player number \, n current level / x scaled
sensor value [0..1];
#X text 110 237 /game/level_sync n - evenement de sync level n;
#X restore 381 450 pd variables_list;
#N canvas 1098 512 450 290 sound_sends 0;
#X obj 70 -3 r /game/end;
#X obj 159 38 r /game/level_sync;
#X obj 284 62 r /player/scaled;
#X obj 75 273 tgl 15 0 empty empty empty 17 7 0 10 -262144 -1 -1 1
1;
#X obj 72 221 spigot;
#X obj 233 219 r /game/start;
#X msg 337 257 1;
#X msg 195 266 /game/level_sync 3;
#X obj 331 106 r /game/players;
#X obj 367 132 tgl 15 0 empty empty empty 17 7 0 10 -262144 -1 -1 0
1;
#X obj 331 131 >= 4;
#X obj 235 243 t b b b;
#X obj 70 92 t b a;
#X msg 69 114 0;
#X msg 173 182 connect 192.168.0.100 9000;
#X obj 8 211 loadbang;
#X obj 70 17 list prepend /game/end;
#X obj 159 68 list prepend /game/level_sync;
#X obj 284 82 list prepend /player/scaled;
#X obj 331 155 list prepend /game/players;
#X obj 71 180 mrpeach/packOSC;
#X obj 71 245 mrpeach/udpsend;
#X obj 72 64 list trim;
#X obj 160 89 list trim;
#X obj 257 104 list trim;
#X connect 0 0 16 0;
#X connect 1 0 17 0;
#X connect 2 0 18 0;
#X connect 4 0 21 0;
#X connect 5 0 11 0;
#X connect 6 0 4 1;
#X connect 7 0 20 0;
#X connect 8 0 10 0;
#X connect 10 0 9 0;
#X connect 10 0 19 0;
#X connect 11 0 7 0;
#X connect 11 1 10 0;
#X connect 11 2 6 0;
#X connect 12 0 13 0;
#X connect 12 1 20 0;
#X connect 13 0 4 1;
#X connect 14 0 21 0;
#X connect 15 0 14 0;
#X connect 16 0 22 0;
#X connect 17 0 23 0;
#X connect 18 0 24 0;
#X connect 19 0 20 0;
#X connect 20 0 4 0;
#X connect 21 0 3 0;
#X connect 22 0 12 0;
#X connect 23 0 20 0;
#X connect 24 0 20 0;
#X restore 512 354 pd sound_sends;
#N canvas 1002 367 854 381 video_sends 0;
#X obj 70 27 r /game/end;
#X obj 159 38 r /game/level_sync;
#X obj 334 42 r /player/scaled;
#X obj 75 323 tgl 15 0 empty empty empty 17 7 0 10 -262144 -1 -1 1
1;
#X obj 233 219 r /game/start;
#X msg 337 257 1;
#X msg 200 316 /game/level_sync 3;
#X obj 331 106 r /game/players;
#X obj 235 243 t b b b;
#X obj 70 92 t b a;
#X msg 69 114 0;
#X obj 71 180 spigot;
#X obj -2 201 loadbang;
#X obj 159 107 r /game/score;
#X msg -13 227 connect 127.0.0.1 8000;
#X obj 331 155 list prepend /game/players;
#X obj 71 261 mrpeach/packOSC;
#X obj 72 295 mrpeach/udpsend;
#X obj 331 177 list trim;
#X obj 241 275 list prepend /game/start;
#X obj 241 297 list trim;
#X obj 334 62 list prepend /player/scaled;
#X obj 334 84 list trim;
#X obj 159 128 list prepend /game/score;
#X obj 159 150 list trim;
#X obj 159 62 list prepend /game/level_sync;
#X obj 159 84 list trim;
#X obj 70 47 list prepend /game/end;
#X obj 70 69 list trim;
#X connect 0 0 27 0;
#X connect 1 0 25 0;
#X connect 2 0 21 0;
#X connect 4 0 8 0;
#X connect 5 0 11 1;
#X connect 7 0 15 0;
#X connect 8 1 19 0;
#X connect 8 2 5 0;
#X connect 9 0 10 0;
#X connect 9 1 11 0;
#X connect 10 0 11 1;
#X connect 11 0 16 0;
#X connect 12 0 14 0;
#X connect 13 0 23 0;
#X connect 14 0 17 0;
#X connect 15 0 18 0;
#X connect 16 0 17 0;
#X connect 17 0 3 0;
#X connect 18 0 16 0;
#X connect 19 0 20 0;
#X connect 20 0 16 0;
#X connect 21 0 22 0;
#X connect 22 0 11 0;
#X connect 23 0 24 0;
#X connect 24 0 11 0;
#X connect 25 0 26 0;
#X connect 26 0 11 0;
#X connect 27 0 28 0;
#X connect 28 0 9 0;
#X restore 512 376 pd video_sends;
#X obj 29 13 zexy;
#N canvas 294 470 905 475 UKI_sensors 0;
#X floatatom 262 134 3 0 0 0 - - -, f 3;
#X floatatom 289 134 3 0 0 0 - - -, f 3;
#X floatatom 316 134 3 0 0 0 - - -, f 3;
#X floatatom 343 134 3 0 0 0 - - -, f 3;
#X floatatom 370 135 5 0 0 0 - - -, f 5;
#X obj 262 108 unpack 0 0 0 0 0;
#X text 219 133 from:;
#X obj 159 82 route received total from multicast;
#X obj 57 169 moocow/bytes2any;
#X obj 57 51 mrpeach/udpreceive 8000;
#X obj 120 191 print;
#X obj 57 211 t a a;
#X obj 57 275 s;
#X obj 533 44 ESP_sensors 2;
#X msg 57 231 \$2, f 4;
#X obj 57 191 list;
#X msg 84 251 symbol \$1;
#X text 84 276 send to ESP_sensors;
#X obj 308 411 s /game/level/1;
#X obj 308 387 pack f f;
#X obj 352 361 t b f;
#X obj 419 387 pack f f;
#X obj 463 361 t b f;
#X obj 419 411 s /game/level/2;
#X obj 529 387 pack f f;
#X obj 573 361 t b f;
#X obj 530 411 s /game/level/3;
#X obj 355 267 bng 15 250 50 0 empty empty empty 17 7 0 10 -262144
-1 -1;
#X msg 308 335 0;
#X msg 351 334 330;
#X msg 419 334 331;
#X msg 464 335 660;
#X msg 529 331 661;
#X msg 573 331 1024;
#X obj 698 325 r /sensor;
#X obj 698 412 print;
#X obj 749 352 r /player;
#X obj 355 239 loadbang;
#X obj 440 44 ESP_sensors 1;
#X obj 626 44 ESP_sensors 3;
#X obj 719 44 ESP_sensors 4;
#X obj 440 144 ESP_sensors 5;
#X obj 533 144 ESP_sensors 6;
#X obj 626 144 ESP_sensors 7;
#X obj 719 144 ESP_sensors 8;
#X connect 5 0 0 0;
#X connect 5 1 1 0;
#X connect 5 2 2 0;
#X connect 5 3 3 0;
#X connect 5 4 4 0;
#X connect 7 2 5 0;
#X connect 8 0 15 0;
#X connect 9 0 8 0;
#X connect 9 1 7 0;
#X connect 11 0 14 0;
#X connect 11 1 16 0;
#X connect 14 0 12 0;
#X connect 15 0 11 0;
#X connect 16 0 12 1;
#X connect 19 0 18 0;
#X connect 20 0 19 0;
#X connect 20 1 19 1;
#X connect 21 0 23 0;
#X connect 22 0 21 0;
#X connect 22 1 21 1;
#X connect 24 0 26 0;
#X connect 25 0 24 0;
#X connect 25 1 24 1;
#X connect 27 0 28 0;
#X connect 27 0 29 0;
#X connect 27 0 30 0;
#X connect 27 0 31 0;
#X connect 27 0 32 0;
#X connect 27 0 33 0;
#X connect 28 0 19 0;
#X connect 29 0 20 0;
#X connect 30 0 21 0;
#X connect 31 0 22 0;
#X connect 32 0 24 0;
#X connect 33 0 25 0;
#X connect 37 0 27 0;
#X coords 0 -1 1 1 380 230 1 430 20;
#X restore 29 34 pd UKI_sensors;
#N canvas 432 172 1320 864 score_system-old 0;
#X obj 111 -65 r sensors;
#X obj 111 -21 t l l b;
#X msg 111 -1 \$2;
#N canvas 802 151 559 533 levels-range 0;
#X obj 54 4 inlet;
#X obj 54 43 t f f f;
#X obj 314 104 t f f;
#X obj 347 138 r /game/level/3;
#X obj 347 161 unpack f f;
#X obj 314 267 &&;
#X obj 377 195 < 600;
#X obj 314 296 route 1;
#X obj 55 466 outlet;
#X obj 184 104 t f f;
#X obj 191 161 unpack f f;
#X obj 185 294 route 1;
#X obj 54 104 t f f;
#X obj 61 161 unpack f f;
#X obj 55 267 &&;
#X obj 55 294 route 1;
#X obj 61 138 r /game/level/1;
#X obj 191 138 r /game/level/2;
#X obj 224 359 &&;
#X obj 375 295 == 0;
#X obj 224 328 == 0;
#X msg 55 317 1;
#X msg 185 317 2;
#X msg 314 319 3;
#X obj 94 328 == 0;
#X obj 94 379 &&;
#X msg 94 441 0;
#X obj 81 195 < 100;
#X obj 55 224 >= 0;
#X obj 314 200 >= 400;
#X obj 94 398 route 1;
#X obj 212 190 < 300;
#X obj 185 224 >= 200;
#X obj 185 267 &&;
#X connect 0 0 1 0;
#X connect 1 0 12 0;
#X connect 1 1 9 0;
#X connect 1 2 2 0;
#X connect 2 0 29 0;
#X connect 2 1 6 0;
#X connect 3 0 4 0;
#X connect 4 0 29 1;
#X connect 4 1 6 1;
#X connect 5 0 7 0;
#X connect 5 0 19 0;
#X connect 6 0 5 1;
#X connect 7 0 23 0;
#X connect 9 0 32 0;
#X connect 9 1 31 0;
#X connect 10 0 32 1;
#X connect 10 1 31 1;
#X connect 11 0 22 0;
#X connect 12 0 28 0;
#X connect 12 1 27 0;
#X connect 13 0 28 1;
#X connect 13 1 27 1;
#X connect 14 0 15 0;
#X connect 14 0 24 0;
#X connect 15 0 21 0;
#X connect 16 0 13 0;
#X connect 17 0 10 0;
#X connect 18 0 25 1;
#X connect 19 0 18 1;
#X connect 20 0 18 0;
#X connect 21 0 8 0;
#X connect 22 0 8 0;
#X connect 23 0 8 0;
#X connect 24 0 25 0;
#X connect 25 0 30 0;
#X connect 26 0 8 0;
#X connect 27 0 14 1;
#X connect 28 0 14 0;
#X connect 29 0 5 0;
#X connect 30 0 26 0;
#X connect 31 0 33 1;
#X connect 32 0 33 0;
#X connect 33 0 11 0;
#X connect 33 0 20 0;
#X restore 111 20 pd levels-range;
#X floatatom 178 -85 5 0 0 0 - - -, f 5;
#X obj 217 -216 vsl 15 128 0 600 0 0 empty empty empty 0 -9 0 10 -262144
-1 -1 0 1;
#X msg 400 81 3 351.652 0;
#X obj 111 83 t l l;
#N canvas 976 640 450 300 empty-list 0;
#X obj 107 240 list;
#X msg 128 141 0;
#X msg 191 150 0;
#X obj 128 118 until;
#X obj 128 205 t l l;
#X obj 107 94 t b f b;
#X obj 107 46 r /game/players;
#X obj 107 71 - 1;
#X obj 107 268 outlet;
#X msg 73 48 4;
#X obj 128 174 list-abs/list-extend;
#X connect 0 0 8 0;
#X connect 1 0 10 0;
#X connect 2 0 10 1;
#X connect 3 0 1 0;
#X connect 4 0 0 1;
#X connect 4 1 10 1;
#X connect 5 0 0 0;
#X connect 5 1 3 0;
#X connect 5 2 2 0;
#X connect 6 0 7 0;
#X connect 7 0 5 0;
#X connect 9 0 5 0;
#X connect 10 0 4 0;
#X restore 180 266 pd empty-list;
#X obj 111 221 t l l;
#X msg 145 242 \$1;
#X obj 145 262 - 1;
#X msg 111 242 \$3;
#X obj 739 -28 s /game/players;
#X obj 739 -69 hradio 15 1 0 8 empty empty empty 0 -8 0 10 -262144
-1 -1 3;
#X obj 244 -123 hradio 15 1 0 8 empty empty empty 0 -8 0 10 -262144
-1 -1 0;
#X obj 244 -101 + 1;
#X obj 739 -49 + 1;
#X obj 111 305 t l l;
#X msg 797 402 0 0 1 1;
#X obj 111 417 t l l l;
#X floatatom 122 497 5 0 0 0 - - -, f 5;
#X obj 160 501 r /game/players;
#X floatatom 306 495 5 0 0 0 - - -, f 5;
#X obj 344 499 r /game/players;
#X floatatom 486 492 5 0 0 0 - - -, f 5;
#X obj 524 496 r /game/players;
#X obj 113 526 == 4;
#X obj 297 524 == 4;
#X obj 477 519 == 4;
#X obj 342 544 tgl 15 0 empty empty empty 17 7 0 10 -262144 -1 -1 0
1;
#X obj 525 538 tgl 15 0 empty empty empty 17 7 0 10 -262144 -1 -1 0
1;
#X text 154 -42 player# sensor_value;
#X text 152 81 player# sensor_value level;
#X text 145 327 list of players level;
#X obj 921 99 r /game/start;
#X text 990 135 score counter;
#X obj 206 636 route 1;
#X obj 206 658 s /game/point;
#X floatatom 855 203 5 0 0 0 - - -, f 5;
#X obj 892 252 == 10;
#X obj 919 225 r /game/score/max;
#X obj 892 278 route 1;
#X obj 892 302 s /game/win;
#X obj 659 70 r /game/start;
#X obj 659 137 metro 1000;
#X obj 659 224 select 1800;
#X obj 659 94 t b b;
#X msg 660 117 1;
#X obj 722 172 r /game/duration;
#X obj 722 198 * 60;
#X obj 659 253 s /game/loose;
#X obj 892 165 t f f;
#X obj 919 185 s /game/score;
#X obj 683 300 s /game/end;
#X msg 685 274 0;
#X obj 977 325 s /game/end;
#X msg 979 299 1;
#X text 661 46 GAME CHRONOMETER;
#X text 918 45 SCORE COUNTER;
#X obj 914 -22 s /game/level/1;
#X obj 914 -46 pack f f;
#X obj 958 -72 t b f;
#X obj 1025 -46 pack f f;
#X obj 1069 -72 t b f;
#X obj 1025 -22 s /game/level/2;
#X obj 1135 -46 pack f f;
#X obj 1179 -72 t b f;
#X obj 1136 -22 s /game/level/3;
#X msg 336 17 \; /sound player/\$1 \$2 \$3;
#X obj 111 111 unpack f f f;
#X obj 111 178 pack f f f;
#X obj 961 -166 bng 15 250 50 0 empty empty empty 17 7 0 10 -262144
-1 -1;
#X msg 404 217 3 0.37016 0;
#N canvas 681 478 450 300 scale 0;
#X obj 250 35 r /game/level/1;
#X obj 250 56 unpack f f;
#X obj 320 76 unpack f f;
#X obj 320 55 r /game/level/3;
#X obj 250 93 pack f f;
#X obj 139 52 inlet;
#X obj 139 237 outlet;
#X obj 139 158 mapping/autoscale;
#X obj 139 177 maxlib/limit 0 1;
#X obj 250 112 list prepend load;
#X obj 250 134 list trim;
#X connect 0 0 1 0;
#X connect 1 0 4 0;
#X connect 2 1 4 1;
#X connect 3 0 2 0;
#X connect 4 0 9 0;
#X connect 5 0 7 0;
#X connect 7 0 8 0;
#X connect 8 0 6 0;
#X connect 9 0 10 0;
#X connect 10 0 7 0;
#X restore 139 148 pd scale;
#X text 149 196 player# scaled_sensor_value level;
#X obj 113 547 change;
#X obj 113 571 route 1;
#X obj 297 547 change;
#X obj 297 571 route 1;
#X obj 477 547 change;
#X obj 477 571 route 1;
#X obj 360 628 s /game/level_sync;
#X msg 113 592 1;
#X msg 297 592 2;
#X msg 477 592 3;
#X obj 892 65 r /game/level_sync;
#X obj 325 156 s /player/scaled;
#X obj 669 -139 s /game/start;
#X obj 669 -167 bng 15 250 50 0 empty empty empty 17 7 0 10 -262144
-1 -1;
#X floatatom 685 192 5 0 0 0 - - -, f 5;
#X obj 165 549 tgl 15 0 empty empty empty 17 7 0 10 -262144 -1 -1 0
1;
#X obj -38 297 r /game/level_sync;
#X obj -37 321 t b b;
#X msg 31 342 0;
#X msg -46 398 1;
#X obj -38 374 delay;
#X obj 107 383 spigot 1;
#X obj 50 407 tgl 15 0 empty empty empty 17 7 0 10 -262144 -1 -1 1
1;
#X obj 444 -78 route 1 2;
#X msg 445 -55 \$2;
#X msg 475 -55 \$2;
#X obj 546 -2 vradio 15 1 0 4 empty empty empty 0 -8 0 10 -262144 -1
-1 2;
#X obj 566 -2 vradio 15 1 0 4 empty empty empty 0 -8 0 10 -262144 -1
-1 1;
#X obj -38 267 r /game/start;
#X obj 154 596 bng 15 250 50 0 empty empty empty 17 7 0 10 -262144
-1 -1;
#X obj 332 596 bng 15 250 50 0 empty empty empty 17 7 0 10 -262144
-1 -1;
#X obj 507 593 bng 15 250 50 0 empty empty empty 17 7 0 10 -262144
-1 -1;
#X msg -39 349 15000;
#X msg 1179 -102 950;
#X msg 1135 -102 800;
#X msg 1070 -98 750;
#X msg 1025 -99 700;
#N canvas 864 449 450 300 randomLevel 0;
#X obj 228 66 s random;
#X obj 229 45 tgl 15 0 empty empty empty 17 7 0 10 -262144 -1 -1 0
1;
#X obj 46 45 randomLevels 1;
#X obj 46 65 randomLevels 2;
#X obj 46 85 randomLevels 3;
#X obj 46 105 randomLevels 4;
#X obj 46 125 randomLevels 5;
#X obj 46 145 randomLevels 6;
#X obj 46 165 randomLevels 7;
#X obj 46 185 randomLevels 8;
#X obj 227 143 s random/set;
#X msg 227 106 150 1000;
#X msg 289 104 720 1000;
#X msg 358 103 840 1000;
#X connect 1 0 0 0;
#X connect 11 0 10 0;
#X connect 12 0 10 0;
#X connect 13 0 10 0;
#X restore 429 -174 pd randomLevel;
#X msg 914 -98 0;
#X msg 348 349 0 0 0 0 3 2 1 1;
#X msg 607 205 1;
#X msg 758 218 10;
#X obj 404 195 list prepend set;
#X obj 111 285 list-abs/list-replace;
#X obj 113 444 list-abs/list-apply == 1;
#X obj 113 469 list-abs/list-accum;
#X obj 297 442 list-abs/list-apply == 2;
#X obj 297 467 list-abs/list-accum;
#X obj 477 439 list-abs/list-apply == 3;
#X obj 477 464 list-abs/list-accum;
#X obj 659 162 cyclone/counter;
#X obj 892 137 cyclone/counter;
#X obj 797 380 list prepend set;
#X obj 348 327 list prepend set;
#X obj 111 42 list-abs/list-extend;
#X obj 400 59 list prepend set;
#X obj 217 -81 list prepend 2;
#X msg 957 -99 200;
#X connect 0 0 1 0;
#X connect 1 0 2 0;
#X connect 1 1 130 1;
#X connect 1 2 130 1;
#X connect 2 0 3 0;
#X connect 3 0 130 0;
#X connect 5 0 4 0;
#X connect 5 0 132 0;
#X connect 7 0 70 0;
#X connect 8 0 119 2;
#X connect 9 0 12 0;
#X connect 9 1 10 0;
#X connect 10 0 11 0;
#X connect 11 0 119 1;
#X connect 12 0 119 0;
#X connect 14 0 17 0;
#X connect 15 0 16 0;
#X connect 16 0 132 1;
#X connect 17 0 13 0;
#X connect 18 0 97 0;
#X connect 18 1 119 2;
#X connect 18 1 129 0;
#X connect 20 0 120 0;
#X connect 20 1 122 0;
#X connect 20 2 124 0;
#X connect 22 0 27 1;
#X connect 24 0 28 1;
#X connect 26 0 29 1;
#X connect 27 0 76 0;
#X connect 27 0 91 0;
#X connect 28 0 30 0;
#X connect 28 0 78 0;
#X connect 29 0 31 0;
#X connect 29 0 80 0;
#X connect 35 0 127 3;
#X connect 37 0 38 0;
#X connect 40 0 42 0;
#X connect 41 0 40 1;
#X connect 42 0 43 0;
#X connect 42 0 57 0;
#X connect 44 0 47 0;
#X connect 45 0 126 0;
#X connect 46 0 51 0;
#X connect 46 0 55 0;
#X connect 47 0 48 0;
#X connect 47 1 126 2;
#X connect 48 0 45 0;
#X connect 49 0 50 0;
#X connect 50 0 46 1;
#X connect 52 0 40 0;
#X connect 52 1 53 0;
#X connect 55 0 54 0;
#X connect 57 0 56 0;
#X connect 61 0 60 0;
#X connect 62 0 61 0;
#X connect 62 1 61 1;
#X connect 63 0 65 0;
#X connect 64 0 63 0;
#X connect 64 1 63 1;
#X connect 66 0 68 0;
#X connect 67 0 66 0;
#X connect 67 1 66 1;
#X connect 70 0 71 0;
#X connect 70 1 74 0;
#X connect 70 2 71 2;
#X connect 71 0 9 0;
#X connect 71 0 87 0;
#X connect 71 0 118 0;
#X connect 72 0 114 0;
#X connect 72 0 133 0;
#X connect 72 0 112 0;
#X connect 72 0 111 0;
#X connect 72 0 110 0;
#X connect 72 0 109 0;
#X connect 74 0 71 1;
#X connect 76 0 77 0;
#X connect 77 0 83 0;
#X connect 77 0 105 0;
#X connect 78 0 79 0;
#X connect 79 0 84 0;
#X connect 79 0 106 0;
#X connect 80 0 81 0;
#X connect 81 0 85 0;
#X connect 81 0 107 0;
#X connect 83 0 82 0;
#X connect 84 0 82 0;
#X connect 85 0 82 0;
#X connect 86 0 127 0;
#X connect 89 0 88 0;
#X connect 92 0 93 0;
#X connect 93 0 108 0;
#X connect 93 1 94 0;
#X connect 94 0 97 1;
#X connect 94 0 98 0;
#X connect 95 0 97 1;
#X connect 95 0 98 0;
#X connect 96 0 95 0;
#X connect 97 0 20 0;
#X connect 99 0 100 0;
#X connect 99 1 101 0;
#X connect 100 0 102 0;
#X connect 101 0 103 0;
#X connect 104 0 93 0;
#X connect 108 0 96 0;
#X connect 109 0 67 0;
#X connect 110 0 66 0;
#X connect 111 0 64 0;
#X connect 112 0 63 0;
#X connect 114 0 61 0;
#X connect 116 0 51 0;
#X connect 117 0 46 1;
#X connect 118 0 73 0;
#X connect 119 0 18 0;
#X connect 120 0 121 0;
#X connect 121 0 21 0;
#X connect 121 0 27 0;
#X connect 122 0 123 0;
#X connect 123 0 23 0;
#X connect 123 0 28 0;
#X connect 124 0 125 0;
#X connect 125 0 25 0;
#X connect 125 0 29 0;
#X connect 126 0 46 0;
#X connect 126 0 90 0;
#X connect 127 0 39 0;
#X connect 127 0 52 0;
#X connect 128 0 19 0;
#X connect 129 0 115 0;
#X connect 130 0 7 0;
#X connect 130 0 99 0;
#X connect 130 0 131 0;
#X connect 131 0 6 0;
#X connect 132 0 1 0;
#X connect 133 0 62 0;
#X restore 375 407 pd score_system-old;
#N canvas 259 141 814 608 UKI_game&score 1;
#X obj 71 10 r /player;
#X obj 71 38 t a a a;
#X obj 71 130 unpack f f f;
#X text 134 41 reset levels for the incoming player then put 1 in level
table;
#X obj 621 76 array define level1 8;
#X obj 621 96 array define level2 8;
#X obj 621 116 array define level3 8;
#X obj 111 218 array set level1;
#X obj 71 172 t f b f;
#X obj 111 238 array set level2;
#X obj 111 258 array set level3;
#X msg 90 193 0;
#X obj 70 334 array set;
#X msg 260 245 symbol level\$1;
#X obj 70 288 t b f;
#X msg 70 310 1;
#X obj 490 190 t b b b;
#X obj 529 220 array sum level1;
#X obj 509 347 array sum level2;
#X obj 489 474 array sum level3;
#X obj 489 168 metro 100;
#X obj 489 149 tgl 15 0 empty empty empty 17 7 0 10 -262144 -1 -1 1
1;
#X obj 486 123 loadbang;
#X floatatom 619 430 5 0 0 0 - - -, f 5;
#X floatatom 597 452 5 0 0 0 - - -, f 5;
#X obj 336 86 hradio 15 1 0 8 empty empty empty 0 -8 0 10 -262144 -1
-1 1;
#X obj 336 106 + 1;
#X obj 585 295 tgl 15 0 empty empty empty 17 7 0 10 -262144 -1 -1 0
1;
#X obj 529 295 change;
#X obj 529 317 s /sync/1;
#X obj 565 415 tgl 15 0 empty empty empty 17 7 0 10 -262144 -1 -1 0
1;
#X obj 509 415 change;
#X obj 545 545 tgl 15 0 empty empty empty 17 7 0 10 -262144 -1 -1 0
1;
#X obj 489 545 change;
#X obj 509 437 s /sync/2;
#X obj 489 567 s /sync/3;
#X obj 489 523 == 8;
#X obj 509 393 == 8;
#X obj 529 273 == 8;
#X obj 336 127 s /number_of_players;
#X obj 544 252 r /number_of_players;
#X obj 524 372 r /number_of_players;
#X obj 504 502 r /number_of_players;
#X msg 5 17 2 1 1;
#X connect 0 0 1 0;
#X connect 1 0 2 0;
#X connect 2 0 8 0;
#X connect 2 1 13 0;
#X connect 8 0 14 0;
#X connect 8 1 11 0;
#X connect 8 2 7 1;
#X connect 8 2 9 1;
#X connect 8 2 10 1;
#X connect 11 0 7 0;
#X connect 11 0 9 0;
#X connect 11 0 10 0;
#X connect 13 0 12 2;
#X connect 14 0 15 0;
#X connect 14 1 12 1;
#X connect 15 0 12 0;
#X connect 16 0 19 0;
#X connect 16 1 18 0;
#X connect 16 2 17 0;
#X connect 17 0 38 0;
#X connect 18 0 23 0;
#X connect 18 0 37 0;
#X connect 19 0 24 0;
#X connect 19 0 36 0;
#X connect 20 0 16 0;
#X connect 21 0 20 0;
#X connect 22 0 21 0;
#X connect 25 0 26 0;
#X connect 26 0 39 0;
#X connect 28 0 29 0;
#X connect 31 0 34 0;
#X connect 33 0 35 0;
#X connect 36 0 32 0;
#X connect 36 0 33 0;
#X connect 37 0 30 0;
#X connect 37 0 31 0;
#X connect 38 0 27 0;
#X connect 38 0 28 0;
#X connect 40 0 38 1;
#X connect 41 0 37 1;
#X connect 42 0 36 1;
#X connect 43 0 1 0;
#X restore 29 268 pd UKI_game&score;
#X obj 636 8 tgl 15 0 empty empty empty 17 7 0 10 -262144 -1 -1 1 1
;
#X obj 635 28 metro 100;
#X obj 635 180 array;
#X obj 635 50 random 1024;
#X obj 692 146 array get test;
#X obj 692 175 list split 1;
#X obj 658 205 list prepend;
#X obj 657 117 t f b;
#X obj 658 227 array set test;
#X obj 635 72 / 512;
#X obj 635 94 - 1;
#X obj 819 64 array define test 500;
#X msg 837 144 \; test bounds 0 1 500 -1;
#X msg 845 238 \; test bounds Xmin Ymin Xmax Ymax;
#X msg 851 196 \; test bounds \$1 0 500 1024;
#X floatatom 935 178 5 0 0 0 - - -, f 5;
#X obj 490 52 r UKI_ESP_2;
#X obj 492 83 r /sensor;
#X obj 492 105 route 2;
#X connect 8 0 9 0;
#X connect 9 0 11 0;
#X connect 12 0 13 0;
#X connect 13 1 14 1;
#X connect 14 0 16 0;
#X connect 15 0 14 0;
#X connect 15 1 12 0;
#X connect 17 0 18 0;
#X connect 18 0 15 0;
#X connect 23 0 22 0;
#X connect 25 0 26 0;
#X connect 26 0 15 0;
