Hallo Leute.
Ich habe ein "System" bzw. Funktion gemacht womit ich per Enter Taste in Häuser rein und rausgehen kann.
Ich habe das Abspeicherungssystem vom GF genommen für Häuser d.H in einer .cfg Datei.
Derzeit sind 10 Häuser drin gespeichert und im Script sind maximale Häuser = 10. (#define SCRIPT_MAXHOUSES 10)
Wenn ich nun in ein Haus reingehen möchte geht alles reibungslos. Hab schonmal debugged um zu schauen in welches Haus ich reinkomme.
Wenn ich bei Haus-ID 9 reingehe, komme ich in 9 rein, gehe ich bei ID 8 rein, komme ich auch bei ID 8 rein.
Derzeit sieht es so aus:
public OnPlayerKeyStateChange(playerid, newkeys, oldkeys)
{
if(newkeys == KEY_SECONDARY_ATTACK)
{
if(IsPlayerConnected(playerid))
{
for(new i = 0; i < sizeof(HouseInfo); i++)
{
if (IsPlayerInRangeOfPoint(playerid,3.0,HouseInfo[i][hEntrancex], HouseInfo[i][hEntrancey], HouseInfo[i][hEntrancez]))
{
if(Spieler[playerid][HausKey] == i || HouseInfo[i][hLock] == 0)
{
SetPlayerInterior(playerid,HouseInfo[i][hInt]);
SetPlayerVirtualWorld(playerid,HouseInfo[i][hWorld]);
SetPlayerPos(playerid,HouseInfo[i][hExitx],HouseInfo[i][hExity],HouseInfo[i][hExitz]);
GameTextForPlayer(playerid, "~w~Willkommen zu Hause", 5000, 1);
printf("Entered House: %d", i);
Spieler[playerid][Int] = HouseInfo[i][hInt];
Spieler[playerid][World] = HouseInfo[i][hWorld];
Spieler[playerid][Local] = i;
}
else
{
GameTextForPlayer(playerid, "~r~Verschlossen", 5000, 1);
return 1;
}
}
}
if(IsPlayerConnected(playerid))
{
for(new i = 0; i<sizeof(HouseInfo); i++)
{
if(IsPlayerInRangeOfPoint(playerid, 3.0, HouseInfo[i][hExitx], HouseInfo[i][hExity], HouseInfo[i][hExitz]))
{
SetPlayerInterior(playerid, 0);
SetPlayerVirtualWorld(playerid, 0);
SetPlayerPos(playerid, HouseInfo[i][hEntrancex], HouseInfo[i][hEntrancey], HouseInfo[i][hEntrancez]);
Spieler[playerid][Int] = 0;
Spieler[playerid][World] = 0;
Spieler[playerid][Local] = 255;
if(HouseInfo[i][hHealth] == 1)
{
new Float:life;
GetPlayerHealth(playerid, life);
if(life < 100.0)
{
SetPlayerHealth(playerid, 100.0);
}
}
}
}
}
}
}
Beim Exit werde ich aber immer an die Exit-Position von Haus 9 geportet.
Egal bei welchem Haus es ist.
Kann mir jemand helfen? Wäre echt nett.