Super Mario Bros. X City

Bienvenue sur la communauté francophone de SMBX ! SMBX est un fangame regroupant les éléments de SMB, SMB2, SMB3, SMW, SM et LoZ permettant de créer ses propres jeux
 
AccueilAccueil  PortailPortail  PublicationsPublications  FAQFAQ  RechercherRechercher  GroupesGroupes  S'enregistrerS'enregistrer  ConnexionConnexion  
Visitez nos partenaires :
Si vous ne possédez pas SMBX ou que vous l'avez perdu, vous pouvez le télécharger ici. Wink
Lisez le panneau d'affichage pour être au courant des dernières infos !
Envie de participer à un jeu interactif avec les autres membres ? SMBX City's RPG : NFC Copyright Quest est fait pour vous !
La ChatBox ne sera plus accessible à partir du 18 juin 2017. Cliquez ici pour plus d'infos.

Partagez
 

 Les bases

Aller en bas 
AuteurMessage
catskart
Toad
Toad
catskart

Messages 612
Date d'inscription 10/10/2010

Les bases Empty
MessageSujet: Les bases   Les bases Icon_minitimeDim 8 Mai - 18:38

Les bases du Teascript


Introduction :

Bonjours à tous !
Donc pour ceux qui ne sont toujours pas au courant, (PAF!) un système de script à été implémenté à partir de la version 1.4 de SMBX.

Le langage utilisé est le Teascript, créé par l'auteur du logiciel, 5438A38A, il est très similaire au Visual Basic.
L'intérêt est de pousser les limites à la personnification des niveaux, par exemple on peut :
- Créer un HUD.
- Faire plus de personnification d'un NPC. (Projectile, vitesse)
- Faire des mini jeux. (Comme Tetris)


Le fonctionnement :

Pour vous rendre dans l'éditeur de script, il faut aller dans l'onglet View en haut, vous allez apercevoir ça :

Les bases 08-05-10

"Add" pour ajouter.
"Delete" pour supprimer.
"Script List" pour changer le nom de votre script.


Appuyez sur Add et vous aurez ce genre de commentaire qui apparaitra :

Code:
'Script No.1 Name:New Script

Oui, je dis commentaire car toutes les lignes commençant par ' sont des commentaires, c'est à dire des textes qui ont aucun effet dans le script.

L'activation du script :

Pour activer un script, il faut obligatoirement passer par un événement, car lui seul pourrais lancer le script en question, si vous êtes perdu dans la nouvelle interface des événements, voici le chemin :

Les bases 08-05-12

(Pour ceux qui savent pas utiliser un événement, vous pouvez voir ce tutoriel.)

Deux type de valeur :

Si vous avez fait un tour dans le fichier aide, vous avez aperçus une fois le "double" ou le "string".

La valeur double est une valeur en chiffre. (4,550,42,96,...)
La valeur string est une valeur en texte. ("a","hey","ok",...) Il est toujours écrit en citation.

Un petit exemple ?

Montrer vaux mieux qu'expliquer, donc, pour cette fois on va créer un bloc aide de SMW qui nous dira combien on a de pièce, et il fera un petit commentaire à la suite.

On va créer un script, peut importe le nom, moi je le nomme, "Mon script".

Les bases 08-05-13

Le bloc va d’abord nous dire combien on a de pièce.

La commande pour afficher un message est :
Code:
Call ShowMsg(String)

Remplacez String par le message entre ".

On va dans un premier temps placer un premier string dans ShowMsg.
Code:
Call ShowMsg("Comme piece, tu en as ")

On place cette parti de message car après on va entrer une variable double, mais comme ShowMsg ne fonctionne qu'avec les valeurs string, alors on va utiliser le CStr, qui converti les valeurs doubles en strings.

Code:
Call ShowMsg("Comme piece, tu en as " & CStr(sysval(CoinCount)))
Bien sur, on oublie par le & pour lier.

Et après on rajoute un autre string qui sera juste le point.

Code:
Call ShowMsg("Comme piece, tu en as " & CStr(sysval(CoinCount)) & ".")

Ensuite on va faire en sorte que le bloc aide nous lâche un avis sur l'argent qu'on a, et pour cela on va utiliser les conditions !

Normalement, si vous avez codés en Visual Basic, et ben le Teascript fonctionne similairement.

Il faut tout d’abord dire quel est la condition, ici, on va dire si le joueur à plus de 50 pièces.

Code:
If sysval(CoinCount) > 50 then
'sysval(CoinCount) est une variable sur les pièces.
'Il ne faut JAMAIS oublier le "then" qui veut dire "alors", sans quoi il y aura une erreur.

else
'Sinon

end if
'Fin de condition.

Ensuite, utilisez la commande ShowMsg, avec qu'un string.

Code:
If sysval(CoinCount) > 50 then
'sysval(CoinCount) est une variable sur les pièces.
'Il ne faut JAMAIS oublier le "then" qui veut dire "alors", sans quoi il y aura une erreur.
Call ShowMsg("Et ben tu es riche !")
else
'Sinon
Call ShowMsg("OUAHAHAH LE PROLO !")
end if
'Fin de condition.

Normalement vous devez avoir CE script :

Les bases 08-05-14

Voilà, maintenant, on va créer un event qui lancera ce script.
Créez un événement, si c'est juste pour lancer un script, vous pouvez mettre la balise [SCRIPT] pour vous repérer.

Les bases 08-05-15

Sélectionnez votre script.
Faites attentions, il se peut que SMBX désélectionne le script si vous apporter une modification à la section Others.

Ensuite il ne reste plus qu'à mettre le bloc qui activera l'événement et le tour est joué !

Les bases 08-05-16


Que se passe-t-il s'il y a une erreur ?

Et bien SMBX indiquera quel script et quelle ligne l'erreur s'est produit, le niveau se lancera normalement mais le script contenant l'erreur ne sera pas exécuté.


Il est vrai que il y a des trucs que j'ai pas dis ou bien le fait que l'exemple soit simple, mais sachez que ce ne sont que des bases pour comprendre le Teascript, ça facilite l'apprentissage et la programmation.
Il y aura d'autres tutoriels plus spécialisés.
Revenir en haut Aller en bas
bekia keen26
Modérateur
Modérateur
bekia keen26

Messages 748
Date d'inscription 30/08/2012
Localisation Kenvo

Fiche personnage RPG
Nom: Bekia Keen
Points Coeur (PC) Points Coeur (PC):
Les bases Left_bar_bleue25/25Les bases Empty_bar_bleue  (25/25)
Points Fleur (PF) Points Fleur (PF):
Les bases Left_bar_bleue25/25Les bases Empty_bar_bleue  (25/25)

Les bases Empty
MessageSujet: Re: Les bases   Les bases Icon_minitimeLun 9 Mai - 14:12

Ah sympa ça! Mais peut on prendre en compte un nombre de NPC sur un layer pour savoir par exemple combien il ne reste par exemple?

Sinon merci pour ce tuto, ça va vraiment nous aider ^^

_________________
(>ww<) Qulllllllbutokeeeeeeeeee!!!

Projet SMBX:
 


Les bases Badge_10

Les bases Bannir10
Revenir en haut Aller en bas
http://teamreloadqg.forumactif.org/ (pas d'activité pour le mome
catskart
Toad
Toad
catskart

Messages 612
Date d'inscription 10/10/2010

Les bases Empty
MessageSujet: Re: Les bases   Les bases Icon_minitimeLun 9 Mai - 18:18

Merci.
Non ce n'est pas possible, mais il y a un sysval en rapport avec le nombre d'npc total du niveau.
Sysval(Ncount)

_________________
Les bases Base_c10
by zero wing
Revenir en haut Aller en bas
Dark-Francis
Peach
Peach
Dark-Francis

Messages 769
Date d'inscription 17/08/2010
Localisation Reliqua

Fiche personnage RPG
Nom: Darky
Points Coeur (PC) Points Coeur (PC):
Les bases Left_bar_bleue20/20Les bases Empty_bar_bleue  (20/20)
Points Fleur (PF) Points Fleur (PF):
Les bases Left_bar_bleue35/35Les bases Empty_bar_bleue  (35/35)

Les bases Empty
MessageSujet: Re: Les bases   Les bases Icon_minitimeMar 10 Mai - 11:05

Oh, moi qui avais la flemme de m'interresser à ces scripts chelous (surtout quand j'ai vu le mot "Visual Basic", grrr) en fait ça m'a l'air plutôt simple x). Il faudrait voir pour référencer toutes les fonctions principales et leurs paramètres, ça serait sympa d'avoir ça sous la main :3

Sinon c'est plutôt bien expliqué comme tuto, à part peut-être le Sysval qui pourrait être un peu plus approfondi. Dans ton exemple tu récupères le compteur de pièces, mais j'imagine qu'on peut récupérer n'importe quelle variable d'environnement avec :3
D'ailleurs... je me demande s'il y a des moyens de filtrer les power-ups ou remettre le compteur de pièces à zero, ce genre de choses ? Quand tu dis qu'on peut faire des mini-jeux et tout ça, tu piques ma curiosité ~ Enfin ça, c'est une autre histoire.

_________________
It's about our dreams we can't give it up ○
○ There's no running away from reality, Invité
Les bases 96355811 Les bases Citoye11
Revenir en haut Aller en bas
catskart
Toad
Toad
catskart

Messages 612
Date d'inscription 10/10/2010

Les bases Empty
MessageSujet: Re: Les bases   Les bases Icon_minitimeVen 13 Mai - 18:17

Merci Dark-Francis.
Pour l'instant ce sont juste les bases, mais après les tutos seront spécialisé et approfondis, le prochain sera sur les variables. (dont les sysval)

_________________
Les bases Base_c10
by zero wing
Revenir en haut Aller en bas
Tartare2240
Birdo
Birdo
Tartare2240

Messages 476
Date d'inscription 09/11/2012
Localisation Derrière mon écran, bien sur !

Fiche personnage RPG
Nom: Albert
Points Coeur (PC) Points Coeur (PC):
Les bases Left_bar_bleue40/40Les bases Empty_bar_bleue  (40/40)
Points Fleur (PF) Points Fleur (PF):
Les bases Left_bar_bleue12/14Les bases Empty_bar_bleue  (12/14)

Les bases Empty
MessageSujet: Re: Les bases   Les bases Icon_minitimeSam 14 Mai - 12:14

TeaScript hein ? Je connaissais CoffeeScript, mais j'avais jamais entendu parler de ce langage xD

_________________
By Tartare2240

Les bases Pudge10
Revenir en haut Aller en bas
Contenu sponsorisé




Les bases Empty
MessageSujet: Re: Les bases   Les bases Icon_minitime

Revenir en haut Aller en bas
 
Les bases
Revenir en haut 
Page 1 sur 1
 Sujets similaires
-
» HRP, censure, repartir sur de bonnes bases
» [Lego] Coup de Coeur: BlueStarMedia
» bases de stratégie?
» Comment afficher l'horloge dans chessbase 11?
» [Lien] Base stellaire pour BFG et EPIC

Permission de ce forum:Vous ne pouvez pas répondre aux sujets dans ce forum
Super Mario Bros. X City :: SMBX :: Bibliotutos SMBX :: Scripts & LunaDLL-
Sauter vers: