Da Fehlt überall die Überschrift sprich sowas:
ShowPlayerDialog(playerid,DIALOG_REGISTER,DIALOG_STYLE_INPUT,"Überschrift","Bitte gebe hier dein Gewünschtes Passwort ein","Regestrieren","Abbrechen");
mfg. ![]()
Da Fehlt überall die Überschrift sprich sowas:
ShowPlayerDialog(playerid,DIALOG_REGISTER,DIALOG_STYLE_INPUT,"Überschrift","Bitte gebe hier dein Gewünschtes Passwort ein","Regestrieren","Abbrechen");
mfg. ![]()
Wenn ich also ne Funktion erstelle so hier oder?
Richtig ![]()
if(SpielerInfo[playerid][pFraktion] != 1)//Wenn pFraktion für den Spieler nicht gleich 1 ist
if(!SpielerInfo[playerid][pFraktion] == 1)//Da bekommst du den Warning "Tag mismatch" weil das so bei Integern nicht funktioniert
mfg. ![]()
Weiß grad nicht was das Bedeuted:
Du hast falsche Operatoren verwendet ![]()
z.B. sowas:
if(bla = 1)//das hast du geschrieben
//richtig wäre:
if(bla == 1)
mfg. ![]()
Ist es möglich mehrere server übereine Datenbank laufen zulassen
Ja
Mache es so:
//OnPlayerEnterVehicle
if(!ispassenger)
{
for(new i=0; i<sizeof(SEKCar); i++)
{
if(GetPlayerVehicleID(playerid)==SEKCar[i])
{
if(!IsPlayerInFrak(playerid,2))
{
SendClientMessage(playerid,rot,"Du hast keine Schlüssel!");
TogglePlayerControllable(playerid,false);
TogglePlayerControllable(playerid,true);
break;
}
}
}
}
mfg. ![]()
Du hast dir da viel zu viel Unnötige Arbeit gemacht, du solltest mal einfach ein Array nutzen also anstatt new Text:Textdraw0; new Text:Textdraw1; .... einfach new Text:Textdraw[27];
und dann kannst du auch mit Schleifen arbeiten und brauchst nicht so viel Code ![]()
Aber dennoch ist die Idee super ![]()
mfg. ![]()
Wie frage ich dann nur bei meinem Befehl /getstuffs ab ob er in dem Car ist?
Genauso, wieder sowas:
if(GetPlayerVehicleID(playerid) == truckercar[0])
{
//hier befindet er sich im Trucker
}
else
{
//Falls er sich nicht im Trucker befindet
}
mfg. ![]()
nur ich glaube der zählt zu schhnell :b
Dann kannst du diesen Code erhöhen:
if(i < 20000) continue;
Zum Beispiel so:
if(i < 30000) continue;
Jetzt sollte er langsamer zählen ![]()
Wie stoppe ich den wieder?
Mit einer Globalen Variable sprich sowas:
//Oben im Script:
new Die_Pause;
//In meiner for-Schleife
for(new i; i!=-1; i++)
{
if(Die_Pause) break;
//mein Code
}
//Irgendein Cmd
if(!Die_Pause) {
//Die Schleife wird gestoppt
Die_Pause = 1;
}
else {
//Die Schleife Startet wieder
mn = 0, sek = 0, mil = 0, Die_Pause = 0;
Race_Timer();
}
mfg. ![]()
//Edit: Blitz100 ...
Was ist daran falsch ?
Du hast es falsch eingerückt oder dieses return 1; blockiert einen Code Verlauf.
Versuche mal oben in dein Script folgendes zu schreiben: #pragma tabsize 0
Wenn der Warning dann nicht verschwindet lösche die Zeile ![]()
mfg. ![]()
Und was schreibt man unter das if(veh == truckercar[0])?
Ja, halt das was passieren soll wenn er in diesem Truck sitzt ![]()
habe ich nur ein leeres Pawn Dokument.
und du bist doch nicht zu blöd, hast es doch geschafft, so fängt man ein neues GM an ![]()
mfg. ![]()
Vllt. kannst du ja was zaubern..
Ja, also es gibt 1ne Möglichkeit die du verwenden könntest, da musst du dich aber von deinem Timer lösen, funktioniert aber ähnlich, schau mal:
new mn,sek,mil;
public OnGameModeInit()
{
Race_Timer();
return 1;
}
forward Race_Timer();
public Race_Timer()
{
for(new i; i!=-1; i++) {
if(i < 20000) continue;
i = 0;
new string[128];
mil++;
if(mil==1000)sek++,mil=0;
if(sek==60)mn++,sek=0;
format(string, sizeof string,"%02d:%02d:%02d",mn,sek,mil);
printf("%s",string);
}
return 1;
}
So sollte es gehen ![]()
mfg. ![]()
/edit: Blitz100 ...
So:
//unter dem Callback OnPlayerStateChange
if(newstate == PLAYER_STATE_DRIVER)
{
new veh = GetPlayerVehicleID(playerid);
if(veh == truckercar[0])
{
//Hier sitzt er im Fahrzeug
}
}
mfg. ![]()
Also ich habe es gerade so getestet:
new mn,sek,mil;
public OnGameModeInit()
{
SetTimer("Race_Timer", 1, 1);
return 1;
}
forward Race_Timer();
public Race_Timer()
{
new string[128];
mil++;
if(mil==1000)sek++,mil=0;
if(sek==60)mn++,sek=0;
format(string, sizeof string,"%02d:%02d:%02d",mn,sek,mil);
printf("%s",string);
return 1;
}
Ich weiß was du meinst, aber das liegt daran, dass eine gewisse Zeit verloren geht, das zu printen, aus diesem Grund dauert das etwas länger ![]()
Aus diesem Grund kannst du das nicht beheben mit den Millisekunden, du kannst sie höchstens streichen oder mit dieser kleinen Verzögerung leben ![]()
mfg. ![]()
Wieso interpretierst du meinen Post ![]()
Ich habe nie so eine Klammer gesetzt "{" wieso tust du es 2x ![]()
Nimm die Klammer raus ![]()
und bei OnFilterScriptInit musst du halt darauf achten, dass der Parameter "playerid" nicht übergeben wird also suche dir die SetTimer("bla"...); funktion und jetzt gehe unter "bla" und mache da if(IsPlayerNPC(playerid)) return 1;
Alles anzeigenpublic OnFilterScriptInit()
{
for(new i = 0;i < MAX_PLAYERS;i++)
{
if(IsPlayerNPC(i)) return 1;
}
return 1;
}
Das ist falsch, vergiss das, schreib das nicht rein, das würde den Callback unterbrechen !
mfg. ![]()
Das ist schon eine uralte Frage und die wurde schon 1000x gestellt SuFu benutzen ist irgendwie nicht dein Ding ![]()
Hier: Spawnen ohne Spawn Button
mfg. ![]()
Mach einfach in dem Filterscript sowas:
//Unter OnFilterScriptInit & unter OnPlayerConnect
if(IsPlayerNPC(playerid)) return 1;
mfg. ![]()
Das sieht doch für den Anfang gar nicht so schlecht aus, ich empfehle dir aber noch, diese Pawn Funktion zu nutzen um deine Maps zu optimieren ![]()
mfg. ![]()