Elin Decompiled Documentation EA 23.102 Nightly
Loading...
Searching...
No Matches
AI_Bladder.cs
Go to the documentation of this file.
1using System.Collections.Generic;
2
3public class AI_Bladder : AIAct
4{
6
7 public override IEnumerable<Status> Run()
8 {
9 if (toilet == null)
10 {
12 }
13 if (toilet == null)
14 {
15 yield return Cancel();
16 }
17 yield return DoGoto(toilet.owner);
19 {
20 onProgressBegin = delegate
21 {
22 owner.SetTempHand(-1, -1);
23 owner.SetPCCState(PCCState.Naked);
24 owner.SetCensored(enable: true);
25 owner.PlaySound("water");
26 owner.Kick(owner.pos, ignoreSelf: true);
27 owner.pos.TalkWitnesses(owner, "disgust");
28 },
29 onProgress = delegate
30 {
32 },
33 onProgressComplete = delegate
34 {
35 if (toilet == null || !toilet.ExistsOnMap || !toilet.owner.pos.Equals(owner.pos))
36 {
37 owner.hygiene.Mod(-30);
39 }
40 else
41 {
42 owner.hygiene.Mod(10);
43 }
44 owner.ShowEmo(Emo.happy);
45 }
46 }.SetDuration(15, 5);
47 yield return Do(seq);
48 }
49
50 public override void OnReset()
51 {
52 owner.SetPCCState(PCCState.Normal);
53 owner.SetCensored(enable: false);
54 }
55}
AnimeID
Definition: AnimeID.cs:2
Emo
Definition: Emo.cs:2
Definition: AIAct.cs:6
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
override IEnumerable< Status > Run()
Definition: AI_Bladder.cs:7
override void OnReset()
Definition: AI_Bladder.cs:50
TraitBath toilet
Definition: AI_Bladder.cs:5
void PlayAnime(AnimeID id, bool force)
void SetCensored(bool enable)
Definition: Card.cs:6826
SoundSource PlaySound(string id, float v=1f, bool spatial=true)
Definition: Card.cs:5404
Point pos
Definition: Card.cs:55
void ShowEmo(Emo _emo=Emo.none, float duration=0f, bool skipSame=true)
Definition: Card.cs:5372
CardRenderer renderer
Definition: Card.cs:57
Stats hygiene
Definition: Chara.cs:961
void Kick(Point p, bool ignoreSelf=false)
Definition: Chara.cs:5174
void SetTempHand(int right=0, int left=0)
Definition: Chara.cs:6057
void SetPCCState(PCCState state)
Definition: Chara.cs:6038
Definition: EClass.cs:5
static Map _map
Definition: EClass.cs:18
PropsInstalled Installed
Definition: Map.cs:123
void SetLiquid(int x, int z, CellEffect effect=null)
Definition: Map.cs:1464
int x
Definition: Point.cs:36
int z
Definition: Point.cs:39
bool Equals(int _x, int _z)
Definition: Point.cs:924
void TalkWitnesses(Chara criminal, string idTalk, int radius=4, WitnessType type=WitnessType.everyone, Func< Chara, bool > talkIf=null, int chance=3)
Definition: Point.cs:787
TraitManager traits
Definition: Props.cs:18
virtual void Mod(int a)
Definition: Stats.cs:135
TraitSet GetTraitSet(Type t)
Definition: TraitManager.cs:94
bool ExistsOnMap
Definition: Trait.cs:343
Card owner
Definition: Trait.cs:26