WORKS CORPORATION

「wonderflは、自分で開発したプログラムを別のユーザーが発展できる所が特徴です。
この特徴を人形のキャラクターをつかって表現してみてください。」
この、曖昧な出題によくぞチャレンジしていただいたという感じで、とにもかくにも、ご参加、ありがとうございました!!
それぞれ、みなさんのwonderflのイメージが表れているのではないでしょうか。
また、マウスクリックと動きをうまく組み合わせているものが多かったのが印象的でした。
未完成のものも、いったん完成としたものも、ぜひこのあとも発展していただけるとうれしいです!

"wonderfl has a feature that other users can develop the program you wrote. Express this feature of wonderfl by using given square headed character." We are so glad you gave a challenge to such an ambiguous question. Anyway, thanks for your participation! It seems that each of yours shows your image of wonderfl well. Also, there were lots of works where clicks and moves were skillfully combined, which was impressive to us. We are happy if you will develop your unfinished and once finished ones after this!

  1. Queen
    sekiryou
    present『ブラウザで無料ではじめるActionScript 3.0』+『.fla2―Idea of Flash Creation―』のセット
    2 books, titled "Learning ActionScript 3.0 only with Web Browser" and ".fla2―Idea of Flash Creation―"
  2. Bishop
    rsakane
    present『ブラウザで無料ではじめるActionScript 3.0』
    A book, titled "Learning ActionScript 3.0 only with Web Browser"
  3. Knight
    h_sakurai
    present『.fla2―Idea of Flash Creation―』
    A book, titled ".fla2―Idea of Flash Creation―"

View All Other Challengers

Queensekiryou

  1. // forked from checkmate's Checkmate Vol.6 Sponser
  2. package {
  3.     import flash.display.*;
  4.     import flash.events.*;
  5.     import flash.geom.*;
  6.     import flash.text.*;
  7.     import flash.net.*;
  8.     import flash.system.*;
  9.     import org.libspark.betweenas3.BetweenAS3;
  10.     import org.libspark.betweenas3.tweens.IObjectTween;
  11.     import org.libspark.betweenas3.easing.*;
  12.     import org.libspark.betweenas3.events.TweenEvent;
  13.     
  14.     [SWF(width = "465", height = "465", backgroundColor = "0x3399ff", frameRate = "30")]
  15.     public class DialecticalCoding extends Sprite {
  16.         private var order:Array = [
  17.             { color:3223857, xx:8, yy:1 },{ color:986895, xx:9, yy:1 },{ color:2631720, xx:8, yy:2 },{ color:0, xx:9, yy:2 },
  18.             { color:0, xx:10, yy:2 },{ color:6052956, xx:7, yy:3 },{ color:0, xx:8, yy:3 },{ color:197379, xx:9, yy:3 },
  19.             { color:789516, xx:7, yy:4 },{ color:197379, xx:8, yy:4 },{ color:1907997, xx:9, yy:4 },{ color:1842204, xx:6, yy:5 },
  20.             { color:0, xx:7, yy:5 },{ color:328965, xx:8, yy:5 },{ color:3947580, xx:9, yy:5 },{ color:460551, xx:6, yy:6 },
  21.             { color:592137, xx:7, yy:6 },{ color:2829099, xx:8, yy:6 },{ color:328965, xx:5, yy:7 },{ color:263172, xx:6, yy:7 },
  22.             { color:657930, xx:7, yy:7 },{ color:592137, xx:4, yy:8 },{ color:0, xx:5, yy:8 },{ color:592137, xx:6, yy:8 },
  23.             { color:723723, xx:7, yy:8 },{ color:3881787, xx:15, yy:8 },{ color:1250067, xx:16, yy:8 },{ color:2894892, xx:4, yy:9 },
  24.             { color:0, xx:5, yy:9 },{ color:0, xx:6, yy:9 },{ color:0, xx:13, yy:9 },{ color:1907997, xx:14, yy:9 },
  25.             { color:0, xx:15, yy:9 },{ color:0, xx:16, yy:9 },{ color:1118481, xx:17, yy:9 },{ color:5066061, xx:3, yy:10 },
  26.             { color:1710618, xx:4, yy:10 },{ color:1250067, xx:5, yy:10 },{ color:328965, xx:12, yy:10 },{ color:526344, xx:13, yy:10 },
  27.             { color:0, xx:14, yy:10 },{ color:0, xx:15, yy:10 },{ color:394758, xx:16, yy:10 },{ color:2763306, xx:17, yy:10 },
  28.             { color:0, xx:3, yy:11 },{ color:0, xx:4, yy:11 },{ color:4473924, xx:5, yy:11 },{ color:6118749, xx:9, yy:11 },
  29.             { color:197379, xx:10, yy:11 },{ color:131586, xx:11, yy:11 },{ color:0, xx:12, yy:11 },{ color:460551, xx:13, yy:11 },
  30.             { color:723723, xx:14, yy:11 },{ color:328965, xx:15, yy:11 },{ color:131586, xx:16, yy:11 },{ color:5460819, xx:17, yy:11 },
  31.             { color:2236962, xx:2, yy:12 },{ color:921102, xx:3, yy:12 },{ color:0, xx:4, yy:12 },{ color:5066061, xx:5, yy:12 },
  32.             { color:789516, xx:7, yy:12 },{ color:1842204, xx:8, yy:12 },{ color:197379, xx:9, yy:12 },{ color:0, xx:10, yy:12 },
  33.             { color:394758, xx:11, yy:12 },{ color:5329233, xx:12, yy:12 },{ color:0, xx:14, yy:12 },{ color:131586, xx:15, yy:12 },
  34.             { color:0, xx:16, yy:12 },{ color:0, xx:2, yy:13 },{ color:986895, xx:3, yy:13 },{ color:65793, xx:4, yy:13 },
  35.             { color:5526612, xx:5, yy:13 },{ color:526344, xx:6, yy:13 },{ color:0, xx:7, yy:13 },{ color:0, xx:8, yy:13 },
  36.             { color:0, xx:9, yy:13 },{ color:855309, xx:13, yy:13 },{ color:1250067, xx:14, yy:13 },{ color:0, xx:15, yy:13 },
  37.             { color:6381921, xx:16, yy:13 },{ color:526344, xx:1, yy:14 },{ color:460551, xx:2, yy:14 },{ color:0, xx:3, yy:14 },
  38.             { color:328965, xx:4, yy:14 },{ color:0, xx:5, yy:14 },{ color:0, xx:6, yy:14 },{ color:131586, xx:7, yy:14 },
  39.             { color:3552822, xx:13, yy:14 },{ color:0, xx:14, yy:14 },{ color:0, xx:15, yy:14 },{ color:0, xx:1, yy:15 },
  40.             { color:0, xx:2, yy:15 },{ color:921102, xx:3, yy:15 },{ color:0, xx:4, yy:15 },{ color:3421236, xx:5, yy:15 },
  41.             { color:2763306, xx:6, yy:15 },{ color:0, xx:13, yy:15 },{ color:0, xx:14, yy:15 },{ color:1118481, xx:23, yy:15 },
  42.             { color:0, xx:2, yy:16 },{ color:1513239, xx:3, yy:16 },{ color:5987163, xx:4, yy:16 },{ color:1315860, xx:12, yy:16 },
  43.             { color:0, xx:13, yy:16 },{ color:1710618, xx:14, yy:16 },{ color:5658198, xx:21, yy:16 },{ color:723723, xx:22, yy:16 },
  44.             { color:0, xx:23, yy:16 },{ color:1842204, xx:24, yy:16 },{ color:0, xx:12, yy:17 },{ color:197379, xx:13, yy:17 },
  45.             { color:2434341, xx:14, yy:17 },{ color:1579032, xx:19, yy:17 },{ color:1907997, xx:20, yy:17 },{ color:789516, xx:21, yy:17 },
  46.             { color:0, xx:22, yy:17 },{ color:986895, xx:23, yy:17 },{ color:1052688, xx:24, yy:17 },{ color:526344, xx:11, yy:18 },
  47.             { color:0, xx:12, yy:18 },{ color:657930, xx:13, yy:18 },{ color:0, xx:18, yy:18 },{ color:723723, xx:19, yy:18 },
  48.             { color:0, xx:20, yy:18 },{ color:0, xx:21, yy:18 },{ color:2039583, xx:22, yy:18 },{ color:4473924, xx:23, yy:18 },
  49.             { color:1381653, xx:11, yy:19 },{ color:263172, xx:12, yy:19 },{ color:0, xx:13, yy:19 },{ color:6513507, xx:16, yy:19 },
  50.             { color:0, xx:17, yy:19 },{ color:723723, xx:18, yy:19 },{ color:0, xx:19, yy:19 },{ color:460551, xx:20, yy:19 },
  51.             { color:4013373, xx:10, yy:20 },{ color:0, xx:11, yy:20 },{ color:0, xx:12, yy:20 },{ color:986895, xx:15, yy:20 },
  52.             { color:197379, xx:16, yy:20 },{ color:526344, xx:17, yy:20 },{ color:0, xx:18, yy:20 },{ color:657930, xx:19, yy:20 },
  53.             { color:0, xx:10, yy:21 },{ color:526344, xx:11, yy:21 },{ color:1250067, xx:12, yy:21 },{ color:3552822, xx:13, yy:21 },
  54.             { color:0, xx:14, yy:21 },{ color:723723, xx:15, yy:21 },{ color:0, xx:16, yy:21 },{ color:4144959, xx:17, yy:21 },
  55.             { color:131586, xx:10, yy:22 },{ color:0, xx:11, yy:22 },{ color:0, xx:12, yy:22 },{ color:657930, xx:13, yy:22 },
  56.             { color:394758, xx:14, yy:22 },{ color:1184274, xx:15, yy:22 },{ color:3158064, xx:16, yy:22 },{ color:1907997, xx:24, yy:22 },
  57.             { color:1052688, xx:25, yy:22 },{ color:855309, xx:26, yy:22 },{ color:0, xx:27, yy:22 },{ color:328965, xx:28, yy:22 },
  58.             { color:5658198, xx:29, yy:22 },{ color:2236962, xx:30, yy:22 },{ color:0, xx:9, yy:23 },{ color:0, xx:10, yy:23 },
  59.             { color:526344, xx:11, yy:23 },{ color:65793, xx:12, yy:23 },{ color:263172, xx:13, yy:23 },{ color:263172, xx:23, yy:23 },
  60.             { color:0, xx:24, yy:23 },{ color:1381653, xx:25, yy:23 },{ color:0, xx:26, yy:23 },{ color:0, xx:27, yy:23 },
  61.             { color:0, xx:28, yy:23 },{ color:0, xx:29, yy:23 },{ color:0, xx:30, yy:23 },{ color:3947580, xx:31, yy:23 },
  62.             { color:855309, xx:10, yy:24 },{ color:0, xx:11, yy:24 },{ color:3355443, xx:12, yy:24 },{ color:197379, xx:22, yy:24 },
  63.             { color:131586, xx:23, yy:24 },{ color:131586, xx:24, yy:24 },{ color:65793, xx:25, yy:24 },{ color:5395026, xx:26, yy:24 },
  64.             { color:5263440, xx:27, yy:24 },{ color:4473924, xx:28, yy:24 },{ color:3881787, xx:29, yy:24 },{ color:0, xx:30, yy:24 },
  65.             { color:526344, xx:31, yy:24 },{ color:1644825, xx:32, yy:24 },{ color:1447446, xx:21, yy:25 },{ color:921102, xx:22, yy:25 },
  66.             { color:65793, xx:23, yy:25 },{ color:723723, xx:24, yy:25 },{ color:0, xx:31, yy:25 },{ color:0, xx:32, yy:25 },
  67.             { color:2565927, xx:33, yy:25 },{ color:592137, xx:20, yy:26 },{ color:0, xx:21, yy:26 },{ color:197379, xx:22, yy:26 },
  68.             { color:0, xx:23, yy:26 },{ color:0, xx:32, yy:26 },{ color:1250067, xx:33, yy:26 },{ color:2171169, xx:34, yy:26 },
  69.             { color:4210752, xx:19, yy:27 },{ color:0, xx:20, yy:27 },{ color:789516, xx:21, yy:27 },{ color:0, xx:22, yy:27 },
  70.             { color:0, xx:33, yy:27 },{ color:1447446, xx:34, yy:27 },{ color:5000268, xx:35, yy:27 },{ color:5066061, xx:19, yy:28 },
  71.             { color:723723, xx:20, yy:28 },{ color:0, xx:21, yy:28 },{ color:1184274, xx:33, yy:28 },{ color:592137, xx:34, yy:28 },
  72.             { color:5131854, xx:35, yy:28 },{ color:1513239, xx:19, yy:29 },{ color:1381653, xx:20, yy:29 },{ color:1842204, xx:21, yy:29 },
  73.             { color:263172, xx:33, yy:29 },{ color:0, xx:34, yy:29 },{ color:2368548, xx:35, yy:29 },{ color:0, xx:19, yy:30 },
  74.             { color:0, xx:20, yy:30 },{ color:5460819, xx:21, yy:30 },{ color:460551, xx:33, yy:30 },{ color:328965, xx:34, yy:30 },
  75.             { color:3158064, xx:35, yy:30 },{ color:592137, xx:19, yy:31 },{ color:657930, xx:20, yy:31 },{ color:2763306, xx:32, yy:31 },
  76.             { color:657930, xx:33, yy:31 },{ color:0, xx:34, yy:31 },{ color:2960685, xx:35, yy:31 },{ color:3618615, xx:19, yy:32 },
  77.             { color:0, xx:20, yy:32 },{ color:526344, xx:21, yy:32 },{ color:1973790, xx:32, yy:32 },{ color:65793, xx:33, yy:32 },
  78.             { color:65793, xx:34, yy:32 },{ color:394758, xx:20, yy:33 },{ color:855309, xx:21, yy:33 },{ color:4539717, xx:22, yy:33 },
  79.             { color:3552822, xx:31, yy:33 },{ color:131586, xx:32, yy:33 },{ color:0, xx:33, yy:33 },{ color:3947580, xx:34, yy:33 },
  80.             { color:0, xx:40, yy:33 },{ color:4276545, xx:41, yy:33 },{ color:921102, xx:20, yy:34 },{ color:0, xx:21, yy:34 },
  81.             { color:3487029, xx:22, yy:34 },{ color:2434341, xx:30, yy:34 },{ color:526344, xx:31, yy:34 },{ color:328965, xx:32, yy:34 },
  82.             { color:394758, xx:33, yy:34 },{ color:526344, xx:39, yy:34 },{ color:0, xx:40, yy:34 },{ color:0, xx:41, yy:34 },
  83.             { color:6250335, xx:42, yy:34 },{ color:328965, xx:21, yy:35 },{ color:592137, xx:22, yy:35 },{ color:1644825, xx:23, yy:35 },
  84.             { color:1052688, xx:24, yy:35 },{ color:4737096, xx:28, yy:35 },{ color:1710618, xx:29, yy:35 },{ color:723723, xx:30, yy:35 },
  85.             { color:0, xx:31, yy:35 },{ color:0, xx:32, yy:35 },{ color:65793, xx:38, yy:35 },{ color:0, xx:39, yy:35 },
  86.             { color:0, xx:40, yy:35 },{ color:0, xx:41, yy:35 },{ color:0, xx:22, yy:36 },{ color:0, xx:23, yy:36 },
  87.             { color:0, xx:24, yy:36 },{ color:0, xx:25, yy:36 },{ color:921102, xx:26, yy:36 },{ color:328965, xx:27, yy:36 },
  88.             { color:0, xx:28, yy:36 },{ color:0, xx:29, yy:36 },{ color:1118481, xx:30, yy:36 },{ color:0, xx:31, yy:36 },
  89.             { color:5855577, xx:32, yy:36 },{ color:65793, xx:37, yy:36 },{ color:1118481, xx:38, yy:36 },{ color:0, xx:39, yy:36 },
  90.             { color:0, xx:40, yy:36 },{ color:4802889, xx:41, yy:36 },{ color:3552822, xx:42, yy:36 },{ color:2631720, xx:23, yy:37 },
  91.             { color:1907997, xx:24, yy:37 },{ color:0, xx:25, yy:37 },{ color:0, xx:26, yy:37 },{ color:0, xx:27, yy:37 },
  92.             { color:0, xx:28, yy:37 },{ color:986895, xx:29, yy:37 },{ color:2960685, xx:30, yy:37 },{ color:657930, xx:36, yy:37 },
  93.             { color:0, xx:37, yy:37 },{ color:0, xx:38, yy:37 },{ color:592137, xx:39, yy:37 },{ color:0, xx:40, yy:37 },
  94.             { color:0, xx:41, yy:37 },{ color:1250067, xx:42, yy:37 },{ color:0, xx:43, yy:37 },{ color:6118749, xx:45, yy:37 },
  95.             { color:4802889, xx:25, yy:38 },{ color:5592405, xx:26, yy:38 },{ color:1907997, xx:27, yy:38 },{ color:1842204, xx:28, yy:38 },
  96.             { color:263172, xx:35, yy:38 },{ color:263172, xx:36, yy:38 },{ color:0, xx:37, yy:38 },{ color:723723, xx:38, yy:38 },
  97.             { color:3487029, xx:41, yy:38 },{ color:3947580, xx:42, yy:38 },{ color:0, xx:43, yy:38 },{ color:460551, xx:44, yy:38 },
  98.             { color:0, xx:45, yy:38 },{ color:4539717, xx:46, yy:38 },{ color:0, xx:34, yy:39 },{ color:460551, xx:35, yy:39 },
  99.             { color:0, xx:36, yy:39 },{ color:723723, xx:37, yy:39 },{ color:4408131, xx:44, yy:39 },{ color:0, xx:45, yy:39 },
  100.             { color:1052688, xx:46, yy:39 },{ color:3618615, xx:47, yy:39 },{ color:0, xx:33, yy:40 },{ color:526344, xx:34, yy:40 },
  101.             { color:0, xx:35, yy:40 },{ color:460551, xx:36, yy:40 },{ color:5592405, xx:45, yy:40 },{ color:0, xx:46, yy:40 },
  102.             { color:263172, xx:47, yy:40 },{ color:4473924, xx:48, yy:40 },{ color:131586, xx:32, yy:41 },{ color:789516, xx:33, yy:41 },
  103.             { color:0, xx:34, yy:41 },{ color:1315860, xx:35, yy:41 },{ color:0, xx:46, yy:41 },{ color:131586, xx:47, yy:41 },
  104.             { color:2236962, xx:48, yy:41 },{ color:0, xx:31, yy:42 },{ color:592137, xx:32, yy:42 },{ color:0, xx:33, yy:42 },
  105.             { color:0, xx:34, yy:42 },{ color:1973790, xx:46, yy:42 },{ color:657930, xx:47, yy:42 },{ color:0, xx:48, yy:42 },
  106.             { color:197379, xx:30, yy:43 },{ color:0, xx:31, yy:43 },{ color:0, xx:32, yy:43 },{ color:657930, xx:33, yy:43 },
  107.             { color:2302755, xx:46, yy:43 },{ color:0, xx:47, yy:43 },{ color:460551, xx:48, yy:43 },{ color:526344, xx:30, yy:44 },
  108.             { color:0, xx:31, yy:44 },{ color:1118481, xx:32, yy:44 },{ color:0, xx:46, yy:44 },{ color:1118481, xx:47, yy:44 },
  109.             { color:1842204, xx:48, yy:44 },{ color:460551, xx:31, yy:45 },{ color:0, xx:45, yy:45 },{ color:526344, xx:46, yy:45 },
  110.             { color:0, xx:47, yy:45 },{ color:0, xx:48, yy:45 },{ color:0, xx:44, yy:46 },{ color:263172, xx:45, yy:46 },
  111.             { color:0, xx:46, yy:46 },{ color:0, xx:47, yy:46 },{ color:197379, xx:43, yy:47 },{ color:131586, xx:44, yy:47 },
  112.             { color:0, xx:45, yy:47 },{ color:131586, xx:46, yy:47 },{ color:0, xx:42, yy:48 },{ color:131586, xx:43, yy:48 },
  113.             { color:0, xx:44, yy:48 },{ color:394758, xx:45, yy:48 },{ color:5395026, xx:50, yy:48 },{ color:0, xx:52, yy:48 },
  114.             { color:328965, xx:53, yy:48 },{ color:197379, xx:54, yy:48 },{ color:3355443, xx:55, yy:48 },{ color:5066061, xx:56, yy:48 },
  115.             { color:0, xx:41, yy:49 },{ color:789516, xx:42, yy:49 },{ color:131586, xx:43, yy:49 },{ color:0, xx:44, yy:49 },
  116.             { color:3026478, xx:49, yy:49 },{ color:197379, xx:50, yy:49 },{ color:0, xx:51, yy:49 },{ color:1184274, xx:52, yy:49 },
  117.             { color:0, xx:53, yy:49 },{ color:65793, xx:54, yy:49 },{ color:0, xx:55, yy:49 },{ color:0, xx:56, yy:49 },
  118.             { color:4539717, xx:57, yy:49 },{ color:394758, xx:40, yy:50 },{ color:0, xx:41, yy:50 },{ color:0, xx:42, yy:50 },
  119.             { color:394758, xx:43, yy:50 },{ color:2302755, xx:48, yy:50 },{ color:0, xx:49, yy:50 },{ color:789516, xx:50, yy:50 },
  120.             { color:263172, xx:51, yy:50 },{ color:1973790, xx:52, yy:50 },{ color:1052688, xx:53, yy:50 },{ color:4342338, xx:54, yy:50 },
  121.             { color:1579032, xx:55, yy:50 },{ color:0, xx:56, yy:50 },{ color:0, xx:57, yy:50 },{ color:3158064, xx:58, yy:50 },
  122.             { color:3158064, xx:65, yy:50 },{ color:657930, xx:66, yy:50 },{ color:263172, xx:39, yy:51 },{ color:0, xx:40, yy:51 },
  123.             { color:197379, xx:41, yy:51 },{ color:0, xx:42, yy:51 },{ color:2500134, xx:47, yy:51 },{ color:0, xx:48, yy:51 },
  124.             { color:1184274, xx:49, yy:51 },{ color:0, xx:50, yy:51 },{ color:5921370, xx:51, yy:51 },{ color:0, xx:57, yy:51 },
  125.             { color:65793, xx:58, yy:51 },{ color:2171169, xx:59, yy:51 },{ color:2763306, xx:64, yy:51 },{ color:0, xx:65, yy:51 },
  126.             { color:460551, xx:66, yy:51 },{ color:526344, xx:67, yy:51 },{ color:263172, xx:38, yy:52 },{ color:0, xx:39, yy:52 },
  127.             { color:0, xx:40, yy:52 },{ color:0, xx:41, yy:52 },{ color:328965, xx:46, yy:52 },{ color:592137, xx:47, yy:52 },
  128.             { color:1315860, xx:48, yy:52 },{ color:0, xx:49, yy:52 },{ color:0, xx:58, yy:52 },{ color:0, xx:59, yy:52 },
  129.             { color:4210752, xx:60, yy:52 },{ color:2960685, xx:63, yy:52 },{ color:592137, xx:64, yy:52 },{ color:263172, xx:65, yy:52 },
  130.             { color:592137, xx:66, yy:52 },{ color:263172, xx:39, yy:53 },{ color:0, xx:40, yy:53 },{ color:1513239, xx:46, yy:53 },
  131.             { color:394758, xx:47, yy:53 },{ color:0, xx:48, yy:53 },{ color:526344, xx:59, yy:53 },{ color:0, xx:60, yy:53 },
  132.             { color:6118749, xx:61, yy:53 },{ color:5066061, xx:62, yy:53 },{ color:0, xx:63, yy:53 },{ color:0, xx:64, yy:53 },
  133.             { color:0, xx:65, yy:53 },{ color:1644825, xx:46, yy:54 },{ color:0, xx:47, yy:54 },{ color:5263440, xx:48, yy:54 },
  134.             { color:2434341, xx:59, yy:54 },{ color:0, xx:60, yy:54 },{ color:1644825, xx:61, yy:54 },{ color:789516, xx:62, yy:54 },
  135.             { color:0, xx:63, yy:54 },{ color:723723, xx:64, yy:54 },{ color:0, xx:45, yy:55 },{ color:0, xx:46, yy:55 },
  136.             { color:1579032, xx:47, yy:55 },{ color:5855577, xx:59, yy:55 },{ color:394758, xx:60, yy:55 },{ color:0, xx:61, yy:55 },
  137.             { color:263172, xx:62, yy:55 },{ color:0, xx:63, yy:55 },{ color:0, xx:45, yy:56 },{ color:263172, xx:46, yy:56 },
  138.             { color:0, xx:47, yy:56 },{ color:5592405, xx:59, yy:56 },{ color:0, xx:60, yy:56 },{ color:328965, xx:61, yy:56 },
  139.             { color:131586, xx:62, yy:56 },{ color:1250067, xx:45, yy:57 },{ color:0, xx:46, yy:57 },{ color:4013373, xx:47, yy:57 },
  140.             { color:3158064, xx:58, yy:57 },{ color:0, xx:59, yy:57 },{ color:1052688, xx:60, yy:57 },{ color:0, xx:61, yy:57 },
  141.             { color:3026478, xx:45, yy:58 },{ color:986895, xx:46, yy:58 },{ color:0, xx:47, yy:58 },{ color:4473924, xx:57, yy:58 },
  142.             { color:0, xx:58, yy:58 },{ color:0, xx:59, yy:58 },{ color:328965, xx:60, yy:58 },{ color:6052956, xx:45, yy:59 },
  143.             { color:592137, xx:46, yy:59 },{ color:0, xx:47, yy:59 },{ color:1250067, xx:48, yy:59 },{ color:3618615, xx:56, yy:59 },
  144.             { color:0, xx:57, yy:59 },{ color:263172, xx:58, yy:59 },{ color:657930, xx:59, yy:59 },{ color:0, xx:46, yy:60 },
  145.             { color:592137, xx:47, yy:60 },{ color:2236962, xx:48, yy:60 },{ color:6250335, xx:49, yy:60 },{ color:2236962, xx:55, yy:60 },
  146.             { color:723723, xx:56, yy:60 },{ color:0, xx:57, yy:60 },{ color:0, xx:58, yy:60 },{ color:0, xx:47, yy:61 },
  147.             { color:394758, xx:48, yy:61 },{ color:1118481, xx:49, yy:61 },{ color:3618615, xx:50, yy:61 },{ color:2697513, xx:54, yy:61 },
  148.             { color:0, xx:55, yy:61 },{ color:0, xx:56, yy:61 },{ color:1315860, xx:57, yy:61 },{ color:4276545, xx:64, yy:61 },
  149.             { color:2500134, xx:65, yy:61 },{ color:2302755, xx:66, yy:61 },{ color:0, xx:67, yy:61 },{ color:6118749, xx:69, yy:61 },
  150.             { color:0, xx:48, yy:62 },{ color:263172, xx:49, yy:62 },{ color:1250067, xx:50, yy:62 },{ color:0, xx:51, yy:62 },
  151.             { color:3355443, xx:53, yy:62 },{ color:789516, xx:54, yy:62 },{ color:1118481, xx:55, yy:62 },{ color:855309, xx:56, yy:62 },
  152.             { color:5197647, xx:57, yy:62 },{ color:3618615, xx:63, yy:62 },{ color:0, xx:64, yy:62 },{ color:789516, xx:65, yy:62 },
  153.             { color:0, xx:66, yy:62 },{ color:789516, xx:67, yy:62 },{ color:0, xx:68, yy:62 },{ color:0, xx:69, yy:62 },
  154.             { color:4605510, xx:70, yy:62 },{ color:197379, xx:49, yy:63 },{ color:0, xx:50, yy:63 },{ color:460551, xx:51, yy:63 },
  155.             { color:0, xx:52, yy:63 },{ color:0, xx:53, yy:63 },{ color:328965, xx:54, yy:63 },{ color:0, xx:55, yy:63 },
  156.             { color:1381653, xx:62, yy:63 },{ color:0, xx:63, yy:63 },{ color:0, xx:64, yy:63 },{ color:2039583, xx:65, yy:63 },
  157.             { color:3815994, xx:66, yy:63 },{ color:1710618, xx:67, yy:63 },{ color:1776411, xx:68, yy:63 },{ color:657930, xx:69, yy:63 },
  158.             { color:0, xx:70, yy:63 },{ color:3223857, xx:71, yy:63 },{ color:2894892, xx:50, yy:64 },{ color:986895, xx:51, yy:64 },
  159.             { color:0, xx:52, yy:64 },{ color:526344, xx:53, yy:64 },{ color:526344, xx:54, yy:64 },{ color:0, xx:61, yy:64 },
  160.             { color:855309, xx:62, yy:64 },{ color:0, xx:63, yy:64 },{ color:2500134, xx:64, yy:64 },{ color:0, xx:70, yy:64 },
  161.             { color:263172, xx:71, yy:64 },{ color:2894892, xx:72, yy:64 },{ color:5987163, xx:51, yy:65 },{ color:3487029, xx:52, yy:65 },
  162.             { color:65793, xx:53, yy:65 },{ color:5592405, xx:54, yy:65 },{ color:1842204, xx:60, yy:65 },{ color:460551, xx:61, yy:65 },
  163.             { color:0, xx:62, yy:65 },{ color:526344, xx:63, yy:65 },{ color:0, xx:64, yy:65 },{ color:65793, xx:71, yy:65 },
  164.             { color:0, xx:72, yy:65 },{ color:3487029, xx:73, yy:65 },{ color:1513239, xx:59, yy:66 },{ color:0, xx:60, yy:66 },
  165.             { color:921102, xx:61, yy:66 },{ color:3026478, xx:62, yy:66 },{ color:0, xx:63, yy:66 },{ color:723723, xx:64, yy:66 },
  166.             { color:0, xx:65, yy:66 },{ color:65793, xx:72, yy:66 },{ color:263172, xx:73, yy:66 },{ color:0, xx:59, yy:67 },
  167.             { color:855309, xx:60, yy:67 },{ color:921102, xx:61, yy:67 },{ color:2960685, xx:63, yy:67 },{ color:0, xx:64, yy:67 },
  168.             { color:592137, xx:65, yy:67 },{ color:460551, xx:66, yy:67 },{ color:592137, xx:72, yy:67 },{ color:0, xx:73, yy:67 },
  169.             { color:5197647, xx:74, yy:67 },{ color:4079166, xx:58, yy:68 },{ color:460551, xx:59, yy:68 },{ color:197379, xx:60, yy:68 },
  170.             { color:2829099, xx:64, yy:68 },{ color:921102, xx:65, yy:68 },{ color:197379, xx:66, yy:68 },{ color:0, xx:67, yy:68 },
  171.             { color:1381653, xx:72, yy:68 },{ color:526344, xx:73, yy:68 },{ color:2105376, xx:74, yy:68 },{ color:0, xx:58, yy:69 },
  172.             { color:723723, xx:59, yy:69 },{ color:1118481, xx:60, yy:69 },{ color:526344, xx:65, yy:69 },{ color:986895, xx:66, yy:69 },
  173.             { color:526344, xx:67, yy:69 },{ color:0, xx:68, yy:69 },{ color:0, xx:72, yy:69 },{ color:0, xx:73, yy:69 },
  174.             { color:4144959, xx:74, yy:69 },{ color:2960685, xx:58, yy:70 },{ color:0, xx:59, yy:70 },{ color:2171169, xx:60, yy:70 },
  175.             { color:2565927, xx:66, yy:70 },{ color:0, xx:67, yy:70 },{ color:0, xx:68, yy:70 },{ color:0, xx:69, yy:70 },
  176.             { color:526344, xx:71, yy:70 },{ color:0, xx:72, yy:70 },{ color:921102, xx:73, yy:70 },{ color:6118749, xx:74, yy:70 },
  177.             { color:4868682, xx:58, yy:71 },{ color:0, xx:59, yy:71 },{ color:0, xx:60, yy:71 },{ color:2434341, xx:67, yy:71 },
  178.             { color:986895, xx:68, yy:71 },{ color:0, xx:69, yy:71 },{ color:0, xx:70, yy:71 },{ color:0, xx:71, yy:71 },
  179.             { color:65793, xx:72, yy:71 },{ color:65793, xx:73, yy:71 },{ color:2171169, xx:78, yy:71 },{ color:1381394, xx:79, yy:71 },
  180.             { color:1381653, xx:59, yy:72 },{ color:0, xx:60, yy:72 },{ color:0, xx:61, yy:72 },{ color:2039583, xx:68, yy:72 },
  181.             { color:855309, xx:69, yy:72 },{ color:0, xx:70, yy:72 },{ color:0, xx:71, yy:72 },{ color:1250067, xx:72, yy:72 },
  182.             { color:1579032, xx:77, yy:72 },{ color:394758, xx:78, yy:72 },{ color:196866, xx:79, yy:72 },{ color:3750201, xx:59, yy:73 },
  183.             { color:394758, xx:60, yy:73 },{ color:1447446, xx:61, yy:73 },{ color:4144959, xx:62, yy:73 },{ color:1447446, xx:69, yy:73 },
  184.             { color:263172, xx:70, yy:73 },{ color:65793, xx:71, yy:73 },{ color:3026478, xx:76, yy:73 },{ color:0, xx:77, yy:73 },
  185.             { color:0, xx:78, yy:73 },{ color:3881274, xx:79, yy:73 },{ color:0, xx:60, yy:74 },{ color:0, xx:61, yy:74 },
  186.             { color:3092271, xx:62, yy:74 },{ color:1644825, xx:70, yy:74 },{ color:2171169, xx:75, yy:74 },{ color:0, xx:76, yy:74 },
  187.             { color:2236962, xx:77, yy:74 },{ color:65793, xx:78, yy:74 },{ color:65538, xx:79, yy:74 },{ color:393220, xx:80, yy:74 },
  188.             { color:1182482, xx:81, yy:74 },{ color:4276806, xx:82, yy:74 },{ color:328965, xx:61, yy:75 },{ color:0, xx:62, yy:75 },
  189.             { color:3092271, xx:63, yy:75 },{ color:2500134, xx:74, yy:75 },{ color:0, xx:75, yy:75 },{ color:855309, xx:76, yy:75 },
  190.             { color:0, xx:77, yy:75 },{ color:3618615, xx:78, yy:75 },{ color:657419, xx:79, yy:75 },{ color:1050126, xx:80, yy:75 },
  191.             { color:262149, xx:81, yy:75 },{ color:460812, xx:82, yy:75 },{ color:1975848, xx:83, yy:75 },{ color:0, xx:62, yy:76 },
  192.             { color:0, xx:63, yy:76 },{ color:3026478, xx:64, yy:76 },{ color:2829099, xx:65, yy:76 },{ color:2368548, xx:73, yy:76 },
  193.             { color:0, xx:74, yy:76 },{ color:1776411, xx:75, yy:76 },{ color:328965, xx:76, yy:76 },{ color:2, xx:82, yy:76 },
  194.             { color:460551, xx:63, yy:77 },{ color:0, xx:64, yy:77 },{ color:0, xx:65, yy:77 },{ color:3684408, xx:66, yy:77 },
  195.             { color:2236962, xx:72, yy:77 },{ color:921102, xx:73, yy:77 },{ color:0, xx:74, yy:77 },{ color:0, xx:75, yy:77 },
  196.             { color:10501958, xx:89, yy:77 },{ color:10365491, xx:90, yy:77 },{ color:9376282, xx:91, yy:77 },{ color:9573657, xx:92, yy:77 },
  197.             { color:8916239, xx:93, yy:77 },{ color:10497322, xx:94, yy:77 },{ color:1579032, xx:64, yy:78 },{ color:6250335, xx:65, yy:78 },
  198.             { color:2105376, xx:71, yy:78 },{ color:0, xx:72, yy:78 },{ color:65793, xx:73, yy:78 },{ color:0, xx:74, yy:78 },
  199.             { color:10502723, xx:88, yy:78 },{ color:9179930, xx:89, yy:78 },{ color:11213604, xx:90, yy:78 },{ color:10684432, xx:91, yy:78 },
  200.             { color:11999261, xx:92, yy:78 },{ color:12065307, xx:93, yy:78 },{ color:11014157, xx:94, yy:78 },{ color:8785936, xx:95, yy:78 },
  201.             { color:2698026, xx:70, yy:79 },{ color:256, xx:71, yy:79 },{ color:197892, xx:72, yy:79 },{ color:256, xx:73, yy:79 },
  202.             { color:8332321, xx:87, yy:79 },{ color:8260107, xx:88, yy:79 },{ color:10493472, xx:89, yy:79 },{ color:9044482, xx:90, yy:79 },
  203.             { color:9443611, xx:95, yy:79 },{ color:8137522, xx:96, yy:79 },{ color:1316119, xx:69, yy:80 },{ color:264199, xx:70, yy:80 },
  204.             { color:256, xx:71, yy:80 },{ color:256, xx:72, yy:80 },{ color:8917267, xx:86, yy:80 },{ color:11083040, xx:87, yy:80 },
  205.             { color:10293006, xx:88, yy:80 },{ color:9507340, xx:89, yy:80 },{ color:9705253, xx:96, yy:80 },{ color:8850714, xx:97, yy:80 },
  206.             { color:1907999, xx:68, yy:81 },{ color:197638, xx:69, yy:81 },{ color:66820, xx:70, yy:81 },{ color:264712, xx:71, yy:81 },
  207.             { color:8660005, xx:85, yy:81 },{ color:10689568, xx:86, yy:81 },{ color:9502720, xx:87, yy:81 },{ color:11016216, xx:88, yy:81 },
  208.             { color:8785157, xx:89, yy:81 },{ color:11351101, xx:96, yy:81 },{ color:11611700, xx:97, yy:81 },{ color:7936795, xx:98, yy:81 },
  209.             { color:2, xx:68, yy:82 },{ color:2, xx:69, yy:82 },{ color:1185301, xx:70, yy:82 },{ color:6492950, xx:84, yy:82 },
  210.             { color:7145739, xx:85, yy:82 },{ color:8392206, xx:86, yy:82 },{ color:8456456, xx:87, yy:82 },{ color:8127491, xx:88, yy:82 },
  211.             { color:9444893, xx:89, yy:82 },{ color:9184550, xx:90, yy:82 },{ color:7412240, xx:97, yy:82 },{ color:2, xx:69, yy:83 },
  212.             { color:5375243, xx:83, yy:83 },{ color:7280154, xx:84, yy:83 },{ color:7871772, xx:85, yy:83 },{ color:4915200, xx:86, yy:83 },
  213.             { color:6948618, xx:89, yy:83 },{ color:8196636, xx:90, yy:83 },{ color:9711421, xx:91, yy:83 },{ color:7413286, xx:100, yy:83 },
  214.             { color:7613998, xx:82, yy:84 },{ color:6360849, xx:83, yy:84 },{ color:6690068, xx:84, yy:84 },{ color:6428693, xx:85, yy:84 },
  215.             { color:7672356, xx:90, yy:84 },{ color:9382723, xx:91, yy:84 },{ color:5177366, xx:92, yy:84 },{ color:7999253, xx:99, yy:84 },
  216.             { color:10165297, xx:100, yy:84 },{ color:9048105, xx:101, yy:84 },{ color:5644310, xx:81, yy:85 },{ color:5443594, xx:82, yy:85 },
  217.             { color:6430235, xx:83, yy:85 },{ color:4524548, xx:84, yy:85 },{ color:5111830, xx:91, yy:85 },{ color:9640741, xx:99, yy:85 },
  218.             { color:10361134, xx:100, yy:85 },{ color:9048105, xx:101, yy:85 },{ color:5843490, xx:80, yy:86 },{ color:3868416, xx:81, yy:86 },
  219.             { color:4857363, xx:82, yy:86 },{ color:2097152, xx:83, yy:86 },{ color:10825006, xx:97, yy:86 },{ color:8586764, xx:98, yy:86 },
  220.             { color:9641511, xx:99, yy:86 },{ color:8855852, xx:100, yy:86 },{ color:7164240, xx:79, yy:87 },{ color:3080704, xx:80, yy:87 },
  221.             { color:5055001, xx:81, yy:87 },{ color:1901824, xx:82, yy:87 },{ color:11215665, xx:96, yy:87 },{ color:11276318, xx:97, yy:87 },
  222.             { color:10821932, xx:98, yy:87 },{ color:8394783, xx:99, yy:87 },{ color:4008235, xx:78, yy:88 },{ color:2427660, xx:79, yy:88 },
  223.             { color:3675411, xx:80, yy:88 },{ color:2032128, xx:81, yy:88 },{ color:9513268, xx:95, yy:88 },{ color:11077921, xx:96, yy:88 },
  224.             { color:10551315, xx:97, yy:88 },{ color:9903400, xx:98, yy:88 },{ color:3482920, xx:77, yy:89 },{ color:1771530, xx:78, yy:89 },
  225.             { color:2889753, xx:79, yy:89 },{ color:2625041, xx:80, yy:89 },{ color:8663604, xx:94, yy:89 },{ color:8523289, xx:95, yy:89 },
  226.             { color:9502740, xx:96, yy:89 },{ color:9899552, xx:97, yy:89 },{ color:852740, xx:76, yy:90 },{ color:524288, xx:77, yy:90 },
  227.             { color:3286052, xx:78, yy:90 },{ color:851968, xx:79, yy:90 },{ color:6956320, xx:93, yy:90 },{ color:7606290, xx:94, yy:90 },
  228.             { color:8525083, xx:95, yy:90 },{ color:7148057, xx:96, yy:90 },{ color:589825, xx:77, yy:91 },{ color:1575948, xx:78, yy:91 },
  229.             { color:7879993, xx:92, yy:91 },{ color:6295310, xx:93, yy:91 },{ color:8262937, xx:94, yy:91 },{ color:6950417, xx:95, yy:91 },
  230.             { color:7945792, xx:91, yy:92 },{ color:5244939, xx:92, yy:92 },{ color:6623253, xx:93, yy:92 },{ color:6687504, xx:94, yy:92 },
  231.             { color:5775654, xx:90, yy:93 },{ color:5312021, xx:91, yy:93 },{ color:6626339, xx:92, yy:93 },{ color:4784131, xx:93, yy:93 },
  232.             { color:5778477, xx:89, yy:94 },{ color:5051418, xx:90, yy:94 },{ color:4326155, xx:91, yy:94 },{ color:4589840, xx:92, yy:94 },
  233.             { color:5321521, xx:88, yy:95 },{ color:4003094, xx:89, yy:95 },{ color:3738382, xx:90, yy:95 },{ color:4987681, xx:91, yy:95 },
  234.             { color:3548194, xx:87, yy:96 },{ color:2954263, xx:88, yy:96 },{ color:3875108, xx:89, yy:96 },{ color:2098697, xx:90, yy:96 },
  235.             { color:3942699, xx:86, yy:97 },{ color:2561046, xx:87, yy:97 },{ color:2494996, xx:88, yy:97 },{ color:1114112, xx:89, yy:97 },
  236.             { color:3418154, xx:85, yy:98 },{ color:2496025, xx:86, yy:98 },{ color:2035474, xx:87, yy:98 },{ color:2758427, xx:88, yy:98 },
  237.             { color:721154, xx:85, yy:99 },{ color:3483177, xx:86, yy:99 },{ color:983043, xx:87, yy:99 },{ color:458752, xx:86, yy:100 }
  238.         ];
  239.         
  240.         private var _canvas:BitmapData;
  241.         private const STAGE_WIDTH:Number = stage.stageWidth;
  242.         private const STAGE_HEIGHT:Number = stage.stageHeight;
  243.         
  244.         private var imgSrc:String = "http://assets.dev.wonderfl.net/images/related_images/e/ea/ea8a/ea8a6b1d37c2cec12e07893c66f164a9da1e92c0";
  245.         private var _loader:Loader;
  246.         
  247.         private var robo:RoboII;
  248.         private var robos:Array = []
  249.         public function DialecticalCoding() {
  250.             stage.scaleMode = StageScaleMode.NO_SCALE;
  251.             stage.align = StageAlign.TOP_LEFT;
  252.             
  253.             graphics.beginFill( 0x3399ff )
  254.             graphics.drawRect( 0,0,465,465)
  255.     
  256.             addChild( new Bitmap( _canvas = new BitmapData ( STAGE_WIDTH, STAGE_HEIGHT, true, 0x00000000 ) ) );
  257.             
  258.             _loader = new Loader();
  259.             _loader.contentLoaderInfo.addEventListener( Event.COMPLETE, completeHandler );
  260.             _loader.load( new URLRequest(imgSrc), new LoaderContext(true) );
  261.         }
  262.         private function completeHandler(e:Event):void {
  263.             var bmp:BitmapData = Bitmap( _loader.content ).bitmapData;
  264.             _loader.contentLoaderInfo.removeEventListener( Event.COMPLETE, completeHandler );
  265.             _loader = null;
  266.             
  267.             for ( var i:uint = 0; i < order.length; ++i ) {
  268.                 robo = new RoboII( order[ i ].color, order[ i ].xx, order[ i ].yy, bmp );
  269.                 robos.push( robo );
  270.             }
  271.             addEventListener( Event.ENTER_FRAME, observer );
  272.         }
  273.         private function observer( e:Event ):void {
  274.             var complete:uint = robos[ 0 ].complete;
  275.             for ( var i:int = 0; i < order.length; ++i ) {
  276.                 complete = complete & robos[ i ].complete;
  277.             }
  278.             if ( complete ) {
  279.                 removeEventListener( Event.ENTER_FRAME, observer );
  280.                 addEventListener( Event.ENTER_FRAME, enterFrameHandler );
  281.                 stage.addEventListener( MouseEvent.CLICK, kumonoko );
  282.                 
  283.                 var phrase = addChild( catchPhrase() );
  284.                 
  285.                 var tween:IObjectTween = BetweenAS3.tween( phrase, { alpha:1.0 }, { alpha:0.0 }, 4.0, Cubic.easeOut );
  286.                 tween.addEventListener( TweenEvent.COMPLETE, onComplete );
  287.                 tween.play();
  288.                 function onComplete( e:TweenEvent ):void {
  289.                     BetweenAS3.tween( phrase, { alpha:0.0 }, { alpha:1.0 }, 2.0, Cubic.easeOut ).play();
  290.                 }
  291.             }
  292.         }
  293.         private function catchPhrase():TextField {
  294.             var txt:TextField = new TextField();
  295.             txt.width = 200;
  296.             txt.height = 40;
  297.             
  298.             txt.x = STAGE_WIDTH * 0.5 - txt.width * 0.5;
  299.             txt.y = STAGE_HEIGHT * 0.5 - txt.height * 0.5;
  300.             
  301.             txt.type = TextFieldType.DYNAMIC;
  302.             txt.border = false;
  303.             txt.background = false;
  304.             txt.selectable = false;
  305.             txt.textColor = 0xFFFFFF;
  306.             
  307.             var tf:TextFormat = new TextFormat();
  308.             tf.font = "Verdana";
  309.             tf.size = 18;
  310.             tf.align = TextFormatAlign.CENTER;
  311.             txt.defaultTextFormat = tf;
  312.             
  313.             //txt.text = "Dialectical Coding...";
  314.             txt.text = "build flash online";
  315.             txt.alpha = 0;
  316.             return txt;
  317.         }
  318.         private function kumonoko( e:MouseEvent ):void {
  319.             var totalRobo:uint = robos.length
  320.             for ( var i:int = 0; i < totalRobo; ++i ) {
  321.                 robos[ i ].refuge( stage.mouseX, stage.mouseY );
  322.             }
  323.         }
  324.         private function enterFrameHandler( e:Event ):void {
  325.             var totalRobo:uint = robos.length
  326.             for ( var i:int = 0; i < totalRobo; i++ ) {
  327.                 robos[ i ].update();
  328.             }
  329.             robos.sortOn("py"Array.NUMERIC );
  330.             _canvas.lock();
  331.             _canvas.fillRect( _canvas.rect, 0x3399ff )
  332.             for ( i = 0; i < totalRobo; i++ ) {
  333.                 _canvas.copyPixels( robos[ i ].frames[ robos[ i ].pose ], robos[ i ].frames[ robos[ i ].pose ].rect, new Point( robos[ i ].px, robos[ i ].py), nullnulltrue );
  334.             }
  335.             _canvas.unlock();
  336.         }
  337.     }
  338. }
  339. import flash.display.*;
  340. import flash.events.*;
  341. import flash.geom.*;
  342. class RoboII extends Sprite {
  343.     public var frames:Array;
  344.     public var complete:uint = 0;
  345.     
  346.     private var actions:uint;
  347.     private var currentAct:uint = 0;
  348.     private var actFrame:uint = 0;
  349.     private var actPeriod:Number = 8;
  350.     public var pose:uint;
  351.     
  352.     private var _color:uint;
  353.     private var mode:Boolean;
  354.     private var speed:Number;
  355.     public var px:Number, py:Number;
  356.     private var rx:Number = 465 + Math.random() * 465;
  357.     private var ry:Number = -Math.random() * 465;
  358.     private var dx:Number, dy:Number;
  359.     
  360.     public function RoboII( color:uint, destinationX:Number, destinationY:Number, bmp:BitmapData ) {
  361.         _color = color;
  362.         var posRatio:Number = 4.4
  363.         dx = destinationX * posRatio;
  364.         dy = destinationY * posRatio;
  365.         mode = true;
  366.         var k:Number = Math.random() * 465 - 465 * 0.5;
  367.         rx = k > 0 ? (k + 565) : k - 100;
  368.         k = Math.random()  * 465 - 465 * 0.5;
  369.         ry = k > 0 ? (k + 565) : k - 100;
  370.         px = rx;
  371.         py = ry;
  372.         
  373.         frames = [];
  374.         var ratio:Number = 0.7;
  375.         const frameWidth:int = 20;
  376.         const frameHeight:int = 34;
  377.         for ( var i:uint = 0; i < 2; i++ ) {
  378.             var frame:BitmapData = new BitmapData( frameWidth * ratio, frameHeight * ratio, true0 );
  379.             var matrix:Matrix = new Matrix();
  380.             matrix.translate( -i * frameWidth, 0 );
  381.             matrix.scale( ratio, ratio );
  382.             
  383.             var getR:uint = ( _color >> 16 ) & 0xFF;
  384.             var getG:uint = ( _color >> 8 ) & 0xFF;
  385.             var getB:uint = _color & 0xFF;
  386.             var colorTrans:ColorTransform = new ColorTransform( getR / 256 + 0.1, getG / 256 + 0.1, getB / 256 + 0.1 );
  387.             
  388.             frame.draw( bmp, matrix, colorTrans );
  389.             frames.push( frame );
  390.             
  391.             frame = new BitmapData( frameWidth * ratio, frameHeight * ratio, true0 );
  392.             matrix.identity();
  393.             matrix.translate( ( -i - 1 ) * frameWidth, 0 );
  394.             matrix.scale( -ratio, ratio );
  395.             
  396.             frame.draw( bmp, matrix, colorTrans );
  397.             frames.push( frame );
  398.         }
  399.         actions = frames.length;
  400.         complete = 1;
  401.     }
  402.     public function update():void {
  403.         if ( mode ) {
  404.             speed = Math.random() * 1.5 + 1.5;
  405.             var angle:Number = Math.atan2( dy - py, dx - px );
  406.             if ( ( px < dx - 1.5 || px > dx + 1.5 ) ) {
  407.                 var vx:Number = Math.cos( angle ) * speed;
  408.                 px += vx;
  409.             }
  410.             if ( ( py < dy - 1.5 || py > dy + 1.5 ) ) {
  411.                 var vy:Number = Math.sin( angle ) * speed;
  412.                 py += vy;
  413.             }
  414.         } else {
  415.             speed = Math.random() * 4 + 8;
  416.             angle = Math.atan2( ry - py, rx - px );
  417.             if ( px < rx - 10 || px > rx + 10 ) {
  418.                 vx = Math.cos( angle ) * speed;
  419.                 px += vx;
  420.             } else {
  421.                 var rxFlag:Boolean = true;
  422.             }
  423.             if ( py < ry - 10 || py > ry + 10 ) {
  424.                 vy = Math.sin( angle ) * speed;
  425.                 py += vy;
  426.             } else {
  427.                 var ryFlag:Boolean = true;
  428.             }
  429.             if( rxFlag && ryFlag ) {
  430.                 mode = true;
  431.             }
  432.         }
  433.         actPeriod = 6 / speed;
  434.         actFrame += 1;
  435.         if ( actPeriod < actFrame ) {
  436.             actFrame = 0;
  437.             currentAct += 2;
  438.             if ( currentAct >= actions ) {
  439.                 currentAct = 0;
  440.             }
  441.         }
  442.         if ( vx > 0 )
  443.             pose = currentAct + 1;
  444.         else
  445.             pose = currentAct;
  446.     }
  447.     public function refuge( mx:Number, my:Number ):void {
  448.         if ( px > -20 && px < 485 && py > -20 && py < 485 ) {
  449.             mode = false;
  450.             
  451.             var angle:Number = Math.atan2( my - py, mx - px );
  452.             var distance:Number = Math.random() * 80 + 640
  453.             rx = px - Math.cos( angle ) * distance;
  454.             ry = py - Math.sin( angle ) * distance;
  455.         }
  456.     }
  457. }
flash swf thumbnail play
出題者からのコメント
集まってくる様子、マウスのクリックで散る様子、その動きがなんとも…でおもしろかったです。見てるだけでもムズムズするし、散らすとくせになります。
Comments from King
How would we say about this move...they are getting together and breaking up with a click...what fun that is! Feel crawly just to see them and it may get to be a habit if you try dispersing them.

Bishoprsakane

  1. /*
  2.  * お題と全然関係ないコードですが、何となく思いついたので作成。
  3.  * 
  4.  * 画面をクリックすると壁を追加/削除することが出来ます。
  5.  * ゴールまでの道が閉ざされてしまうとロボが止まってしまいます。
  6.  *
  7.  **/
  8. package
  9. {
  10.     import flash.display.Sprite;
  11.     import flash.events.Event;
  12.     import flash.events.MouseEvent;
  13.     import flash.geom.Point;
  14.     import flash.geom.Matrix;
  15.     import org.libspark.betweenas3.BetweenAS3;
  16.     
  17.     [SWF(backgroundColor="0xEDEDED")]
  18.     public class Main extends Sprite
  19.     {
  20.         private var roboX:int = 1;
  21.         private var roboY:int = 1;
  22.         private var nodes:Array;
  23.         private var count:int = 0;
  24.         private var robo:Robo;
  25.         
  26.         private var direction:Array = 
  27.         [
  28.             [ 1,  0],
  29.             [-1,  0],
  30.             [ 0,  1],
  31.             [ 0, -1]
  32.         ];
  33.         
  34.         public function Main()
  35.         {
  36.             Board.init();
  37.             
  38.             nodes = new Array(Board.HEIGHT);
  39.             for (var y:int = 0; y < Board.HEIGHT; y++)
  40.             {
  41.                 nodes[y] = new Array(Board.WIDTH);
  42.                 for (var x:int = 0; x < Board.WIDTH; x++)
  43.                 {
  44.                     var node:Node = new Node();
  45.                     node.pos.y = y, node.pos.x = x;
  46.                     node.status = Board.map[y][x];
  47.                     
  48.                     nodes[y][x] = node;
  49.                     
  50.                     if (node.status == Status.WALL)
  51.                     {
  52.                         var matrix:Matrix = new Matrix();
  53.                         matrix.createGradientBox(Board.SW, Board.SH, 45 * Math.PI / 180, x * Board.SW, y * Board.SH);
  54.                         graphics.beginGradientFill("linear", [0x0, 0x393939], [1.01.0], [0255], matrix);
  55.                         graphics.drawRect(x * Board.SW, y * Board.SH, Board.SW, Board.SH);
  56.                         graphics.endFill();
  57.                     }
  58.                 }
  59.             }
  60.             
  61.             robo = new Robo(8truetrue);
  62.             robo.load();
  63.             robo.scaleX = 0.8;
  64.             robo.scaleY = 0.8;
  65.             robo.x = roboX * Board.SW;
  66.             robo.y = roboY * Board.SH;
  67.             addChild(robo);
  68.             
  69.             drawTarget(11);
  70.             
  71.             addEventListener(Event.ENTER_FRAME, solve);
  72.             stage.addEventListener(MouseEvent.MOUSE_DOWN, onMouseDown);
  73.         }
  74.         
  75.         private function onMouseDown(event:MouseEvent):void
  76.         {
  77.             if (mouseX < 0 || Board.SW * Board.WIDTH <= mouseX || mouseY < 0 || Board.SH * Board.HEIGHT <= mouseY) return;
  78.             
  79.             var x:int = mouseX / Board.SW;
  80.             var y:int = mouseY / Board.SH;
  81.             
  82.             if (x == Board.targetX && y == Board.targetY) return;
  83.             
  84.             if (nodes[y][x].status == Status.WALL)
  85.             {
  86.                 nodes[y][x].status = Status.FIELD;
  87.                 
  88.                 graphics.beginFill(0xEDEDED);
  89.                 graphics.drawRect(x * Board.SW, y * Board.SH, Board.SW, Board.SH);
  90.                 graphics.endFill();
  91.             }
  92.             else
  93.             {
  94.                 nodes[y][x].status = Status.WALL;
  95.                 
  96.                 var matrix:Matrix = new Matrix();
  97.                 matrix.createGradientBox(Board.SW, Board.SH, 45 * Math.PI / 180, x * Board.SW, y * Board.SH);
  98.                 graphics.beginGradientFill("linear", [0x0, 0x393939], [1.01.0], [0255], matrix);
  99.                 graphics.drawRect(x * Board.SW, y * Board.SH, Board.SW, Board.SH);
  100.                 graphics.endFill();
  101.             }
  102.         }
  103.         
  104.         private function drawTarget(bx:int, by:int):void
  105.         {
  106.             graphics.beginFill(0xEDEDED);
  107.             graphics.drawRect(bx * Board.SW, by * Board.SH, Board.SW, Board.SW);
  108.             graphics.endFill();
  109.             
  110.             var matrix:Matrix = new Matrix();
  111.             matrix.createGradientBox(Board.SW, Board.SH, 45 * Math.PI / 180, x * Board.SW, y * Board.SH);
  112.             graphics.beginGradientFill("linear", [0xFFC800, 0xFF9900], [1.01.0], [0255], matrix);
  113.             graphics.drawRect(Board.targetX * Board.SW, Board.targetY * Board.SH, Board.SW, Board.SW);
  114.             graphics.endFill();
  115.         }
  116.         
  117.         private function solve(event:Event = null):void
  118.         {
  119.             if (count++ % 10return;
  120.             var data:Array = new Array();
  121.             for (var y:int = 0; y < Board.HEIGHT; y++)
  122.             {
  123.                 for (var x:int = 0; x < Board.WIDTH; x++)
  124.                 {
  125.                     nodes[y][x].count = Status.UNKNOWN;
  126.                     if (nodes[y][x].status == Status.FIELD) data.push(nodes[y][x]);
  127.                 }
  128.             }
  129.             
  130.             if (roboY == Board.targetY && roboX == Board.targetX)
  131.             {
  132.                 robo.stop();
  133.                 if (data.length != 0)
  134.                 {
  135.                     Board.map[Board.targetY][Board.targetX] = Status.FIELD;
  136.                     nodes[Board.targetY][Board.targetX].status = Status.FIELD;
  137.                     var n:Node = data[int(Math.random() * data.length)];
  138.                     
  139.                     var tempX:int = Board.targetX;
  140.                     var tempY:int = Board.targetY;
  141.                     Board.targetX = n.pos.x;
  142.                     Board.targetY = n.pos.y;
  143.                     drawTarget(tempX, tempY);
  144.                     robo.play();
  145.                 }
  146.                 return;
  147.             }
  148.             
  149.             nodes[Board.targetY][Board.targetX].status = Status.GOAL;
  150.             Board.map[Board.targetY][Board.targetX] = Status.GOAL;
  151.             var search:Array = new Array();
  152.             search.push(nodes[roboY][roboX]);
  153.             
  154.             do
  155.             {
  156.                 search.sortOn("count"Array.NUMERIC | Array.DESCENDING);
  157.                 
  158.                 var node:Node = search.pop();
  159.                 if (node == nullreturn;
  160.                 if (nodes[node.pos.y][node.pos.x] == Status.WALL) continue;
  161.                 
  162.                 for (var i:int = 0; i < 4; i++)
  163.                 {
  164.                     var py:int = node.pos.y + direction[i][1];
  165.                     var px:int = node.pos.x + direction[i][0];
  166.                     
  167.                     if (py < 0 || Board.HEIGHT <= py || px < 0 || Board.WIDTH <= px) continue;
  168.                     if (nodes[py][px].status == Status.GOAL)
  169.                     {
  170.                         nodes[py][px].bpos.x = node.pos.x;
  171.                         nodes[py][px].bpos.y = node.pos.y;
  172.                         break;
  173.                     }
  174.                     
  175.                     if (nodes[py][px].status == Status.WALL) continue;
  176.                     
  177.                     if (nodes[py][px].count == Status.UNKNOWN)
  178.                     {
  179.                         nodes[py][px].count = node.count + 1;
  180.                         nodes[py][px].bpos.x = node.pos.x;
  181.                         nodes[py][px].bpos.y = node.pos.y;
  182.                         search.push(nodes[py][px]);
  183.                     }
  184.                     else if (node.count + 1 < nodes[py][px].count)
  185.                     {
  186.                         nodes[py][px].count = node.count + 1;
  187.                         nodes[py][px].bpos.x = node.pos.x;
  188.                         nodes[py][px].bpos.y = node.pos.y;
  189.                     }
  190.                 }
  191.                 
  192.                 if (px < 0 || Board.WIDTH <= px || py < 0 || Board.HEIGHT <= py) px = node.pos.x, py = node.pos.y;
  193.             }
  194.             while (Board.map[py][px] != Status.GOAL);
  195.             
  196.             var bpos:Point = new Point();
  197.             bpos.y = Board.targetY;
  198.             bpos.x = Board.targetX;
  199.             
  200.             do
  201.             {
  202.                 node = nodes[bpos.y][bpos.x];
  203.                 if (node.bpos.y == roboY && node.bpos.x == roboX)
  204.                 {
  205.                     BetweenAS3.tween(robo, { x:node.pos.x * Board.SW, y:node.pos.y * Board.SH }, null0.3 ).play();
  206.                     roboY = node.pos.y;
  207.                     roboX = node.pos.x;
  208.                     break;
  209.                 }
  210.                 bpos = node.bpos;
  211.             }
  212.             while (true);
  213.         }
  214.     }
  215. }
  216. import flash.display.Sprite;
  217. import flash.display.Bitmap;
  218. import flash.display.BitmapData;
  219. import flash.display.Loader;
  220. import flash.events.Event;
  221. import flash.geom.Point;
  222. import flash.geom.Matrix;
  223. import flash.net.URLRequest;
  224. import flash.system.LoaderContext;
  225. class Board
  226. {
  227.     public static const WIDTH:int = 20;
  228.     public static const HEIGHT:int = 20;
  229.     
  230.     public static var targetY:int = 19;
  231.     public static var targetX:int = 19;
  232.     
  233.     public static var SW:int = int(465 / 20);
  234.     public static var SH:int = int(465 / 20);
  235.     
  236.     public static var map:Array;
  237.     
  238.     public static function init():void
  239.     {
  240.         map = new Array(HEIGHT);
  241.         for (var y:int = 0; y < HEIGHT; y++)
  242.         {
  243.             map[y] = new Array(WIDTH);
  244.             for (var x:int = 0; x < WIDTH; x++)
  245.             {
  246.                 map[y][x] = 0;
  247.             }
  248.         }
  249.         
  250.         createMaze();
  251.     }
  252.     
  253.     private static function createMaze():void
  254.     {
  255.         for (var y:int = 0; y < HEIGHT; y++)
  256.         {
  257.             for (var x:int = 0; x < WIDTH; x++)
  258.             {
  259.                 if (y == 0 || x == 0 || y == SH - 1 || x == SW - 1 || y % 2 == 0 && x % 2 == 0) map[y][x] = Status.WALL;
  260.                 else map[y][x] = Status.FIELD;
  261.             }
  262.         }
  263.         
  264.         for (y = 2; y < HEIGHT - 1; y += 2)
  265.         {
  266.             var dx:int = 2;
  267.             var dy:int = y;
  268.             
  269.             switch (Math.floor(Math.random() * 4))
  270.             {
  271.                 case 0:
  272.                     dx++;
  273.                     break;
  274.                 case 1:
  275.                     dx--;
  276.                     break;
  277.                 case 2:
  278.                     dy++;
  279.                     break;
  280.                 case 3:
  281.                     dy--;
  282.                     break;
  283.             }
  284.             
  285.             if (!map[dy][dx]) map[dy][dx] = Status.WALL;
  286.             else y -= 2;
  287.         }
  288.         
  289.         for (x = 4; x < WIDTH - 1; x += 2)
  290.         {
  291.             for (y = 2; y < HEIGHT - 1; y += 2)
  292.             {
  293.                 dx = x;
  294.                 dy = y;
  295.                 
  296.                 switch (Math.floor(Math.random() * 3))
  297.                 {
  298.                     case 0:
  299.                         dy++;
  300.                         break;
  301.                     case 1:
  302.                         dy--;
  303.                         break;
  304.                     case 2:
  305.                         dx++;
  306.                         break;
  307.                 }
  308.                 
  309.                 if (!map[dy][dx]) map[dy][dx] = Status.WALL;
  310.                 else y -= 2;
  311.             }
  312.         }
  313.     }
  314.     
  315.     public function Board(){}
  316. }
  317. class Node
  318. {
  319.     public var pos:Point = new Point();
  320.     public var bpos:Point = new Point();
  321.     public var count:int = Status.UNKNOWN;
  322.     public var status:int;
  323. }
  324. class Status
  325. {
  326.     public static const FIELD:int = 0;
  327.     public static const WALL:int = -1;
  328.     public static const GOAL:int = 2;
  329.     public static const UNKNOWN:int = 99999;
  330. }
  331. class Robo extends Sprite {
  332.     public static const READY:String = "READY";
  333.     public var imgSrc:String = "http://assets.dev.wonderfl.net/images/related_images/e/ea/ea8a/ea8a6b1d37c2cec12e07893c66f164a9da1e92c0";
  334.     
  335.     private var _loader:Loader;
  336.     private var _frame:Bitmap;
  337.     
  338.     public var frames:Array;
  339.     private var _currentFrame:int = 0;
  340.     private var _totalFrames:int = 0;
  341.     
  342.     private var _frameRate:int = 8;
  343.     private var _autoPlay:Boolean = false;
  344.     public function Robo( frameRate:int = 8, autoPlay:Boolean = false, autoLoad:Boolean = false ){
  345.         _frameRate = frameRate;
  346.         _autoPlay = autoPlay;
  347.         
  348.        // if( autoLoad ) load();
  349.     }
  350.     public function load():void {
  351.         _loader = new Loader();
  352.         
  353.         _loader.contentLoaderInfo.addEventListener( Event.COMPLETE, completeHandler );
  354.         _loader.load( new URLRequest(imgSrc), new LoaderContext(true) );
  355.     }
  356.     private function completeHandler(e:Event):void {
  357.         var bmp:BitmapData = Bitmap( _loader.content ).bitmapData;
  358.         _loader.contentLoaderInfo.removeEventListener( Event.COMPLETE, completeHandler );
  359.         _loader= null;
  360.         
  361.         _frame = new Bitmap();
  362.         addChild( _frame );
  363.         
  364.         frames = [];
  365.         
  366.         const frameWidth:int = 20;
  367.         const frameHeight:int = 34;
  368.         
  369.         var numFrames:int = bmp.width/frameWidth;
  370.         forvar i:int=0; i< numFrames; ++i ) {
  371.             forvar f:int=0; f<_frameRate; ++f ) {
  372.                 var frame:BitmapData = new BitmapData( frameWidth, frameHeight, true0 );
  373.                 var matrix:Matrix = new Matrix();
  374.                 matrix.translate( -i*frameWidth, 0 );
  375.                 frame.draw( bmp, matrix );
  376.                 frames.push( frame );
  377.             }
  378.         }
  379.         _totalFrames = frames.length;
  380.         
  381.         update();
  382.         
  383.         dispatchEvent( new Event(READY) );
  384.         
  385.         if( _autoPlay ) play();
  386.     }
  387.     
  388.     private function update(e:Event=null):void {
  389.         _frame.bitmapData = frames[_currentFrame]
  390.         _currentFrame = (_currentFrame+1) % _totalFrames;
  391.     }
  392.     
  393.     public function play():void {
  394.         if( isReady )
  395.             addEventListener( Event.ENTER_FRAME, update );
  396.     }
  397.     public function stop():void {
  398.         removeEventListener( Event.ENTER_FRAME, update );
  399.     }
  400.     
  401.     public function get currentFrame():int { return _currentFrame+1; }
  402.     public function get totalFrames():int { return _totalFrames; }
  403.     
  404.     public function get isReady():Boolean {
  405.         return frames && frames.length>0;
  406.     }
  407. }
flash swf thumbnail play
出題者からのコメント
ロボット君を間接的に操っている感じ。彼の動きを上から見るのがおもしろい。ゴールしても、次のゴールがまた現れるので、これも延々やり続ける羽目になりました。
Comments from King
Feel like I might be manipulating the robot indirectly. It's great fun seeing his move from above. Goals appear one after another, so I ended up going on with this.

Knighth_sakurai

  1. // forked from checkmate's Checkmate Vol.6 Sponser
  2. package {
  3.     import flash.display.*;
  4.     import flash.events.*;
  5.     
  6.     import org.libspark.betweenas3.*;
  7.     import org.libspark.betweenas3.tweens.ITween;
  8.     [SWF(backgroundColor=0x3399ff)]
  9.     public class Sponser extends Sprite {
  10.         private var robo:Robo;
  11.         public function Sponser() {
  12.             Robo.load();
  13.             addEventListener("enterFrame", update);
  14.         }
  15.         public function update(e:Event):void {
  16.             if(loadf) {
  17.                 var robos:Array = [];
  18.                 forvar i:int = 0; i<30; ++i ) {
  19.                     robo = new Robo( 8truetrue );
  20.                     robos.push(robo);
  21.                     addChild(robo);
  22.                 }
  23.                 for (i=0;i<30;i++) {
  24.                     var t:ITween = BetweenAS3.tween( robos[i], 
  25.                         { x : -150,  scaleX:-5, scaleY:5, y: 0 + i*20 },
  26.                         { x:465 , scaleX:-5, scaleY:5,y: 100  }, 3 );
  27.                     t.stopOnComplete = false;
  28.                     t.play();
  29.                 }
  30.                 loadf=false;
  31.             }
  32.         }
  33.     }
  34. }
  35. var loadf:Boolean = false;
  36. import flash.display.*;
  37. import flash.events.*;
  38. import flash.net.*;
  39. import flash.geom.*;
  40. import flash.system.*;
  41. class Robo extends Sprite {
  42.     public static var imgSrc:String = "http://assets.dev.wonderfl.net/images/related_images/e/ea/ea8a/ea8a6b1d37c2cec12e07893c66f164a9da1e92c0";
  43.     
  44.     private var _frame:Bitmap;
  45.     private var _currentFrame:int = 0;
  46.     private var _totalFrames:int = 0;
  47.     private var _frameRate:int = 8;
  48.     private var _autoPlay:Boolean = false;
  49.     private static var         frames:Array = [];
  50.     public function Robo( frameRate:int = 8, autoPlay:Boolean = false, autoLoad:Boolean = false ){
  51.         _frameRate = frameRate;
  52.         _autoPlay = autoPlay;
  53.         _frame = new Bitmap();
  54.         addChild( _frame );
  55.         _totalFrames = frames.length;
  56.         update();
  57.         
  58.         dispatchEvent( new Event("READY") );
  59.         
  60.         if( _autoPlay ) play();
  61.     }
  62.     public static var bmp:BitmapData;
  63.     public static function load():void {
  64.         var loader:Loader = new Loader();
  65.         
  66.         loader.contentLoaderInfo.addEventListener( Event.COMPLETE, function(e:Event):void{
  67.             var _frameRate:int = 8;
  68.             bmp = Bitmap( loader.content ).bitmapData;
  69.             const frameWidth:int = 20;
  70.             const frameHeight:int = 34;
  71.             
  72.             var numFrames:int = bmp.width/frameWidth;
  73.             forvar i:int=0; i< numFrames; ++i ) {
  74.                 forvar f:int=0; f<_frameRate; ++f ) {
  75.                     var frame:BitmapData = new BitmapData( frameWidth, frameHeight, true0 );
  76.                     var matrix:Matrix = new Matrix();
  77.                     matrix.translate( -i*frameWidth, 0 );
  78.                     frame.draw( bmp, matrix );
  79.                     frames.push( frame );
  80.                 }
  81.             }
  82.             loadf = true;    
  83.         } );
  84.         loader.load( new URLRequest(imgSrc), new LoaderContext(true) );
  85.     }
  86.     
  87.     private function update(e:Event=null):void {
  88.         _frame.bitmapData = frames[_currentFrame]
  89.         _currentFrame = (_currentFrame+1) % _totalFrames;
  90.     }
  91.     
  92.     public function play():void {
  93.         if( isReady )
  94.             addEventListener( Event.ENTER_FRAME, update );
  95.     }
  96.     public function stop():void {
  97.         removeEventListener( Event.ENTER_FRAME, update );
  98.     }
  99.     
  100.     public function get currentFrame():int { return _currentFrame+1; }
  101.     public function get totalFrames():int { return _totalFrames; }
  102.     
  103.     public function get isReady():Boolean {
  104.         return frames && frames.length>0;
  105.     }
  106.     
  107. }
flash swf thumbnail play
出題者からのコメント
この動きはまったく想像できませんでした。そこがツボでした。
Comments from King
We couldn't imagine this move at all, which hits the spot.

ad