2016-09-04 6 views
1

私はメタデータを使用してコロナSDKでOOPゲームを作成していますが、コードに問題があります。Corona:Error Loading Module Error

ここに私のmain.luaファイルされる:

----------------------------------------------------------------------------------------- 
-- 
-- main.lua 
-- 
----------------------------------------------------------------------------------------- 

-- Your code here 

local hero = require("hero") 
local environment = require("environment") 
local obstacle = require("obstacle") 

local player = hero.new("Billy", 0, 10) 

ここでは私のhero.luaクラスファイルです:

local hero = {} 
local hero_mt = {_index = hero} 

--Constructor 

function hero.new (name, positionX, positionY) 
    local newHero = { 
     name = name 
     positionX = positionX or 0 
     positionY = positionY or 0 
    } 

    return setmetatable(newHero, herp_mt) 

function hero:Jump(amount) 

end 

そして、次のように私は受け付けており、エラーがある:

エラーhero.lua:hero.lua:14 '}'の近くに '{'を閉じます。 '位置X'

このサイトで使用しているのと同じ構文(https://coronalabs.com/blog/2011/09/29/tutorial-modular-classes-in-corona/) に従っていますが、何も問題はありません。何かご意見は?

答えて

3

newHeroテーブルの宣言時にカンマがありません。すべてのテーブルのプロパティはコンマで区切る必要があります。詳細については、documentationを参照してください。最後の要素にはコンマも使用できます。

local newHero = { 
    name = name, 
    positionX = positionX or 0, 
    positionY = positionY or 0, 
} 

あなたが機能hero.new()のためにも決算endを逃すそしてそうのように、あなたのヒーローファイルの末尾に英雄テーブルを返す必要がされていますreturn heroあなたが実際にあなたのメインのファイルにhero.new()を呼び出すことができますように。

+0

友だちに感謝! –