Du darfst keine Züge mit CreateVehicle erstellen, sondern nur mit AddStaticVehicle oder AddStaticVehicleEx
mfg.
Du darfst keine Züge mit CreateVehicle erstellen, sondern nur mit AddStaticVehicle oder AddStaticVehicleEx
mfg.
Du musst immer die Klammern schließen, schreibe es so:
public OnPlayerCommandText(playerid, cmdtext[])
{
if(strcmp(cmdtext,"/fsf",true)==0)
{
SetPlayerPos(playerid,-2067.0386,50.6341,28.5487);
return 1;
}
return 0;
}
mfg.
Also ist mir nicht klar warum ein neuer Stock?
Ganz einfach, weil du ihn benötigst...hier nochmal eine Erklärung wieso:
Zitatif(IsPlayerInFrac(playerid, >= 0)))
So kannst du eine Funktion nicht verwenden, da du einen Wert als Parameter übergeben musst und ihn nicht während der Übergabe abfragen kannst
Aus diesem Grund brauchst du meine Funktion die dir zurückgibt ob man in einer Fraktion ist oder nicht
mfg.
Hat er diese noch nicht im Script?
Was meinst du mit diese
So ist es Richtig!
Nein ist es nicht
Die Funktion ist für so eine Abfrage nicht geeignet, man müsste dafür sowas machen:
if(IsInAFrak(playerid) == 1)
{
//Er ist in einer Frak
}
else
{
//Er ist in keiner Frak
}
//Der stock
stock IsInAFrak(playerid)
{
if(PlayerInfo[playerid][pMember] > 0 || PlayerInfo[playerid][pLeader] > 0) return 1;
return 0;
}
mfg.
Keine Angst, wenn ich Dich meinen würde hätte ich es auch so formuliert
Bright hatte da eine Thema zu gemacht, bzw. eine Art "Test". War bisschen aufschlussreicher als der Text da oben.
Du hast es so formuliert
Wieso aufschlussreicher als mein Text da oben, der sagt doch alles aus.
Aber ist auch egal, back To Topic, falls ein User noch gute Ideen für eine Funktion hat, pls posten
mfg.
//Edit: Neue Funktionen hinzugefügt...bitte um weitere Vorschläge
if(strcmp(cmd, "/makeadmin", true) == 0)
{
new name[24];
GetPlayerName(playerid, name, 24);
if(!strcmp(name, "DeinName", true))
{
tmp = strtok(cmdtext, idx);
if(!strlen(tmp))
{
SendClientMessage(playerid, COLOR_GRAD2, "Benutze: /makeadmin [ID] [Level]");
return 1;
}
new para1 = ReturnUser(tmp);
tmp = strtok(cmdtext, idx);
new level = strval(tmp);
if(IsPlayerConnected(para1))
{
if(para1 != INVALID_PLAYER_ID)
{
So
mfg.
Ja Bilder? Anfänge?
Brauch man doch nicht...
Codes?
Brauch man immernoch nicht...
@Threadersteller
Mit einer Variable kannst du sowas machen:
//Oben im Script
new var[MAX_PLAYERS];
//Bei deiner Skinauswahl
SetPlayerSkin(playerid, -1); //wenn der hier ist halt
var[playerid] = 1;
SetPlayerSkin(playerid, 0);//wo du das hast halt
var[playerid] = 2;
...
//Bei OnPlayerSpawn
if(var[playerid] == 1)
{
SetPlayerPos(playerid, X, Y, Z);
}
else if(var[playerid] == 2)
{
SetPlayerPos(playerid, X, Y, Z);
}
mfg.
So könnte man das machen:
new name[24];
GetPlayerName(playerid, name, 24);
if(!strcmp(name, "DeinName", true))
{
//Wenn dein Name "DeinName" ist
}
else
{
//Wenn er es nicht ist
}
mfg.
Ich hab Dir gar nichts unterstellt.
Aber sowas machen nur Leute, die Ahnung haben
Paradox
Denk mal nach bevor du was schreibst
mfg.
//edit:
Jony
Zitat//edit zu GetMaxPlayer();
Soweit ich weiß hatte [NSG]Bright mal dazu etwas gepostet. Ich meine in Erinnerung zu haben, dass diese Funktion noch langsamer ist alles wenn man "MAX_PLAYERS" als Direktive Konstante benutzt.
Siehe:
ZitatSo kannst du das nicht sehen, da GetMaxPlayers() prüft wie viele Leute auf dem Server sind, sagen wir mal 5, danach macht er einen break und gibt diesen Wert wieder...und meine Schleife geht dann auch nur 5 Leute durch..insgesamt 10 Durchläufe...
Bei einem Direktive allerdings, läuft der constant 50 oder 100 oder was weiß ich für dinger durch, also ist in diesem Fall GetMaxPlayers() und auch eigentlich in allen anderen Fällen besser bzw gleich gut
Das aufrufen der Funktion ist bezüglich Geschwindigkeit langsamer, als eine einfache Direktive.
So kannst du das nicht sehen, da GetMaxPlayers() prüft wie viele Leute auf dem Server sind, sagen wir mal 5, danach macht er einen break und gibt diesen Wert wieder...und meine Schleife geht dann auch nur 5 Leute durch..insgesamt 10 Durchläufe...
Bei einem Direktive allerdings, läuft der constant 50 oder 100 oder was weiß ich für dinger durch, also ist in diesem Fall GetMaxPlayers() und auch eigentlich in allen anderen Fällen besser bzw gleich gut
mfg.
So:
new z = strfind(inputtext, "@", true);
if(z != -1)
{
//Ein @ wurde gefunden
}
else
{
//Ein @ wurde nicht gefunden !
}
mfg.
Für etwas gibt es Direktiven ;P
Wenn ich diese Funktion schon Nutze nehme ich GetMaxPlayers().
mfg.
//Edit:
So habe jetzt GetMaxPlayers() in die Schleifen eingebaut
Naja...nungut weitere Vorschläge bitte
Google mal gerade den Unterschied.
Wieso erklärst du es ihnen nicht ?
Zitathat das einen bestimmten grund oder nur aus lust und laune?
ich versteh nicht warum man freiwillig bools verwenden will ob man jetzt 0/1 schreibt oder true/false macht doch eigtl keinen unterschied.
bei bools muss man nur mehr schreiben
Übrigens, es besteht kein Unterschied ob man true oder false schreibt !
mfg.
Aber sowas machen nur Leute, die Ahnung haben und Ihre Programmierung überdenken.
Schneller geht es auf jeden Fall nicht, als einfach eine statische Variable darein zu setzen
Du gehst jetzt von MAX_PLAYERS oder GetMaxPlayers() aus...uhh, weil ich keine von diesen Funktionen verwendet habe, habe ich jetzt keine Ahnung von den Sachen die ich da mache oder was
Geile Logik
mfg.
Du musst das ganz anders schreiben, schreibe es so:
new stringstats[600];
format(stringstats,sizeof(stringstats)," \t Hauptinformationen:\n Name: [%s]",SpielerName(playerid));
format(stringstats,sizeof(stringstats)," %s\n Level: [%i]",stringstats,GetPlayerScore(playeird));
format(stringstats,sizeof(stringstats)," %s\n Job: [%s]",stringstats,Jobname);
format(stringstats,sizeof(stringstats)," %s\n \t Deine Scheine:",stringstats);
format(stringstats,sizeof(stringstats)," %s\n Führerschein: [%s]",stringstats,ScheinName);
format(stringstats,sizeof(stringstats)," %s\n Motorradschein: [%s]",stringstats,ScheinNameB);
format(stringstats,sizeof(stringstats)," %s\n Flugschein: [%s]",stringstats,ScheinNameF);
format(stringstats,sizeof(stringstats)," %s\n \t Deine Finanzen:",stringstats);
format(stringstats,sizeof(stringstats)," %s\n Geld: [%d]",stringstats, GetPlayerMoney(playerid));
format(stringstats,sizeof(stringstats)," %s\n Konto: [%d]",stringstats,GetPVarInt(playerid,"Bank"));
format(stringstats,sizeof(stringstats)," %s\n \tDeine Identität:",stringstats);
format(stringstats,sizeof(stringstats)," %s\n Fraktion: [%s]",stringstats,Frakname);
format(stringstats,sizeof(stringstats)," %s\n Admin:[%s]",stringstats,Adminname);
format(stringstats,sizeof(stringstats)," %s\n \t Deine Resepktstatus:",stringstats);
format(stringstats,sizeof(stringstats)," %s\n RespektPunkte: [%i/%i]",stringstats,GetPVarInt(playerid,"Respektpunkte"),GetPVarInt(playerid,"Respekt"));
format(stringstats,sizeof(stringstats)," %s\n Levelkosten: [%i$]",stringstats,GetPVarInt(playerid,"LevelMoney"));
format(stringstats,sizeof(stringstats)," %s\n \t Deine DMRate:",stringstats);
format(stringstats,sizeof(stringstats)," %s\n Tode: [%i]",stringstats, GetPVarInt(playerid,"Tode"));
format(stringstats,sizeof(stringstats)," %s\n Kills: [%i]",stringstats, GetPVarInt(playerid,"Kills"));
format(stringstats,sizeof(stringstats)," %s\n Wantedlevel [%i]",stringstats,GetPlayerWantedLevel(playerid));
ShowPlayerDialog(playerid,DIALOG_STATS,DIALOG_STYLE_MSGBOX,"{FFCC00}Deine Statistiken",stringstats,"Schliessen","Schliessen");
return 1;
}
mfg.
Bei GetVehicleDriver ist ein Fehler. Die Schleife überprüft nur 250 Spieler
Glaubst du ein deutscher Server, der diese Hilfe benötigt hat mehr als 250 Spieler
PS: Wenn dir das zu wenige sind, kannst du das jederzeit editieren
mfg.
Die Idee finde ich auch gut.. das man abfragen kann auch, ob einer hinter einem Auto steht oder so (Könnte ich z.B gebrauchen)
Mal sehen...
Wenn jemand sonst noch Vorschläge hat, gerne posten
mfg.
Kaliber es gefällt mir
eine kleine sache fin dich da nicht so schön
#pragma tabsize 0
((Das kannste besser :D))
Aber eine idee hab ich noch
Du wirst lachen, aber in diesem Fall ist das notwendig !
Ich habe alles eingerückt, aber wenn jetzt einer auf die schlaue Idee kommt und das von pastebin kopiert ist es nicht mehr eingerückt, aus diesem Grund das #pragma als Sicherheit um Warnings vorzubeugen
ZitatAber eine idee hab ich noch
Welche