public void Update(float elapsedTime) { _timer += elapsedTime; if (_timer < UPDATE_TIME) { return; } foreach (Player player in _playerComponent.All) { if (!_actorTextComponent.Contains(player.EntityID)) { continue; } uint playerID = player.EntityID; ActorText actorText = _actorTextComponent[playerID]; actorText.Offset += INC_OFFSET; if (actorText.Offset >= MAX_OFFSET) { _actorTextComponent.Remove(playerID); } else { _actorTextComponent[playerID] = actorText; } } foreach (Enemy enemy in _enemyComponent.All) { if (!_actorTextComponent.Contains(enemy.EntityID)) { continue; } uint enemyID = enemy.EntityID; ActorText actorText = _actorTextComponent[enemyID]; actorText.Offset += INC_OFFSET; if (actorText.Offset >= MAX_OFFSET) { _actorTextComponent.Remove(enemyID); } else { _actorTextComponent[enemyID] = actorText; } } _timer = 0; }