hallo!
ich mache gerade ein kleines netzwerkspiel und habe gerade ein problem, ich frage in einem timer folgendes ab:
1. muss man am zug sein,
2. darf das objekt über welchem die maus sich gerade befindet nicht nichts sein,
3. muss der string, welchen der client vom server bekommt field_"irgendwas" oder wall_"irgendwas" (zb field_23) enthalten,
4. wenn jetzt noch die linke maustaste gedrückt wird soll "ist egal was, dauert zu lange um es zu erklären" an den server geschickt werden.
Es klappt auch soweit, bis auf die tatsache dass ich meistens 10-15mal auf das Control klicken muss, bis es erkannt wird. Ich befürche es ist zu viel an anweisungen und abfragen für den kurzen augenblick eines mausklicks, aber wie kann ich das umgehen oder verschnellern? der timer in dem der code steht ist bereits auf 10 ms.
schonmal danke für die hilfe!
Edit: Vielleicht könnte es klappen wenn ich das Mausklicken in einem extratimer die ganze zeit nebenbei abfrage sobald turn=1 ist oder so ähnlich..mal gucken..
ich mache gerade ein kleines netzwerkspiel und habe gerade ein problem, ich frage in einem timer folgendes ab:
VB.NET-Quellcode
- Dim obj As Control = Me.GetChildAtPoint(Me.PointToClient(( _
- Control.MousePosition)))
- If turn = 1 Then
- If Not obj Is Nothing Then
- If obj.Name.Split(CChar("_"))(0) = "field" Or obj.Name.Split(CChar("_"))(0) = "wall" Then
- If MouseButtons = Windows.Forms.MouseButtons.Left Then
- Label1.Text = obj.Name
- pBtnPLAYER(fieldCl1).BackgroundImage = Nothing
- clsclient.SendData(obj.Name.Split(CChar("_"))(0) + "_" + CStr(fieldCl1 - CInt(obj.Name.Split(CChar("_"))(1))))
- fieldCl1 = CInt(obj.Name.Split(CChar("_"))(1))
- pBtnPLAYER(fieldCl1).BackgroundImage = btnPlayer1Background.BackgroundImage
- pBtnPLAYER(fieldCl1).BackgroundImageLayout = ImageLayout.Stretch
- lblTurn.ForeColor = Color.Red
- lblTurn.Location = New Point(263, 3)
- lblTurn.Text = "Your oppenent's turn!"
- turn = 2
- End If
- End If
- End If
- Else
- If ....
1. muss man am zug sein,
2. darf das objekt über welchem die maus sich gerade befindet nicht nichts sein,
3. muss der string, welchen der client vom server bekommt field_"irgendwas" oder wall_"irgendwas" (zb field_23) enthalten,
4. wenn jetzt noch die linke maustaste gedrückt wird soll "ist egal was, dauert zu lange um es zu erklären" an den server geschickt werden.
Es klappt auch soweit, bis auf die tatsache dass ich meistens 10-15mal auf das Control klicken muss, bis es erkannt wird. Ich befürche es ist zu viel an anweisungen und abfragen für den kurzen augenblick eines mausklicks, aber wie kann ich das umgehen oder verschnellern? der timer in dem der code steht ist bereits auf 10 ms.
schonmal danke für die hilfe!
Edit: Vielleicht könnte es klappen wenn ich das Mausklicken in einem extratimer die ganze zeit nebenbei abfrage sobald turn=1 ist oder so ähnlich..mal gucken..
Dieser Beitrag wurde bereits 2 mal editiert, zuletzt von „alexg93“ ()