Hallo Leute,
ich habe überall rumgewühlt aber kein richtigen Countdown gefunden. Da wollt ich einfach mal Fragen ob keiner nen countdown.pwn hier posten kann.
Währe sehr nett.
Mit freundlichen Grüßen
psp_gangsta
Hallo Leute,
ich habe überall rumgewühlt aber kein richtigen Countdown gefunden. Da wollt ich einfach mal Fragen ob keiner nen countdown.pwn hier posten kann.
Währe sehr nett.
Mit freundlichen Grüßen
psp_gangsta
Mach doch selbst einen. Einfach eine Variable, einen Timer und eine if-Abfrage
So ein Kommentar finde ich unangebracht. Vielleicht kann er es nicht selber? ...
new countdown = 0;
forward checkcountdown();
dann z.B. ein dcmd command
dcmd_countdown(playerid,params[])
{
new sekunden;
if(sscanf(params, "d",sekunden))
{
return SendClientMessage(playerid,weiß,"Benutzung: /countdown [sekunden]");
}
countdown = sekunden;
SetTimer("checkcountdown",1000,0);
}
public checkcountdown()
{
if(countdown >= 1)
{
new string[128];
format(string,sizeof(string),"~r~%d",countdown);
GameTextForAll(string,1000,3);
countdown --;
SetTimer("checkcountdown",1000,0);
}
else
{
GameTextForAll("~g~ GO GO GO",1000,3);
}
}
Ich hoffe das funktioniert, bin leider grad etwas müde
Bin noch neu und kann nicht so gut scripten. Ehm muss ich das in eine pwn datei packen ? Alles nacheinander in eine Datei ?
Ehm sowert funktioniert das bei mir nicht.
Ich habe dann beim compilieren das:
warning 203: symbol is never used: "dcmd_countdown"
Ich hatte das soweit rein kpiert.
Wie kann ich das definieren im script?
mfg Dave
Hast du Im Callback OnPlayerCommandText
dcmd(countdown,9,cmdtext);
und das was ich oben gepostet hab also das
Und das Makro für dcmd und sscanf im Script ?
Das Hier am besten nach ganz unten
Und das unter die anderen defines oder includes ob ins Script
Also ich hab das nochmal gemacht und das hat irgendwie nix geändert,
ich glaube ich mache was falsch in der gliederung.
Kannst du mir vlt. erkläern wie ich es einbauen muss?
Zur info ich fange gerdae damit ab hab schon ein paar erfahrungen von einem anderem scripter.
Jetzt versuche ich es durch das Forum zu lernen.
Lernen tue ich am gammode "lvdm" den man hier oder im Ami sa-mp forum downloaden kann.
mfg Dave
Ganz nach oben unter #include <a_samp>
kommt new countdown = 0;
also
#include <a_samp>
new countdown = 0;
Du hast den Callback
public OnPlayerCommandText(playerid, cmdtext[])
{
return 1;
}
Den änderst du in
public OnPlayerCommandText(playerid, cmdtext[])
{
dcmd(countdown,9,cmdtext);
return 1;
}
Dann außerhalb dieses Callback also praktisch direkt darunter kommt das hier
public OnPlayerCommandText(playerid, cmdtext[])
{
dcmd(countdown,9,cmdtext);
return 1;
}
// hier drunter *runterschaun*
dcmd_countdown(playerid,params[])
{
new sekunden;
if(sscanf(params, "d",sekunden))
{
return SendClientMessage(playerid,weiß,"Benutzung: /countdown [sekunden]");
}
countdown = sekunden;
SetTimer("checkcountdown",1000,0);
}
Dann irgentwo im Script, außerhalb eines Callbacks, am besten ganz nach unten
forward checkcountdown();
public checkcountdown()
{
if(countdown >= 1)
{
new string[128];
format(string,sizeof(string),"~r~%d",countdown);
GameTextForAll(string,1000,3);
countdown --;
SetTimer("checkcountdown",1000,0);
}
else
{
GameTextForAll("~g~ GO GO GO",1000,3);
}
}