Gezielte Schüsse von Gegnern....

Übersicht BlitzBasic Allgemein

Neue Antwort erstellen

Apprauuuu

Betreff: Gezielte Schüsse von Gegnern....

BeitragMo, Mai 31, 2004 17:01
Antworten mit Zitat
Benutzer-Profile anzeigen
hi leutz !

wollte in meinem spiel geggner machen, welche in deine richtung schießen sollen...
ich krieg das aber irgendwie nicht hin (hab auch schon zielsuchende schüsse gemacht, aber nur so welche sind langweilig...)

hab versucht irgenwie rumzurechnen, sodass die gegner auf dich zielen, aber irgendwie kommt da am ende total der schwachsinn raus!
(die schüsse fliegen alle nur in eine richtung und das noch mit der falschen geschwindigkeit!)

hier mal der code

schüsse werden erstellt:

Zitat:
If schusstimer < MilliSecs()-220 Then
schusstimer=MilliSecs()
zielschuss = New gegnerschuss
zielschuss\x = gegner\x
zielschuss\y = gegner\y
zielschuss\x_ziel = x_koordinate
zielschuss\y_ziel = y_koordinate
zielschuss\bild = LoadImage("Bilder\kugel.PNG")
zielschuss\geschwindigkeit = 5
If zielschuss\x > zielschuss\x_ziel Then
zielschussgeschwindigkeit_x = zielschuss\x - zielschuss\x_ziel
ElseIf zielschuss\x < zielschuss\x_ziel Then
zielschussgeschwindigkeit_x = zielschuss\x_ziel - zielschuss\x
ElseIf zielschuss\x = zielschuss\x_ziel Then
zielschussgeschwindigkeit_x = zielschuss\x_ziel - zielschuss\x
EndIf
If zielschuss\y > zielschuss\y_ziel Then
zielschussgeschwindigkeit_y = zielschuss\y - zielschuss\y_ziel
ElseIf zielschuss\y < zielschuss\x_ziel Then
zielschussgeschwindigkeit_y = zielschuss\y_ziel - zielschuss\y
ElseIf zielschuss\y = zielschuss\x_ziel Then
zielschussgeschwindigkeit_y = zielschuss\y_ziel - zielschuss\y
EndIf
If zielschussgeschwindigkeit_y < zielschussgeschwindigkeit_x Then
prozentschuss = zielschussgeschwindigkeit_y / zielschussgeschwindigkeit_x * 100
zielschuss\geschwindigkeit_x = zielschuss\geschwindigkeit / prozentschuss * 100
zielschuss\geschwindigkeit_y = zielschuss\geschwindigkeit - zielschuss\geschwindigkeit_x
ElseIf zielschussgeschwindigkeit_y > zielschussgeschwindigkeit_x Then
prozentschuss = zielschussgeschwindigkeit_x / zielschussgeschwindigkeit_y * 100
prozentschuss = zielschussgeschwindigkeit_y / zielschussgeschwindigkeit_x * 100
zielschuss\geschwindigkeit_y = zielschuss\geschwindigkeit / prozentschuss * 100
zielschuss\geschwindigkeit_x = zielschuss\geschwindigkeit - zielschuss\geschwindigkeit_y
EndIf
EndIf
EndIf
EndIf


ich weiß, dass ich zimelich komisch gerechnet hab...
aber irgendwie ist mir kein anderer weg eingefallen

hier werdend ie schüsse aktualisiert:
Zitat:
Function gegnerschuss_fliegt()

For zielschuss = Each gegnerschuss
zielschuss\x = zielschuss\x + zielschuss\geschwindigkeit_x
zielschuss\y = zielschuss\y + zielschuss\geschwindigkeit_y
DrawImage zielschuss\bild, zielschuss\x, zielschuss\y
Next

End Function



könnt ihr mir vielelicht nen fertigen code posten, oder falls es nen vereinfacherenden befehl posten, falls es so was gibt ??[/code]

Pixel-King

BeitragMo, Mai 31, 2004 17:09
Antworten mit Zitat
Benutzer-Profile anzeigen
PointEntity ?

Hubsi

BeitragMo, Mai 31, 2004 17:10
Antworten mit Zitat
Benutzer-Profile anzeigen
Code: [AUSKLAPPEN]
zielschuss\bild = LoadImage("Bilder\kugel.PNG")
Damit ist die beste Graka nach 5 Minuten zugemüllt Twisted Evil . Lade die einzelnen Bilder (wenn es mehrere sind) in ein Array, speicher in zielschuss\bild nur die Nummer des Bildes im Array zeichne es dann so:Code: [AUSKLAPPEN]
DrawImage bild(zielschuss\bild),x,y
Was die Zielfindung angeht kannst Du im Forum mal nach Sin() oder Cos() suchen Wink
Den ganzen Doag im Bett umanandflagga und iaz daherkema und meine Hendl`n fressn...

simi

BeitragDi, Jun 01, 2004 16:47
Antworten mit Zitat
Benutzer-Profile anzeigen
Hi,
das geht mit ATan2 ( http://www.blitzbase.de/befehle2d/atan2.htm )
du bekommst einen Winkel zurück. Den kannst du dann abspeichern.
Jetzt musst du nur noch der x-Position des schusses den Cosinus Wert dazuzähllen (XPos = XPos+Cos(wINKEL)*2) und der Y-Position den Sinus Wert dazuzählen.
Ich hoffe man versteht, was ich meine... Sonsdt musst du noch das Beispiel anschauen!

cu simi

Neue Antwort erstellen


Übersicht BlitzBasic Allgemein

Gehe zu:

Powered by phpBB © 2001 - 2006, phpBB Group