亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定

cocos2d-lua貪吃蛇頭和身體重疊停在正中央不動?

初學cocos2d-lua,慕課網照著教程打的,代碼對過應該沒問題啊,為什么教程上run了貪吃蛇就往左走了,我的蛇頭蛇身重疊在正中央不動?
命令行窗口顯示:
[LUA-print] [string "src/app/Snake.lua"]:61: attempt to call field 'BodyArray' (
a table value)
stack traceback:
[string "src/app/scenes/MainScene.lua"]:13: in function <[string "src/ap
p/scenes/MainScene.lua"]:12>

MainScene.lua代碼如下
local ?Snake = require"app.Snake"

local MainScene = class("MainScene", function()
? ?return display.newScene("MainScene")
end)

local cMoveSpeed = 0.3

function MainScene:onEnter()
self.snake = Snake.new(self)

local tick = function()--第12行代碼
self.snake:Update()--第13行代碼
end

cc.Director:getInstance():getScheduler():scheduleScriptFunc(tick,cMoveSpeed,false)
end

function MainScene:onExit()
end

return MainScene

Snake.lua代碼如下
local Snake = class("Snake")
local Body = require("app.Body")

local cInitLen = 3

function Snake:ctor(node)

self.BodyArray = {}
self.node = node
self.MoveDir = "left"

for i = 1,cInitLen do
self:Grow(i == 1)
end
end
function Snake:GetTailGrid()
if #self.BodyArray == 0 then
return 0,0
end

local tail = self.BodyArray[#self.BodyArray]

return tail.X,tail.Y

end


function Snake:Grow(isHead)
local tailX,tailY = self:GetTailGrid()
local body = Body.new(self,tailX,tailY,self.node,isHead)

table.insert(self.BodyArray,body)

end

local function OffsetGridByDir(x,y,dir)

if dir == "left" then
return x -1,y
elseif dir == "right" then
return x +1,y
elseif dir == "up" then
return x,y -1
elseif dir == "down" then
return x,y +1
end

print("unknown dir",dir)

return x,y
end

function Snake:Update()

if #self.BodyArray == 0 then
return
end

for i = #self.BodyArray,1,-1 do

local body = self.BodyArray{i}--第61行代碼

if i == 1 then
body.X,body.Y = OffsetGridByDir(body.X,body.Y,self.MoveDir)
else
local front = self.BodyArray[i-1]
body.X,body.Y = front.X,front.Y

end

body:Update()

end

end


return Snake

正在回答

2 回答

local body = self.BodyArray{i}--第61行代碼

-- carefully look...... ? [i]

0 回復 有任何疑惑可以回復我~
#1

糖醋肉 提問者

非常感謝!
2015-09-21 回復 有任何疑惑可以回復我~

大神來給我解答一下吧,謝謝啦

0 回復 有任何疑惑可以回復我~

舉報

0/150
提交
取消

cocos2d-lua貪吃蛇頭和身體重疊停在正中央不動?

我要回答 關注問題
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號