temp
This commit is contained in:
Crizomb 2025-01-29 00:41:25 +01:00
parent a87f0ed109
commit a17810ffeb
114 changed files with 5184 additions and 5 deletions

View file

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

View file

@ -0,0 +1,87 @@
%YAML 1.1
%TAG !u! tag:unity3d.com,2011:
--- !u!21 &2100000
Material:
serializedVersion: 8
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_Name: "CacheMis\xE8re"
m_Shader: {fileID: 46, guid: 0000000000000000f000000000000000, type: 0}
m_Parent: {fileID: 0}
m_ModifiedSerializedProperties: 0
m_ValidKeywords:
- _ALPHABLEND_ON
- _SMOOTHNESS_TEXTURE_ALBEDO_CHANNEL_A
m_InvalidKeywords: []
m_LightmapFlags: 4
m_EnableInstancingVariants: 0
m_DoubleSidedGI: 0
m_CustomRenderQueue: 3000
stringTagMap:
RenderType: Transparent
disabledShaderPasses: []
m_LockedProperties:
m_SavedProperties:
serializedVersion: 3
m_TexEnvs:
- _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: 0}
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}
m_Ints: []
m_Floats:
- _BumpScale: 1
- _Cutoff: 0.5
- _DetailNormalMapScale: 1
- _DstBlend: 10
- _GlossMapScale: 0
- _Glossiness: 0
- _GlossyReflections: 1
- _Metallic: 0
- _Mode: 2
- _OcclusionStrength: 1
- _Parallax: 0.02
- _SmoothnessTextureChannel: 1
- _SpecularHighlights: 1
- _SrcBlend: 5
- _UVSec: 0
- _ZWrite: 0
m_Colors:
- _Color: {r: 0, g: 0, b: 0, a: 0}
- _EmissionColor: {r: 0, g: 0, b: 0, a: 1}
m_BuildTextureStacks: []
m_AllowLocking: 1

View file

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

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.4 MiB

View file

@ -0,0 +1,117 @@
fileFormatVersion: 2
guid: a1f3abd894162cc219723fc12f389fa0
TextureImporter:
internalIDToNameTable: []
externalObjects: {}
serializedVersion: 13
mipmaps:
mipMapMode: 0
enableMipMap: 1
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: 1
aniso: 1
mipBias: 0
wrapU: 0
wrapV: 0
wrapW: 0
nPOTScale: 1
lightmap: 0
compressionQuality: 50
spriteMode: 0
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: 0
spriteTessellationDetail: -1
textureType: 0
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: 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: 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
spriteSheet:
serializedVersion: 2
sprites: []
outline: []
customData:
physicsShape: []
bones: []
spriteID:
internalID: 0
vertices: []
indices:
edges: []
weights: []
secondaryTextures: []
spriteCustomMetadata:
entries: []
nameFileIdTable: {}
mipmapLimitGroupName:
pSDRemoveMatte: 0
userData:
assetBundleName:
assetBundleVariant:

View file

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

Binary file not shown.

View file

@ -0,0 +1,107 @@
fileFormatVersion: 2
guid: e32df0ce0b037b848a086c83de04652c
ModelImporter:
serializedVersion: 22200
internalIDToNameTable: []
externalObjects: {}
materials:
materialImportMode: 2
materialName: 0
materialSearch: 1
materialLocation: 1
animations:
legacyGenerateAnimations: 4
bakeSimulation: 0
resampleCurves: 1
optimizeGameObjects: 0
removeConstantScaleCurves: 0
motionNodeName:
animationImportErrors:
animationImportWarnings:
animationRetargetingWarnings:
animationDoRetargetingWarnings: 0
importAnimatedCustomProperties: 0
importConstraints: 0
animationCompression: 1
animationRotationError: 0.5
animationPositionError: 0.5
animationScaleError: 0.5
animationWrapMode: 0
extraExposedTransformPaths: []
extraUserProperties: []
clipAnimations: []
isReadable: 0
meshes:
lODScreenPercentages: []
globalScale: 0.5
meshCompression: 0
addColliders: 0
useSRGBMaterialColor: 1
sortHierarchyByName: 1
importPhysicalCameras: 1
importVisibility: 1
importBlendShapes: 1
importCameras: 1
importLights: 1
nodeNameCollisionStrategy: 1
fileIdsGeneration: 2
swapUVChannels: 0
generateSecondaryUV: 0
useFileUnits: 1
keepQuads: 0
weldVertices: 1
bakeAxisConversion: 0
preserveHierarchy: 0
skinWeightsMode: 0
maxBonesPerVertex: 4
minBoneWeight: 0.001
optimizeBones: 1
meshOptimizationFlags: -1
indexFormat: 0
secondaryUVAngleDistortion: 8
secondaryUVAreaDistortion: 15.000001
secondaryUVHardAngle: 88
secondaryUVMarginMethod: 1
secondaryUVMinLightmapResolution: 40
secondaryUVMinObjectScale: 1
secondaryUVPackMargin: 4
useFileScale: 1
strictVertexDataChecks: 0
tangentSpace:
normalSmoothAngle: 60
normalImportMode: 0
tangentImportMode: 3
normalCalculationMode: 4
legacyComputeAllNormalsFromSmoothingGroupsWhenMeshHasBlendShapes: 0
blendShapeNormalImportMode: 1
normalSmoothingSource: 0
referencedClips: []
importAnimation: 1
humanDescription:
serializedVersion: 3
human: []
skeleton: []
armTwist: 0.5
foreArmTwist: 0.5
upperLegTwist: 0.5
legTwist: 0.5
armStretch: 0.05
legStretch: 0.05
feetSpacing: 0
globalScale: 0.5
rootMotionBoneName:
hasTranslationDoF: 0
hasExtraRoot: 0
skeletonHasParents: 1
lastHumanDescriptionAvatarSource: {instanceID: 0}
autoGenerateAvatarMappingIfUnspecified: 1
animationType: 2
humanoidOversampling: 1
avatarSetup: 0
addHumanoidExtraRootOnlyWhenUsingAvatar: 1
importBlendShapeDeformPercent: 1
remapMaterialsIfMaterialImportModeIsNone: 0
additionalBone: 0
userData:
assetBundleName:
assetBundleVariant:

View file

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

View file

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

View file

@ -0,0 +1,498 @@
%YAML 1.1
%TAG !u! tag:unity3d.com,2011:
--- !u!1 &3133295885442925703
GameObject:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
serializedVersion: 6
m_Component:
- component: {fileID: 7819262018055529908}
- component: {fileID: 8739819970315735207}
- component: {fileID: 7723675763426070584}
m_Layer: 0
m_Name: pastilleSpawner
m_TagString: Untagged
m_Icon: {fileID: 0}
m_NavMeshLayer: 0
m_StaticEditorFlags: 0
m_IsActive: 1
--- !u!4 &7819262018055529908
Transform:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 3133295885442925703}
serializedVersion: 2
m_LocalRotation: {x: -0, y: -0, z: -0, w: 1}
m_LocalPosition: {x: 0, y: -0.009, z: 0}
m_LocalScale: {x: 0.513979, y: -0.051397376, z: 0.513979}
m_ConstrainProportionsScale: 1
m_Children: []
m_Father: {fileID: 8087024808934804041}
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
--- !u!33 &8739819970315735207
MeshFilter:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 3133295885442925703}
m_Mesh: {fileID: 10202, guid: 0000000000000000e000000000000000, type: 0}
--- !u!23 &7723675763426070584
MeshRenderer:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 3133295885442925703}
m_Enabled: 1
m_CastShadows: 1
m_ReceiveShadows: 1
m_DynamicOccludee: 1
m_StaticShadowCaster: 0
m_MotionVectors: 1
m_LightProbeUsage: 1
m_ReflectionProbeUsage: 1
m_RayTracingMode: 2
m_RayTraceProcedural: 0
m_RayTracingAccelStructBuildFlagsOverride: 0
m_RayTracingAccelStructBuildFlags: 1
m_SmallMeshCulling: 1
m_RenderingLayerMask: 1
m_RendererPriority: 0
m_Materials:
- {fileID: 2100000, guid: 0102a44014787914c941908684c2da89, type: 2}
m_StaticBatchInfo:
firstSubMesh: 0
subMeshCount: 0
m_StaticBatchRoot: {fileID: 0}
m_ProbeAnchor: {fileID: 0}
m_LightProbeVolumeOverride: {fileID: 0}
m_ScaleInLightmap: 1
m_ReceiveGI: 1
m_PreserveUVs: 0
m_IgnoreNormalsForChartDetection: 0
m_ImportantGI: 0
m_StitchLightmapSeams: 1
m_SelectedEditorRenderState: 3
m_MinimumChartSize: 4
m_AutoUVMaxDistance: 0.5
m_AutoUVMaxAngle: 89
m_LightmapParameters: {fileID: 0}
m_SortingLayerID: 0
m_SortingLayer: 0
m_SortingOrder: 0
m_AdditionalVertexStreams: {fileID: 0}
--- !u!1 &4075213688680083342
GameObject:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
serializedVersion: 6
m_Component:
- component: {fileID: 8295169801347447474}
- component: {fileID: 6381809488445292777}
- component: {fileID: 6883644787962656286}
m_Layer: 0
m_Name: TigeUI
m_TagString: Untagged
m_Icon: {fileID: 0}
m_NavMeshLayer: 0
m_StaticEditorFlags: 0
m_IsActive: 1
--- !u!4 &8295169801347447474
Transform:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 4075213688680083342}
serializedVersion: 2
m_LocalRotation: {x: -0, y: -0, z: -0, w: 1}
m_LocalPosition: {x: 0, y: 0.802, z: 0.025839806}
m_LocalScale: {x: 0.2, y: 1.6, z: 0.2}
m_ConstrainProportionsScale: 0
m_Children: []
m_Father: {fileID: 8087024808934804041}
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
--- !u!33 &6381809488445292777
MeshFilter:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 4075213688680083342}
m_Mesh: {fileID: 10202, guid: 0000000000000000e000000000000000, type: 0}
--- !u!23 &6883644787962656286
MeshRenderer:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 4075213688680083342}
m_Enabled: 1
m_CastShadows: 1
m_ReceiveShadows: 1
m_DynamicOccludee: 1
m_StaticShadowCaster: 0
m_MotionVectors: 1
m_LightProbeUsage: 1
m_ReflectionProbeUsage: 1
m_RayTracingMode: 2
m_RayTraceProcedural: 0
m_RayTracingAccelStructBuildFlagsOverride: 0
m_RayTracingAccelStructBuildFlags: 1
m_SmallMeshCulling: 1
m_RenderingLayerMask: 1
m_RendererPriority: 0
m_Materials:
- {fileID: 2100000, guid: 0102a44014787914c941908684c2da89, type: 2}
m_StaticBatchInfo:
firstSubMesh: 0
subMeshCount: 0
m_StaticBatchRoot: {fileID: 0}
m_ProbeAnchor: {fileID: 0}
m_LightProbeVolumeOverride: {fileID: 0}
m_ScaleInLightmap: 1
m_ReceiveGI: 1
m_PreserveUVs: 0
m_IgnoreNormalsForChartDetection: 0
m_ImportantGI: 0
m_StitchLightmapSeams: 1
m_SelectedEditorRenderState: 3
m_MinimumChartSize: 4
m_AutoUVMaxDistance: 0.5
m_AutoUVMaxAngle: 89
m_LightmapParameters: {fileID: 0}
m_SortingLayerID: 0
m_SortingLayer: 0
m_SortingOrder: 0
m_AdditionalVertexStreams: {fileID: 0}
--- !u!1 &6125842415298558902
GameObject:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
serializedVersion: 6
m_Component:
- component: {fileID: 6488284566211968888}
m_Layer: 0
m_Name: Sword
m_TagString: Untagged
m_Icon: {fileID: 0}
m_NavMeshLayer: 0
m_StaticEditorFlags: 0
m_IsActive: 1
--- !u!4 &6488284566211968888
Transform:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 6125842415298558902}
serializedVersion: 2
m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
m_LocalPosition: {x: -0.814, y: 0.876, z: 0.036}
m_LocalScale: {x: 1, y: 1, z: 1}
m_ConstrainProportionsScale: 0
m_Children:
- {fileID: 862071626811564611}
m_Father: {fileID: 8087024808934804041}
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
--- !u!1001 &899603847112459688
PrefabInstance:
m_ObjectHideFlags: 0
serializedVersion: 2
m_Modification:
serializedVersion: 3
m_TransformParent: {fileID: 6488284566211968888}
m_Modifications:
- target: {fileID: -8679921383154817045, guid: b7200c75e2b405a498f2c2298eee64b7, type: 3}
propertyPath: m_LocalPosition.x
value: 0.020567775
objectReference: {fileID: 0}
- target: {fileID: -8679921383154817045, guid: b7200c75e2b405a498f2c2298eee64b7, type: 3}
propertyPath: m_LocalPosition.y
value: 0.044
objectReference: {fileID: 0}
- target: {fileID: -8679921383154817045, guid: b7200c75e2b405a498f2c2298eee64b7, type: 3}
propertyPath: m_LocalPosition.z
value: 1.815
objectReference: {fileID: 0}
- target: {fileID: -8679921383154817045, guid: b7200c75e2b405a498f2c2298eee64b7, type: 3}
propertyPath: m_LocalRotation.w
value: 0.7360785
objectReference: {fileID: 0}
- target: {fileID: -8679921383154817045, guid: b7200c75e2b405a498f2c2298eee64b7, type: 3}
propertyPath: m_LocalRotation.x
value: -0
objectReference: {fileID: 0}
- target: {fileID: -8679921383154817045, guid: b7200c75e2b405a498f2c2298eee64b7, type: 3}
propertyPath: m_LocalRotation.y
value: -0
objectReference: {fileID: 0}
- target: {fileID: -8679921383154817045, guid: b7200c75e2b405a498f2c2298eee64b7, type: 3}
propertyPath: m_LocalRotation.z
value: -0.6768963
objectReference: {fileID: 0}
- target: {fileID: -8679921383154817045, guid: b7200c75e2b405a498f2c2298eee64b7, type: 3}
propertyPath: m_LocalEulerAnglesHint.x
value: 0
objectReference: {fileID: 0}
- target: {fileID: -8679921383154817045, guid: b7200c75e2b405a498f2c2298eee64b7, type: 3}
propertyPath: m_LocalEulerAnglesHint.y
value: 0
objectReference: {fileID: 0}
- target: {fileID: -8679921383154817045, guid: b7200c75e2b405a498f2c2298eee64b7, type: 3}
propertyPath: m_LocalEulerAnglesHint.z
value: -85.203
objectReference: {fileID: 0}
- target: {fileID: 919132149155446097, guid: b7200c75e2b405a498f2c2298eee64b7, type: 3}
propertyPath: m_Name
value: Claymore.fbx_Scene_Scene_Collection
objectReference: {fileID: 0}
m_RemovedComponents: []
m_RemovedGameObjects: []
m_AddedGameObjects: []
m_AddedComponents: []
m_SourcePrefab: {fileID: 100100000, guid: b7200c75e2b405a498f2c2298eee64b7, type: 3}
--- !u!4 &862071626811564611 stripped
Transform:
m_CorrespondingSourceObject: {fileID: -8679921383154817045, guid: b7200c75e2b405a498f2c2298eee64b7, type: 3}
m_PrefabInstance: {fileID: 899603847112459688}
m_PrefabAsset: {fileID: 0}
--- !u!1001 &8624493664043396514
PrefabInstance:
m_ObjectHideFlags: 0
serializedVersion: 2
m_Modification:
serializedVersion: 3
m_TransformParent: {fileID: 0}
m_Modifications:
- target: {fileID: -8679921383154817045, guid: 7095518e7b62b6349b8c77f834a750f1, type: 3}
propertyPath: m_LocalPosition.x
value: 0
objectReference: {fileID: 0}
- target: {fileID: -8679921383154817045, guid: 7095518e7b62b6349b8c77f834a750f1, type: 3}
propertyPath: m_LocalPosition.y
value: 0
objectReference: {fileID: 0}
- target: {fileID: -8679921383154817045, guid: 7095518e7b62b6349b8c77f834a750f1, type: 3}
propertyPath: m_LocalPosition.z
value: 0
objectReference: {fileID: 0}
- target: {fileID: -8679921383154817045, guid: 7095518e7b62b6349b8c77f834a750f1, type: 3}
propertyPath: m_LocalRotation.w
value: 1
objectReference: {fileID: 0}
- target: {fileID: -8679921383154817045, guid: 7095518e7b62b6349b8c77f834a750f1, type: 3}
propertyPath: m_LocalRotation.x
value: 0
objectReference: {fileID: 0}
- target: {fileID: -8679921383154817045, guid: 7095518e7b62b6349b8c77f834a750f1, type: 3}
propertyPath: m_LocalRotation.y
value: 0
objectReference: {fileID: 0}
- target: {fileID: -8679921383154817045, guid: 7095518e7b62b6349b8c77f834a750f1, type: 3}
propertyPath: m_LocalRotation.z
value: 0
objectReference: {fileID: 0}
- target: {fileID: -8679921383154817045, guid: 7095518e7b62b6349b8c77f834a750f1, type: 3}
propertyPath: m_LocalEulerAnglesHint.x
value: 0
objectReference: {fileID: 0}
- target: {fileID: -8679921383154817045, guid: 7095518e7b62b6349b8c77f834a750f1, type: 3}
propertyPath: m_LocalEulerAnglesHint.y
value: 0
objectReference: {fileID: 0}
- target: {fileID: -8679921383154817045, guid: 7095518e7b62b6349b8c77f834a750f1, type: 3}
propertyPath: m_LocalEulerAnglesHint.z
value: 0
objectReference: {fileID: 0}
- target: {fileID: 919132149155446097, guid: 7095518e7b62b6349b8c77f834a750f1, type: 3}
propertyPath: m_Name
value: Daffy
objectReference: {fileID: 0}
- target: {fileID: 919132149155446097, guid: 7095518e7b62b6349b8c77f834a750f1, type: 3}
propertyPath: m_Layer
value: 7
objectReference: {fileID: 0}
m_RemovedComponents: []
m_RemovedGameObjects: []
m_AddedGameObjects:
- targetCorrespondingSourceObject: {fileID: -8679921383154817045, guid: 7095518e7b62b6349b8c77f834a750f1, type: 3}
insertIndex: 0
addedObject: {fileID: 7819262018055529908}
- targetCorrespondingSourceObject: {fileID: -8679921383154817045, guid: 7095518e7b62b6349b8c77f834a750f1, type: 3}
insertIndex: -1
addedObject: {fileID: 6488284566211968888}
- targetCorrespondingSourceObject: {fileID: -8679921383154817045, guid: 7095518e7b62b6349b8c77f834a750f1, type: 3}
insertIndex: -1
addedObject: {fileID: 8295169801347447474}
m_AddedComponents:
- targetCorrespondingSourceObject: {fileID: 919132149155446097, guid: 7095518e7b62b6349b8c77f834a750f1, type: 3}
insertIndex: -1
addedObject: {fileID: 8437008406638998057}
- targetCorrespondingSourceObject: {fileID: 919132149155446097, guid: 7095518e7b62b6349b8c77f834a750f1, type: 3}
insertIndex: -1
addedObject: {fileID: 8490955103462250314}
- targetCorrespondingSourceObject: {fileID: 919132149155446097, guid: 7095518e7b62b6349b8c77f834a750f1, type: 3}
insertIndex: -1
addedObject: {fileID: 4524608824830684362}
- targetCorrespondingSourceObject: {fileID: 919132149155446097, guid: 7095518e7b62b6349b8c77f834a750f1, type: 3}
insertIndex: -1
addedObject: {fileID: 3268298404143453427}
- targetCorrespondingSourceObject: {fileID: 919132149155446097, guid: 7095518e7b62b6349b8c77f834a750f1, type: 3}
insertIndex: -1
addedObject: {fileID: 9064938243890791681}
- targetCorrespondingSourceObject: {fileID: 919132149155446097, guid: 7095518e7b62b6349b8c77f834a750f1, type: 3}
insertIndex: -1
addedObject: {fileID: 8537350272084301094}
m_SourcePrefab: {fileID: 100100000, guid: 7095518e7b62b6349b8c77f834a750f1, type: 3}
--- !u!4 &8087024808934804041 stripped
Transform:
m_CorrespondingSourceObject: {fileID: -8679921383154817045, guid: 7095518e7b62b6349b8c77f834a750f1, type: 3}
m_PrefabInstance: {fileID: 8624493664043396514}
m_PrefabAsset: {fileID: 0}
--- !u!1 &8894946380752408819 stripped
GameObject:
m_CorrespondingSourceObject: {fileID: 919132149155446097, guid: 7095518e7b62b6349b8c77f834a750f1, type: 3}
m_PrefabInstance: {fileID: 8624493664043396514}
m_PrefabAsset: {fileID: 0}
--- !u!65 &8437008406638998057
BoxCollider:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 8894946380752408819}
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: 3
m_Size: {x: 1, y: 1.550185, z: 0.5051899}
m_Center: {x: 0, y: 0.79802835, z: 0.025839806}
--- !u!54 &8490955103462250314
Rigidbody:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 8894946380752408819}
serializedVersion: 4
m_Mass: 1
m_Drag: 0
m_AngularDrag: 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: 112
m_CollisionDetection: 0
--- !u!195 &4524608824830684362
NavMeshAgent:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 8894946380752408819}
m_Enabled: 1
m_AgentTypeID: 0
m_Radius: 0.5
m_Speed: 3
m_Acceleration: 8
avoidancePriority: 50
m_AngularSpeed: 120
m_StoppingDistance: 0
m_AutoTraverseOffMeshLink: 1
m_AutoBraking: 1
m_AutoRepath: 1
m_Height: 1
m_BaseOffset: 0
m_WalkableMask: 4294967295
m_ObstacleAvoidanceType: 4
--- !u!114 &3268298404143453427
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 8894946380752408819}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: 20a6bc784cd0f59468144811378ea18d, type: 3}
m_Name:
m_EditorClassIdentifier:
Sword: {fileID: 6125842415298558902}
explosionRadius: 4
explosionForce: 10
--- !u!114 &9064938243890791681
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 8894946380752408819}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: 5b4f49154a488eadb80c1e6212811ead, type: 3}
m_Name:
m_EditorClassIdentifier:
hasCrown: 0
armyManagerEntity: {fileID: 0}
gameManagerEntity: {fileID: 0}
crownPrefab: {fileID: 5439261377235293692, guid: dd14b265dc29f8b25ac95057b3ea778b, type: 3}
attackMode: 1
baseHealth: 5
armor: 1
healthBarPrefab: {fileID: 2974273519851044028, guid: d12d8ca90ec549c1f9244d3c0837bded, type: 3}
healthCanvas: {fileID: 3654134799514054209, guid: d6c43d41f508d7ee388d732f9cc31dd6, type: 3}
baseSpeed: 3
cost: 5
troopStats:
- 5
- 5
- 3
- 1
- 3
- 2s
- "Daffy, fantassin de base avec une \xE9p\xE9e, est un \xE9l\xE9ment incontournable
d'une bonne arm\xE9e"
--- !u!114 &8537350272084301094
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 8894946380752408819}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: 8e5cb8ce6f5d03c4789dc12c8b7dac85, type: 3}
m_Name:
m_EditorClassIdentifier:
range: 1
damage: 3
cooldown: 2

View file

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

View file

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

View file

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

View file

@ -0,0 +1,185 @@
%YAML 1.1
%TAG !u! tag:unity3d.com,2011:
--- !u!1 &1272298179362809185
GameObject:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
serializedVersion: 6
m_Component:
- component: {fileID: 6884863307090433391}
- component: {fileID: 1415795909054133528}
- component: {fileID: 5296542066366478528}
m_Layer: 0
m_Name: HealthBarOutline
m_TagString: Untagged
m_Icon: {fileID: 0}
m_NavMeshLayer: 0
m_StaticEditorFlags: 0
m_IsActive: 1
--- !u!224 &6884863307090433391
RectTransform:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 1272298179362809185}
m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
m_LocalPosition: {x: 0, y: 0, z: 0}
m_LocalScale: {x: 4.6363635, y: 1, z: 1}
m_ConstrainProportionsScale: 0
m_Children: []
m_Father: {fileID: 8319624013634733416}
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: 100, y: 100}
m_Pivot: {x: 0.5, y: 0.5}
--- !u!222 &1415795909054133528
CanvasRenderer:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 1272298179362809185}
m_CullTransparentMesh: 1
--- !u!114 &5296542066366478528
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 1272298179362809185}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: fe87c0e1cc204ed48ad3b37840f39efc, type: 3}
m_Name:
m_EditorClassIdentifier:
m_Material: {fileID: 0}
m_Color: {r: 1, g: 1, b: 1, a: 1}
m_RaycastTarget: 1
m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0}
m_Maskable: 1
m_OnCullStateChanged:
m_PersistentCalls:
m_Calls: []
m_Sprite: {fileID: 21300000, guid: 97b8dba147c51187c9df6b2f1931820a, type: 3}
m_Type: 0
m_PreserveAspect: 0
m_FillCenter: 1
m_FillMethod: 4
m_FillAmount: 1
m_FillClockwise: 1
m_FillOrigin: 0
m_UseSpriteMesh: 0
m_PixelsPerUnitMultiplier: 1
--- !u!1 &2974273519851044028
GameObject:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
serializedVersion: 6
m_Component:
- component: {fileID: 8319624013634733416}
m_Layer: 0
m_Name: HealthBar
m_TagString: Untagged
m_Icon: {fileID: 0}
m_NavMeshLayer: 0
m_StaticEditorFlags: 0
m_IsActive: 1
--- !u!4 &8319624013634733416
Transform:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 2974273519851044028}
serializedVersion: 2
m_LocalRotation: {x: -0, y: -0, z: -0, w: 1}
m_LocalPosition: {x: 84.07765, y: -63.67377, z: 61.8528}
m_LocalScale: {x: 1.939394, y: 1.939394, z: 1.939394}
m_ConstrainProportionsScale: 0
m_Children:
- {fileID: 6884863307090433391}
- {fileID: 4351502157481390748}
m_Father: {fileID: 0}
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
--- !u!1 &5756144307121976814
GameObject:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
serializedVersion: 6
m_Component:
- component: {fileID: 4351502157481390748}
- component: {fileID: 8093731819872577236}
- component: {fileID: 1127102497923990650}
m_Layer: 0
m_Name: HealthBarFill
m_TagString: Untagged
m_Icon: {fileID: 0}
m_NavMeshLayer: 0
m_StaticEditorFlags: 0
m_IsActive: 1
--- !u!224 &4351502157481390748
RectTransform:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 5756144307121976814}
m_LocalRotation: {x: -0, y: -0, z: -0, w: 1}
m_LocalPosition: {x: 0, y: 0, z: 0}
m_LocalScale: {x: 4.6363635, y: 1, z: 1}
m_ConstrainProportionsScale: 0
m_Children: []
m_Father: {fileID: 8319624013634733416}
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: 100, y: 100}
m_Pivot: {x: 0.5, y: 0.5}
--- !u!222 &8093731819872577236
CanvasRenderer:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 5756144307121976814}
m_CullTransparentMesh: 1
--- !u!114 &1127102497923990650
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 5756144307121976814}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: fe87c0e1cc204ed48ad3b37840f39efc, type: 3}
m_Name:
m_EditorClassIdentifier:
m_Material: {fileID: 0}
m_Color: {r: 1, g: 1, b: 1, a: 1}
m_RaycastTarget: 1
m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0}
m_Maskable: 1
m_OnCullStateChanged:
m_PersistentCalls:
m_Calls: []
m_Sprite: {fileID: 21300000, guid: ba0b7ed004a1c1289abc67c37640fea2, type: 3}
m_Type: 0
m_PreserveAspect: 0
m_FillCenter: 1
m_FillMethod: 4
m_FillAmount: 1
m_FillClockwise: 1
m_FillOrigin: 0
m_UseSpriteMesh: 0
m_PixelsPerUnitMultiplier: 1

View file

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

View file

@ -0,0 +1,103 @@
%YAML 1.1
%TAG !u! tag:unity3d.com,2011:
--- !u!1 &3654134799514054209
GameObject:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
serializedVersion: 6
m_Component:
- component: {fileID: 2524590796689536924}
- component: {fileID: 2671748030348089832}
- component: {fileID: 8967766777345686235}
- component: {fileID: 5958559096736972362}
m_Layer: 5
m_Name: HealthCanvas
m_TagString: Untagged
m_Icon: {fileID: 0}
m_NavMeshLayer: 0
m_StaticEditorFlags: 0
m_IsActive: 1
--- !u!224 &2524590796689536924
RectTransform:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 3654134799514054209}
m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
m_LocalPosition: {x: 0, y: 0, z: 0}
m_LocalScale: {x: 0, y: 0, z: 0}
m_ConstrainProportionsScale: 0
m_Children: []
m_Father: {fileID: 0}
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
m_AnchorMin: {x: 0, y: 0}
m_AnchorMax: {x: 0, y: 0}
m_AnchoredPosition: {x: 0, y: 0}
m_SizeDelta: {x: 0, y: 0}
m_Pivot: {x: 0, y: 0}
--- !u!223 &2671748030348089832
Canvas:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 3654134799514054209}
m_Enabled: 1
serializedVersion: 3
m_RenderMode: 0
m_Camera: {fileID: 0}
m_PlaneDistance: 100
m_PixelPerfect: 0
m_ReceivesEvents: 1
m_OverrideSorting: 0
m_OverridePixelPerfect: 0
m_SortingBucketNormalizedSize: 0
m_VertexColorAlwaysGammaSpace: 0
m_AdditionalShaderChannelsFlag: 0
m_UpdateRectTransformForStandalone: 0
m_SortingLayerID: 0
m_SortingOrder: 0
m_TargetDisplay: 0
--- !u!114 &8967766777345686235
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 3654134799514054209}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: 0cd44c1031e13a943bb63640046fad76, type: 3}
m_Name:
m_EditorClassIdentifier:
m_UiScaleMode: 0
m_ReferencePixelsPerUnit: 100
m_ScaleFactor: 1
m_ReferenceResolution: {x: 800, y: 600}
m_ScreenMatchMode: 0
m_MatchWidthOrHeight: 0
m_PhysicalUnit: 3
m_FallbackScreenDPI: 96
m_DefaultSpriteDPI: 96
m_DynamicPixelsPerUnit: 1
m_PresetInfoIsWorld: 0
--- !u!114 &5958559096736972362
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 3654134799514054209}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: dc42784cf147c0c48a680349fa168899, type: 3}
m_Name:
m_EditorClassIdentifier:
m_IgnoreReversedGraphics: 1
m_BlockingObjects: 0
m_BlockingMask:
serializedVersion: 2
m_Bits: 4294967295

View file

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

View file

@ -0,0 +1,75 @@
%YAML 1.1
%TAG !u! tag:unity3d.com,2011:
--- !u!1001 &5169370095294720173
PrefabInstance:
m_ObjectHideFlags: 0
serializedVersion: 2
m_Modification:
serializedVersion: 3
m_TransformParent: {fileID: 0}
m_Modifications:
- target: {fileID: -8679921383154817045, guid: e32df0ce0b037b848a086c83de04652c, type: 3}
propertyPath: m_LocalScale.x
value: 1.5
objectReference: {fileID: 0}
- target: {fileID: -8679921383154817045, guid: e32df0ce0b037b848a086c83de04652c, type: 3}
propertyPath: m_LocalScale.y
value: 0.75
objectReference: {fileID: 0}
- target: {fileID: -8679921383154817045, guid: e32df0ce0b037b848a086c83de04652c, type: 3}
propertyPath: m_LocalScale.z
value: 1.5
objectReference: {fileID: 0}
- target: {fileID: -8679921383154817045, guid: e32df0ce0b037b848a086c83de04652c, type: 3}
propertyPath: m_LocalPosition.x
value: 0
objectReference: {fileID: 0}
- target: {fileID: -8679921383154817045, guid: e32df0ce0b037b848a086c83de04652c, type: 3}
propertyPath: m_LocalPosition.y
value: 0.748
objectReference: {fileID: 0}
- target: {fileID: -8679921383154817045, guid: e32df0ce0b037b848a086c83de04652c, type: 3}
propertyPath: m_LocalPosition.z
value: 0
objectReference: {fileID: 0}
- target: {fileID: -8679921383154817045, guid: e32df0ce0b037b848a086c83de04652c, type: 3}
propertyPath: m_LocalRotation.w
value: 1
objectReference: {fileID: 0}
- target: {fileID: -8679921383154817045, guid: e32df0ce0b037b848a086c83de04652c, type: 3}
propertyPath: m_LocalRotation.x
value: 0.000000021855694
objectReference: {fileID: 0}
- target: {fileID: -8679921383154817045, guid: e32df0ce0b037b848a086c83de04652c, type: 3}
propertyPath: m_LocalRotation.y
value: -0.00000004371139
objectReference: {fileID: 0}
- target: {fileID: -8679921383154817045, guid: e32df0ce0b037b848a086c83de04652c, type: 3}
propertyPath: m_LocalRotation.z
value: 1.0165751e-15
objectReference: {fileID: 0}
- target: {fileID: -8679921383154817045, guid: e32df0ce0b037b848a086c83de04652c, type: 3}
propertyPath: m_LocalEulerAnglesHint.x
value: 0
objectReference: {fileID: 0}
- target: {fileID: -8679921383154817045, guid: e32df0ce0b037b848a086c83de04652c, type: 3}
propertyPath: m_LocalEulerAnglesHint.y
value: 0
objectReference: {fileID: 0}
- target: {fileID: -8679921383154817045, guid: e32df0ce0b037b848a086c83de04652c, type: 3}
propertyPath: m_LocalEulerAnglesHint.z
value: 0
objectReference: {fileID: 0}
- target: {fileID: -8679921383154817045, guid: e32df0ce0b037b848a086c83de04652c, type: 3}
propertyPath: m_ConstrainProportionsScale
value: 1
objectReference: {fileID: 0}
- target: {fileID: 919132149155446097, guid: e32df0ce0b037b848a086c83de04652c, type: 3}
propertyPath: m_Name
value: Crown 1
objectReference: {fileID: 0}
m_RemovedComponents: []
m_RemovedGameObjects: []
m_AddedGameObjects: []
m_AddedComponents: []
m_SourcePrefab: {fileID: 100100000, guid: e32df0ce0b037b848a086c83de04652c, type: 3}

View file

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

View file

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

View file

@ -0,0 +1,39 @@
using UnityEngine;
public class BoomLazer : MonoBehaviour
{
private float i = 0.0f;
Rigidbody rib;
[SerializeField] float explosionRadius;
[SerializeField] float explosionForce;
private float upwardModifier = 0.0f;
// Start is called once before the first execution of Update after the MonoBehaviour is created
private void Start()
{
rib=GetComponent<Rigidbody>();
}
//Prend tout les rigidbody sauf le sien et leurs applique une force pour les expulser
private void OnTriggerEnter(Collider other)
{
//Uniformisation des codes de balles, pour la détruire au 2e impact avec un collider dû au fait qu'elle spawn DANS un collider
//Reste clairement Junky et est sujet à amélioration
i += 1;
if (i > 0)
{
Vector3 explosionPosition = transform.position;
Collider[] colliders = Physics.OverlapSphere(explosionPosition, explosionRadius);
foreach (Collider collider in colliders)
{
Rigidbody rb = collider.GetComponent<Rigidbody>();
if (rb != null & rb != rib)
{
rb.AddExplosionForce(explosionForce, explosionPosition, explosionRadius, upwardModifier, ForceMode.Impulse);
}
}
Destroy(gameObject);
}
}
}

View file

@ -0,0 +1,2 @@
fileFormatVersion: 2
guid: 30612f05fd9747843853fc490546942a

View file

@ -0,0 +1,101 @@
using UnityEngine;
public class CameraFly : MonoBehaviour
{
[SerializeField] float mainSpeed; //regular speed
[SerializeField] float shiftAdd; //multiplied by how long shift is held. Basically running
[SerializeField] float maxShift; //Maximum speed when holdin gshift
[SerializeField] float camVelocity; //How sensitive it with mouse
private Vector3 lastMouse = new Vector3(255, 255, 255); //kind of in the middle of the screen, rather than at the top (play)
private float totalRun = 1.0f;
void Update()
{
Vector3 r = GetRotInput();
lastMouse = new Vector3(transform.eulerAngles.x + r.x, transform.eulerAngles.y + r.y, 0);
//transform.eulerAngles = lastMouse;
transform.rotation = Quaternion.Euler(lastMouse);
//Mouse camera angle done.
//Keyboard commands
//float f = 0.0f;
Vector3 p = GetBaseInput();
if (p.sqrMagnitude > 0)
{ // only move while a direction key is pressed
if (Input.GetKey(KeyCode.LeftShift))
{
totalRun += Time.deltaTime;
p = p * totalRun * shiftAdd;
p.x = Mathf.Clamp(p.x, -maxShift, maxShift);
p.y = Mathf.Clamp(p.y, -maxShift, maxShift);
p.z = Mathf.Clamp(p.z, -maxShift, maxShift);
}
else
{
totalRun = Mathf.Clamp(totalRun * 0.5f, 1f, 1000f);
p = p * mainSpeed;
}
p = p * Time.deltaTime;
Vector3 newPosition = transform.position;
if (Input.GetKey(KeyCode.Space))
{ //If player wants to move on X and Z axis only
transform.Translate(p);
newPosition.x = transform.position.x;
newPosition.z = transform.position.z;
transform.position = newPosition;
}
else
{
transform.Translate(p);
}
}
Debug.Log(r);
Debug.Log(p);
}
private Vector3 GetBaseInput()
{ //returns the basic values, if it's 0 than it's not active.
Vector3 p_Velocity = new Vector3();
if (Input.GetKey(KeyCode.UpArrow))
{
p_Velocity += new Vector3(0, 0, 1);
}
if (Input.GetKey(KeyCode.DownArrow))
{
p_Velocity += new Vector3(0, 0, -1);
}
if (Input.GetKey(KeyCode.LeftArrow))
{
p_Velocity += new Vector3(-1, 0, 0);
}
if (Input.GetKey(KeyCode.RightArrow))
{
p_Velocity += new Vector3(1, 0, 0);
}
return p_Velocity;
}
private Vector3 GetRotInput()
{ //returns the basic values, if it's 0 than it's not active.
Vector3 r_Velocity = new Vector3();
if (Input.GetKey(KeyCode.Z))
{
r_Velocity += new Vector3(0, 1,0);
}
if (Input.GetKey(KeyCode.S))
{
r_Velocity += new Vector3(0, -1, 0);
}
if (Input.GetKey(KeyCode.Q))
{
r_Velocity += new Vector3(-1, 0, 0);
}
if (Input.GetKey(KeyCode.D))
{
r_Velocity += new Vector3(1, 0, 0);
}
return camVelocity*r_Velocity;
}
}

View file

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

View file

@ -0,0 +1,38 @@
using UnityEngine;
public class CameraMovementFlat : MonoBehaviour
{
[SerializeField] float cameraMovementSpeed;
// 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()
{
//avancer reculer
if (Input.GetKey(KeyCode.UpArrow))
{
//Debug.Log("avancer");
transform.Translate(Vector3.forward * Time.deltaTime * cameraMovementSpeed, Space.World);
}
if (Input.GetKey(KeyCode.DownArrow))
{
//Debug.Log("reculer");
transform.Translate(-Vector3.forward * Time.deltaTime * cameraMovementSpeed, Space.World);
}
if (Input.GetKey(KeyCode.LeftArrow))
{
//Debug.Log("gauche");
transform.Translate(-Vector3.right * Time.deltaTime * cameraMovementSpeed, Space.World);
}
if (Input.GetKey(KeyCode.RightArrow))
{
//Debug.Log("droite");
transform.Translate(Vector3.right * Time.deltaTime * cameraMovementSpeed, Space.World);
}
}
}

View file

@ -0,0 +1,2 @@
fileFormatVersion: 2
guid: 925cd4cabe50f39309d22502c750e5a7

View file

@ -0,0 +1,47 @@
using UnityEngine;
public class Duck : MonoBehaviour
{
[SerializeField] protected float baseMovementSpeed;
[SerializeField] protected int baseHP;
[SerializeField] protected int baseArmor;
[SerializeField] protected float baseAttackSpeed;
[SerializeField] protected int manaToSpecialAttack;
[SerializeField] protected Weapon weapon;
protected float currentMovementSpeed;
protected int currentHP;
protected int currentArmor;
protected float currentAttackSpeed;
//TODO WEAPON
//TODO Special Ability
public virtual void activateSpecialAbility(){
}
public virtual void takeDamage(int damage){
currentHP -= (damage > currentArmor) ? (damage - currentArmor) : 0;
}
// Start is called once before the first execution of Update after the MonoBehaviour is created
void Start()
{
currentMovementSpeed = baseMovementSpeed;
currentHP = baseHP;
currentArmor = baseArmor;
currentAttackSpeed = baseAttackSpeed;
}
// Update is called once per frame
void Update()
{
}
}

View file

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

View file

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

View file

@ -0,0 +1,130 @@
using UnityEngine;
using System.Collections;
using System;
public class AttackCAC : MonoBehaviour
{
[SerializeField] private float range;
[SerializeField] private float damage;
[SerializeField] private float cooldown;
private BaseDuckScript baseDuckScript;
private LayerMask duckLayer; // Layer for ducks
private LayerMask wallLayer;
private GameObject targetToAttack;
private bool CACouDistance; //True for CAC, False for Distance
private bool canAttack = true;
static public event Action ATTACK;
// Start is called once before the first execution of Update after the MonoBehaviour is created
void Start()
{
CACouDistance = false;
baseDuckScript = gameObject.GetComponent<BaseDuckScript>();
duckLayer = LayerMask.GetMask("Duck");
wallLayer = LayerMask.GetMask("Wall");
}
public bool changeCACouDistance(bool whichOne)
{
CACouDistance=whichOne;
return(CACouDistance);
}
IEnumerator coolDown()
{
canAttack = false;
yield return new WaitForSeconds(cooldown);
canAttack = true;
}
// Update is called once per frame
void Update()
{
if (baseDuckScript.getGameManagerScript().combatPhase)
{
if (canAttack)
{
Collider[] hits = Physics.OverlapSphere(transform.position, range, duckLayer);
//GameObject targetToAttack = null;
float distanceToChosenTarget = range;
bool targetFound = false;
foreach (Collider hit in hits)
{
Vector3 directionToTarget = hit.transform.position - transform.position;
float distanceToTarget = directionToTarget.magnitude;
if (baseDuckScript.getAttackMode() == 3)
{
distanceToTarget = Vector3.Distance(baseDuckScript.getArmyManagerScript().getCrownDuck(baseDuckScript.getTeam()).transform.position, hit.transform.position);
}
if (!Physics.Raycast(transform.position, directionToTarget.normalized, distanceToTarget,
wallLayer))
{
if (baseDuckScript.getArmyManagerScript().getArmy(!baseDuckScript.getTeam()).Contains(hit.gameObject))
{
if (baseDuckScript.getAttackMode() == 1)
{
if (baseDuckScript.getArmyManagerScript().getCrownDuck(!baseDuckScript.getTeam()) ==
hit.gameObject)
{
targetToAttack = hit.gameObject;
targetFound = true;
}
}
if (baseDuckScript.getAttackMode() == 2 || baseDuckScript.getAttackMode() == 3)
{
if (distanceToTarget < distanceToChosenTarget)
{
distanceToChosenTarget = distanceToTarget;
targetToAttack = hit.gameObject;
targetFound = true;
}
}
}
}
}
if (targetFound && CACouDistance)
{
AttackC(targetToAttack);
}
if(targetFound && !CACouDistance)
{
AttackD();
}
}
}
}
private void AttackC(GameObject targetToAttack)
{
StartCoroutine(coolDown());
targetToAttack.GetComponent<BaseDuckScript>().TakeDamage(damage);
Debug.Log("Corps à corps");
ATTACK.Invoke();
}
private void AttackD()
{
Debug.Log("DISTANCE");
StartCoroutine(coolDown());
ATTACK.Invoke();
}
public GameObject GetTarget()
{
return (targetToAttack);
}
public float GetDamage()
{
return (damage);
}
}

View file

@ -0,0 +1,2 @@
fileFormatVersion: 2
guid: 8e5cb8ce6f5d03c4789dc12c8b7dac85

View file

@ -0,0 +1,293 @@
using UnityEngine;
using UnityEngine.AI;
using System.Collections.Generic;
using UnityEngine.UI;
public class BaseDuckScript : MonoBehaviour
{
// Start is called once before the first execution of Update after the MonoBehaviour is created
private bool isEnemy = true;
[SerializeField] public bool hasCrown = false;
[SerializeField] GameObject armyManagerEntity;
[SerializeField] GameObject gameManagerEntity;
private ArmyManager armyManagerScript;
private GameManager gameManagerScript;
[SerializeField] GameObject crownPrefab;
[SerializeField] private int attackMode = 0; //0 do Nothing, 1 offense, 2 Neutre, 3 Défense
NavMeshAgent agent;
private Rigidbody duckRB;
Vector3 destination;
private float health;
[SerializeField] private float baseHealth;
[SerializeField] private float armor;
[SerializeField] public GameObject healthBarPrefab;
[SerializeField] private GameObject healthCanvas;
private RectTransform healthCanvasRect;
private GameObject healthBar = null;
//private RectTransform healthBarRect = null;
private float DuckHeight;
private GameObject healthBarInside;
private Image healthBarGradient;
private float raycastDistance = 1.0f; //for getting ground material
private LayerMask allGroundLayers;
[SerializeField] private float baseSpeed;
private GameObject crown;
[SerializeField] public int cost = 5;
[SerializeField] public List<string> troopStats;
void Start()
{
health = baseHealth;
armyManagerScript = armyManagerEntity.GetComponent<ArmyManager>();
gameManagerScript = gameManagerEntity.GetComponent<GameManager>();
armyManagerScript.addTroopToArmy(isEnemy, gameObject);
agent = GetComponent<NavMeshAgent>();
duckRB = gameObject.GetComponent<Rigidbody>();
healthCanvasRect = healthCanvas.GetComponent<RectTransform>();
if (hasCrown){
becomeCrownDuck();
}
DuckHeight = transform.Find("TigeUI").GetComponent<Renderer>().bounds.size.y;
allGroundLayers = LayerMask.GetMask("Dirt") | LayerMask.GetMask("Sand");
}
// Update is called once per frame
void Update()
{
//Pour que le Duck regarde sa cible constamment !!
if (GetComponent<AttackCAC>().GetTarget() != null)
{
transform.LookAt(GetComponent<AttackCAC>().GetTarget().transform);
}
if (gameManagerScript.combatPhase)
{
updateMovement();
}
else
{
duckRB.isKinematic = true;
}
if (health != baseHealth)
{
displayHealthBar();
}
Vector3 rayOrigin = transform.position;
Ray ray = new Ray(rayOrigin, Vector3.down);
RaycastHit hit;
if (Physics.Raycast(ray, out hit, raycastDistance, allGroundLayers))
{
if (LayerMask.LayerToName(hit.collider.gameObject.layer) == "Dirt")
{
agent.speed = baseSpeed;
} else if (LayerMask.LayerToName(hit.collider.gameObject.layer) == "Sand")
{
agent.speed = baseSpeed/2;
}
}
}
public void displayHealthBar()
{
if (healthBar == null)
{
healthBar = Instantiate(healthBarPrefab, healthCanvas.transform);
healthBar.transform.localScale = new Vector2(0.25f, 0.25f);
healthBarInside = healthBar.transform.GetChild(1).gameObject;
healthBarGradient = healthBarInside.GetComponent<Image>();
healthBarGradient.type = Image.Type.Filled;
healthBarGradient.fillMethod = Image.FillMethod.Horizontal;
}
if (healthBar != null) //safety measure
{
Vector2 screenPoint = Camera.main.WorldToScreenPoint(transform.position);
healthBar.transform.position = screenPoint + new Vector2(0f, DuckHeight*80*Screen.width/3840);
healthBarGradient.fillAmount = health / baseHealth;
healthBarGradient.color = Color.Lerp(Color.red, Color.green, health/baseHealth);
}
}
public void updateMovement()
{
duckRB.isKinematic = false;
if (attackMode == 1 && armyManagerScript.getCrownDuck(!isEnemy))
{
destination = armyManagerScript.getCrownDuck(!isEnemy).transform.position;
agent.destination = destination;
}
if (attackMode == 2)
{
List<GameObject> opposingArmy = armyManagerScript.getArmy(!isEnemy);
if (opposingArmy.Count > 0){
GameObject closestOpponent = opposingArmy[0];
float closestDistance = Vector3.Distance(opposingArmy[0].transform.position, transform.position);
foreach (GameObject opposingDuck in opposingArmy)
{
if (Vector3.Distance(opposingDuck.transform.position, transform.position) < closestDistance)
{
closestOpponent = opposingDuck;
closestDistance = Vector3.Distance(opposingDuck.transform.position, transform.position);
}
}
destination = closestOpponent.transform.position;
agent.destination = destination;
}
}
if (attackMode == 3)
{
List<GameObject> opposingArmy = armyManagerScript.getArmy(!isEnemy);
if (opposingArmy.Count > 0){
GameObject closestOpponent = opposingArmy[0];
float closestDistance = Vector3.Distance(opposingArmy[0].transform.position, armyManagerScript.getCrownDuck(isEnemy).transform.position);
foreach (GameObject opposingDuck in opposingArmy)
{
if (Vector3.Distance(opposingDuck.transform.position, armyManagerScript.getCrownDuck(isEnemy).transform.position) < closestDistance)
{
closestOpponent = opposingDuck;
closestDistance = Vector3.Distance(opposingDuck.transform.position, armyManagerScript.getCrownDuck(isEnemy).transform.position);
}
}
destination = closestOpponent.transform.position;
agent.destination = destination;
}
}
}
public void setTeam(bool isOnEnemyTeam){
isEnemy = isOnEnemyTeam;
}
public void giveCrown(){
hasCrown = true;
}
public void setArmyManager(GameObject armyManagerEntity)
{
this.armyManagerEntity = armyManagerEntity;
}
public ArmyManager getArmyManagerScript()
{
return armyManagerScript;
}
public void setGameManager(GameObject gameManagerEntity)
{
this.gameManagerEntity = gameManagerEntity;
}
public void becomeCrownDuck()
{
hasCrown = true;
armyManagerScript.setCrownDuck(isEnemy, gameObject);
crown = Instantiate(crownPrefab, this.transform);
}
public void loseMyCrown()
{
hasCrown = false;
armyManagerScript.removeCrownDuck(isEnemy);
Destroy(crown);
}
public void despawn()
{
if (hasCrown)
{
armyManagerScript.removeCrownDuck(isEnemy);
}
armyManagerScript.removeTroopFromArmy(isEnemy, gameObject);
gameManagerScript.refundCoins(cost);
Destroy(gameObject);
}
void OnMouseOver()
{
// Check if the right mouse button is clicked
/*
if (Input.GetMouseButtonDown(1)) // 1 is for the right mouse button
{
if (!armyManagerScript.getCrownDuck(isEnemy) && !isEnemy)
{
becomeCrownDuck();
}
else if (armyManagerScript.getCrownDuck(isEnemy) == gameObject && !isEnemy)
{
loseMyCrown();
}
}
*/
}
public void TakeDamage(float damage)
{
float damageReallyTaken = Mathf.Max(0, damage - armor);
health -= damageReallyTaken;
if (health <= 0)
{
Debug.Log("dead");
die();
}
}
public void Heal(float value)
{
health += value;
health = (health > baseHealth) ? baseHealth : health;
}
public float getHealth()
{
return health;
}
public float getBaseHealth()
{
return baseHealth;
}
private void die()
{
Destroy(healthBar);
armyManagerScript.kill(isEnemy, gameObject, hasCrown);
Destroy(gameObject);
}
public int getAttackMode()
{
return (attackMode);
}
public void setAttackMode(int mode)
{
attackMode = mode;
}
public bool getTeam()
{
return (isEnemy);
}
public float getSpeed()
{
return (baseSpeed);
}
public void setHealthCanvas(GameObject healthCanvas)
{
this.healthCanvas = healthCanvas;
}
public GameManager getGameManagerScript()
{
return(gameManagerScript);
}
}

View file

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

View file

@ -0,0 +1,89 @@
using System.Collections;
using UnityEngine;
public class CharDuck : MonoBehaviour
{
private Rigidbody rib;
[SerializeField] GameObject Lazer;
[SerializeField] GameObject LazerBoom;
[SerializeField] GameObject Gauche;
[SerializeField] GameObject Droit;
[SerializeField] GameObject Tete;
[SerializeField] float ForceTir;
private bool Shoot=true;
// Start is called once before the first execution of Update after the MonoBehaviour is created
void Start()
{
GetComponent<AttackCAC>().changeCACouDistance(false);
AttackCAC.ATTACK += Attack;
}
void Attack()
{
if (Shoot)
{
Debug.Log("Attaque");
StartCoroutine(Lasers());
}
}
// Update is called once per frame
void Update()
{
/*
//à supprimer
if (Input.GetKeyDown(KeyCode.B))
{
if (Shoot)
{
Debug.Log("Attack !!");
StartCoroutine(Lasers());
}
}
if (Input.GetKeyDown(KeyCode.P))
{
Debug.Log("Explosion");
StartCoroutine(Special());
}
*/
}
//Tire des Lasers des yeux du pion vers la cible (Target). Donc rbg=RigidBodyGauche par exemple.
IEnumerator Lasers()
{
Shoot = false;
GameObject Target = GetComponent<AttackCAC>().GetTarget();
Vector3 Destination = Vector3.Normalize(Target.transform.position-transform.position);
GameObject LazGauche = Instantiate(Lazer, Gauche.transform.position, Gauche.transform.rotation);
Rigidbody rbg = LazGauche.GetComponent<Rigidbody>();
rbg.AddForce(Destination * ForceTir, ForceMode.Impulse);
GameObject LazDroite = Instantiate(Lazer, Droit.transform.position, Droit.transform.rotation);
Rigidbody rbd = LazDroite.GetComponent<Rigidbody>();
rbd.AddForce(Destination * ForceTir, ForceMode.Impulse);
yield return null;
Shoot = true;
}
//Génere une sphère qui se dirige vers sa cible (Target) pour faire une explosion
IEnumerator Special()
{
Shoot = false;
GameObject Target = GetComponent<AttackCAC>().GetTarget();
Vector3 Destination = Vector3.Normalize(Target.transform.position - transform.position);
//Vector3 Salse = new Vector3(0, -1, 0);
GameObject Laz = Instantiate(LazerBoom, Tete.transform.position, Tete.transform.rotation);
Rigidbody rb = Laz.GetComponent<Rigidbody>();
rb.AddForce(Destination * ForceTir, ForceMode.Impulse);
//rb.AddForce(Salse * ForceTir, ForceMode.Impulse);
yield return null;
Shoot = true;
}
//On tue le signal pour éviter tout problèmes (conseil de Game Jam)
void OnDestroy()
{
AttackCAC.ATTACK -= Attack;
}
}

View file

@ -0,0 +1,2 @@
fileFormatVersion: 2
guid: 7c6232b4da47c4448b112c51f245a9f7

View file

@ -0,0 +1,88 @@
using UnityEngine;
using System.Collections;
public class Daffy : MonoBehaviour
{
[SerializeField] private GameObject Sword;
private Rigidbody rib;
private float RotSpeed = 300.0f;
[SerializeField] float explosionRadius;
[SerializeField] float explosionForce;
private float upwardModifier = 0.0f;
// Start is called once before the first execution of Update after the MonoBehaviour is created
void Start()
{
GetComponent<AttackCAC>().changeCACouDistance(true);
AttackCAC.ATTACK += Attack;
}
void Attack()
{
Debug.Log("Attaque");
StartCoroutine(Rotate360());
}
// Update is called once per frame
void Update()
{
/*
if (Input.GetKeyDown(KeyCode.R))
{
Debug.Log("Attaque");
StartCoroutine(Rotate360());
}
if (Input.GetKeyDown(KeyCode.P))
{
Debug.Log("DAFFY SMASH");
StartCoroutine(Rotate360());
Explode();
}
*/
}
IEnumerator Rotate360()
{
bool IsFinish = true;
//Clairement pas ouf, mais je sais faire autrement. Tourne jusqu'à ce que les conditions match
//Ie que les 2 bool soit faux, l'un s'active quand il est proche de 0 degré, l'autre s'active après une demie rotation;
while (IsFinish || Mathf.Abs(Sword.transform.localRotation.x)>0.05f)
{
//Debug.Log(Mathf.Abs(Sword.transform.localRotation.x));
Sword.transform.Rotate(RotSpeed * Time.deltaTime, 0.0f, 0.0f);
if (Mathf.Abs(Sword.transform.localRotation.x)>0.1f)
{
IsFinish = false;
}
yield return null;
}
Sword.transform.Rotate(RotSpeed * Time.deltaTime, 0.0f, 0.0f);
}
//Prend tout les rigidbody sauf le sien et leurs applique une force pour les expulser
void Explode()
{
rib = GetComponent<Rigidbody>();
Vector3 explosionPosition = transform.position;
Collider[] colliders = Physics.OverlapSphere(explosionPosition, explosionRadius);
foreach (Collider collider in colliders)
{
Rigidbody rb = collider.GetComponent<Rigidbody>();
if (rb != null & rb != rib)
{
rb.AddExplosionForce(explosionForce, explosionPosition, explosionRadius, upwardModifier, ForceMode.Impulse);
}
}
}
//On tue le signal pour eviter tout problemes (conseil de Game Jam)
void OnDestroy()
{
AttackCAC.ATTACK -= Attack;
}
}

View file

@ -0,0 +1,2 @@
fileFormatVersion: 2
guid: 20a6bc784cd0f59468144811378ea18d

View file

@ -0,0 +1,153 @@
using UnityEngine;
using System.Collections;
public class DarkWing : MonoBehaviour
{
[SerializeField] private GameObject Bout;
[SerializeField] private GameObject Balle;
[SerializeField] private GameObject Sword;
[SerializeField] private GameObject Gun;
[SerializeField] private float ForceTir;
[SerializeField] private float Range;
private Rigidbody rib;
private bool Shoot = true;
float RotSpeed = 300.0f;
private bool BladeGun; //True = Blade, False = Gun
private GameObject Target;
// Start is called once before the first execution of Update after the MonoBehaviour is created
void Start()
{
GetComponent<AttackCAC>().changeCACouDistance(false);
AttackCAC.ATTACK += Attack;
BladeGun = true;
}
// Update is called once per frame
void Attack()
{
Debug.Log("Attaque");
if (!BladeGun)
{
if(Shoot)
{
StartCoroutine(Tir());
}
}
else
{
StartCoroutine(Rotate360());
}
}
void Update()
{
//Choose which weapon to use against enemy
Target=GetComponent<AttackCAC>().GetTarget();
if (Target != null)
{
Vector3 RangeWeapon = Target.transform.position - transform.position;
if (RangeWeapon.magnitude > Range)
{
BladeGun = false;
}
else
{
BladeGun = true;
}
}
if (!BladeGun) //Gun
{
Sword.SetActive(false);
Gun.SetActive(true);
GetComponent<AttackCAC>().changeCACouDistance(false);
if (Input.GetKeyDown(KeyCode.R))
{
if (Shoot)
{
Debug.Log("Attaque Shoot");
StartCoroutine(Tir());
}
}
}
else //Sword
{
Sword.SetActive(true);
Gun.SetActive(false);
GetComponent<AttackCAC>().changeCACouDistance(true);
if (Input.GetKeyDown(KeyCode.R))
{
if (Shoot)
{
Debug.Log("Attaque Sword");
StartCoroutine(Rotate360());
}
}
}
/*
if (Input.GetKeyDown(KeyCode.M))
{
Debug.Log("DeRender");
//SetRenderState(Sword,false);
Sword.SetActive(false);
}
if (Input.GetKeyDown(KeyCode.P))
{
Debug.Log("Special");
StartCoroutine(Special());
}
*/
}
//Tir. La variable Shoot est le garde-fou pour <20>viter de tirer sans prendre en compte le cooldown
IEnumerator Tir()
{
Shoot = false;
GameObject BULLET = Instantiate(Balle, Bout.transform.position, Bout.transform.rotation);
Rigidbody rb = BULLET.GetComponent<Rigidbody>();
rb.AddForce(transform.forward * ForceTir, ForceMode.Impulse);
yield return null;
Shoot = true;
}
//Heal
IEnumerator Special()
{
yield return null;
}
IEnumerator Rotate360()
{
bool IsFinish = true;
//Clairement pas ouf, mais je sais faire autrement. Tourne jusqu'a ce que les conditions match
//Ie que les 2 bool soit faux, l'un s'active quand il est proche de 0 degre, l'autre s'active apres une demie rotation;
while (IsFinish || Mathf.Abs(Sword.transform.localRotation.x) > 0.05f)
{
//Debug.Log(Mathf.Abs(Sword.transform.localRotation.x));
Sword.transform.Rotate(RotSpeed * Time.deltaTime, 0.0f, 0.0f);
if (Mathf.Abs(Sword.transform.localRotation.x) > 0.1f)
{
IsFinish = false;
}
yield return null;
}
Sword.transform.Rotate(RotSpeed * Time.deltaTime, 0.0f, 0.0f);
}
//On tue le signal pour eviter tout problemes (conseil de Game Jam)
void OnDestroy()
{
AttackCAC.ATTACK -= Attack;
}
}

View file

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

View file

@ -0,0 +1,89 @@
using System.Collections;
using UnityEngine;
public class ExplosifDuck : MonoBehaviour
{
private Rigidbody rib;
float Speed;
float Cooldown=10.0f;
[SerializeField] float explosionRadius;
[SerializeField] float explosionForce;
[SerializeField] float RangeExplosion;
private float upwardModifier = 0.0f;
// Start is called once before the first execution of Update after the MonoBehaviour is created
void Start()
{
GetComponent<AttackCAC>().changeCACouDistance(true);
Speed = GetComponent<BaseDuckScript>().getSpeed();
AttackCAC.ATTACK += Attack;
}
void Attack()
{
Debug.Log("Attaque");
Explode();
}
// Update is called once per frame
void Update()
{
GameObject Target = GetComponent<AttackCAC>().GetTarget();
if (Target != null)
{
Vector3 RangeWeapon = Target.transform.position - transform.position;
if (RangeWeapon.magnitude < RangeExplosion)
{
Attack();
}
}
if (Input.GetKey(KeyCode.B))
{
StartCoroutine(Boost());
}
if (Input.GetKeyDown(KeyCode.P))
{
Debug.Log("Explosion");
Explode();
}
}
//Le speed est utilisé ici pour son spécial lui permettant de boost. On peut créer une fonction public dans BaseDuckScript getSpeed
//Et changeSpeed permettant de manipuler la Speed du duck. Vestige de l'ancien code qui ne mérite pas d'être supprimé actuellement
//C'est un cut content, donc ça passe
IEnumerator Boost()
{
Speed=12.0f;
yield return new WaitForSeconds(Cooldown);
Speed = 6.0f;
}
//Prend tout les rigidbody sauf le sien et leurs applique une force pour les expulser
void Explode()
{
rib = GetComponent<Rigidbody>();
Vector3 explosionPosition = transform.position;
Collider[] colliders = Physics.OverlapSphere(explosionPosition, explosionRadius);
foreach (Collider collider in colliders)
{
Rigidbody rb = collider.GetComponent<Rigidbody>();
if (rb != null & rb != rib)
{
rb.AddExplosionForce(explosionForce, explosionPosition, explosionRadius, upwardModifier, ForceMode.Impulse);
}
}
Destroy(this.gameObject);
}
//On tue le signal pour eviter tout problemes (conseil de Game Jam)
void OnDestroy()
{
AttackCAC.ATTACK -= Attack;
}
}

View file

@ -0,0 +1,2 @@
fileFormatVersion: 2
guid: 3c634d25b1c457f42ade841848d6f3ff

View file

@ -0,0 +1,82 @@
using UnityEngine;
using System.Collections;
public class SniperDuck : MonoBehaviour
{
[SerializeField] private GameObject Bout;
[SerializeField] private GameObject Balle;
private float Cooldown;
[SerializeField] private float ForceTir;
private Rigidbody rib;
private bool Shoot = true;
Vector3 STAY;
// Start is called once before the first execution of Update after the MonoBehaviour is created
void Start()
{
GetComponent<AttackCAC>().changeCACouDistance(false);
AttackCAC.ATTACK += Attack;
STAY=transform.position;
}
// Update is called once per frame
void Attack()
{
if(Shoot)
{
Debug.Log("Attaque");
StartCoroutine(Tir());
}
}
void Update()
{
transform.position = STAY;
rib = GetComponent<Rigidbody>();
//rib.linearVelocity = Vector3.zero;
/*
if (Input.GetKeyDown(KeyCode.R))
{
if (Shoot)
{
Debug.Log("Attaque");
StartCoroutine(Tir());
}
}
if (Input.GetKeyDown(KeyCode.P))
{
Debug.Log("Special");
StartCoroutine(Special());
}
*/
}
//Tir. La variable Shoot est le garde-fou pour <20>viter de tirer sans prendre en compte le cooldown
IEnumerator Tir()
{
Shoot = false;
GameObject BULLET = Instantiate(Balle, Bout.transform.position, Bout.transform.rotation);
BULLET.GetComponent<Lazer>().parent = this.gameObject;
BULLET.GetComponent<Lazer>().damage = GetComponent<AttackCAC>().GetDamage();
Rigidbody rb = BULLET.GetComponent<Rigidbody>();
rb.AddForce(transform.forward * ForceTir, ForceMode.Impulse);
yield return null;
Shoot = true;
}
//Le cooldown est utilisé ici pour son spécial lui permettant de mitrailler. On peut créer une fonction public dans BaseDuckScript getCooldown
//Et changeCooldown permettant de manipuler le cooldown du duck. Vestige de l'ancien code qui ne mérite pas d'être supprimé actuellement
//C'est un cut content, donc ça passe
IEnumerator Special()
{
float BackupCooldown = Cooldown;
Cooldown = 1.0f;
yield return new WaitForSeconds(5.0f);
Cooldown = BackupCooldown;
}
//On tue le signal pour eviter tout problemes (conseil de Game Jam)
void OnDestroy()
{
AttackCAC.ATTACK -= Attack;
}
}

View file

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

View file

@ -0,0 +1,51 @@
using UnityEngine;
using System.Collections;
public class TankDuck : MonoBehaviour
{
[SerializeField] private GameObject Bout;
[SerializeField] private GameObject Balle;
[SerializeField] private float ForceTir;
private bool Shoot = true;
private Rigidbody rib;
// Start is called once before the first execution of Update after the MonoBehaviour is created
void Start()
{
GetComponent<AttackCAC>().changeCACouDistance(false);
AttackCAC.ATTACK += Attack;
}
// Update is called once per frame
void Update()
{
}
void Attack()
{
if (Shoot)
{
Debug.Log("Attaque");
StartCoroutine(Tir());
}
}
IEnumerator Tir()
{
Shoot = false;
GameObject BULLET = Instantiate(Balle, Bout.transform.position, Bout.transform.rotation);
Rigidbody rb = BULLET.GetComponent<Rigidbody>();
rb.AddForce(transform.forward * ForceTir, ForceMode.Impulse);
yield return null;
Shoot = true;
}
//On tue le signal pour eviter tout problemes (conseil de Game Jam)
void OnDestroy()
{
AttackCAC.ATTACK -= Attack;
}
}

View file

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

View file

@ -0,0 +1,98 @@
using System.Collections;
using UnityEngine;
public class TimeDuck: MonoBehaviour
{
private Rigidbody rib;
float Speed;
private float cooldown = 5.0f;
[SerializeField] float explosionRadius;
[SerializeField] float RangeExplosion;
// Start is called once before the first execution of Update after the MonoBehaviour is created
void Start()
{
Speed = GetComponent<BaseDuckScript>().getSpeed();
GetComponent<AttackCAC>().changeCACouDistance(true);
AttackCAC.ATTACK += Attack;
}
void Attack()
{
Debug.Log("Attaque TIME");
StartCoroutine(Explode());
}
// Update is called once per frame
void Update()
{
//Prend sa cible et regarde sa distance pour voir quelle arme prendre contre lui
GameObject Target = GetComponent<AttackCAC>().GetTarget();
if (Target != null)
{
Vector3 RangeWeapon = Target.transform.position - transform.position;
if (RangeWeapon.magnitude < RangeExplosion)
{
Attack();
}
}
/*
//à supprimer
if (Input.GetKey(KeyCode.B))
{
StartCoroutine(Boost());
}
if (Input.GetKeyDown(KeyCode.P))
{
Debug.Log("Explosion");
StartCoroutine(Explode());
}
*/
}
//Le speed est utilisé ici pour son spécial lui permettant de boost. On peut créer une fonction public dans BaseDuckScript getSpeed
//Et changeSpeed permettant de manipuler la Speed du duck. Vestige de l'ancien code qui ne mérite pas d'être supprimé actuellement
//C'est un cut content, donc ça passe
IEnumerator Boost()
{
Speed = 12.0f;
yield return null;
Speed = 5.0f;
}
IEnumerator Explode()
{
rib = GetComponent<Rigidbody>();
Vector3 explosionPosition = transform.position;
Collider[] colliders = Physics.OverlapSphere(explosionPosition, explosionRadius);
foreach (Collider collider in colliders)
{
Rigidbody rb = collider.GetComponent<Rigidbody>();
if (LayerMask.LayerToName(collider.gameObject.layer)=="duck")
{
if (rb != null & rb != rib)
{
rb.isKinematic = true;
collider.GetComponent<AttackCAC>().enabled = false;
rb.linearVelocity = Vector3.zero;
yield return new WaitForSeconds(cooldown);
rb.isKinematic = false;
collider.GetComponent<AttackCAC>().enabled = true;
}
}
}
Destroy(this.gameObject);
}
//On tue le signal pour eviter tout problemes (conseil de Game Jam)
void OnDestroy()
{
AttackCAC.ATTACK -= Attack;
}
}

View file

@ -0,0 +1,2 @@
fileFormatVersion: 2
guid: 983a511a5a7517b478b8909da220e895

View file

@ -0,0 +1,23 @@
using UnityEngine;
public class Lazer : MonoBehaviour
{
private float i = 0.0f;
public float damage;
public GameObject parent;
// Start is called once before the first execution of Update after the MonoBehaviour is created
private void OnTriggerEnter(Collider other)
{
//Uniformisation des codes de balles, pour la détruire au 2e impact avec un collider dû au fait qu'elle spawn DANS un collider
//Reste clairement Junky et est sujet à amélioration
i += 1;
if (i>0)
{
if (LayerMask.LayerToName(other.gameObject.layer) == "Duck")
{
other.gameObject.GetComponent<BaseDuckScript>().TakeDamage(damage);
}
Destroy(gameObject);
}
}
}

View file

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

View file

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

View file

@ -0,0 +1,107 @@
using UnityEngine;
using System.Collections.Generic;
public class ArmyManager : MonoBehaviour
{
private List<GameObject> enemyArmy = new List<GameObject>();
private List<GameObject> playerArmy = new List<GameObject>();
private GameObject enemyCrownDuck = null;
private GameObject playerCrownDuck = null;
[SerializeField] private GameManager gameManagerScript;
// 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()
{
//Debug.Log("Enemy Count : " + enemyArmy.Count);
//Debug.Log("Player Count : " + playerArmy.Count);
//Debug.Log(playerCrownDuck);
}
public List<GameObject> getArmy(bool isEnemy){
return(isEnemy ? enemyArmy : playerArmy);
}
public void addTroopToArmy(bool isEnemy, GameObject Duck){
(isEnemy ? enemyArmy : playerArmy).Add(Duck);
}
public void removeTroopFromArmy(bool isEnemy, GameObject Duck)
{
(isEnemy ? enemyArmy : playerArmy).Remove(Duck);
}
public void setCrownDuck(bool isEnemy, GameObject CrownDuck)
{
if (isEnemy) {
enemyCrownDuck = CrownDuck;
} else {
playerCrownDuck = CrownDuck;
}
}
public void removeCrownDuck(bool isEnemy)
{
if (isEnemy)
{
enemyCrownDuck = null;
}
else
{
playerCrownDuck = null;
}
}
public GameObject getCrownDuck(bool isEnemy)
{
return(isEnemy ? enemyCrownDuck : playerCrownDuck);
}
public void kill(bool isEnemy, GameObject Duck, bool hasCrown)
{
removeTroopFromArmy(isEnemy, Duck);
if (hasCrown)
{
gameManagerScript.endOfLevel(isEnemy);
}
removeTroopFromArmy(isEnemy, gameObject);
}
public void giveCrownDuckTo(bool isEnemy, GameObject duckToCrown)
{
if ((isEnemy ? enemyCrownDuck : playerCrownDuck) != null)
{
(isEnemy ? enemyCrownDuck : playerCrownDuck).GetComponent<BaseDuckScript>().loseMyCrown();
if (isEnemy)
{
enemyCrownDuck = null;
}
else
{
playerCrownDuck = null;
}
}
//becomeCrownDuck will call army manager later and set it locally
duckToCrown.GetComponent<BaseDuckScript>().becomeCrownDuck();
}
public void removeCrownDuckFrom(bool isEnemy, GameObject duckToRemoveCrown)
{
(isEnemy ? enemyCrownDuck : playerCrownDuck).GetComponent<BaseDuckScript>().loseMyCrown();
if (isEnemy)
{
enemyCrownDuck = null;
}
else
{
playerCrownDuck = null;
}
}
}

View file

@ -0,0 +1,2 @@
fileFormatVersion: 2
guid: 8b3571324bf01bd9d9f5bce9b92fb36e

View file

@ -0,0 +1,211 @@
using UnityEngine;
using UnityEngine.UI;
using TMPro;
using UnityEngine.SceneManagement;
using System.Collections.Generic;
public class GameManager : MonoBehaviour
{
public bool difficultySelectionPhase = true;
public bool spawningPhase = false;
public bool combatPhase = false;
public bool endOfGamePhase = false;
public bool foundWinner = false;
public bool playerWon;
[SerializeField] public int currentLevel;
[SerializeField] public int difficulty;
[SerializeField] public ArmyManager armyManager;
[SerializeField] public UnlockedLevelsManager unlockedLevelsManager;
[SerializeField] public int baseCoins;
[SerializeField] public int currentCoins;
[SerializeField] private GameObject coinDisplay;
private TextMeshProUGUI coinDisplayMesh;
[SerializeField] public GameObject healthCanvas;
[SerializeField] public GameObject wonCanvas;
[SerializeField] public GameObject lostCanvas;
[SerializeField] private GameObject coinDisplayCanvas;
[SerializeField] private GameObject difficultySelectionCanvas;
[SerializeField] private GameObject troopSelectionCanvas;
[SerializeField] private RawImage highScoreImage;
[SerializeField] private RawImage winHighScoreImage;
[SerializeField] private RawImage loseHighScoreImage;
[SerializeField] private Texture bronzeSprite;
[SerializeField] private Texture silverSprite;
[SerializeField] private Texture goldSprite;
[SerializeField] private Texture notBeatenSprite;
[SerializeField] public List<string> levels;
// Start is called once before the first execution of Update after the MonoBehaviour is created
void Start()
{
wonCanvas.SetActive(false);
lostCanvas.SetActive(false);
coinDisplayCanvas.SetActive(false);
troopSelectionCanvas.SetActive(false);
coinDisplayMesh = coinDisplay.GetComponent<TextMeshProUGUI>();
int highScore = unlockedLevelsManager.getLevelStatus(currentLevel);
switch (highScore)
{
case 0:
highScoreImage.texture = notBeatenSprite;
break;
case 1:
highScoreImage.texture = notBeatenSprite;
break;
case 2:
highScoreImage.texture = bronzeSprite;
break;
case 3:
highScoreImage.texture = silverSprite;
break;
case 4:
highScoreImage.texture = goldSprite;
break;
}
}
// Update is called once per frame
void Update()
{
coinDisplayMesh.text = currentCoins.ToString();
/*
if (Input.GetKeyDown(KeyCode.Return))
{
if (spawningPhase)
{
startFight();
}
}
*/
}
public void startFight()
{
troopSelectionCanvas.SetActive(false);
spawningPhase = false;
combatPhase = true;
if (armyManager.getArmy(true).Count == 0)
{
foundWinner = true;
playerWon = true;
} else if (armyManager.getArmy(false).Count == 0)
{
foundWinner = true;
playerWon = false;
} else {
if (!armyManager.getCrownDuck(true))
{
armyManager.getArmy(true)[0].GetComponent<BaseDuckScript>().becomeCrownDuck();
}
if (!armyManager.getCrownDuck(false))
{
armyManager.getArmy(false)[0].GetComponent<BaseDuckScript>().becomeCrownDuck();
}
}
}
public void endOfLevel(bool thePlayerWon)
{
combatPhase = false;
endOfGamePhase = true;
foundWinner = true;
playerWon = thePlayerWon;
coinDisplayCanvas.SetActive(false);
healthCanvas.SetActive(false);
if (playerWon)
{
unlockedLevelsManager.beatCurrentLevel(currentLevel, difficulty);
wonCanvas.SetActive(true);
int highScore = unlockedLevelsManager.getLevelStatus(currentLevel);
switch (highScore)
{
case 0:
winHighScoreImage.texture = notBeatenSprite;
break;
case 1:
winHighScoreImage.texture = notBeatenSprite;
break;
case 2:
winHighScoreImage.texture = bronzeSprite;
break;
case 3:
winHighScoreImage.texture = silverSprite;
break;
case 4:
winHighScoreImage.texture = goldSprite;
break;
}
}
else
{
lostCanvas.SetActive(true);
int highScore = unlockedLevelsManager.getLevelStatus(currentLevel);
switch (highScore)
{
case 0:
loseHighScoreImage.texture = notBeatenSprite;
break;
case 1:
loseHighScoreImage.texture = notBeatenSprite;
break;
case 2:
loseHighScoreImage.texture = bronzeSprite;
break;
case 3:
loseHighScoreImage.texture = silverSprite;
break;
case 4:
loseHighScoreImage.texture = goldSprite;
break;
}
}
}
public bool spendCoins(int amount)
{
if (currentCoins >= amount)
{
currentCoins -= amount;
return true;
}
return false;
}
public void refundCoins(int amount)
{
currentCoins += amount;
}
public void SelectDifficulty(int selectedDifficulty)
{
difficultySelectionPhase = false;
spawningPhase = true;
difficulty = selectedDifficulty;
coinDisplayCanvas.SetActive(true);
troopSelectionCanvas.SetActive(true);
difficultySelectionCanvas.SetActive(false);
currentCoins = (int)(baseCoins * (difficulty == 1 ? 1.2f : (difficulty == 3 ? 0.8f : 1f)));
}
public void backToMainMenu()
{
SceneManager.LoadScene(0);
}
public void goToNextLevel()
{
SceneManager.LoadScene(levels[currentLevel]);
}
public void replayLevel()
{
SceneManager.LoadScene(levels[currentLevel-1]);
}
}

View file

@ -0,0 +1,2 @@
fileFormatVersion: 2
guid: 6b44c52b4de179af282b4cf5f073b748

View file

@ -0,0 +1,95 @@
using UnityEngine;
using UnityEngine.SceneManagement;
using System.Collections.Generic;
public class MenuManager : MonoBehaviour
{
[SerializeField] public GameObject mainPanel;
[SerializeField] public GameObject settingsPanel;
[SerializeField] public GameObject levelsPanel;
[SerializeField] public UnlockedLevelsManager unlockedLevelsManager;
[SerializeField] public List<GameObject> levelButtons;
[SerializeField] public GameObject lockPrefab;
[SerializeField] public GameObject bronzeStarPrefab;
[SerializeField] public GameObject silverStarPrefab;
[SerializeField] public GameObject goldStarPrefab;
[SerializeField] public List<string> levels;
void Start()
{
mainPanel.SetActive(true);
settingsPanel.SetActive(false);
levelsPanel.SetActive(false);
for (int i = 0; i < levelButtons.Count; i++)
{
bool didSpawn = false;
GameObject spawnedUI = null;
switch (unlockedLevelsManager.getLevelStatus(i+1))
{
case 0:
didSpawn = true;
spawnedUI = Instantiate(lockPrefab);
break;
case 2:
didSpawn = true;
spawnedUI = Instantiate(bronzeStarPrefab);
break;
case 3:
didSpawn = true;
spawnedUI = Instantiate(silverStarPrefab);
break;
case 4:
didSpawn = true;
spawnedUI = Instantiate(goldStarPrefab);
break;
}
if (didSpawn)
{
spawnedUI.transform.SetParent(levelButtons[i].transform, false);
}
}
}
public void StartGame()
{
mainPanel.SetActive(false);
levelsPanel.SetActive(true);
//SceneManager.LoadScene("GameScene"); // Replace "GameScene" with your scene name
}
public void OpenSettings()
{
mainPanel.SetActive(false);
settingsPanel.SetActive(true);
}
public void QuitGame()
{
Debug.Log("Quit Game"); // This won't quit the editor but will work in a built application
Application.Quit();
}
public void backToMenu()
{
mainPanel.SetActive(true);
settingsPanel.SetActive(false);
levelsPanel.SetActive(false);
Debug.Log("Back To Menu"); // This won't quit the editor but will work in a built application
}
public void goToLevel(int level)
{
//Debug.Log(unlockedLevelsManager.getLevelStatus(level));
if (unlockedLevelsManager.getLevelStatus(level) != 0)
{
SceneManager.LoadScene(levels[level - 1]);
Debug.Log("Go To Level " + level);
}
}
}

View file

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

View file

@ -0,0 +1,93 @@
using UnityEngine;
public class PastilleManager : MonoBehaviour
{
[SerializeField] ArmyManager armyManagerScript;
[SerializeField] SpawnDucks spawnManagerScript;
[SerializeField] GameObject enemyPastillePrefab;
[SerializeField] GameObject playerPastillePrefab;
[SerializeField] GameObject selectedPastillePrefab;
[SerializeField] GameManager gameManagerScript;
private bool removedPastilles = false;
private bool addedInitialPastilles = false;
// Start is called once before the first execution of Update after the MonoBehaviour is created
void Start()
{
}
// Update is called once per frame
void Update()
{
if (!addedInitialPastilles && gameManagerScript.spawningPhase)
{
addedInitialPastilles = true;
setEnemyPastilles();
}
if (addedInitialPastilles && !removedPastilles && !gameManagerScript.spawningPhase)
{
removedPastilles = true;
removeEnemyPastilles();
removeTeamPastilles();
};
}
public void setEnemyPastilles()
{
foreach (GameObject enemyDuck in armyManagerScript.getArmy(true))
{
giveXPastilleToY(enemyPastillePrefab, enemyDuck);
}
}
public void removeTeamPastilles()
{
foreach (GameObject playerDuck in armyManagerScript.getArmy(false))
{
removeTroopsPastilles(playerDuck);
}
}
public void removeEnemyPastilles()
{
foreach (GameObject enemyDuck in armyManagerScript.getArmy(true))
{
removeTroopsPastilles(enemyDuck);
}
}
public void setSelectedPastille(GameObject troop)
{
removeTroopsPastilles(troop);
giveXPastilleToY(selectedPastillePrefab, troop);
}
public void setPlayerPastille(GameObject troop)
{
removeTroopsPastilles(troop);
giveXPastilleToY(playerPastillePrefab, troop);
}
public void removeTroopsPastilles(GameObject troop)
{
Transform PastilleSpawner = troop.transform.Find("pastilleSpawner");
foreach (Transform child in PastilleSpawner)
{
if (child.CompareTag("Pastille"))
{
Destroy(child.gameObject);
}
}
}
public void giveXPastilleToY(GameObject pastille, GameObject troop)
{
Instantiate(pastille, troop.transform.Find("pastilleSpawner").transform);
}
}

View file

@ -0,0 +1,2 @@
fileFormatVersion: 2
guid: 91334ba5025ad505fb2c78f519e24dec

View file

@ -0,0 +1,198 @@
using UnityEngine;
using System.Collections.Generic;
using UnityEngine.UI;
using TMPro;
public class SpawnDucks : MonoBehaviour
{
[SerializeField] GameObject armyManagerEntity;
[SerializeField] GameObject gameManagerEntity;
private GameManager gameManagerScript;
private ArmyManager armyManagerScript;
[SerializeField] private List<GameObject> duckPrefabs;
[SerializeField] GameObject theCamera;
[SerializeField] GameObject healthCanvas;
[SerializeField] GameObject troopSelectionCanvas;
//[SerializeField] private List<Sprite> duckImages;
[SerializeField] private List<GameObject> troopIcons;
[SerializeField] private Sprite chosenCadre;
[SerializeField] private Sprite unchosenCadre;
private LayerMask groundLayerMask;
private LayerMask duckLayerMask;
private LayerMask noSpawnLayerMask;
private bool didHitGround;
private RaycastHit hitGround;
private RaycastHit hitDuck;
private RaycastHit hitNoSpawn;
private Vector3 directionToMouse;
private int whichTroopToSpawn = 0;
private GameObject currentlySpawningTroop;
private GameObject selectedTroop;
[SerializeField] public GameObject troopEditPanel;
[SerializeField] private Button crownButton;
[SerializeField] private Sprite hasCrownButton;
[SerializeField] private Sprite noCrownButton;
[SerializeField] private Button offenseModeButton;
[SerializeField] private Button randomModeButton;
[SerializeField] private Button defenseModeButton;
[SerializeField] private Sprite offenseModeOff;
[SerializeField] private Sprite offenseModeOn;
[SerializeField] private Sprite randomModeOff;
[SerializeField] private Sprite randomModeOn;
[SerializeField] private Sprite defenseModeOff;
[SerializeField] private Sprite defenseModeOn;
private BaseDuckScript selectedTroopScript;
[SerializeField] private PastilleManager pastilleManager;
[SerializeField] private TextMeshProUGUI priceTagMesh;
[SerializeField] private TextMeshProUGUI healthTagMesh;
[SerializeField] private TextMeshProUGUI movSpeedTagMesh;
[SerializeField] private TextMeshProUGUI armorTagMesh;
[SerializeField] private TextMeshProUGUI damageTagMesh;
[SerializeField] private TextMeshProUGUI attackSpeedTagMesh;
[SerializeField] private TextMeshProUGUI descriptionTagMesh;
// Start is called once before the first execution of Update after the MonoBehaviour is created
void Start()
{
troopEditPanel.SetActive(false);
groundLayerMask = LayerMask.GetMask("Dirt") | LayerMask.GetMask("Sand");
duckLayerMask = LayerMask.GetMask("Duck");
noSpawnLayerMask = LayerMask.GetMask("Water") | LayerMask.GetMask("Wall");
currentlySpawningTroop = duckPrefabs[0];
ActivateDuckCadre(0);
updateTroopStats();
gameManagerScript = gameManagerEntity.GetComponent<GameManager>();
armyManagerScript = armyManagerEntity.GetComponent<ArmyManager>();
}
// Update is called once per frame
void Update()
{
choseIfShowTroopEditPanel();
if (Input.GetKeyDown(KeyCode.C))
{
deactivateDuckCadre(whichTroopToSpawn);
whichTroopToSpawn++;
whichTroopToSpawn = whichTroopToSpawn % troopIcons.Count;
ActivateDuckCadre(whichTroopToSpawn);
currentlySpawningTroop = duckPrefabs[whichTroopToSpawn];
updateTroopStats();
}
if (gameManagerScript.spawningPhase && Input.GetMouseButtonDown(0))
{
Ray ray = Camera.main.ScreenPointToRay(Input.mousePosition);
didHitGround = Physics.Raycast(ray, out hitGround, Mathf.Infinity, groundLayerMask);
bool didHitNoSpawn = Physics.Raycast(ray, out hitNoSpawn, Mathf.Infinity, noSpawnLayerMask);
bool didHitDuck = Physics.Raycast(ray, out hitDuck, Mathf.Infinity, duckLayerMask);
if (didHitDuck && (!didHitNoSpawn || hitDuck.distance < hitNoSpawn.distance) && (!didHitGround || hitDuck.distance <= hitGround.distance))
{
if (!hitDuck.transform.gameObject.GetComponent<BaseDuckScript>().getTeam())
{
setSelectedTroop(hitDuck.transform.gameObject);
}
} else if(didHitGround && (!didHitNoSpawn || hitGround.distance < hitNoSpawn.distance) && (!didHitDuck || hitGround.distance < hitDuck.distance)){
if (currentlySpawningTroop.GetComponent<BaseDuckScript>().cost <= gameManagerScript.currentCoins)
{
GameObject newDuck = Instantiate(currentlySpawningTroop, (hitGround.point + new Vector3(0f, currentlySpawningTroop.transform.Find("TigeUI").GetComponent<Renderer>().bounds.size.y * 0.8f,0f)), Quaternion.identity);
BaseDuckScript duckScript = newDuck.GetComponent<BaseDuckScript>();
duckScript.setTeam(false);
duckScript.setArmyManager(armyManagerEntity);
duckScript.setGameManager(gameManagerEntity);
duckScript.setHealthCanvas(healthCanvas);
gameManagerScript.spendCoins(duckScript.cost);
setSelectedTroop(newDuck);
}
}
}
}
public void updateTroopStats()
{
List<string> troopStats = currentlySpawningTroop.GetComponent<BaseDuckScript>().troopStats;
priceTagMesh.text = "Prix : " + troopStats[0];
healthTagMesh.text = "PV : " + troopStats[1];
movSpeedTagMesh.text = "Vitesse (Déplacement) : " + troopStats[2];
armorTagMesh.text = "Armure : " + troopStats[3];
damageTagMesh.text = "Dégats : " + troopStats[4];
attackSpeedTagMesh.text = "Vitesse (Attaque) : " + troopStats[5];
descriptionTagMesh.text = "Description : " + troopStats[6];
}
public void choseIfShowTroopEditPanel()
{
if (selectedTroop != null)
{
troopEditPanel.SetActive(true);
crownButton.image.sprite = (selectedTroopScript.hasCrown) ? hasCrownButton : noCrownButton;
offenseModeButton.image.sprite = ((selectedTroopScript.getAttackMode() == 1) ? offenseModeOn : offenseModeOff);
randomModeButton.image.sprite = ((selectedTroopScript.getAttackMode() == 2) ? randomModeOn : randomModeOff);
defenseModeButton.image.sprite = ((selectedTroopScript.getAttackMode() == 3) ? defenseModeOn : defenseModeOff);
}
else
{
troopEditPanel.SetActive(false);
}
}
public void despawnSelectedDuck()
{
selectedTroopScript.despawn();
selectedTroop = null;
}
public void ActivateDuckCadre(int duck)
{
troopIcons[duck].gameObject.transform.GetChild(1).GetComponent<Image>().sprite = chosenCadre;
}
public void deactivateDuckCadre(int duck)
{
troopIcons[duck].gameObject.transform.GetChild(1).GetComponent<Image>().sprite = unchosenCadre;
}
public void giveCrownToSelected()
{
armyManagerScript.giveCrownDuckTo(false, selectedTroop);
}
public void removeCrownFromSelected()
{
armyManagerScript.removeCrownDuckFrom(false, selectedTroop);
}
public void toggleCrownFromSelected()
{
if (selectedTroopScript.hasCrown)
{
removeCrownFromSelected();
}
else
{
giveCrownToSelected();
}
}
public void setSelectedDuckMode(int mode)
{
selectedTroopScript.setAttackMode(mode);
}
public void setSelectedTroop(GameObject troop)
{
if (selectedTroop != null)
{
pastilleManager.setPlayerPastille(selectedTroop);
}
selectedTroop = troop;
selectedTroopScript = selectedTroop.GetComponent<BaseDuckScript>();
pastilleManager.setSelectedPastille(troop);
}
}

View file

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

View file

@ -0,0 +1,68 @@
using UnityEngine;
using System.Collections.Generic;
public class UnlockedLevelsManager : MonoBehaviour
{
[SerializeField] private bool mainMenuLevel;
static public List<int> unlockedLevels = null; //0 = locked, 1 = unlocked not beaten, 2 = beaten easy, 3 = beaten medium, 4 = beaten hard
private int howManyLevels = 5;
// Start is called once before the first execution of Update after the MonoBehaviour is created
void Start()
{
if (mainMenuLevel)
{
if (unlockedLevels == null){
unlockedLevels = new List<int>();
for (int i = 0; i < howManyLevels; i++)
{
unlockedLevels.Add(0);
}
unlockedLevels[0] = 4;
unlockedLevels[1] = 3;
unlockedLevels[2] = 2;
unlockedLevels[3] = 1;
}
}
}
// Update is called once per frame
void Update()
{
}
public void beatCurrentLevel(int currentLevel, int difficulty) //difficulty = 1,2,3
{
if (unlockedLevels != null){
if (!mainMenuLevel)
{
if (currentLevel != howManyLevels - 1)
{
if (unlockedLevels[currentLevel] == 0)
{
unlockedLevels[currentLevel] = 1;
}
}
if (unlockedLevels[currentLevel - 1] < difficulty + 1)
{
unlockedLevels[currentLevel - 1] = difficulty + 1;
}
}
}
}
public int getLevelStatus(int level)
{
if (unlockedLevels != null)
{
return unlockedLevels[level - 1];
}
return 0;
}
public List<int> getAllStatuses()
{
return unlockedLevels;
}
}

View file

@ -0,0 +1,2 @@
fileFormatVersion: 2
guid: 9f665727602dd2411b714a7aae91bf0d

View file

@ -0,0 +1,23 @@
using UnityEngine;
using UnityEngine.AI;
public class NavMeshJunk : MonoBehaviour
{
private NavMeshAgent agent;
[SerializeField] Vector3 destination;
[SerializeField] GameObject Arriv;
// Start is called once before the first execution of Update after the MonoBehaviour is created
void Start()
{
agent = GetComponent<NavMeshAgent>();
destination = agent.destination;
}
// Update is called once per frame
void Update()
{
destination=Arriv.transform.position;
agent.destination = destination;
}
}

View file

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

View file

@ -0,0 +1,37 @@
using UnityEngine;
using UnityEngine.UI;
public class PVMETER : MonoBehaviour
{
[SerializeField] Image PVMeter;
private float PVm;
private float PVMax;
public Gradient colorGradient;
// 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()
{
Debug.Log("JE SUIS LA");
var gradient = new Gradient();
var colors = new GradientColorKey[2];
colors[0] = new GradientColorKey(Color.red, 0.0f);
colors[1] = new GradientColorKey(Color.green, 1.0f);
var alphas = new GradientAlphaKey[2];
alphas[0] = new GradientAlphaKey(1.0f, 0.0f);
alphas[1] = new GradientAlphaKey(1.0f, 0.0f);
gradient.SetKeys(colors, alphas);
PVm = GetComponent<BaseDuckScript>().getHealth() / GetComponent<BaseDuckScript>().getBaseHealth();
Debug.Log(PVm);
PVMeter.fillAmount = PVm;
PVMeter.color = colorGradient.Evaluate(PVm);
}
}

View file

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

View file

@ -0,0 +1,53 @@
using UnityEngine;
public class PlayerJunkMVT : MonoBehaviour
{
// Start is called once before the first execution of Update after the MonoBehaviour is created
void Start()
{
var gradient = new Gradient();
// Blend color from red at 0% to blue at 100%
var colors = new GradientColorKey[2];
colors[0] = new GradientColorKey(Color.red, 0.0f);
colors[1] = new GradientColorKey(Color.green, 1.0f);
// Blend alpha from opaque at 0% to transparent at 100%
var alphas = new GradientAlphaKey[2];
alphas[0] = new GradientAlphaKey(1.0f, 0.0f);
alphas[1] = new GradientAlphaKey(1.0f, 0.0f);
gradient.SetKeys(colors, alphas);
// What's the color at the relative time 0.25 (25%) ?
Debug.Log(gradient.Evaluate(0.25f));
}
// Update is called once per frame
void Update()
{
float SPEED = 10.0f;
float ROT = 100.0f;
if (Input.GetKey(KeyCode.UpArrow))
{
Debug.Log("avancer");
transform.Translate(Vector3.forward * Time.deltaTime * SPEED);
}
if (Input.GetKey(KeyCode.DownArrow))
{
Debug.Log("reculer");
transform.Translate(-Vector3.forward * Time.deltaTime * SPEED);
}
if (Input.GetKey(KeyCode.LeftArrow))
{
Debug.Log("tourner la tête à gauche");
transform.Rotate(0.0f, -ROT * Time.deltaTime, 0.0f, Space.Self);
}
if (Input.GetKey(KeyCode.RightArrow))
{
Debug.Log("tourner la tête à droite");
transform.Rotate(0.0f, ROT * Time.deltaTime, 0.0f, Space.Self);
}
}
}

View file

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

View file

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

View file

@ -0,0 +1,16 @@
using UnityEngine;
public class CoinManager : 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

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

View file

@ -0,0 +1,38 @@
using UnityEngine;
using TMPro;
public class EnemiesAliveManager : MonoBehaviour
{
[SerializeField] GameManager gameManager;
[SerializeField] GameObject enemiesAliveCanvas;
[SerializeField] GameObject enemiesAliveDisplay;
private TextMeshProUGUI enemiesAliveMesh;
private bool switchedCanvasOn = false;
private bool switchedCanvasOff = false;
// Start is called once before the first execution of Update after the MonoBehaviour is created
void Start()
{
enemiesAliveMesh = enemiesAliveDisplay.GetComponent<TextMeshProUGUI>();
enemiesAliveCanvas.SetActive(false);
}
// Update is called once per frame
void Update()
{
if (!switchedCanvasOn && gameManager.combatPhase)
{
enemiesAliveCanvas.SetActive(true);
switchedCanvasOn = true;
}
if (switchedCanvasOn && !switchedCanvasOff && !gameManager.combatPhase)
{
enemiesAliveCanvas.SetActive(false);
switchedCanvasOff = true;
}
enemiesAliveMesh.text = "Ennemies En Vie : " + gameManager.armyManager.getArmy(true).Count.ToString();
}
}

View file

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

View file

@ -0,0 +1,51 @@
using UnityEngine;
using UnityEngine.UI;
using System.Collections.Generic;
using TMPro;
public class ResolutionSettings : MonoBehaviour
{
[SerializeField] public TMP_Dropdown resolutionDropdown;
private Resolution[] resolutions =
{
new Resolution {width = 1280, height = 720},
new Resolution {width = 1920, height = 1080},
new Resolution {width = 2560, height = 1440},
new Resolution {width = 3840, height = 2160}
};
private int selectedIndex = 0;
[SerializeField] private Button applyButton;
void Start()
{
resolutionDropdown.ClearOptions();
List<string> options = new List<string>();
for (int i = 0; i < resolutions.Length; i++)
{
string option = resolutions[i].width + " x " + resolutions[i].height;
options.Add(option);
}
resolutionDropdown.AddOptions(options);
int savedResolutionIndex = PlayerPrefs.GetInt("ResolutionIndex", 0);
resolutionDropdown.value = savedResolutionIndex;
resolutionDropdown.RefreshShownValue();
}
public void SetResolution()
{
Resolution resolution = resolutions[selectedIndex];
Debug.Log(resolution.width + " x " + resolution.height);
Screen.SetResolution(resolution.width, resolution.height, Screen.fullScreen);
PlayerPrefs.SetInt("ResolutionIndex", selectedIndex);
PlayerPrefs.Save();
}
public void preSaveResolution()
{
selectedIndex = resolutionDropdown.value;
}
}

View file

@ -0,0 +1,2 @@
fileFormatVersion: 2
guid: 0698fd8378f2603d08fa38f7074a2ff3

View file

@ -0,0 +1,56 @@
using UnityEngine;
using TMPro;
public class TimerManager : MonoBehaviour
{
[SerializeField] GameManager gameManager;
[SerializeField] GameObject timerCanvas;
[SerializeField] GameObject timer;
private TextMeshProUGUI timerMesh;
[SerializeField] GameObject winTimer;
private TextMeshProUGUI winTimerMesh;
[SerializeField] GameObject lostTimer;
private TextMeshProUGUI lostTimerMesh;
private bool switchedCanvasOn = false;
private bool switchedCanvasOff = false;
private float startTime;
private float endTime;
// Start is called once before the first execution of Update after the MonoBehaviour is created
void Start()
{
timerMesh = timer.GetComponent<TextMeshProUGUI>();
winTimerMesh = winTimer.GetComponent<TextMeshProUGUI>();
lostTimerMesh = lostTimer.GetComponent<TextMeshProUGUI>();
timerCanvas.SetActive(false);
}
// Update is called once per frame
void Update()
{
if (!switchedCanvasOn && gameManager.combatPhase)
{
timerCanvas.SetActive(true);
switchedCanvasOn = true;
startTime = Time.time;
}
if (switchedCanvasOn && !switchedCanvasOff && !gameManager.combatPhase)
{
timerCanvas.SetActive(false);
switchedCanvasOff = true;
endTime = Time.time-startTime;
winTimerMesh.text = (((int)(endTime / 60)).ToString() + ":" + ((((int)(endTime) % 60) < 10) ? "0" : "") + ((int)(endTime) % 60).ToString());
lostTimerMesh.text = (((int)(endTime / 60)).ToString() + ":" + ((((int)(endTime) % 60) < 10) ? "0" : "") + ((int)(endTime) % 60).ToString());
}
float combatTime = Time.time - startTime;
timerMesh.text = (((int)(combatTime / 60)).ToString() + ":" + ((((int)(combatTime) % 60) < 10) ? "0" : "") + ((int)(combatTime) % 60).ToString());
}
}

View file

@ -0,0 +1,2 @@
fileFormatVersion: 2
guid: 307a1f6e5ebe37b4f89085a762648529

View file

@ -0,0 +1,6 @@
//using UnityEngine;
public interface Weapon
{
void dealDamage();
}

View file

@ -0,0 +1,2 @@
fileFormatVersion: 2
guid: 7cedfc101377768d7ad55c639ea2f239

View file

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

View file

@ -0,0 +1,112 @@
fileFormatVersion: 2
guid: b7200c75e2b405a498f2c2298eee64b7
ModelImporter:
serializedVersion: 22200
internalIDToNameTable: []
externalObjects:
- first:
type: UnityEngine:Material
assembly: UnityEngine.CoreModule
name: standardSurface2
second: {fileID: 2100000, guid: 4dbfc2d863d58ee4cb277957897df825, type: 2}
materials:
materialImportMode: 2
materialName: 0
materialSearch: 1
materialLocation: 1
animations:
legacyGenerateAnimations: 4
bakeSimulation: 0
resampleCurves: 1
optimizeGameObjects: 0
removeConstantScaleCurves: 0
motionNodeName:
animationImportErrors:
animationImportWarnings:
animationRetargetingWarnings:
animationDoRetargetingWarnings: 0
importAnimatedCustomProperties: 0
importConstraints: 0
animationCompression: 1
animationRotationError: 0.5
animationPositionError: 0.5
animationScaleError: 0.5
animationWrapMode: 0
extraExposedTransformPaths: []
extraUserProperties: []
clipAnimations: []
isReadable: 0
meshes:
lODScreenPercentages: []
globalScale: 0.02
meshCompression: 0
addColliders: 0
useSRGBMaterialColor: 1
sortHierarchyByName: 1
importPhysicalCameras: 1
importVisibility: 1
importBlendShapes: 1
importCameras: 1
importLights: 1
nodeNameCollisionStrategy: 1
fileIdsGeneration: 2
swapUVChannels: 0
generateSecondaryUV: 0
useFileUnits: 1
keepQuads: 0
weldVertices: 1
bakeAxisConversion: 0
preserveHierarchy: 0
skinWeightsMode: 0
maxBonesPerVertex: 4
minBoneWeight: 0.001
optimizeBones: 1
meshOptimizationFlags: -1
indexFormat: 0
secondaryUVAngleDistortion: 8
secondaryUVAreaDistortion: 15.000001
secondaryUVHardAngle: 88
secondaryUVMarginMethod: 1
secondaryUVMinLightmapResolution: 40
secondaryUVMinObjectScale: 1
secondaryUVPackMargin: 4
useFileScale: 1
strictVertexDataChecks: 0
tangentSpace:
normalSmoothAngle: 60
normalImportMode: 0
tangentImportMode: 3
normalCalculationMode: 4
legacyComputeAllNormalsFromSmoothingGroupsWhenMeshHasBlendShapes: 0
blendShapeNormalImportMode: 1
normalSmoothingSource: 0
referencedClips: []
importAnimation: 1
humanDescription:
serializedVersion: 3
human: []
skeleton: []
armTwist: 0.5
foreArmTwist: 0.5
upperLegTwist: 0.5
legTwist: 0.5
armStretch: 0.05
legStretch: 0.05
feetSpacing: 0
globalScale: 0.02
rootMotionBoneName:
hasTranslationDoF: 0
hasExtraRoot: 0
skeletonHasParents: 1
lastHumanDescriptionAvatarSource: {instanceID: 0}
autoGenerateAvatarMappingIfUnspecified: 1
animationType: 2
humanoidOversampling: 1
avatarSetup: 0
addHumanoidExtraRootOnlyWhenUsingAvatar: 1
importBlendShapeDeformPercent: 1
remapMaterialsIfMaterialImportModeIsNone: 0
additionalBone: 0
userData:
assetBundleName:
assetBundleVariant:

View file

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

View file

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

View file

@ -0,0 +1,85 @@
%YAML 1.1
%TAG !u! tag:unity3d.com,2011:
--- !u!21 &2100000
Material:
serializedVersion: 8
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_Name: Claymore
m_Shader: {fileID: 46, guid: 0000000000000000f000000000000000, type: 0}
m_Parent: {fileID: 0}
m_ModifiedSerializedProperties: 0
m_ValidKeywords:
- _NORMALMAP
m_InvalidKeywords: []
m_LightmapFlags: 4
m_EnableInstancingVariants: 0
m_DoubleSidedGI: 0
m_CustomRenderQueue: -1
stringTagMap: {}
disabledShaderPasses: []
m_LockedProperties:
m_SavedProperties:
serializedVersion: 3
m_TexEnvs:
- _BumpMap:
m_Texture: {fileID: 2800000, guid: 7f466532369b0b648a648e51deb1729f, type: 3}
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: 8d8084c79d28f3342bf37e5ac4ee4c3f, 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}
m_Ints: []
m_Floats:
- _BumpScale: 1
- _Cutoff: 0.5
- _DetailNormalMapScale: 1
- _DstBlend: 0
- _GlossMapScale: 1
- _Glossiness: 0.5
- _GlossyReflections: 1
- _Metallic: 0
- _Mode: 0
- _OcclusionStrength: 1
- _Parallax: 0.02
- _SmoothnessTextureChannel: 0
- _SpecularHighlights: 1
- _SrcBlend: 1
- _UVSec: 0
- _ZWrite: 1
m_Colors:
- _Color: {r: 1, g: 1, b: 1, a: 1}
- _EmissionColor: {r: 0, g: 0, b: 0, a: 1}
m_BuildTextureStacks: []
m_AllowLocking: 1

View file

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

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.1 MiB

View file

@ -0,0 +1,117 @@
fileFormatVersion: 2
guid: 8d8084c79d28f3342bf37e5ac4ee4c3f
TextureImporter:
internalIDToNameTable: []
externalObjects: {}
serializedVersion: 13
mipmaps:
mipMapMode: 0
enableMipMap: 1
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: 1
aniso: 1
mipBias: 0
wrapU: 0
wrapV: 0
wrapW: 0
nPOTScale: 1
lightmap: 0
compressionQuality: 50
spriteMode: 0
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: 0
spriteTessellationDetail: -1
textureType: 0
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: 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: 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
spriteSheet:
serializedVersion: 2
sprites: []
outline: []
customData:
physicsShape: []
bones: []
spriteID:
internalID: 0
vertices: []
indices:
edges: []
weights: []
secondaryTextures: []
spriteCustomMetadata:
entries: []
nameFileIdTable: {}
mipmapLimitGroupName:
pSDRemoveMatte: 0
userData:
assetBundleName:
assetBundleVariant:

Binary file not shown.

After

Width:  |  Height:  |  Size: 16 MiB

View file

@ -0,0 +1,117 @@
fileFormatVersion: 2
guid: 7f466532369b0b648a648e51deb1729f
TextureImporter:
internalIDToNameTable: []
externalObjects: {}
serializedVersion: 13
mipmaps:
mipMapMode: 0
enableMipMap: 1
sRGBTexture: 0
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: 1
aniso: 1
mipBias: 0
wrapU: 0
wrapV: 0
wrapW: 0
nPOTScale: 1
lightmap: 0
compressionQuality: 50
spriteMode: 0
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: 0
spriteTessellationDetail: -1
textureType: 1
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: 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: 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
spriteSheet:
serializedVersion: 2
sprites: []
outline: []
customData:
physicsShape: []
bones: []
spriteID:
internalID: 0
vertices: []
indices:
edges: []
weights: []
secondaryTextures: []
spriteCustomMetadata:
entries: []
nameFileIdTable: {}
mipmapLimitGroupName:
pSDRemoveMatte: 0
userData:
assetBundleName:
assetBundleVariant:

View file

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

View file

@ -0,0 +1,84 @@
%YAML 1.1
%TAG !u! tag:unity3d.com,2011:
--- !u!21 &2100000
Material:
serializedVersion: 8
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_Name: BECK
m_Shader: {fileID: 46, guid: 0000000000000000f000000000000000, type: 0}
m_Parent: {fileID: 0}
m_ModifiedSerializedProperties: 0
m_ValidKeywords: []
m_InvalidKeywords: []
m_LightmapFlags: 4
m_EnableInstancingVariants: 0
m_DoubleSidedGI: 0
m_CustomRenderQueue: -1
stringTagMap: {}
disabledShaderPasses: []
m_LockedProperties:
m_SavedProperties:
serializedVersion: 3
m_TexEnvs:
- _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: aaf72489535dae14da81f26352e7b656, 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}
m_Ints: []
m_Floats:
- _BumpScale: 1
- _Cutoff: 0.5
- _DetailNormalMapScale: 1
- _DstBlend: 0
- _GlossMapScale: 1
- _Glossiness: 0.5
- _GlossyReflections: 1
- _Metallic: 0
- _Mode: 0
- _OcclusionStrength: 1
- _Parallax: 0.02
- _SmoothnessTextureChannel: 0
- _SpecularHighlights: 1
- _SrcBlend: 1
- _UVSec: 0
- _ZWrite: 1
m_Colors:
- _Color: {r: 1, g: 1, b: 1, a: 1}
- _EmissionColor: {r: 0, g: 0, b: 0, a: 1}
m_BuildTextureStacks: []
m_AllowLocking: 1

View file

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

View file

@ -0,0 +1,84 @@
%YAML 1.1
%TAG !u! tag:unity3d.com,2011:
--- !u!21 &2100000
Material:
serializedVersion: 8
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_Name: Body
m_Shader: {fileID: 46, guid: 0000000000000000f000000000000000, type: 0}
m_Parent: {fileID: 0}
m_ModifiedSerializedProperties: 0
m_ValidKeywords: []
m_InvalidKeywords: []
m_LightmapFlags: 4
m_EnableInstancingVariants: 0
m_DoubleSidedGI: 0
m_CustomRenderQueue: -1
stringTagMap: {}
disabledShaderPasses: []
m_LockedProperties:
m_SavedProperties:
serializedVersion: 3
m_TexEnvs:
- _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: 28e2cdb7e7477c442ab15c4e23bc593f, 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}
m_Ints: []
m_Floats:
- _BumpScale: 1
- _Cutoff: 0.5
- _DetailNormalMapScale: 1
- _DstBlend: 0
- _GlossMapScale: 1
- _Glossiness: 0.5
- _GlossyReflections: 1
- _Metallic: 0
- _Mode: 0
- _OcclusionStrength: 1
- _Parallax: 0.02
- _SmoothnessTextureChannel: 0
- _SpecularHighlights: 1
- _SrcBlend: 1
- _UVSec: 0
- _ZWrite: 1
m_Colors:
- _Color: {r: 1, g: 1, b: 1, a: 1}
- _EmissionColor: {r: 0, g: 0, b: 0, a: 1}
m_BuildTextureStacks: []
m_AllowLocking: 1

View file

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

View file

@ -0,0 +1,84 @@
%YAML 1.1
%TAG !u! tag:unity3d.com,2011:
--- !u!21 &2100000
Material:
serializedVersion: 8
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_Name: Eyes
m_Shader: {fileID: 46, guid: 0000000000000000f000000000000000, type: 0}
m_Parent: {fileID: 0}
m_ModifiedSerializedProperties: 0
m_ValidKeywords: []
m_InvalidKeywords: []
m_LightmapFlags: 4
m_EnableInstancingVariants: 0
m_DoubleSidedGI: 0
m_CustomRenderQueue: -1
stringTagMap: {}
disabledShaderPasses: []
m_LockedProperties:
m_SavedProperties:
serializedVersion: 3
m_TexEnvs:
- _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: 324d8a1fabd486a48a0fbad94ca049d0, 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}
m_Ints: []
m_Floats:
- _BumpScale: 1
- _Cutoff: 0.5
- _DetailNormalMapScale: 1
- _DstBlend: 0
- _GlossMapScale: 1
- _Glossiness: 0.5
- _GlossyReflections: 1
- _Metallic: 0
- _Mode: 0
- _OcclusionStrength: 1
- _Parallax: 0.02
- _SmoothnessTextureChannel: 0
- _SpecularHighlights: 1
- _SrcBlend: 1
- _UVSec: 0
- _ZWrite: 1
m_Colors:
- _Color: {r: 1, g: 1, b: 1, a: 1}
- _EmissionColor: {r: 0, g: 0, b: 0, a: 1}
m_BuildTextureStacks: []
m_AllowLocking: 1

View file

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

Some files were not shown because too many files have changed in this diff Show more