destroyed proj

This commit is contained in:
2025-03-15 12:37:32 +01:00
parent be2b7c5a44
commit 4872192479
426 changed files with 22755 additions and 3101 deletions

View File

@@ -0,0 +1,3 @@
fileFormatVersion: 2
guid: 7a00ec43839d44daa7299ac6322e2eee
timeCreated: 1741791656

View File

@@ -0,0 +1,33 @@
%YAML 1.1
%TAG !u! tag:unity3d.com,2011:
--- !u!114 &11400000
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 0}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: 43f38c326fd565e46a29f30e4f20031b, type: 3}
m_Name: FPP PlayerController
m_EditorClassIdentifier:
_config:
FPPSetupAsset:
m_AssetGUID: c5a555fd0308dc546b2a31af07869f90
m_SubObjectName:
m_SubObjectGUID:
m_SubObjectType:
m_EditorAssetChanged: 0
MoveActionReference: {fileID: -2772844096359753972, guid: f991e9abd9a53ee4b94b329a5ce96cb2,
type: 3}
LookActionReference: {fileID: -5746443703610909298, guid: f991e9abd9a53ee4b94b329a5ce96cb2,
type: 3}
JumpActionReference: {fileID: 2789365106649255415, guid: f991e9abd9a53ee4b94b329a5ce96cb2,
type: 3}
DragObjectActionReference: {fileID: 2331847964233633448, guid: f991e9abd9a53ee4b94b329a5ce96cb2,
type: 3}
PrimaryActionReference: {fileID: 7005240712943983493, guid: f991e9abd9a53ee4b94b329a5ce96cb2,
type: 3}
SecondaryActionReference: {fileID: -1076036341132388265, guid: f991e9abd9a53ee4b94b329a5ce96cb2,
type: 3}

View File

@@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: 9d6ffec340675ff46a2c932a4a0b4bd6
NativeFormatImporter:
externalObjects: {}
mainObjectFileID: 11400000
userData:
assetBundleName:
assetBundleVariant:

View File

@@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: 8811a3c5f762a1844abd9e3e0426f204
folderAsset: yes
DefaultImporter:
externalObjects: {}
userData:
assetBundleName:
assetBundleVariant:

View File

@@ -0,0 +1,427 @@
%YAML 1.1
%TAG !u! tag:unity3d.com,2011:
--- !u!1 &1633378644400006462
GameObject:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
serializedVersion: 6
m_Component:
- component: {fileID: 5635006187901299347}
- component: {fileID: 8754676140351214484}
m_Layer: 0
m_Name: FPP Camera
m_TagString: Untagged
m_Icon: {fileID: 0}
m_NavMeshLayer: 0
m_StaticEditorFlags: 0
m_IsActive: 1
--- !u!4 &5635006187901299347
Transform:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 1633378644400006462}
serializedVersion: 2
m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
m_LocalPosition: {x: 0, y: 1.75, z: 0}
m_LocalScale: {x: 1, y: 1, z: 1}
m_ConstrainProportionsScale: 0
m_Children:
- {fileID: 4109293979719759325}
- {fileID: 5003790919823188963}
m_Father: {fileID: 7761779135599839476}
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
--- !u!114 &8754676140351214484
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 1633378644400006462}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: 45e653bab7fb20e499bda25e1b646fea, type: 3}
m_Name:
m_EditorClassIdentifier:
m_ExcludedPropertiesInInspector:
- m_Script
m_LockStageInInspector:
m_StreamingVersion: 20170927
m_Priority: 10
m_StandbyUpdate: 2
m_LookAt: {fileID: 0}
m_Follow: {fileID: 0}
m_Lens:
FieldOfView: 80
OrthographicSize: 5
NearClipPlane: 0.3
FarClipPlane: 1000
Dutch: 0
ModeOverride: 0
LensShift: {x: 0, y: 0}
GateFit: 2
FocusDistance: 10
m_SensorSize: {x: 1, y: 1}
m_Transitions:
m_BlendHint: 0
m_InheritPosition: 0
m_OnCameraLive:
m_PersistentCalls:
m_Calls: []
m_LegacyBlendHint: 0
m_ComponentOwner: {fileID: 4109293979719759325}
--- !u!1 &6086846679135428685
GameObject:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
serializedVersion: 6
m_Component:
- component: {fileID: 7761779135599839476}
- component: {fileID: 1018448983365033889}
- component: {fileID: 8903325519720751579}
- component: {fileID: 2870607051570670034}
- component: {fileID: 7282522638044830840}
- component: {fileID: 2402344678768307677}
m_Layer: 0
m_Name: FPPSetup
m_TagString: Untagged
m_Icon: {fileID: 0}
m_NavMeshLayer: 0
m_StaticEditorFlags: 0
m_IsActive: 1
--- !u!4 &7761779135599839476
Transform:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 6086846679135428685}
serializedVersion: 2
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: 5635006187901299347}
- {fileID: 5117685723249707591}
m_Father: {fileID: 0}
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
--- !u!114 &1018448983365033889
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 6086846679135428685}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: aaa2199caa5cc4d4caf0677e0fe43a1b, type: 3}
m_Name:
m_EditorClassIdentifier:
<Locomotion>k__BackingField: {fileID: 2870607051570670034}
<FPPCamera>k__BackingField: {fileID: 7282522638044830840}
<Dragger>k__BackingField: {fileID: 2402344678768307677}
<DragObjectDistanceFromCamera>k__BackingField: 2
--- !u!143 &8903325519720751579
CharacterController:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 6086846679135428685}
m_Material: {fileID: 0}
m_IncludeLayers:
serializedVersion: 2
m_Bits: 0
m_ExcludeLayers:
serializedVersion: 2
m_Bits: 0
m_LayerOverridePriority: 0
m_ProvidesContacts: 0
m_Enabled: 1
serializedVersion: 3
m_Height: 2
m_Radius: 0.5
m_SlopeLimit: 45
m_StepOffset: 0.3
m_SkinWidth: 0.08
m_MinMoveDistance: 0.001
m_Center: {x: 0, y: 1, z: 0}
--- !u!114 &2870607051570670034
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 6086846679135428685}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: 6e909888e8f2465fb2f032b66bbd20a4, type: 3}
m_Name:
m_EditorClassIdentifier:
_characterController: {fileID: 8903325519720751579}
_maxMovementSpeed: 4
_maxSprintSpeed: 15
_jumpHeight: 1
_gravity: 10
_maxFallSpeed: 20
_damping: 20
--- !u!114 &7282522638044830840
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 6086846679135428685}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: b82691de261d95842bde9bca81db0893, type: 3}
m_Name:
m_EditorClassIdentifier:
_pickDistance: 5
_pickLayer:
serializedVersion: 2
m_Bits: 4294967295
<Sensitivity>k__BackingField: 0.5
_pitchMin: -80
_pitchMax: 80
<Camera>k__BackingField: {fileID: 8754676140351214484}
--- !u!114 &2402344678768307677
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 6086846679135428685}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: 8498955cf5ff17145aa4bbd96edd8ca6, type: 3}
m_Name:
m_EditorClassIdentifier:
<DampingFactor>k__BackingField: 1
<AngularSlowdown>k__BackingField: 90
<DragForce>k__BackingField: 50
--- !u!1 &7286498852570965723
GameObject:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
serializedVersion: 6
m_Component:
- component: {fileID: 5117685723249707591}
- component: {fileID: 7327033897601353362}
- component: {fileID: 1858263895917388134}
m_Layer: 0
m_Name: Capsule
m_TagString: Untagged
m_Icon: {fileID: 0}
m_NavMeshLayer: 0
m_StaticEditorFlags: 0
m_IsActive: 1
--- !u!4 &5117685723249707591
Transform:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 7286498852570965723}
serializedVersion: 2
m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
m_LocalPosition: {x: 0, y: 1, z: 0}
m_LocalScale: {x: 1, y: 1, z: 1}
m_ConstrainProportionsScale: 0
m_Children: []
m_Father: {fileID: 7761779135599839476}
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
--- !u!33 &7327033897601353362
MeshFilter:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 7286498852570965723}
m_Mesh: {fileID: 10208, guid: 0000000000000000e000000000000000, type: 0}
--- !u!23 &1858263895917388134
MeshRenderer:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 7286498852570965723}
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_RayTracingAccelStructBuildFlagsOverride: 0
m_RayTracingAccelStructBuildFlags: 1
m_SmallMeshCulling: 1
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!1 &8024233446654794244
GameObject:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
serializedVersion: 6
m_Component:
- component: {fileID: 4109293979719759325}
- component: {fileID: 8312648709817428832}
m_Layer: 0
m_Name: cm
m_TagString: Untagged
m_Icon: {fileID: 0}
m_NavMeshLayer: 0
m_StaticEditorFlags: 0
m_IsActive: 1
--- !u!4 &4109293979719759325
Transform:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 8024233446654794244}
serializedVersion: 2
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: 5635006187901299347}
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
--- !u!114 &8312648709817428832
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 8024233446654794244}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: ac0b09e7857660247b1477e93731de29, type: 3}
m_Name:
m_EditorClassIdentifier:
--- !u!1001 &4826645119771837448
PrefabInstance:
m_ObjectHideFlags: 0
serializedVersion: 2
m_Modification:
serializedVersion: 3
m_TransformParent: {fileID: 5635006187901299347}
m_Modifications:
- target: {fileID: -8679921383154817045, guid: 85f6fd2cdaf4a644d85dea4d14913b20,
type: 3}
propertyPath: m_LocalScale.x
value: 0.35162827
objectReference: {fileID: 0}
- target: {fileID: -8679921383154817045, guid: 85f6fd2cdaf4a644d85dea4d14913b20,
type: 3}
propertyPath: m_LocalScale.y
value: 0.35162827
objectReference: {fileID: 0}
- target: {fileID: -8679921383154817045, guid: 85f6fd2cdaf4a644d85dea4d14913b20,
type: 3}
propertyPath: m_LocalScale.z
value: 0.35162827
objectReference: {fileID: 0}
- target: {fileID: -8679921383154817045, guid: 85f6fd2cdaf4a644d85dea4d14913b20,
type: 3}
propertyPath: m_LocalPosition.x
value: 0
objectReference: {fileID: 0}
- target: {fileID: -8679921383154817045, guid: 85f6fd2cdaf4a644d85dea4d14913b20,
type: 3}
propertyPath: m_LocalPosition.y
value: -0.134
objectReference: {fileID: 0}
- target: {fileID: -8679921383154817045, guid: 85f6fd2cdaf4a644d85dea4d14913b20,
type: 3}
propertyPath: m_LocalPosition.z
value: 0
objectReference: {fileID: 0}
- target: {fileID: -8679921383154817045, guid: 85f6fd2cdaf4a644d85dea4d14913b20,
type: 3}
propertyPath: m_LocalRotation.w
value: 0.70710653
objectReference: {fileID: 0}
- target: {fileID: -8679921383154817045, guid: 85f6fd2cdaf4a644d85dea4d14913b20,
type: 3}
propertyPath: m_LocalRotation.x
value: -0
objectReference: {fileID: 0}
- target: {fileID: -8679921383154817045, guid: 85f6fd2cdaf4a644d85dea4d14913b20,
type: 3}
propertyPath: m_LocalRotation.y
value: 0.70710707
objectReference: {fileID: 0}
- target: {fileID: -8679921383154817045, guid: 85f6fd2cdaf4a644d85dea4d14913b20,
type: 3}
propertyPath: m_LocalRotation.z
value: -0
objectReference: {fileID: 0}
- target: {fileID: -8679921383154817045, guid: 85f6fd2cdaf4a644d85dea4d14913b20,
type: 3}
propertyPath: m_LocalEulerAnglesHint.x
value: 0
objectReference: {fileID: 0}
- target: {fileID: -8679921383154817045, guid: 85f6fd2cdaf4a644d85dea4d14913b20,
type: 3}
propertyPath: m_LocalEulerAnglesHint.y
value: 90
objectReference: {fileID: 0}
- target: {fileID: -8679921383154817045, guid: 85f6fd2cdaf4a644d85dea4d14913b20,
type: 3}
propertyPath: m_LocalEulerAnglesHint.z
value: 0
objectReference: {fileID: 0}
- target: {fileID: 919132149155446097, guid: 85f6fd2cdaf4a644d85dea4d14913b20,
type: 3}
propertyPath: m_Name
value: Player_Arms
objectReference: {fileID: 0}
m_RemovedComponents: []
m_RemovedGameObjects: []
m_AddedGameObjects: []
m_AddedComponents: []
m_SourcePrefab: {fileID: 100100000, guid: 85f6fd2cdaf4a644d85dea4d14913b20, type: 3}
--- !u!4 &5003790919823188963 stripped
Transform:
m_CorrespondingSourceObject: {fileID: -8679921383154817045, guid: 85f6fd2cdaf4a644d85dea4d14913b20,
type: 3}
m_PrefabInstance: {fileID: 4826645119771837448}
m_PrefabAsset: {fileID: 0}

View File

@@ -0,0 +1,7 @@
fileFormatVersion: 2
guid: c5a555fd0308dc546b2a31af07869f90
PrefabImporter:
externalObjects: {}
userData:
assetBundleName:
assetBundleVariant:

View File

@@ -0,0 +1,3 @@
fileFormatVersion: 2
guid: 7f520f359bd34f48b97ce13443381090
timeCreated: 1741791644

View File

@@ -0,0 +1,29 @@
using RebootKit.Engine.Services.Simulation;
using RebootKit.Engine.Services.Simulation.Characters;
using UnityEngine;
namespace RebootKit.FPPKit {
public class FPPActor : Actor {
[field: SerializeField]
public CharacterLocomotion Locomotion { get; private set; }
[field: SerializeField]
public FirstPersonCamera FPPCamera { get; private set; }
[field: SerializeField]
public PhysicsObjectDragger Dragger { get; private set; }
[field: SerializeField]
public float DragObjectDistanceFromCamera { get; private set; } = 2.0f;
public void MoveRight(float input) {
Vector3 direction = Quaternion.AngleAxis(FPPCamera.Yaw, Vector3.up) * Vector3.right;
Locomotion.AddMovementInput(direction, input);
}
public void MoveForward(float input) {
Vector3 direction = Quaternion.AngleAxis(FPPCamera.Yaw, Vector3.up) * Vector3.forward;
Locomotion.AddMovementInput(direction, input);
}
}
}

View File

@@ -0,0 +1,2 @@
fileFormatVersion: 2
guid: aaa2199caa5cc4d4caf0677e0fe43a1b

View File

@@ -0,0 +1,58 @@
using Cinemachine;
using RebootKit.Engine.Services.Simulation.Sensors;
using UnityEngine;
namespace RebootKit.FPPKit {
public class FirstPersonCamera : MonoBehaviour {
[SerializeField]
private float _pickDistance = 5.0f;
[SerializeField]
private LayerMask _pickLayer;
[field: SerializeField]
public float Sensitivity { get; set; }
[SerializeField]
private float _pitchMin = -80f;
[SerializeField]
private float _pitchMax = 80f;
[field: SerializeField]
public CinemachineVirtualCamera Camera { get; private set; }
public float Pitch { get; private set; }
public float Yaw { get; private set; }
private readonly RaycastSensor _raycastSensor = new();
public ISensor Sensor {
get {
_raycastSensor.Ray = new Ray(Camera.transform.position, Camera.transform.forward);
_raycastSensor.MaxDistance = _pickDistance;
_raycastSensor.LayerMask = _pickLayer;
return _raycastSensor;
}
}
private void LateUpdate() {
Camera.transform.localRotation = Quaternion.Euler(Pitch, 0f, 0f);
transform.rotation = Quaternion.Euler(0f, Yaw, 0f);
}
public void Rotate(float x, float y) {
float sens = Sensitivity;
Pitch -= y * sens;
Pitch = Mathf.Clamp(Pitch, _pitchMin, _pitchMax);
Yaw += x * sens;
}
public void SetLookDirection(Vector3 forward) {
Pitch = Mathf.Asin(-forward.y) * Mathf.Rad2Deg;
Yaw = Mathf.Atan2(forward.x, forward.z) * Mathf.Rad2Deg;
}
}
}

View File

@@ -0,0 +1,2 @@
fileFormatVersion: 2
guid: b82691de261d95842bde9bca81db0893

View File

@@ -0,0 +1,93 @@
using System.Threading;
using Cysharp.Threading.Tasks;
using RebootKit.Engine;
using RebootKit.Engine.Foundation;
using RebootKit.Engine.Services.Console;
using RebootKit.Engine.Services.Input;
using UnityEngine;
using UnityEngine.AddressableAssets;
using UnityEngine.InputSystem;
namespace RebootKit.FPPKit {
public class PlayerController : IController {
[System.Serializable]
public class Config {
public AssetReferenceT<GameObject> FPPSetupAsset;
public InputActionReference MoveActionReference;
public InputActionReference LookActionReference;
public InputActionReference JumpActionReference;
public InputActionReference DragObjectActionReference;
public InputActionReference PrimaryActionReference;
public InputActionReference SecondaryActionReference;
}
[CVar("fpp_cam_look_sens", 0.25f)]
private CVar _sensitivityCVar;
[CVar("p_move_speed", 4.0f)]
private CVar _movementSpeedCVar;
[Inject]
private InputService _inputService;
private Config _config;
private FPPActor _player;
public PlayerController(Config config) {
_config = config;
}
public void Dispose() {
}
public async UniTask OnStart(CancellationToken cancellationToken) {
_inputService.LockCursor();
_inputService.EnableControls();
_sensitivityCVar = RR.CVarNumber("fpp_cam_look_sens", 0.25f);
_movementSpeedCVar = RR.CVarNumber("p_move_speed", 4.0f);
_player = await RR.World().SpawnActor<FPPActor>(_config.FPPSetupAsset, cancellationToken);
await Awaitable.NextFrameAsync(cancellationToken);
}
public void OnStop() {
_inputService.DisableControls();
_inputService.UnlockCursor();
Object.Destroy(_player);
RR.World().KillActor(_player);
}
public void OnTick() {
_player.FPPCamera.Sensitivity = _sensitivityCVar.FloatValue;
_player.Locomotion.MaxMovementSpeed = _movementSpeedCVar.FloatValue;
Vector2 lookInput = _config.LookActionReference.action.ReadValue<Vector2>();
_player.FPPCamera.Rotate(lookInput.x, lookInput.y);
Vector2 moveInput = _config.MoveActionReference.action.ReadValue<Vector2>();
_player.MoveRight(moveInput.x);
_player.MoveForward(moveInput.y);
if (_config.JumpActionReference.action.WasPerformedThisFrame()) {
_player.Locomotion.Jump();
}
_player.Dragger.TargetWorldPosition = _player.FPPCamera.Camera.transform.position + _player.FPPCamera.Camera.transform.forward * _player.DragObjectDistanceFromCamera;
if (_config.DragObjectActionReference.action.WasPressedThisFrame() && !_player.Dragger.IsDragging) {
GameObject pickedGameObject = _player.FPPCamera.Sensor.Sense();
if (pickedGameObject != null && pickedGameObject.TryGetComponent(out Rigidbody rigidbody)) {
_player.Dragger.Grab(rigidbody);
}
}
if (_config.DragObjectActionReference.action.WasReleasedThisFrame()) {
_player.Dragger.Drop();
}
}
}
}

View File

@@ -0,0 +1,2 @@
fileFormatVersion: 2
guid: 5e9f327e597f7d8489ee899941f7255a

View File

@@ -0,0 +1,15 @@
using RebootKit.Engine;
using RebootKit.Engine.Foundation;
using UnityEngine;
namespace RebootKit.FPPKit {
[CreateAssetMenu(menuName = RConsts.AssetMenu + "FPP/Player Controller")]
public class PlayerControllerAsset : ControllerAsset {
[SerializeField]
private PlayerController.Config _config;
public override IController Create() {
return new PlayerController(_config);
}
}
}

View File

@@ -0,0 +1,2 @@
fileFormatVersion: 2
guid: 43f38c326fd565e46a29f30e4f20031b

View File

@@ -0,0 +1,20 @@
{
"name": "RebootKit.FPPKit",
"rootNamespace": "RebootKit.FPPKit",
"references": [
"GUID:284059c7949783646b281a1b815580e6",
"GUID:f51ebe6a0ceec4240a699833d6309b23",
"GUID:75469ad4d38634e559750d17036d5f7c",
"GUID:4307f53044263cf4b835bd812fc161a4",
"GUID:9e24947de15b9834991c9d8411ea37cf"
],
"includePlatforms": [],
"excludePlatforms": [],
"allowUnsafeCode": false,
"overrideReferences": false,
"precompiledReferences": [],
"autoReferenced": true,
"defineConstraints": [],
"versionDefines": [],
"noEngineReferences": false
}

View File

@@ -0,0 +1,7 @@
fileFormatVersion: 2
guid: 4d76b28af993d614f825cb34f438930f
AssemblyDefinitionImporter:
externalObjects: {}
userData:
assetBundleName:
assetBundleVariant: