AS3语言 TypeError: Error #1010: 术语尚未定义,并且无任何属性。
提示错误信息:TypeError:Error#1010:术语尚未定义,并且无任何属性。atGame/foundPiece()atGame/playGame()atGame...
提示错误信息:
TypeError: Error #1010: 术语尚未定义,并且无任何属性。
at Game/foundPiece()
at Game/playGame()
at Game/NextFrame()
at flash.events::EventDispatcher/dispatchEventFunction()
at flash.events::EventDispatcher/dispatchEvent()
at flash.utils::Timer/tick()
我写的部分代码:
public function foundPiece()
{
spPostXArr=new Array();
spPostYArr=new Array();
pieceInSpriteArr=new Array();
for (var k:uint=0; k<3; k++)
{
for (var m:uint=0; m<4; m++)
{
sp=new Sprite();
addChild(sp);
var recordName:int;
recordName++;
newBitmap=new Bitmap();
newBitmap.bitmapData = new BitmapData(100,100);
var rect:Rectangle = new Rectangle(m * 100,k * 100,100,100);
var pt:Point = new Point(0,0);
newBitmap.bitmapData.copyPixels(fullBitmap.bitmapData,rect,pt);
newBitmap.name = String(recordName);
sp.addEventListener(MouseEvent.CLICK,btnMovePiece);
var randomNum:int = Math.floor(Math.random() * postArr.length);
if (newBitmap.name == "12")
{
newBitmap.bitmapData = new BitmapData(100,100,true,0x00000000);
sp.removeEventListener(MouseEvent.CLICK,btnMovePiece);
newBitmap.x = postArr[randomNum][1] + 20;
newBitmap.y = postArr[randomNum][0] + 10;
}
sp.x = postArr[randomNum][1] + 20;
sp.y = postArr[randomNum][0] + 10;
postArr.splice(randomNum,1);
sp.name = String(recordName);
pieceInSpriteArr.push(sp);
sp.addChild(newBitmap);
sp.buttonMode = true;
spPostXArr.push(sp.x);
spPostYArr.push(sp.y);
}
}
newPostArr=new Array();
for (var i:uint=0; i<3; i++)
{
for (var j:uint=0; j<4; j++)
{
newPostArr.push([i*(100+3)+40,j*(100+3)+40]);
}
}
} 展开
TypeError: Error #1010: 术语尚未定义,并且无任何属性。
at Game/foundPiece()
at Game/playGame()
at Game/NextFrame()
at flash.events::EventDispatcher/dispatchEventFunction()
at flash.events::EventDispatcher/dispatchEvent()
at flash.utils::Timer/tick()
我写的部分代码:
public function foundPiece()
{
spPostXArr=new Array();
spPostYArr=new Array();
pieceInSpriteArr=new Array();
for (var k:uint=0; k<3; k++)
{
for (var m:uint=0; m<4; m++)
{
sp=new Sprite();
addChild(sp);
var recordName:int;
recordName++;
newBitmap=new Bitmap();
newBitmap.bitmapData = new BitmapData(100,100);
var rect:Rectangle = new Rectangle(m * 100,k * 100,100,100);
var pt:Point = new Point(0,0);
newBitmap.bitmapData.copyPixels(fullBitmap.bitmapData,rect,pt);
newBitmap.name = String(recordName);
sp.addEventListener(MouseEvent.CLICK,btnMovePiece);
var randomNum:int = Math.floor(Math.random() * postArr.length);
if (newBitmap.name == "12")
{
newBitmap.bitmapData = new BitmapData(100,100,true,0x00000000);
sp.removeEventListener(MouseEvent.CLICK,btnMovePiece);
newBitmap.x = postArr[randomNum][1] + 20;
newBitmap.y = postArr[randomNum][0] + 10;
}
sp.x = postArr[randomNum][1] + 20;
sp.y = postArr[randomNum][0] + 10;
postArr.splice(randomNum,1);
sp.name = String(recordName);
pieceInSpriteArr.push(sp);
sp.addChild(newBitmap);
sp.buttonMode = true;
spPostXArr.push(sp.x);
spPostYArr.push(sp.y);
}
}
newPostArr=new Array();
for (var i:uint=0; i<3; i++)
{
for (var j:uint=0; j<4; j++)
{
newPostArr.push([i*(100+3)+40,j*(100+3)+40]);
}
}
} 展开
4个回答
推荐于2018-03-08
展开全部
这个函数中,你引用的一个变量或者剪辑名称,而你没有定义这个变量,或者剪辑没命名。用调试方式运行,应该能看出是哪一行代码出的错,从而找到具体原因。
展开全部
试图访问一个空引用就会报这个错。
比如
var i:Array;
i.push(1);
这时i为null,所以还不能push
改为这样
var i:Array=new Array();
比如
var i:Array;
i.push(1);
这时i为null,所以还不能push
改为这样
var i:Array=new Array();
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
试图访问一个空引用就会报这个错。
比如
var i:Array;
i.push(1);
这时i为null,所以还不能push
改为这样
var i:Array=new Array();
比如
var i:Array;
i.push(1);
这时i为null,所以还不能push
改为这样
var i:Array=new Array();
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
问题没找到 但是代码看得头大,
var recordName:int;
recordName++;
我想问你这段代码有何意义? 直接var recordName:int=1;不是一样吗 而且你的所有 newBitmap.name
和
sp.name
恒为 "1" 所以你那个if运行不到
postArr
是一个多维数组 你是什么声明的? 数据结构什么样子
var recordName:int;
recordName++;
我想问你这段代码有何意义? 直接var recordName:int=1;不是一样吗 而且你的所有 newBitmap.name
和
sp.name
恒为 "1" 所以你那个if运行不到
postArr
是一个多维数组 你是什么声明的? 数据结构什么样子
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询