mirror of
https://github.com/coop-deluxe/sm64coopdx.git
synced 2024-12-22 16:30:23 +00:00
Use metatables to make gGlobalSoundSource readonly
This commit is contained in:
parent
07d3fe3b93
commit
a905f317a7
3 changed files with 38 additions and 3 deletions
|
@ -306,8 +306,20 @@ end
|
|||
-- sound --
|
||||
-----------
|
||||
|
||||
local function read_only(t)
|
||||
local proxy = {}
|
||||
local mt = { -- create metatable
|
||||
__index = t,
|
||||
__newindex = function()
|
||||
error('attempt to update a read-only table', 2)
|
||||
end
|
||||
}
|
||||
setmetatable(proxy, mt)
|
||||
return proxy
|
||||
end
|
||||
|
||||
--- @type Vec3f
|
||||
gGlobalSoundSource = { x = 0, y = 0, z = 0 }
|
||||
gGlobalSoundSource = read_only({ x = 0, y = 0, z = 0 })
|
||||
|
||||
--- @param bank number
|
||||
--- @param soundID number
|
||||
|
|
|
@ -308,8 +308,20 @@ end
|
|||
-- sound --
|
||||
-----------
|
||||
|
||||
local function read_only(t)
|
||||
local proxy = {}
|
||||
local mt = { -- create metatable
|
||||
__index = t,
|
||||
__newindex = function()
|
||||
error('attempt to update a read-only table', 2)
|
||||
end
|
||||
}
|
||||
setmetatable(proxy, mt)
|
||||
return proxy
|
||||
end
|
||||
|
||||
--- @type Vec3f
|
||||
gGlobalSoundSource = { x = 0, y = 0, z = 0 }
|
||||
gGlobalSoundSource = read_only({ x = 0, y = 0, z = 0 })
|
||||
|
||||
--- @param bank number
|
||||
--- @param soundID number
|
||||
|
|
|
@ -272,8 +272,19 @@ char gSmluaConstants[] = ""
|
|||
"-----------\n"
|
||||
"-- sound --\n"
|
||||
"-----------\n"
|
||||
"local function read_only(t)\n"
|
||||
" local proxy = {}\n"
|
||||
" local mt = { -- create metatable\n"
|
||||
" __index = t,\n"
|
||||
" __newindex = function()\n"
|
||||
" error('attempt to update a read-only table', 2)\n"
|
||||
" end\n"
|
||||
" }\n"
|
||||
" setmetatable(proxy, mt)\n"
|
||||
" return proxy\n"
|
||||
"end\n"
|
||||
"--- @type Vec3f\n"
|
||||
"gGlobalSoundSource = { x = 0, y = 0, z = 0 }\n"
|
||||
"gGlobalSoundSource = read_only({ x = 0, y = 0, z = 0 })\n"
|
||||
"--- @param bank number\n"
|
||||
"--- @param soundID number\n"
|
||||
"--- @param priority number\n"
|
||||
|
|
Loading…
Reference in a new issue