private Entity GetEnemyCruiser(Vector3 pos) { EnemyCruiser o = (EnemyCruiser)assetManager.GetNewInstance(AssetTypes.EnemyCruiser); o.Init(pos, Matrix.Identity); return(o); }
private void SpawnEnemies() { Random r = new Random((int)DateTime.Now.ToOADate()); float x, z; int count = 5; x = 30; z = 30; c = (EnemyCruiser)GetEnemyCruiser(new Vector3(x + 10, 15 + 0, z + 0)); physicsManager.AddNewObject(c); for (int i = 0; i < count; i++) { x = (float)(r.NextDouble() - .5); z = (float)(r.NextDouble() - .5); x = x * 250; z = z * 250; EnemyFighter fighter = (EnemyFighter)GetEnemyFighter(new Vector3(x, 15, z)); //fighter.AddCollisionCallback(new JigLibX.Collision.CollisionCallbackFn(EnemyHit)); fighter.Init(new Vector3(x, 15, z), Matrix.Identity); physicsManager.AddNewObject(fighter); } }
public static bool IsNearTargetPosition(EnemyFighter fighter, EnemyCruiser cruiser) { float dist = Vector3.Distance(fighter.Position, cruiser.Position + fighter.OffsetFromCruiser); if (dist < TargetPositionRange) { return(true); } return(false); }