請看下面的Lua腳本。在Lua腳本中共享函數變量
想法是,在改變狀態之前,通過調用「getStateFlag()」並賦值給「status」變量來獲得當前狀態。方法ChangeState1或ChangeState2可以更改當前狀態。因此,稍後在調用ResetStatus方法時,可以通過分配存儲的「status」值來重置爲舊狀態。
但問題是,這種「狀態」變量總是設置爲0。
function Start()
status = 0
local flag = getStateFlag()
if(flag == 1) then
status = getCurrentStatus()
ChangeState1()
else if(flag == 2) then
status = getCurrentStatus()
ChangeState2()
else
ResetStatus(status)
end
end
function ChangeStatus1()
device::set_value(1)
end
function ChangeStatus1()
device::set_value(2)
end
function ResetStatus(status)
device::set_value(status)
end
考慮編輯你的問題來描述你正在運行的環境(這聽起來像某種嵌入式處理器?)。如果其他用戶有經驗,他們可能有想法。 – solublefish