Save ragazzi è da un po che non ci si sente. :D
Lavoro e stress non mi hanno permesso di progettare il mio game. Ma quando posso (tipo ora, Agosto) mi sto nuovamente cimentando nell'impresa.
Premessa:
Vi faccio dare una breve sbirciatina..
Come ben avete notato, sto curando molto l'aspetto grafico. Adesso non utilizzo più solo Paint, ma mi sto divertendo molto a scoprire Gimp 2.8. Volevo un terreno che fosse un terreno! e ci sono riuscito. Mi reputo soddisfatto.
Poi ho notato che il chara stonava con il contesto, perché per esigenze grafiche mi occorrono dei Charaset adatti per tutte e 8 le direzioni. Così ho unito due file immagine ed venuto fuori questo set:
Se la memoria non mi rimbambisce è un 4x8 (non voglio dire castronerie)
Nel senso che in larghezza cw = 4 frames ossia 128pixel e in altezza ch = 8 frames ossia 384pixel
Una singola celletta invece è 32x48 pixel
Sono riuscito a attuare alcune modifiche sui vari script interessati per appunto procedere al riconoscimento di tali file così estesi.
Quindi mi son messo a modificare:
1)
GAME_PLAYER
Dalla riga 219...
case Input.dir8 #normalmente è Input.dir4 when 2 move_down when 4 move_left when 6 move_right when 8 move_up #Queste direzioni sono state aggiunte da me! when 1 move_lower_left # <- metodo configurato when 7 move_upper_left # <- metodo configurato when 3 move_lower_right # <- metodo configurato when 9 move_upper_right # <- metodo configurato end
In questo modo ho abilitato la camminata diagonale del personaggio utilizzato.
Poi..
Ho cercato un modo per aumentare il numero dei Frame da poter utilizzare ho cercato in questo forum e sono riuscito a trovare cosa mi interessava al momento.
E sono andato a modificare le rispettive classi:
1) SPRITE_CHARACTER e GAME_CHARACTER2 vi annoto i miei appunti a riguardo.
=begin Per modificare e aggiungere i Template ai Charaset da utilizzare in game basta Modificare le classi "Sprite_Character" e "Game_Character2". In Sprite_Character bisogna andare alla linea 31 dove vi sarà scritto questo: @cw = bitmap.width / 4 Significa che la larghezza del template del chara dovrà essere larga 4 frames. Se volete creare un template tramite qualsiasi programma di grafica, bisogna considerare che un singolo frames equivale a 32x48 pixel. per attuare la modifica ed estendere la larghezza dell'immagine del Chara Bisognerà modificare quel valore sostituendo il 4 al numero che vi fa comodo. Ad esempio io ho scelto il 9 Perciò andrò a scrivere: @cw = bitmap.width / 9 -------------------------------------------------------------------------------- Una volta aplicata questa modifica, passare alla classe Game_Character2 Alla linea 23 si troverà questa dicitura: if @anime_count > 18 - @move_speed * 2 Che dovrà essere sostituita con questa: if @anime_count > 16 - @move_speed * 2 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - Poi appena più sotto: alla riga 32: @pattern = (@pattern + 1) % 4 Sostituite quello sopra con queste due linee: @pattern = @pattern - 1 #corregge la camminata togliendo lo "scatto" @pattern = (@pattern + 1) % 8 +1 -------------------------------------------------------------------FINE------- =end
Però ancora l'immagine non si associava alla direzione di camminata.
Così sono andato subito in def frame_update della classe SPRITE_CHARACTER
Sono andato sotto fino alla riga 60 e subito dopo ho aggiunto:
sx = @character.pattern * @cw #----------------------------------------------------------- # * Modifica fatta da me! #----------------------------------------------------------- dir = @character.direction dec = ( dir == 4 or dir == 8)? 3:1 sy = (dir - dec)*@ch #-----------------------------------------------------------
Ora il problema dove si pone..?
Il charaset viene riconosciuto. Solo che non vengono associate le giuste immagini alle corrispettive direzioni.
Quindi la richiesta è la seguente:
Potreste dirmi come far corrispondere i frames giusti ai corrispettivi sensi di marcia?
Grazie :)
Modificato da Lomax_Iced, 01 August 2015 - 18:40 PM.