[RPG-MAKER.FR] Oniromancie: tout l'univers de RPG Maker en français - Tutoriels - #16 Programmer la mégadrive , constante, et gosub


Découvrir
RPG Maker

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

Apprendre
RPG Maker

Guides
Tutoriels
Astuces
Making-of


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: Inexistence / Tutos: Faire de la neige facilement en (...) / Jeux: ARCH ULTRA / Sorties: ARCH ULTRA / News: Alex d'Or 2019 : Les Vainqueurs ! /

Chat  

Bienvenue
visiteur !




publicité RPG Maker!

Statistiques

Liste des
membres


Contact

Mentions légales

117 connectés actuellement

10312746 visiteurs
depuis l'ouverture

7 visiteurs
aujourd'hui



Barre de séparation

Partenaires






TOP
GAMEMAKING


Les 5 plus
visités

Akademiya RPG Maker

Alex d'Or

BloGecko

ConsoleFun

Eclipso

Au hasard

Lumen

Eclipso

RPG Fusion

Les deux derniers

Zarok

Akademiya RPG Maker

Nos autres partenaires

Devenir
partenaire


Barre de séparation

Un site du réseau
War Paradise

Annuaires référenceurs




#16 Programmer la mégadrive , constante, et gosub
Ecrit par Monos

Chapitre 15 : Constante et Gosub


Une constante
Oué encore un chapitre qui n'est pas vraiment lié à la mégadrive. Mais bon, c'est important aussi. Nous allons parler des constantes dans le logiciel second basic. Un truc qui peut simplifier la vie.

Alors nous allons prendre un exemple concret encore une fois tiré de notre programme moteur de déplacement case par case !

Nous s'avons que tiles de mur se trouve à la position 259 de la vidéo ram !
Donc à chaque fois que nous voulons jouer avec un mur, il faut inscrire 259. C'est lourding non ? Il y a une première possibilité, c'est de mémoriser 259 dans une variable et appeler simplement la variable mur qui va ressortir la valeur 259 dans le Drawtile par exemple. Sauf que ba voila c'est de nouveau 2 octets de mangé ! Alors sur un petit programme comme ça ce n'est pas bien grave. Mais quand vous voulez faire un gros jeu, il se peut que vous allez avoir besoin de place ! Et c'est la que les constantes entre en jeu les amis !

Portion de code : Tout sélectionner

1
Const #nom = valeur


On déclare une constante.

Portion de code : Tout sélectionner

1
Const #mur = 259



Et dans notre drawtiles

Portion de code : Tout sélectionner

1
DrawTilesInc #mur,x*2,y*2,2,2



Que ce passe t'il ? A la compilation, le compilateur va tous simplement remplacer les #mur par 259 ! #mur n'est pas une "variable" donc ne mange pas les 2 ou 4 octets ! C'est un travaille du compilo !

Elle n'est pas belle la vie ?

Goto et Gosub !
Nous allons remonter le temps, quoi c'est pas déjà fait ! Voici un petit article culture général du basic j'ai envie de dire et je vous présente deux vielles commande en basic qui fonctionne bien sur sur Second Basic, mais qui honétement sont à éviter le plus possible maintenant. Je vous présente GOTO et GOSUB !

Débutons avec GOTO
QUand le le programme rencontre Goto + étiquette , il va se connecter à l'étiquette en question. Exemple :

Portion de code : Tout sélectionner

1
2
3
4
5
6
7
8
 
Print "Chat"
Goto E_1
Print "Chien"
E_1:
Print "Oiseau"
Print "éléphant"
 



La chat est affiché à l'écran
Il rencontre Goto E_ on saute à E_1
Oiseau est affiché et le programme continue.

Mais le truc c'est avec goto, c'est du programme dit spaghetti ! Le code n'est pas trés bien organisé. Bref à éviter le maximum.

Gosub
C'est gosub c'est mieux, c'est comme les procédures et les fonctions, cela permet de découper son programme.

Portion de code : Tout sélectionner

1
2
3
4
5
6
7
8
9
10
 
Print "Nemau veux programmer sur la game boy"
Gosub E_1
Print "Les ombres d'Aëdemphia ne sont pas réalistes"
End
 
E_1:
Print "Nous sommes dans une sous routine"
Return
 



Le code va afficher le premier text ! Ensuite rencontre un gosub et va dont en E_1 pour travailler le code en affichant :Nous sommes dans une sous routine. Une fois qu'il rencontre Return, il retourne au programme principale et continue sa route ! Affiche Les ombres d'Aëdemphia ne sont pas réalistes.

Il peut y avoir plusieurs Sous routine "Gosub" imbriqué mais il faut bien penser à finir avec un return.

Ceci dit maintenant avec les procédures et les fonctions, les gosub ne serve plus à grand chose. Mais cela reste votre choix de codage.
L'avantage de travailler avec que des Gosub, c'est de ne pas avoir besoin de déclarer les variables globals. Le désavantage c'est de ne pas vraiment pouvoir faire passer des paramètres et jouer de nouveau avec des tonnes de variables à en perdre son assembleur ! Bref un choix personnelle de comment coder votre jeu !

Aucun commentaire n'a été posté pour le moment.

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