Antwort schreiben 
 
Themabewertung:
  • 0 Bewertungen - 0 im Durchschnitt
  • 1
  • 2
  • 3
  • 4
  • 5
Zufallszahl
19.05.2010, 09:59 Uhr
Beitrag #1
Zufallszahl
Hi,

ich suche ein Script, welches auf den Befehl !Lotterie reagiert und dann eine Zufallszahl zwischen 1 und 100 auswirft.

Habe den Bot in einer Community eines Browsergames und wir veranstallten in regelmässigen Abständen eine Lotterie, dabei soll eben eine Zahl im genannten Bereich erraten werden.

Wäre schön, wenn man dann auch die letzte gezogene Zahl sich anzeigen lassen kann. So ala !Last und den letzten Gewinner (den man manuell via !addlastwinner <nick> eintragen kann)

Die Zufallszahl soll nur im query angezeigt werden.
Habe schon hier gesucht, aber leider nichts passendes gefunden. Vielleicht mag einer da was schreiben?? Bin leider nur Anwender und kein Scripter, sonst hätte ich selbst mal geschaut.

Danke schon mal im Voraus.

~][DarkSun~PattySTD][~
Webseite des Benutzers besuchen Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
19.05.2010, 13:43 Uhr
Beitrag #2
RE: Zufallszahl
Hier bitteschön Smile

Lob Kritik Fragen immer her damit :D
Getestet und läuft einwandfrei, Trigger können im Code getauscht werden (ganz oben^^)

Trigger:
!lotterie - Gibt eine neue Zahl aus
!last - Zeigt die zuletzt gezogene Zahl an
!lottoreset - Zurücksetzen, damit wieder eine neue Zahl gezogen werden kann
!lastwinner - Zeigt den letzten Gewinner an
!addlastwinner - Damit kann man den letzten Gewinner eintragen

Code:
Const trig_zahl = "!lotterie"
Const trig_last = "!last"
Const trig_addlastwinner = "!addlastwinner"
Const trig_reset = "!lottoreset"
Const trig_lastwinner = "!lastwinner"
Const Version = "Lotto Script by GalaxyFighter"
Const INI = "gf_lotto.ini"

Sub Init()
  Script Version
  Hook "Chan_Msg"
  SpreadFlagMessage 0, "+m", "***" & Version & " geladen"
  Randomize
End Sub

Sub Chan_Msg(Chan, Nick, RegUser, Line)
  Select Case LCase(Param(Line, 1))
    Case trig_zahl
        If ReadINIString("Zahl", "Set", "", INI) = vbNullstring Then
            Randomize
            lottozahl = (Int((Rnd * 100) + 1))
            WriteINIString "Zahl", "Set", lottozahl, INI
            SendLine "PRIVMSG " & Nick & " :Die gezogene Zahl lautet: " & lottozahl,3
        Else
            SendLine "PRIVMSG " & Nick & " :Es ist bereits eine Zahl gesetzt, mit !lottoreset zurücksetzen. Zum Anzeigen !last in den Channel schreiben.",3
        End If
    Case trig_last
        lottozahl = ReadINIString("Zahl", "Set", "", INI)
        If lottozahl = vbNullString Then
            SendLine "PRIVMSG " & Nick & " :Noch keine Zahl gesetzt.",3
        Else
            SendLine "PRIVMSG " & Nick & " :Die letzte Zahl lautete: " & lottozahl,3
        End If
    Case trig_reset
        WriteINIString "Zahl", "Set", "", INI
        SendLine "NOTICE " & Nick & " :Erfolgreich." ,3
    Case trig_addlastwinner
        If LCase(Param(Line, 2)) = vbNullstring Then
            SendLine "NOTICE " & Nick & " :Kein Nick angegeben!",3
        Else
            WriteINIString "Gewinner", "Nickname", GetRest(Line, 2), INI
            SendLine "NOTICE " & Nick & " :Erfolgreich." ,3
        End If
    Case  trig_lastwinner
        If ReadINIString("Gewinner", "Nickname", "", INI) = vbNullstring Then
            SendLine "PRIVMSG " & Chan & " :Noch kein Gewinner eingetragen.",3
        Else
            SendLine "PRIVMSG " & Chan & " :Der letzte Gewinner war: " & ReadINIString("Gewinner", "Nickname", "", INI),3
        End If
  End Select
End Sub
Webseite des Benutzers besuchen Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
19.05.2010, 14:21 Uhr
Beitrag #3
RE: Zufallszahl
wow, super!
Danke für die schnelle und einwandfreie Arbeit. Funzt bestens!
ach noch ne Kleinigkeit *schäm. Bräuchte noch den Trigger !Jackpot, !addjackpot und !jackpotreset, magst nochma schauen, kann ich dann ja zum aktuellen Script hinzufügen. danke für die Mühen. (immer diese sonderwünsche Razz)

~][DarkSun~PattySTD][~
Webseite des Benutzers besuchen Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
20.05.2010, 12:22 Uhr
Beitrag #4
RE: Zufallszahl
Mal schaun ob ich das richtig verstanden habe ^^

Neue Trigger:
!jackpot - Ausgabe der Jackpot-Summe (vorher mit addjackpot eintragen)
!addjackpot - Jackpot eintragen
!jackpotreset - Jackpot löschen

Code:
Const trig_zahl = "!lotterie"
Const trig_last = "!last"
Const trig_addlastwinner = "!addlastwinner"
Const trig_reset = "!lottoreset"
Const trig_lastwinner = "!lastwinner"

Const trig_jackpot = "!jackpot"
Const trig_addjackpot = "!addjackpot"
Const trig_jackpotreset = "!jackpotreset"

Const Version = "Lotto Script by GalaxyFighter"
Const INI = "gf_lotto.ini"

Sub Init()
  Script Version
  Hook "Chan_Msg"
  SpreadFlagMessage 0, "+m", "***" & Version & " geladen"
  Randomize
End Sub

Sub Chan_Msg(Chan, Nick, RegUser, Line)
  Select Case LCase(Param(Line, 1))
    Case trig_zahl
        If ReadINIString("Zahl", "Set", "", INI) = vbNullstring Then
            Randomize
            lottozahl = (Int((Rnd * 100) + 1))
            WriteINIString "Zahl", "Set", lottozahl, INI
            SendLine "PRIVMSG " & Nick & " :Die gezogene Zahl lautet: " & lottozahl,3
        Else
            SendLine "PRIVMSG " & Nick & " :Es ist bereits eine Zahl gesetzt, mit !lottoreset zurücksetzen. Zum Anzeigen !last in den Channel schreiben.",3
        End If
    Case trig_last
        lottozahl = ReadINIString("Zahl", "Set", "", INI)
        If lottozahl = vbNullString Then
            SendLine "PRIVMSG " & Nick & " :Noch keine Zahl gesetzt.",3
        Else
            SendLine "PRIVMSG " & Nick & " :Die letzte Zahl lautete: " & lottozahl,3
        End If
    Case trig_reset
        WriteINIString "Zahl", "Set", "", INI
        SendLine "NOTICE " & Nick & " :Erfolgreich." ,3
    Case trig_addlastwinner
        If LCase(Param(Line, 2)) = vbNullstring Then
            SendLine "NOTICE " & Nick & " :Kein Nick angegeben!",3
        Else
            WriteINIString "Gewinner", "Nickname", GetRest(Line, 2), INI
            SendLine "NOTICE " & Nick & " :Erfolgreich." ,3
        End If
    Case trig_lastwinner
        If ReadINIString("Gewinner", "Nickname", "", INI) = vbNullstring Then
            SendLine "PRIVMSG " & Chan & " :Noch kein Gewinner eingetragen.",3
        Else
            SendLine "PRIVMSG " & Chan & " :Der letzte Gewinner war: " & ReadINIString("Gewinner", "Nickname", "", INI),3
        End If
    Case trig_jackpot
        If ReadINIString("Jackpot", "Summe", "", INI) = vbNullstring Then
            SendLine "PRIVMSG " & Nick & " :Es ist kein Jackpot gesetzt, mit !addjackpot kannst du einen Jackpot setzen.",3
        Else
            SendLine "PRIVMSG " & Nick & " :JACKPOT!!!! Deine Gewinnsumme: " & ReadINIString("Jackpot", "Summe", "", INI),3
        End If
    Case trig_addjackpot
        If LCase(Param(Line, 2)) = vbNullstring Then
            SendLine "NOTICE " & Nick & " :Keine Jackpot-Summe angegeben!",3
        Else
            WriteINIString "Jackpot", "Summe", Param(Line, 2), INI
            SendLine "NOTICE " & Nick & " :Erfolgreich." ,3
        End If
    Case trig_jackpotreset
        WriteINIString "Jackpot", "Summe", "", INI
        SendLine "NOTICE " & Nick & " :Erfolgreich." ,3
  End Select
End Sub
Webseite des Benutzers besuchen Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
20.05.2010, 18:34 Uhr
Beitrag #5
RE: Zufallszahl
wunderbar, perfekt!

Nochmal nen big DANKESCHÖN an Dich Wink))

~][DarkSun~PattySTD][~
Webseite des Benutzers besuchen Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
Antwort schreiben 


Gehe zu:


Benutzer, die gerade dieses Thema anschauen: 1 Gast/Gäste