我试图为游戏制作脚本,用已创建的功能替换可用功能。所以这是我的LUA代码:
function ifEmotePlayed(playerName, emoteID)
if emoteID == 0 then
print(playerName.." is dancing!")
end
end
return
function eventEmotePlayed(playerName, emoteID)
end
我想要做的就是用ifEmotePlayed函数替换eventEmotePlayed函数
function ifEmotePlayed(playerName, emoteID)
if emoteID==0 then
print(playerName.." is dancing!")
end
end
而不是
function eventEmotePlayed(playerName, emoteID)
if emoteID==0 then
print(playerName.." is dancing!")
end
end
有谁知道怎么做?
答案 0 :(得分:1)
如果你想重命名一个功能,你可以这样做:
myNewFunctionName = originalFunctionName
然后调用myNewFunctionName()
与调用originalFunctionName()
相同,因为myNewFunctionName
现在指的是与originalFunctionName
相同的功能。
在Lua中,函数是变量。
您还可以定义一个调用原始函数的函数,并传递如下参数:
function myNewFunction(a,b)
return originalFunction(a,b)
end
但这显然不如你必须进行一次额外的函数调用那么高效。
如果你想用你自己的函数替换一个函数,所以原来的函数不会被执行,而是你只需要将你的函数分配给原始函数“name”(实际上你可以创建引用原始函数的变量)现在请参考你自己的功能)
function originalFunction(a,b)
return a + b
end
function myOwnFunction(a,b)
return a * b
end
originalFunction = myOwnFunction
现在originalFunction
指的是您的功能,调用originalFunction(a,b)
将返回a
和b
的产品,而不是总和。import { browserHistory } from 'react-router'
const middleware = routerMiddleware(browserHistory)
它与第一个例子中的相同,只是相反。