Hallo Community
In letzter Zeit spiele ich MW3 und wollte mir dafür ein kleines Script schreiben, welches einen perfekten Quickscope macht. An sich funktioniert alles, jedoch habe ich bemerkt, dass es ein Wenig schwer ist ohne Crosshair. Hier im Forum habe ich [Only registered and activated users can see links. Click Here To Register...] gefunden und habe dort den Code verwendet, um ein kleines Kreuz nach klicken einer Taste über allem auf dem Bildschirm anzuzeigen.
Das ganze funktioniert gut, nun habe ich auch noch eingebaut, dass er immer die negative Farbe von einem Pixel neben dem Crosshair nimmt. Dies funktioniert ebenfalls, jedoch wird durch das aktualisieren mein RAM bis auf 4 GB vollgemüllt mit Farbwerten, welche ich am liebsten löschen will. Jedoch kriege ich das nicht hin.
Nun zum Code:
Meine Funktion, welches das GUI erstellt (kopiert vom genannten Thread):
Meine Endlosschleife, welche die Keys sucht und wenn das Crosshair an ist die Farbe aktualisiert:
Ich weiss jetzt nicht, ob das mit dem _GDIPlus_PenDispose() usw. das Richtige ist, denn weder mit noch ohne dem schreibt er den RAM voll.
Ich hoffe ihr wisst wie ich das machen kann.
Freundliche Grüsse
subzeroowner
In letzter Zeit spiele ich MW3 und wollte mir dafür ein kleines Script schreiben, welches einen perfekten Quickscope macht. An sich funktioniert alles, jedoch habe ich bemerkt, dass es ein Wenig schwer ist ohne Crosshair. Hier im Forum habe ich [Only registered and activated users can see links. Click Here To Register...] gefunden und habe dort den Code verwendet, um ein kleines Kreuz nach klicken einer Taste über allem auf dem Bildschirm anzuzeigen.
Das ganze funktioniert gut, nun habe ich auch noch eingebaut, dass er immer die negative Farbe von einem Pixel neben dem Crosshair nimmt. Dies funktioniert ebenfalls, jedoch wird durch das aktualisieren mein RAM bis auf 4 GB vollgemüllt mit Farbwerten, welche ich am liebsten löschen will. Jedoch kriege ich das nicht hin.
Nun zum Code:
Meine Funktion, welches das GUI erstellt (kopiert vom genannten Thread):
PHP Code:
Func _Crosshair()
If $Crosshair = True Then
$hDummy = GUICreate("")
$hGUI = GUICreate("", @DesktopWidth, @DesktopHeight, 0, 0, $WS_POPUP, BitOR($WS_EX_LAYERED, $WS_EX_TOPMOST,$WS_EX_TRANSPARENT),$hDummy)
GUISetBkColor(0xABCDEF, $hGUI)
_WinAPI_SetLayeredWindowAttributes($hGUI, 0xABCDEF, 255)
GUISetState()
Else
_GDIPlus_GraphicsDispose($hGraphics)
_GDIPlus_BitmapDispose($hBitmap)
_GDIPlus_PenDispose($hPen)
GUIDelete($hGUI)
EndIf
EndFunc
PHP Code:
While 1
If _IsPressed($keyPause, $dll) Then
_TogglePause()
EndIf
If _IsPressed($keyExit, $dll) Then
_Terminate()
EndIf
If _IsPressed($qsHotkey, $dll) Then
_Quickscope()
EndIf
If _IsPressed($chHotkey, $dll) Then
$Crosshair = Not $Crosshair
Sleep(200)
_Crosshair()
EndIf
If $Crosshair = True Then
_GDIPlus_GraphicsDispose($hGraphics)
_GDIPlus_BitmapDispose($hBitmap)
_GDIPlus_PenDispose($hPen)
$hGraphics = _GDIPlus_GraphicsCreateFromHWND($hGUI)
$hBitmap = _GDIPlus_BitmapCreateFromGraphics(@DesktopWidth, @DesktopHeight, $hGraphics)
$hBackBuffer = _GDIPlus_ImageGetGraphicsContext($hBitmap)
$hPen = _GDIPlus_PenCreate("0x" & Hex(_InvertColor(PixelGetColor(@DesktopWidth/2 - 2, @DesktopHeight/2 - 2)), 8),2)
_GDIPlus_GraphicsDrawLine($hGraphics, $wedith-10, $height, $wedith+10, $height, $hPen)
_GDIPlus_GraphicsDrawLine($hGraphics, $wedith, $height-10, $wedith, $height+10, $hPen)
_GDIPlus_GraphicsDrawImage($hGraphics, $hBitmap, $wedith, $height)
EndIf
WEnd
Ich hoffe ihr wisst wie ich das machen kann.
Freundliche Grüsse
subzeroowner