Elin Decompiled Documentation EA 23.316 Nightly
Loading...
Searching...
No Matches
BaseStats.cs
Go to the documentation of this file.
1using System;
2using System.Collections.Generic;
3using Newtonsoft.Json;
4using UnityEngine;
5
6public class BaseStats : EClass
7{
8 public static Chara CC;
9
10 [JsonProperty]
11 public int id;
12
14
16 {
17 get
18 {
20 if (row == null)
21 {
22 SourceStat.Row obj = EClass.sources.stats.map.TryGetValue(id) ?? EClass.sources.stats.alias["ConWet"];
23 SourceStat.Row row2 = obj;
24 _source = obj;
25 row = row2;
26 }
27 return row;
28 }
29 }
30
31 public virtual Emo2 EmoIcon => Emo2.none;
32
33 public virtual ConditionType Type => source.group.ToEnum<ConditionType>();
34
35 public virtual string idSprite => source.element.IsEmpty(source.alias);
36
37 public virtual bool ShowInWidget => true;
38
39 public virtual Chara Owner => CC;
40
41 public virtual Color GetColor(Gradient gradient)
42 {
43 return Color.white;
44 }
45
47 {
48 return GetColor(c.gradients[source.colors.IsEmpty("default")]);
49 }
50
51 public Color GetColor()
52 {
54 }
55
56 public virtual string GetText()
57 {
58 return null;
59 }
60
61 public virtual string GetPhaseStr()
62 {
63 return GetText();
64 }
65
66 public virtual int GetValue()
67 {
68 return 0;
69 }
70
71 public virtual int GetSortVal()
72 {
73 return source.id;
74 }
75
76 public virtual Sprite GetSprite()
77 {
78 return SpriteSheet.Get("Media/Graphics/Icon/Element/icon_elements", idSprite) ?? EClass.core.refs.spriteDefaultCondition;
79 }
80
81 public virtual void SetText(UIText t, SkinColorProfile cols = null)
82 {
83 if (cols == null)
84 {
85 cols = EClass.ui.skins.currentSkin.colors._default;
86 }
87 t.SetText(GetText(), GetColor(cols));
88 }
89
90 public virtual int GetPhase()
91 {
92 return 0;
93 }
94
95 public void PopText()
96 {
98 {
99 string phaseStr = GetPhaseStr();
100 if (!phaseStr.IsEmpty() && !(phaseStr == "#"))
101 {
102 Popper popper = EClass.scene.popper.Pop(Owner.renderer.PositionCenter(), "Condition");
103 Color c = GetColor() * 1.3f;
104 c.r += 0.3f;
105 c.g += 0.3f;
106 c.b += 0.3f;
107 popper.SetText(phaseStr, c);
108 }
109 }
110 }
111
112 public virtual void WriteNote(UINote n, Action<UINote> onWriteNote = null)
113 {
114 n.Clear();
115 n.AddHeader(source.GetName());
116 string text = (Lang.Has("contype_" + Type) ? ("(" + ("contype_" + Type).lang() + ") ") : "");
117 n.AddText("NoteText_flavor_element", text + source.GetDetail());
118 _WriteNote(n);
119 n.Build();
120 }
121
122 public virtual void _WriteNote(UINote n, bool asChild = false)
123 {
124 List<string> list = new List<string>();
125 string[] nullify = source.nullify;
126 foreach (string key in nullify)
127 {
128 list.Add("hintNullify".lang(EClass.sources.stats.alias[key].GetName()));
129 }
130 if (list.Count <= 0)
131 {
132 return;
133 }
134 if (!asChild)
135 {
136 n.Space(8);
137 }
138 foreach (string item in list)
139 {
140 n.AddText("_bullet".lang() + item);
141 }
142 }
143}
ConditionType
Definition: ConditionType.cs:2
Emo2
Definition: Emo2.cs:2
virtual ConditionType Type
Definition: BaseStats.cs:33
virtual void _WriteNote(UINote n, bool asChild=false)
Definition: BaseStats.cs:122
virtual Sprite GetSprite()
Definition: BaseStats.cs:76
Color GetColor()
Definition: BaseStats.cs:51
virtual string GetPhaseStr()
Definition: BaseStats.cs:61
virtual void SetText(UIText t, SkinColorProfile cols=null)
Definition: BaseStats.cs:81
static Chara CC
Definition: BaseStats.cs:8
virtual void WriteNote(UINote n, Action< UINote > onWriteNote=null)
Definition: BaseStats.cs:112
SourceStat.Row _source
Definition: BaseStats.cs:13
virtual bool ShowInWidget
Definition: BaseStats.cs:37
virtual string idSprite
Definition: BaseStats.cs:35
SourceStat.Row source
Definition: BaseStats.cs:16
virtual string GetText()
Definition: BaseStats.cs:56
virtual int GetPhase()
Definition: BaseStats.cs:90
virtual Color GetColor(Gradient gradient)
Definition: BaseStats.cs:41
virtual Emo2 EmoIcon
Definition: BaseStats.cs:31
virtual Chara Owner
Definition: BaseStats.cs:39
virtual Color GetColor(SkinColorProfile c)
Definition: BaseStats.cs:46
int id
Definition: BaseStats.cs:11
void PopText()
Definition: BaseStats.cs:95
virtual int GetSortVal()
Definition: BaseStats.cs:71
virtual int GetValue()
Definition: BaseStats.cs:66
Vector3 PositionCenter()
Definition: CardRenderer.cs:33
bool ShouldShowMsg
Definition: Card.cs:2508
CardRenderer renderer
Definition: Card.cs:64
Definition: Chara.cs:10
Sprite spriteDefaultCondition
Definition: CoreRef.cs:404
CoreRef refs
Definition: Core.cs:51
bool IsGameStarted
Definition: Core.cs:87
Definition: EClass.cs:6
static Scene scene
Definition: EClass.cs:31
static Core core
Definition: EClass.cs:7
static SourceManager sources
Definition: EClass.cs:43
static UI ui
Definition: EClass.cs:17
Definition: Lang.cs:7
static bool Has(string id)
Definition: Lang.cs:103
Popper Pop(Vector3 pos, string id, Sprite sprite)
Definition: Popper.cs:6
Popper SetText(string s, Color c=default(Color))
Definition: Popper.cs:28
PopperManager popper
Definition: Scene.cs:99
UD_String_Gradient gradients
static SkinColorProfile CurrentColors
Definition: SkinManager.cs:84
SourceStat stats
static Sprite Get(string id)
Definition: SpriteSheet.cs:28
Definition: UINote.cs:6
void Clear()
Definition: UINote.cs:35
UIItem AddHeader(string text, Sprite sprite=null)
Definition: UINote.cs:79
UIItem AddText(string text, FontColor color=FontColor.DontChange)
Definition: UINote.cs:113
void Build()
Definition: UINote.cs:49
Definition: UIText.cs:6
void SetText(string s)
Definition: UIText.cs:163