Elin Decompiled Documentation EA 23.102 Nightly
Loading...
Searching...
No Matches
LayerEditPlaylist Class Reference
Inheritance diagram for LayerEditPlaylist:
ELayer Layer IUISkin

Classes

class  ListBGM
 

Public Types

enum  Mode { Playlist , LotBGM }
 

Public Member Functions

override void OnInit ()
 
void Activate (TraitJukeBox _box)
 
void Activate (TraitHouseBoard _board)
 
void Activate (Mode _mode=Mode.Playlist)
 
void Refresh ()
 
void TogglePL ()
 
override void OnKill ()
 
override void OnSwitchContent (Window window)
 
- Public Member Functions inherited from ELayer
override void OnBeforeAddLayer ()
 
void InitInspector ()
 
sealed override void Init ()
 
override void OnAfterAddLayer ()
 
void TryShowHelp ()
 
void AddLayerToUI (string id)
 
void TryShowHint (string _langHint=null)
 
void TalkHomeMemeber (string id)
 
void TalkMaid (string id)
 
override void OnRightClick ()
 
- Public Member Functions inherited from Layer
virtual string GetTextHeader (Window window)
 
virtual bool HeaderIsListOf (int id)
 
virtual void Init ()
 
virtual void OnInit ()
 
virtual void OnAfterInit ()
 
virtual void ApplySkin ()
 
void ShowScreenLock (string id)
 
void UpdateInput ()
 
virtual void OnUpdateInput ()
 
virtual void OnRightClick ()
 
virtual bool OnBack ()
 
virtual void OnChangeLayer ()
 
virtual void OnCreate ()
 
void _AddLayer (string id)
 
Layer AddLayer (string id)
 
AddLayer< T > ()
 
AddLayer< T > (string id)
 
AddLayerDontCloseOthers< T > ()
 
Layer AddLayerDontCloseOthers (Layer l)
 
GetOrAddLayer< T > ()
 
virtual void OnBeforeAddLayer ()
 
virtual void OnAfterAddLayer ()
 
Layer AddLayer (Layer l)
 
void ToggleLayer (string id)
 
ToggleLayer< T > (string id=null)
 
void WaitAndClose ()
 
void OnClickClose ()
 
virtual void Close ()
 
void CloseLayers ()
 
void RemoveLayers (bool removeImportant=false)
 
bool RemoveLayer< T > ()
 
void RemoveLayer (Layer l)
 
virtual void OnKill ()
 
Layer SetOnKill (Action action)
 
void DisableClose ()
 
void Delay (float duration=0.05f)
 
Layer SetDelay (float d)
 
Layer GetLayer (string id)
 
GetLayer< T > (bool fromTop=false)
 
Layer GetTopLayer ()
 
void SwitchContent (int idWindow, int i)
 
virtual void OnSwitchContent (Window window)
 
Layer SetTitles (string langList, string idHeaderRow=null)
 
bool IsBlockWidgetClick ()
 
bool IsHideHud ()
 
bool IsAllowGeneralInput ()
 
bool IsUseBlur ()
 
bool IsPointerOnLayer ()
 
void ApplySkin ()
 

Public Attributes

List< BGMData > itemsDay = new List<BGMData>()
 
List< BGMData > itemsNight = new List<BGMData>()
 
UIMultiList multi
 
bool day
 
bool keepPlaying
 
bool single
 
bool dayNight
 
Mode mode
 
TraitHouseBoard board
 
TraitJukeBox jukebox
 
- Public Attributes inherited from Layer
Option option
 
UnityEvent onKill
 
Anime animeIn
 
Anime animeOut
 
bool closeOthers
 
bool defaultActionMode = true
 
Button screenLock
 
Layer parent
 
string idLayer
 
List< Layerlayers = new List<Layer>()
 
Vector2 lastParentPos
 
List< Windowwindows = new List<Window>()
 
string langHint
 

Properties

Dictionary< int, BGMData > bgms [get]
 
- Properties inherited from ELayer
static Core core [get]
 
static Game game [get]
 
static bool AdvMode [get]
 
static Player player [get]
 
static Chara pc [get]
 
static FactionBranch Branch [get]
 
static Faction Home [get]
 
static UI ui [get]
 
static Map _map [get]
 
static Zone _zone [get]
 
static Scene scene [get]
 
static BaseGameScreen screen [get]
 
static CoreConfig config [get]
 
static GameSetting setting [get]
 
static ColorProfile Colors [get]
 
static SourceManager sources [get]
 
static World world [get]
 
static SoundManager Sound [get]
 
static CoreDebug debug [get]
 
bool IsFloat [get]
 
virtual string IdHelp [get]
 
- Properties inherited from Layer
Layer TopLayer [get]
 
string uid [get]
 
virtual RectTransform rectLayers [get]
 
virtual bool blockWidgetClick [get]
 

Additional Inherited Members

- Static Public Member Functions inherited from ELayer
static int rnd (int a)
 
- Static Public Member Functions inherited from Layer
static T Create< T > ()
 
static T Create< T > (string path)
 
static Layer Create (string path)
 
- Static Public Attributes inherited from Layer
static int skipInput
 
static bool closeOnRightClick
 
static bool rightClicked
 
static bool cancelKeyDown
 
static bool ignoreSounds
 
static Transform blurStopInstance
 
static string[] searchPath = new string[3] { "Layer", "Layer/Dialog", "Layer/LayerHome" }
 
- Protected Member Functions inherited from ELayer
sealed override void _Close ()
 
sealed override void Kill ()
 
- Protected Member Functions inherited from Layer
virtual void Awake ()
 
virtual void _Close ()
 
virtual void Kill ()
 
- Protected Attributes inherited from Layer
RectTransform _rect
 
bool isDestroyed
 

Detailed Description

Definition at line 4 of file LayerEditPlaylist.cs.

Member Enumeration Documentation

◆ Mode

Enumerator
Playlist 
LotBGM 

Definition at line 6 of file LayerEditPlaylist.cs.

Member Function Documentation

◆ Activate() [1/3]

void LayerEditPlaylist.Activate ( Mode  _mode = Mode::Playlist)
inline

Definition at line 130 of file LayerEditPlaylist.cs.

131 {
132 mode = _mode;
133 Msg.Nerun("nPlaylist", "UN_nerun_smile3");
134 if (mode == Mode.Playlist)
135 {
136 if (dayNight)
137 {
138 windows[0].AddBottomButton("togglePlaylist", TogglePL);
139 }
140 foreach (int item in ELayer._map._plDay)
141 {
142 if (bgms.ContainsKey(item))
143 {
144 itemsDay.Add(bgms[item]);
145 }
146 }
147 foreach (int item2 in ELayer._map._plNight)
148 {
149 if (bgms.ContainsKey(item2))
150 {
151 itemsNight.Add(bgms[item2]);
152 }
153 }
154 }
155 else
156 {
157 windows[1].SetActive(enable: false);
158 windows[0].SetPosition();
159 multi.Double = false;
160 }
161 Refresh();
162 foreach (ListOwner owner in multi.owners)
163 {
164 owner.OnSwitchContent();
165 }
166 }
Definition: ELayer.cs:4
static Map _map
Definition: ELayer.cs:23
List< BGMData > itemsNight
List< BGMData > itemsDay
Dictionary< int, BGMData > bgms
List< Window > windows
Definition: Layer.cs:116
virtual void OnSwitchContent()
Definition: ListOwner.cs:77
List< int > _plNight
Definition: Map.cs:58
List< int > _plDay
Definition: Map.cs:55
Definition: Msg.cs:5
static void Nerun(string lang, string idPortrait="UN_nerun")
Definition: Msg.cs:145
List< ListOwner > owners
Definition: UIMultiList.cs:6

References ELayer._map, Map._plDay, Map._plNight, bgms, dayNight, item, itemsDay, itemsNight, mode, multi, Msg.Nerun(), ListOwner< T1, T2 >.OnSwitchContent(), UIMultiList.owners, Refresh(), TogglePL(), and Layer.windows.

◆ Activate() [2/3]

void LayerEditPlaylist.Activate ( TraitHouseBoard  _board)
inline

Definition at line 123 of file LayerEditPlaylist.cs.

124 {
125 board = _board;
126 single = true;
127 Activate(Mode.LotBGM);
128 }
TraitHouseBoard board
void Activate(TraitJukeBox _box)

References Activate(), board, and single.

◆ Activate() [3/3]

void LayerEditPlaylist.Activate ( TraitJukeBox  _box)
inline

Definition at line 116 of file LayerEditPlaylist.cs.

117 {
118 jukebox = _box;
119 single = true;
120 Activate(Mode.LotBGM);
121 }

References Activate(), jukebox, and single.

Referenced by Activate().

◆ OnInit()

override void LayerEditPlaylist.OnInit ( )
inlinevirtual

Reimplemented from Layer.

Definition at line 112 of file LayerEditPlaylist.cs.

113 {
114 }

◆ OnKill()

override void LayerEditPlaylist.OnKill ( )
inlinevirtual

Reimplemented from Layer.

Definition at line 231 of file LayerEditPlaylist.cs.

232 {
233 if (mode == Mode.LotBGM)
234 {
235 ELayer.Sound.StopBGM();
237 return;
238 }
239 ELayer._map._plDay.Clear();
240 ELayer._map._plNight.Clear();
241 foreach (BGMData item in itemsDay)
242 {
243 ELayer._map._plDay.Add(item.id);
244 }
245 foreach (BGMData item2 in itemsNight)
246 {
247 ELayer._map._plNight.Add(item2.id);
248 }
249 Object.DestroyImmediate(ELayer._map.plDay);
250 ELayer._map.plDay = null;
252 if (!keepPlaying)
253 {
254 ELayer.Sound.StopBGM();
256 }
257 }
static SoundManager Sound
Definition: ELayer.cs:41
static Zone _zone
Definition: ELayer.cs:25
Playlist plDay
Definition: Map.cs:77
void RefreshBGM()
Definition: Zone.cs:2742
void RefreshPlaylist()
Definition: Zone.cs:2734

References ELayer._map, Map._plDay, Map._plNight, ELayer._zone, item, itemsDay, itemsNight, keepPlaying, mode, Map.plDay, Zone.RefreshBGM(), Zone.RefreshPlaylist(), and ELayer.Sound.

◆ OnSwitchContent()

override void LayerEditPlaylist.OnSwitchContent ( Window  window)
inlinevirtual

Reimplemented from Layer.

Definition at line 259 of file LayerEditPlaylist.cs.

260 {
261 if (multi.owners.Count > 0)
262 {
263 multi.owners[window.windowIndex].OnSwitchContent();
264 }
265 }
int windowIndex
Definition: Window.cs:697

References multi, UIMultiList.owners, and Window.windowIndex.

◆ Refresh()

void LayerEditPlaylist.Refresh ( )
inline

Definition at line 168 of file LayerEditPlaylist.cs.

169 {
170 List<BGMData> list = ((mode == Mode.LotBGM) ? new List<BGMData>() : (day ? itemsDay : itemsNight));
171 List<BGMData> list2 = new List<BGMData>();
172 foreach (BGMData value in bgms.Values)
173 {
174 if (!ELayer.debug.allBGM && !ELayer.player.knownBGMs.Contains(value.id))
175 {
176 continue;
177 }
178 if (mode == Mode.LotBGM)
179 {
180 list.Add(value);
181 continue;
182 }
183 bool flag = value.id != 0;
184 foreach (BGMData item in list)
185 {
186 if (item.id == value.id)
187 {
188 flag = false;
189 break;
190 }
191 }
192 if (flag)
193 {
194 list2.Add(value);
195 }
196 }
197 multi.Clear();
198 if (mode == Mode.LotBGM)
199 {
200 multi.AddOwner(0, new ListBGM
201 {
202 items = list,
203 idTitle = "wBGMLot",
204 single = true
205 });
206 }
207 else
208 {
209 multi.AddOwner(0, new ListBGM
210 {
211 items = list,
212 idTitle = "wPlaylist"
213 });
214 multi.AddOwner(1, new ListBGM
215 {
216 items = list2,
217 idTitle = "wPlaylist2"
218 });
219 }
220 multi.Build();
221 }
bool allBGM
Definition: CoreDebug.cs:198
static Player player
Definition: ELayer.cs:13
static CoreDebug debug
Definition: ELayer.cs:43
HashSet< int > knownBGMs
Definition: Player.cs:865
void AddOwner(int i, ListOwner o)
Definition: UIMultiList.cs:25
void Clear()
Definition: UIMultiList.cs:20
void Build(UIList.SortMode m=UIList.SortMode.ByNone)
Definition: UIMultiList.cs:41

References UIMultiList.AddOwner(), CoreDebug.allBGM, bgms, UIMultiList.Build(), UIMultiList.Clear(), day, ELayer.debug, item, itemsDay, itemsNight, Player.knownBGMs, mode, multi, ELayer.player, and single.

Referenced by Activate(), and TogglePL().

◆ TogglePL()

void LayerEditPlaylist.TogglePL ( )
inline

Definition at line 223 of file LayerEditPlaylist.cs.

224 {
225 day = !day;
226 Refresh();
227 multi.Refresh();
228 SE.Click();
229 }
void Refresh()
Definition: UIMultiList.cs:54

References day, multi, Refresh(), and UIMultiList.Refresh().

Referenced by Activate().

Member Data Documentation

◆ board

TraitHouseBoard LayerEditPlaylist.board

Definition at line 106 of file LayerEditPlaylist.cs.

Referenced by Activate(), and LayerEditPlaylist.ListBGM.List().

◆ day

bool LayerEditPlaylist.day

Definition at line 96 of file LayerEditPlaylist.cs.

Referenced by Refresh(), and TogglePL().

◆ dayNight

bool LayerEditPlaylist.dayNight

Definition at line 102 of file LayerEditPlaylist.cs.

Referenced by Activate().

◆ itemsDay

List<BGMData> LayerEditPlaylist.itemsDay = new List<BGMData>()

Definition at line 90 of file LayerEditPlaylist.cs.

Referenced by Activate(), OnKill(), and Refresh().

◆ itemsNight

List<BGMData> LayerEditPlaylist.itemsNight = new List<BGMData>()

Definition at line 92 of file LayerEditPlaylist.cs.

Referenced by Activate(), OnKill(), and Refresh().

◆ jukebox

TraitJukeBox LayerEditPlaylist.jukebox

Definition at line 108 of file LayerEditPlaylist.cs.

Referenced by Activate(), and LayerEditPlaylist.ListBGM.List().

◆ keepPlaying

bool LayerEditPlaylist.keepPlaying

Definition at line 98 of file LayerEditPlaylist.cs.

Referenced by OnKill().

◆ mode

Mode LayerEditPlaylist.mode

Definition at line 104 of file LayerEditPlaylist.cs.

Referenced by Activate(), LayerEditPlaylist.ListBGM.List(), OnKill(), and Refresh().

◆ multi

UIMultiList LayerEditPlaylist.multi

Definition at line 94 of file LayerEditPlaylist.cs.

Referenced by Activate(), OnSwitchContent(), Refresh(), and TogglePL().

◆ single

bool LayerEditPlaylist.single

Definition at line 100 of file LayerEditPlaylist.cs.

Referenced by Activate(), and Refresh().

Property Documentation

◆ bgms

Dictionary<int, BGMData> LayerEditPlaylist.bgms
get

Definition at line 110 of file LayerEditPlaylist.cs.

Referenced by Activate(), and Refresh().


The documentation for this class was generated from the following file: