Commit 68c918fc authored by 18손재민's avatar 18손재민

Merge remote-tracking branch 'origin/enemy'

# Conflicts:
#	Assets/Prefabs/TetrisMap/PlayerIcon.prefab
#	Assets/Scripts/Item/InventoryManager.cs
parents b6170ab1 501d4223
......@@ -161,4 +161,11 @@ AnimationClip:
m_HasGenericRootTransform: 0
m_HasMotionFloatCurves: 0
m_GenerateMotionCurves: 0
m_Events: []
m_Events:
- time: 0
functionName: ChangeVelocityX
data:
objectReferenceParameter: {fileID: 0}
floatParameter: 0
intParameter: 0
messageOptions: 0
......@@ -22,7 +22,7 @@ AnimationClip:
value: {fileID: 21300000, guid: eadcce843f0992343a9b7218e93f1c70, type: 3}
- time: 0.25
value: {fileID: 21300000, guid: 66029eea961e74942902bdcde04415f8, type: 3}
- time: 0.33333334
- time: 0.5
value: {fileID: 21300000, guid: 240fa090b75870d48b7b41babab381cd, type: 3}
attribute: m_Sprite
path:
......@@ -51,7 +51,7 @@ AnimationClip:
m_AdditiveReferencePoseClip: {fileID: 0}
m_AdditiveReferencePoseTime: 0
m_StartTime: 0
m_StopTime: 0.35000002
m_StopTime: 0.51666665
m_OrientationOffsetY: 0
m_Level: 0
m_CycleOffset: 0
......
......@@ -108,6 +108,13 @@ AnimationClip:
m_HasMotionFloatCurves: 0
m_GenerateMotionCurves: 0
m_Events:
- time: 0
functionName: ChangeVelocityX
data:
objectReferenceParameter: {fileID: 0}
floatParameter: 0
intParameter: 0
messageOptions: 0
- time: 1
functionName: DeadEvent
data:
......
%YAML 1.1
%TAG !u! tag:unity3d.com,2011:
--- !u!74 &7400000
AnimationClip:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInternal: {fileID: 0}
m_Name: Goblin Stunned
serializedVersion: 6
m_Legacy: 0
m_Compressed: 0
m_UseHighQualityCurve: 1
m_RotationCurves: []
m_CompressedRotationCurves: []
m_EulerCurves: []
m_PositionCurves: []
m_ScaleCurves: []
m_FloatCurves: []
m_PPtrCurves:
- curve:
- time: 0
value: {fileID: 21300000, guid: 66029eea961e74942902bdcde04415f8, type: 3}
attribute: m_Sprite
path:
classID: 212
script: {fileID: 0}
m_SampleRate: 60
m_WrapMode: 0
m_Bounds:
m_Center: {x: 0, y: 0, z: 0}
m_Extent: {x: 0, y: 0, z: 0}
m_ClipBindingConstant:
genericBindings:
- serializedVersion: 2
path: 0
attribute: 0
script: {fileID: 0}
typeID: 212
customType: 23
isPPtrCurve: 1
pptrCurveMapping:
- {fileID: 21300000, guid: 66029eea961e74942902bdcde04415f8, type: 3}
m_AnimationClipSettings:
serializedVersion: 2
m_AdditiveReferencePoseClip: {fileID: 0}
m_AdditiveReferencePoseTime: 0
m_StartTime: 0
m_StopTime: 0.016666668
m_OrientationOffsetY: 0
m_Level: 0
m_CycleOffset: 0
m_HasAdditiveReferencePose: 0
m_LoopTime: 1
m_LoopBlend: 0
m_LoopBlendOrientation: 0
m_LoopBlendPositionY: 0
m_LoopBlendPositionXZ: 0
m_KeepOriginalOrientation: 0
m_KeepOriginalPositionY: 1
m_KeepOriginalPositionXZ: 0
m_HeightFromFeet: 0
m_Mirror: 0
m_EditorCurves: []
m_EulerEditorCurves: []
m_HasGenericRootTransform: 0
m_HasMotionFloatCurves: 0
m_GenerateMotionCurves: 0
m_Events: []
fileFormatVersion: 2
guid: 99514cc2a01546c4a9a08f486e70e0f0
NativeFormatImporter:
externalObjects: {}
mainObjectFileID: 7400000
userData:
assetBundleName:
assetBundleVariant:
......@@ -32,8 +32,14 @@ AnimatorController:
m_DefaultInt: 0
m_DefaultBool: 0
m_Controller: {fileID: 0}
- m_Name: knockbackTime
m_Type: 1
- m_Name: StunnedTrigger
m_Type: 9
m_DefaultFloat: 0
m_DefaultInt: 0
m_DefaultBool: 0
m_Controller: {fileID: 0}
- m_Name: DisableStunTrigger
m_Type: 9
m_DefaultFloat: 0
m_DefaultInt: 0
m_DefaultBool: 0
......@@ -95,6 +101,30 @@ MonoBehaviour:
m_Script: {fileID: 11500000, guid: d2a789ffb946ca045aaaf6896bc26da8, type: 3}
m_Name:
m_EditorClassIdentifier:
--- !u!1101 &1101114951698309000
AnimatorStateTransition:
m_ObjectHideFlags: 1
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInternal: {fileID: 0}
m_Name:
m_Conditions:
- m_ConditionMode: 1
m_ConditionEvent: StunnedTrigger
m_EventTreshold: 0
m_DstStateMachine: {fileID: 0}
m_DstState: {fileID: 1102142326564126658}
m_Solo: 0
m_Mute: 0
m_IsExit: 0
serializedVersion: 3
m_TransitionDuration: 0
m_TransitionOffset: 0
m_ExitTime: 0
m_HasExitTime: 0
m_HasFixedDuration: 0
m_InterruptionSource: 0
m_OrderedInterruption: 1
m_CanTransitionToSelf: 1
--- !u!1101 &1101117024733671452
AnimatorStateTransition:
m_ObjectHideFlags: 1
......@@ -112,7 +142,31 @@ AnimatorStateTransition:
m_TransitionOffset: 0
m_ExitTime: 0.9942825
m_HasExitTime: 1
m_HasFixedDuration: 1
m_HasFixedDuration: 0
m_InterruptionSource: 0
m_OrderedInterruption: 1
m_CanTransitionToSelf: 1
--- !u!1101 &1101374430603555350
AnimatorStateTransition:
m_ObjectHideFlags: 1
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInternal: {fileID: 0}
m_Name:
m_Conditions:
- m_ConditionMode: 1
m_ConditionEvent: DisableStunTrigger
m_EventTreshold: 0
m_DstStateMachine: {fileID: 0}
m_DstState: {fileID: 1102455672269219010}
m_Solo: 0
m_Mute: 0
m_IsExit: 0
serializedVersion: 3
m_TransitionDuration: 0
m_TransitionOffset: 0
m_ExitTime: 0
m_HasExitTime: 0
m_HasFixedDuration: 0
m_InterruptionSource: 0
m_OrderedInterruption: 1
m_CanTransitionToSelf: 1
......@@ -192,9 +246,6 @@ AnimatorStateTransition:
m_PrefabInternal: {fileID: 0}
m_Name:
m_Conditions:
- m_ConditionMode: 1
m_ConditionEvent: TrackTrigger
m_EventTreshold: 0
- m_ConditionMode: 1
m_ConditionEvent: TrackTrigger
m_EventTreshold: 0
......@@ -261,6 +312,32 @@ AnimatorState:
m_MirrorParameter:
m_CycleOffsetParameter:
m_TimeParameter:
--- !u!1102 &1102142326564126658
AnimatorState:
serializedVersion: 5
m_ObjectHideFlags: 1
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInternal: {fileID: 0}
m_Name: Stunned
m_Speed: 1
m_CycleOffset: 0
m_Transitions:
- {fileID: 1101374430603555350}
m_StateMachineBehaviours: []
m_Position: {x: 50, y: 50, z: 0}
m_IKOnFeet: 0
m_WriteDefaultValues: 1
m_Mirror: 0
m_SpeedParameterActive: 0
m_MirrorParameterActive: 0
m_CycleOffsetParameterActive: 0
m_TimeParameterActive: 0
m_Motion: {fileID: 7400000, guid: 99514cc2a01546c4a9a08f486e70e0f0, type: 2}
m_Tag:
m_SpeedParameter:
m_MirrorParameter:
m_CycleOffsetParameter:
m_TimeParameter:
--- !u!1102 &1102365203996206974
AnimatorState:
serializedVersion: 5
......@@ -272,8 +349,7 @@ AnimatorState:
m_CycleOffset: 0
m_Transitions:
- {fileID: 1101117024733671452}
m_StateMachineBehaviours:
- {fileID: 114316214165794054}
m_StateMachineBehaviours: []
m_Position: {x: 50, y: 50, z: 0}
m_IKOnFeet: 0
m_WriteDefaultValues: 1
......@@ -378,28 +454,32 @@ AnimatorStateMachine:
m_ChildStates:
- serializedVersion: 1
m_State: {fileID: 1102977373053479874}
m_Position: {x: 276, y: -84, z: 0}
m_Position: {x: 264, y: -24, z: 0}
- serializedVersion: 1
m_State: {fileID: 1102455672269219010}
m_Position: {x: 72, y: 48, z: 0}
m_Position: {x: 168, y: 60, z: 0}
- serializedVersion: 1
m_State: {fileID: 1102828359910447394}
m_Position: {x: 324, y: 48, z: 0}
m_Position: {x: 420, y: 60, z: 0}
- serializedVersion: 1
m_State: {fileID: 1102365203996206974}
m_Position: {x: 132, y: 168, z: 0}
m_Position: {x: 60, y: 168, z: 0}
- serializedVersion: 1
m_State: {fileID: 1102078500202870446}
m_Position: {x: -84, y: 168, z: 0}
m_Position: {x: 384, y: 264, z: 0}
- serializedVersion: 1
m_State: {fileID: 1102142326564126658}
m_Position: {x: 288, y: 168, z: 0}
m_ChildStateMachines: []
m_AnyStateTransitions:
- {fileID: 1101843907484924652}
- {fileID: 1101430029173875726}
- {fileID: 1101114951698309000}
m_EntryTransitions: []
m_StateMachineTransitions: {}
m_StateMachineBehaviours: []
m_AnyStatePosition: {x: 192, y: 264, z: 0}
m_EntryPosition: {x: 36, y: -84, z: 0}
m_EntryPosition: {x: 36, y: -24, z: 0}
m_ExitPosition: {x: -60, y: 264, z: 0}
m_ParentStateMachinePosition: {x: 800, y: 20, z: 0}
m_DefaultState: {fileID: 1102977373053479874}
......@@ -630,19 +630,19 @@ AnimatorStateMachine:
m_Position: {x: 168, y: -132, z: 0}
- serializedVersion: 1
m_State: {fileID: 1102478016988564962}
m_Position: {x: 283.63446, y: 453.63867, z: 0}
m_Position: {x: 180, y: 408, z: 0}
- serializedVersion: 1
m_State: {fileID: 1102120881417498060}
m_Position: {x: 127.35602, y: 552.162, z: 0}
m_Position: {x: 180, y: 456, z: 0}
- serializedVersion: 1
m_State: {fileID: 1102717063814967854}
m_Position: {x: 422.9261, y: 608.2184, z: 0}
m_Position: {x: 180, y: 504, z: 0}
- serializedVersion: 1
m_State: {fileID: 1102227438932548068}
m_Position: {x: -28.922424, y: 411.1717, z: 0}
m_Position: {x: -24, y: 408, z: 0}
- serializedVersion: 1
m_State: {fileID: 1102949526718564970}
m_Position: {x: -32.319763, y: 496.1056, z: 0}
m_Position: {x: -24, y: 456, z: 0}
m_ChildStateMachines: []
m_AnyStateTransitions:
- {fileID: 1101150420884930214}
......
......@@ -29,6 +29,22 @@ GameObject:
m_NavMeshLayer: 0
m_StaticEditorFlags: 0
m_IsActive: 1
--- !u!1 &1490498356237328
GameObject:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInternal: {fileID: 100100000}
serializedVersion: 6
m_Component:
- component: {fileID: 4135647115308928}
- component: {fileID: 114851997656688694}
m_Layer: 0
m_Name: HPBar
m_TagString: Untagged
m_Icon: {fileID: 0}
m_NavMeshLayer: 0
m_StaticEditorFlags: 0
m_IsActive: 1
--- !u!1 &1636491341446076
GameObject:
m_ObjectHideFlags: 0
......@@ -62,7 +78,7 @@ GameObject:
m_Icon: {fileID: 0}
m_NavMeshLayer: 0
m_StaticEditorFlags: 0
m_IsActive: 1
m_IsActive: 0
--- !u!1 &1910706395977056
GameObject:
m_ObjectHideFlags: 1
......@@ -95,6 +111,19 @@ Transform:
m_Father: {fileID: 4639192263818050}
m_RootOrder: 0
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
--- !u!4 &4135647115308928
Transform:
m_ObjectHideFlags: 1
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInternal: {fileID: 100100000}
m_GameObject: {fileID: 1490498356237328}
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_Children: []
m_Father: {fileID: 4639192263818050}
m_RootOrder: 1
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
--- !u!4 &4140258981397796
Transform:
m_ObjectHideFlags: 1
......@@ -128,10 +157,11 @@ Transform:
m_PrefabInternal: {fileID: 100100000}
m_GameObject: {fileID: 1636491341446076}
m_LocalRotation: {x: -0, y: -0, z: -0, w: 1}
m_LocalPosition: {x: 0.862, y: 0, z: 0}
m_LocalPosition: {x: 0.862, y: 1.405, z: 0}
m_LocalScale: {x: 1, y: 1, z: 1}
m_Children:
- {fileID: 4015301101001556}
- {fileID: 4135647115308928}
m_Father: {fileID: 0}
m_RootOrder: 0
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
......@@ -149,7 +179,7 @@ Rigidbody2D:
m_Mass: 1
m_LinearDrag: 0
m_AngularDrag: 0.05
m_GravityScale: 30
m_GravityScale: 1
m_Material: {fileID: 0}
m_Interpolate: 0
m_SleepingMode: 1
......@@ -260,25 +290,29 @@ MonoBehaviour:
m_Name:
m_EditorClassIdentifier:
monsterID: 117
maxHealth: 15
maxHealth: 10
weight: 10
patrolRange: 2
noticeRange: 2
attackRange: 1
patrolSpeed: 1.5
trackSpeed: 2.5
knockbackPercentage:
- 0.75
- 0.5
- 0.25
--- !u!114 &114173716467154830
MonoBehaviour:
m_ObjectHideFlags: 1
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInternal: {fileID: 100100000}
m_GameObject: {fileID: 1734061800721222}
m_Enabled: 1
m_Enabled: 0
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: 31d57aad92e0a1940b2258c8b7537027, type: 3}
m_Name:
m_EditorClassIdentifier:
pushForce: 0.01
pushForce: 0
--- !u!114 &114468655689627186
MonoBehaviour:
m_ObjectHideFlags: 1
......@@ -290,7 +324,24 @@ MonoBehaviour:
m_Script: {fileID: 11500000, guid: 908a1b16b9926f747807d321c5ecc8af, type: 3}
m_Name:
m_EditorClassIdentifier:
damage: 4
damage: 3
--- !u!114 &114851997656688694
MonoBehaviour:
m_ObjectHideFlags: 1
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInternal: {fileID: 100100000}
m_GameObject: {fileID: 1490498356237328}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: 493db5529c03fce44a56a2211507667e, type: 3}
m_Name:
m_EditorClassIdentifier:
width: 0.4
height: 0.1
yOffset: 1.3
barPrefab: {fileID: 1489501648010076, guid: bd708b07601179842bbd803b54afda40, type: 2}
bor: {fileID: 21300000, guid: f978754916ff69444aa0bd613b44f2c5, type: 3}
red: {fileID: 21300000, guid: 014c5204ddcb6e54e86aadaa34227552, type: 3}
--- !u!212 &212540714587432698
SpriteRenderer:
m_ObjectHideFlags: 1
......@@ -323,8 +374,8 @@ SpriteRenderer:
m_AutoUVMaxDistance: 0.5
m_AutoUVMaxAngle: 89
m_LightmapParameters: {fileID: 0}
m_SortingLayerID: 0
m_SortingLayer: 0
m_SortingLayerID: -2078941185
m_SortingLayer: 6
m_SortingOrder: 0
m_Sprite: {fileID: 21300000, guid: 71335108d30aa0e4a90179a09895440e, type: 3}
m_Color: {r: 1, g: 1, b: 1, a: 1}
......
......@@ -367,7 +367,7 @@ MonoBehaviour:
comboTime: 1
time: {fileID: 0}
combo: {fileID: 0}
comboArray: AB
comboArray:
StartTime: 0
anim: {fileID: 95992411616135034}
aoc: {fileID: 0}
......
%YAML 1.1
%TAG !u! tag:unity3d.com,2011:
--- !u!1001 &100100000
Prefab:
m_ObjectHideFlags: 1
serializedVersion: 2
m_Modification:
m_TransformParent: {fileID: 0}
m_Modifications: []
m_RemovedComponents: []
m_SourcePrefab: {fileID: 0}
m_RootGameObject: {fileID: 1598274226005746}
m_IsPrefabAsset: 1
--- !u!1 &1598274226005746
GameObject:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInternal: {fileID: 100100000}
serializedVersion: 6
m_Component:
- component: {fileID: 4727176191097748}
- component: {fileID: 114488593319566952}
m_Layer: 0
m_Name: HPBar
m_TagString: Untagged
m_Icon: {fileID: 0}
m_NavMeshLayer: 0
m_StaticEditorFlags: 0
m_IsActive: 1
--- !u!4 &4727176191097748
Transform:
m_ObjectHideFlags: 1
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInternal: {fileID: 100100000}
m_GameObject: {fileID: 1598274226005746}
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_Children: []
m_Father: {fileID: 0}
m_RootOrder: 0
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
--- !u!114 &114488593319566952
MonoBehaviour:
m_ObjectHideFlags: 1
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInternal: {fileID: 100100000}
m_GameObject: {fileID: 1598274226005746}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: 493db5529c03fce44a56a2211507667e, type: 3}
m_Name:
m_EditorClassIdentifier:
width: 1
height: 0.3
yOffset: 1
barPrefab: {fileID: 1489501648010076, guid: bd708b07601179842bbd803b54afda40, type: 2}
bor: {fileID: 21300000, guid: f978754916ff69444aa0bd613b44f2c5, type: 3}
red: {fileID: 21300000, guid: 014c5204ddcb6e54e86aadaa34227552, type: 3}
fileFormatVersion: 2
guid: 60241bc19981b5b4fbdd26b8cb90b322
NativeFormatImporter:
externalObjects: {}
mainObjectFileID: 100100000
userData:
assetBundleName:
assetBundleVariant:
%YAML 1.1
%TAG !u! tag:unity3d.com,2011:
--- !u!1001 &100100000
Prefab:
m_ObjectHideFlags: 1
serializedVersion: 2
m_Modification:
m_TransformParent: {fileID: 0}
m_Modifications: []
m_RemovedComponents: []
m_SourcePrefab: {fileID: 0}
m_RootGameObject: {fileID: 1489501648010076}
m_IsPrefabAsset: 1
--- !u!1 &1489501648010076
GameObject:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInternal: {fileID: 100100000}
serializedVersion: 6
m_Component:
- component: {fileID: 4374430471292700}
- component: {fileID: 212041939159682336}
m_Layer: 0
m_Name: HPBarPrefab
m_TagString: Untagged
m_Icon: {fileID: 0}
m_NavMeshLayer: 0
m_StaticEditorFlags: 0
m_IsActive: 1
--- !u!4 &4374430471292700
Transform:
m_ObjectHideFlags: 1
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInternal: {fileID: 100100000}
m_GameObject: {fileID: 1489501648010076}
m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
m_LocalPosition: {x: 134.65215, y: 46.118885, z: -0.6484375}
m_LocalScale: {x: 1, y: 1, z: 1}
m_Children: []
m_Father: {fileID: 0}
m_RootOrder: 0
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
--- !u!212 &212041939159682336
SpriteRenderer:
m_ObjectHideFlags: 1
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInternal: {fileID: 100100000}
m_GameObject: {fileID: 1489501648010076}
m_Enabled: 1
m_CastShadows: 0
m_ReceiveShadows: 0
m_DynamicOccludee: 1
m_MotionVectors: 1
m_LightProbeUsage: 1
m_ReflectionProbeUsage: 1
m_RenderingLayerMask: 4294967295
m_Materials:
- {fileID: 10754, guid: 0000000000000000f000000000000000, type: 0}
m_StaticBatchInfo:
firstSubMesh: 0
subMeshCount: 0
m_StaticBatchRoot: {fileID: 0}
m_ProbeAnchor: {fileID: 0}
m_LightProbeVolumeOverride: {fileID: 0}
m_ScaleInLightmap: 1
m_PreserveUVs: 0
m_IgnoreNormalsForChartDetection: 0
m_ImportantGI: 0
m_StitchLightmapSeams: 0
m_SelectedEditorRenderState: 0
m_MinimumChartSize: 4
m_AutoUVMaxDistance: 0.5
m_AutoUVMaxAngle: 89
m_LightmapParameters: {fileID: 0}
m_SortingLayerID: 338107509
m_SortingLayer: 11
m_SortingOrder: 0
m_Sprite: {fileID: 21300000, guid: f978754916ff69444aa0bd613b44f2c5, type: 3}
m_Color: {r: 1, g: 1, b: 1, a: 1}
m_FlipX: 0
m_FlipY: 0
m_DrawMode: 0
m_Size: {x: 0.01, y: 0.01}
m_AdaptiveModeThreshold: 0.5
m_SpriteTileMode: 0
m_WasSpriteAssigned: 1
m_MaskInteraction: 0
m_SpriteSortPoint: 0
fileFormatVersion: 2
guid: bd708b07601179842bbd803b54afda40
NativeFormatImporter:
externalObjects: {}
mainObjectFileID: 100100000
userData:
assetBundleName:
assetBundleVariant:
fileFormatVersion: 2
guid: 0443c2e9410bbe545bda40dc30fa6a63
guid: 7b5317162788b8d4daa13ea5c6dd368b
NativeFormatImporter:
externalObjects: {}
mainObjectFileID: 100100000
mainObjectFileID: 0
userData:
assetBundleName:
assetBundleVariant:
......@@ -73,7 +73,7 @@ SpriteRenderer:
m_AutoUVMaxAngle: 89
m_LightmapParameters: {fileID: 0}
m_SortingLayerID: -562706067
m_SortingLayer: 13
m_SortingLayer: 15
m_SortingOrder: 10
m_Sprite: {fileID: 21300000, guid: 0b9e29db41c9be0489a00755f6f36bac, type: 3}
m_Color: {r: 1, g: 1, b: 1, a: 1}
......
......@@ -131,6 +131,7 @@ MonoBehaviour:
m_EditorClassIdentifier:
itemAddon: 0
highlight: {fileID: 1886512004533810}
itemSizeMultiplier: 0.007
--- !u!212 &212078234558260036
SpriteRenderer:
m_ObjectHideFlags: 1
......
......@@ -38,7 +38,7 @@ AnimationClip:
inWeight: 0
outWeight: 0
- serializedVersion: 3
time: 0.15
time: 0.18333334
value: 0
inSlope: Infinity
outSlope: Infinity
......@@ -58,7 +58,7 @@ AnimationClip:
m_Curve:
- serializedVersion: 3
time: 0
value: -0.35727715
value: -0.3119259
inSlope: 0
outSlope: 0
tangentMode: 136
......@@ -77,7 +77,7 @@ AnimationClip:
m_Curve:
- serializedVersion: 3
time: 0
value: -0.17332983
value: -0.15569305
inSlope: 0
outSlope: 0
tangentMode: 136
......@@ -96,7 +96,7 @@ AnimationClip:
m_Curve:
- serializedVersion: 3
time: 0
value: 1.4124017
value: 1.2813864
inSlope: 0
outSlope: 0
tangentMode: 136
......@@ -115,7 +115,7 @@ AnimationClip:
m_Curve:
- serializedVersion: 3
time: 0
value: 0.5327382
value: 0.34629345
inSlope: 0
outSlope: 0
tangentMode: 136
......@@ -281,7 +281,7 @@ AnimationClip:
inWeight: 0
outWeight: 0
- serializedVersion: 3
time: 0.15
time: 0.18333334
value: 0
inSlope: Infinity
outSlope: Infinity
......@@ -301,7 +301,7 @@ AnimationClip:
m_Curve:
- serializedVersion: 3
time: 0
value: -0.35727715
value: -0.3119259
inSlope: 0
outSlope: 0
tangentMode: 136
......@@ -320,7 +320,7 @@ AnimationClip:
m_Curve:
- serializedVersion: 3
time: 0
value: -0.17332983
value: -0.15569305
inSlope: 0
outSlope: 0
tangentMode: 136
......@@ -339,7 +339,7 @@ AnimationClip:
m_Curve:
- serializedVersion: 3
time: 0
value: 1.4124017
value: 1.2813864
inSlope: 0
outSlope: 0
tangentMode: 136
......@@ -358,7 +358,7 @@ AnimationClip:
m_Curve:
- serializedVersion: 3
time: 0
value: 0.5327382
value: 0.34629345
inSlope: 0
outSlope: 0
tangentMode: 136
......
......@@ -38,7 +38,7 @@ AnimationClip:
inWeight: 0
outWeight: 0
- serializedVersion: 3
time: 0.28333333
time: 0.31666666
value: 0
inSlope: Infinity
outSlope: Infinity
......@@ -58,7 +58,7 @@ AnimationClip:
m_Curve:
- serializedVersion: 3
time: 0
value: -0.8663552
value: -0.80588675
inSlope: 0
outSlope: 0
tangentMode: 136
......@@ -77,7 +77,7 @@ AnimationClip:
m_Curve:
- serializedVersion: 3
time: 0
value: -0.012122154
value: 0.0911783
inSlope: 0
outSlope: 0
tangentMode: 136
......@@ -96,7 +96,7 @@ AnimationClip:
m_Curve:
- serializedVersion: 3
time: 0
value: 0.97120047
value: 0.99135685
inSlope: 0
outSlope: 0
tangentMode: 136
......@@ -115,7 +115,7 @@ AnimationClip:
m_Curve:
- serializedVersion: 3
time: 0
value: 0.78727865
value: 0.25817847
inSlope: 0
outSlope: 0
tangentMode: 136
......@@ -278,7 +278,7 @@ AnimationClip:
inWeight: 0
outWeight: 0
- serializedVersion: 3
time: 0.28333333
time: 0.31666666
value: 0
inSlope: Infinity
outSlope: Infinity
......@@ -298,7 +298,7 @@ AnimationClip:
m_Curve:
- serializedVersion: 3
time: 0
value: -0.8663552
value: -0.80588675
inSlope: 0
outSlope: 0
tangentMode: 136
......@@ -317,7 +317,7 @@ AnimationClip:
m_Curve:
- serializedVersion: 3
time: 0
value: -0.012122154
value: 0.0911783
inSlope: 0
outSlope: 0
tangentMode: 136
......@@ -336,7 +336,7 @@ AnimationClip:
m_Curve:
- serializedVersion: 3
time: 0
value: 0.97120047
value: 0.99135685
inSlope: 0
outSlope: 0
tangentMode: 136
......@@ -355,7 +355,7 @@ AnimationClip:
m_Curve:
- serializedVersion: 3
time: 0
value: 0.78727865
value: 0.25817847
inSlope: 0
outSlope: 0
tangentMode: 136
......
......@@ -38,7 +38,7 @@ AnimationClip:
inWeight: 0
outWeight: 0
- serializedVersion: 3
time: 0.2
time: 0.23333333
value: 0
inSlope: Infinity
outSlope: Infinity
......@@ -278,7 +278,7 @@ AnimationClip:
inWeight: 0
outWeight: 0
- serializedVersion: 3
time: 0.2
time: 0.23333333
value: 0
inSlope: Infinity
outSlope: Infinity
......
......@@ -38,7 +38,7 @@ AnimationClip:
inWeight: 0
outWeight: 0
- serializedVersion: 3
time: 0.2
time: 0.23333333
value: 0
inSlope: Infinity
outSlope: Infinity
......@@ -278,7 +278,7 @@ AnimationClip:
inWeight: 0
outWeight: 0
- serializedVersion: 3
time: 0.2
time: 0.23333333
value: 0
inSlope: Infinity
outSlope: Infinity
......
......@@ -38,7 +38,7 @@ AnimationClip:
inWeight: 0
outWeight: 0
- serializedVersion: 3
time: 0.26666668
time: 0.3
value: 0
inSlope: Infinity
outSlope: Infinity
......@@ -278,7 +278,7 @@ AnimationClip:
inWeight: 0
outWeight: 0
- serializedVersion: 3
time: 0.26666668
time: 0.3
value: 0
inSlope: Infinity
outSlope: Infinity
......
This diff is collapsed.
This diff is collapsed.
......@@ -5,14 +5,16 @@ using UnityEngine;
public class AttackProperty : MonoBehaviour{
public float damage = 0;
public float knockBackMultiplier = 1f;
public int debuffNum = 0;
public EnemyDebuffCase[] debuffType = new EnemyDebuffCase[10];
public int[] debuffTime = new int[10];
public float[] debuffTime = new float[(int)EnemyDebuffCase.END_POINTER];
EffectManager effectManager;
PlayerAttack playerAttack;
InventoryManager inventoryManager;
private void Awake()
{
effectManager = EffectManager.Instance;
playerAttack = transform.parent.GetComponentInChildren<PlayerAttack>();
inventoryManager = InventoryManager.Instance;
}
private void OnTriggerEnter2D(Collider2D collision)
......@@ -21,15 +23,28 @@ public class AttackProperty : MonoBehaviour{
Bounds tmpBounds = new Bounds();
if (collision.CompareTag("Enemy") && !collision.transform.GetChild(0).GetComponent<Enemy>().Invisible)
{
PlayerAttackInfo curAttack = new PlayerAttackInfo(damage, knockBackMultiplier, debuffNum, debuffType, debuffTime);
PlayerAttackInfo curAttack = new PlayerAttackInfo(damage, knockBackMultiplier, debuffTime);
Enemy enemyInfo = collision.transform.GetChild(0).GetComponent<Enemy>();
string combo = playerAttack.comboArray;
foreach (Item tmpItem in inventoryManager.itemList)
for (int i = 0; i < tmpItem.skillNum; i++)
{
if (tmpItem.combo[i].Equals(combo))
{
tmpItem.AttackCalculation(curAttack, enemyInfo, combo);
break;
}
}
collision.transform.GetChild(0).GetComponent<Enemy>().GetDamaged(curAttack);
//make effect
foreach (Collider2D col in GetComponents<Collider2D>())
if (col.isActiveAndEnabled)
tmpBounds = col.bounds;
if (!tmpBounds.Equals(new Bounds())) ;
if (!tmpBounds.Equals(new Bounds()))
effectManager.StartEffect(0, tmpBounds, collision.bounds);
}
}
......
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
public class EnemyDamaged : StateMachineBehaviour {
RuntimeAnimatorController ac;
float knockbackTime;
float knockbackSpeed;
float knockbackDir; // 1: right \ -1: left
Vector3 leftsideAngle = new Vector3(0, 0, 0);
Vector3 rightsideAngle = new Vector3(0, 180, 0);
Transform pivotTransform;
// OnStateEnter is called when a transition starts and the state machine starts to evaluate this state
override public void OnStateEnter(Animator animator, AnimatorStateInfo stateInfo, int layerIndex) {
ac = animator.runtimeAnimatorController;
foreach(var clip in ac.animationClips)
{
if (clip.name.Contains("Damaged"))
{
knockbackTime = clip.length;
}
}
knockbackSpeed = animator.GetFloat("knockbackDistance") / knockbackTime;
Transform playerTransform = EnemyManager.Instance.Player.transform;
pivotTransform = animator.transform.parent;
pivotTransform.eulerAngles = (playerTransform.position.x - pivotTransform.position.x < 0) ? leftsideAngle : rightsideAngle;
knockbackDir = (playerTransform.position.x - pivotTransform.position.x < 0) ? 1 : -1;
}
// OnStateUpdate is called on each Update frame between OnStateEnter and OnStateExit callbacks
override public void OnStateUpdate(Animator animator, AnimatorStateInfo stateInfo, int layerIndex) {
Vector2 currPosition = pivotTransform.position;
Vector2 movingDistance = new Vector2(knockbackSpeed * Time.deltaTime, 0) * knockbackDir;
pivotTransform.gameObject.GetComponent<Rigidbody2D>().MovePosition(currPosition + movingDistance);
}
// OnStateExit is called when a transition ends and the state machine finishes evaluating this state
//override public void OnStateExit(Animator animator, AnimatorStateInfo stateInfo, int layerIndex) {
//
//}
// OnStateMove is called right after Animator.OnAnimatorMove(). Code that processes and affects root motion should be implemented here
//override public void OnStateMove(Animator animator, AnimatorStateInfo stateInfo, int layerIndex) {
//
//}
// OnStateIK is called right after Animator.OnAnimatorIK(). Code that sets up animation IK (inverse kinematics) should be implemented here.
//override public void OnStateIK(Animator animator, AnimatorStateInfo stateInfo, int layerIndex) {
//
//}
}
......@@ -3,38 +3,46 @@ using System.Collections.Generic;
using UnityEngine;
public class EnemyMeleeIdle : StateMachineBehaviour {
Vector2 origin;
float patrolRange;
float patrolSpeed;
float noticeRange;
Vector3 leftsideAngle = new Vector3(0, 0, 0);
Vector3 rightsideAngle = new Vector3(0, 180, 0);
Vector2 origin;
Transform animatorRoot;
Enemy enemy;
// OnStateEnter is called when a transition starts and the state machine starts to evaluate this state
override public void OnStateEnter(Animator animator, AnimatorStateInfo stateInfo, int layerIndex) {
origin = animator.transform.position;
patrolRange = animator.GetComponent<Enemy>().patrolRange;
noticeRange = animator.GetComponent<Enemy>().noticeRange;
patrolSpeed = animator.GetComponent<Enemy>().patrolSpeed;
animatorRoot = animator.transform.parent;
enemy = animator.GetComponent<Enemy>();
patrolRange = enemy.patrolRange;
noticeRange = enemy.noticeRange;
patrolSpeed = enemy.patrolSpeed;
enemy.ChangeDir(NumeratedDir.Left);
enemy.ChangeVelocityX(enemy.MoveDir * patrolSpeed);
}
// OnStateUpdate is called on each Update frame between OnStateEnter and OnStateExit callbacks
override public void OnStateUpdate(Animator animator, AnimatorStateInfo stateInfo, int layerIndex) {
if (animator.GetComponent<Enemy>().PlayerDistance < noticeRange)
if (enemy.PlayerDistance < noticeRange)
{
animator.SetTrigger("TrackTrigger");
return;
}
Vector2 currPosition = animatorRoot.position;
Vector2 movingDistance = -1 * animatorRoot.right * patrolSpeed * Time.deltaTime; // go left first
animatorRoot.gameObject.GetComponent<Rigidbody2D>().MovePosition(currPosition + movingDistance);
if(Mathf.Abs(animatorRoot.position.x - origin.x) > patrolRange)
if (!enemy.MovementLock)
{
float span = animatorRoot.position.x - origin.x;
if ((Mathf.Abs(span) > patrolRange && span * enemy.MoveDir > 0) ||
enemy.WallTest[(enemy.MoveDir + 1) / 2] ||
enemy.CliffTest[(enemy.MoveDir + 1) / 2]
)
{
animatorRoot.eulerAngles = (origin.x < animatorRoot.position.x) ? leftsideAngle : rightsideAngle;
enemy.ChangeDir(enemy.MoveDir * -1);
enemy.ChangeVelocityX(enemy.MoveDir * patrolSpeed);
}
}
}
......
......@@ -3,25 +3,34 @@ using System.Collections.Generic;
using UnityEngine;
public class EnemyMeleeTrack : StateMachineBehaviour {
GameObject player;
float trackSpeed;
float attackRange;
Vector3 leftsideAngle = new Vector3(0, 0, 0);
Vector3 rightsideAngle = new Vector3(0, 180, 0);
Transform pivotTransform;
GameObject player;
Transform animatorRoot;
Enemy enemy;
readonly int maxFrame = 10;
int frameCounter;
int frameCounter = 0;
// OnStateEnter is called when a transition starts and the state machine starts to evaluate this state
override public void OnStateEnter(Animator animator, AnimatorStateInfo stateInfo, int layerIndex) {
trackSpeed = animator.GetComponent<Enemy>().trackSpeed;
attackRange = animator.GetComponent<Enemy>().attackRange;
animatorRoot = animator.transform.parent;
enemy = animator.GetComponent<Enemy>();
player = EnemyManager.Instance.Player;
pivotTransform = animator.transform.parent;
float halfHeight = pivotTransform.gameObject.GetComponent<BoxCollider2D>().size.y / 2.0f;
Vector2 rootPosition2D = pivotTransform.position;
frameCounter = 0;
trackSpeed = enemy.trackSpeed;
attackRange = enemy.attackRange;
NumeratedDir trackDir = (animatorRoot.position.x - player.transform.position.x > 0) ? NumeratedDir.Left : NumeratedDir.Right;
enemy.ChangeDir(trackDir);
if (enemy.CliffTest[(enemy.MoveDir + 1) / 2] || animator.GetComponent<Enemy>().PlayerDistance < attackRange)
{
enemy.ChangeVelocityX(0.0f);
}
else
{
enemy.ChangeVelocityX(enemy.MoveDir * trackSpeed);
}
}
// OnStateUpdate is called on each Update frame between OnStateEnter and OnStateExit callbacks
......@@ -31,17 +40,23 @@ public class EnemyMeleeTrack : StateMachineBehaviour {
animator.SetTrigger("AttackTrigger");
return;
}
int integerDir = enemy.MoveDir;
if (enemy.WallTest[(integerDir + 1) / 2] || enemy.CliffTest[(integerDir + 1) / 2])
{
enemy.ChangeVelocityX(0.0f);
}
else
{
enemy.ChangeVelocityX(enemy.MoveDir * trackSpeed);
}
frameCounter += 1;
if (frameCounter >= maxFrame)
{
pivotTransform.eulerAngles = (player.transform.position.x - pivotTransform.position.x < 0) ? leftsideAngle : rightsideAngle;
NumeratedDir trackDir = (animatorRoot.position.x - player.transform.position.x > 0) ? NumeratedDir.Left : NumeratedDir.Right;
enemy.ChangeDir(trackDir);
frameCounter = 0;
}
Vector2 currPosition = pivotTransform.position;
Vector2 movingDistance = pivotTransform.right * trackSpeed * Time.deltaTime * -1;
pivotTransform.gameObject.GetComponent<Rigidbody2D>().MovePosition(currPosition + movingDistance);
}
// OnStateExit is called when a transition ends and the state machine finishes evaluating this state
......
This diff is collapsed.
......@@ -14,7 +14,7 @@ public class PlayerAttack : MonoBehaviour {
public Animator anim;
public AnimatorOverrideController aoc;
public AnimationClip[] normalAttack = new AnimationClip[3];
public InventoryManager inventoryManager;
InventoryManager inventoryManager;
public LifeStoneManager lifeStoneManager;
float comboEndTime;
......@@ -24,6 +24,7 @@ public class PlayerAttack : MonoBehaviour {
void Awake ()
{
inventoryManager = InventoryManager.Instance;
playerController = GetComponent<PlayerController>();
anim = GetComponent<Animator>();
aoc = new AnimatorOverrideController(anim.runtimeAnimatorController);
......@@ -132,13 +133,14 @@ public class PlayerAttack : MonoBehaviour {
void CheckCombo()
{
List<Item> itemList = inventoryManager.itemList;
foreach(Item item in itemList)
foreach (Item item in itemList)
{
for(int i=0; i< item.skillNum; i++)
{
if(item.combo[i].Equals(comboArray))
{
aoc["PlayerAttackAnim"] = item.animation[i];
anim.SetTrigger("attack");
item.ComboAction(i);
......@@ -146,6 +148,7 @@ public class PlayerAttack : MonoBehaviour {
if (playerController.playerState != PlayerState.GoingUp && playerController.playerState != PlayerState.GoingDown)
GetComponent<Rigidbody2D>().velocity = new Vector2(Mathf.Clamp(GetComponent<Rigidbody2D>().velocity.x,-0.5f,0.5f), GetComponent<Rigidbody2D>().velocity.y);
playerController.playerState = PlayerState.Attack;
return;
}
}
......@@ -158,7 +161,6 @@ public class PlayerAttack : MonoBehaviour {
GetComponent<Rigidbody2D>().velocity = new Vector2(Mathf.Clamp(GetComponent<Rigidbody2D>().velocity.x, -0.5f, 0.5f),GetComponent<Rigidbody2D>().velocity.y);
playerController.playerState = PlayerState.Attack;
if (!CheckLongerCombo()) comboArray = comboArray[comboArray.Length - 1] + "";
}
bool CheckLongerCombo()
......
......@@ -5,15 +5,18 @@ using UnityEngine;
public class PlayerAttackInfo {
public float damage = 0;
public float knockBackMultiplier = 1f;
public int debuffNum = 0;
public EnemyDebuffCase[] debuffType = new EnemyDebuffCase[10];
public int[] debuffTime = new int[10];
public PlayerAttackInfo(float damage, float knockBackMultiplier, int debuffNum, EnemyDebuffCase[] debuffType, int[] debuffTime)
public float[] debuffTime = new float[(int)EnemyDebuffCase.END_POINTER];
public PlayerAttackInfo(float damage, float knockBackMultiplier, float[] debuffTime)
{
this.damage = damage;
this.knockBackMultiplier = knockBackMultiplier;
this.debuffNum = debuffNum;
this.debuffType = debuffType;
this.debuffTime = debuffTime;
}
public PlayerAttackInfo(PlayerAttackInfo origin)
{
damage = origin.damage;
knockBackMultiplier = origin.knockBackMultiplier;
debuffTime = origin.debuffTime;
}
}
......@@ -14,7 +14,7 @@ public class EffectManager : Singleton<EffectManager> {
effectArray = new GameObject[20];
for (int i = 0; i < effectArray.Length; i++)
{
effectArray[i] = Instantiate(effectPrefab);
effectArray[i] = Instantiate(effectPrefab,transform);
effectArray[i].SetActive(false);
}
......
public enum EnemyDebuffCase
{
fire,
ice,
stun,
blind,
charm
Fire,
Ice,
Stun,
Blind,
Charm,
END_POINTER
};
public enum DebuffState
{
Off,
On,
Immune,
}
public enum NumeratedDir
{
Left = -1,
Right = 1
};
public enum PlayerDebuffCase
{
......
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
public class HPBar : MonoBehaviour {
public float width;
public float height;
public float yOffset;
public GameObject barPrefab;
public Sprite bor, red;
GameObject empty, instBor, instRed;
void Awake () {
if(!GameObject.Find("HPBarEmpty"))
empty = Instantiate(new GameObject("HPBarEmpty"));
empty = GameObject.Find("HPBarEmpty");
instBor = Instantiate(barPrefab, empty.transform);
instBor.GetComponent<SpriteRenderer>().sprite = bor;
instRed = Instantiate(barPrefab, empty.transform);
instRed.GetComponent<SpriteRenderer>().sprite = red;
instRed.GetComponent<SpriteRenderer>().sortingOrder = 1;
}
void Update () {
if(transform.parent.gameObject.activeSelf)
{
instBor.SetActive(true);
instBor.transform.localScale = new Vector3(width / instBor.GetComponent<SpriteRenderer>().size.x, height / instBor.GetComponent<SpriteRenderer>().size.y, 1);
instBor.transform.position = transform.parent.position + new Vector3(0, yOffset, 0);
float cur = Mathf.Max(0,transform.parent.GetComponentInChildren<Enemy>().currHealth / transform.parent.GetComponentInChildren<Enemy>().maxHealth);
instRed.SetActive(true);
instRed.transform.localScale = new Vector3((width / instRed.GetComponent<SpriteRenderer>().size.x - height / instRed.GetComponent<SpriteRenderer>().size.y * 0.2f) * cur, height / instRed.GetComponent<SpriteRenderer>().size.y * 0.8f, 1);
instRed.transform.position = transform.parent.position + new Vector3((width - height * 0.2f) / -2f, yOffset, 0);
}
}
public void Inactivate()
{
instBor.SetActive(false);
instRed.SetActive(false);
}
}
fileFormatVersion: 2
guid: 752c7d4f7a0f1444c84cadeae1fab1d7
guid: 493db5529c03fce44a56a2211507667e
MonoImporter:
externalObjects: {}
serializedVersion: 2
......
......@@ -24,4 +24,34 @@ public abstract class Addon {
highlight = null;
sizeInventory = new Vector2(0, 0);
}
public virtual float DamageAdder(PlayerAttackInfo attackInfo, Enemy enemInfo, string combo)
{
return 0f;
}
public virtual float DamageMultiplier(PlayerAttackInfo attackInfo, Enemy enemInfo, string combo)
{
return 1f;
}
public virtual float[] DebuffAdder(PlayerAttackInfo attackInfo, Enemy enemInfo, string combo)
{
float[] varArray = new float[(int)EnemyDebuffCase.END_POINTER];
for (int i = 0; i < (int)EnemyDebuffCase.END_POINTER; i++) varArray[i] = 0f;
return varArray;
}
public virtual float[] DebuffMultiplier(PlayerAttackInfo attackInfo, Enemy enemInfo, string combo)
{
float[] varArray = new float[(int)EnemyDebuffCase.END_POINTER];
for (int i = 0; i < (int)EnemyDebuffCase.END_POINTER; i++) varArray[i] = 1f;
return varArray;
}
public virtual float KnockBackAdder(PlayerAttackInfo attackInfo, Enemy enemInfo, string combo)
{
return 0f;
}
public virtual float KnockBackMultiplier(PlayerAttackInfo attackInfo, Enemy enemInfo, string combo)
{
return 1f;
}
}
......@@ -12,7 +12,7 @@ public class AddonDrag : MonoBehaviour, IBeginDragHandler, IDragHandler, IEndDra
void Start()
{
ui = GameObject.Find("InventoryCanvas").GetComponent<InventoryUI>();
manager = GameObject.Find("InventoryManager").GetComponent<InventoryManager>();
manager = InventoryManager.Instance;
addonGroup = ui.gameObject.transform.Find("AddonGroup");
discardBin = ui.gameObject.transform.Find("DiscardBin");
}
......
......@@ -9,7 +9,7 @@ public class DroppedItem : MonoBehaviour, IPlayerInteraction
public Item item;
public Addon addon;
public GameObject highlight;
float itemSizeMultiplier = 0.007f;
public float itemSizeMultiplier;
Rigidbody2D rb2D;
BoxCollider2D bc2D;
SpriteRenderer sprt;
......@@ -34,7 +34,7 @@ public class DroppedItem : MonoBehaviour, IPlayerInteraction
}
public void Init(Addon _addon, Vector3 pos)
{
inventoryManager = GameObject.Find("InventoryManager").GetComponent<InventoryManager>();
inventoryManager = InventoryManager.Instance;
addon = _addon;
itemAddon = true;
rb2D = GetComponent<Rigidbody2D>();
......
......@@ -2,7 +2,7 @@
using System.Collections.Generic;
using UnityEngine;
public class InventoryManager : MonoBehaviour {
public class InventoryManager : Singleton<InventoryManager> {
public List<Item> itemList = new List<Item>();
public List<Addon> addonList = new List<Addon>();
......@@ -23,8 +23,7 @@ public class InventoryManager : MonoBehaviour {
SetPool();
//ItemInstantiate("Dagger", player.transform.position, 0f);
ItemInstantiate("Dagger", player.transform.position, 0f);
StartCoroutine(TestCoroutine());
}
/// <summary>
......@@ -227,6 +226,8 @@ public class InventoryManager : MonoBehaviour {
itemList.Add(item);
ui.SetOnPosition(itemList, addonList);
Debug.Log(itemList[0].combo[0] + " " + itemList[0].combo[1]);
return true;
}
/// <summary>
......
......@@ -64,10 +64,75 @@ public abstract class Item {
{
}
public void AttackCalculation(PlayerAttackInfo attackInfo, Enemy enemyInfo)
public virtual void AttackCalculation(PlayerAttackInfo attackInfo, Enemy enemyInfo, string combo)
{
PlayerAttackInfo originInfo = new PlayerAttackInfo(attackInfo);
float[] tmpArray;
attackInfo.damage += DamageAdder(originInfo, enemyInfo, combo);
attackInfo.knockBackMultiplier += KnockBackAdder(originInfo, enemyInfo, combo);
tmpArray = DebuffAdder(originInfo, enemyInfo, combo);
for (int i = 0; i < (int)EnemyDebuffCase.END_POINTER; i++)
attackInfo.debuffTime[i] += tmpArray[i];
for (int j = 0; j < attachable.Length; j++)
{
if (attachable[j] && addons[j] != null)
{
attackInfo.damage += addons[j].DamageAdder(originInfo, enemyInfo, combo);
attackInfo.knockBackMultiplier += addons[j].KnockBackAdder(originInfo, enemyInfo, combo);
tmpArray = addons[j].DebuffAdder(originInfo, enemyInfo, combo);
for (int i = 0; i < (int)EnemyDebuffCase.END_POINTER; i++)
attackInfo.debuffTime[i] += tmpArray[i];
}
}
attackInfo.damage *= DamageMultiplier(originInfo, enemyInfo, combo);
attackInfo.knockBackMultiplier *= KnockBackMultiplier(originInfo, enemyInfo, combo);
tmpArray = DebuffMultiplier(originInfo, enemyInfo, combo);
for (int i = 0; i < (int)EnemyDebuffCase.END_POINTER; i++)
attackInfo.debuffTime[i] *= tmpArray[i];
for (int j = 0; j < attachable.Length; j++)
{
if (attachable[j] && addons[j] != null)
{
attackInfo.damage *= addons[j].DamageMultiplier(originInfo, enemyInfo, combo);
attackInfo.knockBackMultiplier *= addons[j].KnockBackMultiplier(originInfo, enemyInfo, combo);
tmpArray = addons[j].DebuffMultiplier(originInfo, enemyInfo, combo);
for (int i = 0; i < (int)EnemyDebuffCase.END_POINTER; i++)
attackInfo.debuffTime[i] *= tmpArray[i];
}
}
}
public virtual float DamageAdder(PlayerAttackInfo attackInfo, Enemy enemInfo, string combo)
{
return 0f;
}
public virtual float DamageMultiplier(PlayerAttackInfo attackInfo, Enemy enemInfo, string combo)
{
return 1f;
}
public virtual float[] DebuffAdder(PlayerAttackInfo attackInfo, Enemy enemInfo, string combo)
{
float[] varArray = new float[(int)EnemyDebuffCase.END_POINTER];
for (int i = 0; i< (int)EnemyDebuffCase.END_POINTER; i++) varArray[i] = 0f;
return varArray;
}
public virtual float[] DebuffMultiplier(PlayerAttackInfo attackInfo, Enemy enemInfo, string combo)
{
float[] varArray = new float[(int)EnemyDebuffCase.END_POINTER];
for (int i = 0; i < (int)EnemyDebuffCase.END_POINTER; i++) varArray[i] = 1f;
return varArray;
}
public virtual float KnockBackAdder(PlayerAttackInfo attackInfo, Enemy enemInfo, string combo)
{
return 0f;
}
public virtual float KnockBackMultiplier(PlayerAttackInfo attackInfo, Enemy enemInfo, string combo)
{
return 1f;
}
}
......@@ -12,7 +12,7 @@ public class ItemDrag : MonoBehaviour, IBeginDragHandler, IDragHandler, IEndDrag
void Start()
{
ui = GameObject.Find("InventoryCanvas").GetComponent<InventoryUI>();
manager = GameObject.Find("InventoryManager").GetComponent<InventoryManager>();
manager = InventoryManager.Instance;
discardBin = ui.gameObject.transform.Find("DiscardBin");
}
public void OnBeginDrag(PointerEventData eventData)
......
......@@ -8,7 +8,7 @@ public class ItemRoomInGame : RoomInGame {
{
base.RoomEnter();
Room room = transform.parent.GetComponent<Room>();
InventoryManager inventoryManager = GameObject.Find("InventoryManager").GetComponent<InventoryManager>();
InventoryManager inventoryManager = InventoryManager.Instance;
LifeStoneManager lifeStoneManager = GameObject.Find("LifeStoneUI").GetComponent<LifeStoneManager>();
int probability = Random.Range(0, 100);
Vector3 itemPosition = transform.Find("item spot").position;
......
fileFormatVersion: 2
guid: aeea32a402de4054cbaecd2c7d8a4bb2
guid: 41dbcb87c1d80e04298fe818c044f153
folderAsset: yes
DefaultImporter:
externalObjects: {}
userData:
......
fileFormatVersion: 2
guid: 014c5204ddcb6e54e86aadaa34227552
TextureImporter:
fileIDToRecycleName: {}
externalObjects: {}
serializedVersion: 6
mipmaps:
mipMapMode: 0
enableMipMap: 0
sRGBTexture: 1
linearTexture: 0
fadeOut: 0
borderMipMap: 0
mipMapsPreserveCoverage: 0
alphaTestReferenceValue: 0.5
mipMapFadeDistanceStart: 1
mipMapFadeDistanceEnd: 3
bumpmap:
convertToNormalMap: 0
externalNormalMap: 0
heightScale: 0.25
normalMapFilter: 0
isReadable: 0
streamingMipmaps: 0
streamingMipmapsPriority: 0
grayScaleToAlpha: 0
generateCubemap: 6
cubemapConvolution: 0
seamlessCubemap: 0
textureFormat: 1
maxTextureSize: 2048
textureSettings:
serializedVersion: 2
filterMode: 0
aniso: -1
mipBias: -100
wrapU: 1
wrapV: 1
wrapW: 1
nPOTScale: 0
lightmap: 0
compressionQuality: 50
spriteMode: 1
spriteExtrude: 1
spriteMeshType: 1
alignment: 4
spritePivot: {x: 0.5, y: 0.5}
spritePixelsToUnits: 100
spriteBorder: {x: 0, y: 0, z: 0, w: 0}
spriteGenerateFallbackPhysicsShape: 1
alphaUsage: 1
alphaIsTransparency: 1
spriteTessellationDetail: -1
textureType: 8
textureShape: 1
singleChannelComponent: 0
maxTextureSizeSet: 0
compressionQualitySet: 0
textureFormatSet: 0
platformSettings:
- serializedVersion: 2
buildTarget: DefaultTexturePlatform
maxTextureSize: 2048
resizeAlgorithm: 1
textureFormat: -1
textureCompression: 1
compressionQuality: 50
crunchedCompression: 0
allowsAlphaSplitting: 0
overridden: 0
androidETC2FallbackOverride: 0
- serializedVersion: 2
buildTarget: Standalone
maxTextureSize: 2048
resizeAlgorithm: 1
textureFormat: -1
textureCompression: 1
compressionQuality: 50
crunchedCompression: 0
allowsAlphaSplitting: 0
overridden: 0
androidETC2FallbackOverride: 0
spriteSheet:
serializedVersion: 2
sprites: []
outline: []
physicsShape: []
bones: []
spriteID: 831dc0e1cee52b44aa27e4573e8b2179
vertices: []
indices:
edges: []
weights: []
spritePackingTag:
userData:
assetBundleName:
assetBundleVariant:
fileFormatVersion: 2
guid: f978754916ff69444aa0bd613b44f2c5
TextureImporter:
fileIDToRecycleName: {}
externalObjects: {}
serializedVersion: 6
mipmaps:
mipMapMode: 0
enableMipMap: 0
sRGBTexture: 1
linearTexture: 0
fadeOut: 0
borderMipMap: 0
mipMapsPreserveCoverage: 0
alphaTestReferenceValue: 0.5
mipMapFadeDistanceStart: 1
mipMapFadeDistanceEnd: 3
bumpmap:
convertToNormalMap: 0
externalNormalMap: 0
heightScale: 0.25
normalMapFilter: 0
isReadable: 0
streamingMipmaps: 0
streamingMipmapsPriority: 0
grayScaleToAlpha: 0
generateCubemap: 6
cubemapConvolution: 0
seamlessCubemap: 0
textureFormat: 1
maxTextureSize: 2048
textureSettings:
serializedVersion: 2
filterMode: 0
aniso: -1
mipBias: -100
wrapU: 1
wrapV: 1
wrapW: 1
nPOTScale: 0
lightmap: 0
compressionQuality: 50
spriteMode: 1
spriteExtrude: 1
spriteMeshType: 1
alignment: 0
spritePivot: {x: 0.5, y: 0.5}
spritePixelsToUnits: 100
spriteBorder: {x: 0, y: 0, z: 0, w: 0}
spriteGenerateFallbackPhysicsShape: 1
alphaUsage: 1
alphaIsTransparency: 1
spriteTessellationDetail: -1
textureType: 8
textureShape: 1
singleChannelComponent: 0
maxTextureSizeSet: 0
compressionQualitySet: 0
textureFormatSet: 0
platformSettings:
- serializedVersion: 2
buildTarget: DefaultTexturePlatform
maxTextureSize: 2048
resizeAlgorithm: 1
textureFormat: -1
textureCompression: 1
compressionQuality: 50
crunchedCompression: 0
allowsAlphaSplitting: 0
overridden: 0
androidETC2FallbackOverride: 0
- serializedVersion: 2
buildTarget: Standalone
maxTextureSize: 2048
resizeAlgorithm: 1
textureFormat: -1
textureCompression: 1
compressionQuality: 50
crunchedCompression: 0
allowsAlphaSplitting: 0
overridden: 0
androidETC2FallbackOverride: 0
spriteSheet:
serializedVersion: 2
sprites: []
outline: []
physicsShape: []
bones: []
spriteID: 9af38de596dd0c945afbac1a47444c64
vertices: []
indices:
edges: []
weights: []
spritePackingTag:
userData:
assetBundleName:
assetBundleVariant:
......@@ -78,6 +78,12 @@ TagManager:
- name: Door
uniqueID: 343148499
locked: 0
- name: HPBar
uniqueID: 338107509
locked: 0
- name: Effect
uniqueID: 2841314395
locked: 0
- name: Fog
uniqueID: 3423500867
locked: 0
......@@ -87,6 +93,3 @@ TagManager:
- name: PortalSurface
uniqueID: 3732261229
locked: 0
- name: Effect
uniqueID: 2841314395
locked: 0
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment