Partagez
Aller en bas
Anonymous
Invité
Invité

[Résolu] Ammélioration script vie sur la map Empty [Résolu] Ammélioration script vie sur la map

le Mar 25 Mai 2010 - 19:47
Bonjour à tous

Nature du problème : Je souhaiterai modifier le script suivant : http://www.rpgmakervx-fr.com/map-f184/vie-sur-la-map-t657.htm

Il me semble que le script présent permet de n'afficher les caractéristiques que du joueur n°1

Modif à apporter : Déplacer la barre de vie, HP, en bas à gauche de l'écran et non en haut comme sur le screen.
Voir l'état du perso suivant en appuyant sur R, du perso précédent en appuyant sur L, cela SANS MODIFIER l'ordre de l'équipe

D'avance, mercii,
Hamuti alias Jésous_


Dernière édition par Jésous le Mer 26 Mai 2010 - 13:50, édité 1 fois
Skillo
Skillo
Staffeux retraité

Nombre de messages : 526
Age : 30
Localisation : Rennes
Distinction : J'aime ce gars :P
(by Coco')
Scripteur apprenti, futur Berka !
(par Tretian)
Membre anonyme de la communauté, caché derrière son PC
(???)
super prof de script
[Dudu']
Résident permanent de la Chat Box
[Autoproclamé]
Adepte du XDDD [Yak' Very Happy]
Fanatique hystérique de Raymond le français [Un connu]
Date d'inscription : 19/01/2008

[Résolu] Ammélioration script vie sur la map Empty Re: [Résolu] Ammélioration script vie sur la map

le Mer 26 Mai 2010 - 3:30
Tiens mon petit Hamu' (au fait la position était déjà dedans mais bon)
C'est un script que j'avais déjà modifié parce qu'il fait planter ton jeu si tu sauves que t'appuies sur F12 et que tu charges ta partie.
Du coup vu que c'était une modif pour moi j'ai changer l'apparence des bars mais si tu veux les ancienne tu me le dis.

Spoiler:

Code:


#=============================================================
# *** Silent's HUD Modifié par Skillo
# ** Version - 1.1 RMVX
# * Fecha - 28/01/08 DD/MM/YY Version 1.1 -> 07/02/08
#----------------------------------------------------------------------------#
# * Descripcion - Simple HUD que muestra el HP, mp, EXP y nombre del jugador
# principal en el mapa, ideal para ARPGs
#
# * Placer le script au dessus du script Main.
#
# * lalala
#
# >*< 0; Haut gauche 1; Haut droite 2; Bas gauche 3; Bas droite
#============================================================================# 

#===============================================================
#                         
#                www.rpgmakervx-fr.com                                         
#     
#===============================================================
module HUD

LUGAR = 1 # Position des barres >*<
# 0: Haut gauche
# 1: Bas gauche
# 2: Haut droite
# 3: Bas droite

HUD_BAR_HP = true # Montrer barre HP

HUD_BAR_MP = true# Montrer Barre MP

HUD_BAR_EP = true # Montrer barre  EXP

ON_OFF_SWITCH = 1 # Numéros interrupteur

TRUE_LIFE =  true

HUD_BAR_VAR1 = 1

HUD_BAR_VAR2 = 24 #ID de la variable Hp

end

#==============================================================================
# ** Game_Party
#------------------------------------------------------------------------------
#  This class handles the party. It includes information on amount of gold
# and items. The instance of this class is referenced by $game_party.
#==============================================================================

class Game_Party < Game_Unit

  #--------------------------------------------------------------------------
  # * Public Instance Variables
  #--------------------------------------------------------------------------
  attr_accessor :hud_actor_index        # for cursor memory: Actor

  alias skillo_initialize initialize
  #--------------------------------------------------------------------------
  # * Object Initialization
  #--------------------------------------------------------------------------
  def initialize
    skillo_initialize
    @hud_actor_index = 0
  end
end

#============================================================================#
# ** Window_HUD
# - Ventana donde se muestra la info en el mapa
#============================================================================#
class Window_HUD < Window_Base
#--------------------------------------------------------------------------#
# * Metodo Initialize
#--------------------------------------------------------------------------#
def initialize
  super(0, 0, 280, 160)
    self.contents = Bitmap.new(width - 32, height - 32)
    self.opacity = 0
  refresh
end
#--------------------------------------------------------------------------#
# * Refresh
#--------------------------------------------------------------------------#
def refresh
 if $game_switches[HUD::ON_OFF_SWITCH]
  actor = $game_party.members[$game_party.hud_actor_index]
  self.contents.clear
  self.contents.font.color = system_color
  self.contents.draw_text(0, 0, 100, 22, actor.name, 0)
  if HUD::TRUE_LIFE == true
    draw_actor_hp(actor, 0, 20) if HUD::HUD_BAR_HP
  else
    draw_actor_jauge(actor, "HP", 0, 20) if HUD::HUD_BAR_HP
  end
  draw_actor_mp(actor, 0, 44) if HUD::HUD_BAR_MP
  draw_actor_xp(actor, 0, 68) if HUD::HUD_BAR_EP
  end
 end
end

#============================================================================#
# ** Scene_Map alias
# - alias a Scene_Map con metodos del HUD
#============================================================================#
class Scene_Map
  alias hud_start start
  alias hud_update update
  alias hud_terminate terminate
#--------------------------------------------------------------------------#
# * Metodo Principal
#--------------------------------------------------------------------------#
 def start
  if $game_switches[HUD::ON_OFF_SWITCH]
    @lalalav = $game_variables[HUD::HUD_BAR_VAR2]
    @lalalah = $game_party.members[$game_party.hud_actor_index].hp
    @lalalas = $game_party.members[$game_party.hud_actor_index].mp
    @lalalae = $game_party.members[$game_party.hud_actor_index].exp
  end
    @hud = Window_HUD.new
    case HUD::LUGAR
      when 0
        @hud.y = 0
        @hud.x = 0
      when 1
        @hud.y = 280
        @hud.x = 0
      when 2
        @hud.y = 0
        @hud.x = 340
      when 3
        @hud.y = 280
        @hud.x = 340
      end
    @hud.visible = false
  hud_start
end
#--------------------------------------------------------------------------#
# * Update
#--------------------------------------------------------------------------#
 def update
  if $game_switches[HUD::ON_OFF_SWITCH] == true
    @hud.visible = true
    $game_map.refresh
  else
    @hud.visible = false
    $game_map.refresh
  end
  if $game_switches[HUD::ON_OFF_SWITCH] == true
    if HUD::TRUE_LIFE == true
      if $game_party.members[$game_party.hud_actor_index].hp != @lalalah and HUD::HUD_BAR_HP == true
        @hud.refresh
        @lalalah = $game_party.members[$game_party.hud_actor_index].hp
        @hud.update
      end
    else
      if $game_variables[HUD::HUD_BAR_VAR2] >=0
        if $game_variables[HUD::HUD_BAR_VAR2] != @lalalav and HUD::HUD_BAR_HP == true
          @hud.refresh
          @lalalav = $game_variables[HUD::HUD_BAR_VAR2]
          @hud.update
        end
      else
        if $game_variables[HUD::HUD_BAR_VAR2] != @lalalav and HUD::HUD_BAR_HP == true
          $game_variables[HUD::HUD_BAR_VAR2]=0
          @hud.refresh
          @lalalav = $game_variables[HUD::HUD_BAR_VAR2]
          @hud.update
        end
      end
    end
    if $game_party.members[$game_party.hud_actor_index].mp != @lalalas and HUD::HUD_BAR_MP == true
      @hud.refresh
      @lalalas = $game_party.members[$game_party.hud_actor_index].mp
      @hud.update
    end
    if $game_party.members[$game_party.hud_actor_index].exp != @lalalae and HUD::HUD_BAR_EP == true
      @hud.refresh
      @lalalae = $game_party.members[$game_party.hud_actor_index].exp
      @hud.update
    end
    if Input.trigger?(Input::R)
      if $game_party.hud_actor_index < $game_party.members.size - 1
        $game_party.hud_actor_index += 1
      else
        $game_party.hud_actor_index = 0
      end
      @hud.refresh
      @hud.update
    elsif Input.trigger?(Input::L)
      if $game_party.hud_actor_index > 0
        $game_party.hud_actor_index -= 1
      else
        $game_party.hud_actor_index = $game_party.members.size - 1
      end
      @hud.refresh
      @hud.update
    end
  end
  hud_update
end
#--------------------------------------------------------------------------#
# * Terminate
#--------------------------------------------------------------------------#
 def terminate
    @hud.dispose
    hud_terminate
 end
end

#==============================================================================
# ** Game_Actor
#==============================================================================
class Game_Actor < Game_Battler
 
  def now_exp
    return @exp - @exp_list[@level]
  end

  def next_exp
    return @exp_list[@level+1] > 0 ? @exp_list[@level+1] - @exp_list[@level] : 0
  end
end

#==============================================================================
# ** Window_Base
#------------------------------------------------------------------------------
#  This is a superclass of all windows in the game.
#==============================================================================

class Window_Base < Window
  #--------------------------------------------------------------------------
  # * Get XP Gauge Color 1
  #--------------------------------------------------------------------------
  def xp_gauge_color1
    return text_color(30)
  end
  #--------------------------------------------------------------------------
  # * Get XP Gauge Color 2
  #--------------------------------------------------------------------------
  def xp_gauge_color2
    return text_color(31)
  end
  #--------------------------------------------------------------------------
  # * Get HP Text Color
  #    actor : actor
  #--------------------------------------------------------------------------
  def xp_color(actor)
    return knockout_color if actor.next_rest_exp_s == 0
    return crisis_color if actor.next_rest_exp_s < actor.next_exp_s / 4
    return normal_color
  end
 
  #--------------------------------------------------------------------------
  # * Draw XP
  #    actor : actor
  #    x    : draw spot x-coordinate
  #    y    : draw spot y-coordinate
  #    width : Width
  #--------------------------------------------------------------------------
  def draw_actor_xp(actor, x, y, width = 120)
      if actor.next_exp != 0
        exp = actor.now_exp
      else
        exp = 1
      end
      gw = width * exp / [actor.next_exp, 1].max
      gc1 = xp_gauge_color1
      gc2 = xp_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, "XP")
      self.contents.font.color = normal_color
      xr = x + width
      if width < 120
        self.contents.draw_text(xr - 44, y, 44, WLH, (actor.next_exp_s-actor.next_rest_exp_s), 2)
      else
        self.contents.draw_text(xr - 99, y, 44, WLH, (actor.next_exp_s-actor.next_rest_exp_s), 2)
        self.contents.font.color = normal_color
        self.contents.draw_text(xr - 55, y, 11, WLH, "/", 2)
        self.contents.draw_text(xr - 44, y, 44, WLH, actor.next_exp_s, 2)
      end
  end
  #--------------------------------------------------------------------------
  # * Draw HP gauge
  #    actor : actor
  #    x    : draw spot x-coordinate
  #    y    : draw spot y-coordinate
  #    width : Width
  #--------------------------------------------------------------------------
  def draw_actor_xp_gauge(actor, x, y, width = 120)
    gw = width * (actor.next_exp_s- actor.next_rest_exp_s)
    gc1 = xp_gauge_color1
    gc2 = xp_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)
  end
 
 
  #--------------------------------------------------------------------------
  # * Draw Variable
  #    actor : actor
  #    x    : draw spot x-coordinate
  #    y    : draw spot y-coordinate
  #    width : Width
  #--------------------------------------------------------------------------
  def draw_actor_jauge(actor, vocab, x, y, width = 120)
    draw_actor_gauge(actor, x, y, width)
    self.contents.font.color = system_color
    self.contents.draw_text(x, y, 30, WLH, vocab)
    self.contents.font.color = hp_color(actor)
    last_font_size = self.contents.font.size
    xr = x + width
    if width < 120
      self.contents.draw_text(xr - 44, y, 44, WLH, $game_variables[HUD::HUD_BAR_VAR2] , 2)
    else
      self.contents.draw_text(xr - 99, y, 44, WLH, $game_variables[HUD::HUD_BAR_VAR2] , 2)
      self.contents.font.color = normal_color
      self.contents.draw_text(xr - 55, y, 11, WLH, "/", 2)
      self.contents.draw_text(xr - 44, y, 44, WLH, HUD::HUD_BAR_VAR1, 2)
    end
  end
  #--------------------------------------------------------------------------
  # * Draw HP gauge
  #    actor : actor
  #    x    : draw spot x-coordinate
  #    y    : draw spot y-coordinate
  #    width : Width
  #--------------------------------------------------------------------------
  def draw_actor_gauge(actor, x, y, width = 120)
    gw = width * $game_variables[HUD::HUD_BAR_VAR2] / HUD::HUD_BAR_VAR1
    gc1 = hp_gauge_color1
    gc2 = hp_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)
  end 
end
Anonymous
Invité
Invité

[Résolu] Ammélioration script vie sur la map Empty Re: [Résolu] Ammélioration script vie sur la map

le Mer 26 Mai 2010 - 13:49
Rien à dire , c'est parfait Wink

Mercii beaucoup mon p'tit Skillo

[Résolu]
Contenu sponsorisé

[Résolu] Ammélioration script vie sur la map Empty Re: [Résolu] Ammélioration script vie sur la map

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