Poulet trizo Lv.3
Age : 28 Inscrit le : 04/02/2011 Messages : 47
| Sujet: > Fenêtre de vie complexe < Dim 3 Avr 2011 - 11:04 | |
| Voici un script pour afficher la vie, avec beaucoup d'option : Auteur : Moi Les images : ( Les images ci dessous sont a mettre dans le dossier system ) A appeler "HP" : https://2img.net/r/ihimizer/i/56360412.png/ A appeler "MP" https://2img.net/r/ihimizer/i/88392122.png/ A appeler "Fond_barre" : https://2img.net/r/ihimizer/i/fondbarreh.png/ A appeler "HUD_FOND" : https://2img.net/r/ihimizer/i/hudfond.png/ Faite en sorte que cette image soit transparente ( clic gauche sur le rouge et clic droit sur le noir ) Les scripts : Script explication (facultatif) : - Spoiler:
#==================================================== # ~ Script Vie ~ / ~ Life Script ~ #====================================================
=begin
Auteur / Creat by : Loupblanc
Version : v 1.0 Crée le / Creat in : le dimanche / Sunday 03 / 04 / 11
===================================================== ~ Explication du script ~ / ~ Script explanation ~ =====================================================
------------------------------------------------------------
Français :
Vous allez dans le module et vous reglez les options désirez :
La première partie consiste à retirer ou à ajouter les textes affichés (c'est une espèce de partie optionel). La deuxième partie consiste à modifier l' apparence de la fênetre et à modifier le numero de l'interrupteur qui active la fênetre. ------------------------------------------------------------ English : You go to the module and you adjust the options wish:
The first part consists in removing or in adding shown texts (it is a sort of optional part ). The second part consists in modifying the appearance of the window and in modifying the numero of the switch who activates the window. # ~ Fin de l'explication ! ~ =end
Script : - Code:
-
#================================================== # ~ Script Vie ~ | v 1.1 | by Loupblanc #==================================================
# Auteur : Loupblanc
# Version : v 1.2 # Creat in : the Sunday 03 / 04 / 11 #=========================================== # MODULE #===========================================
#---------------------------------------------------------- module Vie #----------------------------------------------------------
# Première partie :
# Permet d'afficher l' experience (true = oui, false = non) : EXP_ACTIVE = true
# Permet d'afficher le niveau (true = oui, false = non) : LEVEL_ACTIVE = true # Permet d'afficher la classe du héros (true = oui, false = non) : CLASS_ACTIVE = true # Permet d'afficher hp et mp en barre ou en chiffre (true = barre, false = chiffre) : BARRS_OR_NUMBERS = true
#----------------------------------------------------------
# Deuxième partie :
# Numéro de l'interrupteur qui affiche la fênetre : SWITCH_ACTIVE = 99
# Permet d'afficher un fond noir semi - transparent (true = oui, false = non) : FOND_ACTIVE = true # Voulez - vous mettre une fênetre ou non ? ( 0 = transparent, 100 = fênetre transparente, 400 = fênetre ) : FENETRE_ACTIVE = 0 # PS : Si vous mettez une fênetre en fond, il est conseillé de désactiver le fond noir car sinon c'est moche # (mais sa n'est qu'un conseille, faites se que vous voulez !).
# ~ Fin du module ! ~
end
#---------------------------------------------------------- class Scene_Map #---------------------------------------------------------- alias hud_start start alias hud_update update alias hud_terminate terminate include Vie def start @temps = 0 @win_Vie = Window_Life.new hud_start end def update if $game_switches[Vie::SWITCH_ACTIVE] == true @win_Vie.visible = true $game_map.refresh else @win_Vie.visible = false $game_map.refresh end hud_update end def terminate @win_Vie.dispose hud_terminate end end
# ~ Fin de la scène map ! ~
#============================================ class Game_Actor < Game_Battler #============================================ def current_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 #----------------------------------------------------------
# ~ Fin de la scene Game Actor ! ~
#---------------------------------------------------------- class Window_Life < Window_Base #---------------------------------------------------------- include Vie
def initialize super (0, 0, 265, 140) self.opacity = Vie::FENETRE_ACTIVE refresh end
def refresh @hero = $game_party.members[0] hp_text = Vocab::hp_a hp = @hero.hp mp_text = Vocab::mp_a mp = @hero.mp self.contents.clear if Vie::FOND_ACTIVE == true draw_fond(0, 0, 160) end
self.contents.font.color = normal_color self.contents.font.size = 18 if Vie::CLASS_ACTIVE == true draw_actor_class(@hero, 156, 0) end draw_actor_face(@hero, 0, 0) draw_actor_name(@hero, 96, 0) if Vie::BARRS_OR_NUMBERS == true self.contents.draw_text(150, 68, 115, 24, "Max", 0) draw_actor_hp_barre(@hero, 96, 20,128) draw_actor_mp_barre(@hero, 96, 45, 128) draw_actor_exp_barre(@actor, 96, 70) if @hero.next_exp > 0 self.contents.font.size = 16 self.contents.draw_text(106, 18, 115, 24, hp_text, 0) self.contents.draw_text(106, 43, 115, 24, mp_text, 0) self.contents.draw_text(150, 68, 115, 24, "EXP", 0) if @hero.next_exp > 0 else draw_actor_hp(@hero, 96, 20, 128) draw_actor_mp(@hero, 96, 40, 128) draw_actor_exp_info(@hero, 20, 70, 0) end if Vie::LEVEL_ACTIVE == true self.contents.font.size = 20 draw_actor_level(@hero, 20, 0) end end #-------------------------------------------------------------------------- # * Defintion de Current Exp #-------------------------------------------------------------------------- def current_exp return (@exp - @exp_list[@level]) end #-------------------------------------------------------------------------- # * Defintion de Next Exp #-------------------------------------------------------------------------- def next_exp return (@exp_list[@level+1] > 0 ? @exp_list[@level+1] - @exp_list[@level] : 0) end #-------------------------------------------------------------------------- # * Defintion de Draw Equipement #-------------------------------------------------------------------------- def draw_equipments(x, y) self.contents.font.size = 17 self.contents.font.color = system_color self.contents.draw_text(x, y, 120, WLH, Vocab::equip+" "+":") for i in 0..4 draw_item_name(@actor.equips[i], x + 16, y + WLH * (i + 1)) end end #-------------------------------------------------------------------------- # * Defintion de Draw Actor HP #-------------------------------------------------------------------------- def draw_actor_hp_barre(actor, x, y, width = 120) fond = Cache.system("Fond_barre") barre = Cache.system("HP") self.contents.blt(x, y, fond, fond.rect) built = Rect.new(0, 0, fond.width * actor.hp / actor.maxhp, fond.height) self.contents.blt(x, y, barre, built) self.contents.font.size = 16 self.contents.font.color = knockout_color self.contents.font.color = hp_color(actor) xr = x + width if width < 120 self.contents.draw_text(xr - 44, y-2, 44, WLH, actor.hp, 2) else self.contents.draw_text(xr - 110, y-2, 44, WLH, actor.hp, 2) self.contents.font.color = normal_color self.contents.draw_text(xr - 60, y-2, 11, WLH, "/", 2)#55 self.contents.draw_text(xr - 55, y-2, 44, WLH, actor.maxhp, 2) end end #-------------------------------------------------------------------------- # * Defintion de Draw Actor MP #-------------------------------------------------------------------------- def draw_actor_mp_barre(actor, x, y, width = 120) fond = Cache.system("Fond_barre") barre = Cache.system("MP") self.contents.blt(x, y, fond, fond.rect) built = Rect.new(0, 0, fond.width * actor.mp / actor.maxmp, fond.height) self.contents.blt(x, y, barre, built) self.contents.font.size = 16 self.contents.font.color = knockout_color self.contents.font.color = hp_color(actor) xr = x + width if width < 120 self.contents.draw_text(xr - 44, y-2, 44, WLH, actor.mp, 2) else self.contents.draw_text(xr - 110, y-2, 44, WLH, actor.mp, 2) self.contents.font.color = normal_color self.contents.draw_text(xr - 60, y-2, 11, WLH, "/", 2) self.contents.draw_text(xr - 55, y-2, 44, WLH, actor.maxmp, 2) end end #-------------------------------------------------------------------------- # * Defintion de Draw Actor EXP gauge #-------------------------------------------------------------------------- def draw_actor_exp_barre(actor, x, y, width = 120) for actor in $game_party.members s1 = actor.current_exp s2 = actor.next_exp s3 = actor.next_rest_exp_s fond = Cache.system("Fond_barre") barre = Cache.system("EXP") self.contents.blt(x, y, fond, fond.rect) built = Rect.new(0, 0, fond.width * s1 / s2, fond.height) self.contents.blt(x, y, barre, built) end end #-------------------------------------------------------------------------- # * Defintion de Draw Actor Class Loup #-------------------------------------------------------------------------- def draw_actor_class_loup(actor, x, y) self.contents.font.color = crisis_color self.contents.draw_text(x, y, 108, WLH, actor.class.name) end #-------------------------------------------------------------------------- # * Definition de Draw Fond #-------------------------------------------------------------------------- def draw_fond(x, y, widht = 160) hud_new = Cache.system("HUD_FOND") self.contents.blt(x, y, hud_new, hud_new.rect) end #-------------------------------------------------------------------------- # * Definition de Draw Actor Exp Info #-------------------------------------------------------------------------- def draw_actor_exp_info(actor, x, y, width = 120) s1 = actor.current_exp s2 = actor.next_exp s_next = sprintf(Vocab::level_a) self.contents.font.color = normal_color self.contents.draw_text(x+WLH+55, y , 180, WLH, s1, 0) self.contents.draw_text(x+WLH+115,y,180,WLH,"/",0) self.contents.draw_text(x+WLH+125,y,180,WLH,(s2+s1),0) end end
# ~ Fin de la scène Life ! ~
#================================================== # Fin du script ! #==================================================
Si il y a des points à amélioré dites-le moi s'en hésité ( surtout pour l'orthographe ... )! A et puis le screen : > ici < Merci
Dernière édition par Loup-blanc le Lun 23 Mai 2011 - 18:48, édité 2 fois |
|