Gerade die Funktion SendTimeMessageToAll hinzugefügt und die Downloadlinks erneuert
mfg.
Gerade die Funktion SendTimeMessageToAll hinzugefügt und die Downloadlinks erneuert
mfg.
@Schwabbel
Wenn ich also
SendTimeMessageToAll(0xFF4800FF,60000,"Test");
eingebe kommt diese Nachricht jede Minute?
@Schwabbel
Wenn ich also
SendTimeMessageToAll(0xFF4800FF,60000,"Test");
eingebe kommt diese Nachricht jede Minute?
Nein...
So müsstest du das z.B. machen
SendTimeMessageToAll(0xFF4800FF,60,"Test","Test1","Test2","Test3","Test4");
Jetzt würde direkt "Test" erscheinen, nach 1min dann "Test1", nach einer weiteren min "Test2" usw...
Wenn du willst, dass immer die selbe Message aufgerufen wird, kannst du auch einen normalen Timer verwenden
mfg.
@Schwabbel
kann man es auch in einer zeile so machen das die Narichten zeitverschoben kommen?
Also eine Naricht in 1M die zweite in 2M
Sprich igendwie so:
(Nur ein beispiel)
SendTimeMessageToAll(0xFF4800FF,60,70,90,usw,"Test","Test1","Test2","Test3","Test4");
Oder muss ich dafür ne neue Zeile dann erstellen?
kann man es auch in einer zeile so machen das die Narichten zeitverschoben kommen?
Nein, dass kann man nicht machen, nur regelmäßige Abstände
Nein, dass kann man nicht machen, nur regelmäßige Abstände
Schade.. also sprich jewals ne neue zeile erstellen? Oder geht das so auch nicht.
Schade.. also sprich jewals ne neue zeile erstellen? Oder geht das so auch nicht.
Wenn du zeitversetzt 1ne Message ausgeben willst, musst du mit Timern arbeiten, sprich sowas:
forward MSG_Timer(time,x);
public MSG_Timer(time,x) {
switch(x) {
case 0: SendClientMessageToAll(-1,"hi"),time=120; //jetzt würde die näcshte MSG erst nach 120 Sek kommen
case 1: SendClientMessageToAll(-1,"hi2");
case 2: return 0;
}
x++;
SetTimerEx("MSG_Timer",1000*time,0,"ii",time,x);
return 1;
}
//Dann sähe das so aus:
MSG_Timer(60,-1); //Erste nachricht kommt nach 60sek
So ungefähr
mfg.
ganz nett.
zum thema nachrichten mit komplett unterschiedlichen zeiten, dies könnte man auch so scripten, dass die zeiten direkt am anfang des strings stehen können:
auch könnte es leuten helfen wenn du ein Callback wie OnLastMessage machen würdest (vorausgesetzt du gibst ne message id zurück.)
so kann man die message von neuen starten ohne nen eigenen timer verwenden zu müssen.
so kann man die message von neuen starten ohne nen eigenen timer verwenden zu müssen.
Gute Idee, werde es später mal editieren
mfg.
zum thema nachrichten mit komplett unterschiedlichen zeiten, dies könnte man auch so scripten, dass die zeiten direkt am anfang des strings stehen können:
"%20%Dieser String kommt nach 20 sek." "%25%Dieser String kommt nach 25 sek."
Danke Sniper
zum thema nachrichten mit komplett unterschiedlichen zeiten, dies könnte man auch so scripten, dass die zeiten direkt am anfang des strings stehen können:
"%20%Dieser String kommt nach 20 sek." "%25%Dieser String kommt nach 25 sek."
kommt auch das mit rein?
Mit welcher Funtuion kann die die Message abrechen lassen das es nicht weiter die nachrichten schreibt?
Mit welcher Funtuion kann die die Message abrechen lassen das es nicht weiter die nachrichten schreibt?
Nun das geht momentan nur automatisch, sprich so:
SendTimeMessage(playerid,0xFFFFFF,10,"hi","hi2");
Sobald hi2 gesendet wurde, bricht das ab...
//Edit²: So habe nun die Funktionen verbessert und Callbacks hinzugefügt !
Viel Spaß
warum returnst du bei SendTimeMessageToAll(...) und SendTimeMessage(...) keine id, so könnte man auch StopTimeMessage(id); einbauen.
Leider hast du hierzu noch nichts gesagt:
zum thema nachrichten mit komplett unterschiedlichen zeiten, dies könnte man auch so scripten, dass die zeiten direkt am anfang des strings stehen können:
"%20%Dieser String kommt nach 20 sek." "%25%Dieser String kommt nach 25 sek."
Leider hast du hierzu noch nichts gesagt:
Was soll ich dazu sagen
warum returnst du bei SendTimeMessageToAll(...) und SendTimeMessage(...) keine id, so könnte man auch StopTimeMessage(id); einbauen.
Ja...keine Lust
Geht doch auch so
Ja...keine Lust
Geht doch auch so
ne, ich kann es nicht abbrechen,
gehen wir mal davon aus, jemand macht einen countdown und lässt von 10 bis 1 ausgeben und bei 0 Go oder so, nun will er den countdown via cmd starten können aber auch abbrechen können.
Starten geht bei deinem System, Abbrechen weniger.
edit:
ZitatWas soll ich dazu sagen
ob du es einbauen willst oder nicht?
solltest du was nicht verstehen frag.
Starten geht bei deinem System, Abbrechen weniger.
Doch Stichwort globale Variable und dann mit dem Callback arbeiten, wenn die Variable z.B. auf 1 ist soll strcmp starten und nach dem go einfach z.B. ein zzz schreiben und wenn das so ist return 0; schreiben...
zudem wenn das letzte Wort eh go ist, hört das automatisch auf
ob du es einbauen willst oder nicht?
solltest du was nicht verstehen frag.
Das war doch die Frage...für was soll das gut sein und soll das mit print in die Konsole geschrieben werden oder per SendClientMessage...verstehe den Sinn dahinter nicht ?!
mfg.
Wie Währe es mit sowas ist jetzt in C++ da ich keine
Zeit habe es momentan umzuschreiben:
cell AMX_NATIVE_CALL SendClientMessageForInt(AMX* amx, cell* params)
{
int index = NULL;
cell *addr = NULL;
amx_GetAddr(amx, params[2], &addr);
amx_StrLen(addr, &index);
char* message = new char[index];
amx_GetString(message, addr, 0, index);
for(int i = NULL;i<MAX_PLAYERS;i++)
{
if(params[3] >= params[4] && params[3] <= params[5]) { SendClientMessage(i,params[1],message); }
}
return 1;
}
cell AMX_NATIVE_CALL SendClientMessageForPVar(AMX* amx, cell* params)
{
int index = NULL;
cell *addr = NULL;
amx_GetAddr(amx, params[2], &addr);
amx_StrLen(addr, &index);
char* message = new char[index];
amx_GetString(message, addr, 0, index);
amx_GetAddr(amx, params[3], &addr);
amx_StrLen(addr, &index);
char* pvar = new char[index];
amx_GetString(pvar, addr, 0, index);
for(int i = NULL;i<MAX_PLAYERS;i++)
{
if(GetPVarInt(i,pvar) >= params[4] && GetPVarInt(i,pvar) <= params[5]) { SendClientMessage(i,params[1],message); }
}
return 1;
}
MFG Arendium
Wie Währe es mit sowas ist jetzt in C++ da ich keine
Zeit habe es momentan umzuschreiben:
Hast du nichts besseres zu tun, als hier rumzusuchen und irgendwelche Sachen in Plugins umzuschreiben...wtf
Wenn ich wollte, dass es ein Plugin ist, wäre es ein Plugin...so ?!
Das kann man aber auch in PAWN umsetzen und würde dan mehr SendClientMessage funktionen bieten, war ja nur ne idee
MFG Arendium