Ja hat er aber ich will es Lernen
Du möchtest es doch erlernen, alles was du dazu brauchst, wurde hier im Thread bereits geschrieben
Grüße,
tony
Ja hat er aber ich will es Lernen
Du möchtest es doch erlernen, alles was du dazu brauchst, wurde hier im Thread bereits geschrieben
Grüße,
tony
Du veränderst einfach die Ziffer hinter dem Define?
Dann ist es eine andere DialogID.
Oder ich habe deine Frage falsch verstanden..
Grüße,
tonyalva
Öhm.....
Ja hat er aber ich will es Lernen
Nicht immer nur abgucken.
Das ist so gut wie der Einzige Befehl den ich noch Brauch..
Wenn ich es dir poste, lernst du es aber nicht? oO
Learning by doing.
Das Prinzip wird das Gleiche sein..
Grüße,
tony
Huhu,
if(Spieler[playerid][Admin] >= 2) //Wenn das Adminlevel des Spielers 2 oder höher ist..
Siehe dazu:
Samp-Wiki (Abfragen - Klick)
Grüße,
tony
Ich Brauche einen /Invite Befehl nicht die ForceClassSelection
Jemand hat dir schon einen /setleader Befehl erstellt.
Das Prinzip kannst du dir ja davon abschauen, die Variable des Wertes muss halt jeweils geändert werden..
Man kann dir nicht alles direkt scripten, irgentwann muss man auch Eigeninitiative ergreifen, da die Lösung prinzipiell schon gepostet wurde, müsstest du es hinkriegen.
Grüße,
tony
Kann das bitte einer den /kidnap befehl in sscanf schreiben?
Ist er doch?
if(sscanf(params,"ud",pID,seatid)) { return SendClientMessage(playerid,0xAFAFAFAA,"SYNTAX: /kidnap [playerid] [SitzId]"); }
@Die anderen:
Habe es mal aus dem GF kopiert..
public Float:GetDistanceBetweenPlayers(p1,p2)
{
new Float:x1,Float:y1,Float:z1,Float:x2,Float:y2,Float:z2;
if(!IsPlayerConnected(p1) || !IsPlayerConnected(p2))
{
return -1.00;
}
GetPlayerPos(p1,x1,y1,z1);
GetPlayerPos(p2,x2,y2,z2);
return floatsqroot(floatpower(floatabs(floatsub(x2,x1)),2)+floatpower(floatabs(floatsub(y2,y1)),2)+floatpower(floatabs(floatsub(z2,z1)),2));
}
Grüße,
tony
du sagst ja auch nirgend das du die eingegebe zahl einstecken willst
new giveplayerid;
giveplayerid = ReturnUser(tmp);
SetPlayerPos(giveplayerid,22,22,22);
so würde das bei mir aussehen^^
Hey,
doch, das tut er doch?
new pID;
if(sscanf(params,"u",pID))return SendClientMessage(playerid,GRAU,"/jail [id]");
Mh, gibt es denn irgentwelche Warnings?
So wird allerdigns nichts gespeichert, er muss auch noch den Wert "pFrakSperre" an sein Script anpassen.
Du müsstest beim Invite eigentlich einen TimeStamp erstellen, also den jetzigen Wert + 2 Wochen Zeit.
Wenn der Spieler dann uninvitet ist, aber der TimeStamp größer ist, als die jetzige Zeit, dann erhält der Spieler halt durch eine Variable die Fraktionssperre zugewiesen.
Grüße,
tonyalva
Hey,
Du musst einen Integer als Parameter nehmen, keinen Float.
Denn "Aufzug 1-4" sind schließlich ganze Werte, man hat ja keine halben Aufzüge
Dann benutzt Du diesen Parameter z.B so:
if(para == 1)
//Mache dies und das..
Zum Abfragen der Position solltest Du "IsPlayerInRangeOfPoint" nutzen.
Grüße,
tonyalva
bitte mach es mit der pwn code funktion wie ich das genau machen muss
bei dir versteh ich leider garnichts :<
Ich denke das liegt eher daran, dass du generell einen anderen die Arbeit machen lassen willst.
Ich habe die Lösung für das Problem bereits als Code gepostet.
format(string,sizeof(string),"AdmCmd: %s wurde von %s geleadert! Fraktion: %d",SpielerName(pID),SpielerName(playerid),rank);
Nun wird die Nummer der Fraktion angezeigt.
Du hast den falschen Platzhalter verwendet.
Grüße,
tony
for(new i = 0; i < sizeof(FBICars); i++)
{
SetVehicleNumberPlate(i,Text);
return 1;
}
Müsste alternativ auch gehen, da du alle Fahrzeuge durchgehen musst.
Grüße,
tony
Diese Lösung habe ich bereits gepostet.
Fraktion: %s
Die Fraktion ist in deinem Code allerdings kein string.
Entweder du lässt den Wert dort anzeigen oder du lässt bei jeder Fraktion zusätzlich einen Namen zuordnen.
Grüße,
tony
Sorry,
ich dachte, du wirst es sehen..
Meine Lösung geht auch, nur musst du das Prinzip halt dann auch anwenden, wenn ich es schon zeige..
new sendername[MAX_PLAYER_NAME];
GetPlayerName(playerid, sendername, MAX_PLAYER_NAME);
format(string,sizeof(string),"AdmCmd: %s wurde von %s zum Leader der Fraktion Nummer %d ernannt",giveplayername,sendername,fraknumber);
nurnoch:
C:\Users\Marcell\Music\SAMP 0.3c Windows Server\gamemodes\S3R.pwn(187) : error 017: undefined symbol "Spielername"
könnte mir jmd. sagen wie ich den noch weg bekomme?
Du hast in deinem Code ebenfalls die gleiche Zeile benutzt, darum verstehe ich nicht, warum es da jetzt Probleme mit gibt?..
new giveplayername[MAX_PLAYER_NAME];
GetPlayerName(pID, giveplayername, MAX_PLAYER_NAME);
format(string,sizeof(string),"AdmCmd: %s wurde von %s zum Leader der Fraktion Nummer %d ernannt",giveplayername,Spielername(playerid),fraknumber);
Eine Möglichkeit.
Grüße,
tonyalva
Ungetestet
und deins geht nicht _Sky_
Wieso sollte seins nicht gehen?
Deins wird so wohl eher auch nicht klappen, da er die Variablen höchstwahrscheinlich umbenennen muss, genau wie bei Sky.
PlayerName(playerid)
Wird so auch nicht klappen.
Grüße,
tonyalva
Ich weiß, wie du es meintest.
Allerdings sollte man auch ein bisschen Eigeninitiative aufbringen und der Teil, den ich erklärt habe, ist auch relativ verständlich..
ocmd:makeleader(playerid,params[])
{
if(!isPlayerAnAdmin(playerid,6))return SendClientMessage(playerid,ROT,"Du bist kein Admin.");
new pID, fraknumber,string[128];
if(sscanf(params,"ud",pID,fraknumber))return SendClientMessage(playerid,HELLBLAU,"/makeleader [id] [Fraktionsnummer]");
format(string,sizeof(string),"AdmCmd: %s wurde von %s zum Leader der Fraktion Nummer %d ernannt",Spielername(pID),Spielername(playerid),fraknumber);
SendClientMessageToAll(ROT,string);
SetPVarInt(pID,"Fraktion",fraknumber);
SpielerSpeichern(pID);
}
ja ich hab so ein generator gehabt das war irgendwie ein Programm
aber dass geht bei ravens doch auch wieso net für loh?
Weil die Scripter eine solch dynamische Funktion nicht erstellt haben?
Also kopierst du dir entweder das Haussystem von "Ravens", oder du benutzt halt den Generator.
Grüße,
tonyalva
dini_IntSet(Spielerdatei,"Fraktion",GetPVarInt(playerid,"Fraktion"));
Es muss also schonmal ein Zahlenwert sein.
Du ordnest nun also jeder Fraktion einen Wert zu, z.B PD = 1.
Beim Befehl setzt du nun die Variable auf den Wert.
Wenn du die Fraktion abfragen möchtest, benutzt du dann halt:
GetPVarInt(playerid,"Fraktion")
Grüße,
tonyalva
@ Zunno
So muss man allerdings die Vehicle-ID eingeben.
Was der Threadersteller möchte, ist allerdings, dass man eine SpielerID eingibt und dann die Health des Fahrzeuges, in dem der Spieler ist, verändert wird.
Folgende Funktionen werden dazu benötigt:
if(!IsPlayerInAVehicle(parameter)) return SendClientMessage(playerid,Farbe,"Der Spieler ist in keinem Fahrzeug!");
SetVehicleHealth(GetPlayerVehicleID(parameter),parameter2)
Grüße,
tonyalva