Hallo,
ich möchte einen timer machen damit man 3 sek warten muss damit man sich einlogen kann.
dann soll da ein text stehen unzwa: du kannst dich in 3, 2, 1, einlogen.
Hallo,
ich möchte einen timer machen damit man 3 sek warten muss damit man sich einlogen kann.
dann soll da ein text stehen unzwa: du kannst dich in 3, 2, 1, einlogen.
Godfather oder welches Script leute ihr müsst immer posten was ihr für nen Script habt
Oh ich dachte ich wäre hir im Gf bereicht sorry ich habe GF
genau so wie ich dir das nun zeige mit der ClientMessage gehts auch mit nem Textdraw
forward SekundenTimer(playerid);
new Waiting[MAX_PLAYERS];
new Timer[MAX_PLAYERS];
public OnPlayerConnect(playerid)
{
Waiting[playerid] = 3;
Timer[playerid] = SetTimer("SekundenTimer",1000,1);
return 1;
}
public SekundenTimer(playerid)
{
if(gPlayerLogged[playerid] == 0)
{
Waiting[playerid] -= 1;
format(Text,sizeof(Text),"Du kannst dich in %d sekunden einloggen");
SendClientMessage(playerid,Gelb,Text);
if(Waitin[playerid] == 0)
{
KillTimer(Timer[playerid]);
}
}
return 1;
}
musst dann halt nur statt SendClientMessage das mit dein Textdraw machen
so ?
da bekomme ich errors:
public SekundenTimer(playerid)
{
if(gPlayerLogged[playerid] == 0)
{
Waiting[playerid] -= 1;
format(Text,sizeof(Text),"Du kannst dich in %d sekunden einloggen");
CreateTextDraw(playerid,Gelb,Text);
if(Waitin[playerid] == 0)
{
KillTimer(Timer[playerid]);
}
}
return 1;
}
C:\Dokumente und Einstellungen\Boris\Desktop\PC2.pwn(2395) : warning 225: unreachable code
C:\Dokumente und Einstellungen\Boris\Desktop\PC2.pwn(33165) : error 017: undefined symbol "Text"
C:\Dokumente und Einstellungen\Boris\Desktop\PC2.pwn(33165) : error 017: undefined symbol "Text"
C:\Dokumente und Einstellungen\Boris\Desktop\PC2.pwn(33165) : error 029: invalid expression, assumed zero
C:\Dokumente und Einstellungen\Boris\Desktop\PC2.pwn(33165) : fatal error 107: too many error messages on one line
sorry hier
public SekundenTimer(playerid)
{
if(gPlayerLogged[playerid] == 0)
{
new Text[32];
Waiting[playerid] -= 1;
format(Text,sizeof(Text),"Du kannst dich in %d sekunden einloggen");
CreateTextDraw(playerid,Gelb,Text);
if(Waitin[playerid] == 0)
{
KillTimer(Timer[playerid]);
}
}
return 1;
}
public SekundenTimer(playerid)
{
if(gPlayerLogged[playerid] == 0)
{
new Text[32];
Waiting[playerid] -= 1;
format(Text,sizeof(Text),"Du kannst dich in %d sekunden einloggen"); //fehlt hier nicht was?
CreateTextDraw(playerid,Gelb,Text);
if(Waitin[playerid] == 0)
{
KillTimer(Timer[playerid]);
}
}
return 1;
}
Da fehlt doch was, is doch ein string
und ich glaub statt
if(Waitin[playerid] == 0)
gehört
if(Waiting[playerid] == 0)
das g fehlt
Das wird nichts nützen. Innerhalb des Callbacks Sekundentimer wird eine playerid benötigt.
Julian, warum stellst du dann einen Timer für alle? Hierfür ist SetTimerEx gedacht mit dem du dann auch eine playerid übergeben kannst.
SetTimerEx("SekundenTimer", 1000, 1, "d", playerid);
Was macht ihr eigentlich mit dem "CreateTextDraw"? Noch nie von der Funktion gehört, Wiki kennt das auch nicht...
Mach dort lieber eine SendClientMessage oder einen GameModeText
jop hast recht und CreateTextdraw ist auch falsch ich hatte das mit SendClientMessage gemacht
CreateTextdraw gibt es auch nicht ka wer das da rein gepostet hat
//edit shadow benutz nen Textdraw editor das geht besser
ich hab ja gefragt ! weil ich eigentlich fast nie einen einen TexDraw nutze !
Zitatmusst dann halt nur statt SendClientMessage das mit dein Textdraw machen
so
public SekundenTimer(playerid)
{
if(gPlayerLogged[playerid] == 0)
{
new Text[32];
Waiting[playerid] -= 1;
format(Text,sizeof(Text),"Du kannst dich in %d sekunden einloggen"); //fehlt hier nicht was?
Textdraw1 = TextDrawCreate(112.000000,111.000000,Text);
TextDrawUseBox(Textdraw0,1);
TextDrawBoxColor(Textdraw0,0x00000033);
TextDrawTextSize(Textdraw0,496.000000,0.000000);
TextDrawBackgroundColor(Textdraw1,0x000000ff);
TextDrawFont(Textdraw1,1);
TextDrawLetterSize(Textdraw1,0.499999,1.000000);
TextDrawFont(Textdraw2,1);
TextDrawColor(Textdraw1,0x0000ffcc);
if(Waiting[playerid] == 0)
{
KillTimer(Timer[playerid]);
}
}
return 1;
}
öhm
C:\Dokumente und Einstellungen\Boris\Desktop\PC2.pwn(33176) : error 017: undefined symbol "Textdraw1"
C:\Dokumente und Einstellungen\Boris\Desktop\PC2.pwn(33180) : error 017: undefined symbol "Textdraw1"
C:\Dokumente und Einstellungen\Boris\Desktop\PC2.pwn(33181) : error 017: undefined symbol "Textdraw1"
C:\Dokumente und Einstellungen\Boris\Desktop\PC2.pwn(33182) : error 017: undefined symbol "Textdraw1"
C:\Dokumente und Einstellungen\Boris\Desktop\PC2.pwn(33183) : error 017: undefined symbol "Textdraw2"
C:\Dokumente und Einstellungen\Boris\Desktop\PC2.pwn(33184) : error 017: undefined symbol "Textdraw1"
ganz oben
new Text:Textdraw1;
naja geht iwi nicht -.- aber egal .. könte man das dann so machen das wenn man im haus gspawnt wird das man dann für 2 gefroren ist? ich habs versucht aber ich denke das ist falsch ...
forward Freezetimer(playerid);
ich weiß nicht wo das dann hin soll:
SetTimer("Freezetimer",2000,1);
for(new i=0; i<MAX_PLAYERS; i++)
TogglePlayerControllable(i, 1);
public Freezetimer(playerid)
{
for(new i=0; i<MAX_PLAYERS; i++)
TogglePlayerControllable(i, 0);
return 1;
}
Lg. Shadow