AccueilAccueil  PortailPortail  RechercherRechercher  Dernières imagesDernières images  S'enregistrerS'enregistrer  ConnexionConnexion  



Le Deal du moment : -17%
SSD interne Crucial SSD P3 1To NVME à ...
Voir le deal
49.99 €

Partagez
 

 [VX] Compatibilité Matéria et rapport de combat V3

Voir le sujet précédent Voir le sujet suivant Aller en bas 
AuteurMessage
Doddy
Citadin Lv.7
Citadin Lv.7
Doddy


Masculin Age : 38
Inscrit le : 12/02/2010
Messages : 204

[VX] Compatibilité Matéria et rapport de combat V3 Empty
MessageSujet: [VX] Compatibilité Matéria et rapport de combat V3   [VX] Compatibilité Matéria et rapport de combat V3 Icon_minitimeDim 21 Mar 2010 - 13:10

Bonjour,
Suite à la demande de cloudstrife je poste la modif du script du rapport de combat de Blockade, pour qu'il affiche le gain d'AP.

Auteur : Blockade
Addon : Doddy
Description :
-Ajout de l'affichage du gain d'AP.

script :

Code:

#===============================================================
# ● [VX] ◦ Rapport de combat V3
#--------------------------------------------------------------
# ◦ Par  Blockade
# ◦ http://rpg-maker-vx.bbactif.com/forum.htm
# ◦ Crée le 06/04/2009
# ◦ Version 3.7
# ◦ Remerciment à Woratana, Moghunter
#--------------------------------------------------------------
#===============================================================
#===============================================================
# Notes de version :
#---------------------------------------------------------------
# ~ Version 1.0 :
#  - Création du script
# ~ Version 2.0 :
#  - Interface revue
#  - Regroupement et classement des objets gagnés
#  - Ajouts d'options de personalisations
# ~ Version 3.0 :
#  - Le script distibue l'argent gagné correctement.
#  - Module de configuration entiérement revu
#  - Compatibilité améliorée
#  - Pop-up lors d'un level up qui affiche les caractéristiques
#  - Affiche les sorts gagnés
# ~ Version 3.5
#  - Meilleur affichage des caractéristiques quand le héros gagne un niveau
#  - Affichage du temps de combat
# ~ Version 3.6
#  - Mise à la norme de mes scripts
#  - Compatible avec 3 systèmes de combat : Combat VX, SBS, SBS avec ATB
#  - Détecte automatiquement le SBS
# ~ Version 3.7
#  - Correction d'un bug avec le SBS avec ATB, le rapport d'affichais deux fois
#===============================================================
#===============================================================
# Utilisation :
#  Plug & Play, inserez le au dessus de Main !
#  Jettez un coup d'oeil au module de configuration !
#===============================================================
module Blockade
  module Config_Report
#===============================================================
#  Blockade::Config_Report Début du Module de configuration
#===============================================================
#-------------------------------------------
# >> Configuration du texte
#--------------------------------------------
# > Texte contenu dans l'help_window
 Text_help_window = "Rapport de Combat" 

# > Alignement du texte (0:Gauche, 1:Milieu, 2: Droite)
Alignement_texte = 0

# > Texte pour le temps de combat :
Texte_temps_combat = "Temps : "

# > Alignement du Texte_temps_combat (0:Gauche, 1:Milieu, 2: Droite)
Alignement_texte_temps_combat = 2

# > Expérience (abrégée)
Exp = "Exp : "

# > Expérience (matéria)
Ap = "Ap : "

# > Monnaie (abrégée)
Gold = "Gils : "

#  > Niveau (abrégé)
Lvl = "Niv. "

#  > Dans la fenêtre de drop
Drop_nil = "Aucun objet trouvé."            # Si pas d'objet à la fin du combat
Drop_objets = "Objets trouvés :"            #  Si des objets sont trouvées
Drop_armures = "Armures trouvées :"  #  Si des armures sont trouvées
Drop_armes = "Armes trouvées :"        # Si des armes sont trouvées 

# > Dans la fenêtre de changement de niveau
Texte_hp  = "HP "                  # Texte pour les Hp
Texte_mp  = "MP "                  # Texte pour les Mp
Texte_atk  = "Attaque  "        # Texte pour l'attaque
Texte_def  = "Défense  "      # Texte pour la défense
Texte_int    = "Intelligence "  # Texte pour l'intelligence
Texte_agi  = "Agilité "            # Texte pour l'agilité

# > Couleur des noms de caracteristiques
Couleur_nom_carac = 4

# > Dans la fenêtre des nouveaux sorts
Couleur_new_skill = 4  # Couleur de Texte_new_skill
Texte_new_skill = "Nouveaux sorts : " # Texte pour introduire les nouveaux sorts
 #-------------------------------------------

 #-------------------------------------------
# >> Configuration des icones
#--------------------------------------------
# > Dans la fenêtre de changement de niveau
Icone_hp  = 99    # Id de l'icone pour les PV
Icone_mp = 100  # Id de l'icone pour les PM
Icone_atk  = 2              # Id de l'icone pour l'attaque
Icone_def  = 52          # Id de l'icone pour la défense
Icone_int  = 21          # Id de l'icone pour l'intelligence
Icone_agi  = 48          # Id de l'icone pour l'agilité

# > Dans la fenêtre des sorts
Icone_new_skill = 130
#-------------------------------------------

#-------------------------------------------
# >> Configuration des sons
#--------------------------------------------
# > Quand un héros gagne un niveau
Lvl_up_sound = "Recovery" # Nom du SE
Lvl_up_volume = 80 # Volume entre 50-150
Lvl_up_tempo = 100 # Tempo entre 50-150
#===============================================================
#  Blockade::Config_Report Fin du Module de configuration
#===============================================================
  end
end

$imported = {} if $imported == nil
$imported["Rapport_CombatV3"] = true

#==============================================================================
# ** Scene_Battle
#------------------------------------------------------------------------------
#  Scene qui gère les combats
#==============================================================================
class Scene_Battle < Scene_Base
  #--------------------------------------------------------------------------
  # * Prend le temps au début du combat
  #--------------------------------------------------------------------------
  alias start_battle_block start
  def start
    start_battle_block
    @temps = Time.now
  end
 
  #--------------------------------------------------------------------------
  # * Enpêche le rapport de s'afficher 2 fois (ATB fix)
  #--------------------------------------------------------------------------
  alias judge_win_loss_block judge_win_loss unless $@
  def judge_win_loss
    if defined?(::N02)
    return unless @fin_combat.nil?
    end
    judge_win_loss_block
  end
  #--------------------------------------------------------------------------
  # * Processus de victoire
  #--------------------------------------------------------------------------
  def process_victory
    if defined?(::N01)
          @status_window.visible = true
          @message_window.visible = false
          # ボスコラプスはウエイトを長く挟む
          for enemy in $game_troop.members
            break boss_wait = true if enemy.collapse_type == 3
          end
          wait(440) if boss_wait
          wait(N01::WIN_WAIT) unless boss_wait
          # 動けないアクターを除いて勝利アクション
          for actor in $game_party.members
            unless actor.restriction >= 4
            @spriteset.set_action(true, actor.index,actor.win)
          end
        end
      end
    @info_viewport.visible = false
    @message_window.visible = false
    RPG::BGM.stop
    $game_system.battle_end_me.play
    unless $BTEST
      $game_temp.map_bgm.play
      $game_temp.map_bgs.play
    end
    new_temps = Time.now
    temps = new_temps- @temps
    if temps >= 60
      @temps_combat = (temps / 60).truncate
      @suffixe = @temps_combat > 1 ?  "minutes" : "minute"
    else
      @temps_combat = temps.truncate
      @suffixe = "secondes"
    end
    @exp =$game_troop.exp_total
    @gold = $game_troop.gold_total
    @drop = $game_troop.make_drop_items
    $game_party.gain_gold(@gold)
    ini_variable   
    Graphics.fadeout(30)
    afficher_rapport
    Graphics.fadein(20)
end

  #--------------------------------------------------------------------------
  # * Initialise les variables
  #--------------------------------------------------------------------------
  def ini_variable
      @fin_combat = true
      @actors_lvl_up = []
      @num_passage= 0
    end
   
  #--------------------------------------------------------------------------
  # * Afficher le rapport de combat
  #--------------------------------------------------------------------------
def afficher_rapport
    @help_window = Window_Help_Combat.new
    @heros_window = []
      y=55 ; i=0
    for actor in $game_party.members
    @heros_window[i] = Heros_Window.new(actor,y,@exp)
    @actors_lvl_up.push([actor,@heros_window[i].get_old_carac,@heros_window[i].get_new_carac,@heros_window[i].get_new_skills]) if @heros_window[i].level_up
    y +=74; i += 1
    end
    @gold_exp_window = Gold_Exp_Window.new(@gold,@exp,@ap)
    @butin_window = Drop_Window.new(@drop)
    @help_window.set_text(Blockade::Config_Report::Text_help_window,Blockade::Config_Report::Alignement_texte,Blockade::Config_Report::Texte_temps_combat + "#{@temps_combat} #{@suffixe} ",Blockade::Config_Report::Alignement_texte_temps_combat)
    if @actors_lvl_up != []
      RPG::SE.new(Blockade::Config_Report::Lvl_up_sound, Blockade::Config_Report::Lvl_up_volume, Blockade::Config_Report::Lvl_up_tempo).play
      @actor_window = Carac_Window.new(@actors_lvl_up[@num_passage])
      new_skill = @actors_lvl_up[@num_passage]
      @actor_window2 = Skills_Window.new(@actors_lvl_up[@num_passage]) if @actors_lvl_up[@num_passage][3].size > 0
    end
  end
 
  #--------------------------------------------------------------------------
  # * Update
  #--------------------------------------------------------------------------
  alias update_block update unless $@
  def update
    if @fin_combat != true
      update_block
    else
#  Si c'est la fin du combat
      @help_window.update
      @message_window.update
      for i in 0...@heros_window.size
        @heros_window[i].update
      end
      if @actors_lvl_up != []
      @actor_window.update
      @actor_window2.update  if @actors_lvl_up[@num_passage][3].size > 0 # if @heros_window[@num_passage].get_new_skills.size > 0
      if Input.trigger?(Input::C)
        @num_passage += 1
        @actor_window.dispose
        @actor_window2.visible = false if @actor_window2 != nil
        if @num_passage + 1  > @actors_lvl_up.size
          Input.update
          @actors_lvl_up = []
        end # fin @num_passage
        if @actors_lvl_up != []
          RPG::SE.new(Blockade::Config_Report::Lvl_up_sound, Blockade::Config_Report::Lvl_up_volume, Blockade::Config_Report::Lvl_up_tempo).play
          @actor_window = Carac_Window.new(@actors_lvl_up[@num_passage])
          @actor_window2 = Skills_Window.new(@actors_lvl_up[@num_passage])  if @actors_lvl_up[@num_passage][3].size >0    # if @heros_window[@num_passage].get_new_skills.size > 0
      end # fin @actors_lvl_up
    end # fin input
  else # si pas de lvl up
  end
# Si on appuye sur Entrée
  if Input.trigger?(Input::C) and @actors_lvl_up == []
    @help_window.dispose
    for i in 0...@heros_window.size
      @heros_window[i].dispose
    end
    @gold_exp_window.dispose
    @butin_window.dispose
    if $BTEST
      $scene = nil
    else
    Graphics.fadeout(30)
    battle_end(0)
  suppr_variables
  end
 end
end
end
 
#--------------------------------------------------------------------------
# * Reinitialise les variables
#--------------------------------------------------------------------------
def suppr_variables
    @fin_combat = false
    @actors_lvl_up = []
  end
end
 
#==============================================================================
# ** Window_Help_Combat
#------------------------------------------------------------------------------
#  This window shows skill and item explanations along with actor status.
#==============================================================================
class Window_Help_Combat < Window_Base
  #--------------------------------------------------------------------------
  # * Object Initialization
  #--------------------------------------------------------------------------
  def initialize
    super(0, 0, 544, WLH + 32)
  end
  #--------------------------------------------------------------------------
  # * Set Text
  #  text  : character string displayed in window
  #  align : alignment (0..flush left, 1..center, 2..flush right)
  #--------------------------------------------------------------------------
  def set_text(text1, align1,text2,align2)
    if text1 != @text1 or align1 != @align1 or text2 != @text2 or align2 != @align2
      self.contents.clear
      self.contents.font.color = normal_color
      self.contents.draw_text(4, 0, self.width - 40, WLH, text1, align1)
      self.contents.draw_text(4, 0, self.width - 40, WLH, text2, align2)
      @text1 = text1 ; @align = align2
      @text2 = text2 ; @align2 = align2
    end 
  end
end

 #==============================================================================
# ** Skills_Window
#------------------------------------------------------------------------------
#  Affiche les sorts
#==============================================================================
class Skills_Window < Window_Base
  def initialize(actor_info)
    @new_skills = actor_info[3]
    super(300,58,244,230)
    afficher_sorts
  end
 
  #--------------------------------------------------------------------------
  # * Affiche les nouveaux sorts
  #--------------------------------------------------------------------------
  def afficher_sorts
    self.contents.font.color = text_color(Blockade::Config_Report::Couleur_new_skill)
    self.contents.draw_text(25,0, 200, WLH, Blockade::Config_Report::Texte_new_skill)
    draw_icon(Blockade::Config_Report::Icone_new_skill,0,0)
    y = 25
    for skills in @new_skills
    draw_item_name(skills,0,y)
    y += 25
    end
  end
end

 #==============================================================================
# ** Carac_Window
#------------------------------------------------------------------------------
#  Affiche les caractérisqtiques
#==============================================================================
class Carac_Window < Window_Base
  def initialize(actor)
    @actor = actor[0]
    @old_carac = actor[1]
    @new_carac = actor[2]
    @new_skills = actor[3]
    x = 100
    x = 0 if @new_skills.size > 0
    super(x,58,300,230)
  afficher_info_actor
  afficher_icone
  afficher_carac
 end
 
  #--------------------------------------------------------------------------
  # * Affiche le nom et le niveau du héros
  #--------------------------------------------------------------------------
def afficher_info_actor
  draw_character(@actor.character_name, @actor.character_index, 20, 40)
  self.contents.draw_text(40,0, 200, WLH, @actor.name)
  self.contents.draw_text(40,20,200,WLH,Blockade::Config_Report::Lvl + @old_carac[0].to_s + " > " +
  Blockade::Config_Report::Lvl + @new_carac[0].to_s)
end

  #--------------------------------------------------------------------------
  # * Affiche les icones
  #--------------------------------------------------------------------------
def afficher_icone
  draw_icon(Blockade::Config_Report::Icone_hp,0,50)
  draw_icon(Blockade::Config_Report::Icone_mp ,0,75)
  draw_icon(Blockade::Config_Report::Icone_atk ,0,100)
  draw_icon(Blockade::Config_Report::Icone_def,0,125)
  draw_icon(Blockade::Config_Report::Icone_int,0,150)
  draw_icon(Blockade::Config_Report::Icone_agi,0,175)
end

  #--------------------------------------------------------------------------
  # * Affiche les caractéristiques
  #--------------------------------------------------------------------------
  def afficher_carac
    self.contents.font.color = text_color(Blockade::Config_Report::Couleur_nom_carac)
    self.contents.draw_text(25,50, 150, WLH,  Blockade::Config_Report::Texte_hp)
    self.contents.draw_text(25,75, 150, WLH,  Blockade::Config_Report::Texte_mp)
    self.contents.draw_text(25,100, 150, WLH,  Blockade::Config_Report::Texte_atk)
    self.contents.draw_text(25,125, 150, WLH,  Blockade::Config_Report::Texte_def)
    self.contents.draw_text(25,150, 150, WLH,  Blockade::Config_Report::Texte_int)
    self.contents.draw_text(25,175, 150, WLH,  Blockade::Config_Report::Texte_agi)
    self.contents.font.color = normal_color
    y = 50
    for i in 1...@new_carac.size
      self.contents.draw_text(150,y, 105, WLH, @old_carac[i],0)
      self.contents.draw_text(150,y, 110, WLH, "> ",1)
      self.contents.font.color =  power_up_color if @old_carac[i] < @new_carac[i]
      self.contents.font.color.alpha = 128 if @old_carac[i] == @new_carac[i]
      self.contents.draw_text(150,y, 105, WLH, @new_carac[i],2)
      self.contents.font.color.alpha = 255
      self.contents.font.color = normal_color
      y +=25
    end
  end
end

 #==============================================================================
# ** Gold_Exp_Window
#------------------------------------------------------------------------------
#  Affiche l'argent et l'exp obtenus
#==============================================================================
class Gold_Exp_Window < Window_Base
  def initialize(gold,exp,ap)
    ap = $game_variables[MAT::ID_AP]
   
   
    super(0,350,200,65)
    self.contents.draw_text(0,-6,200,WLH,Blockade::Config_Report::Exp + exp.to_s)
    self.contents.draw_text(100,-6,200,WLH,Blockade::Config_Report::Ap  + ap.to_s)
    self.contents.draw_text(0,14,200,WLH,Blockade::Config_Report::Gold + gold.to_s)
  end
end

#==============================================================================
# ** Heros_Window
#------------------------------------------------------------------------------
#  Affiche les informations d'exp sur les héros
#==============================================================================
class Heros_Window < Window_Base
  def initialize(actor,y,exp)
    super(0,y,200,75)
    @actor = actor
    @exp = exp
    afficher_info
  end
 
#--------------------------------------------------------------------------
# * Affiche les informations
#--------------------------------------------------------------------------
  def afficher_info
    @level_up = false
    last_lvl  = @actor.level
    last_hp =  @actor.maxhp
    last_mp = @actor.maxmp
    last_atk =  @actor.atk
    last_def = @actor.def
    last_spi = @actor.spi
    last_agi = @actor.agi
    last_skill = @actor.skills
    @actor.gain_exp(@exp,false)
    if @actor.level > last_lvl
      @level_up = true
      @old_carac = [last_lvl,last_hp,last_mp, last_atk, last_def, last_spi, last_agi]
      @new_carac =[@actor.level, @actor.maxhp,@actor.maxmp,@actor.atk,@actor.def,@actor.spi,@actor.agi]
      @new_skills = @actor.skills - last_skill
    end
    draw_character(@actor.character_name, @actor.character_index, 20, 40)
    draw_actor_exp_meter(@actor,40,20)
    self.contents.draw_text(40,0, 60, WLH, @actor.name)
    self.contents.draw_text(110,0,60,WLH,Blockade::Config_Report::Lvl + @actor.level.to_s)
  end
 
 #--------------------------------------------------------------------------
# * Renvoie les anciennes caractérisques
#--------------------------------------------------------------------------   
  def get_old_carac
    return @old_carac
  end
 
#--------------------------------------------------------------------------
# * Renvoie les nouvelles caractérisques
#--------------------------------------------------------------------------
  def get_new_carac
    return @new_carac
  end
 
#--------------------------------------------------------------------------
# * Renvoie les nouveaux sorts
#--------------------------------------------------------------------------
  def get_new_skills
    if @new_skills.size > 0
    return @new_skills
  else
    return []
    end
  end
 #--------------------------------------------------------------------------
# * Determine si le heros a pris un ou plusieurs niveaux
#--------------------------------------------------------------------------
  def level_up
    return @level_up
  end
#--------------------------------------------------------------------------
# * Couleur 1 de la barre
#--------------------------------------------------------------------------
  def exp_gauge_color1
    return text_color(30)
  end
     
#--------------------------------------------------------------------------
# * Couleur 1 de la barre
#--------------------------------------------------------------------------
  def exp_gauge_color2
    return text_color(31)
  end
 
#--------------------------------------------------------------------------
# * Dessine la barre d'exp
#-------------------------------------------------------------------------
  def draw_actor_exp_meter(actor, x, y, width = 100)
    if actor.next_exp != 0
      exp = actor.now_exp
    else
      exp = 1
    end
      gw = width * exp / [actor.next_exp, 1].max
      gc1 = exp_gauge_color1
      gc2 = exp_gauge_color2
      self.contents.fill_rect(x, y + WLH - 8, width, 6, gauge_back_color)
      self.contents.gradient_fill_rect(x, y + WLH - 8, gw, 6, gc1, gc2)
      self.contents.font.color = system_color
      self.contents.draw_text(x, y, 30, WLH, "Exp")
      self.contents.font.color = normal_color
      xr = x + width
      self.contents.draw_text(xr - 60, y, 60, WLH,  actor.next_rest_exp_s, 2)
    end
  end

#==============================================================================
# ** Drop_Window
#------------------------------------------------------------------------------
#  Affiche les objets obtenus
#==============================================================================
class Drop_Window < Window_Base
  def initialize(drop)
      super(200,55,344,360)
      @drop = drop
      if @drop != []
        trier_drop
        regrouper
        afficher_drop
        donner_drop
      else
        afficher_mess
      end
    end
   
#--------------------------------------------------------------------------
# * Trie le drop en fonction du type d'objet
#-------------------------------------------------------------------------
  def trier_drop
    @armes = []
    @armures =  []
    @items = []
    for item in @drop
      if item.is_a?(RPG::Item)
        @items.push(item)
      end
      if item.is_a?(RPG::Armor)
        @armures.push(item)
      end
      if item.is_a?(RPG::Weapon)
        @armes.push(item)
      end
    end
  end
   
#--------------------------------------------------------------------------
# * Regroupe les objets par nombre 
#-------------------------------------------------------------------------
  def regrouper
#-------------------------------------------------------
#  Pour les objets 
#------------------------------------------------------
    if @items != []
      @items_unique = @items.uniq
      @regroupement_item = {}
      for item in @items_unique
        @regroupement_item[item] = 0
      end
      for item in @items
        if @regroupement_item.include?(item)
          @regroupement_item[item] += 1
        end
      end
    end
   
#-------------------------------------------------------
#  Pour les armures
#------------------------------------------------------
    if @armures != []
      @armure_unique = @armures.uniq
      @regroupement_armures = {}
      for armure in @armure_unique
        @regroupement_armures[armure] = 0
      end
      for armure in @armures
        if @regroupement_armures.include?(armure)
          @regroupement_armures[armure] += 1
        end
      end
    end
   
#-------------------------------------------------------
#  Pour les armes
#------------------------------------------------------
    if @armes != []
      @armes_unique = @armes.uniq
      @regroupement_armes = {}
      for arme in @armes_unique
        @regroupement_armes[arme] = 0
      end
      for arme in @armes
        if @regroupement_armes.include?(arme)
          @regroupement_armes[arme] += 1
        end
      end
    end
  end

#--------------------------------------------------------------------------
# * Affiche les objets
#-------------------------------------------------------------------------
  def afficher_drop
    y=0 # Initialisation de la coordonée y
#-------------------------------------------------------
#  Pour les objets 
#------------------------------------------------------
    if @items != []
      self.contents.draw_text(0,y,200,WLH,Blockade::Config_Report::Drop_objets)
      y += 25
      for item in @regroupement_item
        draw_icon(item[0].icon_index, 0, y)
        if item[1] > 1
        quantite = "  x" + item[1].to_s
        else
          quantite = ""
        end
        self.contents.draw_text(24, y, 172, WLH, item[0].name + quantite)
      y+=25
    end
  end
 
  y += 5 if @items.nil? == false # Si les objets on été affiché augmenter y de 5
 
#-------------------------------------------------------
#  Pour les armures
#------------------------------------------------------
  if @armures != []
      self.contents.draw_text(0,y,200,WLH,Blockade::Config_Report::Drop_armures)
      y += 25
    for armure in @regroupement_armures
      draw_icon(armure[0].icon_index, 0, y)
        if armure[1] > 1
        quantite = "  x" + armure[1].to_s
        else
          quantite = ""
        end
        self.contents.draw_text(24, y, 172, WLH, armure[0].name + quantite)
      y +=25
    end
  end
 
  y += 5 if @armures.nil? == false # Si les armures on été affichées augmenter y de 5
 
#-------------------------------------------------------
#  Pour les armes
#------------------------------------------------------
  if @armes != []
      self.contents.draw_text(0,y,200,WLH,Blockade::Config_Report::Drop_armes)
      y += 25
    for arme in @regroupement_armes
    draw_icon(arme[0].icon_index, 0, y)
        if arme[1] > 1
        quantite = "  x" + arme[1].to_s
        else
          quantite = ""
        end
        self.contents.draw_text(24, y, 172, WLH, arme[0].name + quantite)
      y +=25
    end
  end 
end

#-------------------------------------------------------
#  Afficher un message si pas de drop
#------------------------------------------------------
  def afficher_mess
    self.contents.draw_text(0,0,360,WLH,Blockade::Config_Report::Drop_nil)
  end
 
#-------------------------------------------------------
#  Donne le drop à l'équipe
#------------------------------------------------------
  def donner_drop
    for item in @drop
      $game_party.gain_item(item, 1)
    end
  end
end

#==============================================================================
# ** Game_Actor
#------------------------------------------------------------------------------
#  Gére les données système sur les héros.
#==============================================================================
class Game_Actor < Game_Battler
  #--------------------------------------------------------------------------
  # * Calcul de l'exp accumulée
  #--------------------------------------------------------------------------
    def now_exp
        return @exp - @exp_list[@level]
      end
     
  #--------------------------------------------------------------------------
  # * Calcul de l'exp a avoir pour gagner un niveau
  #-------------------------------------------------------------------------- 
    def next_exp
      return @exp_list[@level+1] > 0 ? @exp_list[@level+1] - @exp_list[@level] : 0
    end
  end
Revenir en haut Aller en bas
Blockade
Ex-Admin Cruelle
Ex-Admin Cruelle
Blockade


Féminin Age : 32
Inscrit le : 03/07/2008
Messages : 2441

[VX] Compatibilité Matéria et rapport de combat V3 Empty
MessageSujet: Re: [VX] Compatibilité Matéria et rapport de combat V3   [VX] Compatibilité Matéria et rapport de combat V3 Icon_minitimeLun 22 Mar 2010 - 16:53

Sympa =) Mais tu peux le faire sous forme d'add-on à placer en dessous du rapport :
Code:
 
#===============================================================
# ● [VX] ◦ [ADD-ON Rapport de combat V3] Afficher le gain d'AP
#--------------------------------------------------------------
# ◦ Par Doddy, script original de Blockade
# ◦ http://rpg-maker-vx.bbactif.com/forum.htm
# ◦ Crée le<insert_date_here>
# ◦ Version 1.0
#--------------------------------------------------------------
# Description de l'ADD-ON :
#
# ===============================================================
module Blockade
  module Config_Report
#===============================================================
#  Blockade::Config_Report Début du Module de configuration
#===============================================================
#-------------------------------------------
# >> Configuration du texte
#--------------------------------------------
# > Expérience (matéria)
Ap = "Ap : "
end
end

#==============================================================================
# ** Gold_Exp_Window
#------------------------------------------------------------------------------
#  Affiche l'argent et l'exp obtenus
#==============================================================================
class Gold_Exp_Window < Window_Base
  def initialize(gold,exp,ap)
    ap = $game_variables[MAT::ID_AP]
    super(0,350,200,65)
    self.contents.draw_text(0,-6,200,WLH,Blockade::Config_Report::Exp + exp.to_s)
    self.contents.draw_text(100,-6,200,WLH,Blockade::Config_Report::Ap  + ap.to_s)
    self.contents.draw_text(0,14,200,WLH,Blockade::Config_Report::Gold + gold.to_s)
  end
end
Revenir en haut Aller en bas
Doddy
Citadin Lv.7
Citadin Lv.7
Doddy


Masculin Age : 38
Inscrit le : 12/02/2010
Messages : 204

[VX] Compatibilité Matéria et rapport de combat V3 Empty
MessageSujet: Re: [VX] Compatibilité Matéria et rapport de combat V3   [VX] Compatibilité Matéria et rapport de combat V3 Icon_minitimeLun 22 Mar 2010 - 17:27

C'est pas faux c'est même plus simple effectivement je n'y avais pas pensé, merci la prochaine fois je me prendrais moins la tête ^^
Revenir en haut Aller en bas
cagt3000
Citadin Lv.7
Citadin Lv.7
cagt3000


Masculin Age : 123
Inscrit le : 08/04/2010
Messages : 218

[VX] Compatibilité Matéria et rapport de combat V3 Empty
MessageSujet: Re: [VX] Compatibilité Matéria et rapport de combat V3   [VX] Compatibilité Matéria et rapport de combat V3 Icon_minitimeLun 18 Avr 2011 - 21:47

Coucou,

J'ai un petit probleme : Le Rapport de Combat ne marche pas ! Des que le combat est finis, voici ce qu'il m'arrive...

Spoiler:

Et voici la ligne en question...

Spoiler:

J'utilise ces scripts (je les cites dans l'ordre que je les ais places, c'est a dire de haut en bas)...

- SBS 1 -
- SBS 2 l Ces 4 scripts sont les scripts principaux du SBS
- SBS 3 l
- SBS 4 -

- Systeme materia par SephirothSpawn (version XP) et Atoa (version VX)

- ATB l Ce sont les 2 scripts principaux pour le systeme d'ATB
- ATB 2 l

- Rapport de combat V3 de Blocky Smile
- ADD-ON de Doddy pour afficher le gain d'AP

Ce systeme de materia est sur le forum, voici le lien...

https://rpg-maker-vx.bbactif.com/t2957-systeme-de-materia

Merci !
Revenir en haut Aller en bas
http://www.site3000.weebly.com
Doddy
Citadin Lv.7
Citadin Lv.7
Doddy


Masculin Age : 38
Inscrit le : 12/02/2010
Messages : 204

[VX] Compatibilité Matéria et rapport de combat V3 Empty
MessageSujet: Re: [VX] Compatibilité Matéria et rapport de combat V3   [VX] Compatibilité Matéria et rapport de combat V3 Icon_minitimeLun 18 Avr 2011 - 23:04

Tu n'avais cas prendre le script que j'ai posté ca fonctionne.

Petite aide tout de même :

après @gold,@exp ajoute @ap

ca devrait donner ceci:



Code:
@gold_exp_window = Gold_Exp_Window.new(@gold,@exp,@ap)

Ps: je le dit encore le système de matéria a beaucoup de bug sur plusieurs matéria. Qui sont très difficile à résoudre et aucun scripteur ne veut se pencher sur le prob (trop prise de tête)
Revenir en haut Aller en bas
Contenu sponsorisé




[VX] Compatibilité Matéria et rapport de combat V3 Empty
MessageSujet: Re: [VX] Compatibilité Matéria et rapport de combat V3   [VX] Compatibilité Matéria et rapport de combat V3 Icon_minitime

Revenir en haut Aller en bas
 

[VX] Compatibilité Matéria et rapport de combat V3

Voir le sujet précédent Voir le sujet suivant Revenir en haut 
Page 1 sur 1

 Sujets similaires

-
» [Résolu] Rapport de combat V3 + Système de matéria
» Rapport de combat
» Rapport de combat FF VII
» [VX] Rapport de combat
» [VX] Systeme de Materia

Permission de ce forum:Vous ne pouvez pas répondre aux sujets dans ce forum
RPG Maker VX :: Entraide :: Scripts :: Scripts VX - RGSS2 :: Divers-
Créer un forum | ©phpBB | Forum gratuit d'entraide | Signaler un abus | Cookies | Forum gratuit