Implemented Animation Clip asset and animation controller #410
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
|
@ -0,0 +1,8 @@
|
||||||
|
- VertexShader: 46580970
|
||||||
|
FragmentShader: 35983630
|
||||||
|
SubPass: UI
|
||||||
|
Properties:
|
||||||
|
data.color: {x: 1, y: 1, z: 1, w: 1}
|
||||||
|
data.textureIndex: 51238312
|
||||||
|
data.alpha: 1
|
||||||
|
data.beta: {x: 1, y: 1, z: 1}
|
|
@ -0,0 +1,3 @@
|
||||||
|
Name: CutScene_04a
|
||||||
|
ID: 130935405
|
||||||
|
Type: 7
|
|
@ -0,0 +1,8 @@
|
||||||
|
- VertexShader: 46580970
|
||||||
|
FragmentShader: 35983630
|
||||||
|
SubPass: UI
|
||||||
|
Properties:
|
||||||
|
data.color: {x: 1, y: 1, z: 1, w: 1}
|
||||||
|
data.textureIndex: 61471971
|
||||||
|
data.alpha: 1
|
||||||
|
data.beta: {x: 1, y: 1, z: 1}
|
|
@ -0,0 +1,3 @@
|
||||||
|
Name: CutScene_04b
|
||||||
|
ID: 122461516
|
||||||
|
Type: 7
|
|
@ -0,0 +1,8 @@
|
||||||
|
- VertexShader: 46580970
|
||||||
|
FragmentShader: 35983630
|
||||||
|
SubPass: UI
|
||||||
|
Properties:
|
||||||
|
data.color: {x: 1, y: 1, z: 1, w: 1}
|
||||||
|
data.textureIndex: 58217538
|
||||||
|
data.alpha: 1
|
||||||
|
data.beta: {x: 1, y: 1, z: 1}
|
|
@ -0,0 +1,3 @@
|
||||||
|
Name: CutScene_04c
|
||||||
|
ID: 124507864
|
||||||
|
Type: 7
|
|
@ -0,0 +1,8 @@
|
||||||
|
- VertexShader: 46580970
|
||||||
|
FragmentShader: 35983630
|
||||||
|
SubPass: UI
|
||||||
|
Properties:
|
||||||
|
data.color: {x: 1, y: 1, z: 1, w: 1}
|
||||||
|
data.textureIndex: 61980534
|
||||||
|
data.alpha: 1
|
||||||
|
data.beta: {x: 1, y: 1, z: 1}
|
|
@ -0,0 +1,3 @@
|
||||||
|
Name: CutScene_05a
|
||||||
|
ID: 118069989
|
||||||
|
Type: 7
|
|
@ -0,0 +1,8 @@
|
||||||
|
- VertexShader: 46580970
|
||||||
|
FragmentShader: 35983630
|
||||||
|
SubPass: UI
|
||||||
|
Properties:
|
||||||
|
data.color: {x: 1, y: 1, z: 1, w: 1}
|
||||||
|
data.textureIndex: 51561286
|
||||||
|
data.alpha: 1
|
||||||
|
data.beta: {x: 1, y: 1, z: 1}
|
|
@ -0,0 +1,3 @@
|
||||||
|
Name: CutScene_05b
|
||||||
|
ID: 132945336
|
||||||
|
Type: 7
|
|
@ -1,6 +1,6 @@
|
||||||
- VertexShader: 46580970
|
- VertexShader: 46580970
|
||||||
FragmentShader: 50110174
|
FragmentShader: 50110174
|
||||||
SubPass: UI
|
SubPass: UI Translucent
|
||||||
Properties:
|
Properties:
|
||||||
data.color: {x: 0, y: 0, z: 0, w: 1}
|
data.color: {x: 0, y: 0, z: 0, w: 1}
|
||||||
data.textureIndex: 0
|
data.textureIndex: 0
|
||||||
|
|
|
@ -3,6 +3,6 @@
|
||||||
SubPass: UI
|
SubPass: UI
|
||||||
Properties:
|
Properties:
|
||||||
data.color: {x: 1, y: 1, z: 1, w: 1}
|
data.color: {x: 1, y: 1, z: 1, w: 1}
|
||||||
data.textureIndex: 54429632
|
data.textureIndex: 58181851
|
||||||
data.alpha: 1
|
data.alpha: 1
|
||||||
data.beta: {x: 1, y: 1, z: 1}
|
data.beta: {x: 1, y: 1, z: 1}
|
|
@ -0,0 +1,334 @@
|
||||||
|
- EID: 1
|
||||||
|
Name: Canvas4
|
||||||
|
IsActive: true
|
||||||
|
NumberOfChildren: 3
|
||||||
|
Components:
|
||||||
|
Canvas Component:
|
||||||
|
Canvas Width: 1920
|
||||||
|
Canvas Height: 1080
|
||||||
|
Scale by canvas width: false
|
||||||
|
IsActive: true
|
||||||
|
Scripts: ~
|
||||||
|
- EID: 10
|
||||||
|
Name: CutScene4
|
||||||
|
IsActive: true
|
||||||
|
NumberOfChildren: 3
|
||||||
|
Components:
|
||||||
|
UI Component:
|
||||||
|
Canvas ID: 1
|
||||||
|
Hovered: false
|
||||||
|
Clicked: false
|
||||||
|
IsActive: true
|
||||||
|
Scripts: ~
|
||||||
|
- EID: 2
|
||||||
|
Name: pic1
|
||||||
|
IsActive: true
|
||||||
|
NumberOfChildren: 0
|
||||||
|
Components:
|
||||||
|
Transform Component:
|
||||||
|
Translate: {x: -1275, y: 255, z: 0.5}
|
||||||
|
Rotate: {x: 0, y: 0, z: 0}
|
||||||
|
Scale: {x: 1313, y: 544, z: 1}
|
||||||
|
IsActive: true
|
||||||
|
Renderable Component:
|
||||||
|
Mesh: 141771688
|
||||||
|
Material: 130935405
|
||||||
|
IsActive: true
|
||||||
|
UI Component:
|
||||||
|
Canvas ID: 1
|
||||||
|
Hovered: false
|
||||||
|
Clicked: false
|
||||||
|
IsActive: true
|
||||||
|
Scripts: ~
|
||||||
|
- EID: 65542
|
||||||
|
Name: pic2
|
||||||
|
IsActive: true
|
||||||
|
NumberOfChildren: 0
|
||||||
|
Components:
|
||||||
|
Transform Component:
|
||||||
|
Translate: {x: 1600, y: 150, z: 0.400000006}
|
||||||
|
Rotate: {x: 0, y: 0, z: 0}
|
||||||
|
Scale: {x: 640, y: 661, z: 1}
|
||||||
|
IsActive: true
|
||||||
|
Renderable Component:
|
||||||
|
Mesh: 141771688
|
||||||
|
Material: 122461516
|
||||||
|
IsActive: true
|
||||||
|
UI Component:
|
||||||
|
Canvas ID: 1
|
||||||
|
Hovered: false
|
||||||
|
Clicked: false
|
||||||
|
IsActive: true
|
||||||
|
Scripts: ~
|
||||||
|
- EID: 5
|
||||||
|
Name: pic3
|
||||||
|
IsActive: true
|
||||||
|
NumberOfChildren: 0
|
||||||
|
Components:
|
||||||
|
Transform Component:
|
||||||
|
Translate: {x: -2000, y: -275, z: 0.300000012}
|
||||||
|
Rotate: {x: 0, y: 0, z: 0}
|
||||||
|
Scale: {x: 1848, y: 575, z: 1}
|
||||||
|
IsActive: true
|
||||||
|
Renderable Component:
|
||||||
|
Mesh: 141771688
|
||||||
|
Material: 124507864
|
||||||
|
IsActive: true
|
||||||
|
UI Component:
|
||||||
|
Canvas ID: 1
|
||||||
|
Hovered: false
|
||||||
|
Clicked: false
|
||||||
|
IsActive: true
|
||||||
|
Scripts: ~
|
||||||
|
- EID: 11
|
||||||
|
Name: Background
|
||||||
|
IsActive: true
|
||||||
|
NumberOfChildren: 0
|
||||||
|
Components:
|
||||||
|
Transform Component:
|
||||||
|
Translate: {x: 0, y: 0, z: 0.699999988}
|
||||||
|
Rotate: {x: 0, y: 0, z: 0}
|
||||||
|
Scale: {x: 1920, y: 1080, z: 1}
|
||||||
|
IsActive: true
|
||||||
|
Renderable Component:
|
||||||
|
Mesh: 141771688
|
||||||
|
Material: 117531460
|
||||||
|
IsActive: true
|
||||||
|
UI Component:
|
||||||
|
Canvas ID: 1
|
||||||
|
Hovered: false
|
||||||
|
Clicked: false
|
||||||
|
IsActive: true
|
||||||
|
Scripts: ~
|
||||||
|
- EID: 12
|
||||||
|
Name: Text
|
||||||
|
IsActive: true
|
||||||
|
NumberOfChildren: 0
|
||||||
|
Components:
|
||||||
|
Transform Component:
|
||||||
|
Translate: {x: 250, y: -500, z: 0.100000001}
|
||||||
|
Rotate: {x: 0, y: 0, z: 0}
|
||||||
|
Scale: {x: 50, y: 50, z: 50}
|
||||||
|
IsActive: true
|
||||||
|
Text Renderer Component:
|
||||||
|
Text: Press Space to contiune
|
||||||
|
Font: 176667660
|
||||||
|
Color: {x: 0, y: 0, z: 0, w: 1}
|
||||||
|
Text Size: {x: 1, y: 1, z: 1}
|
||||||
|
IsActive: true
|
||||||
|
UI Component:
|
||||||
|
Canvas ID: 1
|
||||||
|
Hovered: false
|
||||||
|
Clicked: false
|
||||||
|
IsActive: true
|
||||||
|
Scripts: ~
|
||||||
|
- EID: 3
|
||||||
|
Name: Camera
|
||||||
|
IsActive: true
|
||||||
|
NumberOfChildren: 0
|
||||||
|
Components:
|
||||||
|
Transform Component:
|
||||||
|
Translate: {x: 0, y: 0, z: 0}
|
||||||
|
Rotate: {x: 0, y: 0, z: 0}
|
||||||
|
Scale: {x: 1, y: 1, z: 1}
|
||||||
|
IsActive: true
|
||||||
|
Camera Component:
|
||||||
|
Position: {x: 0, y: 0, z: 0}
|
||||||
|
Pitch: 0
|
||||||
|
Yaw: 0
|
||||||
|
Roll: 0
|
||||||
|
Width: 1920
|
||||||
|
Near: 0.00999999978
|
||||||
|
Far: 10000
|
||||||
|
Perspective: true
|
||||||
|
FOV: 90
|
||||||
|
IsActive: true
|
||||||
|
Scripts: ~
|
||||||
|
- EID: 7
|
||||||
|
Name: CutsceneManager
|
||||||
|
IsActive: true
|
||||||
|
NumberOfChildren: 0
|
||||||
|
Components: ~
|
||||||
|
Scripts:
|
||||||
|
- Type: CutsceneEnd
|
||||||
|
Enabled: true
|
||||||
|
nextScene: 92009475
|
||||||
|
duration: 1
|
||||||
|
skipDuration: 0.100000001
|
||||||
|
cutscene4Points: 4
|
||||||
|
cutscene4Pics: 10
|
||||||
|
cutscene5Points: 21
|
||||||
|
cutscene5Pics: 15
|
||||||
|
canvas4: 1
|
||||||
|
canvas5: 14
|
||||||
|
- EID: 4
|
||||||
|
Name: CutScene4Points
|
||||||
|
IsActive: true
|
||||||
|
NumberOfChildren: 3
|
||||||
|
Components: ~
|
||||||
|
Scripts: ~
|
||||||
|
- EID: 9
|
||||||
|
Name: Pic1Point
|
||||||
|
IsActive: true
|
||||||
|
NumberOfChildren: 0
|
||||||
|
Components:
|
||||||
|
Transform Component:
|
||||||
|
Translate: {x: -275, y: 255, z: 0.5}
|
||||||
|
Rotate: {x: 0, y: 0, z: 0}
|
||||||
|
Scale: {x: 1, y: 1, z: 1}
|
||||||
|
IsActive: true
|
||||||
|
Scripts: ~
|
||||||
|
- EID: 8
|
||||||
|
Name: Pic2Point
|
||||||
|
IsActive: true
|
||||||
|
NumberOfChildren: 0
|
||||||
|
Components:
|
||||||
|
Transform Component:
|
||||||
|
Translate: {x: 600, y: 150, z: 0.400000006}
|
||||||
|
Rotate: {x: 0, y: 0, z: 0}
|
||||||
|
Scale: {x: 1, y: 1, z: 1}
|
||||||
|
IsActive: true
|
||||||
|
Scripts: ~
|
||||||
|
- EID: 65549
|
||||||
|
Name: Pic3Point
|
||||||
|
IsActive: true
|
||||||
|
NumberOfChildren: 0
|
||||||
|
Components:
|
||||||
|
Transform Component:
|
||||||
|
Translate: {x: 0, y: -275, z: 0.300000012}
|
||||||
|
Rotate: {x: 0, y: 0, z: 0}
|
||||||
|
Scale: {x: 1, y: 1, z: 1}
|
||||||
|
IsActive: true
|
||||||
|
Scripts: ~
|
||||||
|
- EID: 14
|
||||||
|
Name: Canvas5
|
||||||
|
IsActive: false
|
||||||
|
NumberOfChildren: 3
|
||||||
|
Components:
|
||||||
|
Canvas Component:
|
||||||
|
Canvas Width: 1920
|
||||||
|
Canvas Height: 1080
|
||||||
|
Scale by canvas width: false
|
||||||
|
IsActive: false
|
||||||
|
Scripts: ~
|
||||||
|
- EID: 15
|
||||||
|
Name: CutScene5
|
||||||
|
IsActive: true
|
||||||
|
NumberOfChildren: 2
|
||||||
|
Components:
|
||||||
|
UI Component:
|
||||||
|
Canvas ID: 14
|
||||||
|
Hovered: false
|
||||||
|
Clicked: false
|
||||||
|
IsActive: true
|
||||||
|
Scripts: ~
|
||||||
|
- EID: 16
|
||||||
|
Name: pic1
|
||||||
|
IsActive: true
|
||||||
|
NumberOfChildren: 0
|
||||||
|
Components:
|
||||||
|
Transform Component:
|
||||||
|
Translate: {x: -600, y: 1000, z: 0.5}
|
||||||
|
Rotate: {x: 0, y: 0, z: 0}
|
||||||
|
Scale: {x: 634, y: 1027, z: 1}
|
||||||
|
IsActive: true
|
||||||
|
Renderable Component:
|
||||||
|
Mesh: 141771688
|
||||||
|
Material: 118069989
|
||||||
|
IsActive: true
|
||||||
|
UI Component:
|
||||||
|
Canvas ID: 14
|
||||||
|
Hovered: false
|
||||||
|
Clicked: false
|
||||||
|
IsActive: true
|
||||||
|
Scripts: ~
|
||||||
|
- EID: 17
|
||||||
|
Name: pic2
|
||||||
|
IsActive: true
|
||||||
|
NumberOfChildren: 0
|
||||||
|
Components:
|
||||||
|
Transform Component:
|
||||||
|
Translate: {x: 250, y: -1000, z: 0.400000006}
|
||||||
|
Rotate: {x: 0, y: 0, z: 0}
|
||||||
|
Scale: {x: 1337, y: 1028, z: 1}
|
||||||
|
IsActive: true
|
||||||
|
Renderable Component:
|
||||||
|
Mesh: 141771688
|
||||||
|
Material: 132945336
|
||||||
|
IsActive: true
|
||||||
|
UI Component:
|
||||||
|
Canvas ID: 14
|
||||||
|
Hovered: false
|
||||||
|
Clicked: false
|
||||||
|
IsActive: true
|
||||||
|
Scripts: ~
|
||||||
|
- EID: 19
|
||||||
|
Name: Background
|
||||||
|
IsActive: true
|
||||||
|
NumberOfChildren: 0
|
||||||
|
Components:
|
||||||
|
Transform Component:
|
||||||
|
Translate: {x: 0, y: 0, z: 0.699999988}
|
||||||
|
Rotate: {x: 0, y: 0, z: 0}
|
||||||
|
Scale: {x: 1920, y: 1080, z: 1}
|
||||||
|
IsActive: true
|
||||||
|
Renderable Component:
|
||||||
|
Mesh: 141771688
|
||||||
|
Material: 117531460
|
||||||
|
IsActive: true
|
||||||
|
UI Component:
|
||||||
|
Canvas ID: 14
|
||||||
|
Hovered: false
|
||||||
|
Clicked: false
|
||||||
|
IsActive: true
|
||||||
|
Scripts: ~
|
||||||
|
- EID: 20
|
||||||
|
Name: Text
|
||||||
|
IsActive: true
|
||||||
|
NumberOfChildren: 0
|
||||||
|
Components:
|
||||||
|
Transform Component:
|
||||||
|
Translate: {x: 250, y: -500, z: 0.100000001}
|
||||||
|
Rotate: {x: 0, y: 0, z: 0}
|
||||||
|
Scale: {x: 50, y: 50, z: 50}
|
||||||
|
IsActive: true
|
||||||
|
Text Renderer Component:
|
||||||
|
Text: Press Space to contiune
|
||||||
|
Font: 176667660
|
||||||
|
Color: {x: 0, y: 0, z: 0, w: 1}
|
||||||
|
Text Size: {x: 1, y: 1, z: 1}
|
||||||
|
IsActive: false
|
||||||
|
UI Component:
|
||||||
|
Canvas ID: 14
|
||||||
|
Hovered: false
|
||||||
|
Clicked: false
|
||||||
|
IsActive: true
|
||||||
|
Scripts: ~
|
||||||
|
- EID: 21
|
||||||
|
Name: CutScene5Points
|
||||||
|
IsActive: true
|
||||||
|
NumberOfChildren: 2
|
||||||
|
Components: ~
|
||||||
|
Scripts: ~
|
||||||
|
- EID: 22
|
||||||
|
Name: Pic1Point
|
||||||
|
IsActive: true
|
||||||
|
NumberOfChildren: 0
|
||||||
|
Components:
|
||||||
|
Transform Component:
|
||||||
|
Translate: {x: -600, y: 0, z: 0.5}
|
||||||
|
Rotate: {x: 0, y: 0, z: 0}
|
||||||
|
Scale: {x: 1, y: 1, z: 1}
|
||||||
|
IsActive: true
|
||||||
|
Scripts: ~
|
||||||
|
- EID: 23
|
||||||
|
Name: Pic2Point
|
||||||
|
IsActive: true
|
||||||
|
NumberOfChildren: 0
|
||||||
|
Components:
|
||||||
|
Transform Component:
|
||||||
|
Translate: {x: 250, y: 0, z: 0.400000006}
|
||||||
|
Rotate: {x: 0, y: 0, z: 0}
|
||||||
|
Scale: {x: 1, y: 1, z: 1}
|
||||||
|
IsActive: true
|
||||||
|
Scripts: ~
|
|
@ -0,0 +1,3 @@
|
||||||
|
Name: CutSceneEnd
|
||||||
|
ID: 84606951
|
||||||
|
Type: 5
|
|
@ -113,6 +113,8 @@
|
||||||
Text Renderer Component:
|
Text Renderer Component:
|
||||||
Text: Press Space to contiune
|
Text: Press Space to contiune
|
||||||
Font: 176667660
|
Font: 176667660
|
||||||
|
Color: {x: 0, y: 0, z: 0, w: 1}
|
||||||
|
Text Size: {x: 1, y: 1, z: 1}
|
||||||
IsActive: true
|
IsActive: true
|
||||||
UI Component:
|
UI Component:
|
||||||
Canvas ID: 1
|
Canvas ID: 1
|
||||||
|
@ -148,9 +150,11 @@
|
||||||
NumberOfChildren: 0
|
NumberOfChildren: 0
|
||||||
Components: ~
|
Components: ~
|
||||||
Scripts:
|
Scripts:
|
||||||
- Type: Cutscene
|
- Type: CutsceneIntro
|
||||||
Enabled: true
|
Enabled: true
|
||||||
duration: 2
|
nextScene: 96668835
|
||||||
|
duration: 1
|
||||||
|
skipDuration: 0.100000001
|
||||||
cutscene1Points: 4
|
cutscene1Points: 4
|
||||||
cutscene1Pics: 10
|
cutscene1Pics: 10
|
||||||
cutscene2Points: 20
|
cutscene2Points: 20
|
||||||
|
@ -314,6 +318,8 @@
|
||||||
Text Renderer Component:
|
Text Renderer Component:
|
||||||
Text: Press Space to contiune
|
Text: Press Space to contiune
|
||||||
Font: 176667660
|
Font: 176667660
|
||||||
|
Color: {x: 0, y: 0, z: 0, w: 1}
|
||||||
|
Text Size: {x: 1, y: 1, z: 1}
|
||||||
IsActive: true
|
IsActive: true
|
||||||
UI Component:
|
UI Component:
|
||||||
Canvas ID: 13
|
Canvas ID: 13
|
||||||
|
@ -448,7 +454,7 @@
|
||||||
NumberOfChildren: 0
|
NumberOfChildren: 0
|
||||||
Components:
|
Components:
|
||||||
Transform Component:
|
Transform Component:
|
||||||
Translate: {x: -1425, y: -200, z: 0.5}
|
Translate: {x: -1600, y: -200, z: 0.5}
|
||||||
Rotate: {x: 0, y: 0, z: 0}
|
Rotate: {x: 0, y: 0, z: 0}
|
||||||
Scale: {x: 1299, y: 575, z: 1}
|
Scale: {x: 1299, y: 575, z: 1}
|
||||||
IsActive: true
|
IsActive: true
|
||||||
|
@ -515,6 +521,8 @@
|
||||||
Text Renderer Component:
|
Text Renderer Component:
|
||||||
Text: Press Space to contiune
|
Text: Press Space to contiune
|
||||||
Font: 176667660
|
Font: 176667660
|
||||||
|
Color: {x: 0, y: 0, z: 0, w: 1}
|
||||||
|
Text Size: {x: 1, y: 1, z: 1}
|
||||||
IsActive: false
|
IsActive: false
|
||||||
UI Component:
|
UI Component:
|
||||||
Canvas ID: 24
|
Canvas ID: 24
|
||||||
|
|
|
@ -277,7 +277,12 @@
|
||||||
Position Offset: {x: 0, y: 0.5, z: 0}
|
Position Offset: {x: 0, y: 0.5, z: 0}
|
||||||
Rotation Offset: {x: 0, y: 0, z: 0}
|
Rotation Offset: {x: 0, y: 0, z: 0}
|
||||||
IsActive: true
|
IsActive: true
|
||||||
Scripts: ~
|
Scripts:
|
||||||
|
- Type: SHADE_Scripting.Audio.SoundLoopEmitter
|
||||||
|
Enabled: true
|
||||||
|
clipHandlerName: SFXWash65
|
||||||
|
clipPath: event:/Props/washing_machine_loop
|
||||||
|
volume: 0.300000012
|
||||||
- EID: 66
|
- EID: 66
|
||||||
Name: washingMachineDoor
|
Name: washingMachineDoor
|
||||||
IsActive: true
|
IsActive: true
|
||||||
|
@ -418,7 +423,12 @@
|
||||||
Position Offset: {x: 0, y: 0.5, z: 0}
|
Position Offset: {x: 0, y: 0.5, z: 0}
|
||||||
Rotation Offset: {x: 0, y: 0, z: 0}
|
Rotation Offset: {x: 0, y: 0, z: 0}
|
||||||
IsActive: true
|
IsActive: true
|
||||||
Scripts: ~
|
Scripts:
|
||||||
|
- Type: SHADE_Scripting.Audio.SoundLoopEmitter
|
||||||
|
Enabled: true
|
||||||
|
clipHandlerName: SFXWash43
|
||||||
|
clipPath: event:/Props/washing_machine_loop
|
||||||
|
volume: 0.300000012
|
||||||
- EID: 44
|
- EID: 44
|
||||||
Name: washingMachineDoor
|
Name: washingMachineDoor
|
||||||
IsActive: true
|
IsActive: true
|
||||||
|
@ -460,7 +470,12 @@
|
||||||
Position Offset: {x: 0, y: 0.5, z: 0}
|
Position Offset: {x: 0, y: 0.5, z: 0}
|
||||||
Rotation Offset: {x: 0, y: 0, z: 0}
|
Rotation Offset: {x: 0, y: 0, z: 0}
|
||||||
IsActive: true
|
IsActive: true
|
||||||
Scripts: ~
|
Scripts:
|
||||||
|
- Type: SHADE_Scripting.Audio.SoundLoopEmitter
|
||||||
|
Enabled: true
|
||||||
|
clipHandlerName: SFXWash42
|
||||||
|
clipPath: event:/Props/washing_machine_loop
|
||||||
|
volume: 0.300000012
|
||||||
- EID: 131081
|
- EID: 131081
|
||||||
Name: washingMachineDoor
|
Name: washingMachineDoor
|
||||||
IsActive: true
|
IsActive: true
|
||||||
|
@ -2529,7 +2544,7 @@
|
||||||
Collider Component:
|
Collider Component:
|
||||||
Colliders:
|
Colliders:
|
||||||
- Is Trigger: false
|
- Is Trigger: false
|
||||||
Collision Tag: 0
|
Collision Tag: 1
|
||||||
Type: Box
|
Type: Box
|
||||||
Half Extents: {x: 1.79999995, y: 1, z: 4}
|
Half Extents: {x: 1.79999995, y: 1, z: 4}
|
||||||
Friction: 0.400000006
|
Friction: 0.400000006
|
||||||
|
@ -2538,7 +2553,7 @@
|
||||||
Position Offset: {x: 0, y: 0.550000012, z: 0}
|
Position Offset: {x: 0, y: 0.550000012, z: 0}
|
||||||
Rotation Offset: {x: 0, y: 0, z: 0}
|
Rotation Offset: {x: 0, y: 0, z: 0}
|
||||||
- Is Trigger: false
|
- Is Trigger: false
|
||||||
Collision Tag: 0
|
Collision Tag: 1
|
||||||
Type: Box
|
Type: Box
|
||||||
Half Extents: {x: 1.79999995, y: 1, z: 2.70000005}
|
Half Extents: {x: 1.79999995, y: 1, z: 2.70000005}
|
||||||
Friction: 0.400000006
|
Friction: 0.400000006
|
||||||
|
@ -4101,60 +4116,6 @@
|
||||||
Rotation Offset: {x: 0, y: 0, z: 0}
|
Rotation Offset: {x: 0, y: 0, z: 0}
|
||||||
IsActive: true
|
IsActive: true
|
||||||
Scripts: ~
|
Scripts: ~
|
||||||
- EID: 199
|
|
||||||
Name: =====Text====
|
|
||||||
IsActive: true
|
|
||||||
NumberOfChildren: 3
|
|
||||||
Components: ~
|
|
||||||
Scripts: ~
|
|
||||||
- EID: 237
|
|
||||||
Name: Score
|
|
||||||
IsActive: true
|
|
||||||
NumberOfChildren: 0
|
|
||||||
Components:
|
|
||||||
Transform Component:
|
|
||||||
Translate: {x: -800, y: 400, z: 0.100000001}
|
|
||||||
Rotate: {x: 0, y: 0, z: 0}
|
|
||||||
Scale: {x: 60, y: 60, z: 60}
|
|
||||||
IsActive: true
|
|
||||||
Text Renderer Component:
|
|
||||||
Text: "Score: 0"
|
|
||||||
Font: 176667660
|
|
||||||
Color: {x: 1, y: 1, z: 1, w: 1}
|
|
||||||
IsActive: true
|
|
||||||
Scripts: ~
|
|
||||||
- EID: 206
|
|
||||||
Name: Timer
|
|
||||||
IsActive: true
|
|
||||||
NumberOfChildren: 0
|
|
||||||
Components:
|
|
||||||
Transform Component:
|
|
||||||
Translate: {x: 500, y: 400, z: 0.100000001}
|
|
||||||
Rotate: {x: 0, y: 0, z: 0}
|
|
||||||
Scale: {x: 60, y: 60, z: 60}
|
|
||||||
IsActive: true
|
|
||||||
Text Renderer Component:
|
|
||||||
Text: "Time Left: 200"
|
|
||||||
Font: 176667660
|
|
||||||
Color: {x: 1, y: 1, z: 1, w: 1}
|
|
||||||
IsActive: true
|
|
||||||
Scripts: ~
|
|
||||||
- EID: 238
|
|
||||||
Name: Multiplier
|
|
||||||
IsActive: true
|
|
||||||
NumberOfChildren: 0
|
|
||||||
Components:
|
|
||||||
Transform Component:
|
|
||||||
Translate: {x: -800, y: 300, z: 0.100000001}
|
|
||||||
Rotate: {x: 0, y: 0, z: 0}
|
|
||||||
Scale: {x: 60, y: 60, z: 60}
|
|
||||||
IsActive: true
|
|
||||||
Text Renderer Component:
|
|
||||||
Text: ""
|
|
||||||
Font: 176667660
|
|
||||||
Color: {x: 1, y: 1, z: 1, w: 1}
|
|
||||||
IsActive: true
|
|
||||||
Scripts: ~
|
|
||||||
- EID: 236
|
- EID: 236
|
||||||
Name: ====GameManager====
|
Name: ====GameManager====
|
||||||
IsActive: true
|
IsActive: true
|
||||||
|
@ -4169,9 +4130,9 @@
|
||||||
totalItemCount: 4
|
totalItemCount: 4
|
||||||
Score: 0
|
Score: 0
|
||||||
timer: 200
|
timer: 200
|
||||||
scoreText: 237
|
scoreText: 449
|
||||||
timeText: 206
|
timeText: 520
|
||||||
multiplierText: 238
|
multiplierText: 139
|
||||||
maxMultiplierDuration: 5
|
maxMultiplierDuration: 5
|
||||||
maxMultiplierCombo: 10
|
maxMultiplierCombo: 10
|
||||||
multiplierFont: 60
|
multiplierFont: 60
|
||||||
|
@ -4225,6 +4186,7 @@
|
||||||
- Type: Homeowner1
|
- Type: Homeowner1
|
||||||
Enabled: true
|
Enabled: true
|
||||||
waypointsPool: 234
|
waypointsPool: 234
|
||||||
|
startWaypoint: 233
|
||||||
patrolSpeed: 3
|
patrolSpeed: 3
|
||||||
chaseSpeed: 6
|
chaseSpeed: 6
|
||||||
turningSpeed: 5
|
turningSpeed: 5
|
||||||
|
@ -4903,9 +4865,9 @@
|
||||||
NumberOfChildren: 5
|
NumberOfChildren: 5
|
||||||
Components:
|
Components:
|
||||||
Transform Component:
|
Transform Component:
|
||||||
Translate: {x: -8, y: 1.142977, z: -4}
|
Translate: {x: -8, y: 0.899999976, z: -4}
|
||||||
Rotate: {x: -0, y: 1.57079649, z: 0}
|
Rotate: {x: -0, y: 1.57079649, z: 0}
|
||||||
Scale: {x: 0.999999881, y: 1, z: 0.999999881}
|
Scale: {x: 0.999965608, y: 1, z: 0.999965608}
|
||||||
IsActive: true
|
IsActive: true
|
||||||
Renderable Component:
|
Renderable Component:
|
||||||
Mesh: 149697411
|
Mesh: 149697411
|
||||||
|
@ -5016,7 +4978,7 @@
|
||||||
armLength: 3
|
armLength: 3
|
||||||
turnSpeedPitch: 0.200000003
|
turnSpeedPitch: 0.200000003
|
||||||
turnSpeedYaw: 0.400000006
|
turnSpeedYaw: 0.400000006
|
||||||
inverseXControls: false
|
inverseXControls: true
|
||||||
inverseYControls: false
|
inverseYControls: false
|
||||||
pitchUpperClamp: 45
|
pitchUpperClamp: 45
|
||||||
pitchLowerClamp: 5
|
pitchLowerClamp: 5
|
||||||
|
@ -5135,6 +5097,7 @@
|
||||||
endPoint2: [1, 1.5, -7.5]
|
endPoint2: [1, 1.5, -7.5]
|
||||||
endPoint3: [2.5, 1.5, -3]
|
endPoint3: [2.5, 1.5, -3]
|
||||||
playerCamera: 65730
|
playerCamera: 65730
|
||||||
|
gameplayCanvas: 459
|
||||||
duration: 3
|
duration: 3
|
||||||
- EID: 453
|
- EID: 453
|
||||||
Name: PreviewLevel1
|
Name: PreviewLevel1
|
||||||
|
@ -5221,7 +5184,7 @@
|
||||||
Transform Component:
|
Transform Component:
|
||||||
Translate: {x: 0, y: 100, z: 0}
|
Translate: {x: 0, y: 100, z: 0}
|
||||||
Rotate: {x: 0, y: 0, z: 0}
|
Rotate: {x: 0, y: 0, z: 0}
|
||||||
Scale: {x: 300, y: 200, z: 500}
|
Scale: {x: 400, y: 100, z: 500}
|
||||||
IsActive: true
|
IsActive: true
|
||||||
Renderable Component:
|
Renderable Component:
|
||||||
Mesh: 141771688
|
Mesh: 141771688
|
||||||
|
@ -5237,7 +5200,15 @@
|
||||||
Hovered: false
|
Hovered: false
|
||||||
Clicked: false
|
Clicked: false
|
||||||
IsActive: true
|
IsActive: true
|
||||||
Scripts: ~
|
Scripts:
|
||||||
|
- Type: SHADE_Scripting.UI.ButtonFX
|
||||||
|
Enabled: true
|
||||||
|
onHoverEnterSound: Empty
|
||||||
|
onHoverExitSound: Empty
|
||||||
|
onClickSound: event:/UI/mouse_down_element
|
||||||
|
onReleaseSound: Empty
|
||||||
|
hoverScale: 1.10000002
|
||||||
|
clickScale: 0.899999976
|
||||||
- EID: 456
|
- EID: 456
|
||||||
Name: QuitButton
|
Name: QuitButton
|
||||||
IsActive: true
|
IsActive: true
|
||||||
|
@ -5246,7 +5217,7 @@
|
||||||
Transform Component:
|
Transform Component:
|
||||||
Translate: {x: 0, y: -300, z: 0}
|
Translate: {x: 0, y: -300, z: 0}
|
||||||
Rotate: {x: 0, y: 0, z: 0}
|
Rotate: {x: 0, y: 0, z: 0}
|
||||||
Scale: {x: 300, y: 200, z: 500}
|
Scale: {x: 400, y: 100, z: 500}
|
||||||
IsActive: true
|
IsActive: true
|
||||||
Renderable Component:
|
Renderable Component:
|
||||||
Mesh: 141771688
|
Mesh: 141771688
|
||||||
|
@ -5262,7 +5233,15 @@
|
||||||
Hovered: false
|
Hovered: false
|
||||||
Clicked: false
|
Clicked: false
|
||||||
IsActive: true
|
IsActive: true
|
||||||
Scripts: ~
|
Scripts:
|
||||||
|
- Type: SHADE_Scripting.UI.ButtonFX
|
||||||
|
Enabled: true
|
||||||
|
onHoverEnterSound: Empty
|
||||||
|
onHoverExitSound: Empty
|
||||||
|
onClickSound: event:/UI/mouse_down_element
|
||||||
|
onReleaseSound: Empty
|
||||||
|
hoverScale: 1.10000002
|
||||||
|
clickScale: 0.899999976
|
||||||
- EID: 455
|
- EID: 455
|
||||||
Name: RetryButton
|
Name: RetryButton
|
||||||
IsActive: true
|
IsActive: true
|
||||||
|
@ -5271,7 +5250,7 @@
|
||||||
Transform Component:
|
Transform Component:
|
||||||
Translate: {x: 0, y: -100, z: 0}
|
Translate: {x: 0, y: -100, z: 0}
|
||||||
Rotate: {x: 0, y: 0, z: 0}
|
Rotate: {x: 0, y: 0, z: 0}
|
||||||
Scale: {x: 300, y: 200, z: 500}
|
Scale: {x: 400, y: 100, z: 500}
|
||||||
IsActive: true
|
IsActive: true
|
||||||
Renderable Component:
|
Renderable Component:
|
||||||
Mesh: 141771688
|
Mesh: 141771688
|
||||||
|
@ -5287,7 +5266,15 @@
|
||||||
Hovered: false
|
Hovered: false
|
||||||
Clicked: false
|
Clicked: false
|
||||||
IsActive: true
|
IsActive: true
|
||||||
Scripts: ~
|
Scripts:
|
||||||
|
- Type: SHADE_Scripting.UI.ButtonFX
|
||||||
|
Enabled: true
|
||||||
|
onHoverEnterSound: Empty
|
||||||
|
onHoverExitSound: Empty
|
||||||
|
onClickSound: event:/UI/mouse_down_element
|
||||||
|
onReleaseSound: Empty
|
||||||
|
hoverScale: 1.10000002
|
||||||
|
clickScale: 0.899999976
|
||||||
- EID: 454
|
- EID: 454
|
||||||
Name: GamePauseText
|
Name: GamePauseText
|
||||||
IsActive: true
|
IsActive: true
|
||||||
|
@ -5300,8 +5287,9 @@
|
||||||
IsActive: true
|
IsActive: true
|
||||||
Text Renderer Component:
|
Text Renderer Component:
|
||||||
Text: Game Pause
|
Text: Game Pause
|
||||||
Font: 176667660
|
Font: 174412429
|
||||||
Color: {x: 1, y: 1, z: 1, w: 1}
|
Color: {x: 1, y: 1, z: 1, w: 1}
|
||||||
|
Text Size: {x: 1, y: 1, z: 1}
|
||||||
IsActive: false
|
IsActive: false
|
||||||
UI Component:
|
UI Component:
|
||||||
Canvas ID: 458
|
Canvas ID: 458
|
||||||
|
@ -5344,4 +5332,146 @@
|
||||||
Enabled: true
|
Enabled: true
|
||||||
alphaValue: 1
|
alphaValue: 1
|
||||||
fadeInTime: 0.5
|
fadeInTime: 0.5
|
||||||
fadeOutTime: 0.5
|
fadeOutTime: 0.5
|
||||||
|
- EID: 459
|
||||||
|
Name: Gameplay Canvas
|
||||||
|
IsActive: true
|
||||||
|
NumberOfChildren: 3
|
||||||
|
Components:
|
||||||
|
Canvas Component:
|
||||||
|
Canvas Width: 1920
|
||||||
|
Canvas Height: 1080
|
||||||
|
Scale by canvas width: false
|
||||||
|
IsActive: true
|
||||||
|
Scripts: ~
|
||||||
|
- EID: 449
|
||||||
|
Name: Score Text
|
||||||
|
IsActive: true
|
||||||
|
NumberOfChildren: 1
|
||||||
|
Components:
|
||||||
|
Transform Component:
|
||||||
|
Translate: {x: -800, y: 365, z: 0.600000024}
|
||||||
|
Rotate: {x: 0, y: 0, z: 0}
|
||||||
|
Scale: {x: 100, y: 100, z: 60}
|
||||||
|
IsActive: true
|
||||||
|
Text Renderer Component:
|
||||||
|
Text: My name is Brandon.
|
||||||
|
Font: 174412429
|
||||||
|
Color: {x: 1, y: 1, z: 1, w: 1}
|
||||||
|
Text Size: {x: 1, y: 1, z: 1}
|
||||||
|
IsActive: true
|
||||||
|
UI Component:
|
||||||
|
Canvas ID: 459
|
||||||
|
Hovered: false
|
||||||
|
Clicked: false
|
||||||
|
IsActive: true
|
||||||
|
Scripts: ~
|
||||||
|
- EID: 521
|
||||||
|
Name: Score BG
|
||||||
|
IsActive: true
|
||||||
|
NumberOfChildren: 0
|
||||||
|
Components:
|
||||||
|
Transform Component:
|
||||||
|
Translate: {x: 0.300000012, y: 0.600000024, z: 0.98999995}
|
||||||
|
Rotate: {x: 0, y: 0, z: 0}
|
||||||
|
Scale: {x: 3.45600009, y: 2, z: 1}
|
||||||
|
IsActive: true
|
||||||
|
Renderable Component:
|
||||||
|
Mesh: 141771688
|
||||||
|
Material: 127527215
|
||||||
|
IsActive: true
|
||||||
|
UI Component:
|
||||||
|
Canvas ID: 459
|
||||||
|
Hovered: false
|
||||||
|
Clicked: false
|
||||||
|
IsActive: true
|
||||||
|
Scripts: ~
|
||||||
|
- EID: 520
|
||||||
|
Name: Timer Text
|
||||||
|
IsActive: true
|
||||||
|
NumberOfChildren: 1
|
||||||
|
Components:
|
||||||
|
Transform Component:
|
||||||
|
Translate: {x: 700, y: 400, z: 0.100000001}
|
||||||
|
Rotate: {x: 0, y: 0, z: 0}
|
||||||
|
Scale: {x: 60, y: 60, z: 60}
|
||||||
|
IsActive: true
|
||||||
|
Text Renderer Component:
|
||||||
|
Text: My name is Brandon.
|
||||||
|
Font: 174412429
|
||||||
|
Color: {x: 1, y: 1, z: 1, w: 1}
|
||||||
|
Text Size: {x: 1, y: 1, z: 1}
|
||||||
|
IsActive: true
|
||||||
|
UI Component:
|
||||||
|
Canvas ID: 459
|
||||||
|
Hovered: false
|
||||||
|
Clicked: false
|
||||||
|
IsActive: true
|
||||||
|
Scripts: ~
|
||||||
|
- EID: 519
|
||||||
|
Name: Timer BG
|
||||||
|
IsActive: true
|
||||||
|
NumberOfChildren: 0
|
||||||
|
Components:
|
||||||
|
Transform Component:
|
||||||
|
Translate: {x: 0.5, y: 0.300000012, z: 0.98999995}
|
||||||
|
Rotate: {x: 0, y: 0, z: 0}
|
||||||
|
Scale: {x: 5, y: 2, z: 1}
|
||||||
|
IsActive: true
|
||||||
|
Renderable Component:
|
||||||
|
Mesh: 141771688
|
||||||
|
Material: 126220632
|
||||||
|
IsActive: true
|
||||||
|
UI Component:
|
||||||
|
Canvas ID: 459
|
||||||
|
Hovered: false
|
||||||
|
Clicked: false
|
||||||
|
IsActive: true
|
||||||
|
Scripts: ~
|
||||||
|
- EID: 139
|
||||||
|
Name: Multiplier Text
|
||||||
|
IsActive: true
|
||||||
|
NumberOfChildren: 1
|
||||||
|
Components:
|
||||||
|
Transform Component:
|
||||||
|
Translate: {x: -800, y: 250, z: 0.100000001}
|
||||||
|
Rotate: {x: 0, y: 0, z: 0}
|
||||||
|
Scale: {x: 50, y: 50, z: 60}
|
||||||
|
IsActive: true
|
||||||
|
Text Renderer Component:
|
||||||
|
Text: X2
|
||||||
|
Font: 174412429
|
||||||
|
Color: {x: 1, y: 1, z: 1, w: 1}
|
||||||
|
Text Size: {x: 1, y: 1, z: 1}
|
||||||
|
IsActive: true
|
||||||
|
UI Component:
|
||||||
|
Canvas ID: 459
|
||||||
|
Hovered: false
|
||||||
|
Clicked: false
|
||||||
|
IsActive: true
|
||||||
|
Scripts:
|
||||||
|
- Type: SHADE_Scripting.UI.MultiplierTextFx
|
||||||
|
Enabled: true
|
||||||
|
maxSize: 1
|
||||||
|
minSize: 0.300000012
|
||||||
|
minAlpha: 0.300000012
|
||||||
|
- EID: 518
|
||||||
|
Name: Multiplier BG
|
||||||
|
IsActive: true
|
||||||
|
NumberOfChildren: 0
|
||||||
|
Components:
|
||||||
|
Transform Component:
|
||||||
|
Translate: {x: 0.400000006, y: 0.400000006, z: 0.98999995}
|
||||||
|
Rotate: {x: 0, y: 0, z: 0}
|
||||||
|
Scale: {x: 4.26499987, y: 2, z: 1}
|
||||||
|
IsActive: true
|
||||||
|
Renderable Component:
|
||||||
|
Mesh: 141771688
|
||||||
|
Material: 133784677
|
||||||
|
IsActive: true
|
||||||
|
UI Component:
|
||||||
|
Canvas ID: 459
|
||||||
|
Hovered: false
|
||||||
|
Clicked: false
|
||||||
|
IsActive: true
|
||||||
|
Scripts: ~
|
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
|
@ -29,7 +29,7 @@
|
||||||
NumberOfChildren: 0
|
NumberOfChildren: 0
|
||||||
Components:
|
Components:
|
||||||
Transform Component:
|
Transform Component:
|
||||||
Translate: {x: 0, y: 0, z: 0.100000001}
|
Translate: {x: 0, y: 0, z: 0.300000012}
|
||||||
Rotate: {x: 0, y: 0, z: 0}
|
Rotate: {x: 0, y: 0, z: 0}
|
||||||
Scale: {x: 1920, y: 1080, z: 1}
|
Scale: {x: 1920, y: 1080, z: 1}
|
||||||
IsActive: true
|
IsActive: true
|
||||||
|
@ -49,7 +49,7 @@
|
||||||
NumberOfChildren: 0
|
NumberOfChildren: 0
|
||||||
Components:
|
Components:
|
||||||
Transform Component:
|
Transform Component:
|
||||||
Translate: {x: 0, y: 75, z: 0}
|
Translate: {x: 0, y: 75, z: 0.200000003}
|
||||||
Rotate: {x: 0, y: 0, z: 0}
|
Rotate: {x: 0, y: 0, z: 0}
|
||||||
Scale: {x: 400, y: 100, z: 1}
|
Scale: {x: 400, y: 100, z: 1}
|
||||||
IsActive: true
|
IsActive: true
|
||||||
|
@ -73,10 +73,10 @@
|
||||||
sceneID: 97158628
|
sceneID: 97158628
|
||||||
- Type: SHADE_Scripting.UI.ButtonFX
|
- Type: SHADE_Scripting.UI.ButtonFX
|
||||||
Enabled: true
|
Enabled: true
|
||||||
onHoverEnterSound: event:/Music/player_undetected
|
onHoverEnterSound: Empty
|
||||||
onHoverExitSound: event:/Music/player_undetected
|
onHoverExitSound: Empty
|
||||||
onClickSound: event:/Music/player_undetected
|
onClickSound: event:/UI/mouse_down_element
|
||||||
onReleaseSound: event:/Music/player_undetected
|
onReleaseSound: Empty
|
||||||
hoverScale: 1.10000002
|
hoverScale: 1.10000002
|
||||||
clickScale: 0.899999976
|
clickScale: 0.899999976
|
||||||
- EID: 6
|
- EID: 6
|
||||||
|
@ -85,7 +85,7 @@
|
||||||
NumberOfChildren: 0
|
NumberOfChildren: 0
|
||||||
Components:
|
Components:
|
||||||
Transform Component:
|
Transform Component:
|
||||||
Translate: {x: 0, y: -200, z: 0}
|
Translate: {x: 0, y: -200, z: 0.200000003}
|
||||||
Rotate: {x: 0, y: 0, z: 0}
|
Rotate: {x: 0, y: 0, z: 0}
|
||||||
Scale: {x: 400, y: 100, z: 1}
|
Scale: {x: 400, y: 100, z: 1}
|
||||||
IsActive: true
|
IsActive: true
|
||||||
|
@ -108,10 +108,10 @@
|
||||||
Enabled: true
|
Enabled: true
|
||||||
- Type: SHADE_Scripting.UI.ButtonFX
|
- Type: SHADE_Scripting.UI.ButtonFX
|
||||||
Enabled: true
|
Enabled: true
|
||||||
onHoverEnterSound: event:/Music/player_undetected
|
onHoverEnterSound: Empty
|
||||||
onHoverExitSound: event:/Music/player_undetected
|
onHoverExitSound: Empty
|
||||||
onClickSound: event:/Music/player_undetected
|
onClickSound: event:/UI/mouse_down_element
|
||||||
onReleaseSound: event:/Music/player_undetected
|
onReleaseSound: Empty
|
||||||
hoverScale: 1.10000002
|
hoverScale: 1.10000002
|
||||||
clickScale: 0.899999976
|
clickScale: 0.899999976
|
||||||
- EID: 3
|
- EID: 3
|
||||||
|
@ -153,4 +153,40 @@
|
||||||
Components: ~
|
Components: ~
|
||||||
Scripts:
|
Scripts:
|
||||||
- Type: SHADE_Scripting.UI.TweenManager
|
- Type: SHADE_Scripting.UI.TweenManager
|
||||||
Enabled: true
|
Enabled: true
|
||||||
|
- EID: 450
|
||||||
|
Name: TransitionCanvas
|
||||||
|
IsActive: true
|
||||||
|
NumberOfChildren: 1
|
||||||
|
Components:
|
||||||
|
Canvas Component:
|
||||||
|
Canvas Width: 1920
|
||||||
|
Canvas Height: 1080
|
||||||
|
Scale by canvas width: false
|
||||||
|
IsActive: true
|
||||||
|
Scripts: ~
|
||||||
|
- EID: 65982
|
||||||
|
Name: Transition
|
||||||
|
IsActive: true
|
||||||
|
NumberOfChildren: 0
|
||||||
|
Components:
|
||||||
|
Transform Component:
|
||||||
|
Translate: {x: 0, y: 0, z: 0.100000001}
|
||||||
|
Rotate: {x: 0, y: 0, z: 0}
|
||||||
|
Scale: {x: 2500, y: 1080, z: 1}
|
||||||
|
IsActive: true
|
||||||
|
Renderable Component:
|
||||||
|
Mesh: 141771688
|
||||||
|
Material: 120016136
|
||||||
|
IsActive: true
|
||||||
|
UI Component:
|
||||||
|
Canvas ID: 450
|
||||||
|
Hovered: false
|
||||||
|
Clicked: false
|
||||||
|
IsActive: true
|
||||||
|
Scripts:
|
||||||
|
- Type: SHADE_Scripting.UI.SceneFadeInOut
|
||||||
|
Enabled: true
|
||||||
|
alphaValue: 1
|
||||||
|
fadeInTime: 0.5
|
||||||
|
fadeOutTime: 0.5
|
|
@ -21,7 +21,7 @@
|
||||||
IsActive: true
|
IsActive: true
|
||||||
Renderable Component:
|
Renderable Component:
|
||||||
Mesh: 141771688
|
Mesh: 141771688
|
||||||
Material: 129138332
|
Material: 121834459
|
||||||
IsActive: true
|
IsActive: true
|
||||||
UI Component:
|
UI Component:
|
||||||
Canvas ID: 0
|
Canvas ID: 0
|
||||||
|
@ -97,13 +97,13 @@
|
||||||
Scripts:
|
Scripts:
|
||||||
- Type: ChangeSceneButton
|
- Type: ChangeSceneButton
|
||||||
Enabled: true
|
Enabled: true
|
||||||
sceneID: 96668835
|
sceneID: 91947920
|
||||||
- Type: SHADE_Scripting.UI.ButtonFX
|
- Type: SHADE_Scripting.UI.ButtonFX
|
||||||
Enabled: true
|
Enabled: true
|
||||||
onHoverEnterSound: event:/Music/player_undetected
|
onHoverEnterSound: Empty
|
||||||
onHoverExitSound: "event:/Music/player_undetected\x00<30><30><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>"
|
onHoverExitSound: Empty
|
||||||
onClickSound: event:/Music/player_undetected
|
onClickSound: event:/UI/mouse_down_element
|
||||||
onReleaseSound: event:/Music/player_undetected
|
onReleaseSound: Empty
|
||||||
hoverScale: 1.10000002
|
hoverScale: 1.10000002
|
||||||
clickScale: 0.899999976
|
clickScale: 0.899999976
|
||||||
- EID: 6
|
- EID: 6
|
||||||
|
@ -135,10 +135,10 @@
|
||||||
Enabled: true
|
Enabled: true
|
||||||
- Type: SHADE_Scripting.UI.ButtonFX
|
- Type: SHADE_Scripting.UI.ButtonFX
|
||||||
Enabled: true
|
Enabled: true
|
||||||
onHoverEnterSound: event:/Music/player_undetected
|
onHoverEnterSound: Empty
|
||||||
onHoverExitSound: event:/Music/player_undetected
|
onHoverExitSound: Empty
|
||||||
onClickSound: event:/Music/player_undetected
|
onClickSound: event:/UI/mouse_down_element
|
||||||
onReleaseSound: event:/Music/player_undetected
|
onReleaseSound: Empty
|
||||||
hoverScale: 1.10000002
|
hoverScale: 1.10000002
|
||||||
clickScale: 0.899999976
|
clickScale: 0.899999976
|
||||||
- EID: 7
|
- EID: 7
|
||||||
|
@ -168,10 +168,10 @@
|
||||||
Scripts:
|
Scripts:
|
||||||
- Type: SHADE_Scripting.UI.ButtonFX
|
- Type: SHADE_Scripting.UI.ButtonFX
|
||||||
Enabled: true
|
Enabled: true
|
||||||
onHoverEnterSound: event:/Music/player_undetected
|
onHoverEnterSound: Empty
|
||||||
onHoverExitSound: event:/Music/player_undetected
|
onHoverExitSound: Empty
|
||||||
onClickSound: event:/Music/player_undetected
|
onClickSound: event:/UI/mouse_down_element
|
||||||
onReleaseSound: event:/Music/player_undetected
|
onReleaseSound: Empty
|
||||||
hoverScale: 1.10000002
|
hoverScale: 1.10000002
|
||||||
clickScale: 0.899999976
|
clickScale: 0.899999976
|
||||||
- Type: SHADE_Scripting.UI.ChangeCanvasButton
|
- Type: SHADE_Scripting.UI.ChangeCanvasButton
|
||||||
|
@ -204,10 +204,10 @@
|
||||||
Scripts:
|
Scripts:
|
||||||
- Type: SHADE_Scripting.UI.ButtonFX
|
- Type: SHADE_Scripting.UI.ButtonFX
|
||||||
Enabled: true
|
Enabled: true
|
||||||
onHoverEnterSound: event:/Music/player_undetected
|
onHoverEnterSound: Empty
|
||||||
onHoverExitSound: event:/Music/player_undetected
|
onHoverExitSound: Empty
|
||||||
onClickSound: event:/Music/player_undetected
|
onClickSound: event:/UI/mouse_down_element
|
||||||
onReleaseSound: event:/Music/player_undetected
|
onReleaseSound: Empty
|
||||||
hoverScale: 1.10000002
|
hoverScale: 1.10000002
|
||||||
clickScale: 0.899999976
|
clickScale: 0.899999976
|
||||||
- Type: SHADE_Scripting.UI.ChangeCanvasButton
|
- Type: SHADE_Scripting.UI.ChangeCanvasButton
|
||||||
|
@ -240,10 +240,10 @@
|
||||||
Scripts:
|
Scripts:
|
||||||
- Type: SHADE_Scripting.UI.ButtonFX
|
- Type: SHADE_Scripting.UI.ButtonFX
|
||||||
Enabled: true
|
Enabled: true
|
||||||
onHoverEnterSound: event:/Music/player_undetected
|
onHoverEnterSound: Empty
|
||||||
onHoverExitSound: event:/Music/player_undetected
|
onHoverExitSound: Empty
|
||||||
onClickSound: event:/Music/player_undetected
|
onClickSound: event:/UI/mouse_down_element
|
||||||
onReleaseSound: event:/Music/player_undetected
|
onReleaseSound: Empty
|
||||||
hoverScale: 1.10000002
|
hoverScale: 1.10000002
|
||||||
clickScale: 0.899999976
|
clickScale: 0.899999976
|
||||||
- Type: SHADE_Scripting.UI.ChangeCanvasButton
|
- Type: SHADE_Scripting.UI.ChangeCanvasButton
|
||||||
|
@ -276,10 +276,10 @@
|
||||||
Scripts:
|
Scripts:
|
||||||
- Type: SHADE_Scripting.UI.ButtonFX
|
- Type: SHADE_Scripting.UI.ButtonFX
|
||||||
Enabled: true
|
Enabled: true
|
||||||
onHoverEnterSound: event:/Music/player_undetected
|
onHoverEnterSound: Empty
|
||||||
onHoverExitSound: event:/Music/player_undetected
|
onHoverExitSound: Empty
|
||||||
onClickSound: event:/Music/player_undetected
|
onClickSound: event:/UI/mouse_down_element
|
||||||
onReleaseSound: event:/Music/player_undetected
|
onReleaseSound: Empty
|
||||||
hoverScale: 1.10000002
|
hoverScale: 1.10000002
|
||||||
clickScale: 0.899999976
|
clickScale: 0.899999976
|
||||||
- Type: SHADE_Scripting.UI.ChangeCanvasButton
|
- Type: SHADE_Scripting.UI.ChangeCanvasButton
|
||||||
|
@ -352,23 +352,23 @@
|
||||||
Scripts: ~
|
Scripts: ~
|
||||||
- EID: 14
|
- EID: 14
|
||||||
Name: BackGround
|
Name: BackGround
|
||||||
IsActive: false
|
IsActive: true
|
||||||
NumberOfChildren: 0
|
NumberOfChildren: 0
|
||||||
Components:
|
Components:
|
||||||
Transform Component:
|
Transform Component:
|
||||||
Translate: {x: 0, y: 0, z: 0.5}
|
Translate: {x: 0, y: 0, z: 2.5}
|
||||||
Rotate: {x: 0, y: 0, z: 0}
|
Rotate: {x: 0, y: 0, z: 0}
|
||||||
Scale: {x: 1920, y: 1080, z: 1}
|
Scale: {x: 1920, y: 1080, z: 1}
|
||||||
IsActive: false
|
IsActive: true
|
||||||
Renderable Component:
|
Renderable Component:
|
||||||
Mesh: 141771688
|
Mesh: 141771688
|
||||||
Material: 121834459
|
Material: 121834459
|
||||||
IsActive: false
|
IsActive: true
|
||||||
UI Component:
|
UI Component:
|
||||||
Canvas ID: 13
|
Canvas ID: 13
|
||||||
Hovered: false
|
Hovered: false
|
||||||
Clicked: false
|
Clicked: false
|
||||||
IsActive: false
|
IsActive: true
|
||||||
Scripts: ~
|
Scripts: ~
|
||||||
- EID: 15
|
- EID: 15
|
||||||
Name: Instruction Image
|
Name: Instruction Image
|
||||||
|
@ -378,7 +378,7 @@
|
||||||
Transform Component:
|
Transform Component:
|
||||||
Translate: {x: 0, y: 0, z: 0.400000006}
|
Translate: {x: 0, y: 0, z: 0.400000006}
|
||||||
Rotate: {x: 0, y: 0, z: 0}
|
Rotate: {x: 0, y: 0, z: 0}
|
||||||
Scale: {x: 1344, y: 756, z: 1}
|
Scale: {x: 1167.40002, y: 900, z: 1}
|
||||||
IsActive: true
|
IsActive: true
|
||||||
Renderable Component:
|
Renderable Component:
|
||||||
Mesh: 141771688
|
Mesh: 141771688
|
||||||
|
@ -428,10 +428,10 @@
|
||||||
multiImageList: 15
|
multiImageList: 15
|
||||||
- Type: SHADE_Scripting.UI.ButtonFX
|
- Type: SHADE_Scripting.UI.ButtonFX
|
||||||
Enabled: true
|
Enabled: true
|
||||||
onHoverEnterSound: event:/Music/player_undetected
|
onHoverEnterSound: Empty
|
||||||
onHoverExitSound: event:/Music/player_undetected
|
onHoverExitSound: Empty
|
||||||
onClickSound: event:/Music/player_undetected
|
onClickSound: event:/UI/mouse_down_element
|
||||||
onReleaseSound: event:/Music/player_undetected
|
onReleaseSound: Empty
|
||||||
hoverScale: 1.10000002
|
hoverScale: 1.10000002
|
||||||
clickScale: 0.899999976
|
clickScale: 0.899999976
|
||||||
- EID: 17
|
- EID: 17
|
||||||
|
@ -465,10 +465,10 @@
|
||||||
multiImageList: 15
|
multiImageList: 15
|
||||||
- Type: SHADE_Scripting.UI.ButtonFX
|
- Type: SHADE_Scripting.UI.ButtonFX
|
||||||
Enabled: true
|
Enabled: true
|
||||||
onHoverEnterSound: event:/Music/player_undetected
|
onHoverEnterSound: Empty
|
||||||
onHoverExitSound: event:/Music/player_undetected
|
onHoverExitSound: Empty
|
||||||
onClickSound: event:/Music/player_undetected
|
onClickSound: event:/UI/mouse_down_element
|
||||||
onReleaseSound: event:/Music/player_undetected
|
onReleaseSound: Empty
|
||||||
hoverScale: 1.10000002
|
hoverScale: 1.10000002
|
||||||
clickScale: 0.899999976
|
clickScale: 0.899999976
|
||||||
- EID: 18
|
- EID: 18
|
||||||
|
@ -501,18 +501,10 @@
|
||||||
canvasToActivate: 0
|
canvasToActivate: 0
|
||||||
- Type: SHADE_Scripting.UI.ButtonFX
|
- Type: SHADE_Scripting.UI.ButtonFX
|
||||||
Enabled: true
|
Enabled: true
|
||||||
onHoverEnterSound: event:/Music/player_undetected
|
onHoverEnterSound: Empty
|
||||||
onHoverExitSound: event:/Music/player_undetected
|
onHoverExitSound: Empty
|
||||||
onClickSound: event:/Music/player_undetected
|
onClickSound: event:/UI/mouse_down_element
|
||||||
onReleaseSound: event:/Music/player_undetected
|
onReleaseSound: Empty
|
||||||
hoverScale: 1.10000002
|
|
||||||
clickScale: 0.899999976
|
|
||||||
- Type: SHADE_Scripting.UI.ButtonFX
|
|
||||||
Enabled: true
|
|
||||||
onHoverEnterSound: event:/Music/player_undetected
|
|
||||||
onHoverExitSound: event:/Music/player_undetected
|
|
||||||
onClickSound: event:/Music/player_undetected
|
|
||||||
onReleaseSound: event:/Music/player_undetected
|
|
||||||
hoverScale: 1.10000002
|
hoverScale: 1.10000002
|
||||||
clickScale: 0.899999976
|
clickScale: 0.899999976
|
||||||
- EID: 19
|
- EID: 19
|
||||||
|
@ -525,26 +517,33 @@
|
||||||
Canvas Height: 1080
|
Canvas Height: 1080
|
||||||
Scale by canvas width: false
|
Scale by canvas width: false
|
||||||
IsActive: false
|
IsActive: false
|
||||||
Scripts: ~
|
Scripts:
|
||||||
|
- Type: SHADE_Scripting.UI.Options
|
||||||
|
Enabled: true
|
||||||
|
masterVolSlider: 29
|
||||||
|
sfxVolSlider: 30
|
||||||
|
bgmVolSlider: 31
|
||||||
|
fovSlider: 37
|
||||||
|
sensitivitySlider: 38
|
||||||
- EID: 20
|
- EID: 20
|
||||||
Name: BackGround
|
Name: BackGround
|
||||||
IsActive: false
|
IsActive: true
|
||||||
NumberOfChildren: 0
|
NumberOfChildren: 0
|
||||||
Components:
|
Components:
|
||||||
Transform Component:
|
Transform Component:
|
||||||
Translate: {x: 0, y: 0, z: 1}
|
Translate: {x: 0, y: 0, z: 1.5}
|
||||||
Rotate: {x: 0, y: 0, z: 0}
|
Rotate: {x: 0, y: 0, z: 0}
|
||||||
Scale: {x: 1920, y: 1080, z: 1}
|
Scale: {x: 1920, y: 1080, z: 1}
|
||||||
IsActive: false
|
IsActive: true
|
||||||
Renderable Component:
|
Renderable Component:
|
||||||
Mesh: 141771688
|
Mesh: 141771688
|
||||||
Material: 121834459
|
Material: 121834459
|
||||||
IsActive: false
|
IsActive: true
|
||||||
UI Component:
|
UI Component:
|
||||||
Canvas ID: 19
|
Canvas ID: 19
|
||||||
Hovered: false
|
Hovered: false
|
||||||
Clicked: false
|
Clicked: false
|
||||||
IsActive: false
|
IsActive: true
|
||||||
Scripts: ~
|
Scripts: ~
|
||||||
- EID: 21
|
- EID: 21
|
||||||
Name: BackButton
|
Name: BackButton
|
||||||
|
@ -574,6 +573,14 @@
|
||||||
- Type: SHADE_Scripting.UI.ChangeCanvasButton
|
- Type: SHADE_Scripting.UI.ChangeCanvasButton
|
||||||
Enabled: true
|
Enabled: true
|
||||||
canvasToActivate: 0
|
canvasToActivate: 0
|
||||||
|
- Type: SHADE_Scripting.UI.ButtonFX
|
||||||
|
Enabled: true
|
||||||
|
onHoverEnterSound: Empty
|
||||||
|
onHoverExitSound: Empty
|
||||||
|
onClickSound: event:/UI/mouse_down_element
|
||||||
|
onReleaseSound: Empty
|
||||||
|
hoverScale: 1.10000002
|
||||||
|
clickScale: 0.899999976
|
||||||
- EID: 22
|
- EID: 22
|
||||||
Name: Options Title Text
|
Name: Options Title Text
|
||||||
IsActive: true
|
IsActive: true
|
||||||
|
@ -587,6 +594,8 @@
|
||||||
Text Renderer Component:
|
Text Renderer Component:
|
||||||
Text: Options
|
Text: Options
|
||||||
Font: 174412429
|
Font: 174412429
|
||||||
|
Color: {x: 0, y: 0, z: 0, w: 1}
|
||||||
|
Text Size: {x: 1, y: 1, z: 1}
|
||||||
IsActive: true
|
IsActive: true
|
||||||
UI Component:
|
UI Component:
|
||||||
Canvas ID: 19
|
Canvas ID: 19
|
||||||
|
@ -607,6 +616,8 @@
|
||||||
Text Renderer Component:
|
Text Renderer Component:
|
||||||
Text: Audio
|
Text: Audio
|
||||||
Font: 174412429
|
Font: 174412429
|
||||||
|
Color: {x: 0, y: 0, z: 0, w: 1}
|
||||||
|
Text Size: {x: 1, y: 1, z: 1}
|
||||||
IsActive: true
|
IsActive: true
|
||||||
UI Component:
|
UI Component:
|
||||||
Canvas ID: 19
|
Canvas ID: 19
|
||||||
|
@ -643,6 +654,8 @@
|
||||||
Text Renderer Component:
|
Text Renderer Component:
|
||||||
Text: Master
|
Text: Master
|
||||||
Font: 174412429
|
Font: 174412429
|
||||||
|
Color: {x: 0, y: 0, z: 0, w: 1}
|
||||||
|
Text Size: {x: 1, y: 1, z: 1}
|
||||||
IsActive: true
|
IsActive: true
|
||||||
UI Component:
|
UI Component:
|
||||||
Canvas ID: 19
|
Canvas ID: 19
|
||||||
|
@ -663,6 +676,8 @@
|
||||||
Text Renderer Component:
|
Text Renderer Component:
|
||||||
Text: SFX
|
Text: SFX
|
||||||
Font: 174412429
|
Font: 174412429
|
||||||
|
Color: {x: 0, y: 0, z: 0, w: 1}
|
||||||
|
Text Size: {x: 1, y: 1, z: 1}
|
||||||
IsActive: true
|
IsActive: true
|
||||||
UI Component:
|
UI Component:
|
||||||
Canvas ID: 19
|
Canvas ID: 19
|
||||||
|
@ -683,6 +698,8 @@
|
||||||
Text Renderer Component:
|
Text Renderer Component:
|
||||||
Text: BGM
|
Text: BGM
|
||||||
Font: 174412429
|
Font: 174412429
|
||||||
|
Color: {x: 0, y: 0, z: 0, w: 1}
|
||||||
|
Text Size: {x: 1, y: 1, z: 1}
|
||||||
IsActive: true
|
IsActive: true
|
||||||
UI Component:
|
UI Component:
|
||||||
Canvas ID: 19
|
Canvas ID: 19
|
||||||
|
@ -722,6 +739,8 @@
|
||||||
IsActive: true
|
IsActive: true
|
||||||
Slider Component:
|
Slider Component:
|
||||||
Slider Value: 1
|
Slider Value: 1
|
||||||
|
Min Value: 0
|
||||||
|
Max Value: 100
|
||||||
IsActive: true
|
IsActive: true
|
||||||
UI Component:
|
UI Component:
|
||||||
Canvas ID: 19
|
Canvas ID: 19
|
||||||
|
@ -745,6 +764,8 @@
|
||||||
IsActive: true
|
IsActive: true
|
||||||
Slider Component:
|
Slider Component:
|
||||||
Slider Value: 1
|
Slider Value: 1
|
||||||
|
Min Value: 0
|
||||||
|
Max Value: 100
|
||||||
IsActive: true
|
IsActive: true
|
||||||
UI Component:
|
UI Component:
|
||||||
Canvas ID: 19
|
Canvas ID: 19
|
||||||
|
@ -768,6 +789,8 @@
|
||||||
IsActive: true
|
IsActive: true
|
||||||
Slider Component:
|
Slider Component:
|
||||||
Slider Value: 1
|
Slider Value: 1
|
||||||
|
Min Value: 0
|
||||||
|
Max Value: 100
|
||||||
IsActive: true
|
IsActive: true
|
||||||
UI Component:
|
UI Component:
|
||||||
Canvas ID: 19
|
Canvas ID: 19
|
||||||
|
@ -788,6 +811,8 @@
|
||||||
Text Renderer Component:
|
Text Renderer Component:
|
||||||
Text: Camera
|
Text: Camera
|
||||||
Font: 174412429
|
Font: 174412429
|
||||||
|
Color: {x: 0, y: 0, z: 0, w: 1}
|
||||||
|
Text Size: {x: 1, y: 1, z: 1}
|
||||||
IsActive: true
|
IsActive: true
|
||||||
UI Component:
|
UI Component:
|
||||||
Canvas ID: 19
|
Canvas ID: 19
|
||||||
|
@ -798,7 +823,7 @@
|
||||||
- EID: 33
|
- EID: 33
|
||||||
Name: Camera Text Group
|
Name: Camera Text Group
|
||||||
IsActive: true
|
IsActive: true
|
||||||
NumberOfChildren: 2
|
NumberOfChildren: 4
|
||||||
Components:
|
Components:
|
||||||
Transform Component:
|
Transform Component:
|
||||||
Translate: {x: -900, y: -220, z: 0}
|
Translate: {x: -900, y: -220, z: 0}
|
||||||
|
@ -824,6 +849,8 @@
|
||||||
Text Renderer Component:
|
Text Renderer Component:
|
||||||
Text: FOV
|
Text: FOV
|
||||||
Font: 174412429
|
Font: 174412429
|
||||||
|
Color: {x: 0, y: 0, z: 0, w: 1}
|
||||||
|
Text Size: {x: 1, y: 1, z: 1}
|
||||||
IsActive: true
|
IsActive: true
|
||||||
UI Component:
|
UI Component:
|
||||||
Canvas ID: 19
|
Canvas ID: 19
|
||||||
|
@ -844,6 +871,8 @@
|
||||||
Text Renderer Component:
|
Text Renderer Component:
|
||||||
Text: Sensitivity
|
Text: Sensitivity
|
||||||
Font: 174412429
|
Font: 174412429
|
||||||
|
Color: {x: 0, y: 0, z: 0, w: 1}
|
||||||
|
Text Size: {x: 1, y: 1, z: 1}
|
||||||
IsActive: true
|
IsActive: true
|
||||||
UI Component:
|
UI Component:
|
||||||
Canvas ID: 19
|
Canvas ID: 19
|
||||||
|
@ -851,10 +880,54 @@
|
||||||
Clicked: false
|
Clicked: false
|
||||||
IsActive: true
|
IsActive: true
|
||||||
Scripts: ~
|
Scripts: ~
|
||||||
|
- EID: 449
|
||||||
|
Name: Camera Invert X Text
|
||||||
|
IsActive: false
|
||||||
|
NumberOfChildren: 0
|
||||||
|
Components:
|
||||||
|
Transform Component:
|
||||||
|
Translate: {x: 0, y: -200, z: 0.100000001}
|
||||||
|
Rotate: {x: 0, y: 0, z: 0}
|
||||||
|
Scale: {x: 75, y: 75, z: 1}
|
||||||
|
IsActive: false
|
||||||
|
Text Renderer Component:
|
||||||
|
Text: "Camera Invert X:"
|
||||||
|
Font: 174412429
|
||||||
|
Color: {x: 0, y: 0, z: 0, w: 1}
|
||||||
|
Text Size: {x: 1, y: 1, z: 1}
|
||||||
|
IsActive: false
|
||||||
|
UI Component:
|
||||||
|
Canvas ID: 19
|
||||||
|
Hovered: false
|
||||||
|
Clicked: false
|
||||||
|
IsActive: false
|
||||||
|
Scripts: ~
|
||||||
|
- EID: 447
|
||||||
|
Name: Camera Invert Y Text
|
||||||
|
IsActive: false
|
||||||
|
NumberOfChildren: 0
|
||||||
|
Components:
|
||||||
|
Transform Component:
|
||||||
|
Translate: {x: 800, y: -200, z: 0.100000001}
|
||||||
|
Rotate: {x: 0, y: 0, z: 0}
|
||||||
|
Scale: {x: 75, y: 75, z: 1}
|
||||||
|
IsActive: false
|
||||||
|
Text Renderer Component:
|
||||||
|
Text: "Y:"
|
||||||
|
Font: 174412429
|
||||||
|
Color: {x: 0, y: 0, z: 0, w: 1}
|
||||||
|
Text Size: {x: 1, y: 1, z: 1}
|
||||||
|
IsActive: false
|
||||||
|
UI Component:
|
||||||
|
Canvas ID: 19
|
||||||
|
Hovered: false
|
||||||
|
Clicked: false
|
||||||
|
IsActive: false
|
||||||
|
Scripts: ~
|
||||||
- EID: 36
|
- EID: 36
|
||||||
Name: Camera Slider Group
|
Name: Camera Slider Group
|
||||||
IsActive: true
|
IsActive: true
|
||||||
NumberOfChildren: 2
|
NumberOfChildren: 4
|
||||||
Components:
|
Components:
|
||||||
Transform Component:
|
Transform Component:
|
||||||
Translate: {x: 100, y: -200, z: 0}
|
Translate: {x: 100, y: -200, z: 0}
|
||||||
|
@ -883,6 +956,8 @@
|
||||||
IsActive: true
|
IsActive: true
|
||||||
Slider Component:
|
Slider Component:
|
||||||
Slider Value: 1
|
Slider Value: 1
|
||||||
|
Min Value: 45
|
||||||
|
Max Value: 120
|
||||||
IsActive: true
|
IsActive: true
|
||||||
UI Component:
|
UI Component:
|
||||||
Canvas ID: 19
|
Canvas ID: 19
|
||||||
|
@ -906,6 +981,8 @@
|
||||||
IsActive: true
|
IsActive: true
|
||||||
Slider Component:
|
Slider Component:
|
||||||
Slider Value: 1
|
Slider Value: 1
|
||||||
|
Min Value: 0
|
||||||
|
Max Value: 100
|
||||||
IsActive: true
|
IsActive: true
|
||||||
UI Component:
|
UI Component:
|
||||||
Canvas ID: 19
|
Canvas ID: 19
|
||||||
|
@ -913,6 +990,56 @@
|
||||||
Clicked: false
|
Clicked: false
|
||||||
IsActive: true
|
IsActive: true
|
||||||
Scripts: ~
|
Scripts: ~
|
||||||
|
- EID: 448
|
||||||
|
Name: Invert X Toggle Button
|
||||||
|
IsActive: false
|
||||||
|
NumberOfChildren: 0
|
||||||
|
Components:
|
||||||
|
Transform Component:
|
||||||
|
Translate: {x: -300, y: -200, z: 0}
|
||||||
|
Rotate: {x: 0, y: 0, z: 0}
|
||||||
|
Scale: {x: 75, y: 75, z: 1}
|
||||||
|
IsActive: false
|
||||||
|
Renderable Component:
|
||||||
|
Mesh: 141771688
|
||||||
|
Material: 129340704
|
||||||
|
IsActive: false
|
||||||
|
Toggle Button Component:
|
||||||
|
Non Toggled Texture: 55358401
|
||||||
|
Toggled Texture: 52333376
|
||||||
|
Value: false
|
||||||
|
IsActive: false
|
||||||
|
UI Component:
|
||||||
|
Canvas ID: 19
|
||||||
|
Hovered: false
|
||||||
|
Clicked: false
|
||||||
|
IsActive: false
|
||||||
|
Scripts: ~
|
||||||
|
- EID: 445
|
||||||
|
Name: Invert Y Toggle Button
|
||||||
|
IsActive: false
|
||||||
|
NumberOfChildren: 0
|
||||||
|
Components:
|
||||||
|
Transform Component:
|
||||||
|
Translate: {x: -50, y: -200, z: 0}
|
||||||
|
Rotate: {x: 0, y: 0, z: 0}
|
||||||
|
Scale: {x: 75, y: 75, z: 1}
|
||||||
|
IsActive: false
|
||||||
|
Renderable Component:
|
||||||
|
Mesh: 141771688
|
||||||
|
Material: 129340704
|
||||||
|
IsActive: false
|
||||||
|
Toggle Button Component:
|
||||||
|
Non Toggled Texture: 55358401
|
||||||
|
Toggled Texture: 52333376
|
||||||
|
Value: false
|
||||||
|
IsActive: false
|
||||||
|
UI Component:
|
||||||
|
Canvas ID: 19
|
||||||
|
Hovered: false
|
||||||
|
Clicked: false
|
||||||
|
IsActive: false
|
||||||
|
Scripts: ~
|
||||||
- EID: 39
|
- EID: 39
|
||||||
Name: Audio Slider Text Group
|
Name: Audio Slider Text Group
|
||||||
IsActive: true
|
IsActive: true
|
||||||
|
@ -942,6 +1069,8 @@
|
||||||
Text Renderer Component:
|
Text Renderer Component:
|
||||||
Text: 100
|
Text: 100
|
||||||
Font: 174412429
|
Font: 174412429
|
||||||
|
Color: {x: 0, y: 0, z: 0, w: 1}
|
||||||
|
Text Size: {x: 1, y: 1, z: 1}
|
||||||
IsActive: true
|
IsActive: true
|
||||||
UI Component:
|
UI Component:
|
||||||
Canvas ID: 19
|
Canvas ID: 19
|
||||||
|
@ -952,8 +1081,6 @@
|
||||||
- Type: SHADE_Scripting.UI.SliderText
|
- Type: SHADE_Scripting.UI.SliderText
|
||||||
Enabled: true
|
Enabled: true
|
||||||
sliderObj: 29
|
sliderObj: 29
|
||||||
minValue: 0
|
|
||||||
maxValue: 100
|
|
||||||
- EID: 41
|
- EID: 41
|
||||||
Name: SFX Volume Slider Text
|
Name: SFX Volume Slider Text
|
||||||
IsActive: true
|
IsActive: true
|
||||||
|
@ -967,6 +1094,8 @@
|
||||||
Text Renderer Component:
|
Text Renderer Component:
|
||||||
Text: 100
|
Text: 100
|
||||||
Font: 174412429
|
Font: 174412429
|
||||||
|
Color: {x: 0, y: 0, z: 0, w: 1}
|
||||||
|
Text Size: {x: 1, y: 1, z: 1}
|
||||||
IsActive: true
|
IsActive: true
|
||||||
UI Component:
|
UI Component:
|
||||||
Canvas ID: 19
|
Canvas ID: 19
|
||||||
|
@ -977,8 +1106,6 @@
|
||||||
- Type: SHADE_Scripting.UI.SliderText
|
- Type: SHADE_Scripting.UI.SliderText
|
||||||
Enabled: true
|
Enabled: true
|
||||||
sliderObj: 30
|
sliderObj: 30
|
||||||
minValue: 0
|
|
||||||
maxValue: 100
|
|
||||||
- EID: 42
|
- EID: 42
|
||||||
Name: BGM Volume Slider Text
|
Name: BGM Volume Slider Text
|
||||||
IsActive: true
|
IsActive: true
|
||||||
|
@ -992,6 +1119,8 @@
|
||||||
Text Renderer Component:
|
Text Renderer Component:
|
||||||
Text: 100
|
Text: 100
|
||||||
Font: 174412429
|
Font: 174412429
|
||||||
|
Color: {x: 0, y: 0, z: 0, w: 1}
|
||||||
|
Text Size: {x: 1, y: 1, z: 1}
|
||||||
IsActive: true
|
IsActive: true
|
||||||
UI Component:
|
UI Component:
|
||||||
Canvas ID: 19
|
Canvas ID: 19
|
||||||
|
@ -1002,8 +1131,6 @@
|
||||||
- Type: SHADE_Scripting.UI.SliderText
|
- Type: SHADE_Scripting.UI.SliderText
|
||||||
Enabled: true
|
Enabled: true
|
||||||
sliderObj: 31
|
sliderObj: 31
|
||||||
minValue: 0
|
|
||||||
maxValue: 100
|
|
||||||
- EID: 43
|
- EID: 43
|
||||||
Name: Camera Slider Text Group
|
Name: Camera Slider Text Group
|
||||||
IsActive: true
|
IsActive: true
|
||||||
|
@ -1033,6 +1160,8 @@
|
||||||
Text Renderer Component:
|
Text Renderer Component:
|
||||||
Text: 100
|
Text: 100
|
||||||
Font: 174412429
|
Font: 174412429
|
||||||
|
Color: {x: 0, y: 0, z: 0, w: 1}
|
||||||
|
Text Size: {x: 1, y: 1, z: 1}
|
||||||
IsActive: true
|
IsActive: true
|
||||||
UI Component:
|
UI Component:
|
||||||
Canvas ID: 19
|
Canvas ID: 19
|
||||||
|
@ -1043,8 +1172,6 @@
|
||||||
- Type: SHADE_Scripting.UI.SliderText
|
- Type: SHADE_Scripting.UI.SliderText
|
||||||
Enabled: true
|
Enabled: true
|
||||||
sliderObj: 37
|
sliderObj: 37
|
||||||
minValue: 0
|
|
||||||
maxValue: 100
|
|
||||||
- EID: 45
|
- EID: 45
|
||||||
Name: Sensitivity Slider Text
|
Name: Sensitivity Slider Text
|
||||||
IsActive: true
|
IsActive: true
|
||||||
|
@ -1058,6 +1185,8 @@
|
||||||
Text Renderer Component:
|
Text Renderer Component:
|
||||||
Text: 100
|
Text: 100
|
||||||
Font: 174412429
|
Font: 174412429
|
||||||
|
Color: {x: 0, y: 0, z: 0, w: 1}
|
||||||
|
Text Size: {x: 1, y: 1, z: 1}
|
||||||
IsActive: true
|
IsActive: true
|
||||||
UI Component:
|
UI Component:
|
||||||
Canvas ID: 19
|
Canvas ID: 19
|
||||||
|
@ -1068,12 +1197,10 @@
|
||||||
- Type: SHADE_Scripting.UI.SliderText
|
- Type: SHADE_Scripting.UI.SliderText
|
||||||
Enabled: true
|
Enabled: true
|
||||||
sliderObj: 38
|
sliderObj: 38
|
||||||
minValue: 0
|
|
||||||
maxValue: 100
|
|
||||||
- EID: 46
|
- EID: 46
|
||||||
Name: Credits Canvas
|
Name: Credits Canvas
|
||||||
IsActive: false
|
IsActive: false
|
||||||
NumberOfChildren: 3
|
NumberOfChildren: 4
|
||||||
Components:
|
Components:
|
||||||
Canvas Component:
|
Canvas Component:
|
||||||
Canvas Width: 1920
|
Canvas Width: 1920
|
||||||
|
@ -1082,12 +1209,12 @@
|
||||||
IsActive: false
|
IsActive: false
|
||||||
Scripts: ~
|
Scripts: ~
|
||||||
- EID: 47
|
- EID: 47
|
||||||
Name: BackGround
|
Name: Scrolling Credits
|
||||||
IsActive: true
|
IsActive: true
|
||||||
NumberOfChildren: 0
|
NumberOfChildren: 0
|
||||||
Components:
|
Components:
|
||||||
Transform Component:
|
Transform Component:
|
||||||
Translate: {x: 0, y: -3800, z: 0.100000001}
|
Translate: {x: 0, y: -3800, z: 1.5}
|
||||||
Rotate: {x: 0, y: 0, z: 0}
|
Rotate: {x: 0, y: 0, z: 0}
|
||||||
Scale: {x: 1920, y: 8026, z: 1}
|
Scale: {x: 1920, y: 8026, z: 1}
|
||||||
IsActive: true
|
IsActive: true
|
||||||
|
@ -1100,7 +1227,11 @@
|
||||||
Hovered: false
|
Hovered: false
|
||||||
Clicked: false
|
Clicked: false
|
||||||
IsActive: true
|
IsActive: true
|
||||||
Scripts: ~
|
Scripts:
|
||||||
|
- Type: SHADE_Scripting.UI.ScrollingCredits
|
||||||
|
Enabled: true
|
||||||
|
endY: 4000
|
||||||
|
duration: 20
|
||||||
- EID: 48
|
- EID: 48
|
||||||
Name: BackButton
|
Name: BackButton
|
||||||
IsActive: true
|
IsActive: true
|
||||||
|
@ -1129,25 +1260,55 @@
|
||||||
- Type: SHADE_Scripting.UI.ChangeCanvasButton
|
- Type: SHADE_Scripting.UI.ChangeCanvasButton
|
||||||
Enabled: true
|
Enabled: true
|
||||||
canvasToActivate: 0
|
canvasToActivate: 0
|
||||||
|
- Type: SHADE_Scripting.UI.ButtonFX
|
||||||
|
Enabled: true
|
||||||
|
onHoverEnterSound: Empty
|
||||||
|
onHoverExitSound: Empty
|
||||||
|
onClickSound: event:/UI/mouse_down_element
|
||||||
|
onReleaseSound: Empty
|
||||||
|
hoverScale: 1.10000002
|
||||||
|
clickScale: 0.899999976
|
||||||
- EID: 49
|
- EID: 49
|
||||||
Name: Credits Title Text
|
Name: Credits Title Text
|
||||||
IsActive: true
|
IsActive: false
|
||||||
NumberOfChildren: 0
|
NumberOfChildren: 0
|
||||||
Components:
|
Components:
|
||||||
Transform Component:
|
Transform Component:
|
||||||
Translate: {x: -150, y: 400, z: 0.100000001}
|
Translate: {x: -150, y: 400, z: 0.100000001}
|
||||||
Rotate: {x: 0, y: 0, z: 0}
|
Rotate: {x: 0, y: 0, z: 0}
|
||||||
Scale: {x: 100, y: 100, z: 1}
|
Scale: {x: 100, y: 100, z: 1}
|
||||||
IsActive: true
|
IsActive: false
|
||||||
Text Renderer Component:
|
Text Renderer Component:
|
||||||
Text: Credits
|
Text: Credits
|
||||||
Font: 174412429
|
Font: 174412429
|
||||||
IsActive: true
|
Color: {x: 0, y: 0, z: 0, w: 1}
|
||||||
|
Text Size: {x: 1, y: 1, z: 1}
|
||||||
|
IsActive: false
|
||||||
UI Component:
|
UI Component:
|
||||||
Canvas ID: 46
|
Canvas ID: 46
|
||||||
Hovered: false
|
Hovered: false
|
||||||
Clicked: false
|
Clicked: false
|
||||||
IsActive: true
|
IsActive: false
|
||||||
|
Scripts: ~
|
||||||
|
- EID: 55
|
||||||
|
Name: BackGround
|
||||||
|
IsActive: false
|
||||||
|
NumberOfChildren: 0
|
||||||
|
Components:
|
||||||
|
Transform Component:
|
||||||
|
Translate: {x: 0, y: 0, z: 1.5}
|
||||||
|
Rotate: {x: 0, y: 0, z: 0}
|
||||||
|
Scale: {x: 1920, y: 1080, z: 1}
|
||||||
|
IsActive: false
|
||||||
|
Renderable Component:
|
||||||
|
Mesh: 141771688
|
||||||
|
Material: 121834459
|
||||||
|
IsActive: false
|
||||||
|
UI Component:
|
||||||
|
Canvas ID: 46
|
||||||
|
Hovered: false
|
||||||
|
Clicked: false
|
||||||
|
IsActive: false
|
||||||
Scripts: ~
|
Scripts: ~
|
||||||
- EID: 50
|
- EID: 50
|
||||||
Name: Level Select Canvas
|
Name: Level Select Canvas
|
||||||
|
@ -1162,23 +1323,23 @@
|
||||||
Scripts: ~
|
Scripts: ~
|
||||||
- EID: 51
|
- EID: 51
|
||||||
Name: BackGround
|
Name: BackGround
|
||||||
IsActive: false
|
IsActive: true
|
||||||
NumberOfChildren: 0
|
NumberOfChildren: 0
|
||||||
Components:
|
Components:
|
||||||
Transform Component:
|
Transform Component:
|
||||||
Translate: {x: 0, y: 0, z: 1}
|
Translate: {x: 0, y: 0, z: 1.5}
|
||||||
Rotate: {x: 0, y: 0, z: 0}
|
Rotate: {x: 0, y: 0, z: 0}
|
||||||
Scale: {x: 1920, y: 1080, z: 1}
|
Scale: {x: 1920, y: 1080, z: 1}
|
||||||
IsActive: false
|
IsActive: true
|
||||||
Renderable Component:
|
Renderable Component:
|
||||||
Mesh: 141771688
|
Mesh: 141771688
|
||||||
Material: 121834459
|
Material: 121834459
|
||||||
IsActive: false
|
IsActive: true
|
||||||
UI Component:
|
UI Component:
|
||||||
Canvas ID: 50
|
Canvas ID: 50
|
||||||
Hovered: false
|
Hovered: false
|
||||||
Clicked: false
|
Clicked: false
|
||||||
IsActive: false
|
IsActive: true
|
||||||
Scripts: ~
|
Scripts: ~
|
||||||
- EID: 52
|
- EID: 52
|
||||||
Name: BackButton
|
Name: BackButton
|
||||||
|
@ -1208,6 +1369,14 @@
|
||||||
- Type: SHADE_Scripting.UI.ChangeCanvasButton
|
- Type: SHADE_Scripting.UI.ChangeCanvasButton
|
||||||
Enabled: true
|
Enabled: true
|
||||||
canvasToActivate: 0
|
canvasToActivate: 0
|
||||||
|
- Type: SHADE_Scripting.UI.ButtonFX
|
||||||
|
Enabled: true
|
||||||
|
onHoverEnterSound: Empty
|
||||||
|
onHoverExitSound: Empty
|
||||||
|
onClickSound: event:/UI/mouse_down_element
|
||||||
|
onReleaseSound: Empty
|
||||||
|
hoverScale: 1.10000002
|
||||||
|
clickScale: 0.899999976
|
||||||
- EID: 53
|
- EID: 53
|
||||||
Name: Level Select Title Text
|
Name: Level Select Title Text
|
||||||
IsActive: true
|
IsActive: true
|
||||||
|
@ -1221,10 +1390,48 @@
|
||||||
Text Renderer Component:
|
Text Renderer Component:
|
||||||
Text: Level Select
|
Text: Level Select
|
||||||
Font: 174412429
|
Font: 174412429
|
||||||
|
Color: {x: 0, y: 0, z: 0, w: 1}
|
||||||
|
Text Size: {x: 1, y: 1, z: 1}
|
||||||
IsActive: true
|
IsActive: true
|
||||||
UI Component:
|
UI Component:
|
||||||
Canvas ID: 50
|
Canvas ID: 50
|
||||||
Hovered: false
|
Hovered: false
|
||||||
Clicked: false
|
Clicked: false
|
||||||
IsActive: true
|
IsActive: true
|
||||||
Scripts: ~
|
Scripts: ~
|
||||||
|
- EID: 450
|
||||||
|
Name: TransitionCanvas
|
||||||
|
IsActive: true
|
||||||
|
NumberOfChildren: 1
|
||||||
|
Components:
|
||||||
|
Canvas Component:
|
||||||
|
Canvas Width: 1920
|
||||||
|
Canvas Height: 1080
|
||||||
|
Scale by canvas width: false
|
||||||
|
IsActive: true
|
||||||
|
Scripts: ~
|
||||||
|
- EID: 65982
|
||||||
|
Name: Transition
|
||||||
|
IsActive: true
|
||||||
|
NumberOfChildren: 0
|
||||||
|
Components:
|
||||||
|
Transform Component:
|
||||||
|
Translate: {x: 0, y: 0, z: 0.100000001}
|
||||||
|
Rotate: {x: 0, y: 0, z: 0}
|
||||||
|
Scale: {x: 2500, y: 1080, z: 1}
|
||||||
|
IsActive: true
|
||||||
|
Renderable Component:
|
||||||
|
Mesh: 141771688
|
||||||
|
Material: 120016136
|
||||||
|
IsActive: true
|
||||||
|
UI Component:
|
||||||
|
Canvas ID: 450
|
||||||
|
Hovered: false
|
||||||
|
Clicked: false
|
||||||
|
IsActive: true
|
||||||
|
Scripts:
|
||||||
|
- Type: SHADE_Scripting.UI.SceneFadeInOut
|
||||||
|
Enabled: true
|
||||||
|
alphaValue: 1
|
||||||
|
fadeInTime: 0.5
|
||||||
|
fadeOutTime: 0.5
|
|
@ -5,13 +5,14 @@
|
||||||
Components:
|
Components:
|
||||||
Transform Component:
|
Transform Component:
|
||||||
Translate: {x: 0, y: 7, z: 0}
|
Translate: {x: 0, y: 7, z: 0}
|
||||||
Rotate: {x: 1.48352981, y: 0, z: 0}
|
Rotate: {x: 0, y: 0, z: 0}
|
||||||
Scale: {x: 0.999999344, y: 0.999999821, z: 0.999999523}
|
Scale: {x: 0.999999344, y: 0.999999821, z: 0.999999523}
|
||||||
IsActive: true
|
IsActive: true
|
||||||
RigidBody Component:
|
RigidBody Component:
|
||||||
Type: Dynamic
|
Type: Dynamic
|
||||||
Drag: 0.00999999978
|
Drag: 0.00999999978
|
||||||
Angular Drag: 0.100000001
|
Angular Drag: 0.100000001
|
||||||
|
Gravity Scale: 1
|
||||||
Use Gravity: true
|
Use Gravity: true
|
||||||
Interpolate: false
|
Interpolate: false
|
||||||
Sleeping Enabled: true
|
Sleeping Enabled: true
|
||||||
|
@ -26,8 +27,9 @@
|
||||||
Colliders:
|
Colliders:
|
||||||
- Is Trigger: false
|
- Is Trigger: false
|
||||||
Collision Tag: 0
|
Collision Tag: 0
|
||||||
Type: Box
|
Type: Capsule
|
||||||
Half Extents: {x: 1, y: 1, z: 1}
|
Radius: 1
|
||||||
|
Height: 2
|
||||||
Friction: 0.400000006
|
Friction: 0.400000006
|
||||||
Bounciness: 0
|
Bounciness: 0
|
||||||
Density: 1
|
Density: 1
|
||||||
|
@ -75,10 +77,10 @@
|
||||||
Yaw: 0
|
Yaw: 0
|
||||||
Roll: 0
|
Roll: 0
|
||||||
Width: 1920
|
Width: 1920
|
||||||
Height: 1080
|
|
||||||
Near: 0.00999999978
|
Near: 0.00999999978
|
||||||
Far: 10000
|
Far: 10000
|
||||||
Perspective: true
|
Perspective: true
|
||||||
|
FOV: 90
|
||||||
IsActive: true
|
IsActive: true
|
||||||
Scripts: ~
|
Scripts: ~
|
||||||
- EID: 65539
|
- EID: 65539
|
||||||
|
@ -187,6 +189,7 @@
|
||||||
Type: Dynamic
|
Type: Dynamic
|
||||||
Drag: 0.00999999978
|
Drag: 0.00999999978
|
||||||
Angular Drag: 0.100000001
|
Angular Drag: 0.100000001
|
||||||
|
Gravity Scale: 1
|
||||||
Use Gravity: true
|
Use Gravity: true
|
||||||
Interpolate: true
|
Interpolate: true
|
||||||
Sleeping Enabled: true
|
Sleeping Enabled: true
|
||||||
|
|
|
@ -14,10 +14,10 @@
|
||||||
Yaw: 0
|
Yaw: 0
|
||||||
Roll: 0
|
Roll: 0
|
||||||
Width: 1200
|
Width: 1200
|
||||||
Height: 1080
|
|
||||||
Near: 0.00999999978
|
Near: 0.00999999978
|
||||||
Far: 10000
|
Far: 10000
|
||||||
Perspective: true
|
Perspective: true
|
||||||
|
FOV: 90
|
||||||
IsActive: true
|
IsActive: true
|
||||||
Scripts: ~
|
Scripts: ~
|
||||||
- EID: 1
|
- EID: 1
|
||||||
|
@ -26,9 +26,9 @@
|
||||||
NumberOfChildren: 1
|
NumberOfChildren: 1
|
||||||
Components:
|
Components:
|
||||||
Transform Component:
|
Transform Component:
|
||||||
Translate: {x: -1.86388135, y: 0.0544953719, z: 0}
|
Translate: {x: 0, y: 0.189419448, z: 0}
|
||||||
Rotate: {x: -0, y: 0, z: -0}
|
Rotate: {x: 0.00523597933, y: -2.96353412, z: -6.40293041e-10}
|
||||||
Scale: {x: 1, y: 1, z: 1}
|
Scale: {x: 1.00000191, y: 1, z: 1.00000191}
|
||||||
IsActive: true
|
IsActive: true
|
||||||
Renderable Component:
|
Renderable Component:
|
||||||
Mesh: 149697411
|
Mesh: 149697411
|
||||||
|
@ -55,10 +55,15 @@
|
||||||
IsActive: true
|
IsActive: true
|
||||||
NumberOfChildren: 0
|
NumberOfChildren: 0
|
||||||
Components:
|
Components:
|
||||||
|
Transform Component:
|
||||||
|
Translate: {x: 0, y: 1.82978272, z: -3.28967047}
|
||||||
|
Rotate: {x: -0, y: 0, z: -0}
|
||||||
|
Scale: {x: 1, y: 1, z: 1}
|
||||||
|
IsActive: true
|
||||||
Light Component:
|
Light Component:
|
||||||
Position: {x: 3, y: 4.5, z: 7}
|
Position: {x: 3, y: 4.5, z: 7}
|
||||||
Type: Directional
|
Type: Directional
|
||||||
Direction: {x: -0.298000008, y: 0.522498012, z: 0.798600018}
|
Direction: {x: 0, y: 0, z: 1}
|
||||||
Color: {x: 1, y: 1, z: 1, w: 1}
|
Color: {x: 1, y: 1, z: 1, w: 1}
|
||||||
Layer: 4294967295
|
Layer: 4294967295
|
||||||
Strength: 0
|
Strength: 0
|
||||||
|
@ -85,8 +90,8 @@
|
||||||
Components:
|
Components:
|
||||||
Transform Component:
|
Transform Component:
|
||||||
Translate: {x: 0, y: 0.0810000002, z: 0}
|
Translate: {x: 0, y: 0.0810000002, z: 0}
|
||||||
Rotate: {x: -1.57079637, y: 0, z: 0}
|
Rotate: {x: -1.57079625, y: 0, z: -0}
|
||||||
Scale: {x: 50, y: 50, z: 50}
|
Scale: {x: 50, y: 49.9999924, z: 49.9999924}
|
||||||
IsActive: true
|
IsActive: true
|
||||||
Renderable Component:
|
Renderable Component:
|
||||||
Mesh: 141771688
|
Mesh: 141771688
|
||||||
|
|
|
@ -29,7 +29,7 @@
|
||||||
NumberOfChildren: 0
|
NumberOfChildren: 0
|
||||||
Components:
|
Components:
|
||||||
Transform Component:
|
Transform Component:
|
||||||
Translate: {x: 0, y: 0, z: 0.100000001}
|
Translate: {x: 0, y: 0, z: 0.300000012}
|
||||||
Rotate: {x: 0, y: 0, z: 0}
|
Rotate: {x: 0, y: 0, z: 0}
|
||||||
Scale: {x: 1920, y: 1080, z: 1}
|
Scale: {x: 1920, y: 1080, z: 1}
|
||||||
IsActive: true
|
IsActive: true
|
||||||
|
@ -49,7 +49,7 @@
|
||||||
NumberOfChildren: 0
|
NumberOfChildren: 0
|
||||||
Components:
|
Components:
|
||||||
Transform Component:
|
Transform Component:
|
||||||
Translate: {x: 0, y: 75, z: 0}
|
Translate: {x: 0, y: 75, z: 0.200000003}
|
||||||
Rotate: {x: 0, y: 0, z: 0}
|
Rotate: {x: 0, y: 0, z: 0}
|
||||||
Scale: {x: 400, y: 100, z: 1}
|
Scale: {x: 400, y: 100, z: 1}
|
||||||
IsActive: true
|
IsActive: true
|
||||||
|
@ -73,10 +73,10 @@
|
||||||
sceneID: 97158628
|
sceneID: 97158628
|
||||||
- Type: SHADE_Scripting.UI.ButtonFX
|
- Type: SHADE_Scripting.UI.ButtonFX
|
||||||
Enabled: true
|
Enabled: true
|
||||||
onHoverEnterSound: event:/Music/player_undetected
|
onHoverEnterSound: Empty
|
||||||
onHoverExitSound: event:/Music/player_undetected
|
onHoverExitSound: Empty
|
||||||
onClickSound: event:/Music/player_undetected
|
onClickSound: event:/UI/mouse_down_element
|
||||||
onReleaseSound: event:/Music/player_undetected
|
onReleaseSound: Empty
|
||||||
hoverScale: 1.10000002
|
hoverScale: 1.10000002
|
||||||
clickScale: 0.899999976
|
clickScale: 0.899999976
|
||||||
- EID: 6
|
- EID: 6
|
||||||
|
@ -85,7 +85,7 @@
|
||||||
NumberOfChildren: 0
|
NumberOfChildren: 0
|
||||||
Components:
|
Components:
|
||||||
Transform Component:
|
Transform Component:
|
||||||
Translate: {x: 0, y: -200, z: 0}
|
Translate: {x: 0, y: -200, z: 0.200000003}
|
||||||
Rotate: {x: 0, y: 0, z: 0}
|
Rotate: {x: 0, y: 0, z: 0}
|
||||||
Scale: {x: 400, y: 100, z: 1}
|
Scale: {x: 400, y: 100, z: 1}
|
||||||
IsActive: true
|
IsActive: true
|
||||||
|
@ -108,10 +108,10 @@
|
||||||
Enabled: true
|
Enabled: true
|
||||||
- Type: SHADE_Scripting.UI.ButtonFX
|
- Type: SHADE_Scripting.UI.ButtonFX
|
||||||
Enabled: true
|
Enabled: true
|
||||||
onHoverEnterSound: event:/Music/player_undetected
|
onHoverEnterSound: Empty
|
||||||
onHoverExitSound: event:/Music/player_undetected
|
onHoverExitSound: Empty
|
||||||
onClickSound: event:/Music/player_undetected
|
onClickSound: event:/UI/mouse_down_element
|
||||||
onReleaseSound: event:/Music/player_undetected
|
onReleaseSound: Empty
|
||||||
hoverScale: 1.10000002
|
hoverScale: 1.10000002
|
||||||
clickScale: 0.899999976
|
clickScale: 0.899999976
|
||||||
- EID: 3
|
- EID: 3
|
||||||
|
@ -153,4 +153,40 @@
|
||||||
Components: ~
|
Components: ~
|
||||||
Scripts:
|
Scripts:
|
||||||
- Type: SHADE_Scripting.UI.TweenManager
|
- Type: SHADE_Scripting.UI.TweenManager
|
||||||
Enabled: true
|
Enabled: true
|
||||||
|
- EID: 450
|
||||||
|
Name: TransitionCanvas
|
||||||
|
IsActive: true
|
||||||
|
NumberOfChildren: 1
|
||||||
|
Components:
|
||||||
|
Canvas Component:
|
||||||
|
Canvas Width: 1920
|
||||||
|
Canvas Height: 1080
|
||||||
|
Scale by canvas width: false
|
||||||
|
IsActive: true
|
||||||
|
Scripts: ~
|
||||||
|
- EID: 65982
|
||||||
|
Name: Transition
|
||||||
|
IsActive: true
|
||||||
|
NumberOfChildren: 0
|
||||||
|
Components:
|
||||||
|
Transform Component:
|
||||||
|
Translate: {x: 0, y: 0, z: 0.100000001}
|
||||||
|
Rotate: {x: 0, y: 0, z: 0}
|
||||||
|
Scale: {x: 2500, y: 1080, z: 1}
|
||||||
|
IsActive: true
|
||||||
|
Renderable Component:
|
||||||
|
Mesh: 141771688
|
||||||
|
Material: 120016136
|
||||||
|
IsActive: true
|
||||||
|
UI Component:
|
||||||
|
Canvas ID: 450
|
||||||
|
Hovered: false
|
||||||
|
Clicked: false
|
||||||
|
IsActive: true
|
||||||
|
Scripts:
|
||||||
|
- Type: SHADE_Scripting.UI.SceneFadeInOut
|
||||||
|
Enabled: true
|
||||||
|
alphaValue: 1
|
||||||
|
fadeInTime: 0.5
|
||||||
|
fadeOutTime: 0.5
|
|
@ -0,0 +1,32 @@
|
||||||
|
using SHADE;
|
||||||
|
using System;
|
||||||
|
using System.Collections.Generic;
|
||||||
|
using System.Linq;
|
||||||
|
using System.Text;
|
||||||
|
using System.Threading.Tasks;
|
||||||
|
|
||||||
|
namespace SHADE_Scripting.Audio
|
||||||
|
{
|
||||||
|
public class SoundLoopEmitter : Script
|
||||||
|
{
|
||||||
|
[SerializeField]
|
||||||
|
private string clipHandlerName;
|
||||||
|
|
||||||
|
[SerializeField]
|
||||||
|
private string clipPath;
|
||||||
|
|
||||||
|
public float volume;
|
||||||
|
|
||||||
|
protected override void awake()
|
||||||
|
{
|
||||||
|
AudioHandler.audioClipHandlers[clipHandlerName] = SHADE.Audio.CreateAudioClip(clipPath);
|
||||||
|
}
|
||||||
|
|
||||||
|
protected override void start()
|
||||||
|
{
|
||||||
|
SHADE.Audio.AttachAudioClipToObject(AudioHandler.audioClipHandlers[clipHandlerName], GameObject.EntityId);
|
||||||
|
AudioHandler.audioClipHandlers[clipHandlerName].SetVolume(volume);
|
||||||
|
AudioHandler.audioClipHandlers[clipHandlerName].Play();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
|
@ -0,0 +1,3 @@
|
||||||
|
Name: CS_SoundLoopEmitter
|
||||||
|
ID: 154714630
|
||||||
|
Type: 9
|
|
@ -37,6 +37,9 @@ public partial class Homeowner1 : BehaviourTree
|
||||||
|
|
||||||
private List<GameObject> waypoints;
|
private List<GameObject> waypoints;
|
||||||
|
|
||||||
|
[SerializeField]
|
||||||
|
private GameObject startWaypoint;
|
||||||
|
|
||||||
[SerializeField]
|
[SerializeField]
|
||||||
[Tooltip("The AI will patrol at this speed")]
|
[Tooltip("The AI will patrol at this speed")]
|
||||||
private float patrolSpeed;
|
private float patrolSpeed;
|
||||||
|
@ -112,8 +115,14 @@ public partial class Homeowner1 : BehaviourTree
|
||||||
AudioHandler.audioClipHandlers["BGMAdaptive"] = Audio.CreateAudioClip("event:/Music/bgm_adaptive");
|
AudioHandler.audioClipHandlers["BGMAdaptive"] = Audio.CreateAudioClip("event:/Music/bgm_adaptive");
|
||||||
|
|
||||||
AudioHandler.audioClipHandlers["SFXFootstep"] = Audio.CreateAudioClip("event:/Homeowner/homeowner_footsteps");
|
AudioHandler.audioClipHandlers["SFXFootstep"] = Audio.CreateAudioClip("event:/Homeowner/homeowner_footsteps");
|
||||||
|
Audio.AttachAudioClipToObject(AudioHandler.audioClipHandlers["SFXFootstep"], GameObject.EntityId);
|
||||||
AudioHandler.audioClipHandlers["SFXDetectAh"] = Audio.CreateAudioClip("event:/Homeowner/homeowner_detect_raccoon");
|
AudioHandler.audioClipHandlers["SFXDetectAh"] = Audio.CreateAudioClip("event:/Homeowner/homeowner_detect_raccoon");
|
||||||
|
Audio.AttachAudioClipToObject(AudioHandler.audioClipHandlers["SFXDetectAh"], GameObject.EntityId);
|
||||||
AudioHandler.audioClipHandlers["SFXDetectSting"] = Audio.CreateAudioClip("event:/Music/stingers/player_detected");
|
AudioHandler.audioClipHandlers["SFXDetectSting"] = Audio.CreateAudioClip("event:/Music/stingers/player_detected");
|
||||||
|
AudioHandler.audioClipHandlers["SFXHumming"] = Audio.CreateAudioClip("event:/Homeowner/homeowner_humming");
|
||||||
|
Audio.AttachAudioClipToObject(AudioHandler.audioClipHandlers["SFXHumming"], GameObject.EntityId);
|
||||||
|
AudioHandler.audioClipHandlers["SFXHumming"].SetVolume(0.15f);
|
||||||
|
AudioHandler.audioClipHandlers["SFXHumming"].Play();
|
||||||
|
|
||||||
if (aiInstance != null && aiInstance != this)
|
if (aiInstance != null && aiInstance != this)
|
||||||
RemoveScript<Homeowner1>();
|
RemoveScript<Homeowner1>();
|
||||||
|
@ -151,6 +160,8 @@ public partial class Homeowner1 : BehaviourTree
|
||||||
SetData("distanceToCapture", distanceToCapture);
|
SetData("distanceToCapture", distanceToCapture);
|
||||||
if (GetData("baseCaptureTime") == null || (float)GetData("baseCaptureTime") != captureTime)
|
if (GetData("baseCaptureTime") == null || (float)GetData("baseCaptureTime") != captureTime)
|
||||||
SetData("baseCaptureTime", captureTime);
|
SetData("baseCaptureTime", captureTime);
|
||||||
|
if (GetData("startWaypoint") == null || (GameObject)GetData("startWaypoint") != startWaypoint)
|
||||||
|
SetData("startWaypoint", startWaypoint);
|
||||||
|
|
||||||
events.Tick();
|
events.Tick();
|
||||||
|
|
||||||
|
|
|
@ -12,6 +12,7 @@
|
||||||
|
|
||||||
using SHADE;
|
using SHADE;
|
||||||
using SHADE_Scripting.AIBehaviour.BehaviourTree;
|
using SHADE_Scripting.AIBehaviour.BehaviourTree;
|
||||||
|
using SHADE_Scripting.Audio;
|
||||||
using System;
|
using System;
|
||||||
using System.Collections.Generic;
|
using System.Collections.Generic;
|
||||||
using System.Linq;
|
using System.Linq;
|
||||||
|
@ -98,6 +99,35 @@ public partial class LeafAttack : BehaviourTreeNode
|
||||||
if (player.GetScript<PlayerController>().stateMachine && !player.GetScript<PlayerController>().stateMachine.IsState(typeof(PlayerCaughtState)))
|
if (player.GetScript<PlayerController>().stateMachine && !player.GetScript<PlayerController>().stateMachine.IsState(typeof(PlayerCaughtState)))
|
||||||
player.GetScript<PlayerController>().stateMachine.SetState(typeof(PlayerCaughtState));
|
player.GetScript<PlayerController>().stateMachine.SetState(typeof(PlayerCaughtState));
|
||||||
|
|
||||||
|
//Teleport AI back to home waypoint
|
||||||
|
int homeIndex = 0;
|
||||||
|
GameObject? startWaypoint = null;
|
||||||
|
List<GameObject>? waypoints = (List<GameObject>)GetNodeData("waypoints");
|
||||||
|
if (GetNodeData("startWaypoint") != null)
|
||||||
|
startWaypoint = (GameObject)GetNodeData("startWaypoint");
|
||||||
|
if (startWaypoint != null)
|
||||||
|
{
|
||||||
|
for (int i = 0; i < waypoints.Count; ++i)
|
||||||
|
{
|
||||||
|
if (startWaypoint == waypoints[i])
|
||||||
|
{
|
||||||
|
homeIndex = i;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
SetNodeData("currentWaypointIndex", homeIndex);
|
||||||
|
SetNodeData("playerLastSightedWaypointIndex", homeIndex);
|
||||||
|
SetNodeData("isAlert", false);
|
||||||
|
Audio.SetParameterWithLabel("PlayerDetection", "Undetected");
|
||||||
|
AudioHandler.audioClipHandlers["SFXHumming"].Play();
|
||||||
|
|
||||||
|
Transform? transform = (Transform)GetNodeData("transform");
|
||||||
|
if (waypoints != null && transform != null)
|
||||||
|
{
|
||||||
|
transform.GlobalPosition = waypoints[homeIndex].GetComponent<Transform>().GlobalPosition;
|
||||||
|
}
|
||||||
|
ClearNodeData("target");
|
||||||
|
|
||||||
status = BehaviourTreeNodeStatus.SUCCESS;
|
status = BehaviourTreeNodeStatus.SUCCESS;
|
||||||
onExit(BehaviourTreeNodeStatus.SUCCESS);
|
onExit(BehaviourTreeNodeStatus.SUCCESS);
|
||||||
return status;
|
return status;
|
||||||
|
|
|
@ -60,7 +60,7 @@ public partial class LeafChase : BehaviourTreeNode
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
//Debug.Log("Player is nearest " + nearestWaypointIndex);
|
//Debug.Log("Player is nearest " + nearestWaypointIndex);
|
||||||
//Debug.Log("I'm at " + (int)GetNodeData("currentWaypointIndex"));
|
//Debug.Log("AI going to " + (int)GetNodeData("currentWaypointIndex"));
|
||||||
SetNodeData("playerLastSightedWaypointIndex", nearestWaypointIndex);
|
SetNodeData("playerLastSightedWaypointIndex", nearestWaypointIndex);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -78,6 +78,7 @@ public partial class LeafChase : BehaviourTreeNode
|
||||||
GetNodeData("distanceToCapture") == null ||
|
GetNodeData("distanceToCapture") == null ||
|
||||||
GetNodeData("baseCaptureTime") == null)
|
GetNodeData("baseCaptureTime") == null)
|
||||||
{
|
{
|
||||||
|
//Debug.Log("Chase Failure: null values");
|
||||||
status = BehaviourTreeNodeStatus.FAILURE;
|
status = BehaviourTreeNodeStatus.FAILURE;
|
||||||
onExit(BehaviourTreeNodeStatus.FAILURE);
|
onExit(BehaviourTreeNodeStatus.FAILURE);
|
||||||
return status;
|
return status;
|
||||||
|
@ -113,7 +114,8 @@ public partial class LeafChase : BehaviourTreeNode
|
||||||
if (GetNodeData("isAlert") != null && (bool)GetNodeData("isAlert") == true)
|
if (GetNodeData("isAlert") != null && (bool)GetNodeData("isAlert") == true)
|
||||||
{
|
{
|
||||||
//AudioHandler.audioClipHandlers["BGMAdpative"].SetParameter("Detected", 0.0f);
|
//AudioHandler.audioClipHandlers["BGMAdpative"].SetParameter("Detected", 0.0f);
|
||||||
Audio.SetParameter("Detected", 0.0f);
|
//Audio.SetParameter("Detected", 0.0f);
|
||||||
|
Audio.SetParameterWithLabel("PlayerDetection", "Undetected");
|
||||||
AudioHandler.audioClipHandlers["SFXHumming"].Play();
|
AudioHandler.audioClipHandlers["SFXHumming"].Play();
|
||||||
}
|
}
|
||||||
SetNodeData("isAlert", false);
|
SetNodeData("isAlert", false);
|
||||||
|
|
|
@ -29,7 +29,7 @@ public partial class LeafPatrol : BehaviourTreeNode
|
||||||
private float chaseSpeed;
|
private float chaseSpeed;
|
||||||
private float turningSpeed;
|
private float turningSpeed;
|
||||||
private float retreatTimer = 0.0f;
|
private float retreatTimer = 0.0f;
|
||||||
private int currentWaypointIndex = 0;
|
private int currentWaypointIndex = -1;
|
||||||
private bool retreatState = false;
|
private bool retreatState = false;
|
||||||
private bool goingForwards = true;
|
private bool goingForwards = true;
|
||||||
|
|
||||||
|
@ -47,7 +47,7 @@ public partial class LeafPatrol : BehaviourTreeNode
|
||||||
//node, and hence we do not need to inherit its constructors
|
//node, and hence we do not need to inherit its constructors
|
||||||
public LeafPatrol(string name) : base(name)
|
public LeafPatrol(string name) : base(name)
|
||||||
{
|
{
|
||||||
currentWaypointIndex = 0;
|
currentWaypointIndex = -1;
|
||||||
}
|
}
|
||||||
|
|
||||||
//When it comes to evaluating,
|
//When it comes to evaluating,
|
||||||
|
@ -57,6 +57,42 @@ public partial class LeafPatrol : BehaviourTreeNode
|
||||||
//Debug.LogWarning("LeafPatrol");
|
//Debug.LogWarning("LeafPatrol");
|
||||||
onEnter(BehaviourTreeNodeStatus.RUNNING);
|
onEnter(BehaviourTreeNodeStatus.RUNNING);
|
||||||
|
|
||||||
|
//Initialise home waypoint
|
||||||
|
waypoints = (List<GameObject>)GetNodeData("waypoints");
|
||||||
|
if (currentWaypointIndex == -1)
|
||||||
|
{
|
||||||
|
if (waypoints != null)
|
||||||
|
{
|
||||||
|
//Debug.Log("Waypoints not null");
|
||||||
|
if (GetNodeData("startWaypoint") != null)
|
||||||
|
{
|
||||||
|
//Debug.Log("Getting start waypoint");
|
||||||
|
GameObject startWaypoint = (GameObject)(GetNodeData("startWaypoint"));
|
||||||
|
for (int i = 0; i < waypoints.Count; ++i)
|
||||||
|
{
|
||||||
|
if (startWaypoint == waypoints[i])
|
||||||
|
{
|
||||||
|
//Debug.Log("Leaf Patrol Constructor: Start Waypoint Index: " + i.ToString());
|
||||||
|
currentWaypointIndex = i;
|
||||||
|
SetNodeData("currentWaypointIndex", i);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
status = BehaviourTreeNodeStatus.FAILURE;
|
||||||
|
onExit(BehaviourTreeNodeStatus.FAILURE);
|
||||||
|
return status;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
status = BehaviourTreeNodeStatus.FAILURE;
|
||||||
|
onExit(BehaviourTreeNodeStatus.FAILURE);
|
||||||
|
return status;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
//Get data
|
//Get data
|
||||||
if (GetNodeData("transform") == null ||
|
if (GetNodeData("transform") == null ||
|
||||||
GetNodeData("patrolSpeed") == null ||
|
GetNodeData("patrolSpeed") == null ||
|
||||||
|
@ -104,12 +140,13 @@ public partial class LeafPatrol : BehaviourTreeNode
|
||||||
ClearNodeData("isWaiting");
|
ClearNodeData("isWaiting");
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
waypoints = (List<GameObject>)GetNodeData("waypoints");
|
if (GetNodeData("currentWaypointIndex") != null)
|
||||||
if (waypoints == null)
|
|
||||||
{
|
{
|
||||||
return;
|
//2023 Mar 4, 0400, this is needed when the AI teleports back to the first spot after catching
|
||||||
|
currentWaypointIndex = (int)GetNodeData("currentWaypointIndex");
|
||||||
}
|
}
|
||||||
Vector3 targetPosition = waypoints[currentWaypointIndex].GetComponent<Transform>().GlobalPosition;
|
//Modulo operator to prevent out of range exceptions
|
||||||
|
Vector3 targetPosition = waypoints[(currentWaypointIndex % waypoints.Count)].GetComponent<Transform>().GlobalPosition;
|
||||||
//Reach waypoint by X and Z being near enough
|
//Reach waypoint by X and Z being near enough
|
||||||
//Do not consider Y of waypoints yet
|
//Do not consider Y of waypoints yet
|
||||||
Vector3 remainingDistance = targetPosition - transform.GlobalPosition;
|
Vector3 remainingDistance = targetPosition - transform.GlobalPosition;
|
||||||
|
@ -195,6 +232,8 @@ public partial class LeafPatrol : BehaviourTreeNode
|
||||||
//Debug.Log("AI is at " + transform.GlobalPosition.x.ToString() + " " + transform.GlobalPosition.y.ToString() + " " + transform.GlobalPosition.z.ToString());
|
//Debug.Log("AI is at " + transform.GlobalPosition.x.ToString() + " " + transform.GlobalPosition.y.ToString() + " " + transform.GlobalPosition.z.ToString());
|
||||||
Vector3 normalisedDifference = targetPosition - transform.GlobalPosition;
|
Vector3 normalisedDifference = targetPosition - transform.GlobalPosition;
|
||||||
normalisedDifference.y = 0.0f; //Do not move vertically
|
normalisedDifference.y = 0.0f; //Do not move vertically
|
||||||
|
//Debug.Log("Leaf Patrol Current Waypoint Index: " + currentWaypointIndex.ToString());
|
||||||
|
//Debug.Log("True Difference x " + normalisedDifference.x.ToString() + " z " + normalisedDifference.z.ToString());
|
||||||
normalisedDifference /= normalisedDifference.GetMagnitude();
|
normalisedDifference /= normalisedDifference.GetMagnitude();
|
||||||
//Debug.Log("Normalised Difference x " + normalisedDifference.x.ToString() + " z " + normalisedDifference.z.ToString());
|
//Debug.Log("Normalised Difference x " + normalisedDifference.x.ToString() + " z " + normalisedDifference.z.ToString());
|
||||||
|
|
||||||
|
@ -245,7 +284,8 @@ public partial class LeafPatrol : BehaviourTreeNode
|
||||||
AudioHandler.audioClipHandlers["SFXHumming"].Play();
|
AudioHandler.audioClipHandlers["SFXHumming"].Play();
|
||||||
//AudioHandler.audioClipHandlers["BGMUnalert"].Play();
|
//AudioHandler.audioClipHandlers["BGMUnalert"].Play();
|
||||||
//AudioHandler.audioClipHandlers["BGMAdaptive"].SetParameter("Detected", 0.0f);
|
//AudioHandler.audioClipHandlers["BGMAdaptive"].SetParameter("Detected", 0.0f);
|
||||||
Audio.SetParameter("Detected", 0.0f);
|
//Audio.SetParameter("Detected", 0.0f);
|
||||||
|
Audio.SetParameterWithLabel("PlayerDetection", "Undetected");
|
||||||
}
|
}
|
||||||
SetNodeData("isAlert", false);
|
SetNodeData("isAlert", false);
|
||||||
}
|
}
|
||||||
|
|
|
@ -26,6 +26,7 @@ public partial class LeafSearch : BehaviourTreeNode
|
||||||
private Vector3 eyeOffset;
|
private Vector3 eyeOffset;
|
||||||
private float sightDistance;
|
private float sightDistance;
|
||||||
private GameObject? player; //To be searched for and marked
|
private GameObject? player; //To be searched for and marked
|
||||||
|
private bool screamOnce;
|
||||||
}
|
}
|
||||||
|
|
||||||
//FUNCTIONS HERE
|
//FUNCTIONS HERE
|
||||||
|
@ -67,7 +68,8 @@ public partial class LeafSearch : BehaviourTreeNode
|
||||||
if (GetNodeData("isAlert") != null && (bool)GetNodeData("isAlert") == true)
|
if (GetNodeData("isAlert") != null && (bool)GetNodeData("isAlert") == true)
|
||||||
{
|
{
|
||||||
//AudioHandler.audioClipHandlers["BGMAdaptive"].SetParameter("Detected", 0.0f);
|
//AudioHandler.audioClipHandlers["BGMAdaptive"].SetParameter("Detected", 0.0f);
|
||||||
Audio.SetParameter("Detected", 0.0f);
|
//Audio.SetParameter("Detected", 0.0f);
|
||||||
|
Audio.SetParameterWithLabel("PlayerDetection", "Undetected");
|
||||||
AudioHandler.audioClipHandlers["SFXHumming"].Play();
|
AudioHandler.audioClipHandlers["SFXHumming"].Play();
|
||||||
reevaluateWaypoint();
|
reevaluateWaypoint();
|
||||||
}
|
}
|
||||||
|
@ -97,6 +99,7 @@ public partial class LeafSearch : BehaviourTreeNode
|
||||||
|
|
||||||
//Search for player
|
//Search for player
|
||||||
player = GameObject.Find("Player");
|
player = GameObject.Find("Player");
|
||||||
|
screamOnce = false;
|
||||||
|
|
||||||
//Automatically fail if no player is found
|
//Automatically fail if no player is found
|
||||||
if (player == null)
|
if (player == null)
|
||||||
|
@ -104,6 +107,7 @@ public partial class LeafSearch : BehaviourTreeNode
|
||||||
SetNodeData("isAlert", false);
|
SetNodeData("isAlert", false);
|
||||||
status = BehaviourTreeNodeStatus.FAILURE;
|
status = BehaviourTreeNodeStatus.FAILURE;
|
||||||
onExit(BehaviourTreeNodeStatus.FAILURE);
|
onExit(BehaviourTreeNodeStatus.FAILURE);
|
||||||
|
screamOnce = false;
|
||||||
return status;
|
return status;
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
|
@ -125,6 +129,7 @@ public partial class LeafSearch : BehaviourTreeNode
|
||||||
//handleChaseStop();
|
//handleChaseStop();
|
||||||
status = BehaviourTreeNodeStatus.FAILURE;
|
status = BehaviourTreeNodeStatus.FAILURE;
|
||||||
onExit(BehaviourTreeNodeStatus.FAILURE);
|
onExit(BehaviourTreeNodeStatus.FAILURE);
|
||||||
|
screamOnce = false;
|
||||||
return status;
|
return status;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -140,6 +145,7 @@ public partial class LeafSearch : BehaviourTreeNode
|
||||||
//handleChaseStop();
|
//handleChaseStop();
|
||||||
status = BehaviourTreeNodeStatus.FAILURE;
|
status = BehaviourTreeNodeStatus.FAILURE;
|
||||||
onExit(BehaviourTreeNodeStatus.FAILURE);
|
onExit(BehaviourTreeNodeStatus.FAILURE);
|
||||||
|
screamOnce = false;
|
||||||
return status;
|
return status;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -156,6 +162,7 @@ public partial class LeafSearch : BehaviourTreeNode
|
||||||
//Debug.Log("Failure: Player has no collider");
|
//Debug.Log("Failure: Player has no collider");
|
||||||
status = BehaviourTreeNodeStatus.FAILURE;
|
status = BehaviourTreeNodeStatus.FAILURE;
|
||||||
onExit(BehaviourTreeNodeStatus.FAILURE);
|
onExit(BehaviourTreeNodeStatus.FAILURE);
|
||||||
|
screamOnce = false;
|
||||||
return status;
|
return status;
|
||||||
}
|
}
|
||||||
//Ray destination to target the centre of the player's collider instead of transform position
|
//Ray destination to target the centre of the player's collider instead of transform position
|
||||||
|
@ -173,6 +180,7 @@ public partial class LeafSearch : BehaviourTreeNode
|
||||||
//handleChaseStop();
|
//handleChaseStop();
|
||||||
status = BehaviourTreeNodeStatus.FAILURE;
|
status = BehaviourTreeNodeStatus.FAILURE;
|
||||||
onExit(BehaviourTreeNodeStatus.FAILURE);
|
onExit(BehaviourTreeNodeStatus.FAILURE);
|
||||||
|
screamOnce = false;
|
||||||
return status;
|
return status;
|
||||||
}
|
}
|
||||||
else if (sightRayHit.Hit && sightRayHit.Other == player)
|
else if (sightRayHit.Hit && sightRayHit.Other == player)
|
||||||
|
@ -188,31 +196,40 @@ public partial class LeafSearch : BehaviourTreeNode
|
||||||
if (GetNodeData("isAlert") == null)
|
if (GetNodeData("isAlert") == null)
|
||||||
{
|
{
|
||||||
SetNodeData("isAlert", true);
|
SetNodeData("isAlert", true);
|
||||||
|
screamOnce = true;
|
||||||
//Audio.StopAllSounds();
|
//Audio.StopAllSounds();
|
||||||
AudioHandler.audioClipHandlers["SFXDetectAh"].Play();
|
//AudioHandler.audioClipHandlers["SFXDetectAh"].Play();
|
||||||
AudioHandler.audioClipHandlers["SFXDetectSting"].Play();
|
AudioHandler.audioClipHandlers["SFXDetectSting"].Play();
|
||||||
//AudioHandler.audioClipHandlers["BGMAlert"].Play();
|
//AudioHandler.audioClipHandlers["BGMAlert"].Play();
|
||||||
AudioHandler.audioClipHandlers["SFXHumming"].Stop(false);
|
AudioHandler.audioClipHandlers["SFXHumming"].Stop(false);
|
||||||
//AudioHandler.audioClipHandlers["BGMUnalert"].Stop(true);
|
//AudioHandler.audioClipHandlers["BGMUnalert"].Stop(true);
|
||||||
//AudioHandler.audioClipHandlers["BGMAdaptive"].SetParameter("Detected", 1.0f);
|
//AudioHandler.audioClipHandlers["BGMAdaptive"].SetParameter("Detected", 1.0f);
|
||||||
Audio.SetParameter("Detected", 1.0f);
|
//Audio.SetParameter("Detected", 1.0f);
|
||||||
|
Audio.SetParameterWithLabel("PlayerDetection", "Detected");
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
if (GetNodeData("isAlert") != null && (bool)GetNodeData("isAlert") == false)
|
if (GetNodeData("isAlert") != null && (bool)GetNodeData("isAlert") == false)
|
||||||
{
|
{
|
||||||
//Audio.StopAllSounds();
|
//Audio.StopAllSounds();
|
||||||
AudioHandler.audioClipHandlers["SFXDetectAh"].Play();
|
screamOnce = true;
|
||||||
|
//AudioHandler.audioClipHandlers["SFXDetectAh"].Play();
|
||||||
AudioHandler.audioClipHandlers["SFXDetectSting"].Play();
|
AudioHandler.audioClipHandlers["SFXDetectSting"].Play();
|
||||||
//AudioHandler.audioClipHandlers["BGMAlert"].Play();
|
//AudioHandler.audioClipHandlers["BGMAlert"].Play();
|
||||||
AudioHandler.audioClipHandlers["SFXHumming"].Stop(false);
|
AudioHandler.audioClipHandlers["SFXHumming"].Stop(false);
|
||||||
//AudioHandler.audioClipHandlers["BGMUnalert"].Stop(true);
|
//AudioHandler.audioClipHandlers["BGMUnalert"].Stop(true);
|
||||||
//AudioHandler.audioClipHandlers["BGMAdaptive"].SetParameter("Detected", 1.0f);
|
//AudioHandler.audioClipHandlers["BGMAdaptive"].SetParameter("Detected", 1.0f);
|
||||||
Audio.SetParameter("Detected", 1.0f);
|
//Audio.SetParameter("Detected", 1.0f);
|
||||||
|
Audio.SetParameterWithLabel("PlayerDetection", "Detected");
|
||||||
}
|
}
|
||||||
SetNodeData("isAlert", true);
|
SetNodeData("isAlert", true);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if (screamOnce)
|
||||||
|
{
|
||||||
|
AudioHandler.audioClipHandlers["SFXDetectAh"].Play();
|
||||||
|
}
|
||||||
|
|
||||||
status = BehaviourTreeNodeStatus.SUCCESS;
|
status = BehaviourTreeNodeStatus.SUCCESS;
|
||||||
onExit(BehaviourTreeNodeStatus.SUCCESS);
|
onExit(BehaviourTreeNodeStatus.SUCCESS);
|
||||||
return status;
|
return status;
|
||||||
|
|
|
@ -14,6 +14,12 @@ public class Breakable : Script
|
||||||
public bool isBreak { get; set; }
|
public bool isBreak { get; set; }
|
||||||
private List<GameObject> itemPieces = new List<GameObject>();
|
private List<GameObject> itemPieces = new List<GameObject>();
|
||||||
|
|
||||||
|
[SerializeField]
|
||||||
|
private string breakClipHandlerName;
|
||||||
|
|
||||||
|
[SerializeField]
|
||||||
|
private string breakClipPath;
|
||||||
|
|
||||||
protected override void awake()
|
protected override void awake()
|
||||||
{
|
{
|
||||||
rb = GetComponent<RigidBody>();
|
rb = GetComponent<RigidBody>();
|
||||||
|
@ -32,7 +38,7 @@ public class Breakable : Script
|
||||||
|
|
||||||
isBreak = false;
|
isBreak = false;
|
||||||
|
|
||||||
AudioHandler.audioClipHandlers["SFXBreak"] = Audio.CreateAudioClip("event:/Props/impact_break");
|
AudioHandler.audioClipHandlers[breakClipHandlerName] = Audio.CreateAudioClip(breakClipPath);
|
||||||
}
|
}
|
||||||
|
|
||||||
protected override void update()
|
protected override void update()
|
||||||
|
@ -76,7 +82,9 @@ public class Breakable : Script
|
||||||
|
|
||||||
GameManager.Instance.itemShatter = false;
|
GameManager.Instance.itemShatter = false;
|
||||||
isBreak = false;
|
isBreak = false;
|
||||||
AudioHandler.audioClipHandlers["SFXBreak"].Play();
|
Audio.AttachAudioClipToObject(AudioHandler.audioClipHandlers[breakClipHandlerName], GameObject.EntityId);
|
||||||
|
AudioHandler.audioClipHandlers[breakClipHandlerName].Play();
|
||||||
|
//Audio.DetachAudioClipFromObject(AudioHandler.audioClipHandlers[breakClipHandlerName]);
|
||||||
GameObject.SetActive(false);
|
GameObject.SetActive(false);
|
||||||
}
|
}
|
||||||
}
|
}
|
|
@ -121,11 +121,15 @@ public class Item : Script
|
||||||
|
|
||||||
if (playSound)
|
if (playSound)
|
||||||
{
|
{
|
||||||
|
Audio.AttachAudioClipToObject(AudioHandler.audioClipHandlers["SFXImpactElastic"], GameObject.EntityId);
|
||||||
|
Audio.AttachAudioClipToObject(AudioHandler.audioClipHandlers["SFXImpactHard"], GameObject.EntityId);
|
||||||
if (currCategory == ItemCategory.LIGHT)
|
if (currCategory == ItemCategory.LIGHT)
|
||||||
AudioHandler.audioClipHandlers["SFXImpactElastic"].Play();
|
AudioHandler.audioClipHandlers["SFXImpactElastic"].Play();
|
||||||
else if (currCategory == ItemCategory.MEDIUM || currCategory == ItemCategory.HEAVY)
|
else if (currCategory == ItemCategory.MEDIUM || currCategory == ItemCategory.HEAVY)
|
||||||
AudioHandler.audioClipHandlers["SFXImpactHard"].Play();
|
AudioHandler.audioClipHandlers["SFXImpactHard"].Play();
|
||||||
playSound = false;
|
playSound = false;
|
||||||
|
Audio.DetachAudioClipFromObject(AudioHandler.audioClipHandlers["SFXImpactElastic"]);
|
||||||
|
Audio.DetachAudioClipFromObject(AudioHandler.audioClipHandlers["SFXImpactHard"]);
|
||||||
}
|
}
|
||||||
|
|
||||||
if (info.GameObject.GetScript<Homeowner1>() && !returnBack)
|
if (info.GameObject.GetScript<Homeowner1>() && !returnBack)
|
||||||
|
|
|
@ -21,12 +21,12 @@ public class PickAndThrow : Script
|
||||||
private Collider itemCollider;
|
private Collider itemCollider;
|
||||||
private Item itemScript;
|
private Item itemScript;
|
||||||
private Transform raccoonHoldLocation;
|
private Transform raccoonHoldLocation;
|
||||||
private ThirdPersonCamera tpc;
|
public ThirdPersonCamera tpc { get; set; }
|
||||||
private float lastXDir;
|
private float lastXDir;
|
||||||
private float lastZDir;
|
private float lastZDir;
|
||||||
private bool inRange = false;
|
private bool inRange = false;
|
||||||
public bool throwItem = false;
|
public bool throwItem = false;
|
||||||
private Vector3 prevTargetOffSet;
|
public Vector3 prevTargetOffSet { get; set; }
|
||||||
|
|
||||||
[Tooltip("Lenght of ray")]
|
[Tooltip("Lenght of ray")]
|
||||||
public float rayDistance = 1;
|
public float rayDistance = 1;
|
||||||
|
@ -165,7 +165,7 @@ public class PickAndThrow : Script
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
private void ResetItemObject()
|
public void ResetItemObject()
|
||||||
{
|
{
|
||||||
itemRidigBody = null;
|
itemRidigBody = null;
|
||||||
itemTransform = null;
|
itemTransform = null;
|
||||||
|
|
|
@ -22,7 +22,7 @@ public class PlayerController : Script
|
||||||
public Camera cam { get; set; }
|
public Camera cam { get; set; }
|
||||||
public CameraArm camArm { get; set; }
|
public CameraArm camArm { get; set; }
|
||||||
private PickAndThrow pat;
|
private PickAndThrow pat;
|
||||||
public StateMachine stateMachine;
|
public StateMachine stateMachine { get; set; }
|
||||||
|
|
||||||
public bool holdItem { get; set; }
|
public bool holdItem { get; set; }
|
||||||
public bool isAiming { get; set; }
|
public bool isAiming { get; set; }
|
||||||
|
@ -78,9 +78,9 @@ public class PlayerController : Script
|
||||||
|
|
||||||
//silhouette=====================================================================
|
//silhouette=====================================================================
|
||||||
public GameObject silhouettePlayer;
|
public GameObject silhouettePlayer;
|
||||||
public Renderable silhouettePlayerRend;
|
private Renderable silhouettePlayerRend;
|
||||||
public GameObject silhouetteBag;
|
public GameObject silhouetteBag;
|
||||||
public Renderable silhouetteBagRend;
|
private Renderable silhouetteBagRend;
|
||||||
|
|
||||||
protected override void awake()
|
protected override void awake()
|
||||||
{
|
{
|
||||||
|
@ -348,7 +348,7 @@ public class PlayerController : Script
|
||||||
if (isMoveKeyPress && tranform && !isAiming)
|
if (isMoveKeyPress && tranform && !isAiming)
|
||||||
{
|
{
|
||||||
Quaternion currentRotation = tranform.LocalRotation;
|
Quaternion currentRotation = tranform.LocalRotation;
|
||||||
Quaternion targetRotation = Quaternion.LookRotation(new Vector3(axisMove.x, 0.0f, axisMove.y), Vector3.Up);
|
Quaternion targetRotation = Quaternion.Euler(0.0f, MathF.Atan2(axisMove.x,axisMove.y), 0.0f);
|
||||||
tranform.LocalRotation = Quaternion.Slerp(currentRotation, targetRotation, rotationFactorPerFrame * (float)Time.FixedDeltaTime);
|
tranform.LocalRotation = Quaternion.Slerp(currentRotation, targetRotation, rotationFactorPerFrame * (float)Time.FixedDeltaTime);
|
||||||
}
|
}
|
||||||
else if (camArm && tranform && isAiming)
|
else if (camArm && tranform && isAiming)
|
||||||
|
@ -409,9 +409,18 @@ public class PlayerController : Script
|
||||||
|
|
||||||
if (pat && pat.item)
|
if (pat && pat.item)
|
||||||
{
|
{
|
||||||
holdItem = false;
|
if (holdItem)
|
||||||
isAiming = false;
|
{
|
||||||
pat.item.GetScript<Item>().returnBack = true;
|
holdItem = false;
|
||||||
|
pat.item.GetScript<Item>().returnBack = true;
|
||||||
|
}
|
||||||
|
if (isAiming)
|
||||||
|
{
|
||||||
|
isAiming = false;
|
||||||
|
cam.FOV = pat.defaultFOV;
|
||||||
|
camArm.TargetOffset = pat.prevTargetOffSet;
|
||||||
|
camArm.ArmLength = pat.tpc.armLength;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -27,7 +27,7 @@ namespace SHADE_Scripting
|
||||||
{
|
{
|
||||||
AddComponent<Camera>();
|
AddComponent<Camera>();
|
||||||
}
|
}
|
||||||
GetComponent<Camera>().SetMainCamera();
|
|
||||||
if (!GetComponent<CameraArm>())
|
if (!GetComponent<CameraArm>())
|
||||||
{
|
{
|
||||||
AddComponent<CameraArm>();
|
AddComponent<CameraArm>();
|
||||||
|
|
|
@ -36,7 +36,6 @@ public class GameManager : Script
|
||||||
public bool itemScored {get;set;}
|
public bool itemScored {get;set;}
|
||||||
public int currMultiplierCombo { get; set;}
|
public int currMultiplierCombo { get; set;}
|
||||||
public float multiplierFont = 60.0f;
|
public float multiplierFont = 60.0f;
|
||||||
private Vector3 fontScalar;
|
|
||||||
|
|
||||||
public static GameManager Instance { get; private set; }
|
public static GameManager Instance { get; private set; }
|
||||||
|
|
||||||
|
@ -63,7 +62,6 @@ public class GameManager : Script
|
||||||
itemScored = false;
|
itemScored = false;
|
||||||
currMultiplierCombo = 1;
|
currMultiplierCombo = 1;
|
||||||
currMultiplierDuration = 0;
|
currMultiplierDuration = 0;
|
||||||
fontScalar = new Vector3(multiplierFont / maxMultiplierDuration, multiplierFont / maxMultiplierDuration , multiplierFont / maxMultiplierDuration);
|
|
||||||
itemShatter = false;
|
itemShatter = false;
|
||||||
GamePause = false;
|
GamePause = false;
|
||||||
stealFoodPopUpDone = false;
|
stealFoodPopUpDone = false;
|
||||||
|
@ -76,26 +74,29 @@ public class GameManager : Script
|
||||||
goingToLose = false;
|
goingToLose = false;
|
||||||
|
|
||||||
if (scoreText)
|
if (scoreText)
|
||||||
scoreText.GetComponent<TextRenderable>().Text = $"Score: {Score}";
|
scoreText.GetComponent<TextRenderable>().Text = $"{Score}";
|
||||||
if (timeText)
|
if (timeText)
|
||||||
timeText.GetComponent<TextRenderable>().Text = $"Time Left: {timer.ToString("0")}";
|
timeText.GetComponent<TextRenderable>().Text = $"{timer.ToString("0")}";
|
||||||
|
|
||||||
|
Input.SetMouseCentering(true);
|
||||||
|
Application.IsCursorVisible = false;
|
||||||
|
Application.FixDeltaTime = Time.DefaultFixDeltaTime;
|
||||||
}
|
}
|
||||||
|
|
||||||
protected override void start()
|
protected override void start()
|
||||||
{
|
{
|
||||||
AudioHandler.audioClipHandlers["BGMAdaptive"] = Audio.CreateAudioClip("event:/Music/bgm_adaptive");
|
AudioHandler.audioClipHandlers["BGMAdaptive"] = Audio.CreateAudioClip("event:/Music/bgm_adaptive_new");
|
||||||
AudioHandler.audioClipHandlers["BGMAdaptive"].Play();
|
AudioHandler.audioClipHandlers["BGMAdaptive"].Play();
|
||||||
|
|
||||||
Audio.SetParameter("Detected", 0.0f);
|
Audio.SetParameterWithLabel("PlayerDetection", "Undetected");
|
||||||
|
|
||||||
AudioHandler.audioClipHandlers["KitchenAmbience"] = Audio.CreateAudioClip("event:/Ambience/roomtone_kitchen");
|
AudioHandler.audioClipHandlers["KitchenAmbience"] = Audio.CreateAudioClip("event:/Ambience/roomtone_kitchen");
|
||||||
AudioHandler.audioClipHandlers["KitchenAmbience"].Play();
|
AudioHandler.audioClipHandlers["KitchenAmbience"].Play();
|
||||||
|
|
||||||
AudioHandler.audioClipHandlers["SFXHumming"] = Audio.CreateAudioClip("event:/Homeowner/homeowner_humming");
|
if (SceneFadeInOut.Instance != null)
|
||||||
AudioHandler.audioClipHandlers["SFXHumming"].SetVolume(0.15f);
|
SceneFadeInOut.Instance.CallFadeOut();
|
||||||
AudioHandler.audioClipHandlers["SFXHumming"].Play();
|
|
||||||
|
|
||||||
SceneFadeInOut.Instance.CallFadeOut();
|
GamePause = false;
|
||||||
}
|
}
|
||||||
|
|
||||||
protected override void update()
|
protected override void update()
|
||||||
|
@ -105,18 +106,18 @@ public class GameManager : Script
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Cheat();
|
||||||
|
|
||||||
if (currGameState == GameState.START)
|
if (currGameState == GameState.START)
|
||||||
{
|
{
|
||||||
timer -= Time.DeltaTimeF;
|
timer -= Time.DeltaTimeF;
|
||||||
if(scoreText)
|
if(scoreText)
|
||||||
scoreText.GetComponent<TextRenderable>().Text = $"{Score}";
|
scoreText.GetComponent<TextRenderable>().Text = $"{Score}";
|
||||||
if(timeText)
|
if(timeText)
|
||||||
timeText.GetComponent<TextRenderable>().Text = $"Time Left: {timer.ToString("0")}";
|
timeText.GetComponent<TextRenderable>().Text = $"{timer.ToString("0.00")}";
|
||||||
|
|
||||||
if (itemScored)
|
if (itemScored)
|
||||||
{
|
{
|
||||||
//multiplierText.GetComponent<TextRenderable>().Text = $"X {currMultiplierCombo}";
|
|
||||||
//multiplierText.GetComponent<Transform>().LocalScale -= fontScalar * Time.DeltaTimeF;
|
|
||||||
currMultiplierDuration += Time.DeltaTimeF;
|
currMultiplierDuration += Time.DeltaTimeF;
|
||||||
|
|
||||||
if (currMultiplierDuration >= maxMultiplierDuration)
|
if (currMultiplierDuration >= maxMultiplierDuration)
|
||||||
|
@ -127,31 +128,43 @@ public class GameManager : Script
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
else
|
|
||||||
{
|
|
||||||
//multiplierText.GetComponent<Transform>().LocalScale = Vector3.Zero;
|
|
||||||
}
|
|
||||||
|
|
||||||
if (!goingToLose && ((timer > 0 && totalItemCount <= 0 && !itemShatter) || Input.GetKeyDown(Input.KeyCode.F1)))
|
if (!goingToLose && ((timer > 0 && totalItemCount <= 0 && !itemShatter)))
|
||||||
{
|
{
|
||||||
currGameState = GameState.WIN;
|
currGameState = GameState.WIN;
|
||||||
AudioHandler.StopAllSounds(false);
|
AudioHandler.StopAllSounds(false);
|
||||||
AudioHandler.audioClipHandlers["BGMWin"].Play();
|
AudioHandler.audioClipHandlers["BGMWin"].Play();
|
||||||
goingToWin = true;
|
goingToWin = true;
|
||||||
SceneFadeInOut.Instance.CallFadeIn();
|
if (SceneFadeInOut.Instance != null)
|
||||||
|
SceneFadeInOut.Instance.CallFadeIn();
|
||||||
}
|
}
|
||||||
else if(!goingToWin && (timer < 0 || Input.GetKeyDown(Input.KeyCode.F2)))
|
else if(!goingToWin && (timer < 0))
|
||||||
{
|
{
|
||||||
currGameState = GameState.LOSE;
|
currGameState = GameState.LOSE;
|
||||||
AudioHandler.StopAllSounds(false);
|
AudioHandler.StopAllSounds(false);
|
||||||
AudioHandler.audioClipHandlers["BGMLose"].Play();
|
AudioHandler.audioClipHandlers["BGMLose"].Play();
|
||||||
goingToLose = true;
|
goingToLose = true;
|
||||||
SceneFadeInOut.Instance.CallFadeIn();
|
if (SceneFadeInOut.Instance != null)
|
||||||
|
SceneFadeInOut.Instance.CallFadeIn();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
//Handling transitions
|
//Handling transitions
|
||||||
if (SceneFadeInOut.Instance.FadeInFinished())
|
if (SceneFadeInOut.Instance != null)
|
||||||
|
{
|
||||||
|
if (SceneFadeInOut.Instance.FadeInFinished())
|
||||||
|
{
|
||||||
|
if (goingToWin)
|
||||||
|
{
|
||||||
|
SceneManager.ChangeScene(winScene);
|
||||||
|
}
|
||||||
|
if (goingToLose)
|
||||||
|
{
|
||||||
|
SceneManager.ChangeScene(loseScene);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
else
|
||||||
{
|
{
|
||||||
if (goingToWin)
|
if (goingToWin)
|
||||||
{
|
{
|
||||||
|
@ -164,6 +177,27 @@ public class GameManager : Script
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
private void Cheat()
|
||||||
|
{
|
||||||
|
if (Input.GetKeyUp(Input.KeyCode.F1))
|
||||||
|
{
|
||||||
|
currGameState = GameState.WIN;
|
||||||
|
AudioHandler.StopAllSounds(false);
|
||||||
|
goingToWin = true;
|
||||||
|
if (SceneFadeInOut.Instance != null)
|
||||||
|
SceneFadeInOut.Instance.CallFadeIn();
|
||||||
|
}
|
||||||
|
else if (Input.GetKeyUp(Input.KeyCode.F2))
|
||||||
|
{
|
||||||
|
currGameState = GameState.LOSE;
|
||||||
|
AudioHandler.StopAllSounds(false);
|
||||||
|
goingToLose = true;
|
||||||
|
if (SceneFadeInOut.Instance != null)
|
||||||
|
SceneFadeInOut.Instance.CallFadeIn();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
protected override void onDestroy()
|
protected override void onDestroy()
|
||||||
{
|
{
|
||||||
if (Instance == this)
|
if (Instance == this)
|
||||||
|
@ -175,7 +209,6 @@ public class GameManager : Script
|
||||||
totalItemCount -= 1;
|
totalItemCount -= 1;
|
||||||
itemScored = true;
|
itemScored = true;
|
||||||
currMultiplierDuration = 0;
|
currMultiplierDuration = 0;
|
||||||
//multiplierText.GetComponent<Transform>().LocalScale = new Vector3(multiplierFont, multiplierFont, multiplierFont);
|
|
||||||
|
|
||||||
if (currMultiplierCombo < maxMultiplierCombo)
|
if (currMultiplierCombo < maxMultiplierCombo)
|
||||||
currMultiplierCombo += 1;
|
currMultiplierCombo += 1;
|
||||||
|
@ -183,9 +216,9 @@ public class GameManager : Script
|
||||||
MultiplierTextFx fx = multiplierText.GetScript<MultiplierTextFx>();
|
MultiplierTextFx fx = multiplierText.GetScript<MultiplierTextFx>();
|
||||||
if (fx)
|
if (fx)
|
||||||
{
|
{
|
||||||
fx.ShowMultiplier(currMultiplierCombo, maxMultiplierDuration);
|
fx.ShowMultiplier(currMultiplierCombo, maxMultiplierDuration);
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
|
@ -1,10 +1,12 @@
|
||||||
using SHADE;
|
using SHADE;
|
||||||
|
using SHADE_Scripting.Audio;
|
||||||
using System;
|
using System;
|
||||||
|
|
||||||
public class JumpPad : Script
|
public class JumpPad : Script
|
||||||
{
|
{
|
||||||
protected override void awake()
|
protected override void awake()
|
||||||
{
|
{
|
||||||
|
AudioHandler.audioClipHandlers["SFXJumpPad"] = Audio.CreateAudioClip("event:/Props/jumppad_boing");
|
||||||
}
|
}
|
||||||
|
|
||||||
protected override void update()
|
protected override void update()
|
||||||
|
@ -15,6 +17,8 @@ public class JumpPad : Script
|
||||||
{
|
{
|
||||||
if (info.GameObject.GetScript<PlayerController>() && info.GameObject.GetScript<PlayerController>().currentState == PlayerController.RaccoonStates.FALLING)
|
if (info.GameObject.GetScript<PlayerController>() && info.GameObject.GetScript<PlayerController>().currentState == PlayerController.RaccoonStates.FALLING)
|
||||||
{
|
{
|
||||||
|
Audio.AttachAudioClipToObject(AudioHandler.audioClipHandlers["SFXJumpPad"], GameObject.EntityId);
|
||||||
|
AudioHandler.audioClipHandlers["SFXJumpPad"].Play();
|
||||||
info.GameObject.GetScript<PlayerController>().landedOnJumpPad = true;
|
info.GameObject.GetScript<PlayerController>().landedOnJumpPad = true;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -15,6 +15,7 @@ namespace SHADE_Scripting.UI
|
||||||
public Vector3 endPoint3;
|
public Vector3 endPoint3;
|
||||||
|
|
||||||
public GameObject playerCamera;
|
public GameObject playerCamera;
|
||||||
|
public GameObject gameplayCanvas;
|
||||||
public float duration = 3.0f;
|
public float duration = 3.0f;
|
||||||
|
|
||||||
private bool point1Done = false;
|
private bool point1Done = false;
|
||||||
|
@ -39,8 +40,6 @@ namespace SHADE_Scripting.UI
|
||||||
if (listOfCamera.Count == 0)
|
if (listOfCamera.Count == 0)
|
||||||
Debug.LogError("EMPTY PREVIEW POINTS");
|
Debug.LogError("EMPTY PREVIEW POINTS");
|
||||||
|
|
||||||
listOfCamera[0].SetMainCamera();
|
|
||||||
|
|
||||||
moveToEndPoint1 = TweenManager.CreateTweenThreadVec3(duration, listOfCamera[0].GetComponent<Transform>().LocalPosition, endPoint1, EASING_METHOD.EASE_IN_SINE);
|
moveToEndPoint1 = TweenManager.CreateTweenThreadVec3(duration, listOfCamera[0].GetComponent<Transform>().LocalPosition, endPoint1, EASING_METHOD.EASE_IN_SINE);
|
||||||
moveToEndPoint2 = TweenManager.CreateTweenThreadVec3(duration, listOfCamera[1].GetComponent<Transform>().LocalPosition, endPoint2, EASING_METHOD.EASE_IN_SINE);
|
moveToEndPoint2 = TweenManager.CreateTweenThreadVec3(duration, listOfCamera[1].GetComponent<Transform>().LocalPosition, endPoint2, EASING_METHOD.EASE_IN_SINE);
|
||||||
moveToEndPoint3 = TweenManager.CreateTweenThreadVec3(duration, listOfCamera[2].GetComponent<Transform>().LocalPosition, endPoint3, EASING_METHOD.EASE_IN_SINE);
|
moveToEndPoint3 = TweenManager.CreateTweenThreadVec3(duration, listOfCamera[2].GetComponent<Transform>().LocalPosition, endPoint3, EASING_METHOD.EASE_IN_SINE);
|
||||||
|
@ -48,31 +47,41 @@ namespace SHADE_Scripting.UI
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
protected override void start()
|
||||||
|
{
|
||||||
|
if (gameplayCanvas)
|
||||||
|
gameplayCanvas.SetActive(false);
|
||||||
|
listOfCamera[0].SetMainCamera();
|
||||||
|
}
|
||||||
|
|
||||||
protected override void update()
|
protected override void update()
|
||||||
{
|
{
|
||||||
if (!SceneFadeInOut.Instance.FadeOutFinished() && !point1Done)
|
if (SceneFadeInOut.Instance && !SceneFadeInOut.Instance.FadeOutFinished() && !point1Done)
|
||||||
{
|
{
|
||||||
moveToEndPoint1.Reset();
|
moveToEndPoint1.Reset();
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (Input.GetKeyUp(Input.KeyCode.Space))
|
if (Input.GetKeyUp(Input.KeyCode.Space) && !point3Done)
|
||||||
{
|
{
|
||||||
skip = true;
|
skip = true;
|
||||||
point1Done = true;
|
point1Done = true;
|
||||||
|
point3Done = true;
|
||||||
SceneFadeInOut.Instance.CallFadeIn();
|
SceneFadeInOut.Instance.CallFadeIn();
|
||||||
SceneFadeInOut.Instance.alphaValue = 0.01f;
|
SceneFadeInOut.Instance.alphaValue = 0.01f;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (skip && SceneFadeInOut.Instance.FadeInFinished())
|
if (skip && SceneFadeInOut.Instance && SceneFadeInOut.Instance.FadeInFinished())
|
||||||
{
|
{
|
||||||
playerCamera.GetComponent<Camera>().SetMainCamera();
|
playerCamera.GetComponent<Camera>().SetMainCamera();
|
||||||
SceneFadeInOut.Instance.CallFadeOut();
|
SceneFadeInOut.Instance.CallFadeOut();
|
||||||
}
|
}
|
||||||
|
|
||||||
if (skip && SceneFadeInOut.Instance.FadeOutFinished())
|
if (skip && SceneFadeInOut.Instance && SceneFadeInOut.Instance.FadeOutFinished())
|
||||||
{
|
{
|
||||||
GameManager.Instance.PreviewLevelDone = true;
|
GameManager.Instance.PreviewLevelDone = true;
|
||||||
|
if (gameplayCanvas)
|
||||||
|
gameplayCanvas.SetActive(true);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
@ -81,7 +90,7 @@ namespace SHADE_Scripting.UI
|
||||||
if (!point1Done)
|
if (!point1Done)
|
||||||
{
|
{
|
||||||
listOfCamera[0].GetComponent<Transform>().LocalPosition = moveToEndPoint1.GetValue();
|
listOfCamera[0].GetComponent<Transform>().LocalPosition = moveToEndPoint1.GetValue();
|
||||||
if (moveToEndPoint1.IsCompleted())
|
if (SceneFadeInOut.Instance && moveToEndPoint1.IsCompleted())
|
||||||
{
|
{
|
||||||
point1Done = true;
|
point1Done = true;
|
||||||
SceneFadeInOut.Instance.CallFadeIn();
|
SceneFadeInOut.Instance.CallFadeIn();
|
||||||
|
@ -89,13 +98,13 @@ namespace SHADE_Scripting.UI
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
if (SceneFadeInOut.Instance.FadeInFinished() && point1Done)
|
if (SceneFadeInOut.Instance && SceneFadeInOut.Instance.FadeInFinished() && point1Done)
|
||||||
{
|
{
|
||||||
listOfCamera[1].SetMainCamera();
|
listOfCamera[1].SetMainCamera();
|
||||||
SceneFadeInOut.Instance.CallFadeOut();
|
SceneFadeInOut.Instance.CallFadeOut();
|
||||||
}
|
}
|
||||||
|
|
||||||
if (SceneFadeInOut.Instance.FadeOutFinished() && point1Done)
|
if (SceneFadeInOut.Instance && SceneFadeInOut.Instance.FadeOutFinished() && point1Done)
|
||||||
{
|
{
|
||||||
if (!point2Done)
|
if (!point2Done)
|
||||||
{
|
{
|
||||||
|
@ -114,13 +123,13 @@ namespace SHADE_Scripting.UI
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
if (SceneFadeInOut.Instance.FadeInFinished() && point2Done)
|
if (SceneFadeInOut.Instance && SceneFadeInOut.Instance.FadeInFinished() && point2Done)
|
||||||
{
|
{
|
||||||
listOfCamera[2].SetMainCamera();
|
listOfCamera[2].SetMainCamera();
|
||||||
SceneFadeInOut.Instance.CallFadeOut();
|
SceneFadeInOut.Instance.CallFadeOut();
|
||||||
}
|
}
|
||||||
|
|
||||||
if (SceneFadeInOut.Instance.FadeOutFinished() && point2Done)
|
if (SceneFadeInOut.Instance && SceneFadeInOut.Instance.FadeOutFinished() && point2Done)
|
||||||
{
|
{
|
||||||
if (!point3Done)
|
if (!point3Done)
|
||||||
{
|
{
|
||||||
|
@ -139,15 +148,17 @@ namespace SHADE_Scripting.UI
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
if (SceneFadeInOut.Instance.FadeInFinished() && point3Done)
|
if (SceneFadeInOut.Instance && SceneFadeInOut.Instance.FadeInFinished() && point3Done)
|
||||||
{
|
{
|
||||||
playerCamera.GetComponent<Camera>().SetMainCamera();
|
playerCamera.GetComponent<Camera>().SetMainCamera();
|
||||||
SceneFadeInOut.Instance.CallFadeOut();
|
SceneFadeInOut.Instance.CallFadeOut();
|
||||||
}
|
}
|
||||||
|
|
||||||
if (SceneFadeInOut.Instance.FadeOutFinished() && point3Done)
|
if (SceneFadeInOut.Instance && SceneFadeInOut.Instance.FadeOutFinished() && point3Done)
|
||||||
{
|
{
|
||||||
GameManager.Instance.PreviewLevelDone = true;
|
GameManager.Instance.PreviewLevelDone = true;
|
||||||
|
if (gameplayCanvas)
|
||||||
|
gameplayCanvas.SetActive(true);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -0,0 +1,21 @@
|
||||||
|
using System;
|
||||||
|
using System.Collections.Generic;
|
||||||
|
using System.Linq;
|
||||||
|
using System.Text;
|
||||||
|
using System.Threading.Tasks;
|
||||||
|
|
||||||
|
namespace SHADE_Scripting
|
||||||
|
{
|
||||||
|
static public class Settings
|
||||||
|
{
|
||||||
|
static public float cameraSensitivity = 100.0f;
|
||||||
|
|
||||||
|
static public float cameraFOV = 90.0f;
|
||||||
|
|
||||||
|
static public float masterVolume = 100.0f;
|
||||||
|
static public float sfxVolume = 100.0f;
|
||||||
|
static public float bgmVolume = 100.0f;
|
||||||
|
|
||||||
|
|
||||||
|
}
|
||||||
|
}
|
|
@ -0,0 +1,3 @@
|
||||||
|
Name: Settings
|
||||||
|
ID: 163325256
|
||||||
|
Type: 9
|
|
@ -52,12 +52,15 @@ namespace SHADE_Scripting.UI
|
||||||
|
|
||||||
private static float EaseInSine(float value)
|
private static float EaseInSine(float value)
|
||||||
{
|
{
|
||||||
return (float)(1.0f - Math.Cos((value * Math.PI / 2.0f)));
|
|
||||||
|
return (float)(1.0f - Math.Cos((value * Math.PI / 2.0f) ));
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
private static float EaseOutSine(float value)
|
private static float EaseOutSine(float value)
|
||||||
{
|
{
|
||||||
return (float)(Math.Sin(value * Math.PI / 2.0f));
|
return (float)(Math.Sin(value * Math.PI / 2.0f) );
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
|
@ -1,4 +1,4 @@
|
||||||
using SHADE;
|
using SHADE;
|
||||||
using System;
|
using System;
|
||||||
using System.Collections.Generic;
|
using System.Collections.Generic;
|
||||||
using System.Linq;
|
using System.Linq;
|
||||||
|
@ -9,10 +9,10 @@ namespace SHADE_Scripting.UI
|
||||||
{
|
{
|
||||||
public class ButtonFX:Script
|
public class ButtonFX:Script
|
||||||
{
|
{
|
||||||
public string onHoverEnterSound = "event:/Music/player_undetected";
|
public string onHoverEnterSound = "Empty";
|
||||||
public string onHoverExitSound = "event:/Music/player_undetected";
|
public string onHoverExitSound = "Empty";
|
||||||
public string onClickSound = "event:/Music/player_undetected";
|
public string onClickSound = "event:/UI/mouse_down_element";
|
||||||
public string onReleaseSound = "event:/Music/player_undetected";
|
public string onReleaseSound = "Empty";
|
||||||
|
|
||||||
[NonSerialized]
|
[NonSerialized]
|
||||||
private AudioClipHandler onHoverEnterACHandler;
|
private AudioClipHandler onHoverEnterACHandler;
|
||||||
|
@ -40,13 +40,16 @@ namespace SHADE_Scripting.UI
|
||||||
|
|
||||||
protected override void awake()
|
protected override void awake()
|
||||||
{
|
{
|
||||||
onHoverEnterACHandler = SHADE.Audio.CreateAudioClip(onHoverEnterSound);
|
if(onHoverEnterSound != "Empty")
|
||||||
onHoverExitACHandler = SHADE.Audio.CreateAudioClip(onHoverExitSound);
|
onHoverEnterACHandler = SHADE.Audio.CreateAudioClip(onHoverEnterSound);
|
||||||
onClickACHandler = SHADE.Audio.CreateAudioClip(onClickSound);
|
|
||||||
onReleaseACHandler = SHADE.Audio.CreateAudioClip(onReleaseSound);
|
if(onHoverExitSound != "Empty")
|
||||||
|
onHoverExitACHandler = SHADE.Audio.CreateAudioClip(onHoverExitSound);
|
||||||
|
|
||||||
|
|
||||||
|
if (onClickSound != "Empty")
|
||||||
|
onClickACHandler = SHADE.Audio.CreateAudioClip(onClickSound);
|
||||||
|
if (onReleaseSound != "Empty")
|
||||||
|
onReleaseACHandler = SHADE.Audio.CreateAudioClip(onReleaseSound);
|
||||||
}
|
}
|
||||||
|
|
||||||
protected override void start()
|
protected override void start()
|
||||||
|
@ -67,7 +70,7 @@ namespace SHADE_Scripting.UI
|
||||||
|
|
||||||
ui.OnClick.RegisterAction(() =>
|
ui.OnClick.RegisterAction(() =>
|
||||||
{
|
{
|
||||||
if (onClickSound != "")
|
if (onClickSound != "Empty")
|
||||||
onClickACHandler.Play();
|
onClickACHandler.Play();
|
||||||
tweening = true;
|
tweening = true;
|
||||||
if(thread != null)
|
if(thread != null)
|
||||||
|
@ -76,8 +79,10 @@ namespace SHADE_Scripting.UI
|
||||||
|
|
||||||
ui.OnRelease.RegisterAction(() =>
|
ui.OnRelease.RegisterAction(() =>
|
||||||
{
|
{
|
||||||
if (onReleaseSound != "")
|
if (onReleaseSound != "Empty")
|
||||||
onReleaseACHandler.Play();
|
onReleaseACHandler.Play();
|
||||||
|
|
||||||
|
|
||||||
tweening = true;
|
tweening = true;
|
||||||
if (thread != null)
|
if (thread != null)
|
||||||
thread.Reset(currentScale, 1.0f);
|
thread.Reset(currentScale, 1.0f);
|
||||||
|
@ -85,8 +90,12 @@ namespace SHADE_Scripting.UI
|
||||||
|
|
||||||
ui.OnHoverEnter.RegisterAction(() =>
|
ui.OnHoverEnter.RegisterAction(() =>
|
||||||
{
|
{
|
||||||
if (onHoverEnterSound != "")
|
if (onHoverEnterSound!="Empty")
|
||||||
|
{
|
||||||
|
|
||||||
onHoverEnterACHandler.Play();
|
onHoverEnterACHandler.Play();
|
||||||
|
}
|
||||||
|
|
||||||
tweening = true;
|
tweening = true;
|
||||||
if (thread != null)
|
if (thread != null)
|
||||||
thread.Reset(currentScale, hoverScale);
|
thread.Reset(currentScale, hoverScale);
|
||||||
|
@ -94,7 +103,7 @@ namespace SHADE_Scripting.UI
|
||||||
|
|
||||||
ui.OnHoverExit.RegisterAction(() =>
|
ui.OnHoverExit.RegisterAction(() =>
|
||||||
{
|
{
|
||||||
if (onHoverExitSound != "")
|
if (onHoverExitSound != "Empty")
|
||||||
onHoverExitACHandler.Play();
|
onHoverExitACHandler.Play();
|
||||||
tweening = true;
|
tweening = true;
|
||||||
if (thread != null)
|
if (thread != null)
|
||||||
|
@ -110,7 +119,7 @@ namespace SHADE_Scripting.UI
|
||||||
return;
|
return;
|
||||||
if (tweening == true && thread != null)
|
if (tweening == true && thread != null)
|
||||||
{
|
{
|
||||||
Debug.Log("Tweening value " + thread.GetValue());
|
|
||||||
transform.LocalScale = defaultScale * thread.GetValue();
|
transform.LocalScale = defaultScale * thread.GetValue();
|
||||||
currentScale = thread.GetValue();
|
currentScale = thread.GetValue();
|
||||||
if (thread.IsCompleted())
|
if (thread.IsCompleted())
|
||||||
|
|
|
@ -22,22 +22,19 @@ public class ChangeSceneButton : Script
|
||||||
{
|
{
|
||||||
ui.OnRelease.RegisterAction(() =>
|
ui.OnRelease.RegisterAction(() =>
|
||||||
{
|
{
|
||||||
|
|
||||||
if (sceneID != 0)
|
if (sceneID != 0)
|
||||||
{
|
{
|
||||||
Audio.PlaySFXOnce2D("event:/UI/success");
|
Audio.PlaySFXOnce2D("event:/UI/success");
|
||||||
|
Audio.StopAllSounds();
|
||||||
Audio.StopAllSounds();
|
if (SceneFadeInOut.Instance != null)
|
||||||
|
|
||||||
SceneFadeInOut.Instance.CallFadeIn();
|
SceneFadeInOut.Instance.CallFadeIn();
|
||||||
clickedFlag = true;
|
clickedFlag = true;
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
Debug.LogError("Failed to register button action for ChangeSceneButton.");
|
Debug.LogError("Failed to register button action for ChangeSceneButton.");
|
||||||
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
protected override void update()
|
protected override void update()
|
||||||
|
|
|
@ -0,0 +1,317 @@
|
||||||
|
using System;
|
||||||
|
using System.Collections.Generic;
|
||||||
|
using System.Linq;
|
||||||
|
using SHADE;
|
||||||
|
|
||||||
|
|
||||||
|
public class CutsceneEnd : Script
|
||||||
|
{
|
||||||
|
public uint nextScene;
|
||||||
|
public float duration = 3.0f;
|
||||||
|
public float skipDuration = 0.1f;
|
||||||
|
private float oldDuration = 0.0f;
|
||||||
|
|
||||||
|
private Renderable pic4aRenderable;
|
||||||
|
private Renderable pic4bRenderable;
|
||||||
|
private Renderable pic4cRenderable;
|
||||||
|
private Renderable pic5aRenderable;
|
||||||
|
private Renderable pic5bRenderable;
|
||||||
|
|
||||||
|
private Transform pic4aTran;
|
||||||
|
private Transform pic4bTran;
|
||||||
|
private Transform pic4cTran;
|
||||||
|
private Transform pic5aTran;
|
||||||
|
private Transform pic5bTran;
|
||||||
|
|
||||||
|
private float alphaIn = 0.0f;
|
||||||
|
private float time = 0.0f;
|
||||||
|
private bool showPic4a = true;
|
||||||
|
private bool showPic4b = false;
|
||||||
|
private bool showPic4c = false;
|
||||||
|
private bool showPic5a = true;
|
||||||
|
private bool showPic5b = false;
|
||||||
|
|
||||||
|
private bool skip = false;
|
||||||
|
|
||||||
|
public GameObject cutscene4Points;
|
||||||
|
private List<Transform> listOfCutscene4Points;
|
||||||
|
|
||||||
|
public GameObject cutscene4Pics;
|
||||||
|
private List<Renderable> listOfCutscene4Pics;
|
||||||
|
|
||||||
|
public GameObject cutscene5Points;
|
||||||
|
private List<Transform> listOfCutscene5Points;
|
||||||
|
|
||||||
|
public GameObject cutscene5Pics;
|
||||||
|
private List<Renderable> listOfCutscene5Pics;
|
||||||
|
|
||||||
|
private TextRenderable text4;
|
||||||
|
private TextRenderable text5;
|
||||||
|
|
||||||
|
public GameObject canvas4;
|
||||||
|
public GameObject canvas5;
|
||||||
|
|
||||||
|
private bool cutscene4Done = false;
|
||||||
|
private bool cutscene5Done = false;
|
||||||
|
|
||||||
|
protected override void awake()
|
||||||
|
{
|
||||||
|
initCutscene4();
|
||||||
|
initCutscene5();
|
||||||
|
}
|
||||||
|
|
||||||
|
protected override void update()
|
||||||
|
{
|
||||||
|
Canvas4();
|
||||||
|
Canvas5();
|
||||||
|
|
||||||
|
if (Input.GetKeyUp(Input.KeyCode.Space) && !skip && (!cutscene4Done || !cutscene5Done))
|
||||||
|
{
|
||||||
|
skip = true;
|
||||||
|
oldDuration = duration;
|
||||||
|
duration = skipDuration;
|
||||||
|
}
|
||||||
|
|
||||||
|
if (Input.GetKeyUp(Input.KeyCode.Space) && cutscene4Done && canvas4.IsActiveSelf)
|
||||||
|
{
|
||||||
|
canvas4.SetActive(false);
|
||||||
|
canvas5.SetActive(true);
|
||||||
|
duration = oldDuration;
|
||||||
|
skip = false;
|
||||||
|
}
|
||||||
|
|
||||||
|
if (Input.GetKeyUp(Input.KeyCode.Space) && cutscene5Done && canvas5.IsActiveSelf)
|
||||||
|
{
|
||||||
|
SceneManager.ChangeScene(nextScene);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
private void Canvas4()
|
||||||
|
{
|
||||||
|
if (canvas4.IsActiveSelf)
|
||||||
|
{
|
||||||
|
if (showPic4a)
|
||||||
|
{
|
||||||
|
if (time < duration)
|
||||||
|
{
|
||||||
|
pic4aTran.LocalPosition = Vector3.Lerp(pic4aTran.LocalPosition, listOfCutscene4Points[0].LocalPosition, time / duration);
|
||||||
|
alphaIn = SHADE.Math.Lerp(0.0f, 1.0f, time / duration);
|
||||||
|
time += Time.DeltaTimeF;
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
pic4aTran.LocalPosition = listOfCutscene4Points[0].LocalPosition;
|
||||||
|
alphaIn = 1.0f;
|
||||||
|
}
|
||||||
|
|
||||||
|
pic4aRenderable.Material.SetProperty<float>("data.alpha", alphaIn);
|
||||||
|
if (alphaIn >= 1.0f)
|
||||||
|
{
|
||||||
|
showPic4a = false;
|
||||||
|
showPic4b = true;
|
||||||
|
time = 0;
|
||||||
|
alphaIn = 0;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
if (showPic4b)
|
||||||
|
{
|
||||||
|
if (time < duration)
|
||||||
|
{
|
||||||
|
pic4bTran.LocalPosition = Vector3.Lerp(pic4bTran.LocalPosition, listOfCutscene4Points[1].LocalPosition, time / duration);
|
||||||
|
alphaIn = SHADE.Math.Lerp(0.0f, 1.0f, time / duration);
|
||||||
|
time += Time.DeltaTimeF;
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
pic4bTran.LocalPosition = listOfCutscene4Points[1].LocalPosition;
|
||||||
|
alphaIn = 1.0f;
|
||||||
|
}
|
||||||
|
|
||||||
|
pic4bRenderable.Material.SetProperty<float>("data.alpha", alphaIn);
|
||||||
|
if (alphaIn >= 1.0f)
|
||||||
|
{
|
||||||
|
showPic4b = false;
|
||||||
|
showPic4c = true;
|
||||||
|
time = 0;
|
||||||
|
alphaIn = 0;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
if (showPic4c)
|
||||||
|
{
|
||||||
|
if (time < duration)
|
||||||
|
{
|
||||||
|
pic4cTran.LocalPosition = Vector3.Lerp(pic4cTran.LocalPosition, listOfCutscene4Points[2].LocalPosition, time / duration);
|
||||||
|
alphaIn = SHADE.Math.Lerp(0.0f, 1.0f, time / duration);
|
||||||
|
time += Time.DeltaTimeF;
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
pic4cTran.LocalPosition = listOfCutscene4Points[2].LocalPosition;
|
||||||
|
alphaIn = 1.0f;
|
||||||
|
}
|
||||||
|
|
||||||
|
pic4cRenderable.Material.SetProperty<float>("data.alpha", alphaIn);
|
||||||
|
if (alphaIn >= 1.0f)
|
||||||
|
{
|
||||||
|
showPic4c = false;
|
||||||
|
cutscene4Done = true;
|
||||||
|
text4.Enabled = true;
|
||||||
|
time = 0;
|
||||||
|
alphaIn = 0;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
private void Canvas5()
|
||||||
|
{
|
||||||
|
if (canvas5.IsActiveSelf)
|
||||||
|
{
|
||||||
|
if (showPic5a)
|
||||||
|
{
|
||||||
|
if (time < duration)
|
||||||
|
{
|
||||||
|
pic5aTran.LocalPosition = Vector3.Lerp(pic5aTran.LocalPosition, listOfCutscene5Points[0].LocalPosition, time / duration);
|
||||||
|
alphaIn = SHADE.Math.Lerp(0.0f, 1.0f, time / duration);
|
||||||
|
time += Time.DeltaTimeF;
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
pic5aTran.LocalPosition = listOfCutscene5Points[0].LocalPosition;
|
||||||
|
alphaIn = 1.0f;
|
||||||
|
}
|
||||||
|
|
||||||
|
pic5aRenderable.Material.SetProperty<float>("data.alpha", alphaIn);
|
||||||
|
if (alphaIn >= 1.0f)
|
||||||
|
{
|
||||||
|
showPic5a = false;
|
||||||
|
showPic5b = true;
|
||||||
|
time = 0;
|
||||||
|
alphaIn = 0;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
if (showPic5b)
|
||||||
|
{
|
||||||
|
if (time < duration)
|
||||||
|
{
|
||||||
|
pic5bTran.LocalPosition = Vector3.Lerp(pic5bTran.LocalPosition, listOfCutscene5Points[1].LocalPosition, time / duration);
|
||||||
|
alphaIn = SHADE.Math.Lerp(0.0f, 1.0f, time / duration);
|
||||||
|
time += Time.DeltaTimeF;
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
pic5bTran.LocalPosition = listOfCutscene5Points[1].LocalPosition;
|
||||||
|
alphaIn = 1.0f;
|
||||||
|
}
|
||||||
|
|
||||||
|
pic5bRenderable.Material.SetProperty<float>("data.alpha", alphaIn);
|
||||||
|
if (alphaIn >= 1.0f)
|
||||||
|
{
|
||||||
|
showPic5b = false;
|
||||||
|
text5.Enabled = true;
|
||||||
|
cutscene5Done = true;
|
||||||
|
time = 0;
|
||||||
|
alphaIn = 0;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
private void initCutscene4()
|
||||||
|
{
|
||||||
|
if (cutscene4Points)
|
||||||
|
listOfCutscene4Points = cutscene4Points.GetComponentsInChildren<Transform>().ToList();
|
||||||
|
else
|
||||||
|
Debug.LogError("Cutscene4Points Missing");
|
||||||
|
|
||||||
|
if (listOfCutscene4Points.Count == 0)
|
||||||
|
Debug.LogError("Cutscene4Points Empty");
|
||||||
|
|
||||||
|
listOfCutscene4Pics = cutscene4Pics.GetComponentsInChildren<Renderable>().ToList();
|
||||||
|
if (listOfCutscene4Pics.Count == 0)
|
||||||
|
Debug.LogError("Cutscene4Pics Empty");
|
||||||
|
|
||||||
|
if (listOfCutscene4Pics[0])
|
||||||
|
{
|
||||||
|
pic4aRenderable = listOfCutscene4Pics[0].GetComponent<Renderable>();
|
||||||
|
pic4aTran = listOfCutscene4Pics[0].GetComponent<Transform>();
|
||||||
|
pic4aRenderable.Material.SetProperty<float>("data.alpha", 0.0f);
|
||||||
|
}
|
||||||
|
else
|
||||||
|
Debug.LogError("SCENE 4 PIC1 MISSING");
|
||||||
|
|
||||||
|
if (listOfCutscene4Pics[1])
|
||||||
|
{
|
||||||
|
pic4bRenderable = listOfCutscene4Pics[1].GetComponent<Renderable>();
|
||||||
|
pic4bTran = listOfCutscene4Pics[1].GetComponent<Transform>();
|
||||||
|
pic4bRenderable.Material.SetProperty<float>("data.alpha", 0.0f);
|
||||||
|
}
|
||||||
|
else
|
||||||
|
Debug.LogError("SCENE 4 PIC2 MISSING");
|
||||||
|
|
||||||
|
if (listOfCutscene4Pics[2])
|
||||||
|
{
|
||||||
|
pic4cRenderable = listOfCutscene4Pics[2].GetComponent<Renderable>();
|
||||||
|
pic4cTran = listOfCutscene4Pics[2].GetComponent<Transform>();
|
||||||
|
pic4cRenderable.Material.SetProperty<float>("data.alpha", 0.0f);
|
||||||
|
}
|
||||||
|
else
|
||||||
|
Debug.LogError("SCENE 1 PIC3 MISSING");
|
||||||
|
|
||||||
|
if (canvas4)
|
||||||
|
{
|
||||||
|
text4 = canvas4.GetComponentInChildren<TextRenderable>();
|
||||||
|
text4.Enabled = false;
|
||||||
|
}
|
||||||
|
else
|
||||||
|
Debug.LogError("Canvas 4 missing");
|
||||||
|
}
|
||||||
|
|
||||||
|
private void initCutscene5()
|
||||||
|
{
|
||||||
|
if (cutscene5Points)
|
||||||
|
listOfCutscene5Points = cutscene5Points.GetComponentsInChildren<Transform>().ToList();
|
||||||
|
else
|
||||||
|
Debug.LogError("cutscene5Points Missing");
|
||||||
|
|
||||||
|
if (listOfCutscene5Points.Count == 0)
|
||||||
|
Debug.LogError("Cutscene5Points Empty");
|
||||||
|
|
||||||
|
listOfCutscene5Pics = cutscene5Pics.GetComponentsInChildren<Renderable>().ToList();
|
||||||
|
if (listOfCutscene5Pics.Count == 0)
|
||||||
|
Debug.LogError("Cutscene5Pics Empty");
|
||||||
|
|
||||||
|
if (listOfCutscene5Pics[0])
|
||||||
|
{
|
||||||
|
pic5aRenderable = listOfCutscene5Pics[0].GetComponent<Renderable>();
|
||||||
|
pic5aTran = listOfCutscene5Pics[0].GetComponent<Transform>();
|
||||||
|
pic5aRenderable.Material.SetProperty<float>("data.alpha", 0.0f);
|
||||||
|
}
|
||||||
|
else
|
||||||
|
Debug.LogError("SCENE 5 PIC1 MISSING");
|
||||||
|
|
||||||
|
if (listOfCutscene5Pics[1])
|
||||||
|
{
|
||||||
|
pic5bRenderable = listOfCutscene5Pics[1].GetComponent<Renderable>();
|
||||||
|
pic5bTran = listOfCutscene5Pics[1].GetComponent<Transform>();
|
||||||
|
pic5bRenderable.Material.SetProperty<float>("data.alpha", 0.0f);
|
||||||
|
}
|
||||||
|
else
|
||||||
|
Debug.LogError("SCENE 5 PIC2 MISSING");
|
||||||
|
|
||||||
|
if (canvas5)
|
||||||
|
{
|
||||||
|
text5 = canvas5.GetComponentInChildren<TextRenderable>();
|
||||||
|
text5.Enabled = false;
|
||||||
|
canvas5.SetActive(false);
|
||||||
|
}
|
||||||
|
else
|
||||||
|
Debug.LogError("Canvas 5 missing");
|
||||||
|
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
|
@ -0,0 +1,3 @@
|
||||||
|
Name: SC_CutSceneEnd
|
||||||
|
ID: 153706859
|
||||||
|
Type: 9
|
|
@ -1,3 +0,0 @@
|
||||||
Name: SC_Cutscene
|
|
||||||
ID: 157565851
|
|
||||||
Type: 9
|
|
|
@ -4,10 +4,12 @@ using System.Linq;
|
||||||
using SHADE;
|
using SHADE;
|
||||||
|
|
||||||
|
|
||||||
public class Cutscene : Script
|
public class CutsceneIntro : Script
|
||||||
{
|
{
|
||||||
|
|
||||||
|
public uint nextScene;
|
||||||
public float duration = 3.0f;
|
public float duration = 3.0f;
|
||||||
|
public float skipDuration = 0.1f;
|
||||||
private float oldDuration = 0.0f;
|
private float oldDuration = 0.0f;
|
||||||
|
|
||||||
private Renderable pic1aRenderable;
|
private Renderable pic1aRenderable;
|
||||||
|
@ -93,14 +95,14 @@ public class Cutscene : Script
|
||||||
Canvas2();
|
Canvas2();
|
||||||
Canvas3();
|
Canvas3();
|
||||||
|
|
||||||
if (Input.GetKeyDown(Input.KeyCode.Space) && !skip && (!cutscene1Done || !cutscene2Done || !cutscene3Done))
|
if (Input.GetKeyUp(Input.KeyCode.Space) && !skip && (!cutscene1Done || !cutscene2Done || !cutscene3Done))
|
||||||
{
|
{
|
||||||
skip = true;
|
skip = true;
|
||||||
oldDuration = duration;
|
oldDuration = duration;
|
||||||
duration = 0.1f;
|
duration = skipDuration;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (Input.GetKeyDown(Input.KeyCode.Space) && cutscene1Done && canvas1.IsActiveSelf)
|
if (Input.GetKeyUp(Input.KeyCode.Space) && cutscene1Done && canvas1.IsActiveSelf)
|
||||||
{
|
{
|
||||||
canvas1.SetActive(false);
|
canvas1.SetActive(false);
|
||||||
canvas2.SetActive(true);
|
canvas2.SetActive(true);
|
||||||
|
@ -108,7 +110,7 @@ public class Cutscene : Script
|
||||||
skip = false;
|
skip = false;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (Input.GetKeyDown(Input.KeyCode.Space) && cutscene2Done && canvas2.IsActiveSelf)
|
if (Input.GetKeyUp(Input.KeyCode.Space) && cutscene2Done && canvas2.IsActiveSelf)
|
||||||
{
|
{
|
||||||
canvas2.SetActive(false);
|
canvas2.SetActive(false);
|
||||||
canvas3.SetActive(true);
|
canvas3.SetActive(true);
|
||||||
|
@ -116,9 +118,9 @@ public class Cutscene : Script
|
||||||
skip = false;
|
skip = false;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (Input.GetKeyDown(Input.KeyCode.Space) && cutscene3Done && canvas3.IsActiveSelf)
|
if (Input.GetKeyUp(Input.KeyCode.Space) && cutscene3Done && canvas3.IsActiveSelf)
|
||||||
{
|
{
|
||||||
//change scene
|
SceneManager.ChangeScene(nextScene);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -0,0 +1,3 @@
|
||||||
|
Name: SC_CutsceneIntro
|
||||||
|
ID: 154967292
|
||||||
|
Type: 9
|
|
@ -1,6 +1,7 @@
|
||||||
using System;
|
using System;
|
||||||
using SHADE;
|
using SHADE;
|
||||||
using SHADE_Scripting.Audio;
|
using SHADE_Scripting.Audio;
|
||||||
|
using SHADE_Scripting.UI;
|
||||||
|
|
||||||
public class EndScene : Script
|
public class EndScene : Script
|
||||||
{
|
{
|
||||||
|
@ -12,6 +13,15 @@ public class EndScene : Script
|
||||||
AudioHandler.audioClipHandlers["SFXMouseDownElement"] = Audio.CreateAudioClip("event:/UI/mouse_down_element");
|
AudioHandler.audioClipHandlers["SFXMouseDownElement"] = Audio.CreateAudioClip("event:/UI/mouse_down_element");
|
||||||
AudioHandler.audioClipHandlers["SFXUISuccess"] = Audio.CreateAudioClip("event:/UI/success");
|
AudioHandler.audioClipHandlers["SFXUISuccess"] = Audio.CreateAudioClip("event:/UI/success");
|
||||||
}
|
}
|
||||||
|
|
||||||
|
protected override void start()
|
||||||
|
{
|
||||||
|
Debug.Log("EndScene::Start():");
|
||||||
|
Input.SetMouseCentering(false);
|
||||||
|
Application.IsCursorVisible = true;
|
||||||
|
SceneFadeInOut.Instance.CallFadeOut();
|
||||||
|
}
|
||||||
|
|
||||||
protected override void update()
|
protected override void update()
|
||||||
{
|
{
|
||||||
if (Input.GetKeyDown(Input.KeyCode.R))
|
if (Input.GetKeyDown(Input.KeyCode.R))
|
||||||
|
|
|
@ -1,6 +1,7 @@
|
||||||
using System;
|
using System;
|
||||||
using SHADE;
|
using SHADE;
|
||||||
using SHADE_Scripting.Audio;
|
using SHADE_Scripting.Audio;
|
||||||
|
using SHADE_Scripting.UI;
|
||||||
|
|
||||||
public class MainMenu : Script
|
public class MainMenu : Script
|
||||||
{
|
{
|
||||||
|
@ -23,40 +24,12 @@ public class MainMenu : Script
|
||||||
|
|
||||||
protected override void start()
|
protected override void start()
|
||||||
{
|
{
|
||||||
|
Input.SetMouseCentering(false);
|
||||||
|
Application.IsCursorVisible = true;
|
||||||
|
SceneFadeInOut.Instance.CallFadeOut();
|
||||||
}
|
}
|
||||||
protected override void update()
|
protected override void update()
|
||||||
{
|
{
|
||||||
/* if (Input.GetKeyDown(Input.KeyCode.K) && obj)
|
|
||||||
{
|
|
||||||
if (testRenderable.Material.GetProperty<float>("data.alpha") == 1)
|
|
||||||
{
|
|
||||||
testRenderable.Material.SetProperty<float>("data.alpha", 0);
|
|
||||||
}
|
|
||||||
else if (testRenderable.Material.GetProperty<float>("data.alpha") == 0)
|
|
||||||
{
|
|
||||||
testRenderable.Material.SetProperty<float>("data.alpha", 1);
|
|
||||||
}
|
|
||||||
}*/
|
|
||||||
|
|
||||||
if (Input.GetKeyDown(Input.KeyCode.Space))
|
|
||||||
{
|
|
||||||
//Audio.PlaySFXOnce2D("event:/UI/mouse_down_element");
|
|
||||||
AudioHandler.audioClipHandlers["SFXMouseDownElement"].Play();
|
|
||||||
}
|
|
||||||
|
|
||||||
if (Input.GetKeyUp(Input.KeyCode.Space))
|
|
||||||
{
|
|
||||||
//Audio.PlaySFXOnce2D("event:/UI/success");
|
|
||||||
AudioHandler.audioClipHandlers["SFXUISuccess"].Play();
|
|
||||||
SceneManager.ChangeScene(sceneID);
|
|
||||||
Audio.StopAllSounds();
|
|
||||||
}
|
|
||||||
|
|
||||||
if (Input.GetKeyDown(Input.KeyCode.Escape))
|
|
||||||
{
|
|
||||||
Audio.StopAllSounds();
|
|
||||||
Application.Quit();
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -11,6 +11,7 @@ namespace SHADE_Scripting.UI
|
||||||
{
|
{
|
||||||
[NonSerialized]
|
[NonSerialized]
|
||||||
private TweenThread sizeThread;
|
private TweenThread sizeThread;
|
||||||
|
private TweenThread sizeInvertThread;
|
||||||
private TweenThread alphaThread;
|
private TweenThread alphaThread;
|
||||||
|
|
||||||
|
|
||||||
|
@ -20,6 +21,7 @@ namespace SHADE_Scripting.UI
|
||||||
|
|
||||||
|
|
||||||
private bool showMultiplier = false;
|
private bool showMultiplier = false;
|
||||||
|
const float sizeUpDuration = 0.1f;
|
||||||
|
|
||||||
[NonSerialized]
|
[NonSerialized]
|
||||||
private Vector3 defaultScale;
|
private Vector3 defaultScale;
|
||||||
|
@ -27,6 +29,7 @@ namespace SHADE_Scripting.UI
|
||||||
protected override void start()
|
protected override void start()
|
||||||
{
|
{
|
||||||
sizeThread = TweenManager.CreateTweenThread(0.0f, maxSize, minSize, EASING_METHOD.EASE_IN_SINE);
|
sizeThread = TweenManager.CreateTweenThread(0.0f, maxSize, minSize, EASING_METHOD.EASE_IN_SINE);
|
||||||
|
sizeInvertThread = TweenManager.CreateTweenThread(sizeUpDuration, minSize, maxSize, EASING_METHOD.EASE_IN_SINE);
|
||||||
alphaThread = TweenManager.CreateTweenThread(0.0f, 1.0f, minAlpha, EASING_METHOD.EASE_OUT_SINE);
|
alphaThread = TweenManager.CreateTweenThread(0.0f, 1.0f, minAlpha, EASING_METHOD.EASE_OUT_SINE);
|
||||||
Transform transform = GetComponent<Transform>();
|
Transform transform = GetComponent<Transform>();
|
||||||
if (transform != null)
|
if (transform != null)
|
||||||
|
@ -43,8 +46,29 @@ namespace SHADE_Scripting.UI
|
||||||
protected override void update()
|
protected override void update()
|
||||||
{
|
{
|
||||||
Transform transform = GetComponent<Transform>();
|
Transform transform = GetComponent<Transform>();
|
||||||
|
|
||||||
|
|
||||||
if (transform != null && showMultiplier == true)
|
if (transform != null && showMultiplier == true)
|
||||||
{
|
{
|
||||||
|
if(!sizeInvertThread.IsCompleted())
|
||||||
|
{
|
||||||
|
transform.LocalScale = defaultScale * sizeInvertThread.GetValue();
|
||||||
|
|
||||||
|
Renderable rend = GetComponentInChildren<Renderable>();
|
||||||
|
if(rend)
|
||||||
|
{
|
||||||
|
rend.Material.SetProperty<float>("data.alpha", 1.0f);
|
||||||
|
}
|
||||||
|
|
||||||
|
TextRenderable text = GetComponent<TextRenderable>();
|
||||||
|
if (text)
|
||||||
|
{
|
||||||
|
Color clr = text.TextColor;
|
||||||
|
text.TextColor = new Color(clr.r, clr.g, clr.b, 1.0f);
|
||||||
|
}
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
if(sizeThread.IsCompleted())
|
if(sizeThread.IsCompleted())
|
||||||
{
|
{
|
||||||
transform.LocalScale = Vector3.Zero;
|
transform.LocalScale = Vector3.Zero;
|
||||||
|
@ -53,7 +77,18 @@ namespace SHADE_Scripting.UI
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
transform.LocalScale = defaultScale * sizeThread.GetValue();
|
transform.LocalScale = defaultScale * sizeThread.GetValue();
|
||||||
GetComponentInChildren<Renderable>().Material.SetProperty<float>("data.alpha",alphaThread.GetValue());
|
|
||||||
|
Renderable rend = GetComponentInChildren<Renderable>();
|
||||||
|
if (rend)
|
||||||
|
{
|
||||||
|
rend.Material.SetProperty<float>("data.alpha", alphaThread.GetValue());
|
||||||
|
}
|
||||||
|
TextRenderable text = GetComponent<TextRenderable>();
|
||||||
|
if(text)
|
||||||
|
{
|
||||||
|
Color clr = text.TextColor;
|
||||||
|
text.TextColor = new Color(clr.r,clr.g,clr.b,alphaThread.GetValue() * 1.3f);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -62,9 +97,10 @@ namespace SHADE_Scripting.UI
|
||||||
public void ShowMultiplier(int multiplier, float duration)
|
public void ShowMultiplier(int multiplier, float duration)
|
||||||
{
|
{
|
||||||
GetComponent<TextRenderable>().Text = $"X {multiplier}";
|
GetComponent<TextRenderable>().Text = $"X {multiplier}";
|
||||||
sizeThread.duration = duration;
|
sizeThread.duration = duration + sizeUpDuration;
|
||||||
alphaThread.duration = duration;
|
alphaThread.duration = duration + sizeUpDuration;
|
||||||
|
|
||||||
|
sizeInvertThread.Reset();
|
||||||
sizeThread.Reset();
|
sizeThread.Reset();
|
||||||
alphaThread.Reset();
|
alphaThread.Reset();
|
||||||
showMultiplier = true;
|
showMultiplier = true;
|
||||||
|
|
|
@ -0,0 +1,95 @@
|
||||||
|
using SHADE;
|
||||||
|
using System;
|
||||||
|
using System.Collections.Generic;
|
||||||
|
using System.Linq;
|
||||||
|
using System.Text;
|
||||||
|
using System.Threading.Tasks;
|
||||||
|
|
||||||
|
namespace SHADE_Scripting.UI
|
||||||
|
{
|
||||||
|
public class Options:Script
|
||||||
|
{
|
||||||
|
public GameObject masterVolSlider;
|
||||||
|
public GameObject sfxVolSlider;
|
||||||
|
public GameObject bgmVolSlider;
|
||||||
|
public GameObject fovSlider;
|
||||||
|
public GameObject sensitivitySlider;
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
protected override void awake()
|
||||||
|
{
|
||||||
|
Slider mv = masterVolSlider.GetComponent<Slider>();
|
||||||
|
Slider sfx = sfxVolSlider.GetComponent<Slider>();
|
||||||
|
Slider bgm = bgmVolSlider.GetComponent<Slider>();
|
||||||
|
Slider fov = fovSlider.GetComponent<Slider>();
|
||||||
|
Slider sens = sensitivitySlider.GetComponent<Slider>();
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
if (mv != null)
|
||||||
|
{
|
||||||
|
mv.ScaledValue = Settings.masterVolume;
|
||||||
|
|
||||||
|
}
|
||||||
|
if (sfx != null)
|
||||||
|
{
|
||||||
|
sfx.ScaledValue = Settings.sfxVolume;
|
||||||
|
|
||||||
|
}
|
||||||
|
if (bgm != null)
|
||||||
|
{
|
||||||
|
bgm.ScaledValue = Settings.bgmVolume;
|
||||||
|
|
||||||
|
}
|
||||||
|
if (fov != null)
|
||||||
|
{
|
||||||
|
fov.ScaledValue = Settings.cameraFOV;
|
||||||
|
|
||||||
|
}
|
||||||
|
if (sens != null)
|
||||||
|
{
|
||||||
|
sens.ScaledValue = Settings.cameraSensitivity;
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
protected override void update()
|
||||||
|
{
|
||||||
|
Slider mv = masterVolSlider.GetComponent<Slider>();
|
||||||
|
Slider sfx = sfxVolSlider.GetComponent<Slider>();
|
||||||
|
Slider bgm = bgmVolSlider.GetComponent<Slider>();
|
||||||
|
Slider fov = fovSlider.GetComponent<Slider>();
|
||||||
|
Slider sens = sensitivitySlider.GetComponent<Slider>();
|
||||||
|
|
||||||
|
if(mv != null)
|
||||||
|
{
|
||||||
|
Settings.masterVolume = mv.ScaledValue;
|
||||||
|
}
|
||||||
|
if (sfx != null)
|
||||||
|
{
|
||||||
|
Settings.sfxVolume = sfx.ScaledValue;
|
||||||
|
}
|
||||||
|
if (bgm != null)
|
||||||
|
{
|
||||||
|
Settings.bgmVolume = bgm.ScaledValue;
|
||||||
|
}
|
||||||
|
if (fov != null)
|
||||||
|
{
|
||||||
|
Settings.cameraFOV = fov.ScaledValue;
|
||||||
|
}
|
||||||
|
if (sens != null)
|
||||||
|
{
|
||||||
|
Settings.cameraSensitivity = sens.ScaledValue;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
}
|
||||||
|
}
|
|
@ -0,0 +1,3 @@
|
||||||
|
Name: SC_Options
|
||||||
|
ID: 162565004
|
||||||
|
Type: 9
|
|
@ -13,7 +13,8 @@ public class PauseMenu : Script
|
||||||
|
|
||||||
protected override void awake()
|
protected override void awake()
|
||||||
{
|
{
|
||||||
GameManager.Instance.GamePause = false;
|
if (GameManager.Instance != null)
|
||||||
|
GameManager.Instance.GamePause = false;
|
||||||
|
|
||||||
if (canvas)
|
if (canvas)
|
||||||
{
|
{
|
||||||
|
@ -36,16 +37,19 @@ public class PauseMenu : Script
|
||||||
UIElement resume = resumeBtn.GetComponent<UIElement>();
|
UIElement resume = resumeBtn.GetComponent<UIElement>();
|
||||||
if (resume != null)
|
if (resume != null)
|
||||||
{
|
{
|
||||||
resume.OnClick.RegisterAction(() =>
|
resume.OnRelease.RegisterAction(() =>
|
||||||
{
|
{
|
||||||
if (GameManager.Instance.GamePause)
|
if (GameManager.Instance.GamePause)
|
||||||
{
|
{
|
||||||
GameManager.Instance.GamePause = false;
|
GameManager.Instance.GamePause = false;
|
||||||
|
Input.SetMouseCentering(true);
|
||||||
|
Application.IsCursorVisible = false;
|
||||||
AudioHandler.PauseAllSounds(false);
|
AudioHandler.PauseAllSounds(false);
|
||||||
if (gamePauseText)
|
if (gamePauseText)
|
||||||
gamePauseText.Enabled = false;
|
gamePauseText.Enabled = false;
|
||||||
if (canvas)
|
if (canvas)
|
||||||
canvas.SetActive(false);
|
canvas.SetActive(false);
|
||||||
|
Application.FixDeltaTime = Time.DefaultFixDeltaTime;
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
@ -58,10 +62,13 @@ public class PauseMenu : Script
|
||||||
UIElement retry = retryBtn.GetComponent<UIElement>();
|
UIElement retry = retryBtn.GetComponent<UIElement>();
|
||||||
if (retry != null)
|
if (retry != null)
|
||||||
{
|
{
|
||||||
retry.OnClick.RegisterAction(() =>
|
retry.OnRelease.RegisterAction(() =>
|
||||||
{
|
{
|
||||||
Audio.StopAllSounds();
|
Audio.StopAllSounds();
|
||||||
SceneManager.RestartScene();
|
SceneManager.RestartScene();
|
||||||
|
GameManager.Instance.GamePause = false;
|
||||||
|
GameManager.Instance.stealFoodPopUpDone = false;
|
||||||
|
GameManager.Instance.PreviewLevelDone = false;
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
|
@ -72,7 +79,7 @@ public class PauseMenu : Script
|
||||||
UIElement quit = quitBtn.GetComponent<UIElement>();
|
UIElement quit = quitBtn.GetComponent<UIElement>();
|
||||||
if (quit != null)
|
if (quit != null)
|
||||||
{
|
{
|
||||||
quit.OnClick.RegisterAction(() =>
|
quit.OnRelease.RegisterAction(() =>
|
||||||
{
|
{
|
||||||
Audio.StopAllSounds();
|
Audio.StopAllSounds();
|
||||||
//go to main menu
|
//go to main menu
|
||||||
|
@ -88,14 +95,17 @@ public class PauseMenu : Script
|
||||||
protected override void update()
|
protected override void update()
|
||||||
{
|
{
|
||||||
|
|
||||||
if (Input.GetKeyDown(Input.KeyCode.Escape) && !GameManager.Instance.GamePause && GameManager.Instance.stealFoodPopUpDone)
|
if (Input.GetKeyUp(Input.KeyCode.Escape) && !GameManager.Instance.GamePause && GameManager.Instance.stealFoodPopUpDone)
|
||||||
{
|
{
|
||||||
GameManager.Instance.GamePause = true;
|
GameManager.Instance.GamePause = true;
|
||||||
|
Input.SetMouseCentering(false);
|
||||||
|
Application.IsCursorVisible = true;
|
||||||
AudioHandler.PauseAllSounds(true);
|
AudioHandler.PauseAllSounds(true);
|
||||||
if (gamePauseText)
|
if (gamePauseText)
|
||||||
gamePauseText.Enabled = true;
|
gamePauseText.Enabled = true;
|
||||||
if (canvas)
|
if (canvas)
|
||||||
canvas.SetActive(true);
|
canvas.SetActive(true);
|
||||||
|
Application.FixDeltaTime = 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
|
@ -43,7 +43,6 @@ namespace SHADE_Scripting.UI
|
||||||
|
|
||||||
protected override void start()
|
protected override void start()
|
||||||
{
|
{
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
protected override void update()
|
protected override void update()
|
||||||
|
@ -56,7 +55,6 @@ namespace SHADE_Scripting.UI
|
||||||
if (fadeInTime == 0.0f)
|
if (fadeInTime == 0.0f)
|
||||||
{
|
{
|
||||||
alphaValue = 1.0f;
|
alphaValue = 1.0f;
|
||||||
|
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
|
@ -64,7 +62,8 @@ namespace SHADE_Scripting.UI
|
||||||
}
|
}
|
||||||
if (alphaValue >= 1.0f)
|
if (alphaValue >= 1.0f)
|
||||||
{
|
{
|
||||||
alphaValue = 1.0f;
|
alphaValue = 1.0f;
|
||||||
|
//GameObject.Parent.SetActive(false);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -82,8 +81,10 @@ namespace SHADE_Scripting.UI
|
||||||
}
|
}
|
||||||
if (alphaValue <= 0.0f)
|
if (alphaValue <= 0.0f)
|
||||||
{
|
{
|
||||||
alphaValue = 0.0f;
|
alphaValue = 0.0f;
|
||||||
GameObject.Parent.SetActive(false);
|
//This line is to be added so that (because the fade in and out item is usually the front-most UI element)
|
||||||
|
//the fade in and out UI element does not block functionality of other UI elements
|
||||||
|
GameObject.Parent.SetActive(false);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -0,0 +1,49 @@
|
||||||
|
using System;
|
||||||
|
using SHADE;
|
||||||
|
using System.Collections.Generic;
|
||||||
|
using System.Linq;
|
||||||
|
using System.Text;
|
||||||
|
using System.Threading.Tasks;
|
||||||
|
|
||||||
|
namespace SHADE_Scripting.UI
|
||||||
|
{
|
||||||
|
public class ScrollingCredits: Script
|
||||||
|
{
|
||||||
|
|
||||||
|
public float endY = 4000.0f;
|
||||||
|
public float duration = 30.0f;
|
||||||
|
|
||||||
|
|
||||||
|
[NonSerialized]
|
||||||
|
TweenThread thread;
|
||||||
|
|
||||||
|
protected override void awake()
|
||||||
|
{
|
||||||
|
base.awake();
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
protected override void start()
|
||||||
|
{
|
||||||
|
base.start();
|
||||||
|
|
||||||
|
Transform transform = GetComponent<Transform>();
|
||||||
|
if(transform != null)
|
||||||
|
{
|
||||||
|
thread = TweenManager.CreateTweenThread(duration, transform.LocalPosition.y, endY, EASING_METHOD.EASE_IN_SINE);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
protected override void update()
|
||||||
|
{
|
||||||
|
base.update();
|
||||||
|
|
||||||
|
Transform transform = GetComponent<Transform>();
|
||||||
|
|
||||||
|
if(thread != null && transform != null)
|
||||||
|
{
|
||||||
|
transform.LocalPosition = new Vector3( transform.LocalPosition.x ,thread.GetValue() , transform.LocalPosition.z);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
|
@ -0,0 +1,3 @@
|
||||||
|
Name: SC_ScrollingCredits
|
||||||
|
ID: 159139676
|
||||||
|
Type: 9
|
|
@ -11,8 +11,6 @@ namespace SHADE_Scripting.UI
|
||||||
{
|
{
|
||||||
public GameObject sliderObj;
|
public GameObject sliderObj;
|
||||||
|
|
||||||
public int minValue = 0;
|
|
||||||
public int maxValue = 0;
|
|
||||||
|
|
||||||
protected override void start()
|
protected override void start()
|
||||||
{
|
{
|
||||||
|
@ -22,7 +20,7 @@ namespace SHADE_Scripting.UI
|
||||||
if (slider != null && text != null)
|
if (slider != null && text != null)
|
||||||
{
|
{
|
||||||
|
|
||||||
text.Text = ((int)(slider.GetValue() * (maxValue - minValue) + minValue)).ToString();
|
text.Text = ((int)(slider.ScaledValue)).ToString();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
protected override void update()
|
protected override void update()
|
||||||
|
@ -32,7 +30,7 @@ namespace SHADE_Scripting.UI
|
||||||
if(slider != null && text != null)
|
if(slider != null && text != null)
|
||||||
{
|
{
|
||||||
|
|
||||||
text.Text = ((int)(slider.GetValue() * (maxValue - minValue) + minValue)).ToString();
|
text.Text = ((int)(slider.ScaledValue)).ToString();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -78,8 +78,12 @@ float CalcShadowValue (sampler2D shadowMap, vec4 worldSpaceFragPos, mat4 lightPV
|
||||||
float pMax = LinStep (variance / (variance + (d * d)), 0.9f, 1.0f);
|
float pMax = LinStep (variance / (variance + (d * d)), 0.9f, 1.0f);
|
||||||
return min (max (p, pMax), 1.0f);
|
return min (max (p, pMax), 1.0f);
|
||||||
}
|
}
|
||||||
|
else if (fragPosLightPOV.z > 1.0f)
|
||||||
|
{
|
||||||
|
return 0.0f;
|
||||||
|
}
|
||||||
else
|
else
|
||||||
return 1.0f;
|
return 0.3f;
|
||||||
// return step (fragPosLightPOV.z, );
|
// return step (fragPosLightPOV.z, );
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -125,7 +129,7 @@ void main()
|
||||||
vec3 dLightNormalized = normalize (DirLightData.dLightData[i].direction);
|
vec3 dLightNormalized = normalize (DirLightData.dLightData[i].direction);
|
||||||
|
|
||||||
// Get diffuse strength
|
// Get diffuse strength
|
||||||
float diffuseStrength = max (0, dot (dLightNormalized, normalView));
|
float diffuseStrength = max (0, dot (-dLightNormalized, normalView));
|
||||||
|
|
||||||
// Calculate the fragment color
|
// Calculate the fragment color
|
||||||
fragColor += DirLightData.dLightData[i].diffuseColor.rgb * diffuseStrength.rrr * pixelDiffuse;
|
fragColor += DirLightData.dLightData[i].diffuseColor.rgb * diffuseStrength.rrr * pixelDiffuse;
|
||||||
|
|
Binary file not shown.
|
@ -78,8 +78,14 @@ void main()
|
||||||
outEntityID = In2.eid;
|
outEntityID = In2.eid;
|
||||||
lightLayerIndices = In2.lightLayerIndex;
|
lightLayerIndices = In2.lightLayerIndex;
|
||||||
|
|
||||||
float vpHeight = float (In2.screenSpacePos.y) - MatProp.data[In2.materialIndex].highlightPosition;
|
// float vpHeight = float (In2.screenSpacePos.y) - MatProp.data[In2.materialIndex].highlightPosition;
|
||||||
vpHeight = float (int (vpHeight) % genericDataBuffer.data.viewportHeight);
|
// bring the frame of reference to the object's screen space pos
|
||||||
|
int scale = 470;
|
||||||
|
float vpHeight = float (In2.screenSpacePos.y);
|
||||||
|
float relativePos = float(int (-MatProp.data[In2.materialIndex].highlightPosition) % scale) - float (scale / 2);
|
||||||
|
vpHeight += relativePos;
|
||||||
|
|
||||||
|
// vpHeight = float (int (vpHeight) % genericDataBuffer.data.viewportHeight);
|
||||||
float scanlineScale = MatProp.data[In2.materialIndex].thickness * (1.0f - In2.screenSpacePos.z) * 100.0f;
|
float scanlineScale = MatProp.data[In2.materialIndex].thickness * (1.0f - In2.screenSpacePos.z) * 100.0f;
|
||||||
|
|
||||||
float lowerLimit = vpHeight - scanlineScale;
|
float lowerLimit = vpHeight - scanlineScale;
|
||||||
|
|
Binary file not shown.
|
@ -3,7 +3,7 @@
|
||||||
#extension GL_ARB_shading_language_420pack : enable
|
#extension GL_ARB_shading_language_420pack : enable
|
||||||
#extension GL_EXT_nonuniform_qualifier : require
|
#extension GL_EXT_nonuniform_qualifier : require
|
||||||
|
|
||||||
layout (input_attachment_index = 0, set = 3, binding = 0) uniform subpassInput sceneTexture;
|
layout (input_attachment_index = 0, set = 0, binding = 0) uniform subpassInput sceneTexture;
|
||||||
|
|
||||||
|
|
||||||
layout(location = 0) out vec4 fragColor;
|
layout(location = 0) out vec4 fragColor;
|
||||||
|
|
Binary file not shown.
Binary file not shown.
Binary file not shown.
|
@ -0,0 +1,3 @@
|
||||||
|
Name: TX_cutscene_04a
|
||||||
|
ID: 51238312
|
||||||
|
Type: 3
|
Binary file not shown.
Binary file not shown.
|
@ -0,0 +1,3 @@
|
||||||
|
Name: TX_cutscene_04b
|
||||||
|
ID: 61471971
|
||||||
|
Type: 3
|
Binary file not shown.
Binary file not shown.
|
@ -0,0 +1,3 @@
|
||||||
|
Name: TX_cutscene_04c
|
||||||
|
ID: 58217538
|
||||||
|
Type: 3
|
Binary file not shown.
Binary file not shown.
|
@ -0,0 +1,3 @@
|
||||||
|
Name: TX_cutscene_05a
|
||||||
|
ID: 61980534
|
||||||
|
Type: 3
|
Binary file not shown.
Binary file not shown.
|
@ -0,0 +1,3 @@
|
||||||
|
Name: TX_cutscene_05b
|
||||||
|
ID: 51561286
|
||||||
|
Type: 3
|
Binary file not shown.
Binary file not shown.
|
@ -0,0 +1,3 @@
|
||||||
|
Name: MainMenuBG
|
||||||
|
ID: 58181851
|
||||||
|
Type: 3
|
|
@ -201,8 +201,6 @@ namespace Sandbox
|
||||||
|
|
||||||
#ifdef SHEDITOR
|
#ifdef SHEDITOR
|
||||||
if(editor->editorState == SHEditor::State::PLAY)
|
if(editor->editorState == SHEditor::State::PLAY)
|
||||||
#else
|
|
||||||
window.ClipMouseCursor();
|
|
||||||
#endif
|
#endif
|
||||||
SHSceneManager::SceneUpdate(0.016f);
|
SHSceneManager::SceneUpdate(0.016f);
|
||||||
#ifdef SHEDITOR
|
#ifdef SHEDITOR
|
||||||
|
|
|
@ -54,12 +54,41 @@ namespace SHADE
|
||||||
|
|
||||||
denseListener = &SHComponentManager::GetDense<SHAudioListenerComponent>();
|
denseListener = &SHComponentManager::GetDense<SHAudioListenerComponent>();
|
||||||
fmodStudioSystem->getCoreSystem(&fmodSystem);
|
fmodStudioSystem->getCoreSystem(&fmodSystem);
|
||||||
fmodSystem->setSoftwareFormat(0, FMOD_SPEAKERMODE_5POINT1, 0);
|
|
||||||
result = fmodStudioSystem->initialize(AUDIO_SYS_MAX_CHANNELS, AUDIO_SYS_MAX_CHANNELS, FMOD_STUDIO_INIT_NORMAL | FMOD_INIT_NORMAL, extraDriverData);
|
|
||||||
|
|
||||||
ErrorCheck();
|
|
||||||
|
|
||||||
fmodSystem->setSoftwareFormat(0, speakerMode, 0);
|
result = fmodSystem->setSoftwareFormat(0, FMOD_SPEAKERMODE_5POINT1, 0);
|
||||||
|
ErrorCheck();
|
||||||
|
result = fmodSystem->setOutput(FMOD_OUTPUTTYPE_AUDIO3D);
|
||||||
|
if(result != FMOD_OK)
|
||||||
|
{
|
||||||
|
result = fmodSystem->setOutput(FMOD_OUTPUTTYPE_WINSONIC);
|
||||||
|
if (result == FMOD_OK)
|
||||||
|
{
|
||||||
|
result = fmodSystem->setSoftwareFormat(0, FMOD_SPEAKERMODE_7POINT1POINT4, 0);
|
||||||
|
ErrorCheck();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
int numDrivers{};
|
||||||
|
result = fmodSystem->getNumDrivers(&numDrivers);
|
||||||
|
if(numDrivers == 0)
|
||||||
|
{
|
||||||
|
fmodSystem->setDSPBufferSize(512, 4);
|
||||||
|
fmodSystem->setOutput(FMOD_OUTPUTTYPE_AUTODETECT);
|
||||||
|
}
|
||||||
|
FMOD_OUTPUTTYPE outputType{};
|
||||||
|
fmodSystem->getSoftwareFormat(0, &speakerMode, 0);
|
||||||
|
fmodSystem->getOutput(&outputType);
|
||||||
|
|
||||||
|
FMOD_STUDIO_INITFLAGS studioInitFlags = FMOD_STUDIO_INIT_NORMAL;
|
||||||
|
FMOD_INITFLAGS coreInitFlags = FMOD_INIT_NORMAL | FMOD_INIT_3D_RIGHTHANDED;
|
||||||
|
#ifdef _DEBUG
|
||||||
|
studioInitFlags |= FMOD_STUDIO_INIT_LIVEUPDATE;
|
||||||
|
coreInitFlags |= FMOD_INIT_PROFILE_ENABLE;
|
||||||
|
#endif
|
||||||
|
|
||||||
|
result = fmodStudioSystem->initialize(AUDIO_SYS_MAX_CHANNELS, studioInitFlags, coreInitFlags, extraDriverData);
|
||||||
|
|
||||||
|
ErrorCheck();
|
||||||
|
|
||||||
result = fmodSystem->createChannelGroup("SFX", &sfxChannelGroup);
|
result = fmodSystem->createChannelGroup("SFX", &sfxChannelGroup);
|
||||||
ErrorCheck();
|
ErrorCheck();
|
||||||
|
@ -104,6 +133,10 @@ namespace SHADE
|
||||||
const ReceiverPtr ON_PAUSE_RECEIVER_PTR = std::dynamic_pointer_cast<SHEventReceiver>(ON_PAUSE_RECEIVER);
|
const ReceiverPtr ON_PAUSE_RECEIVER_PTR = std::dynamic_pointer_cast<SHEventReceiver>(ON_PAUSE_RECEIVER);
|
||||||
SHEventManager::SubscribeTo(SH_EDITOR_ON_PAUSE_EVENT, ON_PAUSE_RECEIVER_PTR);
|
SHEventManager::SubscribeTo(SH_EDITOR_ON_PAUSE_EVENT, ON_PAUSE_RECEIVER_PTR);
|
||||||
|
|
||||||
|
const std::shared_ptr ON_SCENE_EXIT_RECEIVER{ std::make_shared<SHEventReceiverSpec<SHAudioSystem>>(this, &SHAudioSystem::onSceneExit) };
|
||||||
|
const ReceiverPtr ON_SCENE_EXIT_RECEIVER_PTR = std::dynamic_pointer_cast<SHEventReceiver>(ON_SCENE_EXIT_RECEIVER);
|
||||||
|
SHEventManager::SubscribeTo(SH_SCENE_EXIT_POST, ON_SCENE_EXIT_RECEIVER_PTR);
|
||||||
|
|
||||||
#endif
|
#endif
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -145,7 +178,9 @@ namespace SHADE
|
||||||
FMOD_3D_ATTRIBUTES attribs{ { 0 } };
|
FMOD_3D_ATTRIBUTES attribs{ { 0 } };
|
||||||
SHVec3 pos = camComponent->GetPosition();
|
SHVec3 pos = camComponent->GetPosition();
|
||||||
SHVec3 forward, up, right;
|
SHVec3 forward, up, right;
|
||||||
|
|
||||||
camSystem->GetCameraAxis(*camComponent, forward, right, up);
|
camSystem->GetCameraAxis(*camComponent, forward, right, up);
|
||||||
|
up *= -1.0f;
|
||||||
attribs.position = { pos.x, pos.y, pos.z };
|
attribs.position = { pos.x, pos.y, pos.z };
|
||||||
attribs.forward = { forward.x, forward.y, forward.z };
|
attribs.forward = { forward.x, forward.y, forward.z };
|
||||||
attribs.up = { up.x, up.y, up.z };
|
attribs.up = { up.x, up.y, up.z };
|
||||||
|
@ -156,7 +191,7 @@ namespace SHADE
|
||||||
auto [begin, end] = audioClipLibrary.GetDenseAccess();
|
auto [begin, end] = audioClipLibrary.GetDenseAccess();
|
||||||
for (auto& it = begin; it != end; ++it)
|
for (auto& it = begin; it != end; ++it)
|
||||||
{
|
{
|
||||||
if(it->instance && (it->transformRef != MAX_EID))
|
if(it->instance && it->instance->isValid() && (it->transformRef != MAX_EID))
|
||||||
{
|
{
|
||||||
if(SHTransformComponent* transformComponent = SHComponentManager::GetComponent_s<SHTransformComponent>(it->transformRef))
|
if(SHTransformComponent* transformComponent = SHComponentManager::GetComponent_s<SHTransformComponent>(it->transformRef))
|
||||||
{
|
{
|
||||||
|
@ -165,11 +200,13 @@ namespace SHADE
|
||||||
SHQuaternion worldOrientation = transformComponent->GetWorldOrientation();
|
SHQuaternion worldOrientation = transformComponent->GetWorldOrientation();
|
||||||
SHVec3 orientatedFoward = (worldOrientation * SHQuaternion::FromEuler(SHVec3::Forward) * SHQuaternion::Conjugate(worldOrientation)).ToEuler();
|
SHVec3 orientatedFoward = (worldOrientation * SHQuaternion::FromEuler(SHVec3::Forward) * SHQuaternion::Conjugate(worldOrientation)).ToEuler();
|
||||||
SHVec3 orientatedUp = (worldOrientation * SHQuaternion::FromEuler(SHVec3::Up) * SHQuaternion::Conjugate(worldOrientation)).ToEuler();
|
SHVec3 orientatedUp = (worldOrientation * SHQuaternion::FromEuler(SHVec3::Up) * SHQuaternion::Conjugate(worldOrientation)).ToEuler();
|
||||||
|
orientatedFoward = SHVec3::Normalise(orientatedFoward);
|
||||||
|
orientatedUp = SHVec3::Normalise(orientatedUp);
|
||||||
attribs.position = {pos.x, pos.y, pos.z};
|
attribs.position = {pos.x, pos.y, pos.z};
|
||||||
attribs.forward = {orientatedFoward.x, orientatedFoward.y, orientatedFoward.z};
|
attribs.forward = {orientatedFoward.x, orientatedFoward.y, orientatedFoward.z};
|
||||||
attribs.up = {orientatedUp.x, orientatedUp.y, orientatedUp.z};
|
attribs.up = {orientatedUp.x, orientatedUp.y, orientatedUp.z};
|
||||||
it->instance->set3DAttributes(&attribs);
|
result = it->instance->set3DAttributes(&attribs);
|
||||||
|
ErrorCheck();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -656,6 +693,15 @@ namespace SHADE
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
void SHAudioSystem::SetParameterWithLabel(const char* path, const char* label)
|
||||||
|
{
|
||||||
|
result = fmodStudioSystem->setParameterByNameWithLabel(path, label);
|
||||||
|
if (result != FMOD_OK)
|
||||||
|
{
|
||||||
|
ErrorCheck();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
void AudioClip::Play()
|
void AudioClip::Play()
|
||||||
{
|
{
|
||||||
if(!instance)
|
if(!instance)
|
||||||
|
@ -734,12 +780,16 @@ namespace SHADE
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
//void AudioClip::SetParameterLabel(const char* paramName, const char* label)
|
void AudioClip::SetParameterWithLabel(const char* paramName, const char* label)
|
||||||
//{
|
{
|
||||||
// if (!instance)
|
if (!instance)
|
||||||
// return;
|
return;
|
||||||
// instance->setParameterByNameWithLabel(paramName, label);
|
FMOD_RESULT result = instance->setParameterByNameWithLabel(paramName, label);
|
||||||
//}
|
if (result != FMOD_OK)
|
||||||
|
{
|
||||||
|
SHLOG_ERROR("Audio system error: {}", FMOD_ErrorString(result))
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
float AudioClip::GetParameterValue(const char* paramName)
|
float AudioClip::GetParameterValue(const char* paramName)
|
||||||
{
|
{
|
||||||
|
@ -783,6 +833,18 @@ namespace SHADE
|
||||||
|
|
||||||
return onStopEvent->handle;
|
return onStopEvent->handle;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
SHEventHandle SHAudioSystem::onSceneExit(SHEventPtr onSceneExitEvent)
|
||||||
|
{
|
||||||
|
auto [begin, end] = audioClipLibrary.GetDenseAccess();
|
||||||
|
for (auto& it = begin; it != end; ++it)
|
||||||
|
{
|
||||||
|
it->instance->release();
|
||||||
|
}
|
||||||
|
|
||||||
|
return onSceneExitEvent->handle;
|
||||||
|
}
|
||||||
|
|
||||||
SHEventHandle SHAudioSystem::onPlay(SHEventPtr onStopEvent)
|
SHEventHandle SHAudioSystem::onPlay(SHEventPtr onStopEvent)
|
||||||
{
|
{
|
||||||
if(GetPaused())
|
if(GetPaused())
|
||||||
|
|
|
@ -33,7 +33,7 @@ namespace SHADE
|
||||||
void SetPause(bool pause);
|
void SetPause(bool pause);
|
||||||
bool IsPaused();
|
bool IsPaused();
|
||||||
void SetParameter(const char* paramName, float value);
|
void SetParameter(const char* paramName, float value);
|
||||||
//void SetParameterLabel(const char* paramName, const char* label);
|
void SetParameterWithLabel(const char* paramName, const char* label);
|
||||||
float GetParameterValue(const char* paramName);
|
float GetParameterValue(const char* paramName);
|
||||||
float GetVolume();
|
float GetVolume();
|
||||||
void SetVolume(float volume);
|
void SetVolume(float volume);
|
||||||
|
@ -94,6 +94,7 @@ namespace SHADE
|
||||||
|
|
||||||
float GetParameterValue(const char* path);
|
float GetParameterValue(const char* path);
|
||||||
void SetParameter(const char* path, float value);
|
void SetParameter(const char* path, float value);
|
||||||
|
void SetParameterWithLabel(const char* path, const char* label);
|
||||||
|
|
||||||
private:
|
private:
|
||||||
FMOD::Studio::System* fmodStudioSystem;
|
FMOD::Studio::System* fmodStudioSystem;
|
||||||
|
@ -122,6 +123,7 @@ namespace SHADE
|
||||||
SHEventHandle onPlay(SHEventPtr onStopEvent);
|
SHEventHandle onPlay(SHEventPtr onStopEvent);
|
||||||
SHEventHandle onStop(SHEventPtr onStopEvent);
|
SHEventHandle onStop(SHEventPtr onStopEvent);
|
||||||
SHEventHandle onPause(SHEventPtr onStopEvent);
|
SHEventHandle onPause(SHEventPtr onStopEvent);
|
||||||
|
SHEventHandle onSceneExit(SHEventPtr onSceneExitEvent);
|
||||||
};
|
};
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
|
@ -9,9 +9,7 @@
|
||||||
|
|
||||||
namespace SHADE
|
namespace SHADE
|
||||||
{
|
{
|
||||||
|
struct SHRay;
|
||||||
class SHBox;
|
|
||||||
class SHRay;
|
|
||||||
|
|
||||||
class SH_API SHCameraArmComponent final: public SHComponent
|
class SH_API SHCameraArmComponent final: public SHComponent
|
||||||
{
|
{
|
||||||
|
|
|
@ -272,6 +272,13 @@ namespace SHADE
|
||||||
if (arm->isActive == true)
|
if (arm->isActive == true)
|
||||||
{
|
{
|
||||||
camera.offset = arm->GetOffset();
|
camera.offset = arm->GetOffset();
|
||||||
|
|
||||||
|
SHVec3 tOffset = arm->GetTargetOffset();
|
||||||
|
|
||||||
|
|
||||||
|
tOffset = SHVec3::RotateY(tOffset, SHMath::DegreesToRadians(arm->GetYaw()));
|
||||||
|
|
||||||
|
|
||||||
if (arm->lookAtCameraOrigin)
|
if (arm->lookAtCameraOrigin)
|
||||||
CameraLookAt(camera, camera.position + arm->GetTargetOffset());
|
CameraLookAt(camera, camera.position + arm->GetTargetOffset());
|
||||||
|
|
||||||
|
@ -559,7 +566,7 @@ namespace SHADE
|
||||||
}
|
}
|
||||||
|
|
||||||
#else
|
#else
|
||||||
return SHVec2{ GetDirector(index)->GetWidth(),GetDirector(index)->GetHeight() };
|
return SHVec2{ GetDirector(index)->GetWidth(),GetDirector(index)->GetWidth() / screenAspectRatio };
|
||||||
#endif
|
#endif
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -380,10 +380,14 @@ namespace SHADE
|
||||||
break;
|
break;
|
||||||
case AssetType::MESH: break;
|
case AssetType::MESH: break;
|
||||||
case AssetType::SCENE:
|
case AssetType::SCENE:
|
||||||
if (editor->LoadScene(asset->id))
|
{
|
||||||
{
|
if(editor->LoadScene(asset->id))
|
||||||
editor->editorConfig->workingSceneID = asset->id;
|
{
|
||||||
}
|
#ifdef SHEDITOR
|
||||||
|
editor->editorConfig->workingSceneID = asset->id;
|
||||||
|
#endif
|
||||||
|
}
|
||||||
|
}
|
||||||
break;
|
break;
|
||||||
case AssetType::PREFAB: break;
|
case AssetType::PREFAB: break;
|
||||||
case AssetType::MATERIAL:
|
case AssetType::MATERIAL:
|
||||||
|
|
|
@ -15,6 +15,7 @@
|
||||||
#include "Editor/SHEditorWidgets.hpp"
|
#include "Editor/SHEditorWidgets.hpp"
|
||||||
#include "Graphics/MiddleEnd/Interface/SHRenderable.h"
|
#include "Graphics/MiddleEnd/Interface/SHRenderable.h"
|
||||||
#include "Graphics/MiddleEnd/Lights/SHLightComponent.h"
|
#include "Graphics/MiddleEnd/Lights/SHLightComponent.h"
|
||||||
|
#include "Physics/Interface/SHRigidBodyComponent.h"
|
||||||
#include "Physics/Interface/SHColliderComponent.h"
|
#include "Physics/Interface/SHColliderComponent.h"
|
||||||
#include "Reflection/SHReflectionMetadata.h"
|
#include "Reflection/SHReflectionMetadata.h"
|
||||||
#include "Resource/SHResourceManager.h"
|
#include "Resource/SHResourceManager.h"
|
||||||
|
@ -25,6 +26,7 @@
|
||||||
#include "Animation/SHAnimatorComponent.h"
|
#include "Animation/SHAnimatorComponent.h"
|
||||||
#include "Physics/Collision/Shapes/SHBox.h"
|
#include "Physics/Collision/Shapes/SHBox.h"
|
||||||
#include "Physics/Collision/Shapes/SHSphere.h"
|
#include "Physics/Collision/Shapes/SHSphere.h"
|
||||||
|
#include "Physics/Collision/Shapes/SHCapsule.h"
|
||||||
#include "../SHEditorWindowManager.h"
|
#include "../SHEditorWindowManager.h"
|
||||||
#include "../AssetBrowser/SHAssetBrowser.h"
|
#include "../AssetBrowser/SHAssetBrowser.h"
|
||||||
#include "Graphics/MiddleEnd/TrajectoryRendering/SHTrajectoryRenderableComponent.h"
|
#include "Graphics/MiddleEnd/TrajectoryRendering/SHTrajectoryRenderableComponent.h"
|
||||||
|
@ -264,6 +266,10 @@ namespace SHADE
|
||||||
if(rbType == SHRigidBodyComponent::Type::DYNAMIC) //Dynamic only fields
|
if(rbType == SHRigidBodyComponent::Type::DYNAMIC) //Dynamic only fields
|
||||||
{
|
{
|
||||||
SHEditorWidgets::CheckBox("Use Gravity", [component]{return component->IsGravityEnabled();}, [component](bool const& value){component->SetGravityEnabled(value);}, "Gravity");
|
SHEditorWidgets::CheckBox("Use Gravity", [component]{return component->IsGravityEnabled();}, [component](bool const& value){component->SetGravityEnabled(value);}, "Gravity");
|
||||||
|
|
||||||
|
if (component->IsGravityEnabled())
|
||||||
|
SHEditorWidgets::DragFloat("Gravity Scale", [component] {return component->GetGravityScale(); }, [component](float const& value) {component->SetGravityScale(value); }, "Gravity Scale");
|
||||||
|
|
||||||
//SHEditorWidgets::DragFloat("Mass", [component] {return component->GetMass(); }, [component](float const& value) {component->SetMass(value); }, "Mass");
|
//SHEditorWidgets::DragFloat("Mass", [component] {return component->GetMass(); }, [component](float const& value) {component->SetMass(value); }, "Mass");
|
||||||
}
|
}
|
||||||
if (rbType == SHRigidBodyComponent::Type::DYNAMIC || rbType == SHRigidBodyComponent::Type::KINEMATIC) //Dynamic or Kinematic only fields
|
if (rbType == SHRigidBodyComponent::Type::DYNAMIC || rbType == SHRigidBodyComponent::Type::KINEMATIC) //Dynamic or Kinematic only fields
|
||||||
|
@ -372,12 +378,26 @@ namespace SHADE
|
||||||
(
|
(
|
||||||
"Radius",
|
"Radius",
|
||||||
[sphereShape] { return sphereShape->GetRelativeRadius(); },
|
[sphereShape] { return sphereShape->GetRelativeRadius(); },
|
||||||
[sphereShape](float const& value) { sphereShape->SetRelativeRadius(value); });
|
[sphereShape](float const& value) { sphereShape->SetRelativeRadius(value); }
|
||||||
|
);
|
||||||
|
}
|
||||||
|
else if (collisionShape->GetType() == SHCollisionShape::Type::CAPSULE)
|
||||||
|
{
|
||||||
|
SHEditorWidgets::BeginPanel(std::format("{} Capsule #{}", ICON_MD_CIRCLE, i).data(), { ImGui::GetContentRegionAvail().x, ImGui::GetContentRegionAvail().y });
|
||||||
|
auto* capsuleShape = dynamic_cast<SHCapsule*>(collisionShape);
|
||||||
|
SHEditorWidgets::DragFloat
|
||||||
|
(
|
||||||
|
"Radius",
|
||||||
|
[capsuleShape] { return capsuleShape->GetRelativeRadius(); },
|
||||||
|
[capsuleShape](float const& value) { capsuleShape->SetRelativeRadius(value); }
|
||||||
|
);
|
||||||
|
SHEditorWidgets::DragFloat
|
||||||
|
(
|
||||||
|
"Height",
|
||||||
|
[capsuleShape] { return capsuleShape->GetRelativeHeight(); },
|
||||||
|
[capsuleShape](float const& value) { capsuleShape->SetRelativeHeight(value); }
|
||||||
|
);
|
||||||
}
|
}
|
||||||
//else if (collisionShape->GetType() == SHCollisionShape::Type::CAPSULE)
|
|
||||||
//{
|
|
||||||
|
|
||||||
//}
|
|
||||||
|
|
||||||
{
|
{
|
||||||
SHEditorWidgets::CheckBox("Is Trigger", [collisionShape] { return collisionShape->IsTrigger(); }, [collisionShape](bool value) { collisionShape->SetIsTrigger(value); });
|
SHEditorWidgets::CheckBox("Is Trigger", [collisionShape] { return collisionShape->IsTrigger(); }, [collisionShape](bool value) { collisionShape->SetIsTrigger(value); });
|
||||||
|
@ -420,25 +440,20 @@ namespace SHADE
|
||||||
|
|
||||||
if (ImGui::BeginMenu("Add Collider"))
|
if (ImGui::BeginMenu("Add Collider"))
|
||||||
{
|
{
|
||||||
int newColl = -1;
|
int newCollider = -1;
|
||||||
|
|
||||||
if (ImGui::Selectable("Box Collider"))
|
if (ImGui::Selectable("Box Collider"))
|
||||||
{
|
{
|
||||||
newColl = component->AddBoxCollisionShape(SHVec3::One);
|
newCollider = component->AddBoxCollisionShape(SHVec3::One);
|
||||||
}
|
}
|
||||||
if (ImGui::Selectable("Sphere Collider"))
|
if (ImGui::Selectable("Sphere Collider"))
|
||||||
{
|
{
|
||||||
newColl = component->AddSphereCollisionShape(1.0f);
|
newCollider = component->AddSphereCollisionShape(1.0f);
|
||||||
|
}
|
||||||
|
if (ImGui::Selectable("Capsule Collider"))
|
||||||
|
{
|
||||||
|
newCollider = component->AddCapsuleCollisionShape(1.0f, 2.0f);
|
||||||
}
|
}
|
||||||
|
|
||||||
//No idea why this doesn't work
|
|
||||||
//if (newColl > 0)
|
|
||||||
//{
|
|
||||||
// auto newCollisionShape = component->GetCollisionShape(newColl);
|
|
||||||
// auto prevCollisionShapeInSeq = component->GetCollisionShape(newColl - 1);
|
|
||||||
// newCollisionShape.SetCollisionTag(SHCollisionTagMatrix::GetTag(prevCollisionShapeInSeq.GetCollisionTag().GetName()));
|
|
||||||
|
|
||||||
//}
|
|
||||||
|
|
||||||
ImGui::EndMenu();
|
ImGui::EndMenu();
|
||||||
}
|
}
|
||||||
|
|
|
@ -25,6 +25,7 @@
|
||||||
#include "Serialization/SHSerialization.h"
|
#include "Serialization/SHSerialization.h"
|
||||||
#include "Serialization/Configurations/SHConfigurationManager.h"
|
#include "Serialization/Configurations/SHConfigurationManager.h"
|
||||||
#include "Editor/EditorWindow/SHEditorWindowManager.h"
|
#include "Editor/EditorWindow/SHEditorWindowManager.h"
|
||||||
|
#include "Physics/System/SHPhysicsSystem.h"
|
||||||
#include "Physics/System/SHPhysicsDebugDrawSystem.h"
|
#include "Physics/System/SHPhysicsDebugDrawSystem.h"
|
||||||
#include "Camera/SHCameraSystem.h"
|
#include "Camera/SHCameraSystem.h"
|
||||||
#include "Tools/Utilities/SHClipboardUtilities.h"
|
#include "Tools/Utilities/SHClipboardUtilities.h"
|
||||||
|
@ -359,21 +360,63 @@ namespace SHADE
|
||||||
{
|
{
|
||||||
if (ImGui::BeginMenu("Physics Settings"))
|
if (ImGui::BeginMenu("Physics Settings"))
|
||||||
{
|
{
|
||||||
|
if (auto* physicsSystem = SHSystemManager::GetSystem<SHPhysicsSystem>())
|
||||||
|
{
|
||||||
|
SHEditorWidgets::DragVec3
|
||||||
|
(
|
||||||
|
"Gravity", { "X", "Y", "Z" },
|
||||||
|
[physicsSystem] {return physicsSystem->GetGravity(); },
|
||||||
|
[physicsSystem](SHVec3 const& value) { physicsSystem->SetGravity(value); }
|
||||||
|
, false, "Global Gravity", 0.1f, "%.3f", 0.0f, 0.0f
|
||||||
|
);
|
||||||
|
|
||||||
|
SHEditorWidgets::SliderScalar<uint16_t>
|
||||||
|
(
|
||||||
|
"Velocity Iterations", ImGuiDataType_U16, (uint16_t)1, (uint16_t)32,
|
||||||
|
[physicsSystem] { return physicsSystem->GetNumVelocityIterations(); },
|
||||||
|
[physicsSystem](uint16_t value) { physicsSystem->SetNumVelocityIterations(value); },
|
||||||
|
"Number of times velocity is solved per collision. Higher values increase precision at the cost of performance.",
|
||||||
|
"%zu"
|
||||||
|
);
|
||||||
|
|
||||||
|
SHEditorWidgets::SliderScalar<uint16_t>
|
||||||
|
(
|
||||||
|
"Position Iterations", ImGuiDataType_U16, (uint16_t)1, (uint16_t)32,
|
||||||
|
[physicsSystem] { return physicsSystem->GetNumPositionIterations(); },
|
||||||
|
[physicsSystem](uint16_t value) { physicsSystem->SetNumPositionIterations(value); },
|
||||||
|
"Number of times position is solved per collision. Higher values increase precision at the cost of performance.",
|
||||||
|
"%zu"
|
||||||
|
);
|
||||||
|
|
||||||
|
SHEditorWidgets::CheckBox
|
||||||
|
(
|
||||||
|
"Sleeping Enabled",
|
||||||
|
[physicsSystem] { return physicsSystem->IsSleepingEnabled(); },
|
||||||
|
[physicsSystem](bool value) { physicsSystem->EnableSleeping(value); },
|
||||||
|
"If bodies are allowed to sleep. Sleeping increases performance of the simulation and should be left enabled."
|
||||||
|
);
|
||||||
|
}
|
||||||
|
|
||||||
if (auto* physicsDebugDraw = SHSystemManager::GetSystem<SHPhysicsDebugDrawSystem>())
|
if (auto* physicsDebugDraw = SHSystemManager::GetSystem<SHPhysicsDebugDrawSystem>())
|
||||||
{
|
{
|
||||||
bool drawColliders = physicsDebugDraw->GetFlagState(SHPhysicsDebugDrawSystem::DebugDrawFlags::COLLIDERS);
|
if(ImGui::CollapsingHeader("Debug Draw", ImGuiTreeNodeFlags_DefaultOpen))
|
||||||
if (ImGui::Checkbox("Draw Colliders", &drawColliders))
|
{
|
||||||
physicsDebugDraw->SetFlagState(SHPhysicsDebugDrawSystem::DebugDrawFlags::COLLIDERS, drawColliders);
|
bool drawColliders = physicsDebugDraw->GetFlagState(SHPhysicsDebugDrawSystem::DebugDrawFlags::COLLIDERS);
|
||||||
|
if (ImGui::Checkbox("Draw Colliders", &drawColliders))
|
||||||
|
physicsDebugDraw->SetFlagState(SHPhysicsDebugDrawSystem::DebugDrawFlags::COLLIDERS, drawColliders);
|
||||||
|
|
||||||
bool drawContactPoints = physicsDebugDraw->GetFlagState(SHPhysicsDebugDrawSystem::DebugDrawFlags::CONTACTS);
|
bool drawContactPoints = physicsDebugDraw->GetFlagState(SHPhysicsDebugDrawSystem::DebugDrawFlags::CONTACTS);
|
||||||
if (ImGui::Checkbox("Draw Contact Points", &drawContactPoints))
|
if (ImGui::Checkbox("Draw Contact Points", &drawContactPoints))
|
||||||
physicsDebugDraw->SetFlagState(SHPhysicsDebugDrawSystem::DebugDrawFlags::CONTACTS, drawContactPoints);
|
physicsDebugDraw->SetFlagState(SHPhysicsDebugDrawSystem::DebugDrawFlags::CONTACTS, drawContactPoints);
|
||||||
|
|
||||||
bool drawRays = physicsDebugDraw->GetFlagState(SHPhysicsDebugDrawSystem::DebugDrawFlags::RAYCASTS);
|
bool drawRays = physicsDebugDraw->GetFlagState(SHPhysicsDebugDrawSystem::DebugDrawFlags::RAYCASTS);
|
||||||
if (ImGui::Checkbox("Draw Rays", &drawRays))
|
if (ImGui::Checkbox("Draw Rays", &drawRays))
|
||||||
physicsDebugDraw->SetFlagState(SHPhysicsDebugDrawSystem::DebugDrawFlags::RAYCASTS, drawRays);
|
physicsDebugDraw->SetFlagState(SHPhysicsDebugDrawSystem::DebugDrawFlags::RAYCASTS, drawRays);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
ImGui::EndMenu();
|
ImGui::EndMenu();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -56,6 +56,7 @@
|
||||||
#include "Scene/SHSceneManager.h"
|
#include "Scene/SHSceneManager.h"
|
||||||
#include "Serialization/SHSerialization.h"
|
#include "Serialization/SHSerialization.h"
|
||||||
#include "Tools/SHDebugDraw.h"
|
#include "Tools/SHDebugDraw.h"
|
||||||
|
#include "Input/SHInputManager.h"
|
||||||
|
|
||||||
RTTR_REGISTRATION
|
RTTR_REGISTRATION
|
||||||
{
|
{
|
||||||
|
@ -600,8 +601,10 @@ namespace SHADE
|
||||||
{
|
{
|
||||||
//Load the scene
|
//Load the scene
|
||||||
sceneToLoad = 0;
|
sceneToLoad = 0;
|
||||||
|
#ifdef SHEDITOR
|
||||||
editorConfig->workingSceneID = assetID;
|
editorConfig->workingSceneID = assetID;
|
||||||
SHConfigurationManager::SaveEditorConfig();
|
SHConfigurationManager::SaveEditorConfig();
|
||||||
|
#endif
|
||||||
SHSceneManager::RestartScene(assetID);
|
SHSceneManager::RestartScene(assetID);
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
@ -624,6 +627,7 @@ namespace SHADE
|
||||||
}
|
}
|
||||||
else if (editorState == State::PAUSE)
|
else if (editorState == State::PAUSE)
|
||||||
{
|
{
|
||||||
|
SHWindow::SetMouseVisible(prevCursorVisibleState);
|
||||||
editorState = State::PLAY;
|
editorState = State::PLAY;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -637,6 +641,9 @@ namespace SHADE
|
||||||
.previousState = editorState
|
.previousState = editorState
|
||||||
};
|
};
|
||||||
editorState = State::PAUSE;
|
editorState = State::PAUSE;
|
||||||
|
SHInputManager::SetMouseCentering(false);
|
||||||
|
prevCursorVisibleState = SHWindow::GetMouseVisible();
|
||||||
|
SHWindow::SetMouseVisible(true);
|
||||||
SHEventManager::BroadcastEvent<SHEditorStateChangeEvent>(STATE_CHANGE_EVENT, SH_EDITOR_ON_PAUSE_EVENT);
|
SHEventManager::BroadcastEvent<SHEditorStateChangeEvent>(STATE_CHANGE_EVENT, SH_EDITOR_ON_PAUSE_EVENT);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -648,6 +655,9 @@ namespace SHADE
|
||||||
{
|
{
|
||||||
.previousState = editorState
|
.previousState = editorState
|
||||||
};
|
};
|
||||||
|
SHWindow::SetMouseVisible(true);
|
||||||
|
prevCursorVisibleState = true;
|
||||||
|
SHInputManager::SetMouseCentering(false);
|
||||||
editorState = SHEditor::State::STOP;
|
editorState = SHEditor::State::STOP;
|
||||||
SHCommandManager::SwapStacks();
|
SHCommandManager::SwapStacks();
|
||||||
SHEventManager::BroadcastEvent<SHEditorStateChangeEvent>(STATE_CHANGE_EVENT, SH_EDITOR_ON_STOP_EVENT);
|
SHEventManager::BroadcastEvent<SHEditorStateChangeEvent>(STATE_CHANGE_EVENT, SH_EDITOR_ON_STOP_EVENT);
|
||||||
|
|
|
@ -154,7 +154,7 @@ namespace SHADE
|
||||||
SHEventHandle onEditorStateChanged(SHEventPtr eventPtr);
|
SHEventHandle onEditorStateChanged(SHEventPtr eventPtr);
|
||||||
|
|
||||||
bool isUnsavedChangesPromptOpen = false;
|
bool isUnsavedChangesPromptOpen = false;
|
||||||
|
bool prevCursorVisibleState = true;
|
||||||
static constexpr std::string_view sceneNamePromptName = "Save scene as...";
|
static constexpr std::string_view sceneNamePromptName = "Save scene as...";
|
||||||
static constexpr std::string_view unsavedChangesPromptName = "Unsaved Changes";
|
static constexpr std::string_view unsavedChangesPromptName = "Unsaved Changes";
|
||||||
|
|
||||||
|
|
|
@ -317,7 +317,7 @@ namespace SHADE
|
||||||
const bool CHANGED = ImGui::InputText("##", &buffer[0], TEXT_FIELD_MAX_LENGTH);
|
const bool CHANGED = ImGui::InputText("##", &buffer[0], TEXT_FIELD_MAX_LENGTH);
|
||||||
if (CHANGED)
|
if (CHANGED)
|
||||||
{
|
{
|
||||||
value = std::string(buffer.data(), buffer.data() + TEXT_FIELD_MAX_LENGTH);
|
value = std::string(buffer.data(), buffer.data() + std::strlen(buffer.data()));
|
||||||
}
|
}
|
||||||
return CHANGED;
|
return CHANGED;
|
||||||
}
|
}
|
||||||
|
|
|
@ -37,6 +37,8 @@ namespace SHADE
|
||||||
{
|
{
|
||||||
prevFrameTime = std::chrono::high_resolution_clock::now();
|
prevFrameTime = std::chrono::high_resolution_clock::now();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
//TODO Legacy code. Delete soon
|
//TODO Legacy code. Delete soon
|
||||||
|
|
|
@ -375,15 +375,15 @@ namespace SHADE
|
||||||
const SHVec3 LOCAL_FORWARD = SHVec3::Rotate(SHVec3::Forward, rotation);
|
const SHVec3 LOCAL_FORWARD = SHVec3::Rotate(SHVec3::Forward, rotation);
|
||||||
|
|
||||||
// Rotate the circle
|
// Rotate the circle
|
||||||
SHQuaternion circleOrientation = SHQuaternion::FromEuler(SHVec3(SHMath::DegreesToRadians(90.0), 0.0f, 0.0f)) * rotation;
|
SHQuaternion circleOrientation = SHQuaternion::FromEuler(SHVec3(SHMath::DegreesToRadians(90.0f), 0.0f, 0.0f)) * rotation;
|
||||||
|
|
||||||
// Compute top and bottom of the cylinder
|
// Compute top and bottom of the cylinder
|
||||||
const SHVec3 HALF_UP = LOCAL_UP * (height * 0.5f - radius);
|
const SHVec3 HALF_UP = LOCAL_UP * (height * 0.5f);
|
||||||
const SHVec3 TOP_POS = position + HALF_UP;
|
const SHVec3 TOP_POS = position + HALF_UP;
|
||||||
const SHVec3 BOT_POS = position - HALF_UP;
|
const SHVec3 BOT_POS = position - HALF_UP;
|
||||||
|
|
||||||
// Render circles
|
// Render circles
|
||||||
const SHVec3 CIRCLE_SCALE = SHVec3(radius * 2.0f, radius * 2.0, radius * 2.0);
|
const SHVec3 CIRCLE_SCALE = SHVec3(radius * 2.0f, radius * 2.0f, radius * 2.0f);
|
||||||
drawCircle(meshBatch, SHMatrix::Transform(TOP_POS, circleOrientation, CIRCLE_SCALE), color);
|
drawCircle(meshBatch, SHMatrix::Transform(TOP_POS, circleOrientation, CIRCLE_SCALE), color);
|
||||||
drawCircle(meshBatch, SHMatrix::Transform(BOT_POS, circleOrientation, CIRCLE_SCALE), color);
|
drawCircle(meshBatch, SHMatrix::Transform(BOT_POS, circleOrientation, CIRCLE_SCALE), color);
|
||||||
|
|
||||||
|
@ -394,7 +394,7 @@ namespace SHADE
|
||||||
drawLine(lineBatch, TOP_POS - LOCAL_FORWARD * radius, BOT_POS - LOCAL_FORWARD * radius, color);
|
drawLine(lineBatch, TOP_POS - LOCAL_FORWARD * radius, BOT_POS - LOCAL_FORWARD * radius, color);
|
||||||
|
|
||||||
// Render caps
|
// Render caps
|
||||||
const SHVec3 RADIUS_SCALE = SHVec3(radius * 2.0, radius * 2.0f, radius * 2.0);
|
const SHVec3 RADIUS_SCALE = SHVec3(radius * 2.0f, radius * 2.0f, radius * 2.0f);
|
||||||
const SHMatrix TOP_CAP_MAT = SHMatrix::Transform(TOP_POS, rotation, RADIUS_SCALE);
|
const SHMatrix TOP_CAP_MAT = SHMatrix::Transform(TOP_POS, rotation, RADIUS_SCALE);
|
||||||
drawMesh
|
drawMesh
|
||||||
(
|
(
|
||||||
|
@ -404,7 +404,7 @@ namespace SHADE
|
||||||
const SHMatrix BOT_CAP_MAT = SHMatrix::Transform
|
const SHMatrix BOT_CAP_MAT = SHMatrix::Transform
|
||||||
(
|
(
|
||||||
BOT_POS,
|
BOT_POS,
|
||||||
SHQuaternion::FromEuler(SHVec3(SHMath::DegreesToRadians(180.0), 0.0f, 0.0f)) * rotation,
|
SHQuaternion::FromEuler(SHVec3(SHMath::DegreesToRadians(180.0f), 0.0f, 0.0f)) * rotation,
|
||||||
RADIUS_SCALE
|
RADIUS_SCALE
|
||||||
);
|
);
|
||||||
drawMesh
|
drawMesh
|
||||||
|
|
|
@ -555,6 +555,11 @@ namespace SHADE
|
||||||
// Create buffer for generic data and attach to descriptor set
|
// Create buffer for generic data and attach to descriptor set
|
||||||
graphicsGenericData.Init(device, genericAndTextureDescSet);
|
graphicsGenericData.Init(device, genericAndTextureDescSet);
|
||||||
|
|
||||||
|
auto windowDims = window->GetWindowSize();
|
||||||
|
|
||||||
|
graphicsGenericData.SetViewportWidth(windowDims.first);
|
||||||
|
graphicsGenericData.SetViewportHeight(windowDims.second);
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
/*---------------------------------------------------------------------------------*/
|
/*---------------------------------------------------------------------------------*/
|
||||||
|
@ -669,7 +674,7 @@ namespace SHADE
|
||||||
#endif
|
#endif
|
||||||
}
|
}
|
||||||
|
|
||||||
static bool shadowAdded = false;
|
//static bool shadowAdded = false;
|
||||||
|
|
||||||
//if (shadowAdded == false && SHInputManager::GetKey(SHInputManager::SH_KEYCODE::B))
|
//if (shadowAdded == false && SHInputManager::GetKey(SHInputManager::SH_KEYCODE::B))
|
||||||
//{
|
//{
|
||||||
|
|
Some files were not shown because too many files have changed in this diff Show More
Loading…
Reference in New Issue