Peršokti į turinį

Gun shop (Su CheckPoint Streamer)


Nartu

Ši tema yra neaktyvi. Paskutinis pranešimas šioje temoje buvo prieš 5086 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

Pradėsime nuo to, kad mums reikės CheckPoint Streamer.

Siunčiamės šį paketą: http://www.dreft.ql.lt/gunshop/cpstreamer.rar

Paketą išskleiskite į savo serverio direktoriją /pawno/includes/.

Dabar atsidarykite savo GameMode ir virš main() įrašykite:

#include

Tada po “callback’u” OnGameModeInit() įrašykite:

CreateObject(16337,297.141479,-37.940299,1000.985046,0.000000,0.000000,271.225830);

CreateObject(16337,296.626007,-80.429107,1001.047973,0.000000,0.000000,270.912475);

CreateObject(16337,289.552642,-109.586135,1001.046264,0.000000,0.000000,92.647529);

CreateObject(16337,307.257202,-141.128860,999.165527,0.000000,0.000000,87.634147);

CreateObject(16337,312.034240,-165.952667,999.125976,0.000000,0.000000,89.200828);

Šie objektai uždengs CheckPoint‘us, kurie būna įėjus į Ammunation parduotuvę.

Dabar sekanti dalis – CheckPoint sukūrimas.

Po OnGameModeInit įrašykite:

DOCP_OnGameModeInit(); // CheckPoint Streamer įjungimas

CreateCheckpoint(X,Y,Z,interior,dydis,distancija,true);

X, Y, Z – Vieta, kur turi būti CheckPoint.

Interior – Jei CheckPoint yra kažkokiame pastate įrašykite pastato Interior ID(jį galit sužinote įėję į pastatą ir parašę /interior), jei CheckPoint lauke – įrašykite 0.

Dydis – CheckPoint dydis. Rekomenduoju 3-5 dydį.

Distancija – Kokiu atstumu nuo CheckPoint turi būti žaidėjas, kad jį pamatytų. Siūlau rašyti 30.

True – Čia galima nurodyti ar rodyti CheckPoint visiems žaidėjams. Paliekam „true“.

Tinginiai galit rašyti:

CreateCheckpoint(286.6684,-34.1428,1001.5156,1,3,30,true);

Tai sukurs CheckPoint‘ą SF AmmuNation parduotuvėje.

Jau turime sukurtą CheckPoint‘ą. Dabar, kad pilnai veiktų CPS(CheckPoint Streamer) po OnPlayerDisconnect() įrašykite:

DOCP_OnPlayerDisconnect(playerid);

Dabar vėl virš main() įrašome tokį kodą:

new Menu:GunShop; // Meniu kintamasis kuris bus priskirtas mūsų GunShop Meniu.

Tada po OnGameModeInit() rašome:

GunShop = CreateMenu("Ammunation", 2, 200.0, 100.0, 150.0, 150.0);

AddMenuItem(GunShop, 0, "Deagle"); // sukuriame meniu laukelį Deagle.

AddMenuItem(GunShop, 1, "1000$"); // Kitas laukelis kuris bus šone „Deagle“, jo kaina.

AddMenuItem(GunShop, 0, "Armor"); // tas pats kaip ir aukščiau

AddMenuItem(GunShop, 1, "500$"); // tas pats kaip ir aukščiau

Dabar turime Ammunation meniu, tačiau jis dar neužbaigtas.

Po „callback‘u“ OnPlayerSelectedMenuRow () įrašome:

TogglePlayerControllable(playerid,1); // kai žaidėjas pasirinks kažkūri meniu punktą, mes jį atšaldysime.

new Menu:CurrentMenu = GetPlayerMenu(playerid); // Priskiriame kintamajį CurrentMenu, tam meniu, kurį dabar mato žaidėjas.

if(CurrentMenu == GunShop) // jeigu žaidėjas mato Meniu GunShop, kuris yra GunShop meniu tai >>>

{

switch(row)

{

case 0: // pirmoji meniu eilutė:

{

if(GetPlayerMoney(playerid) < 1000) // jei turi mažiau pinigų nei 1000$ tai >>>

return SendClientMessage(playerid,0x00FFFFFF,"Nepakanka $$"); // siunčia šią žinutę

GivePlayerMoney(playerid, -1000); // atimam 1000$

GivePlayerWeapon(playerid, 24, 500); // duodam 500 kulkų ginklo Desert Eagle

SendClientMessage(playerid,0x00FFFFFF,"Nusipirkai Deagle"); // nusiunciam žinutę

}

case 1: // antroji meniu eilutė

{

if(GetPlayerMoney(playerid) < 500) // jei turi mažiau pinigų nei 500$ tai >>>

return SendClientMessage(playerid,0x00FFFFFF,"Nepakanka $$"); // siunčia šią žinutę

GivePlayerMoney(playerid, -500); // atimam 500$

SetPlayerArmour(playerid, 100); // duodam 100 šarvų

SendClientMessage(playerid,0x00FFFFFF,"Nusipirkai sarvu"); // nusiunciam žinutę

}

}

}

Toliau po „callback‘u“ OnPlayerExitedMenu() įrašome:

TogglePlayerControllable(playerid,1);

Tai atšaldys žaidėją kai jis išjungs meniu.

Toliau >>>

Susirandame „callback‘ą“ OnPlayerEnterCheckpoint() ir jame rašome:

switch(GetPlayerCheckpoint(playerid))

{

case 0: //mūsų sukurtas GunShop CheckPoint yra pirmasis su šiuo CP streamer, todėl čia rašome 0, antrajam CP reiktų rašyti 1 ir t.t.(Jei kažkas naudojate tokį patį CP Streamer, žiūrėkite, kad nesusimaišytų CP id.

{

ShowMenuForPlayer(GunShop,playerid); // parodom mūsų sukurtą meniu

TogglePlayerControllable(playerid,0); // užšaldom žaidėją

}

}

Dabar vos tik žaidėjas užlips ant mūsų sukurto CheckPoint, jis pamatys mūsų sukurtą Meniu.

Tai ir viskas :)

GameMode su GunShop: http://www.dreft.ql.lt/gunshop/gunshop.rar

Nuoroda į komentarą
Dalintis per kitą puslapį

Ši tema yra neaktyvi. Paskutinis pranešimas šioje temoje buvo prieš 5086 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ą...