Elin Decompiled Documentation EA 23.275 Nightly
Loading...
Searching...
No Matches
TraitFakeTile.cs
Go to the documentation of this file.
1using System.Collections.Generic;
2
3public class TraitFakeTile : Trait
4{
5 public override TileMode tileMode => TileMode.FakeBlock;
6
7 public override RenderData GetRenderData()
8 {
9 return EClass.sources.blocks.map[owner.refVal].renderData;
10 }
11
12 public override void OnCrafted(Recipe recipe, List<Thing> ings)
13 {
14 owner.refVal = 0;
15 if (this is TraitFakeBlock && ings != null && ings.Count > 0)
16 {
17 TraitBlock traitBlock = ings[0].trait as TraitBlock;
18 owner.refVal = traitBlock.source.id;
19 }
20 }
21
22 public override void TrySetHeldAct(ActPlan p)
23 {
24 if (this is TraitFakeBlock)
25 {
26 if (p.pos.cell._block == 0)
27 {
28 return;
29 }
30 }
31 else if (p.pos.cell.obj == 0)
32 {
33 return;
34 }
35 TileRow source = ((this is TraitFakeBlock) ? ((TileRow)p.pos.sourceBlock) : ((TileRow)p.pos.sourceObj));
37 if (!source.ContainsTag("noFake"))
38 {
39 p.TrySetAct("actCopyBlock", delegate
40 {
41 owner.Dye(mat);
42 owner.refVal = source.id;
43 SE.Play("offering");
45 HotItemHeld.recipe = GetRecipe();
47 return false;
48 });
49 }
50 }
51}
Point pos
Definition: ActPlan.cs:152
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:368
virtual CardRenderer _CreateRenderer()
Definition: Card.cs:6143
void Dye(string idMat)
Definition: Card.cs:6181
int refVal
Definition: Card.cs:207
virtual Thing Thing
Definition: Card.cs:2084
byte _block
Definition: Cell.cs:30
SourceMaterial.Row matObj
Definition: Cell.cs:1036
byte obj
Definition: Cell.cs:38
Definition: EClass.cs:6
static SourceManager sources
Definition: EClass.cs:43
static void SetDirty(Thing t)
SourceMaterial.Row matBlock
Definition: Point.cs:55
SourceBlock.Row sourceBlock
Definition: Point.cs:63
SourceObj.Row sourceObj
Definition: Point.cs:69
Cell cell
Definition: Point.cs:51
Definition: Recipe.cs:7
bool ContainsTag(string _tag)
Definition: RenderRow.cs:148
SourceBlock blocks
int id
Definition: TileRow.cs:8
override TileRow source
Definition: TraitBlock.cs:3
override TileMode tileMode
Definition: TraitFakeTile.cs:5
override void OnCrafted(Recipe recipe, List< Thing > ings)
override void TrySetHeldAct(ActPlan p)
override RenderData GetRenderData()
Definition: TraitFakeTile.cs:7
Definition: Trait.cs:7
virtual Recipe GetRecipe()
Definition: Trait.cs:830
TileMode
Definition: Trait.cs:9
Card owner
Definition: Trait.cs:28