Partager l'article ! Pommes de vie: Voici un script fort utile. En effet, celui-ci va affiché en haut à gauche de votre écran de jeu des pommes qui in ...
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"
Voici un script fort utile. En effet, celui-ci va affiché en haut à gauche de votre écran de jeu des pommes qui indiqueront la vie du héros (comme dans Zelda en gros).
Avant de vous livrer le code, voici comment le configurer :
Vous pouvez configurer le script à ces lignes :
#=== Options === corazones = 10 opacidad = 255 opcion = 2 #=== Options end ==Corazones est le nombre de cœurs qui seront affichés. Opacidad correspond à l'opacité des cœurs (très visible ou transparent parexemple). Opcion c'est le texte qui est affiché en dessous des cœurs (1 = nom du héros, 2 = PV actuels ou max du héros, 3 = Nombre de cœurs pleins, 4 =% de vie, 5 = ne rien afficher).
Enfin, dans le script scène_map, en dessous de la ligne 15, rajoutez le bout de code suivant :
@corazones = Window_Corazones.new
En dessous de la ligne 37, ce code :
@corazones.dispose
Enfin, en dessous de la ligne 75, ce code :
@corazones.refresh
Voici le code à mettre :
#==========================================
# Pommes de vie
#
# Script téléchargé sur www.rpg-creation.com
#
# Window_Corazones
# Par DarkRog
#-----------------------------------------
#==========================================
class Window_Corazones < Window_Base
def initialize
super(-8, -8, 640, 96)
#=== Options ===
corazones = 10
opacidad = 255
opcion = 2
#=== Options fin ==
self.contents = Bitmap.new(width - 32, height - 32)
self.contents.font.name = $fontface
self.contents.font.size = $fontsize
self.opacity = 0
@hearts = corazones
@opacity = opacidad
@option = opcion
@hr = 0
refresh
end
#----------------------------------------
# - Actualisation
#----------------------------------------
def refresh
self.contents.clear
@n = $game_party.actors[0].hp
@mn = $game_party.actors[0].maxhp
#n is the value, and mn the maxvalue:
@hr = 0
@lh = 0
for i in 0..@hearts-1
self.contents.fill_rect(i*14, 4, 1, 2, Color.new(0, 0, 0, @opacity))
self.contents.fill_rect(i*14+1, 3, 1, 4, Color.new(0, 0, 0, @opacity))
self.contents.fill_rect(i*14+2, 2, 1, 6, Color.new(0, 0, 0, @opacity))
self.contents.fill_rect(i*14+3, 1, 1, 8, Color.new(0, 0, 0, @opacity))
self.contents.fill_rect(i*14+4, 0, 1, 10, Color.new(0, 0, 0, @opacity))
self.contents.fill_rect(i*14+5, 1, 1, 10, Color.new(0, 0, 0, @opacity))
self.contents.fill_rect(i*14+6, 2, 1, 10, Color.new(0, 0, 0, @opacity))
self.contents.fill_rect(i*14+7, 1, 1, 10, Color.new(0, 0, 0, @opacity))
self.contents.fill_rect(i*14+8, 0, 1, 10, Color.new(0, 0, 0, @opacity))
self.contents.fill_rect(i*14+9, 1, 1, 8, Color.new(0, 0, 0, @opacity))
self.contents.fill_rect(i*14+10, 2, 1, 6, Color.new(0, 0, 0, @opacity))
self.contents.fill_rect(i*14+11, 3, 1, 4, Color.new(0, 0, 0, @opacity))
self.contents.fill_rect(i*14+12, 4, 1, 2, Color.new(0, 0, 0, @opacity))
#
self.contents.fill_rect(i*14+1, 4, 1, 2, Color.new(255, 255, 255, @opacity))
self.contents.fill_rect(i*14+2, 3, 1, 4, Color.new(255, 255, 255, @opacity))
self.contents.fill_rect(i*14+3, 2, 1, 6, Color.new(255, 255, 255, @opacity))
self.contents.fill_rect(i*14+4, 1, 1, 8, Color.new(255, 255, 255, @opacity))
self.contents.fill_rect(i*14+5, 2, 1, 8, Color.new(255, 255, 255, @opacity))
self.contents.fill_rect(i*14+6, 3, 1, 8, Color.new(255, 255, 255, @opacity))
self.contents.fill_rect(i*14+7, 2, 1, 8, Color.new(255, 255, 255, @opacity))
self.contents.fill_rect(i*14+8, 1, 1, 8, Color.new(255, 255, 255, @opacity))
self.contents.fill_rect(i*14+9, 2, 1, 6, Color.new(255, 255, 255, @opacity))
self.contents.fill_rect(i*14+10, 3, 1, 4, Color.new(255, 255, 255, @opacity))
self.contents.fill_rect(i*14+11, 4, 1, 2, Color.new(255, 255, 255, @opacity))
#
#@c = 255
@l = @n*100/@mn
@ho = @l*@hearts
c_color(1)
self.contents.fill_rect(i*14+2, 4, 1, 2, Color.new(@c, 0, 0, @opacity))
c_color(2)
self.contents.fill_rect(i*14+3, 3, 1, 4, Color.new(@c, 0, 0, @opacity))
c_color(3)
self.contents.fill_rect(i*14+4, 2, 1, 6, Color.new(@c, 0, 0, @opacity))
c_color(4)
self.contents.fill_rect(i*14+5, 3, 1, 6, Color.new(@c, 0, 0, @opacity))
c_color(5)
self.contents.fill_rect(i*14+6, 4, 1, 6, Color.new(@c, 0, 0, @opacity))
c_color(6)
self.contents.fill_rect(i*14+7, 3, 1, 6, Color.new(@c, 0, 0, @opacity))
c_color(7)
self.contents.fill_rect(i*14+8, 2, 1, 6, Color.new(@c, 0, 0, @opacity))
c_color(8)
self.contents.fill_rect(i*14+9, 3, 1, 4, Color.new(@c, 0, 0, @opacity))
c_color(9)
self.contents.fill_rect(i*14+10, 4, 1, 2, Color.new(@c, 0, 0, @opacity))
@hr += 1
end
if @option == 1
self.contents.font.color.set(0, 0, 0)
self.contents.draw_text(0 - 1, 7 - 1, 160, 32, $game_party.actors[0].name, 0)
self.contents.draw_text(0 - 1, 7 + 1, 160, 32, $game_party.actors[0].name, 0)
self.contents.draw_text(0 + 1, 7 - 1, 160, 32, $game_party.actors[0].name, 0)
self.contents.draw_text(0 + 1, 7 + 1, 160, 32, $game_party.actors[0].name, 0)
self.contents.font.color = normal_color
self.contents.draw_text(0, 7, 160, 32, $game_party.actors[0].name, 0)
elsif @option == 2
self.contents.font.color.set(0, 0, 0)
self.contents.draw_text(0 - 1, 7 - 1, 160, 32, "#{@n}/#{@mn}", 0)
self.contents.draw_text(0 - 1, 7 + 1, 160, 32, "#{@n}/#{@mn}", 0)
self.contents.draw_text(0 + 1, 7 - 1, 160, 32, "#{@n}/#{@mn}", 0)
self.contents.draw_text(0 + 1, 7 + 1, 160, 32, "#{@n}/#{@mn}", 0)
self.contents.font.color = normal_color
self.contents.draw_text(0, 7, 160, 32, "#{@n}/#{@mn}", 0)
elsif @option == 3
self.contents.font.color.set(0, 0, 0)
self.contents.draw_text(0 - 1, 7 - 1, 160, 32, "#{@ho/100}/#{@hearts}", 0)
self.contents.draw_text(0 - 1, 7 + 1, 160, 32, "#{@ho/100}/#{@hearts}", 0)
self.contents.draw_text(0 + 1, 7 - 1, 160, 32, "#{@ho/100}/#{@hearts}", 0)
self.contents.draw_text(0 + 1, 7 + 1, 160, 32, "#{@ho/100}/#{@hearts}", 0)
self.contents.font.color = normal_color
self.contents.draw_text(0, 7, 160, 32, "#{@ho/100}/#{@hearts}", 0)
elsif @option == 4
self.contents.font.color.set(0, 0, 0)
self.contents.draw_text(0 - 1, 7 - 1, 160, 32, "#{@l}%", 0)
self.contents.draw_text(0 - 1, 7 + 1, 160, 32, "#{@l}%", 0)
self.contents.draw_text(0 + 1, 7 - 1, 160, 32, "#{@l}%", 0)
self.contents.draw_text(0 + 1, 7 + 1, 160, 32, "#{@l}%", 0)
self.contents.font.color = normal_color
self.contents.draw_text(0, 7, 160, 32, "#{@l}%", 0)
end
end
def c_color(a)
if @hr <= (@ho/100)-1
@c = 255
else
if @ho/10-@hr*10 >= a and @ho/10-@hr*10 <= 9
@c = 255
else
@c = 0
end
end
end
def corazones(corazones)
@hearts = corazones
end
end
Mais question évènement, il y avait toujours des cinématiques complexes, des systèmes d'enchères à la Final Fantasy 9 ou d'autres trucs dont je n'ai plus le souvenir...
Les menus personnalisés à la FF ? Ce n'est pas si compliqué ! lol
En fait il suffit d'utiliser une variable (ou plusieurs), dont le nombre varie selon les touches directionnelles haut et bas. Selon le nombre de cette variable, la position d'une image (sélecteur, main ou autre...) varie. Ensuite, quand on appuie sur "entrée", il y a une vérification qui est faite : selon le nombre de la variable, il y a telle ou telle option.
Voilà, c'est le principe de base ! Et pourtant j'ai rien programmé depuis des années !
Vlà mon adresse mail : floflo12492@hotmail.com
Contacte-moi quand tu peux.
Je te contacte dès que j'ai le temps, tkt !