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.. http://imageshack.com/a/img905/2664/mGfzYi.jpg 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:
http://imageshack.com/a/img673/9779/pbaHMP.jpg 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?
Question
Lomax_Iced
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..
http://imageshack.com/a/img905/2664/mGfzYi.jpg
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:
http://imageshack.com/a/img673/9779/pbaHMP.jpg
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 endIn 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.
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:
Edited by Lomax_IcedPotreste dirmi come far corrispondere i frames giusti ai corrispettivi sensi di marcia?
Grazie :)
https://youtube.com/shorts/IeFx6zFuE0A?feature=share
https://youtu.be/z8XXIWEDrw8
https://youtu.be/g4-mMbCTX6I
https://youtu.be/YZDK0M6BMsw <p>
Link to comment
Share on other sites
6 answers to this question
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now