|
Auteur | Message |
---|
Kasbak Membre V.I.P.
Messages postés : 1356 Date d'inscription : 05/01/2013 Jauge LPC :
| Sujet: Fabrication HUD Ven 16 Jan 2015 - 10:16 | |
| J'ai un souci avec la création de ma HUD avec les jauges. J'ai fait comme ça pour modifier le début du scene_map: - Code:
-
#============================================================================== # ** Scene_Map #------------------------------------------------------------------------------ # This class performs map screen processing. #==============================================================================
class Scene_Map #-------------------------------------------------------------------------- # * Main Processing #-------------------------------------------------------------------------- def main # Make sprite set @spriteset = Spriteset_Map.new # Make message window @message_window = Window_Message.new @img_fond = Sprite.new @img_fond.bitmap = RPG::Cache.picture("HUD") #@Window_Item2 = Window_Item2.new #@Window_Item2.x =0 #@Window_Item2.y =380 @window1 = Window_Progress.new @window1.x =0 @window1.y =0 @window1.height =100 #100 @window1.width = 203#341
@window2 = Window_Progress2.new @window2.x =0 @window2.y =390#50 @window2.height =100 #100 @window2.width = 203#341
# Transition run Graphics.transition # Main loop loop do # Update game screen Graphics.update # Update input information Input.update # Frame update update @window1.update #@Window_Item2.update @window2.update # Abort loop if screen is changed if $scene != self break end end # Prepare for transition Graphics.freeze # Dispose of sprite set @spriteset.dispose # Dispose of message window @message_window.dispose #@Window_Item2.dispose @window1.dispose @window2.dispose # If switching to title screen if $scene.is_a?(Scene_Title) # Fade out screen Graphics.transition Graphics.freeze end end
ect ect
Du coup sur la map pour actualiser la jauge sur la map je fais par exemple - Code:
-
$game_variables[2] += 18 $scene = Scene_Map.new mais bon ça créer un lag (en plus si je met ça en aléatoire avc plusieurs jauge ça va faire que de créer des ralentissements )et si par exemple je suis un train de lire un message ça ferme la boite du coup...je sais pas comment procéder quelqu'un sait comment faire ? |
|
| |
Jin Ancien staffeux
Messages postés : 8557 Date d'inscription : 08/12/2010 Jauge LPC :
| Sujet: Re: Fabrication HUD Ven 16 Jan 2015 - 11:46 | |
| En gros c'est une jauge de vie ? Qui se vide en fonctionne en fonction des dégats ?
Donc sur ton event qui te fait perdre ou gagner de la vie, il faut empêcher la boucle. C'est surement ca qui fait laguer.
Assure toi que ton event ne l'execute qu'une seule fois. Sinon ca lag, voir le crash du jeu. |
|
| |
Kasbak Membre V.I.P.
Messages postés : 1356 Date d'inscription : 05/01/2013 Jauge LPC :
| Sujet: Re: Fabrication HUD Ven 16 Jan 2015 - 12:39 | |
| Non en fait c'est une jauge liés à une variable qui ce modifie par rapport au action ou au temps dans le jeu de manière plus ou moins aléatoire.Le lag ce déclenche au moment ou la fonction dans event ou event commun: 'insérer script' - Code:
-
$game_variables[2] += 18 $scene = Scene_Map.new là y'a un lag qui ce créer comme la map fait un genre de 'refresh' (je sais pas si c'est le bon therme)dû au nouveau scene_map mais si je le fait pas la jauge ne bouge pas jusqu'a ouverture d'un menu,faudrait que seule la jauge ce refresh et pas le reste de la map heros,message,ect... |
|
| |
Hellper Chevalier Dragon (niveau 5)
Messages postés : 1190 Date d'inscription : 04/03/2013 Jauge LPC :
| Sujet: Re: Fabrication HUD Ven 16 Jan 2015 - 12:41 | |
| À quoi te sert cette ligne ? - Code:
-
$scene = Scene_Map.new Edit : un instant, tu recharge la scene pour mettre à jour ? C'est assez lourd comme méthode. Un peu comme si tu devais démolir et rebâtir ta maison à chaque fois que tu changes de pièce. |
|
| |
FalconPilot Paysan (niveau 4)
Messages postés : 34 Date d'inscription : 12/08/2011 Jauge LPC :
| Sujet: Re: Fabrication HUD Ven 16 Jan 2015 - 13:02 | |
| Si tu recharges ta map pour rafraîchir ta jauge, pas étonnant que ça lag. Mon conseil, repense ton code et insère une boucle pour update la jauge. |
|
| |
Kasbak Membre V.I.P.
Messages postés : 1356 Date d'inscription : 05/01/2013 Jauge LPC :
| Sujet: Re: Fabrication HUD Ven 16 Jan 2015 - 15:32 | |
| Ouai c'est exactement ça que je fais parceque je sais pas faire autrement,pour les jauges j'utilise un script et j'ai insérer ce code sur la scene_map. - Code:
-
class Scene_Progress
#--------------------------------------------------------------------------------- def initialize end #---------------------------------------------------------------------------------
def main @window1 = Window_Progress.new @window1.x =160#160 @window1.y =200#200 @window1.height =100 #100 @window1.width = 341#341 #@window1.z = 200 opacity = 0
Graphics.transition loop do Graphics.update Input.update if Input.trigger?(Input::B) # キャンセル SE を演奏 $game_system.se_play($data_system.cancel_se) # マップ画面に切り替え @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, 500,100)#(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(-80, 22, 33, 33, "")#(20, 0, 33, 33, "Prog") self.contents.draw_text(-45, 0, 33, 33, "")#(55, 0, 33, 33, "ress") self.contents.draw_text(88, 0, 33, 33, " ") #(88, 0, 33, 33, " ") self.contents.draw_text(-10, 0, 33, 33, "") #(110, 0, 33, 33, "% ") draw_actor_barz(0,20,35, "horizontal", 150, 21,$game_variables[1],100) #draw_actor_barz(0,20,35, "horizontal", 255, 28,$game_variables[1],100) @sprite = Sprite.new @sprite.bitmap = RPG::Cache.panorama("", 0)
# Definir Windowskin self.windowskin = RPG::Cache.windowskin("") # Definir Windowskin
end #---------------------------------------------------------------------------------
end
et dans mon scene_map j'ai mis - Code:
-
@window1 = Window_Progress.new @window1.x =0 @window1.y =0 @window1.height =100 #100 @window1.width = 203#341 du coup j'ai trouver que - Code:
-
$scene = Scene_Map.new comme solution. Je veut bien repenser la chose mais il me faudrais un peu plus d'explication parce que je voit pas trop comment procéder.. |
|
| |
shin Chevalier Dragon (niveau 1)
Messages postés : 726 Date d'inscription : 18/10/2011 Jauge LPC :
| Sujet: Re: Fabrication HUD Ven 16 Jan 2015 - 16:30 | |
| Ouh comme c'est dégueulasse mais bon on est tous passé par là quand on a commencé à scripté un peu Je pense que le mieux serait de ne pas créer une scène supplémentaires mais d'utiliser la scène_map déjà existante et de d'afficher ta jauge directement et dans la fonction update de la scène_map appeler une fonction qui actualise ta jauge. Bon c'est pas très claire mais avec ça t'as les bonnes pistes. |
|
| |
Kasbak Membre V.I.P.
Messages postés : 1356 Date d'inscription : 05/01/2013 Jauge LPC :
| Sujet: Re: Fabrication HUD Ven 16 Jan 2015 - 17:46 | |
| Ok je vais essayer ça.
Edit:j'ai réussi j'ai fait un event qui appel un script Window_Progress2.new |
|
| |
Kasbak Membre V.I.P.
Messages postés : 1356 Date d'inscription : 05/01/2013 Jauge LPC :
| Sujet: Re: Fabrication HUD Dim 18 Jan 2015 - 19:13 | |
| J'ai un soucis dans un script à nouveau. quand y'a cette ligne ça me marque l'erreur "implicit for nil..." - Code:
-
self.contents.font.name = $fontsize ou - Code:
-
self.contents.font.size = $fontsize/1.2 du coup j'ai mis = 14 mais on voit plus le texte il est invisible... comment je peut faire ?? |
|
| |
Jin Ancien staffeux
Messages postés : 8557 Date d'inscription : 08/12/2010 Jauge LPC :
| Sujet: Re: Fabrication HUD Dim 18 Jan 2015 - 19:59 | |
| J'ai jamais pigé ce soucis avec les variables static sur RM ... une fois sur 2 ca plante xD |
|
| |
Hellper Chevalier Dragon (niveau 5)
Messages postés : 1190 Date d'inscription : 04/03/2013 Jauge LPC :
| Sujet: Re: Fabrication HUD Dim 18 Jan 2015 - 20:03 | |
| Tu veux dire les globales ? |
|
| |
Jin Ancien staffeux
Messages postés : 8557 Date d'inscription : 08/12/2010 Jauge LPC :
| Sujet: Re: Fabrication HUD Dim 18 Jan 2015 - 20:06 | |
| Je sais plus si le " $ " sont des static ou des globales x) Mais c'est surement Globale. Logiquement une static c'est en majuscule. Mais bon les langages ... ca peut varier d'un à un autre. ^^ |
|
| |
Kasbak Membre V.I.P.
Messages postés : 1356 Date d'inscription : 05/01/2013 Jauge LPC :
| Sujet: Re: Fabrication HUD Dim 18 Jan 2015 - 20:57 | |
| Ouai c'est galère surtout sur un autre projet sa fonctionne est là ça marche pas... |
|
| |
shin Chevalier Dragon (niveau 1)
Messages postés : 726 Date d'inscription : 18/10/2011 Jauge LPC :
| Sujet: Re: Fabrication HUD Dim 18 Jan 2015 - 23:48 | |
| Quand tu as cette erreur ca veut dire que tu essaye d'initialiser t'as variables avec une variables egale a "nil" cet a dire vide. Verifie que tu initialise bien cette variable : $fontsize. PS : sorry pour les accents je suis en cour et c'est chiant les accent avec un clavier qwerty PS2: ils sont trop bien les "smiley brainbourg" ^^ |
|
| |
Kasbak Membre V.I.P.
Messages postés : 1356 Date d'inscription : 05/01/2013 Jauge LPC :
| Sujet: Re: Fabrication HUD Lun 19 Jan 2015 - 19:34 | |
| Je dois faire comment ? C'est un truc de quel style ? - Code:
-
@txt.bitmap.font.size = 30 - Code:
-
attr_accessor :text_display - Code:
-
Font.default_size = 12 |
|
| |
shin Chevalier Dragon (niveau 1)
Messages postés : 726 Date d'inscription : 18/10/2011 Jauge LPC :
| Sujet: Re: Fabrication HUD Lun 19 Jan 2015 - 19:39 | |
| Tu donnes un nombre directement un nombre pour la size et si ça met la même erreur il est possible que ce soit pas $fontsize qui soit égal à nil mais "contents". Après c'est difficile de voire ou est précisément l'erreur sans le code sous les yeux. |
|
| |
Kasbak Membre V.I.P.
Messages postés : 1356 Date d'inscription : 05/01/2013 Jauge LPC :
| Sujet: Re: Fabrication HUD Lun 19 Jan 2015 - 22:17 | |
| Le code c'est mon menu,c'est plein de script et d'appel de script et sur un autre projet il fonctionne, donc ça doit etre un conflit avec un autre script ajouter qui annule ou redéfini quelque chose au niveau du "contents" ou du "size" pour ça faudrais que j'arrive à directement le corriger dans une ligne proche pour remettre le script en place.Je vais essayer de regarder à nouveau en regardant du coté du "contents",merci. |
|
| |
Contenu sponsorisé
| Sujet: Re: Fabrication HUD | |
| |
|
| |
|