Day.png);">
Apprendre


Vous êtes
nouveau sur
Oniromancie?

Visite guidée
du site


Découvrir
RPG Maker


Apprendre
RPG Maker

Tutoriels
Guides
Making-of

Dans le
Forum

Section Entraide

News: Les actualités de fin d'année / Jeux: Glixel en version complète / Jeux: Izac 1 / News: Des jeux d'hiver sous la couette / Scripts: Système de vol pour RPG Maker (...) / Chat

Bienvenue
visiteur !





Désactiver
la neige


publicité RPG Maker!

Statistiques

Liste des
membres


Contact

Mentions légales

271 connectés actuellement

30834969 visiteurs
depuis l'ouverture

2236 visiteurs
aujourd'hui



Barre de séparation

Partenaires

Indiexpo

Akademiya RPG Maker

Blog Alioune Fall

Fairy Tail Constellations

RPG Fusion

New RPG Maker

ConsoleFun

Level Up!

Offgame

Tous nos partenaires

Devenir
partenaire



[Mégadrive] #05 Programmer la mégadrive , les variables

On parle un peu de variable sur mégadrive....

Ecrit par Monos le 25/07/2017


❤ 0

Chapitre 4, les variables avec Second Basic
Cela va être lourd ! Je le sais, quand on débute, on aime pas les variables, et la cela ne va pas être ludique !

Bon Késako une variable ? C'est une boite qui contient une valeur numérique ou une chaîne de caractère (String, non bande de vicieux) et qui porte un nom.

Exemple la variable Vie contient la valeur 3 qui permet de mémoriser le nombre de vie du joueur. La variable Nom contient la chaîne "Monos" qui contient le nom du joueur... Les variables peuvent être travaillé,, on ressort sa valeur, on la modifie, on en place une nouvelle, on en fait une addition avec une autre variable... Bref nous verrons des exemples.

Second Basic, possède trois type de variable.

-Les variables Integer. C'est les variables par défaut. C'est une variable qui prend 16 bits en mémoire soit 2 octets et permet donc de mémoriser une valeur entre 0 et 65 535

-Les Variables Long. C'est une variable qui prend 32 bits donc 4 octets et mémorise une valeur comprise entre 0 et 4 294 967 295

C'est deux variables peuvent seulement prendre des valeurs numériques.

Et les strings qui permet de mémoriser des "lettres". Par défaut la place prise est de 128 octets (128 lettres)
(Il y a moyen de changer la taille des strings, mais nous verrons ça dans un autre chapitre quand nous allons étudier les tableaux)

En Basic pour mémoriser une valeur dans une variable c'est le signe égale.

Vie=3
On assigne la valeur numérique 3 à Vie.
Et si on fait Vie=Vie+Vie ?
On assigne dans la variable Vie, deux fois sa valeur vie prend 6 si on garde l'exemple.

Nom$="Monos"
une variable de type Chaîne prend à la fin le sigle dollars et la chaîne doit être entre les guillemets.

Notons qu'une variable Long doit se finir par le sigle &
Vie&=4000000000000000

En Second basic, Vie et VIE c'est la même chose (Ce n'est pas sensible à la case comme on dit) mais attention vie$ est différent de vie& et de vie.

Déclaration de Variable
En basic, la déclaration des variables n'est pas obligatoire, mais reste conseillé quand même. Il existe une option dans le logiciel pour "forcer la déclaration des variables" mais semble occasionner des bugs quand on utilise des Fonctions et des Procédures.


Mais c'est partie voici comment réserver une variable integer (donc 2 octets)

Portion de code : Tout sélectionner

1
Locale Nom_Variable AS Integer


Cool non.
Pour un Long on remplace Integer par Long , et pour un string on remplace cela par String.


Afficher le contenu d'une variable à l'écran
Nous allons faire simple :
Print nom_variable
Et oui pour afficher le contenu de Vie un print vie et le tour est joué.
Si vous fait Print vie+vie ? Et ba vous allez avoir droit à une addition !

Une expérience !
On va faire une expérience pour vous expliquer un autre truc.

regarder ce petit programme !

Portion de code : Tout sélectionner

1
2
3
4
5
6
7
 
Local Vie as integer
Vie=3
print vie
Vie=Vie-4
Print vie
 



La deuxième valeur affiche 65536 !
Heu normalement 3-4 devrait donner -1 non ?

Oui. Sauf que sur Second Basic, c'est des valeurs Non Signées, donc quand on passe en dessous de 0 , on repart à la fin. Et l’inverse est vrais. 65536+1 donnera 0. (pour un integer).

Culture Général
Les variables c'est le petit problème de beaucoup de basic.(pas tous) Souvent on passe à la simplicité des types de variables. Sur Second Basic ils sont donc tous non signées et peut être seulement des integer et des long pour les variables numérique. Elles consomment 2 et 4 octets. C'est la que certain langage sont plus précis comme le C / C++ il y a beaucoup plus de type de variable numérique et peuvent être signé. (c.a.d jouer vraiment avec les valeurs négatives). On peux avoir des variables binaire, (1 octet) par exemple. Signé ou pas. Ce qui permet d'économisé encore plus de place sur les petits systèmes. Ceci dit beaucoup de basic permet quand même de travailler à l'octet prêt avec peek et poke ! Il y a des moyens d'économiser de la mémoire avec ce procédé. Mais ceci est une autre histoire...

Le prochain chapitre portera sur les boucles, ce qui va permettre d'afficher un début de map !



winterskill - posté le 25/07/2017 à 14:39:02 (927 messages postés)

❤ 0

Empereur des bons gros meuh

Travaillons avec Peek et pok! :rit2
Et il n'y a pas de boleans?

"pommes de rainette et pommes d'API, API API Rest-e" | "A combattre sans périls, on triomphe sans gloire" - le cid ; (oui mais on gagne quand même non?...) | à soutenir absolument : https://www.kickstarter.com/projects/1264023666/bushido-the-way-of-men


Monos - posté le 25/07/2017 à 17:40:35 (57322 messages postés)

❤ 0

Vive le homebrew

Il y a des True/False dans ce basic mais cela reste des constantes.
Mais on peux bien sur rentre un variable true/false mais ça reste des integer ou long. (Donc 2 / 4 octets de mangé).

Signer du nez ?


winterskill - posté le 10/08/2017 à 00:46:50 (927 messages postés)

❤ 0

Empereur des bons gros meuh

ben ouais, mais c'est quand même utile, les bool, dans un jeu vidéo...
c'est quand même con qu'ils n'y aient pas pensés...

"pommes de rainette et pommes d'API, API API Rest-e" | "A combattre sans périls, on triomphe sans gloire" - le cid ; (oui mais on gagne quand même non?...) | à soutenir absolument : https://www.kickstarter.com/projects/1264023666/bushido-the-way-of-men


Monos - posté le 12/08/2017 à 09:26:04 (57322 messages postés)

❤ 0

Vive le homebrew

Tu parles vraiment de quoi en parlant de bool ? Perso je pense que tu parles de variable qui prend True ou false mais je peux me tromper.

Signer du nez ?

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