[Ajuda] Arrumar bug comprar 2 casas
#1

Alguйm arruma pra mim? Quando eu compro uma casa q tem outra perto, compra as duas...
Ql melhor forma de resolver isso? Uma variavel de MAX_PLAYERS ou sу abaixar pra 1.0 jб resolve?

Код:
CMD:buyhouse(playerid) {
		if(housekey[playerid] > 0) return SendClientMessage(playerid, COLOR_RED, "Vocк jб tem uma casa.");
		for(new houseid; houseid < MAX_HOUSES; houseid++)
		{
			if (PlayerToPoint(3.0, playerid, HouseInfo[houseid][OutPosX], HouseInfo[houseid][OutPosY], HouseInfo[houseid][OutPosZ]  ))
			{
				if(HouseInfo[houseid][Owner] == 1) return SendClientMessage(playerid, COLOR_RED, "Essa casa jб possui dono, tente comprar do dono!");
				if(HouseInfo[houseid][Price] >= 1 && HouseInfo[houseid][Price] <= 30) {
					if(DP[playerid] <  HouseInfo[houseid][Price] ) return SendClientMessage(playerid, COLOR_RED, "Vocк nгo tem DPs suficiente.");
					DP[playerid] -= HouseInfo[houseid][Price];
				}
				else if(HouseInfo[houseid][Price] >= 31) {
					if(admin[playerid] >= 6 && HouseInfo[houseid][Price] == 250000) {
						new string[128];
						format(string,sizeof(string),"AdmCmd: %s comprou uma FREE (houseid: %i).", houseid);
						ABroadCast(COLOR_LIGHTRED, string, 6);
						writeLog("LOGS/buyhouseFREE.txt",string);
					}
					else {
						if(GetPlayerMoneyEx(playerid) <  HouseInfo[houseid][Price] ) return SendClientMessage(playerid, COLOR_RED, "Vocк nгo tem dinheiro suficiente.");
						GivePlayerMoneyEx(playerid, -HouseInfo[houseid][Price]);
					}
				}
				new Name1[MAX_PLAYER_NAME];
				format(Name1, sizeof(Name1), "%s", HouseInfo[houseid][Dono]);
				if(!strcmp(Name1, "Empty", true)) {
					new NameDono[30];
					NameDono = PlayerName(playerid);
					HouseInfo[houseid][Dono] = NameDono;
					HouseInfo[houseid][Owner] = 1;
					PlayerPlaySound(playerid, 5450, 0.0, 0.0, 0.0);
					housekey[playerid] = HouseInfo[houseid][ID];
					RefreshHouses();
				} else {
					SendClientMessage(playerid, COLOR_GREY, "Essa casa jб tem dono!");
				}
			}
		}
		return 1;
}
Reply
#2

Aqui define a range que ele detecta para comprar a casa.

Код:
if (PlayerToPoint(3.0, playerid, HouseInfo[houseid][OutPosX], HouseInfo[houseid][OutPosY], HouseInfo[houseid][OutPosZ]  ))
			{
Diminuindo esse valor, dependendo da distвncia entre as casas, acredito que o problema seja solucionado.
Reply
#3

Quote:
Originally Posted by Monotox
Посмотреть сообщение
Aqui define a range que ele detecta para comprar a casa.

Код:
if (PlayerToPoint(3.0, playerid, HouseInfo[houseid][OutPosX], HouseInfo[houseid][OutPosY], HouseInfo[houseid][OutPosZ]  ))
			{
Diminuindo esse valor, dependendo da distвncia entre as casas, acredito que o problema seja solucionado.
A minha pergunta era justamente essa, se eu muda-se pra 1.0, nгo teria risco de pegar 2 casas ou era melhor fazer de outro jeito?
Reply
#4

Quote:
Originally Posted by pdonald
Посмотреть сообщение
A minha pergunta era justamente essa, se eu muda-se pra 1.0, nгo teria risco de pegar 2 casas ou era melhor fazer de outro jeito?
Dessa forma acredito que seu problema serб solucionado. Acredito que seu gamemode jб tenha limitaзгo de uma casa para cada jogador e isso seja um bug por compra-las ao mesmo tempo, entгo nгo vejo outra soluзгo a nгo ser limitar a range.
Reply
#5

Quote:
Originally Posted by Monotox
Посмотреть сообщение
Dessa forma acredito que seu problema serб solucionado. Acredito que seu gamemode jб tenha limitaзгo de uma casa para cada jogador e isso seja um bug por compra-las ao mesmo tempo, entгo nгo vejo outra soluзгo a nгo ser limitar a range.
Entгo ta, obrigadгo
Sу queria ter certeza
Reply


Forum Jump:


Users browsing this thread: 1 Guest(s)