Elin Decompiled Documentation EA 23.295 Stable
Loading...
Searching...
No Matches
AI_Churyu.cs
Go to the documentation of this file.
1using System.Collections.Generic;
2
3public class AI_Churyu : AIWork
4{
5 public Card churyu;
6
7 public Chara slave;
8
9 public override int MaxRestart => 100000;
10
11 public override IEnumerable<Status> Run()
12 {
13 if (restartCount == 0)
14 {
16 if (thing != null)
17 {
18 churyu = thing;
19 slave = EClass.pc;
20 }
22 }
24 {
25 yield return Success();
26 }
27 if (owner.Dist(slave) < 2)
28 {
29 if (owner.TalkTopic().IsEmpty())
30 {
31 owner.Talk("idle");
32 }
33 owner.PlaySound("Animal/Cat/cat");
34 yield return DoWait(1 + EClass.rnd(3));
35 }
36 else
37 {
38 yield return DoGoto(slave.pos.GetNearestPoint(allowBlock: false, allowChara: false));
39 }
40 yield return Restart();
41 }
42}
byte restartCount
Definition: AIAct.cs:24
new Chara owner
Definition: AIAct.cs:14
Status DoWait(int count=1)
Definition: AIAct.cs:546
Status DoGoto(Point pos, int dist=0, bool ignoreConnection=false, Func< Status > _onChildFail=null)
Definition: AIAct.cs:446
Status Restart()
Definition: AIAct.cs:251
Definition: AIWork.cs:6
override IEnumerable< Status > Run()
Definition: AI_Churyu.cs:11
override int MaxRestart
Definition: AI_Churyu.cs:9
Chara slave
Definition: AI_Churyu.cs:7
Card churyu
Definition: AI_Churyu.cs:5
Definition: Card.cs:11
SoundSource PlaySound(string id, float v=1f, bool spatial=true)
Definition: Card.cs:6421
void Talk(string idTopic, string ref1=null, string ref2=null, bool forceSync=false)
Definition: Card.cs:6981
bool ExistsOnMap
Definition: Card.cs:2123
Point pos
Definition: Card.cs:60
ThingContainer things
Definition: Card.cs:39
Card GetRootCard()
Definition: Card.cs:3508
int Dist(Card c)
Definition: Card.cs:7974
Definition: Chara.cs:10
string TalkTopic(string topic="calm")
Definition: Chara.cs:7149
Definition: EClass.cs:6
static int rnd(long a)
Definition: EClass.cs:59
static Player player
Definition: EClass.cs:13
static Chara pc
Definition: EClass.cs:15
void UpdateNyan()
Definition: Player.cs:2482
Point GetNearestPoint(bool allowBlock=false, bool allowChara=true, bool allowInstalled=true, bool ignoreCenter=false, int minRadius=0)
Definition: Point.cs:619
Thing Find(int uid)
Definition: Thing.cs:8