YCMD:withdraw/deposit


Započeo Vojinxt125x, Januar 02, 2018, 15:22:49 POSLE PODNE

prethodna tema - sledeća tema

0 članova i 1 gost pregledaju ovu temu.

Detaljan opis problema:
Kako da napravim da kada igrac kuca samo /withdraw  da mu izbaci SCM Koriscenje /withdraw [iznos] ?
Kako mogu da napravim da kada ubaci pare ili uzme iz  banke da  mu izbaci SCM Staro stanje =  i SCM Novo Stanje = (nekako da se sabere/oduzme  staro stanje + iznos koji je uneo ili kako vec to ide ? )

Dio skripte: //
Neke slike/video za lakse dobivanje pomoci(neobavezno): //

Za koriscenje ubaci nesto slicno ovome. Pisem iz glave tkd nisam siguran da li radi.
if(sscanf(params, "u", iznos)) return SendClientMessage(playerid, -1, "{2685EB}[xCN:RP]{FFFFFF} Koriscenje: /withdraw [IZNOS] "); //ako ne radi zameni u sa ud!

Za staro stanje  i novo stanje bi mogao neko iskusniji da ti pomogne.
Oduvek sam se pitao:
"Zbog cega se ljudi toliko brinu jedni za druge?",
"Zasto ljudi daju sve od sebe da usrece neku osobu?"

Najjednostavnije receno brinu se jer vole tu osobu celim svojim srcem,
daju sve od sebe da je usrece zbog toga sto ne zele da je ikada vide tuznom ili rasplakanom.
#xsarnaaparatima..

   Ako ti je u dialozi vako ako ne samo smeni ga da nije sa dialog.
if(dialogid == BANKMENU2)
		{
		if(response)
		{
		//if(dialogid == BANKMENU2)
		//{
			new cashdeposit = strval(inputtext);
			if (cashdeposit > GetPlayerMoney(playerid) || cashdeposit < 1)
			{
				SendClientMessage(playerid, COLOR_GRAD2, "   Nemate tolku");
				return 1;
			}
			GivePlayerMoney(playerid,-cashdeposit);
			new curfunds = PlayerInfo[playerid][pAccount];
			PlayerInfo[playerid][pAccount]=cashdeposit+PlayerInfo[playerid][pAccount];
			SendClientMessage(playerid, COLOR_WHITE, "|___ Banka ___|");
			format(string, sizeof(string), "  Stara smetka: $%d", curfunds);
			SendClientMessage(playerid, COLOR_GRAD2, string);
			format(string, sizeof(string), "  Vneseno: $%d",cashdeposit);
			SendClientMessage(playerid, COLOR_GRAD4, string);
			SendClientMessage(playerid, COLOR_GRAD6, "|-----------------------------------------|");
			format(string, sizeof(string), "  Nova smetka: $%d", PlayerInfo[playerid][pAccount]);
			SendClientMessage(playerid, COLOR_WHITE, string);
			OnPlayerUpdate(playerid);
			return 1;
		}
	}
//------------------------------------------------------------------------------
	if(dialogid == BANKMENU)
	{
		if(response)
		{
            new cashdeposit = strval(inputtext);
			if (cashdeposit > PlayerInfo[playerid][pAccount] || cashdeposit < 1)
			{
				SendClientMessage(playerid, COLOR_GRAD2, "   Nemate tolku !");
				return 1;
			}
	 	    ConsumingMoney[playerid] = 1;
			GivePlayerMoney(playerid,cashdeposit);
			PlayerInfo[playerid][pAccount]=PlayerInfo[playerid][pAccount]-cashdeposit;
			format(string, sizeof(string), " ** Imate izvadeno $%d od vasata smetka,Ostanato: $%d ", cashdeposit,PlayerInfo[playerid][pAccount]);
			SendClientMessage(playerid, COLOR_GREEN, string);
			return 1;
		}
	}

CMD:withdraw(playerid,params[])
{
    new string[50];
    if(sscanf(params, "i", params[0])) return SendClientMessage(playerid, -1, "/withdraw (iznos)");
    if(params[0] >= PlayerInfo[playerid][pNovacBanka]) return SendClientMessage(playerid, -1, "Error");
    GivePlayerMoney(playerid, params[0]);
    PlayerInfo[playerid][pNovacBanka] -= params[0];
    format(string, sizeof(string,), "Stari iznos racuna je %d$, novi %d$", PlayerInfo[playerid][pNovacBanka]+params[0],  PlayerInfo[playerid][pNovacBanka]-params[0]);
    SendClientMessage(playerid, -1, string);
    return 1;
}

nez hoce li raditi sad sam ustao, testiraj pa javi
heroin rap - Moskri u kuci, od sledece lajne glava ce mi puci

Hvala svima, posebno tebi Luka, kasnije cu proveriti da li radi :D 

Nesto nije uredu..
Postavim sebi u banci 10000, i idem /withdraw 1, on kaze stari iznos 10000$, novi 9998, a treba 9999$
Onda posle idem opet /withdraw i tada kaze stari iznos racuna je 9999$ a novi opet sjebe, znaci on stari iznos lepo napise, a novi sjebe..

CMD:bwithdraw(playerid,params[])
{
    if( !PlayerInfo[ playerid ][ xImaBRacun ] ) return GRESKA( playerid, "Prvo moras da otvoris racun u banci i uzmes karticu za bankomat." );
    if( IsPlayerInAnyVehicle( playerid ) ) return GRESKA( playerid, "Ne mozes koristiti ovu komandu dok si u vozilu." );
      if( GetNearestAtm( playerid ) == -1 ) return GRESKA( playerid, "Moras biti blizu bankomata." );
    new cashdeposit;
      if( sscanf( params, "d",cashdeposit ) )
   {
         SendUsageMessage( playerid, "/bwithdraw [ iznos ]");
         return 1;
   }
     if( cashdeposit > PlayerInfo[ playerid ][ xBRacun ] || cashdeposit < 1 ) return GRESKA( playerid, "Nemate toliko novca !");
      DajIgracuNovac( playerid, cashdeposit );
    UpdateDzepTD( playerid );
    PlayerInfo[ playerid ][ xBRacun ] -= cashdeposit ;
    format( globalstring, sizeof( globalstring ), "Podigli ste $%d s vaseg racuna. Na racunu ima: $%d ", cashdeposit, PlayerInfo[ playerid ][ xBRacun ] );
    SCM( playerid, ZUTA, globalstring); UpdateBankTD( playerid );
   return 1;
}
Ovo ti je kimanda za bankomat ali eto radi sve perfektno

Nasao sam problem, bespotrebno oduzimanje -params :D Hvala!