maus verlangsamen
Übersicht

snörklBetreff: maus verlangsamen |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
und meine fragerei geht in die nächste runde^^.
wie kann man es so einrichten, dass man die maus im spiel nur sehr langsam bewegen kann, d.h. z.B. bei pingpong dass man trotz maus steuerung alles nicht in lichtgeschwindigkeit machen kann. Wäre sehr dankbar für eine Hilfe in Form eines Beispielprogrammes oder eines hilfreichen Beitrags ![]() |
||
![]() |
Cardonic |
![]() Antworten mit Zitat ![]() |
---|---|---|
Code: [AUSKLAPPEN] MX = (MX+MouseX())/2
MY = (MY+MouseY())/2 MoveMouse MX,MY mfg Cardonic |
||
If you should go skating on the thin ice of modern life, dragging behind you the silent reproach of a million tear-stained eyes, don't be surprised when a crack in the ice appears under your feet. |
![]() |
RallimenSieger des 30-EUR-Wettbewerbs |
![]() Antworten mit Zitat ![]() |
---|---|---|
Hallo,
indem du den Schläger zur Maus bewegst! Beispiel: Code: [AUSKLAPPEN] if Mousex() > Schlaegerx then Schlaeger = schlaeger + Speed
das läßt sich aber noch verfeinern! |
||
[BB2D | BB3D | BB+]
|
![]() |
pixelshooter |
![]() Antworten mit Zitat ![]() |
---|---|---|
Wenn du so was wie eine Geschwindigkeitsbegrenzung brauchst:
Code: [AUSKLAPPEN] MoveMouse(0,0)
Repeat Delay 100 speedx = MouseXSpeed() speedy = MouseYSpeed() begrenzung = 10 If speedx > begrenzung Then speedx = begrenzung If speedy > begrenzung Then speedx = begrenzung If speedx < -begrenzung Then speedx = -begrenzung If speedy < -begrenzung Then speedx = -begrenzung xpos = xpos + speedx ypos = ypos + speedy MoveMouse (xpos,ypos) Print speedx + "/" + speedy Forever aber du solltest hidepointer() benutzten und deinen eigenen Cursor malen, sonst "springt" die Maus im Fenstermodus, wenn du zu schnell bist. |
||
>> Musikerstellung, Grafik und Design: http://www.pixelshooter.net.tc |
c64 |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
Hi, snörkl also auf geschwindigkeitsbegrenzung wurde hier ja schon eingegangen. Hier nun eine möglichkeit die Sensibilietät der Mouse einzustellen. Das mit dem Wert /2 find ich nicht so praktisch wobei es dennoch zeigt wie mans machen kann besser ist aber WERT*Faktor finde ich, auch wenn man dann Float Variablen nutzen muss / sollte.
Code: [AUSKLAPPEN] global mouse_sensitivy# = 0.1 global mxspeed# global myspeed# function updt_Mouse() mxspeed = mousexspeed () * mouse_sensitivy myspeed = mouseyspeed () * mouse_sensitivy end function [edit] Eigentlich ersichtlich ! Aber der Vorteil ist man kann die Mouse schneller oder langsamer machen. [/edit] |
||
Betreten verboten! Kinder haften für ihre Eltern! |
- Zuletzt bearbeitet von c64 am Sa, Nov 11, 2006 14:32, insgesamt einmal bearbeitet
snörkl |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
also bis auf die version von pixelshooter verlangsamt sich eigentlich meine maus nicht^^. Ich möcht aber halt leider auch nicht so gerne noch externe icons für ne andere maus einbinden | ||
![]() |
pixelshooter |
![]() Antworten mit Zitat ![]() |
---|---|---|
hab grad gesehen das in meinem code n fehler is(u d n peinlicher ![]() neue fassung, neues glück: Code: [AUSKLAPPEN] MoveMouse(0,0)
Repeat Delay 100 speedx = MouseXSpeed() speedy = MouseYSpeed() begrenzung = 10 If speedx > begrenzung Then speedx = begrenzung If speedy > begrenzung Then speedy = begrenzung If speedx < -begrenzung Then speedx = -begrenzung If speedy < -begrenzung Then speedy = -begrenzung xpos = xpos + speedx ypos = ypos + speedy MoveMouse (xpos,ypos) If KeyHit(1) Then End Flip Forever bei den anderen müsste es auch gehen, gib halt mal andere Faktoren/Divisoren ein. Wenn du Pingpong spielen willst, blendest du statt Maus doch eh Schläger ein, oder? Und im Vollbild haste eh keine Windows-Maus. Aber wenn du sie brauchst: Im Windows-Ordner ist die auch als gif gespeichert. |
||
>> Musikerstellung, Grafik und Design: http://www.pixelshooter.net.tc |
c64 |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
Code: [AUSKLAPPEN] also bis auf die version von pixelshooter verlangsamt sich eigentlich meine maus nicht^^ Tztztz... Code: [AUSKLAPPEN] global mouse_sensitivy# = 0.1 Global mxspeed Global myspeed Global mxpos = MouseX() Global mypos = MouseY() ;//////////////////////////// ;/ function updt_Mouse() mxspeed = mousexspeed () * mouse_sensitivy myspeed = MouseYSpeed () * mouse_sensitivy mxpos=mxpos+mxspeed mypos=mypos+myspeed Oval mxpos-3,mypos-3,6,6 MoveMouse GraphicsWidth()/2,GraphicsHeight()/2 End Function ;/ ;//////////////////////////// ;-------------------------------------------------------------- Graphics 800,600,0,2 SetBuffer BackBuffer () HidePointer Repeat Cls Text 10,10," +/- für Speed (bewegung kann auch Invertiert werden ! SPEED "+Mouse_sensitivy If KeyHit(53) Or KeyHit (74) mouse_Sensitivy=mouse_Sensitivy - .1 If KeyHit(27) Or KeyHit (78) mouse_Sensitivy=mouse_Sensitivy + .1 updt_mouse() Flip If KeyHit(1) End Forever ;-------------------------------------------------------------- |
||
Betreten verboten! Kinder haften für ihre Eltern! |
snörkl |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
danke euch!
jetzt hab ich nur noch ein problem(chen). Ich möchte mein programm so schreiben, dass wenn ich an eine bestimmte stelle komme die maus sich nicht mehr bewegen kann. Soweit so gut. Aber trotz movemouse 150,150 vor der abfrage wo die maus sich befindet bleibt sie "eingerastet" von anfang an stehen. Hier ungefähr was ich meine: Code: [AUSKLAPPEN] Graphics 640,480,16,2
HidePointer Repeat Cls updt_mouse() Flip If KeyHit(1) End EndIf If mxpos>-1 And mypos>-1 And Mxpos<642 And mypos<30 movemouseid=movemouseid+1 MoveMouse 150,150 EndIf If Mxpos>-1 And Mypos>-1 And Mxpos<11 And Mypos<483 movemouseid=movemouseid+1 MoveMouse 150,150 EndIf If movemouseid=>2 mouse_sensitivy# = 0.0 EndIf Forever ;-------------------------------------------------------------- ;//////////////////////////// ;/ Function updt_Mouse() mxspeed = MouseXSpeed () * mouse_sensitivy myspeed = MouseYSpeed () * mouse_sensitivy mxpos=mxpos+mxspeed mypos=mypos+myspeed Oval mxpos-3,mypos-3,6,6 MoveMouse GraphicsWidth()/2,GraphicsHeight()/2 End Function hoffe auf baldige antwort, mfg Snörkl |
||
![]() |
pixelshooter |
![]() Antworten mit Zitat ![]() |
---|---|---|
Alsoo erstmal musst du seine sensivity-Variable auf einen Wert > 0 festlegen(global). Und was soll das "movemouse graphicswidth() / 2..."? Ich glaub auch die Maus ist von Anfang an ind dem Feld. | ||
>> Musikerstellung, Grafik und Design: http://www.pixelshooter.net.tc |
snörkl |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
also das langsamer bewegen, da hab ich ja den code net geschrieben. Das mit mousesensetivy hab ich jetzt vergessen mit ins forum zu posten, aber das is scho drinn^^ | ||
![]() |
pixelshooter |
![]() Antworten mit Zitat ![]() |
---|---|---|
ich glaub du definierst zweimal ein Feld, in den die Maus stoppt, und die is direkt am Anfang darin. | ||
>> Musikerstellung, Grafik und Design: http://www.pixelshooter.net.tc |
snörkl |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
ah, werd schaun ob du recht hast, danke schon mal
snörkl |
||
![]() |
Christoph |
![]() Antworten mit Zitat ![]() |
---|---|---|
Wenn du willst kannst du die Maus auch über
Start->Systemsteuerung->Maus->Zeigeroptionen->Bewegung verlangsamen ![]() |
||
![]() |
pixelshooter |
![]() Antworten mit Zitat ![]() |
---|---|---|
Das is doch viel zu einfach für nen Programmierer ![]() |
||
>> Musikerstellung, Grafik und Design: http://www.pixelshooter.net.tc |
c64 |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
Du hast vergsessen die Variablen zu definieren ![]() http://blitzbase.de/tutorials/rob_3.html Code: [AUSKLAPPEN] Graphics 640,480,16,2 HidePointer Global Mxpos , Mypos Global Mouse_sensitivy# = .1 Repeat Cls updt_mouse() If KeyHit(1) End Flip 1 Forever ;-------------------------------------------------------------- ;//////////////////////////// ;/ Function updt_Mouse() mxspeed# = MouseXSpeed () * mouse_sensitivy myspeed# = MouseYSpeed () * mouse_sensitivy mxpos=mxpos+mxspeed mypos=mypos+myspeed If mxpos < 50 mxpos = 50 If mxpos > 250 mxpos = 250 If mypos < 50 mypos = 50 If mypos > 250 mypos = 250 Oval mxpos-3,mypos-3,6,6 MoveMouse GraphicsWidth()/2,GraphicsHeight()/2 End Function |
||
Betreten verboten! Kinder haften für ihre Eltern! |
snörkl |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
ah, thx. Ok, es geht jetzt wirklich gut, ihr habt mir sehr geholfen! Ich lern jetzt grade wie man pixelt o.O anstrengend ^^ und hab das bit dem maus verlangsamen gut hingekriegt. Thx euch allen
mfg snörkl^^ ![]() |
||
Übersicht


Powered by phpBB © 2001 - 2006, phpBB Group