void DrawPath(IDrawContext context, Settings.Path path) { for (int i = 1; i < path.Points.Length; i++) { var prev = path.Points[i - 1]; var next = path.Points[i]; context.DrawLine(prev.X, prev.Y, next.X, next.Y, Color.Yellow, 3f); } }
public void Init(Settings.Path settings) { Settings = settings; SegmentsLengths = CalculateSegmentsLengths(settings.Points); Angles = CalculateSegmentsAngles(settings.Points); }
public void Init(IInitContext context, Settings.EnemySet settings, Settings.Enemy enemySettings, Settings.Path pathSettings) { initContext = context; this.settings = settings; Path = context.ObjectPool.GetObject <Path>(); Path.Init(pathSettings); this.enemySettings = enemySettings; enemies = context.ObjectPool.GetObject <List <Enemy> >(); completedEnemies = context.ObjectPool.GetObject <List <Enemy> >(); enemyTemplate = EnemyFactory.GetEnemyFromPool(context.ObjectPool, enemySettings); logger.Info($"Wave {settings.Id} init"); Relative = TimeSpan.FromMilliseconds(settings.StartTimeOffset); Status = EnemySetStatus.Ready; }