GTA-Expert Forum: [GUIDA] registrazione - GTA-Expert Forum

Salta al contenuto

Pagina 1 di 1
  • Non puoi iniziare una nuova discussione
  • Non puoi rispondere a questa discussione

[GUIDA] registrazione

#1 L'utente è offline   [F12] phantom 

  • Borsaiolo
  • Gruppo: Utenti
  • Messaggi: 465
  • Iscritto il: 16/04/10

Inviato il 24 giugno 2010 - 17:43

salve, vorrei proporvi una guida sulla registrazione e il login con la password,nell'esempio che dovrete seguire, utilizzerò solo il sistema Skin e Soldi, ma voi potete aggiungere altre cose, come i kill, la skin, e altre cose, passiamo ai fatti:

APRIAMO PAWNO,


immettiamo questo in cima:
 #include <dini>
e sotto
newLoggato[MAX_PLAYERS];


creiamo un enum
enum Info
{
    Admin,
}
new PlayerInfo[MAX_PLAYERS][Info];

ora creiamo un forward che poi riprenderemo
[code]forward SaveAccounts();


ora andiamo in OnPlayerCommandText e iniziamo mettendo questo:
public OnPlayerCommandText(playerid, cmd[])
{
new tmp[256], tmp2[256], idx, file[128], cmd[256];
cmd = strtok(cmdtext, idx);//se non avete strtok visualizzate in fondo alla guida lo spoiler

if(strcmp(cmd, "/registra", true) == 0)
{
     if(IsPlayerConnected(playerid))
     {
         tmp = strtok(cmdtext, idx);
         if(!strlen(tmp)) return SendClientMessage(playerid, colore, "USA: /regisra [password]");
         new name[MAX_PLAYER_NAME];
         GetPlayerName(playerid, name, sizeof(name));
         format(file, sizeof(file), "Utenti/%s.ini", name);
         if(!fexist(file))//se non sapete cosa significherebbe guardate la guida di alexz
         {
             dini_Create(file);
             dini_Set(file, "password", tmp);
             dini_IntSet(file, "Soldi", 0);
             dini_IntSet(file, "Skin", 0);
             SendClientMessage(playerid, colore, "Account Creato !");
         }
         else
         {
             SendClientMessage(playerid, colore, "Questo account esiste già!");
             return 1;
         }
     }
     return 1;
}
if(strcmp(cmd, "/login", true) == 0)
{
    if(IsPlayerConnected(playerid))
    {
         tmp = strtok(cmdtext, idx);
         if(!strlen(tmp)) return SendClientMessage(playerid, colore, "USA: /login [password]");
         if(Loggato[playerid] == 1) return SendClientMessage(playerid, colore, "Hai già eseguito il login");
         new name[MAX_PLAYER_NAME];
         GetPlayerName(playerid, name, sizeof(name));
         format(file, sizeof(file), "Utenti/%s.ini", name);
         if(fexist(file))
         {
             dini_Get(file, "password");
             if(strcmp(tmp,tmp2, true) == 0)
             {
                   Loggato[playerid] = 1;
                   ResetPlayerMoney(playerid);
                   SetPlayerSkin(playerid, dini_Int(file, "Skin"));
                   GivePlayerMoney(playerid, dini_Int(file, "Soldi"));
             }
             else
             {
                   SendClientMessage(playerid, colore, "La password è sbagliata riprova!");
                   return 1;
              }
          }
     }
     return 1;
}


ora che abbiamo creato i comandi andiamo a riprendere il forward creato sopra e creiamo il public...
public SaveAccounts()
{
    for(new i = 0; i < MAX_PLAYERS; i++)
    {
        if(IsPlayerConnected(i))
        {
            if(Loggato[i] == 1)
            {
            	SaveAccount(i);
			}
        }
    }
}

SaveAccount(playerid)
{
	new name[24], file[128];
    GetPlayerName(playerid, name, sizeof(name));
    format(file,sizeof(file),"Utenti/%s.ini",name);
    //Impostazioni
	dini_IntSet(file, "Soldi",GetPlayerMoney(playerid));
	dini_IntSet(file,"Skin", PlayerInfo[playerid][Skin]);
	return 1;
}


ora abbimoa creato il nostro sistema di registrazione possiamo anche creare un istetama admin, vi faccio vedere...

nel comando /registra vedete che abbimao messo
 dini_IntSet(file, .....);

noi mettiamo così
 dini_IntSet(file, "AdminLevel", 0);

ora andiamo nel comando /login e vediamo
SetPlayerSkin(playerid, dini_Int(file, "Skin");

per mettere ADMIN facciamo sotto
PlayerInfo[playerid][Admin] = dini_Int(file, "AdminLevel");


infine andiamo in SaveAccount(playerid) e sotto a questo
dini_IntSet(file, "Soldi",GetPlayerMoney(playerid));

mettiamo
dini_IntSet(file, "AdminLevel", PlayerInfo[playerid][Admin]);


dopo aver fatto tutto, possiamo sbizzarrirci a creare comandi ADMIN mettendo la stringa
[code]if(PlayerInfo[playerid][Admin] >=livello)

il livello lo settate voi, qualsiasi numero volete, basta che dovete essere admin di quel livello per poter fare il comando

se notate ho messo in tutti i SendClientMessage la parola colore, voi al posto di quella parola, mettete il colore che volete

Messaggio modificato da [F12] phantom il 24 giugno 2010 - 18:05

HostName: [ITA][VIP]Dream Cityt RP[ITA] by pisa city!
Address: 95.110.228.30:7777
Players: 38 / 50
Ping: 40
Mode: RolePlay v 0.4
Map: San Andreas

Siamo in cerca di CF
0

#2 L'utente è offline   Peppinux aka Peppe_Stasu 

  • Sicario
  • Gruppo: Utenti
  • Messaggi: 2056
  • Iscritto il: 16/04/10
  • GTA Preferito:GTA: San Andreas

Inviato il 26 giugno 2010 - 19:26

1.Questo Tutorial è stato scritto originariamente da Zimon95 aka Simon_Diesel sul forum ufficiale di SA:MP che purtroppo è chiuso ma ti avrei voluto linkare la discussione e tu lo stai spacciando per tuo dato che non vedo l'ombra di un misero credito

2.Non l'hai neanche copiato bene dato che c'è un po' di confusione per esempio hai scritto newLoggato vabbe errore di battitura si può accettare ma nell'enum hai solo messo Admin di cui avevi parlato soltanto in seguito

3.In questo forum non ci sono solo scripter che comunque le cose basilari le capiscono ma anche persone alle prime armi con Pawno e se tu dici di mettere
#include <dini>
loro lo fanno quindi sarebbe meglio precisare che si deve scaricare l'include "dini.inc" creato da DracoBlue e di metterlo in "/pawno/include"

4.Non mi sto mettendo contro di te ma voglio soltanto dire le cose come stanno, non voglio farmi nemici

5.Comunque grazie per il sistema di salvataggio Adminlevel che anche se scritto un po' confusionario e anche se l'ho dovuto editare, almeno su Pawno, non da nessun problema, 0 Errori, 0 Warnings

6.Per finire ti consiglio di editare la guida seguendo tutto ciò che ti ho detto io quindi precisando alcune cose e mettendo i crediti

Bye Bye :mellow:
0

#3 L'utente è offline   [F12] phantom 

  • Borsaiolo
  • Gruppo: Utenti
  • Messaggi: 465
  • Iscritto il: 16/04/10

Inviato il 27 giugno 2010 - 11:11

infatti ho dimenticato di dire che lo portata qui, togliendo del tempo di troppo comunque mi scuso con chi ha frainteso la mia dimenticanza
HostName: [ITA][VIP]Dream Cityt RP[ITA] by pisa city!
Address: 95.110.228.30:7777
Players: 38 / 50
Ping: 40
Mode: RolePlay v 0.4
Map: San Andreas

Siamo in cerca di CF
0

#4 L'utente è offline   Peppinux aka Peppe_Stasu 

  • Sicario
  • Gruppo: Utenti
  • Messaggi: 2056
  • Iscritto il: 16/04/10
  • GTA Preferito:GTA: San Andreas

Inviato il 28 giugno 2010 - 12:12

Ti consiglio di fixare tutte le cose messe in confusione in questo tutorial ;)
0

#5 L'utente è offline   [SSS]Tim 

  • Vandalo
  • Gruppo: Utenti
  • Messaggi: 170
  • Iscritto il: 16/04/10

Inviato il 28 giugno 2010 - 20:36

Volevo dire che se la mia password é 1234 faccio /login 1234 e mi va, fin qui tutto normale ma se faccio per esempio /login 1 va lo stesso :blink: sapete dirmi xk?
0

#6 L'utente è offline   [F12] phantom 

  • Borsaiolo
  • Gruppo: Utenti
  • Messaggi: 465
  • Iscritto il: 16/04/10

Inviato il 29 giugno 2010 - 06:31

perchè non è stato messo il limite minimo alla password che puoi scegliere
HostName: [ITA][VIP]Dream Cityt RP[ITA] by pisa city!
Address: 95.110.228.30:7777
Players: 38 / 50
Ping: 40
Mode: RolePlay v 0.4
Map: San Andreas

Siamo in cerca di CF
0

#7 L'utente è offline   [SSS]Tim 

  • Vandalo
  • Gruppo: Utenti
  • Messaggi: 170
  • Iscritto il: 16/04/10

Inviato il 29 giugno 2010 - 09:15

e cm faccio?
0

#8 L'utente è offline   Peppinux aka Peppe_Stasu 

  • Sicario
  • Gruppo: Utenti
  • Messaggi: 2056
  • Iscritto il: 16/04/10
  • GTA Preferito:GTA: San Andreas

Inviato il 29 giugno 2010 - 10:09

Non credo sia questo... Non c'entra il limite col fatto che possa loggare con una password differente :blink: Dopo faccio io una guida con lo stesso sistema ma fixato ;) Mettendo tutte le fonti ecc. ;)

EDIT:Ma anche no. Scusate non lo potrò fare :|

Messaggio modificato da peppinux aka Peppe_Stasu il 29 giugno 2010 - 14:24

0

#9 L'utente è offline   BigIlBoss 

  • Cleptomane
  • Gruppo: Utenti
  • Messaggi: 140
  • Iscritto il: 01/08/10
  • Provenienza:Las Venturas, la capitale dei crimini
  • GTA Preferito:GTA: San Andreas

Inviato il 07 settembre 2010 - 11:24

Quote

public SaveAccounts()
{
for(new i = 0; i < MAX_PLAYERS; i++)
{
if(IsPlayerConnected(i))
{
if(Loggato[i] == 1)
{
SaveAccount(i);
}
}
}
}

SaveAccount(playerid)
{
new name[24], file[128];
GetPlayerName(playerid, name, sizeof(name));
format(file,sizeof(file),"Utenti/%s.ini",name);
//Impostazioni
dini_IntSet(file, "Soldi",GetPlayerMoney(playerid));
dini_IntSet(file,"Skin", PlayerInfo[playerid][Skin]);
return 1;
}


Mi esce sempre questo errore:

C:\Documents and Settings\Micky\Documenti\SAMP\samp03bsvr_R2_win32\gamemodes\Imperial.pwn(659) : error 017: undefined symbol "Skin"
0

#10 L'utente è offline   _All3Xz_ 

  • Criminale
  • Gruppo: Utenti
  • Messaggi: 1512
  • Iscritto il: 05/01/09
  • GTA Preferito:GTA: San Andreas

Inviato il 07 settembre 2010 - 11:38

:gh: -.- forse nell'enum dovrai mettere Skin ? :m:
My Works
[FS]_All3Xz_ Anti-Cheat 4
[FS]_All3Xz_ Anti-Cheat 7
[FS]_All3Xz_ Anti-Cheat 8
[GM] PVCM Training 0.? (MySQL)
[APP]_All3Xz_ NPC Generator
[GUIDA] Leggere da file usando dini
[GUIDA] Scripting GTA:IV - Callbacks
[GM] PVCM Training 1 (MySQL)
[GM] PVCM A/D
[GUIDA] Leggere da file usandi dini 2
0

#11 L'utente è offline   Peppinux aka Peppe_Stasu 

  • Sicario
  • Gruppo: Utenti
  • Messaggi: 2056
  • Iscritto il: 16/04/10
  • GTA Preferito:GTA: San Andreas

Inviato il 07 settembre 2010 - 13:51

Comunque la guida è fatta male...
0

#12 L'utente è offline   Venth 

  • Vandalo
  • Gruppo: Utenti
  • Messaggi: 61
  • Iscritto il: 26/03/11
  • GTA Preferito:GTA: San Andreas

Inviato il 06 aprile 2011 - 22:12

scusate ma perchè mi dà errori?
SCRIPTER DI GAMEMODE DM/DRIFT/STUNT SA:MP a PAGAMENTO

MAPPER SA:MP A PAGAMENTO

PER INFO SUI PREZZI CONTATTAMI SU SKYPE: antonio_nordon


O MSN
mustang39@hotmail.it
0

#13 L'utente è offline   Francesco_Ronaldo 

  • Delinquente
  • Gruppo: Utenti
  • Messaggi: 1027
  • Iscritto il: 22/02/10
  • Provenienza:Cagliari
  • GTA Preferito:GTA: San Andreas

Inviato il 07 aprile 2011 - 13:48

Perchè la guida fa pena, te ne linko una sul topic che hai aperto.
Firma fuori dai limiti del regolamento (troppo alta); codice originale:
[img]http://www.siamotuttiallenatori.it/wp-content/uploads/2012/08/borussia-dortmund.jpg[/img]
0

#14 L'utente è offline   Peppinux aka Peppe_Stasu 

  • Sicario
  • Gruppo: Utenti
  • Messaggi: 2056
  • Iscritto il: 16/04/10
  • GTA Preferito:GTA: San Andreas

Inviato il 08 aprile 2011 - 21:48

Sta guida è fatta da cani..
0

#15 L'utente è offline   Venth 

  • Vandalo
  • Gruppo: Utenti
  • Messaggi: 61
  • Iscritto il: 26/03/11
  • GTA Preferito:GTA: San Andreas

Inviato il 09 aprile 2011 - 12:24

mi rispondete agli errori?
SCRIPTER DI GAMEMODE DM/DRIFT/STUNT SA:MP a PAGAMENTO

MAPPER SA:MP A PAGAMENTO

PER INFO SUI PREZZI CONTATTAMI SU SKYPE: antonio_nordon


O MSN
mustang39@hotmail.it
0

#16 L'utente è offline   Phanto90 

  • Teppista
  • Gruppo: Utenti
  • Messaggi: 528
  • Iscritto il: 31/12/09
  • GTA Preferito:GTA: San Andreas

Inviato il 12 giugno 2011 - 09:18

enum Info
{
    Admin,
}
new PlayerInfo[MAX_PLAYERS][Info];

Che insensatezza è mai questa?
Crei un array
Loggato[MAX_PLAYERS]
e poi un'altro dove enumeri un solo elemento D:?
enum Info
{
   Admin,Loggato
}
new PlayerInfo[MAX_PLAYERS][Info];


Iniziamo a creare meno variaibili.
La guida è davvero fatta con i piedi a mio parere.
Immagine PostataImmagine Postata Immagine Postata Immagine Postata


Immagine Postata Immagine Postata
0

#17 L'utente è offline   Peppinux aka Peppe_Stasu 

  • Sicario
  • Gruppo: Utenti
  • Messaggi: 2056
  • Iscritto il: 16/04/10
  • GTA Preferito:GTA: San Andreas

Inviato il 16 giugno 2011 - 15:13

Eliminala.
0

Pagina 1 di 1
  • Non puoi iniziare una nuova discussione
  • Non puoi rispondere a questa discussione

1 utenti stanno leggendo questa discussione
0 utenti, 1 ospiti, 0 utenti anonimi