Skripta koju koristim:GhostTown
Detaljan opis problema:Ovako,napravio sam komandu /avozilo ali me zanima kako da promenim boju u kojoj ce se vozilo stvarati.
Dio skripte: if(listid == vozilolist)
{
if(response)
{
new Float:Pos[4];
GetPlayerPos(playerid,Pos[0],Pos[1],Pos[2]);
SendClientMessage(playerid, -1, ""RG"(("SIVA"LG Info"RG")) "BELA"Spawnao si A/GM Vozilo!");
vozilo1 = CreateVehicle(modelid,Pos[0],Pos[1],Pos[2],Pos[3],random(1),random(1),500);
PutPlayerInVehicle(playerid,vozilo1,0);
Attach3DTextLabelToVehicle(avozila, AdminVozilo[playerid], 0.0, 0.0, 0.0);
Update3DTextLabelText(avozila, 0x2641FEAA, "[A/GM]");
AVOZILO[playerid] = vozilo1;
}
else SendClientMessage(playerid, -1, ""RG"(("SIVA"LG Info"RG")) "BELA"Odustao si od spawna A/GM Vozila!");
return 1;
}
CMD:avozilo(playerid, params[])
{
if(PlayerInfo[playerid][pAdmin] >= 1 || PlayerInfo[playerid][pGM] >= 1)
if(AVOZILO[playerid] != -1)
{
DestroyVehicle(AVOZILO[playerid]);
AVOZILO[playerid] = -1;
}
else if(AVOZILO[playerid] == -1)
{
ShowModelSelectionMenu(playerid, vozilolist, "Izaberite Admin Vozilo");
}
return 1;
}
Neke slike/video za lakse dobivanje pomoci(neobavezno)://
evo ti moj kod pazi color1 i color2 to ti je za mjenjanje boje a ovo poz[4] to ti je da dobije igracevu poziciju i da stvori vozilo
YCMD:veh(playerid, params[],help)
{
new Float:Poz[4],string[128],model[128],color1, color2;
if(PlayerInfo[playerid][Admin] < 1) return SendClientMessage(playerid,COLOR_GREY,"Niste autorizirani za koristenje ove komande!");
if(sscanf( params, "s[128]dd", model, color1, color2)) return SendClientMessage(playerid, COLOR_GREY, "Syntax:{FFFFFF} /veh [Vehicle name] [Color1] [Color2]");
GetPlayerPos(playerid, Poz[0], Poz[1], Poz[2]);
GetPlayerFacingAngle(playerid, Poz[3]);
new vozz = CreateVehicle(strval(params), Poz[0]+4, Poz[1], Poz[2], Poz[3], color1, color2, -1);
PutPlayerInVehicle(playerid, vozz, 0);
format(string, sizeof(string), "AdmWarning: %s je stvorio vozilo.", PlayerName(playerid));
AMessage(COLOR_LIGHTRED, string);
return 1;
}
Ja koristim komandu sa Dialogom kao na SA. :/
Ako sam te ja dobro razumeo, ti zelis da promenis boju u kojoj se vozilo stvara?
Umesto [pawn]vozilo1 = CreateVehicle(modelid,Pos[0],Pos[1],Pos[2],Pos[3],random(1),random(1),500);[/pawn]
Stavis [pawn]vozilo1 = CreateVehicle(modelid,Pos[0],Pos[1],Pos[2],Pos[3],idboje,idboje2,500); //id boje mozes naci na netu.[/pawn]
Onda ne mozes mijenjati boju mozes je samo hardcodati i to ti je to ne mozes in game da mjenjas boju
Citat: Assassin007 poslato Oktobar 23, 2017, 19:08:05 POSLE PODNE
evo ti moj kod pazi color1 i color2 to ti je za mjenjanje boje a ovo poz[4] to ti je da dobije igracevu poziciju i da stvori vozilo
YCMD:veh(playerid, params[],help)
{
new Float:Poz[4],string[128],model[128],color1, color2;
if(PlayerInfo[playerid][Admin] < 1) return SendClientMessage(playerid,COLOR_GREY,"Niste autorizirani za koristenje ove komande!");
if(sscanf( params, "s[128]dd", model, color1, color2)) return SendClientMessage(playerid, COLOR_GREY, "Syntax:{FFFFFF} /veh [Vehicle name] [Color1] [Color2]");
GetPlayerPos(playerid, Poz[0], Poz[1], Poz[2]);
GetPlayerFacingAngle(playerid, Poz[3]);
new vozz = CreateVehicle(strval(params), Poz[0]+4, Poz[1], Poz[2], Poz[3], color1, color2, -1);
PutPlayerInVehicle(playerid, vozz, 0);
format(string, sizeof(string), "AdmWarning: %s je stvorio vozilo.", PlayerName(playerid));
AMessage(COLOR_LIGHTRED, string);
return 1;
}
Koliko ja znam ne postoji vozilo sa imenom od 127 karaktera (bez nultog) tako da je nepotrebno koristiti toliki string. Isto i ovaj sa kojim formatiras poruku. Isto tako zasto stvarati promenljive i stringove ukoliko igrac ne ispunjava taj uslov? Samo dzabe trositi memoriju :$
Citat: Tosic ãƒ,, poslato Oktobar 23, 2017, 19:18:26 POSLE PODNE
Koliko ja znam ne postoji vozilo sa imenom od 127 karaktera (bez nultog) tako da je nepotrebno koristiti toliki string. Isto i ovaj sa kojim formatiras poruku. Isto tako zasto stvarati promenljive i stringove ukoliko igrac ne ispunjava taj uslov? Samo dzabe trositi memoriju :$
Kad ne zna ubacit boju u sscanf i createvehicle nepotrebno je da mu pricas za memoriju, to je za njega spansko selo...
kao prvo to od 128 string memorije je doslovno 2 kilobajta tako da ne gubim nista od performance kao drugo ovo Amessage i format povise njega se upisuje u log tako da mogu vidjeti sta se desava na serveru i koliko memorije trosi tako da
Hvala Sejnure.