Witajcie! Dzi? zacz??em robi? system prywatnych pojazd?w + komenda dla salonu samochodowego.
Zrobi?em komend? kt?ra wygl?da tak:
Wszystko bardzo dobrze dzia?a, nie ma z tym ?adnego problemu.
public OnDialogResponse:
No i mi tutaj chodzi tylko o if(dialogid == DIALOGODEBRANYSELL) dlaczego? Chc? zrobi? aby do ka?dego pojazdu by?a ju? ustalona wcze?niej cena. Opisze ma?? sytuacje jak mia?o by to wygl?da? in game:
1. Pracownik salonu samochodowego u?ywa komendy /sprzedajpoj, otwiera mu si? GUI, wybiera jeden z pojazd?w. Wy?wietla mu sie nastepnie GUI ?eby wpisa? ID gracza kt?remu chce zaoferowa? sprzeda?, po wpisaniu graczowi wy?wietli si? jaki pojazd chce mu zaoferowa? ten sprzedawca i cena i jak kliknie Kup a nie b?dzie mia? pieni?dzy czyli:
No i powiedzcie mi jak mam zrobi? to ?eby zapisywa?y si? ceny pojazdu i ?eby potem mo?na by?o to wczytywa? w miejscu "CO WPISA?"
Nie wiesz, to nie pisz - po co wprowadasz w b??d? Dobrze, ?e zmieni?e? ju? t? sygnatur? gdzie by? napis "programista". Tekst dialogu jest dost?pny w inputtext i nie potrzeba ?adnych zmiennych.
Co do tematu, to wystarczy umiej?tnie u?y? funkcji strfind i strmid z inputtext dialogu.
Nie wiem gdzie ty tu widzisz DIALOG_STYLE_INPUT . Inputtext tu nie zadzia?a Ja sciagne?em sygnaturke bo mi si? nie podoba?a A ty nie powiniene? si? udziela? jak nie potrafisz czyta?
Tutaj nie o to mi chodzi?o - o to ?e np. u?ywam komendy /sprzedajpojazd i gracz musi by? przy mnie ?ebym m?g? j? u?y?.
No wi?c jeszcze raz m?wi?. IsPlayerInRangeOfPoint.
new Float:pos[3];
GetPlayerPos(playerid, pos[0], pos[1], pos[2]);
if(IsPlayerInRangeOfPoint(drugigracz, 7.0, pos[0], pos[1], pos[2]))
{
//gracze znajduj? si? obok siebie
}
else
{
//gracze nie znajduj? si? obok siebie
}
Gdzie drugigracz to ID drugiego gracza, a 7.0 to odleg?o?? w jakiej musz? si? obok siebie znajdowa?.
Jeszcze taka sprawka. Mam tutaj komend? dla ownera LSPD:
dcmd_dodaj(playerid, params[])
{
new Gowner = Owner[playerid];
if(Gowner == 2)
{
new id;
new frakcja = Frakcja[playerid];
new gGracz[64];
new Gname[MAX_PLAYER_NAME];
GetPlayerName(playerid, Gname, sizeof(Gname));
format(gGracz, sizeof(gGracz),"/Gracze/%s.ini",Gname);
if(dini_Exists(gGracz))
{
if(sscanf(params, "ui", id, frakcja))
{
SendClientMessage(playerid, 0xAFAFAFAA,"U?yj: /dodaj [IDGracza] 1");
return 1;
}
else if(id == INVALID_PLAYER_ID)
{
SendClientMessage(playerid, 0xAFAFAFAA,"Gracz o podanym ID nie istnieje.");
return 1;
}
else if(Owner[id] == frakcja)
{
SendClientMessage(playerid, 0xAFAFAFAA, "Gracz o podanym ID jest ju? w tej organizacji");
return 1;
}
else
{
Frakcja[id] = frakcja;
dini_IntSet(gGracz,"Frakcja", frakcja);
SendClientMessage(playerid, COLOR_WHITE,"{00C3FF}[PLERP.UGU.PL]: {FFFFFF}Gracz zostal dodany do organizacji: {007FFF}Los Santos Police Department");
SendClientMessage(id, COLOR_RED,"{00C3FF}[PLERP.UGU.PL]: {FFFFFF}Zostales dodany do organizacji: {007FFF}Los Santos Police Department");
}
return 1;
}
return 1;
}
else
{
SendClientMessage(playerid, COLOR_RED,"{FF0000}[PLERP.UGU.PL]: {FFFFFF}Nie posiadasz uprawnie? aby u?y? tej komendy!");
}
return 1;
}
Tylko ?e gdy u?yje si? /dodaj [IDGracza] 1 - ta jedynka to jest ID frakcji i chce ?eby w tej cmd mo?na tam na ko?cu u?ywa? TYLKO w?a?nie tej jedynki. Bo inaczej to owner mo?e sobie tam wpisa? 2 lub 3 i go innego gracza doda do innej organizacji.
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