Elin Decompiled Documentation EA 23.287 Stable Patch 3
Loading...
Searching...
No Matches
WindowChara Class Reference
Inheritance diagram for WindowChara:
WindowController

Public Member Functions

void SetChara (Chara c)
 
override void OnSwitchContent (Window window)
 
void SetPortraitBG (int a)
 
void SetPortraitFrame (int a)
 
void ToggleFeatMode ()
 
void RefreshFeatMode ()
 
void Refresh ()
 
void RefreshStatic ()
 
void RefreshStatus ()
 
void AddNeeds (Stats st)
 
void AddStatus (BaseStats st)
 
void RefreshProfile ()
 
void RefreshEquipment (UIList list, bool sort=true)
 
void RefreshInfo ()
 
void OnClickPortrait ()
 
void RefreshSkill (int idTab)
 
virtual void OnSwitchContent (Window window)
 

Static Public Member Functions

static void RefreshNote (Chara chara, UINote n, bool shortMode=false)
 

Public Attributes

Chara chara
 
Portrait portrait
 
UIText textMood
 
UIText textHealth
 
UIText textName
 
UIText textAlias
 
UIText textTitle
 
UIText textBio
 
UIText textBio2
 
UIText textBio3
 
UIText textBirthday
 
UIText textFaction
 
UIText textFaith
 
UIText textHome
 
UIText textMom
 
UIText textDad
 
UIText textBirthplace
 
UIText textLike
 
UIText textHobby
 
UIText textKarma
 
UIText textSAN
 
UIText textFame
 
UIText textMoney
 
UIText textTax
 
UIText textTerritory
 
UIText textIncome
 
UIText textAssets
 
UIText textDeposit
 
UIText textDeepest
 
UIText textCurrentZone
 
UIText textHomeZone
 
UIList listAttaribute
 
UIList listEquipment
 
UIList listEquipment2
 
UINote note
 
PUIExampleRPGStats graph
 
UIText textStability
 
UIText textLaw
 
UIText textAffection
 
UIText textDominance
 
UIText textExtroversion
 
UIText textFavArmor
 
UIText textDV
 
UIText textStyle
 
LayoutGroup layoutNeeds
 
LayoutGroup layoutStatus
 
GridLayoutGroup gridEquip
 
UIScrollView scrollSkill
 
ButtonElement buttonMana
 
ButtonElement buttonLife
 
ButtonElement buttonVigor
 
ButtonElement buttonSpeed
 
UIItem moldStats
 
UIItem moldNeeds
 
UIHeader moldHeader
 
UIHeader moldHeader2
 
UIHeader headerEquip
 
UIList moldListSkill
 
UIList moldListResist
 
UIList moldListFeat
 
UIList moldListFeatPurchase
 
Transform contentList
 
RectTransform rectEquip
 
UIButton buttonFeatMode
 
UIButton buttonFeatOption
 
Image imageView
 
Sprite mask
 
Sprite maskResist
 
Material matItem
 
Color colorUnequipped
 
Vector2 equipPos
 
bool featMode
 
float barColor1
 
float barColor2
 
- Public Attributes inherited from WindowController
Window window
 

Static Public Attributes

static WindowChara Instance
 

Properties

Biography bio [get]
 

Private Member Functions

void Update ()
 
void OnApplicationFocus (bool focus)
 

Private Attributes

UIHeader _header
 

Detailed Description

Definition at line 8 of file WindowChara.cs.

Member Function Documentation

◆ AddNeeds()

void WindowChara.AddNeeds ( Stats  st)
inline

Definition at line 315 of file WindowChara.cs.

316 {
318 uIItem.text1.SetText(st.source.GetName());
319 if (st.GetText().IsEmpty())
320 {
321 uIItem.text2.SetActive(enable: false);
322 }
323 else
324 {
325 st.SetText(uIItem.text2);
326 }
327 UIBar componentInChildren = uIItem.GetComponentInChildren<UIBar>();
328 componentInChildren.Refresh(st.value, st.max);
329 componentInChildren.image.color = st.GetColor().Multiply(barColor1, barColor2);
330 }
virtual void SetText(UIText t, SkinColorProfile cols=null)
Definition: BaseStats.cs:67
SourceStat.Row source
Definition: BaseStats.cs:15
override string GetText()
Definition: Stats.cs:94
override Color GetColor(Gradient g)
Definition: Stats.cs:104
virtual int value
Definition: Stats.cs:56
virtual int max
Definition: Stats.cs:68
Definition: UIBar.cs:5
void Refresh(float current, float max)
Definition: UIBar.cs:12
Definition: UIItem.cs:5
UIText text2
Definition: UIItem.cs:8
UIText text1
Definition: UIItem.cs:6
void SetText(string s)
Definition: UIText.cs:163
Definition: Util.cs:10
static Transform Instantiate(string path, Component parent=null)
Definition: Util.cs:67
UIItem moldNeeds
Definition: WindowChara.cs:118
float barColor1
Definition: WindowChara.cs:156
LayoutGroup layoutNeeds
Definition: WindowChara.cs:100
float barColor2
Definition: WindowChara.cs:158

References barColor1, barColor2, Stats.GetColor(), Stats.GetText(), layoutNeeds, Stats.max, moldNeeds, UIBar.Refresh(), UIText.SetText(), BaseStats.SetText(), BaseStats.source, UIItem.text1, UIItem.text2, Util, and Stats.value.

◆ AddStatus()

void WindowChara.AddStatus ( BaseStats  st)
inline

Definition at line 332 of file WindowChara.cs.

333 {
334 string text = st?.GetText() ?? "noItem".lang();
335 if (text.IsEmpty())
336 {
337 return;
338 }
340 if (st == null)
341 {
342 uIItem.text1.SetText(text, FontColor.Passive);
343 uIItem.button1.interactable = false;
344 }
345 else if (text.IsEmpty())
346 {
347 uIItem.text1.SetText(st.source.GetName());
348 }
349 else
350 {
351 st.SetText(uIItem.text1);
352 uIItem.image1.sprite = st.GetSprite();
353 uIItem.image1.SetNativeSize();
354 }
355 if (st != null)
356 {
357 uIItem.button1.SetTooltip(delegate(UITooltip t)
358 {
359 st.WriteNote(t.note);
360 });
361 }
362 }
FontColor
Definition: FontColor.cs:2
virtual Sprite GetSprite()
Definition: BaseStats.cs:62
virtual void WriteNote(UINote n, Action< UINote > onWriteNote=null)
Definition: BaseStats.cs:98
virtual string GetText()
Definition: BaseStats.cs:42
void SetTooltip(Action< UITooltip > onShowTooltip=null, bool enable=true)
Definition: UIButton.cs:361
UIButton button1
Definition: UIItem.cs:18
Image image1
Definition: UIItem.cs:14
UINote note
Definition: UITooltip.cs:21
LayoutGroup layoutStatus
Definition: WindowChara.cs:102
UIItem moldStats
Definition: WindowChara.cs:116

References UIItem.button1, BaseStats.GetSprite(), BaseStats.GetText(), UIItem.image1, layoutStatus, moldStats, UITooltip.note, UIText.SetText(), BaseStats.SetText(), UIButton.SetTooltip(), BaseStats.source, UIItem.text1, Util, and BaseStats.WriteNote().

Referenced by RefreshStatus().

◆ OnApplicationFocus()

void WindowChara.OnApplicationFocus ( bool  focus)
inlineprivate

Definition at line 886 of file WindowChara.cs.

887 {
888 if (focus && window.idTab == 5)
889 {
891 }
892 }
Chara chara
Definition: WindowChara.cs:12
static void RefreshNote(Chara chara, UINote n, bool shortMode=false)
Definition: WindowChara.cs:894
UINote note
Definition: WindowChara.cs:80
int idTab
Definition: Window.cs:694

◆ OnClickPortrait()

void WindowChara.OnClickPortrait ( )
inline

Definition at line 490 of file WindowChara.cs.

491 {
492 if (chara.IsPC)
493 {
494 EClass.ui.AddLayer<LayerEditPCC>().Activate(chara, UIPCC.Mode.Body, null, delegate
495 {
497 });
498 }
499 else
500 {
501 SE.Beep();
502 }
503 }
override bool IsPC
Definition: Chara.cs:626
Definition: EClass.cs:6
static UI ui
Definition: EClass.cs:17
void SetChara(Chara c, PCCData pccData=null)
Definition: Portrait.cs:143
Portrait portrait
Definition: WindowChara.cs:14

References chara, Chara.IsPC, portrait, Portrait.SetChara(), and EClass.ui.

◆ OnSwitchContent()

override void WindowChara.OnSwitchContent ( Window  window)
inlinevirtual

Reimplemented from WindowController.

Definition at line 185 of file WindowChara.cs.

186 {
187 if (chara != null)
188 {
190 int idTab = window.idTab;
191 if (idTab == 0)
192 {
193 RefreshInfo();
195 }
196 else
197 {
198 RefreshSkill(idTab);
199 }
200 bool flag = idTab == 3 || idTab == 4;
201 scrollSkill.horizontal = flag;
202 scrollSkill.content.anchoredPosition = new Vector2(0f, 0f);
203 imageView.sprite = (flag ? maskResist : mask);
204 if (flag)
205 {
207 }
208 listEquipment2.transform.parent.SetActive(flag);
209 buttonFeatMode.SetActive(idTab == 2 && chara.IsPC);
210 buttonFeatOption.SetActive(idTab == 2 && chara.IsPC && featMode);
211 }
212 }
UIList parent
Definition: UIList.cs:293
Sprite maskResist
Definition: WindowChara.cs:146
void RefreshProfile()
Definition: WindowChara.cs:364
Sprite mask
Definition: WindowChara.cs:144
UIButton buttonFeatOption
Definition: WindowChara.cs:140
UIList listEquipment2
Definition: WindowChara.cs:78
void RefreshStatic()
Definition: WindowChara.cs:263
void RefreshEquipment(UIList list, bool sort=true)
Definition: WindowChara.cs:397
void RefreshSkill(int idTab)
Definition: WindowChara.cs:505
void RefreshInfo()
Definition: WindowChara.cs:478
UIButton buttonFeatMode
Definition: WindowChara.cs:138

References buttonFeatMode, buttonFeatOption, chara, featMode, Window.idTab, Chara.IsPC, listEquipment2, mask, maskResist, UIList.parent, RefreshEquipment(), RefreshInfo(), RefreshProfile(), RefreshSkill(), RefreshStatic(), and WindowController.window.

Referenced by Refresh(), and SetChara().

◆ Refresh()

void WindowChara.Refresh ( )
inline

Definition at line 258 of file WindowChara.cs.

259 {
261 }
override void OnSwitchContent(Window window)
Definition: WindowChara.cs:185

References OnSwitchContent(), and WindowController.window.

Referenced by LayerChara.Refresh().

◆ RefreshEquipment()

void WindowChara.RefreshEquipment ( UIList  list,
bool  sort = true 
)
inline

Definition at line 397 of file WindowChara.cs.

398 {
399 string text = chara.GetFavWeaponSkill()?.Name ?? Element.Get(100).GetText();
400 text = text + "/" + (chara.GetFavArmorSkill()?.Name ?? Element.Get(120).GetText());
401 textFavArmor.SetText(text);
402 list.Clear();
403 list.callbacks = new UIList.Callback<BodySlot, UIItem>
404 {
405 onClick = delegate
406 {
407 },
408 onInstantiate = delegate(BodySlot a, UIItem b)
409 {
410 if (a.elementId == 0)
411 {
412 b.button1.interactable = false;
413 }
414 else
415 {
416 Thing thing = (Thing)(b.refObj = a.thing);
417 if (thing != null)
418 {
419 b.button1.icon.material = matItem;
420 thing.SetImage(b.button1.icon);
421 }
422 else
423 {
424 b.button1.icon.material = null;
425 b.button1.icon.sprite = SpriteSheet.Get("Media/Graphics/Icon/Element/", "eq_" + a.element.alias);
426 b.button1.icon.color = colorUnequipped;
427 b.button1.icon.SetNativeSize();
428 }
429 b.button1.SetTooltip(delegate(UITooltip tt)
430 {
431 if (a.thing != null)
432 {
433 a.thing.WriteNote(tt.note);
434 }
435 else
436 {
437 tt.note.Clear();
438 tt.note.AddHeader(a.name);
439 tt.note.AddText("noEQ".lang());
440 if (a.elementId == 35)
441 {
443 }
444 }
445 tt.note.Build();
446 });
447 }
448 },
449 onSort = (BodySlot a, UIList.SortMode m) => (a.element.id != 0) ? chara.body.GetSortVal(a) : (-99999)
450 };
451 foreach (BodySlot slot in chara.body.slots)
452 {
453 if (slot.elementId != 44)
454 {
455 list.Add(slot);
456 }
457 }
458 if (list.items.Count < 12)
459 {
460 int num = 12 - list.items.Count;
461 for (int i = 0; i < num; i++)
462 {
463 list.Add(new BodySlot());
464 }
465 }
466 if (list.items.Count > 18)
467 {
468 gridEquip.cellSize = new Vector2(52f, 44f);
469 gridEquip.spacing = new Vector2(-6f, -12f);
470 }
471 if (sort)
472 {
473 list.Sort();
474 }
475 list.Refresh();
476 }
string name
Definition: BodySlot.cs:14
int elementId
Definition: BodySlot.cs:6
Thing thing
Definition: BodySlot.cs:8
SourceElement.Row element
Definition: BodySlot.cs:16
void SetImage(Image image, int dir, int idSkin=0)
Definition: Card.cs:6316
List< BodySlot > slots
Definition: CharaBody.cs:8
int GetSortVal(BodySlot slot)
Definition: CharaBody.cs:522
CharaBody body
Definition: Chara.cs:94
Element GetFavWeaponSkill()
Definition: Chara.cs:4745
Element GetFavArmorSkill()
Definition: Chara.cs:4750
static SourceElement.Row Get(int id)
Definition: ELEMENT.cs:406
virtual string Name
Definition: ELEMENT.cs:309
static Sprite Get(string id)
Definition: SpriteSheet.cs:28
Definition: Thing.cs:8
override void WriteNote(UINote n, Action< UINote > onWriteNote=null, IInspect.NoteMode mode=IInspect.NoteMode.Default, Recipe recipe=null)
Definition: Thing.cs:882
static void AddAttackEvaluation(UINote n, Chara chara, Thing current=null)
Definition: Thing.cs:1478
Image icon
Definition: UIButton.cs:110
object refObj
Definition: UIItem.cs:30
Definition: UIList.cs:9
List< object > items
Definition: UIList.cs:273
override void Clear()
Definition: UIList.cs:401
SortMode
Definition: UIList.cs:27
override void Add(object item)
Definition: UIList.cs:354
virtual void Refresh(bool highlightLast=false)
Definition: UIList.cs:476
void Sort()
Definition: UIList.cs:749
void Clear()
Definition: UINote.cs:35
UIItem AddHeader(string text, Sprite sprite=null)
Definition: UINote.cs:79
UIItem AddText(string text, FontColor color=FontColor.DontChange)
Definition: UINote.cs:113
void Build()
Definition: UINote.cs:49
UIText textFavArmor
Definition: WindowChara.cs:94
Color colorUnequipped
Definition: WindowChara.cs:150
Material matItem
Definition: WindowChara.cs:148

References Thing.AddAttackEvaluation(), UINote.AddHeader(), UINote.AddText(), Chara.body, UINote.Build(), UIItem.button1, chara, UIList.Clear(), UINote.Clear(), colorUnequipped, BodySlot.element, BodySlot.elementId, Element.Get(), SpriteSheet.Get(), Chara.GetFavArmorSkill(), Chara.GetFavWeaponSkill(), CharaBody.GetSortVal(), UIButton.icon, matItem, BodySlot.name, Element.Name, UITooltip.note, UIItem.refObj, Card.SetImage(), UIText.SetText(), UIButton.SetTooltip(), CharaBody.slots, textFavArmor, BodySlot.thing, and Thing.WriteNote().

Referenced by OnSwitchContent(), and RefreshProfile().

◆ RefreshFeatMode()

void WindowChara.RefreshFeatMode ( )
inline

Definition at line 250 of file WindowChara.cs.

251 {
252 buttonFeatMode.mainText.text = "featMode".lang(EClass.pc.feat.ToString() ?? "");
253 ColorBlock colors = buttonFeatMode.colors;
254 colors.normalColor = colors.normalColor.SetAlpha(featMode ? 1 : 0);
255 buttonFeatMode.colors = colors;
256 }
int feat
Definition: Card.cs:375
static Chara pc
Definition: EClass.cs:15

References buttonFeatMode, Card.feat, featMode, and EClass.pc.

◆ RefreshInfo()

void WindowChara.RefreshInfo ( )
inline

Definition at line 478 of file WindowChara.cs.

479 {
480 textBirthday.text = bio.TextBirthDate(chara);
481 textMom.text = chara.bio.nameMom.ToTitleCase();
482 textDad.text = chara.bio.nameDad.ToTitleCase();
483 textBirthplace.text = chara.bio.nameBirthplace.ToTitleCase();
484 textLike.text = EClass.sources.cards.map.TryGetValue(bio.idLike, EClass.sources.cards.map["ash"]).GetName();
485 textHobby.text = EClass.sources.elements.map[bio.idHobby].GetText();
486 textFaction.text = ((chara.faction == null) ? "???" : chara.faction.name.ToTitleCase());
487 textFaith.text = chara.faith.Name.ToTitleCase();
488 }
string nameBirthplace
Definition: Biography.cs:264
string nameDad
Definition: Biography.cs:260
string TextBirthDate(Chara c, bool _age=false)
Definition: Biography.cs:525
string nameMom
Definition: Biography.cs:262
string idLike
Definition: Biography.cs:17
int idHobby
Definition: Biography.cs:173
Biography bio
Definition: Card.cs:45
Faction faction
Definition: Chara.cs:429
Religion faith
Definition: Chara.cs:441
static SourceManager sources
Definition: EClass.cs:43
string name
Definition: FACTION.cs:135
string Name
Definition: Religion.cs:30
Dictionary< string, CardRow > map
Definition: SourceCard.cs:9
SourceCard cards
SourceElement elements
Biography bio
Definition: WindowChara.cs:162

References Card.bio, bio, SourceManager.cards, chara, SourceManager.elements, Chara.faction, Chara.faith, Biography.idHobby, Biography.idLike, SourceCard.map, Faction.name, Religion.Name, Biography.nameBirthplace, Biography.nameDad, Biography.nameMom, EClass.sources, and Biography.TextBirthDate().

Referenced by OnSwitchContent().

◆ RefreshNote()

static void WindowChara.RefreshNote ( Chara  chara,
UINote  n,
bool  shortMode = false 
)
inlinestatic

Definition at line 894 of file WindowChara.cs.

895 {
896 n.Clear();
897 Biography biography = chara.bio;
898 if (shortMode)
899 {
900 n.AddText(biography.TextBio(chara) + " " + biography.TextBio2(chara));
901 n.Space();
902 }
903 else
904 {
905 UIItem uIItem = n.AddItem("ItemBackground");
906 if (chara.IsPC)
907 {
909 uIItem.button1.SetOnClick(delegate
910 {
912 });
913 }
914 else
915 {
916 uIItem.text1.SetText("???");
917 uIItem.button1.SetActive(enable: false);
918 }
919 n.Space(16);
920 n.AddTopic("TopicDomain", "profile".lang(), biography.TextBio(chara) + " " + biography.TextBio2(chara));
921 }
922 string text = "";
923 ElementContainer elementContainer = (chara.IsPC ? EClass.player.GetDomains() : new ElementContainer().ImportElementMap(chara.job.domain));
924 foreach (Element value in elementContainer.dict.Values)
925 {
926 text = text + ((value == elementContainer.dict.Values.First()) ? "" : ", ") + value.Name;
927 }
928 n.AddTopic("TopicDomain", "domain".lang(), text).button1.SetActive(enable: false);
929 string text2 = chara.GetFavCat().GetName();
930 string @ref = chara.GetFavFood().GetName();
931 Add("favgift".lang(text2.ToLower().ToTitleCase(), @ref));
934 if (chara.IsPC)
935 {
936 n.AddTopic("TopicDomain", "totalFeat".lang(), EClass.player.totalFeat.ToString() ?? "");
937 }
938 text = chara.GetFavWeaponSkill()?.Name ?? Element.Get(100).GetText();
939 text = text + " / " + ("style" + chara.GetFavAttackStyle()).lang();
940 n.AddTopic("TopicDomain", "attackStyle".lang(), text);
941 n.AddTopic("TopicDomain", "armorStyle".lang(), chara.GetFavArmorSkill()?.Name ?? Element.Get(120).GetText());
942 bool textAdded = false;
943 if (chara.IsPC && EClass.pc.c_daysWithGod > 0)
944 {
945 AddText("info_daysWithGod".lang(EClass.pc.c_daysWithGod.ToString() ?? "", EClass.pc.faith.Name));
946 }
947 if (chara.ride != null)
948 {
949 AddText("info_ride".lang(chara.ride.NameBraced));
950 }
951 if (chara.parasite != null)
952 {
953 AddText("info_parasite".lang(chara.parasite.NameBraced));
954 }
956 {
957 AddText("info_criminal".lang());
958 }
959 if (!chara.IsPC)
960 {
961 int num = chara.GetAffinityExpBonus() - 100;
962 if (num != 0)
963 {
964 AddText("affinity_exp_bonus".lang(chara.affinity.Name, ((num > 0) ? "+" : "") + num));
965 }
966 if (chara.c_daysWithPC > 0)
967 {
968 num = chara.GetDaysTogetherBonus() - 100;
969 AddText("info_daysWithPC".lang(chara.c_daysWithPC.ToString() ?? "") + Environment.NewLine + "daystogether_bonus".lang(((num > 0) ? "+" : "") + num));
970 }
971 }
972 if (chara.IsPC)
973 {
974 List<Chara> list = new List<Chara>();
975 foreach (Chara value2 in EClass.game.cards.globalCharas.Values)
976 {
977 if (value2.IsMarried)
978 {
979 list.Add(value2);
980 }
981 }
982 if (list.Count > 0)
983 {
984 if (textAdded)
985 {
986 n.Space(12);
987 }
988 n.AddTopic("TopicDomain", "history_marriage".lang(), "");
989 foreach (Chara item in list)
990 {
991 Date date = Date.ToDate(item.c_love.dateMarriage);
992 AddText("item_marriage".lang(item.NameBraced, date.year.ToString() ?? "", date.month.ToString() ?? "", item.c_love.nameZoneMarriage, date.day.ToString() ?? "") + (item.c_love.IsWed ? "already_wed".lang() : ""));
993 }
994 }
995 }
997 {
998 n.AddText("LV:" + chara.LV + " exp:" + chara.exp + " next:" + chara.ExpToNext);
999 n.AddText("Luck:" + chara.Evalue(78));
1000 }
1001 n.Build();
1002 void Add(string s)
1003 {
1004 string[] array = s.Split(':');
1005 n.AddTopic("TopicDomain", array[0], (array.Length >= 2) ? array[1].TrimStart(' ') : "").button1.SetActive(enable: false);
1006 }
1007 void AddText(string s)
1008 {
1009 n.AddText(" ・ " + s);
1010 textAdded = true;
1011 }
1012 }
list. Add(item3)
string Name
Definition: Affinity.cs:34
string TextBio(Chara c)
Definition: Biography.cs:510
string TextBio2(Chara c)
Definition: Biography.cs:515
GlobalCharaList globalCharas
Definition: CardManager.cs:46
int ExpToNext
Definition: Card.cs:2046
int GetAffinityExpBonus()
Definition: Card.cs:3055
int c_daysWithGod
Definition: Card.cs:1499
int exp
Definition: Card.cs:399
int c_daysWithPC
Definition: Card.cs:1511
int GetDaysTogetherBonus()
Definition: Card.cs:3060
int Evalue(int ele)
Definition: Card.cs:2611
int LV
Definition: Card.cs:387
Definition: Chara.cs:10
SourceCategory.Row GetFavCat()
Definition: Chara.cs:8233
SourceJob.Row job
Definition: Chara.cs:468
string NameBraced
Definition: Chara.cs:516
SourceThing.Row GetFavFood()
Definition: Chara.cs:8213
Chara parasite
Definition: Chara.cs:30
Chara ride
Definition: Chara.cs:27
Affinity affinity
Definition: Chara.cs:316
bool IsMarried
Definition: Chara.cs:611
string GetTextWork(bool simple=false)
Definition: Chara.cs:9271
string GetTextHobby(bool simple=false)
Definition: Chara.cs:9261
AttackStyle GetFavAttackStyle()
Definition: Chara.cs:4725
bool showExtra
Definition: CoreDebug.cs:168
Definition: Date.cs:4
int month
Definition: Date.cs:50
static Date ToDate(int raw)
Definition: Date.cs:399
int day
Definition: Date.cs:62
int year
Definition: Date.cs:38
static Game game
Definition: EClass.cs:9
static Player player
Definition: EClass.cs:13
static CoreDebug debug
Definition: EClass.cs:49
Dictionary< int, Element > dict
void ImportElementMap(Dictionary< int, int > map)
CardManager cards
Definition: Game.cs:156
bool IsCriminal
Definition: Player.cs:1397
ElementContainer GetDomains()
Definition: Player.cs:1591
int totalFeat
Definition: Player.cs:960
string GetBackgroundText()
Definition: Player.cs:1682
void EditBackgroundText()
Definition: Player.cs:1703
UIItem AddItem(string id)
Definition: UINote.cs:139
UIItem AddTopic(string id, string text, string value=null)
Definition: UINote.cs:144
void Space(int sizeY=0, int sizeX=1)
Definition: UINote.cs:62

References Add(), UINote.AddItem(), UINote.AddText(), UINote.AddTopic(), Chara.affinity, Card.bio, UIItem.button1, Card.c_daysWithGod, Card.c_daysWithPC, Game.cards, UINote.Clear(), Date.day, EClass.debug, Player.EditBackgroundText(), Card.Evalue(), Card.exp, Card.ExpToNext, Chara.faith, EClass.game, Element.Get(), Card.GetAffinityExpBonus(), Player.GetBackgroundText(), Card.GetDaysTogetherBonus(), Player.GetDomains(), Chara.GetFavArmorSkill(), Chara.GetFavAttackStyle(), Chara.GetFavCat(), Chara.GetFavFood(), Chara.GetFavWeaponSkill(), Chara.GetTextHobby(), Chara.GetTextWork(), CardManager.globalCharas, ElementContainer.ImportElementMap(), Player.IsCriminal, Chara.IsMarried, Chara.IsPC, item, Chara.job, Card.LV, Date.month, Affinity.Name, Element.Name, Religion.Name, Chara.NameBraced, Chara.parasite, EClass.pc, EClass.player, Chara.ride, UIText.SetText(), CoreDebug.showExtra, UINote.Space(), UIItem.text1, Biography.TextBio(), Biography.TextBio2(), Date.ToDate(), Player.totalFeat, and Date.year.

◆ RefreshProfile()

void WindowChara.RefreshProfile ( )
inline

Definition at line 364 of file WindowChara.cs.

365 {
367 textName.text = chara.NameSimple;
368 textAlias.text = chara.Aka;
369 textTitle.text = (chara.IsPC ? EClass.player.title : "-");
370 textCurrentZone.text = ((chara.currentZone == null) ? "???" : chara.currentZone.Name);
371 textHomeZone.text = ((chara.homeZone == null) ? "???" : chara.homeZone.Name);
372 textBio.text = chara.job.GetText().ToTitleCase();
373 textBio2.text = bio.TextBio(chara);
374 textBio3.text = bio.TextBio2(chara);
375 textDV.text = "_DV".lang(chara.DV.ToString() ?? "", chara.PV.ToString() ?? "");
376 textStyle.text = "_style".lang(Lang._weight(chara.body.GetWeight(armorOnly: true)) ?? "", chara.elements.GetOrCreateElement(chara.GetArmorSkill()).Name, ("style" + chara.body.GetAttackStyle()).lang());
377 textKarma.text = (chara.IsPC ? (EClass.player.karma.ToString() ?? "") : "???");
378 textSAN.text = chara.SAN.value.ToString() ?? "";
379 textFame.text = (chara.IsPC ? (EClass.player.fame.ToFormat() ?? "") : "???");
380 textMoney.text = Lang._currency(chara.GetCurrency(), showUnit: true);
381 textDeposit.text = Lang._currency(chara.IsPC ? EClass.game.cards.container_deposit.GetCurrency() : chara.c_allowance, showUnit: true);
382 string text = "deepestLv2".lang((chara.IsPCFaction ? EClass.player.stats.deepest : chara.LV).ToString() ?? "");
383 if (chara.IsPCFaction && EClass.player.CountKeyItem("license_void") > 0)
384 {
385 text = text + " " + "deepestLv3".lang(EClass.player.stats.deepestVoid.ToString() ?? "");
386 }
387 textDeepest.text = text;
388 textAssets.text = (chara.IsPC ? "tGameTime".lang(EClass.player.stats.days.ToFormat(), EClass.player.stats.turns.ToFormat()) : "???");
389 textTerritory.text = (chara.IsPC ? (EClass.pc.faction.CountTerritories().ToString() ?? "") : "???");
395 }
void SetElement(Element _e, ElementContainer _owner, Mode _mode=Mode.Skill)
Thing container_deposit
Definition: CardManager.cs:58
ElementContainerCard elements
Definition: Card.cs:42
int GetCurrency(string id="money")
Definition: Card.cs:4057
int c_allowance
Definition: Card.cs:1343
string NameSimple
Definition: Card.cs:2179
AttackStyle GetAttackStyle()
Definition: CharaBody.cs:479
int GetWeight(bool armorOnly=false)
Definition: CharaBody.cs:436
override int GetArmorSkill()
Definition: Chara.cs:8044
override bool IsPCFaction
Definition: Chara.cs:685
override int DV
Definition: Chara.cs:743
Zone currentZone
Definition: Chara.cs:257
string Aka
Definition: Chara.cs:218
Stats SAN
Definition: Chara.cs:1184
override int PV
Definition: Chara.cs:772
Zone homeZone
Definition: Chara.cs:269
Element GetOrCreateElement(Element ele)
int CountTerritories()
Definition: FACTION.cs:229
Definition: Lang.cs:7
static string _weight(int a, int b, bool showUnit=true, int unitSize=0)
Definition: Lang.cs:175
static string _currency(object a, string IDCurrency)
Definition: Lang.cs:165
int deepest
Definition: Player.cs:114
int turns
Definition: Player.cs:84
int deepestVoid
Definition: Player.cs:117
int days
Definition: Player.cs:75
int karma
Definition: Player.cs:933
Stats stats
Definition: Player.cs:1071
int CountKeyItem(string alias)
Definition: Player.cs:2228
int fame
Definition: Player.cs:936
virtual string Name
Definition: Spatial.cs:509
ButtonElement buttonVigor
Definition: WindowChara.cs:112
ButtonElement buttonMana
Definition: WindowChara.cs:108
ButtonElement buttonLife
Definition: WindowChara.cs:110
void RefreshStatus()
Definition: WindowChara.cs:297
UIList listEquipment
Definition: WindowChara.cs:76
ButtonElement buttonSpeed
Definition: WindowChara.cs:114

References Lang._currency(), Lang._weight(), Chara.Aka, bio, Chara.body, buttonLife, buttonMana, buttonSpeed, buttonVigor, Card.c_allowance, Game.cards, chara, CardManager.container_deposit, Player.CountKeyItem(), Faction.CountTerritories(), Chara.currentZone, Player.Stats.days, Player.Stats.deepest, Player.Stats.deepestVoid, Chara.DV, Card.elements, Chara.faction, Player.fame, EClass.game, Chara.GetArmorSkill(), CharaBody.GetAttackStyle(), Card.GetCurrency(), ElementContainer.GetOrCreateElement(), CharaBody.GetWeight(), Chara.homeZone, Chara.IsPC, Chara.IsPCFaction, Chara.job, Player.karma, listEquipment, Card.LV, Spatial.Name, Card.NameSimple, EClass.pc, EClass.player, Chara.PV, RefreshEquipment(), RefreshStatus(), Chara.SAN, ButtonElement.SetElement(), Player.stats, Biography.TextBio(), Biography.TextBio2(), Player.Stats.turns, and Stats.value.

Referenced by OnSwitchContent().

◆ RefreshSkill()

void WindowChara.RefreshSkill ( int  idTab)
inline

Definition at line 505 of file WindowChara.cs.

506 {
507 contentList.DestroyChildren();
508 note.Clear();
509 note.RebuildLayout();
510 UIList list = default(UIList);
511 if (idTab == 1)
512 {
513 List("skillsGeneral", "general");
514 List("skillsCraft", "craft");
515 List("skillsCombat", "combat");
516 List("skillsWeapon", "weapon");
517 }
518 else if (idTab == 2)
519 {
521 if (featMode)
522 {
523 List("availableFeats", "general");
524 List("availableFeats_special", "special");
525 List("availableFeats_skill", "skill");
526 List("availableFeats_attribute", "attribute");
527 return;
528 }
529 if (chara.IsPC && chara.HasElement(1274) && chara.c_genes != null && chara.c_genes.items.Count > 0)
530 {
531 Header("genes".lang() + " " + EClass.pc.CurrentGeneSlot + "/" + EClass.pc.MaxGeneSlot, null);
532 ListFeat();
533 list.callbacks = new UIList.Callback<DNA, ButtonElement>
534 {
535 onClick = delegate
536 {
537 SE.Beep();
538 },
539 onInstantiate = delegate(DNA a, ButtonElement b)
540 {
541 b.mainText.SetText(a.GetText());
542 b.SetTooltip(delegate(UITooltip t)
543 {
544 UINote uINote = t.note;
545 uINote.Clear();
546 uINote.AddHeader(a.GetText());
547 a.WriteNote(uINote);
548 t.note.Build();
549 });
550 b.subText.text = "(" + a.slot + ")";
551 b.subText.SetActive(enable: true);
552 b.imagePotential.SetActive(enable: false);
553 },
554 onList = delegate
555 {
556 foreach (DNA item in chara.c_genes.items)
557 {
558 list.Add(item);
559 }
560 }
561 };
562 list.List();
563 }
564 Header("mutation", null);
565 ListFeat();
566 list.callbacks = new UIList.Callback<Feat, ButtonElement>
567 {
568 onClick = delegate(Feat a, ButtonElement b)
569 {
572 },
573 onInstantiate = delegate(Feat a, ButtonElement b)
574 {
576 },
577 onList = delegate
578 {
579 foreach (Element item2 in chara.elements.ListElements((Element a) => a.source.category == "mutation" && a.Value != 0))
580 {
581 list.Add(item2);
582 }
583 }
584 };
585 list.List();
586 if (list.items.Count == 0)
587 {
588 _header.SetActive(enable: false);
589 list.SetActive(enable: false);
590 }
591 Header("etherDisease", null);
592 ListFeat();
593 list.callbacks = new UIList.Callback<Feat, ButtonElement>
594 {
595 onClick = delegate(Feat a, ButtonElement b)
596 {
599 },
600 onInstantiate = delegate(Feat a, ButtonElement b)
601 {
603 },
604 onList = delegate
605 {
606 foreach (Element item3 in chara.elements.ListElements((Element a) => a.source.category == "ether" && a.Value != 0))
607 {
608 list.Add(item3);
609 }
610 }
611 };
612 list.List();
613 if (list.items.Count == 0)
614 {
615 _header.SetActive(enable: false);
616 list.SetActive(enable: false);
617 }
618 Header("innateFeats", null);
619 ListFeat();
620 list.callbacks = new UIList.Callback<Feat, ButtonElement>
621 {
622 onClick = delegate(Feat a, ButtonElement b)
623 {
626 },
627 onInstantiate = delegate(Feat a, ButtonElement b)
628 {
630 },
631 onList = delegate
632 {
633 foreach (Element item4 in chara.elements.ListElements((Element a) => a.source.category == "feat" && a.HasTag("innate") && a.Value != 0))
634 {
635 list.Add(item4);
636 }
637 }
638 };
639 list.List();
640 Header("feats", null);
641 ListFeat();
642 list.callbacks = new UIList.Callback<Feat, ButtonElement>
643 {
644 onClick = delegate(Feat a, ButtonElement b)
645 {
648 },
649 onInstantiate = delegate(Feat a, ButtonElement b)
650 {
652 },
653 onList = delegate
654 {
655 foreach (Element item5 in chara.elements.ListElements((Element a) => a.source.category == "feat" && !a.HasTag("innate") && a.Value != 0))
656 {
657 list.Add(item5);
658 }
659 },
660 onSort = (Feat a, UIList.SortMode m) => a.GetSortVal(m)
661 };
662 list.ChangeSort(UIList.SortMode.ByID);
663 list.List();
664 }
665 else if (idTab == 3)
666 {
667 Header("resistance", null);
668 headerEquip.SetText("resistance".lang());
669 ListResist();
670 list.callbacks = new UIList.Callback<Element, ButtonElement>
671 {
672 onInstantiate = delegate(Element a, ButtonElement b)
673 {
674 b.SetGrid(a, chara);
675 },
676 onList = delegate
677 {
678 foreach (SourceElement.Row item6 in EClass.sources.elements.rows.Where((SourceElement.Row a) => a.category == "resist" && ((!a.tag.Contains("hidden") && !a.tag.Contains("high")) || chara.Evalue(a.id) != 0)))
679 {
680 list.Add(chara.elements.GetOrCreateElement(item6.id));
681 }
682 }
683 };
684 list.List();
685 }
686 else if (idTab == 4)
687 {
689 List<Element> eles = chara.elements.ListElements(delegate(Element a)
690 {
691 if (a.source.tag.Contains("godAbility") || a.source.categorySub == "god")
692 {
693 return false;
694 }
695 if (a.IsFlag)
696 {
697 if (a.Value == 0)
698 {
699 return false;
700 }
701 }
702 else
703 {
704 if (a.vSource != 0)
705 {
706 if (a.source.IsWeaponEnc)
707 {
708 return true;
709 }
710 int id = a.id;
711 if ((uint)(id - 55) <= 2u || id == 68 || id == 93)
712 {
713 return true;
714 }
715 if (a.source.category == "enchant")
716 {
717 return true;
718 }
719 }
720 if ((a.owner == chara.elements && a.vLink == 0 && !a.IsFactionElement(chara)) || a.source.category == "resist")
721 {
722 return false;
723 }
724 }
725 return true;
726 });
727 eles.Sort((Element a, Element b) => a.SortVal(charaSheet: true) - b.SortVal(charaSheet: true));
728 string[] skillCats = new string[7] { "general", "labor", "mind", "stealth", "combat", "craft", "weapon" };
729 Header("enchant", null);
730 headerEquip.SetText("enchant".lang());
731 ListResist();
732 list.callbacks = new UIList.Callback<Element, ButtonElement>
733 {
734 onInstantiate = delegate(Element a, ButtonElement b)
735 {
736 b.SetGrid(a, chara);
737 },
738 onList = delegate
739 {
740 foreach (Element item7 in eles)
741 {
742 if (!skillCats.Contains(item7.source.categorySub))
743 {
744 list.Add(item7);
745 }
746 }
747 }
748 };
749 list.List();
750 Header("skill", null);
751 ListResist();
752 list.callbacks = new UIList.Callback<Element, ButtonElement>
753 {
754 onInstantiate = delegate(Element a, ButtonElement b)
755 {
756 b.SetGrid(a, chara);
757 },
758 onList = delegate
759 {
760 foreach (Element item8 in eles)
761 {
762 if (skillCats.Contains(item8.source.categorySub))
763 {
764 list.Add(item8);
765 }
766 }
767 }
768 };
769 list.List();
770 }
771 else if (idTab == 5)
772 {
773 Header("note", null);
774 note.transform.SetAsLastSibling();
776 }
777 void Header(string lang, string lang2)
778 {
780 _header.SetText(lang);
781 if (lang2 != null)
782 {
783 Util.Instantiate(moldHeader2, contentList).SetText(lang2);
784 }
785 }
786 void List(string lang, string idSubCat)
787 {
788 List<string> cats = new List<string>();
789 cats.Add(idSubCat);
790 if (idSubCat == "general")
791 {
792 cats.Add("labor");
793 cats.Add("mind");
794 cats.Add("stealth");
795 }
796 Header(lang, null);
797 ListSkill();
798 list.callbacks = new UIList.Callback<Element, ButtonElement>
799 {
800 onClick = delegate(Element a, ButtonElement b)
801 {
804 },
805 onInstantiate = delegate(Element a, ButtonElement b)
806 {
808 },
809 onList = delegate
810 {
811 foreach (Element item9 in chara.elements.ListElements((Element a) => (a.Value != 0 || a.ValueWithoutLink != 0 || a.vSource > 0) && a.source.category == "skill" && cats.Contains(a.source.categorySub)))
812 {
813 list.Add(item9);
814 }
815 },
816 onSort = (Element c, UIList.SortMode m) => EClass.sources.elements.alias[c.source.aliasParent].id * -10000 - c.id
817 };
818 list.List(UIList.SortMode.ByElementParent);
819 }
820 void List(string lang, string idSubCat)
821 {
822 Header(lang, "cost");
823 ListFeatPurchase();
824 UIList _list = list;
825 _list.callbacks = new UIList.Callback<Element, ButtonElement>
826 {
827 onClick = delegate(Element a, ButtonElement b)
828 {
830 {
831 SE.BeepSmall();
832 }
833 else if (EClass.pc.feat < a.CostLearn)
834 {
835 SE.BeepSmall();
836 Msg.Say("notEnoughFeatPoint");
837 }
838 else
839 {
840 Dialog.YesNo("dialogBuyFeat".lang(a.CostLearn.ToString() ?? "", a.FullName), delegate
841 {
842 EClass.pc.feat -= a.CostLearn;
843 EClass.pc.SetFeat(a.id, a.Value, msg: true);
844 RefreshSkill(idTab);
845 RefreshFeatMode();
846 RefreshStatic();
847 this.RebuildLayout(recursive: true);
848 });
849 }
850 },
851 onInstantiate = delegate(Element a, ButtonElement b)
852 {
853 b.SetElement(a, chara.elements, ButtonElement.Mode.FeatPurchase);
854 },
855 onList = delegate
856 {
857 foreach (Element item10 in chara.ListAvailabeFeats(pet: false, EClass.game.config.showAllFeat))
858 {
859 if (item10.source.categorySub == idSubCat)
860 {
861 _list.Add(item10);
862 }
863 }
864 }
865 };
866 _list.List();
867 }
868 void ListFeat()
869 {
871 }
872 void ListFeatPurchase()
873 {
875 }
876 void ListResist()
877 {
879 }
880 void ListSkill()
881 {
883 }
884 }
if(item3.idFile==idFirstFile &&item3.id==idFirstTopic)
Definition: UIBook.cs:627
Image imagePotential
void SetGrid(Element e, Chara c)
CharaGenes c_genes
Definition: Card.cs:1883
bool HasElement(int ele, bool includeNagative=false)
Definition: Card.cs:6122
List< DNA > items
Definition: CharaGenes.cs:7
int MaxGeneSlot
Definition: Chara.cs:1082
int CurrentGeneSlot
Definition: Chara.cs:1097
List< Element > ListAvailabeFeats(bool pet=false, bool showAll=false)
Definition: Chara.cs:10075
bool enable
Definition: CoreDebug.cs:286
Definition: DNA.cs:8
void WriteNote(UINote n, Chara tg=null)
Definition: DNA.cs:575
string GetText()
Definition: DNA.cs:565
Definition: Dialog.cs:7
static Dialog YesNo(string langDetail, Action actionYes, Action actionNo=null, string langYes="yes", string langNo="no")
Definition: Dialog.cs:252
List< Element > ListElements(Func< Element, bool > shoudList=null, Comparison< Element > comparison=null)
bool IsFactionElement(Chara c)
Definition: ELEMENT.cs:498
int ValueWithoutLink
Definition: ELEMENT.cs:299
int id
Definition: ELEMENT.cs:255
SourceElement.Row source
Definition: ELEMENT.cs:278
virtual bool IsPurchaseFeatReqMet(ElementContainer owner, int lv=-1)
Definition: ELEMENT.cs:1106
ElementContainer owner
Definition: ELEMENT.cs:271
bool HasTag(string tag)
Definition: ELEMENT.cs:478
virtual string FullName
Definition: ELEMENT.cs:311
int GetSortVal(UIList.SortMode m)
Definition: ELEMENT.cs:1022
int Value
Definition: ELEMENT.cs:297
int vLink
Definition: ELEMENT.cs:265
int vSource
Definition: ELEMENT.cs:267
virtual int CostLearn
Definition: ELEMENT.cs:319
bool IsFlag
Definition: ELEMENT.cs:307
int SortVal(bool charaSheet=false)
Definition: ELEMENT.cs:467
Definition: FEAT.cs:316
bool showAllFeat
Definition: Game.cs:58
Config config
Definition: Game.cs:219
Definition: Msg.cs:5
static string Say(string idLang, string ref1, string ref2=null, string ref3=null, string ref4=null)
Definition: Msg.cs:58
UIText subText
Definition: UIButton.cs:104
UIText mainText
Definition: UIButton.cs:102
void SetText(string s)
Definition: UIHeader.cs:24
void ChangeSort(SortMode m)
Definition: UIList.cs:757
override void List()
Definition: UIList.cs:769
Definition: UINote.cs:6
static void Toggle(Element e)
UIList moldListFeatPurchase
Definition: WindowChara.cs:132
UIHeader moldHeader
Definition: WindowChara.cs:120
UIList moldListResist
Definition: WindowChara.cs:128
Transform contentList
Definition: WindowChara.cs:134
UIHeader _header
Definition: WindowChara.cs:160
UIHeader moldHeader2
Definition: WindowChara.cs:122
UIList moldListFeat
Definition: WindowChara.cs:130
UIHeader headerEquip
Definition: WindowChara.cs:124
void RefreshFeatMode()
Definition: WindowChara.cs:250
UIList moldListSkill
Definition: WindowChara.cs:126

References UIList.Add(), UINote.AddHeader(), UINote.Build(), Card.c_genes, UIList.ChangeSort(), UINote.Clear(), Chara.CurrentGeneSlot, Card.elements, SourceManager.elements, Card.Evalue(), ElementContainer.GetOrCreateElement(), Element.GetSortVal(), DNA.GetText(), Card.HasElement(), Element.HasTag(), Header, Element.id, if(), ButtonElement.imagePotential, Element.IsFactionElement(), Element.IsFlag, Chara.IsPC, item, CharaGenes.items, UIList.items, UIList.List(), ElementContainer.ListElements(), UIButton.mainText, Chara.MaxGeneSlot, UITooltip.note, Element.owner, EClass.pc, ButtonElement.SetElement(), ButtonElement.SetGrid(), UIHeader.SetText(), UIText.SetText(), UIButton.SetTooltip(), Element.source, EClass.sources, UIButton.subText, WidgetTracker.Toggle(), Element.Value, Element.vLink, Element.vSource, and DNA.WriteNote().

Referenced by OnSwitchContent(), and ToggleFeatMode().

◆ RefreshStatic()

void WindowChara.RefreshStatic ( )
inline

Definition at line 263 of file WindowChara.cs.

264 {
265 textHealth.text = chara.hp + "/" + chara.MaxHP;
266 textMood.text = chara.mana.value + "/" + chara.mana.max;
268 Sprite @object = Portrait.modPortraitBGs.GetItem(chara.GetStr(23) ?? "BG_1").GetObject();
269 @object.texture.filterMode = FilterMode.Bilinear;
270 portrait.image.sprite = @object;
271 @object = Portrait.modPortraitBGFs.GetItem(chara.GetStr(24) ?? "BGF_1").GetObject();
272 @object.texture.filterMode = FilterMode.Bilinear;
273 portrait.imageFrame.sprite = @object;
276 listAttaribute.callbacks = new UIList.Callback<Element, ButtonElement>
277 {
278 onClick = delegate(Element a, ButtonElement b)
279 {
282 },
283 onInstantiate = delegate(Element a, ButtonElement b)
284 {
285 b.SetElement(a, chara.elements, ButtonElement.Mode.Attribute);
286 }
287 };
288 List<Element> list = chara.elements.ListElements((Element a) => a.HasTag("primary"));
289 list.Sort((Element a, Element b) => a.source.sort - b.source.sort);
290 foreach (Element item in list)
291 {
293 }
295 }
string GetStr(int id, string defaultStr=null)
Definition: BaseCard.cs:54
override int MaxHP
Definition: Chara.cs:722
Stats mana
Definition: Chara.cs:1180
ModItem< T > GetItem(string id, bool returnNull=false)
Definition: ModItemList.cs:61
static ModItemList< Sprite > modPortraitBGFs
Definition: Portrait.cs:8
static ModItemList< Sprite > modPortraitBGs
Definition: Portrait.cs:10
UIList listAttaribute
Definition: WindowChara.cs:74
void SetCaption(string text)
Definition: Window.cs:1289

References UIList.Add(), chara, UIList.Clear(), Card.elements, ModItemList< T >.GetItem(), BaseCard.GetStr(), Element.HasTag(), item, listAttaribute, ElementContainer.ListElements(), Chara.mana, Stats.max, Chara.MaxHP, Portrait.modPortraitBGFs, Portrait.modPortraitBGs, Chara.NameBraced, portrait, UIList.Refresh(), RefreshStatic(), Window.SetCaption(), Portrait.SetChara(), ButtonElement.SetElement(), Element.source, WidgetTracker.Toggle(), and WindowController.window.

Referenced by OnSwitchContent(), RefreshStatic(), SetPortraitBG(), and SetPortraitFrame().

◆ RefreshStatus()

void WindowChara.RefreshStatus ( )
inline

Definition at line 297 of file WindowChara.cs.

298 {
299 layoutStatus.DestroyChildren();
300 foreach (Stats item in new List<Stats> { chara.hunger, chara.burden, chara.stamina, chara.depression, chara.bladder, chara.hygiene })
301 {
303 }
304 foreach (Condition condition in chara.conditions)
305 {
306 AddStatus(condition);
307 }
308 if (layoutStatus.transform.childCount == 1)
309 {
310 AddStatus(null);
311 }
312 layoutStatus.RebuildLayout();
313 }
Stats depression
Definition: Chara.cs:1174
List< Condition > conditions
Definition: Chara.cs:213
Stats hunger
Definition: Chara.cs:1168
Stats bladder
Definition: Chara.cs:1176
Stats stamina
Definition: Chara.cs:1172
Stats burden
Definition: Chara.cs:1170
Definition: Stats.cs:5
void AddStatus(BaseStats st)
Definition: WindowChara.cs:332

References AddStatus(), Chara.bladder, Chara.burden, chara, Chara.conditions, Chara.depression, Chara.hunger, item, layoutStatus, and Chara.stamina.

Referenced by RefreshProfile().

◆ SetChara()

void WindowChara.SetChara ( Chara  c)
inline

Definition at line 164 of file WindowChara.cs.

165 {
166 Instance = this;
167 chara = c;
168 portrait.interactable = chara.IsPC;
170 if (window.setting.tabs.Count > 6)
171 {
172 window.setting.tabs[6].button.SetActive(chara.IsPC);
173 }
174 if (window.idTab == 6 && !chara.IsPC)
175 {
177 }
178 }
static WindowChara Instance
Definition: WindowChara.cs:10
List< Tab > tabs
Definition: Window.cs:81
void SwitchContent(UIContent content)
Definition: Window.cs:1198
Setting setting
Definition: Window.cs:606

References chara, Window.idTab, Instance, Chara.IsPC, OnSwitchContent(), Window.setting, Window.SwitchContent(), Window.Setting.tabs, and WindowController.window.

Referenced by LayerChara.SetChara(), and LayerInteraction.ShowPage().

◆ SetPortraitBG()

void WindowChara.SetPortraitBG ( int  a)
inline

Definition at line 214 of file WindowChara.cs.

215 {
216 string currentId = chara.GetStr(23) ?? "BG_1";
217 currentId = Portrait.modPortraitBGs.GetNextID(currentId, a);
218 if (currentId == "BG_1")
219 {
220 currentId = null;
221 }
222 chara.SetStr(23, currentId);
224 }
void SetStr(int id, string value=null)
Definition: BaseCard.cs:63
string GetNextID(string currentId, int a, bool ignoreCategory=true)
Definition: ModItemList.cs:35

References chara, ModItemList< T >.GetNextID(), BaseCard.GetStr(), Portrait.modPortraitBGs, RefreshStatic(), and BaseCard.SetStr().

◆ SetPortraitFrame()

void WindowChara.SetPortraitFrame ( int  a)
inline

Definition at line 226 of file WindowChara.cs.

227 {
228 string currentId = chara.GetStr(24) ?? "BGF_1";
229 currentId = Portrait.modPortraitBGFs.GetNextID(currentId, a);
230 if (currentId == "BGF_1")
231 {
232 currentId = null;
233 }
234 chara.SetStr(24, currentId);
236 }

References chara, ModItemList< T >.GetNextID(), BaseCard.GetStr(), Portrait.modPortraitBGFs, RefreshStatic(), and BaseCard.SetStr().

◆ ToggleFeatMode()

void WindowChara.ToggleFeatMode ( )
inline

Definition at line 238 of file WindowChara.cs.

239 {
242 buttonFeatOption.SetActive(featMode);
244 {
245 EClass.game.config.showAllFeat = a;
247 });
248 }
void SetToggle(bool isOn, Action< bool > onToggle=null)
Definition: UIButton.cs:341

References buttonFeatOption, Game.config, featMode, EClass.game, Window.idTab, RefreshSkill(), UIButton.SetToggle(), Game.Config.showAllFeat, and WindowController.window.

Referenced by WidgetExp.OnClick(), and WidgetExpHome.OnClick().

◆ Update()

void WindowChara.Update ( )
inlineprivate

Definition at line 180 of file WindowChara.cs.

181 {
182 rectEquip.anchoredPosition = new Vector2(scrollSkill.content.anchoredPosition.x + equipPos.x, equipPos.y);
183 }
Vector2 equipPos
Definition: WindowChara.cs:152
UIScrollView scrollSkill
Definition: WindowChara.cs:106

References equipPos, and scrollSkill.

Member Data Documentation

◆ _header

UIHeader WindowChara._header
private

Definition at line 160 of file WindowChara.cs.

◆ barColor1

float WindowChara.barColor1

Definition at line 156 of file WindowChara.cs.

Referenced by AddNeeds().

◆ barColor2

float WindowChara.barColor2

Definition at line 158 of file WindowChara.cs.

Referenced by AddNeeds().

◆ buttonFeatMode

UIButton WindowChara.buttonFeatMode

Definition at line 138 of file WindowChara.cs.

Referenced by OnSwitchContent(), and RefreshFeatMode().

◆ buttonFeatOption

UIButton WindowChara.buttonFeatOption

Definition at line 140 of file WindowChara.cs.

Referenced by OnSwitchContent(), and ToggleFeatMode().

◆ buttonLife

ButtonElement WindowChara.buttonLife

Definition at line 110 of file WindowChara.cs.

Referenced by RefreshProfile().

◆ buttonMana

ButtonElement WindowChara.buttonMana

Definition at line 108 of file WindowChara.cs.

Referenced by RefreshProfile().

◆ buttonSpeed

ButtonElement WindowChara.buttonSpeed

Definition at line 114 of file WindowChara.cs.

Referenced by RefreshProfile().

◆ buttonVigor

ButtonElement WindowChara.buttonVigor

Definition at line 112 of file WindowChara.cs.

Referenced by RefreshProfile().

◆ chara

◆ colorUnequipped

Color WindowChara.colorUnequipped

Definition at line 150 of file WindowChara.cs.

Referenced by RefreshEquipment().

◆ contentList

Transform WindowChara.contentList

Definition at line 134 of file WindowChara.cs.

◆ equipPos

Vector2 WindowChara.equipPos

Definition at line 152 of file WindowChara.cs.

Referenced by Update().

◆ featMode

bool WindowChara.featMode

Definition at line 154 of file WindowChara.cs.

Referenced by OnSwitchContent(), RefreshFeatMode(), and ToggleFeatMode().

◆ graph

PUIExampleRPGStats WindowChara.graph

Definition at line 82 of file WindowChara.cs.

◆ gridEquip

GridLayoutGroup WindowChara.gridEquip

Definition at line 104 of file WindowChara.cs.

◆ headerEquip

UIHeader WindowChara.headerEquip

Definition at line 124 of file WindowChara.cs.

◆ imageView

Image WindowChara.imageView

Definition at line 142 of file WindowChara.cs.

◆ Instance

WindowChara WindowChara.Instance
static

Definition at line 10 of file WindowChara.cs.

Referenced by ButtonElement.Refresh(), and SetChara().

◆ layoutNeeds

LayoutGroup WindowChara.layoutNeeds

Definition at line 100 of file WindowChara.cs.

Referenced by AddNeeds().

◆ layoutStatus

LayoutGroup WindowChara.layoutStatus

Definition at line 102 of file WindowChara.cs.

Referenced by AddStatus(), and RefreshStatus().

◆ listAttaribute

UIList WindowChara.listAttaribute

Definition at line 74 of file WindowChara.cs.

Referenced by RefreshStatic().

◆ listEquipment

UIList WindowChara.listEquipment

Definition at line 76 of file WindowChara.cs.

Referenced by RefreshProfile().

◆ listEquipment2

UIList WindowChara.listEquipment2

Definition at line 78 of file WindowChara.cs.

Referenced by OnSwitchContent().

◆ mask

Sprite WindowChara.mask

Definition at line 144 of file WindowChara.cs.

Referenced by OnSwitchContent().

◆ maskResist

Sprite WindowChara.maskResist

Definition at line 146 of file WindowChara.cs.

Referenced by OnSwitchContent().

◆ matItem

Material WindowChara.matItem

Definition at line 148 of file WindowChara.cs.

Referenced by RefreshEquipment().

◆ moldHeader

UIHeader WindowChara.moldHeader

Definition at line 120 of file WindowChara.cs.

◆ moldHeader2

UIHeader WindowChara.moldHeader2

Definition at line 122 of file WindowChara.cs.

◆ moldListFeat

UIList WindowChara.moldListFeat

Definition at line 130 of file WindowChara.cs.

◆ moldListFeatPurchase

UIList WindowChara.moldListFeatPurchase

Definition at line 132 of file WindowChara.cs.

◆ moldListResist

UIList WindowChara.moldListResist

Definition at line 128 of file WindowChara.cs.

◆ moldListSkill

UIList WindowChara.moldListSkill

Definition at line 126 of file WindowChara.cs.

◆ moldNeeds

UIItem WindowChara.moldNeeds

Definition at line 118 of file WindowChara.cs.

Referenced by AddNeeds().

◆ moldStats

UIItem WindowChara.moldStats

Definition at line 116 of file WindowChara.cs.

Referenced by AddStatus().

◆ note

UINote WindowChara.note

Definition at line 80 of file WindowChara.cs.

◆ portrait

Portrait WindowChara.portrait

Definition at line 14 of file WindowChara.cs.

Referenced by OnClickPortrait(), and RefreshStatic().

◆ rectEquip

RectTransform WindowChara.rectEquip

Definition at line 136 of file WindowChara.cs.

◆ scrollSkill

UIScrollView WindowChara.scrollSkill

Definition at line 106 of file WindowChara.cs.

Referenced by Update().

◆ textAffection

UIText WindowChara.textAffection

Definition at line 88 of file WindowChara.cs.

◆ textAlias

UIText WindowChara.textAlias

Definition at line 22 of file WindowChara.cs.

◆ textAssets

UIText WindowChara.textAssets

Definition at line 64 of file WindowChara.cs.

◆ textBio

UIText WindowChara.textBio

Definition at line 26 of file WindowChara.cs.

◆ textBio2

UIText WindowChara.textBio2

Definition at line 28 of file WindowChara.cs.

◆ textBio3

UIText WindowChara.textBio3

Definition at line 30 of file WindowChara.cs.

◆ textBirthday

UIText WindowChara.textBirthday

Definition at line 32 of file WindowChara.cs.

◆ textBirthplace

UIText WindowChara.textBirthplace

Definition at line 44 of file WindowChara.cs.

◆ textCurrentZone

UIText WindowChara.textCurrentZone

Definition at line 70 of file WindowChara.cs.

◆ textDad

UIText WindowChara.textDad

Definition at line 42 of file WindowChara.cs.

◆ textDeepest

UIText WindowChara.textDeepest

Definition at line 68 of file WindowChara.cs.

◆ textDeposit

UIText WindowChara.textDeposit

Definition at line 66 of file WindowChara.cs.

◆ textDominance

UIText WindowChara.textDominance

Definition at line 90 of file WindowChara.cs.

◆ textDV

UIText WindowChara.textDV

Definition at line 96 of file WindowChara.cs.

◆ textExtroversion

UIText WindowChara.textExtroversion

Definition at line 92 of file WindowChara.cs.

◆ textFaction

UIText WindowChara.textFaction

Definition at line 34 of file WindowChara.cs.

◆ textFaith

UIText WindowChara.textFaith

Definition at line 36 of file WindowChara.cs.

◆ textFame

UIText WindowChara.textFame

Definition at line 54 of file WindowChara.cs.

◆ textFavArmor

UIText WindowChara.textFavArmor

Definition at line 94 of file WindowChara.cs.

Referenced by RefreshEquipment().

◆ textHealth

UIText WindowChara.textHealth

Definition at line 18 of file WindowChara.cs.

◆ textHobby

UIText WindowChara.textHobby

Definition at line 48 of file WindowChara.cs.

◆ textHome

UIText WindowChara.textHome

Definition at line 38 of file WindowChara.cs.

◆ textHomeZone

UIText WindowChara.textHomeZone

Definition at line 72 of file WindowChara.cs.

◆ textIncome

UIText WindowChara.textIncome

Definition at line 62 of file WindowChara.cs.

◆ textKarma

UIText WindowChara.textKarma

Definition at line 50 of file WindowChara.cs.

◆ textLaw

UIText WindowChara.textLaw

Definition at line 86 of file WindowChara.cs.

◆ textLike

UIText WindowChara.textLike

Definition at line 46 of file WindowChara.cs.

◆ textMom

UIText WindowChara.textMom

Definition at line 40 of file WindowChara.cs.

◆ textMoney

UIText WindowChara.textMoney

Definition at line 56 of file WindowChara.cs.

◆ textMood

UIText WindowChara.textMood

Definition at line 16 of file WindowChara.cs.

◆ textName

UIText WindowChara.textName

Definition at line 20 of file WindowChara.cs.

◆ textSAN

UIText WindowChara.textSAN

Definition at line 52 of file WindowChara.cs.

◆ textStability

UIText WindowChara.textStability

Definition at line 84 of file WindowChara.cs.

◆ textStyle

UIText WindowChara.textStyle

Definition at line 98 of file WindowChara.cs.

◆ textTax

UIText WindowChara.textTax

Definition at line 58 of file WindowChara.cs.

◆ textTerritory

UIText WindowChara.textTerritory

Definition at line 60 of file WindowChara.cs.

◆ textTitle

UIText WindowChara.textTitle

Definition at line 24 of file WindowChara.cs.

Property Documentation

◆ bio

Biography WindowChara.bio
get

Definition at line 162 of file WindowChara.cs.

Referenced by RefreshInfo(), and RefreshProfile().


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