tonyryu Paysan (niveau 4)
Messages postés : 39 Date d'inscription : 14/09/2012 Jauge LPC :
| Sujet: [RMVX Ace] PNJ Name Sam 15 Sep 2012 - 9:42 | |
| PNJ Name Auteur : Tonyryu Version du script : 1.00 Principe du script : Il permet l'affichage d'un nom au dessus des événements placés sur la map Instructions : Ajouter \N[] avec le nom à afficher, dans le nom de l'event, exemple : EV003\N[Esbrouf] Des constantes modifiables sont présentes dans le script afin de modifier la taille de la font, la présence de la sous-couche de la font, ainsi que la correction de position : PNJ_FONT_SIZE = 20 PNJ_FONT_OUTLINE = true PNJ_DECALAGE_H = 25 PNJ_DECALAGE_V = 5 Screens : Script : - Code:
-
#============================================================================== # ■ Systeme de gestion d'affichage de nom au dessus d'un event #------------------------------------------------------------------------------ # Ce script a pour but de permettre l'affichage de nom au dessus d'un event # # Version Date Auteur Commentaires # 1.00 14/09/2012 Tonyryu Première release # # Attention : Ce script est ma propriété en tant que création et il est donc # soumis au droit de la propriété intellectuelle. # En aucun cas, il ne doit être copié ou publié vers un autre forum sans en # avoir reçu mon accord au préalable. # #==============================================================================
# Constantes modifiables PNJ_FONT_SIZE = 20 PNJ_FONT_OUTLINE = true PNJ_DECALAGE_H = 25 PNJ_DECALAGE_V = 5
#============================================================================== # ■ Sprite_Character #------------------------------------------------------------------------------ # Permet d'afficher le character sur la map #============================================================================== class Sprite_Character < Sprite_Base
#-------------------------------------------------------------------------- # ● Constructeur # character : Game_Character #-------------------------------------------------------------------------- alias pnjn_initialize initialize def initialize(viewport, character = nil) pnjn_initialize(viewport, character) create_pnj_name update_pnj_name end #-------------------------------------------------------------------------- # ● create_pnj_name #-------------------------------------------------------------------------- def create_pnj_name if @character.pnjName != "" @sprite_pnj_name = ::Sprite.new(viewport) bmp = Bitmap.new(10,10) bmp.font.size = PNJ_FONT_SIZE bmp.font.outline = PNJ_FONT_OUTLINE rectText = bmp.text_size(@character.pnjName) bmp = Bitmap.new(rectText.width + 10, rectText.height + 6) bmp.font.size = PNJ_FONT_SIZE bmp.font.outline = PNJ_FONT_OUTLINE bmp.draw_text(rectText, @character.pnjName,1) @sprite_pnj_name.bitmap = bmp end end #-------------------------------------------------------------------------- # ● mise a jour #-------------------------------------------------------------------------- alias pnjn_update update def update pnjn_update update_pnj_name end #-------------------------------------------------------------------------- # ● update_pnj_name #-------------------------------------------------------------------------- def update_pnj_name if @sprite_pnj_name @sprite_pnj_name.x = x - (@sprite_pnj_name.width / 2) + PNJ_DECALAGE_V @sprite_pnj_name.y = y - height - PNJ_DECALAGE_H @sprite_pnj_name.z = z + 199 end end end
#============================================================================== # ■ Game_CharacterBase #------------------------------------------------------------------------------ # Ajout et gestion de la propriété @animation_speed # # Version Date Auteur Commentaires # 1.00 26/08/2012 Tonyryu Création # #============================================================================== class Game_CharacterBase attr_reader :pnjName #-------------------------------------------------------------------------- # ● init_public_members (surcharge) #-------------------------------------------------------------------------- alias pnjn_init_public_members init_public_members def init_public_members pnjn_init_public_members @pnjName = "" end end
#============================================================================== # ■ Game_Event #------------------------------------------------------------------------------ # Modification paramétrage d'une page d'event # # Version Date Auteur Commentaires # 1.00 14/09/2012 Tonyryu Création # #============================================================================== class Game_Event #-------------------------------------------------------------------------- # ● setup_page_settings (surcharge) #-------------------------------------------------------------------------- alias pnjn_setup_page_settings setup_page_settings def setup_page_settings pnjn_setup_page_settings @event.name.gsub!(/\\/) { "\e" } @event.name.gsub!(/\eN\[(.*)\]/i) { @pnjName = $1 } end end |
|
Elekami Fondateur
Messages postés : 19071 Date d'inscription : 19/07/2008 Jauge LPC :
| Sujet: Re: [RMVX Ace] PNJ Name Sam 15 Sep 2012 - 10:30 | |
| Merci pour tes deux partages, je t'ai ajouté des points ! |
|