Beiträge von ElDiabolo
-
-
guck mal auf yt mrmonattutorials an. Der hat auch nen Hilfe Forum für totale anfänger.
-
klammer mal alles aus und sende ne normale clientmessage.
-
Okay, danke funktioniert! Wie kann ich ein Zeilenlimit einfügen?
-
Heyho,
ich wollte heute mal das Ticketssystem von Scriptor so umschreiben, dass es in einem Dialog in mehreren Zeilen angezeigt wird.
Das ist der Code. Also immer wenn ein neues Ticket erstellt wird, soll es nicht das alte ersetzen, sondern in die nächste Zeile gehen. Wie mache ich dies?
Bei diesem Code wird der Dialog ja immer nur mehrmals hinterinander abgesendet, sodass das letzte angezeigt wird...
ocmd:tickets(playerid, params[])
{
#pragma unused params
if(isPlayerAnAdmin(playerid, 1))
{
for(new i = 0; i < MAX_PLAYERS; i++)
{
if(SupportTicket[i] == 1)
{
if(TicketAngenommen[i] == 0)
{
new string[128], DerSpieler[MAX_PLAYER_NAME];
GetPlayerName(i, DerSpieler, sizeof(DerSpieler));
format(string, sizeof(string), "[%d] %s\n", i, DerSpieler);
ShowPlayerDialog(playerid, Tickets, DIALOG_STYLE_LIST, "Tickets", string, "Okay", "");
}
}
}
}
return 1;
}edit 13.02: Komplett neu geschrieben
-
Und welche? Kannst du mir welche empfehlen? Designen kann ich, aber ich finde keine passenden Coding Tutorials -.-
-
Also die Bots können nicht sterben und ob die jemanden verfolgen können, bin ich auch skeptisch...
-
Sieht sehr nett aus, obwohl mir die Navi nicht so sehr gefällt, ich weiß aber auch nicht wieso...
Hast du vielleicht irgendwelche guten Tutorials, wie man so etwas codet? -
Moin liebe Brotfische,
da ich immer wieder sehe, dass viele Leute fragen, wie man denn NUR die gespawnten Fahrzeuge entfernen kann und ich es selber bis vor kurzem nicht hinbekommen habe, dachte ich mir, zeig ich mal allen, wie es denn nun geht.
Nun denn, es ist einfacher, als man denkt.Zuerst erstellt man eine neue Variable. Diese nennen wir nun "spawnedcar".
new bool:spawnedcar[MAX_VEHICLES];Als nächstes geht man zu seinem Spawnbefehl. Bei mir ist dort das Vehicle als "car" definiert. Das heißt, wir fügen das Vehicle nun der Variable hinzu:
spawnedcar[car] = true; Einfach unter den Spawn schreiben.Nun ist es hinzugefügt. Das können wir bei allen weiteren Spawnbefehlen auch einfügen, oder jeweils eine neue Variable erstellen.
Wie löschen wir es? Genau, wir fragen alle Fahrzeuge ab und schauen, welche mit der Variable versehen sind.
for(new i=0; i<MAX_VEHICLES; i++)
{
if(spawnedcar[i] == true)Soweit so gut. Ich finde, es sollte nur gelöscht werden, wenn niemand im Vehicle sitzt. Das machen wir wie folgt:
if(IsVehicleEmpty(i))
Dazu braucht ihr den Stock:
stock IsVehicleEmpty(vehicleid)
{
for(new i =0; i < MAX_PLAYERS; i++)
{
if(!IsPlayerConnected(i)) continue;
if(IsPlayerInVehicle(i,vehicleid)) return 0;
}
return 1;
}Okay, was wollen wir machen, wenn das Vehicle mit der Variable versehen ist? Ich möchte es löschen. Also füge ich hinzu:
DestroyVehicle(i);Das wars eigentlich schon. Hier nochmal der ganze Code von der Löschung der Fahrzeuge:
ocmd:vehremall(playerid, params[])
{
//Adminabfrage
{
for(new i=0; i<MAX_VEHICLES; i++)
{
if(spawnedcar[i] == true)
{
if(IsVehicleEmpty(i))
{
DestroyVehicle(i);
}
}
}
SendClientMessage(playerid, Farbe, "Die gespawnten Fahrzeuge wurden erfolgreich gelöscht.");
}
return 1;
}Ich hoffe, mein Tutorial konnte euch helfen.
Mit freundlichen Grüßen,
ElDiabolo.edit: Code verbessert.
-
Probier mal #pragma unused Killerid
-
for(new i = 0; i < MAX_PLAYERS; i++) ShowPlayerNameTagForPlayer(playerid, i, false);
So blendest du aus.Einfach bei OnPlayerText überprüfen, ob er ein Hitman ist.
-
Zeig mal Onplayertext
-
Woher nehmt ihr das Geld? 40€ ist sehr viel, aber ist es seriös? Mit was zahlt ihr?
-
Nope es geht nicht.
//edit: Verständlicher -
Das weiß ich schon. Die Frage ist nur, ob die Funktion richtig ist.
-
Und wenn ich das ganze vorher machen würde, würde es dann korrekt funktionieren? Muss ich mal probieren.
-
Geht es nicht auch anderst bzw. einfacher?
-
Ist doch schon geändert. Dumm bin ich auch nicht
-
Und wie kann ich es dann machen, dass die User beim Exit des Gamemodes alle gespeichert werden?
-
Also wenn einer Disconnected, funktioniert es...
for(new i=1;i<MAX_PLAYERS;i++)
{
OnPlayerDisconnect(i, 1);
return 1;
}
Unter ongamemodeexit funktioniert nicht. Genauso wenig wie SavePlayer(i);