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

Wysłany: 2013-07-11, 19:54


akon823

Czekotubka :D






Wiek: 29
Na forum: 4816 dni
Posty: 399
Nick w MP: Remik14

Piwa: 152

Respekt: 76,8

Witam
Mam problem z frakcjami a mianowicie mam je zrobione tak
G?ra Mapki
Kod:

#define POLICJA "POLICJA.ini"
#define KIEROWCA "KEROWCA.ini"
#define POGOTOWIE "POGOTOWIE.ini"
#define POMOCDROGOWA "POMOCDROGOWA.ini"
#define KIEROWCAA "KIEROWCAA.ini"
#define SANNEWS "SANNEWS.ini"
#define STRAZPOZARNA "STRAZPOZARNA.ini"
#define TAXI "TAXI.ini"
//Nazwy_TEAMU
#define TEAM_POLICJA 1
#define TEAM_KIEROWCA 2
#define TEAM_POGOTOWIE 3
#define TEAM_POMOCDROGOWA 4
#define TEAM_KIEROWCAA 5
#define TEAM_SANNEWS 6
#define TEAM_STRAZPOZARNA 7
#define TEAM_TAXI 8


CMD na dodawanie
Kod:

CMD:dodaj_policja(playerid, params[])
{
new pname[MAX_PLAYER_NAME+1];
GetPlayerName(playerid, pname, sizeof(pname));
if( !strcmp(pname, "Remik13", true) || !strcmp(pname, "Remik13", true) )
{
if( isnull(params) ) return SendClientMessage(playerid, Zolty, "Wpisz: /dodaj_policja [nick]");
new string2[100];
format(string2, sizeof(string2), "Gracz %s zostal dodany Policji!", params);
SendClientMessage(playerid, Zielony, string2);
dini_Set(POLICJA, params, "1");
}
return 1;
}
CMD:usun_policja(playerid, params[])
{
new pname[MAX_PLAYER_NAME+1];
GetPlayerName(playerid, pname, sizeof(pname));
if( !strcmp(pname, "Remik13", true) || !strcmp(pname, "Remik13", true) )
{
if( isnull(params) ) return SendClientMessage(playerid, Zolty, "Wpisz: /usun_policja [nick]");
new string2[100];
format(string2, sizeof(string2), "Gracz %s zostal zwolniony z Policji!", params);
SendClientMessage(playerid, Zielony, string2);
dini_Set(POLICJA, params, "0");
}
return 1;
}


Reszta kodu :P
Kod:

forward DajDoPolicji(playerid);
public DajDoPolicji(playerid)
{
if(strval(dini_Get(POLICJA, Player(playerid))) == 1)
wpolicji[playerid] = 1;
return 1;
}


I przykladowa komenda :D
Kod:

CMD:wezpaczke(playerid, params[])
{
if(gTeam[playerid] != TEAM_POLICJA) return SendClientMessage(playerid, -1, "Nie jeste? policjantem!"), 1;

GivePlayerWeapon(playerid, 3, 1);
GivePlayerWeapon(playerid, 33, 1000);
GivePlayerWeapon(playerid, 24, 1000);
GivePlayerWeapon(playerid, 17, 20);
SendClientMessage(playerid, -1, "Zabra?e? paczk?!");
return 1;
}

I mia?em jeszcze w wybieralce ?e sprawdza czy jest wpisany tam i wtedy mo?na wej?? na skina i dopiero dzialaly te komendy na skinie :p a jak nie jestem na skinie to nie mog? tego u?yc :D I usun??em wybiera?k? i teraz nie mog? u?yc ?adnej komendy ;f Powiedzcie Mi jak mog? to inaczej zapisa? i wczyta? :P I jak sprawdza? w komendach czy on jest tam wpisany :P
Dzi?ki za pomoc .
Pozdrawiam R*

Postaw piwo autorowi tego posta
 

 
Wysłany: 2013-07-11, 20:40


xqz

otaku desu!






Wiek: 32
Na forum: 6407 dni
Posty: 723
Nick w MP: xqz

Piwa: 5465

Respekt: 418,6
Respekt: 418,6

"akon823" napisał/a:

if(gTeam[playerid] != TEAM_POLICJA)


"akon823" napisał/a:

wpolicji[playerid] = 1;


Cos Ci przywodzi na mysl?

Postaw piwo autorowi tego posta
 

 
Wysłany: 2013-07-12, 14:17


akon823

Czekotubka :D






Wiek: 29
Na forum: 4816 dni
Posty: 399
Nick w MP: Remik14

Piwa: 152

Respekt: 76,8

Dobra jako? ogarn??em wiem czego mi brakowa?o :D lecz gdy mia?em wybiera?k? to ten kod si? jeszcze jako? zgrywa? a teraz jak usun??em wybiera?k? to ten kod si? kompletnie pomiesza? :D I mam do was pro?b? :P czy kto? by m?g? zrobi? mi od nowa te frakcje ?:D Chodzi og?lnie ?eby by?o tak jak jest komenda na dopis do pliku ju? jest :P i aby gTeam == TEAM_POLICJA to r?wna?o si? temu if(strval(dini_Get(POLICJA, Player(playerid))) == 1) bo nie chc? teraz zmienia? wszystkich komend na to if(strval(dini_Get(POLICJA, Player(playerid))) == 1) jak mam tamto co wcze?niej :P Pomo?e kto? ?:D Bo nie ogarniam tego by?o dobrze i si? popsu?o ;p

Podpis
Postaw piwo autorowi tego posta
 

 
Wysłany: 2013-07-12, 15:25


xqz

otaku desu!






Wiek: 32
Na forum: 6407 dni
Posty: 723
Nick w MP: xqz

Piwa: 5465

Respekt: 418,6
Respekt: 418,6

Cytat:

forward DajDoPolicji(playerid);
public DajDoPolicji(playerid)
{
if(strval(dini_Get(POLICJA, Player(playerid))) == 1)
wpolicji[playerid] = 1;
return 1;
}

Masz gotowe przeciez ;o



Kod:

forward CzytajFrakcje(playerid);
public CzytajFrakcje(playerid)
{
if(strval(dini_Get(POLICJA, Player(playerid))) == 1)
{
wpolicji[playerid] = 1;
gTeam[playerid] = TEAM_POLICJA;
}
if(strval(dini_Get(COSINNEGO, Player(playerid))) == 1)
{
gTeam[playerid] = COSINNEGO;
}
if(strval(dini_Get(ZNOWCOSINNEGO, Player(playerid))) == 1)
{
gTeam[playerid] = ZNOWCOSINNEGO;
}
if(strval(dini_Get(IJESZCZECOS, Player(playerid))) == 1)
{
gTeam[playerid] = IJESZCZECOS;
}
return 1;
}

I umieszczasz to w OnPlayerConnect.

Postaw piwo autorowi tego posta
 

 
Wysłany: 2013-07-12, 16:18


akon823

Czekotubka :D






Wiek: 29
Na forum: 4816 dni
Posty: 399
Nick w MP: Remik14

Piwa: 152

Respekt: 76,8

No dobar zrobi?em wszystko niby powinno dzialac a nie dzia?a to wgl :D ja nie wiem :p dlaczego jak mam komend? i daje tak
Kod:

if(strval(dini_Get(POLICJA, Player(playerid))) == 1)
{
to mi dzia?a sprawdza .
A je?li mam tak to nie dzia?a :D
Kod:

if(gTeam[playerid] == TEAM_POLICJA)

I nie wiem co jest grane ;p Mam tego stocka itd. ;p

Podpis
Postaw piwo autorowi tego posta
 

 
Wysłany: 2013-07-12, 16:35


xqz

otaku desu!






Wiek: 32
Na forum: 6407 dni
Posty: 723
Nick w MP: xqz

Piwa: 5465

Respekt: 418,6
Respekt: 418,6

Umie?ci?e? to co m?wi?em w OnPlayerConnect?

I wiedz, ?e je?li gracz jest w wiecej ni? jedym pliku, to zostanie wczytany tylko ten ostatnio odczytany.

Tzn.
Jesli ten sam nick jest np.

W policji, stra?y po?arnej, pogotowiu i wczytujesz je po kolei to tablicy gTeam to zostanie ten gracz dodany tylko jako pogotowie.

Postaw piwo autorowi tego posta
 

 
Wysłany: 2013-07-12, 16:44


akon823

Czekotubka :D






Wiek: 29
Na forum: 4816 dni
Posty: 399
Nick w MP: Remik14

Piwa: 152

Respekt: 76,8

Tak umie?ci?em :D i nadal nie dzia?a nic :P Mo?e jest jaki? inny spos?b aby to
Kod:

if(gTeam[playerid] == TEAM_POLICJA)

By?o to samo co to
Kod:

if(strval(dini_Get(POLICJA, Player(playerid))) == 1)


Mo?e jako? inaczej da si? te frakcje zrobi? ?:p

Podpis
Postaw piwo autorowi tego posta
 

 
Wysłany: 2013-07-12, 17:03


xqz

otaku desu!






Wiek: 32
Na forum: 6407 dni
Posty: 723
Nick w MP: xqz

Piwa: 5465

Respekt: 418,6
Respekt: 418,6

Kod:

forward CzytajFrakcje(playerid);
public CzytajFrakcje(playerid)
{
if(strval(dini_Get(POLICJA, Player(playerid))) == 1)
{
printf("Team gracza z dini = %d",strval(dini_Get(POLICJA, Player(playerid))));
wpolicji[playerid] = 1;
gTeam[playerid] = TEAM_POLICJA;
printf("Team gracza z team= %d",gTeam[playerid]);
}
if(strval(dini_Get(COSINNEGO, Player(playerid))) == 1)
{
gTeam[playerid] = COSINNEGO;
}
if(strval(dini_Get(ZNOWCOSINNEGO, Player(playerid))) == 1)
{
gTeam[playerid] = ZNOWCOSINNEGO;
}
if(strval(dini_Get(IJESZCZECOS, Player(playerid))) == 1)
{
gTeam[playerid] = IJESZCZECOS;
}

return 1;
}

Zr?b to jeszcze raz i zobacz co wyprintuje w konsoli.

Postaw piwo autorowi tego posta
 

 
Wysłany: 2013-07-12, 17:40


akon823

Czekotubka :D






Wiek: 29
Na forum: 4816 dni
Posty: 399
Nick w MP: Remik14

Piwa: 152

Respekt: 76,8

wyprintowa?o team gracza z dini = 1
team gracza z team = 1
A nadl nie mog? uzy? komendy policjanta :p

Podpis
Postaw piwo autorowi tego posta
 

 
Wysłany: 2013-07-12, 17:45


xqz

otaku desu!






Wiek: 32
Na forum: 6407 dni
Posty: 723
Nick w MP: xqz

Piwa: 5465

Respekt: 418,6
Respekt: 418,6

Chyba mnie ok?amujesz xD


Oczywi?cie my?l?, ?e funkcje: CzytajFrakcje(playerid);
Da?e? na samym ko?cu callbacka OnPlayerConnect?

Postaw piwo autorowi tego posta
 

 
Wysłany: 2013-07-12, 17:50


akon823

Czekotubka :D






Wiek: 29
Na forum: 4816 dni
Posty: 399
Nick w MP: Remik14

Piwa: 152

Respekt: 76,8

huehue :D no tak da?em na sam koniec :p Tu masz z serwerlog
Kod:

[17:38] [join] Remik13 has joined the server (0:192.168.1.182)
[17:38] Zapis Start...
[17:38] Team gracza z dini = 1
[17:38] Team gracza z team= 1
[17:39] [part] Remik13 has left the server (0:1)

A komendy nie dzialaja dalej :D

Podpis
Postaw piwo autorowi tego posta
 

 
Wysłany: 2013-07-12, 17:57


xqz

otaku desu!






Wiek: 32
Na forum: 6407 dni
Posty: 723
Nick w MP: xqz

Piwa: 5465

Respekt: 418,6
Respekt: 418,6

Co? k?amiesz.


Kod:

CMD:test(playerid,params[])
{
if(gTeam[playerid] == TEAM_POLICE)
SendClientMessage(playerid,-1,"Jestes z policji!");
else
SendClientMessage(playerid,-1,"Nie jestes upowazniony!");
return 1;
}

Uzyj tej komendy, inaczej nie uwierze xd

Postaw piwo autorowi tego posta
 

 
Wysłany: 2013-07-12, 18:04


akon823

Czekotubka :D






Wiek: 29
Na forum: 4816 dni
Posty: 399
Nick w MP: Remik14

Piwa: 152

Respekt: 76,8


Pacz :D

Serwerlog
Kod:

[17:59] Team gracza z dini = 1
[17:59] Team gracza z team= 1


Postaw piwo autorowi tego posta
 

 
Wysłany: 2013-07-12, 18:14


xqz

otaku desu!






Wiek: 32
Na forum: 6407 dni
Posty: 723
Nick w MP: xqz

Piwa: 5465

Respekt: 418,6
Respekt: 418,6

To jakas tajemnicza sprawa.

Postaw piwo autorowi tego posta
 

 
Wysłany: 2013-07-12, 18:18


akon823

Czekotubka :D






Wiek: 29
Na forum: 4816 dni
Posty: 399
Nick w MP: Remik14

Piwa: 152

Respekt: 76,8

Tak :D Czyli zostaje mi tylko zmieni? wszystkie komendy ?:D

Postaw piwo autorowi tego posta
 

 
Tagi: zapis :: frakcji
Anonymous





Na forum: 245 dni
Posty: 1



Anonymous Koniecznie zajrzyj na:






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