mirror of
https://github.com/P3D-Legacy/P3D-Legacy.git
synced 2025-07-28 16:24:45 +02:00
Replaced all references to InventoryScreen by references to NewInventoryScreen. Still need to polish minor details.
This commit is contained in:
parent
12fbd4c6f8
commit
e9619b4ffd
@ -699,7 +699,13 @@
|
||||
Private Sub MainMenuOpenBag(ByVal BattleScreen As BattleScreen)
|
||||
If BattleScreen.CanUseItems = True Then
|
||||
TempBattleScreen = BattleScreen
|
||||
Core.SetScreen(New InventoryScreen(Core.CurrentScreen, {}, AddressOf SelectedItem))
|
||||
Dim selScreen As New NewInventoryScreen(Core.CurrentScreen)
|
||||
selScreen.Mode = Screens.UI.ISelectionScreen.ScreenMode.Selection
|
||||
selScreen.CanExit = True
|
||||
|
||||
AddHandler selScreen.SelectedObject, AddressOf SelectedItemHandler
|
||||
Core.SetScreen(selScreen)
|
||||
'Core.SetScreen(New InventoryScreen(Core.CurrentScreen, {}, AddressOf SelectedItem))
|
||||
End If
|
||||
End Sub
|
||||
|
||||
@ -953,6 +959,10 @@
|
||||
|
||||
#Region "UseItem"
|
||||
|
||||
Private Shared Sub SelectedItemHandler(ByVal params As Object())
|
||||
SelectedItem(CInt(params(0)))
|
||||
End Sub
|
||||
|
||||
Private Shared Sub SelectedItem(ByVal itemID As Integer)
|
||||
Dim Item As Item = Item.GetItemByID(itemID)
|
||||
|
||||
|
@ -25,10 +25,20 @@
|
||||
|
||||
Public Overrides Sub ResultFunction(ByVal Result As Integer)
|
||||
If Result = 0 Then
|
||||
Core.SetScreen(New InventoryScreen(Core.CurrentScreen, {4}, 4, AddressOf Me.PlantBerry))
|
||||
Dim selScreen As New NewInventoryScreen(Core.CurrentScreen, {2}, 2, Nothing)
|
||||
selScreen.Mode = Screens.UI.ISelectionScreen.ScreenMode.Selection
|
||||
selScreen.CanExit = True
|
||||
|
||||
AddHandler selScreen.SelectedObject, AddressOf PlantBerryHandler
|
||||
Core.SetScreen(selScreen)
|
||||
'Core.SetScreen(New NewInventoryScreen(Core.CurrentScreen, {2}, 2, AddressOf Me.PlantBerry))
|
||||
End If
|
||||
End Sub
|
||||
|
||||
Public Sub PlantBerryHandler(ByVal params As Object())
|
||||
PlantBerry(CInt(params(0)))
|
||||
End Sub
|
||||
|
||||
Public Sub PlantBerry(ByVal ChosenBerry As Integer)
|
||||
Dim testItem As Item = Item.GetItemByID(ChosenBerry)
|
||||
If testItem.isBerry = True Then
|
||||
|
@ -115,7 +115,17 @@ Public Class NewInventoryScreen
|
||||
Private _messageDelay As Single = 0F
|
||||
Private _messageText As String = ""
|
||||
|
||||
Public Sub New(ByVal currentScreen As Screen)
|
||||
'experiment
|
||||
Public Delegate Sub DoStuff(ByVal ItemID As Integer)
|
||||
Dim ReturnItem As DoStuff
|
||||
Dim AllowedPages() As Integer
|
||||
|
||||
Public Sub New(ByVal currentScreen As Screen, ByVal AllowedPages As Integer(), ByVal StartPageIndex As Integer, ByVal DoStuff As DoStuff)
|
||||
|
||||
_tabIndex = StartPageIndex
|
||||
Me.AllowedPages = AllowedPages
|
||||
ReturnItem = DoStuff
|
||||
|
||||
_translation = New Globalization.Classes.LOCAL_InventoryScreen()
|
||||
target_1 = New RenderTarget2D(GraphicsDevice, 816, 400 - 32, False, SurfaceFormat.Color, DepthFormat.None, 0, RenderTargetUsage.PreserveContents)
|
||||
target_2 = New RenderTarget2D(GraphicsDevice, 500, 368)
|
||||
@ -158,6 +168,14 @@ Public Class NewInventoryScreen
|
||||
LoadItems()
|
||||
End Sub
|
||||
|
||||
Public Sub New(ByVal currentScreen As Screen, ByVal AllowedPages() As Integer, ByVal DoStuff As DoStuff)
|
||||
Me.New(currentScreen, AllowedPages, Player.Temp.BagIndex, DoStuff)
|
||||
End Sub
|
||||
|
||||
Public Sub New(ByVal currentScreen As Screen)
|
||||
Me.New(currentScreen, {}, Player.Temp.BagIndex, Nothing)
|
||||
End Sub
|
||||
|
||||
Public Overrides Sub Draw()
|
||||
'PreScreen.Draw()
|
||||
|
||||
@ -532,8 +550,21 @@ Public Class NewInventoryScreen
|
||||
Private Sub UpdateTabs()
|
||||
If Controls.Left(True, True, True, True, True, True) And _tabInControl Or ControllerHandler.ButtonPressed(Buttons.LeftShoulder) Then
|
||||
_tabIndex -= 1
|
||||
If AllowedPages.Count > 0 And AllowedPages.Contains(_tabIndex) = False Then
|
||||
While AllowedPages.Contains(_tabIndex) = False
|
||||
_tabIndex -= 1
|
||||
|
||||
If _tabIndex < 0 Then
|
||||
_tabIndex = 7
|
||||
ElseIf _tabIndex > 7 Then
|
||||
_tabIndex = 0
|
||||
End If
|
||||
End While
|
||||
End If
|
||||
If _tabIndex < 0 Then
|
||||
_tabIndex = 7
|
||||
ElseIf _tabIndex > 7 Then
|
||||
_tabIndex = 0
|
||||
End If
|
||||
_itemIntro = 0F
|
||||
ResetAnimation()
|
||||
@ -541,7 +572,20 @@ Public Class NewInventoryScreen
|
||||
End If
|
||||
If Controls.Right(True, True, True, True, True, True) And _tabInControl Or ControllerHandler.ButtonPressed(Buttons.RightShoulder) Then
|
||||
_tabIndex += 1
|
||||
If _tabIndex > 7 Then
|
||||
If AllowedPages.Count > 0 And AllowedPages.Contains(_tabIndex) = False Then
|
||||
While AllowedPages.Contains(_tabIndex) = False
|
||||
_tabIndex += 1
|
||||
|
||||
If _tabIndex < 0 Then
|
||||
_tabIndex = 7
|
||||
ElseIf _tabIndex > 7 Then
|
||||
_tabIndex = 0
|
||||
End If
|
||||
End While
|
||||
End If
|
||||
If _tabIndex < 0 Then
|
||||
_tabIndex = 7
|
||||
ElseIf _tabIndex > 7 Then
|
||||
_tabIndex = 0
|
||||
End If
|
||||
_itemIntro = 0F
|
||||
|
@ -219,7 +219,13 @@
|
||||
|
||||
If Controls.Accept(True, True, True) = True Then
|
||||
If Me.selectIndex = 0 Then
|
||||
Core.SetScreen(New InventoryScreen(Me, {5}, 5, AddressOf Me.ChosenMail))
|
||||
Dim selScreen As New NewInventoryScreen(Core.CurrentScreen, {5}, 5, Nothing)
|
||||
selScreen.Mode = Screens.UI.ISelectionScreen.ScreenMode.Selection
|
||||
selScreen.CanExit = True
|
||||
|
||||
AddHandler selScreen.SelectedObject, AddressOf ChosenMailHandler
|
||||
Core.SetScreen(selScreen)
|
||||
'Core.SetScreen(New InventoryScreen(Me, {5}, 5, AddressOf Me.ChosenMail))
|
||||
Else
|
||||
If Me.index = Me.selectIndex Then
|
||||
Me.index = -1
|
||||
@ -288,6 +294,10 @@
|
||||
End If
|
||||
End Sub
|
||||
|
||||
Private Sub ChosenMailHandler(ByVal params As Object())
|
||||
ChosenMail(CInt(params(0)))
|
||||
End Sub
|
||||
|
||||
Private Sub ChosenMail(ByVal ItemID As Integer)
|
||||
Me.index = 0
|
||||
Me.EditMailIndex = 0
|
||||
|
Loading…
x
Reference in New Issue
Block a user