[英]How to create multiple instances of the same class in as3?
新手問題。 好的,所以我試圖在單獨的x和y坐標上創建筆記的兩個實例(這是一個導入的圖片),然后我希望它們都向右移動。 現在,我編寫了一個循環,該循環可以正常工作,但它只保留最后一個創建的實例。 這是我的代碼。 我真的很感謝任何人都能提供的幫助。 謝謝!
package
{
import flash.display.Bitmap;
import flash.display.DisplayObject;
import flash.display.Sprite;
import flash.events.Event;
import flash.events.KeyboardEvent;
import flash.utils.getDefinitionByName;
[Frame(factoryClass="Preloader")]
public class Main extends Sprite
{
private var speed:int = 8;
[Embed(source="../lib/Dodgethis.jpg")]
public var Notes:Class;
public var numnotes:Number;
public function Main():void
{
if (stage) init();
else addEventListener(Event.ADDED_TO_STAGE, init);
}
private function init(e:Event = null):void
{
removeEventListener(Event.ADDED_TO_STAGE, init);
// entry point
stage.addEventListener(KeyboardEvent.KEY_DOWN, testevent);
}
private function testevent(e:Event = null):void {
trace("testevent has run");
appear(350, 250);
//ap2(150, 150)
//addEventListener(Event.ENTER_FRAME, loop, false, 0, true);
}
private function appear(x:Number, y:Number) {
var arr1:Array = new Array;
numnotes = 4;
for (var i = 0; i < numnotes; i++)
{
trace (i);
var nbm:Bitmap = new Notes;
if (i == 0) {
this.x = 400;
this.y = 400;
addChild(nbm);
trace ("1 should be different");
} else {
trace ("this is working");
this.x = 150;
this.y = 150;
addChild(nbm);
arr1.push(nbm);
您已經創建了4個音符,但是它們的位置是同一點(0,0)。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.