Elin Decompiled Documentation EA 23.284 Nightly Patch 2
Loading...
Searching...
No Matches
ListPeopleParty.cs
Go to the documentation of this file.
1using System.Linq;
2
4{
5 public override void OnCreate()
6 {
7 list.sorts = new UIList.SortMode[3]
8 {
9 UIList.SortMode.ByFeat,
10 UIList.SortMode.ByJob,
11 UIList.SortMode.ByRace
12 };
13 list.sortMode = UIList.SortMode.ByFeat;
14 }
15
16 public override void OnInstantiate(Chara c, ItemGeneral i)
17 {
18 Zone zone = (main ? c.currentZone : c.homeZone);
19 i.SetSubText((zone == null) ? "???" : zone.Name, 240);
20 if (!c.IsPC)
21 {
22 UIButton uIButton = i.AddSubButton(EClass.core.refs.icons.fav, delegate
23 {
24 SE.ClickGeneral();
25 c.isFav = !c.isFav;
26 RefreshAll();
27 });
28 uIButton.icon.SetAlpha(c.isFav ? 1f : 0.3f);
29 uIButton.icon.SetNativeSize();
30 }
31 }
32
33 public override void OnClick(Chara c, ItemGeneral i)
34 {
35 if (main)
36 {
37 if (c.isDead || c.HasCondition<ConSuspend>() || c.currentZone == null)
38 {
39 SE.Beep();
40 return;
41 }
42 if (c.currentZone != EClass._zone)
43 {
45 c.MoveImmediate(EClass.pc.pos.GetNearestPoint(allowBlock: false, allowChara: false) ?? EClass.pc.pos);
46 }
48 }
49 else
50 {
51 if (c.IsPC)
52 {
53 SE.Beep();
54 return;
55 }
57 if (c.homeZone != EClass._zone)
58 {
59 c.MoveZone(c.homeZone);
60 }
61 }
62 MoveToOther(c);
63 base.Main.OnRefreshMenu();
64 }
65
66 public override void OnList()
67 {
68 if (main)
69 {
70 foreach (Chara value in EClass.game.cards.globalCharas.Values)
71 {
72 if (value.IsPCFaction && !value.IsPCParty && value.memberType == FactionMemberType.Default)
73 {
74 list.Add(value);
75 }
76 }
77 return;
78 }
79 foreach (Chara member in EClass.pc.party.members)
80 {
81 list.Add(member);
82 }
83 list.sortMode = UIList.SortMode.ByNone;
84 }
85
87 {
88 return EClass.Home.listReserve.First((HireInfo a) => a.chara == c);
89 }
90}
FactionMemberType
GlobalCharaList globalCharas
Definition: CardManager.cs:46
bool isFav
Definition: Card.cs:927
Point pos
Definition: Card.cs:60
void MoveImmediate(Point p, bool focus=true, bool cancelAI=true)
Definition: Card.cs:5931
Definition: Chara.cs:10
override bool IsPC
Definition: Chara.cs:626
override bool IsPCParty
Definition: Chara.cs:629
Party party
Definition: Chara.cs:43
bool HasCondition(string alias)
Definition: Chara.cs:9593
override bool IsPCFaction
Definition: Chara.cs:685
Zone currentZone
Definition: Chara.cs:257
FactionMemberType memberType
Definition: Chara.cs:46
Zone homeZone
Definition: Chara.cs:269
bool isDead
Definition: Chara.cs:391
void MoveZone(string alias)
Definition: Chara.cs:3373
Sprite fav
Definition: CoreRef.cs:112
Icons icons
Definition: CoreRef.cs:355
CoreRef refs
Definition: Core.cs:51
Definition: EClass.cs:6
static Game game
Definition: EClass.cs:9
static Faction Home
Definition: EClass.cs:27
static Core core
Definition: EClass.cs:7
static Zone _zone
Definition: EClass.cs:21
static Chara pc
Definition: EClass.cs:15
List< HireInfo > listReserve
Definition: FACTION.cs:138
CardManager cards
Definition: Game.cs:156
Chara chara
Definition: HireInfo.cs:6
UIButton AddSubButton(Sprite sprite, Action action, string lang=null, Action< UITooltip > onTooltip=null)
Definition: ItemGeneral.cs:86
UIButton SetSubText(string lang, int x, FontColor c=FontColor.Default, TextAnchor align=TextAnchor.MiddleLeft)
Definition: ItemGeneral.cs:129
void RefreshAll(bool freeze=true)
Definition: ListOwner.cs:125
override void OnList()
override void OnCreate()
override void OnInstantiate(Chara c, ItemGeneral i)
HireInfo GetInfo(Chara c)
override void OnClick(Chara c, ItemGeneral i)
void RemoveMember(Chara c)
Definition: Party.cs:102
List< Chara > members
Definition: Party.cs:19
void AddMemeber(Chara c, bool showMsg=false)
Definition: Party.cs:57
Point GetNearestPoint(bool allowBlock=false, bool allowChara=true, bool allowInstalled=true, bool ignoreCenter=false, int minRadius=0)
Definition: Point.cs:619
virtual string Name
Definition: Spatial.cs:509
Image icon
Definition: UIButton.cs:110
Definition: UIList.cs:9
SortMode
Definition: UIList.cs:27
Definition: Zone.cs:12