본문 바로가기
루아(LUA)/로블록스

로블록스 고차함수에서 파라미터 넘기기

by JK77 2021. 12. 22.

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