切り抜き画像作り直して出直してきます。
目パチがうまいこといかないっす
5/25ようやく目パチ成功
いか〜ん切り抜きうまくいっとらん!!
ActionScript3 source code
/**
* Copyright plus-tic ( http://wonderfl.net/user/plus-tic )
* MIT License ( http://www.opensource.org/licenses/mit-license.php )
* Downloaded from: http://wonderfl.net/c/aGP8
*/
// forked from Takatsukier's forked from: ロックマン 目パチ
// forked from Takatsukier's ロックマン 目パチ
// forked from Takatsukier's forked from: forked from: forked from: 画像の読み込み
//目パチがうまいこといかないっす
// forked from Takatsukier's forked from: forked from: 画像の読み込み
// forked from Takatsukier's forked from: 画像の読み込み
// forked from Takatsukier's 画像の読み込み
//5/25ようやく目パチ成功
//いか〜ん切り抜きうまくいっとらん!!
package
{
import flash.display.Bitmap;
import flash.display.BitmapData;
import flash.display.Loader;
import flash.display.Sprite;
import flash.events.Event;
import flash.events.KeyboardEvent;
import flash.geom.Point;
import flash.geom.Rectangle;
import flash.net.URLRequest;
import flash.system.LoaderContext;
public class Main extends Sprite
{
private var charaChip:BitmapData;
private const C_WIDTH:int = 24;//キャラの幅
private const C_HEIGHT:int = 24;//キャラの高さ
private var frame:int = 0;//時間制御用変数
private var charaX:int = 0;//キャラクター番号
private var charaY:int = 0;
private var chara:BitmapData;//copyPixelsで切り出したキャラを入れているBitmapData
private var left:Boolean = false;
private var right:Boolean = false;
private const SPEED:int = 10;
private var Rockman:Bitmap;
public function Main(){
var loader:Loader = new Loader();
loader.contentLoaderInfo.addEventListener(Event.INIT, initHandler);
loader.load(new URLRequest("http://assets.wonderfl.net/images/related_images/b/bf/bfbc/bfbcda94494250cebecfc252db6852029b8df564"),
new LoaderContext(true));
}
private function initHandler(event:Event):void{
// チップ画像読み込み
var loader:Loader = event.currentTarget.loader;
charaChip = new BitmapData(loader.width, loader.height, true, 0x0);
charaChip.draw(loader);
charaChip.threshold(charaChip, charaChip.rect, new Point(), "==", 0xFF0000, 0x0, 0xFFFFFF);//背景透過処理
chara = new BitmapData(C_WIDTH, C_HEIGHT, true, 0x0);
chara.copyPixels(charaChip, new Rectangle(C_WIDTH * 2, C_HEIGHT * 0, C_WIDTH, C_HEIGHT), new Point());
//デカイの作成
Rockman = new Bitmap(chara);
Rockman.scaleX = Rockman.scaleY = 3;
Rockman.x = stage.stageWidth/2;
Rockman.y = stage.stageHeight/2;
addChild(Rockman);
addEventListener(Event.ENTER_FRAME, onEnterFrame);
stage.addEventListener(KeyboardEvent.KEY_DOWN,onKeyDown);
stage.addEventListener(KeyboardEvent.KEY_UP,onKeyUp);
}
private function onEnterFrame(event:Event):void{
if(left) Rockman.x -= SPEED;
else if(right) Rockman.x += SPEED;
if (frame++ % 10 == 0){
chara.copyPixels(charaChip, new Rectangle(C_WIDTH * charaX , C_HEIGHT * charaY, C_WIDTH, C_HEIGHT), new Point());
charaX = (charaX + 1) % 6
}
}
private function onKeyDown(event:KeyboardEvent):void{
if (event.keyCode == 37) left = true;
if (event.keyCode == 39) right = true;
}
private function onKeyUp(event:KeyboardEvent):void{
if (event.keyCode == 37) left = false;
if (event.keyCode == 39) right = false;
}
}
}