47 base.SetOwner(_owner);
48 owner.conSleep =
this;
58 if (traitPillow !=
null)
64 public override void Tick()
92 int num2 = ((num >= 3) ? 12 : ((num >= 2) ? 10 : ((num >= 1) ? 7 : 5)));
116 bool flag = chara.
GetBool(123);
154 owner.knowFav =
true;
187 if ((!chara.
HasElement(1216) && thing ==
null) || chara.host !=
null || (tg.IsPC && thing ==
null &&
EClass.
rnd(200) != 0))
192 if (chara.
Dist(tg.pos) > 2)
198 tg.Say(
"dreambug_teleport", chara, tg);
202 tg.Say(
"dreambug_destroy", chara, thing);
218 if (c.
ai is
AI_Fuck { IsRunning: not false } aI_Fuck && aI_Fuck.
target == tg)
222 if (!c.HasCondition<ConSleep>())
224 c.AddCondition<ConSleep>(100 + EClass.rnd(100), force: true);
232 owner.conSleep =
null;
233 owner.renderer.RefreshSprite();
234 owner.renderer.SetFirst(first:
true, owner.pos.PositionAuto());
237 owner.sleepiness.Set(0);
250 if (uidParasite != 0)
266 TryPick(pcBed, posBed);
267 TryPick(pcPillow, posPillow);
281 int c_charges =
item.c_charges;
282 for (
int i = 0; i < c_charges; i++)
290 for (
int j = 0; j < num; j++)
321 traitPillowGod.Deity.Talk(
"morning");
344 t =
card.AddThing(t, tryStack:
false, pos.
invX, pos.
invY);
static void Ride(Chara host, Chara t, bool parasite=false, bool talk=true)
static void Unride(Chara host, bool parasite=false, bool talk=true)
void Mod(int a, bool force=false)
void Teleport(Point point, bool silent=false, bool force=false)
bool HasElement(int ele, int req=1)
SoundSource PlaySound(string id, float v=1f, bool spatial=true)
virtual void HealHP(int a, HealSource origin=HealSource.None)
void Talk(string idTopic, string ref1=null, string ref2=null, bool forceSync=false)
void ModCharge(int a, bool destroy=false)
void MoveImmediate(Point p, bool focus=true, bool cancelAI=true)
void Say(string lang, string ref1=null, string ref2=null)
SourceCategory.Row GetFavCat()
Condition AddCondition(string id, int p=100, bool force=false)
bool HasCondition(string alias)
override bool IsPCFaction
SourceThing.Row GetFavFood()
override void SetDir(int d)
TimeTable.Span CurrentSpan
Thing Pick(Thing t, bool msg=true, bool tryStack=true)
override void SetOwner(Chara _owner, bool onDeserialize=false)
static void SuccubusSleep(Chara tg)
override void OnBeforeStart()
override bool ConsumeTurn
override void OnRemoved()
static void SuccubusVisit(Chara tg)
static void SetDirty(Thing t)
Thing FindThing(Func< Thing, bool > func)
Chara FindChara(string id)
static string Say(string idLang, string ref1, string ref2=null, string ref3=null, string ref4=null)
Thing FindThing(Func< Thing, bool > func)
void OnSleep(bool ehe=false)
List< Thing > List(Func< Thing, bool > func, bool onlyAccessible=false)
override bool TryProgress(AIProgress p)
override void OnRead(Chara c)
override int GetActDuration(Chara c)