2016-07-02 1 views
1

Ok, donc j'ai fait un jeu en utilisant love2D et j'ai essayé de le convertir en .app, parce que je cours Mac OSX. Mais j'ai eu l'erreur en disant que main.lua doit être le plus haut niveau du .zip. J'ai donc essayé de placer tous mes scripts lua dans un dossier en ne conservant que la main.lua et la conf.lua au plus haut niveau du .zip. Mais maintenant, love2D ne trouve pas les autres fichiers dans le dossier. J'ai essayé de mettre le nom du répertoire lors de l'utilisation de "require". par exemple:Essayer de mettre des scripts lua dans des dossiers. Love2D

require "dir/player.lua" 

mais cela ne fonctionnerait pas ...

Répondre

2

Utilisez

require "dir.player" 

Le point . désigne un niveau parent, le .lua n'est pas nécessaire.

+0

Merci, cela a fonctionné! –

+0

Cela fonctionne pour 'require'. Y at-il un moyen de fournir un répertoire indépendant de la plate-forme à d'autres fonctions? Dire que j'ai un fichier '.wav' que je veux charger' 'love.audio.newSource' et il est dans le dossier' sound'. Dans Windows, la meilleure solution est 'sound = love.audio.newSource ('sound/file.wav')'. Comment faire 'dir' cross-platform? – Siemkowski

+0

Eh bien, je ne suis pas sûr à ce sujet, mais je suis sur Linux et j'utiliserais exactement la même syntaxe. Qu'est-ce qui dépend de la plateforme dans cette ligne? Je dirais que ça dépend de la gestion des chemins d'amour, surtout dans ce cas sa routine de chargement audio. – pschulz