Das der Spieler sich nicht sieht aber ein Haus BSN oder so sieht. Für andere Möglichkeiten wär ich auch glücklich
Beiträge von marvin01921
-
-
Ich habe nach langen rumprobieren festgestellt das man einen Spieler nicht freezen ("TogglePlayerControll..") kann.
Gibts eine Möglichkeit ihn trotzdem zu freezen oder die Camera so zu setzen das man ihn nicht sieht aber ein Haus oder so? -
jetzt gehts aber man soll gekickt werden wenn man das Menü weg macht und das man beim Menü nicht laufen kann.
Mit TooglePlayerControllable gehts nicht.. -
Ich habe ein Login Menü erstellt aber da kommt nichts wenn ich auf einen Draufklicke.
Login = CreateMenu("Wilkommen",2,253.333343, 147.674072,100,150);
AddMenuItem(Login,0, "Einloggen");
AddMenuItem(Login,0, "Neu Anmelden");
AddMenuItem(Login,0, "Verlassen");
Errors kommen keine aber Dialoge auch nicht.new Menu:CuMenu = GetPlayerMenu(playerid);
if(CuMenu == Login)
{
switch(row)
{
case 0:
{
new Spielerdata[128];
format(Spielerdata,sizeof(Spielerdata),"/Spieler/%s.txt",SpielerName(playerid));
if(!dini_Exists(Spielerdata))
{
SCM(playerid,WEISS,"Du hast noch keinen Benutzer.");
}
else
{
SPD(playerid,DIALOG_LOGIN,DIALOG_STYLE_INPUT,"Wilkommen","Bitte gebe das Passwort ein.","Einloggen","Abbrechen");
}
}
case 1:
{
new Spielerdata[128];
format(Spielerdata,sizeof(Spielerdata),"/Spieler/%s.txt",SpielerName(playerid));
if(dini_Exists(Spielerdata))
{
SCM(playerid,WEISS,"Du hast bereits ein Benutzer.");
}
else
{
new str[30];
format(str,sizeof(str),"Wilkommen %s auf %s.\nBitte gebe nun ein Passwort ein,\num Spielen zu können.");
SPD(playerid,DIALOG_REGISTER_START,DIALOG_STYLE_INPUT,"Willkommen",str,"Anmelden","Abbrechen");
}
}
case 2:
{
SCM(playerid,WEISS,"Ok, du kannst später wiederkommen.");
Kick(playerid);
}
}
} -
Thx für die schnelle rückmeldung aber nur war das doch mal mit dem true und false dass du einstellen kannst ob groß/klein schreibung beachtet wird
-
Ich bin an einem Autosystem am arbeiten und breuchte eine Hilfe wie man abfragen kann ob der Spieler das Auto gehört.
Angefangen habe ich mit if(!strcmp(AutoStats[GetPlayerVehicleID][Key],SpielerName(playerid),0,strlen(AutoStats[GetPlayerVehicleID][Key])))
aber da kommt ein error: error 076: syntax error in the expression, or invalid function call.
Währe nett wenn jemand eine bessere möglichkeit findet oder das Problem lösen kann. -
Ich benutze das ja bei SendClientMessage aber ich habe das über ein define gemacht.
Ich kenne das auch von vielen anderen Server dass es ein hellrot oder so gibt -
wenn ich "0xFF0000A4" habe dann zeigt der server mir nur das Rote an aber ohne das transparent
-
Ich scripte schon länger und mich nervt es, dass die Schriften nicht transparent barsind.
Viele werden wohl den SA-MP Colorpicker kennen, den benutze ich auch, wenn ich hellrot mache kommt auf dem server knallrot vor.
Ist das änderbar oder geht das nicht? -
Benutzt du den deutschen Pawn Compiler? manchmal sind die echt verbuggt
-
Um es kurz zu machen, ist die Adminabfrage schon falsch( Ist der Spierler Rank 1336 oder kleiner) würde ich lieber schreiben " if(pDaten[playerid][Adminlevel] < 1336" mit dem RconAdmin würde ich weg lassen. Es gibt sämtliche RconAdmin hacks.
Umgearbeitet:
if(strcmp(cmdtext, "/vfix", true) == 0)
{
if(IsPlayerConnected(playerid))
{
if(pDaten[playerid][AdminLevel] < 1336)return SendClientMessage(playerid,ROT,"Diesen befehel darf nur ein Admin nutzen");
{
if(IsPlayerInAnyVehicle(playerid))
{
RepairVehicle(GetPlayerVehicleID(playerid));
SendClientMessage(playerid,WEIS,"Fahrzeug repariert!");
}
}
}
return 1;
} -
Ich denke das Login ein stock ist schick mal was in dem stock steht
-
Unnötig! eine schleife wie im GF? einfach statt
"public Zeitenrechnung()"machst du
"public Zeitenrechnung(playerid)
und
"forward Zeitenrechnung(playerid);"
Nein, um die schleife wirst du nicht rumkommen denn du hast zwar im public und im forward playerid definiert aber der forward weiß nicht wer. Es macht alles viel schwerer weil er muss dann mit SetTimerEx playerid in den Timer bringen.
Und wie bringt man alle existierenden ID in SetTimerEx? Genau! mit der for(new i ... ) schleife. Er muss ja jeden Spieler berechnen und nicht nur einen. -
Zitat
Warum das nicht? Das pragma unused teilt dem Compiler lediglich mit, dass es aufgrund der nicht verwendeten Variable keinen Warning ausgeben soll.
Ansonsten sollte es theoretisch nichts ändern. Aber da das ja ursprünglich das Problem war, würde ich ebenfalls auf eine der 3 anderen Methoden zurückgreifen.]
Ganz einfach wie Robby sagte wenn er pragma drinn hat und er verschreibt sich mit einem Befehl oder so bekommt er kein Error oder Warning. Das ist ein einfacher eingriff
in die Compiler, dass er nicht ausgeben soll. -
Moin Adrian, eig. ist der error nicht schwer zu übersehen. Du sagt dem Server er soll was im enum von "playerid" umschreiben, dabei weiß er nicht wer playerid ist. Um es kurz zu fassen,
musst du eine schleife erstellen der alle 60 sekunden jeden Spieler bearbeitet. ganz einfach:public Zeitenrechnung()
{
for(new i = 0; i<MAX_PLAYERS; i++)
{
if(IsPlayerConnected(i) && !IsPlayerNPC(i))
{
pInfo[spielzeitminuten] +=1; //alle 60000 wird einmal +1 gemacht.
if(pInfo[i][spielzeitminuten] ==60)
{
pInfo[i][spielzeitstunden] +=1;
pInfo[i][spielzeitminuten] ==0;
}
if(pInfo[i][spielzeitstunden] ==24)
{
pInfo[i][spielzeitstunden] ==0;
pInfo[i][spielzeittage] +=1;
}
return 1;
}
}
return 1;
}ich habe folgendes hinzugefügt: Er soll bei ID 0 anfangen und soll seinen enum berechnen. dann soll er eine ID weiter auf 1 und so weiter. Falls du noch weiter arbeiten willst, bedenke es gibt kein "playerid" du musst dort "i" einsetzten. Falls noch schwirikkeiten vorkommen sollen PN an mich.
-
Danke für die schnelle antwort und auch für den script musste etwas umändern, da du ein paar Fehler selber hattest (gettime, io_read,...) aber danke es hat mir geholfen und es funktioniert auch sehr gut. Es geht einfacher mit dem stock: AdminLog(playerid,cmdtext);
-
Hatte ich auch mal auch Erfahrung damit. Es gibt 4 Möglichkeiten:
- neuere Version von Dini installieren, wenn es crossover ist(2 includes oder mehr zusammen) alle mal updaten
- ignorieren
- oder mit pragma es entfernen(nicht empfohlen)
- pawn compiler updaten(hab ich bei mir gemacht und es funzt wieder)
-
Moin erstmal, nur eine kurze frage wie man ein Admin Log ertsllen kann.Ich habe schon vieles versucht mit dini und so ein zeug aber ohne erfolg.
Der Admin-Log sollte folgendes beinhalten:
-
Spoiler anzeigen Name,Uhrzeit und Kommando anzeigen(In der normalen Console)
-
Spoiler anzeigen Ingame über ein Befehl die letzten 10 Befehle anzeigen
-
Spoiler anzeigen Alles in eine Datei schreiben
Wäre nett wenn jemand sowas zusammen stellen könnte. Ingame die Letzten 10 Befehle anzeigen lassen ist optional.Tipps oder Includes sind auch sehr wilkommen. -
-
Sry wenn ich etwas undeutlich war aber der Error wird auch nicht damit behoben, SpielerAuto ist bereits definiert.
enum PlayerCarInfo
{
bool:exists = false,
modelid,
Float:Posix,
Float:Posiy,
Float:Posiz,
Float:Posirot,
Farbe1,
Farbe2
};
new SpielerAuto[MAX_PLAYERS][MAX_PLAYER_CARS][PlayerCarInfo];aber der Error entsteht bei "CreateVehicle"
{
SpielerAuto[playerid][v][modelid] = dini_Int(Autodata,"modelid");
if(SpielerAuto[playerid][v][exists] == true)
{
SpielerAuto[playerid][v] = CreateVehicle(SpielerAuto[playerid][v][modelid],SpielerAuto[playerid][v][Posix],SpielerAuto[playerid][v][Posiy],SpielerAuto[playerid][v][Posiz],SpielerAuto[playerid][v][Posirot],SpielerAuto[playerid][v][Farbe1],SpielerAuto[playerid][v][Farbe2],-1);
}
} -
Bin kein Profiskripter, aber habe auch schon genug Erfahrung. So weit ich weiß, haben BOT's keine ID's. Wenn ich falsch liege bitte mich verbessern!