chaipokoi
Messages : 438
| Sujet: script de statut personnalisé (pour projet pokemon à la base) Dim 12 Sep - 14:59 | |
| bonjour à tous! je travaille en ce moment sur un projet pokemon et j'ai donc créer un script de statut personnalisé et de lecture de musique. toutes les information sur le script sont dessus. un petit aperçu: - Spoiler:
désolé pour les images le serveur bug
les ressources nécessaire au test sont là: - Spoiler:
désolé pour les images le serveur bug
ces deux images sont a nommer respectivement: "a" et "back" - Spoiler:
- Code:
-
#============================================================================== # ■ Scene_Ppod #------------------------------------------------------------------------------ #par chaipokoi #============================================================================== #le script qui suit permet a l'utilisateur d'avoir une fentre de statistiques #amélioré affichant les pvs,l'exp le niveau ect... mais aussi d'autres stats #telle que la faim et le sommeil ainsi que l'accès a une radio (incorporée)/ #------------------------------------------------------------------------------ #IMPORTANT!!!!!!!!!!! #pour le bon fonctionnement de ce script il est necessaire de créer un event #en demarrage automatique au debut de la partie et ayant les commandes suivantes: # <>variable(s)[0026:faim] rendre(s) égale à 50 # <>variable(s)[0027:faimmax] rendre(s) égale à 50 # <>variable(s)[0028:sommeil] rendre(s) égale à 30 # <>variable(s)[0027:sommax] rendre(s) égale à 30 # <>effacer cette evenement
# puis de créer un autre event en PROCESSUS PARALELLE sur CHAQUE MAP #ayant les commandes suivantes: # <>variable(s)[0031:vie] rendre(s) égale à ["nom de votre hero"] -->pv actuel # <>variable(s)[0032:viemax] rendre(s) égale à ["nom de votre hero"] -->pv max # <>variable(s)[0033:exp] rendre(s) égale à ["nom de votre hero"] -->expérience # <>variable(s)[0034:niv] rendre(s) égale à ["nom de votre hero"] -->niveau #ce qui actualisera les variable toutes les frames #------------------------------------------------------------------------------
#------------------------------------------------------------------------------ #IMPORTANT!!!!!!!!!!! #pour integrer ce script au jeu remplacez: # 's4 = "État"' du script Scene_Menu par 's4 = "pod"' #et le: #'when 3 # ステータス # 決定 SE を演奏 #$game_system.se_play($data_system.decision_se) # ステータスウィンドウをアクティブにする #@command_window.active = false #@status_window.active = true #@status_window.index = 0'
#du script Scene_Menu par: #'when 3 #$game_system.se_play($data_system.decision_se) #$scene=Scene_Pod.new' #------------------------------------------------------------------------------
class Scene_Pod def main #affichage de la map en background @map = Spriteset_Map.new
#affichage des stats @stat_window=Window_Pokepod.new @pv_window= Window_MenuStatus.new
#-------------------------------------------------------------------------------- #vous pouvez modifier la position des fenetres de statistiques en modifiant #les variables ci-dessous @stat_window.x=40 @stat_window.y=135 @pv_window.x=40+110 @pv_window.y=30 #--------------------------------------------------------------------------------
#affichage du fond #-------------------------------------------------------------------------------- #vous pouvez changer l'image de fond en changeant la valeur de la variable background = "back" #ci-dessus,pour cela il faut que votre image soit dans le dossier picture de votre #projet #--------------------------------------------------------------------------------
@backg = Sprite.new @backg.bitmap = RPG::Cache.picture(background) @backg.x = 0 @backg.y = 0 #affichage du battler du poké #-------------------------------------------------------------------------------- #vous pouvez changer l'image de votre personnage en changeant la valeur de la variable battler = "a" #ci-dessus,pour cela il faut que votre image soit dans le dossier picture de votre #projet #--------------------------------------------------------------------------------
@poke=Sprite.new @poke.bitmap = RPG::Cache.picture(battler) #-------------------------------------------------------------------------------- #vous pouvez modifier la position de la fenetre d'aperçu en modifiant #les variables ci-dessous @poke.x = 40 @poke.y = 130 #--------------------------------------------------------------------------------
#affichage des infos @info_window=Window_info.new #-------------------------------------------------------------------------------- #vous pouvez modifier la position de la fenetre de commentaire en modifiant #les variables ci-dessous @info_window.x=40+25+54 @info_window.y=190 #--------------------------------------------------------------------------------
#window command #-------------------------------------------------------------------------------- #vous pouvez modifier les options de votre pod en changeant la valeur des variables s1 = "lecteur mp3" s2 = "jeux" s3= "fermer" #ci-dessus. #----------------------------------------------------------------------------------- @command_window = Window_Command.new(160, [s1, s2,s3]) #-------------------------------------------------------------------------------- #vous pouvez modifier la position de la fenetre d'options en modifiant #les variables ci-dessous @command_window.x = 400 @command_window.y = 184 #-------------------------------------------------------------------------------- @command_window.opacity = 0
#affichage de la radio #-------------------------------------------------------------------------------- #changez ici le nom des musiques de la radio proposés. r1="follow me around" r2="Lullaby" r3="Oak" #ne touchez pas à ceci r6="vos musiques" r4="éteindre" r5="fermer" @radio_window=Window_Command.new(160, [r1, r2,r3,r6,r4,r5]) @radio_window.x = 400 @radio_window.y = 150 @radio_window.opacity=0 @radio_window.visible=false @radio_window.active=false #--------------------------------------------------------------------------------
Graphics.transition
loop do
Graphics.update # ??????? Input.update # ??????
@pv_window.update @stat_window.update @command_window.update @radio_window.update update_command
if $scene != self break end end
Graphics.freeze @backg.dispose @stat_window.dispose @command_window.dispose @pv_window.dispose @map.dispose @info_window.dispose @poke.dispose @radio_window.dispose end
def update_command # B ?????????? if Input.trigger?(Input::B) # ????? SE ??? $game_system.se_play($data_system.cancel_se) # ?????????? $scene = Scene_Map.new return end
if Input.trigger?(Input::C) if $game_party.actors.size == 0 and @command_window.index < 4 $game_system.se_play($data_system.buzzer_se) return end
#menu pokepod case @command_window.index #-------------------------------------------------------------------------------- #vous pouvez modifier les effets des options de votre pod en changeant le script ci dessous when 0 #ouverture de la radio $game_system.se_play($data_system.decision_se) @command_window.visible=false @command_window.active=false @radio_window.visible=true @radio_window.active=true when 1 $game_system.se_play($data_system.decision_se) when 2 $game_system.se_play($data_system.decision_se) $scene=Scene_Map.new #-------------------------------------------------------------------------------- end
#radio case @radio_window.index #-------------------------------------------------------------------------------- when 0 $game_system.se_play($data_system.decision_se) $game_system.bgm_stop #mettez ici le nom COMPLET de votre musique situé dans le dossier bgm Audio.bgm_play("Audio/BGM/Follow_Me_Around.mid") when 1 $game_system.se_play($data_system.decision_se) $game_system.bgm_stop #mettez ici le nom COMPLET de votre musique situé dans le dossier bgm Audio.bgm_play("Audio/BGM/Lullaby.mid") when 2 #mettez ici le nom COMPLET de votre musique situé dans le dossier bgm $game_system.se_play($data_system.decision_se) $game_system.bgm_stop Audio.bgm_play("Audio/BGM/Radio - Oak.mid") when 3 $game_system.se_play($data_system.decision_se) #en cours de developpement when 4 #éteins la radio $game_system.se_play($data_system.decision_se) $game_system.bgm_stop @radio_window.visible=false @radio_window.active=false @command_window.visible=true @command_window.active=true when 5 #ferme la radio $game_system.se_play($data_system.decision_se) @radio_window.visible=false @radio_window.active=false @command_window.visible=true @command_window.active=true end #--------------------------------------------------------------------------------
end end end
#============================================================================== # ■ Window_MenuStatus #------------------------------------------------------------------------------ # par bodom-child,Rabbi #modifié par chaipokoi #==============================================================================
class Window_MenuStatus < Window_Base #-------------------------------------------------------------------------- # initialisation #-------------------------------------------------------------------------- def initialize super(0, 0, 640, 480) self.contents = Bitmap.new(width - 32, height - 32) self.contents.font.name = $fontface self.contents.font.size = 16 self.opacity=0 refresh end #-------------------------------------------------------------------------- # rafraichissement #-------------------------------------------------------------------------- def refresh self.contents.clear #pour la démonstration le nom du pokemon est pikachu,vous pouvez remplacer la #valeur de name par ce que vous voulez if $game_variables[006]==0 name="pikachu :" end y=0 x=0 self.contents.font.color=Color.new(0,0,0,100) self.contents.draw_text(x,y,200,200,name) self.contents.draw_text(x,y+25,200,200,"points de vie :") self.contents.draw_text(x,y+25+25,200,200,$game_variables[31].to_s+"/"+$game_variables[32].to_s) self.contents.draw_text(x,y+25+25+25,200,200,"expérience: "+$game_variables[33].to_s) self.contents.draw_text(x,y+25+25+25+25,200,200,"niveau: "+$game_variables[34].to_s) end end
#============================================================================== # ■ Window_Pokepod #------------------------------------------------------------------------------ #par chaipokoi #============================================================================== class Window_Pokepod<Window_Base #-------------------------------------------------------------------------- # initialisation #-------------------------------------------------------------------------- def initialize super(0, 0, 640, 480) self.contents = Bitmap.new(width - 32, height - 32) self.contents.font.name = $fontface self.contents.font.size = 20 self.contents.font.color =Color.new(0,0,0,100) self.opacity=0 refresh end #-------------------------------------------------------------------------- # rafraichissement #-------------------------------------------------------------------------- def refresh self.contents.clear #ici le script affiche uniquement la faim et le sommeil definis par les variables #numéros 26 et 28 et leur maximum,les variables 27 et 29 y=20 self.contents.draw_text(0,y,200,200,"faim:") self.contents.draw_text(0,y+18,200,200,$game_variables[26].to_s) self.contents.draw_text(25,y+18,200,200,"/"+$game_variables[27].to_s) self.contents.draw_text(0,y+18+18,200,200,"sommeil:") self.contents.draw_text(0,y+18+18+18,200,200,$game_variables[28].to_s) self.contents.draw_text(25,y+18+18+18,200,200,"/"+$game_variables[29].to_s) end end
#============================================================================== # ■ Window_info #------------------------------------------------------------------------------ #par chaipokoi #============================================================================== class Window_info<Window_Base #-------------------------------------------------------------------------- # initialisation #-------------------------------------------------------------------------- def initialize super(0, 0, 640, 480) self.contents = Bitmap.new(width - 32, height - 32) self.contents.font.name = $fontface self.contents.font.size = 20 self.contents.font.color =Color.new(0,0,0,100) self.opacity=0 refresh end #-------------------------------------------------------------------------- # rafraichissement #-------------------------------------------------------------------------- def refresh self.contents.clear #ici , si la variable faim (n°26) est <=10 le script affichera le message: #"pikachu a faim" #tandis que si la variable sommeil (n°28) est <=10 le script affichera: #"pikachu dort debout" #et si la faim et le sommeil (n°26 et 28) sont >10 le script affichera: #"pikachu se sent bien". if $game_variables[26]<=10 self.contents.font.size = 20 self.contents.draw_text(0,0,200,200,"pikachu a faim.") end if $game_variables[26]>10 and $game_variables[28]>10 self.contents.font.size = 18 self.contents.draw_text(0,0,200,200,"pikachu se sent bien.") end if $game_variables[28]<=10 self.contents.font.size = 18 self.contents.draw_text(0,0,200,200,"pikachu dort debout.") end end end
Dernière édition par chaipokoi le Dim 19 Sep - 12:09, édité 8 fois | |
|
Aenki
Messages : 6953
| Sujet: Re: script de statut personnalisé (pour projet pokemon à la base) Dim 12 Sep - 15:03 | |
| Ce script sert exactement à quoi ? | |
|
chaipokoi
Messages : 438
| Sujet: Re: script de statut personnalisé (pour projet pokemon à la base) Dim 12 Sep - 15:08 | |
| a oui désolé j'avais marqué saut dans le titre . | |
|
Léo
Messages : 6241
| Sujet: Re: script de statut personnalisé (pour projet pokemon à la base) Dim 12 Sep - 16:18 | |
| Ça a l'air pas mal à première vue, après perso je n'utilise pas XP ou VX donc je ne pourrai pas tester, mais j'aimerai bien voir ce que ça donne.. (une petite vidéo ? ou un screen in-game ? ) Sinon, la DS n'est pas très bien faite, c'est dommage.. | |
|
chaipokoi
Messages : 438
| Sujet: Re: script de statut personnalisé (pour projet pokemon à la base) Dim 19 Sep - 12:10 | |
| hop 'tite mise à jour, le lecteur de musique est fonctionnel ! | |
|
Contenu sponsorisé
| Sujet: Re: script de statut personnalisé (pour projet pokemon à la base) | |
| |
|