Peršokti į turinį

.:GRP:. Išsamus ginklų dėžės kurimas


Bulderis

Ši tema yra neaktyvi. Paskutinis pranešimas šioje temoje buvo prieš 4576 dienas (-ų). Patariame sukurti naują temą, o ne rašyti naują pranešimą.

Už neaktyvių temų prikėlimą galite sulaukti įspėjimo ir pranešimo pašalinimo!

Recommended Posts

Sveiki taigi šendien nebuvo ka veikti tai nusprendžiau sukurti kanors naudingo kas padėtu kitiem. Taigi nueinam i koki nors serverį arba i Samp_debug. Nuvyke i norima vieta rašome: /save manodeze ( vietoj manodeze galit rasyti savo žodi aš kaip pvz.)Tada einam pasimti kordinačių pas kitų būna GTA SA direktorijoje o pas mane yra kordiantės my documents/Gta San Andreas User Files/SAMP/ ir matome .txt failiuką pavadinimu savedpositions.txt atidare jį matome kordinates pas mane yra tokios:

AddPlayerClass(293,-690.4031,939.5333,13.6328,87.9463,0,0,0,0,0,0); // manodeze

Na aišku pas jūsų bus kitokios

Toliau einame į savo serverio folderį > gamemodes folderį > data folderį ir ir matome "pickups.txt" atidare ji pačiam viršuj po:

enum pdata,

Ir iskarto po "enum pdata" rasome "manodeze"

maždaug viskas turėtu atrodyti taip:

enum pdata,

manodeze,

Toliau , tame pačiame "pickups.txt" dokumente po kokio nors darbo rašome kordinates aš rašiau po:

pickups[0][medikai]=CreatePickupA(1275 ,2,-2637.1335,696.0988,27.9387); //Mediku darbas

(P.S. GALIMA SUSIRASTI IR KITOKIĄ , BET TURI BŪTI PRIE VISŲ PICKUP'Ų.)

Po ta eilute dedame šią eilutę:

pickups[1][manodeze]=CreatePickupA(1220 ,2,-2173.7249,709.6575,53.8906); //Mano ginklu deze

P.S. Trumpai paaiškinsiu , kas yra kas.

CreatePickupA - Pickupo sukūrimo komanda.

1220 - Pickupo modelis

2 - pickupo tipas ( kitokius tipus galit rasti http://wiki.sa-mp.com/wiki/PickupTypes )

-2637.1335 - X Koordinatės

696.0988 - Y Koordinatės

53.8906 - Z Koordinatės

Taigi pickupas jau baigtas kurti , tačiau jis neturi savųjų funkcijų..

Pereikime prie savo gamemode pawn.

Įsijungę savo gamemode susirandame:

public OnPlayerPickUpPickup(playerid, pickupid)

{

callback (lengviausiu būdu ji galite rasti paspaude ctrl+f copy-paste)

Toliau...

Po juo dedame šį scriptą: po public OnPlayerPickUpPickup(playerid, pickupid)

if(pickupid == pickups[1][manodeze])

{

if(playerDB[playerid][specialybe] != SPECID) // Vietoj SPECID irašote savo specelybes ID juo galit rasti savo gamemode playerDB.

{

SendClientMessage(playerid,RED,"* Jei norite paimti ginklus,turite priklausyti gaujai!");

return 1;

}

if(GetPlayerMoneyA(playerid) < 5000) // kiek nuskaičiuoja pinigų už dėžę. šiuo atvėju 5000 galit susimažinti suma arba pasididinti

{

SendClientMessage(playerid,BLUE,"* Ginklų kaina 5000LT.");

return 1;

}

GivePlayerMoneyA(playerid,-1000);

SendClientMessage(playerid,GREEN,"* Gero šaudymo ginklus naudok tik kilus pavojui!");

GivePlayerWeapon(playerid,34,100); // SNIPER - vietoj 100 galit pasikeist į kitą kulkų skaičių

GivePlayerWeapon(playerid,30,100); // AK-47

GivePlayerWeapon(playerid,25,100); // Pompa(shotgun)

GivePlayerWeapon(playerid,22,100); // Pistoletai(du)

return 1;

}

ir spaudžiam F5 neturėtu mesti eroor o jeigu mes ikelkit čia kokius meta bandysiu pagalbėti o tie 34,30,25,22 yra ginklų ID juos galite rasti http://weedarr.wikidot.com/gunlist

Pamoka kurta by Bulderis draudžiama pamoka ripinti. Tikiuosi padėjau Sry... už rašybos klaidas arba netikslumu ir nepykit jeigu buvo tokia pamoka :D

Jeigu padėjau +r3p nepagailėkit

  • Teigiamai 1
Nuoroda į komentarą
Dalintis per kitą puslapį

if(GetPlayerMoneyA(playerid) < 5000) // kiek nuskaičiuoja pinigų už dėžę. šiuo atvėju 5000 galit susimažinti suma arba pasididinti

Šitas kodas yra naudojamas, kad patikrintų, ar žaidėjas turi 5000$. Bet,

GivePlayerMoneyA(playerid,-1000); šitas kodas nuskaičiuoja tik 1000$.

Manau yra tokių kurie nemoka pakeisti tokių dalykų. Tad, jei jie visą šitą scriptą kels į modą, kas bus: nueina žaidėjas su 0$ rankose prie dėžės, rašo jam reikia 5000$. Dirba, dirba, užsidirba 5k, o jam reikėjo tik 1k :D. Šiaip, naujokams pravers.

Nuoroda į komentarą
Dalintis per kitą puslapį

if(GetPlayerMoneyA(playerid) < 5000) // kiek nuskaičiuoja pinigų už dėžę. šiuo atvėju 5000 galit susimažinti suma arba pasididinti

Šitas kodas yra naudojamas, kad patikrintų, ar žaidėjas turi 5000$. Bet,

GivePlayerMoneyA(playerid,-1000); šitas kodas nuskaičiuoja tik 1000$.

Manau yra tokių kurie nemoka pakeisti tokių dalykų. Tad, jei jie visą šitą scriptą kels į modą, kas bus: nueina žaidėjas su 0$ rankose prie dėžės, rašo jam reikia 5000$. Dirba, dirba, užsidirba 5k, o jam reikėjo tik 1k :D. Šiaip, naujokams pravers.

kaškaip nesupratau ka čia norėjai pasakyti :D

Nuoroda į komentarą
Dalintis per kitą puslapį

if(GetPlayerMoneyA(playerid) < 5000) // kiek nuskaičiuoja pinigų už dėžę. šiuo atvėju 5000 galit susimažinti suma arba pasididinti

Šitas kodas yra naudojamas, kad patikrintų, ar žaidėjas turi 5000$. Bet,

GivePlayerMoneyA(playerid,-1000); šitas kodas nuskaičiuoja tik 1000$.

Manau yra tokių kurie nemoka pakeisti tokių dalykų. Tad, jei jie visą šitą scriptą kels į modą, kas bus: nueina žaidėjas su 0$ rankose prie dėžės, rašo jam reikia 5000$. Dirba, dirba, užsidirba 5k, o jam reikėjo tik 1k :D. Šiaip, naujokams pravers.

kaškaip nesupratau ka čia norėjai pasakyti :D

Tikrini, ar žaidėjas turi 5k, bet nuskaitai iš jo tik 1k... Pagal šią pamoką.
Nuoroda į komentarą
Dalintis per kitą puslapį

Ši tema yra neaktyvi. Paskutinis pranešimas šioje temoje buvo prieš 4576 dienas (-ų). Patariame sukurti naują temą, o ne rašyti naują pranešimą.

Už neaktyvių temų prikėlimą galite sulaukti įspėjimo ir pranešimo pašalinimo!

Svečias
Ši tema yra užrakinta.
  • Šiame puslapyje naršo:   0 nariai

    • Nėra registruotų narių peržiūrinčių šį forumą.

Skelbimai


×
×
  • Sukurti naują...