Exemplo n.º 1
0
        /// <summary>
        /// Constructor
        /// </summary>
        /// <param name="square">Square handle</param>
        /// <param name="evt">Event square handle</param>
        public ScriptedDialog(Square square, EventSquare evt)
        {
            if (square == null)
            {
                throw new ArgumentNullException("Square is null");
            }

            if (evt == null)
            {
                throw new ArgumentNullException("EventSquare is null");
            }

            Event  = evt;
            Square = square;

            Picture = new Texture2D(Event.PictureName);

            if (Event.DisplayBorder)
            {
                Border = new Texture2D("border.png");
            }

            // HACK: Hard coded maximum button for ScriptDialog
            Choices = new ScriptChoice[MaxButtonCount];
            Buttons = new GUIScriptButton[MaxButtonCount];
            for (int i = 0; i < MaxButtonCount; i++)
            {
                Buttons[i]        = new GUIScriptButton();
                Buttons[i].Click += new EventHandler(ButtonClick);
            }
        }
Exemplo n.º 2
0
        /// <summary>
        ///
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        void ButtonClick(object sender, EventArgs e)
        {
            GUIScriptButton button = sender as GUIScriptButton;

            if (button.Tag != null)
            {
                ScriptChoice choice = button.Tag as ScriptChoice;
                choice.Run();

                // Time to quit
                if (Quit)
                {
                    return;
                }
            }
        }