1using System.Collections.Generic;
13 public List<Thing>
ings =
new List<Thing>();
75 public override IEnumerable<Status>
Run()
89 for (
int j = 0; j < targets.Count; j++)
91 Thing t2 = targets[j];
92 if (!IsIngValid(t2, j))
111 ings =
new List<Thing>();
112 for (
int k = 0; k < targets.Count; k++)
130 card.isHidden =
true;
138 bool requireOn = crafter.IsRequireFuel || crafter.ToggleType !=
ToggleType.None;
147 canProgress = delegate
165 if (invOwnerDraglet.
buttons[
num].Card ==
null)
177 onProgressBegin = delegate
181 crafter.owner.animeCounter = 0.01f;
184 onProgress = delegate
194 if ((uint)(animeType - 1) <= 1u)
204 onProgressComplete = delegate
214 for (
int l = 0; l <
num; l++)
219 Point from = (crafter.owner.ExistsOnMap ? crafter.owner.pos :
owner.
pos);
231 if (thing2.
category.ignoreBless == 0)
241 for (
int m = 0; m <
ings.Count; m++)
260 crafter.owner.c_charges = 0;
264 for (
int n = 0; n <
num; n++)
280 aliasEle =
"eleImpact"
284 }.SetDuration(duration, 5);
288 progress.SetDuration(1, 1);
290 yield
return Do(progress);
291 if (progress.status ==
Status.Fail)
306 bool IsIngValid(
Thing t,
int i)
Status Do(AIAct _seq, Func< Status > _onChildFail=null)
override bool CanManualCancel()
override IEnumerable< Status > Run()
override void OnSuccess()
static void ProcAt(EffectId id, int power, BlessedState state, Card cc, Card tc, Point tp, bool isNeg, ActRef actRef=default(ActRef))
void Add(Act a, string s="")
void PlayAnime(AnimeID id, bool force)
ElementContainerCard elements
SoundSource PlaySound(string id, float v=1f, bool spatial=true)
virtual void SetBlessedState(BlessedState s)
void ShowEmo(Emo _emo=Emo.none, float duration=0f, bool skipSame=true)
void ModCharge(int a, bool destroy=false)
BlessedState blessedState
void PlaySoundDrop(bool spatial=true)
SourceCategory.Row category
void SetTempHand(int right=0, int left=0)
override void LookAt(Card c)
Thing Pick(Thing t, bool msg=true, bool tryStack=true)
static int curve(int a, int start, int step, int rate=75)
static SoundManager Sound
static Effect Get(Effect original)
void Play(float delay, Point from, float fixY=0f, Point to=null, Sprite sprite=null)
void ModExp(int ele, int a, bool chain=false)
Element GetOrCreateElement(Element ele)
List< ButtonGrid > buttons
virtual int GetReqIngredient(int index)
virtual List< Thing > GetTargets()
virtual void RefreshCurrentGrid()
virtual void ClearButtons()
virtual void OnEndCraft()
static LayerDragGrid Instance
static string Say(string idLang, string ref1, string ref2=null, string ref3=null, string ref4=null)
bool Equals(int _x, int _z)
static void SetSeed(int a=-1)
void TryGetFirstTimeBonus()
virtual Thing Craft(BlessedState blessed, bool sound=false, List< Thing > ings=null, TraitCrafter crafter=null, bool model=false)
virtual SourceMaterial.Row GetColorMaterial()
Thing Identify(bool show=true, IDTSource idtSource=IDTSource.Identify)
virtual bool IsConsumeIng
virtual string IDReqEle(RecipeSource r)
virtual bool StopSoundProgress
virtual bool CloseOnComplete
virtual string idSoundProgress
virtual bool ShouldConsumeIng(SourceRecipe.Row item, int index)
SourceRecipe.Row GetSource(AI_UseCrafter ai)
virtual AnimeType animeType
virtual void OnEndAI(AI_UseCrafter ai)
virtual int GetCostSp(AI_UseCrafter ai)
virtual AnimeID IdAnimeProgress
virtual bool IsCraftIngredient(Card c, int idx)
virtual int GetDuration(AI_UseCrafter ai, int costSp)
virtual string idSoundComplete
virtual Thing Craft(AI_UseCrafter ai)
virtual void Toggle(bool on, bool silent=false)
bool IsFuelEnough(int num=1, List< Thing > excludes=null, bool tryRefuel=true)
Card AddCard(Card t, Point point)