Anleitungen, Kalkulatoren, Generatoren, Listen & Warnungen2017-09-01T12:57:18+00:00

C++ Programmier-Woche, Tag 03

Tag 03

Tag 03 meiner persönlichen Hardcore-Coding-Herausforderung stand gleichermaßen im Zeichen von Fleiß- und Kopfarbeit. Komplexe Gebilde müssen nicht zwangsläufig kompliziert sein, aber Warren Robinett musste sein Adventure abwechslungsreich und doch speicherschonend programmieren. Er hat in den verschiedenen Labyrinthen die Screens optimal ausgenutzt, aber dazu die verschiedenen Screen in komplexer Weise miteinander verbunden.

Heute verbleibe ich mit einer komplett begehbaren Version. Alle Screens sind erstellt und mittels Pointern richtig miteinander verknüpft. Was noch fehlt, sind eine Kollisionsabfrage, alle Gegenstände (Kelch, Magnet, 3x Schlüssel, Schwert, Easter Egg), non-player-characters (3x Drachen und Fledermaus) und sämtliche Hindernisse (Tore, “Beleuchtungseffekt”) . Zur Zeit kann man jeden Screen erreichen und quasi im “Ghost-Mode” durch Wände gehen und natürlich nichts aufheben.

Obwohl ich aufgrund von Einschränkungen in der Farbpalette Kompromisse eingehen musste, ist das Ergebnis sehenswert.

15. Dezember 2021|Kommentare deaktiviert für C++ Programmier-Woche, Tag 03

C++ Programmier-Woche, Tag 02

Tag 02

Tag 02 meiner kleinen C++ Programmier-Woche war erst ganz schlimm, dann weniger schlimm, und am Ende sogar noch halbwegs gut — trotzdem weit weniger produktiv als Tag 01 und als erhofft. Leider habe ich den Morgen mit 4 stündigen schrecklichen Kopfschmerzen verbracht, die ich durch ein Nickerchen beizukommen versuchte. Das half nicht viel. Wahrscheinlich aber durchaus realistische Umstände für so ein Projekt.

Später wollte ich wenigstens Zeit aufholen und die lästige Dateneingabe schon mal erledigen, um zumindest die verschiedenen Screens schon mal zur Verfügung zu haben. Dabei stellte sich die Darstellung trotz aller Vorüberlegungen alles andere als trivial heraus. Insbesondere die Irrgärten lassen sich von nur umständlich von einem in quadratischen Pixeln angegebenen Binärformat in ein halbwegs brauchbares Verhältnis von Characters von 10 Breite zu 4 Höhe bringen. Darüber hinaus ist mein Plan, eine Kollisionsabfrage mit dem Inhalt der Screens auszuführen. Dazu wird es aber notwendig sein, dass die Anschlussstellen von einem Screen zum jedem angrenzenden Screen genau passen. Das muss man erstmal hinbekommen. Fertig sind zumindest die drei Schlösser, alle Arten von offenen Räumen und der blaue Irrgartens — zumindest die Screens, die Verknüpfungslogik fehlt noch. Mir schwebt dafür ein struct aus vier Pointern vor, die auf die angrenzenden Screens zeigen. Oder vielleicht shorts mit einer ID. Das schauen wir dann, wenn alle Screens initialisiert und darstellbar sind. Am Ende scheint aber zumindest im blauen Labyrinth alles zu passen.

14. Dezember 2021|Kommentare deaktiviert für C++ Programmier-Woche, Tag 02

C++ Programmier-Woche, Tag 01

Persönliche Herausforderung

Nach dem Beenden des Kurses “Learn C++ Programming by Making Games” auf Udemy wollte ich mich gleich an den zweiten Teil machen. Doch im letzten Augenblick musste ich mich bremsen und daran erinnern, dass es vielleicht der nachhaltigere Weg ist, das neu Erlernte zuerst anzuwenden und Ideen und Konzepte Routine werden zu lassen – naja, halbwegs zumindest.

Widmung

Auf der Suche nach einem Projekt wurde ich schnell fündig. Das Spiel “Adventure” (1979/1980) vom Atari2600 in einer C++ Version für’s Text-Terminal portieren – irgendwie lauffähig. Daher widme ich gerne meine Versuche Warren Robinett, dem ich schier unzählbare Stunden vor dem Fernseher auf der Suche nach dem Kelch verdanke und der mich lehrte, eine Fledermaus zu verfluchen! Danke.

Motivation ist es Konzepte und Ideen in der C und C++ Programmierung zu erweitern und zu vertiefen – inbesondere der Umgang mit Pointern (Pointer Arithmetik)m Call-by-Reference und Geschicktes Strukturieren von Daten mit structs und Objekt-orientierte Lösungen von Aufgaben. Und natürlich wollte ich auch gerne wieder etwas mit ncurses für die Konsole nutzen.

Tag 01

Er erste Tag hinterlässt gemischte Gefühle. Einerseits macht es schon echt Spaß und ist ein echtes Erfolgserlebnis, einen Adventure-ähnlichen Look’n Feel auf der Konsole auszugeben. Inspiration gibt’s auf dem Online-Emulator. Nach Überlegungen wie man das konzeptionell am Besten angeht, folgte eine lange Zeit mit dem Erstellen verschiedener struct und anderer Datenstrukturen. Dem folgte eine Ernüchterung im Kontrollverlust in einer Doppelschleife im Initialisieren von Screens. Am Ende stand aber ein Bildschirm mit einer beweglichen Spielfigur. Das ist ja schon mal was.

13. Dezember 2021|Kommentare deaktiviert für C++ Programmier-Woche, Tag 01

C++ Kurs: Gerade fertig geworden

Gerade fertig geworden, Teil 2 schon gebucht.

Empfehlenswerter Kurs, um von C kommend einen guten und vor allem unterhaltsamen Einstieg in C++ (und den objekt-orientierten Ansatz) zu bekommen. Danke Udemy für’s Hosting und Serge Lansiquot für den Kurs als solches.

1. Dezember 2021|Schlagwörter: , , , , |Kommentare deaktiviert für C++ Kurs: Gerade fertig geworden

Tradingview: Black Friday

Dieses Angebot gibt’s nur einmal pro Jahr von Tradingview – jetzt zuschlagen!

22. November 2021|Schlagwörter: , , |Kommentare deaktiviert für Tradingview: Black Friday

C programming: Rewritten function

Today I rewrote
int drawBars(const char * barMeans, int barNumber, const double maxValue, const double currentValue);
to
int drawBars(const char * barMeans, int barNumber, const double * ptr_maxValue, const double * ptr_currentValue) ;
and I am really proud of me!

5. November 2021|Schlagwörter: , , , , |Kommentare deaktiviert für C programming: Rewritten function
Go to Top