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

Wysłany: 2015-01-30, 19:35


Nors

Wszystko wiem.






Wiek: 30
Na forum: 4600 dni
Posty: 223
Nick w MP: Nors

Piwa: 10

Respekt: 50

Cze?? mam problem z komend?. Poniewa? gdy wpisuje /zmien_frakcja to nic si? nie dzieje. Prosz? o pomoc.

Kod:
Kod:

CMD:zmien_frakcja(playerid, params[])
{
if(IsPlayerAdmin(playerid)){
new string[300];
new id;
new frakcja;
new Gname[MAX_PLAYER_NAME];
GetPlayerName(playerid, Gname, sizeof(Gname));
format(string, sizeof(string), "/Gracze/%s.txt",Gname);
if(dini_Exists(string))
{
if(sscanf(params, "ui", id, frakcja))
{
SendClientMessage(playerid, COLOR_WHITE, "U?yj /zmien_frakcja [IDGRACZA] [FRAKCJA]");
return 1;
}
else if(id == INVALID_PLAYER_ID)
{
SendClientMessage(playerid, COLOR_RED, "Gracz nie istnieje !");
return 1;
}
else if(gGracz[id][Frakcja] == frakcja)
{
SendClientMessage(playerid, COLOR_RED, "Gracz ma juz ta frakcje !");
return 1;
}
else
{
new message[64];

gGracz[id][Frakcja] = frakcja;
dini_IntSet(string, "Frakcja", gGracz[id][Frakcja]);

format(message,sizeof(message),"Zatrudniles gracza do %s",frakcja);
SendClientMessage(playerid,COLOR_GREEN,message);

format(message,sizeof(message),"Zostales zatrudniony do %s !\n{FFFFFF}Powodzenia :) ",frakcja);
SendClientMessage(id,COLOR_RED,message);
}

}
}
return 1;
}


:piwo: :piwo:

Podpis
Daj piweczko. Pić się chce.
Postaw piwo autorowi tego posta
 

 
Wysłany: 2015-01-31, 13:26


kazami

Pawner/PTG






Wiek: 27
Na forum: 4596 dni
Posty: 405
Nick w MP: adi888

Piwa: 43

Respekt: 76,3

Ostrzeżeń: 80%
ja gdy mam takie problemy to wstawiam printa w klika miejsc i patrz? na konsoli do kt?rego miejsca dochodzi kod i wtedy mamy pokazany b??d gdzie jest ;)

Radz? ci wstawi? w kilka miejsc print("jestem tutaj i tutaj");

ale pierwszy warunek napewno masz spe?niony ? ;)

Postaw piwo autorowi tego posta
 

 
Wysłany: 2015-01-31, 15:32


Sillence







Wiek: 26
Na forum: 5157 dni
Posty: 1514
Nick w MP: Sillence

Piwa: 1517

Respekt: 416,3
Respekt: 416,3

Nors, Jeste? zalogowany na RCON podczas wpisywania tej komendy?

Postaw piwo autorowi tego posta
 

 
Wysłany: 2015-02-01, 17:01


Intern







Wiek: 30
Na forum: 4184 dni
Posty: 40
Nick w MP: Intern

Piwa: 15

Respekt: 80

Sprawd? teraz:

Kod:

CMD:zmien_frakcja(playerid, params[])
{
if(IsPlayerAdmin(playerid))
{
new string[300];
new id;
new frakcja;

if(sscanf(params, "ui", id, frakcja))
{
SendClientMessage(playerid, COLOR_WHITE, "U?yj /zmien_frakcja [IDGRACZA] [FRAKCJA]");
return 1;
}
if(id == INVALID_PLAYER_ID)
{
SendClientMessage(playerid, COLOR_RED, "Gracz nie istnieje !");
return 1;
}
if(gGracz[id][Frakcja] == frakcja)
{
SendClientMessage(playerid, COLOR_RED, "Gracz ma juz ta frakcje !");
return 1;
}

new Gname[MAX_PLAYER_NAME];
GetPlayerName(playerid, Gname, sizeof(Gname));
format(string, sizeof(string), "/Gracze/%s.txt",Gname);
if(dini_Exists(string))
{
new message[64];

gGracz[id][Frakcja] = frakcja;
dini_IntSet(string, "Frakcja", gGracz[id][Frakcja]);

format(message,sizeof(message),"Zatrudniles gracza do %s",frakcja);
SendClientMessage(playerid,COLOR_GREEN,message);

format(message,sizeof(message),"Zostales zatrudniony do %s !\n{FFFFFF}Powodzenia :) ",frakcja);
SendClientMessage(id,COLOR_RED,message);
}
}
return 1;
}


tak poza tym

Kod:

new Gname[MAX_PLAYER_NAME];
GetPlayerName(playerid, Gname, sizeof(Gname));
format(string, sizeof(string), "/Gracze/%s.txt",Gname);
if(dini_Exists(string))
{
new message[64];

gGracz[id][Frakcja] = frakcja;
dini_IntSet(string, "Frakcja", gGracz[id][Frakcja]);


powinno by? w zapisie gracza po co za?mieca? sobie zb?dnym kodem. Robisz tak:
Kod:


new UstawFrakcja;
new frakcja[MAX_PLAYERS];

zapis Gracza
dini_IntSet(string, "Frakcja", UstawFrakcja);

Odczyt gracza
frakcja[playerid] = dini_IntSet(string, "Frakcja", UstawFrakcja);


Postaw piwo autorowi tego posta
 

 
Wysłany: 2015-02-01, 18:15


kazami

Pawner/PTG






Wiek: 27
Na forum: 4596 dni
Posty: 405
Nick w MP: adi888

Piwa: 43

Respekt: 76,3

Ostrzeżeń: 80%
w komendach zmieniasz tylko zmienne a przy zapisie robisz zapis zmiennej od frakcji , bo zmienic w pliku frakcje podczas wykonania komendy to nieoptymalne :D

Postaw piwo autorowi tego posta
 

 
Wysłany: 2015-02-01, 18:54


ToxiC.







Wiek: 28
Na forum: 5246 dni
Posty: 3792

Piwa: 8590

Respekt: 1143,8
Respekt: 1143,8

kazami, serio? Lepiej to robi? przy zapisie stat gracza, czy lepiej raz zapisa? gdy wpisze komende? W komendzie najlepiej, up wprowadza w b??d

Postaw piwo autorowi tego posta
 

 
Wysłany: 2015-02-01, 19:51


IgrexolonO







Wiek: 34
Na forum: 6809 dni
Posty: 1386

Piwa: 1062

Respekt: 651,8
Respekt: 651,8Respekt: 651,8

"ToxiC`" napisał/a:

kazami, serio? Lepiej to robi? przy zapisie stat gracza, czy lepiej raz zapisa? gdy wpisze komende? W komendzie najlepiej, up wprowadza w b??d


Id?c Twoim tokiem rozumowania:

- gracz zmienia w czasie gry 500 razy frakcj?,

; logicznie my?l?c:

#x500 fOpen,
#x500 fWrite.

vs to co napisa? ten tam wy?ej ^ kt?remu z trudem przyznaje racje bo to jednak g??b,

#x1 fOpen,
#x1 fWrite.

=> Jego rozwi?zanie jest lepsze.

[ Komentarz dodany przez: ToxiC`: 2015-02-01, 19:56 ]
Tylko komenda jest dla admina, i w?tpie aby ustawia? jednemu graczowi tysi?ce razy inn? frakcje. =)

Postaw piwo autorowi tego posta
 

 
Tagi: komenda :: nie :: działa :: jak :: powinna
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