Elin Decompiled Documentation EA 23.102 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:464

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

◆ OnKill()

override void LayerQuestBoard.OnKill ( )
inlinevirtual

Reimplemented from Layer.

Definition at line 215 of file LayerQuestBoard.cs.

216 {
217 if (ELayer.Branch != null)
218 {
220 }
221 }
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 break;
52 case 2:
54 break;
55 }
56 WindowMenu menuRight = windows[0].menuRight;
57 menuRight.Clear();
58 if (window.idTab != 0)
59 {
60 return;
61 }
62 UIButton button = null;
63 button = menuRight.AddButton("rerollQuest".lang(GetCost().ToString() ?? ""), delegate
64 {
65 if (ELayer._zone.influence < GetCost())
66 {
67 SE.Beep();
68 Msg.Say("notEnoughInfluence");
69 }
70 else
71 {
72 SE.Dice();
73 ELayer._zone.UpdateQuests(force: true);
75 ELayer._zone.influence -= GetCost();
77 {
79 }
80 button.mainText.SetText("rerollQuest".lang(GetCost().ToString() ?? ""));
81 }
82 });
83 static int GetCost()
84 {
85 return 1;
86 }
87 }
static Player player
Definition: ELayer.cs:13
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:769
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:3320

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

◆ RefreshHire()

void LayerQuestBoard.RefreshHire ( )
inline

Definition at line 123 of file LayerQuestBoard.cs.

124 {
126 list.Clear();
127 list.callbacks = new UIList.Callback<HireInfo, ButtonChara>
128 {
129 onClick = delegate(HireInfo a, ButtonChara b)
130 {
131 a.isNew = false;
132 GameLang.refDrama1 = "(" + "money2".lang() + ": " + CalcGold.Hire(a.chara) + ")";
133 GameLang.refDrama2 = ELayer.pc.things.Find("ticket_resident")?.Name ?? "";
134 a.chara.ShowDialog("_chara", "4-1").onKill.AddListener(RefreshHire);
135 },
136 onInstantiate = delegate(HireInfo a, ButtonChara b)
137 {
138 Chara chara = a.chara;
139 b.SetChara(chara, ButtonChara.Mode.Hire);
140 int cost = CalcGold.Hire(chara);
141 b.item.text1.text = cost.ToString().TagColorGoodBad(() => ELayer.pc.GetCurrency("money2") >= cost || ELayer.pc.things.Find("ticket_resident") != null);
142 b.item.text2.text = ((a.Days == -1) ? "-" : (a.Days.ToString() ?? ""));
143 HintIcon[] componentsInChildren = b.layoutTag.GetComponentsInChildren<HintIcon>();
144 for (int i = 0; i < componentsInChildren.Length; i++)
145 {
146 componentsInChildren[i].onPointerDown = delegate
147 {
148 list.callbacks.OnClick(a, b);
149 };
150 }
151 b.textHobby.text = chara.GetTextHobby();
152 b.textWork.text = chara.GetTextWork();
153 b.textLifeStyle.text = "lifestyle".lang() + ": " + ("lifestyle_" + chara.idTimeTable).lang();
154 b.item.image1.SetActive(a.isNew);
155 },
156 onRefresh = null
157 };
159 {
160 if (!item.chara.IsHomeMember() && (item.chara.currentZone == null || !item.chara.currentZone.IsPlayerFaction))
161 {
162 list.Add(item);
163 }
164 }
165 list.Refresh();
166 this.RebuildLayout(recursive: true);
167 }
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:2013
int GetCurrency(string id="money")
Definition: Card.cs:3652
ThingContainer things
Definition: Card.cs:34
Definition: Chara.cs:10
void ShowDialog()
Definition: Chara.cs:6368
string idTimeTable
Definition: Chara.cs:453
string GetTextWork(bool simple=false)
Definition: Chara.cs:8235
string GetTextHobby(bool simple=false)
Definition: Chara.cs:8225
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 89 of file LayerQuestBoard.cs.

90 {
91 list.Clear();
92 list.callbacks = new UIList.Callback<Quest, ItemQuest>
93 {
94 onInstantiate = delegate(Quest a, ItemQuest b)
95 {
96 b.SetQuest(a);
97 b.button.SetOnClick(delegate
98 {
99 Close();
100 a.OnClickQuest();
101 });
102 }
103 };
105 foreach (Quest global in ELayer.game.quests.globalList)
106 {
107 if (global.IsVisibleOnQuestBoard())
108 {
109 list.Add(global);
110 }
111 }
112 foreach (Chara chara in ELayer._map.charas)
113 {
114 if (chara.quest != null && !ELayer.game.quests.list.Contains(chara.quest) && !chara.IsPCParty && chara.memberType == FactionMemberType.Default && chara.quest.IsVisibleOnQuestBoard())
115 {
116 list.Add(chara.quest);
117 }
118 }
119 list.Refresh();
120 textQuestLimit.SetText("questLimit".lang(ELayer.game.quests.CountRandomQuest().ToString() ?? "", 5.ToString() ?? ""));
121 }
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 169 of file LayerQuestBoard.cs.

170 {
172 list.Clear();
173 list.callbacks = new UIList.Callback<Chara, ButtonChara>
174 {
175 onClick = delegate
176 {
177 },
178 onRedraw = delegate(Chara a, ButtonChara b, int i)
179 {
180 b.SetChara(a, ButtonChara.Mode.Ranking);
181 int advRank = a.trait.GetAdvRank();
183 b.textAlias.color = gradientRank.Evaluate(0.1f * (float)advRank);
184 b.item.image2.SetActive(a.IsPCFaction);
185 bool enable = a.GetInt(111) > 0;
186 b.transDefeated.SetActive(enable);
187 },
188 onList = delegate
189 {
190 foreach (Chara value in ELayer.game.cards.globalCharas.Values)
191 {
192 if (value.trait.ShowAdvRank)
193 {
194 list.Add(value);
195 }
196 }
197 list.objects.Sort((object a, object b) => GetSortVal(b as Chara) - GetSortVal(a as Chara));
198 },
199 onRefresh = null
200 };
201 list.List();
202 int num = list.objects.IndexOf(ELayer.pc);
203 if (num != -1)
204 {
205 list.dsv.scrollByItemIndex(num);
206 list.Refresh();
207 }
208 this.RebuildLayout(recursive: true);
209 static int GetSortVal(Chara c)
210 {
211 return c.trait.GetAdvRank() * 10000 + Mathf.Clamp(c.LV, 0, 1000) + ((c.trait is TraitAdventurerBacker) ? 1000 : 0);
212 }
213 }
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:370
new TraitChara trait
Definition: Chara.cs:488
override bool IsPCFaction
Definition: Chara.cs:656
CardManager cards
Definition: Game.cs:155
UIDynamicList listRanking
Gradient gradientRank
string GetAdvRankText()
Definition: TraitChara.cs:174
virtual bool ShowAdvRank
Definition: TraitChara.cs:95
int GetAdvRank()
Definition: TraitChara.cs:160
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: