ich habe eine frage und zwar wie kann ich gebäude zugänglich machen mit /enter ?
ich hoffe ihr könnt mir helfen .
MFG
Wichtiger Hinweis: Bitte ändert nicht manuell die Schriftfarbe auf schwarz sondern belasst es bei der Standardeinstellung. Somit tragt ihr dazu bei dass euer Text auch bei Verwendung unseren dunklen Forenstils noch lesbar ist!
Tipp: Ihr wollt längere Codeausschnitte oder Logfiles bereitstellen? Benutzt unseren eigenen PasteBin-Dienst Link
-
-
/Enter als normales Command
SetPlayerPos(playerid,X,Y,Z);
SetPlayerInterrior(playerid,Interrior);
und evtl. noch:
SetPlayerVirtualWorld(playerid,VirtualWorld);
mfg -
kann ich das auch so machen das ich mehr mals /enter comends im script habe ?
aber so schon mal thx bloodangel -
Hi
Nur mal als grobes Schema. Für die IsPlayerInRangeOfPoint Abfrage verwendeste dann immer die neuen Koordinate, wovon der Befehl aus nutzbar ist (zB vor dem LSPD oder bei der BSN):
/enter
{
if(IsPlayerInRangeOfPoint()
{
Position 1
return 1;
}
if(IsPlayerInRangeOfPoint()
{
Position 2
return 1;
}
if(IsPlayerInRangeOfPoint()
{
Position 3
return 1;
}
.....
} -
hä das kapiere ich jetzt zwar nicht aber egal
-
Du verwendest einfach mehrere If - Abfragen in einem Befehl d.h. es wird bei Eingabe des Befehls abgefragt ob der Spieler in der nähe von den Koordinaten X,Y,Z sind - wenn nicht dann wird abgefragt ob er an den anderen Koordinaten ist, wenn ja wird der nächste Schritt eingeleitet Ganz simple.
-
aber aber aber !
if (strcmp("/enter", cmdtext, true, 10) == 0)
{
if(IsPlayerInRangeOfPoint(playerid,8.0,713.8139,-2678.4348,13.4844)|| IsPlayerInRangeOfPoint(playerid,8.0, 894.9775,-4012.6687,13.6000))
{
SetPlayerPos(playerid,363.1381,-74.6095,1001.5078);
SetPlayerInterior(playerid,10);
}
return 1;
}
{
if(IsPlayerInRangeOfPoint(playerid,8.0,901.6625,-4042.6003,13.7859))
{
SetPlayerPos(playerid,296.919982,-108.071998,1001.515625);
SetPlayerInterior(playerid,6);
}
return 1;
}//Exit-exit-Exit-exit-Exit
if (strcmp("/exit", cmdtext, true, 10) == 0)
{
if(IsPlayerInRangeOfPoint(playerid,8.0,363.1381,-74.6095,1001.5078))
{
SetPlayerPos(playerid,713.8139,-2678.4348,13.4844);
SetPlayerInterior(playerid,0);
}
return 1;
}
{
if(IsPlayerInRangeOfPoint(playerid,8.0,363.1381,-74.6095,1001.5078))
{
SetPlayerPos(playerid,894.9775,-4012.6687,13.6000);
SetPlayerInterior(playerid,0);
}
return 1;
}
{
if(IsPlayerInRangeOfPoint(playerid,8.0,296.919982,-108.071998,1001.51562))
{
SetPlayerPos(playerid,901.6625,-4042.6003,13.7859);
SetPlayerInterior(playerid,0);
}
return 1;
}
aber /enter und /exit klapt nicht ! nur bei dem ganz oben bei /enter und ganz oben der bei /exit -
if (strcmp("/enter", cmdtext, true, 10) == 0)
{
if(IsPlayerInRangeOfPoint(playerid,8.0,713.8139,-2678.4348,13.4844)|| IsPlayerInRangeOfPoint(playerid,8.0, 894.9775,-4012.6687,13.6000))
{
SetPlayerPos(playerid,363.1381,-74.6095,1001.5078);
SetPlayerInterior(playerid,10);
}
return 1;
} // Command beendet.
{ // Kann nicht funzen, weil das hier in keinem if(strcmp...) steht.
if(IsPlayerInRangeOfPoint(playerid,8.0,901.6625,-4042.6003,13.7859))
{
SetPlayerPos(playerid,296.919982,-108.071998,1001.515625);
SetPlayerInterior(playerid,6);
}
return 1;
}Also so:
if (strcmp("/enter", cmdtext, true) == 0)
{
if(IsPlayerInRangeOfPoint(playerid,8.0,713.8139,-2678.4348,13.4844) || IsPlayerInRangeOfPoint(playerid,8.0, 894.9775,-4012.6687,13.6000))
{
SetPlayerPos(playerid,363.1381,-74.6095,1001.5078);
SetPlayerInterior(playerid,10);
return 1;
}
if(IsPlayerInRangeOfPoint(playerid,8.0,901.6625,-4042.6003,13.7859))
{
SetPlayerPos(playerid,296.919982,-108.071998,1001.515625);
SetPlayerInterior(playerid,6);
return 1;
}
return 1;
}So machste das auch mit dem /exit Befehl.
-
-
breadfish.de
Hat das Thema geschlossen.