Page 1 sur 1

[Menu]Afficher des images différentes via le menu

Message Publié : 27 Juil 2007, 17:10
par Amathlog
Bonjour a tous !
Je vais vous présenter un petit script très sympa.
En fait il sert a afficher des images différentes via une fonction du menu (ici j'ai remplacer sauvegarder).
Ce script est utile pour ce qui est des pourcentages.
Je vais prendre l'example d'un verre d'eau.
Au début du jeu, il est vide car on a fini le jeu a 0%. Mais au fur et a mesure le pourcentage auguemente et le verre ce remplit.
C'est ce que j'ai voulu faire.
Voila donc les instructions :

Tout d'abord on modifie le Scene_Menu ici :
Code : Tout sélectionner
def main
    # ????????????
    s1 = $data_system.words.item
    s2 = $data_system.words.skill
    s3 = $data_system.words.equip
    s4 = "État"
    s5 = "Verre d'eau" #Remplace ça par le nom que tu veux
    s6 = "Quitter"
    @command_window = Window_Command.new(160, [s1, s2, s3, s4, s5, s6])
    @command_window.index = @menu_index



Puis ici aussi : ( ~ ligne 150)
Code : Tout sélectionner
when 4  # ???
        $game_system.se_play($data_system.decision_se)
        # ??????????
        $scene = Scene_Fenetre_Verre_Eau.new


Ensuite on créé un nouveau script juste au dessus de main que vous nommez Scene_Fenetre_Verre_Eau (si vous voulez le modifier il faudra modifier le nom dans scene_menu et dans cette scene.)
Et on insere ceci :
Code : Tout sélectionner
class Scene_Fenetre_Verre_Eau

  def main
    # ????????????????
    @sprite = Sprite.new
    @i = $game_variables[1] #Le chiffre entre crochet est l'id de votre variable
   
    #Si on veut qu'il y est plus de possibilité ou moins il faudra modifier les if (vous connaissez bien les signes > et < ?
    if @i == 0
      @sprite.bitmap = RPG::Cache.picture("Image 1") #A modifier par le nom de l'image qui sera placé dans le dossier pictures de ton jeu
    elsif @i < 20
      @sprite.bitmap = RPG::Cache.picture("Image 2") #A modifier
    elsif @i < 40
      @sprite.bitmap = RPG::Cache.picture("Image 3") #A modifier
    elsif @i < 60
      @sprite.bitmap = RPG::Cache.picture("Image 4") #A modifier
    elsif @i < 80
      @sprite.bitmap = RPG::Cache.picture("Image 5") #A modifier
    elsif @i < 100
      @sprite.bitmap = RPG::Cache.picture("Image 6") #A modifier 
    else
      @sprite.bitmap = RPG::Cache.picture("Image 7") #A modifier
    end
    Graphics.transition(50)
    loop do
      # ????????
      Graphics.update
      # ???????
      Input.update
      # ??????
      update
      # ????????????????
      if $scene != self
        break
      end
    end
    # ?????????
    Graphics.freeze
    # ????????????????
    @sprite.bitmap.dispose
    @sprite.dispose
    Graphics.transition(40)
    Graphics.freeze
    if $BTEST
      $scene = nil
    end
  end
  #--------------------------------------------------------------------------
  # ? ??????
  #--------------------------------------------------------------------------
  def update
    # C ??????????
    if Input.trigger?(Input::B)# Si on appuie sur echap, on revient au menu
      # ???????????
      $scene = Scene_Menu.new
    end
  end
end


J'ai fait une petite démo avec le script qui marche !
J'ai placé dans le dossier pictures des images de mon ancien jeu et il y a un personnage qui se trouve sur la première map.
Parle-lui et vous auguementerez la variable 001(celle utilisé dans le script) de 19 se qui vous permettera de voir des images différentes a chaque fois que vous parlerez (au bout d'un moment il y aura toujours la même image qui apparaitra c'est normal ! Car ce script est fait pour montrer quelque chose qui évolue (comme un verre d'eau qui se remplit) et quand la variable a atteint 100 (on présume que c'est du pourcentage donc sur 100), le verre d'eau est rempli et on irra pas plus loin.
Si vous voulez que je vous fasse un petit texte qui indique le nombre de pourcentage quand l'image apparait prévenez-moi !
Voila donc ta petite démo :
http://www.megaupload.com/?d=H97OP533
Elle n'est pas très lourde donc Megaupload va très bien

En espérant que cela va être utile !
@+

PS : Comme je m'embettais, j'ai fait une jolie map dans la démo !
PS2 : Désolé si l'explication est flou, si il y a quelque chose que vous ne comprenez pas, faites-le moi savoir !^^

Re: Afficher des images différentes via le menu

Message Publié : 11 Août 2007, 11:37
par Amathlog
Personne ne veut m'encourager ou autre chose !
J'essaye de faire des choses concraites pour m'entrainer et personne ne regarde.
Désolé de me plaindre mais j'ai passé un peu de temps avant de comprendre comment faire.
Martual dit moi si c'est pas bien ou mal codé !
Merci d'avance

Re: Afficher des images différentes via le menu

Message Publié : 11 Août 2007, 16:29
par Martial
Oups, excuse moi, si je n'avais pas répondu, c'est parce que je n'avais pas vu... Comme le message date, je pense qu'il n'a pas voulu m'afficher qu'il y avait un nouveau message ici.

Sinon, je viens de regarder (et de télécharger la démo) et j'ai vu que tu a fait pas mal de progrès ! Bientôt, je vais te demander d'écrire le tutoriel sur le Ruby ^^

Par contre, je n'ai pas trop compris où tu voudrais mettre ça. Les images sont censé représenté l'évolution fait dans le jeu, mais le mieux serait plutôt une barre de progression. Bref, pourrais-tu éclairer ma lanterne ? Merci :wink:

Re: Afficher des images différentes via le menu

Message Publié : 11 Août 2007, 19:09
par Amathlog
En fait c'est un script que j'ai réalisé pour la demande de quelqu'un d'un autre forum qui voulait faire ça.
Donc vu que je veux faire partager mes scripts je l'ai posé ici !
Merci de dire que j'ai progresser !^^ Mais je ne suis pas encore a un niveau suffisant pour programmer mon pokémon.
Bon si tu as des exercises pas trop dur a réaliser en Ruby dis le moi !
Merci !

Re: Afficher des images différentes via le menu

Message Publié : 11 Août 2007, 20:34
par Martial
J'essayerais de te faire une liste de "défi" a réalisé en RUby. J'ai déjà des idées ! :lol:

Re: Afficher des images différentes via le menu

Message Publié : 26 Août 2007, 13:59
par Shaolan
je suis d'accord avec martial, les images ne sont pas trop super pour représenter une progression.