imported grappling files
This commit is contained in:
parent
d85910fbb2
commit
5a1ab041de
55
.vscode/settings.json
vendored
Normal file
55
.vscode/settings.json
vendored
Normal file
@ -0,0 +1,55 @@
|
||||
{
|
||||
"files.exclude":
|
||||
{
|
||||
"**/.DS_Store":true,
|
||||
"**/.git":true,
|
||||
"**/.gitmodules":true,
|
||||
"**/*.booproj":true,
|
||||
"**/*.pidb":true,
|
||||
"**/*.suo":true,
|
||||
"**/*.user":true,
|
||||
"**/*.userprefs":true,
|
||||
"**/*.unityproj":true,
|
||||
"**/*.dll":true,
|
||||
"**/*.exe":true,
|
||||
"**/*.pdf":true,
|
||||
"**/*.mid":true,
|
||||
"**/*.midi":true,
|
||||
"**/*.wav":true,
|
||||
"**/*.gif":true,
|
||||
"**/*.ico":true,
|
||||
"**/*.jpg":true,
|
||||
"**/*.jpeg":true,
|
||||
"**/*.png":true,
|
||||
"**/*.psd":true,
|
||||
"**/*.tga":true,
|
||||
"**/*.tif":true,
|
||||
"**/*.tiff":true,
|
||||
"**/*.3ds":true,
|
||||
"**/*.3DS":true,
|
||||
"**/*.fbx":true,
|
||||
"**/*.FBX":true,
|
||||
"**/*.lxo":true,
|
||||
"**/*.LXO":true,
|
||||
"**/*.ma":true,
|
||||
"**/*.MA":true,
|
||||
"**/*.obj":true,
|
||||
"**/*.OBJ":true,
|
||||
"**/*.asset":true,
|
||||
"**/*.cubemap":true,
|
||||
"**/*.flare":true,
|
||||
"**/*.mat":true,
|
||||
"**/*.meta":true,
|
||||
"**/*.prefab":true,
|
||||
"**/*.unity":true,
|
||||
"build/":true,
|
||||
"Build/":true,
|
||||
"Library/":true,
|
||||
"library/":true,
|
||||
"obj/":true,
|
||||
"Obj/":true,
|
||||
"ProjectSettings/":true,
|
||||
"temp/":true,
|
||||
"Temp/":true
|
||||
}
|
||||
}
|
BIN
Assets/.DS_Store
vendored
Normal file
BIN
Assets/.DS_Store
vendored
Normal file
Binary file not shown.
8
Assets/Animations.meta
Normal file
8
Assets/Animations.meta
Normal file
@ -0,0 +1,8 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 667c598e8f735474d8483ecc87d486ca
|
||||
folderAsset: yes
|
||||
DefaultImporter:
|
||||
externalObjects: {}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
241
Assets/Animations/Pin.anim
Normal file
241
Assets/Animations/Pin.anim
Normal file
@ -0,0 +1,241 @@
|
||||
%YAML 1.1
|
||||
%TAG !u! tag:unity3d.com,2011:
|
||||
--- !u!74 &7400000
|
||||
AnimationClip:
|
||||
m_ObjectHideFlags: 0
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
m_Name: Pin
|
||||
serializedVersion: 6
|
||||
m_Legacy: 0
|
||||
m_Compressed: 0
|
||||
m_UseHighQualityCurve: 1
|
||||
m_RotationCurves: []
|
||||
m_CompressedRotationCurves: []
|
||||
m_EulerCurves: []
|
||||
m_PositionCurves: []
|
||||
m_ScaleCurves:
|
||||
- curve:
|
||||
serializedVersion: 2
|
||||
m_Curve:
|
||||
- serializedVersion: 3
|
||||
time: 0
|
||||
value: {x: 0.04, y: 0.04, z: 0.04}
|
||||
inSlope: {x: 0, y: 0, z: 0}
|
||||
outSlope: {x: 0, y: 0, z: 0}
|
||||
tangentMode: 0
|
||||
weightedMode: 0
|
||||
inWeight: {x: 0.33333334, y: 0.33333334, z: 0.33333334}
|
||||
outWeight: {x: 0.33333334, y: 0.33333334, z: 0.33333334}
|
||||
- serializedVersion: 3
|
||||
time: 0.2
|
||||
value: {x: 0.06, y: 0.06, z: 0.06}
|
||||
inSlope: {x: 0, y: 0, z: 0}
|
||||
outSlope: {x: 0, y: 0, z: 0}
|
||||
tangentMode: 0
|
||||
weightedMode: 0
|
||||
inWeight: {x: 0.33333334, y: 0.33333334, z: 0.33333334}
|
||||
outWeight: {x: 0.33333334, y: 0.33333334, z: 0.33333334}
|
||||
- serializedVersion: 3
|
||||
time: 0.4
|
||||
value: {x: 0.02, y: 0.02, z: 0.02}
|
||||
inSlope: {x: 0, y: 0, z: 0}
|
||||
outSlope: {x: 0, y: 0, z: 0}
|
||||
tangentMode: 0
|
||||
weightedMode: 0
|
||||
inWeight: {x: 0.33333334, y: 0.33333334, z: 0.33333334}
|
||||
outWeight: {x: 0.33333334, y: 0.33333334, z: 0.33333334}
|
||||
- serializedVersion: 3
|
||||
time: 0.6
|
||||
value: {x: 0.04, y: 0.04, z: 0.04}
|
||||
inSlope: {x: 0, y: 0, z: 0}
|
||||
outSlope: {x: 0, y: 0, z: 0}
|
||||
tangentMode: 0
|
||||
weightedMode: 0
|
||||
inWeight: {x: 0.33333334, y: 0.33333334, z: 0.33333334}
|
||||
outWeight: {x: 0.33333334, y: 0.33333334, z: 0.33333334}
|
||||
m_PreInfinity: 2
|
||||
m_PostInfinity: 2
|
||||
m_RotationOrder: 4
|
||||
path:
|
||||
m_FloatCurves: []
|
||||
m_PPtrCurves: []
|
||||
m_SampleRate: 10
|
||||
m_WrapMode: 0
|
||||
m_Bounds:
|
||||
m_Center: {x: 0, y: 0, z: 0}
|
||||
m_Extent: {x: 0, y: 0, z: 0}
|
||||
m_ClipBindingConstant:
|
||||
genericBindings:
|
||||
- serializedVersion: 2
|
||||
path: 0
|
||||
attribute: 3
|
||||
script: {fileID: 0}
|
||||
typeID: 4
|
||||
customType: 0
|
||||
isPPtrCurve: 0
|
||||
pptrCurveMapping: []
|
||||
m_AnimationClipSettings:
|
||||
serializedVersion: 2
|
||||
m_AdditiveReferencePoseClip: {fileID: 0}
|
||||
m_AdditiveReferencePoseTime: 0
|
||||
m_StartTime: 0
|
||||
m_StopTime: 0.6
|
||||
m_OrientationOffsetY: 0
|
||||
m_Level: 0
|
||||
m_CycleOffset: 0
|
||||
m_HasAdditiveReferencePose: 0
|
||||
m_LoopTime: 0
|
||||
m_LoopBlend: 0
|
||||
m_LoopBlendOrientation: 0
|
||||
m_LoopBlendPositionY: 0
|
||||
m_LoopBlendPositionXZ: 0
|
||||
m_KeepOriginalOrientation: 0
|
||||
m_KeepOriginalPositionY: 1
|
||||
m_KeepOriginalPositionXZ: 0
|
||||
m_HeightFromFeet: 0
|
||||
m_Mirror: 0
|
||||
m_EditorCurves:
|
||||
- curve:
|
||||
serializedVersion: 2
|
||||
m_Curve:
|
||||
- serializedVersion: 3
|
||||
time: 0
|
||||
value: 0.04
|
||||
inSlope: 0
|
||||
outSlope: 0
|
||||
tangentMode: 136
|
||||
weightedMode: 0
|
||||
inWeight: 0.33333334
|
||||
outWeight: 0.33333334
|
||||
- serializedVersion: 3
|
||||
time: 0.2
|
||||
value: 0.06
|
||||
inSlope: 0
|
||||
outSlope: 0
|
||||
tangentMode: 136
|
||||
weightedMode: 0
|
||||
inWeight: 0.33333334
|
||||
outWeight: 0.33333334
|
||||
- serializedVersion: 3
|
||||
time: 0.4
|
||||
value: 0.02
|
||||
inSlope: 0
|
||||
outSlope: 0
|
||||
tangentMode: 136
|
||||
weightedMode: 0
|
||||
inWeight: 0.33333334
|
||||
outWeight: 0.33333334
|
||||
- serializedVersion: 3
|
||||
time: 0.6
|
||||
value: 0.04
|
||||
inSlope: 0
|
||||
outSlope: 0
|
||||
tangentMode: 136
|
||||
weightedMode: 0
|
||||
inWeight: 0.33333334
|
||||
outWeight: 0.33333334
|
||||
m_PreInfinity: 2
|
||||
m_PostInfinity: 2
|
||||
m_RotationOrder: 4
|
||||
attribute: m_LocalScale.x
|
||||
path:
|
||||
classID: 4
|
||||
script: {fileID: 0}
|
||||
- curve:
|
||||
serializedVersion: 2
|
||||
m_Curve:
|
||||
- serializedVersion: 3
|
||||
time: 0
|
||||
value: 0.04
|
||||
inSlope: 0
|
||||
outSlope: 0
|
||||
tangentMode: 136
|
||||
weightedMode: 0
|
||||
inWeight: 0.33333334
|
||||
outWeight: 0.33333334
|
||||
- serializedVersion: 3
|
||||
time: 0.2
|
||||
value: 0.06
|
||||
inSlope: 0
|
||||
outSlope: 0
|
||||
tangentMode: 136
|
||||
weightedMode: 0
|
||||
inWeight: 0.33333334
|
||||
outWeight: 0.33333334
|
||||
- serializedVersion: 3
|
||||
time: 0.4
|
||||
value: 0.02
|
||||
inSlope: 0
|
||||
outSlope: 0
|
||||
tangentMode: 136
|
||||
weightedMode: 0
|
||||
inWeight: 0.33333334
|
||||
outWeight: 0.33333334
|
||||
- serializedVersion: 3
|
||||
time: 0.6
|
||||
value: 0.04
|
||||
inSlope: 0
|
||||
outSlope: 0
|
||||
tangentMode: 136
|
||||
weightedMode: 0
|
||||
inWeight: 0.33333334
|
||||
outWeight: 0.33333334
|
||||
m_PreInfinity: 2
|
||||
m_PostInfinity: 2
|
||||
m_RotationOrder: 4
|
||||
attribute: m_LocalScale.y
|
||||
path:
|
||||
classID: 4
|
||||
script: {fileID: 0}
|
||||
- curve:
|
||||
serializedVersion: 2
|
||||
m_Curve:
|
||||
- serializedVersion: 3
|
||||
time: 0
|
||||
value: 0.04
|
||||
inSlope: 0
|
||||
outSlope: 0
|
||||
tangentMode: 136
|
||||
weightedMode: 0
|
||||
inWeight: 0.33333334
|
||||
outWeight: 0.33333334
|
||||
- serializedVersion: 3
|
||||
time: 0.2
|
||||
value: 0.06
|
||||
inSlope: 0
|
||||
outSlope: 0
|
||||
tangentMode: 136
|
||||
weightedMode: 0
|
||||
inWeight: 0.33333334
|
||||
outWeight: 0.33333334
|
||||
- serializedVersion: 3
|
||||
time: 0.4
|
||||
value: 0.02
|
||||
inSlope: 0
|
||||
outSlope: 0
|
||||
tangentMode: 136
|
||||
weightedMode: 0
|
||||
inWeight: 0.33333334
|
||||
outWeight: 0.33333334
|
||||
- serializedVersion: 3
|
||||
time: 0.6
|
||||
value: 0.04
|
||||
inSlope: 0
|
||||
outSlope: 0
|
||||
tangentMode: 136
|
||||
weightedMode: 0
|
||||
inWeight: 0.33333334
|
||||
outWeight: 0.33333334
|
||||
m_PreInfinity: 2
|
||||
m_PostInfinity: 2
|
||||
m_RotationOrder: 4
|
||||
attribute: m_LocalScale.z
|
||||
path:
|
||||
classID: 4
|
||||
script: {fileID: 0}
|
||||
m_EulerEditorCurves: []
|
||||
m_HasGenericRootTransform: 0
|
||||
m_HasMotionFloatCurves: 0
|
||||
m_Events: []
|
8
Assets/Animations/Pin.anim.meta
Normal file
8
Assets/Animations/Pin.anim.meta
Normal file
@ -0,0 +1,8 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 0ea43266aa9544629b413d7e73df1fdc
|
||||
NativeFormatImporter:
|
||||
externalObjects: {}
|
||||
mainObjectFileID: 0
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
199
Assets/Animations/Spin.anim
Normal file
199
Assets/Animations/Spin.anim
Normal file
@ -0,0 +1,199 @@
|
||||
%YAML 1.1
|
||||
%TAG !u! tag:unity3d.com,2011:
|
||||
--- !u!74 &7400000
|
||||
AnimationClip:
|
||||
m_ObjectHideFlags: 0
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
m_Name: Spin
|
||||
serializedVersion: 6
|
||||
m_Legacy: 0
|
||||
m_Compressed: 0
|
||||
m_UseHighQualityCurve: 1
|
||||
m_RotationCurves: []
|
||||
m_CompressedRotationCurves: []
|
||||
m_EulerCurves:
|
||||
- curve:
|
||||
serializedVersion: 2
|
||||
m_Curve:
|
||||
- serializedVersion: 3
|
||||
time: 0
|
||||
value: {x: 0, y: 0, z: 0}
|
||||
inSlope: {x: 0, y: 0, z: 0}
|
||||
outSlope: {x: 0, y: 0, z: -450}
|
||||
tangentMode: 0
|
||||
weightedMode: 0
|
||||
inWeight: {x: 0.33333334, y: 0.33333334, z: 0.33333334}
|
||||
outWeight: {x: 0.33333334, y: 0.33333334, z: 0.33333334}
|
||||
- serializedVersion: 3
|
||||
time: 0.8
|
||||
value: {x: 0, y: 0, z: -360}
|
||||
inSlope: {x: 0, y: 0, z: -450}
|
||||
outSlope: {x: 0, y: 0, z: 0}
|
||||
tangentMode: 0
|
||||
weightedMode: 0
|
||||
inWeight: {x: 0.33333334, y: 0.33333334, z: 0.33333334}
|
||||
outWeight: {x: 0.33333334, y: 0.33333334, z: 0.33333334}
|
||||
m_PreInfinity: 2
|
||||
m_PostInfinity: 2
|
||||
m_RotationOrder: 4
|
||||
path:
|
||||
m_PositionCurves: []
|
||||
m_ScaleCurves: []
|
||||
m_FloatCurves: []
|
||||
m_PPtrCurves: []
|
||||
m_SampleRate: 30
|
||||
m_WrapMode: 0
|
||||
m_Bounds:
|
||||
m_Center: {x: 0, y: 0, z: 0}
|
||||
m_Extent: {x: 0, y: 0, z: 0}
|
||||
m_ClipBindingConstant:
|
||||
genericBindings:
|
||||
- serializedVersion: 2
|
||||
path: 0
|
||||
attribute: 4
|
||||
script: {fileID: 0}
|
||||
typeID: 4
|
||||
customType: 4
|
||||
isPPtrCurve: 0
|
||||
pptrCurveMapping: []
|
||||
m_AnimationClipSettings:
|
||||
serializedVersion: 2
|
||||
m_AdditiveReferencePoseClip: {fileID: 0}
|
||||
m_AdditiveReferencePoseTime: 0
|
||||
m_StartTime: 0
|
||||
m_StopTime: 0.8
|
||||
m_OrientationOffsetY: 0
|
||||
m_Level: 0
|
||||
m_CycleOffset: 0
|
||||
m_HasAdditiveReferencePose: 0
|
||||
m_LoopTime: 1
|
||||
m_LoopBlend: 0
|
||||
m_LoopBlendOrientation: 0
|
||||
m_LoopBlendPositionY: 0
|
||||
m_LoopBlendPositionXZ: 0
|
||||
m_KeepOriginalOrientation: 0
|
||||
m_KeepOriginalPositionY: 1
|
||||
m_KeepOriginalPositionXZ: 0
|
||||
m_HeightFromFeet: 0
|
||||
m_Mirror: 0
|
||||
m_EditorCurves:
|
||||
- curve:
|
||||
serializedVersion: 2
|
||||
m_Curve:
|
||||
- serializedVersion: 3
|
||||
time: 0
|
||||
value: 0
|
||||
inSlope: 0
|
||||
outSlope: 0
|
||||
tangentMode: 136
|
||||
weightedMode: 0
|
||||
inWeight: 0.33333334
|
||||
outWeight: 0.33333334
|
||||
- serializedVersion: 3
|
||||
time: 0.8
|
||||
value: 0
|
||||
inSlope: 0
|
||||
outSlope: 0
|
||||
tangentMode: 1
|
||||
weightedMode: 0
|
||||
inWeight: 0.33333334
|
||||
outWeight: 0.33333334
|
||||
m_PreInfinity: 2
|
||||
m_PostInfinity: 2
|
||||
m_RotationOrder: 4
|
||||
attribute: localEulerAnglesRaw.x
|
||||
path:
|
||||
classID: 4
|
||||
script: {fileID: 0}
|
||||
- curve:
|
||||
serializedVersion: 2
|
||||
m_Curve:
|
||||
- serializedVersion: 3
|
||||
time: 0
|
||||
value: 0
|
||||
inSlope: 0
|
||||
outSlope: 0
|
||||
tangentMode: 136
|
||||
weightedMode: 0
|
||||
inWeight: 0.33333334
|
||||
outWeight: 0.33333334
|
||||
- serializedVersion: 3
|
||||
time: 0.8
|
||||
value: 0
|
||||
inSlope: 0
|
||||
outSlope: 0
|
||||
tangentMode: 1
|
||||
weightedMode: 0
|
||||
inWeight: 0.33333334
|
||||
outWeight: 0.33333334
|
||||
m_PreInfinity: 2
|
||||
m_PostInfinity: 2
|
||||
m_RotationOrder: 4
|
||||
attribute: localEulerAnglesRaw.y
|
||||
path:
|
||||
classID: 4
|
||||
script: {fileID: 0}
|
||||
- curve:
|
||||
serializedVersion: 2
|
||||
m_Curve:
|
||||
- serializedVersion: 3
|
||||
time: 0
|
||||
value: 0
|
||||
inSlope: 0
|
||||
outSlope: -450
|
||||
tangentMode: 65
|
||||
weightedMode: 0
|
||||
inWeight: 0.33333334
|
||||
outWeight: 0.33333334
|
||||
- serializedVersion: 3
|
||||
time: 0.8
|
||||
value: -360
|
||||
inSlope: -450
|
||||
outSlope: 0
|
||||
tangentMode: 5
|
||||
weightedMode: 0
|
||||
inWeight: 0.33333334
|
||||
outWeight: 0.33333334
|
||||
m_PreInfinity: 2
|
||||
m_PostInfinity: 2
|
||||
m_RotationOrder: 4
|
||||
attribute: localEulerAnglesRaw.z
|
||||
path:
|
||||
classID: 4
|
||||
script: {fileID: 0}
|
||||
m_EulerEditorCurves:
|
||||
- curve:
|
||||
serializedVersion: 2
|
||||
m_Curve: []
|
||||
m_PreInfinity: 2
|
||||
m_PostInfinity: 2
|
||||
m_RotationOrder: 4
|
||||
attribute: m_LocalEulerAngles.x
|
||||
path:
|
||||
classID: 4
|
||||
script: {fileID: 0}
|
||||
- curve:
|
||||
serializedVersion: 2
|
||||
m_Curve: []
|
||||
m_PreInfinity: 2
|
||||
m_PostInfinity: 2
|
||||
m_RotationOrder: 4
|
||||
attribute: m_LocalEulerAngles.y
|
||||
path:
|
||||
classID: 4
|
||||
script: {fileID: 0}
|
||||
- curve:
|
||||
serializedVersion: 2
|
||||
m_Curve: []
|
||||
m_PreInfinity: 2
|
||||
m_PostInfinity: 2
|
||||
m_RotationOrder: 4
|
||||
attribute: m_LocalEulerAngles.z
|
||||
path:
|
||||
classID: 4
|
||||
script: {fileID: 0}
|
||||
m_HasGenericRootTransform: 1
|
||||
m_HasMotionFloatCurves: 0
|
||||
m_Events: []
|
8
Assets/Animations/Spin.anim.meta
Normal file
8
Assets/Animations/Spin.anim.meta
Normal file
@ -0,0 +1,8 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 85c6bf69ff1e646a4814bd4538aafcb8
|
||||
NativeFormatImporter:
|
||||
externalObjects: {}
|
||||
mainObjectFileID: 0
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
133
Assets/Animations/Tambourine Animation.controller
Normal file
133
Assets/Animations/Tambourine Animation.controller
Normal file
@ -0,0 +1,133 @@
|
||||
%YAML 1.1
|
||||
%TAG !u! tag:unity3d.com,2011:
|
||||
--- !u!1101 &-1614314267603742629
|
||||
AnimatorStateTransition:
|
||||
m_ObjectHideFlags: 1
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
m_Name:
|
||||
m_Conditions:
|
||||
- m_ConditionMode: 1
|
||||
m_ConditionEvent: pinned
|
||||
m_EventTreshold: 0
|
||||
m_DstStateMachine: {fileID: 0}
|
||||
m_DstState: {fileID: 8281955824014068432}
|
||||
m_Solo: 0
|
||||
m_Mute: 0
|
||||
m_IsExit: 0
|
||||
serializedVersion: 3
|
||||
m_TransitionDuration: 0
|
||||
m_TransitionOffset: 0
|
||||
m_ExitTime: 0.6875
|
||||
m_HasExitTime: 0
|
||||
m_HasFixedDuration: 0
|
||||
m_InterruptionSource: 0
|
||||
m_OrderedInterruption: 1
|
||||
m_CanTransitionToSelf: 1
|
||||
--- !u!91 &9100000
|
||||
AnimatorController:
|
||||
m_ObjectHideFlags: 0
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
m_Name: Tambourine Animation
|
||||
serializedVersion: 5
|
||||
m_AnimatorParameters:
|
||||
- m_Name: pinned
|
||||
m_Type: 4
|
||||
m_DefaultFloat: 0
|
||||
m_DefaultInt: 0
|
||||
m_DefaultBool: 0
|
||||
m_Controller: {fileID: 9100000}
|
||||
m_AnimatorLayers:
|
||||
- serializedVersion: 5
|
||||
m_Name: Base Layer
|
||||
m_StateMachine: {fileID: 8889545025217423639}
|
||||
m_Mask: {fileID: 0}
|
||||
m_Motions: []
|
||||
m_Behaviours: []
|
||||
m_BlendingMode: 0
|
||||
m_SyncedLayerIndex: -1
|
||||
m_DefaultWeight: 0
|
||||
m_IKPass: 0
|
||||
m_SyncedLayerAffectsTiming: 0
|
||||
m_Controller: {fileID: 9100000}
|
||||
--- !u!1102 &2652071511683628525
|
||||
AnimatorState:
|
||||
serializedVersion: 6
|
||||
m_ObjectHideFlags: 1
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
m_Name: Spin
|
||||
m_Speed: 1
|
||||
m_CycleOffset: 0
|
||||
m_Transitions:
|
||||
- {fileID: -1614314267603742629}
|
||||
m_StateMachineBehaviours: []
|
||||
m_Position: {x: 50, y: 50, z: 0}
|
||||
m_IKOnFeet: 0
|
||||
m_WriteDefaultValues: 1
|
||||
m_Mirror: 0
|
||||
m_SpeedParameterActive: 0
|
||||
m_MirrorParameterActive: 0
|
||||
m_CycleOffsetParameterActive: 0
|
||||
m_TimeParameterActive: 0
|
||||
m_Motion: {fileID: 7400000, guid: 85c6bf69ff1e646a4814bd4538aafcb8, type: 2}
|
||||
m_Tag:
|
||||
m_SpeedParameter:
|
||||
m_MirrorParameter:
|
||||
m_CycleOffsetParameter:
|
||||
m_TimeParameter:
|
||||
--- !u!1102 &8281955824014068432
|
||||
AnimatorState:
|
||||
serializedVersion: 6
|
||||
m_ObjectHideFlags: 1
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
m_Name: Pin
|
||||
m_Speed: 1
|
||||
m_CycleOffset: 0
|
||||
m_Transitions: []
|
||||
m_StateMachineBehaviours: []
|
||||
m_Position: {x: 50, y: 50, z: 0}
|
||||
m_IKOnFeet: 0
|
||||
m_WriteDefaultValues: 1
|
||||
m_Mirror: 0
|
||||
m_SpeedParameterActive: 0
|
||||
m_MirrorParameterActive: 0
|
||||
m_CycleOffsetParameterActive: 0
|
||||
m_TimeParameterActive: 0
|
||||
m_Motion: {fileID: 7400000, guid: 0ea43266aa9544629b413d7e73df1fdc, type: 2}
|
||||
m_Tag:
|
||||
m_SpeedParameter:
|
||||
m_MirrorParameter:
|
||||
m_CycleOffsetParameter:
|
||||
m_TimeParameter:
|
||||
--- !u!1107 &8889545025217423639
|
||||
AnimatorStateMachine:
|
||||
serializedVersion: 6
|
||||
m_ObjectHideFlags: 1
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
m_Name: Base Layer
|
||||
m_ChildStates:
|
||||
- serializedVersion: 1
|
||||
m_State: {fileID: 2652071511683628525}
|
||||
m_Position: {x: 160, y: 210, z: 0}
|
||||
- serializedVersion: 1
|
||||
m_State: {fileID: 8281955824014068432}
|
||||
m_Position: {x: 420, y: 210, z: 0}
|
||||
m_ChildStateMachines: []
|
||||
m_AnyStateTransitions: []
|
||||
m_EntryTransitions: []
|
||||
m_StateMachineTransitions: {}
|
||||
m_StateMachineBehaviours: []
|
||||
m_AnyStatePosition: {x: 50, y: 20, z: 0}
|
||||
m_EntryPosition: {x: 40, y: 130, z: 0}
|
||||
m_ExitPosition: {x: 440, y: 110, z: 0}
|
||||
m_ParentStateMachinePosition: {x: 800, y: 20, z: 0}
|
||||
m_DefaultState: {fileID: 2652071511683628525}
|
8
Assets/Animations/Tambourine Animation.controller.meta
Normal file
8
Assets/Animations/Tambourine Animation.controller.meta
Normal file
@ -0,0 +1,8 @@
|
||||
fileFormatVersion: 2
|
||||
guid: c55b775f272db4472814cb6f30ac169e
|
||||
NativeFormatImporter:
|
||||
externalObjects: {}
|
||||
mainObjectFileID: 0
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
8
Assets/Materials.meta
Normal file
8
Assets/Materials.meta
Normal file
@ -0,0 +1,8 @@
|
||||
fileFormatVersion: 2
|
||||
guid: bd298ff3617a644ac93072ee84fd9b15
|
||||
folderAsset: yes
|
||||
DefaultImporter:
|
||||
externalObjects: {}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
143
Assets/Materials/New Material.mat
Normal file
143
Assets/Materials/New Material.mat
Normal file
@ -0,0 +1,143 @@
|
||||
%YAML 1.1
|
||||
%TAG !u! tag:unity3d.com,2011:
|
||||
--- !u!21 &2100000
|
||||
Material:
|
||||
serializedVersion: 8
|
||||
m_ObjectHideFlags: 0
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
m_Name: New Material
|
||||
m_Shader: {fileID: 211, guid: 0000000000000000f000000000000000, type: 0}
|
||||
m_Parent: {fileID: 0}
|
||||
m_ModifiedSerializedProperties: 0
|
||||
m_ValidKeywords: []
|
||||
m_InvalidKeywords:
|
||||
- _FLIPBOOKBLENDING_OFF
|
||||
m_LightmapFlags: 0
|
||||
m_EnableInstancingVariants: 0
|
||||
m_DoubleSidedGI: 0
|
||||
m_CustomRenderQueue: -1
|
||||
stringTagMap: {}
|
||||
disabledShaderPasses:
|
||||
- GRABPASS
|
||||
m_LockedProperties:
|
||||
m_SavedProperties:
|
||||
serializedVersion: 3
|
||||
m_TexEnvs:
|
||||
- _AlphaTex:
|
||||
m_Texture: {fileID: 0}
|
||||
m_Scale: {x: 1, y: 1}
|
||||
m_Offset: {x: 0, y: 0}
|
||||
- _BaseMap:
|
||||
m_Texture: {fileID: 0}
|
||||
m_Scale: {x: 1, y: 1}
|
||||
m_Offset: {x: 0, y: 0}
|
||||
- _BumpMap:
|
||||
m_Texture: {fileID: 0}
|
||||
m_Scale: {x: 1, y: 1}
|
||||
m_Offset: {x: 0, y: 0}
|
||||
- _DetailAlbedoMap:
|
||||
m_Texture: {fileID: 0}
|
||||
m_Scale: {x: 1, y: 1}
|
||||
m_Offset: {x: 0, y: 0}
|
||||
- _DetailMask:
|
||||
m_Texture: {fileID: 0}
|
||||
m_Scale: {x: 1, y: 1}
|
||||
m_Offset: {x: 0, y: 0}
|
||||
- _DetailNormalMap:
|
||||
m_Texture: {fileID: 0}
|
||||
m_Scale: {x: 1, y: 1}
|
||||
m_Offset: {x: 0, y: 0}
|
||||
- _EmissionMap:
|
||||
m_Texture: {fileID: 0}
|
||||
m_Scale: {x: 1, y: 1}
|
||||
m_Offset: {x: 0, y: 0}
|
||||
- _MainTex:
|
||||
m_Texture: {fileID: 0}
|
||||
m_Scale: {x: 1, y: 1}
|
||||
m_Offset: {x: 0, y: 0}
|
||||
- _MaskTex:
|
||||
m_Texture: {fileID: 0}
|
||||
m_Scale: {x: 1, y: 1}
|
||||
m_Offset: {x: 0, y: 0}
|
||||
- _MetallicGlossMap:
|
||||
m_Texture: {fileID: 0}
|
||||
m_Scale: {x: 1, y: 1}
|
||||
m_Offset: {x: 0, y: 0}
|
||||
- _NormalMap:
|
||||
m_Texture: {fileID: 0}
|
||||
m_Scale: {x: 1, y: 1}
|
||||
m_Offset: {x: 0, y: 0}
|
||||
- _OcclusionMap:
|
||||
m_Texture: {fileID: 0}
|
||||
m_Scale: {x: 1, y: 1}
|
||||
m_Offset: {x: 0, y: 0}
|
||||
- _ParallaxMap:
|
||||
m_Texture: {fileID: 0}
|
||||
m_Scale: {x: 1, y: 1}
|
||||
m_Offset: {x: 0, y: 0}
|
||||
m_Ints: []
|
||||
m_Floats:
|
||||
- _AlphaClip: 0
|
||||
- _Blend: 0
|
||||
- _BlendOp: 0
|
||||
- _BumpScale: 1
|
||||
- _CameraFadingEnabled: 0
|
||||
- _CameraFarFadeDistance: 2
|
||||
- _CameraNearFadeDistance: 1
|
||||
- _ColorMode: 0
|
||||
- _Cull: 2
|
||||
- _Cutoff: 0.5
|
||||
- _DetailNormalMapScale: 1
|
||||
- _DistortionBlend: 0.5
|
||||
- _DistortionEnabled: 0
|
||||
- _DistortionStrength: 1
|
||||
- _DistortionStrengthScaled: 0.1
|
||||
- _DstBlend: 0
|
||||
- _EmissionEnabled: 0
|
||||
- _EnableExternalAlpha: 0
|
||||
- _FlipbookBlending: 0
|
||||
- _FlipbookMode: 0
|
||||
- _GlossMapScale: 1
|
||||
- _Glossiness: 0.5
|
||||
- _GlossyReflections: 1
|
||||
- _LightingEnabled: 0
|
||||
- _Metallic: 0
|
||||
- _Mode: 0
|
||||
- _OcclusionStrength: 1
|
||||
- _Parallax: 0.02
|
||||
- _QueueOffset: 0
|
||||
- _SmoothnessTextureChannel: 0
|
||||
- _SoftParticlesEnabled: 0
|
||||
- _SoftParticlesFarFadeDistance: 1
|
||||
- _SoftParticlesNearFadeDistance: 0
|
||||
- _SpecularHighlights: 1
|
||||
- _SrcBlend: 1
|
||||
- _Surface: 0
|
||||
- _UVSec: 0
|
||||
- _ZWrite: 1
|
||||
m_Colors:
|
||||
- _BaseColor: {r: 1, g: 1, b: 1, a: 1}
|
||||
- _BaseColorAddSubDiff: {r: 0, g: 0, b: 0, a: 0}
|
||||
- _CameraFadeParams: {r: 0, g: Infinity, b: 0, a: 0}
|
||||
- _Color: {r: 1, g: 1, b: 1, a: 1}
|
||||
- _ColorAddSubDiff: {r: 0, g: 0, b: 0, a: 0}
|
||||
- _EmissionColor: {r: 0, g: 0, b: 0, a: 1}
|
||||
- _Flip: {r: 1, g: 1, b: 1, a: 1}
|
||||
- _RendererColor: {r: 1, g: 1, b: 1, a: 1}
|
||||
- _SoftParticleFadeParams: {r: 0, g: 0, b: 0, a: 0}
|
||||
m_BuildTextureStacks: []
|
||||
--- !u!114 &2006042266030563159
|
||||
MonoBehaviour:
|
||||
m_ObjectHideFlags: 11
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
m_GameObject: {fileID: 0}
|
||||
m_Enabled: 1
|
||||
m_EditorHideFlags: 0
|
||||
m_Script: {fileID: 11500000, guid: d0353a89b1f911e48b9e16bdc9f2e058, type: 3}
|
||||
m_Name:
|
||||
m_EditorClassIdentifier:
|
||||
version: 5
|
8
Assets/Materials/New Material.mat.meta
Normal file
8
Assets/Materials/New Material.mat.meta
Normal file
@ -0,0 +1,8 @@
|
||||
fileFormatVersion: 2
|
||||
guid: ed5ef88f6f7bc4eb3a6a31608788b009
|
||||
NativeFormatImporter:
|
||||
externalObjects: {}
|
||||
mainObjectFileID: 0
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
8
Assets/Physics.meta
Normal file
8
Assets/Physics.meta
Normal file
@ -0,0 +1,8 @@
|
||||
fileFormatVersion: 2
|
||||
guid: c9f352540267a407ebc6820eaf467562
|
||||
folderAsset: yes
|
||||
DefaultImporter:
|
||||
externalObjects: {}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
11
Assets/Physics/PlayerFriction.physicsMaterial2D
Normal file
11
Assets/Physics/PlayerFriction.physicsMaterial2D
Normal file
@ -0,0 +1,11 @@
|
||||
%YAML 1.1
|
||||
%TAG !u! tag:unity3d.com,2011:
|
||||
--- !u!62 &6200000
|
||||
PhysicsMaterial2D:
|
||||
m_ObjectHideFlags: 0
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
m_Name: PlayerFriction
|
||||
friction: 1
|
||||
bounciness: 0
|
8
Assets/Physics/PlayerFriction.physicsMaterial2D.meta
Normal file
8
Assets/Physics/PlayerFriction.physicsMaterial2D.meta
Normal file
@ -0,0 +1,8 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 83749aa79f3034041ac7616c39c77dfb
|
||||
NativeFormatImporter:
|
||||
externalObjects: {}
|
||||
mainObjectFileID: 6200000
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
@ -13,6 +13,33 @@
|
||||
"processors": "",
|
||||
"interactions": "",
|
||||
"initialStateCheck": true
|
||||
},
|
||||
{
|
||||
"name": "Grapple",
|
||||
"type": "Button",
|
||||
"id": "2116b59e-20ee-4f7c-a656-aad81b0ae23a",
|
||||
"expectedControlType": "Button",
|
||||
"processors": "",
|
||||
"interactions": "",
|
||||
"initialStateCheck": false
|
||||
},
|
||||
{
|
||||
"name": "ThrowTambourine",
|
||||
"type": "Button",
|
||||
"id": "00940c0e-3199-4943-a074-8cde87588db2",
|
||||
"expectedControlType": "Button",
|
||||
"processors": "",
|
||||
"interactions": "",
|
||||
"initialStateCheck": false
|
||||
},
|
||||
{
|
||||
"name": "Jump",
|
||||
"type": "Button",
|
||||
"id": "5a10231f-97fe-4bfb-89d8-4ac906d76de6",
|
||||
"expectedControlType": "Button",
|
||||
"processors": "",
|
||||
"interactions": "",
|
||||
"initialStateCheck": false
|
||||
}
|
||||
],
|
||||
"bindings": [
|
||||
@ -70,6 +97,39 @@
|
||||
"action": "Move",
|
||||
"isComposite": false,
|
||||
"isPartOfComposite": true
|
||||
},
|
||||
{
|
||||
"name": "",
|
||||
"id": "77fb86b2-c108-4901-9a80-e00c9317d4df",
|
||||
"path": "<Keyboard>/l",
|
||||
"interactions": "",
|
||||
"processors": "",
|
||||
"groups": "",
|
||||
"action": "Grapple",
|
||||
"isComposite": false,
|
||||
"isPartOfComposite": false
|
||||
},
|
||||
{
|
||||
"name": "",
|
||||
"id": "f3aa2992-7914-440a-b109-bf84cfa770a3",
|
||||
"path": "<Keyboard>/k",
|
||||
"interactions": "",
|
||||
"processors": "",
|
||||
"groups": "",
|
||||
"action": "ThrowTambourine",
|
||||
"isComposite": false,
|
||||
"isPartOfComposite": false
|
||||
},
|
||||
{
|
||||
"name": "",
|
||||
"id": "ad2dbcc6-d98e-4d64-bce9-fb9f8741462e",
|
||||
"path": "<Keyboard>/space",
|
||||
"interactions": "",
|
||||
"processors": "",
|
||||
"groups": "",
|
||||
"action": "Jump",
|
||||
"isComposite": false,
|
||||
"isPartOfComposite": false
|
||||
}
|
||||
]
|
||||
}
|
||||
|
8
Assets/Prefabs.meta
Normal file
8
Assets/Prefabs.meta
Normal file
@ -0,0 +1,8 @@
|
||||
fileFormatVersion: 2
|
||||
guid: e84a016a58bf449109e34da882d1ce99
|
||||
folderAsset: yes
|
||||
DefaultImporter:
|
||||
externalObjects: {}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
141
Assets/Prefabs/Enemy.prefab
Normal file
141
Assets/Prefabs/Enemy.prefab
Normal file
@ -0,0 +1,141 @@
|
||||
%YAML 1.1
|
||||
%TAG !u! tag:unity3d.com,2011:
|
||||
--- !u!1 &493245979038171997
|
||||
GameObject:
|
||||
m_ObjectHideFlags: 0
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
serializedVersion: 6
|
||||
m_Component:
|
||||
- component: {fileID: 493245979038171992}
|
||||
- component: {fileID: 493245979038171999}
|
||||
- component: {fileID: 493245979038171993}
|
||||
- component: {fileID: 4018407283885727215}
|
||||
m_Layer: 0
|
||||
m_Name: Enemy
|
||||
m_TagString: Enemy
|
||||
m_Icon: {fileID: 0}
|
||||
m_NavMeshLayer: 0
|
||||
m_StaticEditorFlags: 0
|
||||
m_IsActive: 1
|
||||
--- !u!4 &493245979038171992
|
||||
Transform:
|
||||
m_ObjectHideFlags: 0
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
m_GameObject: {fileID: 493245979038171997}
|
||||
m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
|
||||
m_LocalPosition: {x: 0, y: 0, z: 0}
|
||||
m_LocalScale: {x: 0.4849, y: 0.4849, z: 0.4849}
|
||||
m_ConstrainProportionsScale: 0
|
||||
m_Children: []
|
||||
m_Father: {fileID: 0}
|
||||
m_RootOrder: 12
|
||||
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
|
||||
--- !u!212 &493245979038171999
|
||||
SpriteRenderer:
|
||||
m_ObjectHideFlags: 0
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
m_GameObject: {fileID: 493245979038171997}
|
||||
m_Enabled: 1
|
||||
m_CastShadows: 0
|
||||
m_ReceiveShadows: 0
|
||||
m_DynamicOccludee: 1
|
||||
m_StaticShadowCaster: 0
|
||||
m_MotionVectors: 1
|
||||
m_LightProbeUsage: 1
|
||||
m_ReflectionProbeUsage: 1
|
||||
m_RayTracingMode: 0
|
||||
m_RayTraceProcedural: 0
|
||||
m_RenderingLayerMask: 1
|
||||
m_RendererPriority: 0
|
||||
m_Materials:
|
||||
- {fileID: 10754, guid: 0000000000000000f000000000000000, type: 0}
|
||||
m_StaticBatchInfo:
|
||||
firstSubMesh: 0
|
||||
subMeshCount: 0
|
||||
m_StaticBatchRoot: {fileID: 0}
|
||||
m_ProbeAnchor: {fileID: 0}
|
||||
m_LightProbeVolumeOverride: {fileID: 0}
|
||||
m_ScaleInLightmap: 1
|
||||
m_ReceiveGI: 1
|
||||
m_PreserveUVs: 0
|
||||
m_IgnoreNormalsForChartDetection: 0
|
||||
m_ImportantGI: 0
|
||||
m_StitchLightmapSeams: 1
|
||||
m_SelectedEditorRenderState: 0
|
||||
m_MinimumChartSize: 4
|
||||
m_AutoUVMaxDistance: 0.5
|
||||
m_AutoUVMaxAngle: 89
|
||||
m_LightmapParameters: {fileID: 0}
|
||||
m_SortingLayerID: 0
|
||||
m_SortingLayer: 0
|
||||
m_SortingOrder: 0
|
||||
m_Sprite: {fileID: -2413806693520163455, guid: a86470a33a6bf42c4b3595704624658b, type: 3}
|
||||
m_Color: {r: 1, g: 0.25, b: 0.25, a: 1}
|
||||
m_FlipX: 0
|
||||
m_FlipY: 0
|
||||
m_DrawMode: 0
|
||||
m_Size: {x: 1, y: 1}
|
||||
m_AdaptiveModeThreshold: 0.5
|
||||
m_SpriteTileMode: 0
|
||||
m_WasSpriteAssigned: 1
|
||||
m_MaskInteraction: 0
|
||||
m_SpriteSortPoint: 0
|
||||
--- !u!58 &493245979038171993
|
||||
CircleCollider2D:
|
||||
m_ObjectHideFlags: 0
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
m_GameObject: {fileID: 493245979038171997}
|
||||
m_Enabled: 1
|
||||
m_Density: 1
|
||||
m_Material: {fileID: 0}
|
||||
m_IncludeLayers:
|
||||
serializedVersion: 2
|
||||
m_Bits: 0
|
||||
m_ExcludeLayers:
|
||||
serializedVersion: 2
|
||||
m_Bits: 0
|
||||
m_LayerOverridePriority: 0
|
||||
m_ForceSendLayers:
|
||||
serializedVersion: 2
|
||||
m_Bits: 4294967295
|
||||
m_ForceReceiveLayers:
|
||||
serializedVersion: 2
|
||||
m_Bits: 4294967295
|
||||
m_ContactCaptureLayers:
|
||||
serializedVersion: 2
|
||||
m_Bits: 4294967295
|
||||
m_CallbackLayers:
|
||||
serializedVersion: 2
|
||||
m_Bits: 4294967295
|
||||
m_IsTrigger: 1
|
||||
m_UsedByEffector: 0
|
||||
m_UsedByComposite: 0
|
||||
m_Offset: {x: 0, y: 0}
|
||||
serializedVersion: 2
|
||||
m_Radius: 1.11
|
||||
--- !u!114 &4018407283885727215
|
||||
MonoBehaviour:
|
||||
m_ObjectHideFlags: 0
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
m_GameObject: {fileID: 493245979038171997}
|
||||
m_Enabled: 1
|
||||
m_EditorHideFlags: 0
|
||||
m_Script: {fileID: 11500000, guid: e136b6711a1f64a90b596e8a68b34b78, type: 3}
|
||||
m_Name:
|
||||
m_EditorClassIdentifier:
|
||||
pinned: 0
|
||||
range: 3
|
||||
xLeft: 0
|
||||
xRight: 0
|
||||
movementVector: {x: 1, y: 0}
|
||||
moveSpeed: 0
|
7
Assets/Prefabs/Enemy.prefab.meta
Normal file
7
Assets/Prefabs/Enemy.prefab.meta
Normal file
@ -0,0 +1,7 @@
|
||||
fileFormatVersion: 2
|
||||
guid: d175e4c5882b2464ab0425220d00a671
|
||||
PrefabImporter:
|
||||
externalObjects: {}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
772
Assets/Prefabs/Player.prefab
Normal file
772
Assets/Prefabs/Player.prefab
Normal file
@ -0,0 +1,772 @@
|
||||
%YAML 1.1
|
||||
%TAG !u! tag:unity3d.com,2011:
|
||||
--- !u!1 &5885597207104481991
|
||||
GameObject:
|
||||
m_ObjectHideFlags: 0
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
serializedVersion: 6
|
||||
m_Component:
|
||||
- component: {fileID: 5885597207104481986}
|
||||
- component: {fileID: 5885597207104481987}
|
||||
- component: {fileID: 5885597207104481988}
|
||||
- component: {fileID: 5885597207104481989}
|
||||
- component: {fileID: 5885597207104481990}
|
||||
- component: {fileID: 2233892752547184614}
|
||||
- component: {fileID: 5885597207104481984}
|
||||
m_Layer: 2
|
||||
m_Name: Player
|
||||
m_TagString: Player
|
||||
m_Icon: {fileID: 0}
|
||||
m_NavMeshLayer: 0
|
||||
m_StaticEditorFlags: 0
|
||||
m_IsActive: 1
|
||||
--- !u!4 &5885597207104481986
|
||||
Transform:
|
||||
m_ObjectHideFlags: 0
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
m_GameObject: {fileID: 5885597207104481991}
|
||||
m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
|
||||
m_LocalPosition: {x: 0, y: 0, z: 10}
|
||||
m_LocalScale: {x: 0.2, y: 0.2, z: 0.2}
|
||||
m_ConstrainProportionsScale: 0
|
||||
m_Children:
|
||||
- {fileID: 5885597207531562994}
|
||||
- {fileID: 5885597208269163161}
|
||||
m_Father: {fileID: 0}
|
||||
m_RootOrder: 11
|
||||
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
|
||||
--- !u!212 &5885597207104481987
|
||||
SpriteRenderer:
|
||||
m_ObjectHideFlags: 0
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
m_GameObject: {fileID: 5885597207104481991}
|
||||
m_Enabled: 1
|
||||
m_CastShadows: 0
|
||||
m_ReceiveShadows: 0
|
||||
m_DynamicOccludee: 1
|
||||
m_StaticShadowCaster: 0
|
||||
m_MotionVectors: 1
|
||||
m_LightProbeUsage: 1
|
||||
m_ReflectionProbeUsage: 1
|
||||
m_RayTracingMode: 0
|
||||
m_RayTraceProcedural: 0
|
||||
m_RenderingLayerMask: 1
|
||||
m_RendererPriority: 0
|
||||
m_Materials:
|
||||
- {fileID: 10754, guid: 0000000000000000f000000000000000, type: 0}
|
||||
m_StaticBatchInfo:
|
||||
firstSubMesh: 0
|
||||
subMeshCount: 0
|
||||
m_StaticBatchRoot: {fileID: 0}
|
||||
m_ProbeAnchor: {fileID: 0}
|
||||
m_LightProbeVolumeOverride: {fileID: 0}
|
||||
m_ScaleInLightmap: 1
|
||||
m_ReceiveGI: 1
|
||||
m_PreserveUVs: 0
|
||||
m_IgnoreNormalsForChartDetection: 0
|
||||
m_ImportantGI: 0
|
||||
m_StitchLightmapSeams: 1
|
||||
m_SelectedEditorRenderState: 0
|
||||
m_MinimumChartSize: 4
|
||||
m_AutoUVMaxDistance: 0.5
|
||||
m_AutoUVMaxAngle: 89
|
||||
m_LightmapParameters: {fileID: 0}
|
||||
m_SortingLayerID: 0
|
||||
m_SortingLayer: 0
|
||||
m_SortingOrder: 0
|
||||
m_Sprite: {fileID: -2413806693520163455, guid: a86470a33a6bf42c4b3595704624658b, type: 3}
|
||||
m_Color: {r: 1, g: 1, b: 1, a: 1}
|
||||
m_FlipX: 0
|
||||
m_FlipY: 0
|
||||
m_DrawMode: 0
|
||||
m_Size: {x: 1, y: 1}
|
||||
m_AdaptiveModeThreshold: 0.5
|
||||
m_SpriteTileMode: 0
|
||||
m_WasSpriteAssigned: 1
|
||||
m_MaskInteraction: 0
|
||||
m_SpriteSortPoint: 0
|
||||
--- !u!50 &5885597207104481988
|
||||
Rigidbody2D:
|
||||
serializedVersion: 4
|
||||
m_ObjectHideFlags: 0
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
m_GameObject: {fileID: 5885597207104481991}
|
||||
m_BodyType: 0
|
||||
m_Simulated: 1
|
||||
m_UseFullKinematicContacts: 0
|
||||
m_UseAutoMass: 0
|
||||
m_Mass: 1
|
||||
m_LinearDrag: 0
|
||||
m_AngularDrag: 0.05
|
||||
m_GravityScale: 1
|
||||
m_Material: {fileID: 0}
|
||||
m_IncludeLayers:
|
||||
serializedVersion: 2
|
||||
m_Bits: 0
|
||||
m_ExcludeLayers:
|
||||
serializedVersion: 2
|
||||
m_Bits: 0
|
||||
m_Interpolate: 0
|
||||
m_SleepingMode: 1
|
||||
m_CollisionDetection: 0
|
||||
m_Constraints: 4
|
||||
--- !u!231 &5885597207104481989
|
||||
SpringJoint2D:
|
||||
m_ObjectHideFlags: 0
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
m_GameObject: {fileID: 5885597207104481991}
|
||||
m_Enabled: 1
|
||||
serializedVersion: 4
|
||||
m_EnableCollision: 1
|
||||
m_ConnectedRigidBody: {fileID: 0}
|
||||
m_BreakForce: Infinity
|
||||
m_BreakTorque: Infinity
|
||||
m_BreakAction: 3
|
||||
m_AutoConfigureConnectedAnchor: 0
|
||||
m_Anchor: {x: 0, y: 0}
|
||||
m_ConnectedAnchor: {x: 0, y: 0}
|
||||
m_AutoConfigureDistance: 1
|
||||
m_Distance: 0.005
|
||||
m_DampingRatio: 1
|
||||
m_Frequency: 1
|
||||
--- !u!58 &5885597207104481990
|
||||
CircleCollider2D:
|
||||
m_ObjectHideFlags: 0
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
m_GameObject: {fileID: 5885597207104481991}
|
||||
m_Enabled: 1
|
||||
m_Density: 1
|
||||
m_Material: {fileID: 0}
|
||||
m_IncludeLayers:
|
||||
serializedVersion: 2
|
||||
m_Bits: 0
|
||||
m_ExcludeLayers:
|
||||
serializedVersion: 2
|
||||
m_Bits: 0
|
||||
m_LayerOverridePriority: 0
|
||||
m_ForceSendLayers:
|
||||
serializedVersion: 2
|
||||
m_Bits: 4294967295
|
||||
m_ForceReceiveLayers:
|
||||
serializedVersion: 2
|
||||
m_Bits: 4294967295
|
||||
m_ContactCaptureLayers:
|
||||
serializedVersion: 2
|
||||
m_Bits: 4294967295
|
||||
m_CallbackLayers:
|
||||
serializedVersion: 2
|
||||
m_Bits: 4294967295
|
||||
m_IsTrigger: 0
|
||||
m_UsedByEffector: 0
|
||||
m_UsedByComposite: 0
|
||||
m_Offset: {x: 0, y: 0}
|
||||
serializedVersion: 2
|
||||
m_Radius: 0.5
|
||||
--- !u!114 &2233892752547184614
|
||||
MonoBehaviour:
|
||||
m_ObjectHideFlags: 0
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
m_GameObject: {fileID: 5885597207104481991}
|
||||
m_Enabled: 1
|
||||
m_EditorHideFlags: 0
|
||||
m_Script: {fileID: 11500000, guid: b0115312556794123a3cafad4b83d0a7, type: 3}
|
||||
m_Name:
|
||||
m_EditorClassIdentifier:
|
||||
moveSpeed: 10
|
||||
jumpSpeed: 5
|
||||
airSpeed: 0
|
||||
groundLayer:
|
||||
serializedVersion: 2
|
||||
m_Bits: 64
|
||||
launcher: {fileID: 6559806128767475056}
|
||||
hasTambourine: 1
|
||||
grapplingGun: {fileID: 3465910379319867675}
|
||||
grapplingRope: {fileID: 7648135587659148198}
|
||||
--- !u!232 &5885597207104481984
|
||||
DistanceJoint2D:
|
||||
m_ObjectHideFlags: 0
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
m_GameObject: {fileID: 5885597207104481991}
|
||||
m_Enabled: 1
|
||||
serializedVersion: 4
|
||||
m_EnableCollision: 1
|
||||
m_ConnectedRigidBody: {fileID: 0}
|
||||
m_BreakForce: Infinity
|
||||
m_BreakTorque: Infinity
|
||||
m_BreakAction: 3
|
||||
m_AutoConfigureConnectedAnchor: 0
|
||||
m_Anchor: {x: 0, y: 0}
|
||||
m_ConnectedAnchor: {x: 0, y: 0}
|
||||
m_AutoConfigureDistance: 0
|
||||
m_Distance: 2.2465985
|
||||
m_MaxDistanceOnly: 1
|
||||
--- !u!1 &5885597207531562995
|
||||
GameObject:
|
||||
m_ObjectHideFlags: 0
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
serializedVersion: 6
|
||||
m_Component:
|
||||
- component: {fileID: 5885597207531562994}
|
||||
m_Layer: 0
|
||||
m_Name: GunPivot
|
||||
m_TagString: Untagged
|
||||
m_Icon: {fileID: 0}
|
||||
m_NavMeshLayer: 0
|
||||
m_StaticEditorFlags: 0
|
||||
m_IsActive: 1
|
||||
--- !u!4 &5885597207531562994
|
||||
Transform:
|
||||
m_ObjectHideFlags: 0
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
m_GameObject: {fileID: 5885597207531562995}
|
||||
m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
|
||||
m_LocalPosition: {x: 0, y: 0, z: 0}
|
||||
m_LocalScale: {x: 1, y: 1, z: 1}
|
||||
m_ConstrainProportionsScale: 0
|
||||
m_Children:
|
||||
- {fileID: 5885597207560664729}
|
||||
m_Father: {fileID: 5885597207104481986}
|
||||
m_RootOrder: 0
|
||||
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
|
||||
--- !u!1 &5885597207560664730
|
||||
GameObject:
|
||||
m_ObjectHideFlags: 0
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
serializedVersion: 6
|
||||
m_Component:
|
||||
- component: {fileID: 5885597207560664729}
|
||||
- component: {fileID: 5885597207560664726}
|
||||
- component: {fileID: 3465910379319867675}
|
||||
- component: {fileID: 5885597207560664727}
|
||||
m_Layer: 0
|
||||
m_Name: GrapplingGun
|
||||
m_TagString: Untagged
|
||||
m_Icon: {fileID: 0}
|
||||
m_NavMeshLayer: 0
|
||||
m_StaticEditorFlags: 0
|
||||
m_IsActive: 1
|
||||
--- !u!4 &5885597207560664729
|
||||
Transform:
|
||||
m_ObjectHideFlags: 0
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
m_GameObject: {fileID: 5885597207560664730}
|
||||
m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
|
||||
m_LocalPosition: {x: 0.75, y: 0, z: 0}
|
||||
m_LocalScale: {x: 0.79404104, y: 0.38237485, z: 0.547}
|
||||
m_ConstrainProportionsScale: 0
|
||||
m_Children:
|
||||
- {fileID: 5885597208857297552}
|
||||
m_Father: {fileID: 5885597207531562994}
|
||||
m_RootOrder: 0
|
||||
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
|
||||
--- !u!212 &5885597207560664726
|
||||
SpriteRenderer:
|
||||
m_ObjectHideFlags: 0
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
m_GameObject: {fileID: 5885597207560664730}
|
||||
m_Enabled: 1
|
||||
m_CastShadows: 0
|
||||
m_ReceiveShadows: 0
|
||||
m_DynamicOccludee: 1
|
||||
m_StaticShadowCaster: 0
|
||||
m_MotionVectors: 1
|
||||
m_LightProbeUsage: 1
|
||||
m_ReflectionProbeUsage: 1
|
||||
m_RayTracingMode: 0
|
||||
m_RayTraceProcedural: 0
|
||||
m_RenderingLayerMask: 1
|
||||
m_RendererPriority: 0
|
||||
m_Materials:
|
||||
- {fileID: 10754, guid: 0000000000000000f000000000000000, type: 0}
|
||||
m_StaticBatchInfo:
|
||||
firstSubMesh: 0
|
||||
subMeshCount: 0
|
||||
m_StaticBatchRoot: {fileID: 0}
|
||||
m_ProbeAnchor: {fileID: 0}
|
||||
m_LightProbeVolumeOverride: {fileID: 0}
|
||||
m_ScaleInLightmap: 1
|
||||
m_ReceiveGI: 1
|
||||
m_PreserveUVs: 0
|
||||
m_IgnoreNormalsForChartDetection: 0
|
||||
m_ImportantGI: 0
|
||||
m_StitchLightmapSeams: 1
|
||||
m_SelectedEditorRenderState: 0
|
||||
m_MinimumChartSize: 4
|
||||
m_AutoUVMaxDistance: 0.5
|
||||
m_AutoUVMaxAngle: 89
|
||||
m_LightmapParameters: {fileID: 0}
|
||||
m_SortingLayerID: 0
|
||||
m_SortingLayer: 0
|
||||
m_SortingOrder: 0
|
||||
m_Sprite: {fileID: 7482667652216324306, guid: 311925a002f4447b3a28927169b83ea6, type: 3}
|
||||
m_Color: {r: 0.64606833, g: 1, b: 0, a: 1}
|
||||
m_FlipX: 0
|
||||
m_FlipY: 0
|
||||
m_DrawMode: 0
|
||||
m_Size: {x: 1, y: 1}
|
||||
m_AdaptiveModeThreshold: 0.5
|
||||
m_SpriteTileMode: 0
|
||||
m_WasSpriteAssigned: 1
|
||||
m_MaskInteraction: 0
|
||||
m_SpriteSortPoint: 0
|
||||
--- !u!114 &3465910379319867675
|
||||
MonoBehaviour:
|
||||
m_ObjectHideFlags: 0
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
m_GameObject: {fileID: 5885597207560664730}
|
||||
m_Enabled: 1
|
||||
m_EditorHideFlags: 0
|
||||
m_Script: {fileID: 11500000, guid: 6e8c21a2613bf4423a2f49601a3310e3, type: 3}
|
||||
m_Name:
|
||||
m_EditorClassIdentifier:
|
||||
grappleRope: {fileID: 7648135587659148198}
|
||||
grappleToAll: 1
|
||||
grappleLayerNumber: 9
|
||||
m_camera: {fileID: 0}
|
||||
gunHolder: {fileID: 5885597207104481986}
|
||||
gunPivot: {fileID: 5885597207531562994}
|
||||
firePoint: {fileID: 5885597208857297552}
|
||||
m_springJoint2D: {fileID: 5885597207104481989}
|
||||
m_distanceJoint2D: {fileID: 5885597207104481984}
|
||||
m_rigidBody2D: {fileID: 5885597207104481988}
|
||||
rotateOverTime: 1
|
||||
rotationSpeed: 18
|
||||
hasMaxDistance: 0
|
||||
maxDistance: 5
|
||||
launchToPoint: 0
|
||||
launchType: 1
|
||||
launchSpeed: 1
|
||||
autoConfigureDistance: 1
|
||||
targetDistance: 3
|
||||
targetFrequency: 1
|
||||
grapplePoint: {x: 0, y: 0}
|
||||
grappleDistanceVector: {x: 0, y: 0}
|
||||
inDistanceRange: 0
|
||||
--- !u!61 &5885597207560664727
|
||||
BoxCollider2D:
|
||||
m_ObjectHideFlags: 0
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
m_GameObject: {fileID: 5885597207560664730}
|
||||
m_Enabled: 1
|
||||
m_Density: 1
|
||||
m_Material: {fileID: 0}
|
||||
m_IncludeLayers:
|
||||
serializedVersion: 2
|
||||
m_Bits: 0
|
||||
m_ExcludeLayers:
|
||||
serializedVersion: 2
|
||||
m_Bits: 0
|
||||
m_LayerOverridePriority: 0
|
||||
m_ForceSendLayers:
|
||||
serializedVersion: 2
|
||||
m_Bits: 4294967295
|
||||
m_ForceReceiveLayers:
|
||||
serializedVersion: 2
|
||||
m_Bits: 4294967295
|
||||
m_ContactCaptureLayers:
|
||||
serializedVersion: 2
|
||||
m_Bits: 4294967295
|
||||
m_CallbackLayers:
|
||||
serializedVersion: 2
|
||||
m_Bits: 4294967295
|
||||
m_IsTrigger: 0
|
||||
m_UsedByEffector: 0
|
||||
m_UsedByComposite: 0
|
||||
m_Offset: {x: 0, y: 0}
|
||||
m_SpriteTilingProperty:
|
||||
border: {x: 0, y: 0, z: 0, w: 0}
|
||||
pivot: {x: 0.5, y: 0.5}
|
||||
oldSize: {x: 1, y: 1}
|
||||
newSize: {x: 1, y: 1}
|
||||
adaptiveTilingThreshold: 0.5
|
||||
drawMode: 0
|
||||
adaptiveTiling: 0
|
||||
m_AutoTiling: 0
|
||||
serializedVersion: 2
|
||||
m_Size: {x: 1, y: 1}
|
||||
m_EdgeRadius: 0
|
||||
--- !u!1 &5885597207789090697
|
||||
GameObject:
|
||||
m_ObjectHideFlags: 0
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
serializedVersion: 6
|
||||
m_Component:
|
||||
- component: {fileID: 5885597207789090696}
|
||||
- component: {fileID: 5885597207789090694}
|
||||
- component: {fileID: 5885597207789090692}
|
||||
- component: {fileID: 7648135587659148198}
|
||||
m_Layer: 0
|
||||
m_Name: Rope
|
||||
m_TagString: Untagged
|
||||
m_Icon: {fileID: 0}
|
||||
m_NavMeshLayer: 0
|
||||
m_StaticEditorFlags: 0
|
||||
m_IsActive: 1
|
||||
--- !u!4 &5885597207789090696
|
||||
Transform:
|
||||
m_ObjectHideFlags: 0
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
m_GameObject: {fileID: 5885597207789090697}
|
||||
m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
|
||||
m_LocalPosition: {x: 0, y: 0, z: 0}
|
||||
m_LocalScale: {x: 1, y: 1, z: 1}
|
||||
m_ConstrainProportionsScale: 0
|
||||
m_Children: []
|
||||
m_Father: {fileID: 5885597208857297552}
|
||||
m_RootOrder: 0
|
||||
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
|
||||
--- !u!120 &5885597207789090694
|
||||
LineRenderer:
|
||||
serializedVersion: 2
|
||||
m_ObjectHideFlags: 0
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
m_GameObject: {fileID: 5885597207789090697}
|
||||
m_Enabled: 1
|
||||
m_CastShadows: 1
|
||||
m_ReceiveShadows: 1
|
||||
m_DynamicOccludee: 1
|
||||
m_StaticShadowCaster: 0
|
||||
m_MotionVectors: 0
|
||||
m_LightProbeUsage: 0
|
||||
m_ReflectionProbeUsage: 0
|
||||
m_RayTracingMode: 0
|
||||
m_RayTraceProcedural: 0
|
||||
m_RenderingLayerMask: 1
|
||||
m_RendererPriority: 0
|
||||
m_Materials:
|
||||
- {fileID: 2100000, guid: c6d104ac52b094b38a2ef63d0dbd0617, type: 2}
|
||||
m_StaticBatchInfo:
|
||||
firstSubMesh: 0
|
||||
subMeshCount: 0
|
||||
m_StaticBatchRoot: {fileID: 0}
|
||||
m_ProbeAnchor: {fileID: 0}
|
||||
m_LightProbeVolumeOverride: {fileID: 0}
|
||||
m_ScaleInLightmap: 1
|
||||
m_ReceiveGI: 1
|
||||
m_PreserveUVs: 0
|
||||
m_IgnoreNormalsForChartDetection: 0
|
||||
m_ImportantGI: 0
|
||||
m_StitchLightmapSeams: 1
|
||||
m_SelectedEditorRenderState: 3
|
||||
m_MinimumChartSize: 4
|
||||
m_AutoUVMaxDistance: 0.5
|
||||
m_AutoUVMaxAngle: 89
|
||||
m_LightmapParameters: {fileID: 0}
|
||||
m_SortingLayerID: 0
|
||||
m_SortingLayer: 0
|
||||
m_SortingOrder: 0
|
||||
m_Positions:
|
||||
- {x: 0, y: 0, z: 0}
|
||||
- {x: 0, y: 0, z: 1}
|
||||
m_Parameters:
|
||||
serializedVersion: 3
|
||||
widthMultiplier: 0.15
|
||||
widthCurve:
|
||||
serializedVersion: 2
|
||||
m_Curve:
|
||||
- serializedVersion: 3
|
||||
time: 0
|
||||
value: 1
|
||||
inSlope: 0
|
||||
outSlope: 0
|
||||
tangentMode: 0
|
||||
weightedMode: 0
|
||||
inWeight: 0.33333334
|
||||
outWeight: 0.33333334
|
||||
m_PreInfinity: 2
|
||||
m_PostInfinity: 2
|
||||
m_RotationOrder: 4
|
||||
colorGradient:
|
||||
serializedVersion: 2
|
||||
key0: {r: 1, g: 1, b: 1, a: 1}
|
||||
key1: {r: 1, g: 1, b: 1, a: 1}
|
||||
key2: {r: 0, g: 0, b: 0, a: 0}
|
||||
key3: {r: 0, g: 0, b: 0, a: 0}
|
||||
key4: {r: 0, g: 0, b: 0, a: 0}
|
||||
key5: {r: 0, g: 0, b: 0, a: 0}
|
||||
key6: {r: 0, g: 0, b: 0, a: 0}
|
||||
key7: {r: 0, g: 0, b: 0, a: 0}
|
||||
ctime0: 0
|
||||
ctime1: 65535
|
||||
ctime2: 0
|
||||
ctime3: 0
|
||||
ctime4: 0
|
||||
ctime5: 0
|
||||
ctime6: 0
|
||||
ctime7: 0
|
||||
atime0: 0
|
||||
atime1: 65535
|
||||
atime2: 0
|
||||
atime3: 0
|
||||
atime4: 0
|
||||
atime5: 0
|
||||
atime6: 0
|
||||
atime7: 0
|
||||
m_Mode: 0
|
||||
m_ColorSpace: -1
|
||||
m_NumColorKeys: 2
|
||||
m_NumAlphaKeys: 2
|
||||
numCornerVertices: 1
|
||||
numCapVertices: 10
|
||||
alignment: 0
|
||||
textureMode: 0
|
||||
textureScale: {x: 1, y: 1}
|
||||
shadowBias: 0.5
|
||||
generateLightingData: 0
|
||||
m_MaskInteraction: 0
|
||||
m_UseWorldSpace: 1
|
||||
m_Loop: 0
|
||||
m_ApplyActiveColorSpace: 0
|
||||
--- !u!50 &5885597207789090692
|
||||
Rigidbody2D:
|
||||
serializedVersion: 4
|
||||
m_ObjectHideFlags: 0
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
m_GameObject: {fileID: 5885597207789090697}
|
||||
m_BodyType: 0
|
||||
m_Simulated: 1
|
||||
m_UseFullKinematicContacts: 0
|
||||
m_UseAutoMass: 0
|
||||
m_Mass: 1
|
||||
m_LinearDrag: 0
|
||||
m_AngularDrag: 0.05
|
||||
m_GravityScale: 1
|
||||
m_Material: {fileID: 0}
|
||||
m_IncludeLayers:
|
||||
serializedVersion: 2
|
||||
m_Bits: 0
|
||||
m_ExcludeLayers:
|
||||
serializedVersion: 2
|
||||
m_Bits: 0
|
||||
m_Interpolate: 0
|
||||
m_SleepingMode: 1
|
||||
m_CollisionDetection: 0
|
||||
m_Constraints: 0
|
||||
--- !u!114 &7648135587659148198
|
||||
MonoBehaviour:
|
||||
m_ObjectHideFlags: 0
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
m_GameObject: {fileID: 5885597207789090697}
|
||||
m_Enabled: 1
|
||||
m_EditorHideFlags: 0
|
||||
m_Script: {fileID: 11500000, guid: 06317215013e44d0fb7902fbc1c5e84e, type: 3}
|
||||
m_Name:
|
||||
m_EditorClassIdentifier:
|
||||
grapplingGun: {fileID: 3465910379319867675}
|
||||
m_lineRenderer: {fileID: 5885597207789090694}
|
||||
precision: 40
|
||||
ropeAnimationCurve:
|
||||
serializedVersion: 2
|
||||
m_Curve:
|
||||
- serializedVersion: 3
|
||||
time: 0
|
||||
value: 0
|
||||
inSlope: 0
|
||||
outSlope: 0
|
||||
tangentMode: 0
|
||||
weightedMode: 0
|
||||
inWeight: 0
|
||||
outWeight: 0
|
||||
- serializedVersion: 3
|
||||
time: 0.14945252
|
||||
value: -0.38990965
|
||||
inSlope: 1.0458933
|
||||
outSlope: 1.0458933
|
||||
tangentMode: 0
|
||||
weightedMode: 0
|
||||
inWeight: 0.33333334
|
||||
outWeight: 0.33333334
|
||||
- serializedVersion: 3
|
||||
time: 0.2821115
|
||||
value: 0.14380041
|
||||
inSlope: 3.112773
|
||||
outSlope: 3.112773
|
||||
tangentMode: 0
|
||||
weightedMode: 0
|
||||
inWeight: 0.33333334
|
||||
outWeight: 0.33333334
|
||||
- serializedVersion: 3
|
||||
time: 0.4698867
|
||||
value: -0.06354895
|
||||
inSlope: 3.4228306
|
||||
outSlope: 3.4228306
|
||||
tangentMode: 0
|
||||
weightedMode: 0
|
||||
inWeight: 0.33333334
|
||||
outWeight: 0.33333334
|
||||
- serializedVersion: 3
|
||||
time: 0.6058293
|
||||
value: 0.84990895
|
||||
inSlope: 1.497983
|
||||
outSlope: 1.497983
|
||||
tangentMode: 0
|
||||
weightedMode: 0
|
||||
inWeight: 0.33333334
|
||||
outWeight: 0.33333334
|
||||
- serializedVersion: 3
|
||||
time: 0.86202747
|
||||
value: -0.36344635
|
||||
inSlope: 0.9206908
|
||||
outSlope: 0.9206908
|
||||
tangentMode: 0
|
||||
weightedMode: 0
|
||||
inWeight: 0.33333334
|
||||
outWeight: 0.33333334
|
||||
- serializedVersion: 3
|
||||
time: 1
|
||||
value: 0.0012016296
|
||||
inSlope: 0
|
||||
outSlope: 0
|
||||
tangentMode: 0
|
||||
weightedMode: 0
|
||||
inWeight: 0
|
||||
outWeight: 0
|
||||
m_PreInfinity: 2
|
||||
m_PostInfinity: 2
|
||||
m_RotationOrder: 4
|
||||
startWaveSize: 2
|
||||
ropeProgressionCurve:
|
||||
serializedVersion: 2
|
||||
m_Curve:
|
||||
- serializedVersion: 3
|
||||
time: 0
|
||||
value: 0
|
||||
inSlope: 0
|
||||
outSlope: 0
|
||||
tangentMode: 0
|
||||
weightedMode: 0
|
||||
inWeight: 0
|
||||
outWeight: 0
|
||||
- serializedVersion: 3
|
||||
time: 1
|
||||
value: 1
|
||||
inSlope: 0
|
||||
outSlope: 0
|
||||
tangentMode: 0
|
||||
weightedMode: 0
|
||||
inWeight: 0
|
||||
outWeight: 0
|
||||
m_PreInfinity: 2
|
||||
m_PostInfinity: 2
|
||||
m_RotationOrder: 4
|
||||
ropeProgressionSpeed: 50
|
||||
isGrappling: 1
|
||||
--- !u!1 &5885597208269163163
|
||||
GameObject:
|
||||
m_ObjectHideFlags: 0
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
serializedVersion: 6
|
||||
m_Component:
|
||||
- component: {fileID: 5885597208269163161}
|
||||
- component: {fileID: 6559806128767475056}
|
||||
m_Layer: 0
|
||||
m_Name: Launcher
|
||||
m_TagString: Untagged
|
||||
m_Icon: {fileID: 0}
|
||||
m_NavMeshLayer: 0
|
||||
m_StaticEditorFlags: 0
|
||||
m_IsActive: 1
|
||||
--- !u!4 &5885597208269163161
|
||||
Transform:
|
||||
m_ObjectHideFlags: 0
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
m_GameObject: {fileID: 5885597208269163163}
|
||||
m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
|
||||
m_LocalPosition: {x: 0, y: 0.7, z: 0}
|
||||
m_LocalScale: {x: 0.7940411, y: 0.38237485, z: 0.547}
|
||||
m_ConstrainProportionsScale: 0
|
||||
m_Children: []
|
||||
m_Father: {fileID: 5885597207104481986}
|
||||
m_RootOrder: 1
|
||||
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
|
||||
--- !u!114 &6559806128767475056
|
||||
MonoBehaviour:
|
||||
m_ObjectHideFlags: 0
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
m_GameObject: {fileID: 5885597208269163163}
|
||||
m_Enabled: 1
|
||||
m_EditorHideFlags: 0
|
||||
m_Script: {fileID: 11500000, guid: b49ff353512cc43728014da636fce388, type: 3}
|
||||
m_Name:
|
||||
m_EditorClassIdentifier:
|
||||
tambourine: {fileID: 1383583972917023564, guid: f8f8a87d4db1d45a19b751cae19fe4f6, type: 3}
|
||||
horizSpeed: 14
|
||||
vertSpeed: 7
|
||||
--- !u!1 &5885597208857297553
|
||||
GameObject:
|
||||
m_ObjectHideFlags: 0
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
serializedVersion: 6
|
||||
m_Component:
|
||||
- component: {fileID: 5885597208857297552}
|
||||
m_Layer: 0
|
||||
m_Name: FirePoint
|
||||
m_TagString: Untagged
|
||||
m_Icon: {fileID: 0}
|
||||
m_NavMeshLayer: 0
|
||||
m_StaticEditorFlags: 0
|
||||
m_IsActive: 1
|
||||
--- !u!4 &5885597208857297552
|
||||
Transform:
|
||||
m_ObjectHideFlags: 0
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
m_GameObject: {fileID: 5885597208857297553}
|
||||
m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
|
||||
m_LocalPosition: {x: 1, y: 0, z: 0}
|
||||
m_LocalScale: {x: 1, y: 1, z: 1}
|
||||
m_ConstrainProportionsScale: 0
|
||||
m_Children:
|
||||
- {fileID: 5885597207789090696}
|
||||
m_Father: {fileID: 5885597207560664729}
|
||||
m_RootOrder: 0
|
||||
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
|
7
Assets/Prefabs/Player.prefab.meta
Normal file
7
Assets/Prefabs/Player.prefab.meta
Normal file
@ -0,0 +1,7 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 576d3fc87874f426294e4bbacb171478
|
||||
PrefabImporter:
|
||||
externalObjects: {}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
210
Assets/Prefabs/Projectile.prefab
Normal file
210
Assets/Prefabs/Projectile.prefab
Normal file
@ -0,0 +1,210 @@
|
||||
%YAML 1.1
|
||||
%TAG !u! tag:unity3d.com,2011:
|
||||
--- !u!1 &6786092313738818144
|
||||
GameObject:
|
||||
m_ObjectHideFlags: 0
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
serializedVersion: 6
|
||||
m_Component:
|
||||
- component: {fileID: 8219214743225187619}
|
||||
- component: {fileID: 5211884072714540459}
|
||||
- component: {fileID: 4246396268875048627}
|
||||
- component: {fileID: 2452103161071792001}
|
||||
- component: {fileID: -3408990633585578017}
|
||||
- component: {fileID: 217851877528699149}
|
||||
m_Layer: 0
|
||||
m_Name: Projectile
|
||||
m_TagString: Projectile
|
||||
m_Icon: {fileID: 0}
|
||||
m_NavMeshLayer: 0
|
||||
m_StaticEditorFlags: 0
|
||||
m_IsActive: 1
|
||||
--- !u!4 &8219214743225187619
|
||||
Transform:
|
||||
m_ObjectHideFlags: 0
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
m_GameObject: {fileID: 6786092313738818144}
|
||||
m_LocalRotation: {x: 0, y: 0, z: 0.38268343, w: 0.92387956}
|
||||
m_LocalPosition: {x: 0, y: 0, z: 0}
|
||||
m_LocalScale: {x: 0.5, y: 0.5, z: 0.5}
|
||||
m_ConstrainProportionsScale: 0
|
||||
m_Children: []
|
||||
m_Father: {fileID: 0}
|
||||
m_RootOrder: 0
|
||||
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 45}
|
||||
--- !u!212 &5211884072714540459
|
||||
SpriteRenderer:
|
||||
m_ObjectHideFlags: 0
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
m_GameObject: {fileID: 6786092313738818144}
|
||||
m_Enabled: 1
|
||||
m_CastShadows: 0
|
||||
m_ReceiveShadows: 0
|
||||
m_DynamicOccludee: 1
|
||||
m_StaticShadowCaster: 0
|
||||
m_MotionVectors: 1
|
||||
m_LightProbeUsage: 1
|
||||
m_ReflectionProbeUsage: 1
|
||||
m_RayTracingMode: 0
|
||||
m_RayTraceProcedural: 0
|
||||
m_RenderingLayerMask: 1
|
||||
m_RendererPriority: 0
|
||||
m_Materials:
|
||||
- {fileID: 10754, guid: 0000000000000000f000000000000000, type: 0}
|
||||
m_StaticBatchInfo:
|
||||
firstSubMesh: 0
|
||||
subMeshCount: 0
|
||||
m_StaticBatchRoot: {fileID: 0}
|
||||
m_ProbeAnchor: {fileID: 0}
|
||||
m_LightProbeVolumeOverride: {fileID: 0}
|
||||
m_ScaleInLightmap: 1
|
||||
m_ReceiveGI: 1
|
||||
m_PreserveUVs: 0
|
||||
m_IgnoreNormalsForChartDetection: 0
|
||||
m_ImportantGI: 0
|
||||
m_StitchLightmapSeams: 1
|
||||
m_SelectedEditorRenderState: 0
|
||||
m_MinimumChartSize: 4
|
||||
m_AutoUVMaxDistance: 0.5
|
||||
m_AutoUVMaxAngle: 89
|
||||
m_LightmapParameters: {fileID: 0}
|
||||
m_SortingLayerID: 0
|
||||
m_SortingLayer: 0
|
||||
m_SortingOrder: 0
|
||||
m_Sprite: {fileID: 7482667652216324306, guid: 311925a002f4447b3a28927169b83ea6, type: 3}
|
||||
m_Color: {r: 0.9960785, g: 0.24705884, b: 0.2509804, a: 1}
|
||||
m_FlipX: 0
|
||||
m_FlipY: 0
|
||||
m_DrawMode: 0
|
||||
m_Size: {x: 1, y: 1}
|
||||
m_AdaptiveModeThreshold: 0.5
|
||||
m_SpriteTileMode: 0
|
||||
m_WasSpriteAssigned: 1
|
||||
m_MaskInteraction: 0
|
||||
m_SpriteSortPoint: 0
|
||||
--- !u!50 &4246396268875048627
|
||||
Rigidbody2D:
|
||||
serializedVersion: 4
|
||||
m_ObjectHideFlags: 0
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
m_GameObject: {fileID: 6786092313738818144}
|
||||
m_BodyType: 0
|
||||
m_Simulated: 1
|
||||
m_UseFullKinematicContacts: 0
|
||||
m_UseAutoMass: 0
|
||||
m_Mass: 1
|
||||
m_LinearDrag: 0
|
||||
m_AngularDrag: 0.05
|
||||
m_GravityScale: 0
|
||||
m_Material: {fileID: 0}
|
||||
m_IncludeLayers:
|
||||
serializedVersion: 2
|
||||
m_Bits: 0
|
||||
m_ExcludeLayers:
|
||||
serializedVersion: 2
|
||||
m_Bits: 0
|
||||
m_Interpolate: 0
|
||||
m_SleepingMode: 1
|
||||
m_CollisionDetection: 0
|
||||
m_Constraints: 0
|
||||
--- !u!58 &2452103161071792001
|
||||
CircleCollider2D:
|
||||
m_ObjectHideFlags: 0
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
m_GameObject: {fileID: 6786092313738818144}
|
||||
m_Enabled: 1
|
||||
m_Density: 1
|
||||
m_Material: {fileID: 0}
|
||||
m_IncludeLayers:
|
||||
serializedVersion: 2
|
||||
m_Bits: 0
|
||||
m_ExcludeLayers:
|
||||
serializedVersion: 2
|
||||
m_Bits: 0
|
||||
m_LayerOverridePriority: 0
|
||||
m_ForceSendLayers:
|
||||
serializedVersion: 2
|
||||
m_Bits: 4294967295
|
||||
m_ForceReceiveLayers:
|
||||
serializedVersion: 2
|
||||
m_Bits: 4294967295
|
||||
m_ContactCaptureLayers:
|
||||
serializedVersion: 2
|
||||
m_Bits: 4294967295
|
||||
m_CallbackLayers:
|
||||
serializedVersion: 2
|
||||
m_Bits: 4294967295
|
||||
m_IsTrigger: 1
|
||||
m_UsedByEffector: 0
|
||||
m_UsedByComposite: 0
|
||||
m_Offset: {x: 0, y: 0}
|
||||
serializedVersion: 2
|
||||
m_Radius: 0.81
|
||||
--- !u!61 &-3408990633585578017
|
||||
BoxCollider2D:
|
||||
m_ObjectHideFlags: 0
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
m_GameObject: {fileID: 6786092313738818144}
|
||||
m_Enabled: 1
|
||||
m_Density: 1
|
||||
m_Material: {fileID: 0}
|
||||
m_IncludeLayers:
|
||||
serializedVersion: 2
|
||||
m_Bits: 0
|
||||
m_ExcludeLayers:
|
||||
serializedVersion: 2
|
||||
m_Bits: 0
|
||||
m_LayerOverridePriority: 0
|
||||
m_ForceSendLayers:
|
||||
serializedVersion: 2
|
||||
m_Bits: 4294967295
|
||||
m_ForceReceiveLayers:
|
||||
serializedVersion: 2
|
||||
m_Bits: 4294967295
|
||||
m_ContactCaptureLayers:
|
||||
serializedVersion: 2
|
||||
m_Bits: 4294967295
|
||||
m_CallbackLayers:
|
||||
serializedVersion: 2
|
||||
m_Bits: 4294967295
|
||||
m_IsTrigger: 0
|
||||
m_UsedByEffector: 0
|
||||
m_UsedByComposite: 0
|
||||
m_Offset: {x: 0, y: 0}
|
||||
m_SpriteTilingProperty:
|
||||
border: {x: 0, y: 0, z: 0, w: 0}
|
||||
pivot: {x: 0.5, y: 0.5}
|
||||
oldSize: {x: 1, y: 1}
|
||||
newSize: {x: 1, y: 1}
|
||||
adaptiveTilingThreshold: 0.5
|
||||
drawMode: 0
|
||||
adaptiveTiling: 0
|
||||
m_AutoTiling: 0
|
||||
serializedVersion: 2
|
||||
m_Size: {x: 1, y: 1}
|
||||
m_EdgeRadius: 0
|
||||
--- !u!114 &217851877528699149
|
||||
MonoBehaviour:
|
||||
m_ObjectHideFlags: 0
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
m_GameObject: {fileID: 6786092313738818144}
|
||||
m_Enabled: 1
|
||||
m_EditorHideFlags: 0
|
||||
m_Script: {fileID: 11500000, guid: 6fa3b9e074b394c7596834a8e04284d5, type: 3}
|
||||
m_Name:
|
||||
m_EditorClassIdentifier:
|
||||
pinned: 0
|
7
Assets/Prefabs/Projectile.prefab.meta
Normal file
7
Assets/Prefabs/Projectile.prefab.meta
Normal file
@ -0,0 +1,7 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 07bd0870c6f804600bdb61d81bbb72fd
|
||||
PrefabImporter:
|
||||
externalObjects: {}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
133
Assets/Prefabs/ProjectileLauncher.prefab
Normal file
133
Assets/Prefabs/ProjectileLauncher.prefab
Normal file
@ -0,0 +1,133 @@
|
||||
%YAML 1.1
|
||||
%TAG !u! tag:unity3d.com,2011:
|
||||
--- !u!1 &5766250975723295123
|
||||
GameObject:
|
||||
m_ObjectHideFlags: 0
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
serializedVersion: 6
|
||||
m_Component:
|
||||
- component: {fileID: 7108139142192227224}
|
||||
m_Layer: 0
|
||||
m_Name: FirePoint
|
||||
m_TagString: Untagged
|
||||
m_Icon: {fileID: 0}
|
||||
m_NavMeshLayer: 0
|
||||
m_StaticEditorFlags: 0
|
||||
m_IsActive: 1
|
||||
--- !u!4 &7108139142192227224
|
||||
Transform:
|
||||
m_ObjectHideFlags: 0
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
m_GameObject: {fileID: 5766250975723295123}
|
||||
m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
|
||||
m_LocalPosition: {x: 0.75, y: 0, z: 0}
|
||||
m_LocalScale: {x: 1, y: 1, z: 1}
|
||||
m_ConstrainProportionsScale: 0
|
||||
m_Children: []
|
||||
m_Father: {fileID: 5447655033524966674}
|
||||
m_RootOrder: 0
|
||||
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
|
||||
--- !u!1 &8749426230765200713
|
||||
GameObject:
|
||||
m_ObjectHideFlags: 0
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
serializedVersion: 6
|
||||
m_Component:
|
||||
- component: {fileID: 5447655033524966674}
|
||||
- component: {fileID: 4957706768026546484}
|
||||
- component: {fileID: 6465130401096595230}
|
||||
m_Layer: 0
|
||||
m_Name: ProjectileLauncher
|
||||
m_TagString: Untagged
|
||||
m_Icon: {fileID: 0}
|
||||
m_NavMeshLayer: 0
|
||||
m_StaticEditorFlags: 0
|
||||
m_IsActive: 1
|
||||
--- !u!4 &5447655033524966674
|
||||
Transform:
|
||||
m_ObjectHideFlags: 0
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
m_GameObject: {fileID: 8749426230765200713}
|
||||
m_LocalRotation: {x: 0, y: 0, z: 0.7071068, w: 0.7071068}
|
||||
m_LocalPosition: {x: 0, y: 0, z: 0}
|
||||
m_LocalScale: {x: 0.75, y: 0.75, z: 0.75}
|
||||
m_ConstrainProportionsScale: 0
|
||||
m_Children:
|
||||
- {fileID: 7108139142192227224}
|
||||
m_Father: {fileID: 0}
|
||||
m_RootOrder: 13
|
||||
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 90}
|
||||
--- !u!212 &4957706768026546484
|
||||
SpriteRenderer:
|
||||
m_ObjectHideFlags: 0
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
m_GameObject: {fileID: 8749426230765200713}
|
||||
m_Enabled: 1
|
||||
m_CastShadows: 0
|
||||
m_ReceiveShadows: 0
|
||||
m_DynamicOccludee: 1
|
||||
m_StaticShadowCaster: 0
|
||||
m_MotionVectors: 1
|
||||
m_LightProbeUsage: 1
|
||||
m_ReflectionProbeUsage: 1
|
||||
m_RayTracingMode: 0
|
||||
m_RayTraceProcedural: 0
|
||||
m_RenderingLayerMask: 1
|
||||
m_RendererPriority: 0
|
||||
m_Materials:
|
||||
- {fileID: 10754, guid: 0000000000000000f000000000000000, type: 0}
|
||||
m_StaticBatchInfo:
|
||||
firstSubMesh: 0
|
||||
subMeshCount: 0
|
||||
m_StaticBatchRoot: {fileID: 0}
|
||||
m_ProbeAnchor: {fileID: 0}
|
||||
m_LightProbeVolumeOverride: {fileID: 0}
|
||||
m_ScaleInLightmap: 1
|
||||
m_ReceiveGI: 1
|
||||
m_PreserveUVs: 0
|
||||
m_IgnoreNormalsForChartDetection: 0
|
||||
m_ImportantGI: 0
|
||||
m_StitchLightmapSeams: 1
|
||||
m_SelectedEditorRenderState: 0
|
||||
m_MinimumChartSize: 4
|
||||
m_AutoUVMaxDistance: 0.5
|
||||
m_AutoUVMaxAngle: 89
|
||||
m_LightmapParameters: {fileID: 0}
|
||||
m_SortingLayerID: 0
|
||||
m_SortingLayer: 0
|
||||
m_SortingOrder: 0
|
||||
m_Sprite: {fileID: -9095717837082945937, guid: 207ee8102dd4143d288186ef0be518ee, type: 3}
|
||||
m_Color: {r: 0.5707547, g: 0.582636, b: 1, a: 1}
|
||||
m_FlipX: 0
|
||||
m_FlipY: 0
|
||||
m_DrawMode: 0
|
||||
m_Size: {x: 1, y: 2}
|
||||
m_AdaptiveModeThreshold: 0.5
|
||||
m_SpriteTileMode: 0
|
||||
m_WasSpriteAssigned: 1
|
||||
m_MaskInteraction: 0
|
||||
m_SpriteSortPoint: 0
|
||||
--- !u!114 &6465130401096595230
|
||||
MonoBehaviour:
|
||||
m_ObjectHideFlags: 0
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
m_GameObject: {fileID: 8749426230765200713}
|
||||
m_Enabled: 1
|
||||
m_EditorHideFlags: 0
|
||||
m_Script: {fileID: 11500000, guid: 8457129b21c0d4a468efafbc12f2acc4, type: 3}
|
||||
m_Name:
|
||||
m_EditorClassIdentifier:
|
||||
projectile: {fileID: 6786092313738818144, guid: 07bd0870c6f804600bdb61d81bbb72fd, type: 3}
|
||||
firePoint: {fileID: 5766250975723295123}
|
7
Assets/Prefabs/ProjectileLauncher.prefab.meta
Normal file
7
Assets/Prefabs/ProjectileLauncher.prefab.meta
Normal file
@ -0,0 +1,7 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 5e69412b9141e4bdeaaaf00f6dce7b82
|
||||
PrefabImporter:
|
||||
externalObjects: {}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
184
Assets/Prefabs/tambourine.prefab
Normal file
184
Assets/Prefabs/tambourine.prefab
Normal file
@ -0,0 +1,184 @@
|
||||
%YAML 1.1
|
||||
%TAG !u! tag:unity3d.com,2011:
|
||||
--- !u!1 &1383583972917023564
|
||||
GameObject:
|
||||
m_ObjectHideFlags: 0
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
serializedVersion: 6
|
||||
m_Component:
|
||||
- component: {fileID: 1383583972917023563}
|
||||
- component: {fileID: 1383583972917023562}
|
||||
- component: {fileID: 1383583972917023565}
|
||||
- component: {fileID: 7137590925806210046}
|
||||
- component: {fileID: 4280484977328239622}
|
||||
- component: {fileID: 3514624092989024146}
|
||||
m_Layer: 0
|
||||
m_Name: tambourine
|
||||
m_TagString: tambourine
|
||||
m_Icon: {fileID: 0}
|
||||
m_NavMeshLayer: 0
|
||||
m_StaticEditorFlags: 0
|
||||
m_IsActive: 1
|
||||
--- !u!4 &1383583972917023563
|
||||
Transform:
|
||||
m_ObjectHideFlags: 0
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
m_GameObject: {fileID: 1383583972917023564}
|
||||
m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
|
||||
m_LocalPosition: {x: -2.98, y: -0.67, z: 0}
|
||||
m_LocalScale: {x: 0.04, y: 0.04, z: 0.04}
|
||||
m_ConstrainProportionsScale: 0
|
||||
m_Children: []
|
||||
m_Father: {fileID: 0}
|
||||
m_RootOrder: 0
|
||||
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
|
||||
--- !u!212 &1383583972917023562
|
||||
SpriteRenderer:
|
||||
m_ObjectHideFlags: 0
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
m_GameObject: {fileID: 1383583972917023564}
|
||||
m_Enabled: 1
|
||||
m_CastShadows: 0
|
||||
m_ReceiveShadows: 0
|
||||
m_DynamicOccludee: 1
|
||||
m_StaticShadowCaster: 0
|
||||
m_MotionVectors: 1
|
||||
m_LightProbeUsage: 1
|
||||
m_ReflectionProbeUsage: 1
|
||||
m_RayTracingMode: 0
|
||||
m_RayTraceProcedural: 0
|
||||
m_RenderingLayerMask: 1
|
||||
m_RendererPriority: 0
|
||||
m_Materials:
|
||||
- {fileID: 10754, guid: 0000000000000000f000000000000000, type: 0}
|
||||
m_StaticBatchInfo:
|
||||
firstSubMesh: 0
|
||||
subMeshCount: 0
|
||||
m_StaticBatchRoot: {fileID: 0}
|
||||
m_ProbeAnchor: {fileID: 0}
|
||||
m_LightProbeVolumeOverride: {fileID: 0}
|
||||
m_ScaleInLightmap: 1
|
||||
m_ReceiveGI: 1
|
||||
m_PreserveUVs: 0
|
||||
m_IgnoreNormalsForChartDetection: 0
|
||||
m_ImportantGI: 0
|
||||
m_StitchLightmapSeams: 1
|
||||
m_SelectedEditorRenderState: 0
|
||||
m_MinimumChartSize: 4
|
||||
m_AutoUVMaxDistance: 0.5
|
||||
m_AutoUVMaxAngle: 89
|
||||
m_LightmapParameters: {fileID: 0}
|
||||
m_SortingLayerID: 0
|
||||
m_SortingLayer: 0
|
||||
m_SortingOrder: 1
|
||||
m_Sprite: {fileID: 21300000, guid: b5f64a07787ea48ad8d00b3ec2d138e4, type: 3}
|
||||
m_Color: {r: 1, g: 1, b: 1, a: 1}
|
||||
m_FlipX: 0
|
||||
m_FlipY: 0
|
||||
m_DrawMode: 0
|
||||
m_Size: {x: 10.2, y: 10.16}
|
||||
m_AdaptiveModeThreshold: 0.5
|
||||
m_SpriteTileMode: 0
|
||||
m_WasSpriteAssigned: 1
|
||||
m_MaskInteraction: 0
|
||||
m_SpriteSortPoint: 0
|
||||
--- !u!95 &1383583972917023565
|
||||
Animator:
|
||||
serializedVersion: 5
|
||||
m_ObjectHideFlags: 0
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
m_GameObject: {fileID: 1383583972917023564}
|
||||
m_Enabled: 1
|
||||
m_Avatar: {fileID: 0}
|
||||
m_Controller: {fileID: 9100000, guid: c55b775f272db4472814cb6f30ac169e, type: 2}
|
||||
m_CullingMode: 0
|
||||
m_UpdateMode: 0
|
||||
m_ApplyRootMotion: 0
|
||||
m_LinearVelocityBlending: 0
|
||||
m_StabilizeFeet: 0
|
||||
m_WarningMessage:
|
||||
m_HasTransformHierarchy: 1
|
||||
m_AllowConstantClipSamplingOptimization: 1
|
||||
m_KeepAnimatorStateOnDisable: 0
|
||||
--- !u!114 &7137590925806210046
|
||||
MonoBehaviour:
|
||||
m_ObjectHideFlags: 0
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
m_GameObject: {fileID: 1383583972917023564}
|
||||
m_Enabled: 1
|
||||
m_EditorHideFlags: 0
|
||||
m_Script: {fileID: 11500000, guid: 4797d7ba2c50b4594bb88bfffee1f8d0, type: 3}
|
||||
m_Name:
|
||||
m_EditorClassIdentifier:
|
||||
--- !u!50 &4280484977328239622
|
||||
Rigidbody2D:
|
||||
serializedVersion: 4
|
||||
m_ObjectHideFlags: 0
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
m_GameObject: {fileID: 1383583972917023564}
|
||||
m_BodyType: 0
|
||||
m_Simulated: 1
|
||||
m_UseFullKinematicContacts: 0
|
||||
m_UseAutoMass: 0
|
||||
m_Mass: 1
|
||||
m_LinearDrag: 0
|
||||
m_AngularDrag: 0.05
|
||||
m_GravityScale: 3
|
||||
m_Material: {fileID: 0}
|
||||
m_IncludeLayers:
|
||||
serializedVersion: 2
|
||||
m_Bits: 0
|
||||
m_ExcludeLayers:
|
||||
serializedVersion: 2
|
||||
m_Bits: 0
|
||||
m_Interpolate: 0
|
||||
m_SleepingMode: 1
|
||||
m_CollisionDetection: 0
|
||||
m_Constraints: 0
|
||||
--- !u!58 &3514624092989024146
|
||||
CircleCollider2D:
|
||||
m_ObjectHideFlags: 0
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
m_GameObject: {fileID: 1383583972917023564}
|
||||
m_Enabled: 1
|
||||
m_Density: 1
|
||||
m_Material: {fileID: 0}
|
||||
m_IncludeLayers:
|
||||
serializedVersion: 2
|
||||
m_Bits: 0
|
||||
m_ExcludeLayers:
|
||||
serializedVersion: 2
|
||||
m_Bits: 0
|
||||
m_LayerOverridePriority: 0
|
||||
m_ForceSendLayers:
|
||||
serializedVersion: 2
|
||||
m_Bits: 4294967295
|
||||
m_ForceReceiveLayers:
|
||||
serializedVersion: 2
|
||||
m_Bits: 4294967295
|
||||
m_ContactCaptureLayers:
|
||||
serializedVersion: 2
|
||||
m_Bits: 4294967295
|
||||
m_CallbackLayers:
|
||||
serializedVersion: 2
|
||||
m_Bits: 4294967295
|
||||
m_IsTrigger: 0
|
||||
m_UsedByEffector: 0
|
||||
m_UsedByComposite: 0
|
||||
m_Offset: {x: 0, y: 0}
|
||||
serializedVersion: 2
|
||||
m_Radius: 5.6
|
7
Assets/Prefabs/tambourine.prefab.meta
Normal file
7
Assets/Prefabs/tambourine.prefab.meta
Normal file
@ -0,0 +1,7 @@
|
||||
fileFormatVersion: 2
|
||||
guid: f8f8a87d4db1d45a19b751cae19fe4f6
|
||||
PrefabImporter:
|
||||
externalObjects: {}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
2864
Assets/Scenes/GrappleScene.unity
Normal file
2864
Assets/Scenes/GrappleScene.unity
Normal file
File diff suppressed because it is too large
Load Diff
7
Assets/Scenes/GrappleScene.unity.meta
Normal file
7
Assets/Scenes/GrappleScene.unity.meta
Normal file
@ -0,0 +1,7 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 448086d7e4e5643efb9aa6c436632072
|
||||
DefaultImporter:
|
||||
externalObjects: {}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
30
Assets/Scripts/EnemyPatrol.cs
Normal file
30
Assets/Scripts/EnemyPatrol.cs
Normal file
@ -0,0 +1,30 @@
|
||||
using System.Collections;
|
||||
using System.Collections.Generic;
|
||||
using UnityEngine;
|
||||
|
||||
public class EnemyPatrol : MonoBehaviour {
|
||||
|
||||
public bool pinned = false;
|
||||
public float range;
|
||||
public float xLeft;
|
||||
public float xRight;
|
||||
public Vector2 movementVector = Vector2.right;
|
||||
public float moveSpeed;
|
||||
|
||||
// Start is called before the first frame update
|
||||
void Start() {
|
||||
xLeft = transform.position.x - range;
|
||||
xRight = transform.position.x + range;
|
||||
movementVector *= moveSpeed;
|
||||
}
|
||||
|
||||
// Update is called once per frame
|
||||
void Update() {
|
||||
if (!pinned) {
|
||||
if (transform.position.x >= xRight || transform.position.x <= xLeft) {
|
||||
movementVector = -movementVector;
|
||||
}
|
||||
transform.position += new Vector3(movementVector.x, 0, 0) * Time.deltaTime;
|
||||
}
|
||||
}
|
||||
}
|
11
Assets/Scripts/EnemyPatrol.cs.meta
Normal file
11
Assets/Scripts/EnemyPatrol.cs.meta
Normal file
@ -0,0 +1,11 @@
|
||||
fileFormatVersion: 2
|
||||
guid: e136b6711a1f64a90b596e8a68b34b78
|
||||
MonoImporter:
|
||||
externalObjects: {}
|
||||
serializedVersion: 2
|
||||
defaultReferences: []
|
||||
executionOrder: 0
|
||||
icon: {instanceID: 0}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
17
Assets/Scripts/Launch.cs
Normal file
17
Assets/Scripts/Launch.cs
Normal file
@ -0,0 +1,17 @@
|
||||
using System.Collections;
|
||||
using System.Collections.Generic;
|
||||
using UnityEngine;
|
||||
|
||||
public class Launch : MonoBehaviour {
|
||||
|
||||
[SerializeField] GameObject tambourine;
|
||||
|
||||
[SerializeField] private float horizSpeed;
|
||||
[SerializeField] private float vertSpeed;
|
||||
|
||||
public void ThrowTambourine(int facing) {
|
||||
GameObject newTambourine = Instantiate(tambourine, this.gameObject.transform.position, this.gameObject.transform.rotation);
|
||||
// multiply horizSpeed by facing if not using moving launch point
|
||||
newTambourine.GetComponent<Rigidbody2D>().AddForce(new Vector2(horizSpeed * facing, vertSpeed), ForceMode2D.Impulse);
|
||||
}
|
||||
}
|
11
Assets/Scripts/Launch.cs.meta
Normal file
11
Assets/Scripts/Launch.cs.meta
Normal file
@ -0,0 +1,11 @@
|
||||
fileFormatVersion: 2
|
||||
guid: b49ff353512cc43728014da636fce388
|
||||
MonoImporter:
|
||||
externalObjects: {}
|
||||
serializedVersion: 2
|
||||
defaultReferences: []
|
||||
executionOrder: 0
|
||||
icon: {instanceID: 0}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
148
Assets/Scripts/PlayerBehavior.cs
Normal file
148
Assets/Scripts/PlayerBehavior.cs
Normal file
@ -0,0 +1,148 @@
|
||||
using System.Collections;
|
||||
using System.Collections.Generic;
|
||||
using UnityEngine;
|
||||
using UnityEngine.InputSystem;
|
||||
|
||||
public class PlayerBehavior : MonoBehaviour {
|
||||
|
||||
[Header("Physics:")]
|
||||
public float moveSpeed;
|
||||
public float jumpSpeed;
|
||||
public float airSpeed;
|
||||
private float _hInput;
|
||||
private Rigidbody2D _rb;
|
||||
private int forward = 1;
|
||||
public PlayerInput playerInput;
|
||||
|
||||
public LayerMask groundLayer;
|
||||
public Vector2 boxSize;
|
||||
public float maxDistanceFromGround;
|
||||
|
||||
[Header("Tambourine:")]
|
||||
[SerializeField] private Launch launcher;
|
||||
[HideInInspector] public bool hasTambourine = true;
|
||||
|
||||
[Header("Grappling:")]
|
||||
[SerializeField] public Tutorial_GrapplingGun grapplingGun;
|
||||
[SerializeField] public Tutorial_GrapplingRope grapplingRope;
|
||||
private GameObject grappleSurface;
|
||||
|
||||
|
||||
void Start() {
|
||||
_rb = GetComponent<Rigidbody2D>();
|
||||
airSpeed = .5f * moveSpeed;
|
||||
}
|
||||
|
||||
void Update() {
|
||||
// move
|
||||
// _hInput = Input.GetAxis("Horizontal");
|
||||
// if (_hInput < 0) {
|
||||
// forward = -1;
|
||||
// } else if (_hInput > 0) {
|
||||
// forward = 1;
|
||||
// }
|
||||
|
||||
// jump
|
||||
// if (Input.GetKeyDown(KeyCode.Space)) {
|
||||
if (playerInput.actions["Jump"].WasPressedThisFrame() && IsGrounded()) {
|
||||
_rb.AddForce(Vector2.up * jumpSpeed, ForceMode2D.Impulse);
|
||||
}
|
||||
|
||||
// throw tambourine
|
||||
// if (Input.GetKeyDown(KeyCode.K)) {
|
||||
if (playerInput.actions["ThrowTambourine"].WasPressedThisFrame()) {
|
||||
if (hasTambourine && !grapplingRope.isGrappling) {
|
||||
launcher.ThrowTambourine(forward);
|
||||
hasTambourine = false;
|
||||
}
|
||||
}
|
||||
|
||||
// grapple
|
||||
GameObject tambourine = GameObject.FindGameObjectWithTag("tambourine");
|
||||
// if (Input.GetKeyDown(KeyCode.L)) {
|
||||
if (playerInput.actions["Grapple"].WasPressedThisFrame()) {
|
||||
if (tambourine != null) { // grapple to tambourine
|
||||
if (!grapplingRope.isGrappling && tambourine.GetComponent<TambourineBehavior>().pinned) {
|
||||
grapplingGun.GrappleToTambourine(tambourine);
|
||||
grapplingRope.isGrappling = true;
|
||||
}
|
||||
} else { // grapple to grapple surface
|
||||
// RaycastHit2D hit = Physics2D.Raycast(transform.position, new Vector2(0.500f * forward, 0.866f));
|
||||
// if (hit.collider != null) {
|
||||
// print("hit " + hit.collider.gameObject.tag);
|
||||
// if (hit.collider.gameObject.tag == "grappleSurface" && !grapplingRope.isGrappling) {
|
||||
// grapplingGun.GrappleToSurface(hit.collider.gameObject.transform.position);
|
||||
// grapplingRope.isGrappling = true;
|
||||
// }
|
||||
// else {print("missed");}
|
||||
// }
|
||||
if (grappleSurface != null) {
|
||||
grapplingGun.GrappleToSurface(grappleSurface.transform.position);
|
||||
grapplingRope.isGrappling = true;
|
||||
}
|
||||
}
|
||||
}
|
||||
// if (Input.GetKeyUp(KeyCode.L)) {
|
||||
if (playerInput.actions["Grapple"].WasReleasedThisFrame()) {
|
||||
if (tambourine != null && grapplingRope.isGrappling) {
|
||||
tambourine.GetComponent<TambourineBehavior>().DestroySelf();
|
||||
}
|
||||
grapplingGun.ReleaseGrapple();
|
||||
}
|
||||
// if (Input.GetKey(KeyCode.L)) {
|
||||
if (playerInput.actions["Grapple"].IsPressed()) {
|
||||
Debug.DrawRay(transform.position, new Vector2(0.500f * forward, 0.866f), Color.green);
|
||||
}
|
||||
}
|
||||
|
||||
void OnMove(InputValue value) {
|
||||
_hInput = value.Get<Vector2>().x;
|
||||
if (_hInput < 0) {
|
||||
forward = -1;
|
||||
} else if (_hInput > 0) {
|
||||
forward = 1;
|
||||
}
|
||||
print(_hInput);
|
||||
}
|
||||
|
||||
void FixedUpdate() {
|
||||
// if (_hInput != 0) {
|
||||
// _rb.velocity = new Vector2(_hInput * moveSpeed, _rb.velocity.y);
|
||||
// }
|
||||
|
||||
if (grapplingRope.isGrappling && _hInput != 0 && !IsGrounded()) {
|
||||
// print("grappling force");
|
||||
_rb.AddForce(new Vector2(_hInput * (airSpeed / 3), 0));
|
||||
} else if (_hInput != 0 && !IsGrounded()) {
|
||||
_rb.AddForce(new Vector2(_hInput * airSpeed, 0));
|
||||
} else if (_hInput != 0) {
|
||||
// print("normal movement");
|
||||
_rb.AddForce(new Vector2(_hInput * moveSpeed, 0));
|
||||
// _rb.velocity = new Vector2(_hInput * moveSpeed, _rb.velocity.y);
|
||||
}
|
||||
}
|
||||
|
||||
void OnTriggerEnter2D(Collider2D col) {
|
||||
if (col.tag == "grappleSurface") {
|
||||
grappleSurface = col.gameObject;
|
||||
}
|
||||
}
|
||||
|
||||
void OnTriggerExit2D(Collider2D col) {
|
||||
if (col.tag == "grappleSurface") {
|
||||
grappleSurface = null;
|
||||
}
|
||||
}
|
||||
|
||||
bool IsGrounded() {
|
||||
if (Physics2D.BoxCast(transform.position, boxSize, 0, -transform.up, maxDistanceFromGround, groundLayer)) {
|
||||
return true;
|
||||
}
|
||||
return false;
|
||||
}
|
||||
|
||||
void OnDrawGizmos() {
|
||||
Gizmos.color = Color.red;
|
||||
Gizmos.DrawCube(transform.position-transform.up*maxDistanceFromGround,boxSize);
|
||||
}
|
||||
}
|
11
Assets/Scripts/PlayerBehavior.cs.meta
Normal file
11
Assets/Scripts/PlayerBehavior.cs.meta
Normal file
@ -0,0 +1,11 @@
|
||||
fileFormatVersion: 2
|
||||
guid: b0115312556794123a3cafad4b83d0a7
|
||||
MonoImporter:
|
||||
externalObjects: {}
|
||||
serializedVersion: 2
|
||||
defaultReferences: []
|
||||
executionOrder: 0
|
||||
icon: {instanceID: 0}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
40
Assets/Scripts/ProgrammerHUDController.cs
Normal file
40
Assets/Scripts/ProgrammerHUDController.cs
Normal file
@ -0,0 +1,40 @@
|
||||
using System.Collections;
|
||||
using System.Collections.Generic;
|
||||
using UnityEngine;
|
||||
using TMPro;
|
||||
|
||||
public class ProgrammerHUDController : MonoBehaviour {
|
||||
|
||||
// assigned in inspector
|
||||
[SerializeField] TMP_Text trumpetUI;
|
||||
[SerializeField] TMP_Text clarinetUI;
|
||||
[SerializeField] TMP_Text tambourineUI;
|
||||
[SerializeField] TMP_Text cymbalUI;
|
||||
[SerializeField] TMP_Text stateText;
|
||||
|
||||
[SerializeField] GameObject programmerHUD;
|
||||
[SerializeField] StateController stateController;
|
||||
|
||||
// Start is called before the first frame update
|
||||
void Start() {
|
||||
trumpetUI.text = "Can Trumpet?\n" + stateController.canTrumpet;
|
||||
clarinetUI.text = "Can Clarinet?\n" + stateController.canClarinet;
|
||||
cymbalUI.text = "Can Cymbal?\n" + stateController.canCymbal;
|
||||
tambourineUI.text = "Can Tambourine?\n" + stateController.canTambourine;
|
||||
stateText.text = "Current State:\n" + stateController.currentState;
|
||||
}
|
||||
|
||||
// Update is called once per frame
|
||||
void Update() {
|
||||
trumpetUI.text = "Can Trumpet?\n" + stateController.canTrumpet;
|
||||
clarinetUI.text = "Can Clarinet?\n" + stateController.canClarinet;
|
||||
cymbalUI.text = "Can Cymbal?\n" + stateController.canCymbal;
|
||||
tambourineUI.text = "Can Tambourine?\n" + stateController.canTambourine;
|
||||
stateText.text = "Current State:\n" + stateController.currentState;
|
||||
|
||||
if (Input.GetKeyDown(KeyCode.H)) {
|
||||
programmerHUD.SetActive(!programmerHUD.activeSelf);
|
||||
}
|
||||
|
||||
}
|
||||
}
|
11
Assets/Scripts/ProgrammerHUDController.cs.meta
Normal file
11
Assets/Scripts/ProgrammerHUDController.cs.meta
Normal file
@ -0,0 +1,11 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 3318c04b8ab0d4465a73385a51fb6fa6
|
||||
MonoImporter:
|
||||
externalObjects: {}
|
||||
serializedVersion: 2
|
||||
defaultReferences: []
|
||||
executionOrder: 0
|
||||
icon: {instanceID: 0}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
23
Assets/Scripts/ProjectileBehavior.cs
Normal file
23
Assets/Scripts/ProjectileBehavior.cs
Normal file
@ -0,0 +1,23 @@
|
||||
using System.Collections;
|
||||
using System.Collections.Generic;
|
||||
using UnityEngine;
|
||||
|
||||
public class ProjectileBehavior : MonoBehaviour {
|
||||
|
||||
public bool pinned = false;
|
||||
|
||||
public void Explode() {
|
||||
Destroy(this.gameObject);
|
||||
}
|
||||
|
||||
public void Pin() {
|
||||
this.gameObject.GetComponent<Rigidbody2D>().constraints = RigidbodyConstraints2D.FreezeAll;
|
||||
this.gameObject.GetComponent<BoxCollider2D>().enabled = false;
|
||||
}
|
||||
|
||||
public void OnCollisionEnter2D(Collision2D col) {
|
||||
if (col.gameObject.tag == "wall") {
|
||||
Explode();
|
||||
}
|
||||
}
|
||||
}
|
11
Assets/Scripts/ProjectileBehavior.cs.meta
Normal file
11
Assets/Scripts/ProjectileBehavior.cs.meta
Normal file
@ -0,0 +1,11 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 6fa3b9e074b394c7596834a8e04284d5
|
||||
MonoImporter:
|
||||
externalObjects: {}
|
||||
serializedVersion: 2
|
||||
defaultReferences: []
|
||||
executionOrder: 0
|
||||
icon: {instanceID: 0}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
22
Assets/Scripts/ProjectileEnemy.cs
Normal file
22
Assets/Scripts/ProjectileEnemy.cs
Normal file
@ -0,0 +1,22 @@
|
||||
using System.Collections;
|
||||
using System.Collections.Generic;
|
||||
using UnityEngine;
|
||||
|
||||
public class ProjectileEnemy : MonoBehaviour {
|
||||
|
||||
[SerializeField] GameObject projectile;
|
||||
[SerializeField] GameObject firePoint;
|
||||
|
||||
// Start is called before the first frame update
|
||||
void Start() {
|
||||
StartCoroutine(Fire());
|
||||
}
|
||||
|
||||
IEnumerator Fire() {
|
||||
yield return new WaitForSeconds(3f);
|
||||
GameObject newProjectile = Instantiate(projectile, firePoint.transform.position, firePoint.transform.rotation);
|
||||
newProjectile.GetComponent<Rigidbody2D>().AddRelativeForce(new Vector2(80, 0));
|
||||
newProjectile.transform.Rotate(new Vector3(0,0,45));
|
||||
StartCoroutine(Fire());
|
||||
}
|
||||
}
|
11
Assets/Scripts/ProjectileEnemy.cs.meta
Normal file
11
Assets/Scripts/ProjectileEnemy.cs.meta
Normal file
@ -0,0 +1,11 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 8457129b21c0d4a468efafbc12f2acc4
|
||||
MonoImporter:
|
||||
externalObjects: {}
|
||||
serializedVersion: 2
|
||||
defaultReferences: []
|
||||
executionOrder: 0
|
||||
icon: {instanceID: 0}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
78
Assets/Scripts/StateController.cs
Normal file
78
Assets/Scripts/StateController.cs
Normal file
@ -0,0 +1,78 @@
|
||||
using System.Collections;
|
||||
using System.Collections.Generic;
|
||||
using UnityEngine;
|
||||
|
||||
public class StateController : MonoBehaviour {
|
||||
|
||||
// this is mostly a placeholder for making the programmer HUD work properly
|
||||
// something like this will be needed later but like with real variables
|
||||
|
||||
public bool canTrumpet = true;
|
||||
public bool canTambourine = true;
|
||||
public bool canClarinet = true;
|
||||
public bool canCymbal = true;
|
||||
|
||||
public enum PlayerStates {
|
||||
Idle,
|
||||
Running,
|
||||
Jumping,
|
||||
Falling,
|
||||
TrumpetJumping,
|
||||
TambourineThrowing,
|
||||
SpiderGrappling,
|
||||
ClarinetDiving,
|
||||
CymbalParrying,
|
||||
}
|
||||
public PlayerStates currentState = PlayerStates.Idle;
|
||||
|
||||
|
||||
// Start is called before the first frame update
|
||||
void Start() {
|
||||
|
||||
}
|
||||
|
||||
// Update is called once per frame
|
||||
void Update() {
|
||||
if (Input.GetKeyDown(KeyCode.Q)) {
|
||||
canTrumpet = !canTrumpet;
|
||||
print("Q");
|
||||
}
|
||||
if (Input.GetKeyDown(KeyCode.W)) {
|
||||
canTambourine = !canTambourine;
|
||||
}
|
||||
if (Input.GetKeyDown(KeyCode.E)) {
|
||||
canClarinet = !canClarinet;
|
||||
}
|
||||
if (Input.GetKeyDown(KeyCode.R)) {
|
||||
canCymbal = !canCymbal;
|
||||
}
|
||||
|
||||
if (Input.GetKeyDown("1")) {
|
||||
currentState = PlayerStates.Idle;
|
||||
}
|
||||
if (Input.GetKeyDown("2")) {
|
||||
currentState = PlayerStates.Running;
|
||||
}
|
||||
if (Input.GetKeyDown("3")) {
|
||||
currentState = PlayerStates.Jumping;
|
||||
}
|
||||
if (Input.GetKeyDown("4")) {
|
||||
currentState = PlayerStates.Falling;
|
||||
}
|
||||
if (Input.GetKeyDown("5")) {
|
||||
currentState = PlayerStates.TrumpetJumping;
|
||||
}
|
||||
if (Input.GetKeyDown("6")) {
|
||||
currentState = PlayerStates.TambourineThrowing;
|
||||
}
|
||||
if (Input.GetKeyDown("7")) {
|
||||
currentState = PlayerStates.SpiderGrappling;
|
||||
}
|
||||
if (Input.GetKeyDown("8")) {
|
||||
currentState = PlayerStates.ClarinetDiving;
|
||||
}
|
||||
if (Input.GetKeyDown("9")) {
|
||||
currentState = PlayerStates.CymbalParrying;
|
||||
}
|
||||
}
|
||||
}
|
11
Assets/Scripts/StateController.cs.meta
Normal file
11
Assets/Scripts/StateController.cs.meta
Normal file
@ -0,0 +1,11 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 73653b02e42804d288eaaf881c511225
|
||||
MonoImporter:
|
||||
externalObjects: {}
|
||||
serializedVersion: 2
|
||||
defaultReferences: []
|
||||
executionOrder: 0
|
||||
icon: {instanceID: 0}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
86
Assets/Scripts/TambourineBehavior.cs
Normal file
86
Assets/Scripts/TambourineBehavior.cs
Normal file
@ -0,0 +1,86 @@
|
||||
using System.Collections;
|
||||
using System.Collections.Generic;
|
||||
using UnityEngine;
|
||||
|
||||
public class TambourineBehavior : MonoBehaviour {
|
||||
|
||||
private Rigidbody2D rb;
|
||||
// private float timer;
|
||||
|
||||
private Animator animator;
|
||||
|
||||
private GameObject collidedObject;
|
||||
private float timeLerped = 0.0f;
|
||||
private float timeToLerp = 0.5f;
|
||||
|
||||
private GameObject player;
|
||||
|
||||
public bool pinned = false;
|
||||
|
||||
|
||||
void Awake() {
|
||||
rb = this.gameObject.GetComponent<Rigidbody2D>();
|
||||
animator = this.gameObject.GetComponent<Animator>();
|
||||
player = GameObject.FindGameObjectWithTag("Player");
|
||||
}
|
||||
|
||||
|
||||
void Start() {
|
||||
// rb.AddForce(new Vector2(horizSpeed, vertSpeed), ForceMode2D.Impulse);
|
||||
StartCoroutine(CheckToDestroy());
|
||||
}
|
||||
|
||||
void Update() {
|
||||
// if (Input.GetKeyUp(KeyCode.K)) {
|
||||
// Destroy(this.gameObject);
|
||||
// }
|
||||
if (collidedObject != null && collidedObject.tag != "grappleSurface") {
|
||||
rb.constraints = RigidbodyConstraints2D.FreezeAll;
|
||||
// this.gameObject.transform.position = col.transform.position;
|
||||
timeLerped += Time.deltaTime;
|
||||
this.gameObject.transform.position = Vector2.Lerp(this.gameObject.transform.position, collidedObject.transform.position, timeLerped/timeToLerp);
|
||||
if (this.gameObject.transform.position.x == collidedObject.transform.position.x && this.gameObject.transform.position.y == collidedObject.transform.position.y) {
|
||||
animator.SetBool("pinned", true);
|
||||
pinned = true;
|
||||
} else {
|
||||
// print("pinned, but not same position: " + this.gameObject.transform.position + " / " + collidedObject.transform.position);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
void OnTriggerEnter2D(Collider2D col) {
|
||||
collidedObject = col.gameObject;
|
||||
this.gameObject.GetComponent<CircleCollider2D>().enabled = false;
|
||||
if (collidedObject.tag == "Enemy") {
|
||||
collidedObject.GetComponent<EnemyPatrol>().pinned = true;
|
||||
} else if (collidedObject.tag == "Projectile") {
|
||||
// print("pinned");
|
||||
collidedObject.GetComponent<ProjectileBehavior>().Pin();
|
||||
}
|
||||
}
|
||||
|
||||
void OnCollisionEnter2D(Collision2D col) {
|
||||
if (col.gameObject.tag == "wall") {
|
||||
DestroySelf();
|
||||
}
|
||||
}
|
||||
|
||||
IEnumerator CheckToDestroy() {
|
||||
yield return new WaitForSeconds(5f);
|
||||
print("waited 5");
|
||||
if (!player.GetComponent<PlayerBehavior>().grapplingRope.isGrappling) {
|
||||
DestroySelf();
|
||||
}
|
||||
}
|
||||
|
||||
public void DestroySelf() {
|
||||
if (collidedObject != null && collidedObject.tag == "Enemy") {
|
||||
collidedObject.GetComponent<EnemyPatrol>().pinned = false;
|
||||
} else if (collidedObject != null && collidedObject.tag == "Projectile") {
|
||||
collidedObject.GetComponent<ProjectileBehavior>().Explode();
|
||||
}
|
||||
player.GetComponent<PlayerBehavior>().hasTambourine = true;
|
||||
player.GetComponent<PlayerBehavior>().grapplingGun.ReleaseGrapple();
|
||||
Destroy(this.gameObject);
|
||||
}
|
||||
}
|
11
Assets/Scripts/TambourineBehavior.cs.meta
Normal file
11
Assets/Scripts/TambourineBehavior.cs.meta
Normal file
@ -0,0 +1,11 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 4797d7ba2c50b4594bb88bfffee1f8d0
|
||||
MonoImporter:
|
||||
externalObjects: {}
|
||||
serializedVersion: 2
|
||||
defaultReferences: []
|
||||
executionOrder: 0
|
||||
icon: {instanceID: 0}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
222
Assets/Scripts/Tutorial_GrapplingGun.cs
Normal file
222
Assets/Scripts/Tutorial_GrapplingGun.cs
Normal file
@ -0,0 +1,222 @@
|
||||
using System.Collections;
|
||||
using System.Collections.Generic;
|
||||
using UnityEngine;
|
||||
using UnityEngine.InputSystem;
|
||||
|
||||
public class Tutorial_GrapplingGun : MonoBehaviour {
|
||||
|
||||
[Header("Scripts References:")]
|
||||
public Tutorial_GrapplingRope grappleRope;
|
||||
|
||||
[Header("Layers Settings:")]
|
||||
[SerializeField] private bool grappleToAll = false;
|
||||
[SerializeField] private int grappleLayerNumber = 9;
|
||||
|
||||
[Header("Main Camera:")]
|
||||
public Camera m_camera;
|
||||
|
||||
[Header("Transform References:")]
|
||||
public Transform gunHolder;
|
||||
public Transform gunPivot;
|
||||
public Transform firePoint;
|
||||
|
||||
[Header("Physics References:")]
|
||||
public SpringJoint2D m_springJoint2D;
|
||||
public DistanceJoint2D m_distanceJoint2D;
|
||||
public Rigidbody2D m_rigidBody2D;
|
||||
|
||||
[Header("Rotation:")]
|
||||
[SerializeField] private bool rotateOverTime = true;
|
||||
[Range(0, 60)][SerializeField] private float rotationSpeed = 4;
|
||||
|
||||
[Header("Distance:")]
|
||||
[SerializeField] private bool hasMaxDistance = false;
|
||||
[SerializeField] private float maxDistance = 20;
|
||||
|
||||
private enum LaunchType {
|
||||
TransformLaunch,
|
||||
PhysicsLaunch
|
||||
}
|
||||
|
||||
[Header("Launching:")]
|
||||
[SerializeField] private bool launchToPoint = true;
|
||||
[SerializeField] private LaunchType launchType = LaunchType.PhysicsLaunch;
|
||||
[SerializeField] private float launchSpeed = 1;
|
||||
|
||||
[Header("No Launch To Point")]
|
||||
[SerializeField] private bool autoConfigureDistance = false;
|
||||
[SerializeField] private float targetDistance = 3;
|
||||
[SerializeField] private float targetFrequency = 1;
|
||||
|
||||
[HideInInspector] public Vector2 grapplePoint;
|
||||
[HideInInspector] public Vector2 grappleDistanceVector;
|
||||
|
||||
[HideInInspector] public bool inDistanceRange = false;
|
||||
|
||||
|
||||
void Start() {
|
||||
grappleRope.enabled = false;
|
||||
m_springJoint2D.enabled = false;
|
||||
m_distanceJoint2D.distance = targetDistance + .5f;
|
||||
m_distanceJoint2D.enabled = false;
|
||||
inDistanceRange = false;
|
||||
}
|
||||
|
||||
void Update() {
|
||||
// if (Input.GetKeyDown(KeyCode.Mouse0)) {
|
||||
// SetGrapplePoint();
|
||||
// } else if (Input.GetKey(KeyCode.Mouse0)) {
|
||||
// if (grappleRope.enabled) {
|
||||
// RotateGun(grapplePoint, false);
|
||||
// } else {
|
||||
// Vector2 mousePos = m_camera.ScreenToWorldPoint(Input.mousePosition);
|
||||
// RotateGun(mousePos, true);
|
||||
// }
|
||||
|
||||
// if (launchToPoint && grappleRope.isGrappling) {
|
||||
// if (launchType == LaunchType.TransformLaunch) {
|
||||
// Vector2 firePointDistance = firePoint.position - gunHolder.localPosition;
|
||||
// Vector2 targetPos = grapplePoint - firePointDistance;
|
||||
// gunHolder.position = Vector2.Lerp(gunHolder.position, targetPos, Time.deltaTime * launchSpeed);
|
||||
// }
|
||||
// }
|
||||
// } else if (Input.GetKeyUp(KeyCode.Mouse0)) {
|
||||
// ReleaseGrapple();
|
||||
// } else {
|
||||
Vector2 mousePos = m_camera.ScreenToWorldPoint(Mouse.current.position.ReadValue());
|
||||
RotateGun(mousePos, true);
|
||||
// }
|
||||
|
||||
if (grappleRope.isGrappling && !inDistanceRange && Vector2.Distance(grapplePoint, new Vector2(m_rigidBody2D.transform.position.x, m_rigidBody2D.transform.position.y)) < targetDistance) {
|
||||
print(Vector2.Distance(grapplePoint, new Vector2(m_rigidBody2D.transform.position.x, m_rigidBody2D.transform.position.y)) + ", target: " + targetDistance);
|
||||
inDistanceRange = true;
|
||||
}
|
||||
if (inDistanceRange) {
|
||||
m_distanceJoint2D.enabled = true;
|
||||
}
|
||||
}
|
||||
|
||||
void RotateGun(Vector3 lookPoint, bool allowRotationOverTime) {
|
||||
Vector3 distanceVector = lookPoint - gunPivot.position;
|
||||
float angle = Mathf.Atan2(distanceVector.y, distanceVector.x) * Mathf.Rad2Deg;
|
||||
|
||||
if (rotateOverTime && allowRotationOverTime) {
|
||||
gunPivot.rotation = Quaternion.Lerp(gunPivot.rotation, Quaternion.AngleAxis(angle, Vector3.forward), Time.deltaTime * rotationSpeed);
|
||||
} else {
|
||||
gunPivot.rotation = Quaternion.AngleAxis(angle, Vector3.forward);
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
// void SetGrapplePoint() {
|
||||
// Vector2 distanceVector = m_camera.ScreenToWorldPoint(Input.mousePosition) - gunPivot.position;
|
||||
// // print("clicked" + m_camera.ScreenToWorldPoint(Input.mousePosition));
|
||||
// // print("distance vector: " + distanceVector);
|
||||
|
||||
// if (Physics2D.Raycast(firePoint.position, distanceVector.normalized)) {
|
||||
// RaycastHit2D _hit = Physics2D.Raycast(firePoint.position, distanceVector.normalized);
|
||||
// print(_hit.transform.gameObject.name);
|
||||
// if (_hit.transform.gameObject.layer == grappleLayerNumber || grappleToAll) {
|
||||
// if (Vector2.Distance(_hit.point, firePoint.position) <= maxDistance || !hasMaxDistance) {
|
||||
// // print("gunPivot " + gunPivot.position + ", grappling to: " + _hit.point);
|
||||
// grapplePoint = _hit.point;
|
||||
// grappleDistanceVector = grapplePoint - (Vector2)gunPivot.position;
|
||||
// grappleRope.enabled = true;
|
||||
// }
|
||||
// }
|
||||
// }
|
||||
// }
|
||||
|
||||
public void Grapple() {
|
||||
print("grapple");
|
||||
m_springJoint2D.autoConfigureDistance = false;
|
||||
m_distanceJoint2D.autoConfigureDistance = false;
|
||||
|
||||
if(!launchToPoint && !autoConfigureDistance) {
|
||||
m_springJoint2D.distance = targetDistance;
|
||||
print("Sprint Joint Distance:" + m_springJoint2D.distance);
|
||||
m_springJoint2D.frequency = targetFrequency;
|
||||
}
|
||||
if (!launchToPoint) {
|
||||
if (autoConfigureDistance) {
|
||||
m_springJoint2D.connectedAnchor = grapplePoint;
|
||||
m_springJoint2D.enabled = true;
|
||||
// print("Spring Joint Enabled");
|
||||
print("Sprint Joint Distance:" + m_springJoint2D.distance);
|
||||
|
||||
m_distanceJoint2D.connectedAnchor = grapplePoint;
|
||||
}
|
||||
} else {
|
||||
switch (launchType) {
|
||||
case LaunchType.PhysicsLaunch:
|
||||
m_springJoint2D.connectedAnchor = grapplePoint;
|
||||
m_distanceJoint2D.connectedAnchor = grapplePoint;
|
||||
|
||||
Vector2 distanceVector = firePoint.position - gunHolder.position;
|
||||
|
||||
m_springJoint2D.distance = distanceVector.magnitude;
|
||||
m_springJoint2D.frequency = launchSpeed;
|
||||
m_springJoint2D.enabled = true;
|
||||
|
||||
// m_distanceJoint2D.maxDistanceOnly = false;
|
||||
m_distanceJoint2D.distance = targetDistance + .5f;
|
||||
break;
|
||||
case LaunchType.TransformLaunch:
|
||||
m_rigidBody2D.gravityScale = 0;
|
||||
m_rigidBody2D.velocity = Vector2.zero;
|
||||
break;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
public void GrappleToTambourine(GameObject tambourine) {
|
||||
grappleRope.enabled = true;
|
||||
|
||||
grapplePoint = tambourine.transform.position;
|
||||
|
||||
m_springJoint2D.autoConfigureDistance = false;
|
||||
m_distanceJoint2D.autoConfigureDistance = false;
|
||||
|
||||
m_springJoint2D.frequency = targetFrequency;
|
||||
|
||||
m_springJoint2D.connectedAnchor = grapplePoint;
|
||||
m_springJoint2D.enabled = true;
|
||||
// print("Spring Joint Enabled");
|
||||
|
||||
m_distanceJoint2D.connectedAnchor = grapplePoint;
|
||||
}
|
||||
|
||||
public void GrappleToSurface(Vector2 surfacePoint) {
|
||||
grappleRope.enabled = true;
|
||||
|
||||
grapplePoint = surfacePoint;
|
||||
|
||||
m_springJoint2D.autoConfigureDistance = false;
|
||||
m_distanceJoint2D.autoConfigureDistance = false;
|
||||
|
||||
m_springJoint2D.frequency = targetFrequency;
|
||||
|
||||
m_springJoint2D.connectedAnchor = grapplePoint;
|
||||
m_springJoint2D.enabled = true;
|
||||
// print("Spring Joint Enabled");
|
||||
|
||||
m_distanceJoint2D.connectedAnchor = grapplePoint;
|
||||
}
|
||||
|
||||
public void ReleaseGrapple() {
|
||||
grappleRope.enabled = false;
|
||||
m_springJoint2D.enabled = false;
|
||||
m_distanceJoint2D.enabled = false;
|
||||
inDistanceRange = false;
|
||||
m_rigidBody2D.gravityScale = 1;
|
||||
// print("disabled");
|
||||
}
|
||||
|
||||
private void OnDrawGizmosSelected() {
|
||||
if (firePoint != null && hasMaxDistance) {
|
||||
Gizmos.color = Color.green;
|
||||
Gizmos.DrawWireSphere(firePoint.position, maxDistance);
|
||||
}
|
||||
}
|
||||
|
||||
}
|
11
Assets/Scripts/Tutorial_GrapplingGun.cs.meta
Normal file
11
Assets/Scripts/Tutorial_GrapplingGun.cs.meta
Normal file
@ -0,0 +1,11 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 6e8c21a2613bf4423a2f49601a3310e3
|
||||
MonoImporter:
|
||||
externalObjects: {}
|
||||
serializedVersion: 2
|
||||
defaultReferences: []
|
||||
executionOrder: 0
|
||||
icon: {instanceID: 0}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
104
Assets/Scripts/Tutorial_GrapplingRope.cs
Normal file
104
Assets/Scripts/Tutorial_GrapplingRope.cs
Normal file
@ -0,0 +1,104 @@
|
||||
using System.Collections;
|
||||
using System.Collections.Generic;
|
||||
using UnityEngine;
|
||||
|
||||
public class Tutorial_GrapplingRope : MonoBehaviour {
|
||||
|
||||
[Header("General References:")]
|
||||
public Tutorial_GrapplingGun grapplingGun;
|
||||
public LineRenderer m_lineRenderer;
|
||||
|
||||
[Header("General Settings:")]
|
||||
[SerializeField] private int precision = 40;
|
||||
[Range(0, 20)] private float straightenLineSpeed = 5;
|
||||
|
||||
[Header("Rope Animation Settings:")]
|
||||
public AnimationCurve ropeAnimationCurve;
|
||||
[Range(0.1f, 4)] [SerializeField] private float startWaveSize = 2;
|
||||
float waveSize = 0;
|
||||
|
||||
[Header("Rope Progression:")]
|
||||
public AnimationCurve ropeProgressionCurve;
|
||||
[SerializeField] [Range(1,50)] private float ropeProgressionSpeed = 1;
|
||||
|
||||
float moveTime = 0;
|
||||
|
||||
[HideInInspector] public bool isGrappling = true;
|
||||
bool straightLine = false;
|
||||
|
||||
|
||||
private void OnEnable() {
|
||||
// print("on enabled called");
|
||||
moveTime = 0;
|
||||
m_lineRenderer.positionCount = precision;
|
||||
waveSize = startWaveSize;
|
||||
straightLine = false;
|
||||
|
||||
LinePointsToFirePoint();
|
||||
|
||||
m_lineRenderer.enabled = true;
|
||||
}
|
||||
|
||||
private void OnDisable() {
|
||||
// print("on disabled called");
|
||||
m_lineRenderer.enabled = false;
|
||||
isGrappling = false;
|
||||
}
|
||||
|
||||
private void LinePointsToFirePoint() {
|
||||
for (int i = 0; i < precision; i++) {
|
||||
m_lineRenderer.SetPosition(i, grapplingGun.firePoint.position);
|
||||
}
|
||||
}
|
||||
|
||||
void Update() {
|
||||
moveTime += Time.deltaTime;
|
||||
DrawRope();
|
||||
}
|
||||
|
||||
void DrawRope() {
|
||||
// print("drawing");
|
||||
// print("isGrappling: " + isGrappling);
|
||||
if (!straightLine) {
|
||||
float roundedLinePos = Mathf.Round(m_lineRenderer.GetPosition(precision - 1).x * 10.0f) * .01f;
|
||||
float roundedGrapplePos = Mathf.Round(m_lineRenderer.GetPosition(precision - 1).x * 10.0f) * .01f;
|
||||
print(roundedLinePos + " / " + roundedGrapplePos);
|
||||
if (roundedLinePos == roundedGrapplePos) {
|
||||
straightLine = true;
|
||||
} else {
|
||||
DrawRopeWaves();
|
||||
}
|
||||
} else {
|
||||
if (!isGrappling) {
|
||||
grapplingGun.Grapple();
|
||||
isGrappling = true;
|
||||
}
|
||||
if (waveSize > 0) {
|
||||
waveSize -= Time.deltaTime * straightenLineSpeed;
|
||||
DrawRopeWaves();
|
||||
} else {
|
||||
waveSize = 0;
|
||||
if (m_lineRenderer.positionCount != 2) {
|
||||
m_lineRenderer.positionCount = 2;
|
||||
}
|
||||
DrawRopeNoWaves();
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
void DrawRopeWaves() {
|
||||
for (int i = 0; i < precision; i++) {
|
||||
float delta = (float)i / ((float)precision - 1f);
|
||||
Vector2 offset = Vector2.Perpendicular(grapplingGun.grappleDistanceVector).normalized * ropeAnimationCurve.Evaluate(delta) * waveSize;
|
||||
Vector2 targetPosition = Vector2.Lerp(grapplingGun.firePoint.position, grapplingGun.grapplePoint, delta) + offset;
|
||||
Vector2 currentPosition = Vector2.Lerp(grapplingGun.firePoint.position, targetPosition, ropeProgressionCurve.Evaluate(moveTime) * ropeProgressionSpeed);
|
||||
|
||||
m_lineRenderer.SetPosition(i, currentPosition);
|
||||
}
|
||||
}
|
||||
|
||||
void DrawRopeNoWaves() {
|
||||
m_lineRenderer.SetPosition(0, grapplingGun.firePoint.position);
|
||||
m_lineRenderer.SetPosition(1, grapplingGun.grapplePoint);
|
||||
}
|
||||
}
|
11
Assets/Scripts/Tutorial_GrapplingRope.cs.meta
Normal file
11
Assets/Scripts/Tutorial_GrapplingRope.cs.meta
Normal file
@ -0,0 +1,11 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 06317215013e44d0fb7902fbc1c5e84e
|
||||
MonoImporter:
|
||||
externalObjects: {}
|
||||
serializedVersion: 2
|
||||
defaultReferences: []
|
||||
executionOrder: 0
|
||||
icon: {instanceID: 0}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
@ -1 +1 @@
|
||||
Subproject commit 2a6f0a61eb63975e84380aa4cd679b1c6159e810
|
||||
Subproject commit 23938e9b94b9022413054828a87c05d8f5decc2b
|
@ -4,6 +4,7 @@
|
||||
"com.unity.feature.2d": "1.0.0",
|
||||
"com.unity.ide.rider": "3.0.18",
|
||||
"com.unity.ide.visualstudio": "2.0.17",
|
||||
"com.unity.ide.vscode": "1.2.5",
|
||||
"com.unity.inputsystem": "1.4.4",
|
||||
"com.unity.test-framework": "1.1.33",
|
||||
"com.unity.textmeshpro": "3.0.6",
|
||||
|
@ -147,6 +147,13 @@
|
||||
},
|
||||
"url": "https://packages.unity.com"
|
||||
},
|
||||
"com.unity.ide.vscode": {
|
||||
"version": "1.2.5",
|
||||
"depth": 0,
|
||||
"source": "registry",
|
||||
"dependencies": {},
|
||||
"url": "https://packages.unity.com"
|
||||
},
|
||||
"com.unity.inputsystem": {
|
||||
"version": "1.4.4",
|
||||
"depth": 0,
|
||||
|
@ -3,7 +3,12 @@
|
||||
--- !u!78 &1
|
||||
TagManager:
|
||||
serializedVersion: 2
|
||||
tags: []
|
||||
tags:
|
||||
- wall
|
||||
- grappleSurface
|
||||
- Enemy
|
||||
- Projectile
|
||||
- tambourine
|
||||
layers:
|
||||
- Default
|
||||
- TransparentFX
|
||||
@ -11,7 +16,7 @@ TagManager:
|
||||
-
|
||||
- Water
|
||||
- UI
|
||||
-
|
||||
- Ground
|
||||
-
|
||||
-
|
||||
-
|
||||
|
Loading…
Reference in New Issue
Block a user