Hej... Jag vet inte hur många gånger den här frågan har kommit upp... fick lite hjälp på chatten med din kod niklas!! och har just nu så här:bilder krockar
vill ha hjälp med en function som när label1 krockar med label2 ska label1 inte kunna gå mera åt det hållet....label2 kan var sten,träd och såna saker...och label1 är en gubbe man styr
Har hittat massa functioner men dom kan man gå igenom sakerna med.
hade en kod som Trash hade gjort åt mig men den är på gammla datorn som urkopplad.
/bj - hoppas på svarSv: bilder krockar
Om objekten är fyrkantiga så är det inget problem (jag visar bara principen, koden kan skrivas mycket snyggare):
Public Sub MoveRight()
If Label1.Left+Label1.Width >= Label2.Left Then
'Gå inte
Else
Label1.Left=Label1.Left + Steg
'...
End Sub
Men om du har andra former på objekten finns en hel del metoder.
Kolla i det här forumet så tror jag att du ser mina förslag någonstans.
/Niklas JanssonSv: bilder krockar
Sub MoveRight()
For i = 0 To baguy.Count - 1
If lblGubbe.left + lblGubbe.Width > baguy(i).left And lblGubbe.left < baguy(i).left + baguy(i).Width Then
If lblGubbe.Top + lblGubbe.Height > baguy(i).Top And lblGubbe.Top < baguy(i).Top + baguy(i).Height Then Exit Sub
End If
Next
lblGubbe.left = lblGubbe.left + 50
End Sub
Sub moveleft()
For i = 0 To baguy.Count - 1
If lblGubbe.left + lblGubbe.Width > baguy(i).left And lblGubbe.left < baguy(i).left + baguy(i).Width Then
If lblGubbe.Top + lblGubbe.Height > baguy(i).Top And lblGubbe.Top < baguy(i).Top + baguy(i).Height Then Exit Sub
End If
Next
lblGubbe.left = lblGubbe.left - 50
End Sub
men när man har gått på baguy som ligger till höger kan jag inte backa mot vänster...och samma sak med höger...
som du kanske ser så är moveleft och moveright exact likadana...har ändrat alla > och < och testat och haft mig..men får det inte att funka
/bj - hoppas på svar igen...
jag glömde säga:
men när jag går neråt och passerar hela labeln så kan jag gå till vänster.........