Snake - Schlange zum wachsen bringen
-
Jester schrieb:
Also läuft Deine Schlange rückwärts?

Ist alles eine Frage der Definition
(natürlich kann man auch push_front() und pop_back() nehmen, wenn das eher deinen Vorstellungen entspricht ;))
-
War auch mehr scherzhaft gemeint.
Ich würde übrigens der Schlage noch ein Attribut length spendieren und dann irgendwo ne kleine schleife:
while(body.size() > length) body.pop_front() // oder auch pop_back.
Damit muß man nur noch die Länge setzen und die Schlange dehnt sich völlig automatisch aus bzw. schrumpft auf die angegbene Länge.
-
Erst mal Danke für die vielen Hinweise!
Meine Schlange wächst jetzt auch pro gefressenem Futter.
Nur leider ist ihr Schwanz steif (klingt komisch is aber so)
Wie schaff ich es das die Schlange flexibel ist?
-
Was genau meinst Du mit steif und was mit flexibel? Bei normalen Snake-Spielen ist es doch so, dass sich nur der Kopf bewegt. Was willst Du denn genau erreichen?
-
ich wuerde mal tippen das er meint, dass wenn er zB. mit der Snake die richtung aendert das der schwanz net abknickt (aua! ^^) und um die kurze geht, sonder das er nur neben den kopf her bewegt.
also net so:
###############
####ooo########
######o########
######o########
######oooooo:)#sondern so:
############### ^
############### |
#ooooooooooo:)# |
############### |
############### vich denke so hat er es gemeint, oder?
Gruß Tobi
-
Wenn die Schlange sich ordentlich um die Ecken schlängeln soll, mußt du etwas mehr speichern als nur Position des Kopfes, Blickrichtung und Länge der Schlange. Da könntest du am einfachsten die Koordinaten aller Segmente in einer list/deque speichern (bei jedem Schritt wird die neue Kopfposition vorne drangehängt und die letzte Position hinten gekappt).
-
Es wäre hilfreich wenn du deine Programmierumgebung angeben würdest!?
Willst du das ganz normal in einem DOS Eingabe haben?
-
JAAAAAAAACK schrieb:
Es wäre hilfreich wenn du deine Programmierumgebung angeben würdest!?
Willst du das ganz normal in einem DOS Eingabe haben?Programmierumgebung ist doch sekundaer, viel wichtiger waer's zu wissen, wie er die Schlange momentan abspeichert.
-
hmm...
Wie bringt man seine Schlange bloß zum Wachsen?
Naja, ich will hier jetzt keine URLs posten, die hier nicht hingehören
-
Ich habe mal noch eine Frage: WArum kann man die Klasse Device nicht als abtrakt definieren? dann kommenj imemr massig Fehler beim kompilieren...
-
Was sollte denn dagegen sprechen, sie abstrakt zu definieren? Natürlich mußt du vorher wissen, was "abstrakt" bedeutet - insbesondere daß du keine Objekte dieser Klasse erzeugen kannst (sondern nur von abgeleiteten Klassen, die alle pur virtuellen Methoden definiert haben).