46 Commits

Author SHA1 Message Date
f70ddddf65 Update 2026-06-06 09:19:46 +07:00
75b005c691 update UI lose 2026-06-06 02:51:35 +07:00
3b24075a71 update 2026-06-06 02:36:43 +07:00
e7d8439412 linh tinh 2026-06-06 02:34:35 +07:00
af2713a00e Complete Update NPC AI 2026-06-06 02:03:22 +07:00
316a3f7760 Update 2026-06-06 00:54:47 +07:00
78692b6820 Merge branch 'main' of https://scove-vault.duckdns.org/scove/HALLUCINATION 2026-06-06 00:39:34 +07:00
9540528203 được sơ sơ 2026-06-06 00:37:41 +07:00
manhduyhoang90
a1e82db378 Merge branch 'main' of https://scove-vault.duckdns.org/scove/HALLUCINATION 2026-06-06 00:36:26 +07:00
manhduyhoang90
71d590d584 add background 2026-06-06 00:35:11 +07:00
e5a2fcfc44 Merge branch 'main' of https://scove-vault.duckdns.org/scove/HALLUCINATION 2026-06-06 00:33:23 +07:00
7409b0ca18 Update 2026-06-06 00:33:07 +07:00
manhduyhoang90
df6b8625c5 Merge branch 'main' of https://scove-vault.duckdns.org/scove/HALLUCINATION 2026-06-06 00:29:37 +07:00
manhduyhoang90
a7e07a007f Update ui 2026-06-06 00:25:02 +07:00
0580dd22b3 Merge branch 'main' of https://scove-vault.duckdns.org/scove/HALLUCINATION 2026-06-06 00:07:57 +07:00
6b4e3f1271 Update 2026-06-06 00:07:42 +07:00
manhduyhoang90
7e45faec11 Merge branch 'main' of https://scove-vault.duckdns.org/scove/HALLUCINATION 2026-06-06 00:02:35 +07:00
manhduyhoang90
763f933c2e update UI 2026-06-06 00:00:27 +07:00
948a338191 Merge branch 'main' of https://scove-vault.duckdns.org/scove/HALLUCINATION 2026-06-05 23:28:07 +07:00
19abc0b019 commit 2026-06-05 23:27:21 +07:00
1064683542 Merge branch 'main' of https://scove-vault.duckdns.org/scove/HALLUCINATION 2026-06-05 23:26:49 +07:00
3ca7816874 update 2026-06-05 23:25:56 +07:00
manhduyhoang90
f761a53194 Merge branch 'main' of https://scove-vault.duckdns.org/scove/HALLUCINATION 2026-06-05 23:20:11 +07:00
manhduyhoang90
e92d06ed54 Update:EnemyAI, KamikazeAI 2026-06-05 23:18:29 +07:00
09ca35dd35 Merge branch 'main' of https://scove-vault.duckdns.org/scove/HALLUCINATION 2026-06-05 22:54:39 +07:00
c14d3c3a95 Update 2026-06-05 22:54:37 +07:00
manhduyhoang90
7dd6b9ac20 Merge branch 'main' of https://scove-vault.duckdns.org/scove/HALLUCINATION 2026-06-05 22:54:03 +07:00
manhduyhoang90
8e40d215d6 Update EnemyAI.cs 2026-06-05 22:53:48 +07:00
6f7c4a22b3 Merge branch 'main' of https://scove-vault.duckdns.org/scove/HALLUCINATION 2026-06-05 22:38:46 +07:00
a7fa0f9356 update 2026-06-05 22:38:32 +07:00
373c4c885e Merge branch 'main' of https://scove-vault.duckdns.org/scove/HALLUCINATION 2026-06-05 22:34:48 +07:00
67e78d1413 updaye 2026-06-05 22:34:41 +07:00
manhduyhoang90
9c66433e4e Update AI 2026-06-05 22:24:16 +07:00
manhduyhoang90
c03f78b557 Update AI 2026-06-05 21:43:41 +07:00
98806b862d update 2026-06-05 21:24:41 +07:00
91183760fb npc talk 2026-06-05 18:46:19 +07:00
manhduyhoang90
7f7139612d Merge branch 'main' of https://scove-vault.duckdns.org/scove/HALLUCINATION 2026-06-05 17:16:23 +07:00
manhduyhoang90
7e489f0243 try me bitch 2026-06-05 17:16:11 +07:00
b15883a1e7 update 2026-06-05 16:38:25 +07:00
a6110a814c ahahahahahah 2026-06-05 16:26:04 +07:00
024cc4fc69 ahaha 2026-06-05 16:06:59 +07:00
98145ff6c3 Merge branch 'main' of https://scove-vault.duckdns.org/scove/HALLUCINATION 2026-06-05 16:03:27 +07:00
5b44f9052e update 2026-06-05 16:00:04 +07:00
4b45938ef7 update small 2026-06-05 15:59:33 +07:00
887ed440f9 Merge branch 'main' of https://scove-vault.duckdns.org/scove/HALLUCINATION 2026-06-05 15:26:27 +07:00
2acfadeca9 update 2026-06-05 15:26:14 +07:00
95 changed files with 22785 additions and 17211 deletions

File diff suppressed because one or more lines are too long

View File

@@ -5,12 +5,12 @@
</component>
<component name="ChangeListManager">
<list default="true" id="f9183c68-daf0-43b8-be4c-fad79983f91b" name="Changes" comment="">
<change beforePath="$PROJECT_DIR$/.gemini-workspace-history/active-context.md" beforeDir="false" afterPath="$PROJECT_DIR$/.gemini-workspace-history/active-context.md" afterDir="false" />
<change beforePath="$PROJECT_DIR$/.idea/.idea.HALLUCINATE/.idea/workspace.xml" beforeDir="false" afterPath="$PROJECT_DIR$/.idea/.idea.HALLUCINATE/.idea/workspace.xml" afterDir="false" />
<change beforePath="$PROJECT_DIR$/Assets/Models/Character/Characters/Invector@V-Bot/FBX/Materials/V-bot-texture.mat" beforeDir="false" afterPath="$PROJECT_DIR$/Assets/Models/Character/Characters/Invector@V-Bot/FBX/Materials/V-bot-texture.mat" afterDir="false" />
<change beforePath="$PROJECT_DIR$/Assets/Prefabs/NPC/xNPC.prefab" beforeDir="false" afterPath="$PROJECT_DIR$/Assets/Prefabs/NPC/xNPC.prefab" afterDir="false" />
<change beforePath="$PROJECT_DIR$/Assets/Scenes/Cho môn AI/Only AI.unity" beforeDir="false" afterPath="$PROJECT_DIR$/Assets/Scenes/Cho môn AI/Only AI.unity" afterDir="false" />
<change beforePath="$PROJECT_DIR$/Assets/Scripts/AI NPC/EnemyAI.cs" beforeDir="false" afterPath="$PROJECT_DIR$/Assets/Scripts/AI NPC/EnemyAI.cs" afterDir="false" />
<change beforePath="$PROJECT_DIR$/Assets/Scripts/AI NPC/GerminiNPC.cs" beforeDir="false" afterPath="$PROJECT_DIR$/Assets/Scripts/AI NPC/GerminiNPC.cs" afterDir="false" />
<change beforePath="$PROJECT_DIR$/Assets/Prefabs/projectile/_LazerPrọectile.prefab" beforeDir="false" afterPath="$PROJECT_DIR$/Assets/Prefabs/projectile/_LazerPrọectile.prefab" afterDir="false" />
<change beforePath="$PROJECT_DIR$/Assets/Scripts/AI NPC/LaserProjectile.cs" beforeDir="false" afterPath="$PROJECT_DIR$/Assets/Scripts/AI NPC/LaserProjectile.cs" afterDir="false" />
<change beforePath="$PROJECT_DIR$/Assets/Scripts/AI NPC/RagNPC.cs" beforeDir="false" />
<change beforePath="$PROJECT_DIR$/Assets/Scripts/AI NPC/RagNPC.cs.meta" beforeDir="false" />
</list>
<option name="SHOW_DIALOG" value="false" />
<option name="HIGHLIGHT_CONFLICTS" value="true" />
@@ -18,7 +18,7 @@
<option name="LAST_RESOLUTION" value="IGNORE" />
</component>
<component name="EmbeddingIndexingInfo">
<option name="cachedIndexableFilesCount" value="77" />
<option name="cachedIndexableFilesCount" value="78" />
<option name="fileBasedEmbeddingIndicesEnabled" value="true" />
</component>
<component name="Git.Settings">
@@ -180,7 +180,9 @@
<workItem from="1780364354282" duration="4357000" />
<workItem from="1780409218377" duration="9852000" />
<workItem from="1780494322686" duration="643000" />
<workItem from="1780633654231" duration="4405000" />
<workItem from="1780633654231" duration="23904000" />
<workItem from="1780674685197" duration="1960000" />
<workItem from="1780709383381" duration="1351000" />
</task>
<servers />
</component>

View File

@@ -100,8 +100,7 @@ BlendTree:
m_Name: Idle
m_Childs:
- serializedVersion: 2
m_Motion: {fileID: 5908583710877457969, guid: 009c43c371cbf974f860ee540816fa3d,
type: 3}
m_Motion: {fileID: 5908583710877457969, guid: 009c43c371cbf974f860ee540816fa3d, type: 3}
m_Threshold: -0.5
m_Position: {x: 0, y: 0}
m_TimeScale: 1
@@ -117,8 +116,7 @@ BlendTree:
m_DirectBlendParameter: InputHorizontal
m_Mirror: 0
- serializedVersion: 2
m_Motion: {fileID: 5908583710877457969, guid: 009c43c371cbf974f860ee540816fa3d,
type: 3}
m_Motion: {fileID: 5908583710877457969, guid: 009c43c371cbf974f860ee540816fa3d, type: 3}
m_Threshold: 0.5
m_Position: {x: 0, y: 0}
m_TimeScale: -1
@@ -738,8 +736,7 @@ BlendTree:
m_Name: CroouchIdleAiming
m_Childs:
- serializedVersion: 2
m_Motion: {fileID: -2893743026720447327, guid: 009c43c371cbf974f860ee540816fa3d,
type: 3}
m_Motion: {fileID: -2893743026720447327, guid: 009c43c371cbf974f860ee540816fa3d, type: 3}
m_Threshold: -0.5
m_Position: {x: 0, y: 0}
m_TimeScale: 1
@@ -755,8 +752,7 @@ BlendTree:
m_DirectBlendParameter: InputHorizontal
m_Mirror: 0
- serializedVersion: 2
m_Motion: {fileID: -2893743026720447327, guid: 009c43c371cbf974f860ee540816fa3d,
type: 3}
m_Motion: {fileID: -2893743026720447327, guid: 009c43c371cbf974f860ee540816fa3d, type: 3}
m_Threshold: 0.5
m_Position: {x: 0, y: 0}
m_TimeScale: -1
@@ -942,8 +938,7 @@ AnimatorState:
m_MirrorParameterActive: 0
m_CycleOffsetParameterActive: 0
m_TimeParameterActive: 0
m_Motion: {fileID: 6273134904810983842, guid: 632f8ebe81a772e4998224dabbbf836b,
type: 3}
m_Motion: {fileID: 6273134904810983842, guid: 632f8ebe81a772e4998224dabbbf836b, type: 3}
m_Tag:
m_SpeedParameter:
m_MirrorParameter:
@@ -1066,8 +1061,7 @@ BlendTree:
m_Name: CrouchIdle
m_Childs:
- serializedVersion: 2
m_Motion: {fileID: -2893743026720447327, guid: 009c43c371cbf974f860ee540816fa3d,
type: 3}
m_Motion: {fileID: -2893743026720447327, guid: 009c43c371cbf974f860ee540816fa3d, type: 3}
m_Threshold: -0.5
m_Position: {x: 0, y: 0}
m_TimeScale: 2
@@ -1083,8 +1077,7 @@ BlendTree:
m_DirectBlendParameter: InputHorizontal
m_Mirror: 0
- serializedVersion: 2
m_Motion: {fileID: -2893743026720447327, guid: 009c43c371cbf974f860ee540816fa3d,
type: 3}
m_Motion: {fileID: -2893743026720447327, guid: 009c43c371cbf974f860ee540816fa3d, type: 3}
m_Threshold: 0.5
m_Position: {x: 0, y: 0}
m_TimeScale: -2
@@ -1371,8 +1364,7 @@ BlendTree:
m_Name: Blend Tree
m_Childs:
- serializedVersion: 2
m_Motion: {fileID: 6944727830613845018, guid: f63fbd0ba70f1554c9dc5f893ff28546,
type: 3}
m_Motion: {fileID: 6944727830613845018, guid: f63fbd0ba70f1554c9dc5f893ff28546, type: 3}
m_Threshold: -170
m_Position: {x: 0, y: 0}
m_TimeScale: 1
@@ -1380,8 +1372,7 @@ BlendTree:
m_DirectBlendParameter: InputHorizontal
m_Mirror: 0
- serializedVersion: 2
m_Motion: {fileID: 5927633979316069339, guid: f63fbd0ba70f1554c9dc5f893ff28546,
type: 3}
m_Motion: {fileID: 5927633979316069339, guid: f63fbd0ba70f1554c9dc5f893ff28546, type: 3}
m_Threshold: -90
m_Position: {x: 0, y: 0}
m_TimeScale: 1
@@ -1389,8 +1380,7 @@ BlendTree:
m_DirectBlendParameter: InputHorizontal
m_Mirror: 0
- serializedVersion: 2
m_Motion: {fileID: 7173170133434809738, guid: f63fbd0ba70f1554c9dc5f893ff28546,
type: 3}
m_Motion: {fileID: 7173170133434809738, guid: f63fbd0ba70f1554c9dc5f893ff28546, type: 3}
m_Threshold: 0
m_Position: {x: 0, y: 0}
m_TimeScale: 1
@@ -1398,8 +1388,7 @@ BlendTree:
m_DirectBlendParameter: InputHorizontal
m_Mirror: 0
- serializedVersion: 2
m_Motion: {fileID: -4636754764438762427, guid: f63fbd0ba70f1554c9dc5f893ff28546,
type: 3}
m_Motion: {fileID: -4636754764438762427, guid: f63fbd0ba70f1554c9dc5f893ff28546, type: 3}
m_Threshold: 90
m_Position: {x: 0, y: 0}
m_TimeScale: 1
@@ -1407,8 +1396,7 @@ BlendTree:
m_DirectBlendParameter: InputHorizontal
m_Mirror: 0
- serializedVersion: 2
m_Motion: {fileID: -606276786794296147, guid: f63fbd0ba70f1554c9dc5f893ff28546,
type: 3}
m_Motion: {fileID: -606276786794296147, guid: f63fbd0ba70f1554c9dc5f893ff28546, type: 3}
m_Threshold: 170
m_Position: {x: 0, y: 0}
m_TimeScale: 1
@@ -14728,14 +14716,17 @@ AnimatorStateMachine:
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_Name: Base Layer
m_ChildStates: []
m_ChildStates:
- serializedVersion: 1
m_State: {fileID: 4416801500611958025}
m_Position: {x: -358.64734, y: -43.860413, z: 0}
m_ChildStateMachines:
- serializedVersion: 1
m_StateMachine: {fileID: 1107191697213795204}
m_Position: {x: -288, y: -120, z: 0}
- serializedVersion: 1
m_StateMachine: {fileID: 1107822795797827924}
m_Position: {x: -288, y: -180, z: 0}
m_Position: {x: -290, y: -180, z: 0}
- serializedVersion: 1
m_StateMachine: {fileID: 2678945455928377032}
m_Position: {x: -290, y: -240, z: 0}
@@ -20946,8 +20937,7 @@ BlendTree:
m_Name: Bow_Idle
m_Childs:
- serializedVersion: 2
m_Motion: {fileID: -744450954914381049, guid: 009c43c371cbf974f860ee540816fa3d,
type: 3}
m_Motion: {fileID: -744450954914381049, guid: 009c43c371cbf974f860ee540816fa3d, type: 3}
m_Threshold: -0.5
m_Position: {x: 0, y: 0}
m_TimeScale: 2
@@ -20963,8 +20953,7 @@ BlendTree:
m_DirectBlendParameter: InputHorizontal
m_Mirror: 0
- serializedVersion: 2
m_Motion: {fileID: -744450954914381049, guid: 009c43c371cbf974f860ee540816fa3d,
type: 3}
m_Motion: {fileID: -744450954914381049, guid: 009c43c371cbf974f860ee540816fa3d, type: 3}
m_Threshold: 0.5
m_Position: {x: 0, y: 0}
m_TimeScale: -2
@@ -33694,7 +33683,7 @@ AnimatorStateMachine:
m_ChildStates:
- serializedVersion: 1
m_State: {fileID: 1102974793704474096}
m_Position: {x: 264, y: 168, z: 0}
m_Position: {x: 260, y: 170, z: 0}
- serializedVersion: 1
m_State: {fileID: 1102332861771149508}
m_Position: {x: 260, y: 70, z: 0}
@@ -33710,7 +33699,7 @@ AnimatorStateMachine:
m_AnyStatePosition: {x: 48, y: 168, z: 0}
m_EntryPosition: {x: 50, y: 120, z: 0}
m_ExitPosition: {x: 504, y: 120, z: 0}
m_ParentStateMachinePosition: {x: 24, y: -24, z: 0}
m_ParentStateMachinePosition: {x: 30, y: -20, z: 0}
m_DefaultState: {fileID: 1102332861771149508}
--- !u!1107 &1107815003637627098
AnimatorStateMachine:
@@ -35894,8 +35883,7 @@ BlendTree:
m_Name: Crouch Idle
m_Childs:
- serializedVersion: 2
m_Motion: {fileID: -2893743026720447327, guid: 009c43c371cbf974f860ee540816fa3d,
type: 3}
m_Motion: {fileID: -2893743026720447327, guid: 009c43c371cbf974f860ee540816fa3d, type: 3}
m_Threshold: -0.5
m_Position: {x: 0, y: 0}
m_TimeScale: 2
@@ -35911,8 +35899,7 @@ BlendTree:
m_DirectBlendParameter: InputHorizontal
m_Mirror: 0
- serializedVersion: 2
m_Motion: {fileID: -2893743026720447327, guid: 009c43c371cbf974f860ee540816fa3d,
type: 3}
m_Motion: {fileID: -2893743026720447327, guid: 009c43c371cbf974f860ee540816fa3d, type: 3}
m_Threshold: 0.5
m_Position: {x: 0, y: 0}
m_TimeScale: -2
@@ -36272,6 +36259,32 @@ AnimatorStateTransition:
m_InterruptionSource: 0
m_OrderedInterruption: 1
m_CanTransitionToSelf: 1
--- !u!1102 &4416801500611958025
AnimatorState:
serializedVersion: 6
m_ObjectHideFlags: 1
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_Name: TestRun
m_Speed: 1
m_CycleOffset: 0
m_Transitions: []
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: 7400012, guid: 37c6cfe59f56e8a4799011397a870a8b, type: 3}
m_Tag:
m_SpeedParameter:
m_MirrorParameter:
m_CycleOffsetParameter:
m_TimeParameter:
--- !u!1101 &4602781940129309487
AnimatorStateTransition:
m_ObjectHideFlags: 1
@@ -36478,8 +36491,7 @@ BlendTree:
m_Name: Idle Aiming
m_Childs:
- serializedVersion: 2
m_Motion: {fileID: -5495367200724739231, guid: 009c43c371cbf974f860ee540816fa3d,
type: 3}
m_Motion: {fileID: -5495367200724739231, guid: 009c43c371cbf974f860ee540816fa3d, type: 3}
m_Threshold: -0.5
m_Position: {x: 0, y: 0}
m_TimeScale: 2
@@ -36487,8 +36499,7 @@ BlendTree:
m_DirectBlendParameter: InputHorizontal
m_Mirror: 0
- serializedVersion: 2
m_Motion: {fileID: -5495367200724739231, guid: 009c43c371cbf974f860ee540816fa3d,
type: 3}
m_Motion: {fileID: -5495367200724739231, guid: 009c43c371cbf974f860ee540816fa3d, type: 3}
m_Threshold: -0.2
m_Position: {x: 0, y: 0}
m_TimeScale: 0.5
@@ -36504,8 +36515,7 @@ BlendTree:
m_DirectBlendParameter: InputHorizontal
m_Mirror: 0
- serializedVersion: 2
m_Motion: {fileID: -5495367200724739231, guid: 009c43c371cbf974f860ee540816fa3d,
type: 3}
m_Motion: {fileID: -5495367200724739231, guid: 009c43c371cbf974f860ee540816fa3d, type: 3}
m_Threshold: 0.2
m_Position: {x: 0, y: 0}
m_TimeScale: -0.5
@@ -36513,8 +36523,7 @@ BlendTree:
m_DirectBlendParameter: InputHorizontal
m_Mirror: 0
- serializedVersion: 2
m_Motion: {fileID: -5495367200724739231, guid: 009c43c371cbf974f860ee540816fa3d,
type: 3}
m_Motion: {fileID: -5495367200724739231, guid: 009c43c371cbf974f860ee540816fa3d, type: 3}
m_Threshold: 0.5
m_Position: {x: 0, y: 0}
m_TimeScale: -2
@@ -36682,8 +36691,7 @@ BlendTree:
m_Name: Holding Melee Idle
m_Childs:
- serializedVersion: 2
m_Motion: {fileID: -5508357832084655506, guid: 009c43c371cbf974f860ee540816fa3d,
type: 3}
m_Motion: {fileID: -5508357832084655506, guid: 009c43c371cbf974f860ee540816fa3d, type: 3}
m_Threshold: -1
m_Position: {x: 0, y: 0}
m_TimeScale: 1
@@ -36699,8 +36707,7 @@ BlendTree:
m_DirectBlendParameter: InputHorizontal
m_Mirror: 0
- serializedVersion: 2
m_Motion: {fileID: -5508357832084655506, guid: 009c43c371cbf974f860ee540816fa3d,
type: 3}
m_Motion: {fileID: -5508357832084655506, guid: 009c43c371cbf974f860ee540816fa3d, type: 3}
m_Threshold: 1
m_Position: {x: 0, y: 0}
m_TimeScale: -1

View File

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

View File

@@ -0,0 +1,23 @@
fileFormatVersion: 2
guid: 5a569249b0485d347a698461b0334585
AudioImporter:
externalObjects: {}
serializedVersion: 8
defaultSettings:
serializedVersion: 2
loadType: 0
sampleRateSetting: 0
sampleRateOverride: 44100
compressionFormat: 1
quality: 1
conversionMode: 0
preloadAudioData: 0
platformSettingOverrides: {}
forceToMono: 0
normalize: 1
loadInBackground: 0
ambisonic: 0
3D: 1
userData:
assetBundleName:
assetBundleVariant:

View File

@@ -57,7 +57,7 @@ AudioMixerGroupController:
m_Send: 00000000000000000000000000000000
m_Effects:
- {fileID: -5864968286415327506}
m_UserColorIndex: 0
m_UserColorIndex: 3
m_Mute: 0
m_Solo: 0
m_BypassEffects: 0
@@ -76,7 +76,15 @@ AudioMixerController:
m_SuspendThreshold: -80
m_EnableSuspend: 1
m_UpdateMode: 0
m_ExposedParameters: []
m_ExposedParameters:
- guid: 9d220dd29b931844f8bf0cabe811b681
name: MasterVolume
- guid: bf1d95a6c9abe924fa3d98795325cc1b
name: MusicVolume
- guid: 27be8a879c26ddd4585dbedff31a33e3
name: SFXVolume
- guid: 6b8a96f21df846741a0036e2a182ec15
name: UIVolume
m_AudioMixerGroupViews:
- guids:
- f31c09d88c9703d4aae5faeb43b19082
@@ -104,7 +112,7 @@ AudioMixerGroupController:
m_Send: 00000000000000000000000000000000
m_Effects:
- {fileID: 24400004}
m_UserColorIndex: 0
m_UserColorIndex: 1
m_Mute: 0
m_Solo: 0
m_BypassEffects: 0
@@ -148,7 +156,7 @@ AudioMixerGroupController:
m_Send: 00000000000000000000000000000000
m_Effects:
- {fileID: -8884289898024163737}
m_UserColorIndex: 0
m_UserColorIndex: 2
m_Mute: 0
m_Solo: 0
m_BypassEffects: 0
@@ -167,7 +175,7 @@ AudioMixerGroupController:
m_Send: 00000000000000000000000000000000
m_Effects:
- {fileID: -4762669937127778309}
m_UserColorIndex: 0
m_UserColorIndex: 4
m_Mute: 0
m_Solo: 0
m_BypassEffects: 0

View File

@@ -5218,9 +5218,9 @@ Material:
- _OutlineWidth: 0
- _PerspectiveFilter: 0.875
- _Reflectivity: 10
- _ScaleRatioA: 1
- _ScaleRatioB: 1
- _ScaleRatioC: 1
- _ScaleRatioA: 0.9
- _ScaleRatioB: 0.73125
- _ScaleRatioC: 0.73125
- _ScaleX: 1
- _ScaleY: 1
- _ShaderFlags: 0

144
Assets/Materials/skubox.mat Normal file
View File

@@ -0,0 +1,144 @@
%YAML 1.1
%TAG !u! tag:unity3d.com,2011:
--- !u!114 &-6888318783798700149
MonoBehaviour:
m_ObjectHideFlags: 11
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: d0353a89b1f911e48b9e16bdc9f2e058, type: 3}
m_Name:
m_EditorClassIdentifier: Unity.RenderPipelines.Universal.Editor::UnityEditor.Rendering.Universal.AssetVersion
version: 10
--- !u!21 &2100000
Material:
serializedVersion: 8
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_Name: skubox
m_Shader: {fileID: 108, guid: 0000000000000000f000000000000000, type: 0}
m_Parent: {fileID: 0}
m_ModifiedSerializedProperties: 0
m_ValidKeywords: []
m_InvalidKeywords:
- _MAPPING_LATITUDE_LONGITUDE_LAYOUT
m_LightmapFlags: 4
m_EnableInstancingVariants: 0
m_DoubleSidedGI: 0
m_CustomRenderQueue: -1
stringTagMap: {}
disabledShaderPasses:
- MOTIONVECTORS
m_LockedProperties:
m_SavedProperties:
serializedVersion: 3
m_TexEnvs:
- _BaseMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _BumpMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _DetailAlbedoMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _DetailMask:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _DetailNormalMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _EmissionMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _MainTex:
m_Texture: {fileID: 2800000, guid: f6c8ebeb4fbe2954ba666fb8de1138f1, type: 3}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _MetallicGlossMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _OcclusionMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _ParallaxMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _SpecGlossMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- unity_Lightmaps:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- unity_LightmapsInd:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- unity_ShadowMasks:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
m_Ints: []
m_Floats:
- _AddPrecomputedVelocity: 0
- _AlphaClip: 0
- _AlphaToMask: 0
- _Blend: 0
- _BlendModePreserveSpecular: 1
- _BumpScale: 1
- _ClearCoatMask: 0
- _ClearCoatSmoothness: 0
- _Cull: 2
- _Cutoff: 0.5
- _DetailAlbedoMapScale: 1
- _DetailNormalMapScale: 1
- _DstBlend: 0
- _DstBlendAlpha: 0
- _EnvironmentReflections: 1
- _Exposure: 1
- _GlossMapScale: 0
- _Glossiness: 0
- _GlossyReflections: 0
- _ImageType: 0
- _Layout: 0
- _Mapping: 1
- _Metallic: 0
- _MirrorOnBack: 0
- _OcclusionStrength: 1
- _Parallax: 0.005
- _QueueOffset: 0
- _ReceiveShadows: 1
- _Rotation: 0
- _Smoothness: 0.5
- _SmoothnessTextureChannel: 0
- _SpecularHighlights: 1
- _SrcBlend: 1
- _SrcBlendAlpha: 1
- _Surface: 0
- _WorkflowMode: 1
- _XRMotionVectorsPass: 1
- _ZWrite: 1
m_Colors:
- _BaseColor: {r: 1, g: 1, b: 1, a: 1}
- _Color: {r: 1, g: 1, b: 1, a: 1}
- _EmissionColor: {r: 0, g: 0, b: 0, a: 1}
- _SpecColor: {r: 0.19999996, g: 0.19999996, b: 0.19999996, a: 1}
- _Tint: {r: 0.5, g: 0.5, b: 0.5, a: 0.5}
m_BuildTextureStacks: []
m_AllowLocking: 1

View File

@@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: 7adfd3fc58213974581401c16602cb05
NativeFormatImporter:
externalObjects: {}
mainObjectFileID: 2100000
userData:
assetBundleName:
assetBundleVariant:

View File

@@ -37,6 +37,7 @@ Material:
disabledShaderPasses:
- MOTIONVECTORS
- DepthOnly
- SHADOWCASTER
m_LockedProperties:
m_SavedProperties:
serializedVersion: 3
@@ -66,7 +67,7 @@ Material:
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _MainTex:
m_Texture: {fileID: 0}
m_Texture: {fileID: 2800000, guid: 2b09e034ca4296047993ed266a80d617, type: 3}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _MetallicGlossMap:

View File

@@ -132,7 +132,7 @@ Material:
- _ZWrite: 1
m_Colors:
- _BaseColor: {r: 0.066176444, g: 0.066176444, b: 0.066176444, a: 0.9338235}
- _Color: {r: 1, g: 1, b: 1, a: 1}
- _Color: {r: 0.06617642, g: 0.06617642, b: 0.06617642, a: 0.9338235}
- _EmissionColor: {r: 0, g: 0, b: 0, a: 1}
- _SpecColor: {r: 0.19999996, g: 0.19999996, b: 0.19999996, a: 1}
m_BuildTextureStacks: []

View File

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

8
Assets/Photon.meta Normal file
View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

@@ -14,6 +14,7 @@ GameObject:
- component: {fileID: 6087599376744356948}
- component: {fileID: 3563399533700019190}
- component: {fileID: 681314853465352057}
- component: {fileID: 4042483058127329834}
m_Layer: 0
m_Name: KamikazeAI
m_TagString: Untagged
@@ -155,3 +156,41 @@ MonoBehaviour:
patrolRadius: 12
patrolWaitTime: 2
explosionEffectPrefab: {fileID: 8568474719719117872, guid: 39bf32dcd9299df4ca44fd10a817eda4, type: 3}
--- !u!114 &4042483058127329834
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 6425756872251228809}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: f56a83ea88140fa4f869bb2f7ffdb184, type: 3}
m_Name:
m_EditorClassIdentifier: Assembly-CSharp::Invector.vHealthController
openCloseEvents: 0
openCloseWindow: 1
selectedToolbar: 0
_isDead: 1
_currentHealth: 0
isImmortal: 0
fillHealthOnStart: 1
_maxHealth: 100
_healthRecovery: 0
_healthRecoveryDelay: 0
checkHealthEvents: []
_onStartReceiveDamage:
m_PersistentCalls:
m_Calls: []
_onReceiveDamage:
m_PersistentCalls:
m_Calls: []
_onDead:
m_PersistentCalls:
m_Calls: []
onChangeHealth:
m_PersistentCalls:
m_Calls: []
onResetHealth:
m_PersistentCalls:
m_Calls: []

View File

@@ -1,6 +1,6 @@
%YAML 1.1
%TAG !u! tag:unity3d.com,2011:
--- !u!1 &1015130845570826762
--- !u!1 &687530158533285018
GameObject:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
@@ -8,297 +8,57 @@ GameObject:
m_PrefabAsset: {fileID: 0}
serializedVersion: 6
m_Component:
- component: {fileID: 369056581300809980}
- component: {fileID: 7178408408297164993}
- component: {fileID: 7017130799328637960}
- component: {fileID: 704565314883451722}
m_Layer: 0
m_Name: Canvas
m_TagString: Untagged
m_Icon: {fileID: 0}
m_NavMeshLayer: 0
m_StaticEditorFlags: 0
m_IsActive: 1
--- !u!224 &369056581300809980
RectTransform:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 1015130845570826762}
m_LocalRotation: {x: -0, y: -0, z: -0, w: 1}
m_LocalPosition: {x: 0, y: 0, z: 0}
m_LocalScale: {x: 1, y: 1, z: 1}
m_ConstrainProportionsScale: 0
m_Children:
- {fileID: 5600986009105034028}
- {fileID: 9065310572032428542}
m_Father: {fileID: 6442306242859885696}
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: 1.5}
m_SizeDelta: {x: 3, y: 1}
m_Pivot: {x: 0.5, y: 0.5}
--- !u!223 &7178408408297164993
Canvas:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 1015130845570826762}
m_Enabled: 1
serializedVersion: 3
m_RenderMode: 2
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!114 &7017130799328637960
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 1015130845570826762}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: 0cd44c1031e13a943bb63640046fad76, type: 3}
m_Name:
m_EditorClassIdentifier: UnityEngine.UI::UnityEngine.UI.CanvasScaler
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: 1
--- !u!114 &704565314883451722
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 1015130845570826762}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: dc42784cf147c0c48a680349fa168899, type: 3}
m_Name:
m_EditorClassIdentifier: UnityEngine.UI::UnityEngine.UI.GraphicRaycaster
m_IgnoreReversedGraphics: 1
m_BlockingObjects: 0
m_BlockingMask:
serializedVersion: 2
m_Bits: 4294967295
--- !u!1 &3389310839763427503
GameObject:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
serializedVersion: 6
m_Component:
- component: {fileID: 9065310572032428542}
- component: {fileID: 970613594855946612}
- component: {fileID: 707878100722238044}
m_Layer: 0
m_Name: Text (TMP)
m_TagString: Untagged
m_Icon: {fileID: 0}
m_NavMeshLayer: 0
m_StaticEditorFlags: 0
m_IsActive: 1
--- !u!224 &9065310572032428542
RectTransform:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 3389310839763427503}
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: 369056581300809980}
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: 0, y: 0}
m_SizeDelta: {x: 3, y: 1}
m_Pivot: {x: 0.5, y: 0.5}
--- !u!222 &970613594855946612
CanvasRenderer:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 3389310839763427503}
m_CullTransparentMesh: 1
--- !u!114 &707878100722238044
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 3389310839763427503}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: f4688fdb7df04437aeb418b961361dc5, type: 3}
m_Name:
m_EditorClassIdentifier: Unity.TextMeshPro::TMPro.TextMeshProUGUI
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: 2
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: 4278190080
m_fontColor: {r: 0, g: 0, b: 0, 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: 0.3
m_fontSizeBase: 0.3
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_characterHorizontalScale: 1
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!1 &5484531426847444413
GameObject:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
serializedVersion: 6
m_Component:
- component: {fileID: 5600986009105034028}
- component: {fileID: 3735294672569112020}
- component: {fileID: 4710298513750601350}
m_Layer: 0
- component: {fileID: 6775114823217050358}
- component: {fileID: 4848796683983860819}
- component: {fileID: 1063752242239153259}
m_Layer: 5
m_Name: Image
m_TagString: Untagged
m_Icon: {fileID: 0}
m_NavMeshLayer: 0
m_StaticEditorFlags: 0
m_IsActive: 1
--- !u!224 &5600986009105034028
--- !u!224 &6775114823217050358
RectTransform:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 5484531426847444413}
m_GameObject: {fileID: 687530158533285018}
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: 369056581300809980}
m_Father: {fileID: 328772590547044964}
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: 0, y: 0}
m_SizeDelta: {x: 3, y: 1}
m_SizeDelta: {x: 1.5, y: 0.5}
m_Pivot: {x: 0.5, y: 0.5}
--- !u!222 &3735294672569112020
--- !u!222 &4848796683983860819
CanvasRenderer:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 5484531426847444413}
m_GameObject: {fileID: 687530158533285018}
m_CullTransparentMesh: 1
--- !u!114 &4710298513750601350
--- !u!114 &1063752242239153259
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 5484531426847444413}
m_GameObject: {fileID: 687530158533285018}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: fe87c0e1cc204ed48ad3b37840f39efc, type: 3}
m_Name:
m_EditorClassIdentifier: UnityEngine.UI::UnityEngine.UI.Image
m_Material: {fileID: 0}
m_Color: {r: 1, g: 1, b: 1, a: 0.7647059}
m_Color: {r: 0, g: 0, b: 0, a: 1}
m_RaycastTarget: 1
m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0}
m_Maskable: 1
@@ -315,6 +75,138 @@ MonoBehaviour:
m_FillOrigin: 0
m_UseSpriteMesh: 0
m_PixelsPerUnitMultiplier: 1
--- !u!1 &3381350595760429543
GameObject:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
serializedVersion: 6
m_Component:
- component: {fileID: 328772590547044964}
- component: {fileID: 1591845008547969437}
- component: {fileID: 7721795325225879236}
- component: {fileID: 1194338186308686302}
- component: {fileID: 1620994605374968907}
- component: {fileID: 3045503552244378433}
m_Layer: 5
m_Name: Canvas
m_TagString: Untagged
m_Icon: {fileID: 0}
m_NavMeshLayer: 0
m_StaticEditorFlags: 0
m_IsActive: 1
--- !u!224 &328772590547044964
RectTransform:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 3381350595760429543}
m_LocalRotation: {x: 0, y: -1, z: 0, w: 0}
m_LocalPosition: {x: 0, y: 0, z: 0}
m_LocalScale: {x: 1, y: 1, z: 1}
m_ConstrainProportionsScale: 0
m_Children:
- {fileID: 6775114823217050358}
- {fileID: 2685789783496722106}
m_Father: {fileID: 6442306242859885696}
m_LocalEulerAnglesHint: {x: 0, y: -180, z: 0}
m_AnchorMin: {x: 0, y: 0}
m_AnchorMax: {x: 0, y: 0}
m_AnchoredPosition: {x: 0, y: 2.09}
m_SizeDelta: {x: 1.5, y: 0.5}
m_Pivot: {x: 0.5, y: 0.5}
--- !u!223 &1591845008547969437
Canvas:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 3381350595760429543}
m_Enabled: 1
serializedVersion: 3
m_RenderMode: 2
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!114 &7721795325225879236
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 3381350595760429543}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: 0cd44c1031e13a943bb63640046fad76, type: 3}
m_Name:
m_EditorClassIdentifier: UnityEngine.UI::UnityEngine.UI.CanvasScaler
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: 1
--- !u!114 &1194338186308686302
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 3381350595760429543}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: dc42784cf147c0c48a680349fa168899, type: 3}
m_Name:
m_EditorClassIdentifier: UnityEngine.UI::UnityEngine.UI.GraphicRaycaster
m_IgnoreReversedGraphics: 1
m_BlockingObjects: 0
m_BlockingMask:
serializedVersion: 2
m_Bits: 4294967295
--- !u!225 &1620994605374968907
CanvasGroup:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 3381350595760429543}
m_Enabled: 1
m_Alpha: 1
m_Interactable: 1
m_BlocksRaycasts: 1
m_IgnoreParentGroups: 0
--- !u!114 &3045503552244378433
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 3381350595760429543}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: ea510cea4b9ed1547ae4725a2ded949a, type: 3}
m_Name:
m_EditorClassIdentifier: Assembly-CSharp::Hallucinate.UI.ChatBubble
textDisplay: {fileID: 4454520411962799200}
canvasGroup: {fileID: 1620994605374968907}
bubbleRect: {fileID: 6775114823217050358}
--- !u!1 &5687887011233860168
GameObject:
m_ObjectHideFlags: 0
@@ -343,9 +235,9 @@ Transform:
m_GameObject: {fileID: 5687887011233860168}
serializedVersion: 2
m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
m_LocalPosition: {x: 0.041, y: 0.408, z: -0.45}
m_LocalScale: {x: -0.42, y: 0.17, z: -0.4}
m_ConstrainProportionsScale: 0
m_LocalPosition: {x: 0.041, y: 1.5, z: 0.595}
m_LocalScale: {x: 0.05, y: 0.05, z: 0.05}
m_ConstrainProportionsScale: 1
m_Children: []
m_Father: {fileID: 6442306242859885696}
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
@@ -423,10 +315,147 @@ BoxCollider:
m_LayerOverridePriority: 0
m_IsTrigger: 0
m_ProvidesContacts: 0
m_Enabled: 1
m_Enabled: 0
serializedVersion: 3
m_Size: {x: 1, y: 1, z: 1}
m_Center: {x: 0, y: 0, z: 0}
m_Size: {x: 1, y: 1, z: 1.2136346}
m_Center: {x: 0, y: 0, z: -0.106817186}
--- !u!1 &6192986059782212342
GameObject:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
serializedVersion: 6
m_Component:
- component: {fileID: 2685789783496722106}
- component: {fileID: 6402235304255896193}
- component: {fileID: 4454520411962799200}
m_Layer: 5
m_Name: Text (TMP)
m_TagString: Untagged
m_Icon: {fileID: 0}
m_NavMeshLayer: 0
m_StaticEditorFlags: 0
m_IsActive: 1
--- !u!224 &2685789783496722106
RectTransform:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 6192986059782212342}
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: 328772590547044964}
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: 0, y: 0}
m_SizeDelta: {x: 1.5, y: 0.5}
m_Pivot: {x: 0.5, y: 0.5}
--- !u!222 &6402235304255896193
CanvasRenderer:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 6192986059782212342}
m_CullTransparentMesh: 1
--- !u!114 &4454520411962799200
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 6192986059782212342}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: f4688fdb7df04437aeb418b961361dc5, type: 3}
m_Name:
m_EditorClassIdentifier: Unity.TextMeshPro::TMPro.TextMeshProUGUI
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: New Text
m_isRightToLeft: 0
m_fontAsset: {fileID: 11400000, guid: 640dff215c25f9847adcab3173c9a02e, type: 2}
m_sharedMaterial: {fileID: -4956435542685485637, guid: 640dff215c25f9847adcab3173c9a02e, 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: 0.07
m_fontSizeBase: 0.07
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_characterHorizontalScale: 1
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!1 &7522161431095319480
GameObject:
m_ObjectHideFlags: 0
@@ -436,16 +465,17 @@ GameObject:
serializedVersion: 6
m_Component:
- component: {fileID: 6442306242859885696}
- component: {fileID: 7778427549192063289}
- component: {fileID: 66474588272659248}
- component: {fileID: 5993569412413708733}
- component: {fileID: 8272839718325411334}
- component: {fileID: 5770331367975928816}
- component: {fileID: 4112854993683970537}
- component: {fileID: 1849114922688404578}
- component: {fileID: 8239948856752686218}
- component: {fileID: 6469822191588635990}
- component: {fileID: 9027690817715396964}
- component: {fileID: 2252266660326254214}
- component: {fileID: 4329414276869835007}
m_Layer: 0
m_Name: xNPC
m_TagString: Untagged
m_TagString: Enemy
m_Icon: {fileID: 0}
m_NavMeshLayer: 0
m_StaticEditorFlags: 0
@@ -464,89 +494,10 @@ Transform:
m_ConstrainProportionsScale: 0
m_Children:
- {fileID: 5863061020199015852}
- {fileID: 369056581300809980}
- {fileID: 7561534673732080682}
- {fileID: 328772590547044964}
m_Father: {fileID: 0}
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
--- !u!33 &7778427549192063289
MeshFilter:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 7522161431095319480}
m_Mesh: {fileID: 10208, guid: 0000000000000000e000000000000000, type: 0}
--- !u!23 &66474588272659248
MeshRenderer:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 7522161431095319480}
m_Enabled: 1
m_CastShadows: 1
m_ReceiveShadows: 1
m_DynamicOccludee: 1
m_StaticShadowCaster: 0
m_MotionVectors: 1
m_LightProbeUsage: 1
m_ReflectionProbeUsage: 1
m_RayTracingMode: 2
m_RayTraceProcedural: 0
m_RayTracingAccelStructBuildFlagsOverride: 0
m_RayTracingAccelStructBuildFlags: 1
m_SmallMeshCulling: 1
m_ForceMeshLod: -1
m_MeshLodSelectionBias: 0
m_RenderingLayerMask: 1
m_RendererPriority: 0
m_Materials:
- {fileID: 2100000, guid: 31321ba15b8f8eb4c954353edc038b1d, type: 2}
m_StaticBatchInfo:
firstSubMesh: 0
subMeshCount: 0
m_StaticBatchRoot: {fileID: 0}
m_ProbeAnchor: {fileID: 0}
m_LightProbeVolumeOverride: {fileID: 0}
m_ScaleInLightmap: 1
m_ReceiveGI: 1
m_PreserveUVs: 0
m_IgnoreNormalsForChartDetection: 0
m_ImportantGI: 0
m_StitchLightmapSeams: 1
m_SelectedEditorRenderState: 3
m_MinimumChartSize: 4
m_AutoUVMaxDistance: 0.5
m_AutoUVMaxAngle: 89
m_LightmapParameters: {fileID: 0}
m_GlobalIlluminationMeshLod: 0
m_SortingLayerID: 0
m_SortingLayer: 0
m_SortingOrder: 0
m_MaskInteraction: 0
m_AdditionalVertexStreams: {fileID: 0}
--- !u!136 &5993569412413708733
CapsuleCollider:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 7522161431095319480}
m_Material: {fileID: 0}
m_IncludeLayers:
serializedVersion: 2
m_Bits: 0
m_ExcludeLayers:
serializedVersion: 2
m_Bits: 0
m_LayerOverridePriority: 0
m_IsTrigger: 0
m_ProvidesContacts: 0
m_Enabled: 1
serializedVersion: 2
m_Radius: 0.5
m_Height: 2
m_Direction: 1
m_Center: {x: 0, y: 0, z: 0}
--- !u!114 &8272839718325411334
MonoBehaviour:
m_ObjectHideFlags: 0
@@ -560,22 +511,40 @@ MonoBehaviour:
m_Name:
m_EditorClassIdentifier: Assembly-CSharp::EnemyAI
player: {fileID: 0}
detectRange: 10
moveSpeed: 3
rotateSpeed: 50
patrolRadius: 15
moveSpeed: 5
rotateSpeed: 20
patrolWaitTime: 2
patrolSpeed: 2
patrolRadius: 100
playerHasArtifact: 0
isAggroedBySound: 0
laserPrefab: {fileID: 3965388737199864462, guid: fbec2b501d70daa4c9cb481ba53fc0b8, type: 3}
firePoint: {fileID: 5863061020199015852}
minShootDelay: 1
maxShootDelay: 3
alertSound: Enemy_Alert
shootSound: Enemy_Shoot
maxShootDelay: 5
dodgeForce: 3
dodgeDuration: 0.5
dodgeCooldown: 2
isPanicking: 0
isEnraged: 0
panicHealthThreshold: 40
regenRate: 2
regenDelay: 2
minStrafeDuration: 0.5
maxStrafeDuration: 2.2
maxSpreadAngle: 10
burstInterval: 0.12
approachWeight: 0.35
minCombatDistance: 5
npcName: Guard
persona: You are a grumpy guard protecting gold.
talkRange: 4
talkRange: 5
talkCooldown: 30
isTalking: 0
suspicionLevel: 0
investigationThreshold: 30
alertNeighborsThreshold: 70
alertRange: 20
--- !u!195 &5770331367975928816
NavMeshAgent:
m_ObjectHideFlags: 0
@@ -625,7 +594,7 @@ Rigidbody:
m_Interpolate: 0
m_Constraints: 112
m_CollisionDetection: 0
--- !u!114 &1849114922688404578
--- !u!114 &8239948856752686218
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
@@ -634,9 +603,188 @@ MonoBehaviour:
m_GameObject: {fileID: 7522161431095319480}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: ea510cea4b9ed1547ae4725a2ded949a, type: 3}
m_Script: {fileID: 11500000, guid: 210b37cfe4a84a34a91d0a9e58856a60, type: 3}
m_Name:
m_EditorClassIdentifier: Assembly-CSharp::Hallucinate.UI.ChatBubble
textDisplay: {fileID: 707878100722238044}
canvasGroup: {fileID: 0}
bubbleRect: {fileID: 5600986009105034028}
m_EditorClassIdentifier: Assembly-CSharp::FieldOfView
viewAngle: 90
viewRadius: 20
obstacleLayerMask:
serializedVersion: 2
m_Bits: 128
targetLayerMask:
serializedVersion: 2
m_Bits: 256
canSeePlayer: 0
lastKnownPlayerPosition: {x: 0, y: 0, z: 0}
--- !u!114 &6469822191588635990
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 7522161431095319480}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: 35bba55c2a743d042ab1fff35e29db50, type: 3}
m_Name:
m_EditorClassIdentifier: Assembly-CSharp::AnimatorAI
forceGrounded: 1
movementBoost: 1.5
dampTime: 0.1
--- !u!136 &9027690817715396964
CapsuleCollider:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 7522161431095319480}
m_Material: {fileID: 0}
m_IncludeLayers:
serializedVersion: 2
m_Bits: 0
m_ExcludeLayers:
serializedVersion: 2
m_Bits: 0
m_LayerOverridePriority: 0
m_IsTrigger: 1
m_ProvidesContacts: 0
m_Enabled: 1
serializedVersion: 2
m_Radius: 0.4324358
m_Height: 1.8474874
m_Direction: 1
m_Center: {x: 0, y: 0.92911196, z: 0.11156863}
--- !u!114 &2252266660326254214
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 7522161431095319480}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: f56a83ea88140fa4f869bb2f7ffdb184, type: 3}
m_Name:
m_EditorClassIdentifier: Assembly-CSharp::Invector.vHealthController
openCloseEvents: 0
openCloseWindow: 1
selectedToolbar: 0
_isDead: 1
_currentHealth: 0
isImmortal: 0
fillHealthOnStart: 1
_maxHealth: 100
_healthRecovery: 0
_healthRecoveryDelay: 0
checkHealthEvents: []
_onStartReceiveDamage:
m_PersistentCalls:
m_Calls: []
_onReceiveDamage:
m_PersistentCalls:
m_Calls: []
_onDead:
m_PersistentCalls:
m_Calls: []
onChangeHealth:
m_PersistentCalls:
m_Calls: []
onResetHealth:
m_PersistentCalls:
m_Calls: []
--- !u!114 &4329414276869835007
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 7522161431095319480}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: 9d3efef3ad62cd548b0f85eb11858ed1, type: 3}
m_Name:
m_EditorClassIdentifier: Assembly-CSharp::Invector.vHitDamageParticle
openCloseEvents: 0
openCloseWindow: 1
selectedToolbar: 0
defaultDamageEffects:
- {fileID: 120346, guid: b8f2fe1ee1a01724cb72f5b0e6bd2eef, type: 3}
customDamageEffects: []
--- !u!1001 &7561534673732472622
PrefabInstance:
m_ObjectHideFlags: 0
serializedVersion: 2
m_Modification:
serializedVersion: 3
m_TransformParent: {fileID: 6442306242859885696}
m_Modifications:
- target: {fileID: 100132, guid: f32cd9f795c1282478d3bc3fbd8b2831, type: 3}
propertyPath: m_Name
value: V-bot@Highpoly
objectReference: {fileID: 0}
- target: {fileID: 400132, guid: f32cd9f795c1282478d3bc3fbd8b2831, type: 3}
propertyPath: m_LocalPosition.x
value: 0
objectReference: {fileID: 0}
- target: {fileID: 400132, guid: f32cd9f795c1282478d3bc3fbd8b2831, type: 3}
propertyPath: m_LocalPosition.y
value: 0
objectReference: {fileID: 0}
- target: {fileID: 400132, guid: f32cd9f795c1282478d3bc3fbd8b2831, type: 3}
propertyPath: m_LocalPosition.z
value: 0
objectReference: {fileID: 0}
- target: {fileID: 400132, guid: f32cd9f795c1282478d3bc3fbd8b2831, type: 3}
propertyPath: m_LocalRotation.w
value: 1
objectReference: {fileID: 0}
- target: {fileID: 400132, guid: f32cd9f795c1282478d3bc3fbd8b2831, type: 3}
propertyPath: m_LocalRotation.x
value: 0
objectReference: {fileID: 0}
- target: {fileID: 400132, guid: f32cd9f795c1282478d3bc3fbd8b2831, type: 3}
propertyPath: m_LocalRotation.y
value: 0
objectReference: {fileID: 0}
- target: {fileID: 400132, guid: f32cd9f795c1282478d3bc3fbd8b2831, type: 3}
propertyPath: m_LocalRotation.z
value: 0
objectReference: {fileID: 0}
- target: {fileID: 400132, guid: f32cd9f795c1282478d3bc3fbd8b2831, type: 3}
propertyPath: m_LocalEulerAnglesHint.x
value: 0
objectReference: {fileID: 0}
- target: {fileID: 400132, guid: f32cd9f795c1282478d3bc3fbd8b2831, type: 3}
propertyPath: m_LocalEulerAnglesHint.y
value: 0
objectReference: {fileID: 0}
- target: {fileID: 400132, guid: f32cd9f795c1282478d3bc3fbd8b2831, type: 3}
propertyPath: m_LocalEulerAnglesHint.z
value: 0
objectReference: {fileID: 0}
- target: {fileID: 9500000, guid: f32cd9f795c1282478d3bc3fbd8b2831, type: 3}
propertyPath: m_Avatar
value:
objectReference: {fileID: 9000000, guid: f32cd9f795c1282478d3bc3fbd8b2831, type: 3}
- target: {fileID: 9500000, guid: f32cd9f795c1282478d3bc3fbd8b2831, type: 3}
propertyPath: m_Controller
value:
objectReference: {fileID: 9100000, guid: 87885946b43e2d1449e1d5aa2042f8a8, type: 2}
- target: {fileID: 9500000, guid: f32cd9f795c1282478d3bc3fbd8b2831, type: 3}
propertyPath: m_UpdateMode
value: 0
objectReference: {fileID: 0}
- target: {fileID: 9500000, guid: f32cd9f795c1282478d3bc3fbd8b2831, type: 3}
propertyPath: m_AnimatePhysics
value: 0
objectReference: {fileID: 0}
m_RemovedComponents: []
m_RemovedGameObjects: []
m_AddedGameObjects: []
m_AddedComponents: []
m_SourcePrefab: {fileID: 100100000, guid: f32cd9f795c1282478d3bc3fbd8b2831, type: 3}
--- !u!4 &7561534673732080682 stripped
Transform:
m_CorrespondingSourceObject: {fileID: 400132, guid: f32cd9f795c1282478d3bc3fbd8b2831, type: 3}
m_PrefabInstance: {fileID: 7561534673732472622}
m_PrefabAsset: {fileID: 0}

View File

@@ -4197,6 +4197,11 @@ MonoBehaviour:
_spawnParticle: 1
_spawnStepMark: 1
_useTriggerEnter: 1
emitAINoise: 1
aiNoiseRange: 10
npcLayer:
serializedVersion: 2
m_Bits: 0
leftFootTrigger: {fileID: 11408204}
rightFootTrigger: {fileID: 11477308}
currentStep: {fileID: 0}

File diff suppressed because it is too large Load Diff

View File

@@ -27,12 +27,13 @@ Transform:
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 1178214796800900241}
serializedVersion: 2
m_LocalRotation: {x: -0, y: -0, z: -0, w: 1}
m_LocalPosition: {x: 0, y: 0.076, z: 0.124}
m_LocalScale: {x: 1, y: 1, z: 1}
m_ConstrainProportionsScale: 0
m_Children: []
m_Father: {fileID: 1804537267582578112}
m_RootOrder: 2
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
--- !u!135 &1178214796804358001
SphereCollider:
@@ -42,9 +43,17 @@ SphereCollider:
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 1178214796800900241}
m_Material: {fileID: 0}
m_IncludeLayers:
serializedVersion: 2
m_Bits: 0
m_ExcludeLayers:
serializedVersion: 2
m_Bits: 0
m_LayerOverridePriority: 0
m_IsTrigger: 1
m_ProvidesContacts: 0
m_Enabled: 1
serializedVersion: 2
serializedVersion: 3
m_Radius: 0.5
m_Center: {x: 0, y: 0, z: 0}
--- !u!114 &1178214796806424509
@@ -83,6 +92,7 @@ MonoBehaviour:
inputDelay: 0.1
playAnimationWhileHoldingButton: 1
doubleButtomTime: 0.25
canDoAction: 1
actionName: Action
actionTag: Action
disableOnStart: 0
@@ -96,6 +106,7 @@ MonoBehaviour:
customCameraState: Default
playAnimation:
crossFadeTransition: 0.25
animatorLayer: 0
endActionManualy: 0
endExitTimeAnimation: 0.8
animatorActionState: 0
@@ -238,6 +249,7 @@ MonoBehaviour:
m_PersistentCalls:
m_Calls:
- m_Target: {fileID: 1178214796800926091}
m_TargetAssemblyTypeName:
m_MethodName: SetActive
m_Mode: 6
m_Arguments:
@@ -252,6 +264,7 @@ MonoBehaviour:
m_PersistentCalls:
m_Calls:
- m_Target: {fileID: 1178214796800926091}
m_TargetAssemblyTypeName:
m_MethodName: SetActive
m_Mode: 6
m_Arguments:
@@ -262,6 +275,9 @@ MonoBehaviour:
m_StringArgument:
m_BoolArgument: 0
m_CallState: 2
OnCancelAction:
m_PersistentCalls:
m_Calls: []
targetEquipPoint:
twoHandWeapon: 1
weapon: {fileID: 1804537267582261728}
@@ -271,6 +287,7 @@ MonoBehaviour:
m_PersistentCalls:
m_Calls:
- m_Target: {fileID: 1178214796800926091}
m_TargetAssemblyTypeName:
m_MethodName: SetActive
m_Mode: 6
m_Arguments:
@@ -282,6 +299,7 @@ MonoBehaviour:
m_BoolArgument: 0
m_CallState: 2
- m_Target: {fileID: 1830727322889391579}
m_TargetAssemblyTypeName:
m_MethodName: set_enabled
m_Mode: 6
m_Arguments:
@@ -296,6 +314,7 @@ MonoBehaviour:
m_PersistentCalls:
m_Calls:
- m_Target: {fileID: 1830727322889391579}
m_TargetAssemblyTypeName:
m_MethodName: set_enabled
m_Mode: 6
m_Arguments:
@@ -344,6 +363,7 @@ MonoBehaviour:
m_PersistentCalls:
m_Calls:
- m_Target: {fileID: 8342309185592125983}
m_TargetAssemblyTypeName:
m_MethodName: SetActive
m_Mode: 6
m_Arguments:
@@ -355,6 +375,7 @@ MonoBehaviour:
m_BoolArgument: 0
m_CallState: 2
- m_Target: {fileID: 1770855500603019112}
m_TargetAssemblyTypeName:
m_MethodName: InstantiateObject
m_Mode: 1
m_Arguments:
@@ -371,6 +392,7 @@ MonoBehaviour:
m_PersistentCalls:
m_Calls:
- m_Target: {fileID: 8342309185592125983}
m_TargetAssemblyTypeName:
m_MethodName: SetActive
m_Mode: 6
m_Arguments:
@@ -387,6 +409,7 @@ MonoBehaviour:
m_PersistentCalls:
m_Calls:
- m_Target: {fileID: 0}
m_TargetAssemblyTypeName:
m_MethodName: SetActive
m_Mode: 6
m_Arguments:
@@ -425,9 +448,9 @@ RectTransform:
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: 1178214796814376033}
m_RootOrder: 2
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
m_AnchorMin: {x: 0, y: 0.5}
m_AnchorMax: {x: 0, y: 0.5}
@@ -457,6 +480,7 @@ MonoBehaviour:
m_Material: {fileID: 2100000, guid: a33be1e1efa8ca14286b77d062313a4e, type: 2}
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:
@@ -502,10 +526,10 @@ RectTransform:
m_LocalRotation: {x: -0, y: -0, z: -0.2619354, w: 0.9650854}
m_LocalPosition: {x: 0, y: 0, z: 0}
m_LocalScale: {x: 0.0013280489, y: 0.0013280488, z: 0.0013280488}
m_ConstrainProportionsScale: 0
m_Children:
- {fileID: 1178214796814376033}
m_Father: {fileID: 1804537267582578112}
m_RootOrder: 1
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
m_AnchorMin: {x: 0, y: 0}
m_AnchorMax: {x: 0, y: 0}
@@ -529,7 +553,9 @@ Canvas:
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
@@ -555,6 +581,7 @@ MonoBehaviour:
m_FallbackScreenDPI: 96
m_DefaultSpriteDPI: 96
m_DynamicPixelsPerUnit: 1
m_PresetInfoIsWorld: 0
--- !u!114 &1178214796806402205
MonoBehaviour:
m_ObjectHideFlags: 0
@@ -636,9 +663,9 @@ RectTransform:
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: 1178214796814376033}
m_RootOrder: 0
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
m_AnchorMin: {x: 0, y: 0}
m_AnchorMax: {x: 1, y: 1}
@@ -668,6 +695,7 @@ MonoBehaviour:
m_Material: {fileID: 2100000, guid: a33be1e1efa8ca14286b77d062313a4e, type: 2}
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:
@@ -715,12 +743,12 @@ RectTransform:
m_LocalRotation: {x: 0, y: -1, z: 0, w: 0.00000041723246}
m_LocalPosition: {x: 0, y: 0, z: 0}
m_LocalScale: {x: 1, y: 1, z: 1}
m_ConstrainProportionsScale: 0
m_Children:
- {fileID: 1178214796814260335}
- {fileID: 1178214796814260911}
- {fileID: 1178214796814384871}
m_Father: {fileID: 1178214796814369163}
m_RootOrder: 0
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
m_AnchorMin: {x: 0, y: 0}
m_AnchorMax: {x: 1, y: 1}
@@ -750,6 +778,7 @@ MonoBehaviour:
m_Material: {fileID: 2100000, guid: a33be1e1efa8ca14286b77d062313a4e, type: 2}
m_Color: {r: 0, g: 0, b: 0, a: 0.627451}
m_RaycastTarget: 1
m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0}
m_Maskable: 1
m_OnCullStateChanged:
m_PersistentCalls:
@@ -780,6 +809,7 @@ MonoBehaviour:
m_PersistentCalls:
m_Calls:
- m_Target: {fileID: 1178214796800906329}
m_TargetAssemblyTypeName:
m_MethodName: SetActive
m_Mode: 6
m_Arguments:
@@ -791,6 +821,7 @@ MonoBehaviour:
m_BoolArgument: 0
m_CallState: 2
- m_Target: {fileID: 1178214796801013577}
m_TargetAssemblyTypeName:
m_MethodName: SetActive
m_Mode: 6
m_Arguments:
@@ -808,6 +839,7 @@ MonoBehaviour:
m_PersistentCalls:
m_Calls:
- m_Target: {fileID: 1178214796800906329}
m_TargetAssemblyTypeName:
m_MethodName: SetActive
m_Mode: 6
m_Arguments:
@@ -819,6 +851,7 @@ MonoBehaviour:
m_BoolArgument: 1
m_CallState: 2
- m_Target: {fileID: 1178214796801013577}
m_TargetAssemblyTypeName:
m_MethodName: SetActive
m_Mode: 6
m_Arguments:
@@ -857,9 +890,9 @@ RectTransform:
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: 1178214796814376033}
m_RootOrder: 1
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
m_AnchorMin: {x: 0, y: 0.5}
m_AnchorMax: {x: 0, y: 0.5}
@@ -889,6 +922,7 @@ MonoBehaviour:
m_Material: {fileID: 2100000, guid: a33be1e1efa8ca14286b77d062313a4e, type: 2}
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:
@@ -903,40 +937,12 @@ MonoBehaviour:
m_FillOrigin: 0
m_UseSpriteMesh: 0
m_PixelsPerUnitMultiplier: 1
--- !u!54 &5753856815630206312
Rigidbody:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 1804537267582261728}
serializedVersion: 2
m_Mass: 1
m_Drag: 0
m_AngularDrag: 0.05
m_UseGravity: 1
m_IsKinematic: 0
m_Interpolate: 0
m_Constraints: 0
m_CollisionDetection: 0
--- !u!65 &6470183431665213616
BoxCollider:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 1804537267582261728}
m_Material: {fileID: 13400000, guid: c77abc477d4de2a4197e1f08cebc364e, type: 2}
m_IsTrigger: 0
m_Enabled: 1
serializedVersion: 2
m_Size: {x: 0.11955705, y: 0.17964685, z: 0.85108244}
m_Center: {x: -0.0013062507, y: 0.054864466, z: 0.13716096}
--- !u!1001 &1804537267582149120
PrefabInstance:
m_ObjectHideFlags: 0
serializedVersion: 2
m_Modification:
serializedVersion: 3
m_TransformParent: {fileID: 0}
m_Modifications:
- target: {fileID: 130016, guid: 95173cd142940384c81611787936f938, type: 3}
@@ -991,20 +997,32 @@ PrefabInstance:
propertyPath: m_LocalEulerAnglesHint.z
value: 0
objectReference: {fileID: 0}
- target: {fileID: 11429992, guid: 95173cd142940384c81611787936f938, type: 3}
propertyPath: selectedToolbar
value: 2
objectReference: {fileID: 0}
m_RemovedComponents:
- {fileID: 114382262437889658, guid: 95173cd142940384c81611787936f938, type: 3}
- {fileID: 3978637271864031997, guid: 95173cd142940384c81611787936f938, type: 3}
m_RemovedGameObjects: []
m_AddedGameObjects:
- targetCorrespondingSourceObject: {fileID: 430016, guid: 95173cd142940384c81611787936f938, type: 3}
insertIndex: -1
addedObject: {fileID: 1178214796814369163}
- targetCorrespondingSourceObject: {fileID: 430016, guid: 95173cd142940384c81611787936f938, type: 3}
insertIndex: -1
addedObject: {fileID: 1178214796800604863}
m_AddedComponents:
- targetCorrespondingSourceObject: {fileID: 130016, guid: 95173cd142940384c81611787936f938, type: 3}
insertIndex: -1
addedObject: {fileID: 5753856815630206312}
- targetCorrespondingSourceObject: {fileID: 130016, guid: 95173cd142940384c81611787936f938, type: 3}
insertIndex: -1
addedObject: {fileID: 6470183431665213616}
m_SourcePrefab: {fileID: 100100000, guid: 95173cd142940384c81611787936f938, type: 3}
--- !u!4 &1804537267582578112 stripped
Transform:
m_CorrespondingSourceObject: {fileID: 430016, guid: 95173cd142940384c81611787936f938,
type: 3}
m_PrefabInstance: {fileID: 1804537267582149120}
m_PrefabAsset: {fileID: 0}
--- !u!114 &1770855500603019112 stripped
MonoBehaviour:
m_CorrespondingSourceObject: {fileID: 114937068035861864, guid: 95173cd142940384c81611787936f938,
type: 3}
m_CorrespondingSourceObject: {fileID: 114937068035861864, guid: 95173cd142940384c81611787936f938, type: 3}
m_PrefabInstance: {fileID: 1804537267582149120}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 0}
@@ -1013,15 +1031,66 @@ MonoBehaviour:
m_Script: {fileID: 11500000, guid: de8c6f6fb33efc547afa68f68e220d74, type: 3}
m_Name:
m_EditorClassIdentifier:
--- !u!1 &8342309185592125983 stripped
GameObject:
m_CorrespondingSourceObject: {fileID: 7696325297335060511, guid: 95173cd142940384c81611787936f938,
type: 3}
m_PrefabInstance: {fileID: 1804537267582149120}
m_PrefabAsset: {fileID: 0}
--- !u!1 &1804537267582261728 stripped
GameObject:
m_CorrespondingSourceObject: {fileID: 130016, guid: 95173cd142940384c81611787936f938,
type: 3}
m_CorrespondingSourceObject: {fileID: 130016, guid: 95173cd142940384c81611787936f938, type: 3}
m_PrefabInstance: {fileID: 1804537267582149120}
m_PrefabAsset: {fileID: 0}
--- !u!54 &5753856815630206312
Rigidbody:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 1804537267582261728}
serializedVersion: 5
m_Mass: 1
m_LinearDamping: 0
m_AngularDamping: 0.05
m_CenterOfMass: {x: 0, y: 0, z: 0}
m_InertiaTensor: {x: 1, y: 1, z: 1}
m_InertiaRotation: {x: 0, y: 0, z: 0, w: 1}
m_IncludeLayers:
serializedVersion: 2
m_Bits: 0
m_ExcludeLayers:
serializedVersion: 2
m_Bits: 0
m_ImplicitCom: 1
m_ImplicitTensor: 1
m_UseGravity: 1
m_IsKinematic: 0
m_Interpolate: 0
m_Constraints: 0
m_CollisionDetection: 0
--- !u!65 &6470183431665213616
BoxCollider:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 1804537267582261728}
m_Material: {fileID: 13400000, guid: c77abc477d4de2a4197e1f08cebc364e, type: 2}
m_IncludeLayers:
serializedVersion: 2
m_Bits: 0
m_ExcludeLayers:
serializedVersion: 2
m_Bits: 0
m_LayerOverridePriority: 0
m_IsTrigger: 0
m_ProvidesContacts: 0
m_Enabled: 1
serializedVersion: 3
m_Size: {x: 0.11955705, y: 0.17964685, z: 0.85108244}
m_Center: {x: -0.0013062507, y: 0.054864466, z: 0.13716096}
--- !u!4 &1804537267582578112 stripped
Transform:
m_CorrespondingSourceObject: {fileID: 430016, guid: 95173cd142940384c81611787936f938, type: 3}
m_PrefabInstance: {fileID: 1804537267582149120}
m_PrefabAsset: {fileID: 0}
--- !u!1 &8342309185592125983 stripped
GameObject:
m_CorrespondingSourceObject: {fileID: 7696325297335060511, guid: 95173cd142940384c81611787936f938, type: 3}
m_PrefabInstance: {fileID: 1804537267582149120}
m_PrefabAsset: {fileID: 0}

View File

@@ -1,34 +1,5 @@
%YAML 1.1
%TAG !u! tag:unity3d.com,2011:
--- !u!54 &4054124028099797856
Rigidbody:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 4881589711078705830}
serializedVersion: 2
m_Mass: 1
m_Drag: 0
m_AngularDrag: 0.05
m_UseGravity: 1
m_IsKinematic: 0
m_Interpolate: 0
m_Constraints: 0
m_CollisionDetection: 0
--- !u!65 &7941838468431302446
BoxCollider:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 4881589711078705830}
m_Material: {fileID: 13400000, guid: c77abc477d4de2a4197e1f08cebc364e, type: 2}
m_IsTrigger: 0
m_Enabled: 1
serializedVersion: 2
m_Size: {x: 0.12160286, y: 0.2082051, z: 0.32264447}
m_Center: {x: 0.021650568, y: 0.006185949, z: 0.103613794}
--- !u!1 &7903731139681717537
GameObject:
m_ObjectHideFlags: 0
@@ -55,12 +26,13 @@ Transform:
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 7903731139681717537}
serializedVersion: 2
m_LocalRotation: {x: -0, y: -0, z: -0, w: 1}
m_LocalPosition: {x: 0, y: 0.056, z: 0.087}
m_LocalScale: {x: 1, y: 1, z: 1}
m_ConstrainProportionsScale: 0
m_Children: []
m_Father: {fileID: 4881589711078555334}
m_RootOrder: 2
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
--- !u!135 &7903731139668604497
SphereCollider:
@@ -70,9 +42,17 @@ SphereCollider:
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 7903731139681717537}
m_Material: {fileID: 0}
m_IncludeLayers:
serializedVersion: 2
m_Bits: 0
m_ExcludeLayers:
serializedVersion: 2
m_Bits: 0
m_LayerOverridePriority: 0
m_IsTrigger: 1
m_ProvidesContacts: 0
m_Enabled: 1
serializedVersion: 2
serializedVersion: 3
m_Radius: 0.5
m_Center: {x: 0, y: 0, z: 0}
--- !u!114 &7903731139670676279
@@ -111,6 +91,7 @@ MonoBehaviour:
inputDelay: 0.1
playAnimationWhileHoldingButton: 1
doubleButtomTime: 0.25
canDoAction: 1
actionName: Action
actionTag: Action
disableOnStart: 0
@@ -124,6 +105,7 @@ MonoBehaviour:
customCameraState: Default
playAnimation:
crossFadeTransition: 0.25
animatorLayer: 0
endActionManualy: 0
endExitTimeAnimation: 0.8
animatorActionState: 0
@@ -266,6 +248,7 @@ MonoBehaviour:
m_PersistentCalls:
m_Calls:
- m_Target: {fileID: 7903731139681943551}
m_TargetAssemblyTypeName:
m_MethodName: SetActive
m_Mode: 6
m_Arguments:
@@ -280,6 +263,7 @@ MonoBehaviour:
m_PersistentCalls:
m_Calls:
- m_Target: {fileID: 7903731139681943551}
m_TargetAssemblyTypeName:
m_MethodName: SetActive
m_Mode: 6
m_Arguments:
@@ -290,6 +274,9 @@ MonoBehaviour:
m_StringArgument:
m_BoolArgument: 0
m_CallState: 2
OnCancelAction:
m_PersistentCalls:
m_Calls: []
targetEquipPoint:
twoHandWeapon: 1
weapon: {fileID: 4881589711078705830}
@@ -299,6 +286,7 @@ MonoBehaviour:
m_PersistentCalls:
m_Calls:
- m_Target: {fileID: 7903731139681943551}
m_TargetAssemblyTypeName:
m_MethodName: SetActive
m_Mode: 6
m_Arguments:
@@ -356,12 +344,12 @@ RectTransform:
m_LocalRotation: {x: 0, y: -1, z: 0, w: 0.00000041723246}
m_LocalPosition: {x: 0, y: 0, z: 0}
m_LocalScale: {x: 1, y: 1, z: 1}
m_ConstrainProportionsScale: 0
m_Children:
- {fileID: 7903731139695343497}
- {fileID: 7903731139695326533}
- {fileID: 7903731139695282545}
m_Father: {fileID: 7903731139695313889}
m_RootOrder: 0
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
m_AnchorMin: {x: 0, y: 0}
m_AnchorMax: {x: 1, y: 1}
@@ -391,6 +379,7 @@ MonoBehaviour:
m_Material: {fileID: 2100000, guid: a33be1e1efa8ca14286b77d062313a4e, type: 2}
m_Color: {r: 0, g: 0, b: 0, a: 0.627451}
m_RaycastTarget: 1
m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0}
m_Maskable: 1
m_OnCullStateChanged:
m_PersistentCalls:
@@ -421,6 +410,7 @@ MonoBehaviour:
m_PersistentCalls:
m_Calls:
- m_Target: {fileID: 7903731139681958997}
m_TargetAssemblyTypeName:
m_MethodName: SetActive
m_Mode: 6
m_Arguments:
@@ -432,6 +422,7 @@ MonoBehaviour:
m_BoolArgument: 0
m_CallState: 2
- m_Target: {fileID: 7903731139681936937}
m_TargetAssemblyTypeName:
m_MethodName: SetActive
m_Mode: 6
m_Arguments:
@@ -449,6 +440,7 @@ MonoBehaviour:
m_PersistentCalls:
m_Calls:
- m_Target: {fileID: 7903731139681958997}
m_TargetAssemblyTypeName:
m_MethodName: SetActive
m_Mode: 6
m_Arguments:
@@ -460,6 +452,7 @@ MonoBehaviour:
m_BoolArgument: 1
m_CallState: 2
- m_Target: {fileID: 7903731139681936937}
m_TargetAssemblyTypeName:
m_MethodName: SetActive
m_Mode: 6
m_Arguments:
@@ -498,9 +491,9 @@ RectTransform:
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: 7903731139695298027}
m_RootOrder: 0
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
m_AnchorMin: {x: 0, y: 0}
m_AnchorMax: {x: 1, y: 1}
@@ -530,6 +523,7 @@ MonoBehaviour:
m_Material: {fileID: 2100000, guid: a33be1e1efa8ca14286b77d062313a4e, type: 2}
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:
@@ -576,9 +570,9 @@ RectTransform:
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: 7903731139695298027}
m_RootOrder: 1
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
m_AnchorMin: {x: 0, y: 0.5}
m_AnchorMax: {x: 0, y: 0.5}
@@ -608,6 +602,7 @@ MonoBehaviour:
m_Material: {fileID: 2100000, guid: a33be1e1efa8ca14286b77d062313a4e, type: 2}
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:
@@ -653,10 +648,10 @@ RectTransform:
m_LocalRotation: {x: -0, y: -0, z: -0, w: 1}
m_LocalPosition: {x: 0, y: 0, z: 0}
m_LocalScale: {x: 0.0013280489, y: 0.0013280488, z: 0.0013280488}
m_ConstrainProportionsScale: 0
m_Children:
- {fileID: 7903731139695298027}
m_Father: {fileID: 4881589711078555334}
m_RootOrder: 1
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
m_AnchorMin: {x: 0, y: 0}
m_AnchorMax: {x: 0, y: 0}
@@ -680,7 +675,9 @@ Canvas:
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
@@ -706,6 +703,7 @@ MonoBehaviour:
m_FallbackScreenDPI: 96
m_DefaultSpriteDPI: 96
m_DynamicPixelsPerUnit: 1
m_PresetInfoIsWorld: 0
--- !u!114 &7903731139670638581
MonoBehaviour:
m_ObjectHideFlags: 0
@@ -787,9 +785,9 @@ RectTransform:
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: 7903731139695298027}
m_RootOrder: 2
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
m_AnchorMin: {x: 0, y: 0.5}
m_AnchorMax: {x: 0, y: 0.5}
@@ -819,6 +817,7 @@ MonoBehaviour:
m_Material: {fileID: 2100000, guid: a33be1e1efa8ca14286b77d062313a4e, type: 2}
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:
@@ -838,6 +837,7 @@ PrefabInstance:
m_ObjectHideFlags: 0
serializedVersion: 2
m_Modification:
serializedVersion: 3
m_TransformParent: {fileID: 0}
m_Modifications:
- target: {fileID: 170828, guid: a0ef3c70b27799d409935f45a6537bb0, type: 3}
@@ -892,19 +892,88 @@ PrefabInstance:
propertyPath: m_LocalEulerAnglesHint.z
value: 0
objectReference: {fileID: 0}
- target: {fileID: 11470846, guid: a0ef3c70b27799d409935f45a6537bb0, type: 3}
propertyPath: hitLayer.m_Bits
value: 4294967295
objectReference: {fileID: 0}
- target: {fileID: 11470846, guid: a0ef3c70b27799d409935f45a6537bb0, type: 3}
propertyPath: selectedToolbar
value: 2
objectReference: {fileID: 0}
m_RemovedComponents:
- {fileID: 114790386807353386, guid: a0ef3c70b27799d409935f45a6537bb0, type: 3}
- {fileID: 114554122684540132, guid: a0ef3c70b27799d409935f45a6537bb0, type: 3}
m_RemovedGameObjects: []
m_AddedGameObjects:
- targetCorrespondingSourceObject: {fileID: 470828, guid: a0ef3c70b27799d409935f45a6537bb0, type: 3}
insertIndex: -1
addedObject: {fileID: 7903731139695313889}
- targetCorrespondingSourceObject: {fileID: 470828, guid: a0ef3c70b27799d409935f45a6537bb0, type: 3}
insertIndex: -1
addedObject: {fileID: 7903731139681598825}
m_AddedComponents:
- targetCorrespondingSourceObject: {fileID: 170828, guid: a0ef3c70b27799d409935f45a6537bb0, type: 3}
insertIndex: -1
addedObject: {fileID: 4054124028099797856}
- targetCorrespondingSourceObject: {fileID: 170828, guid: a0ef3c70b27799d409935f45a6537bb0, type: 3}
insertIndex: -1
addedObject: {fileID: 7941838468431302446}
m_SourcePrefab: {fileID: 100100000, guid: a0ef3c70b27799d409935f45a6537bb0, type: 3}
--- !u!4 &4881589711078555334 stripped
Transform:
m_CorrespondingSourceObject: {fileID: 470828, guid: a0ef3c70b27799d409935f45a6537bb0,
type: 3}
m_CorrespondingSourceObject: {fileID: 470828, guid: a0ef3c70b27799d409935f45a6537bb0, type: 3}
m_PrefabInstance: {fileID: 4881589711078871530}
m_PrefabAsset: {fileID: 0}
--- !u!1 &4881589711078705830 stripped
GameObject:
m_CorrespondingSourceObject: {fileID: 170828, guid: a0ef3c70b27799d409935f45a6537bb0,
type: 3}
m_CorrespondingSourceObject: {fileID: 170828, guid: a0ef3c70b27799d409935f45a6537bb0, type: 3}
m_PrefabInstance: {fileID: 4881589711078871530}
m_PrefabAsset: {fileID: 0}
--- !u!54 &4054124028099797856
Rigidbody:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 4881589711078705830}
serializedVersion: 5
m_Mass: 1
m_LinearDamping: 0
m_AngularDamping: 0.05
m_CenterOfMass: {x: 0, y: 0, z: 0}
m_InertiaTensor: {x: 1, y: 1, z: 1}
m_InertiaRotation: {x: 0, y: 0, z: 0, w: 1}
m_IncludeLayers:
serializedVersion: 2
m_Bits: 0
m_ExcludeLayers:
serializedVersion: 2
m_Bits: 0
m_ImplicitCom: 1
m_ImplicitTensor: 1
m_UseGravity: 1
m_IsKinematic: 0
m_Interpolate: 0
m_Constraints: 0
m_CollisionDetection: 0
--- !u!65 &7941838468431302446
BoxCollider:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 4881589711078705830}
m_Material: {fileID: 13400000, guid: c77abc477d4de2a4197e1f08cebc364e, type: 2}
m_IncludeLayers:
serializedVersion: 2
m_Bits: 0
m_ExcludeLayers:
serializedVersion: 2
m_Bits: 0
m_LayerOverridePriority: 0
m_IsTrigger: 0
m_ProvidesContacts: 0
m_Enabled: 1
serializedVersion: 3
m_Size: {x: 0.12160286, y: 0.2082051, z: 0.32264447}
m_Center: {x: 0.021650568, y: 0.006185949, z: 0.103613794}

View File

@@ -25,12 +25,13 @@ Transform:
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 105388}
serializedVersion: 2
m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
m_LocalPosition: {x: 0, y: 0.049999997, z: 0}
m_LocalScale: {x: 1, y: 1, z: 1}
m_ConstrainProportionsScale: 0
m_Children: []
m_Father: {fileID: 422732}
m_RootOrder: 0
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
--- !u!33 &3302298
MeshFilter:
@@ -51,10 +52,17 @@ MeshRenderer:
m_CastShadows: 1
m_ReceiveShadows: 1
m_DynamicOccludee: 1
m_StaticShadowCaster: 0
m_MotionVectors: 1
m_LightProbeUsage: 1
m_ReflectionProbeUsage: 1
m_RayTracingMode: 2
m_RayTraceProcedural: 0
m_RayTracingAccelStructBuildFlagsOverride: 0
m_RayTracingAccelStructBuildFlags: 1
m_SmallMeshCulling: 1
m_ForceMeshLod: -1
m_MeshLodSelectionBias: 0
m_RenderingLayerMask: 1
m_RendererPriority: 0
m_Materials:
@@ -76,9 +84,12 @@ MeshRenderer:
m_AutoUVMaxDistance: 0.5
m_AutoUVMaxAngle: 89
m_LightmapParameters: {fileID: 0}
m_GlobalIlluminationMeshLod: 0
m_SortingLayerID: 0
m_SortingLayer: 0
m_SortingOrder: 0
m_MaskInteraction: 0
m_AdditionalVertexStreams: {fileID: 0}
--- !u!1 &115092
GameObject:
m_ObjectHideFlags: 0
@@ -105,16 +116,17 @@ Transform:
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 115092}
serializedVersion: 2
m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
m_LocalPosition: {x: 0.59600043, y: 0.23841888, z: -5.476}
m_LocalScale: {x: 1, y: 1, z: 1}
m_ConstrainProportionsScale: 0
m_Children:
- {fileID: 422732}
- {fileID: 480898}
- {fileID: 488976}
- {fileID: 22488062}
m_Father: {fileID: 0}
m_RootOrder: 0
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
--- !u!136 &13688376
CapsuleCollider:
@@ -124,8 +136,17 @@ CapsuleCollider:
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 115092}
m_Material: {fileID: 0}
m_IncludeLayers:
serializedVersion: 2
m_Bits: 0
m_ExcludeLayers:
serializedVersion: 2
m_Bits: 0
m_LayerOverridePriority: 0
m_IsTrigger: 1
m_ProvidesContacts: 0
m_Enabled: 1
serializedVersion: 2
m_Radius: 0.35
m_Height: 1.08
m_Direction: 1
@@ -143,12 +164,13 @@ MonoBehaviour:
m_Name:
m_EditorClassIdentifier:
openCloseEvents: 0
openCloseWindow: 0
selectedToolbar: 0
openCloseWindow: 1
selectedToolbar: 4
inputType: 0
actionInput:
useInput: 1
isAxisInUse: 0
isUnityInput: 0
keyboard: E
keyboardAxis: 0
joystick: A
@@ -165,6 +187,7 @@ MonoBehaviour:
inputDelay: 0.1
playAnimationWhileHoldingButton: 1
doubleButtomTime: 0.25
canDoAction: 1
actionName: Action
actionTag: Action
disableOnStart: 0
@@ -177,11 +200,12 @@ MonoBehaviour:
destroyDelay: 0
customCameraState: Default
playAnimation:
crossFadeTransition: 0.25
animatorLayer: 0
endActionManualy: 0
endExitTimeAnimation: 0.8
animatorActionState: 0
resetAnimatorActionState: 1
useAnimatorMatchTarget: 1
matchTarget: {fileID: 0}
avatarTarget: 0
useLocalX: 0
@@ -285,10 +309,6 @@ MonoBehaviour:
m_PreInfinity: 2
m_PostInfinity: 2
m_RotationOrder: 4
matchPos: {x: 0, y: 0, z: 0}
matchRot: 0
startMatchTarget: 0
endMatchTarget: 0
onPressActionDelay: 0
OnPressActionInput:
m_PersistentCalls:
@@ -315,6 +335,7 @@ MonoBehaviour:
m_PersistentCalls:
m_Calls:
- m_Target: {fileID: 128644}
m_TargetAssemblyTypeName:
m_MethodName: SetActive
m_Mode: 6
m_Arguments:
@@ -332,6 +353,7 @@ MonoBehaviour:
m_PersistentCalls:
m_Calls:
- m_Target: {fileID: 128644}
m_TargetAssemblyTypeName:
m_MethodName: SetActive
m_Mode: 6
m_Arguments:
@@ -348,6 +370,9 @@ MonoBehaviour:
OnInvalidate:
m_PersistentCalls:
m_Calls: []
OnCancelAction:
m_PersistentCalls:
m_Calls: []
itemListData: {fileID: 11400000, guid: 1493f9d9326e8014494b8cb04de38f25, type: 2}
onCollectDelay: 0
textDelay: 0.25
@@ -400,12 +425,13 @@ Transform:
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 121230}
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: 422732}
m_RootOrder: 1
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
--- !u!33 &3398494
MeshFilter:
@@ -426,10 +452,17 @@ MeshRenderer:
m_CastShadows: 1
m_ReceiveShadows: 1
m_DynamicOccludee: 1
m_StaticShadowCaster: 0
m_MotionVectors: 1
m_LightProbeUsage: 1
m_ReflectionProbeUsage: 1
m_RayTracingMode: 2
m_RayTraceProcedural: 0
m_RayTracingAccelStructBuildFlagsOverride: 0
m_RayTracingAccelStructBuildFlags: 1
m_SmallMeshCulling: 1
m_ForceMeshLod: -1
m_MeshLodSelectionBias: 0
m_RenderingLayerMask: 1
m_RendererPriority: 0
m_Materials:
@@ -451,9 +484,12 @@ MeshRenderer:
m_AutoUVMaxDistance: 0.5
m_AutoUVMaxAngle: 89
m_LightmapParameters: {fileID: 0}
m_GlobalIlluminationMeshLod: 0
m_SortingLayerID: 0
m_SortingLayer: 0
m_SortingOrder: 0
m_MaskInteraction: 0
m_AdditionalVertexStreams: {fileID: 0}
--- !u!1 &127422
GameObject:
m_ObjectHideFlags: 0
@@ -479,12 +515,13 @@ Transform:
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 127422}
serializedVersion: 2
m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
m_LocalPosition: {x: 0, y: 0.049999997, z: 0}
m_LocalScale: {x: 1, y: 1, z: 1}
m_ConstrainProportionsScale: 0
m_Children: []
m_Father: {fileID: 488976}
m_RootOrder: 0
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
--- !u!33 &3382610
MeshFilter:
@@ -505,10 +542,17 @@ MeshRenderer:
m_CastShadows: 1
m_ReceiveShadows: 1
m_DynamicOccludee: 1
m_StaticShadowCaster: 0
m_MotionVectors: 1
m_LightProbeUsage: 1
m_ReflectionProbeUsage: 1
m_RayTracingMode: 2
m_RayTraceProcedural: 0
m_RayTracingAccelStructBuildFlagsOverride: 0
m_RayTracingAccelStructBuildFlags: 1
m_SmallMeshCulling: 1
m_ForceMeshLod: -1
m_MeshLodSelectionBias: 0
m_RenderingLayerMask: 1
m_RendererPriority: 0
m_Materials:
@@ -530,9 +574,12 @@ MeshRenderer:
m_AutoUVMaxDistance: 0.5
m_AutoUVMaxAngle: 89
m_LightmapParameters: {fileID: 0}
m_GlobalIlluminationMeshLod: 0
m_SortingLayerID: 0
m_SortingLayer: 0
m_SortingOrder: 0
m_MaskInteraction: 0
m_AdditionalVertexStreams: {fileID: 0}
--- !u!1 &128644
GameObject:
m_ObjectHideFlags: 0
@@ -563,10 +610,10 @@ RectTransform:
m_LocalRotation: {x: 0, y: -1.4210853e-14, z: -0.0000003258414, w: -1}
m_LocalPosition: {x: 0, y: 0, z: 0}
m_LocalScale: {x: 0.000713446, y: 0.00071344554, z: 0.00071344554}
m_ConstrainProportionsScale: 0
m_Children:
- {fileID: 22482840}
m_Father: {fileID: 479482}
m_RootOrder: 3
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
m_AnchorMin: {x: 0, y: 0}
m_AnchorMax: {x: 0, y: 0}
@@ -590,7 +637,9 @@ Canvas:
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
@@ -616,6 +665,7 @@ MonoBehaviour:
m_FallbackScreenDPI: 96
m_DefaultSpriteDPI: 96
m_DynamicPixelsPerUnit: 1
m_PresetInfoIsWorld: 0
--- !u!114 &11473088
MonoBehaviour:
m_ObjectHideFlags: 0
@@ -673,14 +723,15 @@ Transform:
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 128768}
serializedVersion: 2
m_LocalRotation: {x: 0, y: -0.707106, z: 0, w: 0.7071076}
m_LocalPosition: {x: -0.009500027, y: 0.51312, z: 0.013957024}
m_LocalScale: {x: 2.086288, y: 2.44284, z: 2.0862887}
m_ConstrainProportionsScale: 0
m_Children:
- {fileID: 492078}
- {fileID: 474350}
m_Father: {fileID: 479482}
m_RootOrder: 1
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
--- !u!1 &131120
GameObject:
@@ -705,14 +756,15 @@ Transform:
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 131120}
serializedVersion: 2
m_LocalRotation: {x: 0, y: -0.707106, z: 0, w: 0.7071076}
m_LocalPosition: {x: -0.00950098, y: 0.51312, z: -0.15503883}
m_LocalScale: {x: 2.086288, y: 2.44284, z: 2.0862887}
m_ConstrainProportionsScale: 0
m_Children:
- {fileID: 448248}
- {fileID: 450808}
m_Father: {fileID: 479482}
m_RootOrder: 0
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
--- !u!1 &139748
GameObject:
@@ -739,12 +791,13 @@ Transform:
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 139748}
serializedVersion: 2
m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
m_LocalPosition: {x: 0, y: 0.049999997, z: 0}
m_LocalScale: {x: 1, y: 1, z: 1}
m_ConstrainProportionsScale: 0
m_Children: []
m_Father: {fileID: 480898}
m_RootOrder: 0
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
--- !u!33 &3373558
MeshFilter:
@@ -765,10 +818,17 @@ MeshRenderer:
m_CastShadows: 1
m_ReceiveShadows: 1
m_DynamicOccludee: 1
m_StaticShadowCaster: 0
m_MotionVectors: 1
m_LightProbeUsage: 1
m_ReflectionProbeUsage: 1
m_RayTracingMode: 2
m_RayTraceProcedural: 0
m_RayTracingAccelStructBuildFlagsOverride: 0
m_RayTracingAccelStructBuildFlags: 1
m_SmallMeshCulling: 1
m_ForceMeshLod: -1
m_MeshLodSelectionBias: 0
m_RenderingLayerMask: 1
m_RendererPriority: 0
m_Materials:
@@ -790,9 +850,12 @@ MeshRenderer:
m_AutoUVMaxDistance: 0.5
m_AutoUVMaxAngle: 89
m_LightmapParameters: {fileID: 0}
m_GlobalIlluminationMeshLod: 0
m_SortingLayerID: 0
m_SortingLayer: 0
m_SortingOrder: 0
m_MaskInteraction: 0
m_AdditionalVertexStreams: {fileID: 0}
--- !u!1 &152304
GameObject:
m_ObjectHideFlags: 0
@@ -818,12 +881,13 @@ Transform:
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 152304}
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: 488976}
m_RootOrder: 1
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
--- !u!33 &3344262
MeshFilter:
@@ -844,10 +908,17 @@ MeshRenderer:
m_CastShadows: 1
m_ReceiveShadows: 1
m_DynamicOccludee: 1
m_StaticShadowCaster: 0
m_MotionVectors: 1
m_LightProbeUsage: 1
m_ReflectionProbeUsage: 1
m_RayTracingMode: 2
m_RayTraceProcedural: 0
m_RayTracingAccelStructBuildFlagsOverride: 0
m_RayTracingAccelStructBuildFlags: 1
m_SmallMeshCulling: 1
m_ForceMeshLod: -1
m_MeshLodSelectionBias: 0
m_RenderingLayerMask: 1
m_RendererPriority: 0
m_Materials:
@@ -869,9 +940,12 @@ MeshRenderer:
m_AutoUVMaxDistance: 0.5
m_AutoUVMaxAngle: 89
m_LightmapParameters: {fileID: 0}
m_GlobalIlluminationMeshLod: 0
m_SortingLayerID: 0
m_SortingLayer: 0
m_SortingOrder: 0
m_MaskInteraction: 0
m_AdditionalVertexStreams: {fileID: 0}
--- !u!1 &154240
GameObject:
m_ObjectHideFlags: 0
@@ -900,9 +974,9 @@ RectTransform:
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: 22482840}
m_RootOrder: 2
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
m_AnchorMin: {x: 0, y: 0.5}
m_AnchorMax: {x: 0, y: 0.5}
@@ -932,6 +1006,7 @@ MonoBehaviour:
m_Material: {fileID: 2100000, guid: a33be1e1efa8ca14286b77d062313a4e, type: 2}
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:
@@ -971,12 +1046,13 @@ Transform:
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 164052}
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: 480898}
m_RootOrder: 1
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
--- !u!33 &3359494
MeshFilter:
@@ -997,10 +1073,17 @@ MeshRenderer:
m_CastShadows: 1
m_ReceiveShadows: 1
m_DynamicOccludee: 1
m_StaticShadowCaster: 0
m_MotionVectors: 1
m_LightProbeUsage: 1
m_ReflectionProbeUsage: 1
m_RayTracingMode: 2
m_RayTraceProcedural: 0
m_RayTracingAccelStructBuildFlagsOverride: 0
m_RayTracingAccelStructBuildFlags: 1
m_SmallMeshCulling: 1
m_ForceMeshLod: -1
m_MeshLodSelectionBias: 0
m_RenderingLayerMask: 1
m_RendererPriority: 0
m_Materials:
@@ -1022,9 +1105,12 @@ MeshRenderer:
m_AutoUVMaxDistance: 0.5
m_AutoUVMaxAngle: 89
m_LightmapParameters: {fileID: 0}
m_GlobalIlluminationMeshLod: 0
m_SortingLayerID: 0
m_SortingLayer: 0
m_SortingOrder: 0
m_MaskInteraction: 0
m_AdditionalVertexStreams: {fileID: 0}
--- !u!1 &164286
GameObject:
m_ObjectHideFlags: 0
@@ -1053,9 +1139,9 @@ RectTransform:
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: 22482840}
m_RootOrder: 0
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
m_AnchorMin: {x: 0, y: 0}
m_AnchorMax: {x: 1, y: 1}
@@ -1085,6 +1171,7 @@ MonoBehaviour:
m_Material: {fileID: 2100000, guid: a33be1e1efa8ca14286b77d062313a4e, type: 2}
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:
@@ -1132,12 +1219,12 @@ RectTransform:
m_LocalRotation: {x: -0.000000003090828, y: -1, z: -0.000000028749422, w: 0.00000044703478}
m_LocalPosition: {x: 0, y: 0, z: -0.0020311438}
m_LocalScale: {x: 1, y: 1, z: 1}
m_ConstrainProportionsScale: 0
m_Children:
- {fileID: 22489296}
- {fileID: 22497104}
- {fileID: 22432168}
m_Father: {fileID: 22488062}
m_RootOrder: 0
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
m_AnchorMin: {x: 0, y: 0}
m_AnchorMax: {x: 1, y: 1}
@@ -1167,6 +1254,7 @@ MonoBehaviour:
m_Material: {fileID: 2100000, guid: a33be1e1efa8ca14286b77d062313a4e, type: 2}
m_Color: {r: 0, g: 0, b: 0, a: 0.627451}
m_RaycastTarget: 1
m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0}
m_Maskable: 1
m_OnCullStateChanged:
m_PersistentCalls:
@@ -1197,6 +1285,7 @@ MonoBehaviour:
m_PersistentCalls:
m_Calls:
- m_Target: {fileID: 154240}
m_TargetAssemblyTypeName:
m_MethodName: SetActive
m_Mode: 6
m_Arguments:
@@ -1208,6 +1297,7 @@ MonoBehaviour:
m_BoolArgument: 0
m_CallState: 2
- m_Target: {fileID: 196296}
m_TargetAssemblyTypeName:
m_MethodName: SetActive
m_Mode: 6
m_Arguments:
@@ -1225,6 +1315,7 @@ MonoBehaviour:
m_PersistentCalls:
m_Calls:
- m_Target: {fileID: 154240}
m_TargetAssemblyTypeName:
m_MethodName: SetActive
m_Mode: 6
m_Arguments:
@@ -1236,6 +1327,7 @@ MonoBehaviour:
m_BoolArgument: 1
m_CallState: 2
- m_Target: {fileID: 196296}
m_TargetAssemblyTypeName:
m_MethodName: SetActive
m_Mode: 6
m_Arguments:
@@ -1269,14 +1361,15 @@ Transform:
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 187208}
serializedVersion: 2
m_LocalRotation: {x: 0, y: -0.707106, z: 0, w: 0.7071076}
m_LocalPosition: {x: -0.009499073, y: 0.51312, z: 0.18504047}
m_LocalScale: {x: 2.086288, y: 2.44284, z: 2.0862887}
m_ConstrainProportionsScale: 0
m_Children:
- {fileID: 451406}
- {fileID: 438440}
m_Father: {fileID: 479482}
m_RootOrder: 2
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
--- !u!1 &196296
GameObject:
@@ -1306,9 +1399,9 @@ RectTransform:
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: 22482840}
m_RootOrder: 1
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
m_AnchorMin: {x: 0, y: 0.5}
m_AnchorMax: {x: 0, y: 0.5}
@@ -1338,6 +1431,7 @@ MonoBehaviour:
m_Material: {fileID: 2100000, guid: a33be1e1efa8ca14286b77d062313a4e, type: 2}
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:

View File

@@ -31,7 +31,6 @@ RectTransform:
m_ConstrainProportionsScale: 0
m_Children: []
m_Father: {fileID: 22430624}
m_RootOrder: 2
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
m_AnchorMin: {x: 0, y: 0.5}
m_AnchorMax: {x: 0, y: 0.5}
@@ -101,13 +100,13 @@ Transform:
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 117034}
serializedVersion: 2
m_LocalRotation: {x: -0.2588187, y: 0, z: 0, w: 0.96592593}
m_LocalPosition: {x: -0.0133, y: 0.5573, z: -0.0121}
m_LocalScale: {x: 1, y: 1, z: 1}
m_ConstrainProportionsScale: 0
m_Children: []
m_Father: {fileID: 405752}
m_RootOrder: 0
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
--- !u!33 &3352832
MeshFilter:
@@ -134,6 +133,11 @@ MeshRenderer:
m_ReflectionProbeUsage: 1
m_RayTracingMode: 2
m_RayTraceProcedural: 0
m_RayTracingAccelStructBuildFlagsOverride: 0
m_RayTracingAccelStructBuildFlags: 1
m_SmallMeshCulling: 1
m_ForceMeshLod: -1
m_MeshLodSelectionBias: 0
m_RenderingLayerMask: 1
m_RendererPriority: 0
m_Materials:
@@ -156,9 +160,11 @@ MeshRenderer:
m_AutoUVMaxDistance: 0.5
m_AutoUVMaxAngle: 89
m_LightmapParameters: {fileID: 0}
m_GlobalIlluminationMeshLod: 0
m_SortingLayerID: 0
m_SortingLayer: 0
m_SortingOrder: 0
m_MaskInteraction: 0
m_AdditionalVertexStreams: {fileID: 0}
--- !u!1 &125278
GameObject:
@@ -194,7 +200,6 @@ RectTransform:
m_Children:
- {fileID: 22430624}
m_Father: {fileID: 405752}
m_RootOrder: 1
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
m_AnchorMin: {x: 0, y: 0}
m_AnchorMax: {x: 0, y: 0}
@@ -218,7 +223,9 @@ Canvas:
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
@@ -310,7 +317,6 @@ RectTransform:
m_ConstrainProportionsScale: 0
m_Children: []
m_Father: {fileID: 22430624}
m_RootOrder: 0
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
m_AnchorMin: {x: 0, y: 0}
m_AnchorMax: {x: 1, y: 1}
@@ -390,7 +396,6 @@ RectTransform:
m_ConstrainProportionsScale: 0
m_Children: []
m_Father: {fileID: 22430624}
m_RootOrder: 1
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
m_AnchorMin: {x: 0, y: 0.5}
m_AnchorMax: {x: 0, y: 0.5}
@@ -470,7 +475,6 @@ RectTransform:
- {fileID: 22490896}
- {fileID: 22451678}
m_Father: {fileID: 22475414}
m_RootOrder: 0
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
m_AnchorMin: {x: 0, y: 0}
m_AnchorMax: {x: 1, y: 1}
@@ -611,6 +615,7 @@ Transform:
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 199660}
serializedVersion: 2
m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
m_LocalPosition: {x: 0.39214686, y: 0.2389014, z: -20.878284}
m_LocalScale: {x: 1, y: 1, z: 1}
@@ -619,7 +624,6 @@ Transform:
- {fileID: 463598}
- {fileID: 22475414}
m_Father: {fileID: 0}
m_RootOrder: 0
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
--- !u!136 &13694850
CapsuleCollider:
@@ -629,8 +633,17 @@ CapsuleCollider:
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 199660}
m_Material: {fileID: 0}
m_IncludeLayers:
serializedVersion: 2
m_Bits: 0
m_ExcludeLayers:
serializedVersion: 2
m_Bits: 0
m_LayerOverridePriority: 0
m_IsTrigger: 1
m_ProvidesContacts: 0
m_Enabled: 1
serializedVersion: 2
m_Radius: 0.35
m_Height: 1.08
m_Direction: 1
@@ -648,8 +661,8 @@ MonoBehaviour:
m_Name:
m_EditorClassIdentifier:
openCloseEvents: 0
openCloseWindow: 0
selectedToolbar: 0
openCloseWindow: 1
selectedToolbar: 2
inputType: 0
actionInput:
useInput: 1
@@ -867,11 +880,15 @@ MonoBehaviour:
name:
amount: 1
attributes:
- name: 0
value: 1
- name: 2
value: 36
isOpen: 0
isBool: 0
changeAttributes: 0
- name: 6
value: 8
isOpen: 0
isBool: 0
changeAttributes: 1
autoEquip: 1
addToEquipArea: 1
indexArea: 0

View File

@@ -14,6 +14,7 @@ GameObject:
- component: {fileID: 411349647056113735}
- component: {fileID: 2417107839128453854}
- component: {fileID: 6433774282585127385}
- component: {fileID: -8021594009672363794}
m_Layer: 0
m_Name: "_LazerPr\u1ECDectile"
m_TagString: Untagged
@@ -31,8 +32,8 @@ Transform:
serializedVersion: 2
m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
m_LocalPosition: {x: 0, y: 0.69, z: 0.267}
m_LocalScale: {x: 0.1, y: 0.1, z: 0.1}
m_ConstrainProportionsScale: 0
m_LocalScale: {x: 0.05, y: 0.05, z: 0.05}
m_ConstrainProportionsScale: 1
m_Children: []
m_Father: {fileID: 0}
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
@@ -108,7 +109,7 @@ SphereCollider:
serializedVersion: 2
m_Bits: 0
m_LayerOverridePriority: 0
m_IsTrigger: 0
m_IsTrigger: 1
m_ProvidesContacts: 0
m_Enabled: 1
serializedVersion: 3
@@ -245,5 +246,34 @@ MonoBehaviour:
m_Script: {fileID: 11500000, guid: 4e4f602386d4d484ea7a2a3b0c19ac21, type: 3}
m_Name:
m_EditorClassIdentifier: Assembly-CSharp::LaserProjectile
speed: 5
lifeTime: 5
speed: 70
lifeTime: 2
damageAmount: 10
hitSound: Laser_Hit
--- !u!54 &-8021594009672363794
Rigidbody:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 3965388737199864462}
serializedVersion: 5
m_Mass: 1
m_LinearDamping: 0
m_AngularDamping: 0.05
m_CenterOfMass: {x: 0, y: 0, z: 0}
m_InertiaTensor: {x: 1, y: 1, z: 1}
m_InertiaRotation: {x: 0, y: 0, z: 0, w: 1}
m_IncludeLayers:
serializedVersion: 2
m_Bits: 0
m_ExcludeLayers:
serializedVersion: 2
m_Bits: 0
m_ImplicitCom: 1
m_ImplicitTensor: 1
m_UseGravity: 1
m_IsKinematic: 1
m_Interpolate: 0
m_Constraints: 112
m_CollisionDetection: 1

View File

@@ -17,27 +17,27 @@ MonoBehaviour:
Clip: {fileID: 8300000, guid: fecdee2673ce2f542a3db1a8b56d1571, type: 3}
DefaultVolume: 1
DefaultPitch: 1
MixerGroup: {fileID: 0}
MixerGroup: {fileID: 24300002, guid: a622ceda579315442bd0a82d6626974c, type: 2}
- Name: UI_Warning
Clip: {fileID: 8300000, guid: 32b49cf6b9e2e8e408663785554c3e75, type: 3}
DefaultVolume: 1
DefaultPitch: 1
MixerGroup: {fileID: 0}
MixerGroup: {fileID: 24300002, guid: a622ceda579315442bd0a82d6626974c, type: 2}
- Name: UI_Click
Clip: {fileID: 8300000, guid: 30f85fcee050492448db7f91217910b3, type: 3}
DefaultVolume: 1
DefaultPitch: 1
MixerGroup: {fileID: 0}
MixerGroup: {fileID: 24300002, guid: a622ceda579315442bd0a82d6626974c, type: 2}
- Name: Item_Pickup
Clip: {fileID: 8300000, guid: b1ae905972eed154497f5454b22ba711, type: 3}
DefaultVolume: 1
DefaultPitch: 1
MixerGroup: {fileID: 0}
MixerGroup: {fileID: 24300002, guid: a622ceda579315442bd0a82d6626974c, type: 2}
- Name: Enemy_Alert
Clip: {fileID: 8300000, guid: d5f9671eecb70364f8282999c81d8295, type: 3}
DefaultVolume: 1
DefaultPitch: 1
MixerGroup: {fileID: 0}
MixerGroup: {fileID: 24300002, guid: a622ceda579315442bd0a82d6626974c, type: 2}
- Name: Enemy_Shoot
Clip: {fileID: 8300000, guid: de0b7f47746d51f48b733b64b307540e, type: 3}
DefaultVolume: 1
@@ -47,14 +47,14 @@ MonoBehaviour:
Clip: {fileID: 8300000, guid: e14cb014b8c41bf4a98768f2e4b4c1d7, type: 3}
DefaultVolume: 1
DefaultPitch: 1
MixerGroup: {fileID: 0}
MixerGroup: {fileID: 24300002, guid: a622ceda579315442bd0a82d6626974c, type: 2}
- Name: NPC_Interact
Clip: {fileID: 8300000, guid: 6d36adcf33e186c4cbe64a4c149e138f, type: 3}
DefaultVolume: 1
DefaultPitch: 1
MixerGroup: {fileID: 0}
MixerGroup: {fileID: 24300002, guid: a622ceda579315442bd0a82d6626974c, type: 2}
- Name: NPC_Response
Clip: {fileID: 8300000, guid: 7c266b12aa7ed1a49bf7ea0889d32302, type: 3}
DefaultVolume: 1
DefaultPitch: 1
MixerGroup: {fileID: 0}
MixerGroup: {fileID: 24300002, guid: a622ceda579315442bd0a82d6626974c, type: 2}

View File

@@ -12,12 +12,6 @@ MonoBehaviour:
m_Script: {fileID: 11500000, guid: 1adabc1ae49fd3c44a36cc9152ebb0f9, type: 3}
m_Name: Fragment Grenade
m_EditorClassIdentifier:
itemsToCraft:
- item: {fileID: 0}
amount: 3
- item: {fileID: 0}
amount: 1
price: 0
id: 26
description: Fragment Grenade
type: 0
@@ -27,8 +21,7 @@ MonoBehaviour:
maxStack: 6
amount: 0
originalObject: {fileID: 170736, guid: c221411e499bdd94f90413254abf7860, type: 3}
dropObject: {fileID: 4018256157275831458, guid: a04c9098c7a452447912f6c5069bd095,
type: 3}
dropObject: {fileID: 4018256157275831458, guid: a04c9098c7a452447912f6c5069bd095, type: 3}
attributes: []
isInEquipArea: 0
isEquiped: 0
@@ -58,12 +51,6 @@ MonoBehaviour:
m_Script: {fileID: 11500000, guid: 1adabc1ae49fd3c44a36cc9152ebb0f9, type: 3}
m_Name: Molotov
m_EditorClassIdentifier:
itemsToCraft:
- item: {fileID: 0}
amount: 3
- item: {fileID: 0}
amount: 1
price: 0
id: 27
description: Molotov
type: 0
@@ -72,10 +59,8 @@ MonoBehaviour:
createNewItem: 1
maxStack: 6
amount: 0
originalObject: {fileID: 4687494058105681854, guid: 356e6f81e6f18534ba6b80a6d008642a,
type: 3}
dropObject: {fileID: 4018256157275831458, guid: c37d3b92b2a9da3468bc2a821919c0ca,
type: 3}
originalObject: {fileID: 4687494058105681854, guid: 356e6f81e6f18534ba6b80a6d008642a, type: 3}
dropObject: {fileID: 4018256157275831458, guid: c37d3b92b2a9da3468bc2a821919c0ca, type: 3}
attributes: []
isInEquipArea: 0
isEquiped: 0
@@ -150,8 +135,6 @@ MonoBehaviour:
m_Script: {fileID: 11500000, guid: 1adabc1ae49fd3c44a36cc9152ebb0f9, type: 3}
m_Name: Sniper Ammo
m_EditorClassIdentifier:
itemsToCraft: []
price: 0
id: 19
description:
type: 3
@@ -191,8 +174,6 @@ MonoBehaviour:
m_Script: {fileID: 11500000, guid: 1adabc1ae49fd3c44a36cc9152ebb0f9, type: 3}
m_Name: RPG Ammo
m_EditorClassIdentifier:
itemsToCraft: []
price: 0
id: 18
description:
type: 3
@@ -232,8 +213,6 @@ MonoBehaviour:
m_Script: {fileID: 11500000, guid: 1adabc1ae49fd3c44a36cc9152ebb0f9, type: 3}
m_Name: Handgun Ammo
m_EditorClassIdentifier:
itemsToCraft: []
price: 0
id: 14
description:
type: 3
@@ -273,8 +252,6 @@ MonoBehaviour:
m_Script: {fileID: 11500000, guid: 1adabc1ae49fd3c44a36cc9152ebb0f9, type: 3}
m_Name: RPG
m_EditorClassIdentifier:
itemsToCraft: []
price: 0
id: 16
description: Very destructive
type: 2
@@ -322,8 +299,6 @@ MonoBehaviour:
m_Script: {fileID: 11500000, guid: 1adabc1ae49fd3c44a36cc9152ebb0f9, type: 3}
m_Name: Sniper
m_EditorClassIdentifier:
itemsToCraft: []
price: 0
id: 15
description: Attached with a scope
type: 2
@@ -371,8 +346,6 @@ MonoBehaviour:
m_Script: {fileID: 11500000, guid: 1adabc1ae49fd3c44a36cc9152ebb0f9, type: 3}
m_Name: Shotgun Shells
m_EditorClassIdentifier:
itemsToCraft: []
price: 0
id: 17
description: Shotgun Ammo
type: 3
@@ -412,8 +385,6 @@ MonoBehaviour:
m_Script: {fileID: 11500000, guid: 1adabc1ae49fd3c44a36cc9152ebb0f9, type: 3}
m_Name: Shotgun
m_EditorClassIdentifier:
itemsToCraft: []
price: 0
id: 12
description: Tactical Shotgun
type: 2
@@ -461,8 +432,6 @@ MonoBehaviour:
m_Script: {fileID: 11500000, guid: 1adabc1ae49fd3c44a36cc9152ebb0f9, type: 3}
m_Name: Rifle Ammo
m_EditorClassIdentifier:
itemsToCraft: []
price: 0
id: 13
description:
type: 3
@@ -502,8 +471,6 @@ MonoBehaviour:
m_Script: {fileID: 11500000, guid: 1adabc1ae49fd3c44a36cc9152ebb0f9, type: 3}
m_Name: Great Shield
m_EditorClassIdentifier:
itemsToCraft: []
price: 0
id: 9
description: 'Great Shield
@@ -516,10 +483,8 @@ MonoBehaviour:
createNewItem: 1
maxStack: 1
amount: 0
originalObject: {fileID: 1000012874595254, guid: d4ca9135af96d5142987a1f1427b099a,
type: 3}
dropObject: {fileID: 8587624101741613191, guid: e26f928aabf2af048b7def78ec83a486,
type: 3}
originalObject: {fileID: 1000012874595254, guid: d4ca9135af96d5142987a1f1427b099a, type: 3}
dropObject: {fileID: 8587624101741613191, guid: e26f928aabf2af048b7def78ec83a486, type: 3}
attributes:
- name: 3
value: 0
@@ -561,8 +526,6 @@ MonoBehaviour:
m_Script: {fileID: 11500000, guid: 1adabc1ae49fd3c44a36cc9152ebb0f9, type: 3}
m_Name: Short Katana
m_EditorClassIdentifier:
itemsToCraft: []
price: 0
id: 1
description: Melee Weapon
type: 1
@@ -571,10 +534,8 @@ MonoBehaviour:
createNewItem: 1
maxStack: 1
amount: 0
originalObject: {fileID: 1000011247033104, guid: 43ec053b9c111644e80b4ddb5f535508,
type: 3}
dropObject: {fileID: 3314097323225006234, guid: 0f2c84cd3287333448744ce0451196cd,
type: 3}
originalObject: {fileID: 1000011247033104, guid: 43ec053b9c111644e80b4ddb5f535508, type: 3}
dropObject: {fileID: 3314097323225006234, guid: 0f2c84cd3287333448744ce0451196cd, type: 3}
attributes:
- name: 2
value: 25
@@ -620,8 +581,6 @@ MonoBehaviour:
m_Script: {fileID: 11500000, guid: 1adabc1ae49fd3c44a36cc9152ebb0f9, type: 3}
m_Name: Great Sword
m_EditorClassIdentifier:
itemsToCraft: []
price: 0
id: 7
description: Melee Weapon
type: 1
@@ -630,10 +589,8 @@ MonoBehaviour:
createNewItem: 1
maxStack: 1
amount: 0
originalObject: {fileID: 1000014209087140, guid: d03b45803e637bb4fb00a1ca9030d66e,
type: 3}
dropObject: {fileID: 4500584118820961459, guid: eca1e51be6676704dbb7f23b4947883b,
type: 3}
originalObject: {fileID: 1000014209087140, guid: d03b45803e637bb4fb00a1ca9030d66e, type: 3}
dropObject: {fileID: 4500584118820961459, guid: eca1e51be6676704dbb7f23b4947883b, type: 3}
attributes:
- name: 2
value: 30
@@ -679,8 +636,6 @@ MonoBehaviour:
m_Script: {fileID: 11500000, guid: 1adabc1ae49fd3c44a36cc9152ebb0f9, type: 3}
m_Name: Great Katana
m_EditorClassIdentifier:
itemsToCraft: []
price: 0
id: 8
description: Melee Weapon
type: 1
@@ -689,10 +644,8 @@ MonoBehaviour:
createNewItem: 1
maxStack: 1
amount: 0
originalObject: {fileID: 1000013423493360, guid: 6bbee781522ce5243a02bf72cd914cf5,
type: 3}
dropObject: {fileID: 2197774501603174495, guid: 7dcfb29ec0c968041b99dd41d13cec28,
type: 3}
originalObject: {fileID: 1000013423493360, guid: 6bbee781522ce5243a02bf72cd914cf5, type: 3}
dropObject: {fileID: 2197774501603174495, guid: 7dcfb29ec0c968041b99dd41d13cec28, type: 3}
attributes:
- name: 2
value: 25
@@ -738,8 +691,6 @@ MonoBehaviour:
m_Script: {fileID: 11500000, guid: 1adabc1ae49fd3c44a36cc9152ebb0f9, type: 3}
m_Name: Assault Rifle
m_EditorClassIdentifier:
itemsToCraft: []
price: 0
id: 11
description: Attached with a Scope
type: 2
@@ -795,8 +746,6 @@ MonoBehaviour:
m_Script: {fileID: 11500000, guid: 1adabc1ae49fd3c44a36cc9152ebb0f9, type: 3}
m_Name: Small Shield
m_EditorClassIdentifier:
itemsToCraft: []
price: 0
id: 6
description: 'Small Shield
@@ -807,10 +756,8 @@ MonoBehaviour:
createNewItem: 1
maxStack: 1
amount: 0
originalObject: {fileID: 1000010116632662, guid: 2232bbcc5a195274c9744c2c6352e910,
type: 3}
dropObject: {fileID: 862192267840601332, guid: d07ef1bfe3f5bf4469394a9c723bbbc1,
type: 3}
originalObject: {fileID: 1000010116632662, guid: 2232bbcc5a195274c9744c2c6352e910, type: 3}
dropObject: {fileID: 862192267840601332, guid: d07ef1bfe3f5bf4469394a9c723bbbc1, type: 3}
attributes:
- name: 3
value: 0
@@ -852,8 +799,6 @@ MonoBehaviour:
m_Script: {fileID: 11500000, guid: 1adabc1ae49fd3c44a36cc9152ebb0f9, type: 3}
m_Name: Handgun
m_EditorClassIdentifier:
itemsToCraft: []
price: 0
id: 10
description: Semi-Automatic Pistol
type: 2
@@ -901,12 +846,6 @@ MonoBehaviour:
m_Script: {fileID: 11500000, guid: 1adabc1ae49fd3c44a36cc9152ebb0f9, type: 3}
m_Name: Health Up Potion
m_EditorClassIdentifier:
itemsToCraft:
- item: {fileID: 0}
amount: 3
- item: {fileID: 0}
amount: 1
price: 0
id: 5
description: Increases the MaxHealth
type: 0
@@ -950,8 +889,6 @@ MonoBehaviour:
m_Script: {fileID: 11500000, guid: 1adabc1ae49fd3c44a36cc9152ebb0f9, type: 3}
m_Name: Axe
m_EditorClassIdentifier:
itemsToCraft: []
price: 0
id: 0
description: Melee Weapon
type: 1
@@ -960,10 +897,8 @@ MonoBehaviour:
createNewItem: 1
maxStack: 1
amount: 0
originalObject: {fileID: 1000010725870802, guid: 0cf98a7633e41834ba19e8626f1ceadc,
type: 3}
dropObject: {fileID: 880292917891664030, guid: 4ce32edaf6024884898e95f24f9f763a,
type: 3}
originalObject: {fileID: 1000010725870802, guid: 0cf98a7633e41834ba19e8626f1ceadc, type: 3}
dropObject: {fileID: 880292917891664030, guid: 4ce32edaf6024884898e95f24f9f763a, type: 3}
attributes:
- name: 3
value: 35
@@ -1009,12 +944,6 @@ MonoBehaviour:
m_Script: {fileID: 11500000, guid: 1adabc1ae49fd3c44a36cc9152ebb0f9, type: 3}
m_Name: Stamina Up Potion
m_EditorClassIdentifier:
itemsToCraft:
- item: {fileID: 0}
amount: 1
- item: {fileID: 0}
amount: 3
price: 0
id: 4
description: Increases the MaxStamina
type: 0
@@ -1058,8 +987,6 @@ MonoBehaviour:
m_Script: {fileID: 11500000, guid: 1adabc1ae49fd3c44a36cc9152ebb0f9, type: 3}
m_Name: Short Sword
m_EditorClassIdentifier:
itemsToCraft: []
price: 0
id: 3
description: Melee Weapon
type: 1
@@ -1068,10 +995,8 @@ MonoBehaviour:
createNewItem: 1
maxStack: 1
amount: 0
originalObject: {fileID: 1000012884940116, guid: 5dc53aa14e78ec54fbf2281c1abb7f47,
type: 3}
dropObject: {fileID: 819158048279699071, guid: 0f25b0bc9b7934840b324072cedb3325,
type: 3}
originalObject: {fileID: 1000012884940116, guid: 5dc53aa14e78ec54fbf2281c1abb7f47, type: 3}
dropObject: {fileID: 819158048279699071, guid: 0f25b0bc9b7934840b324072cedb3325, type: 3}
attributes:
- name: 2
value: 15
@@ -1117,12 +1042,6 @@ MonoBehaviour:
m_Script: {fileID: 11500000, guid: 1adabc1ae49fd3c44a36cc9152ebb0f9, type: 3}
m_Name: Health Potion
m_EditorClassIdentifier:
itemsToCraft:
- item: {fileID: 0}
amount: 3
- item: {fileID: 0}
amount: 1
price: 0
id: 2
description: Recover Health
type: 0
@@ -1166,8 +1085,6 @@ MonoBehaviour:
m_Script: {fileID: 11500000, guid: 1adabc1ae49fd3c44a36cc9152ebb0f9, type: 3}
m_Name: vRifle Shooter Edition
m_EditorClassIdentifier:
itemsToCraft: []
price: 0
id: 22
description: Special Edition attached with Grenade Launcher
type: 2
@@ -1176,8 +1093,7 @@ MonoBehaviour:
createNewItem: 1
maxStack: 1
amount: 0
originalObject: {fileID: 1262530654451378, guid: 33cb40cfd0904344d8306765a5600135,
type: 3}
originalObject: {fileID: 1262530654451378, guid: 33cb40cfd0904344d8306765a5600135, type: 3}
dropObject: {fileID: 1530631430177172, guid: 1e6c72f3eacde6c4fa1f5824e22ce56c, type: 3}
attributes:
- name: 2
@@ -1224,8 +1140,6 @@ MonoBehaviour:
m_Script: {fileID: 11500000, guid: 1adabc1ae49fd3c44a36cc9152ebb0f9, type: 3}
m_Name: KeyCard Red
m_EditorClassIdentifier:
itemsToCraft: []
price: 0
id: 23
description: Open Red Doors
type: 0
@@ -1265,8 +1179,6 @@ MonoBehaviour:
m_Script: {fileID: 11500000, guid: 1adabc1ae49fd3c44a36cc9152ebb0f9, type: 3}
m_Name: Dual Swords
m_EditorClassIdentifier:
itemsToCraft: []
price: 0
id: 24
description: Melee Weapon
type: 1
@@ -1275,10 +1187,8 @@ MonoBehaviour:
createNewItem: 1
maxStack: 1
amount: 0
originalObject: {fileID: 1000012884940116, guid: f0df66e0950da4642afce9f6382ab231,
type: 3}
dropObject: {fileID: 5960025752436353048, guid: 25e7bf6c702446e47bbc7ce3a6aaaeb5,
type: 3}
originalObject: {fileID: 1000012884940116, guid: f0df66e0950da4642afce9f6382ab231, type: 3}
dropObject: {fileID: 5960025752436353048, guid: 25e7bf6c702446e47bbc7ce3a6aaaeb5, type: 3}
attributes:
- name: 2
value: 10
@@ -1324,8 +1234,6 @@ MonoBehaviour:
m_Script: {fileID: 11500000, guid: 1adabc1ae49fd3c44a36cc9152ebb0f9, type: 3}
m_Name: Arrows
m_EditorClassIdentifier:
itemsToCraft: []
price: 0
id: 21
description: Arrows to use with Bow
type: 3
@@ -1365,8 +1273,6 @@ MonoBehaviour:
m_Script: {fileID: 11500000, guid: 1adabc1ae49fd3c44a36cc9152ebb0f9, type: 3}
m_Name: vBow
m_EditorClassIdentifier:
itemsToCraft: []
price: 0
id: 20
description: Bow and Arrow
type: 4
@@ -1375,8 +1281,7 @@ MonoBehaviour:
createNewItem: 0
maxStack: 1
amount: 0
originalObject: {fileID: 1112735122421166, guid: adec6ca436555694f9b67251716d6768,
type: 3}
originalObject: {fileID: 1112735122421166, guid: adec6ca436555694f9b67251716d6768, type: 3}
dropObject: {fileID: 1000012655258636, guid: cf28841817afdab4c8060f470a322c37, type: 3}
attributes:
- name: 6
@@ -1411,8 +1316,6 @@ MonoBehaviour:
m_Script: {fileID: 11500000, guid: 1adabc1ae49fd3c44a36cc9152ebb0f9, type: 3}
m_Name: Buletproof Vest
m_EditorClassIdentifier:
itemsToCraft: []
price: 0
id: 25
description: Buletproof Vest
type: 6
@@ -1452,12 +1355,6 @@ MonoBehaviour:
m_Script: {fileID: 11500000, guid: 1adabc1ae49fd3c44a36cc9152ebb0f9, type: 3}
m_Name: Smoke Grenade
m_EditorClassIdentifier:
itemsToCraft:
- item: {fileID: 0}
amount: 3
- item: {fileID: 0}
amount: 1
price: 0
id: 28
description: Smoke Grenade
type: 0
@@ -1466,10 +1363,8 @@ MonoBehaviour:
createNewItem: 1
maxStack: 6
amount: 0
originalObject: {fileID: 2275447201054405111, guid: e82c600a04131f842b97ae50bebfd25d,
type: 3}
dropObject: {fileID: 4018256157275831458, guid: 83a0af047816b1e44b48e9b37982ccba,
type: 3}
originalObject: {fileID: 2275447201054405111, guid: e82c600a04131f842b97ae50bebfd25d, type: 3}
dropObject: {fileID: 4018256157275831458, guid: 83a0af047816b1e44b48e9b37982ccba, type: 3}
attributes: []
isInEquipArea: 0
isEquiped: 0
@@ -1499,12 +1394,6 @@ MonoBehaviour:
m_Script: {fileID: 11500000, guid: 1adabc1ae49fd3c44a36cc9152ebb0f9, type: 3}
m_Name: Stun Grenade
m_EditorClassIdentifier:
itemsToCraft:
- item: {fileID: 0}
amount: 3
- item: {fileID: 0}
amount: 1
price: 0
id: 29
description: Stun Grenade
type: 0
@@ -1513,10 +1402,8 @@ MonoBehaviour:
createNewItem: 1
maxStack: 6
amount: 0
originalObject: {fileID: 2275447201054405111, guid: df29a1ce804661b4d91e53c7c6e7e384,
type: 3}
dropObject: {fileID: 4018256157275831458, guid: 092023529ae5aa0488c373ee62d54549,
type: 3}
originalObject: {fileID: 2275447201054405111, guid: df29a1ce804661b4d91e53c7c6e7e384, type: 3}
dropObject: {fileID: 4018256157275831458, guid: 092023529ae5aa0488c373ee62d54549, type: 3}
attributes: []
isInEquipArea: 0
isEquiped: 0

File diff suppressed because one or more lines are too long

View File

@@ -0,0 +1,163 @@
using UnityEngine;
using UnityEngine.AI;
using Invector;
using Invector.vEventSystems;
using System.Collections;
using System.Collections.Generic;
public class AnimatorAI : MonoBehaviour, vIAnimatorStateInfoController
{
protected Animator animator;
protected NavMeshAgent agent;
protected vHealthController healthController;
protected EnemyAI enemyAI;
protected KamikazeAI kamikazeAI;
[Header("Force Settings")]
public bool forceGrounded = true;
public float movementBoost = 1.2f;
public float dampTime = 0.1f;
public vAnimatorStateInfos animatorStateInfos { get; protected set; }
#region Animator Parameters
protected vAnimatorParameter isDead, isGrounded, isStrafing, isSprinting, isAiming;
protected vAnimatorParameter verticalVelocity, horizontalVelocity, inputMagnitude;
protected vAnimatorParameter groundDistance, moveSet_ID, attackID, triggerReaction, resetState;
#endregion
protected Vector3 lastPosition;
protected float currentV, currentH, currentMagnitude, calculatedSpeed;
protected virtual void Awake()
{
animator = GetComponentInChildren<Animator>();
if (animator == null) animator = GetComponentInParent<Animator>();
agent = GetComponent<NavMeshAgent>();
if (agent == null) agent = GetComponentInParent<NavMeshAgent>();
healthController = GetComponentInChildren<vHealthController>();
enemyAI = GetComponent<EnemyAI>();
kamikazeAI = GetComponent<KamikazeAI>();
if (animator)
{
animator.applyRootMotion = false;
animator.updateMode = AnimatorUpdateMode.Normal;
// Reset all layers initially to prevent T-Pose
for (int i = 1; i < animator.layerCount; i++) animator.SetLayerWeight(i, 0f);
animatorStateInfos = new vAnimatorStateInfos(animator);
InitializeParameters();
Debug.Log($"<color=green>[AnimSystem]</color> Đã kích hoạt trên {gameObject.name}");
}
lastPosition = transform.position;
}
protected virtual void OnEnable() { this.Register(); }
protected virtual void OnDisable() { this.UnRegister(); }
protected virtual void InitializeParameters()
{
isDead = ValidateAndInit("isDead");
isGrounded = ValidateAndInit("isGrounded");
if (!isGrounded.isValid) isGrounded = ValidateAndInit("IsGrounded");
isStrafing = ValidateAndInit("IsStrafing");
isSprinting = ValidateAndInit("IsSprinting");
isAiming = ValidateAndInit("IsAiming");
verticalVelocity = ValidateAndInit("InputVertical");
horizontalVelocity = ValidateAndInit("InputHorizontal");
inputMagnitude = ValidateAndInit("InputMagnitude");
groundDistance = ValidateAndInit("GroundDistance");
moveSet_ID = ValidateAndInit("MoveSet_ID");
attackID = ValidateAndInit("AttackID");
triggerReaction = ValidateAndInit("TriggerReaction");
resetState = ValidateAndInit("ResetState");
}
private vAnimatorParameter ValidateAndInit(string pName) => new vAnimatorParameter(animator, pName);
protected virtual void Update()
{
if (animator == null || agent == null) return;
UpdateMovementParameters();
UpdateCombatParameters();
}
protected virtual void UpdateMovementParameters()
{
SetBool(isGrounded, forceGrounded);
SetFloat(groundDistance, 0f);
Vector3 delta = transform.position - lastPosition;
calculatedSpeed = delta.magnitude / Time.deltaTime;
lastPosition = transform.position;
Vector3 localVel = transform.InverseTransformDirection(delta / Time.deltaTime);
float maxS = (enemyAI) ? enemyAI.moveSpeed : (kamikazeAI ? agent.speed : 3f);
if (maxS <= 0) maxS = 3f;
float targetV = (localVel.z / maxS) * movementBoost;
float targetH = (localVel.x / maxS) * movementBoost;
currentV = Mathf.Lerp(currentV, targetV, 10f * Time.deltaTime);
currentH = Mathf.Lerp(currentH, targetH, 10f * Time.deltaTime);
currentMagnitude = new Vector2(currentH, currentV).magnitude;
// ÉP GIÁ TRỊ VÀO ANIMATOR
SetFloat(verticalVelocity, currentV);
SetFloat(horizontalVelocity, currentH);
SetFloat(inputMagnitude, currentMagnitude);
}
protected virtual void UpdateCombatParameters()
{
// 1. Kiểm tra trạng thái AI
bool isShooting = (enemyAI && enemyAI.IsShootingBurst);
bool hasArtifact = (enemyAI && enemyAI.playerHasArtifact);
// 2. Cập nhật MoveSet và Aiming
SetInt(moveSet_ID, hasArtifact ? 1 : 0);
SetBool(isAiming, hasArtifact);
SetBool(isStrafing, hasArtifact);
// 3. Xử lý BẮN SÚNG (Layer 6 trong Animator của bạn)
if (isShooting)
{
// Bật Layer bắn súng lên 1 (Smooth)
animator.SetLayerWeight(6, Mathf.Lerp(animator.GetLayerWeight(6), 1f, 15f * Time.deltaTime));
SetInt(attackID, 1); // Kích hoạt animation bắn trong Blend Tree của Layer 6
}
else
{
// Tắt Layer bắn súng về 0
animator.SetLayerWeight(6, Mathf.Lerp(animator.GetLayerWeight(6), 0f, 10f * Time.deltaTime));
SetInt(attackID, 0);
}
if (enemyAI && enemyAI.IsDodging) SetAnimatorTrigger(triggerReaction);
}
#region Helpers
protected void SetBool(vAnimatorParameter p, bool v) { if (p.isValid) animator.SetBool(p, v); }
protected void SetFloat(vAnimatorParameter p, float v) { if (p.isValid) animator.SetFloat(p, v, dampTime, Time.deltaTime); }
protected void SetInt(vAnimatorParameter p, int v) { if (p.isValid) animator.SetInteger(p, v); }
public void SetAnimatorTrigger(vAnimatorParameter trigger)
{
if (trigger.isValid) StartCoroutine(SetTriggerRoutine(trigger));
}
private IEnumerator SetTriggerRoutine(int targetHash)
{
animator.SetTrigger(targetHash);
yield return new WaitForSeconds(0.1f);
animator.ResetTrigger(targetHash);
}
#endregion
}

View File

@@ -0,0 +1,2 @@
fileFormatVersion: 2
guid: 35bba55c2a743d042ab1fff35e29db50

View File

@@ -1,16 +1,47 @@
using Invector;
using UnityEngine;
public class AutoDestroy : MonoBehaviour
{
// Start is called once before the first execution of Update after the MonoBehaviour is created
public int damageAmount = 30;
void Start()
{
Destroy(gameObject,2f);
}
// Update is called once per frame
void Update()
private void OnTriggerEnter(Collider other)
{
// Debug: Log tên và tag của bất cứ thứ gì đạn chạm vào
Debug.Log(
$"Laser collided with: {other.name} | Tag: {other.tag} | Layer: {LayerMask.LayerToName(other.gameObject.layer)}");
// Kiểm tra nếu trúng Player
if (other.CompareTag("Player") || other.GetComponentInParent<vIHealthController>() != null)
{
var healthController = other.GetComponentInParent<vIHealthController>();
if (healthController != null)
{
Debug.Log(
$"<color=red>HIT PLAYER!</color> Found health controller on {healthController.gameObject.name}. Applying {damageAmount} damage.");
var damage = new vDamage(damageAmount);
damage.sender = transform;
damage.hitPosition = transform.position;
healthController.TakeDamage(damage);
}
// Luôn phá hủy đạn khi trúng Player
Impact();
}
}
private void Impact()
{
// Phá hủy đạn ngay lập tức
Destroy(gameObject);
}
}

View File

@@ -14,13 +14,19 @@ namespace Hallucinate.UI
private void Awake()
{
mainCameraTransform = Camera.main.transform;
canvasGroup.alpha = 0;
gameObject.SetActive(false);
if (canvasGroup != null) canvasGroup.alpha = 0;
// gameObject.SetActive(false); // Bỏ dòng này để tránh tắt nhầm NPC gốc
}
private void LateUpdate()
{
// Tìm Camera nếu chưa có (Tránh lỗi Null nếu Camera chưa spawn hoặc bị xóa)
if (mainCameraTransform == null)
{
if (Camera.main != null) mainCameraTransform = Camera.main.transform;
else return;
}
// Billboard effect
transform.LookAt(transform.position + mainCameraTransform.rotation * Vector3.forward, mainCameraTransform.rotation * Vector3.up);
}

View File

@@ -0,0 +1,133 @@
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using System;
namespace Hallucinate.AI
{
public class ConversationManager : MonoBehaviour
{
public static ConversationManager Instance { get; private set; }
[Header("Settings")]
public int maxSimultaneousConversations = 3;
public float maxConversationDuration = 120f; // 2 minutes
private List<ConversationSession> activeSessions = new List<ConversationSession>();
private void Awake()
{
if (Instance == null) Instance = this;
else Destroy(gameObject);
}
public bool CanStartConversation()
{
return activeSessions.Count < maxSimultaneousConversations;
}
public void StartConversation(EnemyAI initiator, EnemyAI responder)
{
if (!CanStartConversation()) return;
ConversationSession session = new ConversationSession(initiator, responder, maxConversationDuration);
activeSessions.Add(session);
StartCoroutine(RunConversation(session));
}
private IEnumerator RunConversation(ConversationSession session)
{
Debug.Log($"<color=cyan>[ConvManager]</color> Starting: {session.initiator.npcName} & {session.responder.npcName}");
// Phase 1: Initiator speaks
bool phase1Complete = false;
session.RequestDialogue(session.initiator, (success) => phase1Complete = true);
float startTime = Time.time;
while (!phase1Complete && Time.time < startTime + 10f) yield return null;
if (phase1Complete && !session.isInterrupted)
{
yield return new WaitForSeconds(4f); // Reading time
// Phase 2: Responder speaks
bool phase2Complete = false;
session.RequestDialogue(session.responder, (success) => phase2Complete = true);
float phase2StartTime = Time.time;
while (!phase2Complete && Time.time < phase2StartTime + 10f) yield return null;
}
yield return new WaitForSeconds(4f);
EndConversation(session);
}
public void EndConversation(ConversationSession session)
{
if (activeSessions.Contains(session))
{
session.Cleanup();
activeSessions.Remove(session);
Debug.Log($"<color=cyan>[ConvManager]</color> Ended session. Active: {activeSessions.Count}");
}
}
public void InterruptConversation(EnemyAI npc)
{
ConversationSession session = activeSessions.Find(s => s.initiator == npc || s.responder == npc);
if (session != null)
{
session.isInterrupted = true;
EndConversation(session);
}
}
}
public class ConversationSession
{
public EnemyAI initiator;
public EnemyAI responder;
public float durationLimit;
public bool isInterrupted;
public ConversationSession(EnemyAI initiator, EnemyAI responder, float limit)
{
this.initiator = initiator;
this.responder = responder;
this.durationLimit = limit;
initiator.isTalking = true;
responder.isTalking = true;
// Set references for Gizmos and Facing
initiator.SetTalkingPartner(responder);
responder.SetTalkingPartner(initiator);
}
public void RequestDialogue(EnemyAI speaker, Action<bool> callback)
{
if (isInterrupted) { callback?.Invoke(false); return; }
EnemyAI listener = (speaker == initiator) ? responder : initiator;
// Face each other
speaker.FaceTarget(listener.transform.position);
listener.FaceTarget(speaker.transform.position);
string prompt = $"You are {speaker.npcName} talking to {listener.npcName}. Previous context: None. " +
"Keep it natural and short.";
GeminiService.Instance.GetResponse(speaker.persona, prompt, (json) => {
if (isInterrupted) { callback?.Invoke(false); return; }
speaker.ProcessDialogueResult(json);
callback?.Invoke(true);
});
}
public void Cleanup()
{
if (initiator != null) initiator.isTalking = false;
if (responder != null) responder.isTalking = false;
}
}
}

View File

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

View File

@@ -1,326 +1,603 @@
using System;
using System.Collections;
using System.Collections.Generic;
using System.Linq;
using UnityEngine;
using UnityEngine.AI;
using System.Linq;
using UnityEngine.InputSystem;
using Invector;
using Invector.vCharacterController;
using Random = UnityEngine.Random;
[Serializable]
public class DialogueResult
{
public string text;
public float speedMod;
public float suspicionMod;
public float aggressionMod; // Ảnh hưởng delay bắn (0.1 -> 1.0)
public float braveryMod; // Ảnh hưởng ngưỡng Panic
public float healthMod; // Hồi máu hoặc mất máu tâm lý
}
[RequireComponent(typeof(NavMeshAgent))]
[RequireComponent(typeof(Rigidbody))]
[RequireComponent(typeof(vHealthController))]
public class EnemyAI : MonoBehaviour
{
[Header("References")]
public Transform player;
private NavMeshAgent agent;
private Rigidbody rb;
private FieldOfView fov;
private Collider mainCollider;
private vHealthController health;
[Header("Field of View")]
[Range(0, 360)] public float viewAngle = 90f;
public float viewRadius = 20f;
public LayerMask targetLayerMask; // Gán layer của Player
public LayerMask obstacleLayerMask; // Gán layer của Tường, chướng ngại vật
private bool canSeePlayer = false;
private Vector3 lastKnownPlayerPosition;
private bool isInvestigating = false;
[Header("Patrol Area")]
public Transform[] patrolPoints;
private int currentPatrolIndex = 0;
[Header("Movement Settings")]
public float moveSpeed = 3f;
public float chaseSpeed = 5f;
public float rotateSpeed = 10f;
[Header("Artifact")]
[Header("Patrol Settings")]
public float patrolWaitTime = 2f;
private float currentWaitTime = 0f;
public float patrolSpeed = 2.5f;
public float patrolRadius = 12f;
private Vector3 startPosition;
[Header("Combat State")]
public bool playerHasArtifact;
[Header("Laser")]
public bool isAggroedBySound;
public GameObject laserPrefab;
public Transform firePoint;
public float minShootDelay = 1f;
public float maxShootDelay = 3f;
public float rotateSpeed = 50f;
[Header("Dodge Mechanics")]
public float dodgeForce = 8f; // Lực đẩy văng đi
public float dodgeDuration = 0.5f; // Thời gian nhào lộn/né
public float dodgeCooldown = 3f; // Thời gian chờ giữa 2 lần né
private float nextDodgeTime;
private bool isDodging = false;
private Rigidbody rb;
public float minShootDelay = 1.8f; // Tăng nhẹ delay để đỡ khó
public float maxShootDelay = 4.0f;
private float nextShootTime;
private NavMeshAgent agent;
public Node behaviorTreeRoot;
private void Start()
[Header("Dodge Settings")]
public float dodgeForce = 8f;
public float dodgeDuration = 0.2f;
public float dodgeCooldown = 2.0f; // Tăng cooldown né đòn
private bool isDodging = false;
private float nextDodgeTime = 0f;
[Header("Advanced AI States")]
public bool isPanicking = false;
public bool isEnraged = false;
public float panicHealthThreshold = 50f; // Chạy ngược lại khi < 50% máu
public float regenRate = 1.5f;
public float regenDelay = 5f;
private float lastDamageTime;
[Header("Personality (Randomized)")]
private float personalApproachWeight;
private float personalMinCombatDistance;
private float personalBurstMax;
private float personalStrafeIntensity;
[Header("Artifact Combat Upgrades")]
public float minStrafeDuration = 0.5f;
public float maxStrafeDuration = 2.2f;
public float maxSpreadAngle = 7f;
public float burstInterval = 0.15f;
public float approachWeight = 0.35f;
public float minCombatDistance = 5.0f;
private float nextStrafeChangeTime;
private int strafeDirectionSign = 1;
private bool isShootingBurst = false;
public bool IsDodging => isDodging;
public bool IsShootingBurst => isShootingBurst;
[Header("Conversation Settings")]
public string npcName = "Guard";
[TextArea] public string persona = "You are a bored security guard.";
public float talkRange = 12f;
public float talkCooldown = 60f;
private float lastTalkTime;
public bool isTalking;
private EnemyAI talkingPartner;
private Hallucinate.UI.ChatBubble chatBubble;
[Header("Suspicion Settings")]
public float suspicionLevel = 0f;
public float investigationThreshold = 30f;
public float alertNeighborsThreshold = 70f;
public float alertRange = 30f;
public Node rootNode;
void Start()
{
agent = GetComponent<NavMeshAgent>();
rb = GetComponent<Rigidbody>();
// Tự động tìm các điểm tuần tra nếu chưa gán
if (patrolPoints == null || patrolPoints.Length == 0)
fov = GetComponent<FieldOfView>();
chatBubble = GetComponentInChildren<Hallucinate.UI.ChatBubble>(true);
mainCollider = GetComponent<Collider>();
health = GetComponent<vHealthController>();
// RANDOM TÍNH CÁCH
personalApproachWeight = Random.Range(0.2f, 0.7f);
personalMinCombatDistance = Random.Range(3f, 8f);
personalBurstMax = Random.Range(2, 5);
personalStrafeIntensity = Random.Range(0.5f, 1.5f);
health.onReceiveDamage.AddListener(OnReceiveDamage);
health.onDead.AddListener(OnDead);
if (gameObject.layer == LayerMask.NameToLayer("Default"))
{
patrolPoints = GameObject.FindGameObjectsWithTag("PatrolPoint")
.Select(go => go.transform).ToArray();
}
nextShootTime = Time.time + Random.Range(minShootDelay, maxShootDelay);
InitBehaviorTree();
StartCoroutine(FindTargetWithDelay(0.1f)); // Chạy FOV quét mục tiêu
}
private void Update()
{
if (player == null) FindPlayer();
if (Input.GetMouseButtonDown(0) && canSeePlayer && !isDodging && Time.time >= nextDodgeTime)
{
StartCoroutine(DodgeRoutine());
}
if (isDodging) return;
behaviorTreeRoot?.Evaluate();
}
private void FindPlayer()
{
GameObject playerObj = GameObject.FindGameObjectWithTag("Player");
if (playerObj != null) player = playerObj.transform;
}
// Coroutine tối ưu việc quét mục tiêu
private IEnumerator FindTargetWithDelay(float delay)
{
while (true)
{
yield return new WaitForSeconds(delay);
FindVisibleTargets();
}
}
private void FindVisibleTargets()
{
canSeePlayer = false;
Collider[] colliders = Physics.OverlapSphere(transform.position, viewRadius, targetLayerMask);
foreach (var col in colliders)
{
Transform target = col.transform;
Vector3 direction = (target.position - transform.position).normalized;
float angle = Vector3.Angle(transform.forward, direction);
// Nếu nằm trong góc nhìn
if (angle < viewAngle / 2)
int enemyLayer = LayerMask.NameToLayer("Enemy");
if (enemyLayer != -1)
{
float distanceToTarget = Vector3.Distance(transform.position, target.position);
// Nếu không có vật cản che khuất
if (!Physics.Raycast(transform.position, direction, distanceToTarget, obstacleLayerMask))
{
canSeePlayer = true;
isInvestigating = true;
lastKnownPlayerPosition = target.position;
Debug.DrawLine(transform.position, target.position, Color.blue, 0.1f);
break; // Thấy player rồi thì dừng vòng lặp
}
gameObject.layer = enemyLayer;
Debug.Log($"[AI {npcName}] Đã chuyển sang Layer: Enemy");
}
else
{
Debug.LogWarning($"[AI {npcName}] CẢNH BÁO: Không tìm thấy Layer 'Enemy' trong Project! Hãy tạo Layer 'Enemy' để súng có thể bắn trúng.");
}
}
rb.isKinematic = true;
rb.freezeRotation = true;
startPosition = transform.position;
if (player == null)
{
GameObject playerObj = GameObject.FindGameObjectWithTag("Player");
if (playerObj != null) player = playerObj.transform;
}
InitTree();
}
private void InitBehaviorTree()
void InitTree()
{
// 1. Cầm Artifact -> Đứng bắn
var laserSequence = new Sequence(new List<Node>
{
new TaskNode(CheckHasArtifact),
new TaskNode(ActionFocusAndShoot)
});
var dodgeSequence = new Sequence(new List<Node> { new TaskNode(CheckDodgeConditions), new TaskNode(ActionDodge) });
var panicSequence = new Sequence(new List<Node> { new TaskNode(CheckPanicConditions), new TaskNode(ActionRetreat) }); // Thay Panic bằng Retreat
var laserSequence = new Sequence(new List<Node> { new TaskNode(CheckCombatConditions), new TaskNode(ActionFocusAndShoot) });
var chaseSequence = new Sequence(new List<Node> { new TaskNode(CheckCanSeePlayer), new TaskNode(ActionChasePlayer) });
var investigateSequence = new Sequence(new List<Node> { new TaskNode(CheckHasInvestigateTarget), new TaskNode(ActionInvestigate) });
var talkSequence = new Sequence(new List<Node> { new TaskNode(CheckCanTalkToNPC), new TaskNode(ActionTalk) });
var patrolAction = new TaskNode(ActionPatrol);
// 2. Thấy Player -> Đuổi theo
var chaseSequence = new Sequence(new List<Node>
{
new TaskNode(CheckCanSeePlayer),
new TaskNode(ActionMoveToPlayer)
});
// 3. Mất dấu Player -> Đi tới vị trí cuối cùng để điều tra
var investigateSequence = new Sequence(new List<Node>
{
new TaskNode(CheckShouldInvestigate),
new TaskNode(ActionInvestigate)
});
// 4. Không có gì -> Tuần tra theo điểm
var patrolNode = new TaskNode(ActionPatrol);
behaviorTreeRoot = new Selector(new List<Node>
rootNode = new Selector(new List<Node>
{
dodgeSequence,
panicSequence,
laserSequence,
chaseSequence,
investigateSequence,
patrolNode
talkSequence,
patrolAction
});
}
void Update()
{
if (player == null || health.isDead) return;
if (mainCollider != null && !mainCollider.enabled) mainCollider.enabled = true;
HandleHealthRegen();
suspicionLevel = Mathf.Max(0, suspicionLevel - Time.deltaTime * 0.5f);
if (suspicionLevel <= 0f && !isEnraged) isAggroedBySound = false;
if (!isTalking && !isDodging && !isPanicking && agent.isStopped)
agent.isStopped = false;
rootNode?.Evaluate();
}
private void HandleHealthRegen()
{
if (Time.time > lastDamageTime + regenDelay && health.currentHealth < health.maxHealth)
{
float currentRegenSpeed = regenRate;
float healthPercent = (float)health.currentHealth / health.maxHealth;
// Tăng tốc hồi máu khi máu cực thấp (< 25%)
if (healthPercent < 0.25f)
currentRegenSpeed *= 4f;
else if (healthPercent < 0.5f)
currentRegenSpeed *= 2f;
health.AddHealth((int)(currentRegenSpeed * Time.deltaTime));
}
}
#region HEALTH EVENTS
private void OnReceiveDamage(vDamage damage)
{
lastDamageTime = Time.time;
isAggroedBySound = true;
suspicionLevel = 100f;
StopConversation();
// PHẢN ỨNG TỨC THÌ: Alert toàn bộ lân cận
AlertNeighbors(damage.hitPosition);
// PHẢN ỨNG TỨC THÌ: Reset delay bắn để phản công nhanh hoặc né
nextShootTime = Time.time + 0.5f;
// Né đòn Elden Ring (Tăng tỉ lệ né khi trúng dame)
if (Time.time > nextDodgeTime && !isDodging && Random.value < 0.7f)
{
StartCoroutine(DodgeRollRoutine());
}
// Tự động Enrage nếu bị dồn vào đường cùng (nhưng đồng thời vẫn có thể bỏ chạy nếu không phẫn nộ)
if (health.currentHealth < health.maxHealth * 0.2f && !isEnraged)
{
EnterEnrageMode();
}
}
private void OnDead(GameObject killer)
{
Debug.Log($"<color=black>[AI {npcName}] DIED.</color>");
// 1. Vô hiệu hóa va chạm và di chuyển ngay lập tức
if (mainCollider != null) mainCollider.enabled = false;
agent.enabled = false;
// 2. Kích hoạt Enrage cho đồng đội xung quanh
Collider[] hitColliders = Physics.OverlapSphere(transform.position, alertRange);
foreach (var hit in hitColliders)
{
EnemyAI ally = hit.GetComponentInParent<EnemyAI>();
if (ally != null && ally != this) ally.EnterEnrageMode();
}
// 3. Tự hủy sau 3 giây (để kịp chạy animation chết hoặc hiệu ứng)
Destroy(gameObject, 3f);
this.enabled = false;
}
public void EnterEnrageMode()
{
if (isEnraged) return;
isEnraged = true;
isPanicking = false;
moveSpeed *= 1.3f; // Giảm nhẹ buff speed
minShootDelay *= 0.6f;
maxShootDelay *= 0.6f;
if (chatBubble != null) chatBubble.Show("I'LL TAKE YOU DOWN WITH ME!", 2f);
}
#endregion
#region CONDITIONS
private NodeState CheckHasArtifact()
private NodeState CheckDodgeConditions()
{
return playerHasArtifact ? NodeState.Success : NodeState.Failure;
if (isDodging) return NodeState.Success;
// Tự né khi thấy Player đang bắn
if (fov != null && fov.canSeePlayer && Mouse.current.leftButton.isPressed && Time.time > nextDodgeTime)
return NodeState.Success;
return NodeState.Failure;
}
private NodeState CheckPanicConditions()
{
if (isEnraged) return NodeState.Failure; // Đang điên thì không sợ, chiến đến chết
// Nếu máu dưới ngưỡng thiết lập (ví dụ 50%), kích hoạt trạng thái tháo chạy
if (health.currentHealth < (health.maxHealth * (panicHealthThreshold / 100f)))
{
return NodeState.Success;
}
isPanicking = false;
return NodeState.Failure;
}
private NodeState CheckCombatConditions()
{
bool shouldCombat = playerHasArtifact || isAggroedBySound || isEnraged;
if (shouldCombat) StopConversation();
return shouldCombat ? NodeState.Success : NodeState.Failure;
}
private NodeState CheckCanSeePlayer()
{
return canSeePlayer ? NodeState.Success : NodeState.Failure;
bool canSee = fov != null && fov.canSeePlayer;
if (canSee) { StopConversation(); AlertNeighbors(transform.position); suspicionLevel = 100; }
return canSee ? NodeState.Success : NodeState.Failure;
}
private NodeState CheckShouldInvestigate()
private NodeState CheckHasInvestigateTarget()
{
return isInvestigating ? NodeState.Success : NodeState.Failure;
if (fov != null && fov.lastKnownPlayerPosition != Vector3.zero && suspicionLevel > investigationThreshold)
return NodeState.Success;
return NodeState.Failure;
}
private NodeState CheckCanTalkToNPC()
{
if (playerHasArtifact || isAggroedBySound || isEnraged || (fov != null && fov.canSeePlayer)) return NodeState.Failure;
if (Time.time < lastTalkTime + talkCooldown || isTalking) return NodeState.Failure;
if (Hallucinate.AI.ConversationManager.Instance == null || !Hallucinate.AI.ConversationManager.Instance.CanStartConversation()) return NodeState.Failure;
Collider[] hitColliders = Physics.OverlapSphere(transform.position, talkRange);
foreach (var hit in hitColliders)
{
if (hit.gameObject == gameObject) continue;
EnemyAI other = hit.GetComponentInParent<EnemyAI>();
if (other != null && !other.isTalking && !other.isEnraged)
{
if (gameObject.GetInstanceID() < other.gameObject.GetInstanceID())
{
Hallucinate.AI.ConversationManager.Instance.StartConversation(this, other);
return NodeState.Success;
}
}
}
return NodeState.Failure;
}
#endregion
#region ACTIONS
private NodeState ActionPatrol()
public void HearNoise(Vector3 location, float volume)
{
if (patrolPoints.Length == 0) return NodeState.Failure;
suspicionLevel += volume * 20f;
if (fov != null) fov.lastKnownPlayerPosition = location;
if (suspicionLevel >= investigationThreshold) isAggroedBySound = true;
if (suspicionLevel >= alertNeighborsThreshold) AlertNeighbors(location);
StopConversation();
}
Debug.Log("Patrolling...");
agent.isStopped = false;
agent.speed = moveSpeed;
// Đi tới điểm tuần tra hiện tại
agent.SetDestination(patrolPoints[currentPatrolIndex].position);
// Nếu đã tới nơi, chuyển sang điểm tiếp theo
if (agent.remainingDistance <= agent.stoppingDistance && !agent.pathPending)
public void AlertNeighbors(Vector3 threatPos)
{
Collider[] hitColliders = Physics.OverlapSphere(transform.position, alertRange);
foreach (var hit in hitColliders)
{
currentPatrolIndex = (currentPatrolIndex + 1) % patrolPoints.Length;
EnemyAI neighbor = hit.GetComponentInParent<EnemyAI>();
if (neighbor != null && neighbor != this)
{
neighbor.TriggerCombatAlert(threatPos);
}
}
}
public void TriggerCombatAlert(Vector3 sourceLocation)
{
if (isEnraged) return;
suspicionLevel = 100f;
isAggroedBySound = true;
if (fov != null) fov.lastKnownPlayerPosition = sourceLocation;
StopConversation();
}
// Hành động tháo chạy khi máu thấp
private NodeState ActionRetreat()
{
isPanicking = true;
agent.isStopped = false;
agent.speed = moveSpeed * 1.3f; // Chạy nhanh hơn bình thường để thoát thân
// Tính toán hướng ngược lại với Player
Vector3 retreatDir = (transform.position - player.position).normalized;
Vector3 targetPos = transform.position + retreatDir * 15f + Random.insideUnitSphere * 5f;
if (!agent.pathPending && agent.remainingDistance < 1f)
{
NavMeshHit hit;
if (NavMesh.SamplePosition(targetPos, out hit, 10f, 1))
{
agent.SetDestination(hit.position);
}
}
if (chatBubble != null && Random.value < 0.005f) chatBubble.Show("I NEED TO RECOVER!", 1.5f);
// Khi máu đã hồi phục trên 50%, dừng chạy và quay lại tấn công
if (health.currentHealth >= health.maxHealth * 0.5f)
{
isPanicking = false;
return NodeState.Success;
}
return NodeState.Running;
}
private NodeState ActionMoveToPlayer()
private NodeState ActionTalk()
{
if (player == null) return NodeState.Failure;
if (isTalking) { agent.isStopped = true; return NodeState.Running; }
return NodeState.Failure;
}
Debug.Log("Chasing Player...");
private void StopConversation()
{
if (isTalking && Hallucinate.AI.ConversationManager.Instance != null)
{
Hallucinate.AI.ConversationManager.Instance.InterruptConversation(this);
}
}
private NodeState ActionPatrol()
{
isPanicking = false;
agent.isStopped = false;
agent.speed = chaseSpeed;
agent.SetDestination(player.position);
agent.speed = patrolSpeed;
if (!agent.pathPending && agent.remainingDistance <= agent.stoppingDistance)
{
currentWaitTime += Time.deltaTime;
if (currentWaitTime >= patrolWaitTime)
{
Vector3 randomDest = startPosition + Random.insideUnitSphere * patrolRadius;
NavMeshHit hit;
if (NavMesh.SamplePosition(randomDest, out hit, patrolRadius, 1)) agent.SetDestination(hit.position);
currentWaitTime = 0f;
}
}
return NodeState.Running;
}
private NodeState ActionChasePlayer()
{
isPanicking = false;
agent.isStopped = false;
agent.speed = moveSpeed;
agent.SetDestination(player.position);
return NodeState.Running;
}
private NodeState ActionInvestigate()
{
Debug.Log("Investigating last known position...");
agent.isStopped = false;
agent.speed = moveSpeed;
agent.SetDestination(lastKnownPlayerPosition);
// Nếu đi tới nơi mà vẫn không thấy player -> Hủy điều tra, quay về tuần tra
if (agent.remainingDistance <= agent.stoppingDistance && !agent.pathPending)
agent.speed = moveSpeed * 0.7f;
agent.SetDestination(fov.lastKnownPlayerPosition);
if (Vector3.Distance(transform.position, fov.lastKnownPlayerPosition) < 1.5f)
{
isInvestigating = false;
return NodeState.Success;
currentWaitTime += Time.deltaTime;
if (currentWaitTime > 3f) { fov.lastKnownPlayerPosition = Vector3.zero; return NodeState.Success; }
}
return NodeState.Running;
}
private NodeState ActionFocusAndShoot()
{
isPanicking = false;
if (player == null) return NodeState.Failure;
if (agent.hasPath) agent.ResetPath();
agent.isStopped = false;
agent.isStopped = true; // Đứng lại để bắn
Vector3 targetPos = player.position;
if (!playerHasArtifact && fov != null && !fov.canSeePlayer && fov.lastKnownPlayerPosition != Vector3.zero)
targetPos = fov.lastKnownPlayerPosition;
// Xoay người về phía player
Vector3 dir = player.position - transform.position;
dir.y = 0f;
if (dir != Vector3.zero)
Vector3 bodyDir = (targetPos - transform.position);
bodyDir.y = 0f;
if (bodyDir != Vector3.zero)
transform.rotation = Quaternion.Slerp(transform.rotation, Quaternion.LookRotation(bodyDir), rotateSpeed * Time.deltaTime);
if (Time.time >= nextStrafeChangeTime)
{
Quaternion targetRotation = Quaternion.LookRotation(dir);
transform.rotation = Quaternion.Slerp(transform.rotation, targetRotation, rotateSpeed * Time.deltaTime);
strafeDirectionSign = new int[] { -1, 1, 0 }[Random.Range(0, 3)];
nextStrafeChangeTime = Time.time + Random.Range(minStrafeDuration, maxStrafeDuration);
}
// Bắn
if (Time.time >= nextShootTime)
Vector3 moveDir = Vector3.zero;
if (strafeDirectionSign != 0 && bodyDir != Vector3.zero)
{
ShootLaser();
Vector3 normal = bodyDir.normalized;
moveDir = new Vector3(-normal.z, 0, normal.x) * strafeDirectionSign * personalStrafeIntensity;
float dist = Vector3.Distance(transform.position, targetPos);
if (dist > personalMinCombatDistance) moveDir += normal * personalApproachWeight;
}
if (moveDir != Vector3.zero)
{
agent.speed = moveSpeed * (isEnraged ? 1f : 0.75f);
agent.Move(moveDir.normalized * agent.speed * Time.deltaTime);
}
if (firePoint != null)
firePoint.rotation = Quaternion.LookRotation((targetPos + Vector3.up * 1f) - firePoint.position);
if (Time.time >= nextShootTime && !isShootingBurst)
{
int burstCount = Random.Range(1, (int)personalBurstMax + (isEnraged ? 2 : 0));
StartCoroutine(ShootBurstRoutine(burstCount));
nextShootTime = Time.time + Random.Range(minShootDelay, maxShootDelay);
}
return NodeState.Running;
}
private void ShootLaser()
private IEnumerator ShootBurstRoutine(int bulletCount)
{
if (laserPrefab == null || firePoint == null) return;
Instantiate(laserPrefab, firePoint.position, firePoint.rotation);
Debug.Log("Laser Shot!");
isShootingBurst = true;
for (int i = 0; i < bulletCount; i++)
{
if (laserPrefab == null || firePoint == null) break;
float spread = isEnraged ? maxSpreadAngle * 0.5f : maxSpreadAngle;
Quaternion rot = firePoint.rotation * Quaternion.Euler(Random.Range(-spread, spread), Random.Range(-spread, spread), 0f);
Instantiate(laserPrefab, firePoint.position, rot);
yield return new WaitForSeconds(isEnraged ? burstInterval * 0.7f : burstInterval);
}
isShootingBurst = false;
}
#endregion
#region DODGE MECHANIC
private IEnumerator DodgeRoutine()
private NodeState ActionDodge()
{
if (!isDodging) StartCoroutine(DodgeRollRoutine());
return NodeState.Running;
}
private IEnumerator DodgeRollRoutine()
{
Debug.Log("Dodging!");
isDodging = true;
nextDodgeTime = Time.time + dodgeCooldown;
// 1. Tắt AI tìm đường để Vật lý tiếp quản
agent.enabled = false;
rb.isKinematic = false; // Đảm bảo Rigidbody có thể nhận lực
rb.isKinematic = false;
if (mainCollider != null) mainCollider.enabled = true;
// 2. Tính toán hướng né: Random nhảy sang Trái hoặc Phải
int randomDirection = Random.Range(0, 2) == 0 ? -1 : 1;
// Lấy vector hướng ngang của NPC nhân với trái (-1) hoặc phải (1)
Vector3 dodgeDir = transform.right * randomDirection;
// Có thể cộng thêm một chút lực nhảy lên (trục Y) nếu muốn NPC hơi nảy lên
// dodgeDir.y = 0.5f;
Vector3 dir = (player.position - transform.position).normalized;
Vector3 perp = new Vector3(-dir.z, 0, dir.x) * (Random.value > 0.5f ? 1 : -1);
rb.AddForce(perp * (isEnraged ? dodgeForce * 1.3f : dodgeForce), ForceMode.Impulse);
// 3. Tác dụng lực đẩy tức thời (Impulse)
rb.AddForce(dodgeDir * dodgeForce, ForceMode.Impulse);
// 4. Chờ NPC văng đi trong thời gian chỉ định
yield return new WaitForSeconds(dodgeDuration);
// 5. Thắng gấp (Dừng toàn bộ gia tốc vật lý lại)
// Lưu ý: Unity 6 dùng linearVelocity thay vì velocity như các bản cũ
rb.linearVelocity = Vector3.zero;
rb.angularVelocity = Vector3.zero;
// 6. Bật lại AI tìm đường
rb.isKinematic = true; // Trả lại Rigidbody về trạng thái không ảnh hưởng vật lý
rb.linearVelocity = Vector3.zero;
rb.isKinematic = true;
agent.enabled = true;
nextDodgeTime = Time.time + (isEnraged ? dodgeCooldown * 0.6f : dodgeCooldown);
isDodging = false;
}
#endregion
// Vẽ FOV trên Scene để dễ debug
private void OnDrawGizmosSelected()
public void ProcessDialogueResult(string json)
{
Gizmos.color = Color.white;
Gizmos.DrawWireSphere(transform.position, viewRadius);
try
{
DialogueResult result = JsonUtility.FromJson<DialogueResult>(json);
if (chatBubble != null) chatBubble.Show(result.text);
Vector3 viewAngleA = DirFromAngle(-viewAngle / 2);
Vector3 viewAngleB = DirFromAngle(viewAngle / 2);
// Áp dụng modifiers từ Gemini
moveSpeed = Mathf.Clamp(moveSpeed + result.speedMod, 1f, 8f);
suspicionLevel = Mathf.Clamp(suspicionLevel + result.suspicionMod, 0, 100);
// Modifier hung hãn: giảm delay bắn (max 50%)
minShootDelay = Mathf.Clamp(minShootDelay * (1f - result.aggressionMod), 0.5f, 5f);
maxShootDelay = Mathf.Clamp(maxShootDelay * (1f - result.aggressionMod), 1f, 10f);
Gizmos.color = Color.yellow;
Gizmos.DrawLine(transform.position, transform.position + viewAngleA * viewRadius);
Gizmos.DrawLine(transform.position, transform.position + viewAngleB * viewRadius);
// Modifier can đảm: thay đổi ngưỡng panic
panicHealthThreshold = Mathf.Clamp(panicHealthThreshold - result.braveryMod, 0, 80);
// Modifier máu
if (result.healthMod != 0)
{
health.AddHealth((int)result.healthMod);
}
lastTalkTime = Time.time;
Debug.Log($"[AI {npcName}] Gemini influence: Speed:{result.speedMod}, Aggro:{result.aggressionMod}, Bravery:{result.braveryMod}");
}
catch { if (chatBubble != null) chatBubble.Show(json); }
}
private Vector3 DirFromAngle(float angleInDegrees)
public void SetTalkingPartner(EnemyAI partner) { talkingPartner = partner; }
public void FaceTarget(Vector3 pos)
{
angleInDegrees += transform.eulerAngles.y;
return new Vector3(Mathf.Sin(angleInDegrees * Mathf.Deg2Rad), 0, Mathf.Cos(angleInDegrees * Mathf.Deg2Rad));
Vector3 dir = (pos - transform.position);
dir.y = 0;
if (dir != Vector3.zero) transform.rotation = Quaternion.LookRotation(dir);
}
#endregion
private void OnDrawGizmos()
{
Gizmos.color = isEnraged ? Color.red : Color.green;
Gizmos.DrawWireSphere(transform.position, alertRange);
}
}

View File

@@ -0,0 +1,52 @@
using System.Collections;
using UnityEngine;
public class FieldOfView : MonoBehaviour
{
[Range(0, 360)]
public float viewAngle = 90f;
public float viewRadius = 20f;
public LayerMask obstacleLayerMask;
public LayerMask targetLayerMask;
[HideInInspector] public bool canSeePlayer = false;
[HideInInspector] public Vector3 lastKnownPlayerPosition;
void Start()
{
StartCoroutine(FindTargetWithDelay(0.1f));
}
IEnumerator FindTargetWithDelay(float delay)
{
while (true)
{
yield return new WaitForSeconds(delay);
FindVisibleTargets();
}
}
private void FindVisibleTargets()
{
canSeePlayer = false;
var colliders = Physics.OverlapSphere(transform.position, viewRadius, targetLayerMask);
for (int i = 0; i < colliders.Length; i++)
{
var target = colliders[i].transform;
var direction = (target.position - transform.position).normalized;
var angle = Vector3.Angle(transform.forward, direction);
if (angle < viewAngle / 2)
{
float distanceToTarget = Vector3.Distance(transform.position, target.position);
if (!Physics.Raycast(transform.position, direction, distanceToTarget, obstacleLayerMask))
{
canSeePlayer = true;
lastKnownPlayerPosition = target.position;
Debug.DrawLine(transform.position, target.position, Color.blue, 1f);
}
}
}
}
}

View File

@@ -0,0 +1,2 @@
fileFormatVersion: 2
guid: 210b37cfe4a84a34a91d0a9e58856a60

View File

@@ -21,9 +21,21 @@ namespace Hallucinate.AI
public class GeminiService : MonoBehaviour
{
public static GeminiService Instance { get; private set; }
private int activeRequests = 0;
private const int MAX_CONCURRENT_REQUESTS = 5;
[SerializeField] private string apiKey = "AQ.Ab8RN6I2hU_p8yHiPNNHtWzYBiLugbPP22gC6lzTWaYEWj4v0g"; // Replace with your key
[SerializeField] private string geminiURL = "https://generativelanguage.googleapis.com/v1beta/models/gemini-flash-latest:generateContent";
[SerializeField] private string[] apiKeys = { "YOUR_KEY_1", "YOUR_KEY_2" };
private int currentKeyIndex = 0;
[SerializeField] private string geminiURL = "https://generativelanguage.googleapis.com/v1beta/models/gemini-1.5-flash:generateContent";
private float nextRequestTime = 0f;
private string[] fallbackDialogues = {
"{ \"text\": \"Nice weather, isn't it?\", \"speedMod\": 0.0, \"suspicionMod\": -5.0, \"aggressionMod\": 0.0, \"braveryMod\": 0.0, \"healthMod\": 0.0 }",
"{ \"text\": \"Did you hear something? Probably just a rat.\", \"speedMod\": 0.0, \"suspicionMod\": 2.0, \"aggressionMod\": 0.1, \"braveryMod\": -5.0, \"healthMod\": 0.0 }",
"{ \"text\": \"I'm so tired of this shift.\", \"speedMod\": -0.2, \"suspicionMod\": 0.0, \"aggressionMod\": -0.1, \"braveryMod\": 5.0, \"healthMod\": 0.0 }",
"{ \"text\": \"You looks strong, I should be careful.\", \"speedMod\": 0.1, \"suspicionMod\": 5.0, \"aggressionMod\": -0.2, \"braveryMod\": 10.0, \"healthMod\": 0.0 }"
};
private void Awake()
{
@@ -31,19 +43,58 @@ namespace Hallucinate.AI
else { Destroy(gameObject); }
}
private string GetNextKey()
{
if (apiKeys == null || apiKeys.Length == 0) return "";
string key = apiKeys[currentKeyIndex];
currentKeyIndex = (currentKeyIndex + 1) % apiKeys.Length;
return key;
}
public void GetResponse(string persona, string prompt, Action<string> onComplete)
{
if (Time.time < nextRequestTime)
{
Debug.LogWarning("[Gemini] API is cooling down. Using fallback.");
onComplete?.Invoke(fallbackDialogues[UnityEngine.Random.Range(0, fallbackDialogues.Length)]);
return;
}
if (activeRequests >= MAX_CONCURRENT_REQUESTS)
{
onComplete?.Invoke(fallbackDialogues[UnityEngine.Random.Range(0, fallbackDialogues.Length)]);
return;
}
StartCoroutine(PostRequest(persona, prompt, onComplete));
}
private IEnumerator PostRequest(string persona, string prompt, Action<string> onComplete)
{
activeRequests++;
string jsonInstruction = " Respond ONLY with a JSON object: { " +
"'text': 'dialogue content', " +
"'speedMod': 0.0 (change movement speed), " +
"'suspicionMod': 0.0 (change suspicion level), " +
"'aggressionMod': 0.0 (0.1 to 0.5 makes NPC shoot faster, negative makes them slower), " +
"'braveryMod': 0.0 (positive makes them less likely to panic, negative makes them scared), " +
"'healthMod': 0.0 (positive heals NPC, negative damages them) " +
"}. Keep values realistic.";
string escapedPersona = persona.Replace("\"", "\\\"");
string escapedPrompt = prompt.Replace("\"", "\\\"");
var jsonBody = $@"{{
""systemInstruction"": {{""parts"": [{{ ""text"": ""{persona}"" }}]}},
""contents"": [{{""parts"": [{{ ""text"": ""{prompt}"" }}]}}]
""systemInstruction"": {{""parts"": [{{ ""text"": ""{escapedPersona} {jsonInstruction}"" }}]}},
""contents"": [{{""parts"": [{{ ""text"": ""{escapedPrompt}"" }}]}}],
""generationConfig"": {{
""maxOutputTokens"": 150,
""temperature"": 0.8,
""responseMimeType"": ""application/json""
}}
}}";
var requestURL = $"{geminiURL}?key={apiKey}";
var requestURL = $"{geminiURL}?key={GetNextKey()}";
using (var request = new UnityWebRequest(requestURL, "POST"))
{
@@ -56,21 +107,24 @@ namespace Hallucinate.AI
if (request.result == UnityWebRequest.Result.Success)
{
try
var response = JsonUtility.FromJson<GeminiResponse>(request.downloadHandler.text);
if (response?.candidates?.Length > 0 && response.candidates[0].content?.parts?.Length > 0)
{
var response = JsonUtility.FromJson<GeminiResponse>(request.downloadHandler.text);
if (response?.candidates != null && response.candidates.Length > 0)
{
onComplete?.Invoke(response.candidates[0].content.parts[0].text);
}
onComplete?.Invoke(response.candidates[0].content.parts[0].text);
}
catch (Exception e) { Debug.LogError($"[Gemini] JSON Parse Error: {e.Message}"); }
}
else
{
Debug.LogError($"[Gemini] API Error: {request.error}");
if (request.responseCode == 429)
{
nextRequestTime = Time.time + 60f;
}
onComplete?.Invoke(fallbackDialogues[UnityEngine.Random.Range(0, fallbackDialogues.Length)]);
}
}
activeRequests--;
}
}
}

View File

@@ -0,0 +1,28 @@
using UnityEngine;
using Hallucinate.AI;
public class GeminiTest : MonoBehaviour
{
void Start()
{
Debug.Log("<color=cyan>[Gemini Test]</color> Bắt đầu kiểm tra kết nối API...");
if (GeminiService.Instance == null)
{
Debug.LogError("<color=red>[Gemini Test]</color> Không tìm thấy GeminiService Instance! Hãy đảm bảo bạn đã kéo script GeminiService vào một GameObject trong Scene.");
return;
}
string testPersona = "Bạn là một robot kiểm tra hệ thống.";
string testPrompt = "Chào bạn, nếu bạn nhận được tin nhắn này, hãy trả lời: 'Kết nối Gemini thành công!'";
GeminiService.Instance.GetResponse(testPersona, testPrompt, (response) => {
string finalMsg = response;
try {
DialogueResult result = JsonUtility.FromJson<DialogueResult>(response);
finalMsg = result.text;
} catch { }
Debug.Log($"<color=green>[Gemini Test] Phản hồi từ API:</color> {finalMsg}");
});
}
}

View File

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

View File

@@ -67,12 +67,17 @@ public class GerminiNPC : MonoBehaviour
string prompt = $"Ta muốn bán cho ông món đồ này: {playerHeldItem}";
Hallucinate.AI.GeminiService.Instance.GetResponse(npcPersona, prompt, (response) => {
Debug.Log($"<color=green>Tom:</color> {response}");
string finalMsg = response;
try {
DialogueResult result = JsonUtility.FromJson<DialogueResult>(response);
finalMsg = result.text;
} catch { }
Debug.Log($"<color=green>Tom:</color> {finalMsg}");
AudioManager.Instance?.Play(responseSound, position: transform.position);
// Nếu có ChatBubble gắn kèm thì hiển thị luôn
var bubble = GetComponentInChildren<Hallucinate.UI.ChatBubble>(true);
if (bubble != null) bubble.Show(response);
if (bubble != null) bubble.Show(finalMsg);
});
yield break;

View File

@@ -106,7 +106,7 @@ public class KamikazeAI : MonoBehaviour
// HÀM TUẦN TRA NGẪU NHIÊN MỚI
private NodeState ActionRandomPatrol()
{
Debug.Log("Wandering randomly...");
// Debug.Log("Wandering randomly...");
agent.isStopped = false;
agent.speed = patrolSpeed;

View File

@@ -1,36 +1,85 @@
using System;
using UnityEngine;
using Hallucinate.Audio;
using Invector;
public class LaserProjectile : MonoBehaviour
{
public float speed = 5f;
public float speed = 15f; // Tăng tốc độ đạn để cảm giác mượt hơn
public float lifeTime = 5f;
public int damageAmount = 10;
[Header("Audio")]
public string hitSound = "Laser_Hit";
private void Start()
{
// Tự hủy sau một khoảng thời gian nếu không trúng gì
Destroy(gameObject, lifeTime);
}
private void Update()
{
transform.position +=
transform.forward *
speed *
Time.deltaTime;
// Di chuyển đạn
transform.position += transform.forward * speed * Time.deltaTime;
}
private void OnTriggerEnter(Collider other)
{
if (other.CompareTag("Player"))
// Debug: Log tên và tag của bất cứ thứ gì đạn chạm vào
Debug.Log($"Laser collided with: {other.name} | Tag: {other.tag} | Layer: {LayerMask.LayerToName(other.gameObject.layer)}");
// 1. Kiểm tra nếu trúng Player hoặc đối tượng có Health
var healthController = other.GetComponentInParent<vIHealthController>();
if (other.CompareTag("Player") || healthController != null)
{
Debug.Log("Player Hit");
if (healthController != null)
{
Debug.Log($"<color=red>HIT PLAYER!</color> Applying {damageAmount} damage.");
var damage = new vDamage(damageAmount);
damage.sender = transform;
damage.hitPosition = transform.position;
healthController.TakeDamage(damage);
}
Impact();
return;
}
AudioManager.Instance?.Play(hitSound, position: transform.position);
// KIỂM TRA LAYER "GROUND"
if (other.gameObject.layer == LayerMask.NameToLayer("Ground"))
{
Debug.Log("<color=yellow>Laser hit GROUND layer.</color>");
Impact();
return;
}
// Phá hủy đạn nếu trúng tường, sàn nhà (mọi thứ không phải trigger khác)
Destroy(gameObject);
// 2. Phá hủy đạn nếu trúng Ground, Tường, hoặc bất kỳ vật thể đặc nào (không phải Trigger)
if (!other.isTrigger)
{
Debug.Log($"Laser hit solid object: {other.name} (Ground/Obstacle). Destroying.");
Impact();
}
}
private void OnCollisionEnter(Collision other)
{
if (other.gameObject.layer == LayerMask.NameToLayer("Ground") || other.gameObject.tag == "Ground")
{
Impact();
return;
}
}
private void Impact()
{
// Chạy âm thanh
AudioManager.Instance?.Play(hitSound, position: transform.position);
// Phá hủy đạn ngay lập tức
Destroy(gameObject);
}
}

View File

@@ -0,0 +1,32 @@
using UnityEngine;
namespace Hallucinate.AI
{
public class NoiseEmitter : MonoBehaviour
{
[Header("Settings")]
public float defaultNoiseRange = 10f;
public LayerMask npcLayer;
public void EmitNoise(float volumeMultiplier = 1f)
{
float range = defaultNoiseRange * volumeMultiplier;
Collider[] hitColliders = Physics.OverlapSphere(transform.position, range, npcLayer);
foreach (var hit in hitColliders)
{
EnemyAI npc = hit.GetComponentInParent<EnemyAI>();
if (npc != null)
{
npc.HearNoise(transform.position, volumeMultiplier);
}
}
}
private void OnDrawGizmosSelected()
{
Gizmos.color = new Color(1, 1, 0, 0.3f);
Gizmos.DrawWireSphere(transform.position, defaultNoiseRange);
}
}
}

View File

@@ -0,0 +1,2 @@
fileFormatVersion: 2
guid: 67d06596d1741d34594e4a68adcaf257

View File

@@ -1,16 +0,0 @@
using UnityEngine;
public class RagNPC : MonoBehaviour
{
// 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()
{
}
}

View File

@@ -1,2 +0,0 @@
fileFormatVersion: 2
guid: 30cdc86fe97fa95428a4b31052cfb22f

View File

@@ -1,44 +1,53 @@
using UnityEngine;
using UnityEngine.SceneManagement;
using System.Collections;
using Hallucinate.Audio; // Import namespace for AudioManager
using Hallucinate.Audio;
public class FinishGate : MonoBehaviour
{
[Header("Cài đặt UI Chính")]
public GameObject winPanel;
public GameObject warningUI; // Thông báo "Bạn chưa nhặt rương nào!"
public GameObject losePanel; // Bảng Lose
public GameObject welcomeUI; // THÔNG BÁO 1: "Chào mừng!"
public GameObject warningUI; // THÔNG BÁO 2: "Bạn chưa nhặt rương nào!"
[Header("Cài đặt Sao trên HUD (Giao diện chính)")]
[Header("Cài đặt Sao trên HUD")]
public GameObject hudStar1;
public GameObject hudStar2;
public GameObject hudStar3;
[Header("Cài đặt Sao trên Bảng Win (Kết thúc)")]
[Header("Cài đặt Sao trên Bảng Win")]
public GameObject winStar1;
public GameObject winStar2;
public GameObject winStar3;
[Header("Cài đặt Âm thanh")]
public string winSound = "UI_Win";
public string loseSound = "UI_Lose"; // Âm thanh thua
public string warningSound = "UI_Warning";
public string clickSound = "UI_Click";
[Header("Cấu hình Tag")]
public string playerTag = "Player";
private bool hasEnteredOnce = false; // Theo dõi lần chạm cổng đầu tiên
private void Start()
{
Time.timeScale = 1f;
if (winPanel != null) winPanel.SetActive(false);
if (losePanel != null) losePanel.SetActive(false);
if (welcomeUI != null) welcomeUI.SetActive(false);
if (warningUI != null) warningUI.SetActive(false);
// Ẩn tất cả sao lúc bắt đầu
UpdateStarsUI(0);
UpdateWinStarsUI(0);
}
private void OnTriggerEnter(Collider other)
{
if (other.CompareTag("Check"))
if (other.CompareTag(playerTag))
{
PlayerInventory player = other.GetComponentInChildren<PlayerInventory>();
if (player == null) player = other.GetComponentInParent<PlayerInventory>();
@@ -47,55 +56,81 @@ public class FinishGate : MonoBehaviour
{
if (player.treasuresCollected > 0)
{
Debug.Log($"<color=green>[Gate]</color> VỀ ĐÍCH! Kết thúc màn chơi với {player.treasuresCollected} sao.");
WinGame(player.treasuresCollected);
}
else
{
Debug.Log("<color=yellow>[Gate]</color> Bạn chưa nhặt rương nào, hãy đi tìm rương trước khi về.");
StopAllCoroutines();
StartCoroutine(ShowTempUI(warningUI));
// Nếu là lần đầu tiên -> Hiện Welcome. Nếu là lần sau -> Hiện Warning.
if (!hasEnteredOnce)
{
hasEnteredOnce = true;
StartCoroutine(ShowTempUI(welcomeUI));
}
else
{
StartCoroutine(ShowTempUI(warningUI));
}
}
}
}
}
// Hàm public để TreasureItem có thể gọi cập nhật HUD ngay khi nhặt
public void UpdateStarsUI(int count)
{
if (hudStar1) hudStar1.SetActive(count >= 1);
if (hudStar2) hudStar2.SetActive(count >= 2);
if (hudStar3) hudStar3.SetActive(count >= 3);
if (hudStar1 != null) hudStar1.SetActive(count >= 1);
if (hudStar2 != null) hudStar2.SetActive(count >= 2);
if (hudStar3 != null) hudStar3.SetActive(count >= 3);
}
void UpdateWinStarsUI(int count)
private void UpdateWinStarsUI(int count)
{
if (winStar1) winStar1.SetActive(count >= 1);
if (winStar2) winStar2.SetActive(count >= 2);
if (winStar3) winStar3.SetActive(count >= 3);
if (winStar1 != null) winStar1.SetActive(count >= 1);
if (winStar2 != null) winStar2.SetActive(count >= 2);
if (winStar3 != null) winStar3.SetActive(count >= 3);
}
void WinGame(int count)
private void WinGame(int count)
{
if (winPanel != null)
{
winPanel.SetActive(true);
UpdateWinStarsUI(count); // Hiện số sao tương ứng trên bảng kết thúc
UpdateWinStarsUI(count);
}
AudioManager.PlayGlobal(winSound); // Chạy âm thanh thắng cuộc
AudioManager.PlayGlobal(winSound);
Time.timeScale = 0f;
Cursor.lockState = CursorLockMode.None;
Cursor.visible = true;
}
IEnumerator ShowTempUI(GameObject ui)
public void LoseGame()
{
if (losePanel != null)
{
losePanel.SetActive(true);
}
AudioManager.PlayGlobal(loseSound);
Time.timeScale = 0f;
Cursor.lockState = CursorLockMode.None;
Cursor.visible = true;
}
private IEnumerator ShowTempUI(GameObject ui)
{
if (ui == null) yield break;
// Tắt tất cả UI tạm thời khác trước khi bật cái mới để tránh đè chữ
if (welcomeUI != null) welcomeUI.SetActive(false);
if (warningUI != null) warningUI.SetActive(false);
ui.SetActive(true);
if (ui == warningUI) AudioManager.PlayGlobal(warningSound); // Chạy âm thanh cảnh báo
if (ui == warningUI)
{
AudioManager.PlayGlobal(warningSound);
}
yield return new WaitForSeconds(3f);
ui.SetActive(false);
@@ -103,17 +138,17 @@ public class FinishGate : MonoBehaviour
public void RestartGame()
{
AudioManager.PlayGlobal(clickSound); // Âm thanh click nút
AudioManager.PlayGlobal(clickSound);
Time.timeScale = 1f;
SceneManager.LoadScene(SceneManager.GetActiveScene().buildIndex);
}
public void QuitGame()
{
AudioManager.PlayGlobal(clickSound); // Âm thanh click nút
AudioManager.PlayGlobal(clickSound);
Application.Quit();
#if UNITY_EDITOR
UnityEditor.EditorApplication.isPlaying = false;
#endif
}
}
}

View File

@@ -1,52 +1,55 @@
using UnityEngine;
using System.Collections;
using Hallucinate.Audio;
using Hallucinate.Audio;
public class TreasureItem : MonoBehaviour
{
[Header("Cài đặt UI thông báo")]
public GameObject notificationText; // Text "Đã nhặt Cổ vật"
[Tooltip("Kéo Text 'Đã nhặt được cổ vật hãy trốn thoát ra khỏi đây' vào đây")]
public GameObject notificationText;
[Header("Cài đặt Âm thanh")]
public string pickupSound = "Item_Pickup";
[Header("Cấu hình Tag")]
public string playerTag = "Player";
private bool isCollected = false;
private void Start()
{
if (notificationText != null)
{
notificationText.SetActive(false);
}
}
private void OnTriggerEnter(Collider other)
{
if (other.CompareTag("Player"))
if (!isCollected && other.CompareTag(playerTag))
{
PlayerInventory player = other.GetComponentInChildren<PlayerInventory>();
if (player == null) player = other.GetComponentInParent<PlayerInventory>();
if (player != null)
{
// 1. Tăng số lượng rương đang giữ
isCollected = true;
player.treasuresCollected++;
Debug.Log($"<color=cyan>[Chest]</color> NHẶT THÀNH CÔNG! Số rương hiện tại: {player.treasuresCollected}");
// 2. Cập nhật sao trên HUD ngay lập tức (Tìm FinishGate để mượn hàm update)
FinishGate gate = Object.FindAnyObjectByType<FinishGate>();
if (gate != null)
{
gate.UpdateStarsUI(player.treasuresCollected);
}
// 3. Kích hoạt trạng thái truy đuổi cho toàn bộ Enemy AI
SetEnemiesAlertState(true);
// 4. Chạy âm thanh nhặt đồ
if (AudioManager.Instance != null)
{
AudioManager.Instance.Play(pickupSound, position: transform.position);
}
if (notificationText != null)
{
StopAllCoroutines();
StartCoroutine(ShowNotification());
}
// Biến mất rương
gameObject.SetActive(false);
StartCoroutine(HandlePickupRoutine());
}
}
}
@@ -56,14 +59,38 @@ public class TreasureItem : MonoBehaviour
EnemyAI[] allEnemies = Object.FindObjectsByType<EnemyAI>(FindObjectsSortMode.None);
foreach (EnemyAI enemy in allEnemies)
{
enemy.playerHasArtifact = state;
if (enemy != null) enemy.playerHasArtifact = state;
}
}
IEnumerator ShowNotification()
private IEnumerator HandlePickupRoutine()
{
notificationText.SetActive(true);
yield return new WaitForSeconds(2f);
notificationText.SetActive(false);
HideTreasureModel();
if (notificationText != null)
{
notificationText.SetActive(true);
}
yield return new WaitForSeconds(3f); // Tăng lên 3s để người chơi kịp đọc dòng chữ dài
if (notificationText != null)
{
notificationText.SetActive(false);
}
gameObject.SetActive(false);
}
}
private void HideTreasureModel()
{
Collider col = GetComponent<Collider>();
if (col != null) col.enabled = false;
MeshRenderer[] renderers = GetComponentsInChildren<MeshRenderer>();
foreach (MeshRenderer r in renderers)
{
r.enabled = false;
}
}
}

View File

@@ -12,4 +12,4 @@ MonoBehaviour:
m_Script: {fileID: 11500000, guid: 2f22f37f63bcec14080b11ce5e381ce6, type: 3}
m_Name: vEditorStartupPrefs
m_EditorClassIdentifier:
displayWelcomeScreen: 1
displayWelcomeScreen: 0

View File

@@ -98,6 +98,13 @@ namespace Invector.vCharacterController
private void OnDead(GameObject arg0)
{
ShowText("You are Dead!");
// Gọi hàm LoseGame từ script FinishGate khi người chơi chết
FinishGate gate = Object.FindAnyObjectByType<FinishGate>();
if (gate != null)
{
gate.LoseGame();
}
}
public virtual void UpdateHUD(vThirdPersonController cc)

View File

@@ -318,6 +318,14 @@ namespace Invector.vCharacterController
currentStaminaRecoveryDelay = 2f;
}
public override void TakeDamage(vDamage damage)
{
Debug.Log($"Player TakeDamage called. Damage: {damage.damageValue}. Current Health before: {currentHealth}");
base.TakeDamage(damage);
Debug.Log($"Player Health after: {currentHealth}");
// Additional logic for player-specific damage handling can be added here
}
#region Check Action Triggers

View File

@@ -38,6 +38,13 @@ namespace Invector
EditorGUILayout.PropertyField(serializedObject.FindProperty("_useTriggerEnter"));
serializedObject.FindProperty("debugTextureName").boolValue = EditorGUILayout.Toggle("Debug Texture Name", serializedObject.FindProperty("debugTextureName").boolValue);
GUILayout.BeginVertical("box");
GUILayout.Box("AI Noise Settings", GUILayout.ExpandWidth(true));
EditorGUILayout.PropertyField(serializedObject.FindProperty("emitAINoise"));
EditorGUILayout.PropertyField(serializedObject.FindProperty("aiNoiseRange"));
EditorGUILayout.PropertyField(serializedObject.FindProperty("npcLayer"));
GUILayout.EndVertical();
if (serializedObject.FindProperty("animationType").enumValueIndex == (int)AnimationType.Humanoid)
{
GUILayout.BeginHorizontal("box");

View File

@@ -13,19 +13,24 @@ Material:
m_ModifiedSerializedProperties: 0
m_ValidKeywords:
- _COLOROVERLAY_ON
- _DISTORTION_ON
- _FADING_ON
- _FLIPBOOKBLENDING_ON
- _SOFTPARTICLES_ON
- _SURFACE_TYPE_TRANSPARENT
m_InvalidKeywords:
- EFFECT_BUMP
- _ALPHABLEND_ON
- _FLIPBOOKBLENDING_OFF
- _REQUIRE_UV2
m_LightmapFlags: 0
m_EnableInstancingVariants: 0
m_DoubleSidedGI: 0
m_CustomRenderQueue: -1
m_CustomRenderQueue: 3000
stringTagMap:
RenderType: Opaque
disabledShaderPasses: []
RenderType: Transparent
disabledShaderPasses:
- DepthOnly
- SHADOWCASTER
m_LockedProperties:
m_SavedProperties:
serializedVersion: 3
@@ -88,8 +93,8 @@ Material:
- _DistortionEnabled: 1
- _DistortionStrength: 1
- _DistortionStrengthScaled: 0.1
- _DstBlend: 0
- _DstBlendAlpha: 0
- _DstBlend: 10
- _DstBlendAlpha: 10
- _EmissionEnabled: 1
- _FlipbookBlending: 1
- _FlipbookMode: 1
@@ -108,11 +113,11 @@ Material:
- _SoftParticlesFarFadeDistance: 1
- _SoftParticlesNearFadeDistance: 0
- _SpecularHighlights: 1
- _SrcBlend: 1
- _SrcBlend: 5
- _SrcBlendAlpha: 1
- _Surface: 1
- _UVSec: 0
- _ZWrite: 1
- _ZWrite: 0
m_Colors:
- _BaseColor: {r: 1, g: 1, b: 1, a: 1}
- _BaseColorAddSubDiff: {r: 0, g: 0, b: 0, a: 0}
@@ -121,7 +126,7 @@ Material:
- _ColorAddSubDiff: {r: 1, g: 0, b: 0, a: 0}
- _EmisColor: {r: 1, g: 1, b: 1, a: 1}
- _EmissionColor: {r: 0.31132078, g: 0.31132078, b: 0.31132078, a: 1}
- _SoftParticleFadeParams: {r: 0, g: 0, b: 0, a: 0}
- _SoftParticleFadeParams: {r: 0, g: 1, b: 0, a: 0}
- _TintColor: {r: 1, g: 1, b: 1, a: 1}
m_BuildTextureStacks: []
m_AllowLocking: 1

View File

@@ -20,6 +20,11 @@ namespace Invector
public bool SpawnParticle { get { return _spawnParticle; } set { _spawnParticle = value; } }
public bool SpawnStepMark { get { return _spawnStepMark; } set { _spawnStepMark = value; } }
[Header("AI Noise Settings")]
public bool emitAINoise = true;
public float aiNoiseRange = 10f;
public LayerMask npcLayer;
protected int surfaceIndex = 0;
protected Terrain terrain;
protected TerrainCollider terrainCollider;
@@ -248,6 +253,37 @@ namespace Invector
currentFootStep.spawnParticleEffect = SpawnParticle;
currentFootStep.spawnStepMarkEffect = SpawnStepMark;
SpawnSurfaceEffect(currentFootStep);
if (emitAINoise) EmitAINoise();
}
}
protected virtual void EmitAINoise()
{
float currentRange = aiNoiseRange;
float currentVolume = Volume;
// Kiểm tra trạng thái ngồi từ Animator
Animator anim = GetComponent<Animator>();
if (anim != null)
{
// Nếu đang ngồi (IsCrouching = true), giảm 50% vùng phát hiện và âm lượng
if (anim.GetBool("IsCrouching"))
{
currentRange *= 0.5f;
currentVolume *= 0.5f;
}
}
// Tìm tất cả Collider trong bán kính tiếng động thuộc Layer NPC
Collider[] hitColliders = Physics.OverlapSphere(transform.position, currentRange, npcLayer);
foreach (var hit in hitColliders)
{
var npc = hit.GetComponentInParent<EnemyAI>();
if (npc != null)
{
npc.HearNoise(transform.position, currentVolume);
}
}
}

View File

@@ -115,7 +115,7 @@ Material:
- _ZWrite: 0
m_Colors:
- _CameraFadeParams: {r: 0, g: Infinity, b: 0, a: 0}
- _Color: {r: 1, g: 0.8260788, b: 0.08962262, a: 0.25}
- _Color: {r: 0.6132076, g: 0.1454958, b: 0.118592024, a: 0.1882353}
- _Emission: {r: 0, g: 0, b: 0, a: 0}
- _EmissionColor: {r: 0, g: 0, b: 0, a: 1}
- _Flip: {r: 1, g: 1, b: 1, a: 1}
@@ -123,6 +123,6 @@ Material:
- _SoftParticleFadeParams: {r: 0, g: 0, b: 0, a: 0}
- _SpecColor: {r: 0, g: 0, b: 0, a: 0}
- _Specular: {r: 1, g: 1, b: 1, a: 0}
- _TintColor: {r: 1, g: 0.8260788, b: 0.08962262, a: 0.25}
- _TintColor: {r: 0.6132076, g: 0.1454958, b: 0.118592024, a: 0.1882353}
m_BuildTextureStacks: []
m_AllowLocking: 1

View File

@@ -51,6 +51,9 @@ namespace Invector.vShooter
{
AddTrailPosition();
}
// Log diagnostic: Kiểm tra Layer mà đạn có thể bắn trúng
Debug.Log($"<color=cyan>PROJECTILE SPAWNED:</color> HitLayer Mask: {hitLayer.value}. Đảm bảo Layer của Enemy nằm trong mask này.");
}
protected virtual void Update()
@@ -61,6 +64,7 @@ namespace Invector.vShooter
transform.rotation = Quaternion.LookRotation(_rigidBody.linearVelocity.normalized, transform.up);
}
// Thực hiện raycast để kiểm tra va chạm
if (Physics.Linecast(previousPosition, transform.position + transform.forward * 0.5f, out hitInfo, hitLayer))
{
if (!hitInfo.collider)
@@ -98,17 +102,39 @@ namespace Invector.vShooter
damage.hitPosition = hitInfo.point;
damage.receiver = hitInfo.collider.transform;
damage.force = transform.forward * damage.damageValue * forceMultiplier;
if (damage.damageValue > 0)
{
onPassDamage.Invoke(damage);
hitInfo.collider.gameObject.ApplyDamage(damage, damage.sender ? damage.sender.GetComponent<vIMeleeFighter>() : null);
// 1. Log khi trúng bất cứ thứ gì
Debug.Log($"<color=yellow>PROJECTILE HIT:</color> {hitInfo.collider.name} | Tag: {hitInfo.collider.tag} | Layer: {LayerMask.LayerToName(hitInfo.collider.gameObject.layer)}");
// 2. Tìm đối tượng nhận sát thương (ưu tiên tìm ở cha nếu trúng collider con)
var damageReceiver = hitInfo.collider.gameObject.GetComponentInParent<vIDamageReceiver>();
if (damageReceiver != null)
{
if (hitInfo.collider.CompareTag("Enemy") || damageReceiver.gameObject.CompareTag("Enemy"))
{
Debug.Log($"<color=green>APPLYING DAMAGE TO ENEMY:</color> {damageReceiver.gameObject.name}. Damage: {damage.damageValue}");
}
// Gửi sát thương đến đối tượng tìm thấy
damageReceiver.gameObject.ApplyDamage(damage, damage.sender ? damage.sender.GetComponent<vIMeleeFighter>() : null);
}
else
{
Debug.LogWarning($"<color=orange>NO DAMAGE RECEIVER FOUND</color> on {hitInfo.collider.name} or its parents. Đảm bảo Enemy có component vHealthController.");
}
}
var rigb = hitInfo.collider.gameObject.GetComponent<Rigidbody>();
if (rigb)
if (rigb && !rigb.isKinematic)
{
rigb.AddForce(transform.forward * damage.damageValue * forceMultiplier, ForceMode.Impulse);
// GIẢM LỰC ĐẨY: Chỉ dùng 10% lực để NPC không bị bay quá xa
float realisticForce = (damage.damageValue * forceMultiplier) * 0.1f;
rigb.AddForce(transform.forward * realisticForce, ForceMode.Impulse);
}
startPosition = transform.position;
@@ -268,8 +294,20 @@ namespace Invector.vShooter
}
}
}
else
else
{
// DIAGNOSTIC X-RAY: Kiểm tra xem có trúng cái gì mà bị HitLayer cấm không?
RaycastHit diagHit;
if (Physics.Linecast(previousPosition, transform.position + transform.forward * 0.5f, out diagHit, ~0)) // ~0 là tất cả layer
{
if (diagHit.collider.CompareTag("Enemy") || diagHit.collider.name.Contains("Guard") || diagHit.collider.GetComponentInParent<EnemyAI>() != null)
{
Debug.LogError($"<color=red>LAYER BLOCK DETECTED!</color> Đạn vừa bay xuyên qua {diagHit.collider.name}. " +
$"Đối tượng này ở Layer: {LayerMask.LayerToName(diagHit.collider.gameObject.layer)} ({diagHit.collider.gameObject.layer}). " +
$"NHƯNG súng của bạn đang dùng HitLayer Mask: {hitLayer.value}, không bao gồm layer này!");
}
}
if (debugTrajetory)
{
Debug.DrawLine(transform.position, previousPosition, debugColor, 10f);
@@ -277,7 +315,8 @@ namespace Invector.vShooter
}
previousPosition = transform.position;
}

View File

@@ -242,6 +242,21 @@ namespace Invector.vShooter
#endregion
#region Protected Methods
protected virtual void Start()
{
// TỰ ĐỘNG SỬA LỖI LAYER: Đảm bảo súng luôn có thể bắn trúng Enemy
int enemyLayer = LayerMask.NameToLayer("Enemy");
if (enemyLayer != -1)
{
// Cưỡng bức thêm Layer Enemy vào mask (Dùng toán tử bit OR)
hitLayer.value |= (1 << enemyLayer);
Debug.Log($"<color=green>[WEAPON AUTO-FIX]</color> {gameObject.name} hiện đã có thể bắn trúng Layer 'Enemy' (Mask mới: {hitLayer.value}).");
}
else
{
Debug.LogError("<color=red>[WEAPON ERROR]</color> Bạn chưa tạo Layer tên là 'Enemy' trong Project Settings > Tags and Layers!");
}
}
protected virtual void OnDestroy()
{
@@ -256,6 +271,14 @@ namespace Invector.vShooter
{
ShootBullet(startPoint, endPoint);
ShotEffect();
// Gửi tín hiệu tiếng súng cho toàn bộ AI lân cận
var hitColliders = Physics.OverlapSphere(muzzle.position, 50f);
foreach (var hit in hitColliders)
{
var ai = hit.GetComponentInParent<EnemyAI>();
if (ai != null) ai.TriggerCombatAlert(muzzle.position);
}
}
public virtual Vector3 Dispersion(Vector3 aim, float dispersion)
{
@@ -297,11 +320,32 @@ namespace Invector.vShooter
protected virtual void ShootBullet(Vector3 startPoint, Vector3 endPoint)
{
// TỰ ĐỘNG SỬA LỖI LAYER (Cưỡng bức mỗi khi bắn):
int enemyLayer = LayerMask.NameToLayer("Enemy");
if (enemyLayer != -1)
{
// Ép thêm Layer Enemy vào mask nếu nó bị thiếu
if ((hitLayer.value & (1 << enemyLayer)) == 0)
{
hitLayer.value |= (1 << enemyLayer);
Debug.Log($"<color=orange>[WEAPON FORCE-FIX]</color> Đã cưỡng bức thêm Layer 'Enemy' vào {gameObject.name} khi bắn.");
}
}
var dir = endPoint - startPoint;
//StartCoroutine(DebugDispersion(startPoint, endPoint));
var rotation = Quaternion.LookRotation(dir);
GameObject bulletObject = null;
var velocityChanged = 0f;
if (projectile == null)
{
Debug.LogError($"<color=red>WEAPON ERROR:</color> No Projectile Prefab assigned to {gameObject.name}!");
return;
}
Debug.Log($"<color=white>WEAPON SHOOT:</color> Spawning projectile. HitLayer: {hitLayer.value}");
if (dispersion > 0 && projectile)
{
for (int i = 0; i < projectilesPerShot; i++)
@@ -311,6 +355,12 @@ namespace Invector.vShooter
bulletObject = Instantiate(projectile, startPoint, spreadRotation);
var pCtrl = bulletObject.GetComponent<vProjectileControl>();
if (pCtrl == null)
{
Debug.LogError($"<color=red>PROJECTILE ERROR:</color> {projectile.name} does not have vProjectileControl script!");
continue;
}
if (pCtrl.debugTrajetory && i == 0)
{
startPoint.DebugPoint(Color.red, 10, 0.1f);
@@ -338,6 +388,13 @@ namespace Invector.vShooter
{
bulletObject = Instantiate(projectile, startPoint, rotation);
var pCtrl = bulletObject.GetComponent<vProjectileControl>();
if (pCtrl == null)
{
Debug.LogError($"<color=red>PROJECTILE ERROR:</color> {projectile.name} does not have vProjectileControl script!");
return;
}
if (pCtrl.debugTrajetory)
{
startPoint.DebugPoint(Color.red, 10, 0.1f);

Binary file not shown.

After

Width:  |  Height:  |  Size: 44 MiB

View File

@@ -0,0 +1,130 @@
fileFormatVersion: 2
guid: f6c8ebeb4fbe2954ba666fb8de1138f1
TextureImporter:
internalIDToNameTable: []
externalObjects: {}
serializedVersion: 13
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
flipGreenChannel: 0
isReadable: 0
streamingMipmaps: 0
streamingMipmapsPriority: 0
vTOnly: 0
ignoreMipmapLimit: 0
grayScaleToAlpha: 0
generateCubemap: 6
cubemapConvolution: 0
seamlessCubemap: 0
textureFormat: 1
maxTextureSize: 2048
textureSettings:
serializedVersion: 2
filterMode: 0
aniso: 1
mipBias: 0
wrapU: 1
wrapV: 1
wrapW: 0
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
flipbookRows: 1
flipbookColumns: 1
maxTextureSizeSet: 0
compressionQualitySet: 0
textureFormatSet: 0
ignorePngGamma: 0
applyGammaDecoding: 0
swizzle: 50462976
cookieLightType: 0
platformSettings:
- serializedVersion: 4
buildTarget: DefaultTexturePlatform
maxTextureSize: 16384
resizeAlgorithm: 0
textureFormat: -1
textureCompression: 1
compressionQuality: 50
crunchedCompression: 0
allowsAlphaSplitting: 0
overridden: 0
ignorePlatformSupport: 0
androidETC2FallbackOverride: 0
forceMaximumCompressionQuality_BC6H_BC7: 0
- serializedVersion: 4
buildTarget: Standalone
maxTextureSize: 2048
resizeAlgorithm: 0
textureFormat: -1
textureCompression: 1
compressionQuality: 50
crunchedCompression: 0
allowsAlphaSplitting: 0
overridden: 0
ignorePlatformSupport: 0
androidETC2FallbackOverride: 0
forceMaximumCompressionQuality_BC6H_BC7: 0
- serializedVersion: 4
buildTarget: Android
maxTextureSize: 2048
resizeAlgorithm: 0
textureFormat: -1
textureCompression: 1
compressionQuality: 50
crunchedCompression: 0
allowsAlphaSplitting: 0
overridden: 0
ignorePlatformSupport: 0
androidETC2FallbackOverride: 0
forceMaximumCompressionQuality_BC6H_BC7: 0
spriteSheet:
serializedVersion: 2
sprites: []
outline: []
customData:
physicsShape: []
bones: []
spriteID: 5e97eb03825dee720800000000000000
internalID: 0
vertices: []
indices:
edges: []
weights: []
secondaryTextures: []
spriteCustomMetadata:
entries: []
nameFileIdTable: {}
mipmapLimitGroupName:
pSDRemoveMatte: 0
userData:
assetBundleName:
assetBundleVariant:

File diff suppressed because one or more lines are too long

View File

@@ -31,6 +31,7 @@ TagManager:
- Interactable
- AIAction
- Check
- Ground
layers:
- Default
- TransparentFX

View File

@@ -0,0 +1,45 @@
<?xml version="1.0" encoding="utf-8"?>
<xs:schema xmlns:editor="UnityEditor.UIElements" xmlns:engine="UnityEngine.UIElements" xmlns="Hallucinate.UI.Components" elementFormDefault="qualified" targetNamespace="Hallucinate.UI.Components" xmlns:xs="http://www.w3.org/2001/XMLSchema">
<xs:import schemaLocation="UnityEngine.UIElements.xsd" namespace="UnityEngine.UIElements" />
<xs:simpleType name="VectorShapeElement_shape-type_Type">
<xs:restriction base="xs:string">
<xs:enumeration value="Pill" />
<xs:enumeration value="Polygon" />
<xs:enumeration value="Star" />
<xs:enumeration value="CustomPath" />
</xs:restriction>
</xs:simpleType>
<xs:complexType name="VectorShapeElementType">
<xs:complexContent mixed="false">
<xs:restriction base="engine:VisualElementType">
<xs:sequence minOccurs="0" maxOccurs="unbounded">
<xs:element ref="engine:VisualElement" />
</xs:sequence>
<xs:attribute default="" name="name" type="xs:string" use="optional" />
<xs:attribute default="true" name="enabled" type="xs:boolean" use="optional" />
<xs:attribute default="" name="view-data-key" type="xs:string" use="optional" />
<xs:attribute default="Position" name="picking-mode" type="engine:VisualElement_picking-mode_Type" use="optional" />
<xs:attribute default="" name="tooltip" type="xs:string" use="optional" />
<xs:attribute default="None" name="usage-hints" type="engine:VisualElement_usage-hints_Type" use="optional" />
<xs:attribute default="0" name="tabindex" type="xs:int" use="optional" />
<xs:attribute default="false" name="focusable" type="xs:boolean" use="optional" />
<xs:attribute default="" name="class" type="xs:string" use="optional" />
<xs:attribute default="" name="content-container" type="xs:string" use="optional" />
<xs:attribute default="" name="style" type="xs:string" use="optional" />
<xs:attribute default="null" name="data-source" type="xs:string" use="optional" />
<xs:attribute default="" name="data-source-path" type="xs:string" use="optional" />
<xs:attribute default="null" name="data-source-type" type="xs:string" use="optional" />
<xs:attribute default="Pill" name="shape-type" type="VectorShapeElement_shape-type_Type" use="optional" />
<xs:attribute default="RGBA(1.000, 1.000, 1.000, 1.000)" name="fill-color" type="xs:string" use="optional" />
<xs:attribute default="RGBA(0.000, 0.000, 0.000, 1.000)" name="stroke-color" type="xs:string" use="optional" />
<xs:attribute default="2" name="stroke-width" type="xs:float" use="optional" />
<xs:attribute default="10" name="corner-radius" type="xs:float" use="optional" />
<xs:attribute default="5" name="sides" type="xs:int" use="optional" />
<xs:attribute default="0.5" name="star-inwardness" type="xs:float" use="optional" />
<xs:attribute default="" name="path-data" type="xs:string" use="optional" />
<xs:anyAttribute processContents="lax" />
</xs:restriction>
</xs:complexContent>
</xs:complexType>
<xs:element name="VectorShapeElement" substitutionGroup="engine:VisualElement" type="VectorShapeElementType" />
</xs:schema>

View File

@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="utf-8"?>
<xs:schema xmlns:editor="UnityEditor.UIElements" xmlns:engine="UnityEngine.UIElements" xmlns="UnityEditor.Accessibility" elementFormDefault="qualified" xmlns:xs="http://www.w3.org/2001/XMLSchema">
<xs:schema xmlns:editor="UnityEditor.UIElements" xmlns:engine="UnityEngine.UIElements" xmlns="Hallucinate.UI.Components" elementFormDefault="qualified" xmlns:xs="http://www.w3.org/2001/XMLSchema">
<xs:import schemaLocation="UnityEngine.UIElements.xsd" namespace="UnityEngine.UIElements" />
<xs:import schemaLocation="UnityEditor.ShaderGraph.Drawing.xsd" namespace="UnityEditor.ShaderGraph.Drawing" />
<xs:import schemaLocation="UnityEditor.Rendering.xsd" namespace="UnityEditor.Rendering" />
@@ -22,4 +22,5 @@
<xs:import schemaLocation="Unity.Profiling.Editor.xsd" namespace="Unity.Profiling.Editor" />
<xs:import schemaLocation="UnityEditor.Inspector.GraphicsSettingsInspectors.xsd" namespace="UnityEditor.Inspector.GraphicsSettingsInspectors" />
<xs:import schemaLocation="UnityEditor.Accessibility.xsd" namespace="UnityEditor.Accessibility" />
<xs:import schemaLocation="Hallucinate.UI.Components.xsd" namespace="Hallucinate.UI.Components" />
</xs:schema>

View File

@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="utf-8"?>
<xs:schema xmlns:editor="UnityEditor.UIElements" xmlns:engine="UnityEngine.UIElements" xmlns="UnityEditor.Accessibility" elementFormDefault="qualified" targetNamespace="Unity.Multiplayer.PlayMode.Editor" xmlns:xs="http://www.w3.org/2001/XMLSchema">
<xs:schema xmlns:editor="UnityEditor.UIElements" xmlns:engine="UnityEngine.UIElements" xmlns="Hallucinate.UI.Components" elementFormDefault="qualified" targetNamespace="Unity.Multiplayer.PlayMode.Editor" xmlns:xs="http://www.w3.org/2001/XMLSchema">
<xs:import schemaLocation="UnityEngine.UIElements.xsd" namespace="UnityEngine.UIElements" />
<xs:complexType name="PlayersListViewType">
<xs:complexContent mixed="false">

View File

@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="utf-8"?>
<xs:schema xmlns:editor="UnityEditor.UIElements" xmlns:engine="UnityEngine.UIElements" xmlns="UnityEditor.Accessibility" elementFormDefault="qualified" targetNamespace="Unity.Profiling.Editor.UI" xmlns:xs="http://www.w3.org/2001/XMLSchema">
<xs:schema xmlns:editor="UnityEditor.UIElements" xmlns:engine="UnityEngine.UIElements" xmlns="Hallucinate.UI.Components" elementFormDefault="qualified" targetNamespace="Unity.Profiling.Editor.UI" xmlns:xs="http://www.w3.org/2001/XMLSchema">
<xs:import schemaLocation="UnityEngine.UIElements.xsd" namespace="UnityEngine.UIElements" />
<xs:complexType name="BoxPlotGraphType">
<xs:complexContent mixed="false">

View File

@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="utf-8"?>
<xs:schema xmlns:editor="UnityEditor.UIElements" xmlns:engine="UnityEngine.UIElements" xmlns="UnityEditor.Accessibility" elementFormDefault="qualified" targetNamespace="Unity.Profiling.Editor" xmlns:xs="http://www.w3.org/2001/XMLSchema">
<xs:schema xmlns:editor="UnityEditor.UIElements" xmlns:engine="UnityEngine.UIElements" xmlns="Hallucinate.UI.Components" elementFormDefault="qualified" targetNamespace="Unity.Profiling.Editor" xmlns:xs="http://www.w3.org/2001/XMLSchema">
<xs:import schemaLocation="UnityEngine.UIElements.xsd" namespace="UnityEngine.UIElements" />
<xs:simpleType name="SelectableLabel_vertical-scroller-visibility_Type">
<xs:restriction base="xs:string">

View File

@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="utf-8"?>
<xs:schema xmlns:editor="UnityEditor.UIElements" xmlns:engine="UnityEngine.UIElements" xmlns="UnityEditor.Accessibility" elementFormDefault="qualified" targetNamespace="Unity.UI.Builder" xmlns:xs="http://www.w3.org/2001/XMLSchema">
<xs:schema xmlns:editor="UnityEditor.UIElements" xmlns:engine="UnityEngine.UIElements" xmlns="Hallucinate.UI.Components" elementFormDefault="qualified" targetNamespace="Unity.UI.Builder" xmlns:xs="http://www.w3.org/2001/XMLSchema">
<xs:import schemaLocation="UnityEngine.UIElements.xsd" namespace="UnityEngine.UIElements" />
<xs:complexType name="CategoryDropdownFieldType">
<xs:complexContent mixed="false">

View File

@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="utf-8"?>
<xs:schema xmlns:editor="UnityEditor.UIElements" xmlns:engine="UnityEngine.UIElements" xmlns="UnityEditor.Accessibility" elementFormDefault="qualified" targetNamespace="Unity.UIToolkit.Editor" xmlns:xs="http://www.w3.org/2001/XMLSchema">
<xs:schema xmlns:editor="UnityEditor.UIElements" xmlns:engine="UnityEngine.UIElements" xmlns="Hallucinate.UI.Components" elementFormDefault="qualified" targetNamespace="Unity.UIToolkit.Editor" xmlns:xs="http://www.w3.org/2001/XMLSchema">
<xs:import schemaLocation="UnityEngine.UIElements.xsd" namespace="UnityEngine.UIElements" />
<xs:complexType name="VisualElementInspectorType">
<xs:complexContent mixed="false">

View File

@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="utf-8"?>
<xs:schema xmlns:editor="UnityEditor.UIElements" xmlns:engine="UnityEngine.UIElements" xmlns="UnityEditor.Accessibility" elementFormDefault="qualified" targetNamespace="UnityEditor.Accessibility" xmlns:xs="http://www.w3.org/2001/XMLSchema">
<xs:schema xmlns:editor="UnityEditor.UIElements" xmlns:engine="UnityEngine.UIElements" xmlns="Hallucinate.UI.Components" elementFormDefault="qualified" targetNamespace="UnityEditor.Accessibility" xmlns:xs="http://www.w3.org/2001/XMLSchema">
<xs:import schemaLocation="UnityEngine.UIElements.xsd" namespace="UnityEngine.UIElements" />
<xs:simpleType name="AccessibilityHierarchyTreeViewItem_role_Type">
<xs:restriction base="xs:string">
@@ -38,7 +38,7 @@
<xs:attribute default="false" name="is-root" type="xs:boolean" use="optional" />
<xs:attribute default="0" name="id" type="xs:int" use="optional" />
<xs:attribute default="" name="label" type="xs:string" use="optional" />
<xs:attribute default="None" name="role" type="AccessibilityHierarchyTreeViewItem_role_Type" use="optional" />
<xs:attribute default="None" name="role" xmlns:q1="UnityEditor.Accessibility" type="q1:AccessibilityHierarchyTreeViewItem_role_Type" use="optional" />
<xs:attribute default="false" name="is-active" type="xs:boolean" use="optional" />
<xs:attribute default="" name="content-container" type="xs:string" use="optional" />
<xs:attribute default="" name="class" type="xs:string" use="optional" />
@@ -47,7 +47,7 @@
</xs:restriction>
</xs:complexContent>
</xs:complexType>
<xs:element name="AccessibilityHierarchyTreeViewItem" substitutionGroup="engine:VisualElement" type="AccessibilityHierarchyTreeViewItemType" />
<xs:element name="AccessibilityHierarchyTreeViewItem" substitutionGroup="engine:VisualElement" xmlns:q2="UnityEditor.Accessibility" type="q2:AccessibilityHierarchyTreeViewItemType" />
<xs:complexType name="AccessibilityHierarchyTreeViewType">
<xs:complexContent mixed="false">
<xs:restriction base="engine:VisualElementType">
@@ -70,7 +70,7 @@
</xs:restriction>
</xs:complexContent>
</xs:complexType>
<xs:element name="AccessibilityHierarchyTreeView" substitutionGroup="engine:VisualElement" type="AccessibilityHierarchyTreeViewType" />
<xs:element name="AccessibilityHierarchyTreeView" substitutionGroup="engine:VisualElement" xmlns:q3="UnityEditor.Accessibility" type="q3:AccessibilityHierarchyTreeViewType" />
<xs:complexType name="TreeViewSearchBarType">
<xs:complexContent mixed="false">
<xs:restriction base="engine:VisualElementType">
@@ -93,7 +93,7 @@
</xs:restriction>
</xs:complexContent>
</xs:complexType>
<xs:element name="TreeViewSearchBar" substitutionGroup="engine:VisualElement" type="TreeViewSearchBarType" />
<xs:element name="TreeViewSearchBar" substitutionGroup="engine:VisualElement" xmlns:q4="UnityEditor.Accessibility" type="q4:TreeViewSearchBarType" />
<xs:complexType name="SearchableLabelType">
<xs:complexContent mixed="false">
<xs:restriction base="engine:VisualElementType">
@@ -117,5 +117,5 @@
</xs:restriction>
</xs:complexContent>
</xs:complexType>
<xs:element name="SearchableLabel" substitutionGroup="engine:VisualElement" type="SearchableLabelType" />
<xs:element name="SearchableLabel" substitutionGroup="engine:VisualElement" xmlns:q5="UnityEditor.Accessibility" type="q5:SearchableLabelType" />
</xs:schema>

View File

@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="utf-8"?>
<xs:schema xmlns:editor="UnityEditor.UIElements" xmlns:engine="UnityEngine.UIElements" xmlns="UnityEditor.Accessibility" elementFormDefault="qualified" targetNamespace="UnityEditor.Audio.UIElements" xmlns:xs="http://www.w3.org/2001/XMLSchema">
<xs:schema xmlns:editor="UnityEditor.UIElements" xmlns:engine="UnityEngine.UIElements" xmlns="Hallucinate.UI.Components" elementFormDefault="qualified" targetNamespace="UnityEditor.Audio.UIElements" xmlns:xs="http://www.w3.org/2001/XMLSchema">
<xs:import schemaLocation="UnityEngine.UIElements.xsd" namespace="UnityEngine.UIElements" />
<xs:complexType name="AudioRandomRangeSliderTrackerType">
<xs:complexContent mixed="false">

View File

@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="utf-8"?>
<xs:schema xmlns:editor="UnityEditor.UIElements" xmlns:engine="UnityEngine.UIElements" xmlns="UnityEditor.Accessibility" elementFormDefault="qualified" targetNamespace="UnityEditor.Experimental.GraphView" xmlns:xs="http://www.w3.org/2001/XMLSchema">
<xs:schema xmlns:editor="UnityEditor.UIElements" xmlns:engine="UnityEngine.UIElements" xmlns="Hallucinate.UI.Components" elementFormDefault="qualified" targetNamespace="UnityEditor.Experimental.GraphView" xmlns:xs="http://www.w3.org/2001/XMLSchema">
<xs:import schemaLocation="UnityEngine.UIElements.xsd" namespace="UnityEngine.UIElements" />
<xs:complexType name="ResizableElementType">
<xs:complexContent mixed="false">
@@ -54,7 +54,7 @@
<xs:restriction base="engine:VisualElementType">
<xs:attribute default="" name="name" type="xs:string" use="optional" />
<xs:attribute default="true" name="enabled" type="xs:boolean" use="optional" />
<xs:attribute default="ed122612-cfc1-4459-a53f-86c166494d5d" name="view-data-key" type="xs:string" use="optional" />
<xs:attribute default="94681326-b8dc-4220-b769-78e48dd96237" name="view-data-key" type="xs:string" use="optional" />
<xs:attribute default="Position" name="picking-mode" type="engine:VisualElement_picking-mode_Type" use="optional" />
<xs:attribute default="" name="tooltip" type="xs:string" use="optional" />
<xs:attribute default="None" name="usage-hints" type="engine:VisualElement_usage-hints_Type" use="optional" />

View File

@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="utf-8"?>
<xs:schema xmlns:editor="UnityEditor.UIElements" xmlns:engine="UnityEngine.UIElements" xmlns="UnityEditor.Accessibility" elementFormDefault="qualified" targetNamespace="UnityEditor.Inspector.GraphicsSettingsInspectors" xmlns:xs="http://www.w3.org/2001/XMLSchema">
<xs:schema xmlns:editor="UnityEditor.UIElements" xmlns:engine="UnityEngine.UIElements" xmlns="Hallucinate.UI.Components" elementFormDefault="qualified" targetNamespace="UnityEditor.Inspector.GraphicsSettingsInspectors" xmlns:xs="http://www.w3.org/2001/XMLSchema">
<xs:import schemaLocation="UnityEngine.UIElements.xsd" namespace="UnityEngine.UIElements" />
<xs:complexType name="GraphicsSettingsInspectorTierSettingsType">
<xs:complexContent mixed="false">

View File

@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="utf-8"?>
<xs:schema xmlns:editor="UnityEditor.UIElements" xmlns:engine="UnityEngine.UIElements" xmlns="UnityEditor.Accessibility" elementFormDefault="qualified" targetNamespace="UnityEditor.Inspector" xmlns:xs="http://www.w3.org/2001/XMLSchema">
<xs:schema xmlns:editor="UnityEditor.UIElements" xmlns:engine="UnityEngine.UIElements" xmlns="Hallucinate.UI.Components" elementFormDefault="qualified" targetNamespace="UnityEditor.Inspector" xmlns:xs="http://www.w3.org/2001/XMLSchema">
<xs:import schemaLocation="UnityEngine.UIElements.xsd" namespace="UnityEngine.UIElements" />
<xs:complexType name="ClippingPlanesType">
<xs:complexContent mixed="false">

View File

@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="utf-8"?>
<xs:schema xmlns:editor="UnityEditor.UIElements" xmlns:engine="UnityEngine.UIElements" xmlns="UnityEditor.Accessibility" elementFormDefault="qualified" targetNamespace="UnityEditor.Overlays" xmlns:xs="http://www.w3.org/2001/XMLSchema">
<xs:schema xmlns:editor="UnityEditor.UIElements" xmlns:engine="UnityEngine.UIElements" xmlns="Hallucinate.UI.Components" elementFormDefault="qualified" targetNamespace="UnityEditor.Overlays" xmlns:xs="http://www.w3.org/2001/XMLSchema">
<xs:import schemaLocation="UnityEngine.UIElements.xsd" namespace="UnityEngine.UIElements" />
<xs:complexType name="AnchoredOverlayContainerType">
<xs:complexContent mixed="false">

View File

@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="utf-8"?>
<xs:schema xmlns:editor="UnityEditor.UIElements" xmlns:engine="UnityEngine.UIElements" xmlns="UnityEditor.Accessibility" elementFormDefault="qualified" targetNamespace="UnityEditor.PackageManager.UI.Internal" xmlns:xs="http://www.w3.org/2001/XMLSchema">
<xs:schema xmlns:editor="UnityEditor.UIElements" xmlns:engine="UnityEngine.UIElements" xmlns="Hallucinate.UI.Components" elementFormDefault="qualified" targetNamespace="UnityEditor.PackageManager.UI.Internal" xmlns:xs="http://www.w3.org/2001/XMLSchema">
<xs:import schemaLocation="UnityEngine.UIElements.xsd" namespace="UnityEngine.UIElements" />
<xs:simpleType name="PackageListView_virtualization-method_Type">
<xs:restriction base="xs:string">

View File

@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="utf-8"?>
<xs:schema xmlns:editor="UnityEditor.UIElements" xmlns:engine="UnityEngine.UIElements" xmlns="UnityEditor.Accessibility" elementFormDefault="qualified" targetNamespace="UnityEditor.Rendering" xmlns:xs="http://www.w3.org/2001/XMLSchema">
<xs:schema xmlns:editor="UnityEditor.UIElements" xmlns:engine="UnityEngine.UIElements" xmlns="Hallucinate.UI.Components" elementFormDefault="qualified" targetNamespace="UnityEditor.Rendering" xmlns:xs="http://www.w3.org/2001/XMLSchema">
<xs:import schemaLocation="UnityEngine.UIElements.xsd" namespace="UnityEngine.UIElements" />
<xs:complexType name="HeaderFoldoutType">
<xs:complexContent mixed="false">

View File

@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="utf-8"?>
<xs:schema xmlns:editor="UnityEditor.UIElements" xmlns:engine="UnityEngine.UIElements" xmlns="UnityEditor.Accessibility" elementFormDefault="qualified" targetNamespace="UnityEditor.Search" xmlns:xs="http://www.w3.org/2001/XMLSchema">
<xs:schema xmlns:editor="UnityEditor.UIElements" xmlns:engine="UnityEngine.UIElements" xmlns="Hallucinate.UI.Components" elementFormDefault="qualified" targetNamespace="UnityEditor.Search" xmlns:xs="http://www.w3.org/2001/XMLSchema">
<xs:import schemaLocation="UnityEngine.UIElements.xsd" namespace="UnityEngine.UIElements" />
<xs:complexType name="ObjectFieldType">
<xs:complexContent mixed="false">

View File

@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="utf-8"?>
<xs:schema xmlns:editor="UnityEditor.UIElements" xmlns:engine="UnityEngine.UIElements" xmlns="UnityEditor.Accessibility" elementFormDefault="qualified" targetNamespace="UnityEditor.ShaderGraph.Drawing" xmlns:xs="http://www.w3.org/2001/XMLSchema">
<xs:schema xmlns:editor="UnityEditor.UIElements" xmlns:engine="UnityEngine.UIElements" xmlns="Hallucinate.UI.Components" elementFormDefault="qualified" targetNamespace="UnityEditor.ShaderGraph.Drawing" xmlns:xs="http://www.w3.org/2001/XMLSchema">
<xs:import schemaLocation="UnityEngine.UIElements.xsd" namespace="UnityEngine.UIElements" />
<xs:simpleType name="IdentifierField_vertical-scroller-visibility_Type">
<xs:restriction base="xs:string">

View File

@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="utf-8"?>
<xs:schema xmlns:editor="UnityEditor.UIElements" xmlns:engine="UnityEngine.UIElements" xmlns="UnityEditor.Accessibility" elementFormDefault="qualified" targetNamespace="UnityEditor.ShortcutManagement" xmlns:xs="http://www.w3.org/2001/XMLSchema">
<xs:schema xmlns:editor="UnityEditor.UIElements" xmlns:engine="UnityEngine.UIElements" xmlns="Hallucinate.UI.Components" elementFormDefault="qualified" targetNamespace="UnityEditor.ShortcutManagement" xmlns:xs="http://www.w3.org/2001/XMLSchema">
<xs:import schemaLocation="UnityEngine.UIElements.xsd" namespace="UnityEngine.UIElements" />
<xs:complexType name="ShortcutSearchFieldType">
<xs:complexContent mixed="false">

View File

@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="utf-8"?>
<xs:schema xmlns:editor="UnityEditor.UIElements" xmlns:engine="UnityEngine.UIElements" xmlns="UnityEditor.Accessibility" elementFormDefault="qualified" targetNamespace="UnityEditor.Toolbars" xmlns:xs="http://www.w3.org/2001/XMLSchema">
<xs:schema xmlns:editor="UnityEditor.UIElements" xmlns:engine="UnityEngine.UIElements" xmlns="Hallucinate.UI.Components" elementFormDefault="qualified" targetNamespace="UnityEditor.Toolbars" xmlns:xs="http://www.w3.org/2001/XMLSchema">
<xs:import schemaLocation="UnityEngine.UIElements.xsd" namespace="UnityEngine.UIElements" />
<xs:complexType name="MainToolbarKebabButtonType">
<xs:complexContent mixed="false">

View File

@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="utf-8"?>
<xs:schema xmlns:editor="UnityEditor.UIElements" xmlns:engine="UnityEngine.UIElements" xmlns="UnityEditor.Accessibility" elementFormDefault="qualified" targetNamespace="UnityEditor.U2D.Sprites.SpriteEditorTool" xmlns:xs="http://www.w3.org/2001/XMLSchema">
<xs:schema xmlns:editor="UnityEditor.UIElements" xmlns:engine="UnityEngine.UIElements" xmlns="Hallucinate.UI.Components" elementFormDefault="qualified" targetNamespace="UnityEditor.U2D.Sprites.SpriteEditorTool" xmlns:xs="http://www.w3.org/2001/XMLSchema">
<xs:import schemaLocation="UnityEngine.UIElements.xsd" namespace="UnityEngine.UIElements" />
<xs:complexType name="SpriteOutlineToolOverlayPanelType">
<xs:complexContent mixed="false">

View File

@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="utf-8"?>
<xs:schema xmlns:editor="UnityEditor.UIElements" xmlns:engine="UnityEngine.UIElements" xmlns="UnityEditor.Accessibility" elementFormDefault="qualified" targetNamespace="UnityEditor.UIElements.Debugger" xmlns:xs="http://www.w3.org/2001/XMLSchema">
<xs:schema xmlns:editor="UnityEditor.UIElements" xmlns:engine="UnityEngine.UIElements" xmlns="Hallucinate.UI.Components" elementFormDefault="qualified" targetNamespace="UnityEditor.UIElements.Debugger" xmlns:xs="http://www.w3.org/2001/XMLSchema">
<xs:import schemaLocation="UnityEngine.UIElements.xsd" namespace="UnityEngine.UIElements" />
<xs:complexType name="EventTypeSearchFieldType">
<xs:complexContent mixed="false">

View File

@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="utf-8"?>
<xs:schema xmlns:editor="UnityEditor.UIElements" xmlns:engine="UnityEngine.UIElements" xmlns="UnityEditor.Accessibility" elementFormDefault="qualified" targetNamespace="UnityEditor.UIElements.ProjectSettings" xmlns:xs="http://www.w3.org/2001/XMLSchema">
<xs:schema xmlns:editor="UnityEditor.UIElements" xmlns:engine="UnityEngine.UIElements" xmlns="Hallucinate.UI.Components" elementFormDefault="qualified" targetNamespace="UnityEditor.UIElements.ProjectSettings" xmlns:xs="http://www.w3.org/2001/XMLSchema">
<xs:import schemaLocation="UnityEngine.UIElements.xsd" namespace="UnityEngine.UIElements" />
<xs:complexType name="ProjectSettingsSectionType">
<xs:complexContent mixed="false">

View File

@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="utf-8"?>
<xs:schema xmlns:editor="UnityEditor.UIElements" xmlns:engine="UnityEngine.UIElements" xmlns="UnityEditor.Accessibility" elementFormDefault="qualified" targetNamespace="UnityEditor.UIElements" xmlns:xs="http://www.w3.org/2001/XMLSchema">
<xs:schema xmlns:editor="UnityEditor.UIElements" xmlns:engine="UnityEngine.UIElements" xmlns="Hallucinate.UI.Components" elementFormDefault="qualified" targetNamespace="UnityEditor.UIElements" xmlns:xs="http://www.w3.org/2001/XMLSchema">
<xs:import schemaLocation="UnityEngine.UIElements.xsd" namespace="UnityEngine.UIElements" />
<xs:complexType name="InspectorElementType">
<xs:complexContent mixed="false">

View File

@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="utf-8"?>
<xs:schema xmlns:editor="UnityEditor.UIElements" xmlns:engine="UnityEngine.UIElements" xmlns="UnityEditor.Accessibility" elementFormDefault="qualified" targetNamespace="UnityEngine.UIElements" xmlns:xs="http://www.w3.org/2001/XMLSchema">
<xs:schema xmlns:editor="UnityEditor.UIElements" xmlns:engine="UnityEngine.UIElements" xmlns="Hallucinate.UI.Components" elementFormDefault="qualified" targetNamespace="UnityEngine.UIElements" xmlns:xs="http://www.w3.org/2001/XMLSchema">
<xs:simpleType name="VisualElement_picking-mode_Type">
<xs:restriction base="xs:string">
<xs:enumeration value="Position" />