Partagez
Aller en bas
avatar
jbdfjojo
Membre

Nombre de messages : 383
Age : 30
Localisation : Toulon ( 83 var )
Distinction : aucune
Date d'inscription : 19/04/2015
http://jbdfjojo.esy.es/index.php

affiche vie hero

le Jeu 10 Sep 2015 - 22:09
bonjour a tous je vous présente mon premier script alors dite moi ce que vous en penser Smile Smile

ce qu'il fait, il affiche la vie , le mana, le level et l'exp du hero



Spoiler:

Code:

class Scene_Map < Scene_Base
 
  alias test_start start
  def start
    test_start()
    create_sprite_test()
    @level = -9999
    @hp = -9999
    @mp = -9999
    @exp = -9999
    @next_exp = -9999
  end
 
  alias test_update update
  def update
    test_update()
    if @level != $game_actors[1].level || @hp != $game_actors[1].hp || @mp != $game_actors[1].mp
    @sprite2.bitmap.clear()
    @sprite2.bitmap.draw_text(10,10,220,25,"level = #{$game_actors[1].level} ")
    @sprite2.bitmap.draw_text(10,70,220,25,"exp  = #{$game_actors[1].exp} / #{$game_actors[1].next_level_exp} ")
    @sprite2.bitmap.draw_text(10,30,220,25,"HP    = #{$game_actors[1].hp} ")
    @sprite2.bitmap.draw_text(10,50,220,25,"PM    = #{$game_actors[1].mp} ")
    @level = $game_actors[1].level
    @hp    = $game_actors[1].hp
    @mp    = $game_actors[1].mp
    @exp  = $game_actors[1].exp
    @next_exp = $game_actors[1].next_level_exp
  end
  @sprite1.update
    end
 
  alias test_terminate terminate
  def terminate
    test_terminate()
    @sprite1.bitmap.dispose()
    @sprite1.dispose()
    @sprite2.bitmap.dispose()
    @sprite2.dispose()
   
  end
 
  def create_sprite_test
  @sprite1 = Sprite.new
  @sprite1.bitmap = Bitmap.new(200,200)
  @sprite1.bitmap.fill_rect(0, 0, 170, 110, Color.new(191, 0, 0))
  @sprite1.bitmap.fill_rect(5, 5, 160, 100, Color.new(246, 228, 151))

  @sprite2          = Sprite.new()
  @sprite2.bitmap  = Bitmap.new(@sprite1.bitmap.rect.width, @sprite1.bitmap.rect.height)
  end
 
end


PS je compte l’améliorai avec plus de design après quand j'aurai eu vos avi  Smile
avatar
Zangther
Membre

Nombre de messages : 905
Distinction : aucune
Date d'inscription : 06/02/2013

Re: affiche vie hero

le Jeu 10 Sep 2015 - 23:21
Première chose, quand tu monkey-patch une classe (quand tu définis de nouvelles choses dedans, comme tu le fais à avec Scene_Map) tu n'es pas obligé de respécifier le lien d'héritage. Donc tu peux retirer le "< Scene_Base".
Ensuite, tu nommes très mal tes variables. "@sprite1", "@sprite2", "test_...", essaye plutôt de leur donner des noms explicites.
Après, tu t'ennuye à recréer une window via des scripts. Tu devrais plutôt tente d'utiliser les classes de Window (Window_Base et ses dérivées) afin de faire la même chose mais en mieux.
C'est une bonne idée de stocker dans des variables les précédentes valeurs pour éviter de retracer ce qui n'a pas changé. Par contre, pas besoin de les initialiser à -9999. De base, elles valent nil (null) donc ta condition marchera quand même.
Coté amélioration, tu devrais tracer le Faceset et des jauges pour les valeurs. Ca sera bien mieux.

Bonne continuation.
avatar
jbdfjojo
Membre

Nombre de messages : 383
Age : 30
Localisation : Toulon ( 83 var )
Distinction : aucune
Date d'inscription : 19/04/2015
http://jbdfjojo.esy.es/index.php

Re: affiche vie hero

le Jeu 10 Sep 2015 - 23:39
ok merci pour tes conseil Zangther
Contenu sponsorisé

Re: affiche vie hero

Revenir en haut
Permission de ce forum:
Vous ne pouvez pas répondre aux sujets dans ce forum