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
Was this helpful?