1975 lines
84 KiB
C#
1975 lines
84 KiB
C#
using System.Collections;
|
||
using System.Collections.Generic;
|
||
using UnityEngine;
|
||
using UnityEngine.UI;
|
||
using TMPro;
|
||
//using UnityEngine.Rendering.PostProcessing;
|
||
using UnityEngine.Rendering;
|
||
using UnityEngine.Rendering.HighDefinition;
|
||
using UnityEngine.EventSystems;
|
||
using UnityStandardAssets.Utility;
|
||
|
||
public class PhotomodeManager : MonoBehaviour
|
||
{
|
||
[SerializeField] private Volume postProcess;
|
||
[SerializeField] private Volume photomodeVolumeEffectsDepthOfField;
|
||
[SerializeField] private Volume photomodeVolumeBrightnessSaturation;
|
||
[SerializeField] private Transform freeCamera;
|
||
private FreeCamera freeCameraLogic;
|
||
|
||
[SerializeField] private EventSystem eventSystem;
|
||
|
||
//private ShadowsMidtonesHighlights shadowsMidtonesHighlights;
|
||
|
||
private LiftGammaGain liftGammaGain;
|
||
private ColorAdjustments colorAdjustments;
|
||
private DepthOfField depthOfField;
|
||
private float Gain = 0f;
|
||
private float saturation = 0f;
|
||
private float exposure = 0f;
|
||
private float DepthOfFieldDistance = 0.85f;
|
||
private float DepthOfFieldIntensity = 40f;
|
||
private float LogoScale = 1f;
|
||
|
||
#region DefaultValues
|
||
private float GainDefault;
|
||
private float saturationDefault;
|
||
private float exposureDefault;
|
||
private float DepthOfFieldDistanceDefault;
|
||
private float DepthOfFieldIntensityDefault;
|
||
private float logoScaleDefault;
|
||
#endregion
|
||
|
||
[Header("Panels")]
|
||
[SerializeField] private GameObject _PhotoModePanel;
|
||
[SerializeField] private GameObject _cameraPanel;
|
||
[SerializeField] private GameObject _DepthOfFieldPanel;
|
||
[SerializeField] private GameObject _picturePanel;
|
||
[SerializeField] private GameObject _colorFiltersPanel;
|
||
[SerializeField] private GameObject _bordersPanel;
|
||
[SerializeField] private GameObject _logoPanel;
|
||
[SerializeField] private GameObject _posePanel;
|
||
[SerializeField] private GameObject _QuitPhotomodePanel;
|
||
[SerializeField] private GameObject _ResetPhotographPanel;
|
||
|
||
[Header("Quit Photomode Buttons UI")]
|
||
[SerializeField] private GameObject _quitPhotomodeYesPC;
|
||
[SerializeField] private GameObject _quitPhotomodeNoPC;
|
||
[SerializeField] private GameObject _quitPhotomodeYesController;
|
||
[SerializeField] private GameObject _quitPhotomodeNoController;
|
||
|
||
[Header("Reset Photograph Buttons UI")]
|
||
[SerializeField] private GameObject _resetPhotographYesPC;
|
||
[SerializeField] private GameObject _resetPhotographNoPC;
|
||
[SerializeField] private GameObject _resetPhotographYesController;
|
||
[SerializeField] private GameObject _resetPhotographNoController;
|
||
|
||
|
||
[Header("Sliders")]
|
||
public Slider _cameraRollSlider;
|
||
public Slider _cameraFieldOfViewSlider;
|
||
public Slider _BrightnessSlider;
|
||
public Slider _SaturationSlider;
|
||
public Slider _exposureSlider;
|
||
public Slider _DepthOfFieldNearBlurSlider;
|
||
public Slider _DepthOfFieldFarBlurSlider;
|
||
public Slider _colorFilterIntensitySlider;
|
||
public Slider _logoScaleSlider;
|
||
public Slider _headUpDownSlider;
|
||
public Slider _headLeftRightSlider;
|
||
public Slider _eyesUpDownSlider;
|
||
public Slider _eyesLeftRightSlider;
|
||
|
||
[Header("Logo Positions")]
|
||
[SerializeField] private Transform _topLeftPosition;
|
||
[SerializeField] private Transform _topCenterPosition;
|
||
[SerializeField] private Transform _topRightPosition;
|
||
[SerializeField] private Transform _leftPosition;
|
||
[SerializeField] private Transform _centerPosition;
|
||
[SerializeField] private Transform _rightPosition;
|
||
[SerializeField] private Transform _bottomLeftPosition;
|
||
[SerializeField] private Transform _bottomCenterPosition;
|
||
[SerializeField] private Transform _bottomRightPosition;
|
||
|
||
[SerializeField] private int indexPositions = 0;
|
||
[SerializeField] private int _LogoPosition = 1;
|
||
private int _indexLogos = 0;
|
||
|
||
[Header("Borders")]
|
||
[SerializeField] private List<GameObject> _bordersList = new List<GameObject>();
|
||
|
||
[Header("Logos")]
|
||
[SerializeField] private GameObject _logos;
|
||
[HideInInspector] public List<GameObject> _LogoList = new List<GameObject>();
|
||
|
||
[Header("Logo text")]
|
||
[SerializeField] private TextMeshProUGUI _logoName;
|
||
[SerializeField] private TextMeshProUGUI _logoPositionText;
|
||
|
||
[Header("Grids")]
|
||
[SerializeField] private GameObject _grid;
|
||
[SerializeField] private GameObject _grid1;
|
||
|
||
[Header("Bools")]
|
||
public bool HasPressedToOpenPhotoMode;
|
||
public bool photoModeOpen;
|
||
private bool updateCameraSliders = true;
|
||
[HideInInspector] public bool CanHoldDownSlider;
|
||
[HideInInspector] public bool DepthOfFieldOn;
|
||
[SerializeField] private bool CanChangeValueBySlider;
|
||
[SerializeField] public bool LogoVisibilityOn;
|
||
private bool HideHUD;
|
||
public bool quitPhotomodePanelOn;
|
||
public bool canQuitPhotomodePanel = true;
|
||
public bool resetPhotographPanelOn;
|
||
public bool canResetPhotograph = true;
|
||
private bool grid0IsEnabled;
|
||
private bool grid1IsEnabled;
|
||
|
||
[Header("HUD")]
|
||
[SerializeField] private Image _PhotomodePanelHUD;
|
||
[SerializeField] private GameObject _cameraPanelHUD;
|
||
[SerializeField] private GameObject _depthOfFieldPanelHUD;
|
||
[SerializeField] private GameObject _picturePanelHUD;
|
||
[SerializeField] private GameObject _colorFiltersPanelHUD;
|
||
[SerializeField] private GameObject _bordersPanelHUD;
|
||
[SerializeField] private GameObject _logoPanelHUD;
|
||
[SerializeField] private GameObject _posePanelHUD;
|
||
[SerializeField] private GameObject _buttonsHUD;
|
||
[SerializeField] private GameObject _borderlineHUD;
|
||
[SerializeField] private GameObject _bottomUIHUD_Controller;
|
||
[SerializeField] private GameObject _buttomUIHUD_PC;
|
||
[SerializeField] private GameObject _gridsHUD;
|
||
[SerializeField] private GameObject _controllerButtonsIndicationsHUD;
|
||
|
||
[Header("UI Animators")]
|
||
[Header("Top Buttons")]
|
||
[SerializeField] private Animator _cameraUIAnimator;
|
||
[SerializeField] private Animator _depthOfFieldUIAnimator;
|
||
[SerializeField] private Animator _pictureUIAnimator;
|
||
[SerializeField] private Animator _colorFiltersUIAnimator;
|
||
[SerializeField] private Animator _bordersUIAnimator;
|
||
[SerializeField] private Animator _logoUIAnimator;
|
||
[SerializeField] private Animator _PoseUIAnimator;
|
||
|
||
[Header("Panel Buttons")]
|
||
[SerializeField] private Animator _previousLogoLeftButtonAnimator;
|
||
[SerializeField] private Animator _nextLogoRightButtonAnimator;
|
||
[SerializeField] private Animator _ButtonPositionLeftArrowAnimator;
|
||
[SerializeField] private Animator _ButtonPositionRightArrowAnimator;
|
||
|
||
[Header("Photomode Mode")]
|
||
[SerializeField] private GameObject _photomodeSelectModePanel;
|
||
[SerializeField] private TextMeshProUGUI PhotomodeModeText;
|
||
[SerializeField] private Button _photomodeButton;
|
||
[SerializeField] private Button _lightmodeButton;
|
||
|
||
public bool IsInLightMode;
|
||
|
||
[Header("Photomode Check UI")]
|
||
public GameObject EyesControlONCheckUI;
|
||
public GameObject EyesControlOFFCheckUI;
|
||
|
||
[Header("------------------")]
|
||
#region Buttons OnClick
|
||
[SerializeField] private Button CameraPanelButton;
|
||
[SerializeField] private Button DepthOfFieldPanelButton;
|
||
[SerializeField] private Button PicturePanelButton;
|
||
[SerializeField] private Button ColorFiltersPanelButton;
|
||
[SerializeField] private Button BordersPanelButton;
|
||
[SerializeField] private Button LogoPanelButton;
|
||
[SerializeField] private Button PosePanelButton;
|
||
public Button DepthOfFieldON_Button;
|
||
public Button DepthOfFieldOFF_Button;
|
||
public Button LogoVisibilityON_Button;
|
||
public Button LogoVisibilityOFF_Button;
|
||
public Button PreviousLogoLeftButton;
|
||
public Button NextLogoRightButton;
|
||
public Button LogoPositionLeftButton;
|
||
public Button LogoPositionRightButton;
|
||
public Button ShowPlayeON;
|
||
public Button ShowPlayerOFF;
|
||
public Button ShowCompanionON;
|
||
public Button ShowCompanionOFF;
|
||
public Button PreviousFacePoseLeftButton;
|
||
public Button NextFacePoseRightButton;
|
||
public Button PreviousBodyPoseLeftButton;
|
||
public Button NextBodyPoseRightButton;
|
||
public Button PreviousOutfitLeftButton;
|
||
public Button NextOutfitRightButton;
|
||
[SerializeField] private Button QuitPhotomodeYesButton;
|
||
[SerializeField] private Button QuitPhotomodeNoButton;
|
||
[SerializeField] private Button ResetPhotographYesButton;
|
||
[SerializeField] private Button ResetPhotographNoButton;
|
||
|
||
[Header("Photomode Buttons Check")]
|
||
public GameObject checkDepthOfFieldON;
|
||
public GameObject checkDepthOfFieldOFF;
|
||
public GameObject checkLogoVisibilityON;
|
||
public GameObject checkLogoVisibilityOFF;
|
||
public GameObject checkShowPlayerON;
|
||
public GameObject checkShowPlayerOFF;
|
||
public GameObject checkShowCompanionON;
|
||
public GameObject checkShowCompanionOFF;
|
||
|
||
[Header("Selected Item UI")]
|
||
public GameObject _selectedItemUI_ColorFilters;
|
||
public GameObject _selectedItemUI_Borders;
|
||
|
||
//Eyes control buttons:
|
||
public Button EyesControlON;
|
||
public Button EyesControlOFF;
|
||
//------------------------------------
|
||
|
||
|
||
public Button[] ColorFilter = new Button[9];
|
||
//private Button[] ColorFilter;
|
||
public Button[] BorderButton = new Button[7];
|
||
#endregion
|
||
|
||
[Header("UI Menu Controller Navigation")]
|
||
[SerializeField] private UIMenuControllerNavigationPanel[] _uiMenuControllerNavigationPanel = new UIMenuControllerNavigationPanel[7];
|
||
|
||
int CurrentPanelIndex = 1;
|
||
public int CurrentModeIndex;
|
||
private Color defaultButtonColor;
|
||
private Color selectedButtonColor;
|
||
|
||
private static PhotomodeManager _instance;
|
||
public static PhotomodeManager GetInstance() { return _instance; }
|
||
|
||
void Awake()
|
||
{
|
||
if (!_instance)
|
||
{
|
||
_instance = this;
|
||
}
|
||
|
||
_PhotoModePanel.SetActive(false);
|
||
freeCameraLogic = freeCamera.GetComponent<FreeCamera>();
|
||
#region Update Logo name
|
||
UpdateLogoName();
|
||
#endregion
|
||
postProcess = GameObject.FindGameObjectWithTag("VolumeEffectsMain").GetComponent<Volume>();
|
||
postProcess.profile.TryGet(out liftGammaGain);
|
||
photomodeVolumeEffectsDepthOfField.profile.TryGet(out depthOfField);
|
||
photomodeVolumeBrightnessSaturation.profile.TryGet(out colorAdjustments);
|
||
//postProcess.profile.TryGet(out shadowsMidtonesHighlights);
|
||
if (eventSystem == null)
|
||
{
|
||
eventSystem = FindObjectOfType<EventSystem>();
|
||
}
|
||
}
|
||
|
||
private void Start()
|
||
{
|
||
//Here I save the values that the game starts with.
|
||
GainDefault = Gain;
|
||
saturationDefault = saturation;
|
||
exposureDefault = exposure;
|
||
DepthOfFieldDistanceDefault = DepthOfFieldDistance;
|
||
DepthOfFieldIntensityDefault = DepthOfFieldIntensity;
|
||
logoScaleDefault = LogoScale;
|
||
|
||
defaultButtonColor = new Color(255f, 255f, 255f, 255f);
|
||
selectedButtonColor = new Color(255f, 121f, 243f, 255f);
|
||
|
||
#region Buttons GetComponents Decleration
|
||
//UIManager.GetInstance().ColorFilter[UIManager.GetInstance().ColorFilter.Length]
|
||
CameraPanelButton = /*UIManager.GetInstance().CameraPanelButton.*/CameraPanelButton.gameObject.GetComponent<Button>();
|
||
DepthOfFieldPanelButton = /*UIManager.GetInstance().DepthOfFieldPanelButton.*/DepthOfFieldPanelButton.gameObject.GetComponent<Button>();
|
||
PicturePanelButton = /*UIManager.GetInstance().PicturePanelButton.*/PicturePanelButton.gameObject.GetComponent<Button>();
|
||
ColorFiltersPanelButton = /*UIManager.GetInstance().ColorFiltersPanelButton.*/ColorFiltersPanelButton.gameObject.GetComponent<Button>();
|
||
BordersPanelButton = /*UIManager.GetInstance().BordersPanelButton.*/BordersPanelButton.gameObject.GetComponent<Button>();
|
||
LogoPanelButton = /*UIManager.GetInstance().LogoPanelButton.*/LogoPanelButton.gameObject.GetComponent<Button>();
|
||
PosePanelButton = /*UIManager.GetInstance().PosePanelButton.*/PosePanelButton.gameObject.GetComponent<Button>();
|
||
DepthOfFieldON_Button = /*UIManager.GetInstance().DepthOfFieldON.*/DepthOfFieldON_Button.gameObject.GetComponent<Button>();
|
||
DepthOfFieldOFF_Button = /*UIManager.GetInstance().DepthOfFieldOFF.*/DepthOfFieldOFF_Button.gameObject.GetComponent<Button>();
|
||
LogoVisibilityON_Button = /*UIManager.GetInstance().LogoVisibilityON.*/LogoVisibilityON_Button.gameObject.GetComponent<Button>();
|
||
LogoVisibilityOFF_Button = /*UIManager.GetInstance().LogoVisibilityOFF.*/LogoVisibilityOFF_Button.gameObject.GetComponent<Button>();
|
||
PreviousLogoLeftButton = /*UIManager.GetInstance().PreviousLogoLeftButton.*/PreviousLogoLeftButton.gameObject.GetComponent<Button>();
|
||
NextLogoRightButton = /*UIManager.GetInstance().NextLogoRightButton.*/NextLogoRightButton.gameObject.GetComponent<Button>();
|
||
LogoPositionLeftButton = /*UIManager.GetInstance().LogoPositionLeftButton.*/LogoPositionLeftButton.gameObject.GetComponent<Button>();
|
||
LogoPositionRightButton = /*UIManager.GetInstance().LogoPositionRightButton.*/LogoPositionRightButton.gameObject.GetComponent<Button>();
|
||
ShowPlayeON = /*UIManager.GetInstance().ShowPlayeON.*/ShowPlayeON.gameObject.GetComponent<Button>();
|
||
ShowPlayerOFF = /*UIManager.GetInstance().ShowPlayerOFF.*/ShowPlayerOFF.gameObject.GetComponent<Button>();
|
||
ShowCompanionON = /*UIManager.GetInstance().ShowCompanionON.*/ShowCompanionON.gameObject.GetComponent<Button>();
|
||
ShowCompanionOFF = /*UIManager.GetInstance().ShowCompanionOFF.*/ShowCompanionOFF.gameObject.GetComponent<Button>();
|
||
PreviousFacePoseLeftButton = /*UIManager.GetInstance().PreviousFacePoseLeftButton.*/PreviousFacePoseLeftButton.gameObject.GetComponent<Button>();
|
||
NextFacePoseRightButton = /*UIManager.GetInstance().NextFacePoseRightButton.*/NextFacePoseRightButton.gameObject.GetComponent<Button>();
|
||
PreviousBodyPoseLeftButton = /*UIManager.GetInstance().PreviousBodyPoseLeftButton.*/PreviousBodyPoseLeftButton.gameObject.GetComponent<Button>();
|
||
NextBodyPoseRightButton = /*UIManager.GetInstance().NextBodyPoseRightButton.*/NextBodyPoseRightButton.gameObject.GetComponent<Button>();
|
||
PreviousOutfitLeftButton = PreviousOutfitLeftButton.gameObject.GetComponent<Button>();
|
||
NextOutfitRightButton = NextOutfitRightButton.gameObject.GetComponent<Button>();
|
||
QuitPhotomodeYesButton = /*UIManager.GetInstance().QuitPhotomodeYesButton.*/QuitPhotomodeYesButton.gameObject.GetComponent<Button>();
|
||
QuitPhotomodeNoButton = /*UIManager.GetInstance().QuitPhotomodeNoButton.*/QuitPhotomodeNoButton.gameObject.GetComponent<Button>();
|
||
ResetPhotographYesButton = /*UIManager.GetInstance().ResetPhotographYesButton.*/ResetPhotographYesButton.gameObject.GetComponent<Button>();
|
||
ResetPhotographNoButton = /*UIManager.GetInstance().ResetPhotographNoButton.*/ResetPhotographNoButton.gameObject.GetComponent<Button>();
|
||
|
||
ColorFilter[0] = /*UIManager.GetInstance().ColorFilter[0].*/ ColorFilter[0].gameObject.GetComponent<Button>();
|
||
ColorFilter[1] = /*UIManager.GetInstance().ColorFilter[1].*/ColorFilter[1].gameObject.GetComponent<Button>();
|
||
ColorFilter[2] = /*UIManager.GetInstance().ColorFilter[2].*/ColorFilter[2].gameObject.GetComponent<Button>();
|
||
ColorFilter[3] = /*UIManager.GetInstance().ColorFilter[3].*/ColorFilter[3].gameObject.GetComponent<Button>();
|
||
ColorFilter[4] = /*UIManager.GetInstance().ColorFilter[4].*/ColorFilter[4].gameObject.GetComponent<Button>();
|
||
ColorFilter[5] = /*UIManager.GetInstance().ColorFilter[5].*/ColorFilter[5].gameObject.GetComponent<Button>();
|
||
ColorFilter[6] = /*UIManager.GetInstance().ColorFilter[6].*/ColorFilter[6].gameObject.GetComponent<Button>();
|
||
ColorFilter[7] = /*UIManager.GetInstance().ColorFilter[7].*/ColorFilter[7].gameObject.GetComponent<Button>();
|
||
ColorFilter[8] = /*UIManager.GetInstance().ColorFilter[8].*/ColorFilter[8].gameObject.GetComponent<Button>();
|
||
|
||
BorderButton[0] = /*UIManager.GetInstance().BorderButton[0].*/BorderButton[0].gameObject.GetComponent<Button>();
|
||
BorderButton[1] = /*UIManager.GetInstance().BorderButton[1].*/BorderButton[1].gameObject.GetComponent<Button>();
|
||
BorderButton[2] = /*UIManager.GetInstance().BorderButton[2].*/BorderButton[2].gameObject.GetComponent<Button>();
|
||
BorderButton[3] = /*UIManager.GetInstance().BorderButton[3].*/BorderButton[3].gameObject.GetComponent<Button>();
|
||
BorderButton[4] = /*UIManager.GetInstance().BorderButton[4].*/BorderButton[4].gameObject.GetComponent<Button>();
|
||
BorderButton[5] = /*UIManager.GetInstance().BorderButton[5].*/BorderButton[5].gameObject.GetComponent<Button>();
|
||
BorderButton[6] = /*UIManager.GetInstance().BorderButton[6].*/BorderButton[6].gameObject.GetComponent<Button>();
|
||
|
||
//for (int i = 0; i < UIManager.GetInstance().ColorFilter.Length; i++)
|
||
//{
|
||
// ColorFilter[i] = UIManager.GetInstance().ColorFilter[i].GetComponent<Button>();
|
||
//}
|
||
//for (int i = 0; i < UIManager.GetInstance().ColorFilter.Length; i++)
|
||
//{
|
||
// ColorFilter.Add(UIManager.GetInstance().ColorFilter.Length);
|
||
// ColorFilter[i] = UIManager.GetInstance().ColorFilter[i].GetComponent<Button>();
|
||
//}
|
||
//BorderButton[BorderButton.Length] = UIManager.GetInstance().BorderButton[UIManager.GetInstance().BorderButton.Length].GetComponent<Button>();
|
||
#endregion
|
||
}
|
||
|
||
public void CaptureScreenshot()
|
||
{
|
||
//ScreenCapture.CaptureScreenshot("PhotoMode Screenshots");
|
||
//print("Screenshot taken");
|
||
}
|
||
|
||
#region Logo Positions
|
||
public enum LogoPositions
|
||
{
|
||
TopLeft,
|
||
TopCenter,
|
||
TopRight,
|
||
Left,
|
||
Center,
|
||
Right,
|
||
BottomLeft,
|
||
BottomCenter,
|
||
BottomRight
|
||
}
|
||
|
||
public LogoPositions stage = LogoPositions.TopLeft;
|
||
|
||
public void LogoPositionUpdate()
|
||
{
|
||
RectTransform logoRect = _LogoList[_indexLogos].GetComponent<RectTransform>();
|
||
|
||
switch (stage)
|
||
{
|
||
case LogoPositions.TopLeft:
|
||
UpdateLogoPosition(_topLeftPosition, "Top Left");
|
||
break;
|
||
case LogoPositions.TopCenter:
|
||
UpdateLogoPosition(_topCenterPosition, "Top Center");
|
||
break;
|
||
case LogoPositions.TopRight:
|
||
UpdateLogoPosition(_topRightPosition, "Top Right");
|
||
break;
|
||
case LogoPositions.Left:
|
||
UpdateLogoPosition(_leftPosition, "Left");
|
||
break;
|
||
case LogoPositions.Center:
|
||
UpdateLogoPosition(_centerPosition, "Center");
|
||
break;
|
||
case LogoPositions.Right:
|
||
UpdateLogoPosition(_rightPosition, "Right");
|
||
break;
|
||
case LogoPositions.BottomLeft:
|
||
UpdateLogoPosition(_bottomLeftPosition, "Bottom Left");
|
||
break;
|
||
case LogoPositions.BottomCenter:
|
||
UpdateLogoPosition(_bottomCenterPosition, "Bottom Center");
|
||
break;
|
||
case LogoPositions.BottomRight:
|
||
UpdateLogoPosition(_bottomRightPosition, "Bottom Right");
|
||
break;
|
||
}
|
||
|
||
// Ενημέρωση του μεγέθους του λογοτύπου
|
||
LogoScaleUpdater(logoRect.transform);
|
||
}
|
||
|
||
private void UpdateLogoPosition(Transform positionObject, string positionText)
|
||
{
|
||
if (positionObject == null || _logos == null) return;
|
||
|
||
RectTransform logoRect = _LogoList[_indexLogos].GetComponent<RectTransform>();
|
||
RectTransform positionRect = positionObject.GetComponent<RectTransform>();
|
||
|
||
if (logoRect != null && positionRect != null)
|
||
{
|
||
// Αντιγραφή θέσης
|
||
logoRect.anchoredPosition = positionRect.anchoredPosition;
|
||
|
||
// Αντιγραφή min & max anchor
|
||
logoRect.anchorMin = positionRect.anchorMin;
|
||
logoRect.anchorMax = positionRect.anchorMax;
|
||
|
||
// Αντιγραφή offset αν χρειάζεται
|
||
logoRect.offsetMin = positionRect.offsetMin;
|
||
logoRect.offsetMax = positionRect.offsetMax;
|
||
|
||
// Αντιγραφή pivot αν χρειάζεται
|
||
logoRect.pivot = positionRect.pivot;
|
||
}
|
||
|
||
_logoPositionText.text = positionText;
|
||
}
|
||
|
||
public void LogoScaleUpdater(Transform scalableObj)
|
||
{
|
||
scalableObj.localScale = new Vector3(LogoScale, LogoScale, LogoScale);
|
||
}
|
||
|
||
public void ChangeLogoPosition()
|
||
{
|
||
if (Input.GetKeyDown(KeyCode.RightArrow))
|
||
{
|
||
NextLogoPosition();
|
||
}
|
||
|
||
if (Input.GetKeyDown(KeyCode.LeftArrow))
|
||
{
|
||
PreviousLogoPosition();
|
||
}
|
||
}
|
||
|
||
public void ChangeLogo()
|
||
{
|
||
if (Input.GetKeyDown(KeyCode.Alpha2))
|
||
{
|
||
#region NextLogo
|
||
_indexLogos++;
|
||
if(_indexLogos >= _LogoList.Count)
|
||
{
|
||
_indexLogos = _LogoList.Count - 1;
|
||
return;
|
||
}
|
||
_LogoList[_indexLogos].SetActive(true);
|
||
if (_indexLogos > 0) _LogoList[_indexLogos - 1].SetActive(false);
|
||
else _LogoList[_LogoList.Count - 1].SetActive(false);
|
||
#endregion
|
||
}
|
||
if (Input.GetKeyDown(KeyCode.Alpha1))
|
||
{
|
||
#region PreviousLogo
|
||
_indexLogos--;
|
||
if (_indexLogos < 0)
|
||
{
|
||
_indexLogos = 0;
|
||
Debug.Log("Index can't be smaller than 0");
|
||
return;
|
||
}
|
||
_LogoList[_indexLogos].SetActive(true);
|
||
if (_indexLogos + 1 < _LogoList.Count)
|
||
{
|
||
_LogoList[_indexLogos + 1].SetActive(false);
|
||
Debug.Log("Previous logo");
|
||
}
|
||
#endregion
|
||
}
|
||
}
|
||
#endregion
|
||
|
||
public enum ModeState
|
||
{
|
||
Photomode,
|
||
Lightmode
|
||
}
|
||
public ModeState modeState = ModeState.Photomode;
|
||
|
||
public void PhotomodeModeUpdate()
|
||
{
|
||
switch (modeState)
|
||
{
|
||
case ModeState.Photomode:
|
||
PhotographerMode();
|
||
break;
|
||
case ModeState.Lightmode:
|
||
LightModeManager.GetInstance().LightModeStatesUpdate();
|
||
HUDVisibility();
|
||
//LightModeManager.GetInstance().LightModeSelectALight_Mode();
|
||
break;
|
||
default:
|
||
break;
|
||
}
|
||
}
|
||
|
||
public void EnableLightMode()
|
||
{
|
||
CurrentModeIndex = 1;
|
||
LightModeManager.GetInstance().SelectLightOrEditLightIndex = 0;
|
||
PhotomodeModeText.text = "Lightmode";
|
||
LightModeManager.GetInstance().LightModePanel.SetActive(true);
|
||
_PhotoModePanel.SetActive(false);
|
||
freeCameraLogic.enabled = false;
|
||
_lightmodeButton.gameObject.SetActive(true);
|
||
_photomodeButton.gameObject.SetActive(false);
|
||
IsInLightMode = true;
|
||
modeState = ModeState.Lightmode;
|
||
}
|
||
|
||
public void EnablePhotomode()
|
||
{
|
||
CurrentModeIndex = 0;
|
||
PhotomodeModeText.text = "Photomode";
|
||
LightModeManager.GetInstance().LightModePanel.SetActive(false);
|
||
_PhotoModePanel.SetActive(true);
|
||
freeCameraLogic.enabled = true;
|
||
_lightmodeButton.gameObject.SetActive(false);
|
||
_photomodeButton.gameObject.SetActive(true);
|
||
IsInLightMode = false;
|
||
//LightModeManager.GetInstance().DisableCurrentSpotLightMovement();
|
||
//LightModeManager.GetInstance().LightIndexUpdate();
|
||
modeState = ModeState.Photomode;
|
||
}
|
||
|
||
public void NextMode()
|
||
{
|
||
CurrentModeIndex += 1;
|
||
if(CurrentModeIndex > 1)
|
||
{
|
||
CurrentModeIndex = 0;
|
||
}
|
||
|
||
if(CurrentModeIndex == 1)
|
||
{
|
||
EnableLightMode();
|
||
}
|
||
else
|
||
{
|
||
EnablePhotomode();
|
||
}
|
||
}
|
||
|
||
public void PreviousMode()
|
||
{
|
||
CurrentModeIndex -= 1;
|
||
if (CurrentModeIndex < 0)
|
||
{
|
||
CurrentModeIndex = 1;
|
||
}
|
||
|
||
if (CurrentModeIndex == 1)
|
||
{
|
||
EnableLightMode();
|
||
}
|
||
else
|
||
{
|
||
EnablePhotomode();
|
||
}
|
||
}
|
||
|
||
public enum PhotoModeState
|
||
{
|
||
None,
|
||
Camera,
|
||
DepthOfField,
|
||
Picture,
|
||
ColorFilters,
|
||
Borders,
|
||
Logo,
|
||
Pose,
|
||
DisableEveryPanel
|
||
}
|
||
|
||
public PhotoModeState state = PhotoModeState.None;
|
||
|
||
public void PhotographerMode()
|
||
{
|
||
switch (state)
|
||
{
|
||
case PhotoModeState.None:
|
||
break;
|
||
case PhotoModeState.Camera:
|
||
UpdateButtonPanelStates();
|
||
HUDVisibility();
|
||
#region Panels
|
||
_PhotoModePanel.SetActive(true);
|
||
_cameraPanel.SetActive(true);
|
||
_DepthOfFieldPanel.SetActive(false);
|
||
_picturePanel.SetActive(false);
|
||
_colorFiltersPanel.SetActive(false);
|
||
_bordersPanel.SetActive(false);
|
||
_logoPanel.SetActive(false);
|
||
_posePanel.SetActive(false);
|
||
#endregion
|
||
#region Animators
|
||
_cameraUIAnimator.enabled = true;
|
||
_depthOfFieldUIAnimator.enabled = false;
|
||
_pictureUIAnimator.enabled = false;
|
||
_colorFiltersUIAnimator.enabled = false;
|
||
_bordersUIAnimator.enabled = false;
|
||
_logoUIAnimator.enabled = false;
|
||
_PoseUIAnimator.enabled = false;
|
||
#endregion
|
||
#region Button Selected Colors
|
||
//ColorBlock Cb_CameraPanelButton = new ColorBlock();
|
||
//Cb_CameraPanelButton.normalColor = selectedButtonColor;
|
||
//Cb_CameraPanelButton.colorMultiplier = 1;
|
||
//CameraPanelButton.colors = Cb_CameraPanelButton;
|
||
|
||
//ColorBlock Cb_DepthOfFieldPanelButton = DepthOfFieldPanelButton.colors;
|
||
//Cb_DepthOfFieldPanelButton.normalColor = defaultButtonColor;
|
||
//DepthOfFieldPanelButton.colors = Cb_DepthOfFieldPanelButton;
|
||
|
||
//ColorBlock Cb_PicturePanelButton = PicturePanelButton.colors;
|
||
//Cb_PicturePanelButton.normalColor = defaultButtonColor;
|
||
//DepthOfFieldPanelButton.colors = Cb_PicturePanelButton;
|
||
|
||
//ColorBlock Cb_ColorFiltersPanelButton = ColorFiltersPanelButton.colors;
|
||
//Cb_ColorFiltersPanelButton.normalColor = defaultButtonColor;
|
||
//ColorFiltersPanelButton.colors = Cb_ColorFiltersPanelButton;
|
||
|
||
//ColorBlock Cb_BordersPanelButton = BordersPanelButton.colors;
|
||
//Cb_BordersPanelButton.normalColor = defaultButtonColor;
|
||
//BordersPanelButton.colors = Cb_BordersPanelButton;
|
||
|
||
//ColorBlock Cb_LogoPanelButton = LogoPanelButton.colors;
|
||
//Cb_LogoPanelButton.normalColor = defaultButtonColor;
|
||
//LogoPanelButton.colors = Cb_LogoPanelButton;
|
||
|
||
//ColorBlock Cb_PosePanelButton = PosePanelButton.colors;
|
||
//Cb_PosePanelButton.normalColor = defaultButtonColor;
|
||
//PosePanelButton.colors = Cb_PosePanelButton;
|
||
#endregion
|
||
#region Selected Button
|
||
//eventSystem.firstSelectedGameObject = _cameraFieldOfViewSlider.gameObject;
|
||
#endregion
|
||
//PhotomodeControllerManager.GetInstance().ControllerNavigation_CameraPhotomodePanel();
|
||
CurrentPanelIndex = 1;
|
||
#region Sliders
|
||
//if (CanHoldDownSlider) //When you are changing the value from the slider.
|
||
//{
|
||
// FreeCamera.GetInstance().cameraRoll = _cameraRollSlider.value;
|
||
// FreeCamera.GetInstance().transform.localEulerAngles = new Vector3(FreeCamera.GetInstance().newRotationY, FreeCamera.GetInstance().newRotationX, FreeCamera.GetInstance().cameraRoll);
|
||
//}
|
||
//else //When you are changing the value fron the Keyboard.
|
||
//{
|
||
// _cameraRollSlider.value = FreeCamera.GetInstance().cameraRoll;
|
||
// CanHoldDownSlider = false;
|
||
//}
|
||
//FreeCamera.GetInstance().fieldOfView = _cameraFieldOfViewSlider.value; //Changes the camera's field of view value from the slider.
|
||
#endregion
|
||
break;
|
||
case PhotoModeState.DepthOfField:
|
||
UpdateButtonPanelStates();
|
||
HUDVisibility();
|
||
#region Panels
|
||
_cameraPanel.SetActive(false);
|
||
_DepthOfFieldPanel.SetActive(true);
|
||
_picturePanel.SetActive(false);
|
||
_colorFiltersPanel.SetActive(false);
|
||
_bordersPanel.SetActive(false);
|
||
_logoPanel.SetActive(false);
|
||
_posePanel.SetActive(false);
|
||
#endregion
|
||
#region Animators
|
||
_cameraUIAnimator.enabled = false;
|
||
_depthOfFieldUIAnimator.enabled = true;
|
||
_pictureUIAnimator.enabled = false;
|
||
_colorFiltersUIAnimator.enabled = false;
|
||
_bordersUIAnimator.enabled = false;
|
||
_logoUIAnimator.enabled = false;
|
||
_PoseUIAnimator.enabled = false;
|
||
#endregion
|
||
#region Button Selected Colors
|
||
//CameraPanelButton.image.color = new Color(255f, 255f, 255f);
|
||
//DepthOfFieldPanelButton.image.color = new Color(255f, 121f, 243f);
|
||
//PicturePanelButton.image.color = new Color(255f, 255f, 255f);
|
||
//ColorFiltersPanelButton.image.color = new Color(255f, 255f, 255f);
|
||
//BordersPanelButton.image.color = new Color(255f, 255f, 255f);
|
||
//LogoPanelButton.image.color = new Color(255f, 255f, 255f);
|
||
//PosePanelButton.image.color = new Color(255f, 255f, 255f);
|
||
#endregion
|
||
#region Sliders
|
||
DepthOfFieldDistance = _DepthOfFieldNearBlurSlider.value;
|
||
DepthOfFieldIntensity = _DepthOfFieldFarBlurSlider.value;
|
||
#endregion
|
||
//PhotomodeControllerManager.GetInstance().ControllerNavigation_DepthOfFieldPanel();
|
||
CurrentPanelIndex = 2;
|
||
UpdateDepthOfField();
|
||
//UpdateDepthOfFieldButtonsStates();
|
||
break;
|
||
case PhotoModeState.Picture:
|
||
UpdateButtonPanelStates();
|
||
HUDVisibility();
|
||
#region Panels
|
||
_cameraPanel.SetActive(false);
|
||
_DepthOfFieldPanel.SetActive(false);
|
||
_picturePanel.SetActive(true);
|
||
_colorFiltersPanel.SetActive(false);
|
||
_bordersPanel.SetActive(false);
|
||
_logoPanel.SetActive(false);
|
||
_posePanel.SetActive(false);
|
||
#endregion
|
||
#region Animators
|
||
_cameraUIAnimator.enabled = false;
|
||
_depthOfFieldUIAnimator.enabled = false;
|
||
_pictureUIAnimator.enabled = true;
|
||
_colorFiltersUIAnimator.enabled = false;
|
||
_bordersUIAnimator.enabled = false;
|
||
_logoUIAnimator.enabled = false;
|
||
_PoseUIAnimator.enabled = false;
|
||
#endregion
|
||
#region Button Selected Colors
|
||
//CameraPanelButton.image.color = new Color(255f, 255f, 255f);
|
||
//DepthOfFieldPanelButton.image.color = new Color(255f, 255f, 255f);
|
||
//PicturePanelButton.image.color = new Color(255f, 121f, 243f);
|
||
//ColorFiltersPanelButton.image.color = new Color(255f, 255f, 255f);
|
||
//BordersPanelButton.image.color = new Color(255f, 255f, 255f);
|
||
//LogoPanelButton.image.color = new Color(255f, 255f, 255f);
|
||
//PosePanelButton.image.color = new Color(255f, 255f, 255f);
|
||
#endregion
|
||
#region Sliders
|
||
Gain = _BrightnessSlider.value;
|
||
saturation = _SaturationSlider.value;
|
||
exposure = _exposureSlider.value;
|
||
#endregion
|
||
UpdateColorGrading();
|
||
#region Selected Button
|
||
eventSystem.firstSelectedGameObject = _BrightnessSlider.gameObject;
|
||
#endregion
|
||
//PhotomodeControllerManager.GetInstance().ControllerNavigation_Picture();
|
||
CurrentPanelIndex = 3;
|
||
break;
|
||
case PhotoModeState.ColorFilters:
|
||
UpdateButtonPanelStates();
|
||
HUDVisibility();
|
||
#region Panels
|
||
_cameraPanel.SetActive(false);
|
||
_DepthOfFieldPanel.SetActive(false);
|
||
_picturePanel.SetActive(false);
|
||
_colorFiltersPanel.SetActive(true);
|
||
_bordersPanel.SetActive(false);
|
||
_logoPanel.SetActive(false);
|
||
_posePanel.SetActive(false);
|
||
#endregion
|
||
#region Animators
|
||
_cameraUIAnimator.enabled = false;
|
||
_depthOfFieldUIAnimator.enabled = false;
|
||
_pictureUIAnimator.enabled = false;
|
||
_colorFiltersUIAnimator.enabled = true;
|
||
_bordersUIAnimator.enabled = false;
|
||
_logoUIAnimator.enabled = false;
|
||
_PoseUIAnimator.enabled = false;
|
||
#endregion
|
||
#region Sliders
|
||
ColorFiltersManager.GetInstance().filterIntensity = _colorFilterIntensitySlider.value;
|
||
//ColorFiltersManager.GetInstance().UpdateColorGradingFilters();
|
||
ColorFiltersManager.GetInstance().UpdateColorFiltersWeight();
|
||
#endregion
|
||
UpdateColorFiltersButtonStates();
|
||
//PhotomodeControllerManager.GetInstance().ControllerNavigation_ColorFilters();
|
||
CurrentPanelIndex = 4;
|
||
break;
|
||
case PhotoModeState.Borders:
|
||
UpdateButtonPanelStates();
|
||
HUDVisibility();
|
||
#region Panels
|
||
_cameraPanel.SetActive(false);
|
||
_DepthOfFieldPanel.SetActive(false);
|
||
_picturePanel.SetActive(false);
|
||
_colorFiltersPanel.SetActive(false);
|
||
_bordersPanel.SetActive(true);
|
||
_logoPanel.SetActive(false);
|
||
_posePanel.SetActive(false);
|
||
#endregion
|
||
#region Animators
|
||
_cameraUIAnimator.enabled = false;
|
||
_depthOfFieldUIAnimator.enabled = false;
|
||
_pictureUIAnimator.enabled = false;
|
||
_colorFiltersUIAnimator.enabled = false;
|
||
_bordersUIAnimator.enabled = true;
|
||
_logoUIAnimator.enabled = false;
|
||
_PoseUIAnimator.enabled = false;
|
||
#endregion
|
||
UpdateBordersButtons();
|
||
//PhotomodeControllerManager.GetInstance().ControllerNavigation_Borders();
|
||
CurrentPanelIndex = 5;
|
||
break;
|
||
case PhotoModeState.Logo:
|
||
UpdateButtonPanelStates();
|
||
HUDVisibility();
|
||
#region Panels
|
||
_cameraPanel.SetActive(false);
|
||
_DepthOfFieldPanel.SetActive(false);
|
||
_picturePanel.SetActive(false);
|
||
_colorFiltersPanel.SetActive(false);
|
||
_bordersPanel.SetActive(false);
|
||
_logoPanel.SetActive(true);
|
||
_posePanel.SetActive(false);
|
||
#endregion
|
||
#region Animators
|
||
_cameraUIAnimator.enabled = false;
|
||
_depthOfFieldUIAnimator.enabled = false;
|
||
_pictureUIAnimator.enabled = false;
|
||
_colorFiltersUIAnimator.enabled = false;
|
||
_bordersUIAnimator.enabled = false;
|
||
_logoUIAnimator.enabled = true;
|
||
_PoseUIAnimator.enabled = false;
|
||
#endregion
|
||
#region Sliders
|
||
LogoScale = _logoScaleSlider.value;
|
||
#endregion
|
||
//UpdateLogoButtonStates();
|
||
UpdateLogoPanel();
|
||
LogoPositionUpdate();
|
||
ChangeLogoPosition();
|
||
//PhotomodeControllerManager.GetInstance().ControllerNavigation_Logo();
|
||
CurrentPanelIndex = 6;
|
||
break;
|
||
case PhotoModeState.Pose:
|
||
PoseManager.Getinstance().UpdateFaceRenderer();
|
||
UpdateButtonPanelStates();
|
||
HUDVisibility();
|
||
#region Panels
|
||
_cameraPanel.SetActive(false);
|
||
_DepthOfFieldPanel.SetActive(false);
|
||
_picturePanel.SetActive(false);
|
||
_colorFiltersPanel.SetActive(false);
|
||
_bordersPanel.SetActive(false);
|
||
_logoPanel.SetActive(false);
|
||
_posePanel.SetActive(true);
|
||
#endregion
|
||
#region Animators
|
||
_cameraUIAnimator.enabled = false;
|
||
_depthOfFieldUIAnimator.enabled = false;
|
||
_pictureUIAnimator.enabled = false;
|
||
_colorFiltersUIAnimator.enabled = false;
|
||
_bordersUIAnimator.enabled = false;
|
||
_logoUIAnimator.enabled = false;
|
||
_PoseUIAnimator.enabled = true;
|
||
#endregion
|
||
UpdatePoseButtonStates();
|
||
UpdatePosePanel();
|
||
//PhotomodeControllerManager.GetInstance().ControllerNavigation_Pose();
|
||
CurrentPanelIndex = 7;
|
||
break;
|
||
case PhotoModeState.DisableEveryPanel:
|
||
_PhotoModePanel.SetActive(false);
|
||
LightModeManager.GetInstance().LightModePanel.SetActive(false);
|
||
_photomodeSelectModePanel.SetActive(false);
|
||
//Time.timeScale = 1f; //Reset the timescale back to normal.
|
||
state = PhotoModeState.None;
|
||
break;
|
||
}
|
||
}
|
||
|
||
public void CameraSlidersUpdate()
|
||
{
|
||
#region Sliders
|
||
if (CanHoldDownSlider) //When you are changing the value from the slider.
|
||
{
|
||
FreeCamera.GetInstance().cameraRoll = _cameraRollSlider.value;
|
||
FreeCamera.GetInstance().transform.localEulerAngles = new Vector3(FreeCamera.GetInstance().newRotationY, FreeCamera.GetInstance().newRotationX, FreeCamera.GetInstance().cameraRoll);
|
||
}
|
||
else //When you are changing the value fron the Keyboard.
|
||
{
|
||
_cameraRollSlider.value = FreeCamera.GetInstance().cameraRoll;
|
||
CanHoldDownSlider = false;
|
||
}
|
||
FreeCamera.GetInstance().fieldOfView = _cameraFieldOfViewSlider.value; //Changes the camera's field of view value from the slider.
|
||
#endregion
|
||
}
|
||
|
||
IEnumerator UpdateCameraSlidersAfterSecs()
|
||
{
|
||
updateCameraSliders = false;
|
||
yield return new WaitForSecondsRealtime(0.01f);
|
||
updateCameraSliders = true;
|
||
}
|
||
|
||
// Update is called once per frame
|
||
void Update()
|
||
{
|
||
//PhotographerMode();
|
||
PhotomodeModeUpdate();
|
||
|
||
#region Open or Close Photomode
|
||
if (/*Input.GetKeyDown(KeyCode.Escape)*/ HasPressedToOpenPhotoMode && !photoModeOpen/* && InventoryManager.GetInstance()._inventoryOpen == false*/ /*COMMENTED OUT TODAY 05.05.2025*/)
|
||
{
|
||
state = PhotoModeState.Camera;
|
||
Time.timeScale = 0f;
|
||
photoModeOpen = true;
|
||
Cursor.visible = true;
|
||
Cursor.lockState = CursorLockMode.None;
|
||
#region Cameras Update
|
||
StartCoroutine(UpdateCameraSlidersAfterSecs());
|
||
UpdateFreeCameraPositionRotation();
|
||
freeCamera.gameObject.SetActive(true);
|
||
FreeCamera.GetInstance().enabled = true;
|
||
FreeCameraClippingPlanesValueChange();
|
||
//PlayerManager.GetInstance().DisablePlayerCameraMovement();
|
||
PlayerManager.GetInstance().PlayerMainCamera.SetActive(false);
|
||
#endregion
|
||
#region Player
|
||
//PlayerManager.GetInstance().DisablePlayerMovement();
|
||
//PlayerManager.GetInstance().PlayerMovementCannotBeEnabled();
|
||
PoseManager.Getinstance().temporarilySavedPlayerPos = PlayerManager.GetInstance().playerGameObj.transform.position;
|
||
PoseManager.Getinstance().temporarilySavedPlayerRot = PlayerManager.GetInstance().playerGameObj.transform.rotation;
|
||
#endregion
|
||
#region Animation & State Save
|
||
PoseManager.Getinstance().SaveAnimatorStateAndAnimationFrame();
|
||
#endregion
|
||
#region Pose Update
|
||
PoseLookAt.GetInstance().ValuesUpdate();
|
||
PoseManager.Getinstance().UpdateFaceRendererValues();
|
||
PoseManager.Getinstance().Cry_NoseBleed_SmoothnessDefaultValues(); //Saves the default values.
|
||
PoseManager.Getinstance().EyeMotionDefaultValues(); //Saves the default values.
|
||
PoseManager.Getinstance().EyesMotionOFF();
|
||
PoseManager.Getinstance().PlayerBodyUpdate();
|
||
PoseManager.Getinstance().PlayerFaceUpdate();
|
||
PoseManager.Getinstance().SetCharacterFingers();
|
||
#endregion
|
||
#region HUD Update
|
||
HideHUD = false;
|
||
visibility = HUD.DisplayHUD;
|
||
EnablePhotomode();
|
||
#endregion
|
||
if (InventoryManager.GetInstance() != null)
|
||
{
|
||
//COMMENTED OUT TODAY 05.05.2025
|
||
//InventoryManager.GetInstance().canOpenInventory = false;
|
||
}
|
||
}
|
||
else if (Input.GetKeyDown(KeyCode.Escape) && HasPressedToOpenPhotoMode && photoModeOpen && quitPhotomodePanelOn == false && canQuitPhotomodePanel || Input.GetKeyDown(KeyCode.JoystickButton1) && HasPressedToOpenPhotoMode && photoModeOpen && quitPhotomodePanelOn == false && canQuitPhotomodePanel)
|
||
{
|
||
QuitPhotomodePanelQuestion();
|
||
}
|
||
#endregion
|
||
|
||
if (photoModeOpen)
|
||
{
|
||
#region Controller
|
||
if (InputControlManager.Getinstance().IsUsingJoystick)
|
||
{
|
||
if (!IsInLightMode)
|
||
{
|
||
if (Input.GetKeyDown(KeyCode.JoystickButton5))
|
||
{
|
||
CurrentPanelIndex++;
|
||
if (CurrentPanelIndex > 7)
|
||
{
|
||
CurrentPanelIndex = 1;
|
||
}
|
||
switch (CurrentPanelIndex)
|
||
{
|
||
case 1:
|
||
state = PhotoModeState.Camera;
|
||
break;
|
||
case 2:
|
||
state = PhotoModeState.DepthOfField;
|
||
break;
|
||
case 3:
|
||
state = PhotoModeState.Picture;
|
||
break;
|
||
case 4:
|
||
state = PhotoModeState.ColorFilters;
|
||
break;
|
||
case 5:
|
||
state = PhotoModeState.Borders;
|
||
break;
|
||
case 6:
|
||
state = PhotoModeState.Logo;
|
||
break;
|
||
case 7:
|
||
state = PhotoModeState.Pose;
|
||
break;
|
||
}
|
||
}
|
||
else if (Input.GetKeyDown(KeyCode.JoystickButton4))
|
||
{
|
||
CurrentPanelIndex--;
|
||
if (CurrentPanelIndex < 1)
|
||
{
|
||
CurrentPanelIndex = 7;
|
||
}
|
||
switch (CurrentPanelIndex)
|
||
{
|
||
case 1:
|
||
state = PhotoModeState.Camera;
|
||
break;
|
||
case 2:
|
||
state = PhotoModeState.DepthOfField;
|
||
break;
|
||
case 3:
|
||
state = PhotoModeState.Picture;
|
||
break;
|
||
case 4:
|
||
state = PhotoModeState.ColorFilters;
|
||
break;
|
||
case 5:
|
||
state = PhotoModeState.Borders;
|
||
break;
|
||
case 6:
|
||
state = PhotoModeState.Logo;
|
||
break;
|
||
case 7:
|
||
state = PhotoModeState.Pose;
|
||
break;
|
||
}
|
||
}
|
||
}
|
||
#region Change mode
|
||
if (Input.GetKeyDown(KeyCode.Joystick1Button0) && quitPhotomodePanelOn == false && resetPhotographPanelOn == false)
|
||
{
|
||
NextMode();
|
||
LightModeManager.GetInstance().LightModeSelectALight_Mode();
|
||
LightModeManager.GetInstance().SelectALight();
|
||
}
|
||
#endregion
|
||
}
|
||
#endregion
|
||
|
||
if (updateCameraSliders)
|
||
{
|
||
CameraSlidersUpdate();
|
||
}
|
||
|
||
if (quitPhotomodePanelOn)
|
||
{
|
||
if (Input.GetKeyDown(KeyCode.Return) || Input.GetKeyDown(KeyCode.JoystickButton0))
|
||
{
|
||
QuitPhotomode();
|
||
}
|
||
else if (Input.GetKeyDown(KeyCode.Escape) || Input.GetKeyDown(KeyCode.JoystickButton1))
|
||
{
|
||
DoNotQuitPhotomode();
|
||
}
|
||
}
|
||
|
||
#region Grids Input
|
||
|
||
if ((Input.GetKeyDown(KeyCode.T) || Input.GetKeyDown(KeyCode.JoystickButton2)) && grid0IsEnabled == false && grid1IsEnabled == false)
|
||
{
|
||
Grid0Enabled();
|
||
}
|
||
else if ((Input.GetKeyDown(KeyCode.T) || Input.GetKeyDown(KeyCode.JoystickButton2)) && grid0IsEnabled)
|
||
{
|
||
Grid1Enabled();
|
||
}
|
||
else if ((Input.GetKeyDown(KeyCode.T) || Input.GetKeyDown(KeyCode.JoystickButton2)) && grid1IsEnabled)
|
||
{
|
||
GridsDisabled();
|
||
}
|
||
#endregion
|
||
|
||
#region Capture screenshot
|
||
|
||
if (Input.GetKeyDown(KeyCode.P) || Input.GetKeyDown(KeyCode.JoystickButton6))
|
||
{
|
||
CaptureScreenshot();
|
||
}
|
||
|
||
#endregion
|
||
|
||
#region Reset Settings
|
||
if (Input.GetKeyDown(KeyCode.R/*R = Reset*/) && resetPhotographPanelOn == false && canResetPhotograph || Input.GetKeyDown(KeyCode.JoystickButton9) && resetPhotographPanelOn == false && canResetPhotograph)
|
||
{
|
||
ResetPhotographPanelQuestion();
|
||
}
|
||
if (resetPhotographPanelOn)
|
||
{
|
||
if (Input.GetKeyDown(KeyCode.Return) || Input.GetKeyDown(KeyCode.JoystickButton0))
|
||
{
|
||
ResetSettings();
|
||
}
|
||
else if (Input.GetKeyDown(KeyCode.Escape) || Input.GetKeyDown(KeyCode.JoystickButton1))
|
||
{
|
||
DoNotResetPhotograph();
|
||
}
|
||
}
|
||
#endregion
|
||
}
|
||
}
|
||
|
||
#region Grids
|
||
public void Grid0Enabled()
|
||
{
|
||
_grid.SetActive(true);
|
||
_grid1.SetActive(false);
|
||
grid0IsEnabled = true;
|
||
grid1IsEnabled = false;
|
||
}
|
||
|
||
public void Grid1Enabled()
|
||
{
|
||
_grid.SetActive(false);
|
||
_grid1.SetActive(true);
|
||
grid0IsEnabled = false;
|
||
grid1IsEnabled = true;
|
||
}
|
||
|
||
public void GridsDisabled()
|
||
{
|
||
_grid.SetActive(false);
|
||
_grid1.SetActive(false);
|
||
grid0IsEnabled = false;
|
||
grid1IsEnabled = false;
|
||
}
|
||
#endregion
|
||
|
||
#region Quit Photomode
|
||
public void QuitPhotomodePanelQuestion()
|
||
{
|
||
Debug.Log("Exited photomode");
|
||
StartCoroutine(quitPhotomodePanelOnTrue());
|
||
_QuitPhotomodePanel.SetActive(true);
|
||
UpdateQuitPhotomodePanelButtons();
|
||
FreeCamera.GetInstance().enabled = false;
|
||
canResetPhotograph = false;
|
||
}
|
||
|
||
IEnumerator quitPhotomodePanelOnTrue()
|
||
{
|
||
yield return new WaitForSecondsRealtime(0.1f);
|
||
quitPhotomodePanelOn = true;
|
||
}
|
||
|
||
public void DoNotQuitPhotomode()
|
||
{
|
||
quitPhotomodePanelOn = false;
|
||
_QuitPhotomodePanel.SetActive(false);
|
||
if (!IsInLightMode)
|
||
{
|
||
FreeCamera.GetInstance().enabled = true;
|
||
}
|
||
canResetPhotograph = true;
|
||
}
|
||
|
||
public void QuitPhotomode()
|
||
{
|
||
modeState = ModeState.Photomode;
|
||
state = PhotoModeState.DisableEveryPanel;
|
||
quitPhotomodePanelOn = false;
|
||
photoModeOpen = false;
|
||
HasPressedToOpenPhotoMode = false;
|
||
canResetPhotograph = true;
|
||
ResetSettings();
|
||
_QuitPhotomodePanel.SetActive(false);
|
||
//Cursor.lockState = CursorLockMode.Locked;
|
||
//Cursor.visible = false;
|
||
#region Pause Game Menu
|
||
PauseMenu.GetInstance().GoToPauseMenuHome();
|
||
#endregion
|
||
#region Cameras Update
|
||
PlayerManager.GetInstance().PlayerMainCamera.SetActive(true);
|
||
PlayerCameraDecideIfEnabled();
|
||
freeCamera.gameObject.SetActive(false);
|
||
#endregion
|
||
#region Player
|
||
|
||
//PlayersManager.GetInstance()._PlayerController.enabled = true;
|
||
#endregion
|
||
}
|
||
#endregion
|
||
|
||
#region Reset Photograph
|
||
public void ResetPhotographPanelQuestion()
|
||
{
|
||
StartCoroutine(ResetPhotographPanelOnTrue());
|
||
_ResetPhotographPanel.SetActive(true);
|
||
UpdateResetPhotographPanelButtons();
|
||
FreeCamera.GetInstance().enabled = false;
|
||
canQuitPhotomodePanel = false;
|
||
}
|
||
|
||
IEnumerator ResetPhotographPanelOnTrue()
|
||
{
|
||
yield return new WaitForSecondsRealtime(0.1f);
|
||
resetPhotographPanelOn = true;
|
||
}
|
||
|
||
public void DoNotResetPhotograph()
|
||
{
|
||
resetPhotographPanelOn = false;
|
||
_ResetPhotographPanel.SetActive(false);
|
||
if (!IsInLightMode)
|
||
{
|
||
FreeCamera.GetInstance().enabled = true;
|
||
}
|
||
canQuitPhotomodePanel = true;
|
||
}
|
||
#endregion
|
||
|
||
public void UpdateFreeCameraPositionRotation()
|
||
{
|
||
freeCamera.position = PlayerManager.GetInstance().PlayerMainCamera.transform.position;
|
||
freeCamera.rotation = PlayerManager.GetInstance().PlayerMainCamera.transform.rotation;
|
||
}
|
||
|
||
public void UpdateColorGrading()
|
||
{
|
||
//liftGammaGain.gain.value = new Vector4(Gain, Gain, Gain, Gain); //Brightness
|
||
//Vector4 GainValue = new Vector4(Gain, Gain, Gain, Gain);
|
||
//shadowsMidtonesHighlights.shadows = new Vector4Parameter(GainValue, true);
|
||
//shadowsMidtonesHighlights.midtones = new Vector4Parameter(GainValue, true);
|
||
//shadowsMidtonesHighlights.highlights = new Vector4Parameter(GainValue, true);
|
||
|
||
colorAdjustments.saturation.value = saturation;
|
||
colorAdjustments.postExposure.value = exposure;
|
||
}
|
||
|
||
public void UpdateDepthOfField()
|
||
{
|
||
// depthOfField.focusDistance.value = DepthOfFieldDistance;
|
||
depthOfField.nearMaxBlur = DepthOfFieldDistance;
|
||
depthOfField.farMaxBlur = DepthOfFieldIntensity;
|
||
|
||
if (DepthOfFieldOn)
|
||
{
|
||
_DepthOfFieldNearBlurSlider.interactable = true;
|
||
_DepthOfFieldFarBlurSlider.interactable = true;
|
||
/*UIManager.GetInstance().*/checkDepthOfFieldON.SetActive(true);
|
||
/*UIManager.GetInstance().*/checkDepthOfFieldOFF.SetActive(false);
|
||
}
|
||
else
|
||
{
|
||
_DepthOfFieldNearBlurSlider.interactable = false;
|
||
_DepthOfFieldFarBlurSlider.interactable = false;
|
||
/*UIManager.GetInstance().*/checkDepthOfFieldON.SetActive(false);
|
||
/*UIManager.GetInstance().*/checkDepthOfFieldOFF.SetActive(true);
|
||
}
|
||
}
|
||
|
||
public void NextLogo()
|
||
{
|
||
#region NextLogo
|
||
_indexLogos++;
|
||
if (_indexLogos >= _LogoList.Count)
|
||
{
|
||
_indexLogos = _LogoList.Count - 1;
|
||
return;
|
||
}
|
||
_LogoList[_indexLogos].SetActive(true);
|
||
if (_indexLogos > 0) _LogoList[_indexLogos - 1].SetActive(false);
|
||
else _LogoList[_LogoList.Count - 1].SetActive(false);
|
||
#endregion
|
||
|
||
#region Update Logo name
|
||
UpdateLogoName();
|
||
#endregion
|
||
}
|
||
public void PreviousLogo()
|
||
{
|
||
#region PreviousLogo
|
||
_indexLogos--;
|
||
if (_indexLogos < 0)
|
||
{
|
||
_indexLogos = 0;
|
||
Debug.Log("Index can't be smaller than 0");
|
||
return;
|
||
}
|
||
_LogoList[_indexLogos].SetActive(true);
|
||
if (_indexLogos + 1 < _LogoList.Count)
|
||
{
|
||
_LogoList[_indexLogos + 1].SetActive(false);
|
||
}
|
||
#endregion
|
||
|
||
#region Update Logo name
|
||
UpdateLogoName();
|
||
#endregion
|
||
}
|
||
|
||
public void UpdateLogoName()
|
||
{
|
||
_logoName.text = _LogoList[_indexLogos].name;
|
||
}
|
||
|
||
public void NextLogoPosition()
|
||
{
|
||
#region NextLogoPosition
|
||
indexPositions++;
|
||
if (indexPositions >= _LogoPosition) //If index is greater or equals to the last page:
|
||
{
|
||
indexPositions = _LogoPosition++;
|
||
switch (_LogoPosition)
|
||
{
|
||
case 1:
|
||
stage = LogoPositions.TopLeft;
|
||
break;
|
||
case 2:
|
||
stage = LogoPositions.TopCenter;
|
||
break;
|
||
case 3:
|
||
stage = LogoPositions.TopRight;
|
||
break;
|
||
case 4:
|
||
stage = LogoPositions.Left;
|
||
break;
|
||
case 5:
|
||
stage = LogoPositions.Center;
|
||
break;
|
||
case 6:
|
||
stage = LogoPositions.Right;
|
||
break;
|
||
case 7:
|
||
stage = LogoPositions.BottomLeft;
|
||
break;
|
||
case 8:
|
||
stage = LogoPositions.BottomCenter;
|
||
break;
|
||
case 9:
|
||
stage = LogoPositions.BottomRight;
|
||
break;
|
||
default:
|
||
stage = LogoPositions.TopLeft;
|
||
indexPositions = 0;
|
||
_LogoPosition = 1;
|
||
break;
|
||
}
|
||
}
|
||
#endregion
|
||
}
|
||
|
||
public void PreviousLogoPosition()
|
||
{
|
||
#region Previous logo position
|
||
indexPositions--;
|
||
if (indexPositions <= _LogoPosition) //If index is greater or equals to the last page:
|
||
{
|
||
indexPositions = _LogoPosition--;
|
||
switch (_LogoPosition)
|
||
{
|
||
case 1:
|
||
stage = LogoPositions.TopLeft;
|
||
break;
|
||
case 2:
|
||
stage = LogoPositions.TopCenter;
|
||
break;
|
||
case 3:
|
||
stage = LogoPositions.TopRight;
|
||
break;
|
||
case 4:
|
||
stage = LogoPositions.Left;
|
||
break;
|
||
case 5:
|
||
stage = LogoPositions.Center;
|
||
break;
|
||
case 6:
|
||
stage = LogoPositions.Right;
|
||
break;
|
||
case 7:
|
||
stage = LogoPositions.BottomLeft;
|
||
break;
|
||
case 8:
|
||
stage = LogoPositions.BottomCenter;
|
||
break;
|
||
case 9:
|
||
stage = LogoPositions.BottomRight;
|
||
break;
|
||
default:
|
||
stage = LogoPositions.BottomRight;
|
||
indexPositions = 8;
|
||
_LogoPosition = 9;
|
||
break;
|
||
}
|
||
}
|
||
#endregion
|
||
}
|
||
|
||
|
||
#region Color Filters
|
||
//public void UpdateColorFilter0() //No Filter
|
||
//{
|
||
// liftGammaGain.colorFilter.value = new Color(1f, 1f, 1f);
|
||
//}
|
||
|
||
//public void UpdateColorFilter1()
|
||
//{
|
||
// //colorGrading.colorFilter.value = new Color(GRAPSE, GRAPSE, GRAPSE );
|
||
//}
|
||
|
||
//public void UpdateColorFilter2()
|
||
//{
|
||
// liftGammaGain.colorFilter.value = new Color(0.8431373f, 0.6078432f, 1f);
|
||
// StartCoroutine(CanChangeValueBySliderBoolChangeSecs());
|
||
//}
|
||
#endregion
|
||
|
||
public void UpdateLogoPanel()
|
||
{
|
||
#region UpdateLogoVisibility
|
||
if (LogoVisibilityOn)
|
||
{
|
||
_LogoList[_indexLogos].SetActive(true);
|
||
/*UIManager.GetInstance().*/checkLogoVisibilityON.SetActive(true);
|
||
/*UIManager.GetInstance().*/checkLogoVisibilityOFF.SetActive(false);
|
||
_logoScaleSlider.interactable = true;
|
||
#region Logo Previous, Next Stuff
|
||
/*UIManager.GetInstance().*/
|
||
PreviousLogoLeftButton.GetComponent<Button>().interactable = true;
|
||
/*UIManager.GetInstance().*/NextLogoRightButton.GetComponent<Button>().interactable = true;
|
||
_previousLogoLeftButtonAnimator.enabled = true;
|
||
_nextLogoRightButtonAnimator.enabled = true;
|
||
#endregion
|
||
|
||
#region Logo Position Stuff
|
||
/*UIManager.GetInstance().*/LogoPositionLeftButton.GetComponent<Button>().interactable = true;
|
||
/*UIManager.GetInstance().*/LogoPositionRightButton.GetComponent<Button>().interactable = true;
|
||
_ButtonPositionLeftArrowAnimator.enabled = true;
|
||
_ButtonPositionRightArrowAnimator.enabled = true;
|
||
#endregion
|
||
}
|
||
else
|
||
{
|
||
_LogoList[_indexLogos].SetActive(false);
|
||
/*UIManager.GetInstance().*/checkLogoVisibilityON.SetActive(false);
|
||
/*UIManager.GetInstance().*/checkLogoVisibilityOFF.SetActive(true);
|
||
_logoScaleSlider.interactable = false;
|
||
#region Logo Previous, Next Stuff
|
||
/*UIManager.GetInstance().*/PreviousLogoLeftButton.GetComponent<Button>().interactable = false;
|
||
/*UIManager.GetInstance().*/NextLogoRightButton.GetComponent<Button>().interactable = false;
|
||
_previousLogoLeftButtonAnimator.enabled = false;
|
||
_nextLogoRightButtonAnimator.enabled = false;
|
||
#endregion
|
||
|
||
#region Logo Position Stuff
|
||
/*UIManager.GetInstance().*/LogoPositionLeftButton.GetComponent<Button>().interactable = false;
|
||
/*UIManager.GetInstance().*/LogoPositionRightButton.GetComponent<Button>().interactable = false;
|
||
_ButtonPositionLeftArrowAnimator.enabled = false;
|
||
_ButtonPositionRightArrowAnimator.enabled = false;
|
||
#endregion
|
||
}
|
||
#endregion
|
||
}
|
||
|
||
IEnumerator CanChangeValueBySliderBoolChangeSecs()
|
||
{
|
||
CanChangeValueBySlider = false;
|
||
yield return new WaitForSeconds(0.1f);
|
||
CanChangeValueBySlider = true;
|
||
}
|
||
|
||
public void UpdatePosePanel()
|
||
{
|
||
#region Update player or companion visibility
|
||
if (PoseManager.Getinstance()._currentlySelectedCharacterIsHidden)
|
||
{
|
||
/*UIManager.GetInstance().*/checkShowPlayerOFF.SetActive(true);
|
||
/*UIManager.GetInstance().*/checkShowPlayerON.SetActive(false);
|
||
}
|
||
else
|
||
{
|
||
/*UIManager.GetInstance().*/checkShowPlayerOFF.SetActive(false);
|
||
/*UIManager.GetInstance().*/checkShowPlayerON.SetActive(true);
|
||
}
|
||
|
||
if (PoseManager.Getinstance()._companionIsHidden)
|
||
{
|
||
/*UIManager.GetInstance().*/checkShowCompanionOFF.SetActive(true);
|
||
/*UIManager.GetInstance().*/checkShowCompanionON.SetActive(false);
|
||
}
|
||
else
|
||
{
|
||
/*UIManager.GetInstance().*/checkShowCompanionOFF.SetActive(false);
|
||
/*UIManager.GetInstance().*/checkShowCompanionON.SetActive(true);
|
||
}
|
||
#endregion
|
||
}
|
||
|
||
#region Borders
|
||
public void NoBorder()
|
||
{
|
||
_bordersList[0].SetActive(false);
|
||
_bordersList[1].SetActive(false);
|
||
_bordersList[2].SetActive(false);
|
||
_bordersList[3].SetActive(false);
|
||
_bordersList[4].SetActive(false);
|
||
_bordersList[5].SetActive(false);
|
||
#region Selected Item UI Position
|
||
/*UIManager.GetInstance().*/_selectedItemUI_Borders.transform.position = /*UIManager.GetInstance().*/BorderButton[0].transform.position;
|
||
#endregion
|
||
}
|
||
public void BorderVignette()
|
||
{
|
||
_bordersList[0].SetActive(true);
|
||
_bordersList[1].SetActive(false);
|
||
_bordersList[2].SetActive(false);
|
||
_bordersList[3].SetActive(false);
|
||
_bordersList[4].SetActive(false);
|
||
_bordersList[5].SetActive(false);
|
||
#region Selected Item UI Position
|
||
/*UIManager.GetInstance().*/_selectedItemUI_Borders.transform.position = /*UIManager.GetInstance().*/BorderButton[1].transform.position;
|
||
#endregion
|
||
}
|
||
public void BorderPolaroid()
|
||
{
|
||
_bordersList[0].SetActive(false);
|
||
_bordersList[1].SetActive(true);
|
||
_bordersList[2].SetActive(false);
|
||
_bordersList[3].SetActive(false);
|
||
_bordersList[4].SetActive(false);
|
||
_bordersList[5].SetActive(false);
|
||
#region Selected Item UI Position
|
||
/*UIManager.GetInstance().*/_selectedItemUI_Borders.transform.position = /*UIManager.GetInstance().*/BorderButton[2].transform.position;
|
||
#endregion
|
||
}
|
||
public void BorderUpDownBlackBars()
|
||
{
|
||
_bordersList[0].SetActive(false);
|
||
_bordersList[1].SetActive(false);
|
||
_bordersList[2].SetActive(true);
|
||
_bordersList[3].SetActive(false);
|
||
_bordersList[4].SetActive(false);
|
||
_bordersList[5].SetActive(false);
|
||
#region Selected Item UI Position
|
||
/*UIManager.GetInstance().*/_selectedItemUI_Borders.transform.position = /*UIManager.GetInstance().*/BorderButton[3].transform.position;
|
||
#endregion
|
||
}
|
||
public void BorderSideBlackBars()
|
||
{
|
||
_bordersList[0].SetActive(false);
|
||
_bordersList[1].SetActive(false);
|
||
_bordersList[2].SetActive(false);
|
||
_bordersList[3].SetActive(true);
|
||
_bordersList[4].SetActive(false);
|
||
_bordersList[5].SetActive(false);
|
||
#region Selected Item UI Position
|
||
/*UIManager.GetInstance().*/_selectedItemUI_Borders.transform.position = /*UIManager.GetInstance().*/BorderButton[4].transform.position;
|
||
#endregion
|
||
}
|
||
public void BorderButterflies()
|
||
{
|
||
_bordersList[0].SetActive(false);
|
||
_bordersList[1].SetActive(false);
|
||
_bordersList[2].SetActive(false);
|
||
_bordersList[3].SetActive(false);
|
||
_bordersList[4].SetActive(true);
|
||
_bordersList[5].SetActive(false);
|
||
#region Selected Item UI Position
|
||
/*UIManager.GetInstance().*/_selectedItemUI_Borders.transform.position = /*UIManager.GetInstance().*/BorderButton[5].transform.position;
|
||
#endregion
|
||
}
|
||
public void BorderLISOriginalBoxArt()
|
||
{
|
||
_bordersList[0].SetActive(false);
|
||
_bordersList[1].SetActive(false);
|
||
_bordersList[2].SetActive(false);
|
||
_bordersList[3].SetActive(false);
|
||
_bordersList[4].SetActive(false);
|
||
_bordersList[5].SetActive(true);
|
||
#region Selected Item UI Position
|
||
/*UIManager.GetInstance().*/_selectedItemUI_Borders.transform.position = /*UIManager.GetInstance().*/BorderButton[6].transform.position;
|
||
#endregion
|
||
}
|
||
#endregion
|
||
|
||
#region HUD Visibility
|
||
public enum HUD
|
||
{
|
||
DisplayHUD,
|
||
HideHUD
|
||
}
|
||
|
||
public HUD visibility = HUD.DisplayHUD;
|
||
|
||
public void HUDVisibility()
|
||
{
|
||
if (Input.GetKeyDown(KeyCode.H) && !HideHUD && photoModeOpen || Input.GetKeyDown(KeyCode.JoystickButton3) && !HideHUD && photoModeOpen)
|
||
{
|
||
visibility = HUD.HideHUD;
|
||
HideHUD = true;
|
||
}
|
||
else if (Input.GetKeyDown(KeyCode.H) && HideHUD && photoModeOpen || Input.GetKeyDown(KeyCode.JoystickButton3) && HideHUD && photoModeOpen)
|
||
{
|
||
visibility = HUD.DisplayHUD;
|
||
HideHUD = false;
|
||
}
|
||
|
||
switch (visibility)
|
||
{
|
||
case HUD.DisplayHUD:
|
||
_PhotomodePanelHUD.enabled = true;
|
||
_cameraPanelHUD.SetActive(true);
|
||
_depthOfFieldPanelHUD.SetActive(true);
|
||
_picturePanelHUD.SetActive(true);
|
||
_colorFiltersPanelHUD.SetActive(true);
|
||
_bordersPanelHUD.SetActive(true);
|
||
_logoPanelHUD.SetActive(true);
|
||
_posePanelHUD.SetActive(true);
|
||
_buttonsHUD.SetActive(true);
|
||
_borderlineHUD.SetActive(true);
|
||
_gridsHUD.SetActive(true);
|
||
if (InputControlManager.Getinstance().IsUsingJoystick)
|
||
{
|
||
_controllerButtonsIndicationsHUD.SetActive(true);
|
||
_bottomUIHUD_Controller.SetActive(true);
|
||
_buttomUIHUD_PC.SetActive(false);
|
||
LightModeManager.GetInstance().BottomHelpButtonsHUD_Controller.SetActive(true);
|
||
LightModeManager.GetInstance().BottomHelpButtonsHUD_PC.SetActive(false);
|
||
_quitPhotomodeNoController.SetActive(true);
|
||
_quitPhotomodeYesController.SetActive(true);
|
||
_quitPhotomodeNoPC.SetActive(false);
|
||
_quitPhotomodeYesPC.SetActive(false);
|
||
_resetPhotographNoController.SetActive(true);
|
||
_resetPhotographYesController.SetActive(true);
|
||
_resetPhotographNoPC.SetActive(false);
|
||
_resetPhotographYesPC.SetActive(false);
|
||
}
|
||
else
|
||
{
|
||
_controllerButtonsIndicationsHUD.SetActive(false);
|
||
_buttomUIHUD_PC.SetActive(true);
|
||
_bottomUIHUD_Controller.SetActive(false);
|
||
_controllerButtonsIndicationsHUD.SetActive(false);
|
||
LightModeManager.GetInstance().BottomHelpButtonsHUD_Controller.SetActive(false);
|
||
LightModeManager.GetInstance().BottomHelpButtonsHUD_PC.SetActive(true);
|
||
_quitPhotomodeNoController.SetActive(false);
|
||
_quitPhotomodeYesController.SetActive(false);
|
||
_quitPhotomodeNoPC.SetActive(true);
|
||
_quitPhotomodeYesPC.SetActive(true);
|
||
_resetPhotographNoController.SetActive(false);
|
||
_resetPhotographYesController.SetActive(false);
|
||
_resetPhotographNoPC.SetActive(true);
|
||
_resetPhotographYesPC.SetActive(true);
|
||
}
|
||
LightModeManager.GetInstance().LightModePanelHUD.SetActive(true);
|
||
_photomodeSelectModePanel.SetActive(true);
|
||
break;
|
||
case HUD.HideHUD:
|
||
_PhotomodePanelHUD.enabled = false;
|
||
_cameraPanelHUD.SetActive(false);
|
||
_depthOfFieldPanelHUD.SetActive(false);
|
||
_picturePanelHUD.SetActive(false);
|
||
_colorFiltersPanelHUD.SetActive(false);
|
||
_bordersPanelHUD.SetActive(false);
|
||
_logoPanelHUD.SetActive(false);
|
||
_posePanelHUD.SetActive(false);
|
||
_buttonsHUD.SetActive(false);
|
||
_borderlineHUD.SetActive(false);
|
||
_buttomUIHUD_PC.SetActive(false);
|
||
_gridsHUD.SetActive(false);
|
||
if (InputControlManager.Getinstance().IsUsingJoystick)
|
||
{
|
||
_controllerButtonsIndicationsHUD.SetActive(false);
|
||
_bottomUIHUD_Controller.SetActive(false);
|
||
LightModeManager.GetInstance().BottomHelpButtonsHUD_Controller.SetActive(false);
|
||
_quitPhotomodeNoController.SetActive(true);
|
||
_quitPhotomodeYesController.SetActive(true);
|
||
_quitPhotomodeNoPC.SetActive(false);
|
||
_quitPhotomodeYesPC.SetActive(false);
|
||
_resetPhotographNoController.SetActive(true);
|
||
_resetPhotographYesController.SetActive(true);
|
||
_resetPhotographNoPC.SetActive(false);
|
||
_resetPhotographYesPC.SetActive(false);
|
||
}
|
||
else
|
||
{
|
||
_quitPhotomodeNoController.SetActive(false);
|
||
_quitPhotomodeYesController.SetActive(false);
|
||
_quitPhotomodeNoPC.SetActive(true);
|
||
_quitPhotomodeYesPC.SetActive(true);
|
||
_resetPhotographNoController.SetActive(false);
|
||
_resetPhotographYesController.SetActive(false);
|
||
_resetPhotographNoPC.SetActive(true);
|
||
_resetPhotographYesPC.SetActive(true);
|
||
}
|
||
LightModeManager.GetInstance().BottomHelpButtonsHUD_PC.SetActive(false);
|
||
LightModeManager.GetInstance().LightModePanelHUD.SetActive(false);
|
||
_photomodeSelectModePanel.SetActive(false);
|
||
break;
|
||
}
|
||
}
|
||
#endregion
|
||
|
||
public void UpdateDepthOfFieldButtonsStates() //Updates the button states When OnClick.
|
||
{
|
||
//UIManager.GetInstance().DepthOfFieldON.GetComponent<Button>().onClick.AddListener(DepthOfFieldON); //If button is clicked call method.
|
||
//UIManager.GetInstance().DepthOfFieldOFF.GetComponent<Button>().onClick.AddListener(DepthOfFieldOFF); //If button is clicked call method.
|
||
DepthOfFieldON_Button.onClick.AddListener(DepthOfFieldON); //If button is clicked call method.
|
||
DepthOfFieldOFF_Button.onClick.AddListener(DepthOfFieldOFF); //If button is clicked call method.
|
||
}
|
||
|
||
public void UpdateColorFiltersButtonStates()
|
||
{
|
||
//UIManager.GetInstance().ColorFilter[0].GetComponent<Button>().onClick.AddListener(ColorFiltersManager.GetInstance().NoFilter);
|
||
//UIManager.GetInstance().ColorFilter[1].GetComponent<Button>().onClick.AddListener(ColorFiltersManager.GetInstance().ForestFilter);
|
||
//UIManager.GetInstance().ColorFilter[2].GetComponent<Button>().onClick.AddListener(ColorFiltersManager.GetInstance().ColdFilter);
|
||
//UIManager.GetInstance().ColorFilter[3].GetComponent<Button>().onClick.AddListener(ColorFiltersManager.GetInstance().GreyFilter);
|
||
//UIManager.GetInstance().ColorFilter[4].GetComponent<Button>().onClick.AddListener(ColorFiltersManager.GetInstance().SepiaFilter);
|
||
//UIManager.GetInstance().ColorFilter[5].GetComponent<Button>().onClick.AddListener(ColorFiltersManager.GetInstance().NatureGreenFilter);
|
||
//UIManager.GetInstance().ColorFilter[6].GetComponent<Button>().onClick.AddListener(ColorFiltersManager.GetInstance().PurpleParadiseFilter);
|
||
//UIManager.GetInstance().ColorFilter[7].GetComponent<Button>().onClick.AddListener(ColorFiltersManager.GetInstance().SummertimeFilter);
|
||
//UIManager.GetInstance().ColorFilter[8].GetComponent<Button>().onClick.AddListener(ColorFiltersManager.GetInstance().GreenForestFilter);
|
||
|
||
ColorFilter[0].onClick.AddListener(() => { ColorFiltersManager.GetInstance().NoFilter(); });
|
||
ColorFilter[1].onClick.AddListener(() => { ColorFiltersManager.GetInstance().FilterUpdate(0); });
|
||
ColorFilter[2].onClick.AddListener(() => { ColorFiltersManager.GetInstance().FilterUpdate(1); });
|
||
ColorFilter[3].onClick.AddListener(() => { ColorFiltersManager.GetInstance().FilterUpdate(2); });
|
||
ColorFilter[4].onClick.AddListener(() => { ColorFiltersManager.GetInstance().FilterUpdate(3); });
|
||
ColorFilter[5].onClick.AddListener(() => { ColorFiltersManager.GetInstance().FilterUpdate(4); });
|
||
ColorFilter[6].onClick.AddListener(() => { ColorFiltersManager.GetInstance().FilterUpdate(5); });
|
||
ColorFilter[7].onClick.AddListener(() => { ColorFiltersManager.GetInstance().FilterUpdate(6); });
|
||
ColorFilter[8].onClick.AddListener(() => { ColorFiltersManager.GetInstance().FilterUpdate(7); });
|
||
}
|
||
|
||
public void UpdateBordersButtons()
|
||
{
|
||
//UIManager.GetInstance().BorderButton[0].GetComponent<Button>().onClick.AddListener(NoBorder);
|
||
//UIManager.GetInstance().BorderButton[1].GetComponent<Button>().onClick.AddListener(BorderVignette);
|
||
//UIManager.GetInstance().BorderButton[2].GetComponent<Button>().onClick.AddListener(BorderPolaroid);
|
||
//UIManager.GetInstance().BorderButton[3].GetComponent<Button>().onClick.AddListener(BorderUpDownBlackBars);
|
||
//UIManager.GetInstance().BorderButton[4].GetComponent<Button>().onClick.AddListener(BorderSideBlackBars);
|
||
//UIManager.GetInstance().BorderButton[5].GetComponent<Button>().onClick.AddListener(BorderButterflies);
|
||
//UIManager.GetInstance().BorderButton[6].GetComponent<Button>().onClick.AddListener(BorderLISOriginalBoxArt);
|
||
|
||
BorderButton[0].onClick.AddListener(() => { NoBorder(); });
|
||
BorderButton[1].onClick.AddListener(() => { BorderVignette(); });
|
||
BorderButton[2].onClick.AddListener(() => { BorderPolaroid(); });
|
||
BorderButton[3].onClick.AddListener(() => { BorderUpDownBlackBars(); });
|
||
BorderButton[4].onClick.AddListener(() => { BorderSideBlackBars(); });
|
||
BorderButton[5].onClick.AddListener(() => { BorderButterflies(); });
|
||
BorderButton[6].onClick.AddListener(() => { BorderLISOriginalBoxArt(); });
|
||
}
|
||
|
||
public void UpdateLogoButtonStates() //SEE WHY THOSE BUTTONS DON'T WORK FROM HERE CORRECTLY.
|
||
{
|
||
//UIManager.GetInstance().LogoVisibilityON.GetComponent<Button>().onClick.AddListener(LogoVisibilityON);
|
||
//UIManager.GetInstance().LogoVisibilityOFF.GetComponent<Button>().onClick.AddListener(LogoVisibilityOFF);
|
||
LogoVisibilityON_Button.onClick.AddListener(() => { LogoVisibilityON(); });
|
||
LogoVisibilityOFF_Button.onClick.AddListener(() => { LogoVisibilityOFF(); });
|
||
|
||
//UIManager.GetInstance().LogoPositionLeftButton.GetComponent<Button>().onClick.AddListener(PreviousLogoPosition); //If button is clicked call method.
|
||
//UIManager.GetInstance().LogoPositionRightButton.GetComponent<Button>().onClick.AddListener(NextLogoPosition); //If button is clicked call method.
|
||
}
|
||
|
||
public void UpdatePoseButtonStates()
|
||
{
|
||
//UIManager.GetInstance().ShowPlayeON.GetComponent<Button>().onClick.AddListener(PoseManager.Getinstance().DisplayPlayer);
|
||
//UIManager.GetInstance().ShowPlayerOFF.GetComponent<Button>().onClick.AddListener(PoseManager.Getinstance().HidePlayer);
|
||
//UIManager.GetInstance().ShowCompanionON.GetComponent<Button>().onClick.AddListener(PoseManager.Getinstance().DisplayCompanion);
|
||
//UIManager.GetInstance().ShowCompanionOFF.GetComponent<Button>().onClick.AddListener(PoseManager.Getinstance().HideCompanion);
|
||
ShowPlayeON.onClick.AddListener(() => { PoseManager.Getinstance().DisplayCharacter(); });
|
||
ShowPlayerOFF.onClick.AddListener(() => { PoseManager.Getinstance().HideCharacter(); });
|
||
ShowCompanionON.onClick.AddListener(() => { PoseManager.Getinstance().DisplayCompanion(); });
|
||
ShowCompanionOFF.onClick.AddListener(() => { PoseManager.Getinstance().HideCompanion(); });
|
||
EyesControlON.onClick.AddListener(() => { PoseManager.Getinstance().EyesMotionON(); });
|
||
EyesControlOFF.onClick.AddListener(() => { PoseManager.Getinstance().EyesMotionOFF(); });
|
||
//UIManager.GetInstance().PreviousBodyPoseLeftButton.GetComponent<Button>().onClick.AddListener(PoseManager.Getinstance().PreviousBodyPose); //Not working correctly from script.
|
||
//UIManager.GetInstance().NextBodyPoseRightButton.GetComponent<Button>().onClick.AddListener(PoseManager.Getinstance().NextBodyPose); //Not working correctly from script.
|
||
//UIManager.GetInstance().PreviousFacePoseLeftButton.GetComponent<Button>().onClick.AddListener(PoseManager.Getinstance().PreviousFacePose); //Not working correctly from script.
|
||
//UIManager.GetInstance().NextFacePoseRightButton.GetComponent<Button>().onClick.AddListener(PoseManager.Getinstance().NextFacePose); //Not working correctly from script.
|
||
}
|
||
|
||
public void UpdateButtonPanelStates()
|
||
{
|
||
//UIManager.GetInstance().CameraPanelButton.GetComponent<Button>().onClick.AddListener(CameraPanelON);
|
||
CameraPanelButton.onClick.AddListener(CameraPanelON);
|
||
//UIManager.GetInstance().DepthOfFieldPanelButton.GetComponent<Button>().onClick.AddListener(DepthOfFieldPanelON);
|
||
DepthOfFieldPanelButton.onClick.AddListener(DepthOfFieldPanelON);
|
||
//UIManager.GetInstance().PicturePanelButton.GetComponent<Button>().onClick.AddListener(PicturePanelON);
|
||
PicturePanelButton.onClick.AddListener(PicturePanelON);
|
||
//UIManager.GetInstance().ColorFiltersPanelButton.GetComponent<Button>().onClick.AddListener(ColorFiltersPanelON);
|
||
ColorFiltersPanelButton.onClick.AddListener(ColorFiltersPanelON);
|
||
//UIManager.GetInstance().BordersPanelButton.GetComponent<Button>().onClick.AddListener(BordersPanelON);
|
||
BordersPanelButton.onClick.AddListener(BordersPanelON);
|
||
//UIManager.GetInstance().LogoPanelButton.GetComponent<Button>().onClick.AddListener(LogoPanelON);
|
||
LogoPanelButton.onClick.AddListener(LogoPanelON);
|
||
//UIManager.GetInstance().PosePanelButton.GetComponent<Button>().onClick.AddListener(PosePanelON);
|
||
PosePanelButton.onClick.AddListener(PosePanelON);
|
||
}
|
||
|
||
public void UpdateQuitPhotomodePanelButtons()
|
||
{
|
||
//UIManager.GetInstance().QuitPhotomodeYesButton.GetComponent<Button>().onClick.AddListener(QuitPhotomode);
|
||
//UIManager.GetInstance().QuitPhotomodeNoButton.GetComponent<Button>().onClick.AddListener(DoNotQuitPhotomode);
|
||
QuitPhotomodeYesButton.onClick.AddListener(QuitPhotomode);
|
||
QuitPhotomodeNoButton.onClick.AddListener(DoNotQuitPhotomode);
|
||
}
|
||
|
||
public void UpdateResetPhotographPanelButtons()
|
||
{
|
||
//UIManager.GetInstance().ResetPhotographYesButton.GetComponent<Button>().onClick.AddListener(ResetSettings);
|
||
//UIManager.GetInstance().ResetPhotographNoButton.GetComponent<Button>().onClick.AddListener(DoNotResetPhotograph);
|
||
ResetPhotographYesButton.onClick.AddListener(ResetSettings);
|
||
ResetPhotographNoButton.onClick.AddListener(DoNotResetPhotograph);
|
||
}
|
||
|
||
#region Panel States
|
||
public void CameraPanelON()
|
||
{
|
||
state = PhotoModeState.Camera;
|
||
}
|
||
public void DepthOfFieldPanelON()
|
||
{
|
||
state = PhotoModeState.DepthOfField;
|
||
}
|
||
public void PicturePanelON()
|
||
{
|
||
state = PhotoModeState.Picture;
|
||
}
|
||
public void ColorFiltersPanelON()
|
||
{
|
||
state = PhotoModeState.ColorFilters;
|
||
}
|
||
public void BordersPanelON()
|
||
{
|
||
state = PhotoModeState.Borders;
|
||
}
|
||
public void LogoPanelON()
|
||
{
|
||
state = PhotoModeState.Logo;
|
||
}
|
||
public void PosePanelON()
|
||
{
|
||
state = PhotoModeState.Pose;
|
||
}
|
||
|
||
#endregion
|
||
|
||
public void DepthOfFieldON()
|
||
{
|
||
depthOfField.active = true;
|
||
DepthOfFieldOn = true;
|
||
}
|
||
public void DepthOfFieldOFF()
|
||
{
|
||
depthOfField.active = false;
|
||
DepthOfFieldOn = false;
|
||
}
|
||
|
||
public void LogoVisibilityON()
|
||
{
|
||
LogoVisibilityOn = true;
|
||
}
|
||
public void LogoVisibilityOFF()
|
||
{
|
||
LogoVisibilityOn = false;
|
||
}
|
||
|
||
public void FreeCameraClippingPlanesValueChange()
|
||
{
|
||
//if (CutscenesManager.GetInstance()._cutsceneActive || CutscenesManager.GetInstance()._MomentOfCalmActive || DialogueManager.GetInstance().IsHavingADialogue && DialogueManager.GetInstance().GameplayDialogueOccurring == false)
|
||
//{
|
||
// FreeCamera.GetInstance().freeCamera.farClipPlane = FreeCamera.GetInstance().clippingFarPlanes = 1f;
|
||
//}
|
||
//else
|
||
//{
|
||
// FreeCamera.GetInstance().freeCamera.farClipPlane = FreeCamera.GetInstance().clippingPlanesFarDefault;
|
||
//}
|
||
}
|
||
|
||
public void PlayerCameraDecideIfEnabled()
|
||
{
|
||
//if (CutscenesManager.GetInstance()._cutsceneActive || CutscenesManager.GetInstance()._MomentOfCalmActive || DialogueManager.GetInstance().IsHavingADialogue && DialogueManager.GetInstance().GameplayDialogueOccurring == false)
|
||
//{
|
||
// PlayersManager.GetInstance()._PlayerMainCamera.SetActive(false);
|
||
//}
|
||
//else
|
||
//{
|
||
// PlayersManager.GetInstance()._PlayerMainCamera.SetActive(true);
|
||
//}
|
||
|
||
}
|
||
|
||
IEnumerator ResetFreeCameraValues()
|
||
{
|
||
FreeCamera.GetInstance().enabled = true;
|
||
//FieldOfView
|
||
_cameraFieldOfViewSlider.value = FreeCamera.GetInstance().fieldOfViewDefault; //Changes the camera's field of view value from the slider.
|
||
FreeCamera.GetInstance().fieldOfView = FreeCamera.GetInstance().fieldOfViewDefault;
|
||
//Camera Roll
|
||
_cameraRollSlider.value = FreeCamera.GetInstance().cameraRollDefault;
|
||
FreeCamera.GetInstance().cameraRoll = FreeCamera.GetInstance().cameraRollDefault;
|
||
FreeCamera.GetInstance().transform.localEulerAngles = new Vector3(FreeCamera.GetInstance().newRotationY, FreeCamera.GetInstance().newRotationX, FreeCamera.GetInstance().cameraRoll);
|
||
yield return new WaitForSecondsRealtime(0.1f);
|
||
if (IsInLightMode)
|
||
{
|
||
FreeCamera.GetInstance().enabled = false; //Disables the camera because it's in lightmode.
|
||
}
|
||
}
|
||
|
||
public void ResetSettings()
|
||
{
|
||
// Lightmode:
|
||
LightModeManager.GetInstance().ResetSettings();
|
||
//-----------------------------------------------
|
||
resetPhotographPanelOn = false;
|
||
canQuitPhotomodePanel = true;
|
||
_ResetPhotographPanel.SetActive(false);
|
||
|
||
#region Camera
|
||
StartCoroutine(ResetFreeCameraValues());
|
||
#endregion
|
||
#region DepthOfField
|
||
_DepthOfFieldNearBlurSlider.value = DepthOfFieldDistanceDefault;
|
||
_DepthOfFieldFarBlurSlider.value = DepthOfFieldIntensityDefault;
|
||
DepthOfFieldOFF();
|
||
UpdateDepthOfField();
|
||
#endregion
|
||
#region Picture
|
||
_BrightnessSlider.value = GainDefault;
|
||
Gain = GainDefault;
|
||
|
||
_SaturationSlider.value = saturationDefault;
|
||
saturation = saturationDefault;
|
||
|
||
_exposureSlider.value = exposureDefault;
|
||
exposure = exposureDefault;
|
||
UpdateColorGrading();
|
||
#endregion
|
||
#region ColorFilters
|
||
//ColorFiltersManager.GetInstance().ResetColorGradingFilters();
|
||
//ColorFiltersManager.GetInstance().UpdateColorGradingFilters();
|
||
ColorFiltersManager.GetInstance().NoFilter();
|
||
#endregion
|
||
#region Borders
|
||
NoBorder();
|
||
#endregion
|
||
#region Logo
|
||
UpdateLogoPanel(); //Updates the panel.
|
||
_indexLogos = 0; //Set the index of the logos to the default value.
|
||
foreach (GameObject obj in _LogoList) //Hides every Logo in the list.
|
||
{
|
||
obj.SetActive(false);
|
||
}
|
||
foreach (var logo in _LogoList)
|
||
{
|
||
logo.transform.localScale = new Vector3(logoScaleDefault, logoScaleDefault, logoScaleDefault); //Resets the scale of the logo to 1f;
|
||
}
|
||
_logoScaleSlider.value = logoScaleDefault;
|
||
UpdateLogoName(); //Calls the method to update the logos name.
|
||
indexPositions = 0; //Sets the index of the positions to the default value.
|
||
_LogoPosition = 1; //Sets the logo position to 1.
|
||
LogoPositionUpdate(); //Calls the method to update the positions of the logos.
|
||
stage = LogoPositions.TopLeft; //Sets the position to the default one.
|
||
LogoVisibilityOFF(); //The logo is no longer visible.
|
||
#endregion
|
||
#region Pose
|
||
PoseLookAt.GetInstance().ValuesUpdate();
|
||
//PoseManager.Getinstance().DisplayPlayer();
|
||
//PoseManager.Getinstance().DisplayCompanion();
|
||
//PoseManager.Getinstance().PlayerBodyPoseReset();
|
||
//PoseManager.Getinstance().PlayerFacePoseReset();
|
||
PoseManager.Getinstance().PoseManagerReset();
|
||
UpdatePosePanel();
|
||
#endregion
|
||
#region Grids
|
||
GridsDisabled();
|
||
#endregion
|
||
#region Controller
|
||
CurrentPanelIndex = 1;
|
||
foreach (var uiMenuControllerNavigationPanel in _uiMenuControllerNavigationPanel)
|
||
{
|
||
uiMenuControllerNavigationPanel.ResetToStartValues();
|
||
}
|
||
#endregion
|
||
StartCoroutine(UpdateCameraSlidersAfterSecs());
|
||
UpdateFreeCameraPositionRotation();
|
||
|
||
Debug.Log("Photomode Settings restored");
|
||
}
|
||
}
|