Quantcast
Channel: AutoIt v3 - General Help and Support
Viewing all articles
Browse latest Browse all 12506

_GDIPlus question

$
0
0
Okay, so I want to make this script do the function new1, 2, or 3 every time either one of the "players" hit a line alredy created. How can I make it check if it tries to create a new line where there alredy is a line?

HotKeySet("{ESC}", "Terminate")
HotKeySet("{DOWN}", "Down")
HotKeySet("{RIGHT}", "Right")
HotKeySet("{LEFT}", "Left")
HotKeySet("{UP}", "Up")
#include <GuiConstantsEx.au3>
#include <GDIPlus.au3>
#include <WindowsConstants.au3>
$hurtighet=5
$P1=0
$P2=0
$P3=0
Local $hGUI, $iARGB, $nWidth
#region meg
$startx=Random(1, @DesktopWidth, 1)
$starty=Random(1, @DesktopHeight, 1)
$iA=$startx-1
$iB=$starty-1
$iC=$startx
$iD=$starty
$last="vannrett"
$way="right"
#endregion
#region Random2
$startx=Random(1, @DesktopWidth, 1)
$starty=Random(1, @DesktopHeight, 1)
$iA2=$startx-1
$iB2=$starty-1
$iC2=$startx
$iD2=$starty
$last2="vannrett"
$count=0
$r=1
$time=0
#endregion
#region Random3
$startx3=Random(1, @DesktopWidth, 1)
$starty3=Random(1, @DesktopHeight, 1)
$iA3=$startx3-1
$iB3=$starty3-1
$iC3=$startx3
$iD3=$starty3
$last3="vannrett"
$count3=0
$r3=1
$time3=0
#endregion
#region Gui+Graphics
$hGUI=GUICreate("", @DesktopWidth, @DesktopHeight,  0, 0, $WS_POPUP, $WS_EX_TOPMOST)
GUISetState()
_GDIPlus_Startup()
$hGraphic=_GDIPlus_GraphicsCreateFromHWND($hGUI)
_GDIPlus_GraphicsClear($hGraphic, 0xFFFFFFFF)
$hPen = _GDIPlus_PenCreate(0x990000FF)
$hPen2 = _GDIPlus_PenCreate(0x9900FF00)
$hPen3 = _GDIPlus_PenCreate(0x99FF0000)
_GDIPlus_GraphicsDrawLine($hGraphic, $iA, $iB, $iC, $iD, $hPen)
#endregion
While 1
#region Utenfor
If $iA> @DesktopWidth Or $iA < 0 or $iB < 0 Or $iB > @DesktopHeight Then
new1()
EndIf
If $iA2> @DesktopWidth Or $iA2 < 0 or $iB2 < 0 Or $iB2 > @DesktopHeight Then
new2()
EndIf
If $iA3> @DesktopWidth Or $iA3 < 0 or $iB3 < 0 Or $iB3 > @DesktopHeight Then
new3()
EndIf
#endregion
#region Random2
If $count>$time Then
  $time=Random(50, 1500)
  If $last2="loddrett" Then
   $r=Random(1, 2, 1)
  EndIf
  If $last2="vannrett" Then
   $r=Random(3, 4, 1)
  EndIf
  $count=0
EndIf
If $r=1 Then
  $iB2+=1/$hurtighet
  $iD2+=1/$hurtighet
  $last2="vannrett"
EndIf
If $r=3 Then
  $iA2+=1/$hurtighet
  $iC2+=1/$hurtighet
  $last2="loddrett"
EndIf
If $r=4 Then
  $iA2-=1/$hurtighet
  $iC2-=1/$hurtighet
  $last2="loddrett"
EndIf
If $r=2 Then
  $iB2-=1/$hurtighet
  $iD2-=1/$hurtighet
  $last2="vannrett"
EndIf
$count+=1
#endregion
#region Random3
If $count3>$time3 Then
  $time3=Random(50, 1500)
  If $last3="loddrett" Then
   $r3=Random(1, 2, 1)
  EndIf
  If $last3="vannrett" Then
   $r3=Random(3, 4, 1)
  EndIf
  $count3=0
EndIf
If $r3=1 Then
  $iB3+=1/$hurtighet
  $iD3+=1/$hurtighet
  $last3="vannrett"
EndIf
If $r3=3 Then
  $iA3+=1/$hurtighet
  $iC3+=1/$hurtighet
  $last3="loddrett"
EndIf
If $r3=4 Then
  $iA3-=1/$hurtighet
  $iC3-=1/$hurtighet
  $last3="loddrett"
EndIf
If $r3=2 Then
  $iB3-=1/$hurtighet
  $iD3-=1/$hurtighet
  $last3="vannrett"
EndIf
$count3+=1
#endregion
#region Meg
If $way="down" then
  $iB+=1/$hurtighet
  $iD+=1/$hurtighet
EndIf
If $way="right" then
  $iA+=1/$hurtighet
  $iC+=1/$hurtighet
EndIf
If $way="left" then
  $iA-=1/$hurtighet
  $iC-=1/$hurtighet
EndIf
If $way="up" then
  $iB-=1/$hurtighet
  $iD-=1/$hurtighet
EndIf
#endregion
#region DrawLine
_GDIPlus_GraphicsDrawLine($hGraphic, $iA, $iB, $iC, $iD, $hPen)
_GDIPlus_GraphicsDrawLine($hGraphic, $iA2, $iB2, $iC2, $iD2, $hPen2)
_GDIPlus_GraphicsDrawLine($hGraphic, $iA3, $iB3, $iC3, $iD3, $hPen3)
#endregion
WEnd
#region Meg
Func Down()
If $last="vannrett" Then
  $way="down"
  $last="loddrett"
EndIf
EndFunc
Func Right()
If $last="loddrett" Then
  $way="right"
  $last="vannrett"
EndIf
EndFunc
Func Left()
If $last="loddrett" Then
  $way="left"
  $last="vannrett"
EndIf
EndFunc
Func Up()
If $last="vannrett" Then
  $way="up"
  $last="loddrett"
EndIf
EndFunc
#endregion
Func new1()
$startx=Random(1, @DesktopWidth, 1)
$starty=Random(1, @DesktopHeight, 1)
$iA=$startx-1
$iB=$starty-1
$iC=$startx
$iD=$starty
_GDIPlus_GraphicsClear($hGraphic, 0xFFFFFFFF)
$P1+=1
EndFunc
Func new2()
$startx=Random(1, @DesktopWidth, 1)
$starty=Random(1, @DesktopHeight, 1)
$iA2=$startx-1
$iB2=$starty-1
$iC2=$startx
$iD2=$starty
_GDIPlus_GraphicsClear($hGraphic, 0xFFFFFFFF)
$P2+=1
EndFunc
Func new3()
$startx3=Random(1, @DesktopWidth, 1)
$starty3=Random(1, @DesktopHeight, 1)
$iA3=$startx3-1
$iB3=$starty3-1
$iC3=$startx3
$iD3=$starty3
_GDIPlus_GraphicsClear($hGraphic, 0xFFFFFFFF)
$P3+=1
EndFunc
Func Terminate()
GUISetState(@SW_HIDE)
MsgBox(0, "Score:", "The score was:" & @CRLF & "Player 1: " & $P1 & " faults." & @CRLF & "Player 2: " & $P2 & " faults." & @CRLF & "Player 3: " & $P3 & " faults.")
Exit
EndFunc


Viewing all articles
Browse latest Browse all 12506

Trending Articles



<script src="https://jsc.adskeeper.com/r/s/rssing.com.1596347.js" async> </script>