protected override void OnUpdate(BossContext context) { foreach (var point in context.Boss.SlimeSpawnPoints) { var pointPos = point.transform.position.x; if ((_lastPosition < pointPos && context.Boss.transform.position.x > pointPos) || (_lastPosition > pointPos && context.Boss.transform.position.x < pointPos)) { context.Boss.SpawnSlimeAt(point); } } _lastPosition = context.Boss.transform.position.x; }
protected override void OnEnter(BossContext context) { context.HorizontalSpeed = 0f; context.Direction = (Direction)(-(int)context.Direction); int spawner; context.FlightCount++; if (context.FlightCount % 4 == 3) { spawner = 3; } else { spawner = 1;// UnityEngine.Random.Range(0, 3); } context.LowFlightReady = context.Boss.TeleportToSpawner(spawner); context.HighFlightReady = !context.LowFlightReady; }
public AccountsController(BossContext context) { _context = context; }
protected override void OnEnter(BossContext context) { context.Lives--; context.Effects.Add <BlinkEffect>(_settings.BlinkTime); }
protected override void OnEnter(BossContext context) { context.HorizontalSpeed = _settings.LowFlightSpeed; }
protected override void OnEnter(BossContext context) { _lastPosition = context.Boss.transform.position.x; context.HorizontalSpeed = _settings.HighFlightSpeed; }
protected override void OnEnter(BossContext context) { context.Ready = false; context.HorizontalSpeed = 0f; SetDelay(UnityEngine.Random.Range(_settings.MinPauseLength, _settings.MaxPauseLength), () => context.Ready = true); }