1. Dashboard
  2. Mitglieder
    1. Letzte Aktivitäten
    2. Benutzer online
    3. Team
    4. Mitgliedersuche
  3. Forenregeln
  4. Forum
    1. Unerledigte Themen
  • Anmelden
  • Registrieren
  • Suche
Alles
  • Alles
  • Artikel
  • Seiten
  • Forum
  • Erweiterte Suche
  1. AutoIt.de - Das deutschsprachige Forum.
  2. Mitglieder
  3. Cartan12

Beiträge von Cartan12

  • String als Gleichung ausrechnen

    • Cartan12
    • 12. Mai 2010 um 21:55
    [autoit]

    execute

    [/autoit]

    ?

  • Win-Update neustart verhindern

    • Cartan12
    • 12. Mai 2010 um 21:29

    Wiso keinen Sinn? Ich mache nie direkt einen Neustart, nachdem die Updates runtergeladen wurden...
    Sobald ich dann weg bin, startet der wieder neu, ohne das ich dran gedacht habe, die Daten zu sichern, und im Gegensatz zu den Einstellungen ist das nicht dauerhaft

  • GDI+ Kometenschweif

    • Cartan12
    • 12. Mai 2010 um 21:23

    Würd dir empfehlen beim Pong so ne Art Startbildschirm zu machen, da der Ball sonst manchmal etwas unerwartet kommt...
    Sowas wie: "Starten sie das Spiel mit "ENTER"

    edit: Oh, hätte ich auch direkt in Name22s Thread reinschreiben können...

  • While 1 "ich verzweifle" WEnd

    • Cartan12
    • 12. Mai 2010 um 21:18
    [autoit]

    While Sleep(300000)
    TraySetState(8)
    $timer=TimerInit()
    AdlibEnable("Timer")
    Switch TrayGetMsg()
    Case $s_hButton
    showhide()
    ContinueLoop
    Case $exitbutton
    oNExit()
    ContinueLoop
    EndSwitch
    WEnd

    [/autoit][autoit][/autoit][autoit][/autoit][autoit][/autoit]

    ist ne Endlosschleife in ner Endlosschleife, macht also keinen Sinn...

    edit: Zu spät ;(

  • GDI+ Kometenschweif

    • Cartan12
    • 12. Mai 2010 um 21:13

    name22: So, hab dein Pong mal etwas "benutzerfreundlich" gemacht ^^

    Spoiler anzeigen
    [autoit]

    #include <GDIPlus.au3>
    #include <GUIConstants.au3>
    #include <Misc.au3>

    [/autoit]

    Global $GUIWidth = 600 ;Breite GUI
    Global $GUIHeight = 400 ;Höhe GUI
    Global $BallWidth = 10 ;Breite Punkt
    Global $BallHeight = 10 ;Höhe Punkt
    Global $PadHeight1 = 60 ;Höhe des linken Pads
    Global $PadHeight2 = 60 ;Höhe des rechten Pads
    Global $PadWidth1 = 10 ;Breite des linken Pads
    Global $PadWidth2 = 10 ;Breite des rechten Pads
    Global $GUIColorBG = 0xFF000000 ;Farbe GUI
    Global $BallColor = 0xFFFFFFFF ;Farbe Punkt
    Global $Pad1Color = 0xFFFFFFFF ;Farbe des linken Pads
    Global $Pad2Color = 0xFFFFFFFF ;Farbe des rechten Pads
    Global $LineColor = 0xFFFFFFFF ;Farbe der Mittellinie

    Global $Score1 = 0
    Global $Score2 = 0
    Global $iXBall = $GUIWidth / 2 - $BallWidth / 2
    Global $iYBall = Random($BallHeight + 10, $GUIHeight - $BallHeight - 10)
    Global $iXPad1 = 10
    Global $iYPad1 = $GUIHeight / 2 - $PadHeight1 / 2
    Global $iXPad2 = $GUIWidth - $PadWidth2 - 10
    Global $iYPad2 = $GUIHeight / 2 - $PadHeight2 / 2
    Global $StepYBall

    If Random(1, 2, 1) = 1 Then
    Global $StepXBall = 5
    Else
    Global $StepXBall = -5
    EndIf
    Do
    $StepYBall = Random(-5, 5, 1)
    Until Not $StepYBall = 0

    $hWnd = GUICreate("GDI+ Pong by Name22", $GUIWidth, $GUIHeight)
    GUISetState(@SW_SHOW)

    _GDIPlus_Startup()

    Global $hGraphic = _GDIPlus_GraphicsCreateFromHWND($hWnd)
    Global $hBitmap = _GDIPlus_BitmapCreateFromGraphics($GUIWidth, $GUIHeight, $hGraphic)
    Global $Buffer = _GDIPlus_ImageGetGraphicsContext($hBitmap)
    _GDIPlus_GraphicsSetSmoothingMode($Buffer, 2)
    _GDIPlus_GraphicsClear($Buffer, $GUIColorBG)
    Global $hBrush1 = _GDIPlus_BrushCreateSolid($BallColor)
    Global $hBrush2 = _GDIPlus_BrushCreateSolid($Pad1Color)
    Global $hBrush3 = _GDIPlus_BrushCreateSolid($Pad2Color)
    Global $hBrush4 = _GDIPlus_BrushCreateSolid($LineColor)

    AdlibRegister("_Draw", 20)

    While 1
    $nMsg = GUIGetMsg()
    Switch $nMsg
    Case $GUI_EVENT_CLOSE
    AdlibUnRegister()
    _GDIPlus_BrushDispose($hBrush1)
    _GDIPlus_BrushDispose($hBrush2)
    _GDIPlus_BrushDispose($hBrush3)
    _GDIPlus_BrushDispose($hBrush4)
    _GDIPlus_GraphicsDispose($Buffer)
    _GDIPlus_BitmapDispose($hBitmap)
    _GDIPlus_GraphicsDispose($hGraphic)
    _GDIPlus_Shutdown()
    Exit
    EndSwitch
    If Not WinActive($hWnd) = 0 Then
    If _IsPressed("57") And $iYPad1 >= 0 Then $iYPad1 -= 2
    If _IsPressed("53") And $iYPad1 <= $GUIHeight - $PadHeight1 Then $iYPad1 += 2
    If _IsPressed("26") And $iYPad2 >= 0 Then $iYPad2 -= 2
    If _IsPressed("28") And $iYPad2 <= $GUIHeight - $PadHeight2 Then $iYPad2 += 2
    EndIf
    WEnd

    Func _Draw()
    _GDIPlus_GraphicsClear($Buffer, $GUIColorBG)
    _GDIPlus_GraphicsFillRect($Buffer, $iXPad1, $iYPad1, $PadWidth1, $PadHeight1, $hBrush2)
    _GDIPlus_GraphicsFillRect($Buffer, $iXPad2, $iYPad2, $PadWidth2, $PadHeight2, $hBrush3)
    For $i = 0 To Round($GUIHeight / 30) - 1
    _GDIPlus_GraphicsFillRect($Buffer, $GUIWidth / 2 - 15, $i * 60, 10, 30, $hBrush4)
    Next
    _GDIPlus_GraphicsFillEllipse($Buffer, $iXBall, $iYBall, $BallWidth, $BallHeight, $hBrush1)
    _GDIPlus_GraphicsDrawImageRect($hGraphic, $hBitmap, 0, 0, $GUIWidth, $GUIHeight)
    $iXBall += $StepXBall
    $iYBall += $StepYBall
    Switch $iXBall
    Case $iXPad1 + $PadWidth1 - 5 To $iXPad1 + $PadWidth1
    If $iYBall >= $iYPad1 - $BallHeight / 2 And $iYBall <= $iYPad1 + $PadHeight1 + $BallHeight / 2 Then $StepXBall = $StepXBall * - 1

    [autoit]



    Case $iXPad2 - $PadWidth2 To $iXPad2 - $PadWidth2 + 5
    If $iYBall >= $iYPad2 - $BallHeight / 2 And $iYBall <= $iYPad2 + $PadHeight2 + $BallHeight / 2 Then $StepXBall = $StepXBall * - 1

    EndSwitch
    If $iYBall >= $GUIHeight - $BallHeight Then $StepYBall = $StepYBall * - 1
    If $iYBall <= 0 Then $StepYBall = $StepYBall * - 1
    If $iXBall <= 0 Then
    $Score2 += 1
    WinSetTitle($hWnd, "", "Player 1: " & $Score1 & " | Player 2: " & $Score2)
    Sleep(1000)
    $iXBall = $GUIWidth / 2 - $BallWidth / 2
    $iYBall = Random($BallHeight + 10, $GUIHeight - $BallHeight - 10)
    $iYPad1 = $GUIHeight / 2 - $PadHeight1 / 2
    $iYPad2 = $GUIHeight / 2 - $PadHeight2 / 2
    If Random(1, 2, 1) = 1 Then
    $StepXBall = 5
    Else
    $StepXBall = -5
    EndIf
    Do
    $StepYBall = Random(-5, 5, 1)
    Until Not $StepYBall = 0
    EndIf
    If $iXBall >= $GUIWidth - $BallWidth Then
    $Score1 += 1
    WinSetTitle($hWnd, "", "Player 1: " & $Score1 & " | Player 2: " & $Score2)
    Sleep(1000)
    $iXBall = $GUIWidth / 2 - $BallWidth / 2
    $iYBall = Random($BallHeight + 10, $GUIHeight - $BallHeight - 10)
    $iYPad1 = $GUIHeight / 2 - $PadHeight1 / 2
    $iYPad2 = $GUIHeight / 2 - $PadHeight2 / 2
    If Random(1, 2, 1) = 1 Then
    $StepXBall = 5
    Else
    $StepXBall = -5
    EndIf
    Do
    $StepYBall = Random(-5, 5, 1)
    Until Not $StepYBall = 0
    EndIf
    EndFunc ;==>_Draw

    [/autoit]
  • GDI+ Kometenschweif

    • Cartan12
    • 12. Mai 2010 um 21:08

    Ich bin auch nicht sehr bewandert in GDI+ (sprich: so gut wie null Erfahrung :( )
    Würd mich also auch mal interessieren, wie das funzt...

  • _SoundPause

    • Cartan12
    • 12. Mai 2010 um 21:05

    Das Problem ist, dass die Variablen innerhalb einer Function nicht für andere Funktionen gelten, außer sie wurden AUßERHALB der Funktion als Global deklariert, oder, wie bei meinem Script, übergeben.

  • GDI+ Kometenschweif

    • Cartan12
    • 12. Mai 2010 um 21:02

    Sorry, habs falsch rübergebracht...
    Sollte nen Scherz werden :rofl:

  • GDI+ Kometenschweif

    • Cartan12
    • 12. Mai 2010 um 20:59
    Zitat von clezZ

    Und zu den Berechnungen, du musst im Grunde nur das, was du bei _IsPressed() stehen hast, ohne das _IsPressed() schreiben^^

    [autoit]

    If 25 Then $iX -= $bewegung
    If 26 Then $iY -= $bewegung
    If 27 Then $iX += $bewegung
    If 28 Then $iY += $bewegung

    [/autoit]

    Passiert recht wenig so :rolleyes:

  • PrnAdmin.dll....Druckerstatus

    • Cartan12
    • 12. Mai 2010 um 20:55

    Ich hab ne Geschwindigkeit von (höchstens) 90 kbit/s und zwar mit Lan...
    Da kannste dir vorstellen, wo wir wohnen ^^

  • GDI+ Kometenschweif

    • Cartan12
    • 12. Mai 2010 um 20:52

    Bei Bewegung 100 sieht das dann so aus ^^

    Dateien

    test.JPG 22,07 kB – 0 Downloads
  • GDI+ Kometenschweif

    • Cartan12
    • 12. Mai 2010 um 20:47

    Wenn das mit der Geschwindigkeit Pong geworden wär bräuchte man ja für ein Spiel ca. 2 Tage (Hört auf, wenn einer der Spieler eingeschlafen ist ^^)

  • GDI+ Kometenschweif

    • Cartan12
    • 12. Mai 2010 um 20:43

    Man, ist der langsam :D
    (Kein Wunder das ich dachte, da passiert nichts. Hab nun mal keine Geduld...)

  • GDI+ Kometenschweif

    • Cartan12
    • 12. Mai 2010 um 20:40

    Passiert i-wie nichts...

  • Eingener messenger

    • Cartan12
    • 12. Mai 2010 um 20:39

    @Pinguin94: Lol, geiler Titel (musste mal sein) :rofl:

  • Win-Update neustart verhindern

    • Cartan12
    • 12. Mai 2010 um 20:36

    So, ist zwar nur ne 1 Zeilige Batch-Datei, aber ich hoffe, sie wird helfen...
    Ihr kennt das bestimmt auch: Ihr habt gerade Tausend Programme offen, auf einmal werdet ihr zum Essen gerufen. Ihr denkt euch nichts, als die Windows-Update meldung aufgeht und geht Essen, aber als ihr wieder vor'm PC sitzt fällt euch auf, das der PC wieder neugestartet hat. Schuld sind wiedermal die Automatischen Updates (Wollen sie den PC neustartet? Noch 15min bis automatisch ja ausgewählt wird :thumbdown: ). Das Scipt beendet die Neustart Meldung. Das geniale: Sie wird nur bis zu den nächsten Updates beendet, so dass die Funktion auch mal benutzt werden kann, wenn sie auch was nützt...

    Hoffe das war Hilfreich ;)

    MFG
    Cartan12

    Dateien

    stop neustart.rar 98 Byte – 342 Downloads
  • _SoundPause

    • Cartan12
    • 12. Mai 2010 um 20:02

    Oder einfach so:

    [autoit]

    #include <Sound.au3>
    $temp = sound()
    Sleep(1000)
    _Pause($temp)
    Sleep(1000)
    _Resume ($temp)
    Sleep(1000)

    [/autoit][autoit][/autoit][autoit][/autoit][autoit]

    func sound()
    $abspiel=_SoundOpen("C:\test.mp3")
    If @error = 2 Then
    MsgBox(0, "Fehler", "Die Datei existiert nicht.")
    Exit
    EndIf
    $playsound=_SoundPlay($abspiel, 0)
    Return $abspiel
    EndFunc

    [/autoit][autoit][/autoit][autoit]

    func _Pause($abspiel2)
    _SoundPause($abspiel2)
    EndFunc
    func _Resume($abspiel3)
    _SoundResume($abspiel3)
    endfunc

    [/autoit]
  • Ausgabe in CMD

    • Cartan12
    • 12. Mai 2010 um 19:52

    Schau dir mal die optionalen Parameter von run an.

    Zitat

    Funktion StdinWriteStdinWrite schreibt in den Konsolen-Standard-Eingabe-Stream eines Child-Prozesses, der normalerweise von Konsolen-Applikationen genutzt wird, um Benutzereingaben zu lesen, z.B. von der Tastatur. Während des Aufrufs von Run für den Child-Prozess, in den man schreiben möchte, muss der STD I/O Parameter den Wert von $Stdin_Child (1) enthalten, damit diese Funktion richtig arbeitet (siehe die Funktion Run).

    Zitat

    optional] Steuert verschiedene Optionen, die die Interaktion zwischen Parent- und Child-Prozess betreffen (STDIO).
    0x1 ($STDIN_CHILD) = Stellt ein Handle zum STDIN-Stream des Child-Fensters bereit
    0x2 ($STDOUT_CHILD) = Stellt ein Handle zum STDOUT-Stream des Child-Fensters bereit.
    0x4 ($STDERR_CHILD) = Stellt ein Handle zum STDERR-Stream des Child-Fensters bereit.
    0x8 ($STDERR_MERGED) = Stellt das selbe Handle für den STDOUT- und STDERR-Stream bereit (Setzt $STDOUT_CHILD und $STDERR_CHILD).
    0x10 ($STDIO_INHERIT_PARENT) = Stellt dem Child-Fenster das Handle zum STDIO-Stream des Parent-Fensters bereit. Kann nicht mit einem anderen STDIO-Flag kombiniert werden. Dieses Flag ist nur dann sinnvoll, wenn die Parent-Anwendung als Kommandozeilenapplikation kompiliert wurde.
    0x10000 ($RUN_CREATE_NEW_CONSOLE) = Der Child-Kommandozeilenprozess wird in einem eigenen Kommandozeilenfenster ausgeführt. Dieses Flag ist nur dann sinnvoll, wenn die Parent-Anwendung als Kommandozeilenapplikation kompiliert wurde.

    Alles anzeigen
  • eMail AutoIt.de

    • Cartan12
    • 12. Mai 2010 um 18:36
    Zitat von L3viathan

    Ich glaube teilweise wäre das alles andere als Werbung :rofl:

    Zitat von DjBlume

    Ich würde dass Serverauslastung nennen :rofl:

    Ich würds eher Angeberei nennen ^^

  • Ausgabe in CMD

    • Cartan12
    • 12. Mai 2010 um 18:31
    Zitat von clezZ

    ODER: cmd per run öffnen, und mit ControlSend() schreiben

    1. Unsicher
    2. Keine ID

Spenden

Jeder Euro hilft uns, Euch zu helfen.

Download

AutoIt Tutorial
AutoIt Buch
Onlinehilfe
AutoIt Entwickler
  1. Datenschutzerklärung
  2. Impressum
  3. Shoutbox-Archiv
Community-Software: WoltLab Suite™