Seite 1 von 1

Screen - Mausgeschwindigkeit verringern

Verfasst: 20.12.2009 00:08
von Shadow-Gamer
Ich suche eine Möglichkeit die Mausgeschwindigkeit in meinem Spiel zu verringern, weil man in meinem Spiel anvisieren kann.
Sry das ich jetzt nichts näheres sage, ich will pennen^^ bis morgen

Greeeeeetttts

Re: Screen - Mausgeschwindigkeit verringern

Verfasst: 20.12.2009 00:21
von Kiffi
Shadow-Gamer hat geschrieben:Sry das ich jetzt nichts näheres sage, ich will pennen^^
gut, dann warten wir bis morgen :-)

Grüße ... Kiffi

Re: Screen - Mausgeschwindigkeit verringern

Verfasst: 20.12.2009 00:30
von STARGÅTE
Du verwendest bestimmt MouseX() und MouseY() ...

Das ist meiner Meinung nach ungeeignet!

Nutze lieber eigenen Koordinaten (x,y) welche du mit MouseDeltaX() und MouseDeltaY() änderst ...

dabei kannst du diese Koordinaten gleich in Float machen und den "Geschwindigkeitsfaktor" direkt an das MouseDelta multiplizieren.

Oder die Koordinaten zum anzeigen der Mauszeigers dann "zoomen"

Ich würds halt so machen:

Code: Alles auswählen

Structure MousePosition
  x.f
  y.f
EndStructure
Global Mouse.MousePosition
Global MouseSpeed.f = 0.8 ; (langsammer als 1.0 (normal))
; ...

Mouse\x + MouseDeltaX() * MouseSpeed
Mouse\y + MouseDeltaY() * MouseSpeed
Mouse\x und Mouse\y wären dann die echten Koordinaten der Maus
Abfragen zu Rändern müsstest du auch noch einbauen...

Code: Alles auswählen

If Mouse\x < 0 : Mouse\x = 0 : EndIf
Andere analog...

Re: Screen - Mausgeschwindigkeit verringern

Verfasst: 20.12.2009 13:00
von Shadow-Gamer
Ich hatte es ähnlich wie Stargate probiert, aber ich habe wahrscheinlich vergessen die MausKoordinaten als Floats zu deklarieren. Nja danke Stargate funzt einwandfrei.

Allerdings frage ich mich ob es besser ist die Koordinaten als eine variable abzuspeichern, ob es mit einer Struktur besser ist oder ob es da keine (Performance-) Unterschiede gibt

Re: Screen - Mausgeschwindigkeit verringern

Verfasst: 31.12.2009 19:03
von Josef Sniatecki
Mit einer Struktur gibt es zur Ausführung keinen Unterschied. Der Code sieht einfach übersichtlicher aus (also für mich auf jeden Fall ^^).
Man kann natürlich auch "Mouse_X.f" und "Mouse_Y.f" verwenden.

Und noch was:
Seit einer neuen PB-Version kann man auch einer strukturierten Variable einen strukturierten Wert zuweisen:

Code: Alles auswählen

Structure Pos
  X.i
  Y.i
EndStructure

Global A.Pos, B.Pos

B\X = 1
B\Y = 2

A = B ;<--

Debug A\X
Debug B\Y
Gruß Josef