Elin Decompiled Documentation EA 23.102 Nightly
Loading...
Searching...
No Matches
TaskCut.cs
Go to the documentation of this file.
1public class TaskCut : TaskDesignation
2{
4
5 public override int destDist => 1;
6
7 public override void OnStart()
8 {
10 {
11 owner.ShowEmo(Emo.straw);
12 }
13 else
14 {
15 owner.ShowEmo(Emo.cut);
16 }
17 }
18
19 public override HitResult GetHitResult()
20 {
22 {
23 return HitResult.Valid;
24 }
26 {
27 return HitResult.Valid;
28 }
29 return HitResult.Default;
30 }
31
32 public override void OnCreateProgress(Progress_Custom p)
33 {
34 p.maxProgress = pos.cell.sourceObj.hp / 10 + 1;
35 }
36
37 public override void OnProgress()
38 {
39 _ = pos.cell.sourceObj;
40 if (pos.cell.CanMakeStraw())
41 {
42 owner.SetTempHand(1006, -1);
43 }
44 else if (pos.cell.matObj.UseAxe)
45 {
46 owner.SetTempHand(1100, -1);
47 }
48 else if (pos.cell.matObj.UsePick)
49 {
50 owner.SetTempHand(1004, -1);
51 }
52 else
53 {
54 owner.SetTempHand(1000, -1);
55 }
57 pos.PlaySound(pos.cell.matObj.GetSoundImpact());
58 pos.cell.matObj.PlayHitEffect(pos);
59 pos.cell.matObj.AddBlood(pos);
60 pos.Animate(AnimeID.HitObj);
62 {
63 Act.TOOL.DamageHP(1);
64 }
65 }
66
67 public override void OnProgressComplete()
68 {
69 _ = pos.sourceObj.reqHarvest[0];
72 }
73}
AnimeID
Definition: AnimeID.cs:2
Emo
Definition: Emo.cs:2
HitResult
Definition: HitResult.cs:2
new Chara owner
Definition: AIAct.cs:14
override bool IsToolValid()
Definition: AIAct.cs:166
Definition: ACT.cs:62
static Thing TOOL
Definition: ACT.cs:83
static BuildMenu Instance
Definition: BuildMenu.cs:77
void DamageHP(int dmg, AttackSource attackSource=AttackSource.None, Card origin=null)
Definition: Card.cs:3735
void ShowEmo(Emo _emo=Emo.none, float duration=0f, bool skipSame=true)
Definition: Card.cs:5372
bool CanMakeStraw()
Definition: Cell.cs:1670
SourceMaterial.Row matObj
Definition: Cell.cs:1036
SourceObj.Row sourceObj
Definition: Cell.cs:1072
void SetTempHand(int right=0, int left=0)
Definition: Chara.cs:6057
override void LookAt(Card c)
Definition: Chara.cs:3219
bool godBuild
Definition: CoreDebug.cs:303
static CursorInfo IconCut
Definition: EClass.cs:5
static Map _map
Definition: EClass.cs:18
static CoreDebug debug
Definition: EClass.cs:48
static GameSetting setting
Definition: EClass.cs:34
bool toolConsumeHP
Definition: GameSetting.cs:333
void MineObj(Point point, Task task=null, Chara c=null)
Definition: Map.cs:1827
void SetDecal(int x, int z, int id=0, int amount=1, bool refresh=true)
Definition: Map.cs:2029
bool HasDecal
Definition: Point.cs:139
int x
Definition: Point.cs:36
int z
Definition: Point.cs:39
SoundSource PlaySound(string id, bool synced=true, float v=1f, bool spatial=true)
Definition: Point.cs:1217
SourceObj.Row sourceObj
Definition: Point.cs:69
bool HasMinableBlock
Definition: Point.cs:144
bool HasObj
Definition: Point.cs:137
Cell cell
Definition: Point.cs:51
void Animate(AnimeID id, bool animeBlock=false)
Definition: Point.cs:1266
override void OnProgress()
Definition: TaskCut.cs:37
override HitResult GetHitResult()
Definition: TaskCut.cs:19
override void OnProgressComplete()
Definition: TaskCut.cs:67
override int destDist
Definition: TaskCut.cs:5
override void OnStart()
Definition: TaskCut.cs:7
override CursorInfo CursorIcon
Definition: TaskCut.cs:3
override void OnCreateProgress(Progress_Custom p)
Definition: TaskCut.cs:32
Point pos
Definition: TaskPoint.cs:11