この問題に対する答えが見つからないようです。以下を機能させることができません。
public class Callbattle extends MovieClip
{
import flash.display.MovieClip;
import flash.display.Stage;
import flash.display.InteractiveObject;
import flash.events.MouseEvent;
import global.Globalvar;
public var battlegraphics:Array = new Array();
public function Battle()
{
var battlewindow:MovieClip = new Battlewindow() as MovieClip;
battlegraphics.push(addChild(battlewindow));
battlewindow.x = 4;
battlewindow.y = 248;
var attackbutton:MovieClip = new Battlebutton() as MovieClip;
battlegraphics.push(addChild(attackbutton));
attackbutton.x = 192;
attackbutton.y = 255;
attackbutton.addEventListener(MouseEvent.CLICK, Attackclicked);
}
public function Attackclicked(event:MouseEvent):void{
battlegraphics[attackbutton].y = 248;
}
}
エラーが発生します
バトルグラフィックス[攻撃ボタン].y = 248;
ムービークリップを配列に追加するこの方法を試す前に、次のようにして同じ結果を得ていました。
public class Callbattle extends MovieClip
{
import flash.display.MovieClip;
import flash.display.Stage;
import flash.display.InteractiveObject;
import flash.events.MouseEvent;
import global.Globalvar;
public function Battle()
{
var battlewindow:MovieClip = new Battlewindow() as MovieClip;
this.addChild(battlewindow);
battlewindow.x = 4;
battlewindow.y = 248;
var attackbutton:MovieClip = new Battlebutton() as MovieClip;
this.addChild(attackbutton);
attackbutton.x = 192;
attackbutton.y = 255;
attackbutton.addEventListener(MouseEvent.CLICK, Attackclicked);
while (Globalvar.battle == true){
if (hero1turn == true){
}
}
}
public function Attackclicked(event:MouseEvent):void{
attackbutton.y = 248;
}
}
基本的に、別の関数からムービークリップにアクセスできるようにしたいだけです。
みんなありがとう、どんな助けでも素晴らしいだろう - マーク