Dispara agachado y no gasta balas
#1

Buenas tardes, tengo un problema a la hora de alguien tener un arma por ejemplo, deagle o ak 47, sea cual sea el arma, si te agachas y comienzas a rodar hacia los lados y disparas repetidamente pues no te cuenta las balas pero sн que puedes seguir disparando. Haber como se puede solucionar esto...

Tambiйn otro problemita es el sistema de arkas, gasolinera,... quisiera saber como se llama esa funcion para repararla, si me pueden dar un ejemplo del codigo mejor... el codigo de las arkas es este (para sacar dinero).

Код:
	if(strcmp(cmd, "/arcas", true) == 0)
	{
		if(PlayerInfo[playerid][pMember] == 5 && PlayerInfo[playerid][pRank] == 6 || PlayerInfo[playerid][pAdmin] == 4)
		{
			tmp = strtokex(cmdtext, idx);
			if(!strlen(tmp))
			{
				SendClientMessage(playerid, Blanco, "USO: /arcas [1-2-3-4-5-7][Nombre] [Cantidad]");
				return 1;
			}
			for(new i = 0; i < sizeof(ArcasInfo); i++)
			{
	 			new llave = strval(tmp);
	    		if (ArcasInfo[i][aId] == llave)
	      		{
	         		tmp2 = strtokex(cmdtext, idx);
					if(!strlen(tmp2))
					{
						SendClientMessage(playerid, Blanco, "USO: /arcas [1-2-3-4-5-7][Nombre] [Cantidad]");
						SendClientMessage(playerid, AzulClaro, "Arcas: Ver, Sacar, Depositar");
						return 1;
					}
					if(strcmp(tmp2,"Ver",true) == 0)
	 				{
						new dueno[15];
						if(ArcasInfo[i][aOwner] == 0) dueno = "Gobierno";
						else if(ArcasInfo[i][aOwner] == 1) dueno = "LSPD";
						else if(ArcasInfo[i][aOwner] == 2) dueno = "LSMD";
						else if(ArcasInfo[i][aOwner] == 3) dueno = "LSTD";
						else if(ArcasInfo[i][aOwner] == 4) dueno = "San News";
						else if(ArcasInfo[i][aOwner] == 5) dueno = "Gobierno";
						else if(ArcasInfo[i][aOwner] == 7) dueno = "LSJD";
						else if(ArcasInfo[i][aOwner] == 10) dueno = "Idlewod";
						else if(ArcasInfo[i][aOwner] == 11) dueno = "Las Flores";
						else if(ArcasInfo[i][aOwner] == 12) dueno = "Jefferson";
						else if(ArcasInfo[i][aOwner] > 0) format(dueno,sizeof(dueno),"%d",ArcasInfo[i][aOwner]);

						format(string,sizeof(string), "------%s------[%d]", ArcasInfo[i][aNameArca], ArcasInfo[i][aId]);
						SendClientMessage(playerid, Naranja, string);
						format(string,sizeof(string), "Dueсo: %s ", dueno);
						SendClientMessage(playerid, AmarilloClaro, string);
						format(string,sizeof(string), "Total $$: %d$",ArcasInfo[i][aDinero]);
						SendClientMessage(playerid, AmarilloClaro, string);
						if(ArcasInfo[i][aId] == 2)
						{
							format(string,sizeof(string), "Sangre: %d",ArcasInfo[i][aSangre]);
							SendClientMessage(playerid, AmarilloClaro, string);
						}
						if(ArcasInfo[i][aId] == 4)
						{
							format(string,sizeof(string), "Fondos: %d$",ArcasInfo[i][aFondos]);
							SendClientMessage(playerid, AmarilloClaro, string);
						}
					}

					if(strcmp(tmp2,"Sacar",true) == 0)
	 				{
	  					new money;
	    				tmp3 = strtokex(cmdtext, idx);
						money = strval(tmp3);
						if(!strlen(tmp3) || !IsNumeric(tmp3)) { SendClientMessage(playerid, Blanco, "USO: /arcas [1-2-3-4-5][Nombre] [Cantidad]"); return 1; }
						if(ArcasInfo[i][aDinero] < money)
						{
							SendClientMessage(playerid, Rojo, "* Cantidad Incorrecta.");
							return 1;
						}
						ArcasInfo[i][aDinero] -= money;
						SaveArcas(i);
						SafeGivePlayerMoney(playerid, money);
						format(string,sizeof(string), "Has sacado: %d$", money);
	 					SendClientMessage(playerid, AmarilloClaro, string);
					}

					if(strcmp(tmp2,"Depositar",true) == 0)
	 				{
	  					new money;
	    				tmp3 = strtokex(cmdtext, idx);
						money = strval(tmp3);
						if(!strlen(tmp3) || !IsNumeric(tmp3)) { SendClientMessage(playerid, Blanco, "USO: /arcas [1-2-3-4-5][Nombre] [Cantidad]"); return 1; }
						if(SafeGetPlayerMoney(playerid) >= money)
						{
							ArcasInfo[i][aDinero] += money;
							SaveArcas(i);
							SafeGivePlayerMoney(playerid, - money);
	  						format(string,sizeof(string), "Has depositado: %d$", money);
	       					SendClientMessage(playerid, AmarilloClaro, string);
						}
						else
						{
							SendClientMessage(playerid, Rojo, "* Cantidad incorrecta");
						}
					}
				}
			}
		}
		else
		{
		    SendClientMessage(playerid, Rojo, "No perteneces a una facciуn pъblica o no eres un alto rango");
		}
		return 1;
	}
Quisiera saber eso, como limitar una cantidad, ejemplo a la hora de sacar dinero de las arcas que no te deje introducir mas de 3 o 4 cifras de una sola vez por ejemplo, al igual con la gasolina, /llenar [litros]
Reply


Messages In This Thread
Dispara agachado y no gasta balas - by Aleelpalmero - 25.01.2016, 16:21
Respuesta: Dispara agachado y no gasta balas - by aoEXE - 25.01.2016, 16:46
Respuesta: Dispara agachado y no gasta balas - by Aleelpalmero - 25.01.2016, 20:09

Forum Jump:


Users browsing this thread: 3 Guest(s)