「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!
-

- sekiryou
『ブラウザで無料ではじめる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―"
-

- rsakane
『ブラウザで無料ではじめるActionScript 3.0』
A book, titled "Learning ActionScript 3.0 only with Web Browser"
-

- h_sakurai
『.fla2―Idea of Flash Creation―』
A book, titled ".fla2―Idea of Flash Creation―"
sekiryou
- // forked from checkmate's Checkmate Vol.6 Sponser
- package {
- import flash.display.*;
- import flash.events.*;
- import flash.geom.*;
- import flash.text.*;
- import flash.net.*;
- import flash.system.*;
- import org.libspark.betweenas3.BetweenAS3;
- import org.libspark.betweenas3.tweens.IObjectTween;
- import org.libspark.betweenas3.easing.*;
- import org.libspark.betweenas3.events.TweenEvent;
- [SWF(width = "465", height = "465", backgroundColor = "0x3399ff", frameRate = "30")]
- public class DialecticalCoding extends Sprite {
- private var order:Array = [
- { color:3223857, xx:8, yy:1 },{ color:986895, xx:9, yy:1 },{ color:2631720, xx:8, yy:2 },{ color:0, xx:9, yy:2 },
- { color:0, xx:10, yy:2 },{ color:6052956, xx:7, yy:3 },{ color:0, xx:8, yy:3 },{ color:197379, xx:9, yy:3 },
- { color:789516, xx:7, yy:4 },{ color:197379, xx:8, yy:4 },{ color:1907997, xx:9, yy:4 },{ color:1842204, xx:6, yy:5 },
- { color:0, xx:7, yy:5 },{ color:328965, xx:8, yy:5 },{ color:3947580, xx:9, yy:5 },{ color:460551, xx:6, yy:6 },
- { color:592137, xx:7, yy:6 },{ color:2829099, xx:8, yy:6 },{ color:328965, xx:5, yy:7 },{ color:263172, xx:6, yy:7 },
- { color:657930, xx:7, yy:7 },{ color:592137, xx:4, yy:8 },{ color:0, xx:5, yy:8 },{ color:592137, xx:6, yy:8 },
- { color:723723, xx:7, yy:8 },{ color:3881787, xx:15, yy:8 },{ color:1250067, xx:16, yy:8 },{ color:2894892, xx:4, yy:9 },
- { color:0, xx:5, yy:9 },{ color:0, xx:6, yy:9 },{ color:0, xx:13, yy:9 },{ color:1907997, xx:14, yy:9 },
- { color:0, xx:15, yy:9 },{ color:0, xx:16, yy:9 },{ color:1118481, xx:17, yy:9 },{ color:5066061, xx:3, yy:10 },
- { color:1710618, xx:4, yy:10 },{ color:1250067, xx:5, yy:10 },{ color:328965, xx:12, yy:10 },{ color:526344, xx:13, yy:10 },
- { color:0, xx:14, yy:10 },{ color:0, xx:15, yy:10 },{ color:394758, xx:16, yy:10 },{ color:2763306, xx:17, yy:10 },
- { color:0, xx:3, yy:11 },{ color:0, xx:4, yy:11 },{ color:4473924, xx:5, yy:11 },{ color:6118749, xx:9, yy:11 },
- { color:197379, xx:10, yy:11 },{ color:131586, xx:11, yy:11 },{ color:0, xx:12, yy:11 },{ color:460551, xx:13, yy:11 },
- { color:723723, xx:14, yy:11 },{ color:328965, xx:15, yy:11 },{ color:131586, xx:16, yy:11 },{ color:5460819, xx:17, yy:11 },
- { color:2236962, xx:2, yy:12 },{ color:921102, xx:3, yy:12 },{ color:0, xx:4, yy:12 },{ color:5066061, xx:5, yy:12 },
- { color:789516, xx:7, yy:12 },{ color:1842204, xx:8, yy:12 },{ color:197379, xx:9, yy:12 },{ color:0, xx:10, yy:12 },
- { color:394758, xx:11, yy:12 },{ color:5329233, xx:12, yy:12 },{ color:0, xx:14, yy:12 },{ color:131586, xx:15, yy:12 },
- { color:0, xx:16, yy:12 },{ color:0, xx:2, yy:13 },{ color:986895, xx:3, yy:13 },{ color:65793, xx:4, yy:13 },
- { color:5526612, xx:5, yy:13 },{ color:526344, xx:6, yy:13 },{ color:0, xx:7, yy:13 },{ color:0, xx:8, yy:13 },
- { color:0, xx:9, yy:13 },{ color:855309, xx:13, yy:13 },{ color:1250067, xx:14, yy:13 },{ color:0, xx:15, yy:13 },
- { color:6381921, xx:16, yy:13 },{ color:526344, xx:1, yy:14 },{ color:460551, xx:2, yy:14 },{ color:0, xx:3, yy:14 },
- { color:328965, xx:4, yy:14 },{ color:0, xx:5, yy:14 },{ color:0, xx:6, yy:14 },{ color:131586, xx:7, yy:14 },
- { color:3552822, xx:13, yy:14 },{ color:0, xx:14, yy:14 },{ color:0, xx:15, yy:14 },{ color:0, xx:1, yy:15 },
- { color:0, xx:2, yy:15 },{ color:921102, xx:3, yy:15 },{ color:0, xx:4, yy:15 },{ color:3421236, xx:5, yy:15 },
- { color:2763306, xx:6, yy:15 },{ color:0, xx:13, yy:15 },{ color:0, xx:14, yy:15 },{ color:1118481, xx:23, yy:15 },
- { color:0, xx:2, yy:16 },{ color:1513239, xx:3, yy:16 },{ color:5987163, xx:4, yy:16 },{ color:1315860, xx:12, yy:16 },
- { color:0, xx:13, yy:16 },{ color:1710618, xx:14, yy:16 },{ color:5658198, xx:21, yy:16 },{ color:723723, xx:22, yy:16 },
- { color:0, xx:23, yy:16 },{ color:1842204, xx:24, yy:16 },{ color:0, xx:12, yy:17 },{ color:197379, xx:13, yy:17 },
- { color:2434341, xx:14, yy:17 },{ color:1579032, xx:19, yy:17 },{ color:1907997, xx:20, yy:17 },{ color:789516, xx:21, yy:17 },
- { color:0, xx:22, yy:17 },{ color:986895, xx:23, yy:17 },{ color:1052688, xx:24, yy:17 },{ color:526344, xx:11, yy:18 },
- { color:0, xx:12, yy:18 },{ color:657930, xx:13, yy:18 },{ color:0, xx:18, yy:18 },{ color:723723, xx:19, yy:18 },
- { color:0, xx:20, yy:18 },{ color:0, xx:21, yy:18 },{ color:2039583, xx:22, yy:18 },{ color:4473924, xx:23, yy:18 },
- { color:1381653, xx:11, yy:19 },{ color:263172, xx:12, yy:19 },{ color:0, xx:13, yy:19 },{ color:6513507, xx:16, yy:19 },
- { color:0, xx:17, yy:19 },{ color:723723, xx:18, yy:19 },{ color:0, xx:19, yy:19 },{ color:460551, xx:20, yy:19 },
- { color:4013373, xx:10, yy:20 },{ color:0, xx:11, yy:20 },{ color:0, xx:12, yy:20 },{ color:986895, xx:15, yy:20 },
- { color:197379, xx:16, yy:20 },{ color:526344, xx:17, yy:20 },{ color:0, xx:18, yy:20 },{ color:657930, xx:19, yy:20 },
- { color:0, xx:10, yy:21 },{ color:526344, xx:11, yy:21 },{ color:1250067, xx:12, yy:21 },{ color:3552822, xx:13, yy:21 },
- { color:0, xx:14, yy:21 },{ color:723723, xx:15, yy:21 },{ color:0, xx:16, yy:21 },{ color:4144959, xx:17, yy:21 },
- { color:131586, xx:10, yy:22 },{ color:0, xx:11, yy:22 },{ color:0, xx:12, yy:22 },{ color:657930, xx:13, yy:22 },
- { color:394758, xx:14, yy:22 },{ color:1184274, xx:15, yy:22 },{ color:3158064, xx:16, yy:22 },{ color:1907997, xx:24, yy:22 },
- { color:1052688, xx:25, yy:22 },{ color:855309, xx:26, yy:22 },{ color:0, xx:27, yy:22 },{ color:328965, xx:28, yy:22 },
- { color:5658198, xx:29, yy:22 },{ color:2236962, xx:30, yy:22 },{ color:0, xx:9, yy:23 },{ color:0, xx:10, yy:23 },
- { color:526344, xx:11, yy:23 },{ color:65793, xx:12, yy:23 },{ color:263172, xx:13, yy:23 },{ color:263172, xx:23, yy:23 },
- { color:0, xx:24, yy:23 },{ color:1381653, xx:25, yy:23 },{ color:0, xx:26, yy:23 },{ color:0, xx:27, yy:23 },
- { color:0, xx:28, yy:23 },{ color:0, xx:29, yy:23 },{ color:0, xx:30, yy:23 },{ color:3947580, xx:31, yy:23 },
- { color:855309, xx:10, yy:24 },{ color:0, xx:11, yy:24 },{ color:3355443, xx:12, yy:24 },{ color:197379, xx:22, yy:24 },
- { color:131586, xx:23, yy:24 },{ color:131586, xx:24, yy:24 },{ color:65793, xx:25, yy:24 },{ color:5395026, xx:26, yy:24 },
- { color:5263440, xx:27, yy:24 },{ color:4473924, xx:28, yy:24 },{ color:3881787, xx:29, yy:24 },{ color:0, xx:30, yy:24 },
- { color:526344, xx:31, yy:24 },{ color:1644825, xx:32, yy:24 },{ color:1447446, xx:21, yy:25 },{ color:921102, xx:22, yy:25 },
- { color:65793, xx:23, yy:25 },{ color:723723, xx:24, yy:25 },{ color:0, xx:31, yy:25 },{ color:0, xx:32, yy:25 },
- { color:2565927, xx:33, yy:25 },{ color:592137, xx:20, yy:26 },{ color:0, xx:21, yy:26 },{ color:197379, xx:22, yy:26 },
- { color:0, xx:23, yy:26 },{ color:0, xx:32, yy:26 },{ color:1250067, xx:33, yy:26 },{ color:2171169, xx:34, yy:26 },
- { color:4210752, xx:19, yy:27 },{ color:0, xx:20, yy:27 },{ color:789516, xx:21, yy:27 },{ color:0, xx:22, yy:27 },
- { color:0, xx:33, yy:27 },{ color:1447446, xx:34, yy:27 },{ color:5000268, xx:35, yy:27 },{ color:5066061, xx:19, yy:28 },
- { color:723723, xx:20, yy:28 },{ color:0, xx:21, yy:28 },{ color:1184274, xx:33, yy:28 },{ color:592137, xx:34, yy:28 },
- { color:5131854, xx:35, yy:28 },{ color:1513239, xx:19, yy:29 },{ color:1381653, xx:20, yy:29 },{ color:1842204, xx:21, yy:29 },
- { color:263172, xx:33, yy:29 },{ color:0, xx:34, yy:29 },{ color:2368548, xx:35, yy:29 },{ color:0, xx:19, yy:30 },
- { color:0, xx:20, yy:30 },{ color:5460819, xx:21, yy:30 },{ color:460551, xx:33, yy:30 },{ color:328965, xx:34, yy:30 },
- { color:3158064, xx:35, yy:30 },{ color:592137, xx:19, yy:31 },{ color:657930, xx:20, yy:31 },{ color:2763306, xx:32, yy:31 },
- { color:657930, xx:33, yy:31 },{ color:0, xx:34, yy:31 },{ color:2960685, xx:35, yy:31 },{ color:3618615, xx:19, yy:32 },
- { color:0, xx:20, yy:32 },{ color:526344, xx:21, yy:32 },{ color:1973790, xx:32, yy:32 },{ color:65793, xx:33, yy:32 },
- { color:65793, xx:34, yy:32 },{ color:394758, xx:20, yy:33 },{ color:855309, xx:21, yy:33 },{ color:4539717, xx:22, yy:33 },
- { color:3552822, xx:31, yy:33 },{ color:131586, xx:32, yy:33 },{ color:0, xx:33, yy:33 },{ color:3947580, xx:34, yy:33 },
- { color:0, xx:40, yy:33 },{ color:4276545, xx:41, yy:33 },{ color:921102, xx:20, yy:34 },{ color:0, xx:21, yy:34 },
- { color:3487029, xx:22, yy:34 },{ color:2434341, xx:30, yy:34 },{ color:526344, xx:31, yy:34 },{ color:328965, xx:32, yy:34 },
- { color:394758, xx:33, yy:34 },{ color:526344, xx:39, yy:34 },{ color:0, xx:40, yy:34 },{ color:0, xx:41, yy:34 },
- { color:6250335, xx:42, yy:34 },{ color:328965, xx:21, yy:35 },{ color:592137, xx:22, yy:35 },{ color:1644825, xx:23, yy:35 },
- { color:1052688, xx:24, yy:35 },{ color:4737096, xx:28, yy:35 },{ color:1710618, xx:29, yy:35 },{ color:723723, xx:30, yy:35 },
- { color:0, xx:31, yy:35 },{ color:0, xx:32, yy:35 },{ color:65793, xx:38, yy:35 },{ color:0, xx:39, yy:35 },
- { color:0, xx:40, yy:35 },{ color:0, xx:41, yy:35 },{ color:0, xx:22, yy:36 },{ color:0, xx:23, yy:36 },
- { color:0, xx:24, yy:36 },{ color:0, xx:25, yy:36 },{ color:921102, xx:26, yy:36 },{ color:328965, xx:27, yy:36 },
- { color:0, xx:28, yy:36 },{ color:0, xx:29, yy:36 },{ color:1118481, xx:30, yy:36 },{ color:0, xx:31, yy:36 },
- { color:5855577, xx:32, yy:36 },{ color:65793, xx:37, yy:36 },{ color:1118481, xx:38, yy:36 },{ color:0, xx:39, yy:36 },
- { color:0, xx:40, yy:36 },{ color:4802889, xx:41, yy:36 },{ color:3552822, xx:42, yy:36 },{ color:2631720, xx:23, yy:37 },
- { color:1907997, xx:24, yy:37 },{ color:0, xx:25, yy:37 },{ color:0, xx:26, yy:37 },{ color:0, xx:27, yy:37 },
- { color:0, xx:28, yy:37 },{ color:986895, xx:29, yy:37 },{ color:2960685, xx:30, yy:37 },{ color:657930, xx:36, yy:37 },
- { color:0, xx:37, yy:37 },{ color:0, xx:38, yy:37 },{ color:592137, xx:39, yy:37 },{ color:0, xx:40, yy:37 },
- { color:0, xx:41, yy:37 },{ color:1250067, xx:42, yy:37 },{ color:0, xx:43, yy:37 },{ color:6118749, xx:45, yy:37 },
- { color:4802889, xx:25, yy:38 },{ color:5592405, xx:26, yy:38 },{ color:1907997, xx:27, yy:38 },{ color:1842204, xx:28, yy:38 },
- { color:263172, xx:35, yy:38 },{ color:263172, xx:36, yy:38 },{ color:0, xx:37, yy:38 },{ color:723723, xx:38, yy:38 },
- { color:3487029, xx:41, yy:38 },{ color:3947580, xx:42, yy:38 },{ color:0, xx:43, yy:38 },{ color:460551, xx:44, yy:38 },
- { color:0, xx:45, yy:38 },{ color:4539717, xx:46, yy:38 },{ color:0, xx:34, yy:39 },{ color:460551, xx:35, yy:39 },
- { color:0, xx:36, yy:39 },{ color:723723, xx:37, yy:39 },{ color:4408131, xx:44, yy:39 },{ color:0, xx:45, yy:39 },
- { color:1052688, xx:46, yy:39 },{ color:3618615, xx:47, yy:39 },{ color:0, xx:33, yy:40 },{ color:526344, xx:34, yy:40 },
- { color:0, xx:35, yy:40 },{ color:460551, xx:36, yy:40 },{ color:5592405, xx:45, yy:40 },{ color:0, xx:46, yy:40 },
- { color:263172, xx:47, yy:40 },{ color:4473924, xx:48, yy:40 },{ color:131586, xx:32, yy:41 },{ color:789516, xx:33, yy:41 },
- { color:0, xx:34, yy:41 },{ color:1315860, xx:35, yy:41 },{ color:0, xx:46, yy:41 },{ color:131586, xx:47, yy:41 },
- { color:2236962, xx:48, yy:41 },{ color:0, xx:31, yy:42 },{ color:592137, xx:32, yy:42 },{ color:0, xx:33, yy:42 },
- { color:0, xx:34, yy:42 },{ color:1973790, xx:46, yy:42 },{ color:657930, xx:47, yy:42 },{ color:0, xx:48, yy:42 },
- { color:197379, xx:30, yy:43 },{ color:0, xx:31, yy:43 },{ color:0, xx:32, yy:43 },{ color:657930, xx:33, yy:43 },
- { color:2302755, xx:46, yy:43 },{ color:0, xx:47, yy:43 },{ color:460551, xx:48, yy:43 },{ color:526344, xx:30, yy:44 },
- { color:0, xx:31, yy:44 },{ color:1118481, xx:32, yy:44 },{ color:0, xx:46, yy:44 },{ color:1118481, xx:47, yy:44 },
- { color:1842204, xx:48, yy:44 },{ color:460551, xx:31, yy:45 },{ color:0, xx:45, yy:45 },{ color:526344, xx:46, yy:45 },
- { color:0, xx:47, yy:45 },{ color:0, xx:48, yy:45 },{ color:0, xx:44, yy:46 },{ color:263172, xx:45, yy:46 },
- { color:0, xx:46, yy:46 },{ color:0, xx:47, yy:46 },{ color:197379, xx:43, yy:47 },{ color:131586, xx:44, yy:47 },
- { color:0, xx:45, yy:47 },{ color:131586, xx:46, yy:47 },{ color:0, xx:42, yy:48 },{ color:131586, xx:43, yy:48 },
- { color:0, xx:44, yy:48 },{ color:394758, xx:45, yy:48 },{ color:5395026, xx:50, yy:48 },{ color:0, xx:52, yy:48 },
- { color:328965, xx:53, yy:48 },{ color:197379, xx:54, yy:48 },{ color:3355443, xx:55, yy:48 },{ color:5066061, xx:56, yy:48 },
- { color:0, xx:41, yy:49 },{ color:789516, xx:42, yy:49 },{ color:131586, xx:43, yy:49 },{ color:0, xx:44, yy:49 },
- { color:3026478, xx:49, yy:49 },{ color:197379, xx:50, yy:49 },{ color:0, xx:51, yy:49 },{ color:1184274, xx:52, yy:49 },
- { color:0, xx:53, yy:49 },{ color:65793, xx:54, yy:49 },{ color:0, xx:55, yy:49 },{ color:0, xx:56, yy:49 },
- { color:4539717, xx:57, yy:49 },{ color:394758, xx:40, yy:50 },{ color:0, xx:41, yy:50 },{ color:0, xx:42, yy:50 },
- { color:394758, xx:43, yy:50 },{ color:2302755, xx:48, yy:50 },{ color:0, xx:49, yy:50 },{ color:789516, xx:50, yy:50 },
- { color:263172, xx:51, yy:50 },{ color:1973790, xx:52, yy:50 },{ color:1052688, xx:53, yy:50 },{ color:4342338, xx:54, yy:50 },
- { color:1579032, xx:55, yy:50 },{ color:0, xx:56, yy:50 },{ color:0, xx:57, yy:50 },{ color:3158064, xx:58, yy:50 },
- { color:3158064, xx:65, yy:50 },{ color:657930, xx:66, yy:50 },{ color:263172, xx:39, yy:51 },{ color:0, xx:40, yy:51 },
- { color:197379, xx:41, yy:51 },{ color:0, xx:42, yy:51 },{ color:2500134, xx:47, yy:51 },{ color:0, xx:48, yy:51 },
- { color:1184274, xx:49, yy:51 },{ color:0, xx:50, yy:51 },{ color:5921370, xx:51, yy:51 },{ color:0, xx:57, yy:51 },
- { color:65793, xx:58, yy:51 },{ color:2171169, xx:59, yy:51 },{ color:2763306, xx:64, yy:51 },{ color:0, xx:65, yy:51 },
- { color:460551, xx:66, yy:51 },{ color:526344, xx:67, yy:51 },{ color:263172, xx:38, yy:52 },{ color:0, xx:39, yy:52 },
- { color:0, xx:40, yy:52 },{ color:0, xx:41, yy:52 },{ color:328965, xx:46, yy:52 },{ color:592137, xx:47, yy:52 },
- { color:1315860, xx:48, yy:52 },{ color:0, xx:49, yy:52 },{ color:0, xx:58, yy:52 },{ color:0, xx:59, yy:52 },
- { color:4210752, xx:60, yy:52 },{ color:2960685, xx:63, yy:52 },{ color:592137, xx:64, yy:52 },{ color:263172, xx:65, yy:52 },
- { color:592137, xx:66, yy:52 },{ color:263172, xx:39, yy:53 },{ color:0, xx:40, yy:53 },{ color:1513239, xx:46, yy:53 },
- { color:394758, xx:47, yy:53 },{ color:0, xx:48, yy:53 },{ color:526344, xx:59, yy:53 },{ color:0, xx:60, yy:53 },
- { color:6118749, xx:61, yy:53 },{ color:5066061, xx:62, yy:53 },{ color:0, xx:63, yy:53 },{ color:0, xx:64, yy:53 },
- { color:0, xx:65, yy:53 },{ color:1644825, xx:46, yy:54 },{ color:0, xx:47, yy:54 },{ color:5263440, xx:48, yy:54 },
- { color:2434341, xx:59, yy:54 },{ color:0, xx:60, yy:54 },{ color:1644825, xx:61, yy:54 },{ color:789516, xx:62, yy:54 },
- { color:0, xx:63, yy:54 },{ color:723723, xx:64, yy:54 },{ color:0, xx:45, yy:55 },{ color:0, xx:46, yy:55 },
- { color:1579032, xx:47, yy:55 },{ color:5855577, xx:59, yy:55 },{ color:394758, xx:60, yy:55 },{ color:0, xx:61, yy:55 },
- { color:263172, xx:62, yy:55 },{ color:0, xx:63, yy:55 },{ color:0, xx:45, yy:56 },{ color:263172, xx:46, yy:56 },
- { color:0, xx:47, yy:56 },{ color:5592405, xx:59, yy:56 },{ color:0, xx:60, yy:56 },{ color:328965, xx:61, yy:56 },
- { color:131586, xx:62, yy:56 },{ color:1250067, xx:45, yy:57 },{ color:0, xx:46, yy:57 },{ color:4013373, xx:47, yy:57 },
- { color:3158064, xx:58, yy:57 },{ color:0, xx:59, yy:57 },{ color:1052688, xx:60, yy:57 },{ color:0, xx:61, yy:57 },
- { color:3026478, xx:45, yy:58 },{ color:986895, xx:46, yy:58 },{ color:0, xx:47, yy:58 },{ color:4473924, xx:57, yy:58 },
- { color:0, xx:58, yy:58 },{ color:0, xx:59, yy:58 },{ color:328965, xx:60, yy:58 },{ color:6052956, xx:45, yy:59 },
- { color:592137, xx:46, yy:59 },{ color:0, xx:47, yy:59 },{ color:1250067, xx:48, yy:59 },{ color:3618615, xx:56, yy:59 },
- { color:0, xx:57, yy:59 },{ color:263172, xx:58, yy:59 },{ color:657930, xx:59, yy:59 },{ color:0, xx:46, yy:60 },
- { color:592137, xx:47, yy:60 },{ color:2236962, xx:48, yy:60 },{ color:6250335, xx:49, yy:60 },{ color:2236962, xx:55, yy:60 },
- { color:723723, xx:56, yy:60 },{ color:0, xx:57, yy:60 },{ color:0, xx:58, yy:60 },{ color:0, xx:47, yy:61 },
- { color:394758, xx:48, yy:61 },{ color:1118481, xx:49, yy:61 },{ color:3618615, xx:50, yy:61 },{ color:2697513, xx:54, yy:61 },
- { color:0, xx:55, yy:61 },{ color:0, xx:56, yy:61 },{ color:1315860, xx:57, yy:61 },{ color:4276545, xx:64, yy:61 },
- { color:2500134, xx:65, yy:61 },{ color:2302755, xx:66, yy:61 },{ color:0, xx:67, yy:61 },{ color:6118749, xx:69, yy:61 },
- { color:0, xx:48, yy:62 },{ color:263172, xx:49, yy:62 },{ color:1250067, xx:50, yy:62 },{ color:0, xx:51, yy:62 },
- { color:3355443, xx:53, yy:62 },{ color:789516, xx:54, yy:62 },{ color:1118481, xx:55, yy:62 },{ color:855309, xx:56, yy:62 },
- { color:5197647, xx:57, yy:62 },{ color:3618615, xx:63, yy:62 },{ color:0, xx:64, yy:62 },{ color:789516, xx:65, yy:62 },
- { color:0, xx:66, yy:62 },{ color:789516, xx:67, yy:62 },{ color:0, xx:68, yy:62 },{ color:0, xx:69, yy:62 },
- { color:4605510, xx:70, yy:62 },{ color:197379, xx:49, yy:63 },{ color:0, xx:50, yy:63 },{ color:460551, xx:51, yy:63 },
- { color:0, xx:52, yy:63 },{ color:0, xx:53, yy:63 },{ color:328965, xx:54, yy:63 },{ color:0, xx:55, yy:63 },
- { color:1381653, xx:62, yy:63 },{ color:0, xx:63, yy:63 },{ color:0, xx:64, yy:63 },{ color:2039583, xx:65, yy:63 },
- { color:3815994, xx:66, yy:63 },{ color:1710618, xx:67, yy:63 },{ color:1776411, xx:68, yy:63 },{ color:657930, xx:69, yy:63 },
- { color:0, xx:70, yy:63 },{ color:3223857, xx:71, yy:63 },{ color:2894892, xx:50, yy:64 },{ color:986895, xx:51, yy:64 },
- { color:0, xx:52, yy:64 },{ color:526344, xx:53, yy:64 },{ color:526344, xx:54, yy:64 },{ color:0, xx:61, yy:64 },
- { color:855309, xx:62, yy:64 },{ color:0, xx:63, yy:64 },{ color:2500134, xx:64, yy:64 },{ color:0, xx:70, yy:64 },
- { color:263172, xx:71, yy:64 },{ color:2894892, xx:72, yy:64 },{ color:5987163, xx:51, yy:65 },{ color:3487029, xx:52, yy:65 },
- { color:65793, xx:53, yy:65 },{ color:5592405, xx:54, yy:65 },{ color:1842204, xx:60, yy:65 },{ color:460551, xx:61, yy:65 },
- { color:0, xx:62, yy:65 },{ color:526344, xx:63, yy:65 },{ color:0, xx:64, yy:65 },{ color:65793, xx:71, yy:65 },
- { color:0, xx:72, yy:65 },{ color:3487029, xx:73, yy:65 },{ color:1513239, xx:59, yy:66 },{ color:0, xx:60, yy:66 },
- { color:921102, xx:61, yy:66 },{ color:3026478, xx:62, yy:66 },{ color:0, xx:63, yy:66 },{ color:723723, xx:64, yy:66 },
- { color:0, xx:65, yy:66 },{ color:65793, xx:72, yy:66 },{ color:263172, xx:73, yy:66 },{ color:0, xx:59, yy:67 },
- { color:855309, xx:60, yy:67 },{ color:921102, xx:61, yy:67 },{ color:2960685, xx:63, yy:67 },{ color:0, xx:64, yy:67 },
- { color:592137, xx:65, yy:67 },{ color:460551, xx:66, yy:67 },{ color:592137, xx:72, yy:67 },{ color:0, xx:73, yy:67 },
- { color:5197647, xx:74, yy:67 },{ color:4079166, xx:58, yy:68 },{ color:460551, xx:59, yy:68 },{ color:197379, xx:60, yy:68 },
- { color:2829099, xx:64, yy:68 },{ color:921102, xx:65, yy:68 },{ color:197379, xx:66, yy:68 },{ color:0, xx:67, yy:68 },
- { color:1381653, xx:72, yy:68 },{ color:526344, xx:73, yy:68 },{ color:2105376, xx:74, yy:68 },{ color:0, xx:58, yy:69 },
- { color:723723, xx:59, yy:69 },{ color:1118481, xx:60, yy:69 },{ color:526344, xx:65, yy:69 },{ color:986895, xx:66, yy:69 },
- { color:526344, xx:67, yy:69 },{ color:0, xx:68, yy:69 },{ color:0, xx:72, yy:69 },{ color:0, xx:73, yy:69 },
- { color:4144959, xx:74, yy:69 },{ color:2960685, xx:58, yy:70 },{ color:0, xx:59, yy:70 },{ color:2171169, xx:60, yy:70 },
- { color:2565927, xx:66, yy:70 },{ color:0, xx:67, yy:70 },{ color:0, xx:68, yy:70 },{ color:0, xx:69, yy:70 },
- { color:526344, xx:71, yy:70 },{ color:0, xx:72, yy:70 },{ color:921102, xx:73, yy:70 },{ color:6118749, xx:74, yy:70 },
- { color:4868682, xx:58, yy:71 },{ color:0, xx:59, yy:71 },{ color:0, xx:60, yy:71 },{ color:2434341, xx:67, yy:71 },
- { color:986895, xx:68, yy:71 },{ color:0, xx:69, yy:71 },{ color:0, xx:70, yy:71 },{ color:0, xx:71, yy:71 },
- { color:65793, xx:72, yy:71 },{ color:65793, xx:73, yy:71 },{ color:2171169, xx:78, yy:71 },{ color:1381394, xx:79, yy:71 },
- { color:1381653, xx:59, yy:72 },{ color:0, xx:60, yy:72 },{ color:0, xx:61, yy:72 },{ color:2039583, xx:68, yy:72 },
- { color:855309, xx:69, yy:72 },{ color:0, xx:70, yy:72 },{ color:0, xx:71, yy:72 },{ color:1250067, xx:72, yy:72 },
- { color:1579032, xx:77, yy:72 },{ color:394758, xx:78, yy:72 },{ color:196866, xx:79, yy:72 },{ color:3750201, xx:59, yy:73 },
- { color:394758, xx:60, yy:73 },{ color:1447446, xx:61, yy:73 },{ color:4144959, xx:62, yy:73 },{ color:1447446, xx:69, yy:73 },
- { color:263172, xx:70, yy:73 },{ color:65793, xx:71, yy:73 },{ color:3026478, xx:76, yy:73 },{ color:0, xx:77, yy:73 },
- { color:0, xx:78, yy:73 },{ color:3881274, xx:79, yy:73 },{ color:0, xx:60, yy:74 },{ color:0, xx:61, yy:74 },
- { color:3092271, xx:62, yy:74 },{ color:1644825, xx:70, yy:74 },{ color:2171169, xx:75, yy:74 },{ color:0, xx:76, yy:74 },
- { color:2236962, xx:77, yy:74 },{ color:65793, xx:78, yy:74 },{ color:65538, xx:79, yy:74 },{ color:393220, xx:80, yy:74 },
- { color:1182482, xx:81, yy:74 },{ color:4276806, xx:82, yy:74 },{ color:328965, xx:61, yy:75 },{ color:0, xx:62, yy:75 },
- { color:3092271, xx:63, yy:75 },{ color:2500134, xx:74, yy:75 },{ color:0, xx:75, yy:75 },{ color:855309, xx:76, yy:75 },
- { color:0, xx:77, yy:75 },{ color:3618615, xx:78, yy:75 },{ color:657419, xx:79, yy:75 },{ color:1050126, xx:80, yy:75 },
- { color:262149, xx:81, yy:75 },{ color:460812, xx:82, yy:75 },{ color:1975848, xx:83, yy:75 },{ color:0, xx:62, yy:76 },
- { color:0, xx:63, yy:76 },{ color:3026478, xx:64, yy:76 },{ color:2829099, xx:65, yy:76 },{ color:2368548, xx:73, yy:76 },
- { color:0, xx:74, yy:76 },{ color:1776411, xx:75, yy:76 },{ color:328965, xx:76, yy:76 },{ color:2, xx:82, yy:76 },
- { color:460551, xx:63, yy:77 },{ color:0, xx:64, yy:77 },{ color:0, xx:65, yy:77 },{ color:3684408, xx:66, yy:77 },
- { color:2236962, xx:72, yy:77 },{ color:921102, xx:73, yy:77 },{ color:0, xx:74, yy:77 },{ color:0, xx:75, yy:77 },
- { color:10501958, xx:89, yy:77 },{ color:10365491, xx:90, yy:77 },{ color:9376282, xx:91, yy:77 },{ color:9573657, xx:92, yy:77 },
- { color:8916239, xx:93, yy:77 },{ color:10497322, xx:94, yy:77 },{ color:1579032, xx:64, yy:78 },{ color:6250335, xx:65, yy:78 },
- { color:2105376, xx:71, yy:78 },{ color:0, xx:72, yy:78 },{ color:65793, xx:73, yy:78 },{ color:0, xx:74, yy:78 },
- { color:10502723, xx:88, yy:78 },{ color:9179930, xx:89, yy:78 },{ color:11213604, xx:90, yy:78 },{ color:10684432, xx:91, yy:78 },
- { color:11999261, xx:92, yy:78 },{ color:12065307, xx:93, yy:78 },{ color:11014157, xx:94, yy:78 },{ color:8785936, xx:95, yy:78 },
- { color:2698026, xx:70, yy:79 },{ color:256, xx:71, yy:79 },{ color:197892, xx:72, yy:79 },{ color:256, xx:73, yy:79 },
- { color:8332321, xx:87, yy:79 },{ color:8260107, xx:88, yy:79 },{ color:10493472, xx:89, yy:79 },{ color:9044482, xx:90, yy:79 },
- { color:9443611, xx:95, yy:79 },{ color:8137522, xx:96, yy:79 },{ color:1316119, xx:69, yy:80 },{ color:264199, xx:70, yy:80 },
- { color:256, xx:71, yy:80 },{ color:256, xx:72, yy:80 },{ color:8917267, xx:86, yy:80 },{ color:11083040, xx:87, yy:80 },
- { color:10293006, xx:88, yy:80 },{ color:9507340, xx:89, yy:80 },{ color:9705253, xx:96, yy:80 },{ color:8850714, xx:97, yy:80 },
- { color:1907999, xx:68, yy:81 },{ color:197638, xx:69, yy:81 },{ color:66820, xx:70, yy:81 },{ color:264712, xx:71, yy:81 },
- { color:8660005, xx:85, yy:81 },{ color:10689568, xx:86, yy:81 },{ color:9502720, xx:87, yy:81 },{ color:11016216, xx:88, yy:81 },
- { color:8785157, xx:89, yy:81 },{ color:11351101, xx:96, yy:81 },{ color:11611700, xx:97, yy:81 },{ color:7936795, xx:98, yy:81 },
- { color:2, xx:68, yy:82 },{ color:2, xx:69, yy:82 },{ color:1185301, xx:70, yy:82 },{ color:6492950, xx:84, yy:82 },
- { color:7145739, xx:85, yy:82 },{ color:8392206, xx:86, yy:82 },{ color:8456456, xx:87, yy:82 },{ color:8127491, xx:88, yy:82 },
- { color:9444893, xx:89, yy:82 },{ color:9184550, xx:90, yy:82 },{ color:7412240, xx:97, yy:82 },{ color:2, xx:69, yy:83 },
- { color:5375243, xx:83, yy:83 },{ color:7280154, xx:84, yy:83 },{ color:7871772, xx:85, yy:83 },{ color:4915200, xx:86, yy:83 },
- { color:6948618, xx:89, yy:83 },{ color:8196636, xx:90, yy:83 },{ color:9711421, xx:91, yy:83 },{ color:7413286, xx:100, yy:83 },
- { color:7613998, xx:82, yy:84 },{ color:6360849, xx:83, yy:84 },{ color:6690068, xx:84, yy:84 },{ color:6428693, xx:85, yy:84 },
- { color:7672356, xx:90, yy:84 },{ color:9382723, xx:91, yy:84 },{ color:5177366, xx:92, yy:84 },{ color:7999253, xx:99, yy:84 },
- { color:10165297, xx:100, yy:84 },{ color:9048105, xx:101, yy:84 },{ color:5644310, xx:81, yy:85 },{ color:5443594, xx:82, yy:85 },
- { color:6430235, xx:83, yy:85 },{ color:4524548, xx:84, yy:85 },{ color:5111830, xx:91, yy:85 },{ color:9640741, xx:99, yy:85 },
- { color:10361134, xx:100, yy:85 },{ color:9048105, xx:101, yy:85 },{ color:5843490, xx:80, yy:86 },{ color:3868416, xx:81, yy:86 },
- { color:4857363, xx:82, yy:86 },{ color:2097152, xx:83, yy:86 },{ color:10825006, xx:97, yy:86 },{ color:8586764, xx:98, yy:86 },
- { color:9641511, xx:99, yy:86 },{ color:8855852, xx:100, yy:86 },{ color:7164240, xx:79, yy:87 },{ color:3080704, xx:80, yy:87 },
- { color:5055001, xx:81, yy:87 },{ color:1901824, xx:82, yy:87 },{ color:11215665, xx:96, yy:87 },{ color:11276318, xx:97, yy:87 },
- { color:10821932, xx:98, yy:87 },{ color:8394783, xx:99, yy:87 },{ color:4008235, xx:78, yy:88 },{ color:2427660, xx:79, yy:88 },
- { color:3675411, xx:80, yy:88 },{ color:2032128, xx:81, yy:88 },{ color:9513268, xx:95, yy:88 },{ color:11077921, xx:96, yy:88 },
- { color:10551315, xx:97, yy:88 },{ color:9903400, xx:98, yy:88 },{ color:3482920, xx:77, yy:89 },{ color:1771530, xx:78, yy:89 },
- { color:2889753, xx:79, yy:89 },{ color:2625041, xx:80, yy:89 },{ color:8663604, xx:94, yy:89 },{ color:8523289, xx:95, yy:89 },
- { color:9502740, xx:96, yy:89 },{ color:9899552, xx:97, yy:89 },{ color:852740, xx:76, yy:90 },{ color:524288, xx:77, yy:90 },
- { color:3286052, xx:78, yy:90 },{ color:851968, xx:79, yy:90 },{ color:6956320, xx:93, yy:90 },{ color:7606290, xx:94, yy:90 },
- { color:8525083, xx:95, yy:90 },{ color:7148057, xx:96, yy:90 },{ color:589825, xx:77, yy:91 },{ color:1575948, xx:78, yy:91 },
- { color:7879993, xx:92, yy:91 },{ color:6295310, xx:93, yy:91 },{ color:8262937, xx:94, yy:91 },{ color:6950417, xx:95, yy:91 },
- { color:7945792, xx:91, yy:92 },{ color:5244939, xx:92, yy:92 },{ color:6623253, xx:93, yy:92 },{ color:6687504, xx:94, yy:92 },
- { color:5775654, xx:90, yy:93 },{ color:5312021, xx:91, yy:93 },{ color:6626339, xx:92, yy:93 },{ color:4784131, xx:93, yy:93 },
- { color:5778477, xx:89, yy:94 },{ color:5051418, xx:90, yy:94 },{ color:4326155, xx:91, yy:94 },{ color:4589840, xx:92, yy:94 },
- { color:5321521, xx:88, yy:95 },{ color:4003094, xx:89, yy:95 },{ color:3738382, xx:90, yy:95 },{ color:4987681, xx:91, yy:95 },
- { color:3548194, xx:87, yy:96 },{ color:2954263, xx:88, yy:96 },{ color:3875108, xx:89, yy:96 },{ color:2098697, xx:90, yy:96 },
- { color:3942699, xx:86, yy:97 },{ color:2561046, xx:87, yy:97 },{ color:2494996, xx:88, yy:97 },{ color:1114112, xx:89, yy:97 },
- { color:3418154, xx:85, yy:98 },{ color:2496025, xx:86, yy:98 },{ color:2035474, xx:87, yy:98 },{ color:2758427, xx:88, yy:98 },
- { color:721154, xx:85, yy:99 },{ color:3483177, xx:86, yy:99 },{ color:983043, xx:87, yy:99 },{ color:458752, xx:86, yy:100 }
- ];
- private var _canvas:BitmapData;
- private const STAGE_WIDTH:Number = stage.stageWidth;
- private const STAGE_HEIGHT:Number = stage.stageHeight;
- private var imgSrc:String = "http://assets.dev.wonderfl.net/images/related_images/e/ea/ea8a/ea8a6b1d37c2cec12e07893c66f164a9da1e92c0";
- private var _loader:Loader;
- private var robo:RoboII;
- private var robos:Array = []
- public function DialecticalCoding() {
- stage.scaleMode = StageScaleMode.NO_SCALE;
- stage.align = StageAlign.TOP_LEFT;
- graphics.beginFill( 0x3399ff )
- graphics.drawRect( 0,0,465,465)
- addChild( new Bitmap( _canvas = new BitmapData ( STAGE_WIDTH, STAGE_HEIGHT, true, 0x00000000 ) ) );
- _loader = new Loader();
- _loader.contentLoaderInfo.addEventListener( Event.COMPLETE, completeHandler );
- _loader.load( new URLRequest(imgSrc), new LoaderContext(true) );
- }
- private function completeHandler(e:Event):void {
- var bmp:BitmapData = Bitmap( _loader.content ).bitmapData;
- _loader.contentLoaderInfo.removeEventListener( Event.COMPLETE, completeHandler );
- _loader = null;
- for ( var i:uint = 0; i < order.length; ++i ) {
- robo = new RoboII( order[ i ].color, order[ i ].xx, order[ i ].yy, bmp );
- robos.push( robo );
- }
- addEventListener( Event.ENTER_FRAME, observer );
- }
- private function observer( e:Event ):void {
- var complete:uint = robos[ 0 ].complete;
- for ( var i:int = 0; i < order.length; ++i ) {
- complete = complete & robos[ i ].complete;
- }
- if ( complete ) {
- removeEventListener( Event.ENTER_FRAME, observer );
- addEventListener( Event.ENTER_FRAME, enterFrameHandler );
- stage.addEventListener( MouseEvent.CLICK, kumonoko );
- var phrase = addChild( catchPhrase() );
- var tween:IObjectTween = BetweenAS3.tween( phrase, { alpha:1.0 }, { alpha:0.0 }, 4.0, Cubic.easeOut );
- tween.addEventListener( TweenEvent.COMPLETE, onComplete );
- tween.play();
- function onComplete( e:TweenEvent ):void {
- BetweenAS3.tween( phrase, { alpha:0.0 }, { alpha:1.0 }, 2.0, Cubic.easeOut ).play();
- }
- }
- }
- private function catchPhrase():TextField {
- var txt:TextField = new TextField();
- txt.width = 200;
- txt.height = 40;
- txt.x = STAGE_WIDTH * 0.5 - txt.width * 0.5;
- txt.y = STAGE_HEIGHT * 0.5 - txt.height * 0.5;
- txt.type = TextFieldType.DYNAMIC;
- txt.border = false;
- txt.background = false;
- txt.selectable = false;
- txt.textColor = 0xFFFFFF;
- var tf:TextFormat = new TextFormat();
- tf.font = "Verdana";
- tf.size = 18;
- tf.align = TextFormatAlign.CENTER;
- txt.defaultTextFormat = tf;
- //txt.text = "Dialectical Coding...";
- txt.text = "build flash online";
- txt.alpha = 0;
- return txt;
- }
- private function kumonoko( e:MouseEvent ):void {
- var totalRobo:uint = robos.length
- for ( var i:int = 0; i < totalRobo; ++i ) {
- robos[ i ].refuge( stage.mouseX, stage.mouseY );
- }
- }
- private function enterFrameHandler( e:Event ):void {
- var totalRobo:uint = robos.length
- for ( var i:int = 0; i < totalRobo; i++ ) {
- robos[ i ].update();
- }
- robos.sortOn("py", Array.NUMERIC );
- _canvas.lock();
- _canvas.fillRect( _canvas.rect, 0x3399ff )
- for ( i = 0; i < totalRobo; i++ ) {
- _canvas.copyPixels( robos[ i ].frames[ robos[ i ].pose ], robos[ i ].frames[ robos[ i ].pose ].rect, new Point( robos[ i ].px, robos[ i ].py), null, null, true );
- }
- _canvas.unlock();
- }
- }
- }
- import flash.display.*;
- import flash.events.*;
- import flash.geom.*;
- class RoboII extends Sprite {
- public var frames:Array;
- public var complete:uint = 0;
- private var actions:uint;
- private var currentAct:uint = 0;
- private var actFrame:uint = 0;
- private var actPeriod:Number = 8;
- public var pose:uint;
- private var _color:uint;
- private var mode:Boolean;
- private var speed:Number;
- public var px:Number, py:Number;
- private var rx:Number = 465 + Math.random() * 465;
- private var ry:Number = -Math.random() * 465;
- private var dx:Number, dy:Number;
- public function RoboII( color:uint, destinationX:Number, destinationY:Number, bmp:BitmapData ) {
- _color = color;
- var posRatio:Number = 4.4
- dx = destinationX * posRatio;
- dy = destinationY * posRatio;
- mode = true;
- var k:Number = Math.random() * 465 - 465 * 0.5;
- rx = k > 0 ? (k + 565) : k - 100;
- k = Math.random() * 465 - 465 * 0.5;
- ry = k > 0 ? (k + 565) : k - 100;
- px = rx;
- py = ry;
- frames = [];
- var ratio:Number = 0.7;
- const frameWidth:int = 20;
- const frameHeight:int = 34;
- for ( var i:uint = 0; i < 2; i++ ) {
- var frame:BitmapData = new BitmapData( frameWidth * ratio, frameHeight * ratio, true, 0 );
- var matrix:Matrix = new Matrix();
- matrix.translate( -i * frameWidth, 0 );
- matrix.scale( ratio, ratio );
- var getR:uint = ( _color >> 16 ) & 0xFF;
- var getG:uint = ( _color >> 8 ) & 0xFF;
- var getB:uint = _color & 0xFF;
- var colorTrans:ColorTransform = new ColorTransform( getR / 256 + 0.1, getG / 256 + 0.1, getB / 256 + 0.1 );
- frame.draw( bmp, matrix, colorTrans );
- frames.push( frame );
- frame = new BitmapData( frameWidth * ratio, frameHeight * ratio, true, 0 );
- matrix.identity();
- matrix.translate( ( -i - 1 ) * frameWidth, 0 );
- matrix.scale( -ratio, ratio );
- frame.draw( bmp, matrix, colorTrans );
- frames.push( frame );
- }
- actions = frames.length;
- complete = 1;
- }
- public function update():void {
- if ( mode ) {
- speed = Math.random() * 1.5 + 1.5;
- var angle:Number = Math.atan2( dy - py, dx - px );
- if ( ( px < dx - 1.5 || px > dx + 1.5 ) ) {
- var vx:Number = Math.cos( angle ) * speed;
- px += vx;
- }
- if ( ( py < dy - 1.5 || py > dy + 1.5 ) ) {
- var vy:Number = Math.sin( angle ) * speed;
- py += vy;
- }
- } else {
- speed = Math.random() * 4 + 8;
- angle = Math.atan2( ry - py, rx - px );
- if ( px < rx - 10 || px > rx + 10 ) {
- vx = Math.cos( angle ) * speed;
- px += vx;
- } else {
- var rxFlag:Boolean = true;
- }
- if ( py < ry - 10 || py > ry + 10 ) {
- vy = Math.sin( angle ) * speed;
- py += vy;
- } else {
- var ryFlag:Boolean = true;
- }
- if( rxFlag && ryFlag ) {
- mode = true;
- }
- }
- actPeriod = 6 / speed;
- actFrame += 1;
- if ( actPeriod < actFrame ) {
- actFrame = 0;
- currentAct += 2;
- if ( currentAct >= actions ) {
- currentAct = 0;
- }
- }
- if ( vx > 0 )
- pose = currentAct + 1;
- else
- pose = currentAct;
- }
- public function refuge( mx:Number, my:Number ):void {
- if ( px > -20 && px < 485 && py > -20 && py < 485 ) {
- mode = false;
- var angle:Number = Math.atan2( my - py, mx - px );
- var distance:Number = Math.random() * 80 + 640;
- rx = px - Math.cos( angle ) * distance;
- ry = py - Math.sin( angle ) * distance;
- }
- }
- }
- 出題者からのコメント
- 集まってくる様子、マウスのクリックで散る様子、その動きがなんとも…でおもしろかったです。見てるだけでもムズムズするし、散らすとくせになります。
- 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.
rsakane
- /*
- * お題と全然関係ないコードですが、何となく思いついたので作成。
- *
- * 画面をクリックすると壁を追加/削除することが出来ます。
- * ゴールまでの道が閉ざされてしまうとロボが止まってしまいます。
- *
- **/
- package
- {
- import flash.display.Sprite;
- import flash.events.Event;
- import flash.events.MouseEvent;
- import flash.geom.Point;
- import flash.geom.Matrix;
- import org.libspark.betweenas3.BetweenAS3;
- [SWF(backgroundColor="0xEDEDED")]
- public class Main extends Sprite
- {
- private var roboX:int = 1;
- private var roboY:int = 1;
- private var nodes:Array;
- private var count:int = 0;
- private var robo:Robo;
- private var direction:Array =
- [
- [ 1, 0],
- [-1, 0],
- [ 0, 1],
- [ 0, -1]
- ];
- public function Main()
- {
- Board.init();
- nodes = new Array(Board.HEIGHT);
- for (var y:int = 0; y < Board.HEIGHT; y++)
- {
- nodes[y] = new Array(Board.WIDTH);
- for (var x:int = 0; x < Board.WIDTH; x++)
- {
- var node:Node = new Node();
- node.pos.y = y, node.pos.x = x;
- node.status = Board.map[y][x];
- nodes[y][x] = node;
- if (node.status == Status.WALL)
- {
- var matrix:Matrix = new Matrix();
- matrix.createGradientBox(Board.SW, Board.SH, 45 * Math.PI / 180, x * Board.SW, y * Board.SH);
- graphics.beginGradientFill("linear", [0x0, 0x393939], [1.0, 1.0], [0, 255], matrix);
- graphics.drawRect(x * Board.SW, y * Board.SH, Board.SW, Board.SH);
- graphics.endFill();
- }
- }
- }
- robo = new Robo(8, true, true);
- robo.load();
- robo.scaleX = 0.8;
- robo.scaleY = 0.8;
- robo.x = roboX * Board.SW;
- robo.y = roboY * Board.SH;
- addChild(robo);
- drawTarget(1, 1);
- addEventListener(Event.ENTER_FRAME, solve);
- stage.addEventListener(MouseEvent.MOUSE_DOWN, onMouseDown);
- }
- private function onMouseDown(event:MouseEvent):void
- {
- if (mouseX < 0 || Board.SW * Board.WIDTH <= mouseX || mouseY < 0 || Board.SH * Board.HEIGHT <= mouseY) return;
- var x:int = mouseX / Board.SW;
- var y:int = mouseY / Board.SH;
- if (x == Board.targetX && y == Board.targetY) return;
- if (nodes[y][x].status == Status.WALL)
- {
- nodes[y][x].status = Status.FIELD;
- graphics.beginFill(0xEDEDED);
- graphics.drawRect(x * Board.SW, y * Board.SH, Board.SW, Board.SH);
- graphics.endFill();
- }
- else
- {
- nodes[y][x].status = Status.WALL;
- var matrix:Matrix = new Matrix();
- matrix.createGradientBox(Board.SW, Board.SH, 45 * Math.PI / 180, x * Board.SW, y * Board.SH);
- graphics.beginGradientFill("linear", [0x0, 0x393939], [1.0, 1.0], [0, 255], matrix);
- graphics.drawRect(x * Board.SW, y * Board.SH, Board.SW, Board.SH);
- graphics.endFill();
- }
- }
- private function drawTarget(bx:int, by:int):void
- {
- graphics.beginFill(0xEDEDED);
- graphics.drawRect(bx * Board.SW, by * Board.SH, Board.SW, Board.SW);
- graphics.endFill();
- var matrix:Matrix = new Matrix();
- matrix.createGradientBox(Board.SW, Board.SH, 45 * Math.PI / 180, x * Board.SW, y * Board.SH);
- graphics.beginGradientFill("linear", [0xFFC800, 0xFF9900], [1.0, 1.0], [0, 255], matrix);
- graphics.drawRect(Board.targetX * Board.SW, Board.targetY * Board.SH, Board.SW, Board.SW);
- graphics.endFill();
- }
- private function solve(event:Event = null):void
- {
- if (count++ % 10) return;
- var data:Array = new Array();
- for (var y:int = 0; y < Board.HEIGHT; y++)
- {
- for (var x:int = 0; x < Board.WIDTH; x++)
- {
- nodes[y][x].count = Status.UNKNOWN;
- if (nodes[y][x].status == Status.FIELD) data.push(nodes[y][x]);
- }
- }
- if (roboY == Board.targetY && roboX == Board.targetX)
- {
- robo.stop();
- if (data.length != 0)
- {
- Board.map[Board.targetY][Board.targetX] = Status.FIELD;
- nodes[Board.targetY][Board.targetX].status = Status.FIELD;
- var n:Node = data[int(Math.random() * data.length)];
- var tempX:int = Board.targetX;
- var tempY:int = Board.targetY;
- Board.targetX = n.pos.x;
- Board.targetY = n.pos.y;
- drawTarget(tempX, tempY);
- robo.play();
- }
- return;
- }
- nodes[Board.targetY][Board.targetX].status = Status.GOAL;
- Board.map[Board.targetY][Board.targetX] = Status.GOAL;
- var search:Array = new Array();
- search.push(nodes[roboY][roboX]);
- do
- {
- search.sortOn("count", Array.NUMERIC | Array.DESCENDING);
- var node:Node = search.pop();
- if (node == null) return;
- if (nodes[node.pos.y][node.pos.x] == Status.WALL) continue;
- for (var i:int = 0; i < 4; i++)
- {
- var py:int = node.pos.y + direction[i][1];
- var px:int = node.pos.x + direction[i][0];
- if (py < 0 || Board.HEIGHT <= py || px < 0 || Board.WIDTH <= px) continue;
- if (nodes[py][px].status == Status.GOAL)
- {
- nodes[py][px].bpos.x = node.pos.x;
- nodes[py][px].bpos.y = node.pos.y;
- break;
- }
- if (nodes[py][px].status == Status.WALL) continue;
- if (nodes[py][px].count == Status.UNKNOWN)
- {
- nodes[py][px].count = node.count + 1;
- nodes[py][px].bpos.x = node.pos.x;
- nodes[py][px].bpos.y = node.pos.y;
- search.push(nodes[py][px]);
- }
- else if (node.count + 1 < nodes[py][px].count)
- {
- nodes[py][px].count = node.count + 1;
- nodes[py][px].bpos.x = node.pos.x;
- nodes[py][px].bpos.y = node.pos.y;
- }
- }
- if (px < 0 || Board.WIDTH <= px || py < 0 || Board.HEIGHT <= py) px = node.pos.x, py = node.pos.y;
- }
- while (Board.map[py][px] != Status.GOAL);
- var bpos:Point = new Point();
- bpos.y = Board.targetY;
- bpos.x = Board.targetX;
- do
- {
- node = nodes[bpos.y][bpos.x];
- if (node.bpos.y == roboY && node.bpos.x == roboX)
- {
- BetweenAS3.tween(robo, { x:node.pos.x * Board.SW, y:node.pos.y * Board.SH }, null, 0.3 ).play();
- roboY = node.pos.y;
- roboX = node.pos.x;
- break;
- }
- bpos = node.bpos;
- }
- while (true);
- }
- }
- }
- import flash.display.Sprite;
- import flash.display.Bitmap;
- import flash.display.BitmapData;
- import flash.display.Loader;
- import flash.events.Event;
- import flash.geom.Point;
- import flash.geom.Matrix;
- import flash.net.URLRequest;
- import flash.system.LoaderContext;
- class Board
- {
- public static const WIDTH:int = 20;
- public static const HEIGHT:int = 20;
- public static var targetY:int = 19;
- public static var targetX:int = 19;
- public static var SW:int = int(465 / 20);
- public static var SH:int = int(465 / 20);
- public static var map:Array;
- public static function init():void
- {
- map = new Array(HEIGHT);
- for (var y:int = 0; y < HEIGHT; y++)
- {
- map[y] = new Array(WIDTH);
- for (var x:int = 0; x < WIDTH; x++)
- {
- map[y][x] = 0;
- }
- }
- createMaze();
- }
- private static function createMaze():void
- {
- for (var y:int = 0; y < HEIGHT; y++)
- {
- for (var x:int = 0; x < WIDTH; x++)
- {
- if (y == 0 || x == 0 || y == SH - 1 || x == SW - 1 || y % 2 == 0 && x % 2 == 0) map[y][x] = Status.WALL;
- else map[y][x] = Status.FIELD;
- }
- }
- for (y = 2; y < HEIGHT - 1; y += 2)
- {
- var dx:int = 2;
- var dy:int = y;
- switch (Math.floor(Math.random() * 4))
- {
- case 0:
- dx++;
- break;
- case 1:
- dx--;
- break;
- case 2:
- dy++;
- break;
- case 3:
- dy--;
- break;
- }
- if (!map[dy][dx]) map[dy][dx] = Status.WALL;
- else y -= 2;
- }
- for (x = 4; x < WIDTH - 1; x += 2)
- {
- for (y = 2; y < HEIGHT - 1; y += 2)
- {
- dx = x;
- dy = y;
- switch (Math.floor(Math.random() * 3))
- {
- case 0:
- dy++;
- break;
- case 1:
- dy--;
- break;
- case 2:
- dx++;
- break;
- }
- if (!map[dy][dx]) map[dy][dx] = Status.WALL;
- else y -= 2;
- }
- }
- }
- public function Board(){}
- }
- class Node
- {
- public var pos:Point = new Point();
- public var bpos:Point = new Point();
- public var count:int = Status.UNKNOWN;
- public var status:int;
- }
- class Status
- {
- public static const FIELD:int = 0;
- public static const WALL:int = -1;
- public static const GOAL:int = 2;
- public static const UNKNOWN:int = 99999;
- }
- class Robo extends Sprite {
- public static const READY:String = "READY";
- public var imgSrc:String = "http://assets.dev.wonderfl.net/images/related_images/e/ea/ea8a/ea8a6b1d37c2cec12e07893c66f164a9da1e92c0";
- private var _loader:Loader;
- private var _frame:Bitmap;
- public var frames:Array;
- private var _currentFrame:int = 0;
- private var _totalFrames:int = 0;
- private var _frameRate:int = 8;
- private var _autoPlay:Boolean = false;
- public function Robo( frameRate:int = 8, autoPlay:Boolean = false, autoLoad:Boolean = false ){
- _frameRate = frameRate;
- _autoPlay = autoPlay;
- // if( autoLoad ) load();
- }
- public function load():void {
- _loader = new Loader();
- _loader.contentLoaderInfo.addEventListener( Event.COMPLETE, completeHandler );
- _loader.load( new URLRequest(imgSrc), new LoaderContext(true) );
- }
- private function completeHandler(e:Event):void {
- var bmp:BitmapData = Bitmap( _loader.content ).bitmapData;
- _loader.contentLoaderInfo.removeEventListener( Event.COMPLETE, completeHandler );
- _loader= null;
- _frame = new Bitmap();
- addChild( _frame );
- frames = [];
- const frameWidth:int = 20;
- const frameHeight:int = 34;
- var numFrames:int = bmp.width/frameWidth;
- for( var i:int=0; i< numFrames; ++i ) {
- for( var f:int=0; f<_frameRate; ++f ) {
- var frame:BitmapData = new BitmapData( frameWidth, frameHeight, true, 0 );
- var matrix:Matrix = new Matrix();
- matrix.translate( -i*frameWidth, 0 );
- frame.draw( bmp, matrix );
- frames.push( frame );
- }
- }
- _totalFrames = frames.length;
- update();
- dispatchEvent( new Event(READY) );
- if( _autoPlay ) play();
- }
- private function update(e:Event=null):void {
- _frame.bitmapData = frames[_currentFrame]
- _currentFrame = (_currentFrame+1) % _totalFrames;
- }
- public function play():void {
- if( isReady )
- addEventListener( Event.ENTER_FRAME, update );
- }
- public function stop():void {
- removeEventListener( Event.ENTER_FRAME, update );
- }
- public function get currentFrame():int { return _currentFrame+1; }
- public function get totalFrames():int { return _totalFrames; }
- public function get isReady():Boolean {
- return frames && frames.length>0;
- }
- }
- 出題者からのコメント
- ロボット君を間接的に操っている感じ。彼の動きを上から見るのがおもしろい。ゴールしても、次のゴールがまた現れるので、これも延々やり続ける羽目になりました。
- 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.
h_sakurai
- // forked from checkmate's Checkmate Vol.6 Sponser
- package {
- import flash.display.*;
- import flash.events.*;
- import org.libspark.betweenas3.*;
- import org.libspark.betweenas3.tweens.ITween;
- [SWF(backgroundColor=0x3399ff)]
- public class Sponser extends Sprite {
- private var robo:Robo;
- public function Sponser() {
- Robo.load();
- addEventListener("enterFrame", update);
- }
- public function update(e:Event):void {
- if(loadf) {
- var robos:Array = [];
- for( var i:int = 0; i<30; ++i ) {
- robo = new Robo( 8, true, true );
- robos.push(robo);
- addChild(robo);
- }
- for (i=0;i<30;i++) {
- var t:ITween = BetweenAS3.tween( robos[i],
- { x : -150, scaleX:-5, scaleY:5, y: 0 + i*20 },
- { x:465 , scaleX:-5, scaleY:5,y: 100 }, 3 );
- t.stopOnComplete = false;
- t.play();
- }
- loadf=false;
- }
- }
- }
- }
- var loadf:Boolean = false;
- import flash.display.*;
- import flash.events.*;
- import flash.net.*;
- import flash.geom.*;
- import flash.system.*;
- class Robo extends Sprite {
- public static var imgSrc:String = "http://assets.dev.wonderfl.net/images/related_images/e/ea/ea8a/ea8a6b1d37c2cec12e07893c66f164a9da1e92c0";
- private var _frame:Bitmap;
- private var _currentFrame:int = 0;
- private var _totalFrames:int = 0;
- private var _frameRate:int = 8;
- private var _autoPlay:Boolean = false;
- private static var frames:Array = [];
- public function Robo( frameRate:int = 8, autoPlay:Boolean = false, autoLoad:Boolean = false ){
- _frameRate = frameRate;
- _autoPlay = autoPlay;
- _frame = new Bitmap();
- addChild( _frame );
- _totalFrames = frames.length;
- update();
- dispatchEvent( new Event("READY") );
- if( _autoPlay ) play();
- }
- public static var bmp:BitmapData;
- public static function load():void {
- var loader:Loader = new Loader();
- loader.contentLoaderInfo.addEventListener( Event.COMPLETE, function(e:Event):void{
- var _frameRate:int = 8;
- bmp = Bitmap( loader.content ).bitmapData;
- const frameWidth:int = 20;
- const frameHeight:int = 34;
- var numFrames:int = bmp.width/frameWidth;
- for( var i:int=0; i< numFrames; ++i ) {
- for( var f:int=0; f<_frameRate; ++f ) {
- var frame:BitmapData = new BitmapData( frameWidth, frameHeight, true, 0 );
- var matrix:Matrix = new Matrix();
- matrix.translate( -i*frameWidth, 0 );
- frame.draw( bmp, matrix );
- frames.push( frame );
- }
- }
- loadf = true;
- } );
- loader.load( new URLRequest(imgSrc), new LoaderContext(true) );
- }
- private function update(e:Event=null):void {
- _frame.bitmapData = frames[_currentFrame]
- _currentFrame = (_currentFrame+1) % _totalFrames;
- }
- public function play():void {
- if( isReady )
- addEventListener( Event.ENTER_FRAME, update );
- }
- public function stop():void {
- removeEventListener( Event.ENTER_FRAME, update );
- }
- public function get currentFrame():int { return _currentFrame+1; }
- public function get totalFrames():int { return _totalFrames; }
- public function get isReady():Boolean {
- return frames && frames.length>0;
- }
- }
- 出題者からのコメント
- この動きはまったく想像できませんでした。そこがツボでした。
- Comments from King
- We couldn't imagine this move at all, which hits the spot.


