Archiv verlassen und diese Seite im Standarddesign anzeigen : Sch... Problem mit der Maus des Keypatch -[HILFE!]-
Kernle 32DLL
06.05.2004, 20:41
Hi Leute !
Wie im Betreff hab ich ein prob mit der Maus.
Undzwar:
Ich habe das Problem,dem Maker zu sagen das er Aktion XXX ausführen
soll,wen die Maus an den Cordinaten XXX-X und XXX-Y ist.
Das EIGENTLICHE Problem dabei ist,die Cordinaten rauszufinden.
Und es kommt noch härter:
Ich will es so machen,das wen man auf einen der im folgendem Bild
enthaltenen Bildschirme drückt,Aktion XXX ausgeführt wird.
Und DA liegt das Prob....
Das Bild dazu:
(Bitte Mods ! Nicht verlinken,da das mit meinem Webspace nicht funzt)
http://mitglied.lycos.de/Gfman100/Problem-Bild.png
MagicMagor
06.05.2004, 20:59
Ähm und wo ist dabei das Problem? Es gibt beim Patch ne Dokumentation dazu, wie man die Maus benutzt (und zB X und Y-Position in Varis speichert).
Präzisier mal dein Problem.
Kernle 32DLL
07.05.2004, 01:38
Das ist ja das Prob ! Ich kanns nicht genau erklären !
Es ist so:
Die Posi der Maus wird ja in 2 Variablen gespeichert (MausX und MausY)
Die stehen dann ja auch logischerweise für die X bzw. Y Achse der Maus.
Das Problem ist nun:
Ich will machen,das wen man die Maus auf einen der Bildschirme Scrolt,
und man klickt,Effekt XXX ausgeführt wird.Also wie kann ich einen
Bereich auf dem Bild festlegen,indem der Effekt XXX ausgeführt wird,
wen man in diesem Breich klickt ?
Ich hab echt keine Idee wie ich mein Prob beschreiben soll @_@
Frägelschö
07.05.2004, 02:15
Immer wenn man klickt, callst du das hier:
If Var(Maus X)>= linker Rand des Bildschirms
If Var(Maus X)<= rechter Rand des Bildschirms
If Var(Maus Y)>= oberer Rand des Bildschirms
If Var(Maus Y)<= unterer Rand des Bildschirms
Effekt XXX wird ausgeführt
End Case
End Case
End Case
End Case
Und das entsprechend für alle Bildschirme.
Jesus_666
08.05.2004, 22:34
Wenn ich nur daran denke, wie viele Forks man dafür braucht... Nee, wat bin ich froh, daß es in vernünftigen Skript- und Programmiersprachen stich gibt (das Conditional Statement, nicht die schlecht benannte Bool-Variable im Maker).
Ich hab' etwas derartiges schon gemacht... Du mußt im beim Klicken (4 * Anzahl der klickbaren Bereiche) Forks machen. Wenn die Bereiche keine Rechtecke sind hast du Pech gehabt, dann erhöht sich die Anzahl der Abfragen gewaltig. Das Ergebnis ist praktisch unlesbar, aber die Maker-Skriptsprache verbindet ja eh die Macht von Basic mit der Lesbarkeit von Assembler...
Cyberwoolf
11.05.2004, 22:10
Tja, ich kann seinen Frust gut verstehen, denn ich leide unter demselben Problem. Ich hab mir das Beispielspiel mal im Maker angesehen und bin hierauf gestoßen:
If Var(Mausposition Scene X)47 above
If Var(Mausposition Scene Y)9 above
If Var(Mausposition Scene X)271 less
If Var(Mausposition Scene Y)38 less
Var Change(Demogame)Set 1
Call Event Gegnerzahl 1
End Case
End Case
End Case
End Case
Der Sinn ist mir klar: Wenn man in einem bestimmten Bereich klickt, wird die Variable gechanged und das Event gecallt. Aber wie kommt man auf die Zahlen?
Cyberwoolf
11.05.2004, 22:10
Tja, ich kann seinen Frust gut verstehen, denn ich leide unter demselben Problem. Ich hab mir das Beispielspiel mal im Maker angesehen und bin hierauf gestoßen:
If Var(Mausposition Scene X)47 above
If Var(Mausposition Scene Y)9 above
If Var(Mausposition Scene X)271 less
If Var(Mausposition Scene Y)38 less
Var Change(Demogame)Set 1
Call Event Gegnerzahl 1
End Case
End Case
End Case
End Case
Der Sinn ist mir klar: Wenn man in einem bestimmten Bereich klickt, wird die Variable gechanged und das Event gecallt. Aber wie kommt man auf die Zahlen?
Jesus_666
12.05.2004, 00:15
Screen ausmessen.
Machn Screenshot und fügs in einem Grafikprog ein. Dann ziehst du Linien die sich kreuzen, dann hast du die Koordinate.
Kernle 32DLL
12.05.2004, 18:14
Sorry,hab vergessen zu sagen das ich das Problem gelöst habe !
Undzwar so:
Ich habe aud der Map ein Event gemacht,das mir die X bzw. Y Cordinaten
angibt,wen ich mit der Maus Links-Klicke.So hab ich die Eckpunkte der
Bildschirme herausgefunden und notiert.Dann musste ich im Maker ein
neuen Event machen.Da machte ich dann eine Fork rein,ob der Wert in
der Variable X größer als der Wert des linken oberen X punktes des
Bildschirmes sei.Im Ja falle machte ich darunter eine 2. Fork,in der
abgefragt wurde, ob der Wert der Variable X kleiner als der Wert des
rechten obernen X Punktes des Bildschirmes sei.Wieder im Ja falle machte
ich eine weitere Fork,ob der Wert der Variable Y größer als der Wert
des linken oberen Y Punktes des Bildschirmes sei.Im Ja falle kamm
dann die 4 und letzte Fork drunter,in der abgefragt wurde, ob der
Wert der Variable Y kleiner als der Wert des linken unternen Y Punktes
des Bildschirmes sei.Im ja falle kam dann noch eine 5. Fork drunter,
oder die linke Maustaste gerückt sei.In den Ja falle dieser Fork
konnte man dan schreiben was passiert,wen man mit der Linken Maustaste
in den mit Forks ein-bereichten Bildschirm klickt.
Nunja....
Dieser Therad ist nun überflüssig und "kann" geschlossen werden.
Gruß:
Kernle
Edit:
Üprigens: Fragelschö hatt schon richtig geschrieben wie es im Maker
aussehen muss.
Bei Fork 1 den Wert des oberen linken X Punktes eintragen
Bei Fork 2 den Wert des oberen rechten X Punktes eintragen
Bei Fork 3 den Wert des oberen linken Y Punktes eintragen
Bei Fork 4 den Wert des unteren linken Y Punktes eintragen
Powered by vBulletin® Version 4.2.3 Copyright ©2025 Adduco Digital e.K. und vBulletin Solutions, Inc. Alle Rechte vorbehalten.