Partager l'article ! Barre de progression: Ce scribt permettra de faire aparaître une jauge qui représentera le niveau d'expérience ! Je ne l'ai pas en ...
Nombre de visiteurs
|
|
|
|
Une trentaine de liens sur RPG Makers
Des tutoriaux pour comprendre RPG Makers
Aller voir 30 scripts RPG Makers XP
Aller au sommaire des musiques
Découvrez tous les jeux créés avec RPG Makers
Si vous voulez voir certaines de mes poésies
Si tu a un blog, soit mieux référencé
Informations sur mon dernier jeu "Arcanes"
Ce scribt permettra de faire aparaître une jauge qui représentera le niveau d'expérience ! Je ne l'ai pas encore testé parce ke je travail sur un projet ou la compatibilité des scribts est assez.....emmerdante mais bon, peu importe !
Mettez ce scribt en Bas de Window_Base:
Code:
#=====================================
#Gradient Bars with customizable lengths, thicknesses, types and Colors
#By AcedentProne
#=====================================
def draw_normal_barz(x, y, type, length, thick, e1, e2, c1 = Color.new(255,0,0,255), c2 = Color.new(0,0,0,255))
if type == "horizontal"
width = length
height = thick
self.contents.fill_rect(x-1, y - 1, width+2, height + 3, Color.new(255, 255, 255, 255))
self.contents.fill_rect(x, y, width, height + 1, Color.new(0, 0, 0, 255))
w = width * e1 / e2
for i in 0..height
r = c1.red + (c2.red - c1.red) * (height -i)/height + 0 * i/height
g = c1.green + (c2.green - c1.green) * (height -i)/height + 0 * i/height
b = c1.blue + (c2.blue - c1.blue) * (height -i)/height + 0 * i/height
a = c1.alpha + (c2.alpha - c1.alpha)* (height -i)/height + 255 * i/height
self.contents.fill_rect(x, y+i, w, 1, Color.new(r, g, b, a))
end
elsif type == "vertical"
width = thick
height = length
self.contents.fill_rect(x-1, y - 1, width+3, height + 2, Color.new(255, 255, 255, 255))
self.contents.fill_rect(x, y, width+1, height , Color.new(0, 0, 0, 255))
h = height * e1 / e2
for i in 0..width
r = c1.red + (c2.red - c1.red) * (width -i)/width + 0 * i/width
g = c1.green + (c2.green - c1.green) * (width -i)/width + 0 * i/width
b = c1.blue + (c2.blue - c1.blue) * (width -i)/width + 0 * i/width
a = c1.alpha + (c2.alpha - c1.alpha)* (width -i)/width + 255 * i/width
self.contents.fill_rect(x+i, y, 1, h, Color.new(r, g, b, a))
end
end
end
def draw_actor_barz(actor,x, y, type, length, thick, e1, e2, c1 = Color.new(255,0,0,255), c2 = Color.new(0,0,0,255))
if type == "horizontal"
width = length
height = thick
self.contents.fill_rect(x-1, y - 1, width+2, height + 3, Color.new(255, 255, 255, 255))
self.contents.fill_rect(x, y, width, height + 1, Color.new(0, 0, 0, 255))
w = width * e1 / e2
for i in 0..height
r = c1.red + (c2.red - c1.red) * (height -i)/height + 0 * i/height
g = c1.green + (c2.green - c1.green) * (height -i)/height + 0 * i/height
b = c1.blue + (c2.blue - c1.blue) * (height -i)/height + 0 * i/height
a = c1.alpha + (c2.alpha - c1.alpha)* (height -i)/height + 255 * i/height
self.contents.fill_rect(x, y+i, w, 1, Color.new(r, g, b, a))
end
elsif type == "vertical"
width = thick
height = length
self.contents.fill_rect(x-1, y - 1, width+3, height + 2, Color.new(255, 255, 255, 255))
self.contents.fill_rect(x, y, width+1, height , Color.new(0, 0, 0, 255))
h = height * e1 / e2
for i in 0..width
r = c1.red + (c2.red - c1.red) * (width -i)/width + 0 * i/width
g = c1.green + (c2.green - c1.green) * (width -i)/width + 0 * i/width
b = c1.blue + (c2.blue - c1.blue) * (width -i)/width + 0 * i/width
a = c1.alpha + (c2.alpha - c1.alpha)* (width -i)/width + 255 * i/width
self.contents.fill_rect(x+i, y, 1, h, Color.new(r, g, b, a))
end
end
end
Puis creer un nouveau scrîpt au dessus de Main nommé [Scene_Progress]
Mettez ce Code:
Code:
#Game Progress Screen made by osbornecreations A.K.A Lewis Osborne
#This was made by an englishman!!! (thats me) go on son!
#Just put in a new screen above main. it shouldn't interfere with anything.
#To call the scrîpt, use $scene = Scene_Progress.new and to change the
#game progress bar, it is assigned using $game_variables[1] so through the game
#call a scrîpt and type in something like $game_variables[1] =10 to make the game 10% complete.
#===================================================
# Scene_Progress
#===================================================
class Scene_Progress
#---------------------------------------------------------------------------------
def initialize
end
#---------------------------------------------------------------------------------
def main
@window1 = Window_Progress.new
@window1.x =160
@window1.y =200
@window1.height = 100
@window1.width = 341
#@window1.z = 200
Graphics.transition
loop do
Graphics.update
Input.update
if Input.trigger?(Input::B)
# LZ SE t
$game_system.se_play($data_system.cancel_se)
# }bvハノリヨヲ
@sprite = Sprite.new
@sprite.bitmap = RPG::Cache.panorama("", 0)
$scene = Scene_Menu.new
end
#update
if $scene != self
break
end
end
Graphics.freeze
@window1.dispose
end
#---------------------------------------------------------------------------------
#---------------------------------------------------------------------------------
def update
end
#---------------------------------------------------------------------------------
end
class Window_Progress < Window_Base
#---------------------------------------------------------------------------------
def initialize
super(0, 0, 341,100)
self.contents = Bitmap.new(width - 50, height - 32)
self.contents.font.name = "Tahoma"
self.contents.font.size = 24
self.contents.font.color = text_color(0)
self.contents.draw_text(20, 0, 33, 33, "Progré")
self.contents.draw_text(55, 0, 33, 33, "du")
self.contents.draw_text(88, 0, 33, 33, "Jeu ")
self.contents.draw_text(110, 0, 33, 33, "% ")
draw_actor_barz(0,20,35, "horizontal", 255, 28,$game_variables[1],100)
@sprite = Sprite.new
@sprite.bitmap = RPG::Cache.panorama("004-CloudySky01", 0)
end
#---------------------------------------------------------------------------------
end
Puis pour Utiliser ce scrîpt Mettez:
Code:
$scene = Scene_Progress.new
Utilisation:
Ligne 62:Specifiez La police Du message
Ligne 63:Specifiez La Taille Du message
Ligne 64:Specifiez La couleur Du message
Lignes 65,66,67,68:Le contenu du Message
Ligne 69:Specifiez L'id de Lavariable[Si vous voulez que la barre soit affichée verticalement changez"horizontal"par"vertical"]
Ligne 71:Specifiez le nom du panorama.
C'est fini
est-ce que je pourrais en prendre un à l'occasion, pour mon site ?:P
salut je voudrai savoir si vous avez reussi a faire marchez ce scripts ??
merci car jai quelque probleme.
merci de me répondre
Oui, il marche trés bien, d'ailleurs je l'ai trafiqué afin d'avoir trois barres simultanément, mais celui là n'affiche qu'une barre et elle devrais marcher.
Maintenant, si tu as un probléme tu pourais me contacter en écrivant le motif du probléme.
@windowskin_name = $game_system.windowskin_name
si je le met en commentaire ainsi de suite il me met plein d'autres erreurs...
Si tu as mis d'autres scripts qui modifient le script windowskin, ça peut venir de là...
le dernier code, on le met où
ou faut-il mettre ce dernier morceau de script?
"Code:
$scene = Scene_Progress.new"
Il faut l'ouvrir avec la fonction "script" avec un évènement. Il permet d'ouvrir la fenêtre dans laquelle apparait la progression.