Sry Soll nid respecktlos klingen aber irgendwie geht das bestimmt.
Nein, du kannst das nicht machen !
mfg.
Sry Soll nid respecktlos klingen aber irgendwie geht das bestimmt.
Nein, du kannst das nicht machen !
mfg.
Schreibe den Befehl mal so:
ocmd:opark(playerid,params[])
{
if(!IsPlayerInAnyVehicle(playerid))return SendClientMessage(playerid,COLOR_RED,"Du musst im Towtruck sitzen!");
new trailercar = GetVehicleTrailer(GetPlayerVehicleID(playerid));
if(!IsTrailerAttachedToVehicle(GetPlayerVehicleID(playerid)))return SendClientMessage(playerid,COLOR_RED,"Du musst ein Fahrzeug am Towtruck haben!");
GetVehiclePos(trailercar,PlayerAuto[trailercar][paX],PlayerAuto[trailercar][paY],PlayerAuto[trailercar][paZ]);
GetVehicleZAngle(trailercar,PlayerAuto[trailercar][paA]);
SendClientMessage(playerid,COLOR_GREEN,"Auto wurde nun hier abgestellt.");
DetachTrailerFromVehicle(GetPlayerVehicleID(playerid));
SetPVarInt(vkey,"towed",1);
format(str,sizeof str,"autos/auto_%d.txt",trailercar);
dini_FloatSet(str,"X",PlayerAuto[trailercar][paX]);
dini_FloatSet(str,"Y",PlayerAuto[trailercar][paY]);
dini_FloatSet(str,"Z",PlayerAuto[trailercar][paZ]);
dini_FloatSet(str,"A",PlayerAuto[trailercar][paA]);
return 1;
}
mfg. ![]()
//Edit: Hatte ein i vergessen zu korrigieren ![]()
Da, kurz und knapp:
if(!strcmp(cmd, "/kidnap", true))
{
if(!IsACop(playerid)) return SendClientMessage(playerid,rot,"Du bist kein Cop !");//Anpassen falls nötig
tmp = strtok(cmdtext, idx);
if(!strlen(tmp)) return SendClientMessage(playerid,rot,"Verwendung: /kidnap [spielerid]");
new pID = strval(tmp);
if(!IsPlayerConnected(pID) || pID == playerid) return SendClientMessage(playerid,rot,"Diese Spielerid ist ungültig !");
new Float: X, Float: Y, Float: Z;
for(new v; v<MAX_VEHICLES; v++)
{
GetVehiclePos(v, X, Y, Z);
if(!IsPlayerInRangeOfPoint(pID, 10.0, X, Y, Z)) continue;
PutPlayerInVehicle(pID, v, 1);
TogglePlayerControllable(pID, 0);
break;
}
SendClientMessage(playerid,blau,"Du hast einen Spieler erfolgreich gekipnapt !");
return 1;
}
Einzelne Funktionen evtl anpassen ![]()
mfg. ![]()
Beachte das nicht das kommt in jedem GF edit vor,
Ja, daran sieht man wieder wie schlecht die gescriptet sind ![]()
Dieser Fehler bzw diese Information kann aus verschiedenen Gründen kommen, entweder man nutzt zu viele Variablen im Script oder man macht die Arrays von Variablen viel zu unnötig groß (was meistens der Verursacher dieser Information ist).
Beheben kannst du dies halt, wenn du die Array Größen anpasst.
Dennoch sollte dies kein Grund sein um Befehle zu blockieren, dafür sind eher Filterscripts verantwortlich ![]()
mfg. ![]()
So:
SetCameraBehindPlayer(playerid);
mfg. ![]()
Du musst das so schreiben:
stock Kassegeben(pld,key[],key2){
Wenn du im Parameter das hier setzt [] denkt der Compiler es handelt sich um einen string ![]()
mfg. ![]()
Das konntest du mal besser -.-
Wieso konnte ich nutze diese Directive doch gar nicht, aber für Anfänger ist es meistens einfacher so eine Zeile da in sein Script zu schreiben, also darüber nachzudenken, wie man das jetzt am besten einrückt ![]()
mfg. ![]()
Schreibe mal oben in dein Script:
#pragma tabsize 0
Sollte dir helfen ![]()
mfg. ![]()
new Float:X, Float:Y, Float:Z;
GetPlayerPos(playerid, X, Y, Z);
Ehm...das kannst du löschen ![]()
mfg. ![]()
Bau eine Funktion ein, die ob ID- oder Spielernameeingabe denjenigen Bannt / Kick. Z.b. ReturnUser(ID o. Name].
Das wäre sinnvoll, bzw was er meinte
Hab das mit ihm schon via PM geklärt ![]()
Die Funktion kann man sich auch selber bauen, da ich die Funktion IsAlpha veröffentlicht habe ![]()
mfg. ![]()
Ich versteh nie Funktion nich richtig, ich hatte das so gemacht das ich in eine Ecke gegangen bin (am BSP ist die Ecke mit "H" bescriftet) jedoch hing ich egal wo ich war fest also wurde durch die Gegend geschleudert
Du darfst das ja auch nicht in den Ecken machen ![]()
So muss du bsp weise das machen:
Ich weiß schön gemacht, also auf dieser gut aussehenden Skizze bist du immer dieser Strich der absteht und da musst du die Koords quasi nehmen ![]()
mfg. ![]()
Alles anzeigenKannst du auch so eine Whitelist funktion machen?
Das man nur iwie im Script:
enum Whites{
{Kaliber},
{shB},
{Fipsi}
}
machen muss, um die Leute auf der Whitelist zudefinieren.
Und diese dann mit einem KickNotWhitelist(playerid); unter OnPlayerConnect kicken kann oder so?
Geht sowa?
Ist möglich, ich bau mal was ![]()
mfg. ![]()
(Also beides kann eingegeben werden, aber das ist jetzt wieder off-topic)
Ehm...wozu willst du beides angeben ?! Sinnlos ![]()
Falls mir noch was dazu einfällt, werd ich hier drunter posten, oder dir ne PN zukommen lassen!
Alles klar ![]()
mfg. ![]()
Das macht man so:
if(i == playerid) continue;
Das einfach in die Schleife einbauen und dir wird nichts passieren ![]()
mfg. ![]()
Naja ich weiß nicht ob es möglich ist, aber ich brauch ne Funktion, in der man z.b. über Dialoge kicken kann, Mit ID & Namenseingabe, funktioniert leider bei mir zzT. nur mit dem SpielerNamen, aber ID / Name wäre besser, wenn es möglich ist kannst du das ja einbauen
Ehm, da ist eine extra Funktion Überflüssig, weil du das schon machen kannst, siehe Bsp:
//Beispiel
//Im Befehl
ShowPlayerDialog(playerid,-1,DIALOG_STYLE_INPUT,"Kick-Dialog","Gib hier die ID des Spielers ein, den du kicken willst:","Ok","Abbrechen");
if(dialogid == -1)
{
Kick(strval(inputtext));//Die ID die eingegeben wurde, wird gekickt !
}
mfg. ![]()
Danke, werde es mir mal angucken und später hier editen, falls ich heute dazu komme.
Freut mich, dass Leute meine Include benutzen werden ![]()
Falls du (oder wer anders) noch Vorschläge hat für noch mehr Funktionen, bitte schreiben ![]()
mfg. ![]()