Lavorando con Cocos2d su mac osx e non su dispositivo iOS, mi sono imbattuto nella complessità di gestire la finestra a diverse risoluzioni, a calcolare la toolbar o bottombar della finestra nei resize, e nella gestione del fullscreen, requisito oramai fondamentale affinché l’applicazione venga accettata sullo store per osx. Dopo
Cocos2d, Sprite, Nodi e Bitizens
Rieccoci con un breve tutorial, nato dalla passione per una serie di giochi per iphone, come Tiny Towers e Pocket Planes. In questi giochi vediamo la presenza dei Bitizens, dei piccoli “cittadini” a 8 bit, customizzabili e realizzati con un inconfondibile stile retro a 8 bit. Incuriosito dalle infinite possibilità
Kingdom:Undead Control Handlers
Nel disegno del codice, mi sono accorto di una cosa che a tendere rendeva illeggibile e poco gestibile il codice, la gestione degli eventi mouse, touch e keyboard da parte dei CCLayer di cocos2d. Dovendo mostrare diversi CCNode contenenti UI realizzate con cocos, come ad esempio la scheda del giocatore,
Kingdom:Undead sketch e idee
Iniziamo oggi una serie di articoli/appunti/idee sullo sviluppo di un prototipo di gioco per mac osx, iphone e ipad. Il gioco è un incrocio tra un tower defence e un rpg, in cui si deve gestire il Kingdom, il “regno” di un manipolo di sopravvissuti all’infezione zombie. Il tutto sarà
Leggere configurazione plist di default
Su mac è possibile leggere il file di default contenente la configurazione dell’applicativo in maniera molto semplice. basta usare gli NSBundle per poter accedere al bundle di default, il file info.plist generalmente contenuto delle Resources dell’applicativo: [cce lang=”objc”] NSBundle* mainBundle = [NSBundle mainBundle]; [/cce] per poter accedere alle info contenute,
Creare Classi Statiche e Singleton in Objective C
Per creare una classe che sia raggiungibile da ogni parte del nostro codice, abbiamo due alternative: realizzare una classe statica con metodi e attributi statici, oppure implementare il pattern del Singleton. Preferisco generalmente la seconda scelta più orientata ad un design pulito del nostro codice e rimanendo legato alla programmazione