public void Reset(NodeAddedEvent evt, ActiveTankNode selfActiveTank, [JoinByTank] CompleteChargingWeaponControllerNode chargingWeaponNode) { Entity entity = chargingWeaponNode.Entity; entity.RemoveComponent <RailgunChargingStateComponent>(); entity.AddComponent <ReadyRailgunChargingWeaponComponent>(); }
public void SendShotPrepare(RailgunDelayedShotPrepareEvent evt, CompleteChargingWeaponControllerNode chargingWeaponNode, [JoinByTank] ActiveTankNode selfActiveTank) { Entity entity = chargingWeaponNode.Entity; entity.AddComponent <ReadyRailgunChargingWeaponComponent>(); entity.RemoveComponent <RailgunChargingStateComponent>(); if (chargingWeaponNode.Entity.HasComponent <ShootableComponent>()) { base.ScheduleEvent <BeforeShotEvent>(entity); base.ScheduleEvent <ShotPrepareEvent>(entity); } }