public void Update(ChronoEventArgs chronoArgs) { if (IsExpired) { return; } MaskPosition.Y += (float)(_movementRate * chronoArgs.Delta); _glyphs.ForEach(g => g.Update(chronoArgs, MaskArea())); CheckIfExpired(); }
public bool IsTriggered(ChronoEventArgs chrono) { _secondsCounter += chrono.Delta; if (_secondsCounter > _twitchFrequency) { if (GetRandom.Bool(_chanceOfTrigger)) { _secondsCounter -= _twitchFrequency; UpdateTriggerFrequency(); return(true); } } return(false); }
private void AddNewStreams(ChronoEventArgs chronoArgs) { _runningDelta += chronoArgs.Delta; if (_runningDelta >= NEW_STREAM_CHECK_FREQUENCY) { var outcome = GetRandom.Double(0, _runningDelta); var chance = _chanceOfNewStream; while (streams.Count <= _maximumStreams && outcome < chance) { chance -= NEW_STREAM_CHECK_FREQUENCY; AddNewGlyphStream(); } _runningDelta -= NEW_STREAM_CHECK_FREQUENCY; } }
public void Update(ChronoEventArgs chronoArgs, IntRect visibleRegion) { var modifier = GetVisibility(visibleRegion); _isDraw = modifier > 0; if (!_isDraw) { return; } if (GetRandom.Float(1f) < _config.ChanceOfHeavyFlicker) { _isFlickering = !_isFlickering; } _spriteOutline.Color = new Color(0, 0, 0, (byte)(CalculateOpacity() * 0.6f)); _sprite.Color = new Color(0, 255, 0, CalculateOpacity()); if (_twitch.IsTriggered(chronoArgs)) { Index = GetRandom.Int(MAX_INDEX); } }
public void Update(ChronoEventArgs chronoArgs) { _chrono.Update(chronoArgs); _glyphsStreams.ForEach(x => x.Update(chronoArgs)); }
public void Update(ChronoEventArgs chronoArgs) { }
public void Update(ChronoEventArgs args) { chronoEvent = args; }
private void UpdateStreams(ChronoEventArgs chronoArgs) { streams.ForEach(x => x.Update(chronoArgs)); }