/// <summary>
        /// Starts the game playing...
        /// </summary>
        public void StartGame()
        {
            playState = ePlayState.Playing;

            //Reset scores...
            m_redScore  = 0;
            m_blueScore = 0;

            //Send out a warning to players to equip and get ready for the battle!
            foreach (GamePlayer pl in m_playingPlayers)
            {
                if (pl == null || pl.ObjectState != GameObject.eObjectState.Active) //incase of linkdead players
                {
                    continue;
                }

                pl.Out.SendMessage("The game has now begun! Equip the hockey sticks in your inventory and swing at the puck to move it to your opponents goal. First to the score limit wins!", DOL.GS.PacketHandler.eChatType.CT_Broadcast, DOL.GS.PacketHandler.eChatLoc.CL_ChatWindow);

                pl.Out.SendMessage("The game has begun! Adorn your hockey stick!", DOL.GS.PacketHandler.eChatType.CT_ScreenCenterSmaller, DOL.GS.PacketHandler.eChatLoc.CL_SystemWindow);
                pl.Out.SendMessage("The game has begun! Adorn your hockey stick!", DOL.GS.PacketHandler.eChatType.CT_SpellResisted, DOL.GS.PacketHandler.eChatLoc.CL_SystemWindow);
            }

            //Create the puck...
            TomteHockeyPuck puck = new TomteHockeyPuck(this);

            puck.CurrentRegionID = Region;
            puck.X = X;
            puck.Y = Y;
            puck.Z = Z;
            puck.AddToWorld();

            //Assign the puck to this game.
            Puck = puck;
        }
        /// <summary>
        /// Checks if we are out of bounds when the puck stops moving.
        /// </summary>
        private void ArriveAtTarget(DOLEvent e, object sender, EventArgs arguments)
        {
            TomteHockeyPuck puck = sender as TomteHockeyPuck;

            if (puck != null)
            {
                puck.CheckBounds();
            }
        }