Problem mit Kollisionen

  • Das Skript ist nicht lauffähig und die Anhänge fehlen.

    Das macht die Sache nicht einfacher....


    Gruß,
    UEZ

    Auch am Arsch geht ein Weg vorbei...

    ¯\_(ツ)_/¯

  • minx, das ist ein AutoIt-Forum! :evil:

    Code
    Kollisionsprobleme <> nicht lauffähig


    :P

    Nein, was damit gemeint ist... Es gibt grundsätzlich 2 Arten von Fehlern beim Programmieren:

    • Syntaxfehler
    • Logikfehler


    Solange dir AutoIt keinen Fehler auswirft, handelt es sich um einen Logikfehler.

    [autoit]


    While True
    WEnd
    MsgBox(0, "", "Nachricht!")

    [/autoit]


    Das ist ein Logikfehler, denn die MsgBox wird niemals aufgerufen.

    [autoit]


    EmEsGeBox(0, "", "Nachricht! ;)")

    [/autoit]


    DAS ist ein Syntaxfehler, da die Funktion EmEsGeBox nicht vorhanden ist.^^

    Du gibst an, dass dein Skript einen Logikfehler hat (Da die Kollision nicht funktioniert).
    UEZ meinte jedoch, dass ein Syntaxfehler vorliegt, daher das Skript sich garnicht erst ausführen lässt.

    lg

  • Das bekomme ich, wenn ich dein Skript starte:

    Und wie gesagt, fehlen die gesamten Bilder. Wie sollen wir dir Helfen, wenn wir nichts sehen können. Ein bisschen mehr Mühe solltest du dir schon geben, ansonsten wird dir nicht gut geholfen.

    Gruß,
    UEZ

    Auch am Arsch geht ein Weg vorbei...

    ¯\_(ツ)_/¯

  • Du gibst wirklich nur das nötigste an Information raus :rolleyes: ich persönlich will dir jetzt nicht unbedingt alles aus der Nase ziehen.
    Ich denke als erstes solltest du dir mal den Teil ansehen in dem du die Kollision bereitstellst und dir Gedanken machen WIESO es nicht klappt.
    Bisher beschränken sich deine Informationen auf 2 Linien in denen du im Grunde genommen den Titel 1:1 wiedergibst: es klappt einfach nicht und du willst dir keine Gedanken machen wieso.
    Aus dem Zitat von UEZ schliesse ich ausserdem, dass die Funktion _end() aufgerufen wird, im Code aber nicht definiert wird.
    Gib doch bitte mal einen ("anständigen") kompletten Problembericht :rolleyes:

    Bild1: Ich beim debuggen

  • Hier einmal das lauffähige Skript:

    Spoiler anzeigen
    [autoit]

    #include <ButtonConstants.au3>
    #include <GUIConstantsEx.au3>
    #include <ProgressConstants.au3>
    #include <StaticConstants.au3>
    #include <WindowsConstants.au3>
    #include <GdiPlus.au3>
    #include <Misc.au3>
    #include <file.au3>

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

    OnAutoItExitRegister("_end")

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

    Global $Baum, $Eisen, $Laden, $weg, $x, $y

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

    $x = 0
    $y = 0
    $f1x = 0
    $f1y = 40

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

    $Ep = IniRead(@ScriptDir & "\INI\Data.ini", "DATA", "EP", "Not Found")
    $Leben = IniRead(@ScriptDir & "\INI\Data.ini", "DATA", "Leben", "Not Found")
    $Geld = IniRead(@ScriptDir & "\INI\Data.ini", "DATA", "Geld", "Not Found")
    $Arbeit = IniRead(@ScriptDir & "\INI\Data.ini", "DATA", "Arbeit", "Not Found")

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

    $Form1 = GUICreate("X-The Game", 1123, 633, 185, 123, $WS_POPUP)
    $Progress1 = GUICtrlCreateProgress(904, 60, 209, 17)
    GUICtrlSetData($Progress1, $Leben)
    $Leben_l = GUICtrlCreateLabel("Leben", 976, 80, 34, 17)
    $Ep_l = GUICtrlCreateLabel("EP:", 976, 120, 34, 17)
    $Ep_erg = GUICtrlCreateLabel("", 1020, 120, 34, 17)
    GUICtrlSetData($Ep_erg, $Ep)
    $Geld_l = GUICtrlCreateLabel("Geld:", 976, 180, 34, 17)
    $Geld_erg = GUICtrlCreateLabel("", 1020, 180, 34, 17)
    GUICtrlSetData($Geld_erg, $Geld)
    $arbeit_l = GUICtrlCreateLabel("Arbeit:", 976, 240, 34, 17)
    $Arbeit_erg = GUICtrlCreateLabel("", 1020, 240, 120, 17)
    GUICtrlSetData($Arbeit_erg, $Arbeit)
    $Button1 = GUICtrlCreateButton("Speichern", 920, 512, 185, 33)
    GUISetState(@SW_SHOW)

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

    Func _Save()
    IniWrite(@ScriptDir & "\INI\Data.Ini", "DATA", "Leben", "" & GUICtrlRead($Progress1) & "")
    IniWrite(@ScriptDir & "\INI\Data.Ini", "DATA", "EP", "" & GUICtrlRead($Ep_erg) & "")
    IniWrite(@ScriptDir & "\INI\Data.Ini", "DATA", "Geld", "" & GUICtrlRead($Geld_erg) & "")
    IniWrite(@ScriptDir & "\INI\Data.Ini", "DATA", "Arbeit", "" & GUICtrlRead($Arbeit_erg) & "")
    EndFunc ;==>_Save
    ;=====================GDIPlus===========================================;

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

    _GDIPlus_Startup()

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

    If _GDIPlus_Startup() = 1 Then
    _LoadMap()
    EndIf

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

    $Player = _GDIPlus_ImageLoadFromFile(@ScriptDir & "\Pics\NPC\Skin.gif")
    $bk = _GDIPlus_ImageLoadFromFile(@ScriptDir & "\Pics\Map\Map.gif")
    $height = _GDIPlus_ImageGetHeight($Player)
    $widht = _GDIPlus_ImageGetWidth($Player)
    $verhaelnis = $height / $widht
    $btn_exit = _GDIPlus_ImageLoadFromFile(@ScriptDir & "\Pics\Buttons\Schließen.gif")
    $btn_arbeit = _GDIPlus_ImageLoadFromFile(@ScriptDir & "\Pics\Buttons\Arbeit.gif")
    $btn_world = _GDIPlus_ImageLoadFromFile(@ScriptDir & "\Pics\Buttons\Erde.gif")
    $btn_bk = _GDIPlus_ImageLoadFromFile(@ScriptDir & "\Pics\Buttons\Feld.gif")

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

    $graphic = _GDIPlus_GraphicsCreateFromHWND($Form1)
    $bitmap = _GDIPlus_BitmapCreateFromGraphics(900, 633, $graphic)
    $buffer = _GDIPlus_ImageGetGraphicsContext($bitmap)

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

    ;Map Load Bar anfang

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

    Func _LoadMap()

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

    Dim $Feld[10] = ["Eisen", "Laden", "Laden", "Eisen", "Eisen", "Eisen", "Bauer", "Ritter", "Holzfäller", "Eindringling"]
    IniWrite(@ScriptDir & "\INI\Data.ini", "DATA", "Map", $Feld[Random(0, 9, 1)])

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

    If IniRead(@ScriptDir & "\INI\Data.ini", "DATA", "Map", "Baum") = "Baum" Then
    _Baum()
    EndIf

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

    If IniRead(@ScriptDir & "\INI\Data.ini", "DATA", "Map", "Laden") = "Laden" Then
    _Laden()
    EndIf

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

    If IniRead(@ScriptDir & "\INI\Data.ini", "DATA", "Map", "Laden") = "Laden" Then
    _Baum()
    EndIf

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

    If IniRead(@ScriptDir & "\INI\Data.ini", "DATA", "Map", "Weg") = "Weg" Then
    _Weg()
    EndIf

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

    If IniRead(@ScriptDir & "\INI\Data.ini", "DATA", "Map", "Weg") = "Weg" Then
    _Baum()
    EndIf

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

    If IniRead(@ScriptDir & "\INI\Data.ini", "DATA", "Map", "Eisen") = "Eisen" Then
    _Eisen()
    EndIf

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

    If IniRead(@ScriptDir & "\INI\Data.ini", "DATA", "Map", "Eisen") = "Eisen" Then
    _Baum()
    EndIf
    EndFunc ;==>_LoadMap

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

    Func _Baum()
    _Weg()
    $Baum = _GDIPlus_ImageLoadFromFile(@ScriptDir & "\Pics\Terrain\Baum.gif")
    EndFunc ;==>_Baum
    Func _Laden()
    $Laden = _GDIPlus_ImageLoadFromFile(@ScriptDir & "\Pics\Terrain\Haus3.gif")
    EndFunc ;==>_Laden
    Func _Weg()
    $weg = _GDIPlus_ImageLoadFromFile(@ScriptDir & "\Pics\Terrain\Stein3.gif")
    EndFunc ;==>_Weg
    Func _Eisen()
    $Eisen = _GDIPlus_ImageLoadFromFile(@ScriptDir & "\Pics\Terrain\Eisen.gif")
    EndFunc ;==>_Eisen

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

    ;Map Load Bar ende

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

    ;Arbeit Funktion Anfang
    Func _Arbeit()

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

    EndFunc ;==>_Arbeit
    ;Arbeit Funktion ende

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

    While 1
    $mouse = GUIGetCursorInfo()
    ;=================Button1=================================
    If IsArray($mouse) Then
    If $mouse[0] > 840 And $mouse[1] < 20 And _IsPressed(01) Then
    Exit
    EndIf
    EndIf
    ;=======================Button2==============================
    If IsArray($mouse) Then
    If $mouse[0] > 780 And $mouse[1] < 20 And _IsPressed(01) Then
    _Arbeit()
    EndIf
    EndIf
    ;========================Button3=============================
    If IsArray($mouse) Then
    If $mouse[0] > 720 And $mouse[1] < 20 And _IsPressed(01) Then
    _LoadMap()
    EndIf
    EndIf
    ;=======================Ende Buttons=========================
    $nMsg = GUIGetMsg()
    Switch $nMsg
    Case $GUI_EVENT_CLOSE
    Exit
    Case $Button1
    _Save()
    EndSwitch
    Select
    Case _IsPressed(25) And Not $x <= 0
    $x -= 40

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

    ;Anfang Kolisionen
    If $x = 40 And $y = 40 Then
    $x = -40 + 40
    EndIf

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

    If $x = 40 And $y = 40 Then
    $y = -40 + 40
    EndIf

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

    If $x = 40 And $y = 120 Then
    $x = -40 + 80
    EndIf

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

    If $x = 40 And $y = 120 Then
    $y = -40 + 80
    EndIf

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

    If $x = 40 And $y = 480 Then
    $x = -40 + 40
    EndIf

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

    If $x = 40 And $y = 480 Then
    $y = -40 + 40
    EndIf

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

    If $x = 40 And $y = 160 Then
    $x = -40 + 40
    EndIf

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

    If $x = 40 And $y = 160 Then
    $y = -40 + 40
    EndIf

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

    If $x = 120 And $y = 240 Then
    $y = -40 + 40
    EndIf

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

    If $x = 120 And $y = 240 Then
    $x = -40 + 40
    EndIf

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

    If $x = 440 And $y = 280 Then
    $x = -40 + 40
    EndIf

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

    If $x = 440 And $y = 280 Then
    $y = -40 + 40
    EndIf

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

    If $x = 240 And $y = 320 Then
    $y = -40 + 40
    EndIf
    ;Ende Colisionen

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

    Case _IsPressed(26) And Not $y <= 0
    $y -= 40

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

    ;Anfang Kolisionen
    If $x = 40 And $y = 40 Then
    $x = -40 + 40
    EndIf

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

    If $x = 40 And $y = 40 Then
    $y = -40 + 40
    EndIf

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

    If $x = 40 And $y = 120 Then
    $x = -40 + 40
    EndIf

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

    If $x = 40 And $y = 120 Then
    $y = -40 + 40
    EndIf

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

    If $x = 40 And $y = 480 Then
    $x = -40 + 40
    EndIf

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

    If $x = 40 And $y = 480 Then
    $y = -40 + 40
    EndIf

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

    If $x = 40 And $y = 160 Then
    $x = -40 + 40
    EndIf

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

    If $x = 40 And $y = 160 Then
    $y = -40 + 40
    EndIf

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

    If $x = 120 And $y = 240 Then
    $y = -40 + 40
    EndIf

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

    If $x = 120 And $y = 240 Then
    $x = -40 + 40
    EndIf

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

    If $x = 440 And $y = 280 Then
    $x = -40 + 40
    EndIf

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

    If $x = 440 And $y = 280 Then
    $y = -40 + 40
    EndIf

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

    If $x = 240 And $y = 320 Then
    $y = -40 + 40
    EndIf
    ;Ende Colisionen

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

    Case _IsPressed(27) And $x <= 833
    $x += 40

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

    ;Anfang Kolisionen
    If $x = 40 And $y = 40 Then
    $x = -40 + 40
    EndIf

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

    If $x = 40 And $y = 40 Then
    $y = -40 + 40
    EndIf

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

    If $x = 40 And $y = 120 Then
    $x = -40 + 40
    EndIf

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

    If $x = 40 And $y = 120 Then
    $y = -40 + 40
    EndIf

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

    If $x = 40 And $y = 480 Then
    $x = -40 + 40
    EndIf

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

    If $x = 40 And $y = 480 Then
    $y = -40 + 40
    EndIf

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

    If $x = 40 And $y = 160 Then
    $x = -40 + 40
    EndIf

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

    If $x = 40 And $y = 160 Then
    $y = -40 + 40
    EndIf

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

    If $x = 120 And $y = 240 Then
    $y = -40 + 40
    EndIf

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

    If $x = 120 And $y = 240 Then
    $x = -40 + 40
    EndIf

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

    If $x = 440 And $y = 280 Then
    $x = -40 + 40
    EndIf

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

    If $x = 440 And $y = 280 Then
    $y = -40 + 40
    EndIf

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

    If $x = 240 And $y = 320 Then
    $y = -40 + 40
    EndIf
    ;Ende Colisionen

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

    Case _IsPressed(28) And $y <= 540
    $y += 40

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

    ;Anfang Kolisionen
    If $x = 40 And $y = 40 Then
    $x = -40 + 40
    EndIf

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

    If $x = 40 And $y = 40 Then
    $y = -40 + 40
    EndIf

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

    If $x = 40 And $y = 120 Then
    $x = -40 + 40
    EndIf

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

    If $x = 40 And $y = 120 Then
    $y = -40 + 40
    EndIf

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

    If $x = 40 And $y = 480 Then
    $x = -40 + 40
    EndIf

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

    If $x = 40 And $y = 480 Then
    $y = -40 + 40
    EndIf

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

    If $x = 40 And $y = 160 Then
    $x = -40 + 40
    EndIf

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

    If $x = 40 And $y = 160 Then
    $y = -40 + 40
    EndIf

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

    If $x = 120 And $y = 240 Then
    $y = -40 + 40
    EndIf

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

    If $x = 120 And $y = 240 Then
    $x = -40 + 40
    EndIf

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

    If $x = 440 And $y = 280 Then
    $x = -40 + 40
    EndIf

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

    If $x = 440 And $y = 280 Then
    $y = -40 + 40
    EndIf

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

    If $x = 240 And $y = 320 Then
    $y = -40 + 40
    EndIf
    ;Ende Colisionen

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

    EndSelect

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

    _GDIPlus_GraphicsDrawImageRect($buffer, $bk, 0, 0, 900, 633)
    _GDIPlus_GraphicsDrawImageRect($buffer, $btn_exit, 860, 0, 40, 40)
    _GDIPlus_GraphicsDrawImageRect($buffer, $btn_arbeit, 800, 0, 40, 40)
    _GDIPlus_GraphicsDrawImageRect($buffer, $btn_bk, 740, 0, 40, 40)
    _GDIPlus_GraphicsDrawImageRect($buffer, $btn_world, 740, 0, 40, 40)
    ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
    _GDIPlus_GraphicsDrawImageRect($buffer, $weg, 0, 0, 40, 40)
    _GDIPlus_GraphicsDrawImageRect($buffer, $weg, 40, 0, 40, 40)
    _GDIPlus_GraphicsDrawImageRect($buffer, $weg, 80, 0, 40, 40)
    _GDIPlus_GraphicsDrawImageRect($buffer, $weg, 80, 40, 40, 40)
    _GDIPlus_GraphicsDrawImageRect($buffer, $weg, 80, 80, 40, 40)
    _GDIPlus_GraphicsDrawImageRect($buffer, $weg, 80, 120, 40, 40)
    _GDIPlus_GraphicsDrawImageRect($buffer, $weg, 80, 160, 40, 40)
    _GDIPlus_GraphicsDrawImageRect($buffer, $weg, 80, 200, 40, 40)
    _GDIPlus_GraphicsDrawImageRect($buffer, $weg, 80, 240, 40, 40)
    _GDIPlus_GraphicsDrawImageRect($buffer, $weg, 80, 280, 40, 40)
    _GDIPlus_GraphicsDrawImageRect($buffer, $weg, 80, 320, 40, 40)
    _GDIPlus_GraphicsDrawImageRect($buffer, $weg, 80, 360, 40, 40)
    _GDIPlus_GraphicsDrawImageRect($buffer, $weg, 80, 400, 40, 40)
    _GDIPlus_GraphicsDrawImageRect($buffer, $weg, 80, 440, 40, 40)
    _GDIPlus_GraphicsDrawImageRect($buffer, $weg, 80, 480, 40, 40)
    _GDIPlus_GraphicsDrawImageRect($buffer, $weg, 80, 520, 40, 40)
    _GDIPlus_GraphicsDrawImageRect($buffer, $weg, 80, 560, 40, 40)
    _GDIPlus_GraphicsDrawImageRect($buffer, $weg, 80, 600, 40, 40)
    ;Rects Anfang
    _GDIPlus_GraphicsDrawImageRect($buffer, $weg, 120, 80, 40, 40)
    _GDIPlus_GraphicsDrawImageRect($buffer, $weg, 160, 80, 40, 40)
    _GDIPlus_GraphicsDrawImageRect($buffer, $weg, 200, 80, 40, 40)
    _GDIPlus_GraphicsDrawImageRect($buffer, $weg, 240, 80, 40, 40)
    _GDIPlus_GraphicsDrawImageRect($buffer, $weg, 280, 80, 40, 40)
    _GDIPlus_GraphicsDrawImageRect($buffer, $weg, 280, 120, 40, 40)
    _GDIPlus_GraphicsDrawImageRect($buffer, $weg, 280, 160, 40, 40)
    _GDIPlus_GraphicsDrawImageRect($buffer, $weg, 280, 200, 40, 40)
    _GDIPlus_GraphicsDrawImageRect($buffer, $weg, 320, 160, 40, 40)
    _GDIPlus_GraphicsDrawImageRect($buffer, $weg, 360, 160, 40, 40)
    _GDIPlus_GraphicsDrawImageRect($buffer, $weg, 400, 160, 40, 40)
    _GDIPlus_GraphicsDrawImageRect($buffer, $weg, 440, 160, 40, 40)
    _GDIPlus_GraphicsDrawImageRect($buffer, $weg, 480, 160, 40, 40)
    _GDIPlus_GraphicsDrawImageRect($buffer, $weg, 520, 160, 40, 40)
    _GDIPlus_GraphicsDrawImageRect($buffer, $weg, 560, 160, 40, 40)
    _GDIPlus_GraphicsDrawImageRect($buffer, $weg, 600, 160, 40, 40)
    _GDIPlus_GraphicsDrawImageRect($buffer, $weg, 640, 160, 40, 40)
    _GDIPlus_GraphicsDrawImageRect($buffer, $weg, 680, 160, 40, 40)
    _GDIPlus_GraphicsDrawImageRect($buffer, $weg, 720, 160, 40, 40)
    _GDIPlus_GraphicsDrawImageRect($buffer, $weg, 760, 160, 40, 40)
    _GDIPlus_GraphicsDrawImageRect($buffer, $weg, 800, 160, 40, 40)
    _GDIPlus_GraphicsDrawImageRect($buffer, $weg, 840, 160, 40, 40)
    _GDIPlus_GraphicsDrawImageRect($buffer, $weg, 880, 160, 40, 40)
    ;Rechts Ende
    ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
    _GDIPlus_GraphicsDrawImageRect($buffer, $Player, $x, $y, 35, 35 * $verhaelnis)
    ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
    _GDIPlus_GraphicsDrawImageRect($buffer, $Baum, 40, 40, 40, 40)
    _GDIPlus_GraphicsDrawImageRect($buffer, $Baum, 40, 120, 40, 40)
    _GDIPlus_GraphicsDrawImageRect($buffer, $Baum, 40, 480, 40, 40)
    _GDIPlus_GraphicsDrawImageRect($buffer, $Baum, 40, 160, 40, 40);5
    _GDIPlus_GraphicsDrawImageRect($buffer, $Baum, 120, 240, 40, 40)
    _GDIPlus_GraphicsDrawImageRect($buffer, $Baum, 440, 280, 40, 40)
    _GDIPlus_GraphicsDrawImageRect($buffer, $Baum, 240, 320, 40, 40);
    ;_GDIPLus_GraphicsDrawImageRect($buffer, $Baum,160,360,40,40);10
    ;_GDIPLus_GraphicsDrawImageRect($buffer, $Baum,200,400,40,40)
    ;_GDIPLus_GraphicsDrawImageRect($buffer, $Baum,280,440,40,40)
    ;_GDIPLus_GraphicsDrawImageRect($buffer, $Baum,400,40,40,40)
    ;_GDIPLus_GraphicsDrawImageRect($buffer, $Baum,320,80,40,40)
    ;_GDIPLus_GraphicsDrawImageRect($buffer, $Baum,360,40,40,40);15
    ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
    _GDIPlus_GraphicsDrawImageRect($buffer, $Eisen, 40, 260, 40, 40)
    _GDIPlus_GraphicsDrawImageRect($buffer, $Eisen, 400, 260, 40, 40)
    _GDIPlus_GraphicsDrawImageRect($buffer, $Eisen, 40, 360, 40, 40)
    _GDIPlus_GraphicsDrawImageRect($buffer, $Eisen, 160, 360, 40, 40)
    ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
    _GDIPlus_GraphicsDrawImageRect($buffer, $Laden, 260, 230, 80, 80)
    ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
    _GDIPlus_GraphicsDrawImage($graphic, $bitmap, 0, 0)
    WEnd

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

    Func _end()
    _GDIPlus_GraphicsDispose($graphic)
    _GDIPlus_GraphicsDispose($buffer)
    _GDIPlus_BitmapDispose($bitmap)
    _GDIPlus_ImageDispose($Player)
    _GDIPlus_ImageDispose($Baum)
    _GDIPlus_ImageDispose($weg)
    _GDIPlus_ImageDispose($Eisen)
    _GDIPlus_ImageDispose($Laden)
    _GDIPlus_ImageDispose($btn_exit)
    _GDIPlus_ImageDispose($btn_arbeit)
    _GDIPlus_ImageDispose($btn_world)
    _GDIPlus_ImageDispose($btn_bk)
    _GDIPlus_ImageDispose($bk)
    _GDIPlus_Shutdown()
    EndFunc ;==>_end

    [/autoit]

    Um das eigentliche Problem kann ich mich nicht kümmern da mein Display nicht alle Inalte darstellen kann. Im Anhang Skript und Bilder zusammen.

    mfg autoBert