0
當我單擊場景中的蘋果對象時,我的代碼返回錯誤1009的pickObject函數,我真的不明白爲什麼?我被困在這裏。希望得到一些幫助。錯誤1009類和函數
這是我在時間軸代碼:
//INVENTORY
import flash.events.MouseEvent;
import inventory.inventorySystem;
import inventory.itemC;
import flash.text.TextField;
var IS:inventorySystem;
var IT:itemC;
apple.itemName = "Apple";
apple.itemIcon = new AppleIcon();
apple.addEventListener(MouseEvent.MOUSE_MOVE, showItemNameF);
apple.addEventListener(MouseEvent.MOUSE_OUT, hideItemNameF);
apple.addEventListener(MouseEvent.MOUSE_DOWN, pickUpItem);
pear.itemName = "Pear";
pear.itemIcon = new PearIcon();
pear.addEventListener(MouseEvent.MOUSE_MOVE, showItemNameF);
pear.addEventListener(MouseEvent.MOUSE_OUT, hideItemNameF);
function pickUpItem(e:MouseEvent):void{
IS.addObject(itemC(e.currentTarget));
removeChild(itemC(e.currentTarget));
}
function showItemNameF(e:MouseEvent):void{
var itemNameBox:String;
itemNameBox = itemC(e.currentTarget).itemName;
stage.addChild(infoBoxObject);
infoBoxObject.infoBox.text = itemNameBox;
infoBoxObject.x = mouseX+12;
infoBoxObject.y = mouseY;
}
function hideItemNameF(e:MouseEvent):void{
infoBoxObject.x = -145;
infoBoxObject.y = 61;
}
//CURSOR
Mouse.hide();
var cursor:cursorImage = new cursorImage();
stage.addChild(cursor);
cursor.startDrag(true);
這裏是我inventorySystem類:
package inventory{
public class inventorySystem{
private var slot:Array = new Array(10);
public function addObject(it:itemC){
for(var i=0;i<10;i++){
if(slot[i]==null){
slot[i] = it;
return;
}
}
}
public function getObject(i:int):itemC{
return slot[i];
}
public function useObject(i:int){
slot[i] = null;
}
}
}
這裏是我的itemC類:
package inventory{
import flash.display.MovieClip;
public class itemC extends MovieClip{
public var itemName:String;
public var itemIcon:MovieClip;
}
}
多虧了切赫,代碼現在完美的作品和我的圖標出現在我的庫存。我的新問題是,當我在item圖標上移動mouse_move時,我想顯示對象的名稱,就像我用對象本身(showItemNameF)做的那樣。 – AnilDemir