Hi,
ich habe ein Programm geschrieben, welches man immer dann starten kann wenn man sich langweilt.
Wenn man es startet, passiert etwas Zufälliges von momentan 42 Möglichkeiten. So gibt es z.B. Spiele, interessante Informationen werden angezeigt, irgendwas lustiges passiert usw. usw.
Damit ihr euch es besser vorstellen könnt startet ihr es am besten einfach ein paar Mal.
Am besten ladet ihr euch die Exe runter und benutzt die, weil ansonsten einige Sachen wegen FileInstall nicht funktionieren (der Code ist trotzdem unten mit den entsprechenden Stellen dann eben entfernt).
DOWNLOAD
Edit: Mittlerweile gibt es über 100 Nutzer und eine neue Version mit 63 Überraschungen. Die nächste Version mit 100 kommt dann bei 250 Usern. Den Code von der aktuellen Version möchte ich aber nicht posten, da ich eigentlich nicht will das Leute im Vorraus wissen was für Überraschungen vorhanden sind, es ein paar Sachen mit FileInstall gibt und niemand mir Spam zukommen lassen soll. Ich versiche euch aber, das nichts irgendeinen Schaden anrichten soll. Ihr lest euch die 4000 Zeilen ja eh nicht durch. Sonst verwendet eben die alte Version von unten.
Wenn ihr Bugs habt oder weitere Ideen würde ich mich sehr freuen, mir gehen nämlich langsam die Ideen aus^^. Je mehr Sachen es gibt, desto besser.
In Teilen gekürzter Code der ersten Version:
Spoiler anzeigen
Am besten die Exe benutzen, weil hier einige Sachen wegen FileInstall gestrichen sind.
Und ich hoffe du siehst dir den Code nicht an um alle Überraschungen zu kennen. Überraschungen!
Spoiler anzeigen
#include <GUIConstantsEx.au3>
#include <EditConstants.au3>
#include <ProgressConstants.au3>
#Include <Date.au3>
#include <StaticConstants.au3>
#include <Array.au3>
#Include <Misc.au3>
#include <EditConstants.au3>
#include <ButtonConstants.au3>
#include <DateTimeConstants.au3>
;#include <WindowsConstants.au3>
$WS_VSCROLL=0x00200000
$WS_TABSTOP = 0x00010000
Opt("TrayIconHide",1)
[/autoit] [autoit][/autoit] [autoit];####################################################################
;# #
;# #
$Version="1.0" ;#
;# #
;# #
;####################################################################
If FileExists(@AppDataDir&"\S!_Settings.ini") Then
If _DateDiff("n",IniRead(@AppDataDir&"\S!_Settings.ini","Last","2nd",""),_NowCalc())<60 Then
$iMsgBoxAnswer = MsgBox(324,"Surprise!",'Du hast bereits vor kurzer Zeit "Surprise!" mehrmals gestartet.' & @CRLF & @CRLF & "Der Spaß an diesem Programm kann sehr schnell vorbei sein, wenn man schon nach wenigen Stunden alle Überraschungen kennt." & @CRLF & @CRLF & "Bist du sicher, dass du den Vorgang fortsetzen möchtest?")
Select
Case $iMsgBoxAnswer = 7 ;No
Exit
EndSelect
EndIf
IniWrite(@AppDataDir&"\S!_Settings.ini","Last","2nd",IniRead(@AppDataDir&"\S!_Settings.ini","Last","1st",""))
IniWrite(@AppDataDir&"\S!_Settings.ini","Last","1st",_NowCalc())
Else
#cs
Entfernt wg. FileInstall
#ce
IniWrite(@AppDataDir&"\S!_Settings.ini","Last","2nd","2000/01/01 00:00:00")
IniWrite(@AppDataDir&"\S!_Settings.ini","Last","1st",_NowCalc())
;--ID--
$Letters="abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789"
$EndID=""
$LetterLenght=StringLen($Letters)
For $i=1 To 8
$EndID&=StringLeft(StringTrimLeft($Letters,Random(0,$LetterLenght-1,1)),1)
Next
IniWrite(@AppDataDir&"\S!_Settings.ini","Update","ID",$EndID)
;------
MsgBox(64,"Surprise!","Willkommen!"&@CRLF&@CRLF&"Dieses Programm beinhaltet eine Menge an unnötigem Kram. Immer wenn dir langweilig ist, starte einfach das Programm :)."&@CRLF&"Welche Überraschung gestartet wird ist zufällig."&@CRLF&"Das Programm benötigt keine Installation, also kannst du diese Datei gleich an ihren endgültigen Platz, z.B. auf den Desktop, packen."&@CRLF&@CRLF&"Das Programm ist NICHT dafür gedacht, dass man das Programm gleich zu Beginn ganz oft startet und sofort alles kennt, sondern immer mal ab und zu. Aber auch wenn du es ganz oft startest, statistisch dauert es ein paar hundert mal, bis du alles kennst .")
Exit
EndIf
;---Updater---
#cs
Entfernt weil Updater nur mit Exe funktioniert
#ce
;-------------
IniWrite(@AppDataDir&"\S!_Settings.ini","Stats","Starts",IniRead(@AppDataDir&"\S!_Settings.ini","Stats","Starts",0)+1)
;-------------------------------------------------------------------------------------------------------------------------------------------------------------------
$NuOfUe=42
$Random=Random(1,$NuOfUe,1)
;~ $Random=$NuOfUe
IniWrite(@AppDataDir&"\S!_Settings.ini","Known",$Random,"1")
[/autoit] [autoit][/autoit] [autoit]Switch $Random
Case 1;Monitor aus
MonitorToggle(1)
Sleep(20000)
MonitorToggle(0)
Case 2;Bildschirmschoner mit Text
$OldText=RegRead("HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Screensavers\ssText3d","DisplayString")
RegWrite("HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Screensavers\ssText3d","DisplayString","REG_SZ","LOL PEN1S")
ShellExecute(@SystemDir&"\ssText3d.scr")
Sleep(1000)
RegWrite("HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Screensavers\ssText3d","DisplayString","REG_SZ",$OldText)
Case 3;WinFlash auf alle Fenster
$WinList=WinList()
For $i=1 To $WinList[0][0]
If $WinList[$i][0]<>"" And BitAND(WinGetState($WinList[$i][1]),2) And $WinList[$i][0]<>"Start" And $WinList[$i][0]<>"Program Manager" Then
WinFlash($WinList[$i][1])
Else
$WinList[$i][1]=""
EndIf
Next
Case 4;Elendiger Ladebalken
Opt("GUIResizeMode",802)
$4Form1 = GUICreate("Laden...", 220, 70)
$4Label1 = GUICtrlCreateLabel("Laden. Bitte warten...", 8,
$4Progress1 = GUICtrlCreateProgress(10, 32, 200, 25)
GUISetState(@SW_SHOW)
For $i=0 To 100
Sleep(70)
GUICtrlSetData($4Progress1,$i+1)
GUICtrlSetData($4Progress1,$i)
Next
For $i=200 To 800 Step 4
$WinWid=$i+20
WinMove($4Form1,"",(@DesktopWidth-$WinWid)/2,Default,$WinWid)
GUICtrlSetPos($4Progress1,Default,Default,$i)
GUICtrlSetData($4Progress1,100/($i/200))
Sleep(0.1)
Next
For $i=25 To 100
GUICtrlSetData($4Progress1,$i)
Sleep(70*4)
Next
Sleep(500)
$4Progress2=GUICtrlCreateProgress(10,70,800,25)
$Size=WinGetPos($4Form1)
For $i=$Size[3] To $Size[3]+50
WinMove($4Form1,"",Default,(@DesktopHeight-$i)/2,Default,$i)
Sleep(1)
Next
For $i=0 To 100
GUICtrlSetData($4Progress2,$i)
Sleep(70*4)
Next
Case 5;Auf gut Glück Viren Download
ShellExecute("http://www.lmgtfy.com/?q=free+virus+download&l=1")
Case 6;Mail an Angie
ShellExecute("mailto:angie@merkel.de")
Case 7;Nyan-Cat
ShellExecute("http://nyan.cat/")
Case 8;Tage bis Weihnachten
$Year=@YEAR
If @MON=12 And @MDAY>24 Then $Year+=1
MsgBox(64,"Es weihnachtet sehr","Nur noch "&_DateDiff("D",_NowCalc(),$Year&"/12/24")&" Tage bis Wehnachten!!!")
Case 9;Kein Fehler aufgetreten
MsgBox(16,"Kein Fehler","Es ist zu lange kein Fehler aufgetreten")
Case 10;Ist heute Weihnachten?
$Christmas="Nein"
If @MDAY=24 And @MON=12 Then $Christmas="Ja"
MsgBox(64,"Ist heute Weihnachten?"," "&$Christmas&" ")
Case 11;Progress Zahl
Global $Progress[10][4]
$Form1 = GUICreate("Progress Zahl", 600, 376)
$Left=8
$Up=8
$Progress[1][1] = GUICtrlCreateProgress($Left+30, $Up+0, 90, 30) ;O
$Progress[2][1] = GUICtrlCreateProgress($Left+0, $Up+0, 30, 120, $PBS_VERTICAL) ;OL
$Progress[3][1] = GUICtrlCreateProgress($Left+120, $Up+0, 30, 120, $PBS_VERTICAL) ;OR
$Progress[4][1] = GUICtrlCreateProgress($Left+30, $Up+120, 90, 30) ;M
$Progress[5][1] = GUICtrlCreateProgress($Left+0, $Up+150, 30, 120, $PBS_VERTICAL) ;UL
$Progress[6][1] = GUICtrlCreateProgress($Left+120, $Up+150, 30, 120, $PBS_VERTICAL);UR
$Progress[7][1] = GUICtrlCreateProgress($Left+30, $Up+240, 90, 30) ;U
$Progress[8][1] = GUICtrlCreateProgress($Left+0, $Up+120, 30, 30) ;L
$Progress[9][1] = GUICtrlCreateProgress($Left+120, $Up+120, 30, 30) ;R
$Left=218
$Up=8
$Progress[1][2] = GUICtrlCreateProgress($Left+30, $Up+0, 90, 30) ;O
$Progress[2][2] = GUICtrlCreateProgress($Left+0, $Up+0, 30, 120, $PBS_VERTICAL) ;OL
$Progress[3][2] = GUICtrlCreateProgress($Left+120, $Up+0, 30, 120, $PBS_VERTICAL) ;OR
$Progress[4][2] = GUICtrlCreateProgress($Left+30, $Up+120, 90, 30) ;M
$Progress[5][2] = GUICtrlCreateProgress($Left+0, $Up+150, 30, 120, $PBS_VERTICAL) ;UL
$Progress[6][2] = GUICtrlCreateProgress($Left+120, $Up+150, 30, 120, $PBS_VERTICAL);UR
$Progress[7][2] = GUICtrlCreateProgress($Left+30, $Up+240, 90, 30) ;U
$Progress[8][2] = GUICtrlCreateProgress($Left+0, $Up+120, 30, 30) ;L
$Progress[9][2] = GUICtrlCreateProgress($Left+120, $Up+120, 30, 30) ;R
$Left=426
$Up=8
$Progress[1][3] = GUICtrlCreateProgress($Left+30, $Up+0, 90, 30) ;O
$Progress[2][3] = GUICtrlCreateProgress($Left+0, $Up+0, 30, 120, $PBS_VERTICAL) ;OL
$Progress[3][3] = GUICtrlCreateProgress($Left+120, $Up+0, 30, 120, $PBS_VERTICAL) ;OR
$Progress[4][3] = GUICtrlCreateProgress($Left+30, $Up+120, 90, 30) ;M
$Progress[5][3] = GUICtrlCreateProgress($Left+0, $Up+150, 30, 120, $PBS_VERTICAL) ;UL
$Progress[6][3] = GUICtrlCreateProgress($Left+120, $Up+150, 30, 120, $PBS_VERTICAL);UR
$Progress[7][3] = GUICtrlCreateProgress($Left+30, $Up+240, 90, 30) ;U
$Progress[8][3] = GUICtrlCreateProgress($Left+0, $Up+120, 30, 30) ;L
$Progress[9][3] = GUICtrlCreateProgress($Left+120, $Up+120, 30, 30) ;R
$Label1 = GUICtrlCreateLabel("Bitte gebe eine beliebige Zahl ein:", 8, 332, 264, 17)
$Input1 = GUICtrlCreateInput("0", 8, 348, 153, 21, BitOR($ES_AUTOHSCROLL,$ES_NUMBER))
GUISetState(@SW_SHOW)
$OldInput=""
[/autoit] [autoit][/autoit] [autoit]While 1
$nMsg = GUIGetMsg()
Switch $nMsg
Case $GUI_EVENT_CLOSE
Exit
EndSwitch
$Input=GUICtrlRead($Input1)
If StringLen($Input)=0 Then
$Input&=" "
ElseIf StringLen($Input)=1 Then
$Input&=" "
ElseIf StringLen($Input)=2 Then
$Input&=" "
EndIf
If StringLen($Input)>3 Then
$Input=StringRight($Input,3)
GUICtrlSetData($Input1,$Input)
ElseIf $Input<>$OldInput And $Input<>"" Then
$OldInput=$Input
;1. Zahl
$Zahl1=StringLeft($Input,1)
Draw($Zahl1,1)
;2. Zahl
$Zahl1=StringLeft(StringTrimLeft($Input,1),1)
Draw($Zahl1,2)
;3. Zahl
$Zahl1=StringRight($Input,1)
Draw($Zahl1,3)
EndIf
WEnd
Case 12;Ladebalken
$12Form1 = GUICreate("Ladebalken", 215, 75)
$12Progress1 = GUICtrlCreateProgress(8, 8, 198, 25)
$12Slider1 = GUICtrlCreateSlider(0, 40,215, 29)
GUISetState(@SW_SHOW)
While 1
GUICtrlSetData($12Progress1,GUICtrlRead($12Slider1))
$nMsg = GUIGetMsg()
Switch $nMsg
Case $GUI_EVENT_CLOSE
Exit
EndSwitch
WEnd
Case 13;Drop Off (Spiel)
#cs
Entfernt wg. FileInstall
#ce
MsgBox(16,"","Diese Funktion gibt es nur in der Exe-Version wegen FileInstall")
Case 14;Laufwerk öffnen
Dim $Buchstaben[26]=["a","b","c","d","e","f","g","h","i","j","k","l","m","n","o","p","q","r","s","t","u","v","w","x","y","z"]
For $i=0 To 25
If DriveGetType($Buchstaben[$i]&":")="CDROM" Then CDTray($Buchstaben[$i]&":","open")
Next
Case 15;Weltuhr
Global $InfoX[10],$15Label[10],$15LabelTitle[10]
Dim $Info[11][2]
; Kategorie | Anz/Sek
$InfoX[0]="Geburten|4.250175"
$InfoX[1]="Tote|1.808620"
$InfoX[2]="Bevölkerungswachstum|2.441554"
$InfoX[3]="Abtreibungen|1.457683"
$InfoX[4]="HIV Infektionen|0.079221"
$InfoX[5]="Krebskranke|0.348576"
$InfoX[6]="Ausgestorbene Arten|0.000855"
$InfoX[7]="Abgeholzter Wald (ha)|0.411953"
$InfoX[8]="Gefördertes Öl (bbl)|960.0112"
$InfoX[9]="Produzierte Autos|1.140795"
For $i=0 To 9
$Temp=StringSplit($InfoX[$i],"|")
$Info[$i][0]=$Temp[1]
$Info[$i][1]=$Temp[2]
Next
$15Form1 = GUICreate("Heute", 250, 250)
$15Label1 = GUICtrlCreateLabel("Heute", 8, 8, 38, 17)
GUICtrlSetFont(-1, 8, 800, 0, "MS Sans Serif")
$15Label2 = GUICtrlCreateLabel("( Minuten)", 48, 8,150)
For $i=0 To 9
$15LabelTitle[$i] = GUICtrlCreateLabel($Info[$i][0], 0, 40+$i*20, 120,-1, $SS_RIGHT)
$15Label[$i] = GUICtrlCreateLabel("-1", 130, 40+$i*20,150)
Next
GUISetState(@SW_SHOW)
$u=18
While 1
Sleep(50)
If $u=18 Then
$SecTod=_DateDiff("s",@YEAR&"/"&@MON&"/"&@MDAY&" 00:00:00",_NowCalc())
GUICtrlSetData($15Label2,"("&Round($SecTod/60,0)&" Minuten)")
For $i=0 To 9
GUICtrlSetData($15Label[$i],Round($Info[$i][1]*$SecTod,0))
Next
$u=0
Else
$u+=1
EndIf
$nMsg = GUIGetMsg()
Switch $nMsg
Case $GUI_EVENT_CLOSE
Exit
EndSwitch
WEnd
Case 16;Furchtbares Hotkey
$16Form1 = GUICreate("", 625, 445, 192, 124, BitOR(0x01000000,0x80000000,0x00000200))
GUISetBkColor(0x000000)
$16Label1 = GUICtrlCreateLabel("Drücken Sie Alt+F1+3+H+Enter+Entf+P, um fortzufahren",(@DesktopWidth-270)/2,@DesktopHeight/2-20, 270, 17)
GUICtrlSetColor(-1, 0xFFFFFF)
GUISetState(@SW_SHOW)
While 1
; Alt F1 3 H Enter Entf P
If _IsPressed("12") And _IsPressed("70") And _IsPressed("33") And _IsPressed("48") And _IsPressed("0D") And _IsPressed("2E") And _IsPressed("50") Then Exit
WEnd
Case 17;30 Msgboxen gleichzeitig
#cs
Entfernt wg. FileInstall
#ce
MsgBox(16,"","Diese Funktion gibt es nur in der Exe-Version wegen FileInstall")
Case 18;30 Msgboxen hintereinander
MsgBox(48,"","Guten Tag!")
MsgBox(48,"","Um "&@HOUR&":"&@MIN&" Uhr ist es immer am besten, Surprise! zu starten.")
MsgBox(48,"","Du ahnst schon, was jetzt kommt?")
MsgBox(48,"","Eine nie endene Flutwelle aus Hinweis-Boxen?")
MsgBox(48,"","...")
MsgBox(48,"","Richtig! :D")
MsgBox(48,"","Und, hast du schon den Ton ausgeschaltet, weil dich das Geräusch von Warn-Fenstern nervt?") ;Ton aus
MsgBox(48,"","Wundert mich nicht.")
MsgBox(48,"","Kennst du eigentlich schon die anderen Überraschungen mit Hinweißfenstern?")
MsgBox(48,"","Hoffentlich noch nicht :D")
MsgBox(48,"","Dies hier ist übrigents Überraschung Nr. 18 von "&$NuOfUe)
MsgBox(48,"","Und angenommen, dass man nur einmal pro Tag dieses Programm startet, hält diese Anzahl auch eine ganze Weile lang.")
MsgBox(48,"","Und ausserdem ist die Verteilung der Überraschung ja zufällig, also hat man auch einige doppelt.")
MsgBox(48,"","-Hier könnte Ihre Werbung stehen!-")
MsgBox(48,"","Kennst du schon meine anderen Programme? Besuch einfach mal xxluke.de")
MsgBox(48,"","Joa, was kann ich denn sonst noch so schreiben...")
MsgBox(48,"","ROFL LOL XD!!!")
MsgBox(48,"","Nerve ich dich wenigstens etwas?")
MsgBox(48,"","Hoffe ich doch.")
MsgBox(48,"","Aber keine Sorge, so lange dauert es nicht mehr.")
MsgBox(48,"","Dies ist Nachricht Nummer 21")
MsgBox(48,"","Aber wie viele Sind es insgesammt?")
MsgBox(48,"","Vielleicht 42?")
MsgBox(48,"","Naja, ich will dir ja auch nicht die ganze Zeit rauben...")
MsgBox(48,"","...du willst ja sicherlich noch etwas aufräumen.")
MsgBox(48,"","Oder zähneputzen (man kann nie genug Zähne putzen!)")
MsgBox(48,"","So, und nun noch viel Spaß mit "&@OSVersion)
MsgBox(48,"","Denk dran, dass du xxluke.de besuchen wolltest! ;)")
MsgBox(48,"","Adios!")
Sleep(1000*30)
MsgBox(48,"","Du bist ja immernoch da, ich sagte 'Adios'!")
Case 19;Alle Fenster transparenz
$WinList=WinList()
Global $WinState[$WinList[0][0]+1]
For $i=1 To $WinList[0][0]
If $WinList[$i][0]<>"" And BitAND(WinGetState($WinList[$i][1]),2) And $WinList[$i][0]<>"Start" And $WinList[$i][0]<>"Program Manager" Then
WinSetState($WinList[$i][1],"",@SW_RESTORE)
WinSetTrans($WinList[$i][1],"",123)
Else
$WinList[$i][1]=""
EndIf
Next
Sleep(30000)
$WinList=WinList()
For $i=1 To $WinList[0][0]
If $WinList[$i][0]<>"" And BitAND(WinGetState($WinList[$i][1]),2) And $WinList[$i][0]<>"Start" And $WinList[$i][0]<>"Program Manager" Then
WinSetTrans($WinList[$i][1],"",255)
Else
$WinList[$i][1]=""
EndIf
Next
Case 20;Ideen-Abfrage
#cs
Entfernt wg. Spam
#ce
MsgBox(16,"","Diese Funktion gibt es nur in der Exe-Version wegen Spam-Schutz")
Case 21;Ist Westerwelle noch im Amt?
$Guido="Nein"
If InetGet("http://www.istwesterwellenochimamt.de/",@TempDir&"\S_Guido.fdp",1) Then
If StringInStr(FileRead(@TempDir&"\S_Guido.fdp"),"Ja.") Then $Guido="Ja"
FileDelete(@TempDir&"\S_Guido.fdp")
EndIf
MsgBox(64,"Ist Westerwelle noch im Amt?","Ist Westerwelle noch im Amt?" & @CRLF & @CRLF & $Guido)
Case 22;Wie alt bist du wirklich?
$22aForm1 = GUICreate("Wie alt bist du wirklich?", 203, 88)
$22aDate1 = GUICtrlCreateDate("1990/01/01", 8, 28, 186, 21,$DTS_SHORTDATEFORMAT)
$22aLabel1 = GUICtrlCreateLabel("Bitte gib dein Geburtsdatum ein:", 8, 8,-1,18)
$22aButton1 = GUICtrlCreateButton("OK", 112, 56, 83, 25, 0)
GUISetState(@SW_SHOW)
While 1
$nMsg = GUIGetMsg()
Switch $nMsg
Case $GUI_EVENT_CLOSE
Exit
Case $22aButton1
$Birthdate=StringSplit(GUICtrlRead($22aDate1),".")
$Birthdate=$Birthdate[3]&"/"&$Birthdate[2]&"/"&$Birthdate[1]
GUIDelete($22aForm1)
ExitLoop
EndSwitch
WEnd
$SecLife=_DateDiff("s",$Birthdate,_NowCalc())
$MonLife=_DateDiff("M",$Birthdate,_NowCalc())
$22bForm1 = GUICreate("Wie alt bist du wirklich?", 149, 168)
$22bLabel1 = GUICtrlCreateLabel("Du lebst seit...", 8,
$22bLabel2 = GUICtrlCreateLabel(Round($MonLife/12,1)&" Jahren", 16, 24)
$22bLabel3 = GUICtrlCreateLabel($MonLife&" Monaten", 16, 40)
$22bLabel4 = GUICtrlCreateLabel($SecLife/60^2/24&" Tagen", 16, 56)
$22bLabel5 = GUICtrlCreateLabel($SecLife/60^2&" Stunden", 16, 72)
$22bLabel6 = GUICtrlCreateLabel($SecLife/60&" Minuten", 16, 88)
$22bLabel7 = GUICtrlCreateLabel($SecLife&" Sekunden", 16, 104)
$22bLabel8 = GUICtrlCreateLabel(Round($SecLife/60^2/24/687,1)&" Marsjahren", 16, 128)
$22bLabel9 = GUICtrlCreateLabel(Round($SecLife/35430,1)&" Jupiterjahren", 16, 144)
GUISetState(@SW_SHOW)
While 1
$nMsg = GUIGetMsg()
Switch $nMsg
Case $GUI_EVENT_CLOSE
Exit
EndSwitch
WEnd
Case 23;xxluke.de aufrufen
ShellExecute("http://xxluke.de/")
Case 24;rainymood.com aufrufen
ShellExecute("http://www.rainymood.com/")
Case 25;Klickspiel
$25Form1 = GUICreate("Klickspiel", 600, 290)
$25Label1 = GUICtrlCreateLabel("Das allseits beliebte KLICKSPIEL!"&@CRLF&"Klicke einfach innerhalb von 10 Sekunden so oft wie möglich auf den Button:", 8,
$25Button1 = GUICtrlCreateButton("Starten", 150, 120, 300, 145)
GUICtrlSetFont(-1, 20, 400, 0, "MS Sans Serif")
$25Button2 = GUICtrlCreateButton("X", 601, 291, 0, 0,$BS_DEFPUSHBUTTON)
$25Label2 = GUICtrlCreateLabel("Klicks", 296, 72, 68, 33)
GUICtrlSetFont(-1, 18, 400, 0, "MS Sans Serif")
$25Label3 = GUICtrlCreateLabel("0", 259, 72, 30, 33)
GUICtrlSetFont(-1, 18, 400, 0, "MS Sans Serif")
$25Label4 = GUICtrlCreateLabel("Noch", 256, 48, 30, 17)
$25Label5 = GUICtrlCreateLabel("10", 288, 48, 19, 17)
$25Label6 = GUICtrlCreateLabel("Sekunden", 312, 48, 53, 17)
GUISetState(@SW_SHOW)
$Run=False
While 1
$nMsg = GUIGetMsg()
Switch $nMsg
Case $GUI_EVENT_CLOSE
Exit
Case $25Button1
If $Run=False Then
GUICtrlSetData($25Button1,"KLICKEN")
$Klicks=0
Klick()
$Run=True
$Timer=TimerInit()
Else
Klick()
If Random(1,15,1)=1 Then GUICtrlSetState($25Button2,$GUI_FOCUS)
EndIf
Case $25Button2
GUICtrlSetData($25Button1,"KLICKEN, nicht Enter")
EndSwitch
If $Run=True Then
$TimeDiff=Round((10000-TimerDiff($Timer))/1000,1)
GUICtrlSetData($25Label5,$TimeDiff)
If $TimeDiff<=0 Then
$Run=False
GUICtrlSetData($25Label5,"0")
GUICtrlSetData($25Button1,"Starten")
GUICtrlSetState($25Button1,$GUI_DISABLE)
Sleep(3000)
GUICtrlSetState($25Button1,$GUI_ENABLE)
GUICtrlSetData($25Label5,"10")
EndIf
EndIf
WEnd
Case 26;Liebesrechner
$26Form1 = GUICreate("Liebes-Rechner", 625, 209)
GUISetBkColor(0xFF00FF)
$26Label1 = GUICtrlCreateLabel("<3 <3", 8,
GUICtrlSetColor(-1, 0xFF0000)
$26Label2 = GUICtrlCreateLabel("<3 <3", 576,
GUICtrlSetColor(-1, 0xFF0000)
$26Label3 = GUICtrlCreateLabel("Liebes-Rechner", 216, 56, 176, 33)
GUICtrlSetFont(-1, 18, 400, 0, "MS Sans Serif")
GUICtrlSetColor(-1, 0xFFFFFF)
$26Input1 = GUICtrlCreateInput("", 64, 152, 193, 21)
$26Label4 = GUICtrlCreateLabel("Name 1:", 64, 130)
GUICtrlSetColor(-1, 0xFFFFFF)
$26Label5 = GUICtrlCreateLabel("Name 2:", 344, 130)
GUICtrlSetColor(-1, 0xFFFFFF)
$26Button1 = GUICtrlCreateButton("Berechnen", 264, 152, 75, 25,$BS_DEFPUSHBUTTON)
$26Input2 = GUICtrlCreateInput("", 344, 152, 193, 21)
GUISetState(@SW_SHOW)
While 1
$nMsg = GUIGetMsg()
Switch $nMsg
Case $GUI_EVENT_CLOSE
Exit
Case $26Button1
Local $Count[2]
$Count[0]=1
$Count[1]=1
Local $Input[2]
$Input[0]=GUICtrlRead($26Input1)
$Input[1]=GUICtrlRead($26Input2)
For $i=0 To 1
If StringInStr($Input[$i],"a") Then $Count[$i]+=1
If StringInStr($Input[$i],"b") Then $Count[$i]+=2
If StringInStr($Input[$i],"c") Then $Count[$i]+=3
If StringInStr($Input[$i],"d") Then $Count[$i]+=4
If StringInStr($Input[$i],"e") Then $Count[$i]+=1
If StringInStr($Input[$i],"f") Then $Count[$i]+=2
If StringInStr($Input[$i],"g") Then $Count[$i]+=3
If StringInStr($Input[$i],"h") Then $Count[$i]+=4
If StringInStr($Input[$i],"i") Then $Count[$i]+=1
If StringInStr($Input[$i],"j") Then $Count[$i]+=2
If StringInStr($Input[$i],"k") Then $Count[$i]+=3
If StringInStr($Input[$i],"l") Then $Count[$i]+=4
If StringInStr($Input[$i],"m") Then $Count[$i]+=1
If StringInStr($Input[$i],"n") Then $Count[$i]+=2
If StringInStr($Input[$i],"o") Then $Count[$i]+=3
If StringInStr($Input[$i],"p") Then $Count[$i]+=4
If StringInStr($Input[$i],"q") Then $Count[$i]+=1
If StringInStr($Input[$i],"r") Then $Count[$i]+=2
If StringInStr($Input[$i],"s") Then $Count[$i]+=3
If StringInStr($Input[$i],"t") Then $Count[$i]+=4
If StringInStr($Input[$i],"u") Then $Count[$i]+=1
If StringInStr($Input[$i],"v") Then $Count[$i]+=2
If StringInStr($Input[$i],"w") Then $Count[$i]+=3
If StringInStr($Input[$i],"x") Then $Count[$i]+=4
If StringInStr($Input[$i],"y") Then $Count[$i]+=1
If StringInStr($Input[$i],"z") Then $Count[$i]+=2
Next
If $Count[0]>=$Count[1] Then
$Big=$Count[0]
$Small=$Count[1]
Else
$Big=$Count[1]
$Small=$Count[0]
EndIf
$Prozent=Round((100/$Big)*$Small)
GUICtrlSetData($26Label3,"Ergebnis: "&$Prozent&"%")
EndSwitch
WEnd
Case 27;Wie sieht der Cursor aus?
$Timer=TimerInit()
While 1
If Round(60-TimerDiff($Timer)/1000)<0 Then Exit
$IDs = StringSplit("Hintergrundaktivität|Pfeil|Kreuz|Hilfe|Textauswahl|Icon|Ne, is' nich'|Größe|Größe Alles|Größe NO-SW|Größe NS|Größe NW-SO|Größe WO|Alternative Auswahl|Ausgelastet|Hand", "|")
$IDs[0] = "Unbekannt"
$cursor = MouseGetCursor()
ToolTip($IDs[$cursor]&@CRLF&"(Programm beendet sich in "&Round(60-TimerDiff($Timer)/1000)&")",@DesktopWidth/2,@DesktopHeight/2,"Dein Cursor derzeit:",1,2)
Sleep(400)
WEnd
Case 28;Bewegender Schließen-Button
$28Form1 = GUICreate("", @DesktopWidth, @DesktopHeight, 0, 0, BitOR(0x01000000,0x80000000,0x00000200))
GUISetBkColor(0x000000)
$28Button1 = GUICtrlCreateButton("Fenster schließen",@DesktopWidth/2,@DesktopHeight/2)
GUISetState(@SW_SHOW)
While 1
$nMsg = GUIGetMsg()
Switch $nMsg
Case $28Button1
Exit
EndSwitch
If Random(1,6,1)=1 Then
GUICtrlSetPos($28Button1,Random(1,@DesktopWidth),Random(1,@DesktopHeight))
EndIf
Sleep(50)
WEnd
Case 29;Maus zittert
$Timer=TimerInit()
While 1
$Pos=MouseGetPos()
MouseMove($Pos[0]+Random(-20,20),$Pos[1]+Random(-20,20),1)
If TimerDiff($Timer)>30000 Then Exit
Sleep(70)
WEnd
Case 30;Welches Land ist größer?
Global $Info[31],$Land[31][2]
$Info[0]="Afghanistan|652230"
$Info[1]="Ägypten|1001450"
$Info[2]="Aserbaidschan|86600"
$Info[3]="Bulgarien|110879"
$Info[4]="Nord Korea|120538"
$Info[5]="Griechenland|131957"
$Info[6]="Weißrussland|207600"
$Info[7]="Rumänien|238391"
$Info[8]="Ghana|238533"
$Info[9]="Großbritannien|243610"
$Info[10]="Neuseeland|267710"
$Info[11]="Philippinen|300000"
$Info[12]="Italien|301340"
$Info[13]="Polen|312685"
$Info[14]="Norwegen|323802"
$Info[15]="Deutschland|357022"
$Info[16]="Japan|377915"
$Info[17]="Irak|438317"
$Info[18]="Schweden|450295"
$Info[19]="Spanien|505370"
$Info[20]="Jemen|527968"
$Info[21]="Marokko|446550"
$Info[22]="Frankreich|551500"
$Info[23]="Madagaskar|587041"
$Info[24]="Burkina Faso|274200"
$Info[25]="Senegal|196722"
$Info[26]="Kuba|110860"
$Info[27]="Island|103000"
$Info[28]="Nepal|147181"
$Info[29]="Uruguay|176215"
$Info[30]="Südsudan|619745"
For $i=0 To 30
$Temp=StringSplit($Info[$i],"|")
$Land[$i][0]=$Temp[1]
$Land[$i][1]=$Temp[2]
Next
$30Form1 = GUICreate("Welches Land ist größer?", 300, 109)
$30Label1 = GUICtrlCreateLabel("Punkte: 0", 8, 8, 58, 17)
$30Label2 = GUICtrlCreateLabel("Welches Land ist größer?", 40, 48, 125, 17)
$30Button1 = GUICtrlCreateButton("", 8, 72, 91, 25)
$30Button2 = GUICtrlCreateButton("", 112, 72, 91, 25)
$30Label3 = GUICtrlCreateLabel("Highscore:", 216, 8, 90, 17)
$30LabelH1 = GUICtrlCreateLabel("", 216, 32,100,20)
$30LabelH2 = GUICtrlCreateLabel("", 216, 56,100,20)
$30LabelH3 = GUICtrlCreateLabel("", 216, 80,100,20)
GUISetState(@SW_SHOW)
$Land1=Random(0,30,1)
Do
$Land2=Random(0,30,1)
Until $Land2<>$Land1
$Land1=12
$Land2=1
GUICtrlSetData($30Button1,$Land[$Land1][0])
GUICtrlSetData($30Button2,$Land[$Land2][0])
$Punkte=0
Global $H[4][2]
$H[1][0]=""
$H[2][0]=""
$H[3][0]=""
$H[1][1]=0
$H[2][1]=0
$H[3][1]=0
$Klick=0
While 1
Sleep(10)
$nMsg = GUIGetMsg()
Switch $nMsg
Case $GUI_EVENT_CLOSE
Exit
Case $30Button1
$Klick=1
Case $30Button2
$Klick=2
EndSwitch
If $Klick<>0 Then
;~ _ArrayDisplay($Land)
If ($Klick=1 And Int($Land[$Land1][1])>Int($Land[$Land2][1])) Or ($Klick=2 And Int($Land[$Land1][1])<Int($Land[$Land2][1])) Then
$Punkte+=1
GUICtrlSetData($30Label1,"Punkte: "&$Punkte)
Else
MsgBox(16,"Falsche Antwort","Das war leider die falsche Antwort :("&@CRLF&$Land[$Land1][0]&": "&_StringAddThousandsSep($Land[$Land1][1],".")&" km²"&@CRLF&$Land[$Land2][0]&": "&_StringAddThousandsSep($Land[$Land2][1],".")&" km²")
If $Punkte>$H[3][1] Then
$Name = InputBox("Neuer Highscore","Du hast einen neuen Highscore aufgestellt! Bitte gib deinen Namen ein:",""," ","400","130",(@DesktopWidth-400)/2,(@DesktopHeight-130)/2)
Select
Case @Error = 0 ;OK
;Array Add
$UBound=UBound($H)
ReDim $H[$UBound + 1][2]
$H[$UBound][0]=$Name
$H[$UBound][1]=$Punkte
;--
_ArraySort($H,1,1,$UBound,1)
If $H[1][0]<>"" Then GUICtrlSetData($30LabelH1,$H[1][0]&": "&$H[1][1])
If $H[2][0]<>"" Then GUICtrlSetData($30LabelH2,$H[2][0]&": "&$H[2][1])
If $H[3][0]<>"" Then GUICtrlSetData($30LabelH3,$H[3][0]&": "&$H[3][1])
EndSelect
EndIf
$Punkte=0
GUICtrlSetData($30Label1,"Punkte: "&$Punkte)
EndIf
$Land1=Random(0,30,1)
Do
$Land2=Random(0,30,1)
Until $Land2<>$Land1
GUICtrlSetData($30Button1,$Land[$Land1][0])
GUICtrlSetData($30Button2,$Land[$Land2][0])
$Klick=0
EndIf
WEnd
Case 31;Besondere Tage
Switch @MDAY&"."&@MON&"."
Case "01.01."
$Text="Frohes neues Jahr!"
Case "29.01."
$Text="Heute ist xxluke's Geburtstag!"
Case "14.02."
$Text="Schönes Valentinstag!"
Case "25.04."
$Text="Tag des Baumes!!!"
Case "02.02."
$Text="Und täglich grüßt das Murmeltier."
Case "21.01."
$Text="Heute ist Hug Day = Tag der Umarmung!"
Case "21.02."
$Text="Heute ist Welttag des Fremdenführers. Wenn das nicht ein Grund zum feiern ist!"
Case "29.02."
$Text="Kennst du jemanden der heute Geburtstag hat und über 18 ist?"
Case "08.03."
$Text="Heute ist Welt-Frauen-Tag."
Case "14.03."
$Text="3,14159265... Weil heute das Datum auf englisch 3/14 ist, ist heute Pi-Tag!"
Case "17.03."
$Text="Heute ist St. Patrick's Day."
Case "01.04."
ShellExecute("http://lmgtfy.com/?q=aprilscherz+idee")
$Text="Falls du noch keine Idee hast ;)"
Case "22.04."
$Text="Heute ist Tag der Erde. Es gibt übrigents auch einen Tag der Sonne."
Case "23.04."
$Text="Heute ist der Tag des deutschen Bieres. Du weißt, was das bedeutet?"
Case "26.04."
$Text="Heute ist Welttag des geistigen Eigentums, wo daran erinnert wird das z.B. dieses Programm mir gehört und du nicht einfach damit machen darfst, was du willst."
Case "27.04."
$Text="Am heutigen Welt-Grafiker-Tag ehren wir die Person, die dieses wunderschöne i da links gemacht hat."
Case "30.04."
$Text="Heute ist Walpurgisnacht"
Case "05.05."
$Text="Heute ist Tag der Händehygiene!"
Case "20.05."
$Text="Heute darfst du mal etwas verehren, was sonst immer zu kurz kommt: Heute ist Venentag!"
Case "25.05."
$Text="42! Heute ist Tag des Handtuchs!"
Case "28.05."
$Text="Bei Spurprise! gibt es auch ein paar Spiele. Ärgerlich dass du diesmal keins erwischt hast, es ist nämlich Weltspieltag. :("
Case "31.05."
$Text="Heute darfst du mal alle Raucher beleidigen. Es ist nämlich Weltnichtrauchertag!"&@CRLF&@CRLF&"(Keine Sorge dass sie dich am Weltrauchertag beleidigen, es gibt nämlich garkeinen )"
Case "21.06."
$Text="Bist du heute etwa schon um "&@HOUR&" Uhr aufgestanden? Heute ist doch Tag des Schlafes!"
Case "13.08."
$Text="Nimm dir am heutigen Weltlinkshändertag vor, ausschließlich mit links zu schreiben."
Case "05.09."
$Text="Heute ist der offizielle deutsche Kopfschmerztag! :)"
Case "09.09."
$Text='Fröhlichen "Tag des alkoholgeschädigten Kindes"!'
Case "19.09."
$Text="Arrrg, heute ist Sprrrich-wie ein-Pirrrrat-Tag!"
Case "21.09."
$Text="An den heutigen Tag wirst du dich ewig erinnern: Der Welt-Alzheimertag!"
Case "04.10."
$Text="Hilf heute auch mal der Nachbarskatze über die Straße, denn heute ist Welttierschutztag."
Case "20.10."
$Text="Der heutige Weltstatistiktag findet durchschnittlich ein Mal pro Jahr statt."
Case "25.10."
$Text="Fröhlichen Weltnudeltag!"
Case "31.10."
$Text="Fröhliches, ääh, unheimliches Halloween!"&@CRLF&@CRLF&"Und Reformationstag ist natürlich auch heute."
Case "03.11."
$Text="Heute ist Weltmännertag."
Case "05.12."
$Text="Heute ist Weltbodentag!"
Case "06.12."
$Text="Schuhe geputzt?"
Case "24.12."
$Text="Frohe Weihnachten!"
Case "25.12."
$Text="Frohe Weihnachten!"
Case "31.12."
$Text="Tja, das war es auch schon wieder mit "&@YEAR
EndSwitch
If @MDAY>23 And @MON=09 And @WDAY=6 Then $Text="Heute ist Tag des Butterbrotes!"
If @MDAY>24 And @MON=07 And @WDAY=6 Then $Text="Heute ist Tag des Systemadministrators! :)"
If @MDAY>24 And @MON=03 And @WDAY=7 Then $Text="Heute ist Earth Day, wo dazu aufgerufen wird für eine Stunde das Licht auszumachen."
If IsDeclared("Text") Then
MsgBox(64,"Besonderer Tag",$Text)
Else
ContinueCase
EndIf
Case 32;Unnützes Wissen/Fakten aus dem Guinness Buch
$Fakten=StringSplit("70 Joule verbraucht der Körper pro Sekunde. Das entspricht einer 70-Watt-Glühbirne|" & _
"Im Gehirn gibt es 200.000.000.000 Neuronen.|" & _
"Wenn man auf eine Nadel tritt, bemerkt man dies erst 0,2 Sekunden später.|" & _
"Die längste Autofahrt mit Kaffeeantrieb betrug 337 km.|" & _
"Man betätigt 15.250 Mal in seinem Leben die Autohupe.|" & _
"Du verbringst 10 Jahre deines Lebens auf der Arbeit.|" & _
"Ein Lockführer verbringt 14% seines Lebens im Zug.|" & _
"Wenn du mit heliumgefüllten Luftballons abheben willst, brauchst du ca. 16.000 Stück.|" & _
"Obst ist das einzige Nahrungsmittel, das gegessen werden will.|" & _
"Der größte Ball aus Frischhaltefolie hat einen Durchmesser von 1,1 Metern.|" & _
"Der durchschnittliche Videospieler ist 34 Jahre alt.|" & _
"Man sieht in seinem Leben durchschnittlich 5.609 Filme.|" & _
"Der Eifelturm schrumpft bei Kälte um 15 cm.|" & _
"Beim Capgras-Syndrom denkt jemand, dass ein naher Verwandter oder ein Freund durch einen Doppelgänger ersetzt wurde.|" & _
"In Florida darf man nicht unter Wasser pfeifen.|" & _
"In Casinos in Las Vegas hängen keine Uhren.|" & _
"Fische können an Sonnenbrand sterben.|" & _
"Dennis Hope ist der Besitzer des Sonnensystems, ausgenommen von der Erde.|" & _
'Im DDR-Duden fehlten die Worte "Weltreise" und "Kreuzfahrt".',"|"); ".|" & _
MsgBox(64,"Unnützes Wissen",$Fakten[Random(1,UBound($Fakten),1)])
Case 33;Megapixel/Bildgrößenberechner
$sInputBoxAnswer = InputBox("Megapixel-Berechner","Gib die Megapixelzahl eines deiner technischen Geräte ein:",""," ","400","130")
Select
Case @Error = 1 ;The Cancel button was pushed
Exit
EndSelect
$sInputBoxAnswer=StringReplace($sInputBoxAnswer,",",".")
$ExtraText=""
If $sInputBoxAnswer>6 Then $ExtraText=@CRLF & @CRLF & "Du willst garnicht so große Bilder machen? Dann hat deine Kamera unsinnig viele Megapixel. 6 MP sind optimal für Kompaktkameras, bei größeren Werten nimmt die Qualität des Bilders sogar wieder ab."
$Seitenlaenge=Round(Sqrt($sInputBoxAnswer*6000/31),1)
MsgBox(64,"Migaoixel-Berechner","Vorrausgesetzt, du hast keine Spiegel-Reflex-Kamera (vermutlich):" & @CRLF & @CRLF & "Deine Megapixel-Zahl ist optimal für Bilder der Größe "&$Seitenlaenge&"x"&$Seitenlaenge&" cm." & $ExtraText)
Case 34;Reaktionstest Klicken
$34Form1 = GUICreate("Reaktionstest", 625, 295)
$34Label1 = GUICtrlCreateLabel("Klicke so schnell wie möglich auf die farbige Fläche, wenn sie erscheint:", 8, 8, 343, 17)
$34Label2 = GUICtrlCreateLabel("", 56, 48, 492, 188)
GUICtrlSetBkColor(-1, 0xFFFF00)
GUICtrlSetState(-1,$GUI_HIDE)
$34Label3 = GUICtrlCreateLabel("", 16, 264,128,20)
$34Button1 = GUICtrlCreateButton("Nochmal", 144, 256, 115, 25)
GUICtrlSetState(-1,$GUI_HIDE)
GUISetState(@SW_SHOW)
$MinTimer=TimerInit()
$StopAt=3000+Random(0,4000,1)
$Yellow=False
While 1
If TimerDiff($MinTimer)>=$StopAt And $Yellow=False Then
GUICtrlSetState($34Label2,$GUI_SHOW)
$Timer=TimerInit()
$Yellow=True
EndIf
$nMsg = GUIGetMsg()
Switch $nMsg
Case $GUI_EVENT_CLOSE
Exit
Case $34Label2
$Diff=Round(TimerDiff($Timer))
GUICtrlSetState($34Button1,$GUI_SHOW)
GUICtrlSetState($34Label3,$GUI_SHOW)
GUICtrlSetData($34Label3,"Benötigte Zeit: "&$Diff&"ms")
Case $34Button1
GUICtrlSetState($34Label2,$GUI_HIDE)
GUICtrlSetState($34Label3,$GUI_HIDE)
GUICtrlSetState($34Button1,$GUI_HIDE)
$Yellow=False
$MinTimer=TimerInit()
$StopAt=3000+Random(0,4000,1)
EndSwitch
WEnd
Case 35;Lustige Weltuhr
Global $InfoX[10],$35Label[10],$35LabelTitle[10]
Dim $Info[11][2]
; Kategorie | Anz/Sek
$InfoX[0]="Verletzte durch Zahnstocher|0.000279"
$InfoX[1]="Kosten durch verlorene Zeit durch Staus|12118.7425"
$InfoX[2]="In den USA ausgeschlagene Zähne|0.15844"
$InfoX[3]="Hochzeiten in Las Vegas|0.0034857"
$InfoX[4]="Gestorbene Linkshänder durch Benutzung von Geräten für Rechtshänder|"&25/315576
$InfoX[5]="Verletzte Amerikaner durch Toiletten|0.0012675"
$InfoX[6]="Neue Punkte in Flensburg|"&1/1200
$InfoX[7]="Erdbeeben|0.0015844"
$InfoX[8]="Blitzeinschläge|231.48148"
$InfoX[9]="Verkaufte Bibeln|0.7833"
For $i=0 To 9
$Temp=StringSplit($InfoX[$i],"|")
$Info[$i][0]=$Temp[1]
$Info[$i][1]=$Temp[2]
Next
$35Form1 = GUICreate("Heute - Unnützes Wissen", 500, 250)
$35Label1 = GUICtrlCreateLabel("Heute", 8, 8, 38, 17)
GUICtrlSetFont(-1, 8, 800, 0, "MS Sans Serif")
$35Label2 = GUICtrlCreateLabel("( Minuten)", 48, 8,150)
For $i=0 To 9
$35LabelTitle[$i] = GUICtrlCreateLabel($Info[$i][0], 0, 40+$i*20, 370,-1, $SS_RIGHT)
$35Label[$i] = GUICtrlCreateLabel("-1", 380, 40+$i*20,150)
Next
GUISetState(@SW_SHOW)
$u=18
While 1
Sleep(50)
If $u=18 Then
$SecTod=_DateDiff("s",@YEAR&"/"&@MON&"/"&@MDAY&" 00:00:00",_NowCalc())
GUICtrlSetData($35Label2,"("&Round($SecTod/60,0)&" Minuten)")
For $i=0 To 9
GUICtrlSetData($35Label[$i],Round($Info[$i][1]*$SecTod,0))
Next
$u=0
Else
$u+=1
EndIf
$nMsg = GUIGetMsg()
Switch $nMsg
Case $GUI_EVENT_CLOSE
Exit
EndSwitch
WEnd
Case 36;Sekunden bis zum Tod-Berechner
$36Form1 = GUICreate("Das Ende naht!", 290, 97)
$36Label1 = GUICtrlCreateLabel("Bitte gib dein Geburtsdatum sowie die Geburtsuhrzeit ein:", 8, 8, 272, 17)
$36Date1 = GUICtrlCreateDate("1994/01/01", 8, 32, 138, 21,$WS_TABSTOP)
$36Input1 = GUICtrlCreateInput("12", 152, 32, 25, 21, BitOR($ES_AUTOHSCROLL,$ES_NUMBER))
$36Label2 = GUICtrlCreateLabel(":", 184, 32, 7, 17)
$36Input2 = GUICtrlCreateInput("00", 192, 32, 25, 21, BitOR($ES_AUTOHSCROLL,$ES_NUMBER))
$36Button1 = GUICtrlCreateButton("OK", 168, 64, 115, 25, $BS_DEFPUSHBUTTON)
GUISetState(@SW_SHOW)
While 1
$nMsg = GUIGetMsg()
Switch $nMsg
Case $GUI_EVENT_CLOSE
Exit
Case $36Button1
$InputDate=StringSplit(GUICtrlRead($36Date1),".")
$InputDate=$InputDate[3]&"/"&$InputDate[2]&"/"&$InputDate[1]
$Lebenssekunden=2504411136-_DateDiff("s",$InputDate,_NowCalc())
$ExtraText=""
If _DateDiff("s",$InputDate,_NowCalc())/(60*60*24*365.25)>34.1 Then $ExtraText=@CRLF&@CRLF&"In Swasiland wärst du vermutlich schon tot :(."
MsgBox(64,"Das Ende naht!","Du hast noch durchschnittlich ganze "&@CRLF&Round($Lebenssekunden)&" Sekunden"&@CRLF&"= "&Round($Lebenssekunden/(60*60))&" Stunden"&@CRLF&"= "&Round($Lebenssekunden/(60*60*24))&" Tage"&@CRLF&"= "&Round($Lebenssekunden/(60*60*24*365.25))&" Jahre"&@CRLF&"zu leben! (berrechnet mit durchschnittlicher Lebenserwartung in Dtl.)"&$ExtraText)
EndSwitch
WEnd
Case 37;Infos zum Betriebssystem
MsgBox(64,"Informationen zu deinem PC","Betriebssystem: "&@OSVersion&@CRLF&"Service Pack: "&@OSServicePack&@CRLF&"Sprachcode: "&@OSLang&@CRLF&"Computer-Name: "&@ComputerName)
Case 38;Mausdistanz
$38aForm1 = GUICreate("Mausdistanz", 209, 120)
$38aLabel1 = GUICtrlCreateLabel("Bitte miss die Größe deines Monitors aus:", 8, 8, 197, 17)
$38aLabel2 = GUICtrlCreateLabel("Breite (in cm):", 8, 32, 68, 17)
$38aInput1 = GUICtrlCreateInput("", 80, 32, 121, 21,$ES_NUMBER)
$38aLabel3 = GUICtrlCreateLabel("Höhe (in cm):", 8, 56, 67, 17)
$38aInput2 = GUICtrlCreateInput("", 80, 56, 121, 21,$ES_NUMBER)
$38aButton1 = GUICtrlCreateButton("OK", 120, 88, 83, 25,$BS_DEFPUSHBUTTON)
GUISetState(@SW_SHOW)
While 1
$nMsg = GUIGetMsg()
Switch $nMsg
Case $GUI_EVENT_CLOSE
Exit
Case $38aButton1
$DW=GUICtrlRead($38aInput1) ;37
$DH=GUICtrlRead($38aInput2) ;25
GUIDelete($38aForm1)
ExitLoop
EndSwitch
WEnd
$DpPw=$DW/@DesktopWidth
$DpPh=$DH/@DesktopHeight
$38Form1 = GUICreate("Mausdistanz", 301, 73)
$38Label1 = GUICtrlCreateLabel("Dein Mauszeiger hat sich seit dem Öffnen dieses Fensters", 8, 8, 276, 17)
$38Label2 = GUICtrlCreateLabel("0 m", 8, 24, 182, 20)
GUICtrlSetFont(-1, 14, 400, 0, "MS Sans Serif")
$38Label3 = GUICtrlCreateLabel("bewegt.", 8, 48, 42, 17)
GUISetState(@SW_SHOW)
$OldX=MouseGetPos(0)
$OldY=MouseGetPos(1)
$Dis=0
$i=1
While 1
$nMsg = GUIGetMsg()
Switch $nMsg
Case $GUI_EVENT_CLOSE
Exit
EndSwitch
Sleep(50)
If $i=10 Then ;Aktuallisierung jede halbe Sekunde
$NewX=MouseGetPos(0)
$NewY=MouseGetPos(1)
$Dis+=Abs($OldX-$NewX)*$DpPw
$Dis+=Abs($OldY-$NewY)*$DpPh
GUICtrlSetData($38Label2,Round($Dis/100,3)&" m")
[/autoit] [autoit][/autoit] [autoit]$OldX=$NewX
$OldY=$NewY
$i=0
EndIf
$i+=1
WEnd
Case 39;Wann kennt man alle Überraschungen?
$NuOfUe=42
$Ins=0
For $i=1 To $NuOfUe
$Ins+=1/$i
Next
MsgBox(64,"Info","Bei der aktuellen Anzahl an Surprises musst du das Programm durchschnittlich "&Ceiling($Ins*$NuOfUe)&" Mal starten, bis du alle Überraschungen gesehen hast!")
Case 40;Karte mit Favicons
ShellExecute("http://nmap.org/favicon/")
Case 41;drawastickman.com
ShellExecute("http://www.drawastickman.com/")
Case 42;Tracert
While True
FileDelete(@TempDir&"\S_Tracert.txt")
$URL = InputBox("Internetadresse eingeben","Bitte gib eine Internetadresse ein:","google.de"," ","400","130")
If @Error = 1 Then Exit
ToolTip("Dieser Vorgang kann etwas länger dauern.",@DesktopWidth/2,@DesktopHeight/2,"Bitte warten",1,2)
RunWait(@ComSpec&" /c tracert -w 100 "&$URL&" >> "&@TempDir&"\S_Tracert.txt", "", @SW_HIDE)
$Tracert=FileRead(@TempDir&"\S_Tracert.txt")
FileDelete(@TempDir&"\S_Tracert.txt")
$ExtraText=""
If StringInStr($Tracert,"der Anforderung") Then $ExtraText=@CRLF&@CRLF&"Leider gab es Probleme beim Ermitteln des kompletten Weges, probiere es einfach noch mal mit einer anderen URL. :("
ToolTip("")
MsgBox(64,"Der Weg durch das Internet zu "&$URL,"Hier siehst du, welche Route das Internet nimmt, um dich zu "&$URL&" zu bringen:"&@CRLF&@CRLF&StringStripCR($Tracert)&$ExtraText)
$iMsgBoxAnswer = MsgBox(36,"Nochmal?","Nochmal mit einer anderen URL?")
If $iMsgBoxAnswer = 7 Then Exit
WEnd
EndSwitch
;Reaktionstest mit Eingabe
;Maus eine gerade Line entlang bewegen
Kill()
Func Kill()
Exit
EndFunc
Func _StringAddThousandsSep($sString, $sThousands = -1, $sDecimal = -1)
Local $sResult = "" ; Force string
Local $rKey = "HKCU\Control Panel\International"
If $sDecimal = -1 Then $sDecimal = RegRead($rKey, "sDecimal")
If $sThousands = -1 Then $sThousands = RegRead($rKey, "sThousand")
;~ Local $aNumber = StringRegExp($sString, "(\d+)\D?(\d*)", 1)
Local $aNumber = StringRegExp($sString, "(\D?\d+)\D?(\d*)", 1) ; This one works for negatives.
If UBound($aNumber) = 2 Then
Local $sLeft = $aNumber[0]
While StringLen($sLeft)
$sResult = $sThousands & StringRight($sLeft, 3) & $sResult
$sLeft = StringTrimRight($sLeft, 3)
WEnd
;~ $sResult = StringTrimLeft($sResult, 1) ; Strip leading thousands separator
$sResult = StringTrimLeft($sResult, StringLen($sThousands)) ; Strip leading thousands separator
If $aNumber[1] <> "" Then $sResult &= $sDecimal & $aNumber[1]
EndIf
Return $sResult
EndFunc ;==>_StringAddThousandsSep
Func Klick()
$Klicks+=1
GUICtrlSetData($25Label3,$Klicks)
EndFunc
Func MonitorToggle($Off = 1)
$opt = Opt("WinTitleMatchMode", 4)
$WM_SYSCommand = 274
$SC_MonitorPower = 61808
$Power_Off = 2
$Power_On = -1
$HWND = WinGetHandle("classname=Progman")
If $Off Then
DllCall("user32.dll", "int", "SendMessage", "hwnd", $HWND, "int", $WM_SYSCommand, _
"int", $SC_MonitorPower, "int", $Power_Off)
Else
DllCall("user32.dll", "int", "SendMessage", "hwnd", $HWND, "int", $WM_SYSCommand, _
"int", $SC_MonitorPower, "int", $Power_On)
EndIf
Opt ("WinTitleMatchMode", $opt)
EndFunc
Func Draw($Zahl,$NumberNr)
Switch $Zahl
Case " "
Set(1,$NumberNr,0)
Set(2,$NumberNr,0)
Set(3,$NumberNr,0)
Set(4,$NumberNr,0)
Set(5,$NumberNr,0)
Set(6,$NumberNr,0)
Set(7,$NumberNr,0)
Set(8,$NumberNr,0)
Set(9,$NumberNr,0)
Case 0
Set(1,$NumberNr,1)
Set(2,$NumberNr,1)
Set(3,$NumberNr,1)
Set(4,$NumberNr,0)
Set(5,$NumberNr,1)
Set(6,$NumberNr,1)
Set(7,$NumberNr,1)
Set(8,$NumberNr,1)
Set(9,$NumberNr,1)
Case 1
Set(1,$NumberNr,0)
Set(2,$NumberNr,0)
Set(3,$NumberNr,1)
Set(4,$NumberNr,0)
Set(5,$NumberNr,0)
Set(6,$NumberNr,1)
Set(7,$NumberNr,0)
Set(8,$NumberNr,0)
Set(9,$NumberNr,1)
Case 2
Set(1,$NumberNr,1)
Set(2,$NumberNr,0)
Set(3,$NumberNr,1)
Set(4,$NumberNr,1)
Set(5,$NumberNr,1)
Set(6,$NumberNr,0)
Set(7,$NumberNr,1)
Set(8,$NumberNr,1)
Set(9,$NumberNr,1)
Case 3
Set(1,$NumberNr,1)
Set(2,$NumberNr,0)
Set(3,$NumberNr,1)
Set(4,$NumberNr,1)
Set(5,$NumberNr,0)
Set(6,$NumberNr,1)
Set(7,$NumberNr,1)
Set(8,$NumberNr,0)
Set(9,$NumberNr,1)
Case 4
Set(1,$NumberNr,0)
Set(2,$NumberNr,1)
Set(3,$NumberNr,1)
Set(4,$NumberNr,1)
Set(5,$NumberNr,0)
Set(6,$NumberNr,1)
Set(7,$NumberNr,0)
Set(8,$NumberNr,1)
Set(9,$NumberNr,1)
Case 5
Set(1,$NumberNr,1)
Set(2,$NumberNr,1)
Set(3,$NumberNr,0)
Set(4,$NumberNr,1)
Set(5,$NumberNr,0)
Set(6,$NumberNr,1)
Set(7,$NumberNr,1)
Set(8,$NumberNr,1)
Set(9,$NumberNr,1)
Case 6
Set(1,$NumberNr,1)
Set(2,$NumberNr,1)
Set(3,$NumberNr,0)
Set(4,$NumberNr,1)
Set(5,$NumberNr,1)
Set(6,$NumberNr,1)
Set(7,$NumberNr,1)
Set(8,$NumberNr,1)
Set(9,$NumberNr,1)
Case 7
Set(1,$NumberNr,1)
Set(2,$NumberNr,0)
Set(3,$NumberNr,1)
Set(4,$NumberNr,0)
Set(5,$NumberNr,0)
Set(6,$NumberNr,1)
Set(7,$NumberNr,0)
Set(8,$NumberNr,0)
Set(9,$NumberNr,1)
Case 8
Set(1,$NumberNr,1)
Set(2,$NumberNr,1)
Set(3,$NumberNr,1)
Set(4,$NumberNr,1)
Set(5,$NumberNr,1)
Set(6,$NumberNr,1)
Set(7,$NumberNr,1)
Set(8,$NumberNr,1)
Set(9,$NumberNr,1)
Case 9
Set(1,$NumberNr,1)
Set(2,$NumberNr,1)
Set(3,$NumberNr,1)
Set(4,$NumberNr,1)
Set(5,$NumberNr,0)
Set(6,$NumberNr,1)
Set(7,$NumberNr,1)
Set(8,$NumberNr,1)
Set(9,$NumberNr,1)
EndSwitch
EndFunc
Func Set($Pos,$NumberNr,$Full=1)
If $Full=1 Then
$Percent=100
Else
$Percent=0
EndIf
GUICtrlSetData($Progress[$Pos][$NumberNr],$Percent)
EndFunc