Elin Modding Docs Doc
Loading...
Searching...
No Matches
TraitGamble.cs
1using System;
2
3// Token: 0x02000374 RID: 884
4public class TraitGamble : TraitItem
5{
6 // Token: 0x170007FD RID: 2045
7 // (get) Token: 0x06001B28 RID: 6952 RVA: 0x000A7670 File Offset: 0x000A5870
8 public virtual string idMsg
9 {
10 get
11 {
12 return null;
13 }
14 }
15
16 // Token: 0x170007FE RID: 2046
17 // (get) Token: 0x06001B29 RID: 6953 RVA: 0x000A7673 File Offset: 0x000A5873
18 public virtual string idSound
19 {
20 get
21 {
22 return this.idMsg;
23 }
24 }
25
26 // Token: 0x170007FF RID: 2047
27 // (get) Token: 0x06001B2A RID: 6954 RVA: 0x000A767B File Offset: 0x000A587B
28 public virtual string idTalk
29 {
30 get
31 {
32 return null;
33 }
34 }
35
36 // Token: 0x06001B2B RID: 6955 RVA: 0x000A7680 File Offset: 0x000A5880
37 public override bool IdleUse(Chara c, int dist)
38 {
39 if (dist > 1)
40 {
41 return false;
42 }
43 if (!this.CanUse(c))
44 {
45 return false;
46 }
47 if (!this.idSound.IsEmpty())
48 {
49 c.PlaySound(this.idSound, 1f, true);
50 }
51 if (!this.idTalk.IsEmpty())
52 {
53 EClass.player.forceTalk = true;
54 c.Talk(this.idTalk, null, null, false);
55 }
56 if (!this.idMsg.IsEmpty())
57 {
58 c.Say(this.idMsg, c, this.owner, null, null);
59 }
60 bool flag = EClass.rnd(2) == 0;
61 if (!c.IsPC)
62 {
63 int a = (1 + EClass.rnd(10)) * (flag ? 1 : -1);
64 this.owner.ModCurrency(a, "money");
65 if (flag && EClass.rnd(20) == 0)
66 {
67 this.owner.ModCurrency(1, "casino_coin");
68 }
69 }
70 if (flag)
71 {
72 this.owner.ShowEmo(Emo.happy, 0f, true);
73 }
74 return true;
75 }
76
77 // Token: 0x06001B2C RID: 6956 RVA: 0x000A776F File Offset: 0x000A596F
78 public override bool CanUse(Chara c)
79 {
80 return this.owner.IsInstalled && (this.Electricity <= 0 || this.owner.isOn);
81 }
82
83 // Token: 0x06001B2D RID: 6957 RVA: 0x000A7796 File Offset: 0x000A5996
84 public override bool OnUse(Chara c)
85 {
86 return this.IdleUse(c, 0);
87 }
88}
Definition Chara.cs:12