Zaloguj się by uzyskać pełen dostęp. Nie masz jeszcze konta? Założ je już teraz w kilka sekund.

Wysłany: 2017-04-01, 15:11


Michatex

PAWN Dev.






Wiek: 24
Na forum: 3848 dni
Posty: 90
Nick w MP: Michatex

Piwa: 1153

Respekt: 80

Witajcie. Rozpocz??em prac? nad nowym serwerem Role-Play dla platformy SA-MP.

Gdy uruchamiam serwer z map?, w kt?rej znajduje si? ten skrypt, a nast?pnie do??cz? do niego nic si? nie wy?wietla.

Jestem pocz?tkuj?cy, co mog?em zrobi? ?le?

Poni?ej znajduje si? ca?y skrypt u?yty na serwerze.

Pawn

#include <a_samp>
#include <colors>
#include <dcmd>
#include <dini>

main
()
{}

#define DIALOGLOGIN 1
#define DIALOGREGISTER 2

public OnGameModeInit()
{
    print ("**** Poland Truck Role-Play ****");
    print ("**** Poland Truck Role-Play ****");
    print ("**** Poland Truck Role-Play ****");
    AddPlayerClass(0,0.0,0.0,0.0,0.0,0,0,0,0,0,0);
    return 1;
}

public OnPlayerSpawn(playerid)
{

    return 1;
}

public OnPlayerRequestClass(playeridclassid)
{
    SpawnPlayer(playerid);
    TogglePlayerSpectating(playeridtrue);
    new string[500];
    new Gname[MAX_PLAYER_NAME];
    GetPlayerName(playeridGnamesizeof(Gname));
    format(stringsizeof(string), "/acconts/%s.ini"Gname);
    if(dini_Exists(string))
    {
        format(stringsizeof(string), "{FFFFFF}Witaj %s na naszym serwerze. \nKonto o podanym pseudonimie zosta?o pomy?lnie znalezione w naszej bazie danych. \nWpisz poni?ej has?o, a nast?pnie naci?nij przycisk 'Zaloguj'."Gname);
        ShowPlayerDialog(playeridDIALOGLOGINDIALOG_STYLE_PASSWORD""string"Zaloguj""Wyjd?");
    }
    else
    {
        format(stringsizeof(string), "{FFFFFF}Witaj %s na naszym serwerze. \nKonto o podanym pseudonimie nie zosta?o znalezione w naszej bazie danych. \nWpisz poni?ej has?o, a nast?pnie naci?nij przycisk 'Zarejestruj'."Gname);
        ShowPlayerDialog(playeridDIALOGREGISTERDIALOG_STYLE_PASSWORD""string"Zarejestruj""Wyjd?");
    }
    return 1;
}

public OnDialogResponse(playeriddialogidresponselistiteminputtext[])
{
    if(dialogid == DIALOGREGISTER)
    {
        if(response)
        {
            if(strlen(inputtext))
            {
                if(strlen(inputtext) >= 8)
                {
                    Register(playeridinputtext);
                }
                else
                {
                    new string[500];
                    new Gname[MAX_PLAYER_NAME];
                    GetPlayerName(playeridGnamesizeof(Gname));
                    SendClientMessage(playeridCOLOR_RED"Has?o musi posiada? wi?cej ni? osiem znak?w.");
                    format(stringsizeof(string), "{FFFFFF}Witaj %s na naszym serwerze. \nKonto o podanym pseudonimie nie zosta?o znalezione w naszej bazie danych. \nWpisz poni?ej has?o, a nast?pnie naci?nij przycisk 'Zarejestruj'."Gname);
                    ShowPlayerDialog(playeridDIALOGREGISTERDIALOG_STYLE_PASSWORD""string"Zarejestruj""Wyjd?");
                }

            }
            else
            {
                new string[500];
                new Gname[MAX_PLAYER_NAME];
                GetPlayerName(playeridGnamesizeof(Gname));
                SendClientMessage(playeridCOLOR_RED"Has?o musi posiada? wi?cej ni? osiem znak?w.");
                format(stringsizeof(string), "{FFFFFF}Witaj %s na naszym serwerze. \nKonto o podanym pseudonimie nie zosta?o znalezione w naszej bazie danych. \nWpisz poni?ej has?o, a nast?pnie naci?nij przycisk 'Zarejestruj'."Gname);
                ShowPlayerDialog(playeridDIALOGREGISTERDIALOG_STYLE_PASSWORD""string"Zarejestruj""Wyjd?");
            }
        }
        else
        {
            Kick(playerid);
        }
        return 1;
    }
    if (dialogid == DIALOGLOGIN)
    {
        if (response)
        {
            if(strlen(inputtext))
            {
                new string[500], PlayerPassword[300];
                new Gname[MAX_PLAYER_NAME];
                GetPlayerName(playeridGnamesizeof(Gname));
                format(stringsizeof(string), "/acconts/%s.ini"Gname);
                PlayerPassword dini_Get(string"Password");
                if(!strcmp(PlayerPasswordinputtextfalse))
                {
                    Login(playerid);
                    SendClientMessage(playeridCOLOR_BLUE"Zalogowano pomy?lnie.");
                }
                else
                {
                    SendClientMessage(playeridCOLOR_RED"Has?o jest b??dne.");
                    format(stringsizeof(string), "{FFFFFF}Witaj %s na naszym serwerze. \nKonto o podanym pseudonimie zosta?o pomy?lnie znalezione w naszej bazie danych. \nWpisz poni?ej has?o, a nast?pnie naci?nij przycisk 'Zaloguj'."Gname);
                    ShowPlayerDialog(playeridDIALOGLOGINDIALOG_STYLE_PASSWORD""string"Zaloguj""Wyjd?");
                }
            }
            else
            {
                new string[500];
                new Gname[MAX_PLAYER_NAME];
                GetPlayerName(playeridGnamesizeof(Gname));
                SendClientMessage(playeridCOLOR_RED"Nic nie zosta?o wpisane.");
                format(stringsizeof(string), "{FFFFFF}Witaj %s na naszym serwerze. \nKonto o podanym pseudonimie zosta?o pomy?lnie znalezione w naszej bazie danych. \nWpisz poni?ej has?o, a nast?pnie naci?nij przycisk 'Zaloguj'."Gname);
                ShowPlayerDialog(playeridDIALOGLOGINDIALOG_STYLE_PASSWORD""string"Zaloguj""Wyjd?");
            }
        }
        else
        {
            Kick(playerid);
        }
        return 1;
    }
    return 1;
}

public OnPlayerRequestSpawn(playerid)
{

    return 0;
}

stock Register(playeridpassword[])
{
    new string[500];
    new Gname[MAX_PLAYER_NAME];
    GetPlayerName(playeridGnamesizeof(Gname));
    format(stringsizeof(string), "/acconts/%s.ini"Gname);
    dini_Create(string);
    dini_Set(string"Password"password);
    SendClientMessage(playeridCOLOR_BLUE"Konto zosta?o pomy?lnie za?o?one.");
    return 1;
}

stock Login(playerid)
{
    new string[500];
    new Gname[MAX_PLAYER_NAME];
    GetPlayerName(playeridGnamesizeof(Gname));
    format(stringsizeof(string), "/acconts/%s.ini"Gname);
    return 1;
}


Osob?, kt?ra znajdzie w kodzie problem zostanie nagrodzona punktem respektu oraz piwem.

Postaw piwo autorowi tego posta
 

 
Wysłany: 2017-04-01, 19:36


borsuk







Wiek: 17
Na forum: 3547 dni
Posty: 468

Piwa: 15621

Respekt: 412
Respekt: 412

Ostrzeżeń: 80%
Pewnie masz jaki? skrypt kt?ry korzysta z streamera lub innego pluginu, musisz go zaladowac

Postaw piwo autorowi tego posta
 

 
Więcej szczegółów
Wystawiono 1 piw(a):
Michatex
Wysłany: 2017-04-01, 20:06


Michatex

PAWN Dev.






Wiek: 24
Na forum: 3848 dni
Posty: 90
Nick w MP: Michatex

Piwa: 1153

Respekt: 80

Gdy za?adowa?em "Streamer" okaza?o si?, ?e mog? jedynie wybra? posta?, a nast?pnie wykona? odrodzenie. Kod za ka?dym razem zostaje pomijany.

Podpis
Jeśli Ci w czymś pomogłem nie zapomnij o wystawieniu PIWA w ramach podziękowań. Mile widziany również jest RESPEKT.
Postaw piwo autorowi tego posta
 

 
Wysłany: 2017-04-01, 20:51


borsuk







Wiek: 17
Na forum: 3547 dni
Posty: 468

Piwa: 15621

Respekt: 412
Respekt: 412

Ostrzeżeń: 80%
Na twoim miejscu przeni?s? bym ten kod to OnPlayerConnect ;)

A i nie rob takich duzych stringow:
new string[500];
jezeli /acconuts/ ma 9 znakow + max 24 znaki nazwy gracza + 4 z formatem pliku = 37
new string[37];

Ostatnio zmieniony przez borsuk 2017-04-02, 18:29, w całości zmieniany 1 raz  
Postaw piwo autorowi tego posta
 

 
Wysłany: 2017-04-02, 16:49


Virex_PL

Głos rozsądku






Wiek: 26
Na forum: 4187 dni
Posty: 170
Nick w MP: Virex_PL

Piwa: 31

Respekt: 120
Respekt: 120

Mo?na te? u?y? licznika liter potem dodac +- 10 do string?w ;)

Postaw piwo autorowi tego posta
 

 
Wysłany: 2017-04-02, 18:32


borsuk







Wiek: 17
Na forum: 3547 dni
Posty: 468

Piwa: 15621

Respekt: 412
Respekt: 412

Ostrzeżeń: 80%
I nie uzywaj dcmd jest przestarza?y polecam ci zcmd jest bardziej prosty
Pawn

// ZCMD
CMD:komenda(playeridparams[])
{
//co ma sie dziac
return 1;
}

// DCMD
public OnPlayerCommandText(playeridcmdtext[])
{
dcmd(cos, ...);
return 0;
}

dcmd_cos(playeridparams[])
{
// co ma sie dziac
return 1;
}


Zcmd o wiele latwiejsze i zuzywa mniej kodu :D

Postaw piwo autorowi tego posta
 

 
Wysłany: 2017-04-02, 22:00


MG303







Wiek: 30
Na forum: 6418 dni
Posty: 654

Piwa: 2990

Respekt: 231,6
Respekt: 231,6Respekt: 231,6

Folder w kodzie masz /acconts/, podejrzewam ?e zrobi?e? liter?wk? i po prostu nic nie wczytuje xD

Postaw piwo autorowi tego posta
 

 
Więcej szczegółów
Wystawiono 1 piw(a):
Michatex
Wysłany: 2017-04-03, 19:21


Michatex

PAWN Dev.






Wiek: 24
Na forum: 3848 dni
Posty: 90
Nick w MP: Michatex

Piwa: 1153

Respekt: 80

Rozwi?za?em. Przyczyna znajdowa?a si? z mojej strony. Zostawi?em do edytowania pewne linijki, a mianowicie to:

Pawn

{
        format(stringsizeof(string), "{FFFFFF}Witaj %s na naszym serwerze. \nKonto o podanym pseudonimie zosta?o pomy?lnie znalezione w naszej bazie danych. \nWpisz poni?ej has?o, a nast?pnie naci?nij przycisk 'Zaloguj'."Gname);
        ShowPlayerDialog(playeridDIALOGLOGINDIALOG_STYLE_PASSWORD""string"Zaloguj""Wyjd?");
    }


Po DIALOG_STYLE_PASSWORD nale?a?o doda? napis, pole zosta?o puste, a wi?c skrypt nie zostawa? wywo?any.

Poprawnie powinno to wygl?da? nast?puj?co:

[PAWN]
Pawn

{
        format(stringsizeof(string), "{FFFFFF}Witaj %s na naszym serwerze. \nKonto o podanym pseudonimie zosta?o pomy?lnie znalezione w naszej bazie danych. \nWpisz poni?ej has?o, a nast?pnie naci?nij przycisk 'Zaloguj'."Gname);
        ShowPlayerDialog(playeridDIALOGLOGINDIALOG_STYLE_PASSWORD"Logowanie"string"Zaloguj""Wyjd?");
    }


Dzi?kuj? za pr?b? udzielenia pomocy.

Podpis
Jeśli Ci w czymś pomogłem nie zapomnij o wystawieniu PIWA w ramach podziękowań. Mile widziany również jest RESPEKT.
Postaw piwo autorowi tego posta
 

 
Tagi: system :: rejestracji :: oraz :: logowania
Anonymous





Na forum: 245 dni
Posty: 1



Anonymous Koniecznie zajrzyj na:






Skocz do:  
Wyświetl posty z ostatnich:   
GTAONLINE.PL » JĘZYKI PROGRAMOWANIA » PAWN » System Rejestracji oraz Logowania Ten temat jest zablokowany bez możliwości zmiany postów lub pisania odpowiedzi

Nie możesz pisać nowych tematów
Nie możesz odpowiadać w tematach
Nie możesz zmieniać swoich postów
Nie możesz usuwać swoich postów
Nie możesz głosować w ankietach
Dodaj temat do Ulubionych
Wersja do druku