Sujet n°10715
Posté par TATEMONPOU le 16 Déc - 19:04 (2011)
Titre : Cherch'objet en event pour PSP DS
Je vous présente ma version du cherch'objet style DP en event car je suis tres mauvais en script.

Tout d'abord vous devez réflechir au nombre maximum d'objets cachés que l'on pourra trouver sur une carte toutes cartes confondues.

Vous devrez creer sur chaque carte autant d'evenements que ce nombre maximum sur chaque carte meme si le nombre d'objets y est inferieur.

Créez a chaque endroit ou se trouvera un objet, un événement comme suit :

Une première page qui enregistre les coordonnées de l'évenement N en demarrage automatique. et activez l'interrupteur A.
pour chaque événement d'une même carte, il faudra enregister les coordonnées de chaque objet dans des variables differentes.



En deuxième page avec condition de declenchement l'interrupteur A, vous mettez votre objet. Declenchement par la touche action.
activer l'interrupteur B quand l'objet sera ramassé.



En troisième page avec condition de déclement par l'interrupteur B, modifiez les coordonnées de votre objet dans les variables qui lui sont dédiés en page 1. L'objet ne sera ainsi plus detecter par le radar. Activez l'interrupteur C



repetez l'opération pour chaque objet en utilisant des variables différentes pour chaque.

Si le nombre d'objets sur la carte est inférieur au nombre maximal d'objet que vous avec defini au début, creez des événements pour ceux-ci également en mettant les coordonnées à 0.

Pour finir notre événements commun:

explication : les deux premières lignes definissent la position de base du curseur du radar. la variable "pas d'objet" (mettez un interrupteur si vous preferez) sert a déclechez les commandes si rien n'est détecter.

on detecte si la variable du premier objet est differente de zero (0 étant la coordonnées indiquant que l'objet n'existe pas ou plus).

Si l'objet existe on rend deux variable égales aux coordonnées de l'objet. Ensuite on soustrait les coordonnées du héros. On a aisi les distance objet-héros sur les deux axes.

Mon radarrepère les objets dans un carré de 10 cases sur 10 centré sur le héros. On regarde donc si la distance est inférieur a 5 que ce soit sur la droite, la gauche, en haut et en bas (attention aux valeurs négatives). si l'objet repond a toute ces conditions il est a portée de radar.

On affiche l'image du radar sur la partie inferieure et on calcule les coordonnées du curseur qui représente l'objet par rapport au héro. Ici encore attention au valeurs négatives et addition ou soustraction suivant le coté où se trouve l'objet par rapport au héros.

on finit par affiche le curseur et jouer le son en alternance.

la variable "pas d'objet" a 0 pour empecher les commandes d'absence d'objet de se lancer.
on efface les images.

ensuite refaites les meme commandes a la suite pour chaque objet en mettant juste les bonne variables de coordonnées pour chaque objet.

et a la fin les commandes d'absence d'objet repéré. Si la variable "pas d'objet" est toujours égale a 1 c'est qu'aucun objet n'a été repéré donc le radar s'affiche, l'effet sonore d'echec. Un message pour dire qu'il y a rien; On efface l'image et c'est bon.



l'image du radar et du curseur:





une petite démo pour tester. parle au pnj pour recevoir le cherch'objet. Il y a 3 objet caché sur la carte.

http://www.megaupload.com/?d=U57BM5RH


La seule chose que je n'ai pas reussit encore c'est qu'on puisse le ramasser en etant devant et non dessus.

Posté par Oshidawa le 1 Jan - 20:59 (2012)
Système sympathique , je pense mon inspirée , petit hic ça demande beaucoup d’interrupteurs ..