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

Public Member Functions

override bool CanManualCancel ()
 
override string GetBaseText (string str)
 
override string GetTextSmall (Card c)
 
override bool CanProgress ()
 
override HitResult GetHitResult ()
 
override void OnCreateProgress (Progress_Custom p)
 
string GetIdDismantled ()
 
bool ShouldGenerateDismantled (string dest)
 
bool HaveHarvestThing ()
 
void HarvestThing ()
 
- 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 TaskHarvest TryGetAct (Chara c, Point p)
 
- 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

bool wasReapSeed
 
bool wasCrime
 
bool harvestingCrop
 
HarvestType mode = HarvestType.Obj
 
- 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

bool IsObj [get]
 
bool IsReapSeed [get]
 
override HarvestType harvestType [get]
 
override int RightHand [get]
 
override int destDist [get]
 
override bool IsGrowth [get]
 
override bool IsHostileAct [get]
 
override bool Loop [get]
 
- Properties inherited from BaseTaskHarvest
bool IsTooHard [get]
 
bool IsHarvest [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

- 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 }
 
- 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 3 of file TaskHarvest.cs.

Member Function Documentation

◆ CanManualCancel()

override bool TaskHarvest.CanManualCancel ( )
inlinevirtual

Reimplemented from AIAct.

Definition at line 85 of file TaskHarvest.cs.

86 {
87 return true;
88 }

◆ CanProgress()

override bool TaskHarvest.CanProgress ( )
inlinevirtual

Reimplemented from BaseTaskHarvest.

Definition at line 208 of file TaskHarvest.cs.

209 {
210 if (tool != null && tool.trait is TraitToolSickle && !pos.cell.CanReapSeed())
211 {
212 return false;
213 }
214 if (IsObj)
215 {
217 if (base.CanProgress())
218 {
219 return pos.HasObj;
220 }
221 return false;
222 }
223 if (target == null || !target.ExistsOnMap)
224 {
225 return false;
226 }
227 return base.CanProgress();
228 }
new Chara owner
Definition: AIAct.cs:14
void SetTarget(Chara c, Thing _tool=null)
bool ExistsOnMap
Definition: Card.cs:2047
Trait trait
Definition: Card.cs:51
bool CanReapSeed()
Definition: Cell.cs:1669
Definition: EClass.cs:5
static Chara pc
Definition: EClass.cs:14
bool HasObj
Definition: Point.cs:137
Cell cell
Definition: Point.cs:51
Point pos
Definition: TaskPoint.cs:11

References Cell.CanReapSeed(), Point.cell, Card.ExistsOnMap, Point.HasObj, IsObj, AIAct.owner, EClass.pc, TaskPoint.pos, BaseTaskHarvest.SetTarget(), BaseTaskHarvest.target, BaseTaskHarvest.tool, and Card.trait.

◆ GetBaseText()

override string TaskHarvest.GetBaseText ( string  str)
inlinevirtual

Reimplemented from BaseTaskHarvest.

Definition at line 90 of file TaskHarvest.cs.

91 {
92 if (IsReapSeed)
93 {
94 return "TaskHarvestSeed".lang();
95 }
96 if (mode == HarvestType.Disassemble)
97 {
98 string text = (HaveHarvestThing() ? "TaskDisassemble" : "TaskDisassemble_destroy").lang();
99 string idRecipe = (IsObj ? pos.sourceObj.RecipeID : ((target != null) ? target.source.RecipeID : ""));
101 {
102 text = text + " " + "TaskDisassemble_newrecipe".lang();
103 }
104 return text;
105 }
106 if (!base.IsHarvest)
107 {
108 return base.GetBaseText(str);
109 }
110 return "actHarvest".lang();
111 }
bool enable
Definition: CoreDebug.cs:286
static Player player
Definition: EClass.cs:12
static CoreDebug debug
Definition: EClass.cs:48
RecipeManager recipes
Definition: Player.cs:1017
bool CanCeomUpWithRecipe(string idRecipe)
bool HaveHarvestThing()
Definition: TaskHarvest.cs:541
HarvestType mode
Definition: TaskHarvest.cs:11
bool IsReapSeed
Definition: TaskHarvest.cs:16
SourceThing.Row source
Definition: Thing.cs:11

References RecipeManager.CanCeomUpWithRecipe(), EClass.debug, CoreDebug.enable, HaveHarvestThing(), IsObj, IsReapSeed, mode, EClass.player, Player.recipes, Thing.source, and BaseTaskHarvest.target.

◆ GetHitResult()

override HitResult TaskHarvest.GetHitResult ( )
inlinevirtual

Reimplemented from Task.

Definition at line 230 of file TaskHarvest.cs.

231 {
232 if (harvestingCrop && !base.IsHarvest)
233 {
234 return HitResult.Default;
235 }
236 if (IsObj)
237 {
238 if (base.IsHarvest)
239 {
240 return HitResult.Valid;
241 }
242 if (pos.HasObj)
243 {
244 return HitResult.Valid;
245 }
247 {
248 return HitResult.Valid;
249 }
250 return HitResult.Default;
251 }
252 if (target == null || !target.ExistsOnMap)
253 {
254 return HitResult.Default;
255 }
256 return HitResult.Valid;
257 }
HitResult
Definition: HitResult.cs:2
static BuildMenu Instance
Definition: BuildMenu.cs:77
bool godBuild
Definition: CoreDebug.cs:304
bool HasDecal
Definition: Point.cs:139
bool harvestingCrop
Definition: TaskHarvest.cs:9

References EClass.debug, Card.ExistsOnMap, CoreDebug.godBuild, harvestingCrop, Point.HasDecal, Point.HasObj, BuildMenu.Instance, IsObj, TaskPoint.pos, and BaseTaskHarvest.target.

◆ GetIdDismantled()

string TaskHarvest.GetIdDismantled ( )
inline

Definition at line 484 of file TaskHarvest.cs.

485 {
486 if (target.HasElement(707))
487 {
488 return "fish_slice";
489 }
490 string[] array = target.source.components[0].Split('|');
491 for (int i = 0; i < array.Length; i++)
492 {
493 array[i] = array[i].Split('/')[0];
494 }
495 string result = array[0];
496 if (array.Length > 1)
497 {
498 string category = target.material.category;
499 bool flag = category == "rock" || category == "ore" || category == "gem";
500 if (array[0] == "ingot" && array[1] == "log" && !flag)
501 {
502 result = array[1];
503 }
504 }
506 {
507 result = target.material.thing;
508 }
509 return result;
510 }
bool HasElement(int ele, int req=1)
Definition: Card.cs:5638
SourceMaterial.Row material
Definition: Card.cs:2013
bool IsEquipmentOrRangedOrAmmo
Definition: Card.cs:2192

References Card.HasElement(), Card.IsEquipmentOrRangedOrAmmo, Card.material, Thing.source, and BaseTaskHarvest.target.

Referenced by HarvestThing(), and HaveHarvestThing().

◆ GetTextSmall()

override string TaskHarvest.GetTextSmall ( Card  c)
inlinevirtual

Reimplemented from BaseTaskHarvest.

Definition at line 113 of file TaskHarvest.cs.

114 {
115 if (IsObj)
116 {
117 return base.GetTextSmall(c);
118 }
119 if (target == null)
120 {
121 return "";
122 }
123 return target.Name;
124 }
string Name
Definition: Card.cs:2099

References IsObj, Card.Name, and BaseTaskHarvest.target.

◆ HarvestThing()

void TaskHarvest.HarvestThing ( )
inline

Definition at line 547 of file TaskHarvest.cs.

548 {
549 string text = GetIdDismantled();
550 float num = target.Num;
551 float num2 = 1.0999999f;
552 if (target.trait.CraftNum > 1)
553 {
554 num2 = (float)target.trait.CraftNum * 1.35f;
555 }
556 switch (text)
557 {
558 case "log":
559 case "rock":
560 num2 = 2.1999998f;
561 break;
562 case "fish_slice":
563 num2 = 4.4f;
564 break;
565 }
566 string text2 = target.id;
567 if (text2 == "glass" || text2 == "brick")
568 {
569 num2 = 2.1999998f;
570 }
571 float num3 = num % num2;
572 num /= num2;
573 Debug.Log("num:" + num + " div:" + num3 + " chance:" + num2 + " check:" + (num2 - num3 + 1f));
574 if (num3 > 0f && EClass.rndf(num2 - num3 + 1f) < 1f)
575 {
576 num += 1f;
577 }
578 if (target.sockets != null)
579 {
581 }
582 int decay = target.decay;
583 int lV = target.LV;
584 target.Die(null, EClass.pc);
585 if ((int)num <= 0 || !ShouldGenerateDismantled(text))
586 {
587 return;
588 }
589 if (target.isCopy || target.HasElement(764))
590 {
591 text = "ash3";
592 }
594 {
595 fixedQuality = true
596 });
597 Thing thing = ThingGen.Create(text, 1, Mathf.Max(1, lV * 2 / 3));
598 if (thing == null)
599 {
600 return;
601 }
602 if (EClass._zone.IsUserZone && target.isNPCProperty && (thing.trait is TraitPotionLove || thing.HasTag(CTAG.rareResource)))
603 {
604 Msg.Say("spellbookCrumble", thing);
605 thing.Destroy();
606 return;
607 }
608 thing.SetNum((int)num);
610 thing.decay = decay;
611 if (thing.IsDecayed && thing.IsFood)
612 {
613 thing.elements.SetBase(73, -10);
614 }
616 }
CTAG
Definition: CTAG.cs:2
static void Set(CardBlueprint _bp)
bool IsDecayed
Definition: Card.cs:2249
ElementContainerCard elements
Definition: Card.cs:39
string id
Definition: Card.cs:33
bool isNPCProperty
Definition: Card.cs:540
virtual void Die(Element e=null, Card origin=null, AttackSource attackSource=AttackSource.None, Chara originalTarget=null)
Definition: Card.cs:4783
Card ChangeMaterial(int idNew, bool ignoreFixedMaterial=false)
Definition: Card.cs:2994
bool isCopy
Definition: Card.cs:864
void EjectSockets()
Definition: Card.cs:3474
Thing SetNum(int a)
Definition: Card.cs:3393
int decay
Definition: Card.cs:204
bool IsFood
Definition: Card.cs:2137
bool HasTag(CTAG tag)
Definition: Card.cs:2557
Point pos
Definition: Card.cs:57
void Destroy()
Definition: Card.cs:4850
int Num
Definition: Card.cs:156
List< int > sockets
Definition: Card.cs:45
int LV
Definition: Card.cs:372
static Zone _zone
Definition: EClass.cs:20
static Map _map
Definition: EClass.cs:18
static float rndf(float a)
Definition: EClass.cs:92
Element SetBase(string alias, int v, int potential=0)
void TrySmoothPick(Cell cell, Thing t, Chara c)
Definition: Map.cs:1804
Definition: Msg.cs:5
static string Say(string idLang, string ref1, string ref2=null, string ref3=null, string ref4=null)
Definition: Msg.cs:58
bool IsBlocked
Definition: Point.cs:351
string GetIdDismantled()
Definition: TaskHarvest.cs:484
bool ShouldGenerateDismantled(string dest)
Definition: TaskHarvest.cs:512
static Thing Create(string id, int idMat=-1, int lv=-1)
Definition: ThingGen.cs:53
Definition: Thing.cs:8
virtual int CraftNum
Definition: Trait.cs:132
virtual bool IsUserZone
Definition: Zone.cs:266

References EClass._map, EClass._zone, Card.ChangeMaterial(), Trait.CraftNum, ThingGen.Create(), Debug, Card.decay, Card.Destroy(), Card.Die(), Card.EjectSockets(), Card.elements, GetIdDismantled(), Card.HasElement(), Card.HasTag(), Card.id, Point.IsBlocked, Card.isCopy, Card.IsDecayed, Card.IsFood, Card.isNPCProperty, Zone.IsUserZone, Card.LV, Card.material, Card.Num, AIAct.owner, EClass.pc, Card.pos, TaskPoint.pos, EClass.rndf(), Msg.Say(), CardBlueprint.Set(), ElementContainer.SetBase(), Card.SetNum(), ShouldGenerateDismantled(), Card.sockets, BaseTaskHarvest.target, Card.trait, and Map.TrySmoothPick().

Referenced by OnCreateProgress().

◆ HaveHarvestThing()

bool TaskHarvest.HaveHarvestThing ( )
inline

Definition at line 541 of file TaskHarvest.cs.

542 {
543 string idDismantled = GetIdDismantled();
544 return ShouldGenerateDismantled(idDismantled);
545 }

References GetIdDismantled(), and ShouldGenerateDismantled().

Referenced by GetBaseText().

◆ OnCreateProgress()

override void TaskHarvest.OnCreateProgress ( Progress_Custom  p)
inlinevirtual

Reimplemented from AIAct.

Definition at line 259 of file TaskHarvest.cs.

260 {
262 string i = (IsObj ? pos.cell.GetObjName() : target.Name);
263 SourceMaterial.Row mat = (IsObj ? pos.cell.matObj : target.material);
264 GrowSystem growth = pos.growth;
265 float num = (base.IsHarvest ? 0.5f : ((!IsObj) ? 1f : ((growth != null) ? growth.MtpProgress : 1f)));
266 int exp = 50;
269 p.textHint = i;
270 p.maxProgress = (int)((float)(maxProgress * 150) * num / 100f);
271 p.interval = 1;
272 p.onProgressBegin = delegate
273 {
274 if (TryGetAct(owner, pos) == null)
275 {
276 p.Cancel();
277 }
278 else if (base.IsTooHard)
279 {
280 owner.Say((mode == HarvestType.Disassemble) ? "tooHardToDisassemble" : "tooHardToHarvest", owner, i);
281 p.Cancel();
282 }
283 else if (mode == HarvestType.Disassemble)
284 {
285 owner.Say("disassemble_start", owner, owner.Tool, i);
286 }
287 else if (owner.Tool == null)
288 {
289 owner.Say("harvestHand_start", owner, i);
290 }
291 else
292 {
293 owner.Say("harvest_start", owner, owner.Tool, i);
294 }
295 };
296 p.onProgress = delegate(Progress_Custom _p)
297 {
300 if (_p.progress % 2 == 0)
301 {
302 if (IsObj)
303 {
304 if (base.IsHarvest && growth != null)
305 {
307 if (growth.AnimeProgress != 0)
308 {
309 pos.Animate(growth.AnimeProgress);
310 }
311 return;
312 }
313 pos.Animate(AnimeID.HitObj);
314 }
315 else
316 {
317 target.PlayAnime(AnimeID.HitObj);
318 }
320 mat.PlayHitEffect(pos);
321 mat.AddBlood(pos);
322 effectFrame += maxProgress / 4 + 1;
323 if (EClass._zone.IsCrime(owner, this))
324 {
326 }
327 }
328 };
329 p.onProgressComplete = delegate
330 {
331 string idRecipe = (IsObj ? pos.sourceObj.RecipeID : ((target != null) ? target.source.RecipeID : ""));
333 int num2 = ((EClass.rnd(3) != 0) ? 1 : 0);
334 if (IsObj)
335 {
336 SourceObj.Row sourceObj = pos.sourceObj;
337 bool flag = false;
338 if (difficulty >= 0 && EClass.rnd(6) == 0)
339 {
340 flag = true;
341 }
342 if (difficulty >= 2 && EClass.rnd(3) == 0)
343 {
344 flag = true;
345 }
346 if (flag && growth != null)
347 {
348 growth.OnHitFail(owner);
349 }
350 if (EClass._zone is Zone_Harvest && !base.IsHarvest && pos.IsFarmField)
351 {
353 pos.SetObj();
354 }
355 else
356 {
357 if (base.IsHarvest && !IsReapSeed)
358 {
359 if (pos.growth.CanHarvest())
360 {
361 harvestingCrop = true;
362 }
364 }
365 else if (growth != null && !IsReapSeed)
366 {
368 }
369 else
370 {
371 EClass._map.MineObj(pos, this);
372 }
373 if (sourceObj.alias == "mound")
374 {
375 if (EClass.rnd(7) == 0)
376 {
377 EClass._zone.AddThing("plat", pos);
378 }
379 else if (EClass.rnd(3) == 0)
380 {
382 }
383 else
384 {
385 EClass._zone.AddThing("bone", pos);
386 }
387 }
388 }
389 }
390 else
391 {
392 exp = target.Num * 5;
393 num2 = target.Num / 3 + EClass.rnd(target.Num / 3 + 2);
395 {
396 HarvestThing();
397 }
398 }
399 if (EClass._zone.IsCrime(owner, this) && EClass.rnd(3) != 0)
400 {
402 }
403 if (backerObj != null)
404 {
405 if (backerObj != null && !backerObj.loot.IsEmpty() && !EClass.player.doneBackers.Contains(backerObj.id))
406 {
407 if (EClass.sources.cards.map.ContainsKey(backerObj.loot))
408 {
409 Thing thing = ThingGen.Create(backerObj.loot);
410 switch (backerObj.id)
411 {
412 case 490:
413 case 867:
414 case 5160:
415 thing.c_charges = 0;
416 thing.c_priceFix = -100;
417 break;
418 case 2531:
419 thing.MakeFoodFrom("cloud_electric");
420 break;
421 case 1027:
422 thing.ChangeMaterial(25);
423 thing.SetBlessedState(BlessedState.Doomed);
424 thing.ChangeRarity(Rarity.Legendary);
425 break;
426 case 4565:
427 EClass._zone.AddThing("rod", pos);
428 EClass._zone.AddThing("money", pos).SetNum(121);
429 break;
430 case 5367:
431 thing.Dye("obsidian");
432 break;
433 case 471:
434 case 1828:
435 case 5765:
436 thing.SetBlessedState(BlessedState.Cursed);
437 break;
438 case 5529:
439 thing.ChangeMaterial(25);
440 break;
441 case 1854:
442 thing.decay = 10000;
443 break;
444 case 4788:
445 thing.SetEncLv(1);
446 break;
447 case 4615:
448 thing.ChangeMaterial("meat");
449 break;
450 }
451 EClass._zone.AddCard(thing, pos);
452 }
453 else
454 {
455 Debug.LogError("exception: Backer Loot not valid:" + backerObj.id + "/" + backerObj.loot);
456 }
457 Debug.Log(backerObj.id + "/" + backerObj.Name + "/" + backerObj.loot);
458 }
459 EClass.player.doneBackers.Add(backerObj.id);
460 if (!backerObj.Text.IsEmpty() && EClass.core.config.backer.Show(backerObj))
461 {
462 bool num3 = backerObj.type == 1;
463 Msg.Say(num3 ? "backerRemain_read" : "backerTree_read");
464 Msg.Say(num3 ? "backerRemain" : "backerTree", backerObj.Text);
465 }
466 }
467 if (owner.IsPC)
468 {
470 }
472 if (wasReapSeed)
473 {
474 owner.ModExp(286, 20);
475 }
476 owner.stamina.Mod(-num2);
477 if (owner != null && owner.IsPC)
478 {
480 }
481 };
482 }
AnimeID
Definition: AnimeID.cs:2
BlessedState
Definition: BlessedState.cs:2
Rarity
Definition: Rarity.cs:2
virtual Status Cancel()
Definition: AIAct.cs:291
int progress
Definition: AIProgress.cs:5
virtual void NextFrame()
SoundSource PlaySound(string id, float v=1f, bool spatial=true)
Definition: Card.cs:5852
Thing Tool
Definition: Card.cs:2372
void CalculateFOV()
Definition: Card.cs:6176
virtual void SetBlessedState(BlessedState s)
Definition: Card.cs:3787
void Dye(string idMat)
Definition: Card.cs:5708
void SetEncLv(int a)
Definition: Card.cs:3756
Card MakeFoodFrom(string _id)
Definition: Card.cs:5267
void ModExp(string alias, int a)
Definition: Card.cs:2610
void PlayAnime(AnimeID id, bool force=false)
Definition: Card.cs:5871
virtual void ChangeRarity(Rarity q)
Definition: Card.cs:3812
CardRenderer renderer
Definition: Card.cs:59
void Say(string lang, string ref1=null, string ref2=null)
Definition: Card.cs:6499
string GetObjName()
Definition: Cell.cs:1604
override bool IsPC
Definition: Chara.cs:610
Stats stamina
Definition: Chara.cs:1128
override void LookAt(Card c)
Definition: Chara.cs:3465
BackerContentConfig backer
Definition: CoreConfig.cs:606
CoreConfig config
Definition: Core.cs:70
static Game game
Definition: EClass.cs:8
static Core core
Definition: EClass.cs:6
static int rnd(long a)
Definition: EClass.cs:58
static SourceManager sources
Definition: EClass.cs:42
void ModExp(int ele, float a, bool chain=false)
bool disableUsermapBenefit
GamePrincipal principal
Definition: Game.cs:221
bool CanHarvest()
Definition: GrowSystem.cs:501
virtual AnimeID AnimeProgress
Definition: GrowSystem.cs:99
virtual void OnHitFail(Chara c)
Definition: GrowSystem.cs:519
void OnProgressComplete(Chara c)
Definition: GrowSystem.cs:523
virtual string GetSoundProgress()
Definition: GrowSystem.cs:125
void Harvest(Chara c)
Definition: GrowSystem.cs:618
void DestroyObj(Point point)
Definition: Map.cs:1825
void MineObj(Point point, Task task=null, Chara c=null)
Definition: Map.cs:1840
SourceBacker.Row GetBackerObj(Point p)
Definition: Map.cs:1592
void ModKarma(int a)
Definition: Player.cs:2408
HashSet< int > doneBackers
Definition: Player.cs:993
void SetObj(int id=0, int value=1, int dir=0)
Definition: Point.cs:912
bool IsFarmField
Definition: Point.cs:127
SoundSource PlaySound(string id, bool synced=true, float v=1f, bool spatial=true)
Definition: Point.cs:1237
SourceObj.Row sourceObj
Definition: Point.cs:69
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
GrowSystem growth
Definition: Point.cs:77
void ComeUpWithRecipe(string idRecipe, int chanceForRandomRecipe=0)
Dictionary< string, CardRow > map
Definition: SourceCard.cs:8
SourceCard cards
string GetSoundImpact(RenderRow c=null)
void AddBlood(Point p, int a=1)
void PlayHitEffect(Point p, int emit=2)
virtual void Mod(int a)
Definition: Stats.cs:135
bool wasReapSeed
Definition: TaskHarvest.cs:5
override bool IsHostileAct
Definition: TaskHarvest.cs:40
void HarvestThing()
Definition: TaskHarvest.cs:547
bool wasCrime
Definition: TaskHarvest.cs:7
static TaskHarvest TryGetAct(Chara c, Point p)
Definition: TaskHarvest.cs:126
static Thing CreateFromCategory(string idCat, int lv=-1)
Definition: ThingGen.cs:75
string alias
Definition: TileRow.cs:12
Card AddThing(string id, int x, int z)
Definition: Zone.cs:1927
bool IsCrime(Chara c, Act act)
Definition: Zone.cs:3414
Card AddCard(Card t, Point point)
Definition: Zone.cs:1937

References EClass._map, EClass._zone, SourceMaterial.Row.AddBlood(), Zone.AddCard(), Zone.AddThing(), TileRow.alias, Point.Animate(), GrowSystem.AnimeProgress, CoreConfig.backer, Card.CalculateFOV(), AIAct.Cancel(), GrowSystem.CanHarvest(), SourceManager.cards, Point.cell, Card.ChangeMaterial(), Card.ChangeRarity(), RecipeManager.ComeUpWithRecipe(), Core.config, EClass.core, ThingGen.Create(), ThingGen.CreateFromCategory(), Debug, Map.DestroyObj(), BaseTaskHarvest.difficulty, GamePrincipal.disableUsermapBenefit, Player.doneBackers, Card.Dye(), BaseTaskHarvest.effectFrame, Card.elements, EClass.game, Map.GetBackerObj(), Cell.GetObjName(), SourceMaterial.Row.GetSoundImpact(), GrowSystem.GetSoundProgress(), Point.growth, GrowSystem.Harvest(), harvestingCrop, HarvestThing(), SourceBacker.Row.id, BaseTaskHarvest.idEle, Zone.IsCrime(), Point.IsFarmField, IsHostileAct, Card.isNPCProperty, IsObj, Chara.IsPC, IsReapSeed, Zone.IsUserZone, Chara.LookAt(), SourceBacker.Row.loot, Card.MakeFoodFrom(), SourceCard.map, Card.material, BaseTaskHarvest.maxProgress, Map.MineObj(), Stats.Mod(), mode, ElementContainer.ModExp(), Card.ModExp(), Player.ModKarma(), Card.Name, SourceBacker.Row.Name, CardRenderer.NextFrame(), Card.Num, GrowSystem.OnHitFail(), GrowSystem.OnProgressComplete(), AIAct.owner, EClass.pc, Card.PlayAnime(), EClass.player, SourceMaterial.Row.PlayHitEffect(), Point.PlaySound(), Card.PlaySound(), Card.pos, TaskPoint.pos, Game.principal, AIProgress.progress, Player.recipes, Card.renderer, EClass.rnd(), Msg.Say(), Card.Say(), Card.SetBlessedState(), Card.SetEncLv(), Card.SetNum(), Point.SetObj(), BaseTaskHarvest.SetTarget(), CoreConfig.BackerContentConfig.Show(), Thing.source, Point.sourceObj, EClass.sources, Chara.stamina, BaseTaskHarvest.target, SourceBacker.Row.Text, Card.Tool, TryGetAct(), Point.TryWitnessCrime(), wasCrime, and wasReapSeed.

◆ ShouldGenerateDismantled()

bool TaskHarvest.ShouldGenerateDismantled ( string  dest)
inline

Definition at line 512 of file TaskHarvest.cs.

513 {
515 {
516 return false;
517 }
518 if (target.trait is TraitGrave)
519 {
520 return false;
521 }
523 {
524 return false;
525 }
526 if (dest.Contains("$") || dest.Contains("#") || dest.Contains("@") || dest.Contains("-"))
527 {
528 return false;
529 }
530 if (dest == target.id || !EClass.sources.cards.map.ContainsKey(dest))
531 {
532 return false;
533 }
534 if (target.source.components.IsEmpty())
535 {
536 return false;
537 }
538 return true;
539 }

References SourceManager.cards, Card.id, SourceCard.map, Thing.source, EClass.sources, BaseTaskHarvest.target, and Card.trait.

Referenced by HarvestThing(), and HaveHarvestThing().

◆ TryGetAct()

static TaskHarvest TaskHarvest.TryGetAct ( Chara  c,
Point  p 
)
inlinestatic

Definition at line 126 of file TaskHarvest.cs.

127 {
128 Thing t = c.Tool;
129 bool hasTool = t != null && (t.HasElement(225) || t.HasElement(220));
130 bool hasDiggingTool = t != null && t.HasElement(230);
131 if (t != null)
132 {
133 if (t.trait is TraitToolBrush)
134 {
135 return null;
136 }
137 if (t.trait is TraitToolShears)
138 {
139 return null;
140 }
141 if (t.trait is TraitToolWaterCan)
142 {
143 return null;
144 }
145 if (t.trait is TraitToolMusic)
146 {
147 return null;
148 }
149 if (t.trait is TraitToolSickle && !p.cell.CanReapSeed())
150 {
151 return null;
152 }
153 }
154 if (p.HasObj && IsValidTarget(p.sourceObj.reqHarvest))
155 {
156 return new TaskHarvest
157 {
158 pos = p.Copy()
159 };
160 }
161 if (p.HasThing)
162 {
163 for (int num = p.Things.Count - 1; num >= 0; num--)
164 {
165 t = p.Things[num];
166 if (t.trait.ReqHarvest != null && IsValidTarget(t.trait.ReqHarvest.Split(',')))
167 {
168 return new TaskHarvest
169 {
170 pos = p.Copy(),
171 mode = HarvestType.Thing,
172 target = t
173 };
174 }
175 }
176 for (int num2 = p.Things.Count - 1; num2 >= 0; num2--)
177 {
178 t = p.Things[num2];
180 {
181 return new TaskHarvest
182 {
183 pos = p.Copy(),
184 mode = HarvestType.Disassemble,
185 target = t
186 };
187 }
188 }
189 }
190 return null;
191 bool IsValidTarget(string[] raw)
192 {
193 if (raw[0] == "digging")
194 {
195 return hasDiggingTool;
196 }
197 bool num3 = p.cell.CanHarvest();
198 int num4 = (num3 ? 250 : EClass.sources.elements.alias[raw[0]].id);
199 bool flag = ((!num3 && num4 != 250) ? true : false);
200 if (!flag && t != null && !t.trait.CanHarvest)
201 {
202 return false;
203 }
204 return !flag || hasTool;
205 }
206 }
bool isMasked
Definition: Card.cs:576
bool isHidden
Definition: Card.cs:516
bool CanHarvest()
Definition: Cell.cs:1664
Point Copy()
Definition: Point.cs:479
List< Thing > Things
Definition: Point.cs:326
bool HasThing
Definition: Point.cs:239
SourceElement elements
virtual bool CanHarvest
Definition: Trait.cs:91
virtual bool CanBeDisassembled
Definition: Trait.cs:303
virtual string ReqHarvest
Definition: Trait.cs:300

References Trait.CanBeDisassembled, Cell.CanHarvest(), Trait.CanHarvest, Cell.CanReapSeed(), Point.cell, Point.Copy(), SourceManager.elements, Card.HasElement(), Point.HasObj, Point.HasThing, Card.isHidden, Card.isMasked, mode, TaskPoint.pos, Trait.ReqHarvest, Point.sourceObj, EClass.sources, BaseTaskHarvest.target, Point.Things, Card.Tool, and Card.trait.

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

Member Data Documentation

◆ harvestingCrop

bool TaskHarvest.harvestingCrop

Definition at line 9 of file TaskHarvest.cs.

Referenced by GetHitResult(), and OnCreateProgress().

◆ mode

HarvestType TaskHarvest.mode = HarvestType.Obj

Definition at line 11 of file TaskHarvest.cs.

Referenced by GetBaseText(), OnCreateProgress(), and TryGetAct().

◆ wasCrime

bool TaskHarvest.wasCrime

Definition at line 7 of file TaskHarvest.cs.

Referenced by OnCreateProgress().

◆ wasReapSeed

bool TaskHarvest.wasReapSeed

Definition at line 5 of file TaskHarvest.cs.

Referenced by OnCreateProgress().

Property Documentation

◆ destDist

override int TaskHarvest.destDist
get

Definition at line 35 of file TaskHarvest.cs.

◆ harvestType

override HarvestType TaskHarvest.harvestType
get

Definition at line 31 of file TaskHarvest.cs.

◆ IsGrowth

override bool TaskHarvest.IsGrowth
get

Definition at line 37 of file TaskHarvest.cs.

◆ IsHostileAct

override bool TaskHarvest.IsHostileAct
get

Definition at line 39 of file TaskHarvest.cs.

40 {
41 get
42 {
43 if (!wasCrime)
44 {
45 if (mode == HarvestType.Disassemble)
46 {
47 Thing thing = target;
48 if (thing != null && thing.isNPCProperty)
49 {
50 goto IL_007b;
51 }
52 }
53 if (mode == HarvestType.Obj)
54 {
55 if (!pos.sourceObj.ContainsTag("crime"))
56 {
57 if (pos.growth != null && pos.growth.IsCrimeToHarvest)
58 {
59 return !(EClass._zone is Zone_Harvest);
60 }
61 return false;
62 }
63 return true;
64 }
65 return false;
66 }
67 goto IL_007b;
68 IL_007b:
69 return true;
70 }
71 }
virtual bool IsCrimeToHarvest
Definition: GrowSystem.cs:89

Referenced by OnCreateProgress().

◆ IsObj

bool TaskHarvest.IsObj
get

Definition at line 13 of file TaskHarvest.cs.

Referenced by CanProgress(), GetBaseText(), GetHitResult(), GetTextSmall(), and OnCreateProgress().

◆ IsReapSeed

bool TaskHarvest.IsReapSeed
get

Definition at line 15 of file TaskHarvest.cs.

16 {
17 get
18 {
19 if (IsObj && CanReapSeed && owner.Tool != null)
20 {
22 {
23 return owner.Tool.category.IsChildOf("scythe");
24 }
25 return true;
26 }
27 return false;
28 }
29 }
virtual bool CanReapSeed
SourceCategory.Row category
Definition: Card.cs:2011

Referenced by GetBaseText(), and OnCreateProgress().

◆ Loop

override bool TaskHarvest.Loop
get

Definition at line 73 of file TaskHarvest.cs.

74 {
75 get
76 {
78 {
79 return CanProgress();
80 }
81 return false;
82 }
83 }
GameType
Definition: GameType.cs:2
Prologue Prologue
Definition: Game.cs:260
GameType type
Definition: Prologue.cs:7
override bool CanProgress()
Definition: TaskHarvest.cs:208

◆ RightHand

override int TaskHarvest.RightHand
get

Definition at line 33 of file TaskHarvest.cs.


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