Elin Decompiled Documentation EA 23.102 Nightly
Loading...
Searching...
No Matches
AI_OpenLock.cs
Go to the documentation of this file.
2{
4
5 public override bool HasProgress => true;
6
7 public override bool CanTargetInventory => true;
8
9 public override AIProgress CreateProgress()
10 {
11 return new Progress_Custom
12 {
13 canProgress = CanProgress,
14 onProgressBegin = delegate
15 {
16 Thing thing = owner.things.FindBest<TraitLockpick>((Thing t) => -t.c_charges);
17 if (thing != null)
18 {
19 owner.Say("lockpick_start_pick", thing, base.target);
20 }
21 else
22 {
23 owner.Say("lockpick_start", owner, base.target);
24 }
25 owner.PlaySound("lock_pick");
26 },
27 onProgress = delegate(Progress_Custom p)
28 {
29 switch (base.target.trait.TryOpenLock(owner, msgFail: false))
30 {
31 case LockOpenState.Success:
33 EClass.Sound.Stop("lock_pick");
34 break;
35 case LockOpenState.NotEnoughSkill:
36 owner.Say("lockpick_end", owner, base.target);
37 p.Cancel();
38 EClass.Sound.Stop("lock_pick");
39 break;
40 }
41 },
42 onProgressComplete = delegate
43 {
44 if (base.target.c_lockLv != 0 && owner != null)
45 {
46 owner.Say("lockpick_end", owner, base.target);
47 }
48 }
49 }.SetDuration(30, 10);
50 }
51}
LockOpenState
Definition: LockOpenState.cs:2
virtual Status Cancel()
Definition: AIAct.cs:291
new Chara owner
Definition: AIAct.cs:14
void CompleteProgress()
Definition: AIProgress.cs:64
override AIProgress CreateProgress()
Definition: AI_OpenLock.cs:9
override bool CanTargetInventory
Definition: AI_OpenLock.cs:7
override bool HasProgress
Definition: AI_OpenLock.cs:5
override CursorInfo CursorIcon
Definition: AI_OpenLock.cs:3
override bool CanProgress()
SoundSource PlaySound(string id, float v=1f, bool spatial=true)
Definition: Card.cs:5404
ThingContainer things
Definition: Card.cs:34
void Say(string lang, string ref1=null, string ref2=null)
Definition: Card.cs:6046
static CursorInfo Container
Definition: CursorSystem.cs:82
Definition: EClass.cs:5
static SoundManager Sound
Definition: EClass.cs:46
Definition: Thing.cs:8