lua-how erfordern, arbeiten

Bin ich über eine Grafik-Bibliothek, mit der Sie das Programm in Lua. Ich habe ein Bedürfnis für die A* pathfinding Bibliothek so fand ich einen online. Es ist nur 1 lua-Datei, funktioniert die Wegfindung und 1 Beispiel-Datei. In der Beispiel-Datei wird es verwendet das Objekt wie:

-- Loading the library
local Astar = require 'Astar'
Astar(map,1) -- Inits the library, sets the OBST_VALUE to 1

Ich das Skript ausführen und alles funktioniert. So, jetzt füge ich die Astar.lua-Datei an den Speicherort, wo mein Grafik-engine ausgeführt wird und die gleiche Sache zu tun und ich bekomme den Fehler auf der Astar(Karte 1) line:

"Versuch, rufen Sie lokale 'AStar' (ein Zahlenwert)

Irgendwelche Ideen, warum würde ich immer diesen Fehler wenn ich dabei bin das gleiche wie das Beispiel, das kommt mit diesem AStar lib?

Hier ist ein wenig von der AStar-Datei

-- The Astar class
local Astar = {}
setmetatable(Astar, {__call = function(self,...) return self:init(...) end})
Astar.__index = Astar

-- Loads the map, sets the unwalkable value, inits pathfinding
function Astar:init(map,obstvalue)
    self.map = map
        self.OBST_VALUE = obstvalue or 1
    self.cList = {}
    self.oList = {}
    self.initialNode = false
    self.finalNode = false
    self.currentNode = false
    self.path = {}
    self.mapSizeX = #self.map[1]
    self.mapSizeY = #self.map
end

So beachten Sie, dass, wenn ich dieses aus meiner Grafik-engine, es ist die Rückkehr, 1, aber, wenn Sie von der Beispiel, dass es kam mit der Rückkehr einer Tabelle, die ist, was es sein sollte Rückkehr. Also nicht sicher, warum es würde nur wieder 1.

  • Ich merke in der Fehlermeldung "attempt to call local 'AStar' (a number value)", das S wird großgeschrieben. Ist das ein Tippfehler auf Ihrer Seite oder sind Sie vielleicht mit der falschen Großschreibung irgendwo?
InformationsquelleAutor user441521 | 2011-08-01
Schreibe einen Kommentar