Nelfe - posté le 07/02/2013 à 17:00:29. (3 messages postés)
Support : RM VX Ace
Question 1 :
J'aimerais faire un sorte qu'un message apparaisse lorsque le joueur se trouve sur une case (et idéalement que le sprite soit dirigé vers le bas).
Pour ce qui est du message pas de problème, la détection de l'orientation du sprite est faisable aussi si je dis pas de bêtises, mais je n'arrive pas à trouver comment faire la détection : j'ai utilisé les trigger Player touch et Event touch, mais le premier ne fonctionne que quand on colle la case (or je veux que ça soit quand on soit dessus), le second ne semble rien faire.
Nelfe - posté le 07/02/2013 à 13:55:23. (3 messages postés)
Domaine concerné: Script Logiciel utilisé: VX Ace Bonjour à toutes !
Je viens de me lancer dans ce logiciel, voulant réaliser des petits jeux pour m'occuper après mon boulot (qui n'a rien, mais alors rien à voir avec les jeux-video ^^).
J'ai pu réaliser l'immense potentiel de l'éditeur de script, avec lequel je me suis amusé un peu, et donc j'aimerais partager avec vous mes réalisations pour aider ceux qui y comprennent pas grand chose .
Ce premier tutorial servira à personnaliser la partie : modifier le nom du personnage, activer les sauvegardes ou non.
Voilà ce que ça donne :
Décortiquons ce bazar :
Premier point : le déclenchement du script est automatique, donc sélectionnez en bas à gauche "Paralell process". Ne touchez à rien d'autre, sauf si vous voulez que ce soit un "PNJ" qui vous propose de personnaliser la partie.
Ensuite, le script lui-même :
- Conditional Branch: Variable [0001] <= 1
J'utilise en effet une variable (la numéro 001) pour éviter que le script tourne en boucle et que le menu se lance perpétuellement (ce qui bloquerait totalement le jeu). Pour que le script se lance, la variable doit avoir une valeur inférieure ou égale à 1 : ça tombe bien, en début de partie, la variable a une valeur automatique de 0. Le script peut se lancer et le menu apparaître !
Pour faire cela, dans l'Event Commands, choisir le "Conditional Branch". Choisir l'option Variable, sélectionner la variable 001, mettre la condition à "Less than or equal to", puis choisir "Constant" et entrer 1 juste à côté .
- Text: -, -, Normal, Bottom "Personnaliser le nom"
Je demande donc à afficher une boîte contenant le texte "Personnaliser le nom", sans image à côté, un truc tout simple donc.
- De "Show Choices" au premier Branch End :
Première personnalisation de la partie : je propose au joueur de modifier le nom du personnage. La première réponse, "Oui", ouvre un menu permettant de modifier le nom du personnage, avec une limite de 15 caractères (Name Input Processing: Eric, 15 characters). La limite de caractère peut changer selon vos goûts.
Si le joueur sélectionne Non, il ne se passe rien et on passe à la suite.
Ici, je vais proposer au joueur un mode où il ne pourra pas sauvegarder dans le menu du jeu, mais uniquement via des objets disposés sur la map (principe de checkpoint) : le jeu paraîtra donc plus dur !
- De "Show Choices" au second Branch End :
Même principe que tout à l'heure pour le nom : si le joueur choisi "Oui", le jeu grisera l'option de Sauvegarde dans le menu du jeu et le joueur ne pourra pas sauvegarder librement. J'utilise pour cela le "Change Save Access", page 3 des Event Commands, que je met sur Disable.
Et pour finir, une fois les choix effectués, je passe la variable à 2 pour empêcher la répétition du script. Dans les Event Commands, choisir l'option Control Variables, choisir Single et sélectionner la variable 001, l'opération Set ("mettre") et la constante à 2.
- Else : "Exit event processing" : j'ai un doute sur son utilité, mais je pense que cela coupe le script et libère donc de la mémoire. C'est simple : puisque désormais la variable n'est plus inférieure ou égale à 1, le script choisi la seconde option : se couper !
Et voilà ce que ça donne en "vrai":
Ce n'est qu'une base : vous pouvez aussi rajouter un mode "ultra simple" donnant au joueur un équipement surpuissant dès le départ, et j'en passe
J'espère que cela vous aura servi !