Aller au contenu

[WorldGuard] auto delete region old player


Messages recommandés

Posté(e)

Version de minecraft / skript : 1.10

Type du skript : Skript pour worldguard

Description du script :

Bonjour, je souhaiterais pouvoir supprimer une region worldguard si le joueur est inactive depuis 2 mois.

les regions d'un joueur s'appelle comme ceci: Theminecraft0408-0, Theminecraft0408-1, Theminecraft0408-2...

Ce qui faudrais ces que si le joueur est inactive depuis 2 mois ca execute /rg remove Theminecraft0408-0 et ainssi de suite.

 

 

 

Cordialement, Theminecraft0408

 

Merci de votre aide et bonne journée.

Posté(e)

Salut Theminecraft0408,

 

Dans un premier temps je ne suis pas certain que Skript et Worldguard fonctionne bien correctement ? Si ça fonctionne correctement, alors il faut procéder comme suivant :

 

Quand un joueur se déconnecte, tu enregistres la date. Et chaque jour, tu lances une commandes qui va tester pour chaque joueur si il n'est pas devenu inactif. Il faut donc que ton skript convertisse une date en nombre de jours et qu'il regarde si ce nombre ne dépasse pas 60.

 

En regardant sur SkUnity, j'ai trouvé quelques trucs qui pourraient être intéressant pour toi :

 

# Besoin du plugin Umbaska
on disconnect:
   set {Online.%player%} to resident data last online date of player 

# Besoin du plugin TuSke
# expression :
difference between last login of player and now is more than 60 days

 

Pour ce qui est des zones, comment est ce que l'on sait que la zone nommée Theminecraft0405-5 appartient à tel ou tel joueur ?

 

Un autre problème qui me vient à l'esprit, c'est que je ne crois pas que l'on puisse effectuer un test sur tous les joueurs déconnectés... (à vérifier)

 

J'espère t'avoir un peu aidé ! :)

Posté(e)

En fait, la seule solution que je vois aujourd'hui est d'utiliser un base de données dans laquelle pour chaque joueur tu enregistres la date de dernière déconnexion. Et ensuite, c'est une requete SQL que tu devras faire pour trouver les gens ayant une dernière déco datant de plus de 2 mois.

 

Pour la requête SQL ça donnerait quelque chose comme ça :

SELECT *
FROM Joueur
WHERE date(aujourd'hui) - date(dernière déco) >= 60;

 

Mais il faut déjà avoir un base de données SQL...

 

Je pense pas que ton plugin soit réalisable en Skript...

×
×
  • 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.