• 08 Juillet 2025, 10:43:26


Auteur Sujet: [FS] AFK System  (Lu 3086 fois)

0 Membres et 1 Invité sur ce sujet

Hors ligne spiirou

  • *
  • L'avenir appartient à ceux qui se lèvent
  • Messages: 866
    • Voir le profil
[FS] AFK System
« le: 13 Décembre 2011, 14:47:40 »
Salut,

Voila je viens de faire un petit systeme de pause ( afk )

Commandes :

/afk - se mettre en pause
/back - revenir en jeu
/aliste - voir les joueurs en pause

Contenu :

Tableau permettant de voir les informations sur les AFK ( ID, Pseudo, Durée d'absence )
Mise AFK automatique en cas d'inactivité prolongée ( en se basant sur les positions )

Liens :

v1
Pastebin.com
Solidfiles.com


v1.1
Pastebin.com
Solidfiles.com
Correction de sécurité, optimisation
Ajout d'une PVar "pState"
    0 = Le joueur n'a pas spawn
    1 = Le joueur a spawn
    2 = Le joueur est AFK


Autres :

Vous pouvez modifier le code comme bon vous semble,
Mais n'oubliez pas de me mettre dans vos credits :p

Spiirou
++



Je ne peux pas tester le script actuellement, merci de me dire si il existe des éventuels bugs !  ;D
« Modifié: 13 Décembre 2011, 19:34:22 par spiirou »

Hors ligne mehdi-jumper

  • *
  • Bandit
  • Messages: 311
    • Voir le profil
Re : [FS] AFK System
« Réponse #1 le: 13 Décembre 2011, 14:53:17 »
Merci du partage :) il y a déjà pas mal de FS de ce genre mais je compte le modifier.

Bien joué :)

••

Hors ligne ShaDowxx™

  • We are cats.
  • *
  • Grand Banditisme
  • Messages: 706
    • Voir le profil
Re : [FS] AFK System
« Réponse #2 le: 13 Décembre 2011, 15:56:01 »
Pour commencer, merci du partage.

Je viens de tester ton FilerScript en 0.3d.

Les plus:

Les commandes fonctionnent tous bien.
L'orthographe n'est pas souvent faux. (= je n'ai pas beaucoup regardé l'orthographe)

Le moins:

Pas de mise à jour automatique du temps d'AFK d'un joueur.

Ce que je propose:

Mettre une commande d'aide.
Mettre un système qui permet de mettre le temps d'AFK à jour en temps réel.

Voilà, je n'ai pas l'habitude de faire des tests de FilerScript GM par mon manque de temps mais bon... Ton FilerScript à une vraie capacité à exploiter.

Cordialement, ShaDowxx.
« Modifié: 13 Décembre 2011, 16:02:20 par ShaDowxx™ »

Hors ligne spiirou

  • *
  • L'avenir appartient à ceux qui se lèvent
  • Messages: 866
    • Voir le profil
Re : [FS] AFK System
« Réponse #3 le: 13 Décembre 2011, 16:13:43 »
Merci bien, comment ca pas de mise a jour de temps d'AFK ? J'ai pas bien compris  ???

Hors ligne mehdi-jumper

  • *
  • Bandit
  • Messages: 311
    • Voir le profil
Re : [FS] AFK System
« Réponse #4 le: 13 Décembre 2011, 16:23:58 »
Moi non plus j'ai pas saisi.
Tu pourrais aussi créer des 3dText au dessus des joueurs qui sont afk comme sa cela se voit directement.

Hors ligne spiirou

  • *
  • L'avenir appartient à ceux qui se lèvent
  • Messages: 866
    • Voir le profil
Re : [FS] AFK System
« Réponse #5 le: 13 Décembre 2011, 16:32:31 »
Les AFK sont dans un virtualworld donc c'est inutile en fait :)

Hors ligne S!m

  • *
  • Messages: 2341
    • Voir le profil
Re : [FS] AFK System
« Réponse #6 le: 13 Décembre 2011, 16:48:07 »
Salut,

quelques petits trucs auxquels tu devrais faire attention:

public OnFilterScriptExit()
{
        for(new i = 0; i < MAX_PLAYERS; i++) KillTimer(pAfk[i][timer]);
        return 1;
}

Si le joueur n'a pas de timer (s'il n'est pas connecté), tu détruit un timer vide ou potentiellement un timer d'un autre script dépendant de la valeur de la variable...bref, ajoute le test IsPlayerConnected.

Je crois que tu peut faire mieux et plus simple que ça:

                                while(minute > 60)
                                {
                                    heure ++;
                                    minute -= 60;
                                }

Essaie simplement:

heure = minute / 60;
minute -= heure * 60;
Comme minute et 60 sont des valeurs entières, la division sera traitée de façon entière. Dans ce cas, la machine arrondi la valeur vers le bas, ce qui est exactement ce que l'on veut dans ce cas.

Attention, à un endroit tu as écris que les valeurs des statuts sont 0, 1 et 2 et des constantes sont à -1, 0 et 1. J'aurais tendance à prendre 0, 1 et 2.

enum afk
{
        statut, // 0 = pas spawn | 1 = spawn | 2 = AFK
        timer,
        ...

sinon, c'est un beau script qui me semble apte à être utiliser sur la plupart des serveurs. Normalement il n'y a pas de conflits.
Une suggestion: ajouter une pvar ou un truc du genre qui permettrait de connaitre le statut du joueur depuis un autre script.

++Sim++





Hors ligne Prince™

  • Loading..
  • *
  • Frag'n'Fun
  • Messages: 1004
    • Voir le profil
    • http://www.gtaonline.fr
Re : [FS] AFK System
« Réponse #7 le: 13 Décembre 2011, 16:52:40 »
Bien jouer Spiiro





++



Prince !

Hors ligne spiirou

  • *
  • L'avenir appartient à ceux qui se lèvent
  • Messages: 866
    • Voir le profil
Re : [FS] AFK System
« Réponse #8 le: 13 Décembre 2011, 18:22:41 »
Pour le KillTimer je n'y avais pas pensé
Les heures et minutes j'avais trouvé ma solution, il est vrai que j'aurais du plus chercher
Et les constantes c'est une erreur de ma part

Voila voila :P

Merci bien, le script sera mis a jour dans les minutes qui viennent :)

Spiirou
++

EDIT : Mise a jour des liens, corrections et ajouts effectués ! Merci Sim :D
« Modifié: 13 Décembre 2011, 18:36:10 par spiirou »