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

Public Member Functions

void Activate (Chara _chara, UIPCC.Mode m, string idUniform=null, Action _onKill=null)
 
void Apply ()
 
void OnClickChangePortrait ()
 
override void OnKill ()
 
void SetPortraitSlider ()
 
- 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

UIPCC.Mode mode
 
UIPCC uiPCC
 
Portrait portrait
 
Chara chara
 
UISlider sliderPortrait
 
PCCData backup
 
string backupPortrait
 
bool applied
 
- 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

bool UniformMode [get]
 
bool IsMale [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]
 

Private Member Functions

void Update ()
 

Private Attributes

Color lastHair
 

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 5 of file LayerEditPCC.cs.

Member Function Documentation

◆ Activate()

void LayerEditPCC.Activate ( Chara  _chara,
UIPCC::Mode  m,
string  idUniform = null,
Action  _onKill = null 
)
inline

Definition at line 39 of file LayerEditPCC.cs.

40 {
41 chara = (_chara.IsPCC ? _chara : ELayer.pc);
42 mode = m;
43 uiPCC.exportPath = CorePath.user + "PCC/";
44 uiPCC.onShowPalette = delegate(PCC pcc, string id, PCC.Part part, TestActor actor)
45 {
46 LayerColorPicker layerColorPicker = ELayer.ui.AddLayer<LayerColorPicker>();
47 Color color = pcc.data.GetColor(id);
48 layerColorPicker.SetColor(color, color, delegate(PickerState state, Color _c)
49 {
50 pcc.data.SetColor(id, _c);
51 actor.Reset();
52 });
53 };
54 PCCData newData = new PCCData();
55 newData.Set(chara.pccData);
56 backup = IO.DeepCopy(newData);
58 if (UniformMode)
59 {
60 ELayer.game.uniforms.Apply(newData, idUniform, IsMale, canUseOtherGender: false);
61 windows[0].SetCaption("_uniform".lang(ELayer.sources.jobs.map[idUniform].GetName().ToTitleCase(), IsMale ? "male".lang() : "female".lang()));
62 }
63 else
64 {
65 ELayer.game.uniforms.Apply(newData, PCCUniformManager.dummy);
66 }
67 uiPCC.Init(newData, mode);
69 windows[0].AddBottomButton("removeAllCloth", delegate
70 {
71 uiPCC.RemoveAll();
72 ELayer.Sound.Play("offering");
73 });
74 windows[0].AddBottomButton("reset", delegate
75 {
76 if (UniformMode)
77 {
78 ELayer.game.uniforms.RemoveUniform(newData);
79 }
80 uiPCC.Reset(backup);
81 chara.c_idPortrait = backupPortrait;
83 ELayer.Sound.Play("offering");
84 newData.colors.Clear();
85 });
86 if (UniformMode)
87 {
88 PCCData otherUni = ELayer.game.uniforms.GetUniform(idUniform, !IsMale);
89 if (otherUni != null)
90 {
91 windows[0].AddBottomButton("copyUniform", delegate
92 {
93 PCCData pCCData = new PCCData();
94 pCCData.Set(chara.pccData);
95 ELayer.game.uniforms.Apply(pCCData, otherUni);
96 uiPCC.Reset(pCCData);
97 ELayer.Sound.Play("offering");
98 });
99 }
100 }
101 windows[2].SetActive(enable: true);
102 portrait.SetActive(!UniformMode);
103 if (_onKill != null)
104 {
105 SetOnKill(_onKill);
106 }
107 }
PickerState
Definition: PickerState.cs:2
string c_idPortrait
Definition: Card.cs:1409
PCCData pccData
Definition: Chara.cs:64
Definition: ELayer.cs:4
static Chara pc
Definition: ELayer.cs:15
static SourceManager sources
Definition: ELayer.cs:37
static Game game
Definition: ELayer.cs:9
static UI ui
Definition: ELayer.cs:21
static SoundManager Sound
Definition: ELayer.cs:41
PCCUniformManager uniforms
Definition: Game.cs:191
Definition: IO.cs:11
void SetColor(Color _startColor, Color _resetColor, Action< PickerState, Color > _onChangeColor)
string backupPortrait
Definition: LayerEditPCC.cs:19
Portrait portrait
Definition: LayerEditPCC.cs:11
PCCData backup
Definition: LayerEditPCC.cs:17
UIPCC.Mode mode
Definition: LayerEditPCC.cs:7
void SetPortraitSlider()
bool UniformMode
Definition: LayerEditPCC.cs:26
List< Window > windows
Definition: Layer.cs:116
Layer SetOnKill(Action action)
Definition: Layer.cs:579
SourceJob jobs

References backup, backupPortrait, Card.c_idPortrait, chara, Color, ELayer.game, IsMale, SourceManager.jobs, mode, ELayer.pc, Chara.pccData, portrait, LayerColorPicker.SetColor(), Layer.SetOnKill(), SetPortraitSlider(), ELayer.Sound, ELayer.sources, ELayer.ui, uiPCC, UniformMode, Game.uniforms, and Layer.windows.

Referenced by OnClickChangePortrait().

◆ Apply()

void LayerEditPCC.Apply ( )
inline

Definition at line 109 of file LayerEditPCC.cs.

110 {
111 PCCData data = uiPCC.pcc.data;
112 ELayer.game.uniforms.Apply(data, chara.job.id, IsMale, canUseOtherGender: true);
113 chara.pccData.Set(data);
114 PCC.Get(chara.pccData).Build();
115 chara.SetInt(105, IntColor.ToInt(chara.pccData.GetHairColor()));
116 applied = true;
117 }
void SetInt(int id, int value=0)
Definition: BaseCard.cs:39
SourceJob.Row job
Definition: Chara.cs:451
static int ToInt(ref Color c)
Definition: IntColor.cs:24

References applied, chara, ELayer.game, IsMale, Chara.job, Chara.pccData, BaseCard.SetInt(), IntColor.ToInt(), uiPCC, and Game.uniforms.

◆ OnClickChangePortrait()

void LayerEditPCC.OnClickChangePortrait ( )
inline

Definition at line 119 of file LayerEditPCC.cs.

120 {
121 ELayer.ui.AddLayer<LayerEditPortrait>().Activate(chara, uiPCC.pcc.data, delegate
122 {
123 portrait.SetChara(chara, uiPCC.actor.data);
124 uiPCC.actor.Reset();
125 });
126 }
void Activate(Chara _chara, UIPCC.Mode m, string idUniform=null, Action _onKill=null)
Definition: LayerEditPCC.cs:39
void SetChara(Chara c, PCCData pccData=null)
Definition: Portrait.cs:138

References Activate(), chara, portrait, Portrait.SetChara(), ELayer.ui, and uiPCC.

◆ OnKill()

override void LayerEditPCC.OnKill ( )
inlinevirtual

Reimplemented from Layer.

Definition at line 128 of file LayerEditPCC.cs.

129 {
130 Apply();
131 }

◆ SetPortraitSlider()

void LayerEditPCC.SetPortraitSlider ( )
inline

Definition at line 155 of file LayerEditPCC.cs.

156 {
157 if ((bool)sliderPortrait)
158 {
159 List<ModItem<Sprite>> list = Portrait.ListPlayerPortraits(chara.bio.gender, chara != ELayer.pc);
160 list.Sort((ModItem<Sprite> a, ModItem<Sprite> b) => Lang.comparer.Compare(a.id, b.id));
161 sliderPortrait.SetList(list.Find((ModItem<Sprite> a) => a.id == chara.c_idPortrait), list, delegate(int a, ModItem<Sprite> b)
162 {
163 chara.c_idPortrait = b.id;
164 portrait.SetChara(chara, uiPCC.actor.data);
165 }, (ModItem<Sprite> a) => (!a.id.IsEmpty()) ? a.id : "None");
166 }
167 }
int gender
Definition: Biography.cs:29
Biography bio
Definition: Card.cs:40
Definition: Lang.cs:6
static NaturalStringComparer comparer
Definition: Lang.cs:22
UISlider sliderPortrait
Definition: LayerEditPCC.cs:15
string id
Definition: ModItem.cs:10
static List< ModItem< Sprite > > ListPlayerPortraits(int gender, bool nullPortrait=false)
Definition: Portrait.cs:48

References Lang.comparer, ModItem< T >.id, Portrait.ListPlayerPortraits(), and ELayer.pc.

Referenced by Activate().

◆ Update()

void LayerEditPCC.Update ( )
inlineprivate

Definition at line 133 of file LayerEditPCC.cs.

134 {
135 Color hairColor = uiPCC.actor.data.GetHairColor();
136 if (hairColor != lastHair)
137 {
138 portrait.SetChara(chara, uiPCC.actor.data);
139 lastHair = hairColor;
140 }
141 int wheel = EInput.wheel;
142 if (InputModuleEX.IsPointerOver(windows[1].transform))
143 {
144 if (wheel < 0)
145 {
146 uiPCC.actor.provider.NextDir();
147 }
148 if (wheel > 0)
149 {
150 uiPCC.actor.provider.PrevDir();
151 }
152 }
153 }
Definition: EInput.cs:8
static int wheel
Definition: EInput.cs:289
static bool IsPointerOver(Component c)
Color lastHair
Definition: LayerEditPCC.cs:23

References Color, InputModuleEX.IsPointerOver(), and EInput.wheel.

Member Data Documentation

◆ applied

bool LayerEditPCC.applied

Definition at line 21 of file LayerEditPCC.cs.

Referenced by Apply().

◆ backup

PCCData LayerEditPCC.backup

Definition at line 17 of file LayerEditPCC.cs.

Referenced by Activate().

◆ backupPortrait

string LayerEditPCC.backupPortrait

Definition at line 19 of file LayerEditPCC.cs.

Referenced by Activate().

◆ chara

Chara LayerEditPCC.chara

Definition at line 13 of file LayerEditPCC.cs.

Referenced by Activate(), Apply(), and OnClickChangePortrait().

◆ lastHair

Color LayerEditPCC.lastHair
private

Definition at line 23 of file LayerEditPCC.cs.

◆ mode

UIPCC.Mode LayerEditPCC.mode

Definition at line 7 of file LayerEditPCC.cs.

Referenced by Activate().

◆ portrait

Portrait LayerEditPCC.portrait

Definition at line 11 of file LayerEditPCC.cs.

Referenced by Activate(), and OnClickChangePortrait().

◆ sliderPortrait

UISlider LayerEditPCC.sliderPortrait

Definition at line 15 of file LayerEditPCC.cs.

◆ uiPCC

UIPCC LayerEditPCC.uiPCC

Definition at line 9 of file LayerEditPCC.cs.

Referenced by Activate(), Apply(), and OnClickChangePortrait().

Property Documentation

◆ IsMale

bool LayerEditPCC.IsMale
get

Definition at line 37 of file LayerEditPCC.cs.

Referenced by Activate(), and Apply().

◆ UniformMode

bool LayerEditPCC.UniformMode
get

Definition at line 25 of file LayerEditPCC.cs.

26 {
27 get
28 {
29 if (mode != UIPCC.Mode.UniformM)
30 {
31 return mode == UIPCC.Mode.UniformF;
32 }
33 return true;
34 }
35 }

Referenced by Activate().


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