Event?
Handler?
하나의 Entity내에서 호출하는 Event 예시
외부 Entity에서 호출하는 Event 예시
Extend Component
로직을 수행하는데 있어 발생한 어떤 사건을 의미한다.
이벤트를 사용하게되면 각각의 독립적인 Entity에대해서 서로 상호작용하기에 용이해진다.
코드 수정이 불가능한 Natvie Scripts와의 상호작용도 가능해진다.
ex) 공격, 피격, 키보드로부터의 입력, 포탈이동 등
ex) 공격을 하게되면 특정 이펙트를 발생, 피격을 받게되면 hp를 감소 등
local myEvent = MyFirstEvent() : 작성한 MyFirstEvent를 myEvent변수에 저장
myEvent.toal = myEvent.total + i : 분기문을 1번돌때마다 total값을 1씩 증가시켜준다.
self.Entity.SendEvent(myEvent) : 자기 자신 Entity에 있는 핸들러에게 myEvent를 발송(send)
wait(1) : 타이밍 이슈문제 발생고려
EntityService : Entity에 관한 다양한 method를 제공한다.
GetEntity("Entity ID") : Entity정보를 가져올 수 있는 method, 매개변수로 Entity의 아이디를 갖는다.
cf) Entity ID 확인하는 방법 : Scene Maker -> copy하고자 하는 Entity 우클릭 -> Copy Entity ID
local myEvent = MyFirstEvent() : 작성한 MyFirstEvent를 myEvent변수에 저장
myEvent.toal = myEvent.total + i : 분기문을 1번돌때마다 total값을 1씩 증가시켜준다.
receiver.SendEvent(myEvent) : 수신받을 Entity(receiver)에 있는 핸들러에게 myEvent를 발송(send)
wait(1) : 타이밍 이슈문제 발생고려
기존에 구현이되어있는 Component 또는 Native Component에서 상속(Override)을 받아 부가적인 내용을 구현하기 위해 사용된다.
Extend하고자 하는 Component 우클릭 -> Extend -> 상속된 Component확인가능
ex) 왼쪽에있는 Native Component의 내용 -> 오른쪽에있는 Extend된 Component에 존재