La thérapie du making - Rpg maker
Vous souhaitez réagir à ce message ? Créez un compte en quelques clics ou connectez-vous pour continuer.


Forum dédié à l'apprentissage du making (art de créer des JV) sous Rpg Maker (spécialisé sous VX/VX Ace), les demandes de ressources graphiques pour les graphistes du forum, la standill compétition, l'entraide, et une multitude d'autres activités !
 
AccueilRechercherDernières imagesS'enregistrerConnexion
Le deal à ne pas rater :
Cartes Pokémon 151 : où trouver le coffret Collection Alakazam-ex ?
Voir le deal

 

 Cours n°2: Le fonctionnement un peu plus avancé des scripts d'RMVX

Aller en bas 
5 participants
AuteurMessage
XakuX
Professeur - Script
Professeur - Script
XakuX


Messages : 446
Age : 29
Avertissements :
Cours n°2: Le fonctionnement un peu plus avancé des scripts d'RMVX Left_bar_bleue89 / 10089 / 100Cours n°2: Le fonctionnement un peu plus avancé des scripts d'RMVX Right_bar_bleue


Cours n°2: Le fonctionnement un peu plus avancé des scripts d'RMVX Empty
MessageSujet: Cours n°2: Le fonctionnement un peu plus avancé des scripts d'RMVX   Cours n°2: Le fonctionnement un peu plus avancé des scripts d'RMVX EmptyDim 3 Avr - 12:37

Bien le bonjour tout le monde !
Bon, je crois qu’avant tout, je dois m’expliquer pour le temps entre les 2 tutoriels, et bien, sachez que ce sera toujours comme ça, parce que je suis tellement un fainéant que je fais un tuto’ tous les mois ! En fait, voulant parfaire mon enseignement et surtout vérifier que je ne disais pas de connerie, j’ai mis pas mal de temps Cours n°2: Le fonctionnement un peu plus avancé des scripts d'RMVX 841796027
En fait il est peut-être bien possible que je ne fasse qu’un tuto’ tout les mois tout de même, j’ai un peu de mal à me trouver du temps libre de libre (c'est-à-dire qui n’est pas déjà consacré à jouer à des jeux quelconques ou a t’chatez sur des fofos Cours n°2: Le fonctionnement un peu plus avancé des scripts d'RMVX 841796027 ) pour écrire ces cours…
Alors je suis allez sur plusieurs sites, et j’ai découvert beaucoup, beaucoup de choses (comme quoi, je n’étais peut-être pas si bien placé que ça pour vous apprendre ^^’) Et j’ai finalement hésité sur l’orientation de mon cours, et puis je me suis quand même dis que suivre l’enseignement que j’ai moi-même suivi à mes débuts en scripts étaient sans doute le meilleur choix, plus compréhensible et plus simple, à mon avis Smile
Bon, je n’hésiterai pas à vous faire parvenir 2-3 trucs en plus que j’ai appris durant ce temps-là, mais plutôt que d’aborder une étude très théorique comme la plupart des tuto’s, on va faire un peu tout dans le désordre (en fait l’ordre que j’ai moi-même suivi ^^), et comme ça, si vous êtes pas content, vous avez plein d’autre site qui vous propose des tuto’s bien long et bien chiant mais avec lesquels vous en saurez sans doute largement plus !
C’est donc avec ce petit paragraphe d’introduction que nous allons débuter notre nouveau tutoriel qui aurait pour but d’étudier le fonctionnement un peu plus avancé des scripts sur RPG maker, et par la même occasion de croiser, sans doute, quelques fonctions élémentaires !

Cours n°2: Le fonctionnement un peu plus avancé des scripts d'RMVX Lefonctionnementunpeupl

Niveau : débutant Cours n°2: Le fonctionnement un peu plus avancé des scripts d'RMVX Niv_110
Requis : RPG maker VX Cours n°2: Le fonctionnement un peu plus avancé des scripts d'RMVX Rpg_vx10
. -Un projet sans script

J’aimerai précisez un détail important avant de commencer, étant donné mon apprentissage « dans le tas » j’ai peut-être certaines idées fausses, alors même si j’essaye toujours de vérifier ce que je dis, je ne vous promets pas que ce que je pourrais vous raconter soit toujours vrai (bien évidemment, ça fonctionnera dans le cas dans lequel je vous parle, mais qui sait dans d’autre cas…)
Mais vous verrez que se tromper, c’est parfois le meilleur moyen d’apprendre Cours n°2: Le fonctionnement un peu plus avancé des scripts d'RMVX 841796027 !
Bon, Z’êtes prêt ? Non ? Bah tant pis…
Allez c’est parti Cours n°2: Le fonctionnement un peu plus avancé des scripts d'RMVX 841796027

Bon, j’espère que mon enseignement ne s’est pas trop évaporer durant les quelques semaines qui nous sépare du premier cours, mais si, rappelez vous, on avait vu que tout découlait du script main non ?
Eh bien, une fois que le script main a lancé le script Scene_Title, tout s’enchaine avec des méthodes (def), nous avons vu que pour appelez une méthode (def), il fallait faire Nom_du_script.nom_de_le_méthode. Eh bien, ce ne sera le cas que lorsque l’on veut activer une méthode sur un autre script. Si l’on veut appeler une méthode sur le même script (où de celui qu’il hérite, on verra cette notion tout à l’heure) il suffit simplement de mettre le nom de la méthode, sans def, sans point, sans je sais trop quoi, rien !

Ce qui nous amène à expliquer un petit peu les différentes formes de bout de code que nous allons voir :
Une méthode (def) doit toujours commencer par une minuscule, une class toujours par une majuscule, c’est un moyen pour les distinguer lorsqu’on va les appeler. Mais malheureusement, tout aurait put être si beau, si doux, si peu caféiné et sans sucre ajouté si les variables ne venait pas nous faire ch*er !
Bon les variables, vous êtes assez grand pour savoir que c’est un « nom » qui a en fait une valeur numérique ? Bien, seulement, les variables, dans RM, peuvent être avec une majuscule ou une minuscule au début de leur nom, donc pour voir si c’est une variable ou un méthode, c’est des fois un peu la galère, et il n’y a pas de méthode miracle, il faut voir qu’est-ce qu’on lui fait après pour savoir si c’est une variable ou une méthode. A noter quand même que la méthode est la seule à pouvoir être placé juste comme ça, sans rien après ni avant, tandis que les variables auront toujours des commandes qui les suivent ou les précèdent.
Un petit détail aussi sur les variables que j’explique maintenant comme ça se sera fait :
. -Une variable sans signe distinctif en premier caractère de son nom et avec sa première lettre en minuscule (par exemple xmonSieur_ProprE) est une variable exclusif à une méthode (def) et elle doit être défini dans celle-ci, on les appelles « variable locale » (la plus courante d’entre elle est sans doute i, qui servira pour les boucles plus tard)
. -Une variable avec un @ au début de son nom (@MonSieur_Propre par exemple) est effective pour toute la class où on la défini ainsi que sur les class hérité (on va y arriver à cette notion, vous inquiétez pas), on les appelles « variable d’instance »
. -Une variable avec un $ ou avec une majuscule au début de son nom (exemple : $MonSieur_Propre ou MonSieur_Propre) seront effective pour tout les scripts, on les appelle « variable globale » (A noter : si c’est une majuscule, il faut que celle-ci soit défini et modifier en dehors d’une méthode, c’est pourquoi on en croise rarement)

Ce point sur les variables fait, revenons en à nos méthodes, celle-ci étant, je vous le rappelle, appelez dans leur class (ou héritage) juste en mettant leur nom. Ces méthodes, contrairement aux évents, n’ont pas de fonctionnement du type « processus parallèle »,, mais vous allez voir, avec l’exemple suivant, comment en revenir au même, reprenez votre projet vierge (ou recréez-en si vous l’avez supprimer) :

Cours n°2: Le fonctionnement un peu plus avancé des scripts d'RMVX Exemple1

Code:

class Prout
$I = 0
  def ma_methode1
    $I +=1
    ma_methode2
    if $I == 4
      print "$I="+$I.to_s
      exit
    end
    ma_methode1
  end
  def ma_methode2
    print "+1"
  end
end

Et comme d’habitude, en second script, mettez:

Code:
 $scene = Prout.new
$scene.ma_methode1

Vous pouvez l’essayer tout de suite, vous voyez que ça affiche +1 4 fois, puis ça affiche 4 !
Détaillons un peu le script, je ne détaillerai pas le second, vous connaissez bien, du moins j’espère !
Seconde ligne du premier code :
Code:
$I = 0
Permet d’initialiser la variable global I (j’ai utilisé une variable global dans ce cas car il aurait fallu créer une autre méthode pour faire une variable d’instance, où même il aurait fallu employer une boucle pour utiliser une variable locale, et ce n’est pas le sujet ici ^^)
Une fois rentré dans ma_methode1, on implémente 1 à la variable $I, et on va à la méthode 2, cette dernière affiche +1, et une fois fini, on revient à notre première méthode (non, le script ne s'arrête pas >.<), celle-ci vérifie avec la condition « if » si la variable $I vaut 4. Si c’est le cas, elle affiche « $I=4 », 4 étant la valeur de I, logique. Mais j’utilise le .to_s pour vous apprendre aussi cette commande utile qui permet de faire d’une variable numérique une variable en chaine de caractère (pour s’en souvenir du .to_s, c’est l’abréviation de to_string, donc pour les petits pervers comme moi, ça ne devrait pas poser de soucis Cours n°2: Le fonctionnement un peu plus avancé des scripts d'RMVX 841796027 ). Je vous ferais remarquer que, pour ceux qui aurait lu la description du script main, on aurait aussi pu faire : print « $I=#{$I} » Wink
Puis ensuite on ferme le jeu (exit) lorsque $I est égale à 4
Mais enfin, si on a ajouter qu’1 à la variable $I, elle peut pas être égale à 4, c’est quoi c’te connerie ?
Eh bien en fait en mettant la commande ma_methode1 à la fin de la méthode du même nom, celle-ci se rejoue depuis le début, c’est le principe d’une boucle (limité dans notre cas, puisqu’arriver 4 passage elle s’arrête) commande très utile en évent pour ceux qui ne le saurait pas Smile

Donc tout à l’heure, quand je parlais d’évent en processus parallèle, ce n’est pas exactement le cas, en fait, contrairement au processus parallèle où on a « l’impression » (parce qu’en fait c’est pas vrai non plus Cours n°2: Le fonctionnement un peu plus avancé des scripts d'RMVX 841796027 ) que les évents se joue tout les deux en même temps, là, c’est juste les commandes qui se jouent rapidement, mais les unes à la suite des autres. La création d’un script complet demande donc une certaines aises de ce coté-là, que pour ma part, je n’ai pas encore (Voyez comme il est nul votre prof Cours n°2: Le fonctionnement un peu plus avancé des scripts d'RMVX 841796027 )

Peut-être qu’un exemple plus clair vous ferait mieux retenir, avec plus d’implication de méthode :

Cours n°2: Le fonctionnement un peu plus avancé des scripts d'RMVX Exemple2s

Code:

class Prout
  def ma_methode1
    ma_methode2
    print "Eh voila"
  end
  def ma_methode2
    print "Bonjour"
    ma_methode3
    ma_methode5
  end
  def ma_methode3
    print "Je suis là juste pour t'embêter"
    ma_methode4
  end
  def ma_methode4
    print "moi aussi"
  end
  def ma_methode5
    print "et comme si ça suffisait pas, une de plus"
  end
end

(laisser le second script d’appel de la scene)
Que des commandes que vous connaissez bien, mais un petit parcours du combattant pour trouvez dans quel ordre ça s’active ? Pas vraiment, il suffit de lire dans l’ordre : Une fois dans la méthode 1, on appelle la méthode 2, dans la méthode, on affiche bonjour, puis on va à la méthode 3 (attention, pas tout de suite à la 5) une fois dans la 3, on affiche le message, on continue on va dans la 4, on affiche un autre message, celle-ci n’appelant pas de méthode, on reviens en arrière, là où c’était arrêté la dernière méthode, donc on appelle la méthode 5, celle-ci affiche aussi un message et ce fini, alors on reviens encore en arrière là où c’était arrêté la méthode 1 et on la finit, enfin ! *reprends sa respiration*

Alors vous allez me dire, ce qui apparait à l’écran, on aurait pu le faire en 5 lignes, alors pourquoi se faire chier avec autant de commande ?
D’un pour raccourcir les codes (là vous rigolez Cours n°2: Le fonctionnement un peu plus avancé des scripts d'RMVX 841796027 ) Mais logiquement, ces méthodes permettent d’être appeler rapidement dans le même script, et ne vous inquiétez pas, vous verrez des commandes bien plus compliquez que ça.
Et aussi de rendre le script plus lisible (vous rigolez de nouveau Cours n°2: Le fonctionnement un peu plus avancé des scripts d'RMVX 841796027 ) en fait, les méthodes ont généralement des noms clairs, des explications en commentaire, elles sont donc très facilement compréhensible pour les petits anglophones que nous sommes, et puis vous verrez que les méthodes ont plein de commande ma foi fort sympathique ! Smile

Alors, des questions ?

Et ton histoire d’héritage de script là, triple buse, c’est passez à la souche ?!
A m*rde, j’avais oublié !
Et bien, lorsqu’un script hérite d’un autre, voila ce que vous allez voir dans le nom de la class :
Code:
class machine_chose < machin_bidule
Le premier nom est celui de la class actuel, le second de sa classe mère, sa class d’héritage, enfin bref ‘, un nom comme ça. Cela nous sera très utile lorsqu’on nous attaquerons les Windows (ce que je n’ai ABSOLUMENT pas l’intention de faire avant le prochain siècle, étant donné que je n’y comprends rien pour le moment Cours n°2: Le fonctionnement un peu plus avancé des scripts d'RMVX 841796027 ), ainsi, si on appelle une méthode qui n’est pas dans la class, le script ira vérifier dans la class d’héritage pour voir si elle s’y trouve, et la lancera si c’est le cas (mais si la méthode se trouve dans la class de base, le script n’activera que celui-là, pas celui de la class mère). Si vous voyez la commande « super » apparaitre dans un script, cela signifie qu’une méthode de même nom se trouve dans la class mère, et ça aura pour fonction de la lancer Wink




Voila, On va s’arrêter là pour aujourd’hui, beaucoup de blabla pour pas beaucoup de découverte finalement, on attaquera les trucs un peu plus croustillant la prochaine fois j’espère Smile
Sur ce, je ré-hiberne un mois, bonne nuit les enfants !


Dernière édition par XakuX le Dim 3 Avr - 12:51, édité 1 fois
Revenir en haut Aller en bas
Limit' the fox
Modérateur général
Modérateur général
avatar


Messages : 1227
Age : 26
Avertissements :
Cours n°2: Le fonctionnement un peu plus avancé des scripts d'RMVX Left_bar_bleue100 / 100100 / 100Cours n°2: Le fonctionnement un peu plus avancé des scripts d'RMVX Right_bar_bleue


Cours n°2: Le fonctionnement un peu plus avancé des scripts d'RMVX Empty
MessageSujet: Re: Cours n°2: Le fonctionnement un peu plus avancé des scripts d'RMVX   Cours n°2: Le fonctionnement un peu plus avancé des scripts d'RMVX EmptyDim 3 Avr - 12:50

j'ai juste a te dire deux trucs :1) c'est bien voir tres bien (le peu que j'ai lu vu que j'ai un mal de tete horrible )
2)c'est pas censé etre cours n°2 ?


continue comme ça et sort nous plus de cours (quoi que je ne suis pas bien placé pour parler Cours n°2: Le fonctionnement un peu plus avancé des scripts d'RMVX 841796027 )

PS: promis je lit tout demain

Revenir en haut Aller en bas
XakuX
Professeur - Script
Professeur - Script
XakuX


Messages : 446
Age : 29
Avertissements :
Cours n°2: Le fonctionnement un peu plus avancé des scripts d'RMVX Left_bar_bleue89 / 10089 / 100Cours n°2: Le fonctionnement un peu plus avancé des scripts d'RMVX Right_bar_bleue


Cours n°2: Le fonctionnement un peu plus avancé des scripts d'RMVX Empty
MessageSujet: Re: Cours n°2: Le fonctionnement un peu plus avancé des scripts d'RMVX   Cours n°2: Le fonctionnement un peu plus avancé des scripts d'RMVX EmptyDim 3 Avr - 12:53

SI JE DIS QUE C'EST LE 1 C'EST QUE C'EST LE 1 NONDEDIOU !
Tu insinuerais pas que je pourrais me tromper, MOI ?!!!
En fait je m'en suis rendu compte au moment où t'as posté Razz
Revenir en haut Aller en bas
Thérapie
Fondateur †
Fondateur 	†
Thérapie


Messages : 2276
Age : 28
Avertissements :
Cours n°2: Le fonctionnement un peu plus avancé des scripts d'RMVX Left_bar_bleue100 / 100100 / 100Cours n°2: Le fonctionnement un peu plus avancé des scripts d'RMVX Right_bar_bleue


Cours n°2: Le fonctionnement un peu plus avancé des scripts d'RMVX Empty
MessageSujet: Re: Cours n°2: Le fonctionnement un peu plus avancé des scripts d'RMVX   Cours n°2: Le fonctionnement un peu plus avancé des scripts d'RMVX EmptyLun 4 Avr - 15:11

XakuX a écrit:
je ne vous promets pas que ce que je pourrais vous raconter soit toujours vrai
C'est rassurant Bertrand xD Bref ça commence déjà à monter de niveau pour moi Razz Je verrais comment ça se passe pendant l'exam' Surprised
En tout cas merci pour le cours Very Happy

Bye
Revenir en haut Aller en bas
https://therapie-leforum.1fr1.net
nuki
Momie puante
Momie puante
nuki


Messages : 19
Avertissements :
Cours n°2: Le fonctionnement un peu plus avancé des scripts d'RMVX Left_bar_bleue100 / 100100 / 100Cours n°2: Le fonctionnement un peu plus avancé des scripts d'RMVX Right_bar_bleue


Cours n°2: Le fonctionnement un peu plus avancé des scripts d'RMVX Empty
MessageSujet: Re: Cours n°2: Le fonctionnement un peu plus avancé des scripts d'RMVX   Cours n°2: Le fonctionnement un peu plus avancé des scripts d'RMVX EmptySam 2 Juil - 10:43

ce cours est un peu nul
Revenir en haut Aller en bas
Limit' the fox
Modérateur général
Modérateur général
avatar


Messages : 1227
Age : 26
Avertissements :
Cours n°2: Le fonctionnement un peu plus avancé des scripts d'RMVX Left_bar_bleue100 / 100100 / 100Cours n°2: Le fonctionnement un peu plus avancé des scripts d'RMVX Right_bar_bleue


Cours n°2: Le fonctionnement un peu plus avancé des scripts d'RMVX Empty
MessageSujet: Re: Cours n°2: Le fonctionnement un peu plus avancé des scripts d'RMVX   Cours n°2: Le fonctionnement un peu plus avancé des scripts d'RMVX EmptySam 2 Juil - 12:02

Un peu nul ? XakuX s'ameliore ! Cours n°2: Le fonctionnement un peu plus avancé des scripts d'RMVX 3145715902
Revenir en haut Aller en bas
Malum
Sergent monstrueux
Sergent monstrueux
Malum


Messages : 173
Age : 29
Avertissements :
Cours n°2: Le fonctionnement un peu plus avancé des scripts d'RMVX Left_bar_bleue100 / 100100 / 100Cours n°2: Le fonctionnement un peu plus avancé des scripts d'RMVX Right_bar_bleue


Cours n°2: Le fonctionnement un peu plus avancé des scripts d'RMVX Empty
MessageSujet: Re: Cours n°2: Le fonctionnement un peu plus avancé des scripts d'RMVX   Cours n°2: Le fonctionnement un peu plus avancé des scripts d'RMVX EmptyDim 3 Juil - 6:30

Oui, mais Nuki le surpasse sans problème.
Revenir en haut Aller en bas
nuki
Momie puante
Momie puante
nuki


Messages : 19
Avertissements :
Cours n°2: Le fonctionnement un peu plus avancé des scripts d'RMVX Left_bar_bleue100 / 100100 / 100Cours n°2: Le fonctionnement un peu plus avancé des scripts d'RMVX Right_bar_bleue


Cours n°2: Le fonctionnement un peu plus avancé des scripts d'RMVX Empty
MessageSujet: Re: Cours n°2: Le fonctionnement un peu plus avancé des scripts d'RMVX   Cours n°2: Le fonctionnement un peu plus avancé des scripts d'RMVX EmptyDim 3 Juil - 13:23

la n'est pas vraiment la question. Ce cours n'a pas lieu d'être car il n'explique rien. XakuX est surement un très bon porgrammeur, mais il entrave quedal niveau pédagogie
Revenir en haut Aller en bas
XakuX
Professeur - Script
Professeur - Script
XakuX


Messages : 446
Age : 29
Avertissements :
Cours n°2: Le fonctionnement un peu plus avancé des scripts d'RMVX Left_bar_bleue89 / 10089 / 100Cours n°2: Le fonctionnement un peu plus avancé des scripts d'RMVX Right_bar_bleue


Cours n°2: Le fonctionnement un peu plus avancé des scripts d'RMVX Empty
MessageSujet: Re: Cours n°2: Le fonctionnement un peu plus avancé des scripts d'RMVX   Cours n°2: Le fonctionnement un peu plus avancé des scripts d'RMVX EmptyDim 3 Juil - 14:12

nuki' a écrit:
XakuX est surement un très bon porgrammeur
Moui... Tout est question de point de vue Gros sourire
Non, quand même, je crois qu'il y a le "très"... et le "bon" de trop dans ta phrase Gros sourire
Revenir en haut Aller en bas
Contenu sponsorisé





Cours n°2: Le fonctionnement un peu plus avancé des scripts d'RMVX Empty
MessageSujet: Re: Cours n°2: Le fonctionnement un peu plus avancé des scripts d'RMVX   Cours n°2: Le fonctionnement un peu plus avancé des scripts d'RMVX Empty

Revenir en haut Aller en bas
 
Cours n°2: Le fonctionnement un peu plus avancé des scripts d'RMVX
Revenir en haut 
Page 1 sur 1
 Sujets similaires
-
» Trailer #1 : Le destin des quatre éléments
» Cours n°4 : Adaptation XP -> VX
» Cours n°1 - Recolorisation
» Cours n°1: Fonctionnement d'RPG maker
» Cours n°2 - Angle de vue rpg maker

Permission de ce forum:Vous ne pouvez pas répondre aux sujets dans ce forum
La thérapie du making - Rpg maker :: Espace forum :: Cours :: Script-
Sauter vers: