Peršokti į turinį
  • ŽAIDIMAI
  • , ŽAIDIMAI
  • ŽAIDIMAI

Negalima prašyti ar platinti betkokių žaidimą (multiplayer) palengvinančių programų ir scriptų! Kitaip bus taikoma 1.21. taisyklė

Žolės auginimas


#Andrius

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

Dalinuosi žolės auginimo sistema, yra tik 1 klaida, kuria rasite teksto apačioje po skriptu.

Žolės objektas atsiras ten kur stovėjote, tik ant žemės.

new CountDownFromAmount[MAX_PLAYERS];
new augazole[MAX_PLAYERS];
new zolesobj[MAX_PLAYERS];
new Text3D: narkotikaiauga[MAX_PLAYERS];

//žaidėjo saugomi kintamieji
enum _storyDB
{
	sekla,
	narkotikas,
	bool: arauga,
	bool: uzaugo
};

/*
	Funkcija kuri skaičiuoja kiek liko laiko iki augalas užauks,
	ant augalo rodys tekstą su laiku ir žaidėjo nicku.
*/
f_public: CountDownTimer(playerid)
{
	CountDownFromAmount[playerid]--;
	new String[256];
	if(CountDownFromAmount[playerid] == 0)
	{
    	SendClientMessage(playerid, -1, "{ff0000}Jūsų Augalas užaugo!");
    	format(String, sizeof(String), "{ffffff}Žolė užaugo\n{6ea0ff}/rinkti", CountDownFromAmount[playerid]);
		Update3DTextLabelText(narkotikaiauga[playerid], -1, String);
     	storyDB[playerid][uzaugo] = true;
    	KillTimer(augazole[playerid]);
	}
	else
	{
		format(String, sizeof(String), "{ffffff}Augalas auga, užaugs po: {6ea0ff}%d {ffffff}sekundžių\nPasodino: {6ea0ff}%s", CountDownFromAmount[playerid],GetPlayerNameEx(playerid));
		Update3DTextLabelText(narkotikaiauga[playerid], -1, String);
	}
	return 1;
}

//sodinti augalą turint reikalavimus ir esant zonoje.
CMD:sodinti(playerid, params[])
{
	if(!PlayerInZone(playerid, 235.2460, 1028.3866, 286.6552, 1101.7539)) return SendClientMessage(playerid, -1, "{ffffff}Nesate zonoje kurioje galite sodinti žolę!");
	if(storyDB[playerid][sekla] < 1) return SendClientMessage(playerid, -1, "{ffffff}Neturite sėklų, iš ko sodinsite augalą?!");
	if(storyDB[playerid][arauga] == true) return SendClientMessage(playerid, -1, "{ffffff}Jau turite pasodinę augalą, daugiau sodinti negalite!");

	new Float:po3[3];
	GetPlayerPos(playerid, po3[0], po3[1], po3[2]);
	zolesobj[playerid] = CreateObject(678, po3[0], po3[1], po3[2]-0.8, 0.0, 0.0, 0.0);

	new String[126];
    format(String, sizeof(String), "{ffffff}Augalas auga, užaugs po: {6ea0ff}%d {ffffff}sekundžių\nPasodino: {6ea0ff}%s", CountDownFromAmount[playerid],GetPlayerNameEx(playerid));
	narkotikaiauga[playerid] = Create3DTextLabel(String, -1, po3[0], po3[1], po3[2]-0.8, 15, 0, 0);

	CountDownFromAmount[playerid] = 120; // 7min.
	augazole[playerid] = SetTimerEx("CountDownTimer", 999, true, "d", playerid);

	storyDB[playerid][arauga] = true;

	return 1;
}
//surinkti užaugusį augalą
CMD:rinkti(playerid, params[])
{
    new Float:po3[3];
	if(IsPlayerInRangeOfPoint(playerid, 5.0, po3[0], po3[1], po3[2])) return SendClientMessage(playerid, -1, "{ffffff}Nesi prie augalo!");
	if(storyDB[playerid][uzaugo] == false) return SendClientMessage(playerid, -1, "{ffffff}Dar niekas neužaugo!");

	Delete3DTextLabel(narkotikaiauga[playerid]);
	DestroyObject(zolesobj[playerid]);
	new kiekgavonark = 1;
	new str[256];
	format(str, sizeof(str), "{CECE41}• Išrovėte augalą ir gavote: {ffffff}%s {CECE41}žolės.",konvertuoti_pinigus(kiekgavonark));
    SendClientMessage(playerid, -1, str);

    storyDB[playerid][narkotikas] += kiekgavonark;

	storyDB[playerid][uzaugo] = false;
	storyDB[playerid][arauga] = false;

	return 1;
}

/*
	note: Yra bėda, kad užaugus augalą, galės paimti jį iš betkurios vietos
	jai ir nėra šalia augalo. Žadėjau pataisyt, bet sutingau.
	Parašau, tik kad žinotumėte.
*/

 

Redaguota , nario #Andrius
  • Teigiamai 2
Nuoroda į komentarą
Dalintis per kitą puslapį

  • Parašė po 1 metų...
2020-03-17 23:47, Ziuzinas1123 parašė:

O kaip šita padaryti kad veiktu?

Nes nemato playerinzone ir StoryDB

Pasikeisk Į DB kurį naudoja tavo gamemodas.

Citata

stock PlayerInZone(playerid, Float:min_X, Float:min_Y, Float:max_X, Float:max_Y)
{
    new Float:pos[3]; GetPlayerPos(playerid, pos[0], pos[1], pos[2]);
    if((pos[0] <= max_X && pos[0] >= min_X) && (pos[1] <= max_Y && pos[1] >= min_Y)) return 1;
    return 0;
}

 

Nuoroda į komentarą
Dalintis per kitą puslapį

  • Parašė po 1 mėnesio...
4 minutes prieš, Kesa parašė:

new Float:po3[3];
if(IsPlayerInRangeOfPoint(playerid, 5.0, po3[0], po3[1], po3[2])) return SendClientMessage(playerid, -1, "{ffffff}Nesi prie augalo!");

Galit paaiskint ka sitas daro?? as nubas esu

čj patikrina ar žaidėjas yra prie "augalo", jeigu ne, išmeta žinutę, kad jis ne prie "augalo"????

Nuoroda į komentarą
Dalintis per kitą puslapį

20 minutes prieš, newyorkas parašė:

čj patikrina ar žaidėjas yra prie "augalo", jeigu ne, išmeta žinutę, kad jis ne prie "augalo"????

Sarkazmas cia buvo, taigi tas kintamasi 'po3' neturiu jokios nustatytos reiskmes tai, nelabai suprantu ka cia tikrina xD

Turetu but:

new Float:po3[3];
GetObjectPos(zolesobj[playerid], po3[0], po3[1], po3[2]);
if(IsPlayerInRangeOfPoint(playerid, 5.0, po3[0], po3[1], po3[2])) return SendClientMessage(playerid, -1, "{ffffff}Nesi prie augalo!");
Redaguota , nario Kesa
Nuoroda į komentarą
Dalintis per kitą puslapį

16 minutes prieš, Kesa parašė:

Sarkazmas cia buvo, taigi tas kintamasi 'po3' neturiu jokios nustatytos reiskmes tai, nelabai suprantu ka cia tikrina xD

Turetu but:


new Float:po3[3];
GetObjectPos(zolesobj[playerid], po3[0], po3[1], po3[2]);
if(IsPlayerInRangeOfPoint(playerid, 5.0, po3[0], po3[1], po3[2])) return SendClientMessage(playerid, -1, "{ffffff}Nesi prie augalo!");

gal aš pasenau ir nk nebeatsimenu, bet negali būt taip, kad po3 globalus žolės objekto kintamasis???? aš nubas esu

Nuoroda į komentarą
Dalintis per kitą puslapį

3 minutes prieš, newyorkas parašė:

gal aš pasenau ir nk nebeatsimenu, bet negali būt taip, kad po3 globalus žolės objekto kintamasis???? aš nubas esu

tai nėra globalus kintamasis, nes sukuriamas pačioje funkcijoje. @Kesa teisus, reikia gauti objektu poziciją ar kažką panašaus, nežėjau pilnai kodo

Nuoroda į komentarą
Dalintis per kitą puslapį

21 minutes prieš, mariusqw parašė:

nu jus ce ir pawarot skriptaviciaus if if else else for for new new

pamokykit mane pls as nemoku taip skript

Haha, pamokinsiu. Ką čia žiūri temas 2018 metų... xd

Redaguota , nario Admin_Chilleris
  • Teigiamai 1
Nuoroda į komentarą
Dalintis per kitą puslapį

2020-04-28 23:56, mariusqw parašė:

nu jus ce ir pawarot skriptaviciaus if if else else for for new new

pamokykit mane pls as nemoku taip skript

lopiny atsidaryk savo liberty gm, dar ne tokiu bairiu pamatysi, didysis skripteris atsirado :DDD

Redaguota , nario Flawless
  • Teigiamai 1
Nuoroda į komentarą
Dalintis per kitą puslapį

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