Partagez
Aller en bas
avatar
Blockade
Membre

Nombre de messages : 194
Age : 26
Distinction : aucune
Date d'inscription : 06/09/2008

Brouillard comme dans RPG maker XP

le Sam 6 Sep 2008 - 20:45
Brouillard comme dans RMXP

De Hevendor, Traduction et démo : Blockade


Fonctionnalités :

- Permet d'afficher du brouillard comme dans RMXP
- Facile à configurer

Screenshots :







Démo :

http://www.megaupload.com/fr/?d=VZOSDDOK

Script et utilisation :
Spoiler:
Code:
#==============================================================================
# ** Brouillard d'RMXP  pou RMVX
#------------------------------------------------------------------------------
# Ce script crée un effet de brouillard comme dans RPG maker XP. Utiliser les brouillard proposés dans 
# RPG Maker XP.
# 08-03-2008 (dd-mm-aaaa) © Hevendor de rmxp.org
# 09-03-2008 Edits/additions by Jirbytaylor
# 09-03-2008 (dd-mm-aaaa) Edité par Hevendor
# 31/07/2008 (dd-mm-aaaa) Traduit par Blockade
# Version 1.2.3
#==============================================================================
#===============================================================
#                         
#                www.rpgmakervx-fr.com                                         
#     
#===============================================================
module Fog_Map_Settings
  #============================================================================
  # * Comfigure le lien vers le(s) fichier(s) de brouillard.  Format:
  # {numéro_du_brouillard => 'nom_du_fichier.extension', ...}
  # Ou nom_du_fichier.extension doit être un fichier de brouillard et son extention
  # DANS le dossier pictures du jeu.
  #============================================================================
  Fog_names = {1 => '001-Fog01.png'}
  #============================================================================
  # * Les maps ou vous voulez afficher le brouillard. Format:
  # Fog_maps = {mapID => numéro_du_brouillard , mapID2 => numéro_du_brouillard, ...}
  #============================================================================
  Fog_maps = {1 => 1}
  #============================================================================
  # * Options d'affichage du brouillard. Utiliser (numéro_du_brouillard => paramètre , ...) format
  # - Opacity - Opacitée du brouillard, comprise entre 0 (invisible) et 255 (opaque)
  # - Zoom - Taille du brouillard '1' est normal, pas '100'
  # - Blend - Si  : 0 - Normal
  #                        1 - Clair
  #                        2 - Sombre
  # - SxSy - Paramètre des défilements  (numéro_du_brouillard => [sx,sy], ...)
  #============================================================================
  Fog_opacity = {1 => 100}
  Fog_zoom = {1 => 3}
  Fog_blend = {1 => 1}
  Fog_sxsy = {1 => [2, 2]}
end

class Game_Map
  #--------------------------------------------------------------------------
  # * Public Instance Variables
  #--------------------------------------------------------------------------
  attr_reader :map_id                    # map ID
  attr_reader :fog_ox                    # fog oX
  attr_reader :fog_oy                    # fog oY
  #--------------------------------------------------------------------------
  # * Alias Definitions
  #--------------------------------------------------------------------------
  alias hev_fog_feature_map_update update
  alias hev_fog_feature_map_initialize initialize
  #--------------------------------------------------------------------------
  # * Object Initialization
  #--------------------------------------------------------------------------
  def initialize
    @fog_ox = 0
    @fog_oy = 0
    hev_fog_feature_map_initialize
  end
  #--------------------------------------------------------------------------
  # * Update Fog
  #-------------------------------------------------------------------------- 
  def update_fog
    if Fog_Map_Settings::Fog_maps.include?($game_map.map_id)
      @fog_ox -= Fog_Map_Settings::Fog_sxsy[Fog_Map_Settings::Fog_maps[@map_id]][0] / 8.0
      @fog_oy -= Fog_Map_Settings::Fog_sxsy[Fog_Map_Settings::Fog_maps[@map_id]][1] / 8.0
    end
  end
  #--------------------------------------------------------------------------
  # * Frame Update
  #--------------------------------------------------------------------------
  def update
    hev_fog_feature_map_update
    update_fog
  end
end

class Spriteset_Map
  #--------------------------------------------------------------------------
  # * Alias Definitions
  #--------------------------------------------------------------------------
  alias hev_fog_feature_initialize initialize
  alias hev_fog_feature_create_viewports create_viewports
  alias hev_fog_feature_dispose dispose
  alias hev_fog_feature_update_viewports update_viewports
  alias hev_fog_feature_update update
  #--------------------------------------------------------------------------
  # * Object Initialization
  #--------------------------------------------------------------------------
  def initialize
    hev_fog_feature_initialize
    create_fog
  end
  #--------------------------------------------------------------------------
  # * Create Viewport
  #--------------------------------------------------------------------------
  def create_viewports
    @viewport4 = Viewport.new(0, 0, 544, 416)
    @viewport4.z = 9
    hev_fog_feature_create_viewports
  end
  #--------------------------------------------------------------------------
  # * Create Fog
  #--------------------------------------------------------------------------
  def create_fog
    @fog = Plane.new(@viewport4)
    if Fog_Map_Settings::Fog_maps.include?($game_map.map_id)
      fog_number = Fog_Map_Settings::Fog_maps[$game_map.map_id]
      update_fog
      @fog.bitmap = Cache.picture(Fog_Map_Settings::Fog_names[fog_number])
      @fog.opacity = Fog_Map_Settings::Fog_opacity[fog_number]
      @fog.zoom_x = @fog.zoom_y = Fog_Map_Settings::Fog_zoom[fog_number]
      @fog.blend_type = Fog_Map_Settings::Fog_blend[fog_number]
    end     
  end
  #--------------------------------------------------------------------------
  # * Update Fog Sprite
  #--------------------------------------------------------------------------
  def update_fog
    if @fog != nil
      @fog.ox = $game_map.display_x / 8 + $game_map.fog_ox
      @fog.oy = $game_map.display_y / 8 + $game_map.fog_oy
    end
  end
  #--------------------------------------------------------------------------
  # * Frame Update
  #--------------------------------------------------------------------------
  def update
    hev_fog_feature_update
    update_fog
  end
  #--------------------------------------------------------------------------
  # * Dispose of Fog Sprite
  #--------------------------------------------------------------------------
  def dispose_fog
    @fog.dispose
  end
  #--------------------------------------------------------------------------
  # * Dispose
  #--------------------------------------------------------------------------
  def dispose
    dispose_fog
    hev_fog_feature_dispose
  end
end


1. Copier le script au dessus de Main
2. Les fichiers de brouillard à utiliser sont ceux de RMXP, j'e nai mis un dans la démo, a placer dans le dossier Pictures de votre jeu
3. Configurer un brouillard :
module Fog_Map_Settings
Code:
  #============================================================================
  # * Comfigure le lien vers le(s) fichier(s) de brouillard.  Format:
  # {numéro_du_brouillard => 'nom_du_fichier.extension', ...}
  # Ou nom_du_fichier.extension doit être un fichier de brouillard et son extention
  # DANS le dossier pictures du jeu.
  #============================================================================
  Fog_names = {1 => '001-Fog01.png'}
  #============================================================================
  # * Les maps ou vous voulez afficher le brouillard. Format:
  # Fog_maps = {mapID => numéro_du_brouillard , mapID2 => numéro_du_brouillard, ...}
  #============================================================================
  Fog_maps = {1 => 1}
  #============================================================================
  # * Options d'affichage du brouillard. Utiliser (numéro_du_brouillard => paramètre , ...) format
  # - Opacity - Opacitée du brouillard, comprise entre 0 (invisible) et 255 (opaque)
  # - Zoom - Taille du brouillard '1' est normal, pas '100'
  # - Blend - Si  : 0 - Normal
  #                        1 - Clair
  #                        2 - Sombre
  # - SxSy - Paramètre des défilements  (numéro_du_brouillard => [sx,sy], ...)
  #============================================================================
  Fog_opacity = {1 => 100}
  Fog_zoom = {1 => 3}
  Fog_blend = {1 => 1}
  Fog_sxsy = {1 => [2, 2]}
end
Tout est expliqué dans les commentaires. Si vous avez des questions n'hésitez pas !
Enjoy !
avatar
Nekaru
Membre

Nombre de messages : 433
Age : 25
Localisation : 35 rue des orfèvres, Ankh-Morpork, Plaines de Sto, Disque-monde, Univers.
Distinction : Saucisson Sec ='3
Membre du club masochiste de la Commu'.

[Mist' Smile]
Date d'inscription : 24/03/2008

Re: Brouillard comme dans RPG maker XP

le Sam 6 Sep 2008 - 20:57
Je crois que ca marche avec une image aussi. il suffit que ton brouillard soit transparent et c'est bon (enfin je peut me tromper aussi)
avatar
Blockade
Membre

Nombre de messages : 194
Age : 26
Distinction : aucune
Date d'inscription : 06/09/2008

Re: Brouillard comme dans RPG maker XP

le Sam 6 Sep 2008 - 21:35
Oui c'est faisable en event, mais le script est toujours utile ^^
avatar
Higinia
Membre

Nombre de messages : 191
Age : 25
Localisation : Somme 80
Distinction : aucune
Date d'inscription : 03/08/2008

Re: Brouillard comme dans RPG maker XP

le Dim 7 Sep 2008 - 0:09
Merci aussi pour ce script , c'est cool Twisted Evil
avatar
Muteo
Membre

Nombre de messages : 89
Distinction : aucune
Date d'inscription : 18/11/2008

Re: Brouillard comme dans RPG maker XP

le Mar 11 Aoû 2009 - 12:18
Désolé du necropost, mais j'ai un problème sur le script, je ne peut pas mettre plus de 8 maps avec du brouillard. A la 8eme et 9eme mappe, le jeu indique une erreur. Et si je saute ces etapes, et que je passe d'IDmap de 7 à 10, les numeros superieurs à 10 ne veulent pas afficher le brouillard, quelqu'un peut m'aider ?
avatar
dricc
Membre

Nombre de messages : 2756
Localisation : Lille
Distinction : Altruiste - Incarnation de la Patience [Mist']
Date d'inscription : 10/08/2009

Re: Brouillard comme dans RPG maker XP

le Ven 14 Aoû 2009 - 17:17
Si tu ne donnes ni ton erreur ni ton script , on va avoir du mal à t'aider , tu sais ...
c'est surtout le message d'erreur qui est interessant .
avatar
Muteo
Membre

Nombre de messages : 89
Distinction : aucune
Date d'inscription : 18/11/2008

Re: Brouillard comme dans RPG maker XP

le Ven 14 Aoû 2009 - 19:30
Il dit "erreur de syntaxe" à la ligne ou il faut mettre les ID des mapps des brouillards, mais ca ne le fait que pour les ID 008 et 009
EDIT : jvais essayer en enlevant les "00" devant les nombres, ca va ptet marcher
avatar
Nelkos
Membre

Nombre de messages : 20
Distinction : aucune
Date d'inscription : 18/12/2010

Re: Brouillard comme dans RPG maker XP

le Mar 21 Déc 2010 - 14:24
Salut, je suis nouveau et j'ai été me présenté mais
j'ai un problème avec ton script, je ne sais pas comment
utiliser, j'ai essayer le copier coller+ remplacer l'ID des maps
mais ça ne marche toujours pas, salut et déjà merci...
Contenu sponsorisé

Re: Brouillard comme dans RPG maker XP

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