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

Public Member Functions

override void OnInit ()
 
override void OnSwitchContent (Window window)
 
void RefreshQuest ()
 
void RefreshHire ()
 
void RefreshRanking ()
 
override void OnKill ()
 
- 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

UIList list
 
UIList listHire
 
UIDynamicList listRanking
 
UIText textClient
 
UIText textTitle
 
UIText textDetail
 
UIText textHours
 
UIText textNote
 
UIText textReward
 
UIText textQuestLimit
 
Portrait portrait
 
UIButton buttonTalk
 
UICurrency uiCurrency
 
Gradient gradientRank
 
- 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
 

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
 
- 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]
 

Detailed Description

Definition at line 3 of file LayerQuestBoard.cs.

Member Function Documentation

◆ OnInit()

override void LayerQuestBoard.OnInit ( )
inlinevirtual

Reimplemented from Layer.

Definition at line 33 of file LayerQuestBoard.cs.

34 {
36 {
38 }
39 windows[0].setting.tabs[1].disable = !ELayer._zone.IsPCFaction;
40 }
Definition: ELayer.cs:4
static Zone _zone
Definition: ELayer.cs:25
void UpdateReqruits(bool clear=false)
List< Window > windows
Definition: Layer.cs:116
FactionBranch branch
Definition: Zone.cs:34
bool IsPCFaction
Definition: Zone.cs:468

References ELayer._zone, Zone.branch, Zone.IsPCFaction, FactionBranch.UpdateReqruits(), and Layer.windows.

◆ OnKill()

override void LayerQuestBoard.OnKill ( )
inlinevirtual

Reimplemented from Layer.

Definition at line 219 of file LayerQuestBoard.cs.

220 {
221 if (ELayer.Branch != null)
222 {
224 }
225 }
static FactionBranch Branch
Definition: ELayer.cs:17
void ClearNewRecruits()

References ELayer.Branch, and FactionBranch.ClearNewRecruits().

◆ OnSwitchContent()

override void LayerQuestBoard.OnSwitchContent ( Window  window)
inlinevirtual

Reimplemented from Layer.

Definition at line 42 of file LayerQuestBoard.cs.

43 {
44 switch (window.idTab)
45 {
46 case 0:
48 break;
49 case 1:
51 {
52 ELayer.Branch.UpdateReqruits(clear: true);
53 }
55 break;
56 case 2:
58 break;
59 }
60 WindowMenu menuRight = windows[0].menuRight;
61 menuRight.Clear();
62 if (window.idTab != 0)
63 {
64 return;
65 }
66 UIButton button = null;
67 button = menuRight.AddButton("rerollQuest".lang(GetCost().ToString() ?? ""), delegate
68 {
69 if (ELayer._zone.influence < GetCost())
70 {
71 SE.Beep();
72 Msg.Say("notEnoughInfluence");
73 }
74 else
75 {
76 SE.Dice();
77 ELayer._zone.UpdateQuests(force: true);
79 ELayer._zone.influence -= GetCost();
81 {
83 }
84 button.mainText.SetText("rerollQuest".lang(GetCost().ToString() ?? ""));
85 }
86 });
87 static int GetCost()
88 {
89 return 1;
90 }
91 }
bool enable
Definition: CoreDebug.cs:286
static Player player
Definition: ELayer.cs:13
static CoreDebug debug
Definition: ELayer.cs:43
Definition: Msg.cs:5
static string Say(string idLang, string ref1, string ref2=null, string ref3=null, string ref4=null)
Definition: Msg.cs:58
int questRerollCost
Definition: Player.cs:921
int influence
Definition: Spatial.cs:214
UIText mainText
Definition: UIButton.cs:102
void SetText(string s)
Definition: UIText.cs:159
void Clear()
Definition: WindowMenu.cs:44
UIButton AddButton(string idLang, Action< UIButton > onClick, Sprite sprite=null, string idButton="Default")
Definition: WindowMenu.cs:54
int idTab
Definition: Window.cs:694
void UpdateQuests(bool force=false)
Definition: Zone.cs:3489

References ELayer._zone, WindowMenu.AddButton(), ELayer.Branch, WindowMenu.Clear(), ELayer.debug, CoreDebug.enable, Window.idTab, Spatial.influence, UIButton.mainText, ELayer.player, Player.questRerollCost, RefreshHire(), RefreshQuest(), RefreshRanking(), Msg.Say(), UIText.SetText(), Zone.UpdateQuests(), FactionBranch.UpdateReqruits(), and Layer.windows.

◆ RefreshHire()

void LayerQuestBoard.RefreshHire ( )
inline

Definition at line 127 of file LayerQuestBoard.cs.

128 {
130 list.Clear();
131 list.callbacks = new UIList.Callback<HireInfo, ButtonChara>
132 {
133 onClick = delegate(HireInfo a, ButtonChara b)
134 {
135 a.isNew = false;
136 GameLang.refDrama1 = "(" + "money2".lang() + ": " + CalcGold.Hire(a.chara) + ")";
137 GameLang.refDrama2 = ELayer.pc.things.Find("ticket_resident")?.Name ?? "";
138 a.chara.ShowDialog("_chara", "4-1").onKill.AddListener(RefreshHire);
139 },
140 onInstantiate = delegate(HireInfo a, ButtonChara b)
141 {
142 Chara chara = a.chara;
143 b.SetChara(chara, ButtonChara.Mode.Hire);
144 int cost = CalcGold.Hire(chara);
145 b.item.text1.text = cost.ToString().TagColorGoodBad(() => ELayer.pc.GetCurrency("money2") >= cost || ELayer.pc.things.Find("ticket_resident") != null);
146 b.item.text2.text = ((a.Days == -1) ? "-" : (a.Days.ToString() ?? ""));
147 HintIcon[] componentsInChildren = b.layoutTag.GetComponentsInChildren<HintIcon>();
148 for (int i = 0; i < componentsInChildren.Length; i++)
149 {
150 componentsInChildren[i].onPointerDown = delegate
151 {
152 list.callbacks.OnClick(a, b);
153 };
154 }
155 b.textHobby.text = chara.GetTextHobby();
156 b.textWork.text = chara.GetTextWork();
157 b.textLifeStyle.text = "lifestyle".lang() + ": " + ("lifestyle_" + chara.idTimeTable).lang();
158 b.item.image1.SetActive(a.isNew);
159 },
160 onRefresh = null
161 };
163 {
164 if (!item.chara.IsHomeMember() && (item.chara.currentZone == null || !item.chara.currentZone.IsPlayerFaction))
165 {
166 list.Add(item);
167 }
168 }
169 list.Refresh();
170 this.RebuildLayout(recursive: true);
171 }
UIList.ICallback callbacks
Definition: BaseList.cs:13
new UIItem item
Definition: ButtonChara.cs:29
void SetChara(Chara c, Mode m)
Definition: ButtonChara.cs:35
LayoutGroup layoutTag
Definition: ButtonChara.cs:33
static int Hire(Chara c)
Definition: CalcGold.cs:8
string Name
Definition: Card.cs:2099
int GetCurrency(string id="money")
Definition: Card.cs:3873
ThingContainer things
Definition: Card.cs:36
Definition: Chara.cs:10
void ShowDialog()
Definition: Chara.cs:6805
string idTimeTable
Definition: Chara.cs:466
string GetTextWork(bool simple=false)
Definition: Chara.cs:8726
string GetTextHobby(bool simple=false)
Definition: Chara.cs:8716
static Chara pc
Definition: ELayer.cs:15
List< HireInfo > listRecruit
Action onPointerDown
Definition: HintIcon.cs:15
Chara chara
Definition: HireInfo.cs:6
int Days
Definition: HireInfo.cs:29
bool isNew
Definition: HireInfo.cs:9
Thing Find(int uid)
Image image1
Definition: UIItem.cs:14
Definition: UIList.cs:9
override void Clear()
Definition: UIList.cs:349
override void Add(object item)
Definition: UIList.cs:302
virtual void Refresh(bool highlightLast=false)
Definition: UIList.cs:424

References UIList.Add(), ELayer.Branch, BaseList.callbacks, HireInfo.chara, UIList.Clear(), HireInfo.Days, ThingContainer.Find(), Card.GetCurrency(), Chara.GetTextHobby(), Chara.GetTextWork(), CalcGold.Hire(), Chara.idTimeTable, UIItem.image1, HireInfo.isNew, ButtonChara.item, item, ButtonChara.layoutTag, list, listHire, FactionBranch.listRecruit, Card.Name, HintIcon.onPointerDown, ELayer.pc, UIList.Refresh(), RefreshHire(), ButtonChara.SetChara(), Chara.ShowDialog(), and Card.things.

Referenced by OnSwitchContent(), and RefreshHire().

◆ RefreshQuest()

void LayerQuestBoard.RefreshQuest ( )
inline

Definition at line 93 of file LayerQuestBoard.cs.

94 {
95 list.Clear();
96 list.callbacks = new UIList.Callback<Quest, ItemQuest>
97 {
98 onInstantiate = delegate(Quest a, ItemQuest b)
99 {
100 b.SetQuest(a);
101 b.button.SetOnClick(delegate
102 {
103 Close();
104 a.OnClickQuest();
105 });
106 }
107 };
109 foreach (Quest global in ELayer.game.quests.globalList)
110 {
111 if (global.IsVisibleOnQuestBoard())
112 {
113 list.Add(global);
114 }
115 }
116 foreach (Chara chara in ELayer._map.charas)
117 {
118 if (chara.quest != null && !ELayer.game.quests.list.Contains(chara.quest) && !chara.IsPCParty && chara.memberType == FactionMemberType.Default && chara.quest.IsVisibleOnQuestBoard())
119 {
120 list.Add(chara.quest);
121 }
122 }
123 list.Refresh();
124 textQuestLimit.SetText("questLimit".lang(ELayer.game.quests.CountRandomQuest().ToString() ?? "", 5.ToString() ?? ""));
125 }
Quest quest
Definition: Chara.cs:24
static Game game
Definition: ELayer.cs:9
static Map _map
Definition: ELayer.cs:23
QuestManager quests
Definition: Game.cs:179
void SetQuest(Quest q)
Definition: ItemQuest.cs:23
UIButton button
Definition: ItemQuest.cs:7
virtual void Close()
Definition: Layer.cs:463
List< Chara > charas
Definition: Map.cs:81
List< Quest > list
Definition: QuestManager.cs:11
int CountRandomQuest()
List< Quest > globalList
Definition: QuestManager.cs:14
Definition: Quest.cs:7
virtual void OnClickQuest()
Definition: Quest.cs:422
virtual bool IsVisibleOnQuestBoard()
Definition: Quest.cs:292

References ELayer._map, ELayer._zone, UIList.Add(), ItemQuest.button, Map.charas, UIList.Clear(), Layer.Close(), QuestManager.CountRandomQuest(), ELayer.game, QuestManager.globalList, Quest.IsVisibleOnQuestBoard(), list, QuestManager.list, Quest.OnClickQuest(), Chara.quest, Game.quests, UIList.Refresh(), ItemQuest.SetQuest(), UIText.SetText(), textQuestLimit, and Zone.UpdateQuests().

Referenced by OnSwitchContent().

◆ RefreshRanking()

void LayerQuestBoard.RefreshRanking ( )
inline

Definition at line 173 of file LayerQuestBoard.cs.

174 {
176 list.Clear();
177 list.callbacks = new UIList.Callback<Chara, ButtonChara>
178 {
179 onClick = delegate
180 {
181 },
182 onRedraw = delegate(Chara a, ButtonChara b, int i)
183 {
184 b.SetChara(a, ButtonChara.Mode.Ranking);
185 int advRank = a.trait.GetAdvRank();
187 b.textAlias.color = gradientRank.Evaluate(0.1f * (float)advRank);
188 b.item.image2.SetActive(a.IsPCFaction);
189 bool enable = a.GetInt(111) > 0;
190 b.transDefeated.SetActive(enable);
191 },
192 onList = delegate
193 {
194 foreach (Chara value in ELayer.game.cards.globalCharas.Values)
195 {
196 if (value.trait.ShowAdvRank)
197 {
198 list.Add(value);
199 }
200 }
201 list.objects.Sort((object a, object b) => GetSortVal(b as Chara) - GetSortVal(a as Chara));
202 },
203 onRefresh = null
204 };
205 list.List();
206 int num = list.objects.IndexOf(ELayer.pc);
207 if (num != -1)
208 {
209 list.dsv.scrollByItemIndex(num);
210 list.Refresh();
211 }
212 this.RebuildLayout(recursive: true);
213 static int GetSortVal(Chara c)
214 {
215 return c.trait.GetAdvRank() * 10000 + Mathf.Clamp(c.LV, 0, 1000) + ((c.trait is TraitAdventurerBacker) ? 1000 : 0);
216 }
217 }
int GetInt(int id, int? defaultInt=null)
Definition: BaseCard.cs:25
Transform transDefeated
Definition: ButtonChara.cs:31
UIText textAlias
Definition: ButtonChara.cs:19
GlobalCharaList globalCharas
Definition: CardManager.cs:46
int LV
Definition: Card.cs:372
new TraitChara trait
Definition: Chara.cs:501
override bool IsPCFaction
Definition: Chara.cs:669
CardManager cards
Definition: Game.cs:155
UIDynamicList listRanking
Gradient gradientRank
string GetAdvRankText()
Definition: TraitChara.cs:173
virtual bool ShowAdvRank
Definition: TraitChara.cs:95
int GetAdvRank()
Definition: TraitChara.cs:158
Image image2
Definition: UIItem.cs:16
void Sort()
Definition: UIList.cs:697
override void List()
Definition: UIList.cs:717

References UIList.Add(), Game.cards, UIList.Clear(), ELayer.game, TraitChara.GetAdvRank(), TraitChara.GetAdvRankText(), BaseCard.GetInt(), CardManager.globalCharas, gradientRank, UIItem.image2, Chara.IsPCFaction, ButtonChara.item, list, UIList.List(), listRanking, Card.LV, ELayer.pc, UIList.Refresh(), ButtonChara.SetChara(), UIText.SetText(), TraitChara.ShowAdvRank, UIList.Sort(), ButtonChara.textAlias, Chara.trait, and ButtonChara.transDefeated.

Referenced by OnSwitchContent().

Member Data Documentation

◆ buttonTalk

UIButton LayerQuestBoard.buttonTalk

Definition at line 27 of file LayerQuestBoard.cs.

◆ gradientRank

Gradient LayerQuestBoard.gradientRank

Definition at line 31 of file LayerQuestBoard.cs.

Referenced by RefreshRanking().

◆ list

UIList LayerQuestBoard.list

Definition at line 5 of file LayerQuestBoard.cs.

Referenced by RefreshHire(), RefreshQuest(), and RefreshRanking().

◆ listHire

UIList LayerQuestBoard.listHire

Definition at line 7 of file LayerQuestBoard.cs.

Referenced by RefreshHire().

◆ listRanking

UIDynamicList LayerQuestBoard.listRanking

Definition at line 9 of file LayerQuestBoard.cs.

Referenced by RefreshRanking().

◆ portrait

Portrait LayerQuestBoard.portrait

Definition at line 25 of file LayerQuestBoard.cs.

◆ textClient

UIText LayerQuestBoard.textClient

Definition at line 11 of file LayerQuestBoard.cs.

◆ textDetail

UIText LayerQuestBoard.textDetail

Definition at line 15 of file LayerQuestBoard.cs.

◆ textHours

UIText LayerQuestBoard.textHours

Definition at line 17 of file LayerQuestBoard.cs.

◆ textNote

UIText LayerQuestBoard.textNote

Definition at line 19 of file LayerQuestBoard.cs.

◆ textQuestLimit

UIText LayerQuestBoard.textQuestLimit

Definition at line 23 of file LayerQuestBoard.cs.

Referenced by RefreshQuest().

◆ textReward

UIText LayerQuestBoard.textReward

Definition at line 21 of file LayerQuestBoard.cs.

◆ textTitle

UIText LayerQuestBoard.textTitle

Definition at line 13 of file LayerQuestBoard.cs.

◆ uiCurrency

UICurrency LayerQuestBoard.uiCurrency

Definition at line 29 of file LayerQuestBoard.cs.


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