Aller au contenu
Phe0X

Forcer un joueur à dormir (animation)

Messages recommandés

J'ai déjà posté ça sur discord, mais je le poste ici aussi, sait-on jamais ! PS: Désolé je suis vraiment pas bon en formatting

Fragment de code assez long qui permet de forcer un joueur à dormir et le reveiller utile pour des animations de réanimation par exemple, ou pour faire semblant qu'un joueur dort.
• Fait en 1.15.2, également testé en 1.14.4 sous spigot (en 1.14, le snippet ne pourra pas empecher le joueur de bouger comme s'il était vraiment dans un lit, il apparaitra juste allongé)
Nécessite

Contenu masqué

    Réagissez ou répondez à ce message afin de consulter le contenu masqué.
,

Contenu masqué

    Réagissez ou répondez à ce message afin de consulter le contenu masqué.
et

Contenu masqué

    Réagissez ou répondez à ce message afin de consulter le contenu masqué.

Merci à King pour l'aide, Runa pour l'idée et Rush²Fer pour m'avoir appris (pour le script DisguiseMe) à utiliser les packets avec skript-mirror et ProtocolLib, ThatPacketAddon ne possédant pas tous les fields nécessaire.
Le code à copier est dispo sur ce lien pastebin: 

Contenu masqué

    Réagissez ou répondez à ce message afin de consulter le contenu masqué.

Quelques infos importantes:
    ∟ Ce snippet ne fonctionnera pas en dessous de la 1.14 (c'est pas la peine d'essayer), mettez à jour vos serveurs 🙂
    ∟ Si un joueur est forcé à dormir, il ne peut pas sortir seul de l'animation en cliquant sur "Leave Bed" (il est softlock). La seule façon de lui redonner la possibilité de bouger est de le wake up (ou de le kick)
    ∟ Je recommande d'utiliser des listes de joueur identiques pour forcer un joueur à dormir et le reveiller, pour éviter que certains puissent le voir allongé sans raison et d'autres non (le "all players" n'est pas toujours le même si un joueur déco par exemple)

Utilisation:
Infos sur les syntaxes:

    • (make|force) [the] %players% [to] sleep at %location% for %players% [to not be stuck in bed %-boolean%] : Forcer un/plusieurs joueurs à dormir à une certaine position pour d'autres joueurs (en pouvant éviter qu'il soit bloqué dans le lit)
        Si vous mettez "to not be stuck in bed true" dans la syntaxe (facultatif) le joueur sera libre de ses mouvements mais apparaitra comme allongé (uniquement en 1.15, car en 1.14 le joueur est *toujours* libre de ses mouvements)
    
    • wake [the][up] %players% [up] for %players% : Forcer un joueur à se lever (fonctionne après l'avoir forcé à dormir)
        Vous pouvez faire se lever certains joueurs pour d'autres, ils seront enlevés de la liste voyant les joueurs allongés

 

Exemples d'utilisation avec des vidéos:
• Forcer un joueur à dormir à l'endroit où il est, sans qu'il puisse bouger, pour tout les joueurs

Contenu masqué

    Réagissez ou répondez à ce message afin de consulter le contenu masqué.

ForceSleep%20Command.gif

• Forcer un joueur à se lever pour tout les joueurs

Contenu masqué

    Réagissez ou répondez à ce message afin de consulter le contenu masqué.

WakeUp%20command.gif

• Forcer un joueur à dormir pour les autres joueurs, mais en lui laissant la possibilité de se déplacer
 

Contenu masqué

    Réagissez ou répondez à ce message afin de consulter le contenu masqué.

sleepmove.gif

  • J'aime 2
  • Merci 1

Partager ce message


Lien à poster
Partager sur d’autres sites
il y a 2 minutes, zarco70 a dit :

pas mal dommage que sa marche pas en dessous de la 1.14

Je ferai peut être une version compatible avec la 1.8 ou la 1.12 😄

Partager ce message


Lien à poster
Partager sur d’autres sites
Il y a 20 heures, ZeyMax a dit :

Tu pourrais faire pareil mais en système pour s'asseoir ? Genre bouger assis et tout comme tu as fais là

Je pense qu'il y a des façons assez simple de le faire en évitant d'utiliser des packets, tu peux essayer de faire spawn une entité (bateau/cheval/minecart) puis le rendre invisible et faire que le joueur le chevauche avec cette syntaxe devrait suffire

Contenu masqué

    Réagissez ou répondez à ce message afin de consulter le contenu masqué.

Après je sais pas tout ce que tu veux faire mais dis moi si ça ne fonctionne pas, je verrai si j'ai le temps de le faire 🙂

Partager ce message


Lien à poster
Partager sur d’autres sites

Créer un compte ou se connecter pour commenter

Vous devez être membre afin de pouvoir déposer un commentaire

Créer un compte

Créez un compte sur notre communauté. C’est facile !

Créer un nouveau compte

Se connecter

Vous avez déjà un compte ? Connectez-vous ici.

Connectez-vous maintenant

×
×
  • Créer...

Information importante

Nous avons placé des cookies sur votre appareil pour aider à améliorer ce site. Vous pouvez choisir d’ajuster vos paramètres de cookie, sinon nous supposerons que vous êtes d’accord pour continuer.