Elin Decompiled Documentation EA 23.288 Nightly
Loading...
Searching...
No Matches
TraitFigure.cs
Go to the documentation of this file.
1using UnityEngine;
2using UnityEngine.UI;
3
4public class TraitFigure : Trait
5{
7
8 public override bool CanBeHallucinated => false;
9
11
12 public virtual bool ShowShadow => true;
13
14 public virtual int GetMatColor()
15 {
16 return -1;
17 }
18
19 public override void OnSetCardGrid(ButtonGrid b)
20 {
21 if (!owner.c_idRefCard.IsEmpty())
22 {
23 SourceChara.Row row = EClass.sources.charas.map.TryGetValue(owner.c_idRefCard) ?? EClass.sources.charas.map["putty"];
24 Transform transform = b.Attach<Transform>("figure", rightAttach: false);
25 int idSkin = ((EClass.core.config.game.antiSpider && row.skinAntiSpider != 0) ? row.skinAntiSpider : 0);
26 row.SetImage(transform.GetChild(0).GetComponent<Image>(), null, 0, setNativeSize: false, 0, idSkin);
27 }
28 }
29
30 public override int GetValue()
31 {
32 if (source == null)
33 {
34 return base.GetValue();
35 }
36 return (base.GetValue() + source.LV * 50) * ((!source.multisize) ? 1 : 2) * ((source.quality < 4) ? 1 : 2);
37 }
38
39 public override void TrySetAct(ActPlan p)
40 {
41 if (p.input != ActInput.AllAction || source.tiles.Length <= 1)
42 {
43 return;
44 }
45 p.TrySetAct("actChangeType", delegate
46 {
47 UIContextMenu uIContextMenu = EClass.ui.CreateContextMenuInteraction();
48 uIContextMenu.AddSlider("actChangeType", (float a) => a.ToString() ?? "", owner.refVal, delegate(float b)
49 {
50 owner.refVal = (int)b;
51 }, 0f, source.tiles.Length - 1, isInt: true);
52 uIContextMenu.Show();
53 return false;
54 }, owner);
55 }
56}
ActInput
Definition: ActInput.cs:2
ActInput input
Definition: ActPlan.cs:154
bool TrySetAct(string lang, Func< bool > onPerform, Card tc, CursorInfo cursor=null, int dist=1, bool isHostileAct=false, bool localAct=true, bool canRepeat=false)
Definition: ActPlan.cs:372
Transform Attach(string id, bool rightAttach=true)
Definition: ButtonGrid.cs:63
int refVal
Definition: Card.cs:207
string c_idRefCard
Definition: Card.cs:1763
Definition: EClass.cs:6
static SourceManager sources
Definition: EClass.cs:43
static UI ui
Definition: EClass.cs:17
bool multisize
Definition: RenderRow.cs:64
void SetImage(Image image, Sprite sprite=null, int matCol=0, bool setNativeSize=true, int dir=0, int idSkin=0, Card card=null)
Definition: RenderRow.cs:361
int[] tiles
Definition: RenderRow.cs:10
int LV
Definition: RenderRow.cs:22
Dictionary< string, CardRow > map
Definition: SourceCard.cs:9
SourceCard cards
SourceChara charas
override void OnSetCardGrid(ButtonGrid b)
Definition: TraitFigure.cs:19
CardRow source
Definition: TraitFigure.cs:10
override void TrySetAct(ActPlan p)
Definition: TraitFigure.cs:39
virtual bool ShowShadow
Definition: TraitFigure.cs:12
override bool CanBeHallucinated
Definition: TraitFigure.cs:8
virtual int GetMatColor()
Definition: TraitFigure.cs:14
CardRenderer extraRenderer
Definition: TraitFigure.cs:6
override int GetValue()
Definition: TraitFigure.cs:30
Definition: Trait.cs:7
Card owner
Definition: Trait.cs:28
void Show(UIItem i)
UIContextMenuItem AddSlider(string text, Func< float, string > textFunc, float value, Action< float > action, float min=0f, float max=1f, bool isInt=false, bool hideOther=true, bool useInput=false)