Implement movement input handling and update UI components for treasure collection
This commit is contained in:
@@ -296,11 +296,11 @@ MonoBehaviour:
|
||||
m_GameObject: {fileID: 7047733282028940674}
|
||||
m_Enabled: 1
|
||||
m_EditorHideFlags: 0
|
||||
m_Script: {fileID: 11500000, guid: ded23e667cffbfd46b2633ae22204797, type: 3}
|
||||
m_Script: {fileID: 11500000, guid: d25d392c71acf0a43a02538234591802, type: 3}
|
||||
m_Name:
|
||||
m_EditorClassIdentifier:
|
||||
animator: {fileID: 7277787345195142390}
|
||||
_treasureSO: {fileID: 11400000, guid: 1f2fcda5f0230034eba2b2cfd9d40897, type: 2}
|
||||
_treasureSO: {fileID: 11400000, guid: d40fd30a10b87f9438f7ac341613dfa2, type: 2}
|
||||
--- !u!95 &7277787345195142390
|
||||
Animator:
|
||||
serializedVersion: 7
|
||||
|
||||
@@ -0,0 +1,8 @@
|
||||
fileFormatVersion: 2
|
||||
guid: ad356843f4c7ac7459d06943f0ece1a5
|
||||
folderAsset: yes
|
||||
DefaultImporter:
|
||||
externalObjects: {}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
@@ -0,0 +1,16 @@
|
||||
%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: 81dec0bb25670ad4db25ef9ce940b721, type: 3}
|
||||
m_Name: Coin
|
||||
m_EditorClassIdentifier: Assembly-CSharp::TreasureSO
|
||||
Image: {fileID: 8331088274507185253, guid: fb6dbbc81180d204bb4ff36aae48fbc9, type: 3}
|
||||
Treasure: 0
|
||||
@@ -0,0 +1,8 @@
|
||||
fileFormatVersion: 2
|
||||
guid: eabbfa3560e70f942a5ae19872153053
|
||||
NativeFormatImporter:
|
||||
externalObjects: {}
|
||||
mainObjectFileID: 11400000
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
@@ -0,0 +1,16 @@
|
||||
%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: 81dec0bb25670ad4db25ef9ce940b721, type: 3}
|
||||
m_Name: Key
|
||||
m_EditorClassIdentifier: Assembly-CSharp::TreasureSO
|
||||
Image: {fileID: 7818119699687691340, guid: fb6dbbc81180d204bb4ff36aae48fbc9, type: 3}
|
||||
Treasure: 1
|
||||
@@ -0,0 +1,8 @@
|
||||
fileFormatVersion: 2
|
||||
guid: d40fd30a10b87f9438f7ac341613dfa2
|
||||
NativeFormatImporter:
|
||||
externalObjects: {}
|
||||
mainObjectFileID: 11400000
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
+164
-21
@@ -2824,9 +2824,11 @@ MonoBehaviour:
|
||||
m_GameObject: {fileID: 410068208}
|
||||
m_Enabled: 1
|
||||
m_EditorHideFlags: 0
|
||||
m_Script: {fileID: 11500000, guid: ff6c3960de97db14f89d6633159838dc, type: 3}
|
||||
m_Script: {fileID: 11500000, guid: ae8d1d59de450ae4e8be540c1a9d37ff, type: 3}
|
||||
m_Name:
|
||||
m_EditorClassIdentifier:
|
||||
_totalCoins: {fileID: 1923750336}
|
||||
_keyIcon: {fileID: 0}
|
||||
--- !u!1 &411449914
|
||||
GameObject:
|
||||
m_ObjectHideFlags: 0
|
||||
@@ -3788,7 +3790,7 @@ MonoBehaviour:
|
||||
m_OnCullStateChanged:
|
||||
m_PersistentCalls:
|
||||
m_Calls: []
|
||||
m_Sprite: {fileID: 21300000, guid: b559b8223232dd0448e50bdfa6649228, type: 3}
|
||||
m_Sprite: {fileID: 8331088274507185253, guid: fb6dbbc81180d204bb4ff36aae48fbc9, type: 3}
|
||||
m_Type: 0
|
||||
m_PreserveAspect: 0
|
||||
m_FillCenter: 1
|
||||
@@ -3833,9 +3835,11 @@ MonoBehaviour:
|
||||
m_GameObject: {fileID: 679297301}
|
||||
m_Enabled: 1
|
||||
m_EditorHideFlags: 0
|
||||
m_Script: {fileID: 11500000, guid: b3ead8e41e973dd43b93a8638ea30a36, type: 3}
|
||||
m_Script: {fileID: 11500000, guid: 5b7fcd68a9cc8f64bbc27a6eb9ec68a1, type: 3}
|
||||
m_Name:
|
||||
m_EditorClassIdentifier:
|
||||
_openDoor: {fileID: -1152093481, guid: 7c2d6acd22d2d0c40b84d99967afb42a, type: 3}
|
||||
_debugMode: 0
|
||||
--- !u!61 &679297303
|
||||
BoxCollider2D:
|
||||
m_ObjectHideFlags: 0
|
||||
@@ -5498,6 +5502,51 @@ Transform:
|
||||
m_CorrespondingSourceObject: {fileID: 7345322822309755345, guid: b38f313f4560587478b6bc53fc9aaf5c, type: 3}
|
||||
m_PrefabInstance: {fileID: 1149735060}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
--- !u!1 &1173510571
|
||||
GameObject:
|
||||
m_ObjectHideFlags: 0
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
serializedVersion: 6
|
||||
m_Component:
|
||||
- component: {fileID: 1173510573}
|
||||
- component: {fileID: 1173510572}
|
||||
m_Layer: 0
|
||||
m_Name: GameManager
|
||||
m_TagString: Untagged
|
||||
m_Icon: {fileID: 0}
|
||||
m_NavMeshLayer: 0
|
||||
m_StaticEditorFlags: 0
|
||||
m_IsActive: 1
|
||||
--- !u!114 &1173510572
|
||||
MonoBehaviour:
|
||||
m_ObjectHideFlags: 0
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
m_GameObject: {fileID: 1173510571}
|
||||
m_Enabled: 1
|
||||
m_EditorHideFlags: 0
|
||||
m_Script: {fileID: 11500000, guid: 8f37247791475bc4bb2887347a0f905a, type: 3}
|
||||
m_Name:
|
||||
m_EditorClassIdentifier: Assembly-CSharp::GameManager
|
||||
_debugMode: 0
|
||||
--- !u!4 &1173510573
|
||||
Transform:
|
||||
m_ObjectHideFlags: 0
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
m_GameObject: {fileID: 1173510571}
|
||||
serializedVersion: 2
|
||||
m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
|
||||
m_LocalPosition: {x: -5.43318, y: -4.54724, 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 &1173618891
|
||||
GameObject:
|
||||
m_ObjectHideFlags: 0
|
||||
@@ -5790,7 +5839,7 @@ MonoBehaviour:
|
||||
m_OnCullStateChanged:
|
||||
m_PersistentCalls:
|
||||
m_Calls: []
|
||||
m_Sprite: {fileID: 21300000, guid: c246988591b5dda41aa966d3c73bac73, type: 3}
|
||||
m_Sprite: {fileID: 7818119699687691340, guid: fb6dbbc81180d204bb4ff36aae48fbc9, type: 3}
|
||||
m_Type: 0
|
||||
m_PreserveAspect: 0
|
||||
m_FillCenter: 1
|
||||
@@ -6203,6 +6252,54 @@ Transform:
|
||||
m_CorrespondingSourceObject: {fileID: 7345322822309755345, guid: b38f313f4560587478b6bc53fc9aaf5c, type: 3}
|
||||
m_PrefabInstance: {fileID: 1325345547}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
--- !u!1 &1331708330
|
||||
GameObject:
|
||||
m_ObjectHideFlags: 0
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
serializedVersion: 6
|
||||
m_Component:
|
||||
- component: {fileID: 1331708332}
|
||||
- component: {fileID: 1331708331}
|
||||
m_Layer: 0
|
||||
m_Name: NoiseSystem
|
||||
m_TagString: Untagged
|
||||
m_Icon: {fileID: 0}
|
||||
m_NavMeshLayer: 0
|
||||
m_StaticEditorFlags: 0
|
||||
m_IsActive: 1
|
||||
--- !u!114 &1331708331
|
||||
MonoBehaviour:
|
||||
m_ObjectHideFlags: 0
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
m_GameObject: {fileID: 1331708330}
|
||||
m_Enabled: 1
|
||||
m_EditorHideFlags: 0
|
||||
m_Script: {fileID: 11500000, guid: 897c2741fe0100e4990a32480e24d9ae, type: 3}
|
||||
m_Name:
|
||||
m_EditorClassIdentifier: Assembly-CSharp::NoiseSystem
|
||||
_debugMode: 0
|
||||
_enemyLayer:
|
||||
serializedVersion: 2
|
||||
m_Bits: 128
|
||||
--- !u!4 &1331708332
|
||||
Transform:
|
||||
m_ObjectHideFlags: 0
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
m_GameObject: {fileID: 1331708330}
|
||||
serializedVersion: 2
|
||||
m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
|
||||
m_LocalPosition: {x: 18.38036, y: -4.00387, 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!4 &1341375639 stripped
|
||||
Transform:
|
||||
m_CorrespondingSourceObject: {fileID: 8121927806228425505, guid: ba1868bb4c26f6d41830aada771e3006, type: 3}
|
||||
@@ -7111,6 +7208,7 @@ MonoBehaviour:
|
||||
_spawnPoint: {fileID: 5855359588613562703}
|
||||
_hammerPrefab: {fileID: 6648495433791226095, guid: 111653ffd63dcc64a91ceb9c5d52aa04, type: 3}
|
||||
_throwSpeed: 5
|
||||
_throwCooldown: 1.5
|
||||
--- !u!114 &1627236062
|
||||
MonoBehaviour:
|
||||
m_ObjectHideFlags: 0
|
||||
@@ -7123,19 +7221,6 @@ MonoBehaviour:
|
||||
m_Script: {fileID: 11500000, guid: 45d7bd38990996d4488582b07cbe7e40, type: 3}
|
||||
m_Name:
|
||||
m_EditorClassIdentifier: Assembly-CSharp::InputManager
|
||||
--- !u!114 &1627236066
|
||||
MonoBehaviour:
|
||||
m_ObjectHideFlags: 0
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
m_GameObject: {fileID: 681564194}
|
||||
m_Enabled: 1
|
||||
m_EditorHideFlags: 0
|
||||
m_Script: {fileID: 11500000, guid: 907b91debf5d5864780e9466f4017f38, type: 3}
|
||||
m_Name:
|
||||
m_EditorClassIdentifier: Assembly-CSharp::PlayerState
|
||||
Lives: 3
|
||||
--- !u!1 &1638752927
|
||||
GameObject:
|
||||
m_ObjectHideFlags: 0
|
||||
@@ -7146,7 +7231,7 @@ GameObject:
|
||||
m_Component:
|
||||
- component: {fileID: 1638752929}
|
||||
- component: {fileID: 1638752928}
|
||||
m_Layer: 0
|
||||
m_Layer: 7
|
||||
m_Name: GoblinsSpawnPoint
|
||||
m_TagString: Untagged
|
||||
m_Icon: {fileID: 0}
|
||||
@@ -7955,6 +8040,52 @@ Transform:
|
||||
- {fileID: 1261849835}
|
||||
m_Father: {fileID: 1173618893}
|
||||
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
|
||||
--- !u!1 &2042290050
|
||||
GameObject:
|
||||
m_ObjectHideFlags: 0
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
serializedVersion: 6
|
||||
m_Component:
|
||||
- component: {fileID: 2042290052}
|
||||
- component: {fileID: 2042290051}
|
||||
m_Layer: 0
|
||||
m_Name: LevelManager
|
||||
m_TagString: Untagged
|
||||
m_Icon: {fileID: 0}
|
||||
m_NavMeshLayer: 0
|
||||
m_StaticEditorFlags: 0
|
||||
m_IsActive: 1
|
||||
--- !u!114 &2042290051
|
||||
MonoBehaviour:
|
||||
m_ObjectHideFlags: 0
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
m_GameObject: {fileID: 2042290050}
|
||||
m_Enabled: 1
|
||||
m_EditorHideFlags: 0
|
||||
m_Script: {fileID: 11500000, guid: 95776c7bbfb13d646b34788f8187536f, type: 3}
|
||||
m_Name:
|
||||
m_EditorClassIdentifier: Assembly-CSharp::LevelManager
|
||||
_debugMode: 0
|
||||
_doorReference: {fileID: 679297302}
|
||||
--- !u!4 &2042290052
|
||||
Transform:
|
||||
m_ObjectHideFlags: 0
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
m_GameObject: {fileID: 2042290050}
|
||||
serializedVersion: 2
|
||||
m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
|
||||
m_LocalPosition: {x: -5.43318, y: -4.54724, 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!4 &2065311631 stripped
|
||||
Transform:
|
||||
m_CorrespondingSourceObject: {fileID: 7345322822309755345, guid: b38f313f4560587478b6bc53fc9aaf5c, type: 3}
|
||||
@@ -8365,6 +8496,18 @@ PrefabInstance:
|
||||
propertyPath: _spawnPoint
|
||||
value:
|
||||
objectReference: {fileID: 461379296}
|
||||
- target: {fileID: 1693252312754102175, guid: a7f273d812293e54d92972f62e1f0159, type: 3}
|
||||
propertyPath: _regularSprite
|
||||
value:
|
||||
objectReference: {fileID: 21300000, guid: 618309f12a7ca8b47b9aac8c7e39fc07, type: 3}
|
||||
- target: {fileID: 1693252312754102175, guid: a7f273d812293e54d92972f62e1f0159, type: 3}
|
||||
propertyPath: _noHammerSprite
|
||||
value:
|
||||
objectReference: {fileID: 21300000, guid: c7266c68d1eb5a34882171399d35bba5, type: 3}
|
||||
- target: {fileID: 1693252312754102175, guid: a7f273d812293e54d92972f62e1f0159, type: 3}
|
||||
propertyPath: _mapLayer.m_Bits
|
||||
value: 8
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 3156624200786225141, guid: a7f273d812293e54d92972f62e1f0159, type: 3}
|
||||
propertyPath: m_Layer
|
||||
value: 8
|
||||
@@ -8442,9 +8585,6 @@ PrefabInstance:
|
||||
- targetCorrespondingSourceObject: {fileID: 3931708971405200045, guid: a7f273d812293e54d92972f62e1f0159, type: 3}
|
||||
insertIndex: -1
|
||||
addedObject: {fileID: 1627236062}
|
||||
- targetCorrespondingSourceObject: {fileID: 3931708971405200045, guid: a7f273d812293e54d92972f62e1f0159, type: 3}
|
||||
insertIndex: -1
|
||||
addedObject: {fileID: 1627236066}
|
||||
m_SourcePrefab: {fileID: 100100000, guid: a7f273d812293e54d92972f62e1f0159, type: 3}
|
||||
--- !u!4 &5855359588613562703 stripped
|
||||
Transform:
|
||||
@@ -8460,3 +8600,6 @@ SceneRoots:
|
||||
- {fileID: 1173618893}
|
||||
- {fileID: 1123299336}
|
||||
- {fileID: 1269535137}
|
||||
- {fileID: 1173510573}
|
||||
- {fileID: 2042290052}
|
||||
- {fileID: 1331708332}
|
||||
|
||||
@@ -17,6 +17,7 @@ public class PlayerController : Character
|
||||
private InputManager _inputManager;
|
||||
private PlayerState _playerState;
|
||||
private HammerThrower _hammerThrower;
|
||||
private Vector2 _currentMovement;
|
||||
|
||||
private void Awake()
|
||||
{
|
||||
@@ -25,6 +26,7 @@ public class PlayerController : Character
|
||||
_hammerThrower = GetComponent<HammerThrower>();
|
||||
|
||||
_inputManager.OnFire += OnFireButtonPressed;
|
||||
_inputManager.OnMovementChanged += OnMovementChanged;
|
||||
base.Init();
|
||||
}
|
||||
|
||||
@@ -38,6 +40,15 @@ public class PlayerController : Character
|
||||
_inputManager.OnDisable();
|
||||
}
|
||||
|
||||
private void OnDestroy()
|
||||
{
|
||||
if (_inputManager != null)
|
||||
{
|
||||
_inputManager.OnFire -= OnFireButtonPressed;
|
||||
_inputManager.OnMovementChanged -= OnMovementChanged;
|
||||
}
|
||||
}
|
||||
|
||||
private void Update()
|
||||
{
|
||||
if (_hammer == null && !_isHoldingHammer)
|
||||
@@ -46,11 +57,15 @@ public class PlayerController : Character
|
||||
_isHoldingHammer = true;
|
||||
}
|
||||
|
||||
Vector2 move = _inputManager.Movement;
|
||||
MoveTo(move.x, isAllowVertical ? move.y : 0);
|
||||
MoveTo(_currentMovement.x, isAllowVertical ? _currentMovement.y : 0);
|
||||
_hammerThrower.SetFacingDirection(_facingRight);
|
||||
}
|
||||
|
||||
private void OnMovementChanged(Vector2 movement)
|
||||
{
|
||||
_currentMovement = movement;
|
||||
}
|
||||
|
||||
private void OnFireButtonPressed()
|
||||
{
|
||||
if (_hammerThrower.CanThrow)
|
||||
|
||||
@@ -7,6 +7,7 @@ public class InputManager : MonoBehaviour
|
||||
private InputActions _actions;
|
||||
|
||||
public Vector2 Movement { get; private set; }
|
||||
public event Action<Vector2> OnMovementChanged;
|
||||
public event Action OnFire;
|
||||
|
||||
private void Awake()
|
||||
@@ -14,6 +15,7 @@ public class InputManager : MonoBehaviour
|
||||
_actions = new InputActions();
|
||||
|
||||
// Movement
|
||||
_actions.Player.Movement.started += OnMovementPerformed;
|
||||
_actions.Player.Movement.performed += OnMovementPerformed;
|
||||
_actions.Player.Movement.canceled += OnMovementCanceled;
|
||||
|
||||
@@ -31,16 +33,21 @@ public class InputManager : MonoBehaviour
|
||||
|
||||
public void OnDisable()
|
||||
{
|
||||
_actions.Disable();
|
||||
if (_actions != null)
|
||||
{
|
||||
_actions.Disable();
|
||||
}
|
||||
}
|
||||
|
||||
private void OnMovementPerformed(InputAction.CallbackContext ctx)
|
||||
{
|
||||
Movement = ctx.ReadValue<Vector2>();
|
||||
OnMovementChanged?.Invoke(Movement);
|
||||
}
|
||||
|
||||
private void OnMovementCanceled(InputAction.CallbackContext ctx)
|
||||
{
|
||||
Movement = Vector2.zero;
|
||||
OnMovementChanged?.Invoke(Movement);
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user