다음은 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 |

'루아(LUA) > 로블록스' 카테고리의 다른 글
미로 만들기 #3 (0) | 2021.12.27 |
---|---|
텍스트 레이블 크기 100이상 (0) | 2021.12.26 |
현실 건물을 로블록스에? (0) | 2021.12.25 |
텍스트 레이블의 위치 (0) | 2021.12.23 |
Hello World 출력 #2 (0) | 2021.12.23 |