Olб galera. Estou com um problema.. Й o seguinte: eu estou fazendo um sistema de casas e na parte de entrar e sair da casa estб acontecendo um bug. Eu crio a casa 0 e а compro, logo apуs crio e compro a casa 1. Quando eu entro na casa 0, eu aperto F novamente e saio da casa, normalmente. Mas quando eu entro na casa 1 e aperto F para sair, eu paro em cima da casa 0, sendo que o certo seria eu parar em cima da casa 1. Eu estava vendo o cуdigo e entendi qual й o erro, mas quando eu penso em alguma coisa eu bugo, entгo se conseguirem me ajudar, agradeзo.
Code:
if(newkeys == 16)
{
for(new i = 0; i < MAX_CASAS; i++)
{
new StringCasa[123];
format(StringCasa, sizeof(StringCasa), "Casas/Casa/Casa %i.ini", i);
if(IsPlayerInRangeOfPoint(playerid, 2.0, DOF2_GetFloat(StringCasa, "PosX"), DOF2_GetFloat(StringCasa, "PosY"), DOF2_GetFloat(StringCasa, "PosZ")))
{
SetPlayerVirtualWorld(playerid, DOF2_GetInt(StringCasa, "ID"));
SetPlayerInterior(playerid, DOF2_GetInt(StringCasa, "InteriorID"));
SetPlayerPos(playerid, DOF2_GetFloat(StringCasa, "PosIntX"), DOF2_GetFloat(StringCasa, "PosIntY"), DOF2_GetFloat(StringCasa, "PosIntZ"));
new string[123];
format(string, 123, "entrei na casa %i", DOF2_GetInt(StringCasa, "ID"));
msg(playerid, -1, string);
return 1;
}
else if(IsPlayerInRangeOfPoint(playerid, 2.0, DOF2_GetFloat(StringCasa, "PosIntX"), DOF2_GetFloat(StringCasa, "PosIntY"), DOF2_GetFloat(StringCasa, "PosIntZ")))
{
SetPlayerVirtualWorld(playerid, 0);
SetPlayerInterior(playerid, 0);
SetPlayerPos(playerid, DOF2_GetFloat(StringCasa, "PosX"), DOF2_GetFloat(StringCasa, "PosY"), DOF2_GetFloat(StringCasa, "PosZ"));
new string[123];
format(string, 123, "sai da casa %i", DOF2_GetInt(StringCasa, "ID"));
msg(playerid, -1, string);
return 1;
}
}
}