diff --git a/Assets/Scenes/GameTest.unity b/Assets/Scenes/GameTest.unity index a38e5e99..e075f46d 100644 --- a/Assets/Scenes/GameTest.unity +++ b/Assets/Scenes/GameTest.unity @@ -119,113 +119,133 @@ NavMeshSettings: debug: m_Flags: 0 m_NavMeshData: {fileID: 0} ---- !u!1001 &138097831 -PrefabInstance: - m_ObjectHideFlags: 0 - serializedVersion: 2 - m_Modification: - serializedVersion: 3 - m_TransformParent: {fileID: 0} - m_Modifications: - - target: {fileID: 2230608995947149769, guid: 2c9c4ea9f09b3894a9bf7da131452e9d, type: 3} - propertyPath: m_LocalPosition.x - value: 2209.65 - objectReference: {fileID: 0} - - target: {fileID: 2230608995947149769, guid: 2c9c4ea9f09b3894a9bf7da131452e9d, type: 3} - propertyPath: m_LocalPosition.y - value: 175.26 - objectReference: {fileID: 0} - - target: {fileID: 2230608995947149769, guid: 2c9c4ea9f09b3894a9bf7da131452e9d, type: 3} - propertyPath: m_LocalPosition.z - value: -2052.47 - objectReference: {fileID: 0} - - target: {fileID: 2230608995947149769, guid: 2c9c4ea9f09b3894a9bf7da131452e9d, type: 3} - propertyPath: m_LocalRotation.w - value: 1 - objectReference: {fileID: 0} - - target: {fileID: 2230608995947149769, guid: 2c9c4ea9f09b3894a9bf7da131452e9d, type: 3} - propertyPath: m_LocalRotation.x - value: 0 - objectReference: {fileID: 0} - - target: {fileID: 2230608995947149769, guid: 2c9c4ea9f09b3894a9bf7da131452e9d, type: 3} - propertyPath: m_LocalRotation.y - value: 0 - objectReference: {fileID: 0} - - target: {fileID: 2230608995947149769, guid: 2c9c4ea9f09b3894a9bf7da131452e9d, type: 3} - propertyPath: m_LocalRotation.z - value: 0 - objectReference: {fileID: 0} - - target: {fileID: 2230608995947149769, guid: 2c9c4ea9f09b3894a9bf7da131452e9d, type: 3} - propertyPath: m_LocalEulerAnglesHint.x - value: 0 - objectReference: {fileID: 0} - - target: {fileID: 2230608995947149769, guid: 2c9c4ea9f09b3894a9bf7da131452e9d, type: 3} - propertyPath: m_LocalEulerAnglesHint.y - value: 0 - objectReference: {fileID: 0} - - target: {fileID: 2230608995947149769, guid: 2c9c4ea9f09b3894a9bf7da131452e9d, type: 3} - propertyPath: m_LocalEulerAnglesHint.z - value: 0 - objectReference: {fileID: 0} - - target: {fileID: 3280532653993776925, guid: 2c9c4ea9f09b3894a9bf7da131452e9d, type: 3} - propertyPath: m_LocalPosition.y - value: 5.06 - objectReference: {fileID: 0} - - target: {fileID: 3280532653993776925, guid: 2c9c4ea9f09b3894a9bf7da131452e9d, type: 3} - propertyPath: m_LocalPosition.z - value: -10.48 - objectReference: {fileID: 0} - - target: {fileID: 4860966003268461612, guid: 2c9c4ea9f09b3894a9bf7da131452e9d, type: 3} - propertyPath: m_Name - value: Player - objectReference: {fileID: 0} - - target: {fileID: 5460861568075509288, guid: 2c9c4ea9f09b3894a9bf7da131452e9d, type: 3} - propertyPath: m_Height - value: 6 - objectReference: {fileID: 0} - - target: {fileID: 5460861568075509288, guid: 2c9c4ea9f09b3894a9bf7da131452e9d, type: 3} - propertyPath: m_Radius - value: 1.5 - objectReference: {fileID: 0} - - target: {fileID: 8245515018042640262, guid: 2c9c4ea9f09b3894a9bf7da131452e9d, type: 3} - propertyPath: m_TagString - value: PlayerObject - objectReference: {fileID: 0} - m_RemovedComponents: - - {fileID: 4631366212702092740, guid: 2c9c4ea9f09b3894a9bf7da131452e9d, type: 3} - m_RemovedGameObjects: - - {fileID: 5481755865862611780, guid: 2c9c4ea9f09b3894a9bf7da131452e9d, type: 3} - m_AddedGameObjects: [] - m_AddedComponents: - - targetCorrespondingSourceObject: {fileID: 4860966003268461612, guid: 2c9c4ea9f09b3894a9bf7da131452e9d, type: 3} - insertIndex: -1 - addedObject: {fileID: 138097834} - m_SourcePrefab: {fileID: 100100000, guid: 2c9c4ea9f09b3894a9bf7da131452e9d, type: 3} ---- !u!1 &138097832 stripped +--- !u!1 &358421469 stripped GameObject: m_CorrespondingSourceObject: {fileID: 4860966003268461612, guid: 2c9c4ea9f09b3894a9bf7da131452e9d, type: 3} - m_PrefabInstance: {fileID: 138097831} + m_PrefabInstance: {fileID: 1756402835} m_PrefabAsset: {fileID: 0} ---- !u!143 &138097833 stripped +--- !u!143 &358421472 stripped CharacterController: m_CorrespondingSourceObject: {fileID: 5460861568075509288, guid: 2c9c4ea9f09b3894a9bf7da131452e9d, type: 3} - m_PrefabInstance: {fileID: 138097831} + m_PrefabInstance: {fileID: 1756402835} m_PrefabAsset: {fileID: 0} ---- !u!114 &138097834 +--- !u!114 &358421475 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 138097832} + m_GameObject: {fileID: 358421469} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: d05c1b682ef7f6920b3aba13aeaa2b4c, type: 3} m_Name: m_EditorClassIdentifier: - cc: {fileID: 138097833} + cc: {fileID: 358421472} config: {fileID: 11400000, guid: c71b60b0d8cb67e449c69f963be683a6, type: 2} _currentScriptedGround: {fileID: 0} +--- !u!1 &612374556 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 612374560} + - component: {fileID: 612374559} + - component: {fileID: 612374558} + - component: {fileID: 612374557} + m_Layer: 5 + m_Name: UI + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!114 &612374557 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 612374556} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: dc42784cf147c0c48a680349fa168899, type: 3} + m_Name: + m_EditorClassIdentifier: + m_IgnoreReversedGraphics: 1 + m_BlockingObjects: 0 + m_BlockingMask: + serializedVersion: 2 + m_Bits: 4294967295 +--- !u!114 &612374558 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 612374556} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 0cd44c1031e13a943bb63640046fad76, type: 3} + m_Name: + m_EditorClassIdentifier: + m_UiScaleMode: 0 + m_ReferencePixelsPerUnit: 100 + m_ScaleFactor: 1 + m_ReferenceResolution: {x: 800, y: 600} + m_ScreenMatchMode: 0 + m_MatchWidthOrHeight: 0 + m_PhysicalUnit: 3 + m_FallbackScreenDPI: 96 + m_DefaultSpriteDPI: 96 + m_DynamicPixelsPerUnit: 1 + m_PresetInfoIsWorld: 0 +--- !u!223 &612374559 +Canvas: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 612374556} + m_Enabled: 1 + serializedVersion: 3 + m_RenderMode: 0 + m_Camera: {fileID: 0} + m_PlaneDistance: 100 + m_PixelPerfect: 0 + m_ReceivesEvents: 1 + m_OverrideSorting: 0 + m_OverridePixelPerfect: 0 + m_SortingBucketNormalizedSize: 0 + m_VertexColorAlwaysGammaSpace: 0 + m_AdditionalShaderChannelsFlag: 25 + m_UpdateRectTransformForStandalone: 0 + m_SortingLayerID: 0 + m_SortingOrder: 0 + m_TargetDisplay: 0 +--- !u!224 &612374560 +RectTransform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 612374556} + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: 0} + m_LocalScale: {x: 0, y: 0, z: 0} + m_ConstrainProportionsScale: 0 + m_Children: + - {fileID: 1798560038} + m_Father: {fileID: 0} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} + m_AnchorMin: {x: 0, y: 0} + m_AnchorMax: {x: 0, y: 0} + m_AnchoredPosition: {x: 0, y: 0} + m_SizeDelta: {x: 0, y: 0} + m_Pivot: {x: 0, y: 0} --- !u!1 &1169139703 GameObject: m_ObjectHideFlags: 0 @@ -323,6 +343,85 @@ Transform: m_Children: [] m_Father: {fileID: 0} m_LocalEulerAnglesHint: {x: 50, y: -30, z: 0} +--- !u!1 &1373829471 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 1373829474} + - component: {fileID: 1373829473} + - component: {fileID: 1373829472} + m_Layer: 0 + m_Name: EventSystem + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!114 &1373829472 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1373829471} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 01614664b831546d2ae94a42149d80ac, type: 3} + m_Name: + m_EditorClassIdentifier: + m_SendPointerHoverToParent: 1 + m_MoveRepeatDelay: 0.5 + m_MoveRepeatRate: 0.1 + m_XRTrackingOrigin: {fileID: 0} + m_ActionsAsset: {fileID: -944628639613478452, guid: ca9f5fa95ffab41fb9a615ab714db018, type: 3} + m_PointAction: {fileID: -1654692200621890270, guid: ca9f5fa95ffab41fb9a615ab714db018, type: 3} + m_MoveAction: {fileID: -8784545083839296357, guid: ca9f5fa95ffab41fb9a615ab714db018, type: 3} + m_SubmitAction: {fileID: 392368643174621059, guid: ca9f5fa95ffab41fb9a615ab714db018, type: 3} + m_CancelAction: {fileID: 7727032971491509709, guid: ca9f5fa95ffab41fb9a615ab714db018, type: 3} + m_LeftClickAction: {fileID: 3001919216989983466, guid: ca9f5fa95ffab41fb9a615ab714db018, type: 3} + m_MiddleClickAction: {fileID: -2185481485913320682, guid: ca9f5fa95ffab41fb9a615ab714db018, type: 3} + m_RightClickAction: {fileID: -4090225696740746782, guid: ca9f5fa95ffab41fb9a615ab714db018, type: 3} + m_ScrollWheelAction: {fileID: 6240969308177333660, guid: ca9f5fa95ffab41fb9a615ab714db018, type: 3} + m_TrackedDevicePositionAction: {fileID: 6564999863303420839, guid: ca9f5fa95ffab41fb9a615ab714db018, type: 3} + m_TrackedDeviceOrientationAction: {fileID: 7970375526676320489, guid: ca9f5fa95ffab41fb9a615ab714db018, type: 3} + m_DeselectOnBackgroundClick: 1 + m_PointerBehavior: 0 + m_CursorLockBehavior: 0 + m_ScrollDeltaPerTick: 6 +--- !u!114 &1373829473 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1373829471} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 76c392e42b5098c458856cdf6ecaaaa1, type: 3} + m_Name: + m_EditorClassIdentifier: + m_FirstSelected: {fileID: 0} + m_sendNavigationEvents: 1 + m_DragThreshold: 10 +--- !u!4 &1373829474 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1373829471} + 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: 0} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!1 &1626413860 GameObject: m_ObjectHideFlags: 0 @@ -367,10 +466,287 @@ Transform: m_Children: [] m_Father: {fileID: 0} m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!1001 &1756402835 +PrefabInstance: + m_ObjectHideFlags: 0 + serializedVersion: 2 + m_Modification: + serializedVersion: 3 + m_TransformParent: {fileID: 0} + m_Modifications: + - target: {fileID: 2230608995947149769, guid: 2c9c4ea9f09b3894a9bf7da131452e9d, type: 3} + propertyPath: m_LocalPosition.x + value: 2207.4 + objectReference: {fileID: 0} + - target: {fileID: 2230608995947149769, guid: 2c9c4ea9f09b3894a9bf7da131452e9d, type: 3} + propertyPath: m_LocalPosition.y + value: 121.01 + objectReference: {fileID: 0} + - target: {fileID: 2230608995947149769, guid: 2c9c4ea9f09b3894a9bf7da131452e9d, type: 3} + propertyPath: m_LocalPosition.z + value: -2052.47 + objectReference: {fileID: 0} + - target: {fileID: 2230608995947149769, guid: 2c9c4ea9f09b3894a9bf7da131452e9d, type: 3} + propertyPath: m_LocalRotation.w + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 2230608995947149769, guid: 2c9c4ea9f09b3894a9bf7da131452e9d, type: 3} + propertyPath: m_LocalRotation.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 2230608995947149769, guid: 2c9c4ea9f09b3894a9bf7da131452e9d, type: 3} + propertyPath: m_LocalRotation.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 2230608995947149769, guid: 2c9c4ea9f09b3894a9bf7da131452e9d, type: 3} + propertyPath: m_LocalRotation.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 2230608995947149769, guid: 2c9c4ea9f09b3894a9bf7da131452e9d, type: 3} + propertyPath: m_LocalEulerAnglesHint.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 2230608995947149769, guid: 2c9c4ea9f09b3894a9bf7da131452e9d, type: 3} + propertyPath: m_LocalEulerAnglesHint.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 2230608995947149769, guid: 2c9c4ea9f09b3894a9bf7da131452e9d, type: 3} + propertyPath: m_LocalEulerAnglesHint.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 3280532653993776925, guid: 2c9c4ea9f09b3894a9bf7da131452e9d, type: 3} + propertyPath: m_LocalPosition.y + value: 1.7400055 + objectReference: {fileID: 0} + - target: {fileID: 3280532653993776925, guid: 2c9c4ea9f09b3894a9bf7da131452e9d, type: 3} + propertyPath: m_LocalPosition.z + value: -7.6398926 + objectReference: {fileID: 0} + - target: {fileID: 3280532653993776925, guid: 2c9c4ea9f09b3894a9bf7da131452e9d, type: 3} + propertyPath: m_LocalRotation.w + value: 0.99765784 + objectReference: {fileID: 0} + - target: {fileID: 3280532653993776925, guid: 2c9c4ea9f09b3894a9bf7da131452e9d, type: 3} + propertyPath: m_LocalRotation.x + value: 0.0684025 + objectReference: {fileID: 0} + - target: {fileID: 3280532653993776925, guid: 2c9c4ea9f09b3894a9bf7da131452e9d, type: 3} + propertyPath: m_LocalRotation.y + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 3280532653993776925, guid: 2c9c4ea9f09b3894a9bf7da131452e9d, type: 3} + propertyPath: m_LocalRotation.z + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 3280532653993776925, guid: 2c9c4ea9f09b3894a9bf7da131452e9d, type: 3} + propertyPath: m_LocalEulerAnglesHint.x + value: 7.844 + objectReference: {fileID: 0} + - target: {fileID: 3825667154954170629, guid: 2c9c4ea9f09b3894a9bf7da131452e9d, type: 3} + propertyPath: m_LocalPosition.z + value: -0.037 + objectReference: {fileID: 0} + - target: {fileID: 4631366212702092740, guid: 2c9c4ea9f09b3894a9bf7da131452e9d, type: 3} + propertyPath: rootPos + value: + objectReference: {fileID: 0} + - target: {fileID: 4631366212702092740, guid: 2c9c4ea9f09b3894a9bf7da131452e9d, type: 3} + propertyPath: m_Enabled + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4631366212702092740, guid: 2c9c4ea9f09b3894a9bf7da131452e9d, type: 3} + propertyPath: raycastRoot + value: + objectReference: {fileID: 0} + - target: {fileID: 4631366212702092740, guid: 2c9c4ea9f09b3894a9bf7da131452e9d, type: 3} + propertyPath: fallSpeedMultiplier + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4860966003268461612, guid: 2c9c4ea9f09b3894a9bf7da131452e9d, type: 3} + propertyPath: m_Name + value: Player_001 + objectReference: {fileID: 0} + - target: {fileID: 5460861568075509288, guid: 2c9c4ea9f09b3894a9bf7da131452e9d, type: 3} + propertyPath: m_Height + value: 6 + objectReference: {fileID: 0} + - target: {fileID: 5460861568075509288, guid: 2c9c4ea9f09b3894a9bf7da131452e9d, type: 3} + propertyPath: m_Radius + value: 1.5 + objectReference: {fileID: 0} + - target: {fileID: 5481755865862611780, guid: 2c9c4ea9f09b3894a9bf7da131452e9d, type: 3} + propertyPath: m_IsActive + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 8245515018042640262, guid: 2c9c4ea9f09b3894a9bf7da131452e9d, type: 3} + propertyPath: m_TagString + value: PlayerObject + objectReference: {fileID: 0} + m_RemovedComponents: + - {fileID: 4631366212702092740, guid: 2c9c4ea9f09b3894a9bf7da131452e9d, type: 3} + m_RemovedGameObjects: + - {fileID: 5481755865862611780, guid: 2c9c4ea9f09b3894a9bf7da131452e9d, type: 3} + m_AddedGameObjects: [] + m_AddedComponents: + - targetCorrespondingSourceObject: {fileID: 4860966003268461612, guid: 2c9c4ea9f09b3894a9bf7da131452e9d, type: 3} + insertIndex: -1 + addedObject: {fileID: 358421475} + m_SourcePrefab: {fileID: 100100000, guid: 2c9c4ea9f09b3894a9bf7da131452e9d, type: 3} +--- !u!1 &1798560037 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 1798560038} + - component: {fileID: 1798560040} + - component: {fileID: 1798560039} + - component: {fileID: 1798560041} + m_Layer: 5 + m_Name: BottomScreenText + m_TagString: BottomScreenText + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!224 &1798560038 +RectTransform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1798560037} + 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: 612374560} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} + m_AnchorMin: {x: 0.5, y: 0.5} + m_AnchorMax: {x: 0.5, y: 0.5} + m_AnchoredPosition: {x: 100, y: -250} + m_SizeDelta: {x: 500, y: 50} + m_Pivot: {x: 0.5, y: 0.5} +--- !u!114 &1798560039 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1798560037} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: f4688fdb7df04437aeb418b961361dc5, type: 3} + m_Name: + m_EditorClassIdentifier: + m_Material: {fileID: 0} + m_Color: {r: 1, g: 1, b: 1, a: 1} + m_RaycastTarget: 1 + m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0} + m_Maskable: 1 + m_OnCullStateChanged: + m_PersistentCalls: + m_Calls: [] + m_text: BOTTOM TEXT + m_isRightToLeft: 0 + m_fontAsset: {fileID: 11400000, guid: 8f586378b4e144a9851e7b34d9b748ee, type: 2} + m_sharedMaterial: {fileID: 2180264, guid: 8f586378b4e144a9851e7b34d9b748ee, type: 2} + m_fontSharedMaterials: [] + m_fontMaterial: {fileID: 0} + m_fontMaterials: [] + m_fontColor32: + serializedVersion: 2 + rgba: 4294967295 + m_fontColor: {r: 1, g: 1, b: 1, a: 1} + m_enableVertexGradient: 0 + m_colorMode: 3 + m_fontColorGradient: + topLeft: {r: 1, g: 1, b: 1, a: 1} + topRight: {r: 1, g: 1, b: 1, a: 1} + bottomLeft: {r: 1, g: 1, b: 1, a: 1} + bottomRight: {r: 1, g: 1, b: 1, a: 1} + m_fontColorGradientPreset: {fileID: 0} + m_spriteAsset: {fileID: 0} + m_tintAllSprites: 0 + m_StyleSheet: {fileID: 0} + m_TextStyleHashCode: -1183493901 + m_overrideHtmlColors: 0 + m_faceColor: + serializedVersion: 2 + rgba: 4294967295 + m_fontSize: 36 + m_fontSizeBase: 36 + m_fontWeight: 400 + m_enableAutoSizing: 0 + m_fontSizeMin: 18 + m_fontSizeMax: 72 + m_fontStyle: 0 + m_HorizontalAlignment: 1 + m_VerticalAlignment: 256 + m_textAlignment: 65535 + m_characterSpacing: 0 + m_wordSpacing: 0 + m_lineSpacing: 0 + m_lineSpacingMax: 0 + m_paragraphSpacing: 0 + m_charWidthMaxAdj: 0 + m_TextWrappingMode: 1 + m_wordWrappingRatios: 0.4 + m_overflowMode: 0 + m_linkedTextComponent: {fileID: 0} + parentLinkedComponent: {fileID: 0} + m_enableKerning: 0 + m_ActiveFontFeatures: 6e72656b + m_enableExtraPadding: 0 + checkPaddingRequired: 0 + m_isRichText: 1 + m_EmojiFallbackSupport: 1 + m_parseCtrlCharacters: 1 + m_isOrthographic: 1 + m_isCullingEnabled: 0 + m_horizontalMapping: 0 + m_verticalMapping: 0 + m_uvLineOffset: 0 + m_geometrySortingOrder: 0 + m_IsTextObjectScaleStatic: 0 + m_VertexBufferAutoSizeReduction: 0 + m_useMaxVisibleDescender: 1 + m_pageToDisplay: 1 + m_margin: {x: 0, y: 0, z: 0, w: 0} + m_isUsingLegacyAnimationComponent: 0 + m_isVolumetricText: 0 + m_hasFontAssetChanged: 0 + m_baseMaterial: {fileID: 0} + m_maskOffset: {x: 0, y: 0, z: 0, w: 0} +--- !u!222 &1798560040 +CanvasRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1798560037} + m_CullTransparentMesh: 1 +--- !u!114 &1798560041 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1798560037} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 01e09d9983209a606b52790e2054069e, type: 3} + m_Name: + m_EditorClassIdentifier: --- !u!1660057539 &9223372036854775807 SceneRoots: m_ObjectHideFlags: 0 m_Roots: - {fileID: 1169139705} - {fileID: 1626413862} - - {fileID: 138097831} + - {fileID: 1756402835} + - {fileID: 612374560} + - {fileID: 1373829474} diff --git a/Assets/Scripts/GameTest/BottomScreenTextScript.cs b/Assets/Scripts/GameTest/BottomScreenTextScript.cs new file mode 100644 index 00000000..28d521a9 --- /dev/null +++ b/Assets/Scripts/GameTest/BottomScreenTextScript.cs @@ -0,0 +1,25 @@ +using UnityEngine; + +public class BottomScreenTextScript : MonoBehaviour +{ + bool frameTextSet; + // Start is called once before the first execution of Update after the MonoBehaviour is created + void Start() + { + } + + // Update is called once per frame + void Update() + { + if(!frameTextSet) + GetComponent().text = ""; + else + frameTextSet = false; + } + + public void SetText(string text) + { + GetComponent().text = text; + frameTextSet = true; + } +} diff --git a/Assets/Scripts/GameTest/BottomScreenTextScript.cs.meta b/Assets/Scripts/GameTest/BottomScreenTextScript.cs.meta new file mode 100644 index 00000000..80983c81 --- /dev/null +++ b/Assets/Scripts/GameTest/BottomScreenTextScript.cs.meta @@ -0,0 +1,2 @@ +fileFormatVersion: 2 +guid: 01e09d9983209a606b52790e2054069e \ No newline at end of file diff --git a/Assets/Scripts/GameTest/CameraMain.cs b/Assets/Scripts/GameTest/CameraMain.cs new file mode 100644 index 00000000..7d4c0ad7 --- /dev/null +++ b/Assets/Scripts/GameTest/CameraMain.cs @@ -0,0 +1,31 @@ +using System; +using UnityEngine; + +public static class CameraMain +{ + static public GameObject mainCamera; + + static CameraMain() + { + GameObject[] cameraObjects = GameObject.FindGameObjectsWithTag("MainCamera"); + mainCamera = cameraObjects[0]; + } + + static public void ShowObj(RGScriptedObject o, Vector3 camOffset, Vector3 targetOffset, bool follow) + { + mainCamera.transform.SetParent(null); + Vector3 objectPos = o.transform.position; + mainCamera.transform.position = objectPos+camOffset; + mainCamera.transform.LookAt(objectPos+targetOffset); + + Debug.Log($"ShowObj pos: {objectPos}+{camOffset} = {objectPos+camOffset}; LA:{objectPos}+{targetOffset} = {objectPos+targetOffset}"); + + // if follow = true parent camera to object + // might not be accurate, attr 45 camera_move is not set on cyrus, but camera follows him anyways + if(follow) + { + mainCamera.transform.SetParent(o.transform); + } + + } +} diff --git a/Assets/Scripts/GameTest/CameraMain.cs.meta b/Assets/Scripts/GameTest/CameraMain.cs.meta new file mode 100644 index 00000000..21293bf8 --- /dev/null +++ b/Assets/Scripts/GameTest/CameraMain.cs.meta @@ -0,0 +1,2 @@ +fileFormatVersion: 2 +guid: d7fa7f62748b69890b54a4aee10df089 \ No newline at end of file diff --git a/Assets/Scripts/GameTest/LoadWorld.cs b/Assets/Scripts/GameTest/LoadWorld.cs index d9827fe0..8784c273 100644 --- a/Assets/Scripts/GameTest/LoadWorld.cs +++ b/Assets/Scripts/GameTest/LoadWorld.cs @@ -60,22 +60,12 @@ void Update() { if(true) { - /* - ModelLoader.scriptedObjects[0x82BDF408].allowScripting = true; // OB_PLT04 - ModelLoader.scriptedObjects[0x82BDBC58].allowScripting = true; // OB_PLT07 - ModelLoader.scriptedObjects[0x82BDB598].allowScripting = true; // OB_PLT05 - ModelLoader.scriptedObjects[0x82BDB9F0].allowScripting = true; // OB_PLT06 - ModelLoader.scriptedObjects[0x82BDE3C0].allowScripting = true; // OB_PLT03 - ModelLoader.scriptedObjects[0x82BDE968].allowScripting = true; // OB_PLT02 - ModelLoader.scriptedObjects[0x82BDEAD8].allowScripting = true; // OB_PLT01 - ModelLoader.scriptedObjects[0x82BDF098].allowScripting = true; // OB_PLT08 - ModelLoader.scriptedObjects[0x82BE2D08].allowScripting = true; // OB_PLT00 - */ - ModelLoader.scriptedObjects[0x82BDA9B0].allowScripting = true; // OB_STEPR - ModelLoader.scriptedObjects[0x82BDCE60].allowScripting = true; // OB_STEP2 - ModelLoader.scriptedObjects[0x82BDCF98].allowScripting = true; // OB_STEP1 +// ModelLoader.scriptedObjects[0x82BD9E40].allowScripting = true; // EXTOBSRV + ModelLoader.scriptedObjects[0x82BDA6A0].allowScripting = true; // OB_ENG21 + ModelLoader.scriptedObjects[0x82BDA330].allowScripting = true; // OB_DOR02 + ModelLoader.scriptedObjects[0x82BDA470].allowScripting = true; // OB_DOR01 } - if(true) + if(false) { // ModelLoader.scriptedObjects[0x82BD3750].allowScripting = true; // X // ModelLoader.scriptedObjects[0x82BD9D00].allowScripting = true; // X @@ -91,7 +81,7 @@ void Update() // ModelLoader.scriptedObjects[0x82BE7CA0].allowScripting = true; // OB_ERS10 // ModelLoader.scriptedObjects[0x82BDBC58].allowScripting = true; // OB_PLT07 // ModelLoader.scriptedObjects[0x82BDBD98].allowScripting = true; // ERASMO -// ModelLoader.scriptedObjects[0x82BDBF70].allowScripting = true; // OB_GEAR + ModelLoader.scriptedObjects[0x82BDBF70].allowScripting = true; // OB_GEAR // ModelLoader.scriptedObjects[0x82BDC140].allowScripting = true; // OB_ENG03 // ModelLoader.scriptedObjects[0x82BDC378].allowScripting = true; // OB_PIPE // ModelLoader.scriptedObjects[0x82BDE730].allowScripting = true; // GEARSND diff --git a/Assets/Scripts/GameTest/MainUIScript.cs b/Assets/Scripts/GameTest/MainUIScript.cs new file mode 100644 index 00000000..8b656474 --- /dev/null +++ b/Assets/Scripts/GameTest/MainUIScript.cs @@ -0,0 +1,19 @@ +using System; +using UnityEngine; + +public static class MainUIScript +{ + static BottomScreenTextScript bottomScreenText; + + static MainUIScript() + { + GameObject[] textObjects = GameObject.FindGameObjectsWithTag("BottomScreenText"); + bottomScreenText = textObjects[0].GetComponent(); + } + + static public void SetActivateText(string text) + { + // TODO: don't set when RTX subtitle are shown (?) + bottomScreenText.SetText(text); + } +} diff --git a/Assets/Scripts/GameTest/MainUIScript.cs.meta b/Assets/Scripts/GameTest/MainUIScript.cs.meta new file mode 100644 index 00000000..ecfdf9f0 --- /dev/null +++ b/Assets/Scripts/GameTest/MainUIScript.cs.meta @@ -0,0 +1,2 @@ +fileFormatVersion: 2 +guid: 421cc02f36f67d1ec955270d3fa9f08a \ No newline at end of file diff --git a/Assets/Scripts/GameTest/PlayerMain.cs b/Assets/Scripts/GameTest/PlayerMain.cs index b2378349..1edd5670 100644 --- a/Assets/Scripts/GameTest/PlayerMain.cs +++ b/Assets/Scripts/GameTest/PlayerMain.cs @@ -6,7 +6,6 @@ public class PlayerMain: MonoBehaviour { [SerializeField] private CharacterController cc; [SerializeField] private PlayerMovementConfig config; - [SerializeField] private InputData input; // General CC properties private PlayerMovementStates _currentMovementState = PlayerMovementStates.Walking; @@ -48,16 +47,16 @@ private void FixedUpdate() _currentMovementState = PlayerMovementStates.Airborne; } - if (input.jump + if (Game.Input.jump && _currentMovementState == PlayerMovementStates.Walking) { - input.jump = false; + Game.Input.jump = false; _currentMovementState = PlayerMovementStates.Airborne; Jump(); } - else if (input.jump) + else if (Game.Input.jump) { - input.jump = false; + Game.Input.jump = false; } if (_isGrounded @@ -93,7 +92,7 @@ private void FixedUpdate() } if (_currentMovementState == PlayerMovementStates.Climbing - && input.dropDown) + && Game.Input.dropDown) { _currentMovementState = PlayerMovementStates.Walking; _velocity = Vector3.zero; @@ -102,7 +101,7 @@ private void FixedUpdate() // OR shorten the ledge detection ray. } else if (_currentMovementState == PlayerMovementStates.Climbing - && input.climbUp) + && Game.Input.climbUp) { PullUpLedge(); // Todo: Check if the player has enough space to climb up @@ -145,22 +144,22 @@ private void WalkMode() //Debug.DrawRay(transform.position + Vector3.down, _forwardOnSurface, Color.yellow); // Movement when moveModifier is pressed / is true - if (input.moveModifier) + if (Game.Input.moveModifier) { - if (input.move.y != 0) + if (Game.Input.move.y != 0) { // Walk forward or backwards - _velocity = _forwardOnSurface * (input.move.y * config.walkSpeed / 60); + _velocity = _forwardOnSurface * (Game.Input.move.y * config.walkSpeed / 60); // Turn the player - float yRotation = input.move.x * config.turnSpeed * Time.deltaTime * 60; + float yRotation = Game.Input.move.x * config.turnSpeed * Time.deltaTime * 60; transform.Rotate(0, yRotation, 0); } - else if (input.move.x != 0 - && input.move.y == 0) + else if (Game.Input.move.x != 0 + && Game.Input.move.y == 0) { // Strafe left or right - _velocity = _rightOnSurface * (input.move.x * config.walkSpeed / 60); + _velocity = _rightOnSurface * (Game.Input.move.x * config.walkSpeed / 60); } else { @@ -171,14 +170,14 @@ private void WalkMode() else { // Run Forward - if (input.move.y > 0) + if (Game.Input.move.y > 0) { - _velocity = _forwardOnSurface * (input.move.y * config.runSpeed / 60); + _velocity = _forwardOnSurface * (Game.Input.move.y * config.runSpeed / 60); } // Walk backwards - else if (input.move.y < 0) + else if (Game.Input.move.y < 0) { - _velocity = _forwardOnSurface * (input.move.y * config.walkSpeed / 60); + _velocity = _forwardOnSurface * (Game.Input.move.y * config.walkSpeed / 60); } else { @@ -186,7 +185,7 @@ private void WalkMode() } // Turn the player - float yRotation = input.move.x * config.turnSpeed * Time.deltaTime * 60; + float yRotation = Game.Input.move.x * config.turnSpeed * Time.deltaTime * 60; transform.Rotate(0, yRotation, 0); } @@ -235,17 +234,17 @@ private void ClimbMode() Vector3 wallRight = Vector3.Cross(transform.up, -_ledgeWallNormal); // Move on ledge - if (input.move.x > 0 && CanClimbRight()) + if (Game.Input.move.x > 0 && CanClimbRight()) { _velocity = wallRight - _ledgeWallNormal; } - else if (input.move.x < 0 && CanClimbLeft()) + else if (Game.Input.move.x < 0 && CanClimbLeft()) { _velocity = -wallRight - _ledgeWallNormal; } // Keep the value positive and also hammer it towards full numbers - float moveDir = Mathf.Sign(Mathf.Abs(input.move.x)); + float moveDir = Mathf.Sign(Mathf.Abs(Game.Input.move.x)); _velocity *= moveDir * 0.0334f * config.ledgeStrafeSpeed; } @@ -270,7 +269,7 @@ private void SlideMode() private void HandleStepOffset() { float distance = cc.radius + cc.skinWidth + config.rayDistance; - Vector3 targetDirection = _forwardOnSurface * input.move.y + transform.right * input.move.x; + Vector3 targetDirection = _forwardOnSurface * Game.Input.move.y + transform.right * Game.Input.move.x; //Raycast at player's ground level in direction of movement bool bottomRaycast = Physics.Raycast(_playerRootPosition, targetDirection, out _, distance); @@ -306,7 +305,7 @@ private void Jump() return; } - if (input.move.y > 0 + if (Game.Input.move.y > 0 && _speed > config.longJumpThreshold) { // Long forward jump @@ -314,7 +313,7 @@ private void Jump() _velocity.y = config.jumpHeight / 10; _isGrounded = false; } - else if (input.move.y > 0 + else if (Game.Input.move.y > 0 && _speed > config.shortJumpThreshold) { // Short forward jump @@ -338,8 +337,9 @@ private void GroundCheck() Vector3 surfaceDownhillRay = default; float castRadius = 0.34f; - float castDistance = cc.height/2-(castRadius-0.14f); - + float castDistance = cc.height / 2 - (castRadius - 0.14f); + //Debug.DrawRay(transform.position, new Vector3(0, (castDistance + castRadius)*-1, 0), Color.darkOrange); + if (Physics.SphereCast(transform.position, castRadius, Vector3.down, out RaycastHit sphereHit, castDistance, config.groundLayers)) { _isGrounded = true; diff --git a/Assets/Scripts/RGFileImport/RGMData/RGObjectStore.cs b/Assets/Scripts/RGFileImport/RGMData/RGObjectStore.cs index b5e8f37e..9edcbaa0 100644 --- a/Assets/Scripts/RGFileImport/RGMData/RGObjectStore.cs +++ b/Assets/Scripts/RGFileImport/RGMData/RGObjectStore.cs @@ -105,12 +105,15 @@ public static RGScriptedObject GetPlayer() { return player; } + public static void SetCamera(RGScriptedObject newCamera) { + GameObject[] cameraObjects = GameObject.FindGameObjectsWithTag("MainCamera"); camera = newCamera; } public static RGScriptedObject GetCamera() { + //return CameraMain.mainCamera; return camera; } diff --git a/Assets/Scripts/RGFileImport/RGMData/RGScriptedObject.cs b/Assets/Scripts/RGFileImport/RGMData/RGScriptedObject.cs index 38a36db3..7b50a221 100644 --- a/Assets/Scripts/RGFileImport/RGMData/RGScriptedObject.cs +++ b/Assets/Scripts/RGFileImport/RGMData/RGScriptedObject.cs @@ -167,6 +167,7 @@ public void InstanciateLight(RGFileImport.RGRGMFile.RGMMPOBItem MPOB, RGFileImpo public void Instanciate(RGFileImport.RGRGMFile.RGMMPOBItem MPOB, RGFileImport.RGRGMFile filergm, string name_col) { + Debug.Log($"Adding SO {MPOB.scriptName}"); scriptName = MPOB.scriptName; RAHDData = filergm.RAHD.dict[scriptName]; @@ -221,7 +222,7 @@ public void Instanciate(RGFileImport.RGRGMFile.RGMMPOBItem MPOB, RGFileImport.RG attributes = new byte[256]; Array.Copy(filergm.RAAT.attributes, RAHDData.index*256, attributes, 0, 256); - if(skinnedMeshRenderer.sharedMesh != null) + if(skinnedMeshRenderer != null) { gameObject.AddComponent(); gameObject.GetComponent().sharedMesh = skinnedMeshRenderer.sharedMesh; @@ -427,17 +428,27 @@ void SetupFunctions() { functions = new Func[FUNC_CNT]; functions[17] = WaitOnTasks; + functions[21] = showObj; functions[44] = RotateByAxis; functions[45] = RotateToAxis; functions[53] = MoveByAxis; functions[56] = MoveToLocation; functions[60] = Wait; functions[62] = Light; + functions[63] = LightRadius; functions[64] = LightIntensity; functions[65] = LightOff; functions[66] = LightOffset; + functions[83] = SetAttribute; + functions[84] = GetAttribute; + functions[100] = HideMe; + functions[101] = ShowMe; + functions[127] = ACTIVATE; functions[156] = Offset; functions[224] = PlayerStand; + functions[228] = PlayerDistance; + functions[233] = PlayerLooking; + functions[243] = PlayerFaceObj; functions[271] = SyncWithGroup; // overwrite all non-implemented functions with a NIMPL error @@ -493,6 +504,24 @@ public Vector3 RGAxisToVector3(int RGAxis) } return Vector3.Scale(axis, new Vector3(1.0f, 1.0f,-1.0f)); } + + /*function 21*/ + public int showObj(uint caller, bool multitask, int[] i /*3*/) + { + // Targets the camera to show the object, settings its position + // i[0]: camera XYZ-axis offset (not sure which) + // i[1]: camera up-axis offset + // i[2]: camera XYZ-axis offset (not sure which) + Vector3 offsetPos = new Vector3(((float)i[0])*RGM_MPOB_SCALE, + -((float)i[1])*RGM_MPOB_SCALE, + ((float)i[2])*RGM_MPOB_SCALE); + Debug.Log($"{multitask}_{scriptName}_showObj({string.Join(",",i)}) : {offsetPos}"); + CameraMain.ShowObj(this, offsetPos, Vector3.zero, true); + //return CameraMain.mainCamera; + return 0; + } + + /*task 44*/ public int RotateByAxis(uint caller, bool multitask, int[] i /*3*/) { @@ -624,6 +653,19 @@ public int Light(uint caller, bool multitask, int[] i /*2*/) light.range = (float)(i[0])/20.0f; return 0; } + + /*function 63*/ + public int LightRadius(uint caller, bool multitask, int[] i /*1*/) + { + // Sets the light's range/radius + // i[0]: light radius + + if (light == null) + return 0; + light.range = (float)(i[0])/20.0f; + return 0; + } + /*function 64*/ public int LightIntensity(uint caller, bool multitask, int[] i /*1*/) { @@ -667,6 +709,66 @@ public int LightOffset(uint caller, bool multitask, int[] i /*3*/) } return 0; } + + /*function 83*/ + public int SetAttribute(uint caller, bool multitask, int[] i /*2*/) + { + // Sets the value of an attribute to something + // i[0]: ID of attribute to set + // i[1]: Value to set to + + Debug.Log($"{multitask}_{scriptName}_SetAttribute({string.Join(",", i)})"); + attributes[i[0]] = (byte)i[1]; + return 0; + } + + /*function 84*/ + public int GetAttribute(uint caller, bool multitask, int[] i /*1*/) + { + // Gets the value of an attribute + // i[0]: ID of attribute to get the value of + + Debug.Log($"{multitask}_{scriptName}_GetAttribute({string.Join(",", i)})"); + return attributes[i[0]]; + } + + /*function 100*/ + public int HideMe(uint caller, bool multitask, int[] i /*0*/) + { + Debug.Log($"{multitask}_{scriptName}_HideMe({string.Join(",",i)})"); + // Hides this object + if(skinnedMeshRenderer != null) + skinnedMeshRenderer.enabled = false;; + if(collider != null) + collider.enabled = false;; + return 0; + } + + /*function 101*/ + public int ShowMe(uint caller, bool multitask, int[] i /*0*/) + { + Debug.Log($"{multitask}_{scriptName}_ShowMe({string.Join(",",i)})"); + // Unhides this object + if(skinnedMeshRenderer != null) + skinnedMeshRenderer.enabled = true;; + if(collider != null) + collider.enabled = true; + return 0; + } + + /*function 127*/ + public int ACTIVATE(uint caller, bool multitask, int[] i /*1*/) + { + // True if player activates an item + // i[0]: Stringid shown on screen when looking at the item + // TODO: get input events in here somehow + // also i[0] is parsed as int, but thats a script runner problem + + MainUIScript.SetActivateText(new string($"STR_{i[0]}")); + + return 0; + } + /*task 156*/ public int Offset(uint caller, bool multitask, int[] i /*3*/) { @@ -697,7 +799,50 @@ public int PlayerStand(uint caller, bool multitask, int[] i /*0*/) else return 0; } - + /*function 228*/ + public int PlayerDistance(uint caller, bool multitask, int[] i /*0*/) + { + // returns the distance to the player object + RGScriptedObject player = RGObjectStore.GetPlayer(); + float distance = Vector3.Distance (player.transform.position, this.transform.position); + int rgDistance = (int)(distance*(float)(1.0f/RGM_MPOB_SCALE)); + // scale back to RG units + Debug.Log($"PLAYERDIST: {rgDistance}"); + return rgDistance; + } + /*function 233*/ + public int PlayerLooking(uint caller, bool multitask, int[] i /*1*/) + { + // Returns 1 if the player is looking at the object + // i[0]: max degrees (DA angles) to check < ASSUMPTION +// Quaternion rotationDelta = Quaternion.AngleAxis(((float)i[1])/DA2DG, axis); + RGScriptedObject player = RGObjectStore.GetPlayer(); + Vector3 playerFwd = player.transform.forward; + Vector3 relPos = this.transform.position-player.transform.position; + + playerFwd.y = 0.0f; + relPos.y = 0.0f; + + float angle = Vector3.Angle(playerFwd, relPos); + float maxAngle = -((float)i[0])*DA2DG; + Debug.Log($"PLAYERLOOKING: {angle}/{maxAngle}"); + if(angle < maxAngle) + return 1; + else + return 0; + } + + /*task 243*/ + public int PlayerFaceObj(uint caller, bool multitask, int[] i /*0*/) + { + // Turns the player horizontally to face the object + RGScriptedObject player = RGObjectStore.GetPlayer(); + Vector3 playerPosition = new Vector3(player.transform.position.x, this.transform.position.y, player.transform.position.z); + transform.LookAt(playerPosition); + + return 0; + } + /*task 271*/ public int SyncWithGroup(uint caller, bool multitask, int[] i /*1*/) diff --git a/Assets/Scripts/RGFileImport/RGMData/soupdeffcn_nimpl.cs b/Assets/Scripts/RGFileImport/RGMData/soupdeffcn_nimpl.cs index b50cf2ec..a68c923a 100644 --- a/Assets/Scripts/RGFileImport/RGMData/soupdeffcn_nimpl.cs +++ b/Assets/Scripts/RGFileImport/RGMData/soupdeffcn_nimpl.cs @@ -163,6 +163,10 @@ public static int showObjRot(uint caller, bool multitask, int[] i /*8*/) /*task*/ public static int showObj(uint caller, bool multitask, int[] i /*3*/) { + // Targets the camera to show the object, settings its position + // i[0]: ??? + // i[1]: camera up-axis offset + // i[2]: ThrowNIMPL("showObj",i); return 0; } @@ -277,6 +281,10 @@ public static int menuProc(uint caller, bool multitask, int[] i /*0*/) /*function*/ public static int menuAddItem(uint caller, bool multitask, int[] i /*3*/) { + // add a menu item to the dialog menu + // i[0]: string index into the RTX file + // i[1]: 1 grays out the item + // i[2]: the item index (? not 100% sequential, might miss some in-between) ThrowNIMPL("menuAddItem",i); return 0; } diff --git a/ProjectSettings/TagManager.asset b/ProjectSettings/TagManager.asset index baa3d09c..a265084e 100644 --- a/ProjectSettings/TagManager.asset +++ b/ProjectSettings/TagManager.asset @@ -8,6 +8,7 @@ TagManager: - Item - Moving Platform - PlayerObject + - BottomScreenText layers: - Default - TransparentFX diff --git a/io_tst/rgmtst/make b/io_tst/rgmtst/make index f5de8033..f563cb37 100755 --- a/io_tst/rgmtst/make +++ b/io_tst/rgmtst/make @@ -1,4 +1,4 @@ -#mcs -debug rgmtst.cs ../../Assets/Scripts/RGFileImport/RGGFXImport/RGRGMFile.cs ../../Assets/Scripts/RGFileImport/RGGFXImport/MemoryReader.cs +mcs -debug rgmtst.cs ../../Assets/Scripts/RGFileImport/RGGFXImport/RGRGMFile.cs ../../Assets/Scripts/RGFileImport/RGGFXImport/MemoryReader.cs #mcs -unsafe -debug matrices.cs mcs -debug scriptstst.cs ../../Assets/Scripts/RGFileImport/RGMData/RGRGMScriptStore.cs ../../Assets/Scripts/RGFileImport/RGGFXImport/RGRGMFile.cs ../../Assets/Scripts/RGFileImport/RGGFXImport/MemoryReader.cs #mcs -debug animtst.cs ../../Assets/Scripts/RGFileImport/RGMData/RGRGMAnimStore.cs ../../Assets/Scripts/RGFileImport/RGGFXImport/RGRGMFile.cs ../../Assets/Scripts/RGFileImport/RGGFXImport/MemoryReader.cs diff --git a/io_tst/rgmtst/rgmtst.cs b/io_tst/rgmtst/rgmtst.cs index bd5b4724..b2d195be 100644 --- a/io_tst/rgmtst/rgmtst.cs +++ b/io_tst/rgmtst/rgmtst.cs @@ -65,7 +65,7 @@ public static void print_MPOB(RGRGMFile filergm) public static void Main(string[] args) { RGRGMFile filergm = new RGRGMFile(); - filergm.LoadFile("../../game_3dfx/maps/OBSERVE.RGM"); + filergm.LoadFile("../../game_3dfx/maps/TEMPLE.RGM"); /* foreach(var entry in filergm.RAHD.dict) diff --git a/io_tst/rgmtst/scriptstst.cs b/io_tst/rgmtst/scriptstst.cs index 7df18a12..2cd7b73d 100644 --- a/io_tst/rgmtst/scriptstst.cs +++ b/io_tst/rgmtst/scriptstst.cs @@ -4,18 +4,23 @@ using System.Linq; using RGFileImport; - public class RGObjectStore +public class RGObjectStore +{ + + static Func[] funcs; + public static void setfuncs(Func[] fs) { + funcs = fs; + } - public static int DoObjectTask(uint objectId, string subjectName, int taskId, bool isMultiTask, int[] parameters) - { -// static Func[] SetupFuncs() + public static int DoObjectTask(uint objectId, string subjectName, int taskId, bool isMultiTask, int[] parameters) + { + return funcs[taskId](isMultiTask, parameters); + } + +} -Console.WriteLine($"FUNC: {taskId}"); - return 1; - } - } namespace xyz { public class test @@ -23,7 +28,7 @@ public class test public static void Main(string[] args) { RGRGMFile filergm = new RGRGMFile(); -/* + /* filergm.LoadFile("../../game_3dfx/maps/TAVERN.RGM"); RGRGMScriptStore.ReadScript(filergm); for(int i=0;i