Also mein Problem ist schwer zu erklären..
Ich hab hier den Befehl /camera.
Mit dem Befehl kann man die Playerkamera dann zu verschiedenen Standpunkten verschieben, wie bei echten
Kameras halt.
Und der Ort von dem aus ich /camera mache liegt, sagen wir, in der Wüste.
Wenn ich jetzt einen Ort reingescriptet habe, der weit von der Wüste entfernt ist (z.B. das LSPD), dann werden die Texturen nicht
geladen.
Das konnte ich lösen, indem ich es so reingescriptet habe, dass wenn du jetz z.B. /camera 5 machst, dich 10 Meter unters
LSPD geportet wirst. Mit dieser Lösung wurden die Texturen geladen.
Jedoch zeigt er mir jetzt an (wenn ich Kamera wechseln will, z.B. von /camera 5 zu /camera 8), dass ich am Kontrollzentrum sein muss.
Das ist deswegen geschehen, dass ich 10 Meter unters LSPD geportet wurde.
Ich hoffe mir kann jetzt jmd. weiterhelfen, dass ich (egal wo ich bin, aber trotzdem man nur am CP /camera machn kann!) auf die Kameras zugreifen kann^^
Ich poste hier noch den Scriptteil, falls ihn jmd. braucht.
if(strcmp(cmd, "/camera", true) == 0)
{
if(IsPlayerConnected(playerid))
{
if(PlayerInfo[playerid][pMember] == 13 || PlayerInfo[playerid][pLeader]== 13)
{
if(!PlayerToPoint(4.0,playerid,-441.3912,2593.4473,47.9643))
{
SendClientMessage(playerid, COLOR_GREY, " Du bist nicht im Kontrollzentrum !");
return 1;
}
tmp = strtok(cmdtext, idx);
if(!strlen(tmp)) {
SendClientMessage(playerid, COLOR_WHITE, "BENUTZUNG: /camera [number 1 - 9] (0 = AUS)");
return 1;
}
new number = strval(tmp);
if(number < 0 || number > 9) { SendClientMessage(playerid, COLOR_GREY, " Camera Number can't be below 1 or above 6 !"); return 1; }
TogglePlayerControllable(playerid, 0);
GetPlayerPos(playerid, Unspec[playerid][Coords][0],Unspec[playerid][Coords][1],Unspec[playerid][Coords][2]);
if(number == 1) { SetPlayerCameraPos(playerid, 118.1011,1931.3221,22.5527); SetPlayerCameraLookAt(playerid, 98.9656,1920.9819,18.2180); }
else if(number == 2)
{
SetPlayerPos(playerid, -441.3912,2593.4473,47.9643);
SetPlayerCameraPos(playerid, -384.0906,2455.7146,57.1729); SetPlayerCameraLookAt(playerid, -454.6434,2444.4929,47.8664);
SetPlayerPos(playerid, -384.0906,2455.7146,37.1729);
}
else if(number == 3) { SetPlayerCameraPos(playerid, -375.5078,2572.4436,48.0439); SetPlayerCameraLookAt(playerid, -373.3245,2555.3127,39.1375);
SetPlayerPos(playerid, -375.5078,2572.4436,28.0439);
}
else if(number == 4) { SetPlayerPos(playerid, -441.3912,2593.4473,47.9643);
SetPlayerCameraPos(playerid, -313.5163,2489.6052,62.3611); SetPlayerCameraLookAt(playerid, -350.6290,2510.4980,36.3124);
SetPlayerPos(playerid, -313.5163,2489.6052,62.3611);
}
else if(number == 5) { SetPlayerPos(playerid, -441.3912,2593.4473,47.9643);
SetPlayerCameraPos(playerid, 1515.3293,-1689.2743,19.2422); SetPlayerCameraLookAt(playerid, 1536.3868,-1660.9712,13.5469);
SetPlayerPos(playerid, 1515.3293,-1689.2743,5.2422);
}
else if(number == 6) {
SetPlayerCameraPos(playerid, 1515.5198,-1642.0814,19.2422); SetPlayerCameraLookAt(playerid, 1534.4851,-1683.7422,13.3828);
SetPlayerPos(playerid, 1515.5198,-1642.0814,5.2422);
SetPlayerPos(playerid, -441.3912,2593.4473,47.9643);
}
else if(number == 7) { SetPlayerPos(playerid, -441.3912,2593.4473,47.9643);
SetPlayerCameraPos(playerid, 1175.4746,-962.5681,50.6797); SetPlayerCameraLookAt(playerid, 1213.5614,-922.4760,42.9271);
SetPlayerPos(playerid, 1175.4746,-962.5681,35.6797);
}
else if(number == 8) { SetPlayerPos(playerid, -441.3912,2593.4473,47.9643);
SetPlayerCameraPos(playerid, 1235.1565,-743.5441,97.5103); SetPlayerCameraLookAt(playerid, 1247.2988,-766.9556,92.1002);
SetPlayerPos(playerid, 1235.1565,-743.5441,77.5103);
}
else if(number == 9) { SetPlayerPos(playerid, -441.3912,2593.4473,47.9643);
SetPlayerCameraPos(playerid, 1251.6777,-785.9006,93.2916); SetPlayerCameraLookAt(playerid, 1244.3627,-767.7976,91.9526);
SetPlayerPos(playerid, 1251.6777,-785.9006,70.2916); }
else if(number == 0)
{
SetPlayerPos(playerid, -441.3912,2593.4473,47.9643);
MedicBill[playerid] = 0;
TogglePlayerControllable(playerid, 1);
SetSpawnInfo(playerid, PlayerInfo[playerid][pTeam], PlayerInfo[playerid][pModel], Unspec[playerid][Coords][0], Unspec[playerid][Coords][1], Unspec[playerid][Coords][2], 10.0, -1, -1, -1, -1, -1, -1);
SpawnPlayer(playerid);
}
}
else
{
SendClientMessage(playerid, COLOR_GREY, " You are not a Cop / Soldier !");
return 1;
}
}
return 1;
}
Hoffe auf Antworten^^
Und irgendwie ist das Problem schwer zu schildern, deshalb sieht der Text so komisch aus^^
MfG,
Pain