Dieser rote Kreis ist ein Checkpoint. Checkpoints werden im Script in dieser Form erstellt
SetPlayerCheckpoint(playerid,Float:x,Float:y,Float:z,Float:size);
Es kann max. nur ein Checkpoint für einen Spieler angezeigt werden, deshalb werden sie erst erstellt,
wenn ein Spieler in der Nähe eines Punktes ist, also werden sie nicht dauerhaft erstellt.
Im Klartext heißt das, wenn du den Checkpoint aus dem Script nehmen willst, musst du die ungefähren
Koordinaten des Checkpoints rausfinden und im Script dort wo alle Checkpoints aufgelistet sind abgleichen.
Wenn du stattdessen einen Pickup (bzw. Kegel) reinmachen willst, musst du CreatePickup anwenden und
unter OnPlayerPickUpPickup den Spieler in den Interior oder sonst wo hin reinporten, wenn er den Pickup
aufhebt/in ihn rein geht.
Beiträge von maddinat0r
-
-
Mach einfach die beiden TextDrawShowForPlayer's beim public "updateanzeigen" weg.
-
Eine Spielervariable erstellen und diese auf 1 setzen, falls der Spieler
in den Knast kommt und bei OnPlayerSpawn abfragen, ob diese Variable 1 ist
und wenn ja, in den Knast setzen. -
Pack einfach mal diese Zeile bei OnPlayerDisconnect rein:
Delete3DTextLabel(GM3D[playerid]); -
Okay.
Zerstörst du das TextLabel bei OnPlayerDisconnect wieder? -
Ich würd nur gern wissen, ob dieser Neuling mit dem Admin-TextLabel
dann auch fälschlicherweise Admin ist bzw. Adminrechte hat. -
ocmd:jail(playerid,params[])
{
new pID;
if(!IsPlayerInRangeOfPoint(playerid,5,193.6127,158.0347,1003.0234))
return SendClientMessage(playerid,COLOR_RED,"Du musst dich bei den Zellen im Police Department befinden!");
if(!isPlayerInFrakt(playerid,1))
return SendClientMessage(playerid, COLOR_GRAU,"Du bist kein Polizist");
if(GetPVarInt(pID, "Wanteds") < 10)
return SendClientMessage(playerid,COLOR_GRAU,"Der Spieler muss mindestens 10 Wanteds haben!");
if(GetPVarInt(playerid, "Rang") >= 2)
{
new string[128],zeit;
if(sscanf(params,"u",pID))
return SendClientMessage(playerid,COLOR_BLAU,"/arrest [Spieler/ID]");if(GetPVarInt(pID, "Wanteds") >= 10 && GetPVarInt(pID, "Wanteds") < 15) zeit = 5;
if(GetPVarInt(pID, "Wanteds") >= 15 && GetPVarInt(pID, "Wanteds") < 20) zeit = 10;
if(GetPVarInt(pID, "Wanteds") >= 20 && GetPVarInt(pID, "Wanteds") < 25) zeit = 15;
if(GetPVarInt(pID, "Wanteds") >= 25 && GetPVarInt(pID, "Wanteds") < 30) zeit = 20;
if(GetPVarInt(pID, "Wanteds") >= 30 && GetPVarInt(pID, "Wanteds") < 35) zeit = 25;
if(GetPVarInt(pID, "Wanteds") >= 35 && GetPVarInt(pID, "Wanteds") < 40) zeit = 30;
format(string,sizeof(string),"[REGIERUNG]: %s wurde von Polizist %s für %d Minuten ins Gefaengnis eingesperrt!",SpielerName(pID),SpielerName(playerid),zeit);
SendClientMessageToAll(COLOR_ORANGE,string);
SetPlayerInterior(pID,3);
new rand = random(6);
SetPlayerPos(pID,Jail[rand][jailx], Jail[rand][jaily], Jail[rand][jailz]);
SetPlayerInterior(pID,3);
SetTimerEx("JailTimer",60000,0,"i",pID);
SetPVarInt(pID, "Jailtime", zeit);
ResetPlayerWeapons(pID);
format(string,sizeof(string),"~r~Du bist fuer %d Minuten Gefängnis des SAPD! Du sitzt hier nun deine Strafe ab!",zeit*60000);
GameTextForPlayer(pID,string,4000,5);
}
return 1;
} -
Kannst du versuchen abzufragen, ob dieser "verbuggter" Neuling Adminrechte hat? (Also ob er Admin ist)
Sonst könnte ichs mir nicht erklären, wie dieser Bug zu Stande kommt. -
Wird die Variable "PlayerInfo[playerid][pAdmin]" bei OnPlayerDisconnect auf '0' gesetzt?
-
Yop, du failst PuSzK!nA xD
ResetPlayerWeapons(playerid); -
In deinem Public hat der NPC den Namen "BotLinie1ZOB_BSN",
bei OnPlayerSpawn "Bot1Linie1ZOB_BSN" und deshalb kann er den Bot
nicht erkennen. -
1. Das ist nicht die Farbe, das ist die Respawnzeit.
2. Sein Problem liegt in der Schleife. -
new Missle ,GetMisslePos;
if (strcmp("/missle", cmdtext, true, 7) == 0) {
if (IsPlayerAdmin(playerid)) {
new Float:X,Float:Y,Float:Z;
if(IsValidObject(Missle)) return SendClientMessage(playerid, ROT, "You already dropped a missile that's currently in progress of exploding");
GetPlayerPos(playerid, X,Y,Z);
Missle = CreateObject(3786, X, Y, Z+50, 357.6293, 272.3375, 6.8755);
MoveObject(Missle, X, Y, Z, 60.0);
GetMisslePos = SetTimerEx("MisslePosGet",3000,1,"ddd",playerid,Missle,2);
}
else return SendClientMessage(playerid, ROT, "You're not a lead admin!");
return 1;
}
forward MisslePosGet(playerid, objectid, type);public MisslePosGet(playerid, objectid, type) {
new Float:PX,Float:PY,Float:PZ;
GetPlayerPos(playerid, PX, PY, PZ);
if(IsPlayerInRangeOfPoint(objectid, 3.0, PX, PY, PZ)) {
CreateExplosion(PX, PY, PZ, type, 10.0);
DestroyObject(Missle);
KillTimer(GetMisslePos);
}
return 1;
} -
Versuch mal statt +1 -1.
-
Poste einfach mal den Code der für das Anzeigen des
Textdraws zuständig ist und der die ganzen Kills/Deaths zählt,
damit können wir sicher mehr anfangen. -
Das liegt nicht im Compiler, der Fehler liegt im Script.
Der Compiler stürzt ab, weil er nicht mehr zurecht kommt.
Was genau der Fehler ist oder wo er liegt, kann ich dir auch nicht sagen. -
Yop, damit kann man fahren.
-
Natürlich. Du spawnst ne Tram (geht glaub ich nur mit AddStaticVehicle)
und setzt dich mit PutPlayerInVehicle rein. -
Dann hast du nicht den ganzen Befehl kopiert.
Wo wird die Variable "money" deklariert, wo die Variable "int_value"? -
Kaliber; sehr intelligente Antwort für einen "Script Lehrer".
@Topic
Ich bezweifle, dass du da was machen kannst. Das Problem liegt auch sicher nicht
an deinem Computer, wahrscheinlich eher am Modell, weil sie vielleicht verschiedenes Handling haben.
Du kannst ja auch versuchen, den FPS-Limit (/fpslimit 48) runterzustellen, wobei ich bezweifle, dass das was bringt.