• 01 Mai 2024, 03:46:35


Auteur Sujet: [FS] M][T's AFK  (Lu 3165 fois)

0 Membres et 1 Invité sur ce sujet

Hors ligne » Lukubi™

  • *
  • Soy el bico loco
  • Messages: 3282
    • Voir le profil
[FS] M][T's AFK
« le: 29 Novembre 2008, 04:53:01 »
C'est un FS d' AFK plutôt simple et tout aussi simple à utiliser

Installation (débutant) :

Citer
1. Télécharger le fichier (jusqu'ici tout le monde suit)
2. Placez le fichier "AFK.Amx" dans votre dossier "Filterscripts"
3. Ajouter AFK dans votre fichier "serveur.cfg" a la ligne "Filterscript ......."
4.Enjoy ;)

=======================================================================================


Les commandes :

Citer
/afk : partir du jeu durant un certain temps
/back : revenir dans le jeu

=======================================================================================


Téléchargements :

PWN - ICI
PWN + AMX - ICI

=======================================================================================


Crédits :

Clashthaï et Pink pour avoir tester ce FS sur le serveur de LoS

Vous avez le droit de publier ce FS sur d'autre forum mais pas de dire que c'est le votre

edit : mise en page

« Modifié: 01 Décembre 2008, 17:03:32 par R@f »

“Si la Terre est un endroit dangereux ce n’est pas à cause des hommes mauvais mais à cause des hommes bons qui ne font rien pour les empêcher.” (Albert Einstein).

Hors ligne Nikko™

  • *
  • Mafioso
  • Messages: 2393
    • Voir le profil
Re : [FS] M][T's AFK
« Réponse #1 le: 29 Novembre 2008, 10:24:25 »
mouai ...
meme si tout le monde (ou casi) sais faire ces commandes ... gg quand meme.

++
nikko

Hors ligne cristab

  • *
  • Messages: 8379
    • Voir le profil
Re : [FS] M][T's AFK
« Réponse #2 le: 29 Novembre 2008, 10:33:25 »
j'ai le meme chose sur mon GM un truc en plus un gametext qui est ecrit que tu es en pause pendant 1 seconde mais sympas de partager
pas d'aide en PM, vous êtes sur un forum est il me semble que vous êtes la pour avoir de l'aide donc pourquoi MP une seul personne qui ne vous répondra pas alors qu'il y a plein de membre ici

Hors ligne Franky™

  • Franky™ est bien la
  • *
  • Gangster
  • Messages: 1058
    • Voir le profil
Re : [FS] M][T's AFK
« Réponse #3 le: 29 Novembre 2008, 11:23:15 »
C'est toujours bien de partagé des FS comme ça, mais si comme tu dit qu'il est symple, pour les debutants en pawn sa fait toujours plaisir.

++ Franky


°°((Franky's WebSite
Désolé pour mes fautes d'orthographes

Hors ligne » Lukubi™

  • *
  • Soy el bico loco
  • Messages: 3282
    • Voir le profil
Re : [FS] M][T's AFK
« Réponse #4 le: 29 Novembre 2008, 16:29:50 »
merci, si vous trouver le moindre bug faites le moi parvenir ici ou par PM

“Si la Terre est un endroit dangereux ce n’est pas à cause des hommes mauvais mais à cause des hommes bons qui ne font rien pour les empêcher.” (Albert Einstein).

Hors ligne garderer

  • *
  • Bandit
  • Messages: 271
    • Voir le profil
Re : [FS] M][T's AFK
« Réponse #5 le: 29 Novembre 2008, 21:47:45 »
pas beasoin de testé il y'a un bug ou une faille si tu préfére
quand tu meurt tu fait /AFK
tu aura le pseudo ^^ et tu respawnera
Si tu veut le corrigé onplayerDeath tu met une varaible[playerid] = 1; et dans onplayerspawn variable[playerid] = 0;

Et qaund il faut la commande /afk il faut que la variable soit == a 0 doit
if(variable[playerid] == 0)
{
//ok
}
else
{
// vous ne pouvez pas éxécuté la commande.
}


ou simplement
if(variable[playerid] == 1)
{
// Vous ne pouvez pas éxécuté la commande pour le moment.
return 1;
}

Hors ligne R@f

  • *
  • GTAOnline Addict
  • Messages: 4655
    • Voir le profil
Re : [FS] M][T's AFK
« Réponse #6 le: 29 Novembre 2008, 21:56:54 »
pas mal le script mais une petite suggestion, récupère la pos du joueur quand il fait AFK et remet le joueur à la position où il a fait cette commande quand il fait /back ;)

++
R@f

Hors ligne » Lukubi™

  • *
  • Soy el bico loco
  • Messages: 3282
    • Voir le profil
Re : [FS] M][T's AFK
« Réponse #7 le: 29 Novembre 2008, 23:22:34 »
Ok merci je ferai sa dans la prochaine version ;)

“Si la Terre est un endroit dangereux ce n’est pas à cause des hommes mauvais mais à cause des hommes bons qui ne font rien pour les empêcher.” (Albert Einstein).

Hors ligne Syg

  • Expert programmeur C/C++/PAWN
  • *
  • The GTAOnline Jesus
  • Messages: 3908
    • Voir le profil
Re : [FS] M][T's AFK
« Réponse #8 le: 01 Décembre 2008, 12:08:10 »
Une erreur classique avec les tableaux que l'on ne voit pas quand on fait les tests avec un seul joueur (ID=0).
Tu fais
GetPlayerName(playerid, PlayerName2, sizeof(PlayerName2));Cette ligne est correcte mais elle ira toujours écrire dans le premier élément du tableau PlayerName2, donc l'élément correspondant au joueur 0.
Le ligne qui fonctionne est :
GetPlayerName(playerid, PlayerName2[playerid], sizeof(PlayerName2[playerid]));
Idem pour la commande /back, il faut remplacer
SetPlayerName(playerid,PlayerName2);par
SetPlayerName(playerid,PlayerName2[playerid]);
Et idem pour la variable Float:PlayerHealth qui devrait être un tableau.
new Float:PlayerHealth[MAX_PLAYERS];
GetPlayerHealth(playerid, PlayerHealth[playerid]); dans /afk
SetPlayerHealth(playerid, PlayerHealth[playerid]); dans /back

Autre erreur assez embêtante : le timer GodTimer
Ce timer est lancé sans paramètre donc il ne fonctionnera que pour le joueur 0 (encore une fois, quand on fait les tests avec un seul joueur tout marche correctement) ainsi, si le joueur 10 fait /afk, c'est le joueur 0 qui verra sa vie remise à 100% toute les secondes.
La solution :
- Démarrer le timer dans OnFilterScriptInit.
- L'arrêter dans OnFilterScriptExit
- Modifier la fonction du timer comme suit :
public GodUpdate ()
{
   for (new i=0 ; i<MAX_PLAYERS ; i++)
   {
      /* Si le joueur est connecté et en AFK */
      if (IsPlayerConnected (i) && InAfk[playerid]==1)
      {
         SetPlayerHealth(i, 100000);
      }
   }
   return 1;
}
Et bien sur, supprimer le KillTimer dans la commande /back

Sinon, coté suggestions, il serait bien de mettre un message d'erreur lorsque le joueur fait /afk et qu'il est déjà AFK ou /back alors qu'il n'est pas AFK. Il n'y a rien de plus déroutant qu'un commande qui n'affiche rien (on croit alors qu'on est parti en timeout).
Et il manque un SendClientMessageToAll après
format(msg,sizeof(msg)," %s Est revenu(e)", PlayerName(playerid));
++
Syg
Courtesy of GtaManiac