E-magination
Vous souhaitez réagir à ce message ? Créez un compte en quelques clics ou connectez-vous pour continuer.


~ S'évader de la banalité... Et entrer dans l'imaginaire ! ~
 
AccueilGuelnika, le site de E-m !ChatS'enregistrerConnexion
Le Deal du moment : -25%
-25% Samsung Odyssey G9 G95C – Ecran PC Gamer ...
Voir le deal
599 €

 

 Equivalence des commandes (RGSS / Ruby)

Aller en bas 
AuteurMessage
Invité
Invité
Anonymous



Equivalence des commandes (RGSS / Ruby) Empty
MessageSujet: Equivalence des commandes (RGSS / Ruby)   Equivalence des commandes (RGSS / Ruby) Icon_minitimeSam 23 Avr 2016, 19:05

Hello,

Je ne pense pas qu'il y ait beaucoup de codeurs RGSS par ici mais je me demandais s'il était possible de créer un module de jeu (un mini jeu dans le jeu) en utilisant uniquement l'invite de commande dans les événements (Insérer un Script, page 3) ?

En fait, j'aimerais créer une boite de dialogue vide et la remplir au fur et à mesure avec mes informations, en Ruby c'est très simple puisqu'on se sert de la console CMD de Windows en substitut à cette fenêtre et avec la commande "puts" et "gets.chomp" on peut déjà établir quelque chose, exemple:

Code:

pseudo = gets.chomp
puts "Salut à toi, " + pseudo

Mais le seul moyen que j'ai trouvé pour ouvrir une fenêtre de dialogue et la remplir avec du texte est d'utiliser la fenêtre d'erreur Windows (ingame) avec l'instruction "print":

Code:

print ("Salut, ceci est un Hello World de pur noob")

Ca fonctionne mais, de 1, c'est très moche, de 2 la fenêtre ne s'agrandit pas en mesure du texte et 3, ça ne résoudrait de toute façon pas le problème puisque je n'ai aucun équivalent à la commande "gets.chomp" en RGSS, autrement dit je ne peux pas recueillir les informations entrées au clavier par le joueur...

Vous commencez à cerner le problème ?
J'aimerais trouver une sorte de dictionnaire listant les équivalences des lignes de commandes entre le Ruby et le RGSS de RmXP mais je ne trouve ça nulle part Tchou tchou !

Pour bien faire ce que j'ai envie de faire je devrais pouvoir, en RGSS, être capable d'afficher une fenêtre dans laquelle je pourrai:

- Afficher du texte
- Recueillir les saisies au clavier
- Créer une boucle "each_char"
- Créer une condition if (ça, ça reste pareil)
- Créer un tableau
- Générer un nombre aléatoire (équivalent de "rand(x)")
- Créer un équivalent d'une boucle For qui ne serait pas une Each.char

Voilà voilà ... Je suis un peu dans la merde, je ne pense pas que vous ayez une réponse à me donner mais sait-on jamais... En tout cas ça me dépannerait monstrueusement car, comme c'est parti là, je vais devoir me coltiner toute la base de données du RGSS de RPG Maker XP (F11, l'éditeur de scripts) et analyser chaque ligne une par une en faisant des tests ingame jusqu'à avoir réponse à mes questions Nerd Sang :suicide:  
Autant dire que ça va me prendre un million d'années si vous ne pouvez pas m'aider xD

Bisou à tous =]

EDIT: Oh pu**** !!! Je viens de me rendre compte qu'on a une documentation sévèrement complète du langage RGSS de RmXp en appuyant tout connement sur F1 !! hahaha
Ok, je m'aime...
Revenir en haut Aller en bas
AristA
Maker qui quitte vraiment E-m Lv 60
Maker qui quitte vraiment E-m Lv 60
AristA


Nombre de messages : 11008
Age : 27

Equivalence des commandes (RGSS / Ruby) Empty
MessageSujet: Re: Equivalence des commandes (RGSS / Ruby)   Equivalence des commandes (RGSS / Ruby) Icon_minitimeSam 23 Avr 2016, 21:41

rtfm
Revenir en haut Aller en bas
http://arista.lescigales.org
Invité
Invité
Anonymous



Equivalence des commandes (RGSS / Ruby) Empty
MessageSujet: Re: Equivalence des commandes (RGSS / Ruby)   Equivalence des commandes (RGSS / Ruby) Icon_minitimeDim 24 Avr 2016, 12:13

Ouais mais même en lisant le p***** de manuel, ça n'indique pas clairement comment ouvrir et remplir une boite de dialogue en conséquence ... Quoi, y en a pas une vide de prévue dans la logiciel ? Obligé de créer des bitmaps avec des rectangles tout moches ou faire appel à des images dans les ressources du projet ?
Revenir en haut Aller en bas
AristA
Maker qui quitte vraiment E-m Lv 60
Maker qui quitte vraiment E-m Lv 60
AristA


Nombre de messages : 11008
Age : 27

Equivalence des commandes (RGSS / Ruby) Empty
MessageSujet: Re: Equivalence des commandes (RGSS / Ruby)   Equivalence des commandes (RGSS / Ruby) Icon_minitimeDim 24 Avr 2016, 13:46

Il me semble que tu trompes d'outil. RGSS est une bibliothèque pour le ruby de la même manière que Node.js l'est pour javascript, ou que Tkinter l'est pour python. C'est à dire qu'elle a un objectif particulier, en occurrence créer des RPG.


Il y a donc bien une classe qui te permet de faire des fenêtres (je crois qu'elle s'appelle windows game object box dialog ou quelque chose dans le genre), mais celles ci seront au plus similaires aux boîtes de dialogue de texte, ou bien au menu intégrée de base dans RPG Maker. Ce que je veux dire, c'est que la seule fonction implémentée, c'est "afficher un carré avec du texte dedans", il n'y a pas d'équivalent simple entre les commandes. C'est donc à toi de les implémenter.

Pour recueillir un texte saisi au clavier, ou bien il faut passer par le menu "changer le nom d'un héros", ou bien il faut que tu codes toi même ce genre de commande. Cela doit se faire en plusieurs temps. D'une part, tu dois être capable de récupérer tous les inputs du clavier (nativement, RPG Maker ne connaît que les touches directionnelles, la touche de validation, d'annulation...). Il y a des scripts en RGSS qui existent déjà et qui devraient te permettre de gagner du temps. D'autre part, tu dois trouver un moyen "d'enregistrer" ce qui est écrit dans un tableau au fur et à mesure. Ce n'est pas très compliqué, il te suffit d'une boucle qui vérifie quelle touche est appuyée, puis incorpore en conséquence dans un string le caractère correspondant.

Finalement, tu dois mettre à jour "en direct" un texte dans une boîte de dialogue. C'est peut être l'aspect le plus tricky, mais ça tombe bien, tu n'es pas le premier à te poser la question.

Pour un nombre aléatoire, ce document m'informe qu'il existe une fonction "rand" nativement en RGSS. En ce qui concerne les tableaux et boucles, j'ai du mal à comprendre tes questions, il semble qu'il s'agit très exactement de la même syntaxe.


Ce que j'essaye de te faire comprendre, c'est que RGSS est une bibliothèque créée dans un but particulier. Ainsi, elle n'est pas exhaustive, et il ne faut pas t'attendre à trouver tout ce que tu veux offert sur un plateau. Comme souvent dans la programmation, ça va être une histoire de bricolage et d'organisation (d'autant plus dans la programmation orientée objet) pour essayer de comprendre de quels outils tu disposes dans ta bibliothèque et de quels instruments tu as besoin dans ton jeu.

C'est également dans ce genre de situation qu'il faut comprendre si cet outil t'est vraiment adapté. Es-tu forcé de passer par le RGSS pour faire ton jeu ? N'existe-t-il pas une autre bibliothèque plus adaptée à tes besoins ? Quelle solution te permettrai de finir ton jeu le plus vite possible ? Quelle solution te permet de donner à ton jeu son aspect le plus abouti possible ? C'est autant de question qu'il convient de se poser avant de se lancer dans l'étude approfondie d'une obscure bibliothèque.

Dans ta situation, peut-être que ruby on rails serait plus adapté ? Il semblerait qu'il y ait un outil de formulaire intégré, sans doute plus proche de ce dont tu as besoin. Le premier résultat sur google pour "ruby gui toolkit" devrait être plus fourni pour répondre aux besoins de ton projet.

Edit : en regardant, Shoes de plus près, ça me semble être vraiment une super bibliothèque pour faire des GUI, avec plein de boîtes pour écrire du texte. Je te conseille de t'y pencher de plus près, les explications sont très claires et la syntaxe très simple !
Revenir en haut Aller en bas
http://arista.lescigales.org
Invité
Invité
Anonymous



Equivalence des commandes (RGSS / Ruby) Empty
MessageSujet: Re: Equivalence des commandes (RGSS / Ruby)   Equivalence des commandes (RGSS / Ruby) Icon_minitimeDim 24 Avr 2016, 14:53

Merci pour cette super réponse détaillée, tellement plus utile qu'un "RTFM" Wink

Ok, vu le bordel que c'est en RGSS juste pour une parcelle de code aussi ridicule que:

Code:

a = "Zgueg"
b = "Sguag"
nb = 0
a.each_char do |n|
    if n == b[n]
        nb += 1
    end
end

Faudrait que chaque caractère entré par l'utilisateur dans un mot saisi via "changer nom du héros" soit comparé avec la place de chaque lettre dans un mot choisi aléatoirement dans une liste et bla bla bla ... Bref des heures de progra pour un truc pas indispensable. J'oublie l'idée Wink

ps: Oui en effet, la syntaxe est identique en ce qui concerne les boucles, conditions, méthodes et-cetera. Je m'étais un peu paumé à cause de tous les "@" et autres "$" dans les variables du RGSS ^^

Mais je vais checker tes liens et le fameux "Shoes", merci Wink
Revenir en haut Aller en bas
Contenu sponsorisé





Equivalence des commandes (RGSS / Ruby) Empty
MessageSujet: Re: Equivalence des commandes (RGSS / Ruby)   Equivalence des commandes (RGSS / Ruby) Icon_minitime

Revenir en haut Aller en bas
 
Equivalence des commandes (RGSS / Ruby)
Revenir en haut 
Page 1 sur 1

Permission de ce forum:Vous ne pouvez pas répondre aux sujets dans ce forum
E-magination :: ~ Forums d'enrichissement ~ :: Apprentissage et partage :: RPG Maker XP :: Entre aides-
Sauter vers: