Elin Decompiled Documentation EA 23.102 Nightly
Loading...
Searching...
No Matches
HotItemNoItem.cs
Go to the documentation of this file.
1using UnityEngine;
2
4{
5 public override Sprite GetSprite()
6 {
8 }
9
10 public static bool _TrySetAct(ActPlan p)
11 {
13 {
14 return false;
15 }
16 Card tg = null;
17 p.pos.ListVisibleCards().ForeachReverse(delegate(Card a)
18 {
20 {
21 tg = a;
22 return true;
23 }
24 return false;
25 });
26 if (tg != null)
27 {
28 return p.TrySetAct("actHold", delegate
29 {
30 if (tg.ExistsOnMap)
31 {
32 if (!EClass.pc.CanLift(tg))
33 {
34 EClass.pc.Say("tooHeavy", tg);
35 return false;
36 }
37 if (tg.HasEditorTag(EditorTag.TreasureMelilith))
38 {
39 if (EClass.player.flags.pickedMelilithTreasure)
40 {
41 EClass.pc.PlaySound("curse3");
42 EClass.pc.PlayEffect("curse");
43 EClass.pc.SetFeat(1206, 1, msg: true);
44 EClass.player.flags.gotMelilithCurse = true;
45 }
46 else
47 {
48 Msg.Say("pickedMelilithTreasure");
49 EClass.player.flags.pickedMelilithTreasure = true;
50 EClass.game.quests.Get<QuestCursedManor>()?.NextPhase();
51 }
52 tg.c_editorTags = null;
53 }
54 EClass.pc.HoldCard(tg);
55 if (EClass.pc.held != null)
56 {
57 tg.PlaySoundHold(spatial: false);
58 EClass.player.RefreshCurrentHotItem();
59 ActionMode.Adv.planRight.Update(ActionMode.Adv.mouseTarget);
60 EClass.pc.renderer.Refresh();
61 }
62 }
63 return true;
64 }, tg, null, 1, isHostileAct: false, localAct: false);
65 }
66 TaskHarvest taskHarvest = TaskHarvest.TryGetAct(EClass.pc, p.pos);
67 if (taskHarvest != null)
68 {
69 p.TrySetAct(taskHarvest);
70 }
71 return false;
72 }
73
74 public override bool TrySetAct(ActPlan p)
75 {
76 return _TrySetAct(p);
77 }
78}
EditorTag
Definition: EditorTag.cs:2
if(item3.idFile==idFirstFile &&item3.id==idFirstTopic)
Definition: UIBook.cs:627
bool IsNeighborBlocked
Definition: ActPlan.cs:178
Point pos
Definition: ActPlan.cs:149
bool IsSelfOrNeighbor
Definition: ActPlan.cs:175
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:344
Definition: Card.cs:11
virtual bool isThing
Definition: Card.cs:1957
bool isNPCProperty
Definition: Card.cs:526
bool ExistsOnMap
Definition: Card.cs:1961
TileType TileType
Definition: Card.cs:2011
Point pos
Definition: Card.cs:55
string c_editorTags
Definition: Card.cs:1601
Trait trait
Definition: Card.cs:49
bool HasEditorTag(EditorTag tag)
Definition: Card.cs:2460
Card held
Definition: Chara.cs:67
void HoldCard(Card t, int num=-1)
Definition: Chara.cs:4084
Sprite noHotItem
Definition: CoreRef.cs:110
Icons icons
Definition: CoreRef.cs:339
CoreRef refs
Definition: Core.cs:51
Definition: EClass.cs:5
static Core core
Definition: EClass.cs:6
static Chara pc
Definition: EClass.cs:14
override bool TrySetAct(ActPlan p)
override Sprite GetSprite()
Definition: HotItemNoItem.cs:5
static bool _TrySetAct(ActPlan p)
List< Card > ListVisibleCards()
Definition: Point.cs:1039
static TaskHarvest TryGetAct(Chara c, Point p)
Definition: TaskHarvest.cs:114
virtual bool CanBeHeld
Definition: TileType.cs:247
virtual bool CanBeHeld
Definition: Trait.cs:269