public override void Fire(FiringType firingType) { base.Fire(firingType); if (Screen != null) { Screen.ExitScreen(); } if (Target != null) { Screen = new EntityInspectorScreen(Target); ScreenManager.AddScreen(Screen); } }
public override void Fire(FiringType firingType) { if (Target != null) { Vector3 appliedForce = Force; float dist = (float)this.DistanceToIntersect(Ray, Target); Vector3 point = Ray.Position + (Ray.Direction * dist); if (firingType == FiringType.Secondary) { appliedForce *= -1f; } Target.GeometryData.Prim.Body.addForce(appliedForce, point); } }
void CheckFiringType(FiringType firingType) { switch(weaponType) { case firingType.SemiAuto: Debug.Log("Semi Auto"); SemiShot(); break; case firingType.FullAuto: Debug.Log("Full Auto"); FullShot(); break; case firingType.BurstAuto: Debug.Log("Burst Auto"); BurstShot(); break; case weaponType.BoltAction: Debug.Log("Bolt Action"); SemiAuto(); break; case weaponType.LeverAction: Debug.Log("Lever Action"); SemiAuto(); break; case weaponType.PumpAction: Debug.Log("Pump Action"); SemiAuto(); break; } }
public virtual void Fire(FiringType firingType) { }