Elin Decompiled Documentation EA 23.102 Nightly
Loading...
Searching...
No Matches
AI_Offer.cs
Go to the documentation of this file.
1using System.Collections.Generic;
2using System.Linq;
3
4public class AI_Offer : AIAct
5{
6 public Card target;
7
8 public Card altar;
9
10 public bool IsValidTarget(Card c)
11 {
12 if (altar != null)
13 {
14 return altar.trait.CanOffer(c);
15 }
16 return false;
17 }
18
19 public override IEnumerable<Status> Run()
20 {
21 if (target != null && target.ExistsOnMap)
22 {
23 yield return DoGoto(target);
24 }
26 if (altar == null)
27 {
28 yield return Cancel();
29 }
31 {
32 yield return DoGrab(EClass._map.charas.Where(IsValidTarget).RandomItem());
34 {
35 yield return Cancel();
36 }
37 }
38 yield return DoGoto(altar);
40 {
41 yield return Cancel();
42 }
45 {
46 canProgress = () => altar.ExistsOnMap,
47 onProgress = delegate
48 {
50 },
51 onProgressComplete = delegate
52 {
54 }
55 }.SetDuration(15, 5);
56 yield return Do(seq);
57 }
58}
Definition: AIAct.cs:6
Status DoGrab(Card card, int num=-1, bool pickHeld=false, Func< Status > _onChildFail=null)
Definition: AIAct.cs:492
Status Do(AIAct _seq, Func< Status > _onChildFail=null)
Definition: AIAct.cs:416
virtual Status Cancel()
Definition: AIAct.cs:291
new Chara owner
Definition: AIAct.cs:14
Status DoGoto(Point pos, int dist=0, bool ignoreConnection=false, Func< Status > _onChildFail=null)
Definition: AIAct.cs:432
Card altar
Definition: AI_Offer.cs:8
Card target
Definition: AI_Offer.cs:6
bool IsValidTarget(Card c)
Definition: AI_Offer.cs:10
override IEnumerable< Status > Run()
Definition: AI_Offer.cs:19
Definition: Card.cs:11
bool ExistsOnMap
Definition: Card.cs:1961
Point pos
Definition: Card.cs:55
Trait trait
Definition: Card.cs:49
Card held
Definition: Chara.cs:67
Card DropHeld(Point dropPos=null)
Definition: Chara.cs:4213
Definition: EClass.cs:5
static Map _map
Definition: EClass.cs:18
PropsInstalled Installed
Definition: Map.cs:123
List< Chara > charas
Definition: Map.cs:81
TraitManager traits
Definition: Props.cs:18
TraitMap altars
Definition: TraitManager.cs:8
Card GetRandomInstalled()
Definition: TraitMap.cs:6
void OfferProcess(Chara cc)
Definition: Trait.cs:803
void Offer(Chara cc)
Definition: Trait.cs:825
virtual bool CanOffer(Card tg)
Definition: Trait.cs:790