9 public virtual Vector3 GetRestrainPos
13 return EClass.setting.render.posShackle;
19 public virtual AnimeID animeId
23 return AnimeID.Shiver;
28 public override bool CanStackTo(
Thing to)
35 public override bool CanBeHeld
39 return !this.IsRestraining();
44 public override bool CanUse(
Chara c)
46 return EClass._zone.IsPCFaction && this.owner.IsInstalled && !EClass.pc.isRestrained && (this.owner.pos.FirstChara ==
null || !this.owner.pos.FirstChara.isRestrained);
51 public override string LangUse
60 public override void TrySetHeldAct(
ActPlan p)
69 public override bool OnUse(
Chara c)
71 c.MoveImmediate(this.owner.pos,
true,
true);
75 }.Perform(c, c, c.pos);
80 public void Restrain(
Card tc,
bool msg =
false)
82 tc.isRestrained =
true;
83 this.owner.c_uidRefCard = tc.uid;
86 tc.Say(
"restrained", tc,
null,
null);
91 public bool IsRestraining()
93 foreach (
Chara chara
in this.owner.pos.Charas)
95 if (chara.isRestrained &&
this.owner.c_uidRefCard == chara.uid)
102 if (chara2.isChara && chara2.isRestrained && chara2.pos.Equals(
this.owner.pos))
104 this.owner.c_uidRefCard = chara2.uid;