Terraria
v1.4.4.9
Terraria source code documentation
Loading...
Searching...
No Matches
EntrySorter.cs
Go to the documentation of this file.
1
using
System.Collections.Generic
;
2
using
Terraria.Localization
;
3
4
namespace
Terraria.DataStructures
;
5
6
public
class
EntrySorter
<
TEntryType
,
TStepType
> :
IComparer
<TEntryType>
where
TEntryType
:
new
()
where
TStepType
:
IEntrySortStep
<TEntryType>
7
{
8
public
List<TStepType>
Steps
=
new
List<TStepType>
();
9
10
private
int
_prioritizedStep
;
11
12
public
void
AddSortSteps
(
List<TStepType>
sortSteps
)
13
{
14
Steps
.
AddRange
(
sortSteps
);
15
}
16
17
public
int
Compare
(
TEntryType
x,
TEntryType
y)
18
{
19
int
num = 0;
20
if
(
_prioritizedStep
!= -1)
21
{
22
num =
Steps
[
_prioritizedStep
].Compare(x, y);
23
if
(num != 0)
24
{
25
return
num;
26
}
27
}
28
for
(
int
i = 0; i <
Steps
.
Count
; i++)
29
{
30
if
(i !=
_prioritizedStep
)
31
{
32
num =
Steps
[i].Compare(x, y);
33
if
(num != 0)
34
{
35
return
num;
36
}
37
}
38
}
39
return
num;
40
}
41
42
public
void
SetPrioritizedStepIndex
(
int
index)
43
{
44
_prioritizedStep
= index;
45
}
46
47
public
string
GetDisplayName
()
48
{
49
return
Language
.
GetTextValue
(
Steps
[
_prioritizedStep
].GetDisplayNameKey());
50
}
51
}
System.Collections.Generic.Dictionary
Definition
Dictionary.cs:14
System.Collections.Generic.List.AddRange
void AddRange(IEnumerable< T > collection)
Definition
List.cs:275
System.Collections.Generic.List.Count
int Count
Definition
List.cs:123
Terraria.DataStructures.EntrySorter.Steps
List< TStepType > Steps
Definition
EntrySorter.cs:8
Terraria.DataStructures.EntrySorter.GetDisplayName
string GetDisplayName()
Definition
EntrySorter.cs:47
Terraria.DataStructures.EntrySorter.Compare
int Compare(TEntryType x, TEntryType y)
Definition
EntrySorter.cs:17
Terraria.DataStructures.EntrySorter.AddSortSteps
void AddSortSteps(List< TStepType > sortSteps)
Definition
EntrySorter.cs:12
Terraria.DataStructures.EntrySorter._prioritizedStep
int _prioritizedStep
Definition
EntrySorter.cs:10
Terraria.DataStructures.EntrySorter.SetPrioritizedStepIndex
void SetPrioritizedStepIndex(int index)
Definition
EntrySorter.cs:42
Terraria.DataStructures.EntrySorter
Definition
EntrySorter.cs:7
Terraria.Localization.Language.GetTextValue
static string GetTextValue(string key)
Definition
Language.cs:15
Terraria.Localization.Language
Definition
Language.cs:7
System.Collections.Generic.IComparer
Definition
IComparer.cs:4
Terraria.DataStructures.IEntrySortStep
Definition
IEntrySortStep.cs:6
System.Collections.Generic
Definition
IHashKeyCollection.cs:1
Terraria.DataStructures
Definition
AEntitySource_OnHit.cs:1
Terraria.Localization
Definition
GameCulture.cs:5
source
Terraria.DataStructures
EntrySorter.cs
Generated by
1.10.0