루아(LUA)/로블록스
로블록스 고차함수에서 파라미터 넘기기
JK77
2021. 12. 22. 18:32
다음은 NPC를 클릭했을 때 '안녕하세요'라고 말하는 루아 코드이다. 고차함수란 익명 함수를 생성해 인자로 전달 받을 수 있는 함수로 매우 유연한 코드를 작성하게 해 준다.
아래 코드에서 14번째 코드는 보통
click.MouseClick:Connect(speak)형태로 쓰이나 인자를 넘기기 위해 익명 함수를 사용했다.
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
|
local ChatService = game:GetService("Chat")
local npc = script.Parent
local head = npc.Head
local click = npc.ClickDetector
local dialogue = {}
local function speak(a)
local dialogue = a
ChatService:Chat(head, dialogue)
end
local b = "안녕하세요"
click.MouseClick:Connect(function() speak(b) end)
-- click.MouseClick:Connect(function() speak("안녕하세요") end)
|
cs |
