Elin Decompiled Documentation EA 23.102 Nightly
Loading...
Searching...
No Matches
TraitTape.cs
Go to the documentation of this file.
1public class TraitTape : TraitItem
2{
3 public override void SetName(ref string s)
4 {
5 s = "_tape".lang(owner.refVal.ToString() ?? "", s);
6 }
7
8 public override void OnCreate(int lv)
9 {
10 if (EClass._map.plDay != null && EClass._map.plDay.list.Count > 0)
11 {
12 owner.refVal = EClass._map.plDay.list[0].data.id;
13 }
14 else
15 {
16 owner.refVal = EClass.core.refs.dictBGM.RandomItem().id;
17 }
18 }
19
20 public override bool OnUse(Chara c)
21 {
22 if (owner.refVal == 0 || EClass.player.knownBGMs.Contains(owner.refVal))
23 {
24 Msg.Say("songAlreayKnown");
25 }
26 else
27 {
28 Msg.Say("songAdded", EClass.core.refs.dictBGM[owner.refVal]._name, owner.refVal.ToString() ?? "");
30 }
31 EClass.Sound.Play("tape");
32 owner.ModNum(-1);
33 return false;
34 }
35}
int refVal
Definition: Card.cs:190
void ModNum(int a, bool notify=true)
Definition: Card.cs:3262
Definition: Chara.cs:10
Dictionary< int, BGMData > dictBGM
Definition: CoreRef.cs:369
CoreRef refs
Definition: Core.cs:51
Definition: EClass.cs:5
static Core core
Definition: EClass.cs:6
static Map _map
Definition: EClass.cs:18
static Player player
Definition: EClass.cs:12
static SoundManager Sound
Definition: EClass.cs:46
Playlist plDay
Definition: Map.cs:77
Definition: Msg.cs:5
static string Say(string idLang, string ref1, string ref2=null, string ref3=null, string ref4=null)
Definition: Msg.cs:58
HashSet< int > knownBGMs
Definition: Player.cs:865
override void OnCreate(int lv)
Definition: TraitTape.cs:8
override void SetName(ref string s)
Definition: TraitTape.cs:3
override bool OnUse(Chara c)
Definition: TraitTape.cs:20
Card owner
Definition: Trait.cs:26