zeige, wie du die neue anlegst und poste die GetPlayerFightzone Funktion.
^
zeige, wie du die neue anlegst und poste die GetPlayerFightzone Funktion.
^
Du musst den Code bei OnPlayerLeaveCheckpoint hinschreiben.
Den Timer startest du neu, indem du den alten Timer killst, wenn er den Checkpoint verlässt (KillTimer).
Unter den Includes:
new Text3D:AFKLabel[MAX_PLAYERS] = {Text3D:-1,...};
new LastUpdate[MAX_PLAYERS];
Unter OnPlayerUpdate:
LastUpdate[playerid] = gettime();
Unter OnGameModeInit:
SetTimer("CheckAFK", 500, true);
Unter OnPlayerConnect:
AFKLabel[playerid] = Create3DTextLabel(" ", 0xFFFFFFFF, 30.0, 40.0, 50.0, 40.0, 0);
Unter OnPlayerSpawn:
Attach3DTextLabelToPlayer(AFKLabel[playerid], playerid, 0.0, 0.0, 0.7);
Unten im Gamemode:
forward CheckAFK();
public CheckAFK()
{
new t = gettime(), str[64], h, m, s;
for(new i=0; i<MAX_PLAYERS; i++)
{
if(LastUpdate[i] + 1 < t)
{
s = t - LastUpdate[i];
h = s / 3600;
s -= h * 3600;
m = s / 60;
s -= m * 60;
format(str, sizeof(str), "AFK seit %dh %dm %ds", h, m, s);
Update3DTextLabelText(AFKLabel[i], 0xFFFFFFFF, str);
}
else
{
Update3DTextLabelText(AFKLabel[i], 0xFFFFFFFF, " ");
}
}
return 1;
}
Dann zeige, wie du die neue anlegst und poste die GetPlayerFightzone Funktion.
if(BusCP[playerid] > 0 && buscd[playerid] > 0)
{
SendClientMessage(playerid, 0xFF0000FF, "Du hast den Checkpoint verlassen.");
}
http://forum.sa-mp.com/showthread.php?t=360865
Übrigens, anstatt
//...
else if(m < 1000000 && m >= 10000) format(str, sizeof str, "~w~00%d ~g~Euro", m);
//...
sowas, kannst du auch einfach:
format(str, sizeof str, "~w~%08d ~g~Euro", m);
machen, dann sparst du dir die ganzen Abfragen.
Ist das das neue?
{906.7744,-1561.5994,807.6274,-1416.7367,841.4399,-1485.7002,13.5947}//AutohausLS
Das muss zu
{807.6274,-1561.5994,906.7744,-1416.7367,841.4399,-1485.7002,13.5947}//AutohausLS
geändert werden, da 807 kleiner ist als 906.
Das sind mehrere Textdraws, die entsprechend angeordnet sind.
Das "Deal of the day" nutzt einen Shadow.
Du kannst sowas mit einem Textdraw Editor relativ leicht erstellen. Davon gibt es einige, wenn du mal nach Textdraw Editor googlest.
Versuche, ob die Meldung so weg geht:
return ShowPlayerDialog(playerid, 4521, DIALOG_STYLE_MSGBOX, "Spieler", str, "Ok");
Zu:
ShowPlayerDialog(playerid, 4521, DIALOG_STYLE_MSGBOX, "Spieler", str, "Ok");
return 1;
Nimm das
scriptfiles
mal aus dem Pfad.
Schau dir mal diesen Filterscript an, da kannst du dir das abschauen:
http://forum.sa-mp.com/showthread.php?t=409419
Gerne!
Bin ich dran, ich gebe dir später Bescheid ![]()
Auch dort
at_id[i] = Text3D:-1;
if(at_id[i] == Text3D:-1)
Ahh, na dann. ![]()
Versuche es so:
new Skin[MAX_PLAYERS];
public OnPlayerKeyStateChange(playerid, newkeys, oldkeys)
{
if(newkeys & KEY_SECONDARY_ATTACK)
{
if(Skinchange[playerid] == 1)
{
Skinchange[playerid]=0;
SetCameraBehindPlayer(playerid);
SpawnPlayer(playerid);
TogglePlayerControllable(playerid, 1);
}
}
if(newkeys == KEY_SPRINT)
{
if(Skinchange[playerid] == 1)
{
if(Skin[playerid] == 0) Skin[playerid] = 299;
else Skin[playerid]--;
SetPlayerSkin(playerid, Skin[playerid]);
}
}
if(newkeys == KEY_JUMP)
{
if(Skinchange[playerid] == 1)
{
if(Skin[playerid] == 299) Skin[playerid] = 0;
else Skin[playerid]++;
SetPlayerSkin(playerid, Skin[playerid]);
}
}
return 1;
}
Bitte poste deinen Code richtig:
Der Pawn BB Code - Die richtige Anwendung
wie bekomme ich es hin das es so ausschaut?
if (strcmp(cmd, "/ot", true) == 0)
{
new str[512];
if(ReturnPlayerID("Basti") != INVALID_PLAYER_ID) format(str, sizeof(str), "%s{00FF00}Spieler Basti ist Online\n", str);
else format(str, sizeof(str), "%s{FF0000}Spieler Basti ist Offline\n", str);
if(ReturnPlayerID("Hansi") != INVALID_PLAYER_ID) format(str, sizeof(str), "%s{00FF00}Spieler Hansi ist Online\n", str);
else format(str, sizeof(str), "%s{FF0000}Spieler Hansi ist Offline\n", str);
if(ReturnPlayerID("Ulli") != INVALID_PLAYER_ID) format(str, sizeof(str), "%s{00FF00}Spieler Ulli ist Online\n", str);
else format(str, sizeof(str), "%s{FF0000}Spieler Ulli ist Offline\n", str);
return ShowPlayerDialog(playerid, 4521, DIALOG_STYLE_MSGBOX, "Spieler", str, "Ok");
}
Oder eben:
if (strcmp(cmd, "/ot", true) == 0)
{
new str[512];
if(ReturnPlayerID("Basti") != INVALID_PLAYER_ID) format(str, sizeof(str), "%s{FFFFFF}Basti - {00FF00}Online\n", str);
else format(str, sizeof(str), "%s{FFFFFF}Basti - {FF0000}Offline\n", str);
if(ReturnPlayerID("Hansi") != INVALID_PLAYER_ID) format(str, sizeof(str), "%s{FFFFFF}Hansi - {00FF00}Online\n", str);
else format(str, sizeof(str), "%s{FFFFFF}Hansi - {FF0000}Offline\n", str);
if(ReturnPlayerID("Ulli") != INVALID_PLAYER_ID) format(str, sizeof(str), "%s{FFFFFF}Ulli - {00FF00}Online\n", str);
else format(str, sizeof(str), "%s{FFFFFF}Ulli - {FF0000}Offline\n", str);
return ShowPlayerDialog(playerid, 4521, DIALOG_STYLE_MSGBOX, "Spieler", str, "Ok");
}
immernoch
Hast du die Änderung gesehen?
Wenn nicht, hier nochmal:
new Text3D:at_id[5] = {Text3D:-1,...};
if(dialogid==DIALOG_SPRUNKLIST)
{
if(!response)return 1;
new tmp;
for(new i = 1; i < MAX_FOODS; i++)
{
if(Food[i][fx] == 0 && Food[i][fy] == 0 || Food[i][fvalue] > 80)continue;
if(Food[i][fdisabled] == 1)continue;
if(tmp == listitem)
{
SetPlayerCheckpoint(playerid,Food[i][fx],Food[i][fy],Food[i][fz],1.0);
SprunkCheckpoint[playerid] = 3;
return 1;
}
else tmp++;
}
}
new Text3D:at_id[5] = {Text3D:-1,...};
@xCurry: Siehe Edit ^