public override void CompleteEvent(object eventData)
        {
            if (eventData == MoveQueueEventData)
            {
                if (EnteredVisitors.Count > 0)
                {
                    Visitor served = EnteredVisitors.Dequeue();
                    MessageFeed.RegisterMessage("Návštěvník vjíždí na sjezdovku " + Name);
                    parent.RegisterEvent(served, (int)Math.Ceiling(Length / (AverageSpeed * served.SpeedFactor)), this);
                    ridecount++;
                }

                if (ridecount == MaintenanceFrequency)
                {
                    parent.RegisterEvent(this, MaintenanceTime, MoveQueueEventData);
                    MessageFeed.RegisterMessage("Nastává úprava sjezdovky " + Name + ". Další návštěvníci na ni vjedou až za " + MaintenanceTime.ToString() + " sekund.");
                    ridecount = 0;
                }

                else if ((random.Next(1000000001) / 1000000000.0) < AccidentProbability)
                {
                    parent.ModifyEventsOf(this, 30);
                    MessageFeed.RegisterMessage("Nehoda na sjezdovce " + Name + ". Návštěvníci jsou zdrženi o 30 sekund");
                    parent.RegisterEvent(this, DequeueFrequency + 30, MoveQueueEventData);
                }

                else
                {
                    parent.RegisterEvent(this, DequeueFrequency, MoveQueueEventData);
                }
            }
        }
        public override void CompleteEvent(object eventData)
        {
            if (eventData == MoveQueueEventData)
            {
                if (EnteredVisitors.Count > 0)
                {
                    Visitor served = EnteredVisitors.Dequeue();
                    parent.RegisterEvent(served, BaseServiceTime, this);
                }

                parent.RegisterEvent(this, DequeueFrequency, MoveQueueEventData);
            }
        }
        public override void CompleteEvent(object eventData)
        {
            if (eventData == MoveQueueEventData)
            {
                if (EnteredVisitors.Count > 0)
                {
                    Visitor served = EnteredVisitors.Dequeue();
                    MessageFeed.RegisterMessage("Návštěvníka právě odbavil vlek " + Name);
                    parent.RegisterEvent(served, RideTime, this);
                }

                if ((random.Next(1000000001) / 1000000000.0) < AccidentProbability)
                {
                    parent.ModifyEventsOf(this, 60);
                    MessageFeed.RegisterMessage("Nehoda na vleku " + Name + ". Pasažéři vleku jsou zdrženi o 60 sekund");
                    parent.RegisterEvent(this, DequeueFrequency + 60, MoveQueueEventData);
                }

                else
                {
                    parent.RegisterEvent(this, DequeueFrequency, MoveQueueEventData);
                }
            }
        }