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



Le Deal du moment :
Cdiscount : -30€ dès 300€ ...
Voir le deal

Partagez
 

 [VX] Affichage animé du nom des maps.

Voir le sujet précédent Voir le sujet suivant Aller en bas 
AuteurMessage
RitoJS
Modérateur
Modérateur
RitoJS


Masculin Age : 29
Inscrit le : 22/12/2011
Messages : 1600

[VX] Affichage animé du nom des maps. Empty
MessageSujet: [VX] Affichage animé du nom des maps.   [VX] Affichage animé du nom des maps. Icon_minitimeJeu 16 Aoû 2012 - 20:32

Crédit: Ramiro

Ce script vous permet d'afficher le nom de vos maps de manière animé. (Ceux ayant joué à La Fleur de Romance ou encore à Lunar Wish comprendrons.)
On peut modifier la vitesse du défilement des lettres, son emplacement, sa couleur...
Un screen (pas vraiment utile mais ça vous montre un aperçu.):
[VX] Affichage animé du nom des maps. Screen_imagesia-com_1osa
Le nom de la map s'affiche lettre par lettre.

Script:
Code:
# SHOW THE MAP NAME - REVOLUTION MODE -
#------------------------------------------------------------------------------
# Author Ramiro (Holy_wyvern, ramiazul)
#------------------------------------------------------------------------------
# Version 1.0
#------------------------------------------------------------------------------
# Description:
# Allows you to show the name of some maps, whit a nice graphical style
#------------------------------------------------------------------------------
# Compatibility:
# RPG maker VX script.
# Shoud work with anyting (99.999 % sure)
#------------------------------------------------------------------------------
# Instructions:
# Insert on materials section
#
# To show the hero's name on a map or a variable
# \N[id of actor on database]        (1  -  999)
# \P[id of variable]                  (1  -  999)
# \PN[id of actor on party position]  (0  -    3)
# (Yes it's like the massage window...)
#------------------------------------------------------------------------------
# BUGS:
# Not now... Report if you found one
#------------------------------------------------------------------------------
# Author's notes:
# FOR non-Comertial games only. Giving credit it's not necesarry but it's nice :P
#===============================================================================

#===============================================================================
# Configurations
#===============================================================================

module MAPWINDOW
 
  VIEWING_TIME = 110                        # viewing time of letter
  LETTER_ANIM  = 150                        # starting animating time
  LETTER_END  = 20                        # time for hiding the name
  INIT_X      = 10                        # start X of first letter
  INIT_Y      = 10                        # start Y of first letter
  START_ANGLE  = -180                      # start angle of firs letter
  RECT_COLOR  = Color.new(255,255,255)    # The line's color
  RECT_X      = 0                          # the X correction of the rect
  RECT_Y      = -14                        # the Y correction
  FIRST_LETTER = Color.new(255,255,255)    # the first letter�s color
  LETTER_COLOR = Color.new(255,255,255,200) # other letter�s colors
  OPACITY      = 255                        # the letter�s opacity
  RECT_OPACITY = 255                        # opacity of the rect
  FONT_SIZE    = 25                        # the size of the font
  EX_START_X  = 0                          # X start movement
  RECT_HEIGHT  = 1                          # the height of the rect
  NOT_SHOW_MAPS= [1,286,30,31,32,130,304,305,246]                        # put map id of maps than don't show
                                            # it's name eg. [1,2,3]
end


#===============================================================================
# GAME MAP SETUP                                               
#===============================================================================
class Game_Map
  def name
    map_infos = load_data("Data/MapInfos.rvdata")
    name = map_infos[@map_id].name.clone
    name.gsub!(/\\N\[([0-9]+)\]/i) { $game_actors[$1.to_i].name }
    name.gsub!(/\\PN\[([0-9]+)\]/i) { $game_party.members[$1.to_i].name }
    name.gsub!(/\\V\[([0-9]+)\]/i) { $game_variables[$1.to_i] } 

    return name
  end
end

#===============================================================================
# The spritest of letters                                           
#===============================================================================

class Spriteset_MapName
  include MAPWINDOW
  def initialize
    @letters = []
    @index  = 0
    @finish_count = @dispose_count = 0
  end
 
  def set_sprites
  if !NOT_SHOW_MAPS.include?($game_map.map_id)
    dispose_sprites
    @letters = []
    name = $game_map.name.scan(/./).clone
    @l_count = (LETTER_ANIM / name.size) + 1
    @index  = 0
    @finish = false
    @finish_count = VIEWING_TIME
    @dispose_count = LETTER_END
   
    for i in 0...name.size
      @letters[i] = Sprite.new
      @letters[i].bitmap = Bitmap.new(FONT_SIZE,FONT_SIZE)
      @letters[i].ox = 10
      @letters[i].oy = 10
      @letters[i].bitmap.font.size = FONT_SIZE
      @letters[i].bitmap.font.color = i == 0 ? FIRST_LETTER : LETTER_COLOR
      @letters[i].bitmap.draw_text(0,0,FONT_SIZE,FONT_SIZE,name[i],1)
      @letters[i].x = i * (FONT_SIZE / 2) + EX_START_X + INIT_X
      @letters[i].y = INIT_Y
      @letters[i].z = 9999
      @letters[i].opacity = 0
      @letters[i].angle = START_ANGLE
    end
    @b_count = @letters.size * ((LETTER_ANIM / @letters.size) + 1)
    @border = Sprite.new
    @border.bitmap = Bitmap.new(@letters.size * (FONT_SIZE / 2) + (FONT_SIZE / 2), RECT_HEIGHT)
    @border.bitmap.fill_rect(Rect.new(0,0,@letters.size * (FONT_SIZE / 2) + (FONT_SIZE / 2), RECT_HEIGHT),RECT_COLOR)
    @border.x = - @border.width + INIT_X - (FONT_SIZE / 2) - RECT_X
    @border.opacity = 0
    @border.y = INIT_Y + (FONT_SIZE ) + RECT_Y
  end
  end
 
  def update
    if !@finish
    if @letters[@index]
      if @l_count > 0
        @letters[@index].x = (@letters[@index].x * (@l_count - 1) + @index * (FONT_SIZE / 2) + INIT_X) / @l_count
        @letters[@index].opacity = (@letters[@index].opacity * (@l_count - 1) + OPACITY) / @l_count
        @letters[@index].angle = (@letters[@index].angle * (@l_count - 1)) / @l_count
        @l_count -= 1
       
        if @b_count > 0
          @border.x = (@border.x * (@b_count - 1) + INIT_X - (FONT_SIZE / 2) + RECT_X) / @b_count
          @border.opacity = (@border.opacity * (@b_count - 1) + RECT_OPACITY) / @b_count
          @b_count -= 1
        end
      else
        @index += 1
        @l_count = ((LETTER_ANIM / @letters.size) + 1)
      end
    else
      @finish = true
    end
   
  else
    if @finish_count > 0
      @finish_count -= 1
      return
    end 
    if @dispose_count > 0
   
      for i in 0...@letters.size
        @letters[i].x = (@letters[i].x * (@dispose_count - 1) + i * (FONT_SIZE / 2) + 24 + INIT_X) / @dispose_count
        @letters[i].opacity = (@letters[i].opacity * (@dispose_count - 1)) / @dispose_count
      end 
      @border.x = (@border.x * (@dispose_count - 1)+ INIT_X + RECT_X - (FONT_SIZE / 2) - @border.width ) / @dispose_count
      @border.opacity = (@border.opacity * (@dispose_count - 1)) / @dispose_count   
      @dispose_count -= 1
    end
   
  end
   
  end
 
  def dispose
    dispose_sprites
  end
 
  def dispose_sprites
    for i in @letters
      i.dispose
    end
    if @border
      @border.bitmap.dispose if @border.bitmap
      @border.dispose
    end 
  end
 
end

#===============================================================================
# The map                                         
#===============================================================================

class Scene_Map < Scene_Base
 
 
  alias smsbstrt start
  alias smsbupdbas update_transfer_player
  alias smsbupdnorm update
  alias smsbterm terminate
 
  def start
    @letters = Spriteset_MapName.new
    smsbstrt
#~    @letters.set_sprites
  end
 
  def update
    @letters.update
    smsbupdnorm
  end
 
  def update_transfer_player
    teleported = true if $game_player.transfer?
    smsbupdbas
    @letters.set_sprites if teleported
  end
 
  def terminate
    @letters.dispose
    smsbterm
  end
 
end
L'affichage est fun, alors ne regardez pas que le screen, Essayez-le.^^
Voilà.
Revenir en haut Aller en bas
http://lunarito.wordpress.com/
Brandobscure001
Seigneur Lv.18
Seigneur Lv.18
Brandobscure001


Masculin Age : 27
Inscrit le : 26/12/2010
Messages : 2220

[VX] Affichage animé du nom des maps. Empty
MessageSujet: Re: [VX] Affichage animé du nom des maps.   [VX] Affichage animé du nom des maps. Icon_minitimeVen 17 Aoû 2012 - 9:58

Merci, j'en avais besoin Very Happy
Revenir en haut Aller en bas
Tora-chan
Va-nu-pieds Lv.4
Va-nu-pieds Lv.4
Tora-chan


Féminin Age : 24
Inscrit le : 14/09/2011
Messages : 56

[VX] Affichage animé du nom des maps. Empty
MessageSujet: Re: [VX] Affichage animé du nom des maps.   [VX] Affichage animé du nom des maps. Icon_minitimeVen 17 Aoû 2012 - 10:35

Sachant qu'avec Ace y'a pas besoin de script pour ça. Mais j'ai une question : Est-ce que je peut utiliser ce script dans mon projet Ace juste pour changer la couleur et tout ? J'imagine que non vu que c'est pas le même type de script mais je demande quand même.
Revenir en haut Aller en bas
RitoJS
Modérateur
Modérateur
RitoJS


Masculin Age : 29
Inscrit le : 22/12/2011
Messages : 1600

[VX] Affichage animé du nom des maps. Empty
MessageSujet: Re: [VX] Affichage animé du nom des maps.   [VX] Affichage animé du nom des maps. Icon_minitimeVen 17 Aoû 2012 - 10:40

Le script n'est pas compatible avec Ace.
Revenir en haut Aller en bas
http://lunarito.wordpress.com/
Zangther
Maître des Duels
Maître des Duels
Zangther


Masculin Age : 31
Inscrit le : 29/07/2009
Messages : 7840

[VX] Affichage animé du nom des maps. Empty
MessageSujet: Re: [VX] Affichage animé du nom des maps.   [VX] Affichage animé du nom des maps. Icon_minitimeVen 17 Aoû 2012 - 10:43

C'est une fonctionnalité déjà réalisée par plusieurs script sur le forum mais un peu de diversité n'a jamais tué Very Happy
Merci du partage, je t'ajoute quelques points pour te récompenser.
Revenir en haut Aller en bas
Tora-chan
Va-nu-pieds Lv.4
Va-nu-pieds Lv.4
Tora-chan


Féminin Age : 24
Inscrit le : 14/09/2011
Messages : 56

[VX] Affichage animé du nom des maps. Empty
MessageSujet: Re: [VX] Affichage animé du nom des maps.   [VX] Affichage animé du nom des maps. Icon_minitimeVen 17 Aoû 2012 - 10:48

OK RitoJS ! Tant pis.
Revenir en haut Aller en bas
Cracks86
Vagabond Lv.5
Vagabond Lv.5
Cracks86


Masculin Age : 28
Inscrit le : 08/08/2012
Messages : 87

[VX] Affichage animé du nom des maps. Empty
MessageSujet: Re: [VX] Affichage animé du nom des maps.   [VX] Affichage animé du nom des maps. Icon_minitimeVen 17 Aoû 2012 - 14:32

Je garde de côté ce sript. Merci du partage.
Revenir en haut Aller en bas
Contenu sponsorisé




[VX] Affichage animé du nom des maps. Empty
MessageSujet: Re: [VX] Affichage animé du nom des maps.   [VX] Affichage animé du nom des maps. Icon_minitime

Revenir en haut Aller en bas
 

[VX] Affichage animé du nom des maps.

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

 Sujets similaires

-
» Maps
» On refait vos maps =)
» Afficher le nom des maps in game
» Script " Action-Maps" (plateforme)
» Besoin d'avis sur la taille des maps

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