Survivalcraft API 1.8.2.3
v1.8.2.3
Survivalcraft 2.4
载入中...
搜索中...
未找到
SubsystemBlockBehaviors.cs
浏览该文件的文档.
1
using
Engine
;
2
using
GameEntitySystem
;
3
using
TemplatesDatabase
;
4
5
namespace
Game
{
6
public
class
SubsystemBlockBehaviors
:
Subsystem
{
7
public
SubsystemBlockBehavior
[][]
m_blockBehaviorsByContents
;
8
9
public
List<SubsystemBlockBehavior>
m_blockBehaviors
= [];
10
11
public
ReadOnlyList<SubsystemBlockBehavior>
BlockBehaviors
=>
new
(
m_blockBehaviors
);
12
13
public
SubsystemBlockBehavior
[]
GetBlockBehaviors
(
int
contents) =>
m_blockBehaviorsByContents
[contents];
14
15
public
override
void
Load
(
ValuesDictionary
valuesDictionary) {
16
m_blockBehaviorsByContents
=
new
SubsystemBlockBehavior
[
BlocksManager
.
Blocks
.Length][];
17
Dictionary<int, HashSet<SubsystemBlockBehavior>> dictionary = [];
18
for
(
int
i = 0; i <
m_blockBehaviorsByContents
.Length; i++) {
19
dictionary[i] = [];
20
string
[] array =
BlocksManager
.
Blocks
[i].
Behaviors
.Split(
','
, StringSplitOptions.RemoveEmptyEntries);
21
foreach
(
string
text
in
array) {
22
SubsystemBlockBehavior
item =
Project
.FindSubsystem<
SubsystemBlockBehavior
>(text.Trim(),
true
);
23
dictionary[i].Add(item);
24
}
25
}
26
foreach
(
SubsystemBlockBehavior
item2
in
Project
.FindSubsystems<
SubsystemBlockBehavior
>()) {
27
m_blockBehaviors
.Add(item2);
28
int
[] handledBlocks = item2.
HandledBlocks
;
29
foreach
(
int
key
in
handledBlocks) {
30
dictionary[key].Add(item2);
31
}
32
}
33
for
(
int
k = 0; k <
m_blockBehaviorsByContents
.Length; k++) {
34
m_blockBehaviorsByContents
[k] = dictionary[k].ToArray();
35
}
36
}
37
}
38
}
Game.Block.Behaviors
string Behaviors
定义
Block.cs:45
Game.BlocksManager
定义
BlocksManager.cs:10
Game.BlocksManager.Blocks
static Block[] Blocks
定义
BlocksManager.cs:41
Game.SubsystemBlockBehavior
定义
SubsystemBlockBehavior.cs:6
Game.SubsystemBlockBehavior.HandledBlocks
virtual int[] HandledBlocks
定义
SubsystemBlockBehavior.cs:7
Game.SubsystemBlockBehaviors
定义
SubsystemBlockBehaviors.cs:6
Game.SubsystemBlockBehaviors.m_blockBehaviors
List< SubsystemBlockBehavior > m_blockBehaviors
定义
SubsystemBlockBehaviors.cs:9
Game.SubsystemBlockBehaviors.GetBlockBehaviors
SubsystemBlockBehavior[] GetBlockBehaviors(int contents)
定义
SubsystemBlockBehaviors.cs:13
Game.SubsystemBlockBehaviors.m_blockBehaviorsByContents
SubsystemBlockBehavior[][] m_blockBehaviorsByContents
定义
SubsystemBlockBehaviors.cs:7
Game.SubsystemBlockBehaviors.BlockBehaviors
ReadOnlyList< SubsystemBlockBehavior > BlockBehaviors
定义
SubsystemBlockBehaviors.cs:11
Game.SubsystemBlockBehaviors.Load
override void Load(ValuesDictionary valuesDictionary)
定义
SubsystemBlockBehaviors.cs:15
GameEntitySystem.Subsystem
定义
Subsystem.cs:5
GameEntitySystem.Subsystem.ValuesDictionary
ValuesDictionary ValuesDictionary
定义
Subsystem.cs:12
GameEntitySystem.Subsystem.Project
Project Project
定义
Subsystem.cs:10
Engine
定义
BaseSound.cs:10
GameEntitySystem
定义
Component.cs:6
Game
定义
ContentFileBridge.cs:4
TemplatesDatabase
定义
Database.cs:6
SurvivalcraftApi 1.8.2.3
Survivalcraft.Windows
Subsystem
SubsystemBlockBehaviors.cs
制作者
1.16.1