Elin Decompiled Documentation EA 23.102 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 public virtual Emo2 EmoIcon => Emo2.none;
18
19 public virtual ConditionType Type => source.group.ToEnum<ConditionType>();
20
21 public virtual string idSprite => source.element.IsEmpty(source.alias);
22
23 public virtual bool ShowInWidget => true;
24
25 public virtual Chara Owner => CC;
26
27 public virtual Color GetColor(Gradient gradient)
28 {
29 return Color.white;
30 }
31
33 {
34 return GetColor(c.gradients[source.colors.IsEmpty("default")]);
35 }
36
37 public Color GetColor()
38 {
40 }
41
42 public virtual string GetText()
43 {
44 return null;
45 }
46
47 public virtual string GetPhaseStr()
48 {
49 return GetText();
50 }
51
52 public virtual int GetValue()
53 {
54 return 0;
55 }
56
57 public virtual Sprite GetSprite()
58 {
59 return SpriteSheet.Get("Media/Graphics/Icon/Element/icon_elements", idSprite) ?? EClass.core.refs.spriteDefaultCondition;
60 }
61
62 public virtual void SetText(UIText t, SkinColorProfile cols = null)
63 {
64 if (cols == null)
65 {
66 cols = EClass.ui.skins.currentSkin.colors._default;
67 }
68 t.SetText(GetText(), GetColor(cols));
69 }
70
71 public virtual int GetPhase()
72 {
73 return 0;
74 }
75
76 public void PopText()
77 {
79 {
80 string phaseStr = GetPhaseStr();
81 if (!phaseStr.IsEmpty() && !(phaseStr == "#"))
82 {
83 Popper popper = EClass.scene.popper.Pop(Owner.renderer.PositionCenter(), "Condition");
84 Color c = GetColor() * 1.3f;
85 c.r += 0.3f;
86 c.g += 0.3f;
87 c.b += 0.3f;
88 popper.SetText(phaseStr, c);
89 }
90 }
91 }
92
93 public virtual void WriteNote(UINote n, Action<UINote> onWriteNote = null)
94 {
95 n.Clear();
96 n.AddHeader(source.GetName());
97 n.AddText("NoteText_flavor_element", source.GetDetail());
98 _WriteNote(n);
99 n.Build();
100 }
101
102 public virtual void _WriteNote(UINote n, bool asChild = false)
103 {
104 List<string> list = new List<string>();
105 string[] nullify = source.nullify;
106 foreach (string key in nullify)
107 {
108 list.Add("hintNullify".lang(EClass.sources.stats.alias[key].GetName()));
109 }
110 if (list.Count <= 0)
111 {
112 return;
113 }
114 if (!asChild)
115 {
116 n.Space(8);
117 }
118 foreach (string item in list)
119 {
120 n.AddText("_bullet".lang() + item);
121 }
122 }
123}
ConditionType
Definition: ConditionType.cs:2
Emo2
Definition: Emo2.cs:2
virtual ConditionType Type
Definition: BaseStats.cs:19
virtual void _WriteNote(UINote n, bool asChild=false)
Definition: BaseStats.cs:102
virtual Sprite GetSprite()
Definition: BaseStats.cs:57
Color GetColor()
Definition: BaseStats.cs:37
virtual string GetPhaseStr()
Definition: BaseStats.cs:47
virtual void SetText(UIText t, SkinColorProfile cols=null)
Definition: BaseStats.cs:62
static Chara CC
Definition: BaseStats.cs:8
virtual void WriteNote(UINote n, Action< UINote > onWriteNote=null)
Definition: BaseStats.cs:93
SourceStat.Row _source
Definition: BaseStats.cs:13
virtual bool ShowInWidget
Definition: BaseStats.cs:23
virtual string idSprite
Definition: BaseStats.cs:21
SourceStat.Row source
Definition: BaseStats.cs:15
virtual string GetText()
Definition: BaseStats.cs:42
virtual int GetPhase()
Definition: BaseStats.cs:71
virtual Color GetColor(Gradient gradient)
Definition: BaseStats.cs:27
virtual Emo2 EmoIcon
Definition: BaseStats.cs:17
virtual Chara Owner
Definition: BaseStats.cs:25
virtual Color GetColor(SkinColorProfile c)
Definition: BaseStats.cs:32
int id
Definition: BaseStats.cs:11
void PopText()
Definition: BaseStats.cs:76
virtual int GetValue()
Definition: BaseStats.cs:52
Vector3 PositionCenter()
Definition: CardRenderer.cs:33
bool ShouldShowMsg
Definition: Card.cs:2314
CardRenderer renderer
Definition: Card.cs:57
Definition: Chara.cs:10
Sprite spriteDefaultCondition
Definition: CoreRef.cs:387
CoreRef refs
Definition: Core.cs:51
bool IsGameStarted
Definition: Core.cs:84
Definition: EClass.cs:5
static Scene scene
Definition: EClass.cs:30
static Core core
Definition: EClass.cs:6
static SourceManager sources
Definition: EClass.cs:42
static UI ui
Definition: EClass.cs:16
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:95
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:159