Wysłany: 2014-10-05, 11:37
KaNdY
Wiek: 29 Na forum: 4487 dni Posty: 53
Nick w MP: KaNdY
Piwa : 1
Witam. Zrobi?em sobie komend?, kt?ra nadaje np. admina, czy tam ViPa. Komenda jest na m?j i kolegi nick. Teraz mam pro?b?. M?g?by kto? j? przerobi?, aby zamiast ID gracza trzeba by?o wpisa? nick z uwzgl?dnieniem du?ych liter, kropek, etc. I je?li go?cia NIE b?dzie na serverze, to r?wnie? mo?na da?. Je?li wbije, to b?dzie mia? admina.
Oto moja komenda:
Kod:
CMD:da(playerid, params[]) //Daj admina (KaNdY & Sly)
{
new leader;
new strcatx[256];
new name[31];
leader = strval(params);
if(!IsPlayerAdmin(playerid)) return SendClientMessage(playerid, -1, "{009933}»American Truck SA-MP«{FFFFFF} Nie jeste? Administratorem.");
if(isnull(params)) return SendClientMessage(playerid, -1, "{009933}»American Truck SA-MP«{FFFFFF} Komenda na dodanie administratora - /da [ID]");
if(!IsPlayerConnected(leader)) return SendClientMessage(playerid, -1, "{009933}»American Truck SA-MP«{FFFFFF} Niema gracza o podanym ID.");
Admin[leader] = 1;
GetPlayerName(leader, name, 31);
format(strcatx, 256, "{009933}»American Truck SA-MP«{FFFFFF} Da?e? graczowi %s range administartora.",name);
SendClientMessage(playerid, -1, strcatx);
SendClientMessage(leader, -1, "{009933}===================================================");
SendClientMessage(leader, -1, "{009933}»American Truck SA-MP«{FFFFFF} Zosta?e? dodany do rangi administartor");
SendClientMessage(leader, -1, "{009933}===================================================");
return 1;
}
Wysłany: 2014-10-05, 13:36
ToxiC.
Wiek: 28 Na forum: 5246 dni Posty: 3792
Piwa : 8590
Wysłany: 2014-10-05, 13:57
KaNdY
Wiek: 29 Na forum: 4487 dni Posty: 53
Nick w MP: KaNdY
Piwa : 1
Wysłany: 2014-10-05, 16:03
ToxiC.
Wiek: 28 Na forum: 5246 dni Posty: 3792
Piwa : 8590
Pawn
CMD : da2 ( playerid , params []) //Daj admina (KaNdY & Sly)
{
new strcatx [ 256 ];
new name [ 31 ];
if(! IsPlayerAdmin ( playerid )) return SendClientMessage ( playerid , - 1 , "{009933}»American Truck SA-MP«{FFFFFF} Nie jeste? Administratorem." );
if( isnull ( params ) || strlen ( params ) > MAX_PLAYER_NAME ) return SendClientMessage ( playerid , - 1 , "/da2 [nick]" );
GetPlayerName ( params , name , 31 );
new xd [ 80 ];
format ( xd , 80 , "Admini/%s.ini" , name );
dini_Create ( xd );
format ( strcatx , 256 , "{009933}»American Truck SA-MP«{FFFFFF} Da?e? graczowi %s range administartora." , name );
SendClientMessage ( playerid , - 1 , strcatx );
return 1 ;
}
W Scriptfiles stw?rz folder Admini
Odczyytwanie;'
Pawn
new n_adm [ 32 ];
GetPlayerName ( playerid , n_adm , 32 );
new s [ 90 ];
format ( s , sizeof ( s ), "Admini/%s.ini" );
if( dini_Exists ( s ))
{
Admin [ playerid ] = 1 ;
return 1 ;
}
Chiba tak. To wyzej dajesz w OnPlayerConnect
tylko na samym koncu, przed zerowaniem zmiennej admin
Wysłany: 2014-10-05, 17:03
KaNdY
Wiek: 29 Na forum: 4487 dni Posty: 53
Nick w MP: KaNdY
Piwa : 1
Kod:
C:\Users\szymom\Desktop\Server\gamemodes\drift1.pwn(727) : error 035: argument type mismatch (argument 1)
Oto b??d a tu linijka:
Kod:
GetPlayerName(params, name, 31);
Nie chc? robi? osobnego tematu, to zapytam tutaj. Robi? klikane TD i mam taki b??d:
Kod:
C:\Users\szymom\Desktop\Server\gamemodes\drift1.pwn(616) : warning 202: number of arguments does not match definition
A oto linijka:
Kod:
CancelSelectTextDraw(playerid, 556622);
I mam pytanko. Zrobi?by? jeszcze na usuni?cie admina?
Je?li Ci pomo?e masz star? komend?:
Kod:
CMD:za(playerid, params[]) //Zabierz admina (KaNdY & Sly)
{
new leader;
new strcatx[256];
new name[31];
leader = strval(params);
if(!IsPlayerAdmin(playerid)) return SendClientMessage(playerid, -1, "{009933}»American Truck SA-MP«{FFFFFF} Nie jeste? Administratorem.");
if(isnull(params)) return SendClientMessage(playerid, -1, "{009933}»American Truck SA-MP«{FFFFFF} Komenda na zabranie Vadministratora - /za [ID]");
if(!IsPlayerConnected(leader)) return SendClientMessage(playerid, -1, "{009933}»American Truck SA-MP«{FFFFFF} Niema gracza o podanym ID.");
Admin[leader] = 0;
GetPlayerName(leader, name, 31);
format(strcatx, 256, "{009933}»American Truck SA-MP«{FFFFFF} Zabra?e? graczowi %s range administratora.",name);
SendClientMessage(playerid, -1, strcatx);
SendClientMessage(leader, -1, "{009933}===================================================");
SendClientMessage(leader, -1, "{009933}»American Truck SA-MP«{FFFFFF} Zabrali Ci range administartora.");
SendClientMessage(leader, -1, "{009933}===================================================");
return 1;
}
Wysłany: 2014-10-05, 17:10
ToxiC.
Wiek: 28 Na forum: 5246 dni Posty: 3792
Piwa : 8590
Poomy?ka.
Pawn
CMD : da2 ( playerid , params []) //Daj admina (KaNdY & Sly)
{
new strcatx [ 256 ];
if(! IsPlayerAdmin ( playerid )) return SendClientMessage ( playerid , - 1 , "{009933}»American Truck SA-MP«{FFFFFF} Nie jeste? Administratorem." );
if( isnull ( params ) || strlen ( params ) > MAX_PLAYER_NAME ) return SendClientMessage ( playerid , - 1 , "/da2 [nick]" );
new xd [ 80 ];
format ( xd , 80 , "Admini/%s.ini" , params );
dini_Create ( xd );
format ( strcatx , 256 , "{009933}»American Truck SA-MP«{FFFFFF} Da?e? graczowi %s range administartora." , params );
SendClientMessage ( playerid , - 1 , strcatx );
return 1 ;
}
[ Dodano : 2014-10-05, 17:12 ]
CancelSelectTextDraw(playerid, 556622); ?
http://wiki.sa-mp.com/wiki/CancelSelectTextDraw
Poprawnie:
Pawn CancelSelectTextDraw ( playerid );
[ Dodano : 2014-10-05, 17:16 ]
zabieranie:
Pawn
CMD : za ( playerid , params []) //Daj admina (KaNdY & Sly)
{
new strcatx [ 256 ];
if(! IsPlayerAdmin ( playerid )) return SendClientMessage ( playerid , - 1 , "{009933}»American Truck SA-MP«{FFFFFF} Nie jeste? Administratorem." );
if( isnull ( params ) || strlen ( params ) > MAX_PLAYER_NAME ) return SendClientMessage ( playerid , - 1 , "/za [nick]" );
new n_adm [ 32 ];
GetPlayerName ( playerid , n_adm , 32 );
new s [ 90 ];
format ( s , sizeof ( s ), "Admini/%s.ini" , n_adm );
if( dini_Exists ( s ))
{
dini_Remove ( s );
return 1 ;
}
format ( strcatx , 256 , "{009933}»American Truck SA-MP«{FFFFFF} Da?e? graczowi %s range administartora." , params );
SendClientMessage ( playerid , - 1 , strcatx );
return 1 ;
}
Chyba tak. A i popraw odczytywanie na ten kod:
Pawn
new n_adm [ 32 ];
GetPlayerName ( playerid , n_adm , 32 );
new s [ 90 ];
format ( s , sizeof ( s ), "Admini/%s.ini" , n_adm );
if( dini_Exists ( s ))
{
Admin [ playerid ] = 1 ;
return 1 ;
}
Wysłany: 2014-10-05, 17:24
KaNdY
Wiek: 29 Na forum: 4487 dni Posty: 53
Nick w MP: KaNdY
Piwa : 1
No niestety. Admina nadaje do folderu: scriptfiles > admini
Natomiast wszystko inne [tzn. kasa, score, vip, admin, etc.] czyta z samego: scriptfiles
Podes?a? Ci kod, czy mniej wi?cej wiesz, jak to wygl?da?
Bo nie wiem jak ustawi? aby zapisywa?o w: scriptfiles
Wysłany: 2014-10-05, 18:08
ToxiC.
Wiek: 28 Na forum: 5246 dni Posty: 3792
Piwa : 8590
folder Admini ma by? z du?ej litery, /da2 ToxiC.
Powinno w folderze Admini ustworzy? plik ToxiC..ini
Jak dajesz Admina to co pisze, Da?e? graczowi NICK range administrator ?
ps; czekaj, to dodaje ale nie chce odczytywa?, ta?
[ Dodano : 2014-10-05, 18:15 ]
Pawn new n_adm [ 32 ];
GetPlayerName ( playerid , n_adm , 32 );
new s [ 90 ];
format ( s , sizeof ( s ), "Admini/%s.ini" , n_adm );
if( dini_Exists ( s ))
{
SendClientMessage ( playerid , - 1 , "Masz admina" );
Admin [ playerid ] = 1 ;
}
else SendClientMessage ( playerid , - 1 , "Nie masz admina" );
Jak nie odczytuje a w folderze Admini dodaje, to spr?buj to
Wysłany: 2014-10-05, 21:59
KaNdY
Wiek: 29 Na forum: 4487 dni Posty: 53
Nick w MP: KaNdY
Piwa : 1
Te? nic nie da?o. I tak. Tworzy si? plik w 'Admini' z nickiem u?ytkownika .ini.
Ale ten plik w ?rodku jest pusty.
I nie czyta, czy gracz jest adminem, czy nie.
Przyk?adowo w: scriptfiles mam pliki ZAREJESTROWANYCH u?ytkownik?w a w ?rodku jest:
Kod:
haslo=12345
kasa=0
score=0
vip=0
admin=0
I teraz je?li admin = 0 - Brak Admina
Je?li admin = 1 - Gracz posiada admina.
Je?li mo?esz, zr?b komend?, kt?ra po prostu zmienia 'admin = 0' na 'admin = 1', a nie jakie? tworzenie nowych plik?w, w nowym folderze.
Wysłany: 2014-10-06, 15:18
akon823
Czekotubka :D
Wiek: 29 Na forum: 4815 dni Posty: 399
Nick w MP: Remik14
Piwa : 152
Kod: CMD:dajadminahujkowi(playerid, params[])
{
new string[128];
new forid;
if(sscanf(params, "d", forid,)) return SendClientMessage(playerid, Czerwony, "Wpisz:{FFFFFF} /dajadminahujkowi [id] ");
if(!IsPlayerConnected(forid)) return SendClientMessage(playerid, Czerwony, "Gracz nie jest pod??czony!");
dini_IntSet(nazwatwojegopliku,"admin", 1);
format(string, sizeof(string), "Administrator: %s [id: %d], nada? tobie administratora.",PlayerName(playerid), playerid);
SendClientMessage(playerid, Czerwony, string);
format(string, sizeof(string), "Nada?e? graczowi: %s [id: %d].",PlayerName(forid), forid);
SendClientMessage(forid, Czerwony, string);
return 1;
}
Nie wiem czy to zadziala ale cos mniej wiecej takiego zrob tylko uzupe?nij swoimi danymi i dodaj swoje warunki bo nie wiem jakie tam masz.
Wysłany: 2014-10-06, 21:23
KaNdY
Wiek: 29 Na forum: 4487 dni Posty: 53
Nick w MP: KaNdY
Piwa : 1
Przerobi?em troch? Tw?j system jeszcze i wysz?o mi co? takiego:
Kod:
CMD:da(playerid, params[]) //Daj admina (KaNdY & Sly)
{
new leader;
new strcatx[256];
new name[31];
leader = strval(params);
if(!IsPlayerAdmin(playerid)) return SendClientMessage(playerid, -1, "{009933}»American Truck SA-MP«{FFFFFF} Nie jeste? Administratorem.");
if(isnull(params) || strlen(params) > MAX_PLAYER_NAME) return SendClientMessage(playerid, -1, "/za [nick]");
Admin[leader] = 1;
GetPlayerName(leader, name, 31);
format(strcatx, 256, "{009933}»American Truck SA-MP«{FFFFFF} Da?e? graczowi %s range administartora.", params);
SendClientMessage(playerid, -1, strcatx);
return 1;
}
Problem polega na tym, ?e CHYBA mog? da? admina, gdy go?? jest na servere. Tzn. Gdy go nie ma pisz?, ?e daje mu admina, ale w plikach jest nadal admin = 0.
Ale gdy dawa?em sam sobie admina, to zmieni?o si? na: admin = 1.
Czyli zadzia?a?o.
Ale jeszcze jakby? umia?, to zrobi? tak, aby mo?na by?o da? nawet, gdy gracza nie ma na serverze.
Wysłany: 2014-10-06, 21:57
akon823
Czekotubka :D
Wiek: 29 Na forum: 4815 dni Posty: 399
Nick w MP: Remik14
Piwa : 152
Zamiast tego Kod: daj to Kod: dini_IntSet(nazwatwojegopliku,"admin", 1);
A jak nie to nie wiem, bo nie widze jak ?e? to zapisa? do pliku ziomek i jak? masz ?cie?k? do pliku.
Tagi: komendy :: admina
Anonymous
Na forum: 245 dni
Posty: 1
Anonymous Koniecznie zajrzyj na: