Soweit ich sehe sollte der Timer aufgerufen werden, aber ich denke das Problem liegt dadran.
das du playersonline abfragst wo bei das nur ein new ist das du erstellt hast
Hier die Antwort:
new onlineids[MAX_PLAYERS], playersonline, pname[16];
und dann fragst du das ab?? obwohl playersonline ein new ist und sogesen(0)
onlineids[playersonline] = i;
GetPlayerName(onlineids[random(playersonline)], pname, sizeof(pname));
da du ja
onlineids so definiert hast
onlineids[MAX_PLAYERS]und dann das so so setztonlineids[playersonline] = i;Das heist da playersonline ein new ist und nicht gesetzt wird ist es (0),
und das i bedeutet ja die id von MAX_PALYERS.
Groben und ganzen, die abfrage ergibt keinen sinn.
da du
onlineids[0] = (MAX_PALYERIDS) setzen lässt.
ich würde es so machen.Dies ist aus diesem Forum: http://forum.sa-mp.com/showthread.php?t=259885stock SelectRandomPlayer()
{
new random = Random(MAX_PLAYERS);
if(IsPlayerConnected(random))
{
return random;
}
else
{
SelectRandomPlayer();
}
}
also sogesehen so müsste es gehen:
forward Gambling();
public Gambling()
{
new randomplayer = SelectRandomPlayer(), pname[16];
for(new i=0; i<MAX_PLAYERS; i++)
{
if(IsPlayerConnected(i) && gamblingJoined[i] == 1)
{
GetPlayerName(randomplayer, pname, sizeof(pname));
format(pname, sizeof(pname), "Und der Gewinner von der Auslosung ist... %s!", pname);
SendClientMessage(i, WEISS, pname);
SendClientMessage(i, WEISS, "Der Gewinn:");
format(pname, sizeof(pname), "Geld: %i$\tMaterialien: %i", cGambling[Geld],cGambling[Materialien]);
SendClientMessage(i, WEISS, pname);
format(pname, sizeof(pname), "Spice: %ig\tSpicesamen: %i", cGambling[Spice],cGambling[Spicesamen]);
SendClientMessage(i, WEISS, pname);
format(pname, sizeof(pname), "Ganja: %ig\tGanjasamen: %i", cGambling[Ganja],cGambling[Ganjasamen]);
SendClientMessage(i, WEISS, pname);
format(pname, sizeof(pname), "Opium: %ig\tOpiumsamen: %i", cGambling[Opium],cGambling[Opiumsamen]);
SendClientMessage(i, WEISS, pname);
format(pname, sizeof(pname), "Kokain: %ig\tKokainsamen: %i", cGambling[Kokain],cGambling[Kokainsamen]);
SendClientMessage(i, WEISS, pname);
Spieler[randomplayer][pMaterials] = cGambling[Materialien];
// ...
cGambling[Materialien] = 0;
// ...
SendClientMessage(i, WEISS, "Eine neue Runde ist so mit gestartet, viel Glück!");
}
}
return 1;
}
Wenn es geklappt hat hoffe ich auf eine Antwort