protected override ComponentActivity[] GetActivities(ShipComponentBehaviour shipComponent) { FreezeRayComponentBehaviour rayGun = (FreezeRayComponentBehaviour)shipComponent; return(new ComponentActivity[] { new ContinuousComponentActivity <FreezeRayComponentBehaviour>(rayGun, rayGun.IsDirecting, Direct), new ContinuousComponentActivity <FreezeRayComponentBehaviour>(rayGun, rayGun.IsFiring, Fire) }); }
void Fire(FreezeRayComponentBehaviour master, float rate, float dt) { master.Fire(distance * rate); }
void Direct(FreezeRayComponentBehaviour master, float rate, float timeSpend) { master.Direct(rate * 45f * timeSpend); }