FiniteStateMachine

FiniteStateMachine

μœ ν•œ μƒνƒœ λ¨Έμ‹  κ°μ²΄μ—μš”. μœ ν•œ μƒνƒœ 머신을 μƒμ„±ν•œ ν›„ Object:SetFiniteStateMachine 둜 ν•΄λ‹Ή μœ ν•œ μƒνƒœλ¨Έμ‹ μ„ μ‚¬μš© ν•  μ˜€λΈŒμ νŠΈμ— λΆ€μ°©ν•˜λ©΄, μ˜€λΈŒμ νŠΈμ— ν•΄λ‹Ή μœ ν•œ μƒνƒœ 머신이 λΆ€μ°© λΌμš”.

ν•¨μˆ˜

FiniteState AddFiniteState(string StateName)

Finite Stateλ₯Ό μΆ”κ°€ν•΄μš”. (μΆ”κ°€ν•  μƒνƒœ 이름)

-- μƒ˜ν”Œ --

local FSM = Game:AddFSM("FSM") --FSM μΆ”κ°€ν•΄μš”.

--FSM μƒνƒœ μΆ”κ°€
local IdleState = FSM:AddFiniteState("Idle")
local MoveState = FSM:AddFiniteState("Move")

μ‚¬μš© κ°€λŠ₯ν•œ λΆ€λͺ¨ 였브젝트 κΈ°λŠ₯λ“€

속성

이름

μ„€λͺ…

FSM이 ν™œμ„±ν™” 될 λ•Œ μ‹œμž‘ Stateλ₯Ό μ„€μ •ν•  수 μžˆμ–΄μš”.

ν˜„μž¬ ν™œμ„±ν™” 되고 μžˆλŠ” Stateμž…λ‹ˆλ‹€.

이벀트

이름

μ„€λͺ…

ν•΄λ‹Ή FSM이 ν™œμ„±ν™” 쀑일 λ•Œ λ§€ν”„λ ˆμž„λ§ˆλ‹€ ν˜ΈμΆœλ˜λŠ” μ΄λ²€νŠΈμ—μš”. μ—°κ²°ν•¨μˆ˜ ν˜•μ‹μ€ function(FiniteStateMachine, updateTime), FiniteStateMachine 은 ν™œμ„±ν™” 쀑인 FSM 였브젝트 , updateTime 은 number μž…λ‹ˆλ‹€.

ν•¨μˆ˜

이름

μ„€λͺ…

FSM μƒνƒœ 전이λ₯Ό μΆ”κ°€ν•΄μš”. (μ‹œμž‘ μƒνƒœ 이름, 전이할 μƒνƒœ 이름, μ—°κ²° ν•¨μˆ˜, μš°μ„ μˆœμœ„ (0에 κ°€κΉŒμšΈμˆ˜λ‘ λ†’λ‹€.) )

Last updated