Connexion automatique

Pas encore membre ? Inscrivez-vous ici !
Vous avez oublié votre mot de passe ? On vous aide ici

AccueilPage d'accueilFAQRechercherS'enregistrerConnexion

Sélecteur de thème :


Partagez | .
[VXAce][RME] Brouillard de guerre

Zangther
Garde du Trésor

Garde du Trésor
avatar
En ligne

Nombre de messages : 877
Capacités : très bon
Distinction : aucune
Date d'inscription : 06/02/2013

MessageSujet: [VXAce][RME] Brouillard de guerre   Dim 3 Sep 2017 - 10:47

Une petite évolution par rapport au tuto précédent sur le champ de vision. Pas trop d'explications mais je suis disponible pour vous expliquer en cas de besoin.


Event - EV001
| > Appeler Script : L[:black_tile] = 1536
| > Commentaire : Iteration sur toutes les cases de la carte
| > Opération : Variable [0002:y] = 0
| > Opération : Variable [0003:map_width] = map_width
| > Opération : Variable [0004:map_height] = map_height
| > Boucle
| >| > Condition : Variable [0002:y] == Variable [0004:map_height]
| >| >| > Commentaire : Obligé d'utiliser une étiquette sinon... ça plante :O  
| >| >| > Aller à l'Étiquette : end_loop
| >| >| >
| >| > Fin - Condition
| >| > Opération : Variable [0001:x] = 0
| >| > Boucle
| >| >| > Condition : Variable [0001:x] == Variable [0003:map_width]
| >| >| >| > Sortir de la Boucle
| >| >| >| >
| >| >| > Fin - Condition
| >| >| > Commentaire : On stock les données de la case courante dans un HASH !  
| >| >| > Commentaire : Via les labels !!!
| >| >| > Appeler Script : offset = "#{V[1]}-#{V[2]}-"
| >| >| > Appeler Script : L["#{offset}0"] = tile_id(V[1], V[2], 0)
| >| >| > Appeler Script : L["#{offset}1"] = tile_id(V[1], V[2], 1)
| >| >| > Appeler Script : L["#{offset}2"] = tile_id(V[1], V[2], 2)
| >| >| > Commentaire : On rend la case courante noire
| >| >| > Appeler Script : set_tile(L[:black_tile], V[1], V[2], 0)
| >| >| > Appeler Script : set_tile(0, V[1], V[2], 1)
| >| >| > Appeler Script : set_tile(0, V[1], V[2], 2)
| >| >| > Opération : Variable [0001:x] += 1
| >| >| >
| >| > Fin - Boucle
| >| > Opération : Variable [0002:y] += 1
| >| >
| > Fin - Boucle
| > Étiquette : end_loop
| > Boucle
| >| > Attendre : 1 Frames
| >| > Commentaire : On parcours toutes les cases voisines
| >| > Opération : Variable [0002:y] = -1
| >| > Boucle
| >| >| > Commentaire : Petite attente pour un peu plus de swagg  
| >| >| > Attendre : 1 Frames
| >| >| > Condition : Variable [0002:y] > 1
| >| >| >| > Aller à l'Étiquette : end_loop2
| >| >| >| >
| >| >| > Fin - Condition
| >| >| > Opération : Variable [0001:x] = -1
| >| >| > Boucle
| >| >| >| > Commentaire : Petite attente pour un peu plus de swagg  
| >| >| >| > Attendre : 1 Frames
| >| >| >| > Condition : Variable [0001:x] > 1
| >| >| >| >| > Sortir de la Boucle
| >| >| >| >| >
| >| >| >| > Fin - Condition
| >| >| >| > Appeler Script : L[:s_x] = player_x + V[1]
| >| >| >| > Appeler Script : L[:s_y] = player_y + V[2]
| >| >| >| > Commentaire : Si la case existe
| >| >| >| > Condition : Script : L[:s_x] >= 0 and L[:s_x] < map_width and L[:s_y] >= 0 and L[:s_y] < map_height
| >| >| >| >| > Commentaire : Remplacer la case si elle n'a pas déjà été modifiée
| >| >| >| >| > Appeler Script : offset = "#{L[:s_x]}-#{L[:s_y]}-"
| >| >| >| >| > Appeler Script : if tile_id(L[:s_x], L[:s_y], 0) != L["#{offset}0"]
| >| >| >| >| > Appeler Script :   set_tile(L["#{offset}0"], L[:s_x], L[:s_y], 0)  
| >| >| >| >| > Appeler Script : end
| >| >| >| >| > Appeler Script : if tile_id(L[:s_x], L[:s_y], 1) != L["#{offset}1"]
| >| >| >| >| > Appeler Script :   set_tile(L["#{offset}1"], L[:s_x], L[:s_y], 1)  
| >| >| >| >| > Appeler Script : end
| >| >| >| >| > Appeler Script : if tile_id(L[:s_x], L[:s_y], 2) != L["#{offset}2"]
| >| >| >| >| > Appeler Script :   set_tile(L["#{offset}2"], L[:s_x], L[:s_y], 2)  
| >| >| >| >| > Appeler Script : end
| >| >| >| >| >
| >| >| >| > Fin - Condition
| >| >| >| > Opération : Variable [0001:x] += 1
| >| >| >| >
| >| >| > Fin - Boucle
| >| >| > Opération : Variable [0002:y] += 1
| >| >| >
| >| > Fin - Boucle
| >| > Étiquette : end_loop2
| >| >
| > Fin - Boucle
| >
Il existait aussi une autre version plus avancée mais il faudra qu'on retrouve le code :
Spoiler:
 
 
Mist'
Administrateur

Administrateur
avatar
http://www.rpgmakervx-fr.com

Nombre de messages : 3276
Age : 24
Localisation : France // Auvergne // Cantal
Capacités : expert
Distinction : é_è
Date d'inscription : 22/12/2007

MessageSujet: Re: [VXAce][RME] Brouillard de guerre   Lun 4 Sep 2017 - 4:30

Très sympa comme tuto!
Je pense me servir de ce système pour mon projet.

+ des pts de participation!

_________________
 
tibluedream
Garde du Trésor

Garde du Trésor
avatar

Nombre de messages : 800
Age : 29
Localisation : France, Rueil, près de Paris
Capacités : bon
Distinction : Poisson 2017 [Amal]
Date d'inscription : 05/09/2016

MessageSujet: Re: [VXAce][RME] Brouillard de guerre   Lun 4 Sep 2017 - 4:43

il y a moyen de changer le carré noir par un losange?
 
Zangther
Garde du Trésor

Garde du Trésor
avatar
En ligne

Nombre de messages : 877
Capacités : très bon
Distinction : aucune
Date d'inscription : 06/02/2013

MessageSujet: Re: [VXAce][RME] Brouillard de guerre   Lun 4 Sep 2017 - 4:47

tibluedream a écrit:
il y a moyen de changer le carré noir par un losange?
Etant donné que le code se base sur des tiles, je ne pense pas. Désolé.
 
tibluedream
Garde du Trésor

Garde du Trésor
avatar

Nombre de messages : 800
Age : 29
Localisation : France, Rueil, près de Paris
Capacités : bon
Distinction : Poisson 2017 [Amal]
Date d'inscription : 05/09/2016

MessageSujet: Re: [VXAce][RME] Brouillard de guerre   Lun 4 Sep 2017 - 8:13

donc faudrais changer la nature des tiles pour obtenir ce résultat si je comprends bien c'est dommage ça a l'air super fluide.
 
XtremeViper
Garde d'Or

Garde d'Or
avatar

Nombre de messages : 1332
Age : 24
Localisation : Suisse
Capacités : bon
Distinction : aucune
Date d'inscription : 29/12/2011

MessageSujet: Re: [VXAce][RME] Brouillard de guerre   Lun 4 Sep 2017 - 8:18

Excellent travail ! Je n'utiliserai pas dans l'immédiat, mais en tout cas le résultat est super !
 
Contenu sponsorisé




MessageSujet: Re: [VXAce][RME] Brouillard de guerre   

 

   Page 1 sur 1
 Sujets similaires
-
» Brouillard de guerre
» Simulation du brouillard de guerre
» Dénomniation: Planète Daillanus
» Brouillard de Guerre et Ligne de vue
» Brouillard de guerre

 Permission de ce forum:Vous ne pouvez pas répondre aux sujets dans ce forum