Vesperia Making
Vous souhaitez réagir à ce message ? Créez un compte en quelques clics ou connectez-vous pour continuer.


Forum concernant le talent artistique des gens, venez poster vos créations pour avoir des critiques !
 
AccueilAccueil  PortailPortail  Dernières imagesDernières images  RechercherRechercher  S'enregistrerS'enregistrer  ConnexionConnexion  
Connexion
Nom d'utilisateur:
Mot de passe:
Connexion automatique: 
:: Récupérer mon mot de passe
Derniers sujets
» NEOTORI [MAJ Terra III]
[Event Extender] Créer facilement une jauge EmptyLun 10 Déc - 4:39 par esziaprez

» La Princesse Déchue
[Event Extender] Créer facilement une jauge EmptyMer 7 Nov - 19:47 par Rabah

» Vesperia making ouvert ?
[Event Extender] Créer facilement une jauge EmptyDim 21 Oct - 16:24 par Brandobscure

» [VxAce]Clock Tower 2
[Event Extender] Créer facilement une jauge EmptyDim 30 Sep - 17:00 par MisterFarios

» Postez vos screenshots !
[Event Extender] Créer facilement une jauge EmptyMer 26 Sep - 15:57 par Hamburger

» Votre point de vue sur l'humour
[Event Extender] Créer facilement une jauge EmptyJeu 20 Sep - 1:07 par Valefor

» Test de Eternal Dream par RitoJS
[Event Extender] Créer facilement une jauge EmptyMer 19 Sep - 12:34 par Kirkilou

» Qu'est ce que vous regardez en 1er dans un projet présenté ?
[Event Extender] Créer facilement une jauge EmptyMer 19 Sep - 11:56 par riffraff24

» Réformation des topics
[Event Extender] Créer facilement une jauge EmptySam 15 Sep - 10:44 par Kirkilou


 

 [Event Extender] Créer facilement une jauge

Aller en bas 
2 participants
AuteurMessage
Griminy
Nouveau membre
Nouveau membre
Griminy


Messages : 61
Date d'inscription : 19/07/2012
Localisation : Belgique

Espace Maker
Points d'aides:
[Event Extender] Créer facilement une jauge Left_bar_bleue3/100[Event Extender] Créer facilement une jauge Empty_bar_bleue  (3/100)

[Event Extender] Créer facilement une jauge Empty
MessageSujet: [Event Extender] Créer facilement une jauge   [Event Extender] Créer facilement une jauge EmptyMer 5 Sep - 5:19

Dans cet très bref tutoriel, nous allons voir comment il est possible de se servir de l'event Externder pour créer facilement une jauge !

Asbtract
Une jauge est quelque chose de très simple (et souvent très facile à réaliser), cependant, l'event making complique tout ça en ne permettant pas d'agir sur le zoom d'une image au moyen de variables.
Nous allons étudier quelques commandes que propose l'event Extender pour rendre ça plus facile.

Exemple 1: Une simple jauge
[Event Extender] Créer facilement une jauge Jaugee10
Voici ce que nous allons essayer de faire avec le moins de lignes possible.

Dans cet article je vais utiliser la syntaxe des variables locale. Donc pour créer une variable, dans un appel de script je n'ai qu'a faire : set(ID, valeur), et pour accéder à ma variable locale, get(ID).
Voici les images que j'aies utilisées:
Le fond de la jauge:
[Event Extender] Créer facilement une jauge Hil6ctCyesbhmklcKAezedvfn
Et son corps:
[Event Extender] Créer facilement une jauge 0g8cIuBtJMwaG1nbcMRqMXzYu

Pour que notre jauge se rafraichisse en temps réel sur la carte, nous allons créer un évènement en processus parallèle qui aura d'abord pour rôle d'afficher les deux images.
Donc l'image 1 sera notre fond de jauge (je l'ai positionné à 15, 15), et à la même position, l'image 2 qui contient elle, la jauge.
Ensuite nous allons, juste après, créer une boucle avec un "attendre 1 frame" pour éviter les lags.
C'est dans cette boucle que nous allons modifier notre image.
La documentation de l'event extender nous indique que nous avons une commande qui nous permet de modifier le zoom d'une image: (ici
Lien vers la documentation des images)
Cette commande est :
Code:

cmd(:picture_zoom, id, zoom_x, zoom_y)
Pour que notre jauge réduise bien en fonction du nombre de point de vie, il nous suffira de ne modifier que le zoom_x et de laisser le zoom_y à 100. (dans le cas d'une jauge horizontale ! Si la jauge avait été verticales ^^ il aurait fallu agir sur le zoom_y).
A ce stade ci, on remarque que contrairement à l'event Making classique, on gagne du temps, effectivement, il ne faut plus s'amuser à faire 100 conditions pour chaque %tage de la barre. Il suffit d'effectuer le calcul et de lui passer les variables en argument !
Mais l'event Extender simplifie aussi le calcul du pourcentage.
Pour celà nous pouvons utiliser la commande percent:(
Référencée ici
Cette commande prendra 1 valeur et 1 max et renverra un pourcentage. Par exemple:
cmd(:percent, 25, 50) renverra 50.
Couplé aux commandes cmd(:hp, id_heros) et cmd(:max_hp, id_heros), calculer un pourcentage de vie devient un jeu d'enfant !
Donc dans notre boucle, nous allons créer 3 variables locales, 1 pour les HP, 1 pour les HP max et une pour le pourcentage, ce qui nous donne, dans un appel de script:
(on admet que notre jauge est pour le héros 1 donc l'index de hp et max_hp est 1)
Code:

set(1, cmd(:hp, 1))
set(2, cmd(:max_hp, 1))
set(3, cmd(:percent, get(1), get(2)))
On a créé trois variable locale, la première qui prend les hp du héros 1, la deuxième qui prend les hp maximums du héros 1 et la troisieme qui calcul le %, on à donc get(3) qui contient un pourcentage de point de vie du héros 1.
On peut maintenant ajouter un appel de script (ou alors le mettre dans celui ci à la suite des définition de variables) la commande picture_zoom qui va nous changer notre zoom:

Code:

cmd(:picture_zoom, 2, get(3), 100)
Donc on modifie le zoom_x de l'image 2 et on laisse le zoom_y à 100%.
Ce qui nous donne:
[Event Extender] Créer facilement une jauge GSLvs0wAgJB9H3sySH5MgIvsy

Et voila, notre jauge est prête et fonctionnelle !
Notez qu'il aurait été possible de faire ceci :
[Event Extender] Créer facilement une jauge MUDczLlEsBk6ubDzDgbeE2c9B
Mais je vous avoue que je trouve la syntaxe avec des variables locales plus claire Smile
Nous aurions pu aussi faire V[1] = cmd(:hp, 1) par exemple, mais ça aurait pu créer un effet de bord si la variable 1 avait été déjà utilisée. Par contre, si vous possédiez déjà une variable HP et HPMax qui est toujours à jours (event en processus parallèle commun par exemple), vous auriez pu faire ça:
Code:

cmd(:picture_zoom, 2, cmd(:percent, V[2], V[3]), 100)
En admettant que vos deux variables aient étés la variable 2 et 3.

Conclusion
Voici un exemple tout simple de l'utilisation de l'event Extender !
J'espère que ça vous aura donné un exemple de simplification envisageable avec ce système !
Si vous avez des questions, n'hésitez pas à me contacter !
Revenir en haut Aller en bas
http://www.biloucorp.com/BCW/Grim/
Kirkilou
Administrateur
Administrateur
Kirkilou


Messages : 578
Date d'inscription : 15/07/2012
Age : 24
Localisation : Devant mon Windows 7 Edition starter

Espace Maker
Points d'aides:
[Event Extender] Créer facilement une jauge Left_bar_bleue100/100[Event Extender] Créer facilement une jauge Empty_bar_bleue  (100/100)

[Event Extender] Créer facilement une jauge Empty
MessageSujet: Re: [Event Extender] Créer facilement une jauge   [Event Extender] Créer facilement une jauge EmptyMer 5 Sep - 11:25

Très bon tuto très clair, c'est vrai que c'est beaucoup plus simple qu'en event .
Revenir en haut Aller en bas
https://vesperia-making.forumgaming.fr
 
[Event Extender] Créer facilement une jauge
Revenir en haut 
Page 1 sur 1
 Sujets similaires
-
» [VXAce] Event Extender, Le Grimator !
» Leçon 3 : Créer une map naturelle
» Leçon 4 : Créer une ville
» Leçon 5 : Créer un milieu de grotte
» Quelles commandes Event désireriez-vous?

Permission de ce forum:Vous ne pouvez pas répondre aux sujets dans ce forum
Vesperia Making ::  :: Apprentissage :: Tutoriels-
Sauter vers: