Day.png);">
Apprendre


Vous êtes
nouveau sur
Oniromancie?

Visite guidée
du site


Découvrir
RPG Maker

RM 95
RM 2000/2003
RM XP
RM VX/VX Ace
RM MV/MZ

Apprendre
RPG Maker

Tutoriels
Guides
Making-of

Dans le
Forum

Section Entraide

Sorties: Star Trek: Glorious Wolf - (...) / Sorties: Dread Mac Farlane - episode 3 / News: Plein d'images cools créées par (...) / Sorties: Star Trek: Glorious Wolf - (...) / Jeux: Final Fantasy 2.0 / Chat

Bienvenue
visiteur !




publicité RPG Maker!

Statistiques

Liste des
membres


Contact

Mentions légales

443 connectés actuellement

29190098 visiteurs
depuis l'ouverture

5149 visiteurs
aujourd'hui



Barre de séparation

Partenaires

Indiexpo

Akademiya RPG Maker

Blog Alioune Fall

Fairy Tail Constellations

ConsoleFun

Tashiroworld

Lunae - le bazar d'Emz0

Le Comptoir Du clickeur

Planète Glutko

Tous nos partenaires

Devenir
partenaire



forums

Index du forum > Entraide > [RESOLU] [RMXP] Problème avec les scripts de forge


Motoki - posté le 12/11/2012 à 13:51:32 (111 messages postés)

❤ 0

Domaine concerné: script
Logiciel utilisé: RMXP
Pour la fonction création d'objet, j'ai quelques soucis. Il faut prendre en compte que :
1) je ne veux pas de forge en event !!! (même si c'est plus simple, c'est moins chic :) :) :))
2) Peu de script de forge fonctionne bien, mais j'en ai trouvé un qui marche presque.

L'erreur qui m'empêche d'avancer est :

Script "Crafting System" line 355 NoMethodError occurred
Undefined Method 'icon_name' for nil Class

Ce que j'ai compris dans ce passage de script, c'est que :
On appelle une image "icon" pour n'importe quel "icon" d'objet à créer donc le "item."(reconnu) "icon-name"(qui n'est pas reconnu par le moteur) doit généraliser le nom de tous les objets. Donc il me faut un terme qui comprend (logique :'). J'ai essayé aussi "item.name" ça marche pas non plus.

Par exemple :
XX-machin.png (généralisé)
01-potion.png
02-élixir.png
etc...

Grand fan de makai et de jeu Tactique rpg


arttroy - posté le 12/11/2012 à 15:02:12 (2394 messages postés)

❤ 0

Just working

Ça donne quoi ta ligne 355 ?

Anti-inconstructivité / Pétition pour que le mot making soit inscrit dans le dictionnaire ?


Motoki - posté le 12/11/2012 à 15:58:20 (111 messages postés)

❤ 0

#--------------------------------------------------------------------------
# * Help Text Update
#--------------------------------------------------------------------------
def update_help
if self.recipe == nil
item = nil
@help_window.set_text('')
else
case self.recipe[1][0]
when 0 # item
item = $data_items[self.recipe[1][1]]
when 1 # weapon
item = $data_weapons[self.recipe[1][1]]
when 2 # armor
item = $data_armors[self.recipe[1][1]]
end
(355) bitmap = RPG::Cache.icon(item.icon_name)
@help_window.set_text('Creates ' + item.name)
@help_window.contents.blt(78, 4, bitmap, Rect.new(0, 0, 24, 24))
end*3

Pour vous aidez à m'aider, j'ai une démo (vous pouvez aussi supprimer le script "new classes" ça aura aucune conséquence sur le jeu)

http://www.mediafire.com/?aq7d1ckb7j4mx81

Edit : 26/11/2012

J'ai vu que la démo a été téléchargé. Donc je voudrais savoir si vous avez trouvé l'origine de l'erreur du script ? Merci de laisser des commentaires ça pourrait m'aider à solutionner le problème.
Car j'aimerai faire un trailer de mon jeu. Et sans ce script, cela rendrait le trailer incomplet.

Grand fan de makai et de jeu Tactique rpg


arttroy - posté le 26/11/2012 à 14:48:47 (2394 messages postés)

❤ 0

Just working

Portion de code : Tout sélectionner

1
2
(355) bitmap = RPG::Cache.icon(item.icon_name)
@help_window.set_text('Creates ' + item.name) 



Sans être sûr de moi je crois que tu devrais plutôt mettre

Portion de code : Tout sélectionner

1
2
(355) bitmap = RPG::Cache.icon(item.name)
@help_window.set_text('Creates ' + item.name) 



Où alors

Portion de code : Tout sélectionner

1
2
(355) @help_window.bitmap = RPG::Cache.icon(item.icon_name)
@help_window.set_text('Creates ' + item.name) 



Où peut être les deux combinés...

Anti-inconstructivité / Pétition pour que le mot making soit inscrit dans le dictionnaire ?


Motoki - posté le 26/11/2012 à 16:15:24 (111 messages postés)

❤ 0

Merci d'avoir essayé mais ton idée marche pas :'(

Grand fan de makai et de jeu Tactique rpg


arttroy - posté le 26/11/2012 à 17:17:46 (2394 messages postés)

❤ 0

Just working

Et en mettant :

Portion de code : Tout sélectionner

1
2
bitmap = Bitmap.new
(355) bitmap = RPG::Cache.icon(item.icon_name) 



Je ne sais pas j'ai l'habitude de me servir de Ace (donc rgss3) mais ça me paraît quand même curieux cette ligne toute seule...

Sinon tu as quoi comme message d'erreur?

Anti-inconstructivité / Pétition pour que le mot making soit inscrit dans le dictionnaire ?


Motoki - posté le 27/11/2012 à 11:14:22 (111 messages postés)

❤ 0

les messages d'erreures pour chaque cas :

Citation:

Script "Crafting System" line 355 NoMethodError occurred
Undefined Method 'icon_name' for nil Class



Script "Crafting System" line 355 NoMethodError occurred
Undefined Method '@help' for Command

Script "Crafting System" line 355 NoMethodError occurred
Undefined Method 'new' for nil Class

Grand fan de makai et de jeu Tactique rpg


Mack - posté le 27/11/2012 à 11:49:55 (2286 messages postés)

❤ 0

Portion de code : Tout sélectionner

1
Undefined Method 'icon_name' for nil Class


La méthode icon_name n'est pas définie dans la classe nil.

Ta variable icon est donc égale à nil, donc ça crash.
Rajoutes une simple condition du type :

Portion de code : Tout sélectionner

1
if item != nil



( Je prend note de tout les commentaires, même si je n'y répond pas )


Motoki - posté le 27/11/2012 à 12:11:18 (111 messages postés)

❤ 0

Citation:

Ta variable icon est donc égale à nil, donc ça crash.



Pas mal, ton analyse, il semblerai que le moteur de script à compris ta modification, mais l'erreur va sur la ligne suivante :

Script "Crafting System" line 356 NoMethodError occurred
Undefined Method 'name' for nil Class

donc je fais l'hypothèse suivant : "if name != nil"

Mais le moteur de script me dit que la variable n'est pas défini

Script "Crafting System" line 356 NameError occurred
Undefined Variable or Method 'name' for "Windows_Recipe"

Grand fan de makai et de jeu Tactique rpg


Mack - posté le 27/11/2012 à 12:29:32 (2286 messages postés)

❤ 0

Bah, normal, c'est exactement le même soucis qu'au dessus en faite.

La seule différence, c'est que tu cherches à avoir le nom de item, et pas son icone.

( Donc suffit de remettre la même ligne que précédemment. )

A chaque foi que t'auras un truc du genre :

Portion de code : Tout sélectionner

1
Undefined Method 'gnagnagna' for nil Class


C'est que la variable à laquelle tu essaies de prendre gnagnagna est égale à nil.

( Je prend note de tout les commentaires, même si je n'y répond pas )


Motoki - posté le 27/11/2012 à 16:42:10 (111 messages postés)

❤ 0

Comment je definis la variable "name" dans "Windows_Recipe"?

Grand fan de makai et de jeu Tactique rpg


Mack - posté le 27/11/2012 à 16:48:07 (2286 messages postés)

❤ 0

Bah, tu la définies pas en faite x).
T'en a pas vraiment besoin, suffit juste de rajouter la condition que je t'ai donner plus haut juste au dessus de la ligne qui te donne l'erreur.

( Je prend note de tout les commentaires, même si je n'y répond pas )


Motoki - posté le 27/11/2012 à 17:11:39 (111 messages postés)

❤ 0

bitmap = RPG::Cache.icon(item.icon_name) if item != nil
@help_window.set_text('Creates ' + item.name) if name != nil
@help_window.contents.blt(78, 4, bitmap, Rect.new(0, 0, 24, 24))

je me suis peut-être trompé dans la notation

Grand fan de makai et de jeu Tactique rpg


Mack - posté le 27/11/2012 à 17:55:10 (2286 messages postés)

❤ 0

Portion de code : Tout sélectionner

1
2
3
4
5
 
if item != nil bitmap = RPG::Cache.icon(item.icon_name) 
@help_window.set_text('Creates ' + item.name)
@help_window.contents.blt(78, 4, bitmap, Rect.new(0, 0, 24, 24)) 
end 


;D

( Je prend note de tout les commentaires, même si je n'y répond pas )


Motoki - posté le 27/11/2012 à 23:07:28 (111 messages postés)

❤ 0

Dommage, ta methode n'est pas reconnu par le moteur de script, ça crash avant l'ecran titre, et pas à cause d'un "end".

Donc j'ai adapté ton idée à ma solution

bitmap = RPG::Cache.icon(item.icon_name) if item != nil 355
@help_window.set_text('Creates ' + item.name) if item != nil 356
@help_window.contents.blt(78, 4, bitmap, Rect.new(0, 0, 24, 24)) 357

Et apparemment ça passe, mais une autre erreur se glisse par dessus et là je ne comprend pas l'erreur

Script "Crafting System" line 357 TypeError occurred
can't convert nilClass into Bitmap

Grand fan de makai et de jeu Tactique rpg


Mack - posté le 28/11/2012 à 01:11:47 (2286 messages postés)

❤ 0

Faut encore rajouter la condition à la fin de la ligne 357.
Vu que si item == nil, tu définies pas la variable bitmap, elle va être égale à nil, et donc tu pourras pas la dessiné.
( Tenté de dessiner nil renvoie une erreur, ça me semble logique. )

J'viens de voir que y avais un retour à la ligne qui avait sauté, t'as bien essayer :

Portion de code : Tout sélectionner

1
2
3
4
5
6
 
if item != nil 
bitmap = RPG::Cache.icon(item.icon_name) 
@help_window.set_text('Creates ' + item.name)
@help_window.contents.blt(78, 4, bitmap, Rect.new(0, 0, 24, 24)) 
end 



N

( Je prend note de tout les commentaires, même si je n'y répond pas )


Motoki - posté le 28/11/2012 à 08:41:47 (111 messages postés)

❤ 0

Ta méthode ne fonctionne toujours pas, cependant le morceau script suivant marche à merveille, aucune erreure et la creation d'objet se fait bien.

bitmap = RPG::Cache.icon(item.icon_name) if item != nil
@help_window.set_text('Creates ' + item.name) if item != nil
@help_window.contents.blt(78, 4, bitmap, Rect.new(0, 0, 24, 24)) if item != nil

Ton idée a donc été efficace et notre collaboration a porté ces fruits. Merci grâce à toi je vais pouvoir avancer dans mon jeu.

Et j'ai une autre idée comme c'est le script de forge RMXP qui fonctionne, je pense qu'il faut le mettre dans la rubrique script d'oniro.

Grand fan de makai et de jeu Tactique rpg

Index du forum > Entraide > [RESOLU] [RMXP] Problème avec les scripts de forge

repondre up

Suite à de nombreux abus, le post en invités a été désactivé. Veuillez vous inscrire si vous souhaitez participer à la conversation.

Haut de page

Merci de ne pas reproduire le contenu de ce site sans autorisation.
Contacter l'équipe - Mentions légales

Plan du site

Communauté: Accueil | Forum | Chat | Commentaires | News | Flash-news | Screen de la semaine | Sorties | Tests | Gaming-Live | Interviews | Galerie | OST | Blogs | Recherche
Apprendre: Visite guidée | RPG Maker 95 | RPG Maker 2003 | RPG Maker XP | RPG Maker VX | RPG Maker MV | Tutoriels | Guides | Making-of
Télécharger: Programmes | Scripts/Plugins | Ressources graphiques / sonores | Packs de ressources | Midis | Eléments séparés | Sprites
Jeux: Au hasard | Notre sélection | Sélection des membres | Tous les jeux | Jeux complets | Le cimetière | RPG Maker 95 | RPG Maker 2000 | RPG Maker 2003 | RPG Maker XP | RPG Maker VX | RPG Maker VX Ace | RPG Maker MV | Autres | Proposer
Ressources RPG Maker 2000/2003: Chipsets | Charsets | Panoramas | Backdrops | Facesets | Battle anims | Battle charsets | Monstres | Systems | Templates
Ressources RPG Maker XP: Tilesets | Autotiles | Characters | Battlers | Window skins | Icônes | Transitions | Fogs | Templates
Ressources RPG Maker VX: Tilesets | Charsets | Facesets | Systèmes
Ressources RPG Maker MV: Tilesets | Characters | Faces | Systèmes | Title | Battlebacks | Animations | SV/Ennemis
Archives: Palmarès | L'Annuaire | Livre d'or | Le Wiki | Divers