Beispiel #1
0
 private void Menu_OnClick(object sender, FormEventData e)
 {
     if (Hoverring_Item_Index != -1 && MenuItemSelected != null)
     {
         MenuItemSelected.Invoke(this, Hoverring_Item_Index);
     }
 }
Beispiel #2
0
 private void textbox_OnMouseScroll(object sender, FormEventData e)
 {
     if (vscrollable)
     {
         int change = (int)e.args;
         Console.WriteLine(change);
         float maxoffset = 1 - (float)vscrollbar_height / (float)Rect.Height;
         float offset    = 0;
         if (change < 0)
         {
             offset = vscrollbar_offset + ((float)_font.LineSpacing / _font.MeasureString(_text).Y);
         }
         else
         {
             offset = vscrollbar_offset - ((float)_font.LineSpacing / _font.MeasureString(_text).Y);
         }
         vscrollbar_offset = Math.Max(Math.Min(offset, maxoffset), 0);
     }
     else if (hscrollable)
     {
         int   change    = (int)e.args;
         float maxoffset = 1 - (float)hscrollbar_width / (float)Rect.Width;
         float offset    = 0;
         if (change < 0)
         {
             offset = hscrollbar_offset + ((float)_font.LineSpacing / _font.MeasureString(_text).X);
         }
         else
         {
             offset = hscrollbar_offset - ((float)_font.LineSpacing / _font.MeasureString(_text).X);
         }
         hscrollbar_offset = Math.Max(Math.Min(offset, maxoffset), 0);
     }
 }
Beispiel #3
0
 private void Textbox_OnActive(object sender, FormEventData e)
 {
     if (!ReadOnly)
     {
         Parent.main_game.keyboard_text_dispatcher.Subscriber = (TextBox)sender;
     }
 }
Beispiel #4
0
 private void Menu_button_click_handler(object sender, FormEventData e = null)
 {
     if (sender as ImageButton == start_button)
     {
         //ScreenEvent.Invoke(this, new SivEventArgs(1));
         if (!moved)
         {
             this.start_button.MoveBySpeed(100, 100, 300);
             moved = true;
         }
         else
         {
             this.start_button.MoveBySecond(38, 653, 3);
             moved = false;
         }
         return;
     }
     else if (sender as ImageButton == host_button)
     {
         ScreenEvent.Invoke(this, new SivEventArgs(2));
         return;
     }
     else if (sender as ImageButton == join_button)
     {
         ScreenEvent.Invoke(this, new SivEventArgs(3));
     }
     else if (sender as ImageButton == quit_button)
     {
         main_game.Exit();
     }
 }
Beispiel #5
0
 private void textbox_OnKeyDown(object sender, FormEventData e)
 {
     Keys[] keys = (Keys[])e.args;
     foreach (Keys k in keys)
     {
         if (k == Keys.C)
         {
             if (Parent.main_game.keyboard_state.IsKeyDown(Keys.LeftControl))
             {
                 if (select_count != 0)
                 {
                     Thread thread = new Thread(CopyThread);
                     thread.SetApartmentState(ApartmentState.STA);
                     thread.Start();
                     thread.Join();
                 }
             }
         }
         if (k == Keys.A)
         {
             if (Parent.main_game.keyboard_state.IsKeyDown(Keys.LeftControl))
             {
                 select_start = 0;
                 select_count = _text.Length;
             }
         }
     }
 }
Beispiel #6
0
 public void Ok_button_clicked(object sender, FormEventData e)
 {
     if (Host_name_textbox.Text.Length > 12)
     {
         Game1.MessageBox(new IntPtr(0), "Player Name cannot more than 12 characters", "Player Name Invalid", 0);
         return;
     }
     if (Room_name_textbox.Text.Length > 12)
     {
         Game1.MessageBox(new IntPtr(0), "Room Name cannot more than 12 characters", "Room Name Invalid", 0);
         return;
     }
     try
     {
         main_game.mRoomScreen.IPAddress = ipTextBox.Text;
         Player player = new Player(Host_name_textbox.Text, Game1.getLocalIP());
         player.Status = true;
         Room r = new Room(player, Room_name_textbox.Text,
                           int.Parse(Number_of_player_textbox.Text));
         ScreenEvent.Invoke(this, new SivEventArgs(4, r));
     }
     catch (Exception ex)
     {
         main_game.mRoomScreen.End(new Command());
         Game1.MessageBox(new IntPtr(0), ex.Message, "Exception", 0);
     }
 }
Beispiel #7
0
        private void CharacterClick(object sender, FormEventData e)
        {
            Image image = (Image)sender;

            for (int i = 0; i < characterImage.Count(); i++)
            {
                if (characterImage[i].Name == image.Name)
                {
                    if (charSelectBorder[i].Width == 2 && charSelectBorder[i].color == Color.Black)
                    {
                        int count = CountSelectChar();
                        if (count < 2)
                        {
                            charSelectBorder[i].Width = 4;
                            charSelectBorder[i].color = Color.BlueViolet;
                        }
                    }
                    else if (charSelectBorder[i].Width == 4 && charSelectBorder[i].color == Color.BlueViolet)
                    {
                        charSelectBorder[i].Width = 2;
                        charSelectBorder[i].color = Color.Black;
                    }
                }
            }
        }
Beispiel #8
0
        private void OkClick(object sender, FormEventData e)
        {
            int count = CountSelectChar();

            if (count < 2)
            {
                Game1.MessageBox(new IntPtr(0), "Please select 2 Characters", "Warning!", 0);
            }
            else if (count == 2)
            {
                string           s        = "";
                List <Character> listTemp = new List <Character>();
                for (int i = 0; i < 7; i++)
                {
                    if (charSelectBorder[i].Width == 4)
                    {
                        listTemp.Add(characterPlayerList[i]);
                        s += characterPlayerList[i].CharName + "\n";
                    }
                }
                if (listTemp[0].CharType == listTemp[1].CharType)
                {
                    Game1.MessageBox(new IntPtr(0), "Please select 2 Characters with different type", "Warning!", 0);
                }
                else
                {
                    //Game1.MessageBox(new IntPtr(0), s, "Your Character", 0);
                    if (listTemp[0].CharType == Character.Type.Servant)
                    {
                        room.Player_List[Player_Index].Character1 = listTemp[1];
                        room.Player_List[Player_Index].Character2 = listTemp[0];
                    }
                    else
                    {
                        room.Player_List[Player_Index].Character1 = listTemp[0];
                        room.Player_List[Player_Index].Character2 = listTemp[1];
                    }
                    //Console.WriteLine(room.Player_List[Player_Index].Character1.CharName
                    //    + " " + room.Player_List[Player_Index].Character1.MaxHealth);
                    //Console.WriteLine(room.Player_List[Player_Index].Character2.CharName
                    //    + " " + room.Player_List[Player_Index].Character2.MaxHealth);
                    SelectCharacter();
                    for (int i = 0; i < 7; i++)
                    {
                        if (charSelectBorder[i].Width == 2)
                        {
                            charSelectBorder[i].Visible = false;
                            characterImage[i].Visible   = false;
                        }
                        if (charSelectBorder[i].Width == 4)
                        {
                            characterImage[i].OnClick = null;
                        }
                    }
                    okButton.Visible = false;
                }
            }
        }
Beispiel #9
0
        private void RoomClicked(object sender, FormEventData e)
        {
            End_Receive();
            Label label = (Label)sender;
            int   value = (int)label.Value;
            Room  room  = List_Room[value];

            this.RequestJoin(room);
        }
Beispiel #10
0
 private void Cancel_button_clicked(object sender, FormEventData e)
 {
     try
     {
         Command c    = new Command(CommandCode.Cancel, this.Player_ID);
         byte[]  data = c.Serialize();
         tcpClient     = new TcpClient(room.Player_List[room.owner_index].Address, 51002);
         networkStream = tcpClient.GetStream();
         networkStream.Write(data, 0, data.Length);
         tcpClient.Close();
     }
     catch { }
 }
Beispiel #11
0
        private void Start_button_clicked(object sender, FormEventData e)
        {
            bool isAllReady = true;

            foreach (Player p in room.Player_List)
            {
                if (!p.Status)
                {
                    isAllReady = false;
                    break;
                }
            }
            if (isAllReady)
            {
                try
                {
                    int     Player_Index = room.findByID(Player_ID);
                    Command c            = new Command(CommandCode.Start_Game, room);
                    byte[]  data2        = c.Serialize();
                    for (int i = 0; i < tcpServerClient.Count; i++)
                    {
                        try
                        {
                            if (i == Player_Index)
                            {
                                continue;
                            }
                            tcpServerClient[i].GetStream().Write(data2, 0, data2.Length);
                        }
                        catch { }
                    }
                }
                catch { }
                ScreenEvent.Invoke(this, new SivEventArgs(1));
            }
            else
            {
                Game1.MessageBox(new IntPtr(0), "All Players in this room are not ready!", "Warning!", 0);
            }
        }
Beispiel #12
0
 private void textbox_clicked(object sender, FormEventData e)
 {
     check_textbox_clicked((MouseState)e.args);
 }
Beispiel #13
0
        private void RoomLeft(object sender, FormEventData e)
        {
            Label label = (Label)sender;

            label.Color = Color.White;
        }
Beispiel #14
0
 private void Quit_button_clicked(object sender, FormEventData e)
 {
     ScreenEvent.Invoke(this, new SivEventArgs(0));
 }
Beispiel #15
0
 public void Cancel_button_clicked(object sender, FormEventData e)
 {
     ScreenEvent.Invoke(this, new SivEventArgs(0));
 }
Beispiel #16
0
        private void RoomEntered(object sender, FormEventData e)
        {
            Label label = (Label)sender;

            label.Color = Color.Red;
        }
Beispiel #17
0
 private void Menu_OnDeactive(object sender, FormEventData e)
 {
     this.Hide();
 }
Beispiel #18
0
 private void HostClicked(object sender, FormEventData e)
 {
     ScreenEvent.Invoke(this, new SivEventArgs(2));
     return;
 }
Beispiel #19
0
 private void textbox_OnMouseLeave(object sender, FormEventData e)
 {
     Highlighted = false;
 }
Beispiel #20
0
 private void Menu_OnMouseLeave(object sender, FormEventData e)
 {
     Hoverring_Item_Index = -1;
 }
Beispiel #21
0
 private void textbox_OnMouseEnter(object sender, FormEventData e)
 {
     Highlighted = true;
 }
Beispiel #22
0
 private void textbox_OnDeActive(object sender, FormEventData e)
 {
     Parent.main_game.keyboard_text_dispatcher.Subscriber = null;
 }
Beispiel #23
0
        private void Menu_OnMouseMove(object sender, FormEventData e)
        {
            MouseState ms = (MouseState)e.args;

            Hoverring_Item_Index = (int)((ms.Y - Rect.Y) / Font.LineSpacing);
        }
Beispiel #24
0
 private void imageButton_OnMouseEnter(object sender, FormEventData e)
 {
     IsHovered = true;
 }
Beispiel #25
0
 private void imageButton_OnMouseLeave(object sender, FormEventData e)
 {
     IsHovered = false;
 }