BackgroundRepeater.Update C# (CSharp) Méthode

Update() public méthode

public Update ( ) : void
Résultat void
    public void Update()
    {
        var playerPosition = this.transform.position;

        var maxWidthRoomIndexX = playerPosition.x + this.screenWidth;
        var minWidthRoomIndexX = playerPosition.x - this.screenWidth;

        float farthestDistanceX = 0.0f;

        var roomsToRemove = new List<GameObject>();

        foreach (var room in this.currentRooms)
        {
            var currentRoomX = room.transform.position.x + this.GetRoomWidth(room) / 2;
            farthestDistanceX = Mathf.Max(currentRoomX, farthestDistanceX);

            if (currentRoomX < minWidthRoomIndexX)
            {
                roomsToRemove.Add(room);
            }
        }

        foreach (var room in roomsToRemove)
        {
            this.currentRooms.Remove(room);
            Destroy(room.gameObject);
        }

        if (farthestDistanceX < maxWidthRoomIndexX)
        {
            this.AddRoom(farthestDistanceX);
        }
    }