Beiträge von Irrlicht
-
-
in der GUI soll die aktuelle Uhrzeit stehen. Die Uhrzeit, als das Prog aufgerufen wurde, wäre ja kein Problem. Aber das aktualisiert sich ja dann nicht, so dass immer die aktuelle Uhrzeit da steht.
Die Uhrzeit wird in deinem SKript wahrscheinlich nur einmalig abgefragt.
Pack die Zeitabfrage in ne whileschleife...Funktioniert auch alles. Allerdings will der Beenden-Button, obwohl er "konfiguiert" ist, nicht mehr seine Funktion tun

Du verwendest glaub ich zwei Whileschleifen, die parallel zu einander laufen sollen. Geht nicht.... Guigetmsg kann nicht mehr funktionieren, wenn sich das Skript in der "Endlos-Ping-Schleife" befindet
-
-
Hallo!
[autoit]
Heute gibt's ne kleine UDF. Ist meine erste UDF, also bitte nicht so hart in der Bewertung sein
Mit _stringcompareext ist es möglich Strings bezüglich der Länge sowie bezüglich der Gleichartigkeit numerisch und prozentual zu vergleichen.
Besondere Parameter gibts noch nicht, da sie für meinen eigenen Gebrauch bislang nicht notwendig sind.; #FUNCTION# ;===============================================================================
[/autoit]
;
; Name...........: _Stringcompareext
; Description ...: Be able to compare strings in an extended way
; Syntax.........: _stringcompareext($string1, $string2)
; Parameters ....: $string1
; $string2
; Return values .: Success - Returns : One-dimensional array
; Failure - Returns 0
;
; Author ........: Twodollarbillie
;
; ;==========================================================================================
func _stringcompareext($string1, $string2)
local $return[3]
local $stringcomparision=0
local $sameletters=0
$replace1= stringreplace($string1, "-", "")
$replace2= Stringreplace($replace1, " ", "")
$replace3= stringreplace($string2, "-", "")
$replace4= Stringreplace($replace3, " ", "")
If Stringlen($string1)<stringlen($string2) then $lengthcomparison= 1
If Stringlen($string1)= stringlen($string2) then $lengthcomparison=2
If stringlen($string1)>stringlen($string2) then $lengthcomparison= 3
for $i= 1 to stringlen($replace2)
If stringmid($replace2, $i, 1)== stringmid($replace4, $i, 1) then $sameletters+=1
next
$percental= round(($sameletters/stringlen($replace4))*100, 2)
$return[0]= $lengthcomparison
$return[1]= $sameletters
$return[2]= $percental
If not @error then
return $return
else
return 0
endif
endfunc -
hab gleich gewusst, dass da was nicht stimmt.. danke für die verbesserung!
-
ich tippe darauf, dass er ein inputfeld(->guictrlcreateinput) in ner gui meint

-
Halli hallo hallöchen.
[autoit]
Heute komm ich mitm 2-Minuten-Skript...
Man hat hier Skripte für exakte Berechnungen von pi, warum sollte dann die eulersche Zahl unter den Tisch fallen?
Gerade weil die e-Funktion in der Oberstufe auch sehr wichtig ist, hab ich hier mal was geskriptet:;e-Berechnung
[/autoit]
;by Twodollarbillie
#include<bignum.au3>
for $i=0 to 200
$ergebnis= _bignum_pow((1+1/$i), $i)
$pos= mousegetpos()
Tooltip($i, $pos[0]+10, $pos[1])
Next
Tooltip("")
Msgbox(0, "Ergebnis", "Die eulersche Zahl mit " & stringlen(stringtrimleft($ergebnis, 2))& " Nachkommastellen:"&@crlf &$ergebnis )
Ist ziemlich mickrig
Den Tooltip könnt ihr natürlich entfernen, verlangsamt das ganze wahrscheinlich. Den zweiten Parameter kann man natürlich auch verändern.
Die Ergebnisse weichen von Wikipedia-Angaben noch ab, weiß nicht wieso. Kann jemand helfen? -
Sowas gibts doch schon von Bugfix oder?
-
Durchaus möglich.
-
Inireadsectionnames, For-Schleifen verwenden und Ergebnisse mit dem Suchbegriff vergleichen!
-
vielleicht kannst du ja noch einen HotKey oder soetwas für das Anzeigen der Highscoreliste einbauen
Die Highscore kann im Hauptmenü angeschaut werden. Ich lad's gleich hochAber die Toleranz von 10 is zu gross,
Dann eher Toleranz von 5? -
Halli, hallo, hallöchen!
[autoit]
Heut hab ich mich mal wieder mit Gdi+ befasst. Dabei ist, wie ich finde, ein ganz nettes Spiel rausgekommen.
Es geht darum, Rechenaufgaben zu lösen und dann mit Geschick&Schnelligkeit die Bälle korrekt zu platzieren.#include <GdiPlus.au3>
[/autoit][autoit][/autoit][autoit]
#include <GuiConstants.au3>
#include <Misc.au3>
#include <StaticConstants.au3>Global $xb = 225
[/autoit][autoit][/autoit][autoit]
global $game=false
global $punkte=0
local $brush[3]OnAutoItExitRegister("_EXIT")
[/autoit][autoit][/autoit][autoit]
$Gui = GUICreate("-Calculate-", 500, 750)
guictrlcreatepic(@scriptdir&"\pic.jpg", 0, 702, 500, 50)
guisetbkcolor(0x0020A1)
$label= guictrlcreatelabel("",20, 702, 300, 20)
guictrlsetbkcolor(-1 , $GUI_BKCOLOR_TRANSPARENT)
guictrlsetcolor(-1, 0xFFFFFF)
guictrlsetfont(-1, 10)
$label2=guictrlcreatelabel("Deine Position"&$xb, 20, 722, 160)
guictrlsetbkcolor(-1 , $GUI_BKCOLOR_TRANSPARENT)
guictrlsetcolor(-1, 0xFFFFFF)
guictrlsetfont(-1, 10)
$label3= guictrlcreatelabel("Deine Punktzahl:"&$punkte, 220, 722,300, 20)
guictrlsetbkcolor(-1 , $GUI_BKCOLOR_TRANSPARENT)
guictrlsetcolor(-1, 0xFFFFFF)
guictrlsetfont(-1, 10)
$random= random(1,2, 1)
If $random= 1 and $game=false then
$random2= random(0, 225,1)
$random3= random(0, 225, 1)
guictrlsetdata($label, "Zielposition:"& $random2 &"+"& $random3)
$goal= $random2+$random3elseif $random= 2 and $game=false then
[/autoit][autoit][/autoit][autoit]
do
$random2= random(0, 450,1)
$random3= random(0, 450, 1)
until ($random2-$random3)>0
guictrlsetdata($label,"Zielposition:"& $random2&"-"&$random3)
$goal= $random2-$random3endif
[/autoit][autoit][/autoit][autoit]
_GDIPlus_Startup()
$graphic = _GDIPlus_GraphicsCreateFromHWND($Gui)
$bitmap = _GDIPlus_BitmapCreateFromGraphics(500, 700, $graphic)
$buffer = _GDIPlus_ImageGetGraphicsContext($bitmap)$brush[1] = _GDIPlus_BrushCreateSolid(0xFF60CC3F)
[/autoit][autoit][/autoit][autoit]
$brush[0] = _GDIPlus_BrushCreateSolid(0xFF000000)
$brush[2] = _GDIPlus_BrushCreateSolid(0xFF6677FF)GUISetState(@SW_SHOW)
[/autoit][autoit][/autoit][autoit]While not winexists("Calculate", "calculate")
[/autoit][autoit][/autoit][autoit]$msg = GUIGetMsg()
[/autoit][autoit][/autoit][autoit]
switch $msg
Case $GUI_EVENT_CLOSE
Exit
endswitch
$random= random(1,2, 1)
If $random= 1 and $game=true then
$random2= random(0, 225,1)
$random3= random(0, 225, 1)
guictrlsetdata($label, "Zielposition:"&$random2 &"+"& $random3)
$goal= $random2+$random3
elseif $random= 2 and $game=True then
do
$random2= random(0, 450,1)
$random3= random(0, 450, 1)
until ($random2-$random3)>0
guictrlsetdata($label, "Zielposition:"&$random2&"-"&$random3)
$goal= $random2-$random3
endif
for $i= 1 to 700 step 1.7
If $random=1 then
$sleep= 20
else
$sleep=32
endifIf _ispressed(44) and $xb<=448 then $xb+=2
[/autoit][autoit][/autoit][autoit]
If _ispressed(41) and $xb>=2 then $xb-=2
If _ispressed(53) then $sleep=0
_GDIPlus_GraphicsFillRect($buffer, 0, 0, 500, 700, $brush[0])
_GDIPlus_GraphicsFillEllipse($buffer, $xb, $i, 50, 50, $brush[$random])
_GDIPlus_GraphicsDrawImageRect($graphic, $bitmap, 0, 0, 500, 700)
guictrlsetdata($label2, "Deine X-Position:"&$xb)
sleep($sleep)
next
$game=true
$i=700
If $i= 700 and $xb<$goal-10 or $xb>$goal+10 then
$msgbox= Msgbox(4, "Loser!", "Möchtest du deine lächerlichen " &$punkte& "in die Highscore eintragen?")
If $msgbox= 6 then
$name= Inputbox("Dein Name", "Wie ist denn dein Name?", "Horst")
If $name<> "" then Iniwrite(@Scriptdir&"\score.ini", "namen", $name, $punkte)
_exit()else
[/autoit][autoit][/autoit][autoit]_exit()
[/autoit][autoit][/autoit][autoit]endif
[/autoit][autoit][/autoit][autoit]
else
If $random=1 then
$punkte+=50
elseif $random=2 Then
$punkte+=70
EndIfguictrlsetdata($label3, "Deine Punktzahl:"& $punkte)
[/autoit]
endif
WEnd
Func _EXIT()
_GDIPlus_GraphicsDispose($graphic)
_GDIPlus_GraphicsDispose($buffer)
_GDIPlus_BitmapDispose($bitmap)
_GDIPlus_Shutdown()
exit
EndFunc ;==>_EXIT
Bei der Geschwindigkeit der Bälle weiß ich nicht genau, ob sie zu schnell oder zu langsam ist. Zusätzlich is ne Toleranz von 10 Punkten eingebaut.
Wie man im Hauptmenü sehen kann, wird es in späteren Versionen Möglichkeiten geben, die Geschwindigkeit selbst zu regulieren.
Im Anhang befinden sich die exe's und alle erforderlichen Dateien.
Einfach auf Game starten klicken
So, dann viel Spaß beim Testen,
Gruß, BillieEdit1: Kleiner Fehler bemerkt, verbesserte Version wird gleich hochgeladen...... Dauert noch länger.... Hauptmenü wird also erst morgen hinzugefügt
Edit2: kleines Hauptmenü + Highscoreanzeige reingebaut. Toleranz auf 5 vermindert. Optionen werden folgen! -
hab ich ja gemacht^^
-
und wo ist jetzt der fuchs

ne bei mir klappts nicht wirklich.eine kollision wird selten erkannt, und wenn's mal klappt, dann zeigt es oft den falschen Spieler an. -
Verwende doch arrays, um das skript zu kürzen. so viel schreibarbeit sollte keinem zugemutet werden!
-
Ok, hatte nen kleinen Fehler im Skript. Die Ansteuerung scheitert bei leerzeichen.
Bei mir wurden automatisch alle Leerzeichen in den Namen von Avis durch "-" ersetzt.
Bei den Mpg's war dies nicht der Fall. Danke! -
Für welche Videoformate funktioniert das mit ffmpeg?
Bzw warum funktioniert mtn nicht bei mpg, wenn die codecs mpeg1 und mpeg2 eigentlich unterstützt werden? -
Was is es denn für ein chat?
-
Hallo!
Erstmal danke für das Erstellen des Themas. So ne Konsolenanwendung hab ich schon gesucht.
Wie kann autoit erkennen, dass die bilder fertig sind?
Shellexecutewait klappt nicht, da sich die Konsole nicht automatisch schließt(anders bei ffmpeg)
Fileexist und filegetsize sind eher unpraktisch. Ein Sleep wäre ziemlich ungenau. -
lol vor einer sekunde gefunden, danke. Wer jetzt noch weiß, wo es das ganze auf deutsch gibt, ist verdammt gut!