Elin Decompiled Documentation EA 23.300 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 ()
 
void OnClickPartPicker (UIItemPCC uiItemPcc)
 
override void OnKill ()
 
void SetPortraitSlider ()
 
void SetPccPicker ()
 
- 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 6 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 40 of file LayerEditPCC.cs.

41 {
42 chara = (_chara.IsPCC ? _chara : ELayer.pc);
43 mode = m;
44 uiPCC.exportPath = CorePath.user + "PCC/";
45 uiPCC.onShowPalette = delegate(PCC pcc, string id, PCC.Part part, TestActor actor)
46 {
47 LayerColorPicker layerColorPicker = ELayer.ui.AddLayer<LayerColorPicker>();
48 Color color = pcc.data.GetColor(id);
49 layerColorPicker.SetColor(color, color, delegate(PickerState state, Color _c)
50 {
51 pcc.data.SetColor(id, _c);
52 actor.Reset();
53 });
54 };
55 uiPCC.onRefreshParts = SetPccPicker;
56 PCCData newData = new PCCData();
57 newData.Set(chara.pccData);
58 backup = IO.DeepCopy(newData);
60 if (UniformMode)
61 {
62 ELayer.game.uniforms.Apply(newData, idUniform, IsMale, canUseOtherGender: false);
63 windows[0].SetCaption("_uniform".lang(ELayer.sources.jobs.map[idUniform].GetName().ToTitleCase(), IsMale ? "male".lang() : "female".lang()));
64 }
65 else
66 {
67 ELayer.game.uniforms.Apply(newData, PCCUniformManager.dummy);
68 }
69 uiPCC.Init(newData, mode);
71 windows[0].AddBottomButton("removeAllCloth", delegate
72 {
73 uiPCC.RemoveAll();
74 ELayer.Sound.Play("offering");
75 });
76 windows[0].AddBottomButton("reset", delegate
77 {
78 if (UniformMode)
79 {
80 ELayer.game.uniforms.RemoveUniform(newData);
81 }
82 uiPCC.Reset(backup);
83 chara.c_idPortrait = backupPortrait;
85 ELayer.Sound.Play("offering");
86 newData.colors.Clear();
87 });
88 if (UniformMode)
89 {
90 PCCData otherUni = ELayer.game.uniforms.GetUniform(idUniform, !IsMale);
91 if (otherUni != null)
92 {
93 windows[0].AddBottomButton("copyUniform", delegate
94 {
95 PCCData pCCData = new PCCData();
96 pCCData.Set(chara.pccData);
97 ELayer.game.uniforms.Apply(pCCData, otherUni);
98 uiPCC.Reset(pCCData);
99 ELayer.Sound.Play("offering");
100 });
101 }
102 }
103 windows[2].SetActive(enable: true);
104 portrait.SetActive(!UniformMode);
105 if (_onKill != null)
106 {
107 SetOnKill(_onKill);
108 }
109 }
PickerState
Definition: PickerState.cs:2
string c_idPortrait
Definition: Card.cs:1525
PCCData pccData
Definition: Chara.cs:67
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:195
Definition: IO.cs:11
void SetColor(Color _startColor, Color _resetColor, Action< PickerState, Color > _onChangeColor)
string backupPortrait
Definition: LayerEditPCC.cs:20
Portrait portrait
Definition: LayerEditPCC.cs:12
void SetPccPicker()
PCCData backup
Definition: LayerEditPCC.cs:18
UIPCC.Mode mode
Definition: LayerEditPCC.cs:8
void SetPortraitSlider()
bool UniformMode
Definition: LayerEditPCC.cs:27
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(), SetPccPicker(), 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 111 of file LayerEditPCC.cs.

112 {
113 PCCData data = uiPCC.pcc.data;
114 ELayer.game.uniforms.Apply(data, chara.job.id, IsMale, canUseOtherGender: true);
115 chara.pccData.Set(data);
116 PCC.Get(chara.pccData).Build();
117 chara.SetInt(105, IntColor.ToInt(chara.pccData.GetHairColor()));
118 applied = true;
119 }
void SetInt(int id, int value=0)
Definition: BaseCard.cs:39
SourceJob.Row job
Definition: Chara.cs:468
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 121 of file LayerEditPCC.cs.

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

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

◆ OnClickPartPicker()

void LayerEditPCC.OnClickPartPicker ( UIItemPCC  uiItemPcc)
inline

Definition at line 130 of file LayerEditPCC.cs.

131 {
132 ELayer.ui.AddLayer<LayerPickPCC>("LayerPCC/LayerPickPCC").Activate(uiPCC, uiItemPcc);
133 }

References ELayer.ui.

◆ OnKill()

override void LayerEditPCC.OnKill ( )
inlinevirtual

Reimplemented from Layer.

Definition at line 135 of file LayerEditPCC.cs.

136 {
137 Apply();
138 foreach (Layer item in ELayer.ui.layers.Where((Layer l) => l is LayerPickPCC).ToList())
139 {
140 item.Close();
141 }
142 }
Definition: Layer.cs:9

References item, and ELayer.ui.

◆ SetPccPicker()

void LayerEditPCC.SetPccPicker ( )
inline

Definition at line 180 of file LayerEditPCC.cs.

181 {
182 foreach (UIItemPCC item in uiPCC.items)
183 {
184 item.buttonPicker.onClick.AddListener(delegate
185 {
187 });
188 item.buttonPicker.GetComponent<ButtonGeneral>().tooltip.lang = "LayerPickPCC".lang();
189 }
190 }
void OnClickPartPicker(UIItemPCC uiItemPcc)

References item.

Referenced by Activate().

◆ SetPortraitSlider()

void LayerEditPCC.SetPortraitSlider ( )
inline

Definition at line 166 of file LayerEditPCC.cs.

167 {
168 if ((bool)sliderPortrait)
169 {
170 List<ModItem<Sprite>> list = Portrait.ListPlayerPortraits(chara.bio.gender, chara != ELayer.pc);
171 list.Sort((ModItem<Sprite> a, ModItem<Sprite> b) => Lang.comparer.Compare(a.id, b.id));
172 sliderPortrait.SetList(list.Find((ModItem<Sprite> a) => a.id == chara.c_idPortrait), list, delegate(int a, ModItem<Sprite> b)
173 {
174 chara.c_idPortrait = b.id;
175 portrait.SetChara(chara, uiPCC.actor.data);
176 }, (ModItem<Sprite> a) => (!a.id.IsEmpty()) ? a.id : "None");
177 }
178 }
int gender
Definition: Biography.cs:29
Biography bio
Definition: Card.cs:45
Definition: Lang.cs:6
static NaturalStringComparer comparer
Definition: Lang.cs:22
UISlider sliderPortrait
Definition: LayerEditPCC.cs:16
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 144 of file LayerEditPCC.cs.

145 {
146 Color hairColor = uiPCC.actor.data.GetHairColor();
147 if (hairColor != lastHair)
148 {
149 portrait.SetChara(chara, uiPCC.actor.data);
150 lastHair = hairColor;
151 }
152 int wheel = EInput.wheel;
153 if (InputModuleEX.IsPointerOver(windows[1].transform))
154 {
155 if (wheel < 0)
156 {
157 uiPCC.actor.provider.NextDir();
158 }
159 if (wheel > 0)
160 {
161 uiPCC.actor.provider.PrevDir();
162 }
163 }
164 }
Definition: EInput.cs:8
static int wheel
Definition: EInput.cs:300
static bool IsPointerOver(Component c)
Color lastHair
Definition: LayerEditPCC.cs:24

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

Member Data Documentation

◆ applied

bool LayerEditPCC.applied

Definition at line 22 of file LayerEditPCC.cs.

Referenced by Apply().

◆ backup

PCCData LayerEditPCC.backup

Definition at line 18 of file LayerEditPCC.cs.

Referenced by Activate().

◆ backupPortrait

string LayerEditPCC.backupPortrait

Definition at line 20 of file LayerEditPCC.cs.

Referenced by Activate().

◆ chara

Chara LayerEditPCC.chara

Definition at line 14 of file LayerEditPCC.cs.

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

◆ lastHair

Color LayerEditPCC.lastHair
private

Definition at line 24 of file LayerEditPCC.cs.

◆ mode

UIPCC.Mode LayerEditPCC.mode

Definition at line 8 of file LayerEditPCC.cs.

Referenced by Activate().

◆ portrait

Portrait LayerEditPCC.portrait

Definition at line 12 of file LayerEditPCC.cs.

Referenced by Activate(), and OnClickChangePortrait().

◆ sliderPortrait

UISlider LayerEditPCC.sliderPortrait

Definition at line 16 of file LayerEditPCC.cs.

◆ uiPCC

UIPCC LayerEditPCC.uiPCC

Definition at line 10 of file LayerEditPCC.cs.

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

Property Documentation

◆ IsMale

bool LayerEditPCC.IsMale
get

Definition at line 38 of file LayerEditPCC.cs.

Referenced by Activate(), and Apply().

◆ UniformMode

bool LayerEditPCC.UniformMode
get

Definition at line 26 of file LayerEditPCC.cs.

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

Referenced by Activate().


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