⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 dinput.bas

📁 vb6的一个RPG源码
💻 BAS
📖 第 1 页 / 共 2 页
字号:
            For IntCount = 0 To 24
                If UserInvent(IntCount).Index = TempIndex Or UserInvent(IntCount).Index = -1 Then
                UserInvent(IntCount).Index = TempIndex
                UserInvent(IntCount).GrhIndex = DaItems(TempIndex).GrhIndex
                UserInvent(IntCount).Amount = UserInvent(IntCount).Amount + 1
                UserCash = UserCash - TempCost
                Exit Sub
                End If
            Next
            End If
        End If
        If TradeNPC = 2 And StopTalk And DDraw.PointerY = 70 Then
        TradeNPC = 0
        SayNPC = False
        StopTalk = False
        CanMove = True
        If Facing = East Then NPCz(DudeCoord.X + 1, DudeCoord.Y).CanMove = True
        If Facing = West Then NPCz(DudeCoord.X - 1, DudeCoord.Y).CanMove = True
        If Facing = South Then NPCz(DudeCoord.X, DudeCoord.Y + 1).CanMove = True
        If Facing = North Then NPCz(DudeCoord.X, DudeCoord.Y - 1).CanMove = True
        End If
        If TradeNPC = 3 And StopTalk And DDraw.PointerY = 70 Then
        TradeNPC = 0
        SayNPC = False
        StopTalk = False
        CanMove = True
        If Facing = East Then NPCz(DudeCoord.X + 1, DudeCoord.Y).CanMove = True
        If Facing = West Then NPCz(DudeCoord.X - 1, DudeCoord.Y).CanMove = True
        If Facing = South Then NPCz(DudeCoord.X, DudeCoord.Y + 1).CanMove = True
        If Facing = North Then NPCz(DudeCoord.X, DudeCoord.Y - 1).CanMove = True
        End If
        If TradeNPC = 1 And StopTalk And DDraw.PointerX = 515 Then
        DDraw.PointerX = 275
        SayNPC = False
        StopTalk = False
        TradeNPC = 0
        CanMove = True
        If Facing = East Then NPCz(DudeCoord.X + 1, DudeCoord.Y).CanMove = True
        If Facing = West Then NPCz(DudeCoord.X - 1, DudeCoord.Y).CanMove = True
        If Facing = South Then NPCz(DudeCoord.X, DudeCoord.Y + 1).CanMove = True
        If Facing = North Then NPCz(DudeCoord.X, DudeCoord.Y - 1).CanMove = True
        End If
        If TradeNPC = 1 And StopTalk And DDraw.PointerX = 275 Then
        SayNPC = False
        StopTalk = False
        SalePointer = 1
        TradeNPC = 2
        DDraw.PointerX = 135
        DDraw.PointerY = 113
        End If
        If TradeNPC = 1 And StopTalk And DDraw.PointerX = 395 Then
        SayNPC = False
        StopTalk = False
        SalePointer = 1
        SaleLoop = 0
        TradeNPC = 3
        DDraw.PointerX = 135
        DDraw.PointerY = 113
        End If
        If SayNPC = False And StopTalk And Walking = 0 And TradeNPC = 0 And DispInventMenu = False Then
            StopTalk = False
            NPC.CheckNPC
        If DDraw.PointerY = 70 Then DDraw.PointerX = 275
        End If
        If SayNPC And StopTalk And TradeNPC = 0 Then
            StopTalk = False
            If NPCNext <> "" Then
            NPCTalk = NPCNext
            NPCFirst = False
            Else
            CanMove = True
            NPCFirst = True
            SayNPC = False
            Walking = 0
            If Facing = East Then NPCz(DudeCoord.X + 1, DudeCoord.Y).CanMove = True
            If Facing = West Then NPCz(DudeCoord.X - 1, DudeCoord.Y).CanMove = True
            If Facing = South Then NPCz(DudeCoord.X, DudeCoord.Y + 1).CanMove = True
            If Facing = North Then NPCz(DudeCoord.X, DudeCoord.Y - 1).CanMove = True
            Exit Sub
            End If
        End If
    Else: StopTalk = True
    End If

    If aKeys(DIK_RIGHT) Then
        If TradeNPC = 1 And StopTradeR And Walking = 0 Then
            StopTradeR = False
            If DDraw.PointerX = 515 Then DDraw.PointerX = 155
            DDraw.PointerX = DDraw.PointerX + 120
        End If
    Else: StopTradeR = True
    End If
    If aKeys(DIK_LEFT) Then
        If TradeNPC = 1 And StopTradeL And Walking = 0 Then
            StopTradeL = False
            If DDraw.PointerX = 275 Then DDraw.PointerX = 635
            DDraw.PointerX = DDraw.PointerX - 120
        End If
    Else: StopTradeL = True
    End If
    If aKeys(DIK_DOWN) Then
        If TradeNPC = 2 And StopTradeD And Walking = 0 Then
            StopTradeD = False
            If DDraw.PointerY = 70 Then
            DDraw.PointerY = 88
            SalePointer = 0
            End If
            If DDraw.PointerY = 338 Then
            DDraw.PointerX = 360
            DDraw.PointerY = 45
            Else:
            DDraw.PointerX = 135
            End If
            DDraw.PointerY = DDraw.PointerY + 25
            SalePointer = SalePointer + 1
        End If
        If TradeNPC = 3 And StopTradeD And Walking = 0 Then
            StopTradeD = False
            If DDraw.PointerY = 70 Then
            DDraw.PointerY = 88
            SalePointer = DDraw.SaleLoop
            End If
            If DDraw.PointerY = 338 Then
                If SaleLoop < 15 Then
                DDraw.SaleLoop = DDraw.SaleLoop + 1
                SalePointer = SalePointer + 1
                Exit Sub
                End If
            End If
            If DDraw.PointerY = 338 Then
            DDraw.PointerX = 360
            DDraw.PointerY = 45
            Else:
            DDraw.PointerX = 135
            End If
            DDraw.PointerY = DDraw.PointerY + 25
            SalePointer = SalePointer + 1
        End If
        If DispInventMenu = True And StopTradeD And Walking = 0 Then
        StopTradeD = False
            If DDraw.PointerY = 70 Then
            DDraw.PointerY = 88
            SalePointer = DDraw.SaleLoop
            End If
            If DDraw.PointerY = 338 Then
                If SaleLoop < 15 Then
                DDraw.SaleLoop = DDraw.SaleLoop + 1
                SalePointer = SalePointer + 1
                Exit Sub
                End If
            End If
            If DDraw.PointerY = 338 Then
            DDraw.PointerX = 245
            DDraw.PointerY = 45
            Else:
            DDraw.PointerX = 25
            End If
            DDraw.PointerY = DDraw.PointerY + 25
            SalePointer = SalePointer + 1
        End If
    Else: StopTradeD = True
    End If
    If aKeys(DIK_UP) Then
        If TradeNPC = 2 And StopTradeU And Walking = 0 Then
            StopTradeU = False
            If DDraw.PointerY = 70 Then
            DDraw.PointerY = 363
            SalePointer = 11
            End If
            If DDraw.PointerY = 113 Then
            DDraw.PointerX = 360
            DDraw.PointerY = 95
            Else:
            DDraw.PointerX = 135
            End If
            DDraw.PointerY = DDraw.PointerY - 25
            SalePointer = SalePointer - 1
        End If
        If TradeNPC = 3 And StopTradeU And Walking = 0 Then
            StopTradeU = False
            If DDraw.PointerY = 70 Then
            DDraw.PointerY = 363
            SalePointer = DDraw.SaleLoop + 11
            End If
            If DDraw.PointerY = 113 Then
                If DDraw.SaleLoop > 0 Then
                DDraw.SaleLoop = DDraw.SaleLoop - 1
                SalePointer = SalePointer - 1
                Exit Sub
                End If
            End If
            If DDraw.PointerY = 113 Then
            DDraw.PointerX = 360
            DDraw.PointerY = 95
            Else:
            DDraw.PointerX = 135
            End If
            DDraw.PointerY = DDraw.PointerY - 25
            SalePointer = SalePointer - 1
        End If
        If DispInventMenu = True And StopTradeU And Walking = 0 Then
            StopTradeU = False
            If DDraw.PointerY = 70 Then
            DDraw.PointerY = 363
            SalePointer = DDraw.SaleLoop + 11
            End If
            If DDraw.PointerY = 113 Then
                If DDraw.SaleLoop > 0 Then
                DDraw.SaleLoop = DDraw.SaleLoop - 1
                SalePointer = SalePointer - 1
                Exit Sub
                End If
            End If
            If DDraw.PointerY = 113 Then
            DDraw.PointerX = 245
            DDraw.PointerY = 95
            Else:
            DDraw.PointerX = 25
            End If
            DDraw.PointerY = DDraw.PointerY - 25
            SalePointer = SalePointer - 1
        End If
    Else: StopTradeU = True
    End If
    If aKeys(DIK_I) Then
        If TradeNPC = 0 And SayNPC = False Then
        SaleLoop = 0
        SalePointer = 1
        CanMove = False
        DispInventMenu = True
        DDraw.PointerX = 25
        DDraw.PointerY = 113
        End If
    End If
End If
If Walking = 0 And CanMove Then
    If aKeys(DIK_UP) Then
        Walking = North
        MainChar.CheckCol
    GoTo Skipper:
    End If
    If aKeys(DIK_DOWN) Then
        Walking = South
        MainChar.CheckCol
    GoTo Skipper:
    End If
    If aKeys(DIK_LEFT) Then
        Walking = West
        MainChar.CheckCol
    GoTo Skipper:
    End If
    If aKeys(DIK_RIGHT) Then
        Walking = East
        MainChar.CheckCol
    End If
    If aKeys(DIK_LCONTROL) Then
        Combat.Attack
    Else: NPCz(DudeCoord.X, DudeCoord.Y).State = Wandering
    End If
    If aKeys(DIK_P) Then
        If mbytMap(DudeCoord.X, DudeCoord.Y).GItem.Index > 0 Then
            TempIndex = mbytMap(DudeCoord.X, DudeCoord.Y).GItem.Index - 1
            TempAmount = mbytMap(DudeCoord.X, DudeCoord.Y).GItem.Amount
            If DaItems(TempIndex).Type = 0 Then
                UserCash = UserCash + (DaItems(TempIndex).Value * TempAmount)
                mbytMap(DudeCoord.X, DudeCoord.Y).GItem.Index = 0
                mbytMap(DudeCoord.X, DudeCoord.Y).GItem.Amount = 0
                Exit Sub
            End If
            For IntCount = 0 To 24
                If UserInvent(IntCount).Index = TempIndex Or UserInvent(IntCount).Index = -1 Then
                UserInvent(IntCount).Index = TempIndex
                UserInvent(IntCount).GrhIndex = DaItems(TempIndex).GrhIndex
                UserInvent(IntCount).Amount = UserInvent(IntCount).Amount + TempAmount
                mbytMap(DudeCoord.X, DudeCoord.Y).GItem.Index = 0
                mbytMap(DudeCoord.X, DudeCoord.Y).GItem.Amount = 0
                Exit Sub
                End If
            Next
        End If
    End If
End If
Skipper:

End Sub

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -