Survivalcraft API 1.8.2.3
v1.8.2.3
Survivalcraft 2.4
载入中...
搜索中...
未找到
CraftingTableWidget.cs
浏览该文件的文档.
1
using
System.Xml.Linq;
2
using
Engine
;
3
4
namespace
Game
{
5
public
class
CraftingTableWidget
:
CanvasWidget
{
6
public
GridPanelWidget
m_inventoryGrid
;
7
8
public
GridPanelWidget
m_craftingGrid
;
9
10
public
InventorySlotWidget
m_craftingResultSlot
;
11
12
public
InventorySlotWidget
m_craftingRemainsSlot
;
13
14
public
ComponentCraftingTable
m_componentCraftingTable
;
15
16
public
CraftingTableWidget
(
IInventory
inventory,
ComponentCraftingTable
componentCraftingTable) {
17
m_componentCraftingTable
= componentCraftingTable;
18
XElement node =
ContentManager
.
Get
<XElement>(
"Widgets/CraftingTableWidget"
);
19
LoadContents
(
this
, node);
20
m_inventoryGrid
=
Children
.Find<
GridPanelWidget
>(
"InventoryGrid"
);
21
m_craftingGrid
=
Children
.Find<
GridPanelWidget
>(
"CraftingGrid"
);
22
m_craftingResultSlot
=
Children
.Find<
InventorySlotWidget
>(
"CraftingResultSlot"
);
23
m_craftingRemainsSlot
=
Children
.Find<
InventorySlotWidget
>(
"CraftingRemainsSlot"
);
24
int
num = 10;
25
for
(
int
i = 0; i <
m_inventoryGrid
.RowsCount; i++) {
26
for
(
int
j = 0; j <
m_inventoryGrid
.ColumnsCount; j++) {
27
InventorySlotWidget
inventorySlotWidget =
new
();
28
inventorySlotWidget.
AssignInventorySlot
(inventory, num++);
29
m_inventoryGrid
.Children.Add(inventorySlotWidget);
30
m_inventoryGrid
.SetWidgetCell(inventorySlotWidget,
new
Point2
(j, i));
31
}
32
}
33
num = 0;
34
for
(
int
k = 0; k <
m_craftingGrid
.RowsCount; k++) {
35
for
(
int
l = 0; l <
m_craftingGrid
.ColumnsCount; l++) {
36
InventorySlotWidget
inventorySlotWidget2 =
new
();
37
inventorySlotWidget2.
AssignInventorySlot
(
m_componentCraftingTable
, num++);
38
m_craftingGrid
.Children.Add(inventorySlotWidget2);
39
m_craftingGrid
.SetWidgetCell(inventorySlotWidget2,
new
Point2
(l, k));
40
}
41
}
42
m_craftingResultSlot
.AssignInventorySlot(
m_componentCraftingTable
,
m_componentCraftingTable
.ResultSlotIndex);
43
m_craftingRemainsSlot
.AssignInventorySlot(
m_componentCraftingTable
,
m_componentCraftingTable
.RemainsSlotIndex);
44
}
45
46
public
override
void
Update
() {
47
if
(!
m_componentCraftingTable
.IsAddedToProject) {
48
ParentWidget
.Children.Remove(
this
);
49
}
50
}
51
}
52
}
Game.CanvasWidget
定义
CanvasWidget.cs:4
Game.ComponentCraftingTable
定义
ComponentCraftingTable.cs:7
Game.ContainerWidget.Children
readonly WidgetsList Children
定义
ContainerWidget.cs:5
Game.ContentManager
定义
ContentManager.cs:50
Game.ContentManager.Get
static object Get(Type type, string name)
定义
ContentManager.cs:70
Game.CraftingTableWidget.m_craftingResultSlot
InventorySlotWidget m_craftingResultSlot
定义
CraftingTableWidget.cs:10
Game.CraftingTableWidget.m_componentCraftingTable
ComponentCraftingTable m_componentCraftingTable
定义
CraftingTableWidget.cs:14
Game.CraftingTableWidget.Update
override void Update()
定义
CraftingTableWidget.cs:46
Game.CraftingTableWidget.m_craftingRemainsSlot
InventorySlotWidget m_craftingRemainsSlot
定义
CraftingTableWidget.cs:12
Game.CraftingTableWidget.m_inventoryGrid
GridPanelWidget m_inventoryGrid
定义
CraftingTableWidget.cs:6
Game.CraftingTableWidget.CraftingTableWidget
CraftingTableWidget(IInventory inventory, ComponentCraftingTable componentCraftingTable)
定义
CraftingTableWidget.cs:16
Game.CraftingTableWidget.m_craftingGrid
GridPanelWidget m_craftingGrid
定义
CraftingTableWidget.cs:8
Game.GridPanelWidget
定义
GridPanelWidget.cs:4
Game.InventorySlotWidget
定义
InventorySlotWidget.cs:7
Game.InventorySlotWidget.AssignInventorySlot
virtual void AssignInventorySlot(IInventory inventory, int slotIndex)
定义
InventorySlotWidget.cs:189
Game.Widget.ParentWidget
ContainerWidget ParentWidget
定义
Widget.cs:468
Game.Widget.LoadContents
virtual void LoadContents(object eventsTarget, XElement node)
定义
Widget.cs:507
Game.IInventory
定义
IInventory.cs:5
Engine
定义
BaseSound.cs:10
Game
定义
ContentFileBridge.cs:4
Engine.Point2
定义
Point2.cs:2
SurvivalcraftApi 1.8.2.3
Survivalcraft.Windows
Widget
CraftingTableWidget.cs
制作者
1.16.1