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

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

(redaguota)

Sveiki , pasidariau timeri ir jis man nesuveikia , timeris paleidžiamas kaip yra įvedama tam tikra komanda,  kame gali būti problema ?

new krovinistaimer; 
krovinistaimer =SetTimer("krovinys", 60000, false);
forward krovinys(playerid);
public krovinys(playerid)
{
	new gpdrkzin[50]
   	format(gpdrkzin,sizeof(gpdrkzin),"Krovinio automobilį jau galitę sukurti.");
	for(new i=0;i<MAX_PLAYERS;i++)
	{
		if(IsPlayerConnected(i))
		{
			if(playerDB[i][plead] == 15)
			{
				SendClientMessage(i,Raudona,gpdrkzin);
				kroviniotimerisknt = 0;
				print("[ PRINT ] Krovinio mašina jau galima sukurti")
				KillTimer(krovinistaimer);
			}
		}
	}

Redaguota , nario dzeronimo

Ne vienas dalykas blogai su šiuo kodu....

 

  • Funkcija krovinys turi parametrą "playerid", bet paleidžiant timerį tu neduodi jai tokio argumento. Negalima tiesiog išgalvot parametrų.
  • Kadangi funkcija turi tą "playerid" sprendžiu kad timeris gali būti paleistas keliems žaidėjams. Tai kodėl kintamasis tik vienas?
  • Ar išvis reikia to kintamojo? Ar kur nors naudoji KillTimer?

Reikia Pawn pagalbos? Skype nerašyk.

 

 

 

 

 

 

 

Ne vienas dalykas blogai su šiuo kodu....

 

  • Funkcija krovinys turi parametrą "playerid", bet paleidžiant timerį tu neduodi jai tokio argumento. Negalima tiesiog išgalvot parametrų.
  • Kadangi funkcija turi tą "playerid" sprendžiu kad timeris gali būti paleistas keliems žaidėjams. Tai kodėl kintamasis tik vienas?
  • Ar išvis reikia to kintamojo? Ar kur nors naudoji KillTimer?

 

KillTimer naudoja kaip paskutinę public'o funkciją, tik nemanau kad tai reikalinga, nes jeigu jis nesikartoja tai manau jog jį paleidžia vieną kart ir susinaikina, ar ne?

KillTimer naudoja kaip paskutinę public'o funkciją, tik nemanau kad tai reikalinga, nes jeigu jis nesikartoja tai manau jog jį paleidžia vieną kart ir susinaikina, ar ne?

Taip, tas KillTimer yra visiškai beprasmis. Kai ten prieina kodo vykdymas timeris jau yra pasibaigęs. 

 

Bet tas KillTimer sukelia dar problemų dėl to vieno kintamojo. Situacija:

  • Vienas žaidėjas parašo komandą ir paleidžiamas timeris. Jo ID priskiriamas kintamajam
  • Laikas eina, kitas žaidėjas parašo komandą ir paleidžiamas dar vienas timeris. Jo ID priskiriamas tam pačiam kintamajam
  • Pirmojo timerio laikas praeina ir iškviečia tą funkciją. Jo pabaigoje bus atšauktas antrasis timeris.

Problema: antras timeris neiškvies funkcijos.

Reikia Pawn pagalbos? Skype nerašyk.

 

 

 

 

 

 

 

Ne vienas dalykas blogai su šiuo kodu....

 

  • Funkcija krovinys turi parametrą "playerid", bet paleidžiant timerį tu neduodi jai tokio argumento. Negalima tiesiog išgalvot parametrų.
  • Kadangi funkcija turi tą "playerid" sprendžiu kad timeris gali būti paleistas keliems žaidėjams. Tai kodėl kintamasis tik vienas?
  • Ar išvis reikia to kintamojo? Ar kur nors naudoji KillTimer?

 

 

"playerid" parametro anksčiau nebuvau įdėjas , dabar kažkokia durna mintis kylo įrašyti ir įrašiau

Timeris yra tik vienam žmogui t.y Ginklu prekeiviu direktoriui , kad praneštu jog gali vėl sukurti tr.priemonę

KillTimer(krovinistaimer);

 

 

KillTimer naudoja kaip paskutinę public'o funkciją, tik nemanau kad tai reikalinga, nes jeigu jis nesikartoja tai manau jog jį paleidžia vieną kart ir susinaikina, ar ne?

 

Pasibaigus timeriui , GP drk vėl parašo komanda ir timeris vėl yra paleidžiamas

"playerid" parametro anksčiau nebuvau įdėjas , dabar kažkokia durna mintis kylo įrašyti ir įrašiau

Timeris yra tik vienam žmogui t.y Ginklu prekeiviu direktoriui , kad praneštu jog gali vėl sukurti tr.priemonę

KillTimer(krovinistaimer);

 

 

 

Pasibaigus timeriui , GP drk vėl parašo komanda ir timeris vėl yra paleidžiamas

KillTimer esmės vistiek nepaaiškina... Tas timeris ar taip ar taip baigsis po nurodyto laiko. 

 

Grįžtu prie playerid. Nemanai kad vertėtų jį perduoti funkcijai? Kam iš naujo ieškoti KURIS žaidėjas yra tas direktorius, jei prieš tai žinojai.

SetTimerEx("krovinys", 60000, false,"i",playerid); // Taip suprantu kad toj komandą pats direktorisu ir naudos.

forward krovinys(playerid);
public krovinys(playerid)
{
	new gpdrkzin[50]
   	format(gpdrkzin,sizeof(gpdrkzin),"Krovinio automobilį jau galitę sukurti.")'
	SendClientMessage(i,Raudona,gpdrkzin);
	kroviniotimerisknt = 0;
	print("[ PRINT ] Krovinio mašina jau galima sukurti")

}

Kodas ryškiai sutrumpėja ir supaprastėja.

Reikia Pawn pagalbos? Skype nerašyk.

 

 

 

 

 

 

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

Prisijungti prie diskusijos

Palikti atsakymą galite iš karto, o užsiregistruoti vėliau. Jeigu jau turite paskyrą mūsų forume, Prisijunkite.

Svečias
Atsakyti šioje temoje...

×   Įklijuotas tekstas turi teksto formatavimą.   Pašalinti teksto formatavimą

  Galimi tik 75 veidukai.

×   Nuoroda buvo automatiškai įterpta.   Įterpti nuorodą paprastai

×   Jūsų ankstesnis pranešimas buvo atkurtas.   Išvalyti redaktorių

×   Jūs negalite įkelti nuotraukas tiesiogiai.Įkelkite arba įdėkite nuotraukas iš URL.

  • Šiame puslapyje naršo:   0 nariai

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

Skelbimai


×
×
  • Sukurti naują...