Elin Decompiled Documentation EA 23.102 Nightly
Loading...
Searching...
No Matches
ContentCodex Class Reference
Inheritance diagram for ContentCodex:
EContent UIContent UINote

Public Member Functions

override void OnSwitchContent (int idTab)
 
void RefreshList ()
 
void RefreshInfo ()
 
void OnClickAddCards ()
 
void OnClickGetCard ()
 
- Public Member Functions inherited from UIContent
virtual void OnSwitchContent (int idTab)
 
virtual void OnInstantiate ()
 
- Public Member Functions inherited from UINote
void Clear ()
 
void Build ()
 
void Space (int sizeY=0, int sizeX=1)
 
UINote AddNote (string id)
 
UIItem AddHeader (string text, Sprite sprite=null)
 
UIItem AddHeaderCard (string text, Sprite sprite=null)
 
UIItem AddHeaderTopic (string text, Sprite sprite=null)
 
UIItem AddHeader (string id, string text, Sprite sprite=null)
 
UIItem AddText (string text, FontColor color=FontColor.DontChange)
 
UIItem AddText (string id, string text, FontColor color=FontColor.DontChange)
 
UIItem AddText (string id, string text, Color color)
 
UIItem AddItem (string id)
 
UIItem AddTopic (string id, string text, string value=null)
 
UIItem AddTopic (string text, string value=null)
 
void AddImage (Sprite sprite)
 
void AddImage (string idFile)
 
UIButton AddButton (string text, Action onClick)
 
UIButton AddButtonLink (string text, string url)
 
UIDropdown AddDropdown (string id="DropdownDefault")
 
UIButton AddToggle (string idLang="", bool isOn=false, Action< bool > action=null)
 
Transform AddPrefab (string path)
 
AddExtra< T > (string path)
 

Static Public Member Functions

static void Collect (Thing t)
 

Public Attributes

UIDynamicList list
 
UIText textName
 
UIText textOwn
 
UIText textValue
 
UIText textKills
 
UIText textWeakspot
 
UIText textSpawns
 
UIText textBonus
 
UINote note
 
CodexCreature currentCodex
 
Transform transInfo
 
UIButton buttonTake
 
UIButton buttonAddCards
 
UIButton buttonToggleCollect
 
Vector2 pivot
 
Vector2 localPos
 
- Public Attributes inherited from UINote
RectTransform target
 
UINoteProfile prof
 
SkinType skinType
 
string idDefaultText
 
LayoutGroup layout
 
RectTransform cur
 
bool extraRebuild
 

Detailed Description

Definition at line 5 of file ContentCodex.cs.

Member Function Documentation

◆ Collect()

static void ContentCodex.Collect ( Thing  t)
inlinestatic

Definition at line 163 of file ContentCodex.cs.

164 {
166 SE.Play("use_card");
167 Msg.Say("addedCards", t.Num, t.Num.ToString() ?? "");
168 t.Destroy();
169 }
void Destroy()
Definition: Card.cs:4538
int Num
Definition: Card.cs:154
string c_idRefCard
Definition: Card.cs:1637
void AddCard(string id, int num=1)
Definition: CodexManager.cs:31
Definition: EClass.cs:5
static Player player
Definition: EClass.cs:12
Definition: Msg.cs:5
static string Say(string idLang, string ref1, string ref2=null, string ref3=null, string ref4=null)
Definition: Msg.cs:58
CodexManager codex
Definition: Player.cs:916

References CodexManager.AddCard(), Card.c_idRefCard, Player.codex, Card.Destroy(), Card.Num, EClass.player, and Msg.Say().

Referenced by Chara.Pick().

◆ OnClickAddCards()

void ContentCodex.OnClickAddCards ( )
inline

Definition at line 139 of file ContentCodex.cs.

140 {
141 List<Thing> list = EClass.pc.things.List((Thing c) => c.id == "figure3", onlyAccessible: true);
142 int num = 0;
143 if (list.Count > 0)
144 {
145 foreach (Thing item in list)
146 {
147 EClass.player.codex.AddCard(item.c_idRefCard, item.Num);
148 num += item.Num;
149 item.Destroy();
150 RefreshList();
151 }
152 SE.Play("use_card");
153 Msg.Say("addedCards", num, num.ToString() ?? "");
154 }
155 else
156 {
157 SE.BeepSmall();
158 Msg.Say("noCard");
159 }
160 RefreshInfo();
161 }
string id
Definition: Card.cs:31
ThingContainer things
Definition: Card.cs:34
void RefreshInfo()
void RefreshList()
Definition: ContentCodex.cs:59
UIDynamicList list
Definition: ContentCodex.cs:7
static Chara pc
Definition: EClass.cs:14
List< Thing > List(Func< Thing, bool > func, bool onlyAccessible=false)
Definition: Thing.cs:8

References CodexManager.AddCard(), Player.codex, Card.id, item, list, ThingContainer.List(), EClass.pc, EClass.player, RefreshInfo(), RefreshList(), Msg.Say(), and Card.things.

◆ OnClickGetCard()

void ContentCodex.OnClickGetCard ( )
inline

Definition at line 171 of file ContentCodex.cs.

172 {
174 Thing thing = ThingGen.Create("figure3");
176 bool autoCollectCard = EClass.game.config.autoCollectCard;
177 EClass.game.config.autoCollectCard = false;
178 EClass.pc.Pick(thing);
179 EClass.game.config.autoCollectCard = autoCollectCard;
180 if (currentCodex.numCard == 0)
181 {
182 RefreshList();
183 return;
184 }
185 list.Redraw();
187 RefreshInfo();
188 }
void MakeFigureFrom(string id)
Definition: Card.cs:5089
Thing Pick(Thing t, bool msg=true, bool tryStack=true)
Definition: Chara.cs:3920
CodexCreature currentCodex
Definition: ContentCodex.cs:25
static Game game
Definition: EClass.cs:8
bool autoCollectCard
Definition: Game.cs:51
Config config
Definition: Game.cs:215
static Thing Create(string id, int idMat=-1, int lv=-1)
Definition: ThingGen.cs:53
override void Redraw()
bool Select(object o, bool invoke=false)

References Game.Config.autoCollectCard, Game.config, ThingGen.Create(), currentCodex, EClass.game, CodexCreature.id, list, Card.MakeFigureFrom(), CodexCreature.numCard, EClass.pc, Chara.Pick(), UIDynamicList.Redraw(), RefreshInfo(), RefreshList(), and UIDynamicList.Select().

◆ OnSwitchContent()

override void ContentCodex.OnSwitchContent ( int  idTab)
inlinevirtual

Reimplemented from UIContent.

Definition at line 39 of file ContentCodex.cs.

40 {
41 if (list.isBuilt)
42 {
43 if (currentCodex != null)
44 {
47 }
48 }
49 else
50 {
53 {
54 EClass.game.config.autoCollectCard = a;
55 });
56 }
57 }
bool isBuilt
Definition: BaseList.cs:36
UIButton buttonToggleCollect
Definition: ContentCodex.cs:33
void SetToggle(bool isOn, Action< bool > onToggle=null)
Definition: UIButton.cs:341

References Game.Config.autoCollectCard, buttonToggleCollect, Game.config, currentCodex, EClass.game, BaseList.isBuilt, list, RefreshInfo(), RefreshList(), UIDynamicList.Select(), and UIButton.SetToggle().

◆ RefreshInfo()

void ContentCodex.RefreshInfo ( )
inline

Definition at line 113 of file ContentCodex.cs.

114 {
115 CodexCreature codexCreature = currentCodex;
116 if (codexCreature != null)
117 {
118 UINote uINote = note;
119 SourceChara.Row source = codexCreature.source;
120 uINote.Clear();
121 UIItem uIItem = uINote.AddHeader("HeaderCodex", codexCreature.Name.Replace("『", Environment.NewLine + "『"));
122 int idSkin = ((EClass.core.config.game.antiSpider && codexCreature.source.race == "spider" && codexCreature.source.tiles.Length > 1) ? 1 : 0);
123 codexCreature.SetImage(uIItem.image1, idSkin);
124 uIItem.text2.text = "Lv." + source.LV + Environment.NewLine + EClass.sources.races.map[source.race].GetName().ToTitleCase(wholeText: true) + Environment.NewLine + EClass.sources.jobs.map[source.job].GetName().ToTitleCase(wholeText: true);
125 uIItem.image1.rectTransform.pivot = pivot;
126 uIItem.image1.rectTransform.localPosition = localPos;
127 uIItem.image1.rectTransform.localScale = new Vector3(0f - uIItem.image1.transform.localScale.x, uIItem.image1.transform.localScale.y, 1f);
128 uINote.Build();
129 textOwn.text = codexCreature.numCard.ToString() ?? "";
130 textValue.text = codexCreature.source.value.ToString() ?? "";
131 textKills.text = codexCreature.kills.ToString() ?? "";
132 textWeakspot.SetText((codexCreature.weakspot == 0) ? "undiscovered".lang() : "discovered".lang(codexCreature.weakspot.ToString() ?? ""), (codexCreature.weakspot == 0) ? FontColor.Default : FontColor.Good);
133 textSpawns.text = codexCreature.spawns.ToString() ?? "";
134 textBonus.text = codexCreature.GetTextBonus();
135 currentCodex = codexCreature;
136 }
137 }
FontColor
Definition: FontColor.cs:2
SourceChara.Row source
string GetTextBonus()
void SetImage(Image image, int idSkin=0, bool nativeSize=true)
Vector2 localPos
Definition: ContentCodex.cs:37
UIText textWeakspot
Definition: ContentCodex.cs:17
Vector2 pivot
Definition: ContentCodex.cs:35
static SourceManager sources
Definition: EClass.cs:42
SourceRace races
SourceJob jobs
Definition: UIItem.cs:5
Image image1
Definition: UIItem.cs:14
Definition: UINote.cs:6
void Clear()
Definition: UINote.cs:35
UIItem AddHeader(string text, Sprite sprite=null)
Definition: UINote.cs:79
void Build()
Definition: UINote.cs:49
void SetText(string s)
Definition: UIText.cs:159

References UINote.AddHeader(), UINote.Build(), UINote.Clear(), currentCodex, CodexCreature.GetTextBonus(), UIItem.image1, SourceChara.Row.job, SourceManager.jobs, CodexCreature.kills, localPos, CodexCreature.Name, note, CodexCreature.numCard, pivot, SourceChara.Row.race, SourceManager.races, CodexCreature.SetImage(), UIText.SetText(), CodexCreature.source, EClass.sources, CodexCreature.spawns, textWeakspot, and CodexCreature.weakspot.

Referenced by OnClickAddCards(), OnClickGetCard(), OnSwitchContent(), and RefreshList().

◆ RefreshList()

void ContentCodex.RefreshList ( )
inline

Definition at line 59 of file ContentCodex.cs.

60 {
61 currentCodex = null;
62 list.Clear();
63 list.callbacks = new UIList.Callback<CodexCreature, ButtonGrid>
64 {
65 onClick = delegate(CodexCreature a, ButtonGrid b)
66 {
67 currentCodex = a;
69 list.Select(a);
70 },
71 onRedraw = delegate(CodexCreature a, ButtonGrid b, int i)
72 {
73 b.refObj = a.source;
75 b.subText.text = a.numCard.ToString() ?? "";
76 b.subText2.SetText(a.source._id + ".");
77 if (EClass.core.uiScale < 1.2f)
78 {
79 b.icon.transform.localScale = new Vector3(1f / EClass.core.uiScale, 1f / EClass.core.uiScale, 1f);
80 }
81 int idSkin = ((EClass.core.config.game.antiSpider && a.source.race == "spider" && a.source.tiles.Length > 1) ? 1 : 0);
82 a.SetImage(b.icon, idSkin);
83 },
84 onList = delegate
85 {
86 List<CodexCreature> list = new List<CodexCreature>();
87 foreach (KeyValuePair<string, CodexCreature> creature in EClass.player.codex.creatures)
88 {
89 if (creature.Value.numCard > 0 && EClass.sources.charas.map.ContainsKey(creature.Value.id))
90 {
91 list.Add(creature.Value);
92 }
93 }
94 list.Sort((CodexCreature a, CodexCreature b) => a.source._id - b.source._id);
95 foreach (CodexCreature item in list)
96 {
97 this.list.Add(item);
98 }
99 }
100 };
101 list.List();
102 bool flag = list.objects.Count > 0;
103 if (flag)
104 {
105 list.dsv.scrollByItemIndex(0);
106 list.Select(list.objects[0], invoke: true);
108 }
109 transInfo.SetActive(flag);
110 buttonTake.SetActive(flag);
111 }
Dictionary< string, CodexCreature > creatures
Definition: CodexManager.cs:7
UIButton buttonTake
Definition: ContentCodex.cs:29
Transform transInfo
Definition: ContentCodex.cs:27
override float uiScale
Definition: Core.cs:95
static Core core
Definition: EClass.cs:6
SourceChara charas
UIText subText2
Definition: UIButton.cs:106
Image icon
Definition: UIButton.cs:110
UIText mainText
Definition: UIButton.cs:102
override void List()
List< object > objects
override void Add(object o)
DynamicScrollView dsv
override void Clear()
Definition: UIList.cs:9

References UIDynamicList.Add(), buttonTake, SourceManager.charas, UIDynamicList.Clear(), Player.codex, EClass.core, CodexManager.creatures, currentCodex, UIDynamicList.dsv, UIButton.icon, item, list, UIDynamicList.List(), UIButton.mainText, CodexCreature.Name, CodexCreature.numCard, UIDynamicList.objects, EClass.player, RefreshInfo(), UIDynamicList.Select(), CodexCreature.SetImage(), UIText.SetText(), CodexCreature.source, EClass.sources, UIButton.subText2, transInfo, and Core.uiScale.

Referenced by OnClickAddCards(), OnClickGetCard(), and OnSwitchContent().

Member Data Documentation

◆ buttonAddCards

UIButton ContentCodex.buttonAddCards

Definition at line 31 of file ContentCodex.cs.

◆ buttonTake

UIButton ContentCodex.buttonTake

Definition at line 29 of file ContentCodex.cs.

Referenced by RefreshList().

◆ buttonToggleCollect

UIButton ContentCodex.buttonToggleCollect

Definition at line 33 of file ContentCodex.cs.

Referenced by OnSwitchContent().

◆ currentCodex

CodexCreature ContentCodex.currentCodex

Definition at line 25 of file ContentCodex.cs.

Referenced by OnClickGetCard(), OnSwitchContent(), RefreshInfo(), and RefreshList().

◆ list

UIDynamicList ContentCodex.list

Definition at line 7 of file ContentCodex.cs.

Referenced by OnClickAddCards(), OnClickGetCard(), OnSwitchContent(), and RefreshList().

◆ localPos

Vector2 ContentCodex.localPos

Definition at line 37 of file ContentCodex.cs.

Referenced by RefreshInfo().

◆ note

UINote ContentCodex.note

Definition at line 23 of file ContentCodex.cs.

Referenced by RefreshInfo().

◆ pivot

Vector2 ContentCodex.pivot

Definition at line 35 of file ContentCodex.cs.

Referenced by RefreshInfo().

◆ textBonus

UIText ContentCodex.textBonus

Definition at line 21 of file ContentCodex.cs.

◆ textKills

UIText ContentCodex.textKills

Definition at line 15 of file ContentCodex.cs.

◆ textName

UIText ContentCodex.textName

Definition at line 9 of file ContentCodex.cs.

◆ textOwn

UIText ContentCodex.textOwn

Definition at line 11 of file ContentCodex.cs.

◆ textSpawns

UIText ContentCodex.textSpawns

Definition at line 19 of file ContentCodex.cs.

◆ textValue

UIText ContentCodex.textValue

Definition at line 13 of file ContentCodex.cs.

◆ textWeakspot

UIText ContentCodex.textWeakspot

Definition at line 17 of file ContentCodex.cs.

Referenced by RefreshInfo().

◆ transInfo

Transform ContentCodex.transInfo

Definition at line 27 of file ContentCodex.cs.

Referenced by RefreshList().


The documentation for this class was generated from the following file: