J'ai un script que je charge avec loadfile
, puis exécutez-le. J'ai aussi la variable love
dans la portée du script parent lua et je veux que cette variable soit nil
dans l'enivornment du script enfant mais tout le reste (print
, math
, pairs
, toutes les libs sta de Lua). Comment puis je faire ça?Comment supprimer une variable de l'environnement de script enfant dans lua?
Cela ne fonctionne pas:
local scenario = love.filesystem.load(script)
local env = {}
setmetatable(env, { __index = _G })
env.love = nil
env.game = Game
setfenv(scenario, env)
Pourquoi le mettre à "nil" ne l'ajoute-t-il pas? –
La définition de 'nil' supprime une entrée dans une table. – lhf
mais ce n'est pas le cas - le script enfant peut toujours utiliser 'love' dans sa portée. –