Day.png);">
Apprendre


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
RM MV/MZ

Apprendre
RPG Maker

Tutoriels
Guides
Making-of

Dans le
Forum

Section Entraide

Sorties: "Dread Mac Farlane", (...) / Tutos: Checklist de la composition (...) / Sorties: Dread Mac Farlane - episode 8 / Sorties: Dread Mac Farlane - episode 7 / Jeux: Ce qui vit Dessous / Chat

Bienvenue
visiteur !




publicité RPG Maker!

Statistiques

Liste des
membres


Contact

Mentions légales

478 connectés actuellement

29432167 visiteurs
depuis l'ouverture

6543 visiteurs
aujourd'hui



Barre de séparation

Partenaires

Indiexpo

Akademiya RPG Maker

Blog Alioune Fall

Fairy Tail Constellations

Alex d'Or

Hellsoft

Planète Glutko

RPG Fusion

Lumen

Tous nos partenaires

Devenir
partenaire



forums

Index du forum > Entraide > [Vx Ace] Appel de picture [Résolu]


soulshariga - posté le 29/09/2015 à 00:47:35 (15 messages postés)

❤ 0

Domaine concerné: mapping/graphisme
Logiciel utilisé: Vx Ace
Bonjour à tous! Est-il possible d'appeler des images via une variable?

exemple : afficher image [variable]

on pourrait alors stocker leur ID dans une variable et les appeler ainsi.

utilité au lieu de mettre : condition si variable[] = tant
alors afficher image machin
condition si variable[] = tant
alors afficher image machin
condition si variable[] = tant
alors afficher image machin
.
.
.

on mettrait : afficher image [variable]

on économise 10000 conditions, par exemple dans le défilement des pages d'un livre.

La solution se trouve certainement et uniquement (je pense) dans les scripts, merci d'avance pour vos réponses.



deuxième petite question, mais moins importante (c'est surtout de la curiosité), comment peut-on comptabiliser le nombre de niveau passé lorsque que l'on a une certaine classe?
exemple: changement de classe par déclenchement du héros via un évènement commun paladin=>paladinbadasse
alors après X niveau passé en tant que paladinbadasse on obtient : compétence/niveau/...

Merci pour vos réponses à cette question-ci aussi, même si elle n'est pas vitale. ;)


BoubouLeHibou - posté le 29/09/2015 à 00:55:32 (196 messages postés)

❤ 0

Boubou pas content

Petite réflexion annexe :
Boubou a peur que tu fasses comme lui à ses tout-débuts... ne dis pas à Boubou que tu utilises un nouvel "ID" dès que tu affiches une image "différente" ? Un "ID", c'est un "contenu", tu peux ne pas le faire changer si c'est pour une animation... ça pourrait même "empiler" des images les unes sur les autres et c'est moche. Petite réflexion close.



Première question :
C'est possible avec RME. :)

Spoiler (cliquez pour afficher)


(Si tu veux ajouter "1" à une variable, Boubou te conseille de faire "+= 1".)

Pour info, "SV" sont des variables LOCALES (c'est un ajout de RME). Pour une variable GLOBALE, c'est V[ID] à la place de SV[ID].
RME te permettra TOUJOURS (normalement) de remplacer un "argument" dans un appel de script par une variable, globale ou locale. ;)

Tu peux également supprimer une pic' avec un ID contenu dans une variable avec picture_erase(SV[1]), par exemple. Pareil avec "Picture_Move" pour les déplacements. Bref, je te laisse checker tout ça. ^^

La doc est ici et te permettra de générer tes commandes avec une interface :
http://rmex.github.io/RMEDoc/

Pour installer RME, il te faudra RME Builder qui va bientôt être entièrement mis à jour et aura une interface moins austère.

Pour comprendre comment ça marche (pour l'instant, à moins que la mise à jour ait déjà été faite), c'est par ici.
https://www.youtube.com/watch?v=FdTdr9Jw7qA

EDIT de cette première réponse :
Si tu veux faire une "suite d'images", c'est possible !
Il faut d'abord afficher une image

Portion de code : Tout sélectionner

1
2
3
#SV[1] correspond à l'ID. SV[2] correspond à "l'étape" de ta suite d'images.
 
picture_show(SV[1], "alterfilm1",0,0,0,100,100,85) #Cette ligne ne doit être exécutée qu'une fois, c'est "l'initialisation" de ta suite d'images. Ce qu'il faut bien comprendre dans ce code, c'est que l'on donne d'abord les propriétés de la première image de la suite, puis qu'on change le nom de l'image à afficher par la suite... il ne faut donc pas revenir à la première étape, lol.



Puis venir jouer ce code.

Portion de code : Tout sélectionner

1
2
SV[2] += 1
picture_name(SV[1], "alterfilm#{SV[2]}") #Cette ligne va modifier le nom de la picture qu'RM doit afficher avec l'ID "SV[1]" en temps réel.


(Où "alterfilm" est le nom d'une suite d'images, nommées "alterfilm1", "alterfilm2", "alterfilm3"... il faut juste faire attention à ne pas pointer vers une image qui n'existe pas !)
Maîtrisée de façon décente, cette manière de faire te permettra de moins te casser le cul dans certains cas de figures... ;)
Boubou s'en sert pour des "filtres" ingame ou animer une picture sur plusieurs sprites !

Si tu veux animer le passage d'une page à une autre d'un livre (pour reprendre ton exemple) en plusieurs pictures, tu pourras recourir à une boucle comme :

Portion de code : Tout sélectionner

1
2
3
4
5
6
7
8
9
10
11
12
13
picture_show(SV[1], "bouquin_anim1",0,0,0,100,100,85)
SV[2] = 1
Boucle
  Appel de script :
  wait(5) #nombre de frames d'attente entre chaque nouvelle picture
  SV[2] += 1 #incrémentation
  picture_name(SV[1], "bouquin_anim#{SV[2]}")
 
  Condition : SV[2] >= 5 #En imaginant que l'animation fasse 5 images. ">=" revient à "Supérieur ou égal".
    Sortir de la boucle
  Fin
Fin de boucle
#En gros, c'est une boucle "for" à l'arrache.


Il faut utiliser la partie "Script" de la page 4 des conditions événementielles d'RM pour y incruster "SV[2] >= 5", au cas où tu n'aurais pas compris Boubou !
Cette méthode te permettra d'éviter de répéter plein de fois la commande "Afficher une image" comme le font les méchants event-makers 2k3 !

Spoiler (cliquez pour afficher)



Boubou est un peu fatigué ce soir...

Seconde question :
Boubou va y réfléchir. Mais ça ne semble pas très compliqué aux yeux de Boubou...

Boubou a mis Oniro' dans son fichier hosts et ne reviendra plus à cause des méchants zutres.


Terzarok - posté le 29/09/2015 à 10:50:05 (345 messages postés)

❤ 0

Pour ta réponse, Boubou, je vais l'essayer aussi. J'avais aussi dans l'idée pour mon projet (qui avance à la vitesse d'un escargot surchargé et infirme) de rajouter quelques bouquins mais je ne trouvais pas d'animation de page qui se tourne ... ou plutôt : je n'avais pas cherché.

Pour ce qui est de la classePaladinBadass, ne pourrais-tu pas simplement créer deux classes (Paladin et PaladainBadass), passer de la première à la seconde via un interrupteur lors d'un évènement commun comme tu l'as dit, puis simplement ajouter dans la liste des compétences du PaladinBadass les attaques que tu veux lui ajouter avec son niveau approprié ?
Parce que si je comprends bien, quand ton joueur Paladin accomplit un certain nombre de quêtes ou atteint un certain niveau, il passe en PaladinBadass. Donc cette classe-là doit être atteinte à un certain niveau (disons pour l'exemple le niv.20). Alors tu pourrais créer dans ton menu la classe PaladinBadass avec toutes les attaques que ton Paladin a déjà débloqué, plus les attaques que lui pourra débloquer en PaladinBadass (par exemple tu ferais "Lattage de cul" apprise au niv.24, tout simplement :)).

Sinon, l'autre solution que j'aurais en tête, avec un évènement commun, ce serait de prévoir là encore le niveau auquel le joueur passe en PaladinBadass et de faire le calcul de variables :
Variable NiveauActuel = niveau du héros
Variable Badassitude = 20
Variable DifferenceNiveau = Variable NiveauActuel - Variable Badassitude
Condition Variable DifferenceNiveau = 4
Alors ...
Sinon ...
Fin de Condition

Il y a des gens qui passeraient des heures à expliquer qu'ils sont débordés. Moi sur Deviantart


soulshariga - posté le 29/09/2015 à 11:15:53 (15 messages postés)

❤ 0

Merci pour vos réponses!

Le changement de classe je sais le gérer (quand même!), mais imaginons que je change sur la base d'une variable karma... donc à un niveau au pif.
Le changement de classe revient à une évolution type "pokemon", on l'a A PARTIR d'un certain niveau.

[EDIT]

J'ai peut-être une idée: en évenement commun quand karma=valeur pour changement de classe alors niveaustart=[niveau du héros]
puis dans un autre évènement commun en parallèle: niveauact=[niveau du héros]
niveauprog=niveauact-niveaustart
si niveauprog=X (X étant le "niveau" où l'on veut débloquer une capacité)
alors ....

[EDIT]

C'était bien ça (en légèrement remanié), la solution était toute bête!
Je vous remercie pour vos réponses, je pense qu'on peut classer le sujet.

Index du forum > Entraide > [Vx Ace] Appel de picture [Résolu]

repondre up

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