Kirjautuminen

Haku

Tehtävät

Keskustelu: Ohjelmointikysymykset: VB6: Menosuunta (vb6)

petrinm [12.04.2004 12:10:00]

#

Miten saan Hemmon menemään eteenpäin, eli siihen suuntaan mihin se katsoo?

Option Explicit
Private Declare Function BitBlt Lib "gdi32" (ByVal hDestDC As Long, ByVal x As Long, ByVal y As Long, ByVal nWidth As Long, ByVal nHeight As Long, ByVal hSrcDC As Long, ByVal xSrc As Long, ByVal ySrc As Long, ByVal dwRop As Long) As Long
Dim kulma As Integer
Dim HemmoX As Integer, HemmoY As Integer

Private Sub Form_KeyDown(KeyCode As Integer, Shift As Integer)
If KeyCode = vbKeyLeft Then
    kulma = kulma - 1
ElseIf KeyCode = vbKeyRight Then
    kulma = kulma + 1
ElseIf KeyCode = vbKeyUp Then
    '???????????????????????????????????????????????
    '?????       Eteenpäin, mutta miten?       ?????
    '???????????????????????????????????????????????
End If

    Piirra kulma, HemmoX, HemmoY 'Piirretaan kuva

If kulma = "31" Then
    kulma = "0"
ElseIf kulma = "0" Then
    kulma = "31"
End If
End Sub

Sub Piirra(kul As Integer, x As Integer, y As Integer)
   Dim a As Long
   a = BitBlt(Form1.Picture1.hDC, x, y, 32, 32, Form1.kuva.hDC, kul * 32, 0, &HCC0020)
End Sub

rndprogy [12.04.2004 12:22:41]

#

Empä koodia jaksa laittaa mutta missä on kosinit ja sinit. Tee vaikka niin että jos "hemmo" menee eteenpäin ja vähän oikealle viistoon lisäät siihen oikealle meno suuntaan sini/kosini arvon ja vähennät toisen arvon eteen päin meno suunnasta.

peki [12.04.2004 12:31:44]

#

Katsoppa vaikka: https://www.ohjelmointiputka.net/keskustelu/4653-objectin-liikkuminen-painovoimattomassa-tilassa

petrinm [12.04.2004 12:36:47]

#

En saa kunnolla tota toimaa!

petrinm [12.04.2004 12:50:42]

#

Nyt sain toimimaan, mutta miten saan sen menemään enempään kuin kahdeksaan suuntaan?

petrinm [12.04.2004 12:55:51]

#

Sorry sain toimimaan!

Vastaus

Aihe on jo aika vanha, joten et voi enää vastata siihen.

Tietoa sivustosta