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

Apprendre
RPG Maker

Guides
Tutoriels
Astuces
Making-of

Dans le
Forum

Section Entraide


Comment ça marche?

Aëdemphia
Par Sylvanor

Fighting Robots Quest
Par Boulon

Geex
Par roys

Inexistence
Par Falco

La Légende d'Ibabou
Par Zaitan

Nylu
Par NanakyTim

Sarcia
Par Kaëlar

Super Mario RPG - Lost Souls
Par Omegabowser

Jeux: EboleY - DEMO / Jeux: Arcadia's Legends / Jeux: KdK Zéro (Chapeau Alex) / Jeux: Cardinal - chapitre 1 / Recherchons jeux ! /

Chat  

Bienvenue
visiteur !





Désactiver
la neige


publicité RPG Maker!

Statistiques

Liste des
membres


Contact

Mentions légales

157 connectés actuellement

10426869 visiteurs
depuis l'ouverture

8 visiteurs
aujourd'hui



Barre de séparation

Partenaires





Les 5 plus
visités

Akademiya RPG Maker

Alex d'Or

BloGecko

ConsoleFun

Eclipso

Au hasard

Zarok

Level Up!

Le Comptoir Du clickeur

Les deux derniers

Planète Glutko

Le Comptoir Du clickeur

Nos autres partenaires

Devenir
partenaire




Les bases sur les variables en Ruby
Ecrit par Denzel Lockheart$

Dans ce tutoriel, je vous présente les principaux types utilisés en Ruby et l'essentiel à savoir sur les variables en Ruby.

I)Les principaux types rencontrés

1)Les entiers

Ils appartiennent à la classe Integer et font partie des valeurs numériques.


Portion de code:



nb = 2

var = -3
zero = 0



2) Les flottants

Ce sont les nombres décimaux de la classe Float. Attention à la virgule !


Portion de code:



pi = 3.14

nb = -5.68
zero = 0.0



3) Les booléens

Les deux seules valeurs possibles pour ces pseudo-variables sont true(vrai) et false(faux). Nous avons respectivement la classe
TrueClass pour true et FalseClass pour false.


Portion de code:




vrai = true
faux = false



4) Les chaines de caractères

Ce sont des chaines entre guillemets ou de simples caractères provenant de la célèbre classe String.


Portion de code:



msg = "Bonjour !"

ch = 'a'



5) Les intervalles

Pour définir un intervalle, on utilise la classe Range avec un borne de valeurs, avec ou sans exclusion.


Portion de code:



periode = 1939 .. 1945 # Inclusion de 1939 à 1945

periode = 1939 ... 1945 # Exclusion de 1945, avec de 1939 à 1944



6) Les tableaux

Un tableau est un ensemble de variables d'objets différents définis sous forme de liste. Il appartient à la classe Array.

En tout cas, vous devez savoir que toute liste ou tableau a un indice commençant par zéro.


Portion de code:



tab = [1,2.35,"quatre"]

tab[1] # 2.35



7) Les listes indexées

Une liste indexée est une liste associative associant un objet à partir d'un autre. La classe Hash gère ce type de listes.
Chaque élément associatif s'appelle une clé et s'associe à une valeur. L'index est l'indice commençant toujours par 0.


Portion de code:



liste = {1=>"un",2=>"deux",3=>"trois"}



8) Les objets invalides

La pseudo-variable nil sert à initialiser un objet non initialisé ou invalide. Elle appartient à la classe NilClass.


Portion de code:



rien = nil

nb_inconnu = nil



9) Les objets de manière générale

Comme vous avez pu le constater, chaque type est associé à son objet par instanciation. De manière générale, on définit un
type comme ceci :


Portion de code:



class Test

# Instructions
end

objet = Test.new



10) Les méthodes de conversion de types

Vous devez toutefois faire attention à certaines conversions.


Portion de code:



to_i # Conversion en entier

to_f # Conversion en flottant
to_s # Conversion en chaine de caractères
to_a # Conversion en tableau



Avec la pseudo-variable nil, voilà ce que ça nous donne :


Portion de code:



nil.to_i # 0

nil.to_f # 0.0
nil.to_s # ""
nil.to_a # []



II) Les opérations sur les variables

1) Les opérations mathématiques

Voici comment on définit des opérations mathématiques en général :


Portion de code:



a = a+1

a = a-2
a = a*4
a = a/3 # Jamais de division par zéro !
a = a%7 # Le modulo % renvoie le reste d'une division euclidienne



Je vous mets aussi la forme contractée :


Portion de code:



a += 1

a -= 2
a *= 4
a /= 3
a %= 7



2) La concaténation

Pour concaténer deux ou plusieurs chaines, on utilise la méthode + (qui est un opérateur mathématique, je sais !).


Portion de code:



"Bon"+"jour !" # "Bonjour !"



Ensuite, il est possible de multiplier un nombre de fois une chaine.


Portion de code:



"Go ! "*3 # "Go ! Go ! Go ! "

"Go !"*0 # Renvoie la chaine vide ""



III) Les booléens et les opérateurs logiques

Je donnerais des exemples concrets après avoir donné les formules logiques sur les booléens.

1) and(et)


Portion de code:



true and true # true

false and false # false
true and false # false

nb>=2 and nb<=5 # 2..5



2) or(ou)


Portion de code:



true or true

false or false
true or false

nb<=2 or nb>=15



3) not(non)


Portion de code:



not true # false

not false # true

not nb>=0 # nb<0



IV) Les différentes portées des variables

Je donnerais la portée et la syntaxe en fonction des variables.

1) Les variables locales

Elles ne s'utilisent que depuis là où elles sont définies.


Portion de code:



var = 0



2) Les variables d'instance ou attributs

Elles ne s'utilisent que dans la classe où elles sont définies et dans les classes dérivées.


Portion de code:



@var = 0



3) Les variables de classe

Ce sont des constantes de classe s'appliquant à l'ensemble des attributs d'une génération de classes.


Portion de code:



@@var = 0



4) Les variables globales

Ce sont des variables qui peuvent s'appeler et se rédéfinir de n'importe où. Elles sont à éviter autant que possible !


Portion de code:



$var = 0



5) Les constantes

Ce sont des variables gardant une valeur fixe.


Portion de code:



VAR = 0



V) Les instructions d'entrée-sortie

1) Pour afficher un message


Portion de code:



print "Bonjour !" # Sans saut de ligne

puts "Bonjour !" # Avec saut de ligne



2) Pour entrer une valeur


Portion de code:



print "Quel est votre age ?"

age = gets.chomp # Renvoyer automatiquement une chaine de caractère
puts "Vous avez #{age} ans."

print "Quel est votre pseudo ?"
age = gets
puts "Vous pseudo est "+pseudo.to_s # Si on doit convertir



Voilà, c'est tout pour les variables ! En espérant que ça vous soit utile ! <IMG SRC="




nuparu1997 - posté le 27/01/2010 à 12:51:17 (222 messages postés)

❤ 0

Il manque pas un morceau au début ? y'a pas de 1) et il manque une epxlication non ?


Tata-Monos - posté le 27/01/2010 à 12:55:05 (56907 messages postés) - misteroniro

❤ 0

Vive le making libre

Oh, tu as raisons, il y a un truc de louche qui c'est passé, quand j'ai accepté le tuto, j'ai le souvenir d'avoir un début.

Pixner|Offgame | Le comptoire des clikeurs


mtarzaim - posté le 27/01/2010 à 16:29:27 (2926 messages postés)

❤ 0

Anaxagoras -500 BC

J'ai l'impression aussi que l'auteur s'est craqué à ce niveau là :

Citation:

2) or(ou)

Portion de code:

"Go ! "*3 # "Go ! Go ! Go ! "
"Go !"*0 # Renvoie la chaine vide ""



Il parle de l'opérateur *, et non OR.



Citation:

3) not(non)

Portion de code:

true and true # true
false and false # false
true and false # false

nb>=2 and nb<=5 # 2..5



Et ici aussi, avec l'opérateur logique AND, au lieu de NOT.

Projets terminés : DIX Life Precious - TheFrogStudio.Net


Lufia - posté le 27/01/2010 à 19:57:32 (5792 messages postés)

❤ 0

Un Oniromancien. PVs 1, Attaque 0, Défense 0.

Monos, tu fais ièch. Je l'avais refusé parce qu'il s'est aussi craqué sur la portée des variables.
(@@var une constante ? Sérieux ?)

Tu sais que tu sais pas, en plus. Laisse les trucs sur le RGSS à moi ou à TLN.

Une signature ? Pour quoi faire ?


Tata-Monos - posté le 27/01/2010 à 20:31:21 (56907 messages postés) - misteroniro

❤ 0

Vive le making libre

Je ne savais pas que tu l'avais refusé !

Pixner|Offgame | Le comptoire des clikeurs


forêtnor - posté le 27/01/2010 à 20:35:03 (4552 messages postés)

❤ 0

Jonas, en bonnet du forme.

Il y a pas mal de coquilles mais l'intention y est x).

Une magie que la majorité des habitants de Ghrorlok.


Lufia - posté le 27/01/2010 à 21:40:07 (5792 messages postés)

❤ 0

Un Oniromancien. PVs 1, Attaque 0, Défense 0.

C'est le dernier dans la liste. x)

Il a dû être reproposé... sans les corrections que j'avais demandé. Mais ne t'occupe pas des articles qui touchent aux scripts. On est deux dans le staff à être à peu près compétents pour les évaluer, laisse-les nous.

Une signature ? Pour quoi faire ?


Tata-Monos - posté le 27/01/2010 à 21:54:37 (56907 messages postés) - misteroniro

❤ 0

Vive le making libre

Yes miss Lufia.

Pixner|Offgame | Le comptoire des clikeurs


Denzel Lockheart$ - posté le 29/01/2010 à 14:26:56 (139 messages postés)

❤ 0

Webmasters anonymes

Non mais comment ça se fait qu'il y ai mon tuto incomplet complètement foiré ? :hum Il faudrait tout supprimer ! Et en plus, j'ai eu un MP comme quoi c'était refusé !

C'est l'éditeur de textes qui merde alors car je suis à un niveau très avancé en Ruby et en prog en général !

Faudrait donc le signaler comme bug et supprimer ce tuto dans l'immédiat !

http://www.inlibroveritas.net/lire/oeuvre36096.html


Tata-Monos - posté le 29/01/2010 à 14:29:33 (56907 messages postés) - misteroniro

❤ 0

Vive le making libre

Personnellement j'étais sur d'avoir accepté un truc plus complet que ça. on du accepté et refusé en même lufia et moi. Ca du foutre le bordel. R'envois à Lufia le tuto corriger et correcte. Elle remplacera directement. ;)

Pixner|Offgame | Le comptoire des clikeurs


Denzel Lockheart$ - posté le 29/01/2010 à 14:33:15 (139 messages postés)

❤ 0

Webmasters anonymes

Tu as raison ! Il faut que je renvoie le sujet original !

En attendant, ça plante toujours et j'ai beau mettre mon tuto original, mais c'est toujours le mordel ! Y a rien à faire !

http://www.inlibroveritas.net/lire/oeuvre36096.html


Tata-Monos - posté le 29/01/2010 à 18:30:34 (56907 messages postés) - misteroniro

❤ 0

Vive le making libre

Tu envois le tuto a lufia directement par MP ;)

Pixner|Offgame | Le comptoire des clikeurs


Denzel Lockheart$ - posté le 29/01/2010 à 19:21:32 (139 messages postés)

❤ 0

Webmasters anonymes

Bon, là, j'en ai plus que marre que ce bug à la c** ! :fache1

Je vais vous laisser le lien ZShare téléchargeable pour que vous voyez que mon tuto est correct :

http://www.zshare.net/download/7185157535f8bce7/

Si c'est pas le cas, je m'appelle Mickael Jackson !

http://www.inlibroveritas.net/lire/oeuvre36096.html


Klmett - posté le 23/11/2012 à 23:14:14 (32 messages postés)

❤ 0

J'ai une petite question :

Y a-t-il moyen d'effectuer des opérations plus complexes sur les variables RPG Maker (par exemple VAR:0001:TempsJeu).
en utilisant ce procédé ?

Si c'est le cas comment faire ? merci :sourire3

Parce que j'aime le Making mais aussi la musique, voici quelques mixes et sons : http://djklmett.free.fr/ :)

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 | News | Forum | Flash-news | Sorties | Chat | Commentaires | Galerie | Blogs | Articles perso | Screen de la semaine | Palmarès | Livre d'or | Recherche | Interviews | OST | L'Annuaire | Divers
Apprendre: Le Wiki | Tutoriels | Guides | Gaming-Live | Tests | Making-of
Télécharger: Programmes | Scripts | Packs de ressources | Midis | Eléments séparés | Sprites
Jeux: Index jeux séparés | Top Classiques | Top Originaux | Les autres | Collection Oniro | RPG Maker 95 | RPG Maker 2000 | RPG Maker 2003 | RPG Maker XP | RPG Maker VX | RPG Maker VX Ace | RPG Maker MV | Autres | Jeux complets | Proposer
Hébergés: Aëdemphia | Fighting Robots Quest | Geex | Inexistence | La Légende d'Ibabou | Nylu | Sarcia | Super Mario RPG - Lost Souls
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