Kleines VoteSystem

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 Brotfische
    Da ich ein MessageSystem gemacht habe, wollte ich auch noch ein VoteSystem machen. Warum: Keine Ahnung. Aufjedenfall hab ich es gemacht und biete es euch an. Ich möchte euch heute V0.2 des Systems vorstellen. Erstmal die Fragen:


    Was kann das System
    Das System kann mit dem Befehl /cvote eine Frage an alle Spieler senden. Bei den Spieler erscheint dann ein Dialog mit der Frage und den beiden Buttons die der Administrator zuvor festgelegt hat. Den Status des Votings kann mit /vstats aufrufen. Das ganze System ist in Dialogen.


    Warum ich gerade sowas gemacht habe
    Ich habe ja ein MessageSystem gemacht. Aus unerklärlichen gründen, habe ich mich dann dazu gezwungen, ein Votesystem zu machen. Außerdem macht es spass so kleine Apps zu erstellen.


    [tabmenu]


    [tab='Screenshots']


    [/tabmenu]


    Der Download
    Ich stelle nur 1 Mirror auf Rapidshare zur verfügung, da ich da meinen Account habe.
    Zu Rapidshare
    Zu Pastebin
    Sollte der Downloadlink nicht mehr verfügbar sein, so schreibt mich bitte an.


    Ich bedanke mich für das lesen


    Mit freundlichen Grüssen
    Sonderzeichen


    Bitte kommentieren. Ich möchte gerne wissen, wie das System bei Euch ankommt.


    #edit Download geupdated
    #edit Fehler behoben, Download geupdatet
    #edit Fehler behoben, Bei /vstats wird auch Frage angezeigt, Ergebnisse löschen sich beim neuen Vote, Download und Pastebin geupdatet
    #edit Download und Pastebin geupdated. /vote eingebaut. Eigene Buttonbeschriftung möglich.


    7 Mal editiert, zuletzt von doge_ ()

  • Einige Fehler,es funktioniert nicht mal richtig.


    if (strcmp("/vstats", cmdtext, true, 10) == 0)
    {
    new string[64];
    format(string, sizeof(string), "Antworten\nJa: %d\nNein: %d", countja, countnein);
    ShowPlayerDialog(playerid, DIALOG_VSTATS, DIALOG_STYLE_INPUT, "[VS] Statisktik", "Bitte geben Sie die Frae ein.\nDie Frage sollte man mit 'Ja' und 'Nein' beatworten können", "Ok", "Abbr.");
    return 1;
    }

    Es gibt zu DIALOG_VSTATS keine Abfrage in OnDialogResponse,daher ist der Text falsch.Zusätzlich noch Rechtschreibfehler "Frae"


    Was macht OnGameModeInit,Exit und OnPlayerRequestClass in einem Filterscript,was nix mit Klassen zutun hat?
    public OnGameModeInit()
    {
    //Du darfst das hier nicht benutzen, wenn du ein Filterscript erstellst!
    SetGameModeText("Blank Script");
    AddPlayerClass(0, 1958.3783, 1343.1572, 15.3746, 269.1425, 0, 0, 0, 0, 0, 0);
    return 1;
    }

    // - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    public OnGameModeExit()
    {
    return 1;
    }

    // - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    public OnPlayerRequestClass(playerid, classid)
    {
    SetPlayerPos(playerid, 1958.3783, 1343.1572, 15.3746);
    SetPlayerCameraPos(playerid, 1958.3783, 1343.1572, 15.3746);
    SetPlayerCameraLookAt(playerid, 1958.3783, 1343.1572, 15.3746);
    return 1;
    }


    if(dialogid == DIALOG_VOTEADM)
    {
    if(response == 1)
    {
    for(new i=0; i < MAX_PLAYERS; i++)
    {
    new string[128];
    format(string, sizeof(string), "&s", inputtext);
    ShowPlayerDialog(i, DIALOG_VOTEUSR, DIALOG_STYLE_MSGBOX, "[VS]Votesystem", string, "Ja", "Nein");
    }
    }
    }

    Die format-Zeile ist falsch, & anstatt %. Du brauchst dort sowieso keinen String zu formatieren,da die Frage sowieso schon in inputtext steht.Eine IsPlayerConnected-Abfrage wäre auch gut,sonst machst du den Code vllt 500x obwohl nur 1 Spieler auf dem Server ist.Folgendes würde ich dir auch empfehlen,denn man brauch hier nicht extra den Text zu formatieren.
    ShowPlayerDialog(i, DIALOG_VOTEUSR, DIALOG_STYLE_MSGBOX, "[VS]Votesystem", inputtext, "Ja", "Nein");

  • lol. Ups sry. Hab das Falsche Paket hochgeladen. Ich arbeite nähmlich immer auf mehreren fenstern gleichzeitig. Hab ich wohl was vertauscht :D Update sofort


    DIALOG_VSTATS zeigt ja nur an wieoft ja und wieoft nein gedrückt wurde! Da muss nix in OnDialogResponse rein!


    Aso: Zu ongamemodeexit. Ich arbeite so. Ich hab mir ne VOrlage gemacht. Und ich mache nicht alles für einen kleinen Mann der hier extrawünsche hat anders. Da ist definiert: #define FILTERSCRIPT und dann if defined filterscript dann OnFilterscriptInit und exit. Wenn nicht das auslasen und dafür ongamemodeinit und exit nehmen!

    Einmal editiert, zuletzt von doge_ ()

  • Zitat

    Also etwas von Pawn sollt man schon verstehen befor man son isst postet


    Dann würde ich dir empfehlen,den Thread sofort zu löschen. Dreist sowas zu schreiben wenn du doch derjenige bist,der die offensichtlichen Fehler macht.


    Zitat

    Sonderzeichen:
    DIALOG_VSTATS zeigt ja nur an wieoft ja und wieoft nein gedrückt wurde! Da muss nix in OnDialogResponse rein!


    Hab nichts Anderes behauptet.

    Zitat

    Goldkiller:
    Es gibt zu DIALOG_VSTATS keine Abfrage in OnDialogResponse,daher ist der Text falsch.Zusätzlich noch Rechtschreibfehler "Frae"


    Zitat

    Sonderzeichen:
    Aso: Zu ongamemodeexit. Ich arbeite so. Ich hab mir ne VOrlage gemacht. Und ich mache nicht alles für einen kleinen Mann der hier extrawünsche hat anders. Da ist definiert: #define FILTERSCRIPT und dann if defined filterscript dann OnFilterscriptInit und exit. Wenn nicht das auslasen und dafür ongamemodeinit und exit nehmen!


    Das stimmt soweit,nur musst du dann auch die Bereiche richtig markieren ...


    #define FILTERSCRIPT
    #if defined FILTERSCRIPT <---------------------------------------------------------


    public OnFilterScriptInit()
    {
    print("\n--------------------------------------");
    print(" Votingsystem by Sonderzeichen");
    print("--------------------------------------\n");
    return 1;
    }

    // - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    public OnFilterScriptExit()
    {
    return 1;
    }

    #else <---------------------------------------------------------

    // - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    main()
    {
    print("\n----------------------------------");
    print(" Blank Gamemode by your name here");
    print("----------------------------------\n");
    }

    #endif <---------------------------------------------------------
    // Alles ab hier wird IMMER kompiliert.
    // - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    public OnGameModeInit()
    {
    //Du darfst das hier nicht benutzen, wenn du ein Filterscript erstellst!
    SetGameModeText("Blank Script");
    AddPlayerClass(0, 1958.3783, 1343.1572, 15.3746, 269.1425, 0, 0, 0, 0, 0, 0);
    return 1;
    }

    // - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    public OnGameModeExit()
    {
    return 1;
    }

    // - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    public OnPlayerRequestClass(playerid, classid)
    {
    SetPlayerPos(playerid, 1958.3783, 1343.1572, 15.3746);
    SetPlayerCameraPos(playerid, 1958.3783, 1343.1572, 15.3746);
    SetPlayerCameraLookAt(playerid, 1958.3783, 1343.1572, 15.3746);
    return 1;
    }



    Spar dir also dein "Also etwas von Pawn sollt man schon verstehen befor man son isst postet" das nächste mal, wenn du meinst mich mit sowas zu belehren 0o.

  • Hehe da hast du dich mit dem falschen angelegt... An sich die Idee und FS ist sehr Simple...


    Von daher gibt es hierfür nur 3/10, da soviele Fehler enthalten waren.


    Es hat gar nix besonderes an sich und dachte erst mit Auswahl etc jedoch ist das ja nur mit JA und NEIN


    Also vorerst die Punktezahl :)

  • Idee? :D Klar habe ich viele Ideen und habe vieles bei mir auf dem Server.


    Votesystem mit JA / NEIN, Auswahl, Eingabe,Quiz, Abstimmung mit Auswertung nach nachträglichem Aufrufen, Einstellung der Beantwortungszeit uvm...


    Also da brauchst net nach Ideen fragen, den ein Votesystem spricht für sich selber...


    Und GoldKiller weiß wovon er spricht :)


    Bei deinem Script sind viele Sachen nicht beachtet worden und für ein Grundbaustein ist das noch zu wenig...


    Also langweile dich noch mehr und scripten noch einiges mal dazu :)

  • Jop.


    Das hab ich so genommen, als wenn du willst, das da was steht


    Sätze ließt man bis zum Ende,damit man den kompletten Zusammenhang dahinter versteht.
    Schade das du keine Stellung zu "Also etwas von Pawn sollt man schon verstehen befor man son isst postet " nimmst,aber das ist ja dir überlassen.


    Jop.


    Richtig erfasst :)


    Die sind immernoch vorhanden, behoben hast du sie vllt bei dir,die verlinkten Quellcodes sind immernoch Fehlerhaft.


    Zitat

    Hast du ne Idee was ich noch so kleines Machen könnt?


    Weitere Fehler fixen.Ich geb dir mal einen Tipp wo noch ein Fehler ist:
    Erstellst du eine neue Frage,werden die alten Votes mitgezählt.

  • Oh. Fix ich mal. Ich lade dann gleich nochmal alles hoch :D
    Kann sein das ich das eben vergessen habe oder das Falsche archiv verlinkt hab :D
    Naja. Steht dann ja nen Edit im Post wenns fertig ist :D


    P.s.Ich mag den :D echt :D


    Zitat

    Schade das du keine Stellung zu "Also etwas von Pawn sollt man schon verstehen befor man son isst postet " nimmst,aber das ist ja dir überlassen.


    Was meinst damit?


    Zitat

    Idee? :D Klar habe ich viele Ideen und habe vieles bei mir auf dem Server.


    Votesystem mit JA / NEIN, Auswahl, Eingabe,Quiz, Abstimmung mit Auswertung nach nachträglichem Aufrufen, Einstellung der Beantwortungszeit uvm...


    Ich werd mal mein Glück versuchen

    Einmal editiert, zuletzt von doge_ ()

  • Ich lads mal eben neu hoch. Manoman war ja gut das ichs vorgestern runtergeladen habe ^^


    //e. So Links und beschreibung geupdated.
    Vorschläge und Kritik erwünscht!


    Zitat von playerid

    nächstes mal zuerst testen, dann posten.


    Sry ging da schlecht. Mein GTA ging nicht also hab ich alles ausm Kopf gescriptet und konnte so schlecht fehler finden ^^

    Einmal editiert, zuletzt von doge_ ()

  • Ich lads mal eben neu hoch. Manoman war ja gut das ichs vorgestern runtergeladen habe ^^


    //e. So Links und beschreibung geupdated.
    Vorschläge und Kritik erwünscht!



    Sry ging da schlecht. Mein GTA ging nicht also hab ich alles ausm Kopf gescriptet und konnte so schlecht fehler finden ^^


    Dann bitte nicht veröffentlichen.Es gibt genug leute die keine Ahnug vom Scripten haben und das einfach reinmachen.Und nichts verbessern können.
    Meiner meinung eine gute idde.Hast du schön gemacht.Aber Testen werde ich es nicht.

    Zitat
    Schade das du keine Stellung zu "Also etwas von Pawn sollt man schon verstehen befor man son isst postet " nimmst,aber das ist ja dir überlassen.


    Was meinst damit?

    Er meint damit das du keine Stellung zu dem Satz genommen hast. "Also etwas von Pawn sollt man schon verstehen befor man son isst postet "
    Ist glaube ich zu verstehen.Goldkiller hat dir nur geholfen und du lässt so ein Satz ab.Und ich glaube er versteht mehr als du vom Scripten.


    BACK2TOPIC


    Eine gute Idee 7/10


    Grüße

    It's time to kick ass and chew bubble gum, and I'm all out of gum.

  • @GtaXXL
    Danke für dein Feedback.
    Naja schade, funktioniert einwandfrei. Zumindest konnte ich keine Fehler feststellen.


    Dann bitte nicht veröffentlichen.


    Werd ich nächstes mal machen :)


    Goldkiller hat dir nur geholfen und du lässt so ein Satz ab.Und ich glaube er versteht mehr als du vom Scripten.


    Sry bin autist, asp. sysdrom kann mcih manchmal nich beherschen :|

  • Naja, sehr simpel und paar kleine Verbesserungen hätte ich:


    1. Lösche mal alle überflüssigen Callbacks und oben nimm das mit dem #if defined Filterscript raus, das ist sinnlos, denn es ist ein Filterscript also scripte es auch einfach so ^^


    2. Bei deinen #defines fängt man bei 0 an ;)


    3. Die 5 news da hättest du in eine Zeile packen können :)


    4. Nimm mal das OnGameModeInit, OnGameModeExit und OnPlayerRequest raus (das braucht man nur für ein Gamemode nicht für ein FS !)


    5. Deine Commands anpassen z.B. so:
    if (strcmp("/cvote", cmdtext, true, 10) == 0)
    in
    if (strcmp("/cvote", cmdtext, true, 6) == 0)


    Sind nur ein paar Tipps, nicht böse gemeint :)


    mfg. :thumbup:

    ast2ufdyxkb1.png


    Leute, lernt scripten und versucht mal lieber etwas selber zu schreiben, als es aus einem GF zu kopieren. :S

  • Danke, werde ich machen.


    Zu 2: Ich denke es gibt einige, die sich das Filterscript runterladen, hochladen und einfügen und sich dann wundern warum es nicht richtig funktioniert. Damit möchte ich unnötige Spams von "Anfängern" und anderen "dummen" Membern vermeiden.


    Zu 3: Ich komme so besser klar und ich finde es so auch übersichtlicher von daher werde ich es so lassen.



    Lg Sonderzeichen



    #edit: Geändert. Download-Link update ich gleich :)

    Einmal editiert, zuletzt von doge_ ()

  • Also ich finde dieses FS eigentlich sehr übersichtlich,versteht man gut.Nur der Bug ist,wenn man einmal
    gewählt hat,kann man nocheinmal wählen.Man sollte das so machen das man nur einmal wählen kann,dann
    wäre es 10/10 aber so ist es 7/10.


    MfG

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