Leicht gemacht: plist auslesen

Hallo Zusammen,

bei fast allen bisher von mir programmierten Apps war es notwendig Daten aus einer Property List (auch plist genannt) auszulesen. Eine pList kann über File New  File… Ressource ➸ Property List dem Projekt hinzugefügt und direkt in XCode bearbeitet werden.  Hier mal ein Beispiel:

plist auslesen

In diesem Beitrag erkläre ich wofür man eine pList benötigt und wie man mit ihr arbeitet.

[…]

leicht gemacht: Daten speichern

Hallo Zusammen,

fast jede App kommt mal zu dem Punkt an dem Daten gespeichert werden müssen. Sei es nun etwas triviales wir Highscores, komplette Spielstände oder Einstellungen der App (Sprache, Ton an/aus usw.)

Ein einfacher Weg dies zu tun ist die Benutzung von Singletons, welche ich hier schonmal vorgestellt habe, in Verbindung mit den NSUserDefaults. Wenn ihr noch kein Singleton Object habt, ist jetzt ein guter Zeitpunkt eins zu erstellen.

[…]

leicht gemacht: Singletons

Hallo Zusammen,

heute möchte ich euch das Design Pattern ( = Entwurfsmuster) Singleton ( = Einzelstück) vorstellen. Singletons sind ein Klasse von der es zu jeder Zeit nur ein Objekt geben kann und darf. Zusätzlich sind sie üblicherweise global verfügbar.

Ich nutze Singletons sehr oft, um zum Beispiel eine globale Methode dem ganzen Programm verfügbar zu machen. Darüber hinaus können dem Singleton Variabeln zugewiesen werden, welche dann von Klassen übergreifend genutzt werden können.

[…]

leicht gemacht: mit NSDate die Zeit kontrollieren

Hallo Zusammen,

es gibt viele Spiele und Anwendungen die einen Bezug zur Zeit benötigen. Dies kann zum Beispiel ein Timer sein der runter läuft, bis ein Gebäude wieder gebaut werden kann. Oder es wird gezählt wie lange der Spieler in einem Level am Leben bleibt. Manchmal soll auch zu einer bestimmten Zeit, also jeden Tag im 18Uhr, etwas in der App passieren. Für alle diese Anwendungsfälle werde ich in diesem Artikel Lösungsvarianten zeigen.

[…]

Tutorial: Spritesheets mit Texturepacker

Hallo Zusammen,

heute möchte ich euch ein Tool vorstellen, welches uns einen Teil der Programmierarbeit erleichtert: Texturepacker

Mit Texturepacker kann man sogenannte Spritesheets erstellen – das sind mehrere Sprites   in einer Grafik vereint. Und das beste ist, dass die Spritesheets von Cocos2d unterstütz werden. Für alle die keine Grafiken zur Hand haben stelle ich hier einen Satz zur Verfügung:

Grafik eines Zip Ordners

Zu allererst erstellen wir ein neue Cocos2d Projekt, wie zum Beispiel hier beschrieben. Startet nun Texturepacker – ihr müsstet, das folgende Bild sehen.

[…]

Tutorial: Cocos2d und Physik 2

Hallo Zusammen,

wir wollen heute mit unserem kleinen Physik Puzzle weitermachen – alle die Teil 1 noch nicht kennen sollten dies nachholen. Ich erkläre heute wie wir Objekt im Raum verschieben. Außerdem bauen wir eine Kollisionserkennung ein, um zu erkennen wann der Spieler gewonnen hat. Zusätzlich sollen die visuellen Effekte auch nicht zu kurz kommen – so zum Beispiel ein schöner Hintergrund. Viel zu tun, also fangen wir an.

Zunächst aber die Grafiken, die ich in der App benutze für euch zum runterladen in einem praktischen zip Ordner.

Grafik eines Zip Ordners […]

Tutorial: Cocos2d und Physik

Hallo Zusammen,

heute behandeln wir eine weitere Stärke des Cocos2d Frameworks – die eingebaute Chipmunk Physik Engine. Durch diese Engine ist es möglich Objekte und eine physikalische Umgebung zu definieren. Anschließend verhalten sich diese Objekte physikalisch korrekt. Die Möglichkeiten sind dabei vielfältig: die Umgebung kann eine Gravitation haben oder nicht; Objekte sind schwer oder leicht; verhalten sich gummiartig oder doch eher steinhart.
In dem heutigen Tutorial lernen wir eine solche physikalisch korrekte Umgebung zu erstellen. […]

leicht gemacht: Cocos2d und Menus

Der Vorteil eines Frameworks wie Cocos2d ist, dass viele Funktionen die eine App erst vollständig machen, bereits enthalten und einfach zu konfigurieren sind. So ist es mit Cocos2d zum Beispiel sehr einfach ein Menu zu erstellen.

Die geschieht mit Objekten der Klassen CCMenu und CCMenuItem. Das CCMenuItem stellt dabei einen Knopf dar, während das CCMenu die einzelnen Knöpfe zu einer logischen Einheit zusammenfasst.

//create Button 
CCMenuItem *startButton = [CCMenuItemImage itemFromNormalImage:@"start.png" 
				selectedImage:@"start_pressed.png" 
				target:self 
				selector:@selector(startMethod)];

startButton.position = ccp(240,180);

[…]

leicht gemacht: Cocos2d Scenes und Layer

Heute behandeln wir den grundsätzlichen Aufbau einer Cocos2d App. Wie ihr sicher in unserem Beispiel aus dem letzten Beitrag bereit erkannt habt arbeitet die App mit Scenes und Layer. Aber was machen Scenes und Layer? Und wann braucht man was? Und was bedeutet überhaupt dieser QuellCode:

 +(CCScene *) scene {
      // 'scene' is an autorelease object.
     CCScene *scene = [CCScene node];

     HelloWorldLayer *layer = [HelloWorldLayer node];

      // add layer as a child to scene
      [scene addChild: layer];

      // return the scene
      return scene;
}

Diese Fragen werden wir in diesem Tutorial behandeln.  […]