Partagez
Aller en bas
avatar
Garruk
Membre

Nombre de messages : 912
Age : 33
Localisation : Evreux 27
Distinction : The Master Show de 2011
Date d'inscription : 13/09/2009

[Résolu]Modifier une fenêtre pour 3 héros

le Ven 18 Fév 2011 - 20:57
Voilà pour mon projet je voudrais mettre 3 héros maximum en combat, avec le système du SBS ça fait un vide et c'est pas génial j'ai donc opté pour un script qui rajoute les facesets et modifie l'affichage des barres, j'ai regardé, modifié un peu le script, sans rien vraiment trouver.

Voilà une image l'affichage du haut est celui pour 4 héros, celui du bas un montage que j'ai fait vite fait pour les 3 héros, enfin c'est comme ça que j'aimerai que ça donne du moins.
Spoiler:


Le script
Spoiler:
Code:

    
Code:
class Window_Base < Window
  def draw_face(face_name, face_index, x, y, size = 96, opacity = 255)
    bitmap = Cache.face(face_name)
    rect = Rect.new(0, 0, 0, 0)
    rect.x = face_index % 4 * 96 + (96 - size) / 2
    rect.y = face_index / 4 * 96 + (96 - size) / 2
    rect.width = size
    rect.height = size
    self.contents.blt(x, y, bitmap, rect,opacity)
    bitmap.dispose
  end
    def draw_actor_face(actor, x, y, size = 96, opacity = 255)
    draw_face(actor.face_name, actor.face_index, x, y, size, opacity)
  end
end

class Window_BattleStatus < Window_Selectable
 
  def initialize
    super(0, 0, 416, 128)
    @column_max = 4
    @spacing = 0
    refresh
    self.active = false
  end
  def refresh
    self.contents.clear
    @item_max = $game_party.members.size
    for i in 0...@item_max
      draw_faces(i)
    end
    for i in 0...@item_max
      draw_item(i)
    end
  end
  def draw_faces(index)
    actor = $game_party.members[index]
    draw_actor_face(actor, actor.index * 96 + 2, 0, 96, 100)
  end
  def draw_item(index)
    self.contents.font.color = normal_color
    actor = $game_party.members[index]
    draw_actor_name(actor, index * 96 + 2, 0)
    draw_actor_state(actor, index * 96 + 2, 18, 48)
    draw_actor_hp(actor, index * 96 + 2, 56, 86)
    draw_actor_mp(actor, index * 96 + 2, 74, 86)
  end
end

Si un scripteur pouvait m'arranger ça, ce sera très appréciable.
Merci d'avance. =)

EDIT C'est bon en faite. ^^
Revenir en haut
Permission de ce forum:
Vous ne pouvez pas répondre aux sujets dans ce forum