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

Wysłany: 2012-11-05, 18:48


VisztaPL

Producent Muzyczny






Wiek: 29
Na forum: 5175 dni
Posty: 57
Nick w MP: VisztaPL

Piwa: 461

Respekt: 83,6

No wi?c, tak jak w temacie.
Jak zrobi? autoryzacj? do pliku. Co? takiego jak w FullDM.

Jest to troch? roboty, ale prosi?bym o pomoc. (Dam 3 piwka)

Co trzeba zrobi??

Postaw piwo autorowi tego posta
 

 
Wysłany: 2012-11-05, 19:44


Combacior







Wiek: 29
Na forum: 5796 dni
Posty: 1516

Piwa: 2161

Respekt: 1060
Respekt: 1060

Ostrzeżeń: 20%
Zale?y w jaki spos?b chcesz to zabezpieczy?: czy chcesz sprawdzi? czy istnieje plik z licencj?, czy jaka? zawarto?? w pliku czy jeszcze co? innego.

Postaw piwo autorowi tego posta
 

 
Wysłany: 2012-11-05, 20:02


Pavlo856







Wiek: 32
Na forum: 5445 dni
Posty: 75

Piwa: 40

Respekt: 84

pod??czam si? do tematu.. chcia?bym aby by?a sprawdzana zawartosc w pliku

Postaw piwo autorowi tego posta
 

 
Wysłany: 2012-11-05, 20:41


Combacior







Wiek: 29
Na forum: 5796 dni
Posty: 1516

Piwa: 2161

Respekt: 1060
Respekt: 1060

Ostrzeżeń: 20%
Kod:

new LicencjaString[2][128];

format(LicencjaString[0], 128, "www.google.pl");
format(LicencjaString[1], 128, "Gamemod wykonany przez Nick");


Mamy ju? sformatowane stringi, kt?re maj? si? znajdowa? w pliku. Teraz przejd?my do tworzenia pliku i zawarto?ci w nim. Pos?u?? si? DINI.

Kod:

new tmp[128];

tmp = dini_Get("Licencja.ini", "WWW");

if(strcmp(tmp, LicencjaString[0], true) == 0)
{
print("Znalaz?em w pliku informacje o stronie www.google.pl");
}
else return SendRconCommand("exit");

tmp = dini_Get("Licencja.ini", "Autor");

if(strcmp(tmp, LicencjaString[1], true) == 0)
{
print("Znalaz?em w pliku informacje o autorze gamemode");
}
else return SendRconCommand("exit");


Komenda exit pos?u?y jako odmowa licencji i wy??czy serwer. Teraz w folderze scriptfiles tworzysz plik o nazwie Licencja.ini do kt?rego wklej poni?szy kod

Kod:

WWW=www.google.pl
Autor=Gamemod wykonany przez Nick


Je?eli taki kod nie b?dzie znajdowa? si? w pliku, konsola serwera powinna si? zamkn??. Sprawd? czy dzia?a ew. napisz jak b?d? problemy.

Postaw piwo autorowi tego posta
 

 
Wysłany: 2012-11-06, 18:21


VisztaPL

Producent Muzyczny






Wiek: 29
Na forum: 5175 dni
Posty: 57
Nick w MP: VisztaPL

Piwa: 461

Respekt: 83,6

G??wnie to mi chodzi o autoryzacje RCON'a, Admina i Juniora.

Gdy mam takie co? na Administratora:

Kod:


if (strcmp(cmd, "/alogin_83j4tx8j38", true) == 0)
{
if(IsPlayerConnected(playerid))
{
if(InfoOGraczu[playerid][dAdmek] == 0)
{
InfoOGraczu[playerid][dAdmek] = 1;
SendClientMessage(playerid, COLOR_WHITE, "Zalogowa?e? si? jako Administrator.");
return 1;
}
else if(InfoOGraczu[playerid][dAdmek] == 1)
{
SendClientMessage(playerid, COLOR_LIGHTBLUE2, "Jeste? aktualnie na s?u?bie Administratora.");
return 1;
}
}
return 1;
}
if (strcmp(cmd, "/alogout", true) == 0)
{
if(IsPlayerConnected(playerid))
{
if(InfoOGraczu[playerid][dAdmek] == 1)
{
InfoOGraczu[playerid][dAdmek] = 0;
SendClientMessage(playerid, COLOR_WHITE, "Zako?czy?e? s?u?b? Administratora.");
return 1;
}
else if(InfoOGraczu[playerid][dAdmek] == 0)
{
SendClientMessage(playerid, COLOR_LIGHTBLUE2, "Nie jeste? aktualnie na s?u?bie Administratora.");
return 1;
}
}
return 1;
}


To jak doda? jaki? plik tekstowy, ?eby nada? nicki (autoryzacje).
Bo chcia?bym tak, ?e jak nie b?dzie tego gracza w tym spisie, to go wyrzuca i pisze 'Brak Autoryzacji.'

(Chcia?bym w jednym pliku. Dla Rcona: Nick=4, Dla Admina=3, Dla Juniora(te? jest w mapie)=2)

Postaw piwo autorowi tego posta
 

 
Wysłany: 2012-11-06, 20:01


ToxiC.







Wiek: 28
Na forum: 5246 dni
Posty: 3792

Piwa: 8590

Respekt: 1143,8
Respekt: 1143,8

http://www.gtaonline.pl/i...ini-vt69141.htm

Tutaj tak mo?esz zrobi?:

Kod:

if (strcmp(cmd, "/alogin", true) == 0)
{
new Name[24];
GetPlayerName(playerid, Name, 24);
format(string, sizeof(string), "admini/%s.txt",Name);
if(dini_Exists(string))
{
if(IsPlayerConnected(playerid))
{
if(InfoOGraczu[playerid][dAdmek] == 0)
{
InfoOGraczu[playerid][dAdmek] = 1;
SendClientMessage(playerid, COLOR_WHITE, "Zalogowa?e? si? jako Administrator.");
return 1;
}
else if(InfoOGraczu[playerid][dAdmek] == 1)
{
SendClientMessage(playerid, COLOR_LIGHTBLUE2, "Jeste? aktualnie na s?u?bie Administratora.");
return 1;
}
}
}
return 1;
}


I teraz: w scriptfiles zr?b folder "admini"
I zr?b np plik tekstowy i jako jego nazwe daj nick Admina.
Po wpisaniu komendy /alogin, sprawdzi czy takowy gracz jest Adminem, je?li jest tam plik z jego nickiem loguje je?li nie nic si? nie dzieje.

Postaw piwo autorowi tego posta
 

 
Wysłany: 2012-11-07, 16:41


VisztaPL

Producent Muzyczny






Wiek: 29
Na forum: 5175 dni
Posty: 57
Nick w MP: VisztaPL

Piwa: 461

Respekt: 83,6

A jak doda? else, ?eby wyrzuca?o gracza, poniewa? nie ma autoryzacji?


//Edit:
O i jeszcze autoryzacja RCON'a.

Postaw piwo autorowi tego posta
 

 
Wysłany: 2012-11-07, 20:36


ToxiC.







Wiek: 28
Na forum: 5246 dni
Posty: 3792

Piwa: 8590

Respekt: 1143,8
Respekt: 1143,8

Co do rcona to poszukaj publica:

Kod:


public OnRconLoginAttempt(ip[], password[], success)


i je?eli znajdziesz to w nim:

Kod:


if(success)
{
new Name[24];
GetPlayerName(playerid, Name, 24);
format(string, sizeof(string), "admini/%s.txt",Name);
if(dini_Exists(string))
{
SendClientMessage(playerid, -1, "Zalogowano na Admina RCON!");
}
else
{
SendClientMessage(playerid, -1, "Brak uprawnien - Kick!");
}
}


Czyli ca?y twoj public:

Kod:


public OnRconLoginAttempt(ip[], password[], success)
{
if(success)
{
new Name[24],
string[100];
GetPlayerName(playerid, Name, 24);
format(string, sizeof(string), "admini/%s.txt",Name);
if(dini_Exists(string))
{
SendClientMessage(playerid, -1, "Zalogowano na Admina RCON!");
}
else
{
SendClientMessage(playerid, -1, "Brak uprawnien - Kick!");
Kick(playerid); //kickuje!
}
}
return 1;
}


Postaw piwo autorowi tego posta
 

 
Tagi: autoryzacja :: mapy.
Anonymous





Na forum: 245 dni
Posty: 1



Anonymous Koniecznie zajrzyj na:






Skocz do:  
Wyświetl posty z ostatnich:   
GTAONLINE.PL » JĘZYKI PROGRAMOWANIA » PAWN 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