Zufall mit befehl

Wichtiger Hinweis: Bitte ändert nicht manuell die Schriftfarbe auf schwarz sondern belasst es bei der Standardeinstellung. Somit tragt ihr dazu bei dass euer Text auch bei Verwendung unseren dunklen Forenstils noch lesbar ist!

Tipp: Ihr wollt längere Codeausschnitte oder Logfiles bereitstellen? Benutzt unseren eigenen PasteBin-Dienst Link
  • Hallo,


    Ich habe heute gute laune und stelle das 2 tuturial an einem tag Ins Forum ^^


    Sicher fragen sich einige wie sie z.B einen einfachen lotte befehl machen können, der per zufall aussucht ob der spieler gewonnen hat oder verloren.


    Unter OnPlayerCommandText:
    if(strcmp("/lotto", cmdtext, true, 10) == 0)
    {
    new lotto = random (4);
    if(lotto == 1) // ist zufall 1 DANN....
    {
    SendClientMessage(playerid, COLOR_RED, "Du hast verloren, weil wir so nett sind schenken wir dir das Los."); // du verlierst
    return 1;
    }
    if(lotto == 2)// ist zufall 2 DANN....
    {
    SendClientMessage(playerid, COLOR_GREEN, "Herzlichen glückwunsch, du hast 100$ gewonnen."); // du gewinnst und bekommst 100$
    GivePlayerMoney(playerid, 100); // du bekommst das geld
    return 1;
    }
    if(lotto == 3)// ist zufall 3 DANN....
    {
    SendClientMessage(playerid, COLOR_RED, "Du hast verloren, das Los kostet 20$!"); // du verlierst und bekommst 20$ abgezogen
    GivePlayerMoney(playerid, -20); // du bekommst das geld abgezogen
    return 1;
    }
    if(lotto == 4)// ist zufall 4 DANN....
    {
    SendClientMessage(playerid, COLOR_GREEN, "Herzlichen glückwunsch, du hast soeben 500$ gewonnen."); // du gewinnst und bekommst 500$
    GivePlayerMoney(playerid, 500);// du bekommst das geld
    return 1;
    }
    return 1;
    }


    ich weiß das das sehr einfach ist, aber es kann dem ein oder anderen helfen :)
    Ich hoffe euch kann das Helfen.


    Viel spaß damit :)


    MFG:


    [ATC]eRaZoR

  • hm... btw, wie funktioniert so n switch?
    ist das einfacher?
    denn ich finde, dass hier ist schon relative einfach.

  • vorschlag von mir:


    if(strcmp("/lotto", cmdtext, true, 10) == 0)
    {
    new string[128];
    new lotto = random (500);
    lotto -= 275;
    if(lotto > 0){
    format(string, sizeof(string), "Herzlichen glückwunsch, du hast %d$ gewonnen.", lotto);
    }
    else if(lotto < 0)
    {
    format(string, sizeof(string), "Schade, du hast %d$ verloren.", lotto * -1);
    }
    else
    {
    format(string, sizeof(string), "du hast weder gewonnen noch verloren, versuchs nochmal!");
    }


    SendClientMessage(playerid, COLOR_GREEN, string);
    GivePlayerMoney(playerid, lotto); // du bekommst das geld
    return 1;
    }

  • jetzt, nachdem ich meiner freundin das system erklärt habe ist mir aufgefallen, dass man bei dir fast nur gewinnen kann.
    du solltest entweder überprüfen ob der spieler in der letzten zeit schon lotto gespielt hat oder einstellen, dass er eher was verliert als gewinnt.


    an stelle des spielers würd ich mit /lotto auf 1 legen und 1000mal 1 drücken, dann hätte ich total viel kohle und würde den server verlassen und mir nen anderen suchen, weil es dann kein sinn mehr macht zu spielen.

  • FAIL!
    Das ist mal wieder super... Jeder sagt "Ach wie toll!! 10/10 Punkten", wobei das Tutorial komplett falsch ist...


    Bei random(4) können 0,1,2 und 3 ausgegeben werden.
    Das heißt mit diesem Code ist es unmöglich die 500$ zu gewinnen.


    Wenn ein Neuling jetzt die SuFu benutzt, dieses Thema findet, wird es ihm von Anfang an falsch beigebracht! :thumbdown:


    Wenn man ein Tut schreibt, sollte man es wenigstens selbst können!!


    PS: Ich weis, das Thema ist alt, aber wenn hier so ne Scheisse verzapft wird, muss man mal was sagen.


    Ich scripte NICHT mehr, ich möchte mit NIEMANDEM einen Server aufmachen habe auch NICHTS mehr mit LoH zu tun, also lasst es mit den PNs!

  • do.de - Domain-Offensive - Domains für alle und zu super Preisen