Archiv verlassen und diese Seite im Standarddesign anzeigen : Pics platzieren und angreifen ?
Kernle 32DLL
04.09.2004, 13:05
Hallo erstmal !
Die überschrifft sagt warscheinlich nicht viel über mein Problem aus,daher will ich es nun hier etwas genauer erklären: Ich habe mir mit events was zusammen geschustert,das man mit der Maus Pics auf dem Bildschirm platzieren kann.Gut,nun zu meinem Problem: Das Platzierte Pic funktioniert als Gebäude,und dann kommt eine PPic einheit angelaufen und will das Pic/Gebäude angreifen.Das soll so funktionieren:
Die Einheit wird per Mausklick zum Bebäude geschickt.Dann klickt auf eine belibige Stelle des Gebäude,und dann greift die Einheit an.Der abschnitt mit dem ich probleme habe,ist das man auf eine BELIBIGE stelle des Pic/Gebäudes klickt,und die Einheit dann angreift.Warscheinlich versteht jetzt keiner wasich meine,aber ich hoffe einfach mal.
Gruß:
Kernle
PS:Sollte es wirklich keiner verstehen,helfe ich mit Schaubildern weiter.
Also, ich gehe mal davon aus, dass du von dem Gebäude irgendwelche Koords gespeichert hast und ebenso von der Posi, wo man mit dem Mauszeiger hinklickt.
Wenn das der Fall ist, musst du ganz simpel einfach abfragen, ob die Differenz dieser Koords unter einem bestimmten Wert liegt, nämlich der halben Breite/Höhe des Hauses
ich weiß zwar nicht genau wo dein problem ist, aber da ichs mir denken kann geb ich mal dafür ne lösung...
vorerst muss ich sagen, dass ich mich noch nie mit der mausfunktion auseinander gesetzt habe und es bestimmt dadurch auch anders geht.
so zuerst müsstest du dir ein prog schreiben, was berechnet, welche position die einheit auf dem bildschirm hat und wo das gebäude steht, geht ganz leicht dauert aber hier en bissel zu lang zu erkläen, falls du aber nicht weißt wie das geht, einfach pn^^
so wenn du dan nweißt wo die pics genau stehen, kannst du mit diesem wissen ein prog schreiben, welches die funktionen hat, das ganze pic anwählbar zu machen...hoffe mir kann noch wer folgen.^^
benötigte Vars:
XAnwähler = eine Variable zum rechnen^^
YAnwähler = ebenfalls zum rechnen^^
XAnwähler2 = narf
YAnwähler2 = omg
XPosMaus = kann man sich denken
XPosEinheit = ebenfalls
YPos Einheit = das auch^^
YPos Maus = n/c
und halt nochmal alles was es für die einheit gab nochmals für das gebäude
also wenn das 12*40 pixe groß ist, schreibste hin
X anwähler = -6 (weil hälfte von länge der einheit)
x anwähler + X PosEinheit
XAnwähler2 = +6 (auch wieder hälfte, brauchens nun aber genau anders herum um ne fläche zu simulieren^^)
XAnwähler2+ XPosEinheit
sooo dass dann nochmal mit y ich schreibs trotzdem nochmal hin
Y anwähler = -20 (weil hälfte von höhe der einheit)
Y anwähler + YPosEinheit
YAnwähler2 = +20 (auch wieder hälftegleicher grund wie bei x)
YAnwähler2+ YPosEinheit
so damit kannst du jetzt ne ne klickfläche simulieren... da es ja eine x und y pos für die maus gibt....dann ist nurnoch folgendes zu tun
If Mausklick erfolgt (k.A. denke wird ja als variabler wert angegeben)
than
If XPosMaus >= XAnwähler
than
If XPosMaus <= X Anwähler2
than
If YPosMaus >= YAnwähler
than
If YPosMaus <= YAnwähler2
than
hier kommt jetzt das hinein, was dann passieren soll, also denke mal das die einheit angewählt wird, kann ich aber ncihts zu sagen, weil du dass ja mit irgendwelchen werten oder entsprechendem handhabst)
END If
END If
END If
END If
END If
najo beim gebäude halt das gleiche, nur halt noch die if funktion, dass einheit angewählt sein muss...
ich hoffe ich konnte helfen
Powered by vBulletin® Version 4.2.3 Copyright ©2025 Adduco Digital e.K. und vBulletin Solutions, Inc. Alle Rechte vorbehalten.