Example #1
0
        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;
        }