blob: 55d31ed68cc407bb9ccbee7619078d1385d61e65 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
|
using System;
using UnityEngine;
public class CharacterCreator : MonoBehaviour
{
public PlayerFace currentPlayerFace;
public GameObject objectToEnable;
public int playerID;
public int portraitID;
public bool ready;
public PlayerActions playerActions;
public GeneralInput.InputType inputType;
public MenuControllerHandler.MenuControl currentControl = MenuControllerHandler.MenuControl.Unassigned;
public MenuControllerHandler.MenuControl lastControl = MenuControllerHandler.MenuControl.Unassigned;
public Action<MenuControllerHandler.MenuControl> SwitchAction;
public CharacterCreatorNavigation nav;
private void Start()
{
nav = GetComponentInChildren<CharacterCreatorNavigation>();
}
private void Update()
{
if (currentControl != lastControl)
{
SwitchAction?.Invoke(currentControl);
}
lastControl = currentControl;
}
public void Close()
{
CharacterCreatorHandler.instance.ReleasePortrait(portraitID);
if (playerActions == null)
{
base.gameObject.SetActive(value: false);
MainMenuHandler.instance.Open();
}
else
{
objectToEnable.SetActive(value: true);
base.gameObject.SetActive(value: false);
}
}
public void Finish()
{
CharacterCreatorHandler.instance.ReleasePortrait(portraitID);
CharacterCreatorHandler.instance.SetFacePreset(portraitID, currentPlayerFace);
CharacterCreatorHandler.instance.SelectFace(0, currentPlayerFace, portraitID);
if (playerActions == null)
{
base.gameObject.SetActive(value: false);
MainMenuHandler.instance.Open();
}
else
{
objectToEnable.SetActive(value: true);
base.gameObject.SetActive(value: false);
}
}
internal void SetOffset(Vector2 offset, CharacterItemType itemType, int slotID)
{
if (itemType == CharacterItemType.Eyes)
{
currentPlayerFace.eyeOffset = offset;
}
if (itemType == CharacterItemType.Mouth)
{
currentPlayerFace.mouthOffset = offset;
}
if (itemType == CharacterItemType.Detail)
{
if (slotID == 0)
{
currentPlayerFace.detailOffset = offset;
}
if (slotID == 1)
{
currentPlayerFace.detail2Offset = offset;
}
}
}
internal void SpawnFace(PlayerFace currentFace)
{
GetComponentInChildren<CharacterCreatorItemEquipper>().SpawnPlayerFace(currentFace);
}
}
|