kontrollkasten + anwählbare einheiten?

Fragen zu "Adventure Game Studio"? Hier rein!
Antworten
kartoffelsack

kontrollkasten + anwählbare einheiten?

Beitrag von kartoffelsack »

wollt mal fragen ob sowas geht. also ich stelle mir das wie bei nem strategiespiel vor das man wenn man die linke maustaste gedrückt hält und dann die maus über den bildschirm zieht so ein kontrollkästchen entsteht mit dem man dann die einheiten anwählen kann. wie macht man so ein kontrollkästchen mit ags? und dann wie kann man es machen dass es so ist wie im strategiespiel das man mittels dieses kontrollkästchens mehrere einheiten anwählt und die dann auch steuern kann?

ich weiß dass wenn das geht ne menge script arbeit wird aber geht das überhaupt? ist das realisierbar? wenn ja wie?
Benutzeravatar
Floyd
Logik-Lord
Logik-Lord
Beiträge: 1088
Registriert: 14.03.2004, 19:59

...

Beitrag von Floyd »

Ich glaube dass so etwas nicht geht.
WENN würde ich es mit einem Object machen und dann mit
AreObjectsColliding abfragen, aber wie man diesen Kasten auf den Bildschirm "zeichnet" und dann mit der Maus größer oder kleiner macht, dafür habe ich keine Lösung.
Was willst du denn eigentlich machen, ein richtiges Strategiespiel?
Als Notlösung könnte ich anbieten, dass man eine bestimmte Taste drücken muss, mit der man dann die Leute, die man bewegen will, markiert, also so wie man im Explorer Dateien markiert...
MfG Floyd
strazer

Beitrag von strazer »

Das ist sehr wohl möglich:

- Beim Betreten des Raumes mit RawSaveScreen() den Hintergrund zwischenspeichern
- In on_mouse_click die Mauskoordinaten in globalen Variablen zwischenspeichern
- In repeatedly_execute mit IsButtonDown prüfen, ob der Mausbutton noch gedrückt ist
- Wenn ja, mit RawRestoreScreen() the Original-Hintergrund wiederherstellen, dann mittels 4 RawDrawLines ein Rechteck zeichnen von den gespeicherten Ursprungskoordinaten zur aktuellen Mausposition
- Sobald der Mausbutton losgelassen wird, mittels einer while-Schleife für jeden Charakter prüfen, ob dieser innerhalb des Rechtecks stand
- Wenn ja, diesen Charakter als ausgewählt markieren (in einem Array z.B.)
...usw.

Ich bastele an einem Demo, da ich die Idee ganz interessant fand. Mal sehen ob ich daraus ein Template erstelle. Kann noch was dauern, aber die obige Beschreibung dürfte als Anregung erstmal reichen, denke ich.
Benutzeravatar
Floyd
Logik-Lord
Logik-Lord
Beiträge: 1088
Registriert: 14.03.2004, 19:59

...

Beitrag von Floyd »

Respekt!
MfG Floyd
strazer

Beitrag von strazer »

http://www.strazer.net/ags/demo_rts.zip

Habe das Meiste ins room script gepackt, damit es sich u.U. leichter in ein bestehendes Spiel einbinden lässt.
Hoffnungslos unfertig, alles in Englisch, aber vielleicht hilft dem einen oder anderen.

Gruss
strazer
Antworten