Unity
canfireならshoot
->canfire = false-
> 0.5秒後にcanfireをtrueにする Invoke(Canshoot, 0.5)
こんな感じの実装もあるんだね〜便利。
Event
event += 関数
event -= 関数
MVP patternでの使用例
Health:Model
Health presenter: Presenter
Healthがint health, public event healthchanged, public void UpdateHealth, public void ChangeHealthを持つ
Health presenterはOnHealthChangedをhealthChanged eventにサブスクライブしておく。
HealthPresenterがChangeHealthでHealthを変更すると、ChangeHealth内でUpdateHealthを呼び出し、UpdateHealth内でhealthChanged?.Invokeが呼び出される。
healthChanged?.InvokeによってOnHealthChangedが呼び出され、PresenterがViewを更新する。
State patternが素晴らしすぎる
FSM or GOAP