Sujet n°3031
Posté par Pαlвσlѕку le 28 Fév - 17:36 (2009)
Titre : Menu POKéMON
[Script] Menu POKéMON  

[PSP / DP / Testé] 


Compatible : PSP0.7 2nd Béta et PSP4G+

Bonjour tout le monde.

En téléchargeant PSP4G+, je me suis dit : "Chouette, on peut choisir entre le style DP et le style RSE"
A ma grande déception, la différence des deux styles du Menu POKéMON ne se fait que par le changement de fond.
J'ai donc complétement repris le script Pokemon_Party_Menu.

Je parle, je parle, mais vous ne savez toujours pas ce que j'ai modifié.
Une image vaut mieux qu'une description.

Screen




C'est énorme, n'est-ce-pas ?

Maintenant, pour ceux qui veulent avoir ce beau menu, télécharger le fichier suivant :
Cliquer ici pour télécharger le fichier

Remplacer le script Pokemon_Party_Menu par le script ci-joint.
Toutes les images doivent être placer dans le dossier Pictures.

Pour ceux qui n'aime pas le fond Platine, voici le fond D/P :

Fond D/P



L'image devra être nommé "Partyfond" est devra être placé dans le dossier Pictures.

Image réalisée par Gobu38.

Amélioration(s) prévue(s) :

- Faire sautiller les POKéMON de haut en bas.
- Changement de couleur du cadre quand le POKéMON est sélectionné.
- Ajout du bouton ANNULER.

Voilà, c'est terminé.

Crédits :

---> Palbolsky <---

Script
Ressources

---> Gobu38 <---

Fond POKéMON D/P

EDIT : Correction d'un bug. Télécharger le fichier pour accéder à la correction. Remplacer l'ancien script par le nouveau pour que la correction soit effectuée.

Posté par Jordan le 28 Fév - 17:41 (2009)
PALBOLSKY TU ES MON SAUVEUR

Posté par PiVa le 28 Fév - 17:43 (2009)
Trop fort, je prend !

Posté par Draco le 28 Fév - 17:45 (2009)
Super !!! ça marche !!
crédit !

Posté par Koalix le 28 Fév - 18:04 (2009)
Merci, crédit mon ptit Palbolsky

Posté par Solfay1 le 28 Fév - 18:35 (2009)
Depuis le temps que je rêve de faire un menu comme celui la *-*

Merci beaucoup Bouche extensiblek:

Posté par PiVa le 28 Fév - 19:02 (2009)
On pourrait pas faire sautiller les pokémon ?

Posté par Pαlвσlѕку le 28 Fév - 19:28 (2009)
Pichu65 a écrit:
On pourrait pas faire sautiller les pokémon ?

J'ai déjà essayé mais je n'ai pas réussi.

Gobu38 a écrit:
Depuis le temps que je rêve de faire un menu comme celui la *-*

Merci beaucoup Bouche extensiblek:

Rêve devenu réaliter 8)

Si vous remarquez des bugs, veuillez m'en faire part.

Mise à jour du premier post, je n'avais pas eu vraiment le temps de le terminer.

Vos commentaires me font plaisir. Merci pour les crédits.

Posté par Jordan le 28 Fév - 19:40 (2009)
quels difficultés? mettre un script et de simages xd?

Posté par Pαlвσlѕку le 28 Fév - 20:22 (2009)
Jordan, c'est long et assez difficile.

- Déjà le fait que j'ai dû agrandir les images, pour la plupart, en 250 %, cela ma fait des agrandissements de pixels non réguliers. Donc j'ai du reprendre toutes les images une par une.

- Après, il fallait faire la navigation. Plus de 200 lignes pour définir les mouvements du curseur, avec un encadrement pour éviter que le curseur bouge quand on n'a pas de POKéMON.

- Après, il a fallut que je positionne les fenêtres, textes, que je refasse la barre des PVs (ajout d'un rectangle, couleurs reprises), etc...
C'est long, il faut repérer ce qui gère l'emplacement et la taille de l'image pour chaques images.
J'ai aussi modifier les textes qui apparaissait (ex : Choisissez un POKéMON, avant c'était : Choisir un POKéMON)

Donc ce n'est pas à la porter de tout le monde. Il faut avoir de la patience et s'y connaître un peu en script (condition, variables, etc...)

Donc réponse à la question : Ce n'est pas xD Mollasse enragé

Posté par PiVa le 28 Fév - 21:10 (2009)
Ce n'est pas un bug mais le fond est mal colorié xD

Et de rien, c'est normal de mettre un crédit pour ça !

Posté par Pαlвσlѕку le 28 Fév - 21:13 (2009)
J'ai oublié de préciser, c'est le fond de POKéMON Platine Lordork chez mémé

Posté par Shimo le 28 Fév - 21:25 (2009)
:shock: Bravo Palbolsky ! :shock:
ça va nous être bien utile ça dit donc!! :mrgreen:
Je test tout de suite chui trop impatient :lol:
^-^

PS : ça marche... Bouche extensiblek:
Et un mec dans mes crédit en plus! Clin d'œil foireux

Posté par Pαlвσlѕку le 28 Fév - 21:47 (2009)
Premier post mit à jour.

Correction d'un bug graphique qui faisait que le remplissage de la barre des PVs était un pixel trop grand.

Posté par PiVa le 28 Fév - 22:05 (2009)
Tien je l'ai ripper suite à ta demande sur le tchat :

Posté par Opal le 28 Fév - 22:41 (2009)
Eu par contre moi il me dit beug a la ligne 956 plus précisément "@pokemon.egg".

Posté par Manegator le 28 Fév - 23:39 (2009)
Moi je dis... respect pour ce menu digne du domaine de l'excellentissisme !
C'est un très bon travail ! Bouche extensiblek:

Posté par Pαlвσlѕку le 1 Mar - 11:32 (2009)
Opal a écrit:
Eu par contre moi il me dit beug a la ligne 956 plus précisément "@pokemon.egg".

As-tu les oeufs d'intégrer à ta version de PSP ?

Merci Pichu65, même si j'ai eu le temps de le faire hier soir.

Posté par Opal le 1 Mar - 13:44 (2009)
Eu je ne sais pas du tout comment le savoir ?

Posté par Pαlвσlѕку le 1 Mar - 15:12 (2009)
Opal, passe moi le fichier log SVP.

Posté par Solfay1 le 1 Mar - 17:10 (2009)
j'en profite pour poster le fond de Diamant et Perle :
Fond Pokemon diamant et perle


résultat

Posté par Pαlвσlѕку le 1 Mar - 17:43 (2009)
1er post mit à jour.

Si vous avez des suggestions, proposez-les.

PS : Merci Gobu38, j'avais pas le temps de m'en charger.

Posté par Opal le 1 Mar - 17:56 (2009)
Palbolsky J'en utilise pas:( .

Posté par Pαlвσlѕку le 1 Mar - 21:14 (2009)
Opal. Je n'ai pas compris...
Si tu n'as pas de rapport de log, cela veut dire que tu utilises PSP0.5 ou PSP4G.
Au moins cite moi le message qui apparaît à l'écran.

Posté par Opal le 1 Mar - 21:36 (2009)
Et bien je n'utilise aucun exactement j'ai pris tous les dl et j'ai choisi les scripts et évenement communt qui m'interressés.
Voila ce qui m'affiche quand je lance le menu pokemon depuis mon menu:


Sinon comment rajouter les oeufs ?

Posté par Pαlвσlѕку le 1 Mar - 21:58 (2009)
Opal a écrit:
Et bien je n'utilise aucun exactement j'ai pris tous les dl et j'ai choisi les scripts et évenement communt qui m'interressés.

Voilà la raison du bug, comme tu as fait du gros bidouillage, mon script bug. Il te reste plus qu'a choisir l'une des versions de PSP Clin d'œil foireux
Je pense que ce ne sera pas le seul bug que tu auras...

Posté par Opal le 1 Mar - 22:04 (2009)
Mouai je m'en passerais alors ^^ (c'est le seul beug que j'ai eu de script complet depuis 3-4 moi que j'utilise ^^).

Posté par Pαlвσlѕку le 1 Mar - 22:06 (2009)
C'est très bizarre, j'ai pas toucher aux oeufs. Donc il y a vraiment un gros problème chez toi.

Posté par Sphinx le 1 Mar - 23:00 (2009)
>> facile, il doit essayer de faire tourner des évents de PSP0.7 sur des scripts de 0.5 Clin d'œil foireux Ce qui explique qu'il n'ait pas les oeufs (<= inclus depuis 0.7 uniquement)

Posté par Jordan le 2 Mar - 13:12 (2009)
Palbolsky a écrit:
Jordan, c'est long et assez difficile.
- Déjà le fait que j'ai dû agrandir les images, pour la plupart, en 250 %, cela ma fait des agrandissements de pixels non réguliers. Donc j'ai du reprendre toutes les images une par une.

- Après, il fallait faire la navigation. Plus de 200 lignes pour définir les mouvements du curseur, avec un encadrement pour éviter que le curseur bouge quand on n'a pas de POKéMON.

- Après, il a fallut que je positionne les fenêtres, textes, que je refasse la barre des PVs (ajout d'un rectangle, couleurs reprises), etc...
C'est long, il faut repérer ce qui gère l'emplacement et la taille de l'image pour chaques images.
J'ai aussi modifier les textes qui apparaissait (ex : Choisissez un POKéMON, avant c'était : Choisir un POKéMON)

Donc ce n'est pas à la porter de tout le monde. Il faut avoir de la patience et s'y connaître un peu en script (condition, variables, etc...)

Donc réponse à la question : Ce n'est pas xD Mollasse enragé




je ne parlais pas de ton travail plab, mais celui que nous nous devons fournir pour mettre ce script Clin d'œil foireux

Posté par Newtiteuf le 2 Mar - 13:16 (2009)
Hum ... pas mal ! Je vais peut etre l'installer ^^

Posté par Opal le 2 Mar - 13:16 (2009)
Bon c'est bon pour moi j'ai réglé mon probléme donc merci bonne continuation a tes scripts.

Posté par Pαlвσlѕку le 2 Mar - 18:25 (2009)
Jordan >> Oki, j'avais pas compris. L'installation, elle est très simple (coller des images dans un dossier et coller un script).

Opal >> OK

Sphinx >> J'ai pensé la même chose que toi mais ça aurait du buguer plus tôt.

NT >> Si tu as besoin de renseignement, n'hésite pas en m'en parler.

Posté par PiVa le 2 Mar - 20:45 (2009)
J'ai une question/demande, pourrait-tu indiquer les changements que tu as opéré ?
Dans le but que si un jour on doit changer de version de PSP et que le script change que ça écrase pas tous pour pouvoir le remettre.

Si tu peux ou veux pas, bah c'est tous ~.~"

Posté par Pαlвσlѕку le 2 Mar - 21:52 (2009)
Pichu, je veux bien mais j'ai touché à pas mal de chose.
Je vais essayé de me souvenir...

La navigation :


J'ai remplacé ce morceau là :
Code:
if Input.repeat?(Input::DOWN)
        $game_system.se_play($data_system.cursor_se)
        @menu_index += (@menu_index == @party_window.size-1) ? 0 : 1
        located_refresh
        return
      end
      if Input.repeat?(Input::UP)
        $game_system.se_play($data_system.cursor_se)
        @menu_index -= (@menu_index == 0) ? 0 : 1
        located_refresh
        return
      end
      if Input.trigger?(Input::LEFT)
        $game_system.se_play($data_system.cursor_se)
        @menu_index = 0
        refresh
        return
      end
      if Input.trigger?(Input::RIGHT) and @menu_index == 0 and $pokemon_party.size > 1
        $game_system.se_play($data_system.cursor_se)
        @menu_index = 1
        refresh
        return
      end


Par cet énorme morceau :

Code:
#------------------------------------------------------------------------
# Navigation Menu - Palbolsky
# A ne pas modifier de préférence.
#-------------------------------------------------------------------------
# Rappel des dispositions des fenêtres :
#  -------    -------
# |   0   |  |   1   |
#  =======    =======
# |   2   |  |   3   |
#  =======    =======
# |   4   |  |   5   |
#  -------    -------
#------------------------------------------------------------------------

      if @menu_index == 0 # POKéMON en tête de liste         
         if Input.repeat?(Input::LEFT) and $pokemon_party.size > 5                     
           $game_system.se_play($data_system.cursor_se)
           @menu_index = 5
           refresh
           return
         elsif Input.repeat?(Input::LEFT) and $pokemon_party.size > 4
           $game_system.se_play($data_system.cursor_se)
           @menu_index = 4
           refresh
           return
         elsif Input.repeat?(Input::LEFT) and $pokemon_party.size > 3
           $game_system.se_play($data_system.cursor_se)
           @menu_index = 3
           refresh
           return
         elsif Input.repeat?(Input::LEFT) and $pokemon_party.size > 2
           $game_system.se_play($data_system.cursor_se)
           @menu_index = 2
           refresh
           return
         elsif Input.repeat?(Input::LEFT) and $pokemon_party.size > 1
           $game_system.se_play($data_system.cursor_se)
           @menu_index = 1
           refresh
           return
         end         
         if Input.repeat?(Input::UP) and $pokemon_party.size > 4                     
           $game_system.se_play($data_system.cursor_se)
           @menu_index = 4
           refresh
           return
         elsif Input.repeat?(Input::UP) and $pokemon_party.size > 2
           $game_system.se_play($data_system.cursor_se)
           @menu_index = 2
           refresh
           return
         end                   
         if Input.repeat?(Input::RIGHT) and $pokemon_party.size > 1                   
           $game_system.se_play($data_system.cursor_se)
           @menu_index = 1
           refresh
           return       
         end             
         if Input.repeat?(Input::DOWN) and $pokemon_party.size > 2                     
           $game_system.se_play($data_system.cursor_se)
           @menu_index = 2
           refresh
           return         
         end       
       end
     
               
# --------------------------------------------------------------------------------------       

      if @menu_index == 1 # POKéMON en haut à droite
         if Input.repeat?(Input::LEFT) 
           $game_system.se_play($data_system.cursor_se)
           @menu_index = 0
           refresh
           return
         end
         if Input.repeat?(Input::UP) and $pokemon_party.size > 5
           $game_system.se_play($data_system.cursor_se)
           @menu_index = 5
           refresh
           return
         elsif Input.repeat?(Input::UP) and $pokemon_party.size > 3
           $game_system.se_play($data_system.cursor_se)
           @menu_index = 3
           refresh
           return
         end
         if Input.repeat?(Input::RIGHT) and $pokemon_party.size > 2
           $game_system.se_play($data_system.cursor_se)
           @menu_index = 2
           refresh
           return
         elsif Input.repeat?(Input::RIGHT)
           $game_system.se_play($data_system.cursor_se)
           @menu_index = 0
           refresh
           return
         end
         if Input.repeat?(Input::DOWN) and $pokemon_party.size > 3
           $game_system.se_play($data_system.cursor_se)
           @menu_index = 3
           refresh
           return
         end
       end
# --------------------------------------------------------------------------------------

      if @menu_index == 2 # POKéMON au milieu à gauche
         if Input.repeat?(Input::LEFT)
           $game_system.se_play($data_system.cursor_se)
           @menu_index = 1
           refresh
           return
         end
         if Input.repeat?(Input::UP)
           $game_system.se_play($data_system.cursor_se)
           @menu_index = 0
           refresh
           return
         end
         if Input.repeat?(Input::RIGHT) and $pokemon_party.size > 3
           $game_system.se_play($data_system.cursor_se)
           @menu_index = 3
           refresh
           return
         elsif Input.repeat?(Input::RIGHT)
           $game_system.se_play($data_system.cursor_se)
           @menu_index = 0
           refresh
           return
         end
         if Input.repeat?(Input::DOWN) and $pokemon_party.size > 4
           $game_system.se_play($data_system.cursor_se)
           @menu_index = 4
           refresh
           return
         elsif Input.repeat?(Input::DOWN)
           $game_system.se_play($data_system.cursor_se)
           @menu_index = 0
           refresh
           return
         end
       end
# --------------------------------------------------------------------------------------

      if @menu_index == 3 # POKéMON au milieu à droite
         if Input.repeat?(Input::LEFT)
           $game_system.se_play($data_system.cursor_se)
           @menu_index = 2
           refresh
           return
         end
         if Input.repeat?(Input::UP)
           $game_system.se_play($data_system.cursor_se)
           @menu_index = 1
           refresh
           return
         end
         if Input.repeat?(Input::RIGHT) and $pokemon_party.size > 4
           $game_system.se_play($data_system.cursor_se)
           @menu_index = 4
           refresh
           return
         elsif Input.repeat?(Input::RIGHT)
           $game_system.se_play($data_system.cursor_se)
           @menu_index = 0
           refresh
           return         
         end
         if Input.repeat?(Input::DOWN) and $pokemon_party.size > 5
           $game_system.se_play($data_system.cursor_se)
           @menu_index = 5
           refresh
           return
         elsif Input.repeat?(Input::DOWN)
           $game_system.se_play($data_system.cursor_se)
           @menu_index = 1
           refresh
           return
         elsif Input.repeat?(Input::RIGHT)
           $game_system.se_play($data_system.cursor_se)
           @menu_index = 1
           refresh
           return         
         end
       end
# --------------------------------------------------------------------------------------

      if @menu_index == 4 # POKéMON en bas à gauche
         if Input.repeat?(Input::LEFT)
           $game_system.se_play($data_system.cursor_se)
           @menu_index = 3
           refresh
           return
         end
         if Input.repeat?(Input::UP)
           $game_system.se_play($data_system.cursor_se)
           @menu_index = 2
           refresh
           return
         end
         if Input.repeat?(Input::RIGHT) and $pokemon_party.size > 5
           $game_system.se_play($data_system.cursor_se)
           @menu_index = 5
           refresh
           return
         elsif Input.repeat?(Input::RIGHT)
           $game_system.se_play($data_system.cursor_se)
           @menu_index = 0
           refresh
           return
         end
         if Input.repeat?(Input::DOWN)           
           $game_system.se_play($data_system.cursor_se)
           @menu_index = 0
           refresh
           return
         end
       end
# --------------------------------------------------------------------------------------

      if @menu_index == 5 # POKéMON en bas à droite
         if Input.repeat?(Input::LEFT)
           $game_system.se_play($data_system.cursor_se)
           @menu_index = 4
           refresh
           return
         end
         if Input.repeat?(Input::UP)
           $game_system.se_play($data_system.cursor_se)
           @menu_index = 3
           refresh
           return
         end
         if Input.repeat?(Input::RIGHT)
           $game_system.se_play($data_system.cursor_se)
           @menu_index = 0
           refresh
           return
         end
         if Input.repeat?(Input::DOWN)
           $game_system.se_play($data_system.cursor_se)
           @menu_index = 1
           refresh
           return
         end
       end
# --------------------------------------------------------------------------------------


Modification des textes :


Le mot "ANNULER" remplace le mot "RETOUR". S'applique à travers tout le script.

Puis j'ai modifié ce morceau :

Code:
def text_refresh
      @text_window.contents.clear
      @text_window.width = 391
      @text_window.height = 64
      @text_window.x = 246
      @text_window.y = 480 - @text_window.height - 3
      width = @text_window.width - 32
      height = @text_window.height - 32
      if @on_switch != -1
        @text_window.contents.draw_text(0,0,width,height, "Le mettre où?")
      elsif @action_window.active
        @text_window.contents.draw_text(0,0,width,height, "Que faire avec ce POKéMON?")
      elsif @item_window.active
        @text_window.contents.draw_text(0,0,width,height, "Que faire avec un objet?")
      elsif @mode == "hold"
        @text_window.contents.draw_text(0,0,width,height, "Donner à quel POKéMON?")
      elsif @skill_selection
        @text_window.contents.draw_text(0,0,width,height, "Laquelle restaurer?")
      elsif @mode == "item_use" or @mode == "item_able"
        @text_window.contents.draw_text(0,0,width,height, "Utiliser sur quel POKéMON?")
      else
        @text_window.contents.draw_text(0,0,width,height, "Choisir un POKéMON.")
      end
    end


Par ce morceau, pas beaucoup de différence :

Code:
def text_refresh
      pokemon = $pokemon_party.actors[@menu_index]
      @text_window.contents.clear
      @text_window.width = 391
      @text_window.height = 64
      @text_window.x = 246
      @text_window.y = 480 - @text_window.height - 3
      width = @text_window.width - 32
      height = @text_window.height - 32
      if @on_switch != -1
        @text_window.contents.draw_text(0,0,width,height, "Le mettre où?")
      elsif @action_window.active
        @text_window.contents.draw_text(0,0,width,height, "Que faire avec " + pokemon.given_name + "?")
      elsif @item_window.active
        @text_window.contents.draw_text(0,0,width,height, "Que faire avec un objet?")
      elsif @mode == "hold"
        @text_window.contents.draw_text(0,0,width,height, "Donner à quel POKéMON?")
      elsif @skill_selection
        @text_window.contents.draw_text(0,0,width,height, "Laquelle restaurer?")
      elsif @mode == "item_use" or @mode == "item_able"
        @text_window.contents.draw_text(0,0,width,height, "Utiliser sur quel POKéMON?")
      else
        @text_window.contents.draw_text(0,0,width,height, "Choisissez un POKéMON.")
      end
    end


Modifications graphiques :


J'ai modifié, énormément de chose dans cet class :

Code:
class Pokemon_Party_Window < Window_Base


Désolé mais il met impossible d'être plus précis. J'ai modifier des nombres, rajouter des conditions, déplacer du textes, etc...


Bonne soirée à vous tous !

Posté par DRACAU le 5 Mar - 17:38 (2009)
Moi j'ai un probleme à la ligne 956

Posté par Ace Attorney Man le 5 Mar - 17:56 (2009)
DRACAU a écrit:

Moi j'ai un probleme à la ligne 956


Mais encore ... ?

Posté par Pαlвσlѕку le 5 Mar - 20:16 (2009)
Demande à Opal, vous avez le même bug mais à la différence c'est qu'il a réussi à le corriger. Mais je te conseil de télécharger une nouvelle version de PSP.

Posté par DRACAU le 5 Mar - 20:24 (2009)
tu veux dire psp0,7

Posté par Opal le 5 Mar - 20:42 (2009)
Ouvre un projet RMK au pif tu copi tous les script que tu as rajouter toi dedans et aprés tu prend le Scripts.rxdata de PSP 0.7 2nd et tu rempalce le tien aprés tu aura surement des beugs genre manque de pokemon ect aussi bonne chance ^^ .

Posté par Pαlвσlѕку le 5 Mar - 21:07 (2009)
DRACAU, tu peux choisir entre PSP0.7 2nd béta et PSP4G+.

Opal >> C'est la solution la moins recommandée, puisque c'est l'instabilité obligé.

Posté par Opal le 6 Mar - 10:23 (2009)
Bah j'ai plus aucun probléme alors je vais plutôt me fier a ce qui ai pas a ce que tu dis :p mais merci du conseil mdr .

Posté par alves57 le 6 Juin - 21:59 (2009)
pas mal du tout le scrip.Je l'ai mis, y a pas de beug.
crédit.

Posté par Pαlвσlѕку le 6 Juin - 22:23 (2009)
Je suis content que mon système soit utiliser.

Correction d'un bug :

Recherchez le morceau suivant : (vers ligne 890)

Script
Code:
def hp_refresh
      if @pokemon.egg
        return
      end
      if @index == 0
        level = @pokemon.hp / @pokemon.maxhp_basis.to_f
        draw_hp_bar(21, 84, level)
        src_rect = Rect.new(93, 105, 129, 30)
        if @index == @on_switch or (@on_switch != -1 and @menu_index == @index)
          # Cadre vert sélectionné
          bitmap = RPG::Cache.picture("cadretetem.png")
        elsif @menu_index == @index
          # Cadre bleu hover
          bitmap = @pokemon.dead? ? RPG::Cache.picture("cadretetedl.png") : RPG::Cache.picture("cadretetel.png")
        else
          # Cadre bleu
          bitmap = @pokemon.dead? ? RPG::Cache.picture("cadreteted.png") : RPG::Cache.picture("cadretete.png")
        end
        self.contents.blt(93, 105, bitmap, src_rect, 255)
        draw_text(0, 99, 215, $fs, @pokemon.hp.to_s + " / " + @pokemon.maxhp_basis.to_s, 2)
      else
        level = @pokemon.hp / @pokemon.maxhp_basis.to_f
        draw_hp_bar(160, 9, level, true)
        src_rect = Rect.new(211, 30, 129, 30)
        if @on_switch == @index or (@on_switch != -1 and @menu_index == @index)
          # Cadre vert sélectionné
          bitmap = RPG::Cache.picture("cadrepartym.png")
        elsif @menu_index == @index
          # Cadre bleu hover
          bitmap = @pokemon.dead? ? RPG::Cache.picture("cadrepartydl.png") : RPG::Cache.picture("cadrepartyl.png")
        else
          # Cadre bleu
          bitmap = @pokemon.dead? ? RPG::Cache.picture("cadrepartyd.png") : RPG::Cache.picture("cadreparty.png")
        end
        self.contents.blt(211, 30, bitmap, src_rect, 255)
        draw_text(0, 24, 330, $fs, @pokemon.hp.to_s + " / " + @pokemon.maxhp_basis.to_s, 2)
      end
    end

Remplacez le par ce morceau :

Script
Code:
def hp_refresh     
      refresh
      if @pokemon.egg
        return
      end
      if @index == 0
        level = @pokemon.hp / @pokemon.maxhp_basis.to_f
        draw_hp_bar(39, 55, level)
        src_rect = Rect.new(93, 105, 350, 152)
        if @index == @on_switch or (@on_switch != -1 and @menu_index == @index)
          # Cadre vert sélectionné
          bitmap = RPG::Cache.picture("cadretetem.png")       
        elsif @menu_index == @index
          # Cadre bleu hover
          bitmap = @pokemon.dead? ? RPG::Cache.picture("cadretetedl.png") : RPG::Cache.picture("cadretetel.png")
        else       
          # Cadre bleu
          bitmap = @pokemon.dead? ? RPG::Cache.picture("cadreteted.png") : RPG::Cache.picture("cadretete.png")
        end
        self.contents.blt(93, 105, bitmap, src_rect, 255)     
        draw_text(49, 72, 215, $fs, @pokemon.hp.to_s + " / " + @pokemon.maxhp_basis.to_s, 2)       
      else
        level = @pokemon.hp / @pokemon.maxhp_basis.to_f
        draw_hp_bar(39, 55, level, true)
        src_rect = Rect.new(93, 105, 350, 152)         
        if @on_switch == @index or (@on_switch != -1 and @menu_index == @index)
          # Cadre vert sélectionné
          bitmap = RPG::Cache.picture("cadrepartym.png")         
        elsif @menu_index == @index
          # Cadre bleu hover
          bitmap = (@pokemon.dead? and not @pokemon.egg) ? RPG::Cache.picture("cadrepartydl.png") : RPG::Cache.picture("cadrepartyl.png")         
        else
          # Cadre bleu
          bitmap = @pokemon.dead? ? RPG::Cache.picture("cadrepartyd.png") : RPG::Cache.picture("cadreparty.png")
        end
        self.contents.blt(93, 105, bitmap, src_rect, 255)
        draw_text(49, 72, 215, $fs, @pokemon.hp.to_s + " / " + @pokemon.maxhp_basis.to_s, 2)
        end     
      end 

La correction doit être faite puisque sinon un bug, graphique, apparaît dans un cas précis.

MISE A JOUR DU PREMIER POST !

Posté par Deco le 11 Juin - 19:49 (2009)
Je télécharge le lien de ta première page, et j'y trouve 3 fichiers.
license.txt (La License...)
pokemon_platine.ttf (La Police pkmn)
readme.txt

...et où se trouve le script ? :/

Posté par alves57 le 12 Juin - 17:38 (2009)
c'est vrai, c'est bizarre.


bon, tout ce que je peux fairer pour toi, c'est te donner le zip que palbosky donner en téléchargement avant(heureusement que je ne l'ai pas supprimé)


http://fs05n3.sendspace.com/dl/73e6d68cde6b73382c4a1aeffaea6f59/4a32843642c…



voila.

Posté par Deco le 12 Juin - 18:04 (2009)
Parfait, merci bien Clin d'œil foireux

Posté par alves57 le 12 Juin - 18:08 (2009)
de rien.Du moment que ça aide quelqu'un !

Posté par nathan818 le 26 Juil - 13:24 (2009)
JE PRENDS!!!
GENIAL^^

Posté par Slash le 27 Juil - 23:15 (2009)
Magnifique Palbolsky, tres beau script.
je prend et t'ajoute au crédits Bouche extensiblek:

Posté par anonymate le 12 Aoû - 15:35 (2009)
Magnifique, J'ajoute au crédits----- Oops, t'y est déja  :gloups:
Merci a toi aussi alves75

Posté par Jakarta le 25 Avr - 18:03 (2010)
Bonjour, je voulais télécharger ce menu mais le lien est mort, quelqu'un peut-il me donner l'adresse d'un lien valable ? Merci d'avance !  Petit saligaud mal élevé

Posté par Pαlвσlѕку le 20 Mai - 18:01 (2010)
Je n'ai plus le dossier donc c'est un peu difficile pour héberger.

Posté par LucasPro le 23 Mai - 16:14 (2010)
ah ok...mais y a t-il un moyeen quelconque de me donner les ressourcfes nécessaires?

Posté par Mack le 23 Mai - 20:00 (2010)
Regarde dans PSP 4G+, me semble qu'il y a le script.

Posté par LucasPro le 24 Mai - 16:16 (2010)
je n'utilise pas PSP4G+

Posté par Mack le 24 Mai - 16:18 (2010)
...






Regarde quand même si tu veux le script ...

Posté par LucasPro le 25 Mai - 00:43 (2010)
-_____- bon ça va j'ai compris je me barre

Posté par Briandu95 le 24 Juin - 13:17 (2010)
Lien mort

Posté par valpokbest le 1 Aoû - 15:45 (2010)
Oui lien mort. Dommage je préfère nettement ce menu à celui de RSE :/

Posté par rocascade le 27 Aoû - 13:26 (2010)
Effectivement, si quelqu'un pourrait mettre le fichier en ligne à nouveau...
Ça serait sympa Bouche extensiblek:  

Posté par RevengeOfShadow le 4 Sep - 18:25 (2010)
Oui ça m'intéresserait énormément ... Et sur PSP 4G+ il n'y est pas, comme dit sur le 1e post !

Posté par Chompy le 21 Déc - 09:39 (2010)
Personne pour remettre en ligne le fichier ?

Posté par Nuri Yuri le 21 Déc - 10:46 (2010)
On est pas des archives.

Posté par Chompy le 21 Déc - 21:10 (2010)
Je n'ai jamais dis ca Imbécile heureux seulement le lien étant mort, je demande si quelqu'un qui l'as sous la main pourrait avoir la gentillesse de le remettre en ligne =]

Posté par Zion le 21 Déc - 22:32 (2010)
Bah je poste un script plus quelques ressources, et vous faites comme indiqué.

 Script par Palbolsky.
Bon... D'abord, vous remplacez le script Pokémon_Party_Menu
par celui-ci.

 
Le Script

#==============================================================================
# ■ Pokemon_Party_Menu
# Pokemon Script Project - Krosk
# 18/07/07
# 28/02/09 - Palbolsky
#-----------------------------------------------------------------------------
# Scène modifiable mais complexe
#-----------------------------------------------------------------------------
# Menu de gestion d'équipe
#-----------------------------------------------------------------------------

module POKEMON_S
  #-----------------------------------------------------------------------------
  # Pokemon_Party_Menu
  #-----------------------------------------------------------------------------
  # Scene
  #   mode: "map", "battle", "give_item"
  #-----------------------------------------------------------------------------
 
 
  class Pokemon_Party_Menu
    attr_accessor :z_level
    attr_accessor :mode
    def initialize(menu_index = 0, z_level = 100, mode = "map", data = nil)
      @menu_index = menu_index
      @z_level = z_level
      @data = data
      @mode = mode # "map", "battle", "hold", "item_use", "item_able", "selection"
      # battle_data: informations diverses du combat en cours
      if $battle_var.in_battle
        @order = $battle_var.battle_order
      else
        @order = [0,1,2,3,4,5]
      end
    end
   
    #-----------------------------------------------------------------------------
    # Déroulement de la scène
    #-----------------------------------------------------------------------------
    def main
      Graphics.freeze
      # Background
      @background = Sprite.new
      @background.bitmap = RPG::Cache.picture("Partyfond.png")
      @background.z = @z_level
     
      # Ensemble de fenêtres individuelles pour chaque Pokémon
      @party_window = []
      for i in 0..($pokemon_party.size-1)
        pokemon = $pokemon_party.actors[@order[i]]
        @party_window.push(Pokemon_Party_Window.new(pokemon, i, @z_level, @mode, @data))
      end
     
      # @on_switch: indicateur d'ordre de permutation
      #   -1: pas d'ordre
      #   sinon: désigne le pokémon à permuter
      @on_switch = -1
     
      @action_window = Window_Command.new(240, ["ANNULER"])
      @action_window.z = @z_level + 10
      @action_window.x = 3
      @action_window.visible = false
      @action_window.active = false
     
      @item_window = Window_Command.new(240, ["DONNER", "PRENDRE", "ANNULER"])
      @item_window.z = @z_level + 11
      @item_window.x = 3
      @item_window.y = 480 - 3 - @item_window.height
      @item_window.visible = false
      @item_window.active = false
     
      @text_window = Window_Base.new(246, 413, 391, 64)
      @text_window.contents = Bitmap.new(602, 64)
      @text_window.z = @z_level + 10
      @text_window.contents.font.name = $fontface
      @text_window.contents.font.size = $fontsize
      @text_window.contents.font.color = @text_window.normal_color
     
      refresh
     
      Graphics.transition
      loop do
        Graphics.update
        Input.update
        if @action_window.active and @on_switch == -1
          if $battle_var.in_battle
            update_action_battle
          else
            update_action
          end
        elsif @item_window.active
          update_item
        else
          update
        end
        if @done
          break
        end
      end
      Graphics.freeze
      @background.dispose
      for window in @party_window
        window.dispose
      end
      if @action_window != nil
        @action_window.dispose
      end
      @text_window.dispose
      @item_window.dispose
      @party_window = nil
    end
   
    def update     
      if Input.trigger?(Input::B)
        if @mode == "selection"
          @done = true
          @return_data = -1
          return
        end
       
        if @mode == "hold"
          @done = true
          @return_data = [0, false, 0, false]
          return
        end
       
        if @mode == "item_use" or @mode == "item_able"
          @done = true
          @return_data = [0, false]
          return
        end
       
        if @on_switch == -1 and not($battle_var.in_battle)
          $game_system.se_play($data_system.cancel_se)
          $scene = Pokemon_Menu.new(1)
          @done = true
          return
        elsif @on_switch == -1 and $battle_var.in_battle
          if $pokemon_party.actors[@order[0]].dead?
            $game_system.se_play($data_system.buzzer_se)
            return
          else           
            $game_system.se_play($data_system.cancel_se)
            $battle_var.action_id = 0
            # Pas d'action
            @return_data = [0]
            @done = true
            return
          end
        else
          # Annulation de la commande en cours ie @on_switch =/ 1
          $game_system.se_play($data_system.cancel_se)
          @action_window.active = true
          @action_window.visible = true
          @on_switch = -1
          refresh
          return
        end
      end

#------------------------------------------------------------------------
# Navigation Menu - Palbolsky
# A ne pas modifier de préférence.
#-------------------------------------------------------------------------
# Rappel des dispositions des fenêtres :
#  -------    -------
# |   0   |  |   1   |
#  =======    =======
# |   2   |  |   3   |
#  =======    =======
# |   4   |  |   5   |
#  -------    -------
#------------------------------------------------------------------------

      if @menu_index == 0 # POKéMON en tête de liste        
         if Input.repeat?(Input::LEFT) and $pokemon_party.size > 5                     
           $game_system.se_play($data_system.cursor_se)
           @menu_index = 5
           refresh
           return
         elsif Input.repeat?(Input::LEFT) and $pokemon_party.size > 4
           $game_system.se_play($data_system.cursor_se)
           @menu_index = 4
           refresh
           return
         elsif Input.repeat?(Input::LEFT) and $pokemon_party.size > 3
           $game_system.se_play($data_system.cursor_se)
           @menu_index = 3
           refresh
           return
         elsif Input.repeat?(Input::LEFT) and $pokemon_party.size > 2
           $game_system.se_play($data_system.cursor_se)
           @menu_index = 2
           refresh
           return
         elsif Input.repeat?(Input::LEFT) and $pokemon_party.size > 1
           $game_system.se_play($data_system.cursor_se)
           @menu_index = 1
           refresh
           return
         end        
         if Input.repeat?(Input::UP) and $pokemon_party.size > 4                    
           $game_system.se_play($data_system.cursor_se)
           @menu_index = 4
           refresh
           return
         elsif Input.repeat?(Input::UP) and $pokemon_party.size > 2
           $game_system.se_play($data_system.cursor_se)
           @menu_index = 2
           refresh
           return
         end                   
         if Input.repeat?(Input::RIGHT) and $pokemon_party.size > 1                   
           $game_system.se_play($data_system.cursor_se)
           @menu_index = 1
           refresh
           return       
         end             
         if Input.repeat?(Input::DOWN) and $pokemon_party.size > 2                    
           $game_system.se_play($data_system.cursor_se)
           @menu_index = 2
           refresh
           return        
         end      
       end
    
              
# --------------------------------------------------------------------------------------      

      if @menu_index == 1 # POKéMON en haut à droite
         if Input.repeat?(Input::LEFT) 
           $game_system.se_play($data_system.cursor_se)
           @menu_index = 0
           refresh
           return
         end
         if Input.repeat?(Input::UP) and $pokemon_party.size > 5
           $game_system.se_play($data_system.cursor_se)
           @menu_index = 5
           refresh
           return
         elsif Input.repeat?(Input::UP) and $pokemon_party.size > 3
           $game_system.se_play($data_system.cursor_se)
           @menu_index = 3
           refresh
           return
         end
         if Input.repeat?(Input::RIGHT) and $pokemon_party.size > 2
           $game_system.se_play($data_system.cursor_se)
           @menu_index = 2
           refresh
           return
         elsif Input.repeat?(Input::RIGHT)
           $game_system.se_play($data_system.cursor_se)
           @menu_index = 0
           refresh
           return
         end
         if Input.repeat?(Input::DOWN) and $pokemon_party.size > 3
           $game_system.se_play($data_system.cursor_se)
           @menu_index = 3
           refresh
           return
         end
       end
# --------------------------------------------------------------------------------------

      if @menu_index == 2 # POKéMON au milieu à gauche
         if Input.repeat?(Input::LEFT)
           $game_system.se_play($data_system.cursor_se)
           @menu_index = 1
           refresh
           return
         end
         if Input.repeat?(Input::UP)
           $game_system.se_play($data_system.cursor_se)
           @menu_index = 0
           refresh
           return
         end
         if Input.repeat?(Input::RIGHT) and $pokemon_party.size > 3
           $game_system.se_play($data_system.cursor_se)
           @menu_index = 3
           refresh
           return
         elsif Input.repeat?(Input::RIGHT)
           $game_system.se_play($data_system.cursor_se)
           @menu_index = 0
           refresh
           return
         end
         if Input.repeat?(Input::DOWN) and $pokemon_party.size > 4
           $game_system.se_play($data_system.cursor_se)
           @menu_index = 4
           refresh
           return
         elsif Input.repeat?(Input::DOWN)
           $game_system.se_play($data_system.cursor_se)
           @menu_index = 0
           refresh
           return
         end
       end
# --------------------------------------------------------------------------------------

      if @menu_index == 3 # POKéMON au milieu à droite
         if Input.repeat?(Input::LEFT)
           $game_system.se_play($data_system.cursor_se)
           @menu_index = 2
           refresh
           return
         end
         if Input.repeat?(Input::UP)
           $game_system.se_play($data_system.cursor_se)
           @menu_index = 1
           refresh
           return
         end
         if Input.repeat?(Input::RIGHT) and $pokemon_party.size > 4
           $game_system.se_play($data_system.cursor_se)
           @menu_index = 4
           refresh
           return
         elsif Input.repeat?(Input::RIGHT)
           $game_system.se_play($data_system.cursor_se)
           @menu_index = 0
           refresh
           return        
         end
         if Input.repeat?(Input::DOWN) and $pokemon_party.size > 5
           $game_system.se_play($data_system.cursor_se)
           @menu_index = 5
           refresh
           return
         elsif Input.repeat?(Input::DOWN)
           $game_system.se_play($data_system.cursor_se)
           @menu_index = 1
           refresh
           return
         elsif Input.repeat?(Input::RIGHT)
           $game_system.se_play($data_system.cursor_se)
           @menu_index = 1
           refresh
           return        
         end
       end
# --------------------------------------------------------------------------------------

      if @menu_index == 4 # POKéMON en bas à gauche
         if Input.repeat?(Input::LEFT)
           $game_system.se_play($data_system.cursor_se)
           @menu_index = 3
           refresh
           return
         end
         if Input.repeat?(Input::UP)
           $game_system.se_play($data_system.cursor_se)
           @menu_index = 2
           refresh
           return
         end
         if Input.repeat?(Input::RIGHT) and $pokemon_party.size > 5
           $game_system.se_play($data_system.cursor_se)
           @menu_index = 5
           refresh
           return
         elsif Input.repeat?(Input::RIGHT)
           $game_system.se_play($data_system.cursor_se)
           @menu_index = 0
           refresh
           return
         end
         if Input.repeat?(Input::DOWN)           
           $game_system.se_play($data_system.cursor_se)
           @menu_index = 0
           refresh
           return
         end
       end
# --------------------------------------------------------------------------------------

      if @menu_index == 5 # POKéMON en bas à droite
         if Input.repeat?(Input::LEFT)
           $game_system.se_play($data_system.cursor_se)
           @menu_index = 4
           refresh
           return
         end
         if Input.repeat?(Input::UP)
           $game_system.se_play($data_system.cursor_se)
           @menu_index = 3
           refresh
           return
         end
         if Input.repeat?(Input::RIGHT)
           $game_system.se_play($data_system.cursor_se)
           @menu_index = 0
           refresh
           return
         end
         if Input.repeat?(Input::DOWN)
           $game_system.se_play($data_system.cursor_se)
           @menu_index = 1
           refresh
           return
         end
       end
# --------------------------------------------------------------------------------------

       if Input.trigger?(Input::C)
        if @mode == "selection"
          $game_system.se_play($data_system.decision_se)
          @done = true
          @return_data = @menu_index
        return
        end
     
       
        if @mode == "hold"
          $game_system.se_play($data_system.decision_se)
          pokemon = $pokemon_party.actors[@menu_index]
          # Ne porte pas d'item
          if pokemon.item_hold == 0
            pokemon.item_hold = @data
            @return_data = [@data, true, 0, false]
            refresh
            draw_text(pokemon.given_name + " est équippé de " + Item.name(@data) + ".")
            Input.update
            until Input.trigger?(Input::C)
              Input.update
              Graphics.update
            end
          # Porte un item 
          elsif pokemon.item_hold != 0
            replaced_item = pokemon.item_hold
            pokemon.item_hold = @data
            @return_data = [@data, true, replaced_item, true]
            refresh
            if @data == replaced_item
              draw_text(pokemon.given_name + " tient déjà " + Item.name(@data) + "!")
            else
              draw_text(Item.name(replaced_item) + " est remplacé par " + Item.name(@data) + ".")
            end
            Input.update
            until Input.trigger?(Input::C)
              Input.update
              Graphics.update
            end
          end
          @done = true
          return
        end
       
        if @mode == "item_use" or @mode == "item_able"
          if $battle_var.in_battle
            pokemon = $pokemon_party.actors[$battle_var.battle_order[@menu_index]]
          else
            pokemon = $pokemon_party.actors[@menu_index]
          end
          if @mode == "item_able" and not(Item.able?(@data, pokemon))
            $game_system.se_play($data_system.buzzer_se)
            return
          end
          $game_system.se_play($data_system.decision_se)
          result = Item.effect_on_pokemon(@data, pokemon, self)
          # result[0] = item utilisé ou non
          # result[1] text
          @return_data = [@data, result[0]]
          refresh
          if result[1] != ""
            draw_text(result[1])
            Input.update
            until Input.trigger?(Input::C)
              Input.update
              Graphics.update
            end
          end
          @done = true
          return
        end
       
        $game_system.se_play($data_system.decision_se)
        if @on_switch == -1
          # Selection d'un Pokémon
          if $battle_var.in_battle
            set_action_battle_window
            refresh
          else
            set_action_window
            refresh
          end
          refresh
        else
          # Permutation
          if not($battle_var.in_battle)
            $pokemon_party.switch_party(@on_switch, @menu_index)
          end
          @action_window.active = false
          @action_window.visible = false
          @on_switch = -1
          reset_party_window
          refresh
        end
        return
      end
    end
   
    def update_action
      @action_window.update
      if Input.trigger?(Input::B)
        $game_system.se_play($data_system.cancel_se)
        @action_window.visible = false
        @action_window.active = false
        text_refresh
      end
     
      if Input.trigger?(Input::C)
        case @action_window.commands[@action_window.index]
        when "RESUME"
          pokemon = $pokemon_party.actors[@menu_index]
          scene = Pokemon_Status.new(pokemon, @menu_index, @z_level + 100)
          scene.main
          @menu_index = scene.return_data
          refresh
          Graphics.transition
        when "ORDRE"
          $game_system.se_play($data_system.decision_se)
          # Permutation active
          @on_switch = @menu_index
          @action_window.visible = false
          @action_window.active = false
          refresh
        when "OBJET"
          $game_system.se_play($data_system.decision_se)
          @action_window.visible = false
          @action_window.active = false
          @item_window.active = true
          @item_window.visible = true
          text_refresh
        when "ANNULER"
          $game_system.se_play($data_system.decision_se)
          @action_window.visible = false
          @action_window.active = false
          text_refresh
        else # Attaque
          $game_system.se_play($data_system.decision_se)
          @action_window.visible = false
          @action_window.active = false
          name = @action_window.commands[@action_window.index]
          $game_temp.common_event_id = Skill_Info.map_use(Skill_Info.id(name))
          $on_map_call = true
          $scene = Scene_Map.new
          @done = true
        end
        return
      end
    end
   
    def update_item
      @item_window.update
      if Input.trigger?(Input::C)
        case @item_window.index
        # Donner
        when 0
          pokemon = $pokemon_party.actors[@menu_index]
          $game_system.se_play($data_system.decision_se)
          scene = Pokemon_Item_Bag.new($pokemon_party.bag_index, @z_level + 100, "hold")
          scene.main
          return_data = scene.return_data
          item = return_data[0]
          hold = return_data[1]
          former_item = pokemon.item_hold
          @item_window.visible = false
          @item_window.active = false
          refresh
          if hold
            $pokemon_party.drop_item(item)
            if former_item == 0
              draw_text(pokemon.given_name + " est équippé de " + Item.name(item) + ".")
            else
              $pokemon_party.add_item(former_item)
              draw_text(Item.name(former_item) + " est remplacé par " + Item.name(item) + ".")
            end
            pokemon.item_hold = item
            Input.update
            Graphics.transition
            until Input.trigger?(Input::C)
              Input.update
              Graphics.update
            end
          else
            Graphics.transition
          end
          refresh
          return
        # Prendre
        when 1
          @item_window.visible = false
          @item_window.active = false
          pokemon = $pokemon_party.actors[@menu_index]
          # Pas d'item
          if pokemon.item_hold == 0
            $game_system.se_play($data_system.buzzer_se)
            draw_text(pokemon.given_name + " ne tient rien.")
          else
            $game_system.se_play($data_system.decision_se)
            $pokemon_party.add_item(pokemon.item_hold)
            former_item = pokemon.item_hold
            pokemon.item_hold = 0
            refresh
            draw_text(Item.name(former_item) + " récupéré de " + pokemon.given_name + ".")
          end
          Input.update
          until Input.trigger?(Input::C)
            Input.update
            Graphics.update
          end
          refresh
          $game_system.se_play($data_system.decision_se)
        # Annuler
        when 2
          $game_system.se_play($data_system.decision_se)
          @item_window.active = false
          @item_window.visible = false
          @action_window.active = true
          @action_window.visible = true
          text_refresh
        end
      end
     
      if Input.trigger?(Input::B)
        $game_system.se_play($data_system.cancel_se)
        @item_window.active = false
        @item_window.visible = false
        @action_window.active = true
        @action_window.visible = true
        text_refresh
      end
    end
   
    def skill_selection(pokemon)
      # Rafraihcisemment fenetre de texte
      @skill_selection == true
      text_refresh
      @skill_selection == false
      # Création liste skill
      list = []
      for skill in pokemon.skills_set
        list.push(skill.name)
      end
      @skill_window = Window_Command.new(240, list)
      @skill_window.y = 480 - @skill_window.height - 3
      @skill_window.x = 3
      @skill_window.z = @z_level + 11
      # Selection
      loop do
        Input.update
        Graphics.update
        @skill_window.update
        if Input.trigger?(Input::C)
          @skill_index = @skill_window.index
          break
        end
        if Input.trigger?(Input::B)
          @skill_window.dispose
          return false
          break
        end
      end
      @skill_window.dispose
      return @skill_index
    end
   
    def refresh
      for window in @party_window
        window.refresh_index(@menu_index)
        window.switch(@on_switch)
        window.refresh
      end
      text_refresh
    end
   
    def text_refresh
      pokemon = $pokemon_party.actors[@menu_index]
      @text_window.contents.clear
      @text_window.width = 391
      @text_window.height = 64
      @text_window.x = 246
      @text_window.y = 480 - @text_window.height - 3
      width = @text_window.width - 32
      height = @text_window.height - 32
      if @on_switch != -1
        @text_window.contents.draw_text(0,0,width,height, "Le mettre où?")
      elsif @action_window.active
        @text_window.contents.draw_text(0,0,width,height, "Que faire avec " + pokemon.given_name + "?")
      elsif @item_window.active
        @text_window.contents.draw_text(0,0,width,height, "Que faire avec un objet?")
      elsif @mode == "hold"
        @text_window.contents.draw_text(0,0,width,height, "Donner à quel POKéMON?")
      elsif @skill_selection
        @text_window.contents.draw_text(0,0,width,height, "Laquelle restaurer?")
      elsif @mode == "item_use" or @mode == "item_able"
        @text_window.contents.draw_text(0,0,width,height, "Utiliser sur quel POKéMON?")
      else
        @text_window.contents.draw_text(0,0,width,height, "Choisissez un POKéMON.")
      end
    end
   
    def draw_text(string = "", string2 = "")
      @text_window.width = 634
      @text_window.x = 3
      @text_window.contents.clear
      if string2 == ""
        @text_window.height = 64
        @text_window.y = 480 - @text_window.height - 3
        width = 602
        height = 32
        @text_window.contents.draw_text(0,0,width,height,string)
      else
        @text_window.height = 96
        @text_window.y = 480 - @text_window.height - 3
        width = 602
        height = 32
        @text_window.contents.draw_text(0,0,width,height,string)
        @text_window.contents.draw_text(0,height,width,height,string2)
      end
    end
   
    def located_refresh
      for window in @party_window
        window.refresh_index(@menu_index)
        window.switch(@on_switch)
      end
     
      for i in @menu_index-1.. @menu_index+1
        if @party_window[i] != nil
          @party_window[i].refresh
        end
      end
    end
   
    def hp_refresh
      @party_window[@menu_index].hp_refresh
    end
   
    def item_refresh
      @party_window[@menu_index].refresh
    end
   
    def update_action_battle
      @action_window.update
      if Input.trigger?(Input::B)
        $game_system.se_play($data_system.cancel_se)
        @action_window.visible = false
        @action_window.active = false
        text_refresh
      end
      if Input.trigger?(Input::C)
        case @action_window.index
        when 0 # Rappel au combat du Poké sélectionné
          if @menu_index == 0 or $pokemon_party.actors[@order[@menu_index]].dead?
            # Le pokémon du premier rang et les morts ne peuvent etre envoyés
            $game_system.se_play($data_system.buzzer_se)
          else #NOTA
            if $battle_var.action_id == 0
              $battle_var.action_id = 2
            end
            # Changement
            @return_data = @menu_index
            @done = true
          end
        when 1 # Résumé
          pokemon = $pokemon_party.actors[@order[@menu_index]]
          scene = Pokemon_Status.new(pokemon, @menu_index)
          scene.main
          @menu_index = scene.return_data
          refresh
          Graphics.transition
        when 2 # Annulation
          $game_system.se_play($data_system.cancel_se)
          @action_window.visible = false
          @action_window.active = false
          text_refresh
        end
        return
      end
    end
   
    def return_data
      return @return_data
    end
     
    def set_action_window
      list = []
      for skill in $pokemon_party.actors[@order[@menu_index]].skills_set
        if skill.map_use != 0
          list.push(Skill_Info.name(skill.id))
        end
      end
      list += ["RESUME", "ORDRE", "OBJET", "ANNULER"]
      if $pokemon_party.actors[@order[@menu_index]].egg
        list.delete("OBJET")
      end
      @action_window = Window_Command.new(240, list)
      @action_window.y = 480 - @action_window.height - 3
      @action_window.x = 3
      @action_window.z = @z_level + 10
    end
   
    def set_action_battle_window
      list = ["ECHANGER", "RESUME", "ANNULER"]
      @action_window = Window_Command.new(240, list)
      @action_window.y = 480 - @action_window.height - 3
      @action_window.x = 3
      @action_window.z = @z_level + 10
      if @menu_index == 0 or $pokemon_party.actors[@order[@menu_index]].dead?
        @action_window.disable_item(0)
      end
    end
   
    def reset_party_window # En permutation
      for window in @party_window
        window.dispose
      end
      @party_window = []
      for i in 0..($pokemon_party.size-1)
        pokemon = $pokemon_party.actors[@order[i]]
        @party_window.push(Pokemon_Party_Window.new(pokemon, i, @z_level, @mode, @data))
      end
      refresh
    end
   
  end
 
 
  #-----------------------------------------------------------------------------
  # Pokemon_Party_Window
  #-----------------------------------------------------------------------------
  # Window_Base
  #-----------------------------------------------------------------------------
  # Fenetre individuelle de statut dans la gestion d'équipe
  # Modify by Palbolsky
  #-----------------------------------------------------------------------------
  class Pokemon_Party_Window < Window_Base
    def initialize(pokemon, index, z_level = 100, mode = nil, data = nil, menu = -1)
      if index == 0 #Pokémon en tête de rang
        super(-14, -14, 350, 154)     
      end       
      if index == 1
        super(306, 6, 350, 154)
      end
      if index == 2                
        super(-14, 106, 350, 154)
      end
      if index == 3
        super(306, 126, 350, 154)
      end
      if index == 4
        super(-14, 226, 350, 154)
      end
      if index == 5
        super(306, 246, 350, 154)
      end         
      self.contents = Bitmap.new(width - 32, height - 32)
      self.contents.font.name = $fontsmall
      self.contents.font.size = $fontsmallsize
      self.opacity = 0
      self.z = z_level + 8
      @pokemon = pokemon
      @index = index #position de la fenêtre
      @menu_index = menu
      @on_switch = -1
      @mode = mode
      @data = data     
      refresh
    end
   
    #fonction qui sert à importer l'information de la position du curseur
    def refresh_index(index)
      @menu_index = index
    end
   
    def switch(value)
      @on_switch = value
    end
   
    def hp_refresh
      if @pokemon.egg
        return
      end
      if @index == 0
        level = @pokemon.hp / @pokemon.maxhp_basis.to_f
        draw_hp_bar(21, 84, level)
        src_rect = Rect.new(93, 105, 350, 152)
        if @index == @on_switch or (@on_switch != -1 and @menu_index == @index)
          # Cadre vert sélectionné
          bitmap = RPG::Cache.picture("cadretetem.png")      
        elsif @menu_index == @index
          # Cadre bleu hover
          bitmap = @pokemon.dead? ? RPG::Cache.picture("cadretetedl.png") : RPG::Cache.picture("cadretetel.png")
        else       
          # Cadre bleu
          bitmap = @pokemon.dead? ? RPG::Cache.picture("cadreteted.png") : RPG::Cache.picture("cadretete.png")
        end
        self.contents.blt(93, 105, bitmap, src_rect, 255)
        draw_text(0, 99, 215, $fs, @pokemon.hp.to_s + " / " + @pokemon.maxhp_basis.to_s, 2)
      else
        level = @pokemon.hp / @pokemon.maxhp_basis.to_f
        draw_hp_bar(160, 9, level, true)
        src_rect = Rect.new(211, 30, 350, 152)
        if @on_switch == @index or (@on_switch != -1 and @menu_index == @index)
          # Cadre vert sélectionné
          bitmap = RPG::Cache.picture("cadrepartym.png")       
        elsif @menu_index == @index
          # Cadre bleu hover
          bitmap = @pokemon.dead? ? RPG::Cache.picture("cadrepartydl.png") : RPG::Cache.picture("cadrepartyl.png")
        else
          # Cadre bleu
          bitmap = @pokemon.dead? ? RPG::Cache.picture("cadrepartyd.png") : RPG::Cache.picture("cadreparty.png")
        end
        self.contents.blt(211, 30, bitmap, src_rect, 255)
        draw_text(0, 24, 330, $fs, @pokemon.hp.to_s + " / " + @pokemon.maxhp_basis.to_s, 2)
      end
    end   
    def refresh
      self.contents.clear
      if @index == 0
        # fond
        src_rect = Rect.new(0, 0, 350, 152)
        if @index == @on_switch or (@on_switch != -1 and @menu_index == @index)
          # Cadre vert sélectionné
          bitmap = RPG::Cache.picture("cadretetem.png")
        elsif @menu_index == @index
          # Cadre bleu hover
          bitmap = (@pokemon.dead? and not @pokemon.egg) ? RPG::Cache.picture("cadretetedl.png") : RPG::Cache.picture("cadretetel.png")            
        else
          # Cadre bleu
          bitmap = (@pokemon.dead? and not @pokemon.egg) ? RPG::Cache.picture("cadreteted.png") : RPG::Cache.picture("cadretete.png")
        end
        self.contents.blt(0, 0, bitmap, src_rect, 255)
       
        # Icone     
        src_rect = Rect.new(-33, -7, 100, 80)
        bitmap = RPG::Cache.battler(@pokemon.icon, 0)
        self.contents.blt(0, 0, bitmap, src_rect, 255)          
           
        # Objet
        if @pokemon.item_hold != 0
          src_rect = Rect.new(-18, -5, 31, 21)
          bitmap = RPG::Cache.picture("item_hold.png")
          self.contents.blt(50, 50, bitmap, src_rect, 255)
        end
       
        # Nom, niveau, genre
        draw_text(118, 18, 170, $fs, @pokemon.given_name)
        if @pokemon.egg
          return
        end       
        draw_gender(287, 28, @pokemon.gender)
        if (@pokemon.status > 0 and @pokemon.status < 6) or @pokemon.dead?
          string = "stat_team" + @pokemon.status.to_s + ".png"
          src_rect = Rect.new(0, 0, 60, 24)
          bitmap = RPG::Cache.picture(string)
          self.contents.blt(35, 87, bitmap, src_rect, 255)
        else
          draw_text(25, 72, 100, $fs, "N." + @pokemon.level.to_s)
        end
        # HP
        if @mode == "item_able" or ( @mode == "selection" and @data != nil )
          if Item.able?(@data, @pokemon)
            string = "APTE"
            draw_text(15, 72, 160, $fs, string, 2)
          else
            string = "PAS APTE"
            draw_text(15, 72, 214, $fs, string, 2)
          end         
        else
          level = @pokemon.hp / @pokemon.maxhp_basis.to_f
          draw_hp_bar(39, 55, level) # HP barre pkmn en tête de liste
          draw_text(49, 72, 215, $fs, @pokemon.hp.to_s + " / " + @pokemon.maxhp_basis.to_s, 2)
        end     
       
      else # A partir d'ici tout s'applique au 5 autres fenêtres
       
        src_rect = Rect.new(0, 0, 350, 152)
        if @on_switch == @index or (@on_switch != -1 and @menu_index == @index)
          # Cadre vert sélectionné
          bitmap = RPG::Cache.picture("cadrepartym.png")       
        elsif @menu_index == @index
          # Cadre bleu hover
          bitmap = (@pokemon.dead? and not @pokemon.egg) ? RPG::Cache.picture("cadrepartydl.png") : RPG::Cache.picture("cadrepartyl.png")      
        else
          # Cadre bleu
          bitmap = (@pokemon.dead? and not @pokemon.egg) ? RPG::Cache.picture("cadrepartyd.png") : RPG::Cache.picture("cadreparty.png")
        end
        self.contents.blt(0, 0, bitmap, src_rect, 255)
       
        src_rect = Rect.new(-33, -7, 100, 80)
        bitmap = RPG::Cache.battler(@pokemon.icon, 0)
        self.contents.blt(0, 0, bitmap, src_rect, 255)
       
        if @pokemon.item_hold != 0
          src_rect = Rect.new(-18, -5, 31, 21)
          bitmap = RPG::Cache.picture("item_hold.png")
          self.contents.blt(50, 50, bitmap, src_rect, 255)
        end
       
        draw_text(118, 18, 170, $fs, @pokemon.given_name)
        if @pokemon.egg
          return
        end       
       
        draw_gender(287, 28, @pokemon.gender)
        if (@pokemon.status > 0 and @pokemon.status < 6) or @pokemon.dead?
          string = "stat_team" + @pokemon.status.to_s + ".png"
          src_rect = Rect.new(0, 0, 60, 24)
          bitmap = RPG::Cache.picture(string)
          self.contents.blt(35, 91, bitmap, src_rect, 255)
        else
          draw_text(25, 72, 100, $fs, "N." + @pokemon.level.to_s)
        end
       
        if @mode == "item_able" or ( @mode == "selection" and @data != nil )
          if Item.able?(@data, @pokemon)
            string = "APTE"
            draw_text(15, 72, 160, $fs, string, 2)
          else
            string = "PAS APTE"
            draw_text(15, 72, 214, $fs, string, 2)
          end         
        else
          level = @pokemon.hp / @pokemon.maxhp_basis.to_f
          draw_hp_bar(39, 55, level)
          draw_text(49, 72, 215, $fs, @pokemon.hp.to_s + " / " + @pokemon.maxhp_basis.to_s, 2)
        
        end     
      end
    end
   
    def dispose
      super
    end
   
    def draw_hp_bar(x, y, level, small = false)
      src_rect = Rect.new(-79, -4, 254, 39)
      bitmap = RPG::Cache.picture("hpbar_team.png")
      if small
        bitmap = RPG::Cache.picture("hpbar_team.png")
      end
      self.contents.blt(x, y, bitmap, src_rect, 255)
      rect1 = Rect.new(x + 117, y + 6, level*119.to_i, 3)
      rect2 = Rect.new(x + 117, y + 9, level*119.to_i, 5) 
      rect3 = Rect.new(x + 117, y + 13, level*119.to_i, 3)
    if small
      rect1 = Rect.new(x + 117, y + 6, level*119.to_i, 3)
      rect2 = Rect.new(x + 117, y + 9, level*119.to_i, 5) 
      rect3 = Rect.new(x + 117, y + 13, level*119.to_i, 3)
      end
     
      if level < 0.1
        color1 = Color.new(248, 72, 56, 255)
        color2 = Color.new(248, 152, 152, 255)       
      elsif level >= 0.1 and level < 0.5
        color1 = Color.new(232, 168, 0, 255)
        color2 = Color.new(248, 216, 0, 255)       
      else
        color1 = Color.new(24, 192, 32, 255)
        color2 = Color.new(96, 248, 96, 255)       
      end
      self.contents.fill_rect(rect1, color1)
      self.contents.fill_rect(rect2, color2)
      self.contents.fill_rect(rect3, color1)
    end
   
    def draw_gender(x, y, gender)
      if gender == 1
        rect = Rect.new(0, 0, 18, 33)
        bitmap = RPG::Cache.picture("Maleb_equipe.png")
        self.contents.blt(x, y, bitmap, rect, 255)
      end
      if gender == 2
        rect = Rect.new(0, 0, 18, 33)
        bitmap = RPG::Cache.picture("Femaleb_equipe.png")
        self.contents.blt(x, y, bitmap, rect, 255)       
      end
    end
  end
end

Et pour les ressources: toutes dans le dossier Pictures de votre jeu.
Images à télécharger
























Normalement, c'est tout. mais prévenez-moi s'il manque des ressources.

Posté par Chompy le 17 Jan - 16:49 (2011)
Merci beaucoup, je teste ca tout de suite et je te dis s'il manque des choses.


EDIT : Il manque juste les images "femaleb_equipe", "maleb_equipe"et hpbar_team. 

Posté par sassouna le 15 Fév - 00:25 (2011)
je voudrais signaler que le lien est mort !

Posté par Pαlвσlѕку le 15 Fév - 00:33 (2011)
Le lien est à nouveau disponible.

Posté par sassouna le 18 Fév - 09:19 (2011)
j'utilise pokemon psp4g+ pourtant j'ai tout suivie et ça marche pas ! ligne 1114

Posté par Pαlвσlѕку le 18 Fév - 18:47 (2011)
C'est impossible d'avoir ce bug.
En effet, le script compte moins de 1100 lignes.

Posté par sassouna le 18 Fév - 19:05 (2011)
ah c'est bon ça marche super bien maintenant merci beaucoup