Elin Decompiled Documentation EA 23.344.1 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 136 of file LayerEditPlaylist.cs.

137 {
138 mode = _mode;
139 Msg.Nerun("nPlaylist", "UN_nerun_smile3");
140 if (mode == Mode.Playlist)
141 {
142 if (dayNight)
143 {
144 windows[0].AddBottomButton("togglePlaylist", TogglePL);
145 }
146 foreach (int item in ELayer._map._plDay)
147 {
148 if (bgms.ContainsKey(item))
149 {
150 itemsDay.Add(bgms[item]);
151 }
152 }
153 foreach (int item2 in ELayer._map._plNight)
154 {
155 if (bgms.ContainsKey(item2))
156 {
157 itemsNight.Add(bgms[item2]);
158 }
159 }
160 }
161 else
162 {
163 windows[1].SetActive(enable: false);
164 windows[0].SetPosition();
165 multi.Double = false;
166 }
167 Refresh();
168 foreach (ListOwner owner in multi.owners)
169 {
170 owner.OnSwitchContent();
171 }
172 }
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:85
List< int > _plNight
Definition: Map.cs:61
List< int > _plDay
Definition: Map.cs:58
Definition: Msg.cs:5
static void Nerun(string lang, string idPortrait="UN_nerun")
Definition: Msg.cs:150
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 129 of file LayerEditPlaylist.cs.

130 {
131 board = _board;
132 single = true;
133 Activate(Mode.LotBGM);
134 }
TraitHouseBoard board
void Activate(TraitJukeBox _box)

References Activate(), board, and single.

◆ Activate() [3/3]

void LayerEditPlaylist.Activate ( TraitJukeBox  _box)
inline

Definition at line 122 of file LayerEditPlaylist.cs.

123 {
124 jukebox = _box;
125 single = true;
126 Activate(Mode.LotBGM);
127 }

References Activate(), jukebox, and single.

Referenced by Activate().

◆ OnInit()

override void LayerEditPlaylist.OnInit ( )
inlinevirtual

Reimplemented from Layer.

Definition at line 118 of file LayerEditPlaylist.cs.

119 {
120 }

◆ OnKill()

override void LayerEditPlaylist.OnKill ( )
inlinevirtual

Reimplemented from Layer.

Definition at line 238 of file LayerEditPlaylist.cs.

239 {
240 if (mode == Mode.LotBGM)
241 {
242 ELayer.Sound.StopBGM();
244 return;
245 }
246 ELayer._map._plDay.Clear();
247 ELayer._map._plNight.Clear();
248 foreach (BGMData item in itemsDay)
249 {
250 ELayer._map._plDay.Add(item.id);
251 }
252 foreach (BGMData item2 in itemsNight)
253 {
254 ELayer._map._plNight.Add(item2.id);
255 }
256 Object.DestroyImmediate(ELayer._map.plDay);
257 ELayer._map.plDay = null;
259 if (!keepPlaying)
260 {
261 ELayer.Sound.StopBGM();
263 }
264 }
static SoundManager Sound
Definition: ELayer.cs:41
static Zone _zone
Definition: ELayer.cs:25
Playlist plDay
Definition: Map.cs:80
void RefreshBGM()
Definition: Zone.cs:3309
void RefreshPlaylist()
Definition: Zone.cs:3293

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 266 of file LayerEditPlaylist.cs.

267 {
268 if (multi.owners.Count > 0)
269 {
270 multi.owners[window.windowIndex].OnSwitchContent();
271 }
272 }
int windowIndex
Definition: Window.cs:697

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

◆ Refresh()

void LayerEditPlaylist.Refresh ( )
inline

Definition at line 174 of file LayerEditPlaylist.cs.

175 {
176 List<BGMData> list = ((mode == Mode.LotBGM) ? new List<BGMData>() : (day ? itemsDay : itemsNight));
177 List<BGMData> list2 = new List<BGMData>();
178 foreach (BGMData value in bgms.Values)
179 {
180 if (!ELayer.debug.allBGM && !ELayer.player.knownBGMs.Contains(value.id))
181 {
182 continue;
183 }
184 if (mode == Mode.LotBGM)
185 {
186 list.Add(value);
187 continue;
188 }
189 bool flag = value.id != 0;
190 foreach (BGMData item in list)
191 {
192 if (item.id == value.id)
193 {
194 flag = false;
195 break;
196 }
197 }
198 if (flag)
199 {
200 list2.Add(value);
201 }
202 }
203 multi.Clear();
204 if (mode == Mode.LotBGM)
205 {
206 multi.AddOwner(0, new ListBGM
207 {
208 items = list,
209 idTitle = "wBGMLot",
210 single = true
211 });
212 }
213 else
214 {
215 multi.AddOwner(0, new ListBGM
216 {
217 items = list,
218 idTitle = "wPlaylist",
219 sort = false
220 });
221 multi.AddOwner(1, new ListBGM
222 {
223 items = list2,
224 idTitle = "wPlaylist2"
225 });
226 }
227 multi.Build();
228 }
bool allBGM
Definition: CoreDebug.cs:215
static Player player
Definition: ELayer.cs:13
static CoreDebug debug
Definition: ELayer.cs:43
HashSet< int > knownBGMs
Definition: Player.cs:1134
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 230 of file LayerEditPlaylist.cs.

231 {
232 day = !day;
233 Refresh();
234 multi.Refresh();
235 SE.Click();
236 }
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 112 of file LayerEditPlaylist.cs.

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

◆ day

bool LayerEditPlaylist.day

Definition at line 102 of file LayerEditPlaylist.cs.

Referenced by Refresh(), and TogglePL().

◆ dayNight

bool LayerEditPlaylist.dayNight

Definition at line 108 of file LayerEditPlaylist.cs.

Referenced by Activate().

◆ itemsDay

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

Definition at line 96 of file LayerEditPlaylist.cs.

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

◆ itemsNight

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

Definition at line 98 of file LayerEditPlaylist.cs.

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

◆ jukebox

TraitJukeBox LayerEditPlaylist.jukebox

Definition at line 114 of file LayerEditPlaylist.cs.

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

◆ keepPlaying

bool LayerEditPlaylist.keepPlaying

Definition at line 104 of file LayerEditPlaylist.cs.

Referenced by OnKill().

◆ mode

Mode LayerEditPlaylist.mode

Definition at line 110 of file LayerEditPlaylist.cs.

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

◆ multi

UIMultiList LayerEditPlaylist.multi

Definition at line 100 of file LayerEditPlaylist.cs.

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

◆ single

bool LayerEditPlaylist.single

Definition at line 106 of file LayerEditPlaylist.cs.

Referenced by Activate(), and Refresh().

Property Documentation

◆ bgms

Dictionary<int, BGMData> LayerEditPlaylist.bgms
get

Definition at line 116 of file LayerEditPlaylist.cs.

Referenced by Activate(), and Refresh().


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