Steuerung bleibt hängen

Hier werden alle anderen GUI-Toolkits sowie Spezial-Toolkits wie Spiele-Engines behandelt.
Imperator
User
Beiträge: 275
Registriert: Montag 20. August 2007, 14:43
Kontaktdaten:

*umkipp* Bei mir, dem Coder funktioniert es nicht, aber bei dir?
Wie ist das möglich!!! :shock: :evil: :x
Imperator
User
Beiträge: 275
Registriert: Montag 20. August 2007, 14:43
Kontaktdaten:

Was meint ihr? Sol ich überhaupt an dem OOP-Code weiterentwickeln oder nicht?
Leonidas
Python-Forum Veteran
Beiträge: 16025
Registriert: Freitag 20. Juni 2003, 16:30
Kontaktdaten:

Wo ist da OOP? Du hast da eine Klasse (die sich im übrigen nicht an die Namenskonventionen hält) aber das Konzept ist nicht objektorientiert sondern "ich pack es mal in Klassen".
My god, it's full of CARs! | Leonidasvoice vs (former) Modvoice
Imperator
User
Beiträge: 275
Registriert: Montag 20. August 2007, 14:43
Kontaktdaten:

Hallo Leonidas,

nun ja, ich wüsste nicht wie man es sonst machen könnte. Mehr als eine Klasse hab ich ja noch nicht.
Vingdoloras
User
Beiträge: 53
Registriert: Sonntag 2. Dezember 2007, 18:25

Was genau ist denn OOP? Ich weiß zwar, dass es Objektorientiertes Programmieren heißt, aber ist Python nicht fast generell OOP?
Ich hab in nem Buch gelesen, dass in Python alles ein Objekt ist, sei es die Formatierung(String, Integer etc...) oder eine Variable.
Doch in den Büchern, die ich gelesen habe, wird in dem Kapitel OOP das Benutzen von Klassen und allem, was wan über sie wissen muss, eingeführt. Mehr nicht. Naja, am Anfang des Kapitels steht sowas wie
Das Buch 'Python 2.x' hat geschrieben:Der wesentliche Unterschied zum ... prozeduralen Programmieren besteht darin, dass man sich nicht mehr fragt, wie ein Problem gelöst wird, sindern womit es gelöst wird. Es ist nicht mehr so wichtig, dass man über Funktionen genau beschreiben muss, wie das Problem gelöst wird.
Nunja, ich versteh nun nicht so ganz, was das bedeuten soll, kannst du mir (bzw uns, Imperator scheint das ja auch noch nicht so ganz zu wissen) das nochmal erklären bitte?
Leonidas
Python-Forum Veteran
Beiträge: 16025
Registriert: Freitag 20. Juni 2003, 16:30
Kontaktdaten:

Ok, da das aber länger wird habe ich dafür den Thread "Was ist OOP eigentlich?" gestartet und meine Bemerkungen dazu geschrieben.
My god, it's full of CARs! | Leonidasvoice vs (former) Modvoice
Imperator
User
Beiträge: 275
Registriert: Montag 20. August 2007, 14:43
Kontaktdaten:

Danke! Du hast mir sehr geholfen! Nicht-OOP ich komme wieder!
Vingdoloras
User
Beiträge: 53
Registriert: Sonntag 2. Dezember 2007, 18:25

Hmm, du könntest eine weitere Klasse erstellen, die du "Bewegung"
(parameter self und figur, wobei figur die Figur ist, die dann bewegt wird)nennst und in diese Klasse die ganze Steuerung stecken.
Dann wäre alles, was mit der Bewegung zu tun hat, in der Klasse Bewegung und alles, was noch zur Figur kommt (solltest du das Programm noch erweitern wollen), zum beispiel was er sagt oder so... Wenn du dann zur Bewegung noch einen weiteren optionalen Parameter "steuerungsart" forderst, mit dem man einstellen kann, ob die jeweilige Figur mit w/a/s/d oder mit Oben/Links/Unten/Links gesteuert wird, dann könnte man vielleicht ein Spiel für zwei Leute oder sogar mehr machen...
Imperator
User
Beiträge: 275
Registriert: Montag 20. August 2007, 14:43
Kontaktdaten:

Das wäre aber absolut unsinnig. Dann würde genau das, was in Leonidas`Thread angesprochen würde eintreten und außerdem umständlicher als bisher.
Vingdoloras
User
Beiträge: 53
Registriert: Sonntag 2. Dezember 2007, 18:25

Was würde eintreten?
Leonidas
Python-Forum Veteran
Beiträge: 16025
Registriert: Freitag 20. Juni 2003, 16:30
Kontaktdaten:

Vingdoloras hat geschrieben:Was würde eintreten?
Das was keppla in dem Thread schrieb.
My god, it's full of CARs! | Leonidasvoice vs (former) Modvoice
Vingdoloras
User
Beiträge: 53
Registriert: Sonntag 2. Dezember 2007, 18:25

Ja, aber hier konnte ich keinen anderen Namen finden... aber stimmt eigentlich, man müsste ne andere Lösung finden

Naja war ja nur son Vorschlag :wink:
KC25m
User
Beiträge: 65
Registriert: Freitag 14. Juli 2006, 12:11
Wohnort: Kassel
Kontaktdaten:

Also um noch mal kurz auf das Problem der Events zurück zu kommen.
Events haben eine Type und einen Key ... weist Du ja.

event.KEYDOWN , event.KEY ...
wenn du die Taste drückst wird das Event einmal generiert und das wars.
Dann als nächstes beim los lassen kommt dann event.KEYUP und das wars.

Du must deine Steuerung schon so schreiben das sie den Keydown annimmt und solange deine figur bewegt bis sie den KeyUP bekommt.

Aber auf www.pygame.org gibt es auch ein paar gute Tutorials wo das erklärt wird.

Gruß KC
Antworten