add school

This commit is contained in:
Vova
2023-12-18 22:23:48 +02:00
parent 2399e99c68
commit d9b84788e1
42 changed files with 1572 additions and 24 deletions
File diff suppressed because it is too large Load Diff
@@ -0,0 +1,7 @@
fileFormatVersion: 2
guid: 4c9d1546155d57e45a5dc96e1772cad4
PrefabImporter:
externalObjects: {}
userData:
assetBundleName:
assetBundleVariant:
@@ -147,7 +147,7 @@ GameObject:
- component: {fileID: 4899774397145829728}
- component: {fileID: 9018781955098760075}
m_Layer: 5
m_Name: JobItemUiTemplate
m_Name: JobItem
m_TagString: Untagged
m_Icon: {fileID: 0}
m_NavMeshLayer: 0
+5 -5
View File
@@ -1685,9 +1685,9 @@ RectTransform:
m_Children: []
m_Father: {fileID: 349281313}
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
m_AnchorMin: {x: 0, y: 0}
m_AnchorMax: {x: 0, y: 0}
m_AnchoredPosition: {x: 250, y: 0}
m_AnchorMin: {x: 0, y: 1}
m_AnchorMax: {x: 0, y: 1}
m_AnchoredPosition: {x: 250, y: -90}
m_SizeDelta: {x: 480, y: 0}
m_Pivot: {x: 0.5, y: 0.5}
--- !u!114 &249161732
@@ -4097,7 +4097,7 @@ Transform:
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 749553635}
serializedVersion: 2
m_LocalRotation: {x: 0.38268346, y: -0.000000022481213, z: 0.000000009312023, w: 0.92387956}
m_LocalRotation: {x: 0.38268346, y: 0.000000022481224, z: -0.0000000093120285, w: 0.92387956}
m_LocalPosition: {x: 29.11, y: 5, z: -5}
m_LocalScale: {x: 1, y: 1, z: 1}
m_ConstrainProportionsScale: 0
@@ -4697,7 +4697,7 @@ Transform:
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 835327588}
serializedVersion: 2
m_LocalRotation: {x: 0.38268346, y: -0.000000022481213, z: 0.000000009312023, w: 0.92387956}
m_LocalRotation: {x: 0.38268346, y: 0.000000022481224, z: -0.0000000093120285, w: 0.92387956}
m_LocalPosition: {x: 29.11, y: 5, z: -5}
m_LocalScale: {x: 1, y: 1, z: 1}
m_ConstrainProportionsScale: 0
+69 -3
View File
@@ -485,7 +485,7 @@ PrefabInstance:
- target: {fileID: -8679921383154817045, guid: 9bd342097a69da64daea3e6f3814ad3e,
type: 3}
propertyPath: m_LocalPosition.y
value: 0.84
value: 0.811
objectReference: {fileID: 0}
- target: {fileID: -8679921383154817045, guid: 9bd342097a69da64daea3e6f3814ad3e,
type: 3}
@@ -534,9 +534,44 @@ PrefabInstance:
objectReference: {fileID: 0}
m_RemovedComponents: []
m_RemovedGameObjects: []
m_AddedGameObjects: []
m_AddedComponents: []
m_AddedGameObjects:
- targetCorrespondingSourceObject: {fileID: -8679921383154817045, guid: 9bd342097a69da64daea3e6f3814ad3e,
type: 3}
insertIndex: -1
addedObject: {fileID: 1086470460}
m_AddedComponents:
- targetCorrespondingSourceObject: {fileID: 919132149155446097, guid: 9bd342097a69da64daea3e6f3814ad3e,
type: 3}
insertIndex: -1
addedObject: {fileID: 202296547}
m_SourcePrefab: {fileID: 100100000, guid: 9bd342097a69da64daea3e6f3814ad3e, type: 3}
--- !u!1 &202296545 stripped
GameObject:
m_CorrespondingSourceObject: {fileID: 919132149155446097, guid: 9bd342097a69da64daea3e6f3814ad3e,
type: 3}
m_PrefabInstance: {fileID: 202296544}
m_PrefabAsset: {fileID: 0}
--- !u!4 &202296546 stripped
Transform:
m_CorrespondingSourceObject: {fileID: -8679921383154817045, guid: 9bd342097a69da64daea3e6f3814ad3e,
type: 3}
m_PrefabInstance: {fileID: 202296544}
m_PrefabAsset: {fileID: 0}
--- !u!114 &202296547
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 202296545}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: 05e7f5c95d24c174ba832e4264e9d224, type: 3}
m_Name:
m_EditorClassIdentifier:
_interactionPoint: {fileID: 1086470460}
_dialogSO: {fileID: 11400000, guid: 40d509fd76291394285fd38512792c46, type: 2}
_dialogOptionsSO: {fileID: 0}
--- !u!1001 &385599245
PrefabInstance:
m_ObjectHideFlags: 0
@@ -2259,6 +2294,37 @@ Transform:
type: 3}
m_PrefabInstance: {fileID: 1032387547}
m_PrefabAsset: {fileID: 0}
--- !u!1 &1086470459
GameObject:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
serializedVersion: 6
m_Component:
- component: {fileID: 1086470460}
m_Layer: 0
m_Name: GameObject
m_TagString: Untagged
m_Icon: {fileID: 0}
m_NavMeshLayer: 0
m_StaticEditorFlags: 0
m_IsActive: 1
--- !u!4 &1086470460
Transform:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 1086470459}
serializedVersion: 2
m_LocalRotation: {x: 0.7071068, y: 0, z: 0, w: 0.7071068}
m_LocalPosition: {x: -0, y: 0.022, z: -0.492}
m_LocalScale: {x: 1, y: 1, z: 1}
m_ConstrainProportionsScale: 0
m_Children: []
m_Father: {fileID: 202296546}
m_LocalEulerAnglesHint: {x: 90, y: 0, z: 0}
--- !u!1001 &1125387878
PrefabInstance:
m_ObjectHideFlags: 0
@@ -1,9 +1,8 @@
using Assets.Scripts.Interfaces;
using UnityEngine;
public class OfficeTable : BaseInteractableObject
{
[SerializeField]
private DialogCategorySO _dialogOptionsSO;
[SerializeField]
private DialogSO _dialogSO;
protected override void PrepareMenuActions()
@@ -16,9 +15,9 @@ public class OfficeTable : BaseInteractableObject
GameManager.Instance.UI.ShowTabObtionsDialog(_dialogSO, null, OnConfirm);
}
private void OnConfirm(JobInfoSO selectedJob)
private void OnConfirm(IDialogOption selectedJob)
{
_player.JobPosition = selectedJob.JobPosition;
_player.JobPosition = (selectedJob as JobInfoSO).JobPosition;
print($"player selected position is {_player.JobPosition}");
}
}
@@ -5,8 +5,6 @@ public class SecretaryDesk : BaseInteractableObject
{
[SerializeField]
private DialogSO _dialogSO;
[SerializeField]
private DialogCategorySO _dialogOptionsSO;
protected override void PrepareMenuActions()
{
@@ -21,6 +19,6 @@ public class SecretaryDesk : BaseInteractableObject
private void OnConfirm(IDialogOption selectedOption)
{
//_player.JobPosition = (selectedOption as EducationInfoSO).JobPosition;
print($"player selected position is {_player.JobPosition}");
print($"player selected position is {(selectedOption as EducationInfoSO).Description}");
}
}
@@ -4,6 +4,7 @@ namespace Assets.Scripts.Interfaces
{
public interface IDialogItemUI
{
IDialogOption Item { get; }
void SetItem(DialogOptionsUI parent, IDialogOption item);
}
public class IDialogOption: ScriptableObject
@@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: 050d5c1f23823194b8c24759c2dc67d1
folderAsset: yes
DefaultImporter:
externalObjects: {}
userData:
assetBundleName:
assetBundleVariant:
@@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: edc1273ddc4c788449fe69fe20d2c07f
folderAsset: yes
DefaultImporter:
externalObjects: {}
userData:
assetBundleName:
assetBundleVariant:
@@ -0,0 +1,17 @@
%YAML 1.1
%TAG !u! tag:unity3d.com,2011:
--- !u!114 &11400000
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 0}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: f667daa0686227b49a9ca2ebd6326a98, type: 3}
m_Name: HighSchool
m_EditorClassIdentifier:
Title: Hight School
Icon: {fileID: 21300000, guid: aef64b4574ccbc74897f2d9cd98cdf12, type: 3}
OptionsList: []
@@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: f4995fdc1159dde4f89ae0a1b1be42f8
NativeFormatImporter:
externalObjects: {}
mainObjectFileID: 11400000
userData:
assetBundleName:
assetBundleVariant:
@@ -0,0 +1,19 @@
%YAML 1.1
%TAG !u! tag:unity3d.com,2011:
--- !u!114 &11400000
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 0}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: 3ba71c02cddb93d408c7c1b2f9846099, type: 3}
m_Name: Mathematics
m_EditorClassIdentifier:
Icon: {fileID: 21300000, guid: 03db7f2d5bccf674c95ce74426db7fbb, type: 3}
Description: 'Mathematics '
Duration: 5
EnrollPrice: 10
Skill: 0
@@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: b2f41f944cd1f3f4f82130491c97d5da
NativeFormatImporter:
externalObjects: {}
mainObjectFileID: 11400000
userData:
assetBundleName:
assetBundleVariant:
@@ -0,0 +1,19 @@
%YAML 1.1
%TAG !u! tag:unity3d.com,2011:
--- !u!114 &11400000
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 0}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: bf7ee1c503cbe524b8a52dc86566b3b6, type: 3}
m_Name: School
m_EditorClassIdentifier:
Title: School
UITemplate: {fileID: 9018781955098760075, guid: 4c9d1546155d57e45a5dc96e1772cad4,
type: 3}
CategoriesSO:
- {fileID: 11400000, guid: f4995fdc1159dde4f89ae0a1b1be42f8, type: 2}
@@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: 40d509fd76291394285fd38512792c46
NativeFormatImporter:
externalObjects: {}
mainObjectFileID: 11400000
userData:
assetBundleName:
assetBundleVariant:
@@ -5,6 +5,7 @@ using UnityEngine;
public class EducationInfoSO : IDialogOption
{
public string Description;
public float Price;
public int Duration;
public float EnrollPrice;
public EducationSkill Skill;
}
+5 -5
View File
@@ -1,3 +1,4 @@
using Assets.Scripts.Interfaces;
using System;
using TMPro;
using UnityEngine;
@@ -24,10 +25,10 @@ public class DialogOptionsUI : MonoBehaviour
private DialogTabUITemplate _dialogTabUI;
private DialogTabUITemplate _selectedTab;
private JobItemUITemplate _selectedItem;
private IDialogItemUI _selectedItem;
private DialogSO _dialogSO;
public void ShowCategoriesDialog(DialogSO dialogSO, Action onCancel, Action<JobInfoSO> onConfirm)
public void ShowCategoriesDialog(DialogSO dialogSO, Action onCancel, Action<IDialogOption> onConfirm)
{
GameManager.Instance.UI.Freeze();
@@ -78,7 +79,7 @@ public class DialogOptionsUI : MonoBehaviour
{
var itemUI = Instantiate(_dialogSO.UITemplate, _itemsContainer);
itemUI.gameObject.SetActive(true);
itemUI.GetComponent<JobItemUITemplate>().SetItem(this, job);
itemUI.GetComponent<IDialogItemUI>().SetItem(this, job);
}
}
@@ -86,9 +87,8 @@ public class DialogOptionsUI : MonoBehaviour
{
}
public void OnItemSelected(JobItemUITemplate button)
public void OnItemSelected(IDialogItemUI button)
{
print($"selected job {button.Item.name}");
_selectedItem = button;
}
@@ -0,0 +1,49 @@
using Assets.Scripts.Interfaces;
using TMPro;
using UnityEngine;
using UnityEngine.EventSystems;
using UnityEngine.UI;
public class EducationItemUI : MonoBehaviour, IDialogItemUI ,IPointerEnterHandler
{
[SerializeField]
private TextMeshProUGUI _description;
[SerializeField]
private TextMeshProUGUI _duration;
[SerializeField]
private TextMeshProUGUI _price;
[SerializeField]
private Image _icon;
[SerializeField]
private Button _button;
private DialogOptionsUI _parent;
private EducationInfoSO _item;
public IDialogOption Item => _item;
public void SetItem(DialogOptionsUI parent,IDialogOption item)
{
_item= item as EducationInfoSO;
_parent = parent;
_duration.text = _item.Duration.ToString();
_description.text = _item.Description;
_price.text = $"{_item.EnrollPrice}$";
_icon.sprite = item.Icon;
_button.enabled = true;
}
public void Click()
{
if (_button.enabled)
{
_parent.OnItemSelected(this);
}
}
public void OnPointerEnter(PointerEventData eventData)
{
if (!_button.enabled) { print("Not enough education"); }
}
}
@@ -0,0 +1,2 @@
fileFormatVersion: 2
guid: ae4f157b0a61c52409c1c86ea3826ab1
@@ -18,7 +18,7 @@ public class JobItemUITemplate : MonoBehaviour, IDialogItemUI ,IPointerEnterHan
private DialogOptionsUI _parent;
private JobInfoSO _item;
public JobInfoSO Item=> _item;
public IDialogOption Item=> _item;
public void SetItem(DialogOptionsUI parent,IDialogOption item)
{
+2 -1
View File
@@ -1,3 +1,4 @@
using Assets.Scripts.Interfaces;
using Cysharp.Threading.Tasks;
using System;
using System.Collections.Generic;
@@ -27,7 +28,7 @@ public class UISystem : MonoBehaviour
timeSlider.ShowTimeSliderDialog(title, description, onCancel, onConfirm);
}
public void ShowTabObtionsDialog(DialogSO dialogSO, Action onCancel, Action<JobInfoSO> onConfirm)
public void ShowTabObtionsDialog(DialogSO dialogSO, Action onCancel, Action<IDialogOption> onConfirm)
{
var dialog = Instantiate(_DialogUIPrefab, transform);
dialog.ShowCategoriesDialog(dialogSO, onCancel, onConfirm);
Binary file not shown.

After

Width:  |  Height:  |  Size: 4.3 KiB

@@ -0,0 +1,114 @@
fileFormatVersion: 2
guid: 03db7f2d5bccf674c95ce74426db7fbb
TextureImporter:
internalIDToNameTable: []
externalObjects: {}
serializedVersion: 13
mipmaps:
mipMapMode: 0
enableMipMap: 0
sRGBTexture: 1
linearTexture: 0
fadeOut: 0
borderMipMap: 0
mipMapsPreserveCoverage: 0
alphaTestReferenceValue: 0.5
mipMapFadeDistanceStart: 1
mipMapFadeDistanceEnd: 3
bumpmap:
convertToNormalMap: 0
externalNormalMap: 0
heightScale: 0.25
normalMapFilter: 0
flipGreenChannel: 0
isReadable: 0
streamingMipmaps: 0
streamingMipmapsPriority: 0
vTOnly: 0
ignoreMipmapLimit: 0
grayScaleToAlpha: 0
generateCubemap: 6
cubemapConvolution: 0
seamlessCubemap: 0
textureFormat: 1
maxTextureSize: 2048
textureSettings:
serializedVersion: 2
filterMode: 1
aniso: 1
mipBias: 0
wrapU: 1
wrapV: 1
wrapW: 0
nPOTScale: 0
lightmap: 0
compressionQuality: 50
spriteMode: 1
spriteExtrude: 1
spriteMeshType: 1
alignment: 0
spritePivot: {x: 0.5, y: 0.5}
spritePixelsToUnits: 100
spriteBorder: {x: 0, y: 0, z: 0, w: 0}
spriteGenerateFallbackPhysicsShape: 1
alphaUsage: 1
alphaIsTransparency: 1
spriteTessellationDetail: -1
textureType: 8
textureShape: 1
singleChannelComponent: 0
flipbookRows: 1
flipbookColumns: 1
maxTextureSizeSet: 0
compressionQualitySet: 0
textureFormatSet: 0
ignorePngGamma: 0
applyGammaDecoding: 0
swizzle: 50462976
cookieLightType: 0
platformSettings:
- serializedVersion: 3
buildTarget: DefaultTexturePlatform
maxTextureSize: 128
resizeAlgorithm: 0
textureFormat: -1
textureCompression: 1
compressionQuality: 50
crunchedCompression: 0
allowsAlphaSplitting: 0
overridden: 0
ignorePlatformSupport: 0
androidETC2FallbackOverride: 0
forceMaximumCompressionQuality_BC6H_BC7: 0
- serializedVersion: 3
buildTarget: Standalone
maxTextureSize: 2048
resizeAlgorithm: 0
textureFormat: -1
textureCompression: 1
compressionQuality: 50
crunchedCompression: 0
allowsAlphaSplitting: 0
overridden: 0
ignorePlatformSupport: 0
androidETC2FallbackOverride: 0
forceMaximumCompressionQuality_BC6H_BC7: 0
spriteSheet:
serializedVersion: 2
sprites: []
outline: []
physicsShape: []
bones: []
spriteID: 5e97eb03825dee720800000000000000
internalID: 0
vertices: []
indices:
edges: []
weights: []
secondaryTextures: []
nameFileIdTable: {}
mipmapLimitGroupName:
pSDRemoveMatte: 0
userData:
assetBundleName:
assetBundleVariant:
Binary file not shown.

After

Width:  |  Height:  |  Size: 22 KiB

+114
View File
@@ -0,0 +1,114 @@
fileFormatVersion: 2
guid: aef64b4574ccbc74897f2d9cd98cdf12
TextureImporter:
internalIDToNameTable: []
externalObjects: {}
serializedVersion: 13
mipmaps:
mipMapMode: 0
enableMipMap: 0
sRGBTexture: 1
linearTexture: 0
fadeOut: 0
borderMipMap: 0
mipMapsPreserveCoverage: 0
alphaTestReferenceValue: 0.5
mipMapFadeDistanceStart: 1
mipMapFadeDistanceEnd: 3
bumpmap:
convertToNormalMap: 0
externalNormalMap: 0
heightScale: 0.25
normalMapFilter: 0
flipGreenChannel: 0
isReadable: 0
streamingMipmaps: 0
streamingMipmapsPriority: 0
vTOnly: 0
ignoreMipmapLimit: 0
grayScaleToAlpha: 0
generateCubemap: 6
cubemapConvolution: 0
seamlessCubemap: 0
textureFormat: 1
maxTextureSize: 2048
textureSettings:
serializedVersion: 2
filterMode: 1
aniso: 1
mipBias: 0
wrapU: 1
wrapV: 1
wrapW: 0
nPOTScale: 0
lightmap: 0
compressionQuality: 50
spriteMode: 1
spriteExtrude: 1
spriteMeshType: 1
alignment: 0
spritePivot: {x: 0.5, y: 0.5}
spritePixelsToUnits: 100
spriteBorder: {x: 0, y: 0, z: 0, w: 0}
spriteGenerateFallbackPhysicsShape: 1
alphaUsage: 1
alphaIsTransparency: 1
spriteTessellationDetail: -1
textureType: 8
textureShape: 1
singleChannelComponent: 0
flipbookRows: 1
flipbookColumns: 1
maxTextureSizeSet: 0
compressionQualitySet: 0
textureFormatSet: 0
ignorePngGamma: 0
applyGammaDecoding: 0
swizzle: 50462976
cookieLightType: 0
platformSettings:
- serializedVersion: 3
buildTarget: DefaultTexturePlatform
maxTextureSize: 512
resizeAlgorithm: 0
textureFormat: -1
textureCompression: 1
compressionQuality: 50
crunchedCompression: 0
allowsAlphaSplitting: 0
overridden: 0
ignorePlatformSupport: 0
androidETC2FallbackOverride: 0
forceMaximumCompressionQuality_BC6H_BC7: 0
- serializedVersion: 3
buildTarget: Standalone
maxTextureSize: 2048
resizeAlgorithm: 0
textureFormat: -1
textureCompression: 1
compressionQuality: 50
crunchedCompression: 0
allowsAlphaSplitting: 0
overridden: 0
ignorePlatformSupport: 0
androidETC2FallbackOverride: 0
forceMaximumCompressionQuality_BC6H_BC7: 0
spriteSheet:
serializedVersion: 2
sprites: []
outline: []
physicsShape: []
bones: []
spriteID: 5e97eb03825dee720800000000000000
internalID: 0
vertices: []
indices:
edges: []
weights: []
secondaryTextures: []
nameFileIdTable: {}
mipmapLimitGroupName:
pSDRemoveMatte: 0
userData:
assetBundleName:
assetBundleVariant: