Beitrag von Apokrate ()
Dieser Beitrag wurde gelöscht, Informationen über den Löschvorgang sind nicht verfügbar.
Nein, das ist normal. Ein NPC hat ja auch keinen Lag, somit ist das ganz normal.
Einstellungen gibt es dafür nicht, nein. Du könntest versuchen, die Koordinaten zu berechnen an der die Hitbox sein soll, aber das wird auch nicht zu 100% funktionieren und ist den Aufwand wahrscheinlich nicht wert.
tvID[playerid] = -1;
tvbox[playerid] = CreatePlayerTextDraw(playerid,500.000, 250.000, "usebox");
PlayerTextDrawUseBox(playerid,tvbox[playerid],1);
PlayerTextDrawSetProportional(playerid,tvbox[playerid],1);
PlayerTextDrawBoxColor(playerid,tvbox[playerid],0x00000067);
PlayerTextDrawBackgroundColor(playerid,tvbox[playerid],0x00000067);
PlayerTextDrawTextSize(playerid,tvbox[playerid],640,480);
PlayerTextDrawLetterSize(playerid,tvbox[playerid],1.000000,-5.000000);
PlayerTextDrawAlignment(playerid,tvbox[playerid],0);
Irgendwie ist bei mir der Text, der angezeigt werden soll auf dem Kopf. Habe ich hier eventuell irgendwo einen Fehler drin, den ich nicht finde? xD
Deine letter size ist negativ.
Mach es zu:
PlayerTextDrawLetterSize(playerid,tvbox[playerid],1.000000,5.000000);
Hat wer eine Idee wie ich Offlinearrest per dini machen könnte?
Hab schonmal so das er ein Pickup und ein Label da erstellt wo er Offline gegangen ist ist.
In deiner Datei einfach nur noch einen Wert speichern, ob jemand ins Pickup gelaufen ist (0 = nein, 1 = ja)
Sollte der Wert 1 sein, wird er beim Connecten direkt ins Gefängnis gepackt, fertig.
Aber er war/ist ja schon Disconectet da kann ich doch nichts mehr Speichern..?
Du musst dem PickUp nur einen Spieler zuweisen (über den Namen z.B.)
Also ein Array mit PickUpId und zugehörigem Namen.
Ok ich mach das so das im Label Name und Wantedzahl steht und dann mit Dini in die Dateireinschreiben.
Aber beim label kommt ein Fehler:
new Float:x, Float:y, Float:z,name[MAX_PLAYER_NAME],string[128];
if(WantedLevel[playerid] >= 1)
{
GetPlayerName(playerid, name, sizeof(name));
GetPlayerPos(playerid, x, y, z);
CreatePickup(1247, 4, x, y, z, GetPlayerVirtualWorld(playerid));
format(string,sizeof,(string),"Tippe Spieler: %s | Wantedlevel: %d",name, WantedLevel[name]);//Fehler Zeile
Create3DTextLabel(string,COLOR_YELLOW,x,y,z,7.0,0,0);
}
C:\Users\Patrick\Desktop\IRP-City\gamemodes\T2R.pwn(4746) : error 020: invalid symbol name ""
C:\Users\Patrick\Desktop\IRP-City\gamemodes\T2R.pwn(4746) : warning 215: expression has no effect
C:\Users\Patrick\Desktop\IRP-City\gamemodes\T2R.pwn(4746) : warning 215: expression has no effect
C:\Users\Patrick\Desktop\IRP-City\gamemodes\T2R.pwn(4746) : warning 215: expression has no effect
C:\Users\Patrick\Desktop\IRP-City\gamemodes\T2R.pwn(4746) : error 033: array must be indexed (variable "name")
C:\Users\Patrick\Desktop\IRP-City\gamemodes\T2R.pwn(4746) : error 029: invalid expression, assumed zero
C:\Users\Patrick\Desktop\IRP-City\gamemodes\T2R.pwn(4746) : fatal error 107: too many error messages on one line
Compilation aborted.Pawn compiler 3.2.3664 Copyright (c) 1997-2006, ITB CompuPhase
4 Errors.
Alles anzeigen
Weißt du was falsch ist ..
Siehst du jetzt den Fehler:
new name[MAX_PLAYER_NAME];
// [..]
/* .. */, WantedLevel[name]
Der Name (name) ist bestimmt keine SpielerId (playerid).
Guten Abend/Nachmittag liebe Leute,
ich habe mal kurz eine Frage ob man irgentwie den Fehler vom Streamer beheben kann, dass manchmal das PickUp sowie das Label nicht gelöscht wird.
Ich habe mir bei meinem Befehl schon jeweils Printen lass welche ID's ausgegben werden und es hat immer übereingestimmt jedoch wurde nicht immer beides gelöscht.
Bist du denn sicher, dass es am Streamer liegt? Hast du die entsprechenden Pickups/Labels mal normal (also ohne Streamer) erstellt?
hat jemand das Pizza Object (1582) wo man die Pizza so auf den Händen hat ?
if(strcmp(cmd,"/wiederbeleben",true) == 0)
{
if(IsPlayerConnected(playerid))
{
tmp = strtok(cmdtext, idx);
if(!strlen(tmp))
{
SendClientMessage(playerid,F_Gray,"Befehl: /wiederbeleben [SpielerID/Name]");
return 1;
}
new para1;
para1 = ReturnUser(tmp);
if(PlayerInfo[playerid][pMember] >= 4 || PlayerInfo[playerid][pLeader] >= 4)
{
if(IsPlayerConnected(para1))
{
if(para != INVALID_PLAYER_ID)
{
new Float:x, Float:y, Float:z,string[128];
GetPlayerPos(para1, x, y, z);
if(IsPlayerInRangeOfPoint(2, x, y, z)
{
PlayerInfo[para1][pTot] = 0;
SetPlayerSpawn(para1);
format(string,sizeof,(string),"Du hast Spieler %s wiederbelebt.",para1);//31818
SendClientMessage(playerid,COLOR_GREEN,string);
GivePlayerMoney(playerid, 600);
}
else
{
SendClientMessage(playerid,F_Gray,"Du bist nicht beim Opfer.");
}
}
}
}
else
{
SendClientMessage(playerid,F_Red,"Du bist kein Sanitäter!");
}
}
return 1;
}
Fehlercode:
C:\Users\Patrick\Desktop\IRP-City\gamemodes\T2R.pwn(31818) : error 020: invalid symbol name ""
C:\Users\Patrick\Desktop\IRP-City\gamemodes\T2R.pwn(31818) : warning 215: expression has no effect
C:\Users\Patrick\Desktop\IRP-City\gamemodes\T2R.pwn(31818) : warning 215: expression has no effect
C:\Users\Patrick\Desktop\IRP-City\gamemodes\T2R.pwn(31818) : warning 215: expression has no effect
C:\Users\Patrick\Desktop\IRP-City\gamemodes\T2R.pwn(31818) : error 001: expected token: ";", but found ")"
C:\Users\Patrick\Desktop\IRP-City\gamemodes\T2R.pwn(31818) : error 029: invalid expression, assumed zero
C:\Users\Patrick\Desktop\IRP-City\gamemodes\T2R.pwn(31818) : fatal error 107: too many error messages on one line
Compilation aborted.Pawn compiler 3.2.3664 Copyright (c) 1997-2006, ITB CompuPhase
4 Errors.
Alles anzeigen
new pname[MAX_PLAYER_NAME];GetPlayerName(para1, pname, sizeof(pname));
format(string,sizeof(string),"Du hast Spieler %s wiederbelebt.",pname);//31818
So wird auch der Name richtig angezeigt.
Komisch, ich erstelle diese nirgends doppelt, hier die Zeilen wo sie jeweils erstellt/gelöscht werden.
Haus erstell Befehl:
HouseInfo[i][h_label] = Create3DTextLabel(str,Weiß,HouseInfo[i][h_enterX],HouseInfo[i][h_enterY],HouseInfo[i][h_enterZ],10.0,0,0);
HouseInfo[i][h_pick] = CreatePickup(1273,0,HouseInfo[i][h_enterX],HouseInfo[i][h_enterY],HouseInfo[i][h_enterZ],0);
Haus verkaufen Befehl:
Delete3DTextLabel(HouseInfo[h][h_label]);
DestroyPickup(HouseInfo[h][h_pick]);
Häuser laden:
HouseInfo[h][h_label] = Create3DTextLabel(str,Weiß,HouseInfo[h][h_enterX],HouseInfo[h][h_enterY],HouseInfo[h][h_enterZ],10.0,0,0);
HouseInfo[h][h_pick] = CreatePickup(1273,0,HouseInfo[h][h_enterX],HouseInfo[h][h_enterY],HouseInfo[h][h_enterZ],0);
OnGameModeExit:
for(new h=0;h<MAX_HOUSES;h++)
{
DestroyPickup(HouseInfo[h][h_pick]);
Delete3DTextLabel(HouseInfo[h][h_label]);
}