This commit is contained in:
Soulaha Balde 2022-10-23 12:33:16 -04:00
commit 0dd2e58915
5 changed files with 366 additions and 32 deletions

View File

@ -6,9 +6,9 @@ PhysicMaterial:
m_CorrespondingSourceObject: {fileID: 0} m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0} m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0} m_PrefabAsset: {fileID: 0}
m_Name: Normal Floor m_Name: Player
dynamicFriction: 1 dynamicFriction: 0
staticFriction: 1 staticFriction: 0
bounciness: 0 bounciness: 1
frictionCombine: 0 frictionCombine: 0
bounceCombine: 0 bounceCombine: 0

View File

@ -11,12 +11,12 @@ GameObject:
- component: {fileID: 1772573266731274175} - component: {fileID: 1772573266731274175}
- component: {fileID: 1772573266731274168} - component: {fileID: 1772573266731274168}
- component: {fileID: 1772573266731274169} - component: {fileID: 1772573266731274169}
- component: {fileID: 1772573266731274170}
- component: {fileID: 1772573266731274174} - component: {fileID: 1772573266731274174}
- component: {fileID: 1772573266731274173} - component: {fileID: 1772573266731274173}
- component: {fileID: 1772573266731274172} - component: {fileID: 1772573266731274172}
- component: {fileID: 1772573266731274163} - component: {fileID: 1772573266731274163}
- component: {fileID: 8474203461765366282} - component: {fileID: 8474203461765366282}
- component: {fileID: 1447597341752185403}
m_Layer: 0 m_Layer: 0
m_Name: Player m_Name: Player
m_TagString: Player m_TagString: Player
@ -91,19 +91,6 @@ MeshRenderer:
m_SortingLayer: 0 m_SortingLayer: 0
m_SortingOrder: 0 m_SortingOrder: 0
m_AdditionalVertexStreams: {fileID: 0} m_AdditionalVertexStreams: {fileID: 0}
--- !u!65 &1772573266731274170
BoxCollider:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 1772573266731274171}
m_Material: {fileID: 0}
m_IsTrigger: 0
m_Enabled: 1
serializedVersion: 2
m_Size: {x: 1, y: 1, z: 1}
m_Center: {x: 0, y: 0, z: 0}
--- !u!54 &1772573266731274174 --- !u!54 &1772573266731274174
Rigidbody: Rigidbody:
m_ObjectHideFlags: 0 m_ObjectHideFlags: 0
@ -286,14 +273,15 @@ MonoBehaviour:
m_EditorClassIdentifier: m_EditorClassIdentifier:
rb: {fileID: 1772573266731274174} rb: {fileID: 1772573266731274174}
canWalk: 1 canWalk: 1
canJump: 0 canJump: 1
movementSpeed: 0.8 movementSpeed: 0.8
jumpPower: 5 jumpPower: 3
afterJumpHorizontalSlowdownTime: 1
groundDrag: 1 groundDrag: 1
airDrag: 0 airDrag: 0
playerHeight: 0.5 playerHeight: 0.6
jumpAirSlowdown: 80
isGrounded: 0 isGrounded: 0
isJumping: 0
--- !u!114 &8474203461765366282 --- !u!114 &8474203461765366282
MonoBehaviour: MonoBehaviour:
m_ObjectHideFlags: 0 m_ObjectHideFlags: 0
@ -306,6 +294,20 @@ MonoBehaviour:
m_Script: {fileID: 11500000, guid: 9b5fa9960655cb742880ef94db81ca9c, type: 3} m_Script: {fileID: 11500000, guid: 9b5fa9960655cb742880ef94db81ca9c, type: 3}
m_Name: m_Name:
m_EditorClassIdentifier: m_EditorClassIdentifier:
--- !u!136 &1447597341752185403
CapsuleCollider:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 1772573266731274171}
m_Material: {fileID: 13400000, guid: 94aadfb8d34aeba4bb98e223427410a2, type: 2}
m_IsTrigger: 0
m_Enabled: 1
m_Radius: 0.6180558
m_Height: 1.2361116
m_Direction: 1
m_Center: {x: 0, y: 0.07965708, z: 0.02819419}
--- !u!1 &1772573266864950258 --- !u!1 &1772573266864950258
GameObject: GameObject:
m_ObjectHideFlags: 0 m_ObjectHideFlags: 0

View File

@ -220,6 +220,121 @@ Transform:
m_Father: {fileID: 0} m_Father: {fileID: 0}
m_RootOrder: 3 m_RootOrder: 3
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
--- !u!1001 &413704380
PrefabInstance:
m_ObjectHideFlags: 0
serializedVersion: 2
m_Modification:
m_TransformParent: {fileID: 0}
m_Modifications:
- target: {fileID: 1772573266731274163, guid: 4dbf735f9da7b9f43b69f1577e4e5763,
type: 3}
propertyPath: canJump
value: 1
objectReference: {fileID: 0}
- target: {fileID: 1772573266731274163, guid: 4dbf735f9da7b9f43b69f1577e4e5763,
type: 3}
propertyPath: jumpPower
value: 2
objectReference: {fileID: 0}
- target: {fileID: 1772573266731274163, guid: 4dbf735f9da7b9f43b69f1577e4e5763,
type: 3}
propertyPath: playerHeight
value: 0.6
objectReference: {fileID: 0}
- target: {fileID: 1772573266731274163, guid: 4dbf735f9da7b9f43b69f1577e4e5763,
type: 3}
propertyPath: jumpAirSlowdown
value: 100
objectReference: {fileID: 0}
- target: {fileID: 1772573266731274163, guid: 4dbf735f9da7b9f43b69f1577e4e5763,
type: 3}
propertyPath: horizontalJumpInputTime
value: 2
objectReference: {fileID: 0}
- target: {fileID: 1772573266731274163, guid: 4dbf735f9da7b9f43b69f1577e4e5763,
type: 3}
propertyPath: afterJumpHorizontalSlowdownTime
value: 1
objectReference: {fileID: 0}
- target: {fileID: 1772573266731274171, guid: 4dbf735f9da7b9f43b69f1577e4e5763,
type: 3}
propertyPath: m_Name
value: Player_01
objectReference: {fileID: 0}
- target: {fileID: 1772573266731274171, guid: 4dbf735f9da7b9f43b69f1577e4e5763,
type: 3}
propertyPath: m_IsActive
value: 0
objectReference: {fileID: 0}
- target: {fileID: 1772573266731274173, guid: 4dbf735f9da7b9f43b69f1577e4e5763,
type: 3}
propertyPath: m_Enabled
value: 0
objectReference: {fileID: 0}
- target: {fileID: 1772573266731274174, guid: 4dbf735f9da7b9f43b69f1577e4e5763,
type: 3}
propertyPath: m_Mass
value: 2
objectReference: {fileID: 0}
- target: {fileID: 1772573266731274175, guid: 4dbf735f9da7b9f43b69f1577e4e5763,
type: 3}
propertyPath: m_RootOrder
value: 4
objectReference: {fileID: 0}
- target: {fileID: 1772573266731274175, guid: 4dbf735f9da7b9f43b69f1577e4e5763,
type: 3}
propertyPath: m_LocalPosition.x
value: 4.54
objectReference: {fileID: 0}
- target: {fileID: 1772573266731274175, guid: 4dbf735f9da7b9f43b69f1577e4e5763,
type: 3}
propertyPath: m_LocalPosition.y
value: 5.06
objectReference: {fileID: 0}
- target: {fileID: 1772573266731274175, guid: 4dbf735f9da7b9f43b69f1577e4e5763,
type: 3}
propertyPath: m_LocalPosition.z
value: 0
objectReference: {fileID: 0}
- target: {fileID: 1772573266731274175, guid: 4dbf735f9da7b9f43b69f1577e4e5763,
type: 3}
propertyPath: m_LocalRotation.w
value: 1
objectReference: {fileID: 0}
- target: {fileID: 1772573266731274175, guid: 4dbf735f9da7b9f43b69f1577e4e5763,
type: 3}
propertyPath: m_LocalRotation.x
value: 0
objectReference: {fileID: 0}
- target: {fileID: 1772573266731274175, guid: 4dbf735f9da7b9f43b69f1577e4e5763,
type: 3}
propertyPath: m_LocalRotation.y
value: 0
objectReference: {fileID: 0}
- target: {fileID: 1772573266731274175, guid: 4dbf735f9da7b9f43b69f1577e4e5763,
type: 3}
propertyPath: m_LocalRotation.z
value: 0
objectReference: {fileID: 0}
- target: {fileID: 1772573266731274175, guid: 4dbf735f9da7b9f43b69f1577e4e5763,
type: 3}
propertyPath: m_LocalEulerAnglesHint.x
value: 0
objectReference: {fileID: 0}
- target: {fileID: 1772573266731274175, guid: 4dbf735f9da7b9f43b69f1577e4e5763,
type: 3}
propertyPath: m_LocalEulerAnglesHint.y
value: 0
objectReference: {fileID: 0}
- target: {fileID: 1772573266731274175, guid: 4dbf735f9da7b9f43b69f1577e4e5763,
type: 3}
propertyPath: m_LocalEulerAnglesHint.z
value: 0
objectReference: {fileID: 0}
m_RemovedComponents:
- {fileID: 1772573266731274173, guid: 4dbf735f9da7b9f43b69f1577e4e5763, type: 3}
m_SourcePrefab: {fileID: 100100000, guid: 4dbf735f9da7b9f43b69f1577e4e5763, type: 3}
--- !u!1 &589479057 --- !u!1 &589479057
GameObject: GameObject:
m_ObjectHideFlags: 0 m_ObjectHideFlags: 0
@ -241,7 +356,7 @@ GameObject:
m_Icon: {fileID: 0} m_Icon: {fileID: 0}
m_NavMeshLayer: 0 m_NavMeshLayer: 0
m_StaticEditorFlags: 0 m_StaticEditorFlags: 0
m_IsActive: 1 m_IsActive: 0
--- !u!54 &589479058 --- !u!54 &589479058
Rigidbody: Rigidbody:
m_ObjectHideFlags: 0 m_ObjectHideFlags: 0
@ -394,6 +509,22 @@ MonoBehaviour:
m_CallState: 2 m_CallState: 2
m_ActionId: e09d302b-d2bc-4e8e-a3a4-8cb74814c2cc m_ActionId: e09d302b-d2bc-4e8e-a3a4-8cb74814c2cc
m_ActionName: Player/Jump[/Keyboard/space,/XInputControllerWindows/buttonSouth] m_ActionName: Player/Jump[/Keyboard/space,/XInputControllerWindows/buttonSouth]
- m_PersistentCalls:
m_Calls: []
m_ActionId: 7d1c4cb5-032a-4799-ac7b-841a778c389d
m_ActionName: Player/ShootGrapple[/Mouse/leftButton]
- m_PersistentCalls:
m_Calls: []
m_ActionId: abdcd477-96c8-41e2-a4ff-70e14e18f036
m_ActionName: Player/Aim[/Mouse/position]
- m_PersistentCalls:
m_Calls: []
m_ActionId: dcc9ba8a-9503-43ef-a481-d6fc1abc5880
m_ActionName: Player/BoostToAnchor[/Mouse/rightButton]
- m_PersistentCalls:
m_Calls: []
m_ActionId: 098de720-4946-4b02-bafc-25d0f86614c6
m_ActionName: Player/RaiseLowerGrapple[/Keyboard/w,/Keyboard/s]
m_NeverAutoSwitchControlSchemes: 0 m_NeverAutoSwitchControlSchemes: 0
m_DefaultControlScheme: m_DefaultControlScheme:
m_DefaultActionMap: Player m_DefaultActionMap: Player
@ -416,9 +547,12 @@ MonoBehaviour:
canJump: 1 canJump: 1
movementSpeed: 1.5 movementSpeed: 1.5
jumpPower: 5 jumpPower: 5
afterJumpHorizontalSlowdownTime: 0
groundDrag: 0.2 groundDrag: 0.2
airDrag: 0
playerHeight: 0
jumpAirSlowdown: 0
isGrounded: 0 isGrounded: 0
isJumping: 0
--- !u!1 &684542796 --- !u!1 &684542796
GameObject: GameObject:
m_ObjectHideFlags: 0 m_ObjectHideFlags: 0
@ -534,6 +668,172 @@ MonoBehaviour:
m_ShadowLayerMask: 1 m_ShadowLayerMask: 1
m_LightCookieSize: {x: 1, y: 1} m_LightCookieSize: {x: 1, y: 1}
m_LightCookieOffset: {x: 0, y: 0} m_LightCookieOffset: {x: 0, y: 0}
--- !u!1001 &1241861833
PrefabInstance:
m_ObjectHideFlags: 0
serializedVersion: 2
m_Modification:
m_TransformParent: {fileID: 0}
m_Modifications:
- target: {fileID: 1772573266731274171, guid: 4dbf735f9da7b9f43b69f1577e4e5763,
type: 3}
propertyPath: m_Name
value: Player_02
objectReference: {fileID: 0}
- target: {fileID: 1772573266731274175, guid: 4dbf735f9da7b9f43b69f1577e4e5763,
type: 3}
propertyPath: m_RootOrder
value: 6
objectReference: {fileID: 0}
- target: {fileID: 1772573266731274175, guid: 4dbf735f9da7b9f43b69f1577e4e5763,
type: 3}
propertyPath: m_LocalPosition.x
value: 4.54
objectReference: {fileID: 0}
- target: {fileID: 1772573266731274175, guid: 4dbf735f9da7b9f43b69f1577e4e5763,
type: 3}
propertyPath: m_LocalPosition.y
value: 5.06
objectReference: {fileID: 0}
- target: {fileID: 1772573266731274175, guid: 4dbf735f9da7b9f43b69f1577e4e5763,
type: 3}
propertyPath: m_LocalPosition.z
value: 0
objectReference: {fileID: 0}
- target: {fileID: 1772573266731274175, guid: 4dbf735f9da7b9f43b69f1577e4e5763,
type: 3}
propertyPath: m_LocalRotation.w
value: 1
objectReference: {fileID: 0}
- target: {fileID: 1772573266731274175, guid: 4dbf735f9da7b9f43b69f1577e4e5763,
type: 3}
propertyPath: m_LocalRotation.x
value: 0
objectReference: {fileID: 0}
- target: {fileID: 1772573266731274175, guid: 4dbf735f9da7b9f43b69f1577e4e5763,
type: 3}
propertyPath: m_LocalRotation.y
value: 0
objectReference: {fileID: 0}
- target: {fileID: 1772573266731274175, guid: 4dbf735f9da7b9f43b69f1577e4e5763,
type: 3}
propertyPath: m_LocalRotation.z
value: 0
objectReference: {fileID: 0}
- target: {fileID: 1772573266731274175, guid: 4dbf735f9da7b9f43b69f1577e4e5763,
type: 3}
propertyPath: m_LocalEulerAnglesHint.x
value: 0
objectReference: {fileID: 0}
- target: {fileID: 1772573266731274175, guid: 4dbf735f9da7b9f43b69f1577e4e5763,
type: 3}
propertyPath: m_LocalEulerAnglesHint.y
value: 0
objectReference: {fileID: 0}
- target: {fileID: 1772573266731274175, guid: 4dbf735f9da7b9f43b69f1577e4e5763,
type: 3}
propertyPath: m_LocalEulerAnglesHint.z
value: 0
objectReference: {fileID: 0}
m_RemovedComponents: []
m_SourcePrefab: {fileID: 100100000, guid: 4dbf735f9da7b9f43b69f1577e4e5763, type: 3}
--- !u!1 &1590268446
GameObject:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
serializedVersion: 6
m_Component:
- component: {fileID: 1590268450}
- component: {fileID: 1590268449}
- component: {fileID: 1590268448}
- component: {fileID: 1590268447}
m_Layer: 3
m_Name: floor_01
m_TagString: Untagged
m_Icon: {fileID: 0}
m_NavMeshLayer: 0
m_StaticEditorFlags: 0
m_IsActive: 1
--- !u!65 &1590268447
BoxCollider:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 1590268446}
m_Material: {fileID: 13400000, guid: 94aadfb8d34aeba4bb98e223427410a2, type: 2}
m_IsTrigger: 0
m_Enabled: 1
serializedVersion: 2
m_Size: {x: 1, y: 1, z: 1}
m_Center: {x: 0, y: 0, z: 0}
--- !u!23 &1590268448
MeshRenderer:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 1590268446}
m_Enabled: 1
m_CastShadows: 1
m_ReceiveShadows: 1
m_DynamicOccludee: 1
m_StaticShadowCaster: 0
m_MotionVectors: 1
m_LightProbeUsage: 1
m_ReflectionProbeUsage: 1
m_RayTracingMode: 2
m_RayTraceProcedural: 0
m_RenderingLayerMask: 1
m_RendererPriority: 0
m_Materials:
- {fileID: 2100000, guid: 31321ba15b8f8eb4c954353edc038b1d, 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_AdditionalVertexStreams: {fileID: 0}
--- !u!33 &1590268449
MeshFilter:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 1590268446}
m_Mesh: {fileID: 10202, guid: 0000000000000000e000000000000000, type: 0}
--- !u!4 &1590268450
Transform:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 1590268446}
m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
m_LocalPosition: {x: -17.89, y: -10.98, z: 0}
m_LocalScale: {x: 25.444, y: 1, z: 6.2683}
m_ConstrainProportionsScale: 0
m_Children: []
m_Father: {fileID: 0}
m_RootOrder: 5
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
--- !u!1 &1765725228 --- !u!1 &1765725228
GameObject: GameObject:
m_ObjectHideFlags: 0 m_ObjectHideFlags: 0

View File

@ -14,16 +14,40 @@ public class CharacterMovement : MonoBehaviour
[Header("Movement settings")] [Header("Movement settings")]
[SerializeField] private float movementSpeed; [SerializeField] private float movementSpeed;
[SerializeField] private float jumpPower; [SerializeField] private float jumpPower;
[SerializeField] private float afterJumpHorizontalSlowdownTime;
[Header("Character properties")] [Header("Character properties")]
[SerializeField] private float groundDrag; [SerializeField] private float groundDrag;
[SerializeField] private float airDrag; [SerializeField] private float airDrag;
[SerializeField] private float playerHeight; [SerializeField] private float playerHeight;
[SerializeField] private float jumpAirSlowdown;
public bool isGrounded; public bool isGrounded;
public bool isJumping;
private bool isStunned = false; private bool isStunned = false;
private Vector3 rawInputMovement; private Vector3 rawInputMovement;
private float afterJumpHorizontalSlowdownTimeCounter;
private bool stopWalk;
private void Update()
{
if (isGrounded)
{
stopWalk = false;
afterJumpHorizontalSlowdownTimeCounter = afterJumpHorizontalSlowdownTime;
}
else
{
afterJumpHorizontalSlowdownTimeCounter -= Time.deltaTime;
stopWalk = true;
}
if (afterJumpHorizontalSlowdownTimeCounter <= 0f)
{
stopWalk = false;
}
}
private void FixedUpdate() private void FixedUpdate()
{ {
@ -32,10 +56,18 @@ public class CharacterMovement : MonoBehaviour
} }
if (canWalk || canJump) if (canWalk || canJump)
{ {
Debug.Log("test");
//The walk is actually handled here //The walk is actually handled here
if (!stopWalk)
{
rb.AddForce(new Vector3(rawInputMovement.x * movementSpeed, rawInputMovement.y, rawInputMovement.z * movementSpeed), ForceMode.Impulse); rb.AddForce(new Vector3(rawInputMovement.x * movementSpeed, rawInputMovement.y, rawInputMovement.z * movementSpeed), ForceMode.Impulse);
} }
else
{
rb.AddForce(new Vector3(rawInputMovement.x * movementSpeed/ jumpAirSlowdown, rawInputMovement.y, rawInputMovement.z * movementSpeed/ jumpAirSlowdown), ForceMode.Impulse);
}
}
Debug.DrawRay(transform.position, transform.TransformDirection(Vector3.down) * playerHeight, Color.yellow); Debug.DrawRay(transform.position, transform.TransformDirection(Vector3.down) * playerHeight, Color.yellow);
//Ground Check //Ground Check
@ -57,10 +89,7 @@ public class CharacterMovement : MonoBehaviour
//Handle Grounded //Handle Grounded
if (isGrounded) if (isGrounded)
{
rb.drag = groundDrag; rb.drag = groundDrag;
isJumping = false;
}
else else
rb.drag= airDrag; rb.drag= airDrag;
} }
@ -86,10 +115,13 @@ public class CharacterMovement : MonoBehaviour
{ {
if(canJump && isGrounded) if(canJump && isGrounded)
{ {
isJumping = true;
float inputMovement = value.ReadValue<float>(); float inputMovement = value.ReadValue<float>();
rb.velocity = new Vector3(rb.velocity.x, jumpPower* inputMovement, rb.velocity.z); rb.velocity = new Vector3(rb.velocity.x, jumpPower * inputMovement, rb.velocity.z);
//rawInputMovement = new Vector3(rawInputMovement.x, jumpPower, rawInputMovement.z); //rawInputMovement = new Vector3(rawInputMovement.x, jumpPower, rawInputMovement.z);
if (inputMovement == 1f)
{
Debug.Log("start jump");
}
} }
} }