upgradeAction
Definition
-- @/lua/ge/extensions/core/input/actions.lua:170
-- check if an action has been deprecated or replaced, and return the new version when possible
local function upgradeAction(action)
if action == nil then
log('E', 'bindings', "Cannot parse null action")
return
end
if getActions(true)[action] == nil then
if getActions(false)[action] ~= nil then
-- ignoring action, as it's currently inactive
return
end
if core_input_deprecatedActions[action] == nil then
log('E', 'bindings', "Couldn't find action "..tostring(action).." in actions lookup table")
return
end
if core_input_deprecatedActions[action]["replacement"] ~= nil then
log('D', 'bindings', "Replacing deprecated action "..action.." with new action "..core_input_deprecatedActions[action]["replacement"]);
return upgradeAction(core_input_deprecatedActions[action]["replacement"])
end
if core_input_deprecatedActions[action]["obsolete"] == true then
log('D', 'bindings', "Ignoring deprecated action: "..action)
return
end
log('E', 'bindings', "Couldn't process deprecated action "..action..": "..dumps(core_input_deprecatedActions[action]))
return
end
return action
end
Callers
@/lua/ge/extensions/core/input/actions.lua
log('D', 'bindings', "Replacing deprecated action "..action.." with new action "..core_input_deprecatedActions[action]["replacement"]);
return upgradeAction(core_input_deprecatedActions[action]["replacement"])
end
@/lua/ge/extensions/core/input/bindings.lua
local b = deepcopy(binding)
b.action = core_input_actions.upgradeAction(b.action)
if not b.action then
local action = core_input_actions.nameToUniqueName(b.action, vehicleName) -- this name-mangling is needed to prevent collisions with other vehicles' action names
action = core_input_actions.upgradeAction(action)
if not action then
local action = core_input_actions.nameToUniqueName(b.action, vehicleName) -- this name-mangling is needed to prevent collisions with other vehicles' action names
action = core_input_actions.upgradeAction(action)
if not action then
-- find the correction action
lnk.inputAction = core_input_actions.upgradeAction(lnk.inputAction)
for actionName, action in pairs(activeActions) do