Merge branch 'main' into SP3-2-Physics
This commit is contained in:
parent
e2d96569b5
commit
15bbf6892f
|
@ -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
|
||||||
|
@ -2403,7 +2418,7 @@
|
||||||
Components:
|
Components:
|
||||||
Transform Component:
|
Transform Component:
|
||||||
Translate: {x: 0, y: 0, z: 0}
|
Translate: {x: 0, y: 0, z: 0}
|
||||||
Rotate: {x: 0, y: 0, z: 0}
|
Rotate: {x: 0.5, y: -299.5, z: 0.5}
|
||||||
Scale: {x: 1, y: 1, z: 1}
|
Scale: {x: 1, y: 1, z: 1}
|
||||||
IsActive: true
|
IsActive: true
|
||||||
Renderable Component:
|
Renderable Component:
|
||||||
|
@ -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
|
||||||
|
@ -5221,7 +5183,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 +5199,15 @@
|
||||||
Hovered: false
|
Hovered: false
|
||||||
Clicked: false
|
Clicked: false
|
||||||
IsActive: true
|
IsActive: true
|
||||||
Scripts: ~
|
Scripts:
|
||||||
|
- 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
|
||||||
|
clickScale: 0.899999976
|
||||||
- EID: 456
|
- EID: 456
|
||||||
Name: QuitButton
|
Name: QuitButton
|
||||||
IsActive: true
|
IsActive: true
|
||||||
|
@ -5246,7 +5216,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 +5232,15 @@
|
||||||
Hovered: false
|
Hovered: false
|
||||||
Clicked: false
|
Clicked: false
|
||||||
IsActive: true
|
IsActive: true
|
||||||
Scripts: ~
|
Scripts:
|
||||||
|
- 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
|
||||||
|
clickScale: 0.899999976
|
||||||
- EID: 455
|
- EID: 455
|
||||||
Name: RetryButton
|
Name: RetryButton
|
||||||
IsActive: true
|
IsActive: true
|
||||||
|
@ -5271,7 +5249,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 +5265,15 @@
|
||||||
Hovered: false
|
Hovered: false
|
||||||
Clicked: false
|
Clicked: false
|
||||||
IsActive: true
|
IsActive: true
|
||||||
Scripts: ~
|
Scripts:
|
||||||
|
- 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
|
||||||
|
clickScale: 0.899999976
|
||||||
- EID: 454
|
- EID: 454
|
||||||
Name: GamePauseText
|
Name: GamePauseText
|
||||||
IsActive: true
|
IsActive: true
|
||||||
|
@ -5300,8 +5286,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 +5331,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: ~
|
|
@ -464,6 +464,8 @@
|
||||||
Enabled: true
|
Enabled: true
|
||||||
threshHold: 0.5
|
threshHold: 0.5
|
||||||
ignoreRaccoon: true
|
ignoreRaccoon: true
|
||||||
|
breakClipHandlerName: SFXEggBreak144
|
||||||
|
breakClipPath: event:/Props/impact_egg
|
||||||
- Type: Item
|
- Type: Item
|
||||||
Enabled: true
|
Enabled: true
|
||||||
Score: 10
|
Score: 10
|
||||||
|
@ -1652,6 +1654,8 @@
|
||||||
Enabled: true
|
Enabled: true
|
||||||
threshHold: 4
|
threshHold: 4
|
||||||
ignoreRaccoon: true
|
ignoreRaccoon: true
|
||||||
|
breakClipHandlerName: SFXWatermelonBreak464
|
||||||
|
breakClipPath: event:/Props/impact_watermelon_break
|
||||||
- Type: Item
|
- Type: Item
|
||||||
Enabled: true
|
Enabled: true
|
||||||
Score: 500
|
Score: 500
|
||||||
|
@ -2064,6 +2068,8 @@
|
||||||
Enabled: true
|
Enabled: true
|
||||||
threshHold: 4
|
threshHold: 4
|
||||||
ignoreRaccoon: true
|
ignoreRaccoon: true
|
||||||
|
breakClipHandlerName: SFXWatermelonBreak522
|
||||||
|
breakClipPath: event:/Props/impact_watermelon_break
|
||||||
- Type: Item
|
- Type: Item
|
||||||
Enabled: true
|
Enabled: true
|
||||||
Score: 500
|
Score: 500
|
||||||
|
@ -2085,8 +2091,8 @@
|
||||||
Scale: {x: 1, y: 1, z: 1}
|
Scale: {x: 1, y: 1, z: 1}
|
||||||
IsActive: false
|
IsActive: false
|
||||||
Renderable Component:
|
Renderable Component:
|
||||||
Mesh: 0
|
Mesh: 144023586
|
||||||
Material: 0
|
Material: 122370915
|
||||||
IsActive: false
|
IsActive: false
|
||||||
RigidBody Component:
|
RigidBody Component:
|
||||||
Type: Dynamic
|
Type: Dynamic
|
||||||
|
@ -2182,8 +2188,8 @@
|
||||||
NumberOfChildren: 0
|
NumberOfChildren: 0
|
||||||
Components:
|
Components:
|
||||||
Transform Component:
|
Transform Component:
|
||||||
Translate: {x: -0.230162144, y: -0.0580062866, z: -0.00789308548}
|
Translate: {x: 0, y: 0, z: 0}
|
||||||
Rotate: {x: 0, y: 3.6088712e-09, z: 1.97286229e-16}
|
Rotate: {x: 0, y: 0, z: 0}
|
||||||
Scale: {x: 1, y: 1, z: 1}
|
Scale: {x: 1, y: 1, z: 1}
|
||||||
IsActive: false
|
IsActive: false
|
||||||
Renderable Component:
|
Renderable Component:
|
||||||
|
@ -2195,8 +2201,8 @@
|
||||||
Drag: 0.00999999978
|
Drag: 0.00999999978
|
||||||
Angular Drag: 0.100000001
|
Angular Drag: 0.100000001
|
||||||
Use Gravity: true
|
Use Gravity: true
|
||||||
Interpolate: false
|
Interpolate: true
|
||||||
Sleeping Enabled: true
|
Sleeping Enabled: false
|
||||||
Freeze Position X: false
|
Freeze Position X: false
|
||||||
Freeze Position Y: false
|
Freeze Position Y: false
|
||||||
Freeze Position Z: false
|
Freeze Position Z: false
|
||||||
|
@ -2374,6 +2380,8 @@
|
||||||
Enabled: true
|
Enabled: true
|
||||||
threshHold: 4
|
threshHold: 4
|
||||||
ignoreRaccoon: true
|
ignoreRaccoon: true
|
||||||
|
breakClipHandlerName: SFXWatermelonBreak156
|
||||||
|
breakClipPath: event:/Props/impact_watermelon_break
|
||||||
- Type: Item
|
- Type: Item
|
||||||
Enabled: true
|
Enabled: true
|
||||||
Score: 500
|
Score: 500
|
||||||
|
@ -2684,6 +2692,8 @@
|
||||||
Enabled: true
|
Enabled: true
|
||||||
threshHold: 0.5
|
threshHold: 0.5
|
||||||
ignoreRaccoon: true
|
ignoreRaccoon: true
|
||||||
|
breakClipHandlerName: SFXEggBreak533
|
||||||
|
breakClipPath: event:/Props/impact_egg
|
||||||
- Type: Item
|
- Type: Item
|
||||||
Enabled: true
|
Enabled: true
|
||||||
Score: 10
|
Score: 10
|
||||||
|
@ -2903,6 +2913,8 @@
|
||||||
Enabled: true
|
Enabled: true
|
||||||
threshHold: 0.5
|
threshHold: 0.5
|
||||||
ignoreRaccoon: true
|
ignoreRaccoon: true
|
||||||
|
breakClipHandlerName: SFXEggBreak538
|
||||||
|
breakClipPath: event:/Props/impact_egg
|
||||||
- Type: Item
|
- Type: Item
|
||||||
Enabled: true
|
Enabled: true
|
||||||
Score: 10
|
Score: 10
|
||||||
|
@ -3122,6 +3134,8 @@
|
||||||
Enabled: true
|
Enabled: true
|
||||||
threshHold: 0.5
|
threshHold: 0.5
|
||||||
ignoreRaccoon: true
|
ignoreRaccoon: true
|
||||||
|
breakClipHandlerName: SFXEggBreak543
|
||||||
|
breakClipPath: event:/Props/impact_egg
|
||||||
- Type: Item
|
- Type: Item
|
||||||
Enabled: true
|
Enabled: true
|
||||||
Score: 10
|
Score: 10
|
||||||
|
@ -3477,6 +3491,7 @@
|
||||||
Text: My name is Brandon.
|
Text: My name is Brandon.
|
||||||
Font: 174412429
|
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: true
|
IsActive: true
|
||||||
UI Component:
|
UI Component:
|
||||||
Canvas ID: 199
|
Canvas ID: 199
|
||||||
|
@ -3505,19 +3520,40 @@
|
||||||
IsActive: true
|
IsActive: true
|
||||||
Scripts: ~
|
Scripts: ~
|
||||||
- EID: 206
|
- EID: 206
|
||||||
Name: Timer
|
Name: Timer Text
|
||||||
IsActive: true
|
IsActive: true
|
||||||
NumberOfChildren: 0
|
NumberOfChildren: 1
|
||||||
Components:
|
Components:
|
||||||
Transform Component:
|
Transform Component:
|
||||||
Translate: {x: 500, y: 400, z: 0.100000001}
|
Translate: {x: 700, y: 400, z: 0.100000001}
|
||||||
Rotate: {x: 0, y: 0, z: 0}
|
Rotate: {x: 0, y: 0, z: 0}
|
||||||
Scale: {x: 60, y: 60, z: 60}
|
Scale: {x: 60, y: 60, z: 60}
|
||||||
IsActive: true
|
IsActive: true
|
||||||
Text Renderer Component:
|
Text Renderer Component:
|
||||||
Text: My name is Brandon.
|
Text: My name is Brandon.
|
||||||
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: true
|
||||||
|
UI Component:
|
||||||
|
Canvas ID: 199
|
||||||
|
Hovered: false
|
||||||
|
Clicked: false
|
||||||
|
IsActive: true
|
||||||
|
Scripts: ~
|
||||||
|
- EID: 520
|
||||||
|
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
|
IsActive: true
|
||||||
UI Component:
|
UI Component:
|
||||||
Canvas ID: 199
|
Canvas ID: 199
|
||||||
|
@ -3539,6 +3575,7 @@
|
||||||
Text: X2
|
Text: X2
|
||||||
Font: 174412429
|
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: true
|
IsActive: true
|
||||||
UI Component:
|
UI Component:
|
||||||
Canvas ID: 199
|
Canvas ID: 199
|
||||||
|
@ -3551,7 +3588,7 @@
|
||||||
maxSize: 1
|
maxSize: 1
|
||||||
minSize: 0.300000012
|
minSize: 0.300000012
|
||||||
minAlpha: 0.300000012
|
minAlpha: 0.300000012
|
||||||
- EID: 520
|
- EID: 519
|
||||||
Name: Multiplier BG
|
Name: Multiplier BG
|
||||||
IsActive: true
|
IsActive: true
|
||||||
NumberOfChildren: 0
|
NumberOfChildren: 0
|
||||||
|
@ -3803,6 +3840,8 @@
|
||||||
Enabled: true
|
Enabled: true
|
||||||
threshHold: 0.100000001
|
threshHold: 0.100000001
|
||||||
ignoreRaccoon: false
|
ignoreRaccoon: false
|
||||||
|
breakClipHandlerName: SFXBreak1
|
||||||
|
breakClipPath: event:/Props/impact_break
|
||||||
- EID: 196
|
- EID: 196
|
||||||
Name: Piece1
|
Name: Piece1
|
||||||
IsActive: false
|
IsActive: false
|
||||||
|
@ -4012,6 +4051,8 @@
|
||||||
Enabled: true
|
Enabled: true
|
||||||
threshHold: 0.100000001
|
threshHold: 0.100000001
|
||||||
ignoreRaccoon: false
|
ignoreRaccoon: false
|
||||||
|
breakClipHandlerName: SFXBreak171
|
||||||
|
breakClipPath: event:/Props/impact_break
|
||||||
- EID: 65703
|
- EID: 65703
|
||||||
Name: Piece1
|
Name: Piece1
|
||||||
IsActive: false
|
IsActive: false
|
||||||
|
@ -4221,6 +4262,8 @@
|
||||||
Enabled: true
|
Enabled: true
|
||||||
threshHold: 0.100000001
|
threshHold: 0.100000001
|
||||||
ignoreRaccoon: false
|
ignoreRaccoon: false
|
||||||
|
breakClipHandlerName: SFXBreak150
|
||||||
|
breakClipPath: event:/Props/impact_break
|
||||||
- EID: 149
|
- EID: 149
|
||||||
Name: Piece1
|
Name: Piece1
|
||||||
IsActive: false
|
IsActive: false
|
||||||
|
@ -4430,6 +4473,8 @@
|
||||||
Enabled: true
|
Enabled: true
|
||||||
threshHold: 0.100000001
|
threshHold: 0.100000001
|
||||||
ignoreRaccoon: false
|
ignoreRaccoon: false
|
||||||
|
breakClipHandlerName: SFXBreak145
|
||||||
|
breakClipPath: event:/Props/impact_break
|
||||||
- EID: 488
|
- EID: 488
|
||||||
Name: Piece1
|
Name: Piece1
|
||||||
IsActive: false
|
IsActive: false
|
||||||
|
@ -4639,6 +4684,8 @@
|
||||||
Enabled: true
|
Enabled: true
|
||||||
threshHold: 0.100000001
|
threshHold: 0.100000001
|
||||||
ignoreRaccoon: false
|
ignoreRaccoon: false
|
||||||
|
breakClipHandlerName: SFXBreak492
|
||||||
|
breakClipPath: event:/Props/impact_break
|
||||||
- EID: 493
|
- EID: 493
|
||||||
Name: Piece1
|
Name: Piece1
|
||||||
IsActive: false
|
IsActive: false
|
||||||
|
@ -4848,6 +4895,8 @@
|
||||||
Enabled: true
|
Enabled: true
|
||||||
threshHold: 0.100000001
|
threshHold: 0.100000001
|
||||||
ignoreRaccoon: false
|
ignoreRaccoon: false
|
||||||
|
breakClipHandlerName: SFXBreak497
|
||||||
|
breakClipPath: event:/Props/impact_break
|
||||||
- EID: 498
|
- EID: 498
|
||||||
Name: Piece1
|
Name: Piece1
|
||||||
IsActive: false
|
IsActive: false
|
||||||
|
@ -5057,6 +5106,8 @@
|
||||||
Enabled: true
|
Enabled: true
|
||||||
threshHold: 0.100000001
|
threshHold: 0.100000001
|
||||||
ignoreRaccoon: false
|
ignoreRaccoon: false
|
||||||
|
breakClipHandlerName: SFXBreak502
|
||||||
|
breakClipPath: event:/Props/impact_break
|
||||||
- EID: 503
|
- EID: 503
|
||||||
Name: Piece1
|
Name: Piece1
|
||||||
IsActive: false
|
IsActive: false
|
||||||
|
@ -5266,6 +5317,8 @@
|
||||||
Enabled: true
|
Enabled: true
|
||||||
threshHold: 0.100000001
|
threshHold: 0.100000001
|
||||||
ignoreRaccoon: false
|
ignoreRaccoon: false
|
||||||
|
breakClipHandlerName: SFXBreak507
|
||||||
|
breakClipPath: event:/Props/impact_break
|
||||||
- EID: 508
|
- EID: 508
|
||||||
Name: Piece1
|
Name: Piece1
|
||||||
IsActive: false
|
IsActive: false
|
||||||
|
@ -5475,6 +5528,8 @@
|
||||||
Enabled: true
|
Enabled: true
|
||||||
threshHold: 0.100000001
|
threshHold: 0.100000001
|
||||||
ignoreRaccoon: false
|
ignoreRaccoon: false
|
||||||
|
breakClipHandlerName: SFXBreak512
|
||||||
|
breakClipPath: event:/Props/impact_break
|
||||||
- EID: 513
|
- EID: 513
|
||||||
Name: Piece1
|
Name: Piece1
|
||||||
IsActive: false
|
IsActive: false
|
||||||
|
@ -5684,6 +5739,8 @@
|
||||||
Enabled: true
|
Enabled: true
|
||||||
threshHold: 0.100000001
|
threshHold: 0.100000001
|
||||||
ignoreRaccoon: false
|
ignoreRaccoon: false
|
||||||
|
breakClipHandlerName: SFXBreak517
|
||||||
|
breakClipPath: event:/Props/impact_break
|
||||||
- EID: 518
|
- EID: 518
|
||||||
Name: Piece1
|
Name: Piece1
|
||||||
IsActive: false
|
IsActive: false
|
||||||
|
@ -5725,7 +5782,7 @@
|
||||||
Rotation Offset: {x: 0, y: 0, z: 0}
|
Rotation Offset: {x: 0, y: 0, z: 0}
|
||||||
IsActive: false
|
IsActive: false
|
||||||
Scripts: ~
|
Scripts: ~
|
||||||
- EID: 519
|
- EID: 461
|
||||||
Name: Piece2
|
Name: Piece2
|
||||||
IsActive: false
|
IsActive: false
|
||||||
NumberOfChildren: 0
|
NumberOfChildren: 0
|
||||||
|
@ -5766,7 +5823,7 @@
|
||||||
Rotation Offset: {x: 0, y: 0, z: 0}
|
Rotation Offset: {x: 0, y: 0, z: 0}
|
||||||
IsActive: false
|
IsActive: false
|
||||||
Scripts: ~
|
Scripts: ~
|
||||||
- EID: 461
|
- EID: 460
|
||||||
Name: Piece3
|
Name: Piece3
|
||||||
IsActive: false
|
IsActive: false
|
||||||
NumberOfChildren: 0
|
NumberOfChildren: 0
|
||||||
|
@ -5807,7 +5864,7 @@
|
||||||
Rotation Offset: {x: 0, y: 0, z: 0}
|
Rotation Offset: {x: 0, y: 0, z: 0}
|
||||||
IsActive: false
|
IsActive: false
|
||||||
Scripts: ~
|
Scripts: ~
|
||||||
- EID: 460
|
- EID: 459
|
||||||
Name: Piece4
|
Name: Piece4
|
||||||
IsActive: false
|
IsActive: false
|
||||||
NumberOfChildren: 0
|
NumberOfChildren: 0
|
||||||
|
@ -5855,7 +5912,7 @@
|
||||||
Components: ~
|
Components: ~
|
||||||
Scripts: ~
|
Scripts: ~
|
||||||
- EID: 165
|
- EID: 165
|
||||||
Name: 1
|
Name: 0
|
||||||
IsActive: true
|
IsActive: true
|
||||||
NumberOfChildren: 0
|
NumberOfChildren: 0
|
||||||
Components:
|
Components:
|
||||||
|
@ -5866,7 +5923,7 @@
|
||||||
IsActive: true
|
IsActive: true
|
||||||
Scripts: ~
|
Scripts: ~
|
||||||
- EID: 164
|
- EID: 164
|
||||||
Name: 2
|
Name: 1
|
||||||
IsActive: true
|
IsActive: true
|
||||||
NumberOfChildren: 0
|
NumberOfChildren: 0
|
||||||
Components:
|
Components:
|
||||||
|
@ -5877,7 +5934,7 @@
|
||||||
IsActive: true
|
IsActive: true
|
||||||
Scripts: ~
|
Scripts: ~
|
||||||
- EID: 163
|
- EID: 163
|
||||||
Name: 3
|
Name: 2
|
||||||
IsActive: true
|
IsActive: true
|
||||||
NumberOfChildren: 0
|
NumberOfChildren: 0
|
||||||
Components:
|
Components:
|
||||||
|
@ -5888,7 +5945,7 @@
|
||||||
IsActive: true
|
IsActive: true
|
||||||
Scripts: ~
|
Scripts: ~
|
||||||
- EID: 162
|
- EID: 162
|
||||||
Name: 4
|
Name: 3
|
||||||
IsActive: true
|
IsActive: true
|
||||||
NumberOfChildren: 0
|
NumberOfChildren: 0
|
||||||
Components:
|
Components:
|
||||||
|
@ -5899,7 +5956,7 @@
|
||||||
IsActive: true
|
IsActive: true
|
||||||
Scripts: ~
|
Scripts: ~
|
||||||
- EID: 161
|
- EID: 161
|
||||||
Name: 5
|
Name: 4
|
||||||
IsActive: true
|
IsActive: true
|
||||||
NumberOfChildren: 0
|
NumberOfChildren: 0
|
||||||
Components:
|
Components:
|
||||||
|
@ -5910,7 +5967,7 @@
|
||||||
IsActive: true
|
IsActive: true
|
||||||
Scripts: ~
|
Scripts: ~
|
||||||
- EID: 160
|
- EID: 160
|
||||||
Name: 6
|
Name: 5
|
||||||
IsActive: true
|
IsActive: true
|
||||||
NumberOfChildren: 0
|
NumberOfChildren: 0
|
||||||
Components:
|
Components:
|
||||||
|
@ -5921,7 +5978,7 @@
|
||||||
IsActive: true
|
IsActive: true
|
||||||
Scripts: ~
|
Scripts: ~
|
||||||
- EID: 159
|
- EID: 159
|
||||||
Name: 7
|
Name: 6
|
||||||
IsActive: true
|
IsActive: true
|
||||||
NumberOfChildren: 0
|
NumberOfChildren: 0
|
||||||
Components:
|
Components:
|
||||||
|
@ -5937,7 +5994,7 @@
|
||||||
NumberOfChildren: 0
|
NumberOfChildren: 0
|
||||||
Components:
|
Components:
|
||||||
Transform Component:
|
Transform Component:
|
||||||
Translate: {x: 0.0576689839, y: 0, z: -2.61272359}
|
Translate: {x: -3.45969725, y: 0, z: -2.61272359}
|
||||||
Rotate: {x: -0, y: 0, z: -0}
|
Rotate: {x: -0, y: 0, z: -0}
|
||||||
Scale: {x: 1, y: 1, z: 1}
|
Scale: {x: 1, y: 1, z: 1}
|
||||||
IsActive: true
|
IsActive: true
|
||||||
|
@ -5975,12 +6032,13 @@
|
||||||
- Type: Homeowner1
|
- Type: Homeowner1
|
||||||
Enabled: true
|
Enabled: true
|
||||||
waypointsPool: 166
|
waypointsPool: 166
|
||||||
|
startWaypoint: 162
|
||||||
patrolSpeed: 3
|
patrolSpeed: 3
|
||||||
chaseSpeed: 6
|
chaseSpeed: 6
|
||||||
turningSpeed: 5
|
turningSpeed: 5
|
||||||
sightDistance: 8
|
sightDistance: 8
|
||||||
eyeOffset: [0, 1.64999998, 0]
|
eyeOffset: [0, 1.64999998, 0]
|
||||||
distanceToCapture: 0.5
|
distanceToCapture: 0.800000012
|
||||||
captureTime: 0.5
|
captureTime: 0.5
|
||||||
footstepSFXIntervalMultiplier: 0.5
|
footstepSFXIntervalMultiplier: 0.5
|
||||||
- EID: 12
|
- EID: 12
|
||||||
|
@ -6061,14 +6119,14 @@
|
||||||
Enabled: true
|
Enabled: true
|
||||||
- EID: 10
|
- EID: 10
|
||||||
Name: Pause Canvas
|
Name: Pause Canvas
|
||||||
IsActive: true
|
IsActive: false
|
||||||
NumberOfChildren: 4
|
NumberOfChildren: 4
|
||||||
Components:
|
Components:
|
||||||
Canvas Component:
|
Canvas Component:
|
||||||
Canvas Width: 1920
|
Canvas Width: 1920
|
||||||
Canvas Height: 1080
|
Canvas Height: 1080
|
||||||
Scale by canvas width: false
|
Scale by canvas width: false
|
||||||
IsActive: true
|
IsActive: false
|
||||||
Scripts: ~
|
Scripts: ~
|
||||||
- EID: 8
|
- EID: 8
|
||||||
Name: ResumeButton
|
Name: ResumeButton
|
||||||
|
@ -6110,7 +6168,7 @@
|
||||||
Components:
|
Components:
|
||||||
Transform Component:
|
Transform Component:
|
||||||
Translate: {x: 0, y: -300, z: 0}
|
Translate: {x: 0, y: -300, z: 0}
|
||||||
Rotate: {x: -4.5, y: 2, z: -2.5}
|
Rotate: {x: 0, y: 0, z: 0}
|
||||||
Scale: {x: 400, y: 100, z: 500}
|
Scale: {x: 400, y: 100, z: 500}
|
||||||
IsActive: true
|
IsActive: true
|
||||||
Renderable Component:
|
Renderable Component:
|
||||||
|
@ -6136,7 +6194,7 @@
|
||||||
onReleaseSound: event:/Music/player_undetected
|
onReleaseSound: event:/Music/player_undetected
|
||||||
hoverScale: 1.10000002
|
hoverScale: 1.10000002
|
||||||
clickScale: 0.899999976
|
clickScale: 0.899999976
|
||||||
- EID: 459
|
- EID: 458
|
||||||
Name: RetryButton
|
Name: RetryButton
|
||||||
IsActive: true
|
IsActive: true
|
||||||
NumberOfChildren: 0
|
NumberOfChildren: 0
|
||||||
|
@ -6175,14 +6233,15 @@
|
||||||
NumberOfChildren: 0
|
NumberOfChildren: 0
|
||||||
Components:
|
Components:
|
||||||
Transform Component:
|
Transform Component:
|
||||||
Translate: {x: -250, y: 300, z: 0}
|
Translate: {x: -250, y: 300, z: 0.100000001}
|
||||||
Rotate: {x: 0, y: 0, z: 0}
|
Rotate: {x: 0, y: 0, z: 0}
|
||||||
Scale: {x: 100, y: 100, z: 100}
|
Scale: {x: 100, y: 100, z: 100}
|
||||||
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: 10
|
Canvas ID: 10
|
||||||
|
@ -11912,7 +11971,7 @@
|
||||||
Rotation Offset: {x: 0, y: 0, z: 0}
|
Rotation Offset: {x: 0, y: 0, z: 0}
|
||||||
IsActive: true
|
IsActive: true
|
||||||
Scripts: ~
|
Scripts: ~
|
||||||
- EID: 458
|
- EID: 457
|
||||||
Name: Exterior
|
Name: Exterior
|
||||||
IsActive: true
|
IsActive: true
|
||||||
NumberOfChildren: 5
|
NumberOfChildren: 5
|
||||||
|
@ -14576,7 +14635,7 @@
|
||||||
Material: 131956078
|
Material: 131956078
|
||||||
IsActive: true
|
IsActive: true
|
||||||
Scripts: ~
|
Scripts: ~
|
||||||
- EID: 457
|
- EID: 174
|
||||||
Name: Exterior_Bush02
|
Name: Exterior_Bush02
|
||||||
IsActive: true
|
IsActive: true
|
||||||
NumberOfChildren: 0
|
NumberOfChildren: 0
|
||||||
|
@ -14591,7 +14650,7 @@
|
||||||
Material: 131956078
|
Material: 131956078
|
||||||
IsActive: true
|
IsActive: true
|
||||||
Scripts: ~
|
Scripts: ~
|
||||||
- EID: 174
|
- EID: 173
|
||||||
Name: Exterior_Bush01
|
Name: Exterior_Bush01
|
||||||
IsActive: true
|
IsActive: true
|
||||||
NumberOfChildren: 0
|
NumberOfChildren: 0
|
||||||
|
@ -14606,7 +14665,7 @@
|
||||||
Material: 131956078
|
Material: 131956078
|
||||||
IsActive: true
|
IsActive: true
|
||||||
Scripts: ~
|
Scripts: ~
|
||||||
- EID: 173
|
- EID: 172
|
||||||
Name: Exterior_Bush02
|
Name: Exterior_Bush02
|
||||||
IsActive: true
|
IsActive: true
|
||||||
NumberOfChildren: 0
|
NumberOfChildren: 0
|
||||||
|
@ -14621,7 +14680,7 @@
|
||||||
Material: 131956078
|
Material: 131956078
|
||||||
IsActive: true
|
IsActive: true
|
||||||
Scripts: ~
|
Scripts: ~
|
||||||
- EID: 172
|
- EID: 548
|
||||||
Name: TweenManager
|
Name: TweenManager
|
||||||
IsActive: true
|
IsActive: true
|
||||||
NumberOfChildren: 0
|
NumberOfChildren: 0
|
||||||
|
@ -14629,7 +14688,7 @@
|
||||||
Scripts:
|
Scripts:
|
||||||
- Type: SHADE_Scripting.UI.TweenManager
|
- Type: SHADE_Scripting.UI.TweenManager
|
||||||
Enabled: true
|
Enabled: true
|
||||||
- EID: 548
|
- EID: 549
|
||||||
Name: StealFoodCanvas
|
Name: StealFoodCanvas
|
||||||
IsActive: true
|
IsActive: true
|
||||||
NumberOfChildren: 1
|
NumberOfChildren: 1
|
||||||
|
@ -14640,7 +14699,7 @@
|
||||||
Scale by canvas width: false
|
Scale by canvas width: false
|
||||||
IsActive: true
|
IsActive: true
|
||||||
Scripts: ~
|
Scripts: ~
|
||||||
- EID: 549
|
- EID: 550
|
||||||
Name: StealFoodLogo
|
Name: StealFoodLogo
|
||||||
IsActive: true
|
IsActive: true
|
||||||
NumberOfChildren: 0
|
NumberOfChildren: 0
|
||||||
|
@ -14655,7 +14714,7 @@
|
||||||
Material: 127459277
|
Material: 127459277
|
||||||
IsActive: true
|
IsActive: true
|
||||||
UI Component:
|
UI Component:
|
||||||
Canvas ID: 548
|
Canvas ID: 549
|
||||||
Hovered: false
|
Hovered: false
|
||||||
Clicked: false
|
Clicked: false
|
||||||
IsActive: true
|
IsActive: true
|
||||||
|
@ -14668,7 +14727,7 @@
|
||||||
rotationAmt: 1800
|
rotationAmt: 1800
|
||||||
scaleAmtX: 538
|
scaleAmtX: 538
|
||||||
scaleAmtY: 377
|
scaleAmtY: 377
|
||||||
- EID: 550
|
- EID: 551
|
||||||
Name: TransitionCanvas
|
Name: TransitionCanvas
|
||||||
IsActive: true
|
IsActive: true
|
||||||
NumberOfChildren: 1
|
NumberOfChildren: 1
|
||||||
|
@ -14679,7 +14738,7 @@
|
||||||
Scale by canvas width: false
|
Scale by canvas width: false
|
||||||
IsActive: true
|
IsActive: true
|
||||||
Scripts: ~
|
Scripts: ~
|
||||||
- EID: 551
|
- EID: 552
|
||||||
Name: Transition
|
Name: Transition
|
||||||
IsActive: true
|
IsActive: true
|
||||||
NumberOfChildren: 0
|
NumberOfChildren: 0
|
||||||
|
@ -14694,7 +14753,7 @@
|
||||||
Material: 120016136
|
Material: 120016136
|
||||||
IsActive: true
|
IsActive: true
|
||||||
UI Component:
|
UI Component:
|
||||||
Canvas ID: 550
|
Canvas ID: 551
|
||||||
Hovered: false
|
Hovered: false
|
||||||
Clicked: false
|
Clicked: false
|
||||||
IsActive: true
|
IsActive: true
|
||||||
|
@ -14704,7 +14763,7 @@
|
||||||
alphaValue: 1
|
alphaValue: 1
|
||||||
fadeInTime: 0.5
|
fadeInTime: 0.5
|
||||||
fadeOutTime: 0.5
|
fadeOutTime: 0.5
|
||||||
- EID: 552
|
- EID: 553
|
||||||
Name: TweenManager
|
Name: TweenManager
|
||||||
IsActive: true
|
IsActive: true
|
||||||
NumberOfChildren: 0
|
NumberOfChildren: 0
|
||||||
|
@ -14712,7 +14771,7 @@
|
||||||
Scripts:
|
Scripts:
|
||||||
- Type: SHADE_Scripting.UI.TweenManager
|
- Type: SHADE_Scripting.UI.TweenManager
|
||||||
Enabled: true
|
Enabled: true
|
||||||
- EID: 553
|
- EID: 554
|
||||||
Name: CameraPoints
|
Name: CameraPoints
|
||||||
IsActive: true
|
IsActive: true
|
||||||
NumberOfChildren: 3
|
NumberOfChildren: 3
|
||||||
|
@ -14725,7 +14784,7 @@
|
||||||
endPoint3: [1.14999998, 2.20000005, 2]
|
endPoint3: [1.14999998, 2.20000005, 2]
|
||||||
playerCamera: 4
|
playerCamera: 4
|
||||||
duration: 3
|
duration: 3
|
||||||
- EID: 554
|
- EID: 555
|
||||||
Name: PreviewLevel1
|
Name: PreviewLevel1
|
||||||
IsActive: true
|
IsActive: true
|
||||||
NumberOfChildren: 0
|
NumberOfChildren: 0
|
||||||
|
@ -14747,7 +14806,7 @@
|
||||||
FOV: 90
|
FOV: 90
|
||||||
IsActive: true
|
IsActive: true
|
||||||
Scripts: ~
|
Scripts: ~
|
||||||
- EID: 555
|
- EID: 556
|
||||||
Name: PreviewLevel2
|
Name: PreviewLevel2
|
||||||
IsActive: true
|
IsActive: true
|
||||||
NumberOfChildren: 0
|
NumberOfChildren: 0
|
||||||
|
@ -14769,7 +14828,7 @@
|
||||||
FOV: 90
|
FOV: 90
|
||||||
IsActive: true
|
IsActive: true
|
||||||
Scripts: ~
|
Scripts: ~
|
||||||
- EID: 556
|
- EID: 557
|
||||||
Name: PreviewLevel3
|
Name: PreviewLevel3
|
||||||
IsActive: true
|
IsActive: true
|
||||||
NumberOfChildren: 0
|
NumberOfChildren: 0
|
||||||
|
|
|
@ -1100,7 +1100,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
|
||||||
|
@ -1131,23 +1135,23 @@
|
||||||
canvasToActivate: 0
|
canvasToActivate: 0
|
||||||
- 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
|
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: ~
|
Scripts: ~
|
||||||
- EID: 50
|
- EID: 50
|
||||||
Name: Level Select Canvas
|
Name: Level Select Canvas
|
||||||
|
|
|
@ -10,12 +10,9 @@
|
||||||
IsActive: true
|
IsActive: true
|
||||||
RigidBody Component:
|
RigidBody Component:
|
||||||
Type: Dynamic
|
Type: Dynamic
|
||||||
Auto Mass: false
|
|
||||||
Mass: 1
|
|
||||||
Drag: 0.00999999978
|
Drag: 0.00999999978
|
||||||
Angular Drag: 0.100000001
|
Angular Drag: 0.100000001
|
||||||
Use Gravity: true
|
Use Gravity: true
|
||||||
Gravity Scale: 1
|
|
||||||
Interpolate: false
|
Interpolate: false
|
||||||
Sleeping Enabled: true
|
Sleeping Enabled: true
|
||||||
Freeze Position X: false
|
Freeze Position X: false
|
||||||
|
@ -38,6 +35,10 @@
|
||||||
Rotation Offset: {x: 0, y: 0, z: 0}
|
Rotation Offset: {x: 0, y: 0, z: 0}
|
||||||
IsActive: true
|
IsActive: true
|
||||||
Scripts:
|
Scripts:
|
||||||
|
- Type: PhysicsTestObj
|
||||||
|
Enabled: true
|
||||||
|
forceAmount: 50
|
||||||
|
torqueAmount: 500
|
||||||
- Type: CollisionTest
|
- Type: CollisionTest
|
||||||
Enabled: true
|
Enabled: true
|
||||||
- EID: 1
|
- EID: 1
|
||||||
|
@ -74,10 +75,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
|
||||||
|
@ -172,6 +173,43 @@
|
||||||
Rotation Offset: {x: 0, y: 0, z: 0}
|
Rotation Offset: {x: 0, y: 0, z: 0}
|
||||||
IsActive: true
|
IsActive: true
|
||||||
Scripts: ~
|
Scripts: ~
|
||||||
|
- EID: 7
|
||||||
|
Name: Default
|
||||||
|
IsActive: true
|
||||||
|
NumberOfChildren: 0
|
||||||
|
Components:
|
||||||
|
Transform Component:
|
||||||
|
Translate: {x: 0, y: 0, z: 3}
|
||||||
|
Rotate: {x: 0, y: 0, z: 0}
|
||||||
|
Scale: {x: 1, y: 1, z: 1}
|
||||||
|
IsActive: true
|
||||||
|
RigidBody Component:
|
||||||
|
Type: Dynamic
|
||||||
|
Drag: 0.00999999978
|
||||||
|
Angular Drag: 0.100000001
|
||||||
|
Use Gravity: true
|
||||||
|
Interpolate: true
|
||||||
|
Sleeping Enabled: true
|
||||||
|
Freeze Position X: false
|
||||||
|
Freeze Position Y: false
|
||||||
|
Freeze Position Z: false
|
||||||
|
Freeze Rotation X: false
|
||||||
|
Freeze Rotation Y: false
|
||||||
|
Freeze Rotation Z: false
|
||||||
|
IsActive: true
|
||||||
|
Collider Component:
|
||||||
|
Colliders:
|
||||||
|
- Is Trigger: false
|
||||||
|
Collision Tag: 1
|
||||||
|
Type: Box
|
||||||
|
Half Extents: {x: 1, y: 1, z: 1}
|
||||||
|
Friction: 0.400000006
|
||||||
|
Bounciness: 0
|
||||||
|
Density: 1
|
||||||
|
Position Offset: {x: 0, y: 0, z: 0}
|
||||||
|
Rotation Offset: {x: 0, y: 0, z: 0}
|
||||||
|
IsActive: true
|
||||||
|
Scripts: ~
|
||||||
- EID: 8
|
- EID: 8
|
||||||
Name: Target
|
Name: Target
|
||||||
IsActive: true
|
IsActive: true
|
||||||
|
|
|
@ -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
|
|
@ -1,4 +1,4 @@
|
||||||
/*********************************************************************
|
/*********************************************************************
|
||||||
* \file Homeowner1.cs
|
* \file Homeowner1.cs
|
||||||
* \author Ryan Wang Nian Jing
|
* \author Ryan Wang Nian Jing
|
||||||
* \brief The implemented behaviour tree for the homeowner
|
* \brief The implemented behaviour tree for the homeowner
|
||||||
|
@ -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();
|
||||||
|
|
||||||
|
|
|
@ -1,4 +1,4 @@
|
||||||
/*********************************************************************
|
/*********************************************************************
|
||||||
* \file LeafAttack.cs
|
* \file LeafAttack.cs
|
||||||
* \author Ryan Wang Nian Jing
|
* \author Ryan Wang Nian Jing
|
||||||
* \brief Leaf node implementation for AI attacking the player
|
* \brief Leaf node implementation for AI attacking the player
|
||||||
|
@ -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;
|
||||||
|
|
|
@ -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());
|
||||||
|
|
||||||
|
|
|
@ -1,4 +1,4 @@
|
||||||
using SHADE;
|
using SHADE;
|
||||||
using SHADE_Scripting.Audio;
|
using SHADE_Scripting.Audio;
|
||||||
using System;
|
using System;
|
||||||
using System.Collections.Generic;
|
using System.Collections.Generic;
|
||||||
|
@ -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);
|
||||||
}
|
}
|
||||||
}
|
}
|
|
@ -1,4 +1,4 @@
|
||||||
using SHADE;
|
using SHADE;
|
||||||
using SHADE_Scripting.Audio;
|
using SHADE_Scripting.Audio;
|
||||||
using System;
|
using System;
|
||||||
public class Item : Script
|
public class Item : Script
|
||||||
|
@ -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)
|
||||||
|
|
|
@ -76,9 +76,9 @@ 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")}";
|
||||||
}
|
}
|
||||||
|
|
||||||
protected override void start()
|
protected override void start()
|
||||||
|
@ -91,10 +91,6 @@ public class GameManager : Script
|
||||||
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");
|
|
||||||
AudioHandler.audioClipHandlers["SFXHumming"].SetVolume(0.15f);
|
|
||||||
AudioHandler.audioClipHandlers["SFXHumming"].Play();
|
|
||||||
|
|
||||||
if (SceneFadeInOut.Instance != null)
|
if (SceneFadeInOut.Instance != null)
|
||||||
SceneFadeInOut.Instance.CallFadeOut();
|
SceneFadeInOut.Instance.CallFadeOut();
|
||||||
Application.IsCursorVisible = false;
|
Application.IsCursorVisible = false;
|
||||||
|
@ -105,7 +101,7 @@ public class GameManager : Script
|
||||||
if (GamePause || !stealFoodPopUpDone)
|
if (GamePause || !stealFoodPopUpDone)
|
||||||
{
|
{
|
||||||
Input.SetMouseCentering(false);
|
Input.SetMouseCentering(false);
|
||||||
//Application.IsCursorVisible = true;
|
Application.IsCursorVisible = true;
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -117,12 +113,10 @@ public class GameManager : Script
|
||||||
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)
|
||||||
|
@ -197,7 +191,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;
|
||||||
|
@ -205,9 +198,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;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -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) );
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
|
@ -16,8 +16,8 @@ public class EndScene : Script
|
||||||
|
|
||||||
protected override void start()
|
protected override void start()
|
||||||
{
|
{
|
||||||
Input.SetMouseCentering(false);
|
|
||||||
Debug.Log("EndScene::Start():");
|
Debug.Log("EndScene::Start():");
|
||||||
|
Input.SetMouseCentering(false);
|
||||||
Application.IsCursorVisible = true;
|
Application.IsCursorVisible = true;
|
||||||
SceneFadeInOut.Instance.CallFadeOut();
|
SceneFadeInOut.Instance.CallFadeOut();
|
||||||
}
|
}
|
||||||
|
|
|
@ -24,8 +24,8 @@ public class MainMenu : Script
|
||||||
|
|
||||||
protected override void start()
|
protected override void start()
|
||||||
{
|
{
|
||||||
Input.SetMouseCentering(false);
|
//Input.SetMouseCentering(false);
|
||||||
Application.IsCursorVisible = true;
|
//Application.IsCursorVisible = true;
|
||||||
SceneFadeInOut.Instance.CallFadeOut();
|
SceneFadeInOut.Instance.CallFadeOut();
|
||||||
}
|
}
|
||||||
protected override void update()
|
protected override void update()
|
||||||
|
|
|
@ -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;
|
||||||
|
@ -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,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
|
|
@ -338,7 +338,7 @@ namespace SHADE
|
||||||
ImGui::PushID(SHFamilyID<SHComponent>::GetID<SHColliderComponent>());
|
ImGui::PushID(SHFamilyID<SHComponent>::GetID<SHColliderComponent>());
|
||||||
std::vector<const char*> collisionTagNames(SHCollisionTag::NUM_LAYERS);
|
std::vector<const char*> collisionTagNames(SHCollisionTag::NUM_LAYERS);
|
||||||
//Fetch tag names
|
//Fetch tag names
|
||||||
for(int i{}; i < SHCollisionTag::NUM_LAYERS; ++i)
|
for (int i{}; i < SHCollisionTag::NUM_LAYERS; ++i)
|
||||||
{
|
{
|
||||||
collisionTagNames[i] = SHCollisionTagMatrix::GetTagName(i).c_str();
|
collisionTagNames[i] = SHCollisionTagMatrix::GetTagName(i).c_str();
|
||||||
}
|
}
|
||||||
|
@ -362,11 +362,11 @@ namespace SHADE
|
||||||
SHCollisionShape* shape = component->GetCollisionShape(i);
|
SHCollisionShape* shape = component->GetCollisionShape(i);
|
||||||
auto cursorPos = ImGui::GetCursorPos();
|
auto cursorPos = ImGui::GetCursorPos();
|
||||||
|
|
||||||
|
|
||||||
if (shape->GetType() == SHCollisionShape::Type::BOX)
|
if (shape->GetType() == SHCollisionShape::Type::BOX)
|
||||||
{
|
{
|
||||||
SHEditorWidgets::BeginPanel(std::format("{} Box #{}", ICON_FA_CUBE, i).data(), { ImGui::GetContentRegionAvail().x, ImGui::GetContentRegionAvail().y });
|
SHEditorWidgets::BeginPanel(std::format("{} Box #{}", ICON_FA_CUBE, i).data(), { ImGui::GetContentRegionAvail().x, ImGui::GetContentRegionAvail().y });
|
||||||
|
|
||||||
auto* box = reinterpret_cast<SHBox*>(shape);
|
auto* box = reinterpret_cast<SHBox*>(shape);
|
||||||
SHEditorWidgets::DragVec3
|
SHEditorWidgets::DragVec3
|
||||||
(
|
(
|
||||||
|
@ -387,68 +387,73 @@ namespace SHADE
|
||||||
else if (shape->GetType() == SHCollisionShape::Type::CAPSULE)
|
else if (shape->GetType() == SHCollisionShape::Type::CAPSULE)
|
||||||
{
|
{
|
||||||
|
|
||||||
}
|
//}
|
||||||
|
|
||||||
{
|
|
||||||
SHEditorWidgets::CheckBox("Is Trigger", [shape] { return shape->IsTrigger(); }, [shape](bool value) { shape->SetIsTrigger(value); });
|
|
||||||
SHEditorWidgets::ComboBox("Tag", collisionTagNames, [shape]{return SHCollisionTagMatrix::GetTagIndex(shape->GetCollisionTag().GetName());}, [shape](int const& value){shape->SetCollisionTag(SHCollisionTagMatrix::GetTag(value));});
|
|
||||||
|
|
||||||
if(ImGui::CollapsingHeader("Physics Material"))
|
|
||||||
{
|
{
|
||||||
SHEditorWidgets::DragFloat("Friction", [shape] { return shape->GetFriction(); }, [shape](float value) { shape->SetFriction(value); }, "Friction", 0.05f, 0.0f, 1.0f);
|
SHEditorWidgets::CheckBox("Is Trigger", [shape] { return shape->IsTrigger(); }, [shape](bool value) { shape->SetIsTrigger(value); });
|
||||||
SHEditorWidgets::DragFloat("Bounciness", [shape] { return shape->GetBounciness(); }, [shape](float value) { shape->SetBounciness(value); }, "Bounciness", 0.05f, 0.0f, 1.0f);
|
SHEditorWidgets::ComboBox("Tag", collisionTagNames, [shape] {return SHCollisionTagMatrix::GetTagIndex(shape->GetCollisionTag().GetName()); }, [shape](int const& value) {shape->SetCollisionTag(SHCollisionTagMatrix::GetTag(value)); });
|
||||||
SHEditorWidgets::DragFloat("Mass Density", [shape] { return shape->GetDensity(); }, [shape](float value) { shape->SetDensity(value); }, "Mass Density", 0.1f, 0.0f);
|
|
||||||
|
if (ImGui::CollapsingHeader("Physics Material"))
|
||||||
|
{
|
||||||
|
SHEditorWidgets::DragFloat("Friction", [shape] { return shape->GetFriction(); }, [shape](float value) { shape->SetFriction(value); }, "Friction", 0.05f, 0.0f, 1.0f);
|
||||||
|
SHEditorWidgets::DragFloat("Bounciness", [shape] { return shape->GetBounciness(); }, [shape](float value) { shape->SetBounciness(value); }, "Bounciness", 0.05f, 0.0f, 1.0f);
|
||||||
|
SHEditorWidgets::DragFloat("Mass Density", [shape] { return shape->GetDensity(); }, [shape](float value) { shape->SetDensity(value); }, "Mass Density", 0.1f, 0.0f);
|
||||||
|
}
|
||||||
|
|
||||||
|
SHEditorWidgets::BeginPanel("Offsets", { ImGui::GetContentRegionAvail().x, 30.0f });
|
||||||
|
SHEditorWidgets::DragVec3("Position", { "X", "Y", "Z" }, [&shape] {return shape->GetPositionOffset(); }, [&shape](SHVec3 const& vec) {shape->SetPositionOffset(vec); });
|
||||||
|
SHEditorWidgets::DragVec3("Rotation", { "X", "Y", "Z" },
|
||||||
|
[&shape]
|
||||||
|
{
|
||||||
|
auto offset = shape->GetRotationOffset();
|
||||||
|
return offset;
|
||||||
|
},
|
||||||
|
[&shape](SHVec3 const& vec)
|
||||||
|
{
|
||||||
|
shape->SetRotationOffset(vec);
|
||||||
|
}, true);
|
||||||
|
SHEditorWidgets::EndPanel();
|
||||||
}
|
}
|
||||||
|
|
||||||
SHEditorWidgets::BeginPanel("Offsets",{ ImGui::GetContentRegionAvail().x, 30.0f });
|
if (ImGui::Button(std::format("{} Remove Collider #{}", ICON_MD_REMOVE, i).data()))
|
||||||
SHEditorWidgets::DragVec3("Position", { "X", "Y", "Z" }, [&shape] {return shape->GetPositionOffset(); }, [&shape](SHVec3 const& vec) {shape->SetPositionOffset(vec); });
|
|
||||||
SHEditorWidgets::DragVec3("Rotation", { "X", "Y", "Z" },
|
|
||||||
[&shape]
|
|
||||||
{
|
{
|
||||||
auto offset = shape->GetRotationOffset();
|
colliderToDelete = i;
|
||||||
return offset;
|
}
|
||||||
},
|
|
||||||
[&shape](SHVec3 const& vec)
|
|
||||||
{
|
|
||||||
shape->SetRotationOffset(vec);
|
|
||||||
}, true);
|
|
||||||
SHEditorWidgets::EndPanel();
|
SHEditorWidgets::EndPanel();
|
||||||
|
ImGui::PopID();
|
||||||
}
|
}
|
||||||
|
if (colliderToDelete.has_value())
|
||||||
if (ImGui::Button(std::format("{} Remove Collider #{}", ICON_MD_REMOVE, i).data()))
|
|
||||||
{
|
{
|
||||||
colliderToDelete = i;
|
component->GetCollider()->RemoveCollisionShape(colliderToDelete.value());
|
||||||
}
|
}
|
||||||
|
ImGui::EndChild();
|
||||||
|
|
||||||
SHEditorWidgets::EndPanel();
|
// TODO: Handle differences between composite & hull collider
|
||||||
ImGui::PopID();
|
if (ImGui::BeginMenu("Add Collider"))
|
||||||
}
|
|
||||||
if (colliderToDelete.has_value())
|
|
||||||
{
|
|
||||||
component->GetCollider()->RemoveCollisionShape(colliderToDelete.value());
|
|
||||||
}
|
|
||||||
ImGui::EndChild();
|
|
||||||
|
|
||||||
// TODO: Handle differences between composite & hull collider
|
|
||||||
if (ImGui::BeginMenu("Add Collider"))
|
|
||||||
{
|
|
||||||
int newColl = -1;
|
|
||||||
|
|
||||||
if (ImGui::Selectable("Box Collider"))
|
|
||||||
{
|
{
|
||||||
auto* compositeCollider = reinterpret_cast<SHCompositeCollider* const>(component->GetCollider());
|
int newColl = -1;
|
||||||
compositeCollider->AddBoxCollisionShape(SHVec3::One);
|
|
||||||
}
|
|
||||||
if (ImGui::Selectable("Sphere Collider"))
|
|
||||||
{
|
|
||||||
auto* compositeCollider = reinterpret_cast<SHCompositeCollider* const>(component->GetCollider());
|
|
||||||
compositeCollider->AddSphereCollisionShape(1.0f);
|
|
||||||
}
|
|
||||||
|
|
||||||
ImGui::EndMenu();
|
if (ImGui::Selectable("Box Collider"))
|
||||||
|
{
|
||||||
|
auto* compositeCollider = reinterpret_cast<SHCompositeCollider* const>(component->GetCollider());
|
||||||
|
compositeCollider->AddBoxCollisionShape(SHVec3::One);
|
||||||
|
}
|
||||||
|
if (ImGui::Selectable("Sphere Collider"))
|
||||||
|
{
|
||||||
|
auto* compositeCollider = reinterpret_cast<SHCompositeCollider* const>(component->GetCollider());
|
||||||
|
compositeCollider->AddSphereCollisionShape(1.0f);
|
||||||
|
}
|
||||||
|
|
||||||
|
ImGui::EndMenu();
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
else DrawContextMenu(component);
|
else
|
||||||
|
{
|
||||||
|
DrawContextMenu(component);
|
||||||
|
}
|
||||||
|
|
||||||
ImGui::PopID();
|
ImGui::PopID();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -19,6 +19,7 @@ of DigiPen Institute of Technology is prohibited.
|
||||||
#include "Assets/NativeAsset.hxx"
|
#include "Assets/NativeAsset.hxx"
|
||||||
#include "Utility/Convert.hxx"
|
#include "Utility/Convert.hxx"
|
||||||
|
|
||||||
|
|
||||||
namespace SHADE
|
namespace SHADE
|
||||||
{
|
{
|
||||||
/*---------------------------------------------------------------------------------*/
|
/*---------------------------------------------------------------------------------*/
|
||||||
|
@ -55,4 +56,16 @@ namespace SHADE
|
||||||
GetNativeComponent()->SetFont(value.NativeObject);
|
GetNativeComponent()->SetFont(value.NativeObject);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Color TextRenderable::TextColor::get()
|
||||||
|
{
|
||||||
|
return Convert::ToCLI(GetNativeComponent()->GetColor());
|
||||||
|
}
|
||||||
|
|
||||||
|
void TextRenderable::TextColor::set(Color value)
|
||||||
|
{
|
||||||
|
GetNativeComponent()->SetColor(Convert::ToNative(value));
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
|
@ -60,6 +60,13 @@ namespace SHADE
|
||||||
FontAsset get();
|
FontAsset get();
|
||||||
void set(FontAsset value);
|
void set(FontAsset value);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
property Color TextColor
|
||||||
|
{
|
||||||
|
Color get();
|
||||||
|
void set(Color value);
|
||||||
|
}
|
||||||
|
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -22,6 +22,7 @@ namespace SHADE
|
||||||
: Component(entity)
|
: Component(entity)
|
||||||
{}
|
{}
|
||||||
|
|
||||||
|
|
||||||
/*-----------------------------------------------------------------------------------*/
|
/*-----------------------------------------------------------------------------------*/
|
||||||
/* Properties */
|
/* Properties */
|
||||||
/*-----------------------------------------------------------------------------------*/
|
/*-----------------------------------------------------------------------------------*/
|
||||||
|
|
|
@ -77,7 +77,7 @@ namespace SHADE
|
||||||
}
|
}
|
||||||
void Application::IsCursorVisible::set(bool value)
|
void Application::IsCursorVisible::set(bool value)
|
||||||
{
|
{
|
||||||
SHWindow::SetMouseVisible(value);
|
//SHWindow::SetMouseVisible(value);
|
||||||
}
|
}
|
||||||
/*---------------------------------------------------------------------------------*/
|
/*---------------------------------------------------------------------------------*/
|
||||||
/* Usage Functions */
|
/* Usage Functions */
|
||||||
|
|
|
@ -149,7 +149,7 @@ namespace SHADE
|
||||||
|
|
||||||
void Input::SetMouseCentering(bool state)
|
void Input::SetMouseCentering(bool state)
|
||||||
{
|
{
|
||||||
SHInputManager::SetMouseCentering(state);
|
//SHInputManager::SetMouseCentering(state);
|
||||||
}
|
}
|
||||||
|
|
||||||
bool Input::GetMouseCentering()
|
bool Input::GetMouseCentering()
|
||||||
|
|
Loading…
Reference in New Issue