Salutare tuturor, multi doresc sa isi introduca skinuri pe server si acele skinuri sa aiba restrictie si nu prea stiu. Mai jos am sa va explic cum sa faceti acest lucru.
1. Trebuie sa adaugam skinurile.
- Pentru a adauga skinurile folosim functia "AddPlayerClass"
Functia: AddPlayerClass(skin, Float:x, Float:y, Float:z, Float:Angle, weapon1, weapon1_ammo, weapon2, weapon2_ammo, weapon3, weapon3_ammo)Skin -> Id-ul skinului doritFloat:x -> Pozitia XFloat:y -> Pozitia YFloat:z -> Pozitia ZFloat:Angle -> Pozitia unghiweapon1 -> ID-ul primei arme care o primeste acest skinweapon1_ammo -> Gloantele primei arme care o primeste acaest skinweapon2 -> ID-ul armei a doua care o primeste acest skinweapon2_ammo -> Gloantele celei de a doua arma care o primeste acaest skinweapon3 -> ID-ul armei a treia care o primeste acest skinweapon3_ammo -> Gloantele celei de a treia arma care o primeste acaest skin
ex:
AddPlayerClass(264, 479.7307, -1499.6757, 20.4877, 1.0000, 0, 0, 0, 0, 0, 0); // Civilian skin 1AddPlayerClass(295, 1530.8369, -1664.8872, 6.2188, 1.0000, 24, 100, 3, 1, 0, 0); // PD rank 6...
Dupa ce am adaugat toate skinurile trecem la pasul 2
2. Adaugam printre celelalte "new" o variabila
new classidi[MAX_PLAYERS];
3. Mergem la functia "public OnPlayerRequestClass(playerid, classid)", stergem ce avem acolo si adaugam:
if(classid == 0) { GameTextForPlayer(playerid, "~y~> ~p~ Civilian ~y~< ~n~", 7000, 4); classidi[playerid] = 0; } if(classid == 1) { GameTextForPlayer(playerid, "~y~> ~p~ Police Department ~y~< ~n~ Leader", 7000, 4); classidi[playerid] = 1; } if(classid == 2) { GameTextForPlayer(playerid, "~y~> ~p~ F.B.I ~y~< ~n~ Leader", 7000, 4); classidi[playerid] = 2; } . . .
Aceasta functie "se pune in functiune" atunci cand am dat f4 / am luat /invite / /uninvite si ne apar skinurile.
Dupa ce am adaugat pentru toate skinurile trecem la pasul 4.
4. Mergem la functia "public OnPlayerRequestSpawn(playerid)", stergem ce avem acolo si adaugam:
if(classidi[playerid] == 0) { if(PlayerInfo[playerid][pMember] < 1) { PlayerInfo[playerid][pChar] = 264; // 264 = Skin de clovn (skinul care sa il seteze cand da "Shift" / "Spawn") } else { GameTextForPlayer(playerid, "Trebuie sa fii civil sa folosesti acest skin", 2000, 1); return 0; } } if(classidi[playerid] == 1) { if(PlayerInfo[playerid][pMember] == 1 && PlayerInfo[playerid][pRank] == 6 || PlayerInfo[playerid][pLeader] == 1 && PlayerInfo[playerid][pRank] == 6) { PlayerInfo[playerid][pChar] = 295; } else { GameTextForPlayer(playerid, "Trebuie sa fi lider Police Departament sa folosesti acest skin", 2000, 1); return 0; } } if(classidi[playerid] == 2) { if(PlayerInfo[playerid][pMember] == 2 && PlayerInfo[playerid][pRank] == 6 || PlayerInfo[playerid][pLeader] == 2 && PlayerInfo[playerid][pRank] == 6) { PlayerInfo[playerid][pChar] = 286; } else { GameTextForPlayer(playerid, "Trebuie sa fi lider F.B.I sa folosesti acest skin", 2000, 1); return 0; } } . . .
Aceasta functie "se pune in functiune" atunci cand am pe tasta "Shift" / Butonul "spawn" pentru a alege skinul.
Dupa ce am adaugat pentru toate skinurile trecem la ultimul pas. (Optional)
5. Acest pas este Optional, nu este nevoie sa il faceti.
Pentru ca atunci cand luam /uninvite sau /invite sa ne dea direct sa ne alegem skinul, adaugam la comenzile /invite si /uninvite urmatoarele coduri:
ForceClassSelection(para1); SetPlayerHealth(para1, 0);
Daca dorim ca la comanda /giverank cand cineva primeste rank sa il forteze ca atunci cand moare sa isi aleaga alt skin adaugam:
ForceClassSelection(para1);
sau daca dorim ca atunci cand primeste rank-ul sa il oblige sa si-l schimbe adaugam:
ForceClassSelection(para1); SetPlayerHealth(para1, 0);
1. Trebuie sa adaugam skinurile.
- Pentru a adauga skinurile folosim functia "AddPlayerClass"
Functia: AddPlayerClass(skin, Float:x, Float:y, Float:z, Float:Angle, weapon1, weapon1_ammo, weapon2, weapon2_ammo, weapon3, weapon3_ammo)Skin -> Id-ul skinului doritFloat:x -> Pozitia XFloat:y -> Pozitia YFloat:z -> Pozitia ZFloat:Angle -> Pozitia unghiweapon1 -> ID-ul primei arme care o primeste acest skinweapon1_ammo -> Gloantele primei arme care o primeste acaest skinweapon2 -> ID-ul armei a doua care o primeste acest skinweapon2_ammo -> Gloantele celei de a doua arma care o primeste acaest skinweapon3 -> ID-ul armei a treia care o primeste acest skinweapon3_ammo -> Gloantele celei de a treia arma care o primeste acaest skin
ex:
AddPlayerClass(264, 479.7307, -1499.6757, 20.4877, 1.0000, 0, 0, 0, 0, 0, 0); // Civilian skin 1AddPlayerClass(295, 1530.8369, -1664.8872, 6.2188, 1.0000, 24, 100, 3, 1, 0, 0); // PD rank 6...
Dupa ce am adaugat toate skinurile trecem la pasul 2
2. Adaugam printre celelalte "new" o variabila
new classidi[MAX_PLAYERS];
3. Mergem la functia "public OnPlayerRequestClass(playerid, classid)", stergem ce avem acolo si adaugam:
if(classid == 0) { GameTextForPlayer(playerid, "~y~> ~p~ Civilian ~y~< ~n~", 7000, 4); classidi[playerid] = 0; } if(classid == 1) { GameTextForPlayer(playerid, "~y~> ~p~ Police Department ~y~< ~n~ Leader", 7000, 4); classidi[playerid] = 1; } if(classid == 2) { GameTextForPlayer(playerid, "~y~> ~p~ F.B.I ~y~< ~n~ Leader", 7000, 4); classidi[playerid] = 2; } . . .
Aceasta functie "se pune in functiune" atunci cand am dat f4 / am luat /invite / /uninvite si ne apar skinurile.
Dupa ce am adaugat pentru toate skinurile trecem la pasul 4.
4. Mergem la functia "public OnPlayerRequestSpawn(playerid)", stergem ce avem acolo si adaugam:
if(classidi[playerid] == 0) { if(PlayerInfo[playerid][pMember] < 1) { PlayerInfo[playerid][pChar] = 264; // 264 = Skin de clovn (skinul care sa il seteze cand da "Shift" / "Spawn") } else { GameTextForPlayer(playerid, "Trebuie sa fii civil sa folosesti acest skin", 2000, 1); return 0; } } if(classidi[playerid] == 1) { if(PlayerInfo[playerid][pMember] == 1 && PlayerInfo[playerid][pRank] == 6 || PlayerInfo[playerid][pLeader] == 1 && PlayerInfo[playerid][pRank] == 6) { PlayerInfo[playerid][pChar] = 295; } else { GameTextForPlayer(playerid, "Trebuie sa fi lider Police Departament sa folosesti acest skin", 2000, 1); return 0; } } if(classidi[playerid] == 2) { if(PlayerInfo[playerid][pMember] == 2 && PlayerInfo[playerid][pRank] == 6 || PlayerInfo[playerid][pLeader] == 2 && PlayerInfo[playerid][pRank] == 6) { PlayerInfo[playerid][pChar] = 286; } else { GameTextForPlayer(playerid, "Trebuie sa fi lider F.B.I sa folosesti acest skin", 2000, 1); return 0; } } . . .
Aceasta functie "se pune in functiune" atunci cand am pe tasta "Shift" / Butonul "spawn" pentru a alege skinul.
Dupa ce am adaugat pentru toate skinurile trecem la ultimul pas. (Optional)
5. Acest pas este Optional, nu este nevoie sa il faceti.
Pentru ca atunci cand luam /uninvite sau /invite sa ne dea direct sa ne alegem skinul, adaugam la comenzile /invite si /uninvite urmatoarele coduri:
ForceClassSelection(para1); SetPlayerHealth(para1, 0);
Daca dorim ca la comanda /giverank cand cineva primeste rank sa il forteze ca atunci cand moare sa isi aleaga alt skin adaugam:
ForceClassSelection(para1);
sau daca dorim ca atunci cand primeste rank-ul sa il oblige sa si-l schimbe adaugam:
ForceClassSelection(para1); SetPlayerHealth(para1, 0);