Résolu Détecter la présence d'un mob et de joueurs

Trollam

Architecte en herbe
8 Mars 2011
417
34
135
30
Salutations à toutes et à tous

Je vais pas y aller par quatre chemins :
En gros je cherche un moyen pour détecter la présence (ou absence) d'un mob spécifique et un moyen de le faire disparaître dans un certain contexte, la situation est la suivante :
-Un joueur rentre dans une salle. (ou plusieurs)
-Un mob apparaît devant lui.
-La sortie de la salle se verrouille. (Jusque là je sais faire)
-Si le joueur (ou tous les joueurs) meurt (ou quitte la salle), la salle se déverrouille et le mobs disparais.
-Si le joueur (ou les joueurs) tue le monstres la salle se déverrouille.

Donc en gros il me faut d'une part un détecteur de mob (sachant que le mob aura sans doute un nom si sa peut aider) et d'autre part un détecteur de joueurs.
Pour le système je veux juste éviter de barder la salle de pressure plate/tripwire/etc. donc les commandes blocs ce serait l'idéal.

Merci d'avance pour vos réponses.
 
Effectivement ... le testfor j'aurai pu y penser tout seul :oops: (on va dire que c'est parce qu'il est tard).
Pour le scoreboard ce que tu propose c'est de compter le nombre de kills qu'on fait les joueurs dans cette salle ? J'avais pas vue le problème sous cet angle...

Merci en tout cas pour ta réponse, même si je pense que j'aurai été capable de trouver si j'avais mieux chercher '^^, après j'ai pas encore touché aux scoreboard donc je sais pas trop jusqu’où il peuvent être utile.
*ducoup j'vai encore écumer le wiki à la recherche du fonctionnement des commandes*
 
bah en faisant un scoreboard style "/scoreboard objectives add nom totalkillcount nom " puis un " /testfor xyz[r=taille de la salle] (r -> rayon) " avec un comparateur au bout du command bloc.n'hésite pas a utiliser les scoreboards, ils servent à tout
 
n'hésite pas a utiliser les scoreboards, ils servent à tout
Ouai mais j'avais pas trop explorés du côté des scoreboads donc j'ai pas eu le réflexe :oops: .
Sinon j'ai trouvé comment j'allais m'y prendre pour le reste, mais je sais toujours pas comment faire disparaître le mob si les joueurs meurent :confused:.
 
Le problème c'est que je comptais l'utiliser sur un serveur, sa peut être une solution mais elle m'arrange pas trop sur certain point, y'a pas d'autres moyens ? Sinon bah je ferais avec.

Puis si les joueurs meurent le système s'activera pas, si ? Vue que les joueurs chargeront plus la zone.
 
bah tu peut essayer de faire déspawner les mobs si c'est possible en éloignant les joueurs par exemple.
apres pour les joueurs qui meurent bah j'ai pas compris... c'est fini pour eux s'ils meurent?
 
Je ne suis pas sûr de ce que j'avance, mais je crois que le système s'activera tout de même, puisque le temps qu'ils cliquent sur "respawm", ils chargent encore la map à l'endroit où ils sont morts, même si un bloc de commande testfor interprétera ça comme si aucun joueur se trouvais dans les parages. Mais je ne l'ai pas testé, je crois que le mieux et d'essayer et de voir ce qui se passera.

Pour que qui est de despawn le mob, tu peux essayer ceci: Lorsqu'ils entrent dans la salle (disons au même moment où le mob apparaît et que les portes se verrouillent), tu changes leur spawnpoint pour une salle très loin. S'ils meurent, ils apparaîtront suffisamment loin pour faire despawn le mob, ensuite tu places un bouton dans la salle qui ramène le joeur là où il était, ou tu fais un délai.

Ou alors tu peux le tuer, sois par suffocation avec des pistons ou en le faisant tomber de la map. Ça dépends de comment la salle est conçue en fait. Mais je ne connais pas de commande qui fasse disparaître des entités malheureusement. Corrigez moi si je me trompes.
 
Après quelques test j'ai remarqué que le testfor pour la détection de joueur ne fait pas la différence entre mort et vivant, du-coup quand un joueur meurt le système ne s'active pas (vue que quand le joueur voudra respawn il ne chargera plus la zone).

Pour le despawn naturel, c'est pas une bonne solution, elle est trop hasardeuse. Puis je crois pas que sa marche sur les mobs ayant un nom, si ?

En ce qui concerne le fait de tuer le mob via un système ce serait trop complexe à mettre en place, d'autant que le mob volera et que la configuration de la pièce est telle que des système de suffocations, d'inondations par de la lave ou de l'eau serait catastrophiques pour l’esthétique de la salle.

Donc pour le système je vais juste faire en sorte de faire disparaître le mob (changement de difficulté) quand d'autre joueur voudront rentrer (si le mob est toujours là mais pas les joueurs).