Elin Decompiled Documentation EA 23.200 Stable
Loading...
Searching...
No Matches
TaskMine Class Reference
Inheritance diagram for TaskMine:
BaseTaskHarvest TaskDesignation TaskPoint ISyncScreen Task IInspect AIAct Act Element EClass

Public Types

enum  Mode { Default , Ramp }
 
- Public Types inherited from BaseTaskHarvest
enum  HarvestType {
  Floor , Block , Obj , Thing ,
  Disassemble
}
 
- Public Types inherited from AIAct
enum  Status { Running , Fail , Success }
 
- Public Types inherited from Act
enum  CostType { None , MP , SP }
 
- Public Types inherited from IInspect
enum  NoteMode { Default , Recipe , Product , Info }
 

Public Member Functions

override string GetTextSmall (Card c)
 
override void OnCreateProgress (Progress_Custom p)
 
override void DrawMarker (int x, int z, RenderParam p)
 
override HitResult GetHitResult ()
 
override void OnProgressComplete ()
 
- Public Member Functions inherited from BaseTaskHarvest
virtual string GetBaseText (string str)
 
override string GetTextSmall (Card c)
 
override string GetText (string str="")
 
void SetTarget (Chara c, Thing _tool=null)
 
int GetToolEfficiency (Thing t, SourceMaterial.Row mat)
 
override bool CanProgress ()
 
int[] GetToolEfficiency (SourceMaterial.Row mat)
 
string GetTextDifficulty ()
 
- Public Member Functions inherited from TaskDesignation
virtual string GetTextOrbit ()
 
bool PointHasOtherDesignation ()
 
virtual void DrawMarker (int x, int z, RenderParam p)
 
virtual void Draw (int x, int z, RenderParam p)
 
virtual void OnEnterScreen ()
 
virtual void OnLeaveScreen ()
 
virtual void TrySpawnOrbit ()
 
void DespawnOrbit ()
 
- Public Member Functions inherited from TaskPoint
override bool CanManualCancel ()
 
override bool CanPerform ()
 
override bool _CanPerformTask (Chara chara, int radius)
 
override IEnumerable< StatusRun ()
 
void OnInspect ()
 
void WriteNote (UINote n, Action< UINote > onWriteNote=null, IInspect.NoteMode mode=IInspect.NoteMode.Default, Recipe recipe=null)
 
- Public Member Functions inherited from Task
virtual HitResult GetHitResult ()
 
override void OnSuccess ()
 
void TryLater (int min=30)
 
Status Destroy ()
 
virtual void OnDestroy ()
 
override Status Cancel ()
 
override void OnReset ()
 
override bool CanProgress ()
 
bool CanPerformTask (Chara chara, int radius)
 
virtual bool _CanPerformTask (Chara chara, int radius)
 
virtual void OnAdd ()
 
void ToggleSuspend ()
 
- Public Member Functions inherited from AIAct
override string ToString ()
 
override MultiSprite GetStateIcon ()
 
virtual bool ShouldAllyAttack (Chara tg)
 
virtual Point GetDestination ()
 
AIProgress GetProgress ()
 
string GetCurrentActionText ()
 
override bool IsToolValid ()
 
virtual void OnStart ()
 
void SetOwner (Chara c)
 
virtual void OnSetOwner ()
 
void SetChild (AIAct seq, Func< Status > _onChildFail=null)
 
void Start ()
 
override bool Perform ()
 
Status Restart ()
 
Status Success (Action action=null)
 
virtual void OnSuccess ()
 
bool TryCancel (Card c)
 
virtual Status Cancel ()
 
virtual void OnCancel ()
 
virtual void OnCancelOrSuccess ()
 
virtual bool CanManualCancel ()
 
Status KeepRunning ()
 
void Reset ()
 
virtual void OnReset ()
 
Status Tick ()
 
virtual IEnumerable< StatusRun ()
 
Status TickChild ()
 
Status Do (AIAct _seq, Func< Status > _onChildFail=null)
 
Status DoGotoInteraction (Point pos, Func< Status > _onChildFail=null)
 
Status DoGoto (Point pos, int dist=0, bool ignoreConnection=false, Func< Status > _onChildFail=null)
 
Status DoGoto (Card card, Func< Status > _onChildFail=null)
 
Status DoGoto (Card card, int dist, Func< Status > _onChildFail=null)
 
Status DoGotoSpot (Card card, Func< Status > _onChildFail=null)
 
Status DoGoto< T > (Func< Status > _onChildFail=null)
 
Status DoGotoSpot< T > (Func< Status > _onChildFail=null, bool ignoreAccessType=false)
 
Status DoGrab (Card card, int num=-1, bool pickHeld=false, Func< Status > _onChildFail=null)
 
Status DoGrab< T > ()
 
Status DoProgress ()
 
Status DoIdle (int repeat=3)
 
Status DoWait (int count=1)
 
virtual AIProgress CreateProgress ()
 
virtual void OnCreateProgress (Progress_Custom p)
 
virtual bool CanProgress ()
 
virtual void OnBeforeProgress ()
 
virtual void OnProgress ()
 
virtual void OnProgressComplete ()
 
void SimulateZone (int days)
 
virtual void OnSimulateZone (int days)
 
virtual void OnSimulatePosition ()
 
- Public Member Functions inherited from Act
virtual CursorInfo GetCursorIcon (Card c)
 
virtual MultiSprite GetStateIcon ()
 
override Sprite GetSprite ()
 
virtual bool ShowMouseHint (Card c)
 
virtual bool IsValidTC (Card c)
 
virtual string GetHintText (string str="")
 
virtual string GetText (string str="")
 
virtual string GetTextSmall (Card c)
 
bool IsTargetHostileParty ()
 
virtual Color GetActPlanColor ()
 
virtual bool Perform ()
 
virtual bool CanPerform ()
 
bool Perform (Chara _cc, Card _tc=null, Point _tp=null)
 
bool CanPerform (Chara _cc, Card _tc=null, Point _tp=null)
 
virtual bool IsToolValid ()
 
new void SetImage (Image image)
 
virtual void OnMarkMapHighlights ()
 
virtual bool ShouldMapHighlight (Point p)
 
- Public Member Functions inherited from Element
virtual SourceElement.Row GetSource ()
 
virtual int GetSourcePotential (int v)
 
virtual Sprite GetSprite ()
 
int GetMaterialSourceValue (Thing t, int v)
 
virtual int GetSourceValue (int v, int lv, SourceValueType type)
 
virtual Sprite GetIcon (string suffix="")
 
bool IsActive (Card c)
 
int SortVal (bool charaSheet=false)
 
virtual bool CanLink (ElementContainer owner)
 
bool HasTag (string tag)
 
void SetImage (Image i)
 
virtual string GetDetail ()
 
bool IsFactionElement (Chara c)
 
Element GetParent (Card c)
 
void WriteNote (UINote n, ElementContainer owner=null, Action< UINote > onWriteNote=null)
 
void WriteNoteWithRef (UINote n, ElementContainer owner, Action< UINote > onWriteNote, Element refEle)
 
void _WriteNote (UINote n, Chara c, Act act)
 
void AddHeaderAbility (UINote n)
 
void _WriteNote (UINote n, ElementContainer owner, Action< UINote > onWriteNote, bool isRef, bool addHeader=true)
 
void AddEncNote (UINote n, Card Card, ElementContainer.NoteMode mode=ElementContainer.NoteMode.Default, Func< Element, string, string > funcText=null, Action< UINote, Element > onAddNote=null)
 
virtual void OnWriteNote (UINote n, ElementContainer owner)
 
virtual void OnChangeValue ()
 
void CheckLevelBonus (ElementContainer owner, UINote n=null)
 
int GetSortVal (UIList.SortMode m)
 
virtual Act.Cost GetCost (Chara c)
 
virtual int GetPower (Card c)
 
virtual void SetTextValue (UIText text)
 
virtual bool IsPurchaseFeatReqMet (ElementContainer owner, int lv=-1)
 
virtual void WritePurchaseReq (UINote n, int lv=1)
 
void WriteNote (UINote n, Action< UINote > onWriteNote=null, NoteMode mode=NoteMode.Default, Recipe recipe=null)
 
void OnInspect ()
 
void OnEnterScreen ()
 
void OnLeaveScreen ()
 

Static Public Member Functions

static bool CanMine (Point pos, Card t)
 
- Static Public Member Functions inherited from BaseTaskHarvest
static Thing GetBestTool (Chara c, Point p)
 
static int GetReqEle (string _raw)
 
- Static Public Member Functions inherited from Act
static void SetReference (Chara _cc, Card _tc=null, Point _tp=null)
 
static void SetTool (Thing t)
 
- Static Public Member Functions inherited from Element
static string GetName (string alias)
 
static SourceElement.Row Get (int id)
 
static Dictionary< int, int > GetElementMap (int[] list)
 
static Dictionary< int, int > GetElementMap (int[] list, Dictionary< int, int > map)
 
static SourceElement.Row GetRandomElement (int lv=1, bool useWeight=true)
 
static Element Create (int id, int v=0)
 
static Element Create (string id, int v=1)
 
static int GetId (string alias)
 
static int GetResistLv (int v)
 
static int GetResistDamage (int dmg, int v, int power=0)
 
- Static Public Member Functions inherited from EClass
static int rndSeed (int a, int seed)
 
static int rnd (long a)
 
static int rnd (int a)
 
static int curve (int a, int start, int step, int rate=75)
 
static int rndHalf (int a)
 
static float rndf (float a)
 
static int rndSqrt (int a)
 
static void Wait (float a, Card c)
 
static void Wait (float a, Point p)
 
static int Bigger (int a, int b)
 
static int Smaller (int a, int b)
 

Public Attributes

Mode mode
 
int ramp = 3
 
bool mined
 
- Public Attributes inherited from BaseTaskHarvest
Thing target
 
Element reqElement
 
int matHardness
 
int idEle
 
int reqLv
 
int toolLv
 
int maxProgress
 
int efficiency
 
int difficulty
 
int effectFrame = 1
 
bool isToolRequired
 
Thing tool
 
- Public Attributes inherited from TaskDesignation
long sync
 
bool isSynced
 
TCOrbitTask orbit
 
- Public Attributes inherited from TaskPoint
Point pos = new Point()
 
bool isRepeated
 
- Public Attributes inherited from Task
TaskList taskList
 
bool isDestroyed
 
int nextTry
 
bool suspended
 
- Public Attributes inherited from AIAct
new Chara owner
 
Status status
 
IEnumerator< StatusEnumerator
 
AIAct child
 
AIAct parent
 
byte restartCount
 
Func< StatusonChildFail
 
Func< bool > isFail
 
- Public Attributes inherited from Element
SourceElement.Row _source
 
int id
 
int vBase
 
int vExp
 
int vPotential
 
int vTempPotential
 
int vLink
 
int vSource
 
int vSourcePotential
 
ElementContainer owner
 

Properties

override HarvestType harvestType [get]
 
override string IdRecipe [get]
 
override int destDist [get]
 
override bool isBlock [get]
 
override int RightHand [get]
 
override bool destIgnoreConnection [get]
 
override bool ShowMapHighlightBlock [get]
 
override CursorInfo CursorIcon [get]
 
override bool IsHostileAct [get]
 
- Properties inherited from BaseTaskHarvest
bool IsTooHard [get]
 
bool IsHarvest [get]
 
virtual string IdRecipe [get]
 
virtual bool CanReapSeed [get]
 
virtual HarvestType harvestType [get]
 
virtual bool IsGrowth [get]
 
override bool CanPressRepeat [get]
 
override int LeftHand [get]
 
override CursorInfo CursorIcon [get]
 
- Properties inherited from TaskDesignation
override bool HasProgress [get]
 
virtual int idMarker [get]
 
virtual int W [get]
 
virtual int H [get]
 
virtual bool ShowOrbit [get]
 
virtual bool Working [get]
 
override bool ShowAuto [get]
 
override CursorInfo CursorIcon [get]
 
TaskManager.Designations Designations [get]
 
long Sync [get]
 
- Properties inherited from TaskPoint
override bool HasProgress [get]
 
virtual int destDist [get]
 
virtual bool destIgnoreConnection [get]
 
virtual bool isBlock [get]
 
virtual bool Loop [get]
 
bool CanInspect [get]
 
string InspectName [get]
 
Point InspectPoint [get]
 
Vector3 InspectPosition [get]
 
- Properties inherited from Task
override TargetType TargetType [get]
 
- Properties inherited from AIAct
virtual bool IsRunning [get]
 
bool IsChildRunning [get]
 
bool IsMoveAI [get]
 
virtual int MaxRestart [get]
 
virtual new string Name [get]
 
virtual MultiSprite stateIcon [get]
 
virtual Sprite actionIcon [get]
 
virtual bool IsNoGoal [get]
 
virtual bool IsAutoTurn [get]
 
virtual bool IsIdle [get]
 
virtual bool CancelOnAggro [get]
 
virtual bool PushChara [get]
 
virtual int MaxProgress [get]
 
virtual bool ShowProgress [get]
 
virtual bool UseTurbo [get]
 
virtual int CurrentProgress [get]
 
virtual bool ShowCursor [get]
 
virtual bool CancelWhenDamaged [get]
 
virtual bool CancelWhenMoved [get]
 
virtual bool InformCancel [get]
 
virtual Thing RenderThing [get]
 
AIAct Current [get]
 
override bool IsAct [get]
 
override bool ShowPotential [get]
 
override bool UsePotential [get]
 
override bool ShowRelativeAttribute [get]
 
virtual bool HasProgress [get]
 
- Properties inherited from Act
override bool ShowPotential [get]
 
override bool UsePotential [get]
 
override bool ShowRelativeAttribute [get]
 
virtual CursorInfo CursorIcon [get]
 
virtual string ID [get]
 
virtual bool IsAct [get]
 
virtual bool WillEndTurn [get]
 
virtual bool CloseLayers [get]
 
virtual int LeftHand [get]
 
virtual int RightHand [get]
 
virtual int ElementPowerMod [get]
 
virtual bool ShowMapHighlight [get]
 
virtual bool ShowMapHighlightBlock [get]
 
virtual bool PickHeldOnStart [get]
 
virtual bool DropHeldOnStart [get]
 
virtual bool CanPressRepeat [get]
 
virtual bool CanAutofire [get]
 
virtual bool ResetAxis [get]
 
virtual bool RequireTool [get]
 
virtual bool IsHostileAct [get]
 
virtual bool HideRightInfo [get]
 
virtual bool HaveLongPressAction [get]
 
virtual float Radius [get]
 
virtual int PerformDistance [get]
 
virtual int MaxRadius [get]
 
virtual TargetType TargetType [get]
 
virtual bool LocalAct [get]
 
virtual bool CanRapidFire [get]
 
virtual float RapidDelay [get]
 
virtual bool ShowAuto [get]
 
virtual bool IsCrime [get]
 
- Properties inherited from Element
SourceElement.Row source [get]
 
virtual int DisplayValue [get]
 
virtual int MinValue [get]
 
int Value [get]
 
int ValueWithoutLink [get]
 
virtual int MinPotential [get]
 
int Potential [get]
 
virtual bool CanGainExp [get]
 
bool IsFlag [get]
 
virtual string Name [get]
 
virtual string FullName [get]
 
virtual int ExpToNext [get]
 
virtual bool UseExpMod [get]
 
virtual int CostTrain [get]
 
virtual int CostLearn [get]
 
virtual bool ShowXP [get]
 
virtual bool ShowMsgOnValueChanged [get]
 
virtual bool ShowValue [get]
 
virtual bool ShowPotential [get]
 
virtual bool UsePotential [get]
 
virtual bool PotentialAsStock [get]
 
virtual bool ShowRelativeAttribute [get]
 
virtual bool ShowBonuses [get]
 
virtual string ShortName [get]
 
bool IsGlobalElement [get]
 
bool IsFactionWideElement [get]
 
bool IsPartyWideElement [get]
 
virtual bool ShowEncNumber [get]
 
bool IsTrait [get]
 
bool IsFoodTrait [get]
 
bool IsFoodTraitMain [get]
 
bool IsMainAttribute [get]
 
Act act [get]
 
- Properties inherited from EClass
static Game game [get]
 
static bool AdvMode [get]
 
static Player player [get]
 
static Chara pc [get]
 
static UI ui [get]
 
static Map _map [get]
 
static Zone _zone [get]
 
static FactionBranch Branch [get]
 
static FactionBranch BranchOrHomeBranch [get]
 
static Faction Home [get]
 
static Faction Wilds [get]
 
static Scene scene [get]
 
static BaseGameScreen screen [get]
 
static GameSetting setting [get]
 
static GameData gamedata [get]
 
static ColorProfile Colors [get]
 
static World world [get]
 
static SourceManager sources [get]
 
static SourceManager editorSources [get]
 
static SoundManager Sound [get]
 
static CoreDebug debug [get]
 
- Properties inherited from IInspect
bool CanInspect [get]
 
string InspectName [get]
 
Point InspectPoint [get]
 
Vector3 InspectPosition [get]
 
- Properties inherited from ISyncScreen
long Sync [get]
 

Additional Inherited Members

- Static Public Attributes inherited from Act
static Chara CC
 
static Card TC
 
static Point TP = new Point()
 
static Thing TOOL
 
static int powerMod = 100
 
static bool forcePt
 
static Act CurrentAct
 
- Static Public Attributes inherited from Element
const int Div = 5
 
static Element Void = new Element()
 
static int[] List_MainAttributes = new int[9] { 70, 72, 71, 77, 74, 75, 76, 73, 79 }
 
static int[] List_MainAttributesMajor = new int[8] { 70, 72, 71, 77, 74, 75, 76, 73 }
 
static int[] List_Body = new int[4] { 70, 72, 71, 77 }
 
static int[] List_Mind = new int[4] { 74, 75, 76, 73 }
 
static List< SourceElement.RowListElements = new List<SourceElement.Row>()
 
static List< SourceElement.RowListAttackElements = new List<SourceElement.Row>()
 
- Static Public Attributes inherited from EClass
static Core core
 

Detailed Description

Definition at line 1 of file TaskMine.cs.

Member Enumeration Documentation

◆ Mode

Enumerator
Default 
Ramp 

Definition at line 3 of file TaskMine.cs.

Member Function Documentation

◆ CanMine()

static bool TaskMine.CanMine ( Point  pos,
Card  t 
)
inlinestatic

Definition at line 33 of file TaskMine.cs.

34 {
35 if (t != null && pos.HasBlock && (!pos.HasObj || !pos.sourceObj.tileType.IsBlockMount))
36 {
37 if (t.HasElement(220))
38 {
39 return true;
40 }
41 if ((pos.matBlock.category == "wood" || pos.matBlock.category == "grass") && t.HasElement(225))
42 {
43 return true;
44 }
45 }
46 return false;
47 }
bool HasElement(int ele, int req=1)
Definition: Card.cs:5725
SourceMaterial.Row matBlock
Definition: Point.cs:55
SourceObj.Row sourceObj
Definition: Point.cs:69
bool HasObj
Definition: Point.cs:137
bool HasBlock
Definition: Point.cs:141
Point pos
Definition: TaskPoint.cs:11

References Point.HasBlock, Card.HasElement(), Point.HasObj, Point.matBlock, TaskPoint.pos, and Point.sourceObj.

Referenced by AM_Adv.HighlightWall(), OnCreateProgress(), and HotItemHeld.TrySetToolAct().

◆ DrawMarker()

override void TaskMine.DrawMarker ( int  x,
int  z,
RenderParam  p 
)
inlinevirtual

Reimplemented from TaskDesignation.

Definition at line 95 of file TaskMine.cs.

96 {
98 {
100 }
101 else
102 {
103 base.DrawMarker(x, z, p);
104 }
105 }
override bool IsRoofEditMode(Card c=null)
Definition: AM_Mine.cs:19
static AM_Mine Mine
Definition: ActionMode.cs:33
ScreenGuide guide
BlockColors blockColors
Definition: EClass.cs:5
static ColorProfile Colors
Definition: EClass.cs:38
static BaseGameScreen screen
Definition: EClass.cs:32
bool HasWallOrFence
Definition: Point.cs:155
void DrawWall(Point point, int color, bool useMarkerPass=false, float offsetZ=0f)
Definition: ScreenGuide.cs:42
virtual bool Working

References ColorProfile.BlockColors.ActiveOpacity, ColorProfile.blockColors, EClass.Colors, ScreenGuide.DrawWall(), BaseGameScreen.guide, Point.HasWallOrFence, ColorProfile.BlockColors.InactiveOpacity, AM_Mine.IsRoofEditMode(), ActionMode.Mine, TaskPoint.pos, EClass.screen, and TaskDesignation.Working.

◆ GetHitResult()

override HitResult TaskMine.GetHitResult ( )
inlinevirtual

Reimplemented from Task.

Definition at line 107 of file TaskMine.cs.

108 {
110 {
111 if (pos.cell._roofBlock == 0)
112 {
113 return HitResult.Default;
114 }
115 return HitResult.Valid;
116 }
117 if (pos.cell.HasBlock || !pos.cell.isSeen)
118 {
119 if (pos.sourceBlock.tileType.Invisible && !ActionMode.Mine.IsActive)
120 {
121 return HitResult.Default;
122 }
123 if (mode == Mode.Ramp && (pos.cell.HasRamp || EClass._map.GetRampDir(pos.x, pos.z, EClass.sources.blocks.rows[ramp].tileType) == -1))
124 {
125 return HitResult.Default;
126 }
127 return HitResult.Valid;
128 }
129 if (!mined && !pos.HasObj && owner != null && !owner.IsAgent && pos.Equals(owner.pos) && pos.Installed == null && EClass._zone.CanDigUnderground)
130 {
131 return HitResult.Valid;
132 }
133 return HitResult.Default;
134 }
HitResult
Definition: HitResult.cs:2
new Chara owner
Definition: AIAct.cs:14
bool IsAgent
Definition: Card.cs:2211
Point pos
Definition: Card.cs:57
bool HasBlock
Definition: Cell.cs:643
byte _roofBlock
Definition: Cell.cs:50
bool isSeen
Definition: Cell.cs:282
bool HasRamp
Definition: Cell.cs:837
static Zone _zone
Definition: EClass.cs:20
static Map _map
Definition: EClass.cs:18
static SourceManager sources
Definition: EClass.cs:42
int GetRampDir(int x, int z, TileType blockType=null)
Definition: Map.cs:2153
Thing Installed
Definition: Point.cs:315
SourceBlock.Row sourceBlock
Definition: Point.cs:63
int x
Definition: Point.cs:36
int z
Definition: Point.cs:39
bool Equals(int _x, int _z)
Definition: Point.cs:944
Cell cell
Definition: Point.cs:51
SourceBlock blocks
int ramp
Definition: TaskMine.cs:11
bool mined
Definition: TaskMine.cs:13
Mode mode
Definition: TaskMine.cs:9
virtual bool CanDigUnderground
Definition: Zone.cs:268

References EClass._map, Cell._roofBlock, EClass._zone, SourceManager.blocks, Zone.CanDigUnderground, Point.cell, Point.Equals(), Map.GetRampDir(), Cell.HasBlock, Point.HasObj, Cell.HasRamp, Point.Installed, Card.IsAgent, AM_Mine.IsRoofEditMode(), Cell.isSeen, ActionMode.Mine, mined, mode, AIAct.owner, Card.pos, TaskPoint.pos, ramp, Point.sourceBlock, EClass.sources, Point.x, and Point.z.

◆ GetTextSmall()

override string TaskMine.GetTextSmall ( Card  c)
inlinevirtual

Reimplemented from BaseTaskHarvest.

Definition at line 49 of file TaskMine.cs.

50 {
51 if (!pos.cell.HasBlock)
52 {
53 return pos.cell.GetFloorName();
54 }
55 return pos.cell.GetBlockName();
56 }
string GetFloorName()
Definition: Cell.cs:1594
string GetBlockName()
Definition: Cell.cs:1589

References Point.cell, Cell.GetBlockName(), Cell.GetFloorName(), Cell.HasBlock, and TaskPoint.pos.

◆ OnCreateProgress()

override void TaskMine.OnCreateProgress ( Progress_Custom  p)
inlinevirtual

Reimplemented from AIAct.

Definition at line 58 of file TaskMine.cs.

59 {
61 p.textHint = pos.cell.GetBlockName();
62 p.maxProgress = maxProgress;
63 p.onProgressBegin = delegate
64 {
65 if (!CanMine(pos, owner.Tool))
66 {
67 p.Cancel();
68 }
69 else if (base.IsTooHard)
70 {
71 owner.Say("tooHardToMine", owner, pos.cell.GetBlockName());
72 p.Cancel();
73 }
74 else if (owner.Tool != null)
75 {
76 owner.Say("mine_start", owner, owner.Tool);
77 }
78 };
79 p.onProgress = delegate
80 {
82 owner.PlaySound(pos.matBlock.GetSoundImpact());
83 pos.Animate(AnimeID.HitObj, animeBlock: true);
84 pos.matBlock.PlayHitEffect(pos);
85 pos.matBlock.AddBlood(pos);
87 owner.elements.ModExp(220, 5f);
88 if (EClass._zone.IsCrime(owner, this))
89 {
91 }
92 };
93 }
AnimeID
Definition: AnimeID.cs:2
virtual Status Cancel()
Definition: AIAct.cs:291
void SetTarget(Chara c, Thing _tool=null)
virtual void NextFrame()
ElementContainerCard elements
Definition: Card.cs:39
SoundSource PlaySound(string id, float v=1f, bool spatial=true)
Definition: Card.cs:5939
Thing Tool
Definition: Card.cs:2372
CardRenderer renderer
Definition: Card.cs:59
void Say(string lang, string ref1=null, string ref2=null)
Definition: Card.cs:6586
override void LookAt(Card c)
Definition: Chara.cs:3474
void ModExp(int ele, float a, bool chain=false)
bool TryWitnessCrime(Chara criminal, Chara target=null, int radius=4, Func< Chara, bool > funcWitness=null)
Definition: Point.cs:861
void Animate(AnimeID id, bool animeBlock=false)
Definition: Point.cs:1286
static bool CanMine(Point pos, Card t)
Definition: TaskMine.cs:33
bool IsCrime(Chara c, Act act)
Definition: Zone.cs:3420

References EClass._zone, Point.Animate(), AIAct.Cancel(), CanMine(), Point.cell, Card.elements, Cell.GetBlockName(), Zone.IsCrime(), Chara.LookAt(), Point.matBlock, BaseTaskHarvest.maxProgress, ElementContainer.ModExp(), CardRenderer.NextFrame(), AIAct.owner, Card.PlaySound(), Card.pos, TaskPoint.pos, Card.renderer, Card.Say(), BaseTaskHarvest.SetTarget(), Card.Tool, and Point.TryWitnessCrime().

◆ OnProgressComplete()

override void TaskMine.OnProgressComplete ( )
inlinevirtual

Reimplemented from AIAct.

Definition at line 136 of file TaskMine.cs.

137 {
138 string idRecipe = IdRecipe;
139 int hardness = pos.matBlock.hardness;
140 switch (mode)
141 {
142 case Mode.Default:
144 {
145 if (owner.IsPC)
146 {
148 }
149 EClass._map.MineBlock(pos, recoverBlock: false, owner);
150 }
151 else if (pos.Installed == null)
152 {
153 EClass._zone.AddThing("stairsDown_cave", pos.x, pos.z).Install();
154 return;
155 }
156 break;
157 case Mode.Ramp:
158 EClass._map.MineRamp(pos, (ramp == 3) ? pos.matBlock.ramp : ramp);
159 break;
160 }
161 if (!owner.IsAgent)
162 {
163 owner.elements.ModExp(220, 20 + hardness);
164 if (EClass.rnd(10) == 0)
165 {
167 }
168 if (EClass.rnd(10) == 0)
169 {
171 }
172 if (EClass._zone.IsCrime(owner, this))
173 {
175 }
176 if (EClass.rnd(2) == 0)
177 {
178 owner.stamina.Mod(-1);
179 }
180 }
181 if (owner != null && owner.IsPC)
182 {
184 }
185 mined = true;
186 }
Card Install()
Definition: Card.cs:3639
override bool IsPC
Definition: Chara.cs:610
Stats stamina
Definition: Chara.cs:1128
static int rnd(long a)
Definition: EClass.cs:58
static Player player
Definition: EClass.cs:12
void TrySmoothPick(Cell cell, Thing t, Chara c)
Definition: Map.cs:1804
void MineBlock(Point point, bool recoverBlock=false, Chara c=null, bool mineObj=true)
Definition: Map.cs:1668
void MineRamp(Point point, int ramp, bool recoverBlock=false)
Definition: Map.cs:1735
int digs
Definition: Player.cs:96
RecipeManager recipes
Definition: Player.cs:1053
void ModKarma(int a)
Definition: Player.cs:2444
Stats stats
Definition: Player.cs:972
void ComeUpWithRecipe(string idRecipe, int chanceForRandomRecipe=0)
virtual void Mod(int a)
Definition: Stats.cs:135
override string IdRecipe
Definition: TaskMine.cs:17
static Thing Create(string id, int idMat=-1, int lv=-1)
Definition: ThingGen.cs:53
Card AddThing(string id, int x, int z)
Definition: Zone.cs:1933

References EClass._map, EClass._zone, Zone.AddThing(), RecipeManager.ComeUpWithRecipe(), ThingGen.Create(), Player.Stats.digs, Card.elements, Point.HasBlock, IdRecipe, Card.Install(), Point.Installed, Card.IsAgent, Zone.IsCrime(), Chara.IsPC, AM_Mine.IsRoofEditMode(), Point.matBlock, ActionMode.Mine, Map.MineBlock(), mined, Map.MineRamp(), Stats.Mod(), mode, ElementContainer.ModExp(), Player.ModKarma(), AIAct.owner, EClass.player, TaskPoint.pos, ramp, Player.recipes, EClass.rnd(), Chara.stamina, Player.stats, Map.TrySmoothPick(), Point.x, and Point.z.

Member Data Documentation

◆ mined

bool TaskMine.mined

Definition at line 13 of file TaskMine.cs.

Referenced by GetHitResult(), and OnProgressComplete().

◆ mode

Mode TaskMine.mode

Definition at line 9 of file TaskMine.cs.

Referenced by GetHitResult(), and OnProgressComplete().

◆ ramp

int TaskMine.ramp = 3

Definition at line 11 of file TaskMine.cs.

Referenced by GetHitResult(), and OnProgressComplete().

Property Documentation

◆ CursorIcon

override CursorInfo TaskMine.CursorIcon
get

Definition at line 29 of file TaskMine.cs.

◆ destDist

override int TaskMine.destDist
get

Definition at line 19 of file TaskMine.cs.

◆ destIgnoreConnection

override bool TaskMine.destIgnoreConnection
get

Definition at line 25 of file TaskMine.cs.

◆ harvestType

override HarvestType TaskMine.harvestType
get

Definition at line 15 of file TaskMine.cs.

◆ IdRecipe

override string TaskMine.IdRecipe
get

Definition at line 17 of file TaskMine.cs.

Referenced by OnProgressComplete().

◆ isBlock

override bool TaskMine.isBlock
get

Definition at line 21 of file TaskMine.cs.

◆ IsHostileAct

override bool TaskMine.IsHostileAct
get

Definition at line 31 of file TaskMine.cs.

◆ RightHand

override int TaskMine.RightHand
get

Definition at line 23 of file TaskMine.cs.

◆ ShowMapHighlightBlock

override bool TaskMine.ShowMapHighlightBlock
get

Definition at line 27 of file TaskMine.cs.


The documentation for this class was generated from the following file: