[TuT] SSCANF u ZCMD komandama


Započeo []Flynâ„¢, Jul 25, 2011, 02:52:31 PRE PODNE

prethodna tema - sledeća tema

0 članova i 1 gost pregledaju ovu temu.

Zas mi ovo ne radi?

CMD:buyseed(playerid,params[])
{
	new kolicina,
	    string[128];
	new novac = GetPlayerMoney(playerid);
	if (sscanf(params, "i", kolicina)) SendClientMessage(playerid, COLOR_WHITE, "Koristi: /buyseed [koliko]");
	else
	{
		if(PlayerInfo[playerid][pJob] == 31)
		{
	    	if(GetPlayerInterior(playerid) == 5)
	    	{
	     		if(PlayerToPoint(1.5, playerid, 248.4491,305.4999,999.1484))
	 			{
	 			    if(GetPlayerMoney(playerid) < kolicina) { SCM(playerid,COLOR_WHITE,"(GRESKA) Nemate toliko novaca."); return 1; }
	                GivePlayerMoney(playerid, - kolicina);
	                PlayerInfo[playerid][sWeeds] += kolicina;
             	   	format(string, sizeof(string), "Kupili ste %d sijemenki, trenutno ih imate (%d)",kolicina,PlayerInfo[playerid][sWeeds]);
	   				SCM(playerid, COLOR_WHITE,string);
	   			}
		   	}
		}
	}
	return 1;
}


Ako vas vise zanima o modu posjetite forum ili mi posaljite PM!
Potrebni beta testeri! Ukoliko ste voljni posaljite PM!

Citat: [SS] lumpi. poslato Avgust 09, 2011, 13:17:28 POSLE PODNE
Zas mi ovo ne radi?

CMD:buyseed(playerid,params[])
{
	new kolicina,
	    string[128];
	new novac = GetPlayerMoney(playerid);
	if (sscanf(params, "i", kolicina)) SendClientMessage(playerid, COLOR_WHITE, "Koristi: /buyseed [koliko]");
	else
	{
		if(PlayerInfo[playerid][pJob] == 31)
		{
	    	if(GetPlayerInterior(playerid) == 5)
	    	{
	     		if(PlayerToPoint(1.5, playerid, 248.4491,305.4999,999.1484))
	 			{
	 			    if(GetPlayerMoney(playerid) < kolicina) { SCM(playerid,COLOR_WHITE,"(GRESKA) Nemate toliko novaca."); return 1; }
	                GivePlayerMoney(playerid, - kolicina);
	                PlayerInfo[playerid][sWeeds] += kolicina;
             	   	format(string, sizeof(string), "Kupili ste %d sijemenki, trenutno ih imate (%d)",kolicina,PlayerInfo[playerid][sWeeds]);
	   				SCM(playerid, COLOR_WHITE,string);
	   			}
		   	}
		}
	}
	return 1;
}

Vidi meni je ovdje sve ok pregledo sam po redu jedino ako mi nije nesto promaklo.
Jesi sve cmd u modu prebacio u ZCMD + SSCANF ili samo tu i njih jos jer ZCMD - DCMD-STRTOK ne idu zajedno tj uvjek se jedan poremeti tako je i meni bilo kad sam tek ucio sscanf
LOL

probaj
CMD:buyseed(playerid,params[])
{
   new kolicina,
       string[128];
   new novac = GetPlayerMoney(playerid);
   if (sscanf(params, "i", kolicina)) return SendClientMessage(playerid, COLOR_WHITE, "Koristi: /buyseed [koliko]");
   else
   {
      if(PlayerInfo[playerid][pJob] == 31)
      {
          if(GetPlayerInterior(playerid) == 5)
          {
              if(PlayerToPoint(1.5, playerid, 248.4491,305.4999,999.1484))
             {
                 if(GetPlayerMoney(playerid) < kolicina) return SCM(playerid,COLOR_WHITE,"(GRESKA) Nemate toliko novaca.");
                   GivePlayerMoney(playerid, - kolicina);
                   PlayerInfo[playerid][sWeeds] += kolicina;
                      format(string, sizeof(string), "Kupili ste %d sijemenki, trenutno ih imate (%d)",kolicina,PlayerInfo[playerid][sWeeds]);
                  SCM(playerid, COLOR_WHITE,string);
               }
            }
      }
   }
   return 1;
}
Uskoro novi stunt server iStunt. DoÄ'ite i zabavite se!




   
   




Dizajniram za $$$
Popis stvari koje radim:

Wallpaper √  Signature ×  Logo √  Dizajn stranice (Ne kodiranje) √  Baner √  Avatar √  Animacija √  Intro √

Radio sam novo, ovako i radilo je.
CMD:buyseed(playerid,params[])
{
	new
	kolicina,
	string[128],
	sijemenke = PlayerInfo[playerid][sWeeds];
	if (sscanf(params, "d", kolicina)) SendClientMessage(playerid, COLOR_WHITE, "Koristi: /buyseed [Iznos]");
    else
    {
		if(PlayerInfo[playerid][pJob] == 31)
		{
		if(PlayerToPoint(2.0,playerid,248.4491,305.4999,999.1484))
		{
        if(GetPlayerMoney(playerid) < kolicina*2) {  SendClientMessage(playerid, COLOR_WHITE,"[Greska]: Nemas toliko novaca kod sebe."); return 1; }
		if(kolicina > 50 || kolicina < 1) { SCM(playerid,COLOR_WHITE,"[Greska]: Minimalno 1 i maximalno 50."); return 1; }
		PlayerInfo[playerid][sWeeds] += kolicina;
        GivePlayerMoney(playerid, -	kolicina*2);
        format(string, sizeof(string), "Kupili ste %d sijemenki, trenutno ih imate (%d)",kolicina,sijemenke+kolicina);
		SendClientMessage(playerid, SVETLOPLAVA,string);
	   }
	   }
	   else
	   {
		 	SendClientMessage(playerid, COLOR_WHITE, "(info) Neznate koristiti ovu naredbu.");
	   }
    }
	return 1;
}


Ako vas vise zanima o modu posjetite forum ili mi posaljite PM!
Potrebni beta testeri! Ukoliko ste voljni posaljite PM!

Lep tutorial, samo sto ovo sto si objasnio za parametar 'f' ti i nije bas najbolje.

- "f" znaci ako koristis neku poziciju tj "Float",u ovom primeru ti napises /visina [kordinata] i portat ce te na isto mesto samo drugu visinu


ne znaci f da ako koristis neku poziciju, to jeste float, ali to govori procesu da iz stringa koji si mu prosledio kao source prvi parametar (u ovom slucaju i jedini) bude Float (decimalan broj) dakle lepo si rekao da se koristi za uzimanje pozicije, ali se koristi kada zelimo da nam vraceni parametar bude decimalan broj. ;)
t0xIc_S anonymous connections...