0

このスーパークラス グリッド クラスと、GrassTile1、GrassTile2 などという名前のグリッド クラスのサブクラスがあります。サブクラスのインスタンスはすべて配列に格納されます。サブクラスのインスタンスを、配列を参照するスーパークラスに変換するにはどうすればよいですか?

private var backgroundGrid = []; //the array which the grids are stored in, in the main class.



public class Grid extends MovieClip
{

    protected var node :PathfindNode; //the variable I wish to access, from an instance of subclass.

    public function Grid(){
        node = new PathfindNode();
    }


}



public class GrassTile1 extends Grid { //every subclass of Grid will extends Grid


    public function GrassTile1() {
        // constructor code
    }
}

function getBackgroundGrid(i:int,j:int):Grid{ //in the main class
        return Grid(backgroundGrid[i][j]); // this line gives me an error 
    }

TypeError: エラー #1034: 型強制に失敗しました: GrassTile1@2905d5f1 を Grid に変換できません。

backgroundGrid[i][j].node にアクセスしようとしましたが、考えられる回避策と失敗しました。何か案が?

4

1 に答える 1