我正在开发一个使用JavaScript和html Canvas的视频游戏,而我正试图让它根据什么价值来制作:
PlayerIcon = 0;
是,计算机将从数组中绘制该特定数字:
PlayerI = [];
PlayerI[0] = new Sprite("");
PlayerI[1] = new Sprite("");
PlayerI[2] = new Sprite("");
我并不完全理解未定义值的工作原理 (例如.this [i]) 但它们应该可以吗?我已经知道如何在JavaScript中执行此操作但是我希望能够将其转换为几行编码(无论我向阵列添加多少变量):
var canvas = document.getElementById("myCanvas");
var ctx = canvas.getContext("2d");
var timer = setInterval(gameLoop,10);
var PlayerIcon = 0;
var PlayerI = [];
function gameLoop()
{
if(PlayerIcon == 0)
{
PlayerI[0].draw(ctx);
}
if(PlayerIcon == 1)
{
PlayerI[1].draw(ctx);
}
if(PlayerIcon == 2)
{
PlayerI[2].draw(ctx);
}
}
然后我将为每个PlayerI变量分配一张图片,并用PlayerIcon变量切换哪一个。
答案 0 :(得分:3)
PlayerI[PlayerIcon].draw(ctx);
应该做的伎俩