RPG Fusion
Vous souhaitez réagir à ce message ? Créez un compte en quelques clics ou connectez-vous pour continuer.



 
AccueilPortailRechercherDernières imagesS'enregistrerConnexion
-29%
Le deal à ne pas rater :
PC portable – MEDION 15,6″ FHD Intel i7 – 16 Go / 512Go (CDAV : ...
499.99 € 699.99 €
Voir le deal

 

 Image dans message de chara

Aller en bas 
3 participants
AuteurMessage
Omega Arma
Jongleur Itinérant
Jongleur Itinérant
Omega Arma


Masculin
Nombre de messages : 67
Age : 33
Projet(s) en cours : FF : Heaven's & Darkness's Processus (experimental)
Niveau Rpg Maker : Novice mais bon mappeur
Jeux Préférés : Gears of War, Final Fantasy, Zelda, etc...
Date d'inscription : 23/08/2007

Image dans message de chara Empty
MessageSujet: Image dans message de chara   Image dans message de chara EmptyDim 02 Sep 2007, 11:45

Bonjour, j'aurai aimé savoir comment met-on une image de personnage dans ses messages de conversation, merci d'avance Wink
Revenir en haut Aller en bas
http://omniborg.blog.jeuxvideo.com
superfabien
Jongleur Itinérant
Jongleur Itinérant
superfabien


Masculin
Nombre de messages : 67
Age : 32
Projet(s) en cours : Aurora Sky
Niveau Rpg Maker : Assez bon
Date d'inscription : 18/08/2007

Image dans message de chara Empty
MessageSujet: Re: Image dans message de chara   Image dans message de chara EmptyDim 02 Sep 2007, 12:03

Bonjour, tu dois utiliser le script message avancé et tu dois rentrer cette commande dans un nouveau message

\f[FaceName]

FaceName est le nom de l'image graphique qui doit ce trouver dans le répertoire "Graphics\Pictures" dans votre projet de RPG Maker XP. L'image doit être en PNG et un size de 96X96 pixels. Remplacez seulement "FaceName" par le nom de votre image

voilà en espérant t'avoir aidé Wink


Dernière édition par le Sam 08 Sep 2007, 21:57, édité 1 fois
Revenir en haut Aller en bas
Omega Arma
Jongleur Itinérant
Jongleur Itinérant
Omega Arma


Masculin
Nombre de messages : 67
Age : 33
Projet(s) en cours : FF : Heaven's & Darkness's Processus (experimental)
Niveau Rpg Maker : Novice mais bon mappeur
Jeux Préférés : Gears of War, Final Fantasy, Zelda, etc...
Date d'inscription : 23/08/2007

Image dans message de chara Empty
MessageSujet: Re: Image dans message de chara   Image dans message de chara EmptySam 08 Sep 2007, 10:27

merci seb mais sa ne marche pas, j'ai respecté toutes tes consignes et l'image n'apparait pas Sad
Revenir en haut Aller en bas
http://omniborg.blog.jeuxvideo.com
Don Estebahn
Maître du Savoir
Maître du Savoir
Don Estebahn


Masculin
Nombre de messages : 2145
Age : 34
Jeux Préférés : Soul Reaver, Morrowind, Way of the Samurai
Date d'inscription : 18/02/2007

Image dans message de chara Empty
MessageSujet: Re: Image dans message de chara   Image dans message de chara EmptySam 08 Sep 2007, 10:33

Dans tes messages, tu mets bien \f[Nom_Image] au tout début du texte?
Revenir en haut Aller en bas
Omega Arma
Jongleur Itinérant
Jongleur Itinérant
Omega Arma


Masculin
Nombre de messages : 67
Age : 33
Projet(s) en cours : FF : Heaven's & Darkness's Processus (experimental)
Niveau Rpg Maker : Novice mais bon mappeur
Jeux Préférés : Gears of War, Final Fantasy, Zelda, etc...
Date d'inscription : 23/08/2007

Image dans message de chara Empty
MessageSujet: Re: Image dans message de chara   Image dans message de chara EmptySam 08 Sep 2007, 10:50

oui, je fais la commande "afficher un message ..." je marque /f[scorpion], donc une des images etant dans le dossier pictures de mon projet, et cela reste inscrit sans afficher d'image
Revenir en haut Aller en bas
http://omniborg.blog.jeuxvideo.com
superfabien
Jongleur Itinérant
Jongleur Itinérant
superfabien


Masculin
Nombre de messages : 67
Age : 32
Projet(s) en cours : Aurora Sky
Niveau Rpg Maker : Assez bon
Date d'inscription : 18/08/2007

Image dans message de chara Empty
MessageSujet: Re: Image dans message de chara   Image dans message de chara EmptySam 08 Sep 2007, 22:01

Il faut bien que tu mete la commande \f[scorpion] avant ton message !

Si ça ne marche toujours pas es que ton image est bien au format .png et es que ça dimension est de 96x96 pixels ??
Revenir en haut Aller en bas
Invité
Invité
Anonymous



Image dans message de chara Empty
MessageSujet: Re: Image dans message de chara   Image dans message de chara EmptyDim 09 Sep 2007, 02:57

Fait attention a la façon tu écrit le \f,

\f[scorpion] et non
/f[scorpion]

si jamais sa marche pas copie et colle sa \f[scorpion].
Revenir en haut Aller en bas
Omega Arma
Jongleur Itinérant
Jongleur Itinérant
Omega Arma


Masculin
Nombre de messages : 67
Age : 33
Projet(s) en cours : FF : Heaven's & Darkness's Processus (experimental)
Niveau Rpg Maker : Novice mais bon mappeur
Jeux Préférés : Gears of War, Final Fantasy, Zelda, etc...
Date d'inscription : 23/08/2007

Image dans message de chara Empty
MessageSujet: Re: Image dans message de chara   Image dans message de chara EmptyDim 09 Sep 2007, 10:10

lol vous me prennez pour un demeurez ou quoi laughing , nan serieux j'ai fait copier coller la commande et sa n'a pas marché, pour l'image est bien il ya affiché 96*96 donc je présume que c'est la bonne taille et pur RMXP je n'utilise que des PNG donc normalement sa devrai fonctionné, je vais retenté

edit : nan sa ne fonctionne pas, est ce que si certains script ou windowskin on ete modifier cela peu influencer sur l'impossiblité d'afficher une image dans un message ?
Revenir en haut Aller en bas
http://omniborg.blog.jeuxvideo.com
Invité
Invité
Anonymous



Image dans message de chara Empty
MessageSujet: Re: Image dans message de chara   Image dans message de chara EmptyLun 10 Sep 2007, 15:18

Omega Arma a écrit:
oui, je fais la commande "afficher un message ..." je marque /f[scorpion], donc une des images etant dans le dossier pictures de mon projet, et cela reste inscrit sans afficher d'image

J'ai vu beaucoup de fois cette erreur. Il faut taper en fait \f[scorpion] comme l'ont dit certains précédemment.
Revenir en haut Aller en bas
Omega Arma
Jongleur Itinérant
Jongleur Itinérant
Omega Arma


Masculin
Nombre de messages : 67
Age : 33
Projet(s) en cours : FF : Heaven's & Darkness's Processus (experimental)
Niveau Rpg Maker : Novice mais bon mappeur
Jeux Préférés : Gears of War, Final Fantasy, Zelda, etc...
Date d'inscription : 23/08/2007

Image dans message de chara Empty
MessageSujet: Re: Image dans message de chara   Image dans message de chara EmptyLun 10 Sep 2007, 20:29

idem sa ne fonctionne pas Sad
Revenir en haut Aller en bas
http://omniborg.blog.jeuxvideo.com
Invité
Invité
Anonymous



Image dans message de chara Empty
MessageSujet: Re: Image dans message de chara   Image dans message de chara EmptyLun 10 Sep 2007, 21:46

Bonsoir !


Je me permets d'intervenir, même si j'ai peur de ne pas trop te faire avancer.

J'utilise un script qui permet le mode lettre par lettre, créé par Slipknot, ça risque d'être le même, mais au cas ou, je vais le poster.



Je demande la tôlérance pour le quadruple post qui n'est fait que par nécéssite, a cause de la limite de caractère :s


Dernière édition par le Lun 10 Sep 2007, 21:56, édité 1 fois
Revenir en haut Aller en bas
Invité
Invité
Anonymous



Image dans message de chara Empty
MessageSujet: Re: Image dans message de chara   Image dans message de chara EmptyLun 10 Sep 2007, 21:50

Code:
#==============================================================================
# ** Letter by Letter Message Window
#------------------------------------------------------------------------------
# Slipknot
# 1.0
# 02.07.06
#------------------------------------------------------------------------------
# Thanks to:
#  - Dubealex, for some of the features.
#  - RPG Advocate, for the hexadecimal color.
#==============================================================================

# Loads the maps' names
$data_map_infos = load_data('Data/MapInfos.rxdata')

class Game_Message
  #--------------------------------------------------------------------------
  # * Public Instance Variables
  #--------------------------------------------------------------------------
  attr_accessor :letter_by_letter, :speed, :can_skip, :height, :font,
    :sound_enable, :sound, :path, :face_rect, :fit, :skin, :nb_skin,
    :nbyo, :opacity
  #--------------------------------------------------------------------------
  # * Object Initialization
  #--------------------------------------------------------------------------
  def initialize
    # Letter by letter mode
    @letter_by_letter = true
    # Lettter by letter mode's speed
    @speed = 1
    # If this option is false, the player can't skip the message
    @can_skip = true
    # Height of each line, used within the fit or above event options
    @height = 40
    # Always resize the message
    @fit = true
    # Font for the mesage text
    @font = $fontface
    # Sound enable
    @sound_enable = false
    # Sound for letter by letter, ['filename', vol]
    @sound = ['032-Switch01', 70]
    # Folder for the message pictures
    @path = 'Graphics/Faces/'
    # Face rect (only the last two numbers are used)
    @face_rect = Rect.new(0, 0, 96, 96)
    # Skin for the message window, nil = default
    @skin = nil
    # Skin for the name box, nil = default
    @nb_skin = nil
    # Name box y offset
    @nbyo = 20
    # Message window's opacity
    @opacity = 150
  end
end

#------------------------------------------------------------------------------
# Begin Game_System Edit
#------------------------------------------------------------------------------
class Game_System
  #--------------------------------------------------------------------------
  # * Public Instance Variables
  #--------------------------------------------------------------------------
  attr_reader :message
  #--------------------------------------------------------------------------
  # * Alias Listing
  #--------------------------------------------------------------------------
  alias slipknot_lblms_initialize initialize
  #--------------------------------------------------------------------------
  # * Load Database
  #--------------------------------------------------------------------------
  def initialize
    slipknot_lblms_initialize
    @message = Game_Message.new
  end
end
#------------------------------------------------------------------------------
# End Game_System Edit
#------------------------------------------------------------------------------

#------------------------------------------------------------------------------
# Begin Spriteset_Map Edit
#------------------------------------------------------------------------------
class Spriteset_Map
  #--------------------------------------------------------------------------
  # * Public Instance Variables
  #--------------------------------------------------------------------------
  attr_reader :character_sprites
end
#------------------------------------------------------------------------------
# End Spriteset_Map Edit
#------------------------------------------------------------------------------

#------------------------------------------------------------------------------
# Begin Window_Message Edit
#------------------------------------------------------------------------------
class Window_Message < Window_Selectable
  #--------------------------------------------------------------------------
  # * Alias Listing
  #--------------------------------------------------------------------------
  alias slipknot_lblms_terminatemessage terminate_message
  #--------------------------------------------------------------------------
  # * Terminate Message
  #--------------------------------------------------------------------------
  def terminate_message
    slipknot_lblms_terminatemessage
    if @name_box && ! @name_box.disposed?
      @name_box.dispose
      @name_box = nil
    end
  end
  #--------------------------------------------------------------------------
  # * Prepare the message window
  #--------------------------------------------------------------------------
  def refresh
    self.opacity = $game_system.message_frame == 0 ? 255 : 0
    self.back_opacity = system.opacity
    unless system.fit
      self.width = 480
      self.height = 160
      windowskin = system.skin ? system.skin : $game_system.windowskin_name
      self.windowskin = RPG::Cache.windowskin(windowskin)
      self.contents = Bitmap.new(448, 128)
    else
      contents.clear
      contents.font.color = normal_color
      contents.font.size = Font.default_size
    end
    contents.font.name = system.font
    @x = @y = @wait_count = indent = 0
    @fit_size = false
    @sound = system.sound_enable
    @start_x = 4
    @cursor_width = [0, 0, 0, 0]
    @x = 8 if $game_temp.choice_start == 0
    return if ! (@text = $game_temp.message_text)
    @text.gsub!(/\\\\/) { "\000" }
    @text.gsub!(/\\[Vv]\[([0-9]+)\]/) { $game_variables[$1.to_i] }
    @text.gsub!('\$') { $game_party.gold.to_s }
    @text.gsub!(/\\[Nn]\[([0-9]+)\]/) do
      $game_actors[$1.to_i] ? $game_actors[$1.to_i].name : ''
    end
    @text.gsub!(/\\[Nn][Pp]\[([\d+])\]/) do
      $game_party.actors[$1.to_i] ? $game_party.actors[$1.to_i].name : ''
    end
    @text.gsub!(/\\[Cc]lass\[(\d+)\]/) do
      $game_actors[$1.to_i] ? $game_actors[$1.to_i].class_name : ''
    end
    @text.gsub!(/\\[Mm]ap/) { $data_map_infos[$game_map.map_id].name }
    if @text.gsub!(/\\[Gg]/, '')
      gold_set = true
    end
    if @text[/\\[Nn]ame/]
      if @text.sub!(/\\[Nn]ame\[(.*?)\]/, '')
        name_text = $1
      elsif @text.sub!(/\\[Nn]ame/, '')
        name_text = $game_map.events[$game_system.map_interpreter.event_id].name
      end
    end
    if @text[/\\[Ff]ace/]
      # Left
      if @text.sub!(/\\[Ff]ace{(.+?)}/, '')
        face, face_name = 1, $1
      # Right
      elsif @text.sub!(/\\[Ff]ace\[(.+?)\]/, '')
        face, face_name = 2, $1
      end
    end
    if @text[/\\[Pp]/]
      if @text.sub!(/\\[Pp]\[([-1,0-9]+)\]/, '')
        event = $1.to_i
      elsif @text.gsub!(/\\[Pp]/, '')
        event = $game_system.map_interpreter.event_id
      end
    end
    @text.gsub!('\$') { $game_party.gold.to_s }
    @text.gsub!(/\\[Cc]\[([0-9A-Fa-f #]+?)\]/) { "\001[#$1]" }
    @text.gsub!(/\\[Cc]/) { "\001[0]" }
    @text.gsub!(/\\[Ii]con{([IiWwAaSs])}\[(\d+)\]/) { change_icon($1, $2.to_i) }
    @text.gsub!(/\\[Ii]con\[(.*?)\]/) { "\002[#$1]" }
    @text.gsub!('\!') { "\003" }
    @text.gsub!('\.') { "\004" }
    @text.gsub!(/\\[Ss]\[([Xx\d]+)\]/) { "\005[#$1]" }
    @text.gsub!(/\\[Bb]/) { "\006" }
    @text.gsub!(/\\[Ii]/) { "\007" }
    @text.gsub!(/\\[Ff]\[(.*?)\]/) { "\010[#$1]" }
    if @fit_size = (event || system.fit)
      lines_size = [0, 0, 0, 0]
      save = @text.clone
      lines = 0
      while (c = @text.slice!(/./m))
        if c == "\n"
          lines += 1
          break if lines == 4
          if lines >= $game_temp.choice_start
            lines_size[lines] += 16
          end
          next
        end
        lines_size[lines] += eval_text(c, true)
      end
    end
    if face
      if @fit_size
        mh = system.height
        fh = system.face_rect.height
        lines = (fh.to_f / mh.to_f).ceil if (lines * mh) < fh
        f_x = face == 2 ? 0 : lines_size.max + 16
        f_y = (lines * mh) <= fh ? 0 : (lines * mh - fh) / 2
        @start_x += system.face_rect.width + 4 if face == 2
        indent += system.face_rect.width + 8
      else
        f_x = face == 2 ? 16 : 336
        f_y = 16
        @start_x += system.face_rect.width + 36 if face == 2
      end
      f_bitmap = RPG::Cache.picture(face_name)
      #indent += system.face_rect.width + 8
    end
    if @fit_size
      @text = save
      self.height = lines * system.height + 32
      self.height += 32 if $game_temp.num_input_variable_id > 0
      self.width = lines_size.max + indent + 40
      windowskin = system.skin ? system.skin : $game_system.windowskin_name
      self.windowskin = RPG::Cache.windowskin(windowskin)
      self.contents = Bitmap.new(self.width - 32, self.height - 32)
      contents.font.name = system.font
    end
    if face
      contents.blt(f_x, f_y, f_bitmap, system.face_rect)
    end
    if ! event
      h2 = self.height / 2
      self.y = $game_temp.in_battle ? 96 - h2 + system.nbyo :
        case $game_system.message_position
        when 0 then 96 - h2 + system.nbyo
        when 1 then 240 - h2
        when 2 then 384 - h2
        end
      self.x = 320 - self.width / 2
    else
      c = event > 0 ? $game_map.events[event] : $game_player
      mx = 636 - self.width
      fx = [[c.screen_x - self.width / 2, 4].max, mx].min
      sy = name_text ? system.nbyo + 4 : 4
      my = 476 - self.height
      ch = [$scene.spriteset.character_sprites[event - 1].bitmap.height /
        4 + 4, 48].max
      fy = [[c.screen_y - (ch + self.height), sy].max, my].min
      self.x = fx
      self.y = fy
    end
    if name_text
      @name_box = Window_NameBox.new(x, y - system.nbyo, name_text)
      @name_box.back.opacity = 0 if $game_system.message_frame == 1
    end
    if gold_set
      @gold_window = Window_Gold.new
      @gold_window.x = 560 - @gold_window.width
      if $game_temp.in_battle
        @gold_window.y = 192
      else
        @gold_window.y = self.y >= 128 ? 32 : 384
      end
      @gold_window.opacity = self.opacity
      @gold_window.back_opacity = self.back_opacity
    end
  end
  #--------------------------------------------------------------------------
  # * Evaluate Text
  #--------------------------------------------------------------------------
  def eval_text(c, read = false)
    case c
    when "\000"
      c = '\\'
    when "\001"
      @text.sub!(/\[(.*?)\]/, '')
      return 0 if read
      h, c = $1, $1.to_i
      contents.font.color = h.slice!(/./) == '#' ? hex_color(h) : text_color(c)
      return
    when "\002"
      @text.sub!(/\[(.*?)\]/, '')
      return 24 if read
      y = @fit_size ? system.height * @y + (system.height - 24) / 2 : 32 * @y + 4
      contents.blt(@x + @start_x, y, RPG::Cache.icon($1.to_s), Rect.new(0, 0, 24, 24))
      @x += 24
      return unless @y >= $game_temp.choice_start
      @cursor_width[@y] += 24
      return
    when "\003"
      return 0 if read
      @stop = true
      return
    when "\004"
      return 0 if read
      @wait_count += 10
      return
    when "\005"
      @text.sub!(/\[([x\d]+)\]/, '')
      if $1.downcase == 'x'
        contents.font.size = Font.default_size
      else
        contents.font.size = [[$1.to_i, 6].max, system.height].min
      end
      return 0
    when "\006"
      contents.font.bold = (! contents.font.bold)
      return 0
    when "\007"
      contents.font.italic = (! contents.font.italic)
      return 0
    when "\010"
      @text.sub!(/\[(.*?)\]/, '')
      if $1.downcase == 'x'
        contents.font.name = system.font
      else
        contents.font.name = [$1.to_s, system.font]
      end
      return 0
    when "\n"
      @y += 1
      @x = 0
      @x = 8 if @y >= $game_temp.choice_start
      return
    end
    w = contents.text_size(c).width
    return w if read
    y = @fit_size ? system.height * @y : 32 * @y
    contents.draw_text(@x + @start_x, y, w * 2, system.height, c)
    @sound = (system.sound_enable && c != ' ')
    @x += w
    return if @y < $game_temp.choice_start || @y > 3
    @cursor_width[@y] += w
  end
Revenir en haut Aller en bas
Invité
Invité
Anonymous



Image dans message de chara Empty
MessageSujet: Re: Image dans message de chara   Image dans message de chara EmptyLun 10 Sep 2007, 21:50

Code:
#--------------------------------------------------------------------------
  # * Finish
  #--------------------------------------------------------------------------
  def finish
    if $game_temp.choice_max &gt; 0
      @item_max = $game_temp.choice_max
      self.active = true
      self.index = 0
    end
    if $game_temp.num_input_variable_id &gt; 0
      digits_max = $game_temp.num_input_digits_max
      number = $game_variables[$game_temp.num_input_variable_id]
      @input_number_window = Window_InputNumber.new(digits_max)
      input_number.number = number
      input_number.x = self.x + 8
      input_number.y = self.y + $game_temp.num_input_start * (@fit_size ?
        system.height : 32)
    end
  end
  #--------------------------------------------------------------------------
  # * Return Item's Name and Icon Name
  #--------------------------------------------------------------------------
  def change_icon(option, index)
    s = case option.downcase
      when 'i'  then $data_items[index]
      when 'w' then $data_weapons[index]
      when 'a'  then $data_armors[index]
      when 's'  then $data_skills[index]
      end
    return sprintf(&quot;\002[%s]%s&quot;, s.icon_name, s.name) if s.name
  end
  #--------------------------------------------------------------------------
  # * Hexadecimal Colour
  #--------------------------------------------------------------------------
  def hex_color(string)
    if string.size != 6
      return normal_color
    end
    r = g = b = 0
    5.times do |i|
      s = string.slice!(/./m)
      v = hex_convert(s.downcase)
      case i
      when 0 then r += v * 16
      when 1 then r += v
      when 2 then g += v * 16
      when 3 then g += v
      when 4 then b += v * 16
      when 5 then b += v
      end
    end
    return Color.new(r, g, b)
  end
  #--------------------------------------------------------------------------
  # * Hexadecimal Convert
  #--------------------------------------------------------------------------
  def hex_convert(c)
    return c.to_i if c[/[0-9]/]
    case c
    when 'a' then 10
    when 'b' then 11
    when 'c' then 12
    when 'd' then 13
    when 'e' then 14
    when 'f' then 15
    end
  end
  #--------------------------------------------------------------------------
  # * Game Message
  #--------------------------------------------------------------------------
  def system
    $game_system.message
  end
  #--------------------------------------------------------------------------
  # * Input Number Window
  #--------------------------------------------------------------------------
  def input_number
    @input_number_window
  end
  #--------------------------------------------------------------------------
  # * Frame Update
  #--------------------------------------------------------------------------
  def update
    if @contents_showing
      super
    end
    if @fade_in
      self.contents_opacity += 24
      if input_number
        input_number.contents_opacity += 24
      end
      if self.contents_opacity == 255
        @fade_in = false
      end
      return true
    end
    if @text
      if Input.trigger?(13)
        if @stop
          self.pause = @stop = false
          return
        end
        if system.can_skip
          @skip = true
        end
      end
      return if @stop
      if @wait_count &gt; 0 &amp;&amp; ! @skip
        @wait_count -= 1
        return
      end
      loop do
        if (c = @text.slice!(/./m))
          eval_text(c)
          if @stop
            self.pause = true
            return
          end
          if ! @skip &amp;&amp; @sound
            Audio.se_play('Audio/SE/' + system.sound[0], system.sound[1])
            @sound = false
          end
          @wait_count += system.speed
        else
          @text = nil
          break
        end
        break if ! @skip
      end
      return if @text
      finish
      return
    end
    if input_number
      input_number.update
      if Input.trigger?(13)
        $game_system.se_play($data_system.decision_se)
        $game_variables[$game_temp.num_input_variable_id] = input_number.number
        $game_map.need_refresh = true
        input_number.dispose
        @input_number_window = nil
        terminate_message
      end
      return
    end
    if @contents_showing
      self.pause = true if $game_temp.choice_max == 0
      if Input.trigger?(12)
        if $game_temp.choice_max &gt; 0 &amp;&amp; $game_temp.choice_cancel_type &gt; 0
          $game_system.se_play($data_system.cancel_se)
          $game_temp.choice_proc.call($game_temp.choice_cancel_type - 1)
          terminate_message
        end
      end
      if Input.trigger?(13)
        if $game_temp.choice_max &gt; 0
          $game_system.se_play($data_system.decision_se)
          $game_temp.choice_proc.call(self.index)
        end
        terminate_message
      end
      return
    end
    if ! @fade_out &amp;&amp; $game_temp.message_text
      @contents_showing = true
      $game_temp.message_window_showing = true
      reset_window
      refresh
      @skip = (! system.letter_by_letter)
      @stop = false
      @wait_count = 0
      self.visible = true
      return
    end
    return unless visible
    @fade_out = true
    self.opacity -= 48
    if self.opacity == 0
      self.visible = @fade_out = false
      $game_temp.message_window_showing = false
    end
  end
  #--------------------------------------------------------------------------
  # * Updates Cursor Rectangle
  #--------------------------------------------------------------------------
  def update_cursor_rect
    if index &gt;= 0
      n = $game_temp.choice_start + @index
      #y = @fit_size ? system.height * n : 32 * n
      y = (@fit_size ? system.height : 32) * n
      cursor_rect.set(4 + @start_x, y, @cursor_width.max + 8,
        @fit_size ? system.height : 32)
    else
      cursor_rect.empty
    end
  end
end
#------------------------------------------------------------------------------
# End Window_Message Edit
#------------------------------------------------------------------------------

#------------------------------------------------------------------------------
# Begin Scene_Map Edit
#------------------------------------------------------------------------------
class Scene_Map
  #--------------------------------------------------------------------------
  # * Public Instance Variables
  #--------------------------------------------------------------------------
  attr_reader :spriteset
end
#------------------------------------------------------------------------------
# End Scene_Map Edit
#------------------------------------------------------------------------------

#------------------------------------------------------------------------------
# Begin Game_Event Edit
#------------------------------------------------------------------------------
class Game_Event &lt; Game_Character
  #--------------------------------------------------------------------------
  # * Name
  #--------------------------------------------------------------------------
  def name
    @event.name
  end
end
#------------------------------------------------------------------------------
# End Game_Event Edit
#------------------------------------------------------------------------------

#------------------------------------------------------------------------------
# Begin Interpreter Edit
#------------------------------------------------------------------------------
class Interpreter
  #--------------------------------------------------------------------------
  # * Public Instance Variables
  #--------------------------------------------------------------------------
  attr_reader :event_id
  #--------------------------------------------------------------------------
  # * Game Message
  #--------------------------------------------------------------------------
  def message
    $game_system.message
  end
end
#------------------------------------------------------------------------------
# End Interpreter Edit
#------------------------------------------------------------------------------

class Window_NameBox &lt; Sprite
  #--------------------------------------------------------------------------
  # * Public Instance Variables
  #--------------------------------------------------------------------------
  attr_reader :back
  #--------------------------------------------------------------------------
  # * Object Initialization
  #--------------------------------------------------------------------------
  def initialize(x, y, text)
    dumb = Bitmap.new(160, 42)
    dumb.font.name = system.font
    size = dumb.text_size(text).width
    dumb.dispose
    @back = Window_Base.new(x, y, size + 12, 32)
    windowskin = system.nb_skin ? system.nb_skin : $game_system.windowskin_name
    @back.windowskin = RPG::Cache.windowskin(windowskin)
    @back.z = 9999
    viewport = Viewport.new(x + 6, y + 5, size, 22)
    viewport.z = 9999
    super(viewport)
    self.bitmap = Bitmap.new(size, 22)
    bitmap.font.name = system.font
    bitmap.draw_text(0, 0, size, 22, text)
  end
  #--------------------------------------------------------------------------
  # * Game Message
  #--------------------------------------------------------------------------
  def system
    $game_system.message
  end
  #--------------------------------------------------------------------------
  # * Dispose
  #--------------------------------------------------------------------------
  def dispose
    @back.dispose
    @back = nil
    super
  end
end

=begin
Fonctionnement:

Afficher le texte avec une couleur Web (Hexadécimale) :
\c[#000000]

Afficher un Faceset dans un message :
\f[NomDuFichier]
(Le fichier image devra etre en PNG, 96x96px et doit se trouver dans Graphic\Pictures)

Afficher le nom de la map dans un message :
\Map

Afficher le prix d'un objet dans un message :
\Price[ID de l'item)
(L'ID des objets sont visible dans la Base de Donnée)

Afficher la classe d'un Personnage dans un message :
\Classe[ID du Hero]
(L'ID des heros sont visible dans la Base de Donnée)

Changer la police d'ecriture pendant un dialogue :
\t[Nom de la police]
Exemple : \t[Courier New]

#Afficher un fenetre qui montre votre argent :
\G

Afficher le contenue d'une variable :
\V[N° de la variable]

Afficher le nom d'un objet :
\V[i+N° de l'objet]

Afficher le nom d'une arme :
\V[w+N° de l'arme]

Afficher le nom d'une armure :
\V[a+N° de l'armure]

Afficher le nom d'une skill :
\V[s+N° de la skill]

Afficher la boite de message au dessus d'un event ou au dessus du hero :
\P[ID de l'event]
(l'ID du hero est 0)

Afficher le nom du locuteur au dessus de la boite de message :
\Name[Nom du locuteur]

Changer la taille du texte :
\H[Chiffre entre 6 et 32]

Afficher le nom du Hero dans un message :
\N[ID du hero]

Afficher le nom d'un monstre dans un message :
\M[ID Du Monstre]

Modifier l'opacitée du texte :
\O[Chiffre entre 0 et 255]
(À 0 le texte est transparent)
=end
Revenir en haut Aller en bas
Invité
Invité
Anonymous



Image dans message de chara Empty
MessageSujet: Re: Image dans message de chara   Image dans message de chara EmptyLun 10 Sep 2007, 21:55

Ensuite, il y a dans le script, deux commentaires contradictoires :

Citation :

Afficher un Faceset dans un message :
\f[NomDuFichier]
(Le fichier image devra etre en PNG, 96x96px et doit se trouver dans Graphic\Pictures)

et

Citation :
# Folder for the message pictures
@path = 'Graphics/Faces/'


Donc, si tu utilises le même script que moi, je te conseilles de mettre tes faces dans un dossier que tu creera dans graphics, nommé "Faces" ( respecte scrupuleusement les majuscules quand tu suis un script, ça peut t'aider ).


Voilà, je penses que c'est tout, le probleme devrait être réglé.


Ps : je rajoute que le script est sympa, puisqu'il permet d'utiliser le nom de l'evenement dans la boite de dialogue sans [].

ex : \n \face[Arshes] = vous aurez le nom dans la boite et la face.


( selon les versions, ca peut être \face et \name, à essayer )


Dernière édition par le Mar 11 Sep 2007, 14:50, édité 1 fois
Revenir en haut Aller en bas
Invité
Invité
Anonymous



Image dans message de chara Empty
MessageSujet: Re: Image dans message de chara   Image dans message de chara EmptyMar 11 Sep 2007, 01:51

Au pire Omega Arma, affiches ton script. Il faut juste regarder la parties des substitution de texte dans la méthode refresh de la classe Window_Message.
Revenir en haut Aller en bas
Omega Arma
Jongleur Itinérant
Jongleur Itinérant
Omega Arma


Masculin
Nombre de messages : 67
Age : 33
Projet(s) en cours : FF : Heaven's & Darkness's Processus (experimental)
Niveau Rpg Maker : Novice mais bon mappeur
Jeux Préférés : Gears of War, Final Fantasy, Zelda, etc...
Date d'inscription : 23/08/2007

Image dans message de chara Empty
MessageSujet: Re: Image dans message de chara   Image dans message de chara EmptyMar 11 Sep 2007, 16:47

Voila Dany, s'il n'y a aucun moyen de le modifier et bien jessayerai ta solution noobylyone Wink



Code:
#==============================================================================
# ■ Window_Message
#------------------------------------------------------------------------------
#  文章表示に使うメッセージウィンドウです。
#==============================================================================

class Window_Message < Window_Selectable
  #--------------------------------------------------------------------------
  # ● オブジェクト初期化
  #--------------------------------------------------------------------------
  def initialize
    super(80, 304, 480, 160)
    self.contents = Bitmap.new(width - 32, height - 32)
    self.visible = false
    self.z = 9998
    @fade_in = false
    @fade_out = false
    @contents_showing = false
    @cursor_width = 0
    self.active = false
    self.index = -1
  end
  #--------------------------------------------------------------------------
  # ● 解放
  #--------------------------------------------------------------------------
  def dispose
    terminate_message
    $game_temp.message_window_showing = false
    if @input_number_window != nil
      @input_number_window.dispose
    end
    super
  end
  #--------------------------------------------------------------------------
  # ● メッセージ終了処理
  #--------------------------------------------------------------------------
  def terminate_message
    self.active = false
    self.pause = false
    self.index = -1
    self.contents.clear
    # 表示中フラグをクリア
    @contents_showing = false
    # メッセージ コールバックを呼ぶ
    if $game_temp.message_proc != nil
      $game_temp.message_proc.call
    end
    # 文章、選択肢、数値入力に関する変数をクリア
    $game_temp.message_text = nil
    $game_temp.message_proc = nil
    $game_temp.choice_start = 99
    $game_temp.choice_max = 0
    $game_temp.choice_cancel_type = 0
    $game_temp.choice_proc = nil
    $game_temp.num_input_start = 99
    $game_temp.num_input_variable_id = 0
    $game_temp.num_input_digits_max = 0
    # ゴールドウィンドウを開放
    if @gold_window != nil
      @gold_window.dispose
      @gold_window = nil
    end
  end
  #--------------------------------------------------------------------------
  # ● リフレッシュ
  #--------------------------------------------------------------------------
  def refresh
    self.contents.clear
    self.contents.font.color = normal_color
    self.contents.font.name = $fontface
    self.contents.font.size = $fontsize
    x = y = 0
    @cursor_width = 0
    # 選択肢なら字下げを行う
    if $game_temp.choice_start == 0
      x = 8
    end
    # 表示待ちのメッセージがある場合
    if $game_temp.message_text != nil
      text = $game_temp.message_text
      # 制御文字処理
      begin
        last_text = text.clone
        text.gsub!(/\\[Vv]\[([0-9]+)\]/) { $game_variables[$1.to_i] }
      end until text == last_text
      text.gsub!(/\\[Nn]\[([0-9]+)\]/) do
        $game_actors[$1.to_i] != nil ? $game_actors[$1.to_i].name : ""
      end
      # 便宜上、"\\\\" を "\000" に変換
      text.gsub!(/\\\\/) { "\000" }
      # "\\C" を "\001" に、"\\G" を "\002" に変換
      text.gsub!(/\\[Cc]\[([0-9]+)\]/) { "\001[#{$1}]" }
      text.gsub!(/\\[Gg]/) { "\002" }
      # c に 1 文字を取得 (文字が取得できなくなるまでループ)
      while ((c = text.slice!(/./m)) != nil)
        # \\ の場合
        if c == "\000"
          # 本来の文字に戻す
          c = "\\"
        end
        # \C[n] の場合
        if c == "\001"
          # 文字色を変更
          text.sub!(/\[([0-9]+)\]/, "")
          color = $1.to_i
          if color >= 0 and color <= 7
            self.contents.font.color = text_color(color)
          end
          # 次の文字へ
          next
        end
        # \G の場合
        if c == "\002"
          # ゴールドウィンドウを作成
          if @gold_window == nil
            @gold_window = Window_Gold.new
            @gold_window.x = 560 - @gold_window.width
            if $game_temp.in_battle
              @gold_window.y = 192
            else
              @gold_window.y = self.y >= 128 ? 32 : 384
            end
            @gold_window.opacity = self.opacity
            @gold_window.back_opacity = self.back_opacity
          end
          # 次の文字へ
          next
        end
        # 改行文字の場合
        if c == "\n"
          # 選択肢ならカーソルの幅を更新
          if y >= $game_temp.choice_start
            @cursor_width = [@cursor_width, x].max
          end
          # y に 1 を加算
          y += 1
          x = 0
          # 選択肢なら字下げを行う
          if y >= $game_temp.choice_start
            x = 8
          end
          # 次の文字へ
          next
        end
        # 文字を描画
        self.contents.draw_text(4 + x, 32 * y, 40, 32, c)
        # x に描画した文字の幅を加算
        x += self.contents.text_size(c).width
      end
    end
    # 選択肢の場合
    if $game_temp.choice_max > 0
      @item_max = $game_temp.choice_max
      self.active = true
      self.index = 0
    end
    # 数値入力の場合
    if $game_temp.num_input_variable_id > 0
      digits_max = $game_temp.num_input_digits_max
      number = $game_variables[$game_temp.num_input_variable_id]
      @input_number_window = Window_InputNumber.new(digits_max)
      @input_number_window.number = number
      @input_number_window.x = self.x + 8
      @input_number_window.y = self.y + $game_temp.num_input_start * 32
    end
  end
  #--------------------------------------------------------------------------
  # ● ウィンドウの位置と不透明度の設定
  #--------------------------------------------------------------------------
  def reset_window
    if $game_temp.in_battle
      self.y = 16
    else
      case $game_system.message_position
      when 0  # 上
        self.y = 16
      when 1  # 中
        self.y = 160
      when 2  # 下
        self.y = 304
      end
    end
    if $game_system.message_frame == 0
      self.opacity = 255
    else
      self.opacity = 0
    end
    self.back_opacity = 160
  end
  #--------------------------------------------------------------------------
  # ● フレーム更新
  #--------------------------------------------------------------------------
  def update
    super
    # フェードインの場合
    if @fade_in
      self.contents_opacity += 24
      if @input_number_window != nil
        @input_number_window.contents_opacity += 24
      end
      if self.contents_opacity == 255
        @fade_in = false
      end
      return
    end
    # 数値入力中の場合
    if @input_number_window != nil
      @input_number_window.update
      # 決定
      if Input.trigger?(Input::C)
        $game_system.se_play($data_system.decision_se)
        $game_variables[$game_temp.num_input_variable_id] =
          @input_number_window.number
        $game_map.need_refresh = true
        # 数値入力ウィンドウを解放
        @input_number_window.dispose
        @input_number_window = nil
        terminate_message
      end
      return
    end
    # メッセージ表示中の場合
    if @contents_showing
      # 選択肢の表示中でなければポーズサインを表示
      if $game_temp.choice_max == 0
        self.pause = true
      end
      # キャンセル
      if Input.trigger?(Input::B)
        if $game_temp.choice_max > 0 and $game_temp.choice_cancel_type > 0
          $game_system.se_play($data_system.cancel_se)
          $game_temp.choice_proc.call($game_temp.choice_cancel_type - 1)
          terminate_message
        end
      end
      # 決定
      if Input.trigger?(Input::C)
        if $game_temp.choice_max > 0
          $game_system.se_play($data_system.decision_se)
          $game_temp.choice_proc.call(self.index)
        end
        terminate_message
      end
      return
    end
    # フェードアウト中以外で表示待ちのメッセージか選択肢がある場合
    if @fade_out == false and $game_temp.message_text != nil
      @contents_showing = true
      $game_temp.message_window_showing = true
      reset_window
      refresh
      Graphics.frame_reset
      self.visible = true
      self.contents_opacity = 0
      if @input_number_window != nil
        @input_number_window.contents_opacity = 0
      end
      @fade_in = true
      return
    end
    # 表示すべきメッセージがないが、ウィンドウが可視状態の場合
    if self.visible
      @fade_out = true
      self.opacity -= 48
      if self.opacity == 0
        self.visible = false
        @fade_out = false
        $game_temp.message_window_showing = false
      end
      return
    end
  end
  #--------------------------------------------------------------------------
  # ● カーソルの矩形更新
  #--------------------------------------------------------------------------
  def update_cursor_rect
    if @index >= 0
      n = $game_temp.choice_start + @index
      self.cursor_rect.set(8, n * 32, @cursor_width, 32)
    else
      self.cursor_rect.empty
    end
  end
end
Revenir en haut Aller en bas
http://omniborg.blog.jeuxvideo.com
Invité
Invité
Anonymous



Image dans message de chara Empty
MessageSujet: Re: Image dans message de chara   Image dans message de chara EmptyMar 11 Sep 2007, 17:47

Bonjour, ce script est par défaut dans rpg maker xp, c'est ton script de message avancé qu'il demandait je crois :D
Revenir en haut Aller en bas
Invité
Invité
Anonymous



Image dans message de chara Empty
MessageSujet: Re: Image dans message de chara   Image dans message de chara EmptyMar 11 Sep 2007, 18:20

oui exact, merci Nooby ^^,
il me faut la classe Window_Message qui est rédéfini dans le script que tu as rajouté avant main et que tu utilises.
Après il faut repèrer les substitutions de bout de texte du message que l'on tape dans l'évènement "afficher un message" comme ici dans la classe par défaut de RPG Maker XP que tu as affiché on a :
Code:
text.gsub!(/\\[Vv]\[([0-9]+)\]/) { $game_variables[$1.to_i] }
pour substituer "\V[i]" avec la valeur de la variable "i".
Dans
Code:
text.gsub!(/\\ .../
tu as "\\" qui correspond à la substitution de "\".

Voilà comment je souhaiterais analyser la méthode refresh de la classe Window_Message.
Revenir en haut Aller en bas
Omega Arma
Jongleur Itinérant
Jongleur Itinérant
Omega Arma


Masculin
Nombre de messages : 67
Age : 33
Projet(s) en cours : FF : Heaven's & Darkness's Processus (experimental)
Niveau Rpg Maker : Novice mais bon mappeur
Jeux Préférés : Gears of War, Final Fantasy, Zelda, etc...
Date d'inscription : 23/08/2007

Image dans message de chara Empty
MessageSujet: Re: Image dans message de chara   Image dans message de chara EmptyMer 12 Sep 2007, 14:50

euh j'ai rien compris ^^' tu pourrai m'expliquer sa en francais
Revenir en haut Aller en bas
http://omniborg.blog.jeuxvideo.com
Invité
Invité
Anonymous



Image dans message de chara Empty
MessageSujet: Re: Image dans message de chara   Image dans message de chara EmptyMer 12 Sep 2007, 17:34

Jveux pas te discréditer danichou, mais à la limite, oméga tu devrai tester le script posté, je penses que ça sera plus rapide pour toi :D
Revenir en haut Aller en bas
Invité
Invité
Anonymous



Image dans message de chara Empty
MessageSujet: Re: Image dans message de chara   Image dans message de chara EmptyMer 12 Sep 2007, 19:36

Je suis d'accord avec Noobynou, au lieu de se prendre la tête à modifier le script que tu utilises, il est plus rapide d'utiliser celui proposé par nooby.
Revenir en haut Aller en bas
Omega Arma
Jongleur Itinérant
Jongleur Itinérant
Omega Arma


Masculin
Nombre de messages : 67
Age : 33
Projet(s) en cours : FF : Heaven's & Darkness's Processus (experimental)
Niveau Rpg Maker : Novice mais bon mappeur
Jeux Préférés : Gears of War, Final Fantasy, Zelda, etc...
Date d'inscription : 23/08/2007

Image dans message de chara Empty
MessageSujet: Re: Image dans message de chara   Image dans message de chara EmptyDim 16 Sep 2007, 11:04

ok mais ou faut il repartir les scripts que tu ma fourni nooby ? car j'ai essayer plusieur truc et le jeux refuse de se lancer
Revenir en haut Aller en bas
http://omniborg.blog.jeuxvideo.com
Invité
Invité
Anonymous



Image dans message de chara Empty
MessageSujet: Re: Image dans message de chara   Image dans message de chara EmptyDim 16 Sep 2007, 11:55

C'est un seul et même script l'ami !

Suffit de tout coller à la suite, en bas tu as les commentaires en vert, prend mon msn si t'as besoin.
Revenir en haut Aller en bas
Contenu sponsorisé





Image dans message de chara Empty
MessageSujet: Re: Image dans message de chara   Image dans message de chara Empty

Revenir en haut Aller en bas
 
Image dans message de chara
Revenir en haut 
Page 1 sur 1
 Sujets similaires
-
» Image dans un message (xp)
» Afficher plus de choix dans un message
» Image ^^

Permission de ce forum:Vous ne pouvez pas répondre aux sujets dans ce forum
RPG Fusion :: ZONE D'ENTRAIDE :: Questions sur Events & Rpg Maker :: Archives-
Sauter vers:  
Ne ratez plus aucun deal !
Abonnez-vous pour recevoir par notification une sélection des meilleurs deals chaque jour.
IgnorerAutoriser