GTAOnline.net

San Andreas Multiplayer (sa:mp) => Scripting SA-MP [Pawn center] => Showroom SA:MP => Discussion démarrée par: Xolokos le 16 Février 2011, 14:41:07

Titre: [FS][REGISTEUR]Enregistreur (REGISTER) (dudb - dini)
Posté par: Xolokos le 16 Février 2011, 14:41:07
Enregistreur[UPDATE]

PRESENTATION [Uniquement 0.3c]

Enregistreur et un système d'enregistrement on ne peut plus simple qui enregistre le Score et l'Argent et qui les redonne a la RE-Connexion du Joueur, le mot de passe n'est pas visible par les Administrateurs pour plus de sécurité.

Vous ne pourrait pas conséquent pas le modifier pour vous même.

Les statistiques sont sauvegardées a la déconnexion et toute les 5 minutes avec un Settimer pour éviter les pertes de données.

L'endroit d'enregistrement et par défaut /scriptfiles/ mais qui est modifiable encore une fois a la Define.
#define FICHIER_ENREGISTREMENT "%s.ini" en exemple si vous voulez le mettre dans scriptefiles/Comptes faite : #define FICHIER_ENREGISTREMENT "Comptes/%s.ini" suivant l'endroit de stock de vos données de comptes.
Vous pouvez aussi modifier les phrases des DIALOG_STYLE_INPUT a votre guise.

Les couleurs quand a eu sont aussi modifiables.

Lisez les commentaires pour plus de compréhension et le tutoriel sur Dini de Cristab.

Citer
Vous aurez besoin de Dudb (http://dracoblue.net/download/dudb-24/31/) et Dini (http://dracoblue.net/download/dini-16/35/) téléchargable sur Dracoblue (http://dracoblue.net/).
[A mettre dans Pawno/Includes]

LES CREDITS
-Inspiré de C30 pour son FS de register.
-Revue par Xolokos
-Aidé par Xartrick pour son aide et ses remarques.
-Aidé par Cristab pour son tutoriel sur Dini.
Pour GTA SA ONLINE.

TELECHARGEMENT

Citer
ENREGISTREMENT.V.Lambda en .pwn (http://solidfiles.com/d/375d/)
ENREGISTREMENT.V.Lambda en .amx (http://solidfiles.com/d/b9f95/)



Citer
(http://uppix.net/1/2/9/b3fd292be2b9e810886ef5424e704.png) (http://gtaonline.fr)

Titre: Re : [REGISTEUR] J-Registeur (dudb - dini)
Posté par: Xartrick le 16 Février 2011, 15:14:02
Sans être là, j'aide, ce n'est pas beau ça :) ?

Je passe un coup d'oeil sur ton code, et je renvois mon avis.

EDIT 1: Tu n'as pas le droit d'inclure un fichier compilé dans ton archive, c'est les règles.


Citation de: Sim
Évitez de poster des scripts compilés sans en fournir la source. Ceci est valable pour tous.

EDIT 2: Tu inclus deux fois la librairie a_samp.

EDIT 3: Il faudrait dire aux utilisateurs que ce plugin n'est compatible que pour la 0.3c ou plus.

EDIT 4:

if (!dini_Exists(file))
{
ShowPlayerDialog(playerid, 1, DIALOG_STYLE_INPUT, "{FF0000}[Bienvenue]","Metter ce que vous voulais ici.", "Enregistrer", "Quitter");
}
if(fexist(file))
{
ShowPlayerDialog(playerid, 2, DIALOG_STYLE_INPUT, "{FF0000}[Bienvenue]", "Metter ce que vous voulais ici.", "Connecter", "Quitter");
}

Tu utilise deux fois la même fonction mais en passant par une autre fonction.

if (!fexist(file))
{
ShowPlayerDialog(playerid, 1, DIALOG_STYLE_INPUT, "{FF0000}[Bienvenue]","Metter ce que vous voulais ici.", "Enregistrer", "Quitter");
}
if(fexist(file))
{
ShowPlayerDialog(playerid, 2, DIALOG_STYLE_INPUT, "{FF0000}[Bienvenue]", "Metter ce que vous voulais ici.", "Connecter", "Quitter");
}

EDIT 5:
#define Login 0
#define Register 1
#define VERT 0x009D07FF
#define JAUNE 0xF0CC00FF
#define ROUGE 0xD70000FF
#define COULEUR_ROUGE 0xB30000FF
#define COULEUR_VERT 0x477251FF

Si ces directives de préprocesseurs sont inutilisé, pourquoi les donner ?

EDIT 6:

public OnPlayerUpdate(playerid)
{
new name[MAX_PLAYER_NAME], file[256];

GetPlayerName(playerid, name, sizeof(name));
format(file, sizeof(file), SERVER_USER_FILE, name);

if(gPlayerLogged[playerid] == 1)
{
dini_IntSet(file, "Score", PlayerInfo[playerid][pScore] = GetPlayerScore(playerid));
dini_IntSet(file, "Money", PlayerInfo[playerid][pCash] = GetPlayerMoney(playerid));
}

return 1;
}

Il serait plus judicieux d'enregistré les informations du joueur seulement à sa déconnexion.
Tous les joueurs passe par au moins, la connexion et la déconnexion, donc, pas d'encombrement avec des fonctions inutiles.
Titre: Re : Re : [REGISTEUR] J-Registeur (dudb - dini)
Posté par: Gilux le 16 Février 2011, 15:17:51
EDIT 1: Tu n'as pas le droit d'inclure un fichier compilé dans ton archive, c'est les règles.


Non, il doit absolument mettre la source, il peut mettre le .amx, ça ne gêne pas ^^
C'est juste les fichiers .exe qu'il ne faut pas mettre pour les raisons que tu connais.

Je vais regarder ça et je te dis quoi  ;)
++

EDIT :

public OnPlayerUpdate(playerid)
{
new name[MAX_PLAYER_NAME], file[256];
GetPlayerName(playerid, name, sizeof(name));
format(file, sizeof(file), SERVER_USER_FILE, name);
if(gPlayerLogged[playerid] == 1)
{
    dini_IntSet(file, "Score", PlayerInfo[playerid][pScore] = GetPlayerScore(playerid));
    dini_IntSet(file, "Money", PlayerInfo[playerid][pCash] = GetPlayerMoney(playerid));
}
    return 1;
}

Tu devrais supprimer ça, OnPlayerUpdate n'est pas une callback adaptée pour sauvegarder des comptes (OnPlayerUpdate est appelée plusieurs fois par seconde...)
Au pire, utilise un timer ;)
Titre: Re : [REGISTEUR] J-Registeur (dudb - dini)
Posté par: Xolokos le 16 Février 2011, 15:25:11
Voilà je vien de mettre a jour j'ai pris ma dernière version et j'ai modifier ce que vous avez dit maintenant c'est toute les 5 minutes plus judicieux.
Titre: Re : [REGISTEUR] J-Registeur (dudb - dini)
Posté par: cristab le 16 Février 2011, 16:26:31
@Xartrick evite de rabaisser le personne qui partage du moment que la source est presente tout es ok 4

etany egalement en la possetion de sa premier upload ou voit tu deux fois a_samp

Citer
#pragma unused ret_memcpy

#include <a_samp>
#include <dini>
#include <dudb>

sur ceux sympas de partager ;)
Titre: Re : [REGISTEUR] J-Registeur (dudb - dini)
Posté par: Xartrick le 16 Février 2011, 18:09:04
@Cristab: Cela n'était pas mon but, tu sais :p.
Titre: Re : [REGISTEUR] J-Registeur (dudb - dini)
Posté par: ShaDowxx™ le 16 Février 2011, 18:11:26
Ist Genial !
(C'est Génial)

Merci du partage !
Titre: Re : [FS][REGISTEUR] J-Registeur (dudb - dini)
Posté par: cristab le 18 Février 2011, 20:27:49
j'ai mis pas mal de temps mais le plagiat n'est pas autoriser http://forum.sa-mp.com/showthread.php?t=167937 (http://forum.sa-mp.com/showthread.php?t=167937)
Titre: Re : [FS][REGISTEUR] J-Registeur (dudb - dini)
Posté par: Xolokos le 24 Février 2011, 14:21:13
J'avais pas vue les choses sur cette angle la...
Désolé je n'est pas pris exemple sur suis là mais C30 , et je me rend conte maintenant qu'il y a des similitude exacte et je ne le ni pas un Anglais ma aidé sur MSN il a du éventuellement allé dessus pour le SERVER_USER_FILE et Cristab j'aurais très bien pus changé le nom etc etc. Désolé si ça ressemble mais ce n'est pas un plagia je les fait avec un amie (Sir James) sur MSN rencontré sur www.gaming-x.tk (http://www.gaming-x.tk) il me connais sous le nom de Jeffrey...
Titre: Re : [FS][REGISTEUR] J-Registeur (dudb - dini)
Posté par: cristab le 24 Février 2011, 14:25:15
pourtant je reperer les meem nom de variable la meme mauvaise intentadion ... m'enfin je vais regarder si je trouve le temps de vous creer un tuto pour un /regsiter et un /login via Dini
Titre: Re : [FS][REGISTEUR] J-Registeur (dudb - dini)
Posté par: DrEnzo; le 02 Octobre 2011, 17:25:06
Je suis sinserement désolé de UP le sujet.

Mes j'ai besoin d'aide. J'ai telechargé le fichier, je l'ais inseré en Filters Script et a mon serveur.cfg; seulement, une fois que j'ai entrer mon mdp. Bien ca me dit que je suis bien inscri avec le compte X et le mdp X.

J'ai besoin d'aide. Le compte ne se créer pas..

J'ai pourtant bien inclu les fichier DINI et DUDB...

Merci de votre aide ;)

Cordialement
Titre: Re : [FS][REGISTEUR] J-Registeur (dudb - dini)
Posté par: Xolokos le 02 Octobre 2011, 19:49:33
Créer le dossier Comptes.
Titre: Re : Re : [FS][REGISTEUR] J-Registeur (dudb - dini)
Posté par: DrEnzo; le 02 Octobre 2011, 19:53:58
Créer le dossier Comptes.

C'est déjà fait :) Parcontre je ne l'ais pas mit dans scriptfiles mes dans FiltersScripts
Titre: Re : [FS][REGISTEUR] J-Registeur (dudb - dini)
Posté par: Kox le 02 Octobre 2011, 20:32:33
Met le dans scriptfiles alor
Titre: Re : Re : [FS][REGISTEUR] J-Registeur (dudb - dini)
Posté par: DrEnzo; le 02 Octobre 2011, 20:54:45
Met le dans scriptfiles alor

Sa incrit le membre, mes quand je tape des commandes, elle s'exécute aussi sé sa fou la merde..

Si vous comprené pas. Je vous fait un Screen ;) ++
Titre: Re : [FS][REGISTEUR] J-Registeur (dudb - dini)
Posté par: ShaDowxx™ le 03 Octobre 2011, 07:52:05
Je n'ai pas trop compris.

Le mieux de tout serait de nous envoyer un screen.

Cordialement.
Titre: Re : [FS][REGISTEUR] J-Registeur (dudb - dini)
Posté par: Xolokos le 03 Octobre 2011, 21:44:54
Bon j'ai mi a jour le GM après vous.
Titre: Re : [FS][REGISTEUR]Enregistreur (REGISTER) (dudb - dini)
Posté par: Antonio_Pedretti le 18 Novembre 2011, 16:26:04
Comment ouvrir le fichier .amx ? :S

Double post
EDIT: J'ai réussi à installer les fichiers, etc..
Le soucis est que je rencontre 12errors.
Voici les erreurs:

Citer
C:UsershamisofDocumentsRockstar GamesgamemodesGang Street Zone [DM]filterscriptsegistrer.pwn(1) : error 017: undefined symbol "ret_memcpy"
C:UsershamisofDocumentsRockstar GamesgamemodesGang Street Zone [DM]pawnoincludedudb.inc(1) : error 010: invalid function or declaration
C:UsershamisofDocumentsRockstar GamesgamemodesGang Street Zone [DM]pawnoincludedudb.inc(18) : error 031: unknown directive
C:UsershamisofDocumentsRockstar GamesgamemodesGang Street Zone [DM]pawnoincludedudb.inc(22) : error 031: unknown directive
C:UsershamisofDocumentsRockstar GamesgamemodesGang Street Zone [DM]pawnoincludedudb.inc(25) : error 031: unknown directive
C:UsershamisofDocumentsRockstar GamesgamemodesGang Street Zone [DM]pawnoincludedudb.inc(34) : error 010: invalid function or declaration
C:UsershamisofDocumentsRockstar GamesgamemodesGang Street Zone [DM]pawnoincludedudb.inc(39) : error 001: expected token: ")", but found ";"
C:UsershamisofDocumentsRockstar GamesgamemodesGang Street Zone [DM]pawnoincludedudb.inc(39) : error 010: invalid function or declaration
C:UsershamisofDocumentsRockstar GamesgamemodesGang Street Zone [DM]pawnoincludedudb.inc(44) : error 010: invalid function or declaration
C:UsershamisofDocumentsRockstar GamesgamemodesGang Street Zone [DM]pawnoincludedudb.inc(44 -- 47) : error 010: invalid function or declaration
C:UsershamisofDocumentsRockstar GamesgamemodesGang Street Zone [DM]pawnoincludedudb.inc(44 -- 50) : error 010: invalid function or declaration
C:UsershamisofDocumentsRockstar GamesgamemodesGang Street Zone [DM]pawnoincludedudb.inc(44 -- 50) : fatal error 107: too many error messages on one line

Compilation aborted.Pawn compiler 3.2.3664           Copyright (c) 1997-2006, ITB CompuPhase


12 Errors.

(http://www.gtaonline.fr/forums/Themes/orange-lt119v2/images/warnwarn.gif) Double post
Titre: Re : [FS][REGISTEUR]Enregistreur (REGISTER) (dudb - dini)
Posté par: spiirou le 18 Novembre 2011, 19:27:12
Le .amx ne s'ouvre pas, des connaissances de bases t'auraient aidé !
Titre: Re : [FS][REGISTEUR]Enregistreur (REGISTER) (dudb - dini)
Posté par: Xolokos le 18 Novembre 2011, 19:58:53
Y'a le .amx pour ce qui veulent pas ce "faire chier" et pas avoir a utiliser les includes.
Et pour ce qui veulent apprendre j'ai mit le .pwn.
Titre: Re : [FS][REGISTEUR]Enregistreur (REGISTER) (dudb - dini)
Posté par: Antonio.C le 25 Janvier 2012, 12:39:52
Bonjour,

Ce FilterScript m'intérèsse beaucoup et je tiens à te dire GG pour ce partage
Ensuite, j'aimerais savoir une chose :
On enregistre l'argent et le score, c'est bien celà ? Et si je veux enregister le " Rang " ( Ex : Admin, Modérateur  ), comment dois-je m'y prendre ?
J'ai déjà créer des rangs avec ce tuto : http://www.gtaonline.fr/forums/index.php/topic,13589.0.html (http://www.gtaonline.fr/forums/index.php/topic,13589.0.html) ( merci au créateur ) et je voulais  savoir comment enregister le rang d'un joueur quand j'ai vu ce FS

Merci pour toute réponse,
Anto' ( Yuzi )

Titre: Re : [FS][REGISTEUR]Enregistreur (REGISTER) (dudb - dini)
Posté par: Xolokos le 25 Janvier 2012, 18:18:19
Cristab a fait un tutoriel si tu veut en savoir plus sur Dini.

Alors c'est très simple :
Tout d'abord tu créer une nouvelle "case" si je puis dire dans l'enum qui est Information ici en bref tu rajoute un nom si tu préfères en exemple :

enum Information
{
Argent,
Score,
        Rang,//Veille a ce qu'il soit différent de t'as variable.
}

Ensuite vu que tu a déjà tu as déjà t'as variable qui doit être Rangs.
new Rangs[MAX_PLAYERS];Dans le OnDialogReponse tu créer la ligne Rang si le joueur s'enregistre et tu la met a 0 ou autre comme tu veut.
dini_IntSet(Fichier, "Rangs", InfoJoueur[playerid][Rang] = 0);//Remarque que le premier Rangs peut avoir le même nom que la variable cela n’influence car c'est le nom dans le fichier qui va avoir, le second lui doit être suis dans l'enum.Si le  joueur a est déjà enregistré et qu'il marque un mauvais mot de passe tu le Kick(playerid); sinon tu lui load ses stats de son compte soit :
Rang[playerid] = dini_Int(Fichier,"Rangs");//Le Rang[playerid] prend la valeur de la ligne Rangs.Et voilà.