Du könntest
for(new i = 0; i < MAX_HOUSES; i++)
durch
for(new i = 0; i < num_rows; i++)
ersetzen, dann nimmt er nur die 8 Einträge aus der Datenbank.
Versuch es mal damit:
ocmd:enterexit(playerid,params[])
{
for(new i=0; i<sizeof(hInfo); i++)
{
if(GetPlayerVirtualWorld(playerid)!=i)continue;
if(!IsPlayerInRangeOfPoint(playerid,8,hInfo[i][ih_x],hInfo[i][ih_y],hInfo[i][ih_z]))continue;
if(GetPlayerVirtualWorld(playerid) == hInfo[i][h_id])
{
SetPlayerPos(playerid, hInfo[i][h_x], hInfo[i][h_y], hInfo[i][h_z]);
SetPlayerInterior(playerid, 0);
SetPlayerVirtualWorld(playerid, 0);
}
return 1;
}
for(new i=0; i<sizeof(hInfo); i++)
{
if(!hInfo[i][h_id])continue;
if(hInfo[i][ih_x]==0.0)continue;
if(!IsPlayerInRangeOfPoint(playerid,2,hInfo[i][h_x],hInfo[i][h_y],hInfo[i][h_z]))continue;
SetPlayerPos(playerid,hInfo[i][ih_x],hInfo[i][ih_y],hInfo[i][ih_z]);
SetPlayerInterior(playerid,hInfo[i][h_interior]);
SetPlayerVirtualWorld(playerid,hInfo[i][h_id]);
if(IsPlayerMieter(playerid,hInfo[i][h_id])) SendClientMessage(playerid,COLOR_GRAY,"Mieter...");
return 1;
}
return 1;
}
* Es ist nur eine kleine Änderung drin, sollte aber normal gehen.