public override System.Collections.Generic.IEnumerable <UniRx.IObservable <int> > Install(uFrame.ECS.IComponentSystem componentSystem)
 {
     componentSystem.PropertyChangedEvent <Gun, GunState>(_ => _.StateObservable, (c, v) => { UpdateItem(c.EntityId); });
     GunManager = componentSystem.RegisterComponent <Gun>();
     yield return(GunManager.CreatedObservable.Select(_ => _.EntityId));;
     yield return(GunManager.RemovedObservable.Select(_ => _.EntityId));;
 }
 public override System.Collections.Generic.IEnumerable <UniRx.IObservable <int> > Install(uFrame.ECS.IComponentSystem componentSystem)
 {
     GunnerManager = componentSystem.RegisterComponent <Gunner>();
     yield return(GunnerManager.CreatedObservable.Select(_ => _.EntityId));;
     yield return(GunnerManager.RemovedObservable.Select(_ => _.EntityId));;
     GunnerInputManager = componentSystem.RegisterComponent <GunnerInput>();
     yield return(GunnerInputManager.CreatedObservable.Select(_ => _.EntityId));;
     yield return(GunnerInputManager.RemovedObservable.Select(_ => _.EntityId));;
 }