在构造函数中为对象提供坐标。科罗纳

时间:2013-03-10 08:31:03

标签: lua corona

我有一个汽车类:

local car={};
local car_mt = { __index=car };
function car.new(_x, _y)
    local ncar=
    {
        img=display.newImageRect("test_car.png",50,120,true);
    }
    function ncar:set()
        self.img.xOrigin=_x;
        self.img.yOrigin=_y;
    end
    ncar:set();
    return setmetatable(ncar,car_mt);
end
return car;

当我这样称呼它时:

local pcar=require("car")
local car1=pcar:new(200,200);

x运动不起作用。 当我将xOrigin和yOrigin更改为x和y时,无关紧要。 但是当我这样称呼它时:

local pcar=require("car")
local car1=pcar:new(200,200);
car1.img.x=200;
car1.img.y=200;

结果还可以。 此外,car1.x是零并且我不明白,img如何在没有父母的情况下拥有自己的坐标。 我应该在set()函数中写什么来给我的汽车参考提供阶段x和y?是否有可能真正提供它,而不是img?

1 个答案:

答案 0 :(得分:1)

你应该在没有冒号的情况下调用构造函数

local car1=pcar.new(200,200);