Amélioration Monstre A-RPG(Event)

Démarré par Linkeur, 05 Décembre 2010 à 14:26

0 Membres et 1 Invité sur ce sujet

05 Décembre 2010 à 14:26 Dernière édition: 05 Décembre 2010 à 14:51 par Linkeur
Bonjour à tous !

Donc voila je me tourne a nouveau vers vous parce que, ce n'est pas vraiment un problème mais j'aimerai adapté mon système de combat.

Pour le moment en processus parallèle sur la map :

On détecte à quel distance est le héros du monstre et désactive un interrupteur 'Distance Monstre' (la poursuite du monstre) via la condition (1) Voir image en dessous.
Je détecte si les coordonnées de l'épée sont égale aux coordonnées du monstre (2) et si le monstre n'est pas mort (interrupteur "Mort Monstre 1" désactivé).
Si oui :   J'affiche une animation de dégât sur le monstre et je lui retire un PV.
Si PV monstre = 0 ... j'active l'interrupteur "Mort Monstre 1" qui renvoie a une page blanche dans l'évènement du monstre (qui "tue" le monstre).


En processus parallèle dans l'événement du monstre :

Si le monstre est a une distance inférieure à 5 cases (3), on active un interrupteur 'Distance Monstre' qui enclenche la deuxième page de l'évent du monstre et donc la suivie du Héros par le monstre.
Dans la deuxième page, on a en condition :
- Si l'interrupteur 'Distance Monstre' est activé.
- Suit le héros, au contact événement/Héros
Le héros perd 1 PV au contact.


Donc en gros ce que je veux faire c'est grouper les informations pour faire un monstre général que je n'aurai plus qu'à copier coller sur les autres maps.
Le seul truc que je ne peux pas grouper et que je ne veux pas grouper, c'est la détection de la position du monstre par rapport au Héros (savoir si il va le suivre ou non)



Juste si vous n'êtes pas familiariser avec les conditions que j'utilise :

- $Game_map.events [event_id].x = coordonnées x de l'événement n°ID
        --> Si on le laisse comme ça c'est l'événement ou il est, qui est ciblé (Cet Évènement).

- $Game_player.x = coordonnées x du héros

- $Game_Variable[1] = coordonnées x de l'épée
- $Game_Variable[2] = coordonnées y de l'épée

Merci à tous pour vos futures réponse en espérant que vous ayez compris quelque chose ^^'
Si vous avez besoin d'en savoir plus, je serais heureux de vous répondre ;)
On ne combat que pour ce que l'on aime ; on n'aime que ce qu'on estime ; et pour estimer, il faut au moins connaïtre. Or l'humanitée n'est qu'ignorance. Mais est-ce une raison pour ne pas combattre afin de faire persister ses propres ideaux ?

Déjà, commence par ne faire qu'un évent, et rajoute simplement une page en processus parallèle sur ton monstre (en y incluant le contenu de ton event placé sur la map).
Utilise aussi un interrupteur local au lieu de global, il sera propre à chaque monstre et te laissera tes interrupteurs globaux libres :).

Là où je ne sais pas trop par contre, c'est pour les variables utilisées :/.
Y'a pas de variable locale qui existe, alors regarde peut-être du côté du RUBY si ça existe, il doit bien y avoir une solution de toute façon ^^.

En espérant avoir déjà pu t'aider un peu :).


    







05 Décembre 2010 à 16:25 #2 Dernière édition: 05 Décembre 2010 à 16:57 par Linkeur
Rebonjour,

Merci de ta réponse, mais je pense pas que ça puisse aller.

Si je met la détection de la collision Épée/Évent en processus parallèle dans l'évent monstre, quand je suis prés du monstre, l'interrupteur 'Distance ennemi' bascule en ON et la page sur laquelle je retombe est en "contact Héros/Évènement" du coup la détection de la collision entre Épée/Évent ne se fait plus (car sur la page précédente).

Le problème revient à :
Il faudrait que la partie où Link attaque, s'exécute en processus parallèle ET dans la même page que la partie où le monstre attaque s'exécute en "contact Héros/Évent" ...
J'ai vraiment pas d'idée sur ce coup ^^'

Merci pour vos futures réponses !
On ne combat que pour ce que l'on aime ; on n'aime que ce qu'on estime ; et pour estimer, il faut au moins connaïtre. Or l'humanitée n'est qu'ignorance. Mais est-ce une raison pour ne pas combattre afin de faire persister ses propres ideaux ?