From 5837a7f2c977b3f618ba31b4b23cc12732bb1e2c Mon Sep 17 00:00:00 2001 From: Samuel Date: Tue, 11 Aug 2015 12:09:17 -0400 Subject: [PATCH] - Added Tag manager - Added Class ZombieUnit (extends the Unit class) - Added class VampireUnit (extends the Unit class) --- Assets/Materials/vampire_color.mat | 138 +++++++++++ Assets/Materials/vampire_color.mat.meta | 8 + Assets/New Terrain.asset | Bin 0 -> 1072264 bytes Assets/New Terrain.asset.meta | 8 + Assets/Scenes/Sam_UnitScene.unity | 297 +++++++++++++++++++++++- Assets/Scripts/Command.cs | 4 +- Assets/Scripts/TagManager.cs | 14 ++ Assets/Scripts/TagManager.cs.meta | 12 + Assets/Scripts/Unit.cs | 58 ++--- Assets/Scripts/VampireUnit.cs | 38 +++ Assets/Scripts/VampireUnit.cs.meta | 12 + Assets/Scripts/ZombieUnit.cs | 36 +++ Assets/Scripts/ZombieUnit.cs.meta | 12 + ProjectSettings/TagManager.asset | 4 +- 14 files changed, 606 insertions(+), 35 deletions(-) create mode 100644 Assets/Materials/vampire_color.mat create mode 100644 Assets/Materials/vampire_color.mat.meta create mode 100644 Assets/New Terrain.asset create mode 100644 Assets/New Terrain.asset.meta create mode 100644 Assets/Scripts/TagManager.cs create mode 100644 Assets/Scripts/TagManager.cs.meta create mode 100644 Assets/Scripts/VampireUnit.cs create mode 100644 Assets/Scripts/VampireUnit.cs.meta create mode 100644 Assets/Scripts/ZombieUnit.cs create mode 100644 Assets/Scripts/ZombieUnit.cs.meta diff --git a/Assets/Materials/vampire_color.mat b/Assets/Materials/vampire_color.mat new file mode 100644 index 0000000..93b2a5f --- /dev/null +++ b/Assets/Materials/vampire_color.mat @@ -0,0 +1,138 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!21 &2100000 +Material: + serializedVersion: 6 + m_ObjectHideFlags: 0 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 0} + m_Name: vampire_color + m_Shader: {fileID: 46, guid: 0000000000000000f000000000000000, type: 0} + m_ShaderKeywords: + m_LightmapFlags: 5 + m_CustomRenderQueue: -1 + stringTagMap: {} + m_SavedProperties: + serializedVersion: 2 + m_TexEnvs: + data: + first: + name: _MainTex + second: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + data: + first: + name: _BumpMap + second: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + data: + first: + name: _DetailNormalMap + second: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + data: + first: + name: _ParallaxMap + second: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + data: + first: + name: _OcclusionMap + second: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + data: + first: + name: _EmissionMap + second: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + data: + first: + name: _DetailMask + second: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + data: + first: + name: _DetailAlbedoMap + second: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + data: + first: + name: _MetallicGlossMap + second: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + m_Floats: + data: + first: + name: _SrcBlend + second: 1 + data: + first: + name: _DstBlend + second: 0 + data: + first: + name: _Cutoff + second: .5 + data: + first: + name: _Parallax + second: .0199999996 + data: + first: + name: _ZWrite + second: 1 + data: + first: + name: _Glossiness + second: .5 + data: + first: + name: _BumpScale + second: 1 + data: + first: + name: _OcclusionStrength + second: 1 + data: + first: + name: _DetailNormalMapScale + second: 1 + data: + first: + name: _UVSec + second: 0 + data: + first: + name: _Mode + second: 0 + data: + first: + name: _Metallic + second: 0 + m_Colors: + data: + first: + name: _EmissionColor + second: {r: 0, g: 0, b: 0, a: 1} + data: + first: + name: _Color + second: {r: .963235319, g: .035413038, b: .035413038, a: 1} diff --git a/Assets/Materials/vampire_color.mat.meta b/Assets/Materials/vampire_color.mat.meta new file mode 100644 index 0000000..7023632 --- /dev/null +++ b/Assets/Materials/vampire_color.mat.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 975becc44691fa643872575fe45a0f2e +timeCreated: 1439299878 +licenseType: Free +NativeFormatImporter: + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/New Terrain.asset b/Assets/New Terrain.asset new file mode 100644 index 0000000000000000000000000000000000000000..639943ca14defafc8cfeba0e03ef29301565abe5 GIT binary patch literal 1072264 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 zAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C7 z2oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N z0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+ z009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBly zK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF z5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk z1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs z0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZ zfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&U zAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C7 z2oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N z0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+ z009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBly zK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF z5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk z1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs z0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZ zfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&U zAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C7 z2oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N z0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+ z009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBly zK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF z5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk z1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs z0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZ zfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&U zAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C7 z2oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N z0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+ z009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBly zK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF z5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk z1PH7Pymf2+#K!~(5FkK+009C72oNAZfB*pk1PBly@XZAN>}lWZPyHDI0t5&UAV7cs z0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7csf&aU}#%9yhx28Eh-TuD= Qc<6M~Jm=P?dFb?i1K*N}djJ3c literal 0 HcmV?d00001 diff --git a/Assets/New Terrain.asset.meta b/Assets/New Terrain.asset.meta new file mode 100644 index 0000000..3b0c9b3 --- /dev/null +++ b/Assets/New Terrain.asset.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: cc285f3696aa7d5449dcd631a7166155 +timeCreated: 1439299972 +licenseType: Free +NativeFormatImporter: + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/Scenes/Sam_UnitScene.unity b/Assets/Scenes/Sam_UnitScene.unity index 161483b..2d2da07 100644 --- a/Assets/Scenes/Sam_UnitScene.unity +++ b/Assets/Scenes/Sam_UnitScene.unity @@ -87,6 +87,211 @@ NavMeshSettings: cellSize: .166666672 manualCellSize: 0 m_NavMeshData: {fileID: 0} +--- !u!1 &90076749 +GameObject: + m_ObjectHideFlags: 0 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 0} + serializedVersion: 4 + m_Component: + - 4: {fileID: 90076750} + - 33: {fileID: 90076754} + - 135: {fileID: 90076753} + - 23: {fileID: 90076752} + - 114: {fileID: 90076751} + m_Layer: 0 + m_Name: CollisionField + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &90076750 +Transform: + m_ObjectHideFlags: 0 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 0} + m_GameObject: {fileID: 90076749} + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_Children: [] + m_Father: {fileID: 209133699} + m_RootOrder: 0 +--- !u!114 &90076751 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 0} + m_GameObject: {fileID: 90076749} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 8a1ccd1ad32d6bc4fb600c5b5720e01c, type: 3} + m_Name: + m_EditorClassIdentifier: +--- !u!23 &90076752 +MeshRenderer: + m_ObjectHideFlags: 0 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 0} + m_GameObject: {fileID: 90076749} + m_Enabled: 1 + m_CastShadows: 1 + m_ReceiveShadows: 1 + m_Materials: + - {fileID: 10303, guid: 0000000000000000f000000000000000, type: 0} + m_SubsetIndices: + m_StaticBatchRoot: {fileID: 0} + m_UseLightProbes: 1 + m_ReflectionProbeUsage: 1 + m_ProbeAnchor: {fileID: 0} + m_ScaleInLightmap: 1 + m_PreserveUVs: 1 + m_ImportantGI: 0 + m_AutoUVMaxDistance: .5 + m_AutoUVMaxAngle: 89 + m_LightmapParameters: {fileID: 0} + m_SortingLayerID: 0 + m_SortingOrder: 0 +--- !u!135 &90076753 +SphereCollider: + m_ObjectHideFlags: 0 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 0} + m_GameObject: {fileID: 90076749} + m_Material: {fileID: 0} + m_IsTrigger: 1 + m_Enabled: 1 + serializedVersion: 2 + m_Radius: 3 + m_Center: {x: 0, y: 0, z: 0} +--- !u!33 &90076754 +MeshFilter: + m_ObjectHideFlags: 0 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 0} + m_GameObject: {fileID: 90076749} + m_Mesh: {fileID: 10207, guid: 0000000000000000e000000000000000, type: 0} +--- !u!1 &209133695 +GameObject: + m_ObjectHideFlags: 0 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 0} + serializedVersion: 4 + m_Component: + - 4: {fileID: 209133699} + - 33: {fileID: 209133698} + - 65: {fileID: 209133697} + - 23: {fileID: 209133696} + - 143: {fileID: 209133700} + - 54: {fileID: 209133701} + - 114: {fileID: 209133702} + m_Layer: 0 + m_Name: Vampire + m_TagString: VampirePlayer + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!23 &209133696 +MeshRenderer: + m_ObjectHideFlags: 0 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 0} + m_GameObject: {fileID: 209133695} + m_Enabled: 1 + m_CastShadows: 1 + m_ReceiveShadows: 1 + m_Materials: + - {fileID: 2100000, guid: 975becc44691fa643872575fe45a0f2e, type: 2} + m_SubsetIndices: + m_StaticBatchRoot: {fileID: 0} + m_UseLightProbes: 1 + m_ReflectionProbeUsage: 1 + m_ProbeAnchor: {fileID: 0} + m_ScaleInLightmap: 1 + m_PreserveUVs: 1 + m_ImportantGI: 0 + m_AutoUVMaxDistance: .5 + m_AutoUVMaxAngle: 89 + m_LightmapParameters: {fileID: 0} + m_SortingLayerID: 0 + m_SortingOrder: 0 +--- !u!65 &209133697 +BoxCollider: + m_ObjectHideFlags: 0 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 0} + m_GameObject: {fileID: 209133695} + m_Material: {fileID: 0} + m_IsTrigger: 0 + m_Enabled: 1 + serializedVersion: 2 + m_Size: {x: 1, y: 1, z: 1} + m_Center: {x: 0, y: 0, z: 0} +--- !u!33 &209133698 +MeshFilter: + m_ObjectHideFlags: 0 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 0} + m_GameObject: {fileID: 209133695} + m_Mesh: {fileID: 10202, guid: 0000000000000000e000000000000000, type: 0} +--- !u!4 &209133699 +Transform: + m_ObjectHideFlags: 0 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 0} + m_GameObject: {fileID: 209133695} + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: 0, y: 5, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_Children: + - {fileID: 90076750} + m_Father: {fileID: 0} + m_RootOrder: 0 +--- !u!143 &209133700 +CharacterController: + m_ObjectHideFlags: 0 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 0} + m_GameObject: {fileID: 209133695} + m_Material: {fileID: 0} + m_IsTrigger: 0 + m_Enabled: 1 + serializedVersion: 2 + m_Height: 1 + m_Radius: .5 + m_SlopeLimit: 45 + m_StepOffset: .300000012 + m_SkinWidth: .0799999982 + m_MinMoveDistance: .00100000005 + m_Center: {x: 0, y: 0, z: 0} +--- !u!54 &209133701 +Rigidbody: + m_ObjectHideFlags: 0 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 0} + m_GameObject: {fileID: 209133695} + serializedVersion: 2 + m_Mass: 1 + m_Drag: 0 + m_AngularDrag: .0500000007 + m_UseGravity: 1 + m_IsKinematic: 0 + m_Interpolate: 0 + m_Constraints: 0 + m_CollisionDetection: 0 +--- !u!114 &209133702 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 0} + m_GameObject: {fileID: 209133695} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: c1cd93867b8a1d7459a4fb92cac63854, type: 3} + m_Name: + m_EditorClassIdentifier: --- !u!1 &215281597 GameObject: m_ObjectHideFlags: 0 @@ -146,7 +351,7 @@ Transform: m_LocalScale: {x: 1, y: 1, z: 1} m_Children: [] m_Father: {fileID: 0} - m_RootOrder: 1 + m_RootOrder: 2 --- !u!1 &370620261 GameObject: m_ObjectHideFlags: 0 @@ -231,7 +436,7 @@ Transform: m_LocalScale: {x: 1, y: 1, z: 1} m_Children: [] m_Father: {fileID: 0} - m_RootOrder: 0 + m_RootOrder: 1 --- !u!1 &1674696785 GameObject: m_ObjectHideFlags: 0 @@ -243,9 +448,10 @@ GameObject: - 33: {fileID: 1674696789} - 65: {fileID: 1674696788} - 23: {fileID: 1674696787} + - 114: {fileID: 1674696790} m_Layer: 0 m_Name: Human - m_TagString: Untagged + m_TagString: Human m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 @@ -257,12 +463,12 @@ Transform: m_PrefabInternal: {fileID: 0} m_GameObject: {fileID: 1674696785} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} - m_LocalPosition: {x: 0, y: 0, z: 0} + m_LocalPosition: {x: 0, y: 5, z: 25} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: - {fileID: 2081975386} m_Father: {fileID: 0} - m_RootOrder: 2 + m_RootOrder: 3 --- !u!23 &1674696787 MeshRenderer: m_ObjectHideFlags: 0 @@ -306,6 +512,87 @@ MeshFilter: m_PrefabInternal: {fileID: 0} m_GameObject: {fileID: 1674696785} m_Mesh: {fileID: 10202, guid: 0000000000000000e000000000000000, type: 0} +--- !u!114 &1674696790 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 0} + m_GameObject: {fileID: 1674696785} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 8a1ccd1ad32d6bc4fb600c5b5720e01c, type: 3} + m_Name: + m_EditorClassIdentifier: +--- !u!1 &1780458434 +GameObject: + m_ObjectHideFlags: 0 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 0} + serializedVersion: 4 + m_Component: + - 4: {fileID: 1780458437} + - 218: {fileID: 1780458436} + - 154: {fileID: 1780458435} + m_Layer: 0 + m_Name: Terrain + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 4294967295 + m_IsActive: 1 +--- !u!154 &1780458435 +TerrainCollider: + m_ObjectHideFlags: 0 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 0} + m_GameObject: {fileID: 1780458434} + m_Material: {fileID: 0} + m_Enabled: 1 + m_TerrainData: {fileID: 15600000, guid: cc285f3696aa7d5449dcd631a7166155, type: 2} + m_EnableTreeColliders: 1 +--- !u!218 &1780458436 +Terrain: + m_ObjectHideFlags: 0 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 0} + m_GameObject: {fileID: 1780458434} + m_Enabled: 1 + serializedVersion: 3 + m_TerrainData: {fileID: 15600000, guid: cc285f3696aa7d5449dcd631a7166155, type: 2} + m_TreeDistance: 5000 + m_TreeBillboardDistance: 50 + m_TreeCrossFadeLength: 5 + m_TreeMaximumFullLODCount: 50 + m_DetailObjectDistance: 80 + m_DetailObjectDensity: 1 + m_HeightmapPixelError: 5 + m_SplatMapDistance: 1000 + m_HeightmapMaximumLOD: 0 + m_CastShadows: 1 + m_DrawHeightmap: 1 + m_DrawTreesAndFoliage: 1 + m_ReflectionProbeUsage: 1 + m_MaterialType: 0 + m_LegacySpecular: + serializedVersion: 2 + rgba: 4286545791 + m_LegacyShininess: .078125 + m_MaterialTemplate: {fileID: 0} + m_BakeLightProbesForTrees: 1 + m_ScaleInLightmap: .0511999987 + m_LightmapParameters: {fileID: 15203, guid: 0000000000000000f000000000000000, type: 0} +--- !u!4 &1780458437 +Transform: + m_ObjectHideFlags: 0 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 0} + m_GameObject: {fileID: 1780458434} + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: -200, y: 0, z: -200} + m_LocalScale: {x: 1, y: 1, z: 1} + m_Children: [] + m_Father: {fileID: 0} + m_RootOrder: 4 --- !u!1 &2081975382 GameObject: m_ObjectHideFlags: 0 diff --git a/Assets/Scripts/Command.cs b/Assets/Scripts/Command.cs index bfb136d..52aa277 100644 --- a/Assets/Scripts/Command.cs +++ b/Assets/Scripts/Command.cs @@ -6,13 +6,13 @@ public class Command : MonoBehaviour // Use this for initialization void Start () - { + { } // Update is called once per frame void Update () - { + { } } diff --git a/Assets/Scripts/TagManager.cs b/Assets/Scripts/TagManager.cs new file mode 100644 index 0000000..9ea639d --- /dev/null +++ b/Assets/Scripts/TagManager.cs @@ -0,0 +1,14 @@ +using System; +using UnityEngine; +using System.Collections; +using System.Linq; + +public class TagManager : MonoBehaviour +{ + // Use this for initialization + private static readonly String[] availableTags = UnityEditorInternal.InternalEditorUtility.tags; + // TODO FIND A WAY TO ADD EXCEPTION ERROR IF THE USER OMMIT TO ADD TAGS!!! + public static String Human = availableTags[7]; + public static String VampirePlayer = availableTags[8]; + public static String ZombiePlayer = availableTags[9]; +} diff --git a/Assets/Scripts/TagManager.cs.meta b/Assets/Scripts/TagManager.cs.meta new file mode 100644 index 0000000..2881e65 --- /dev/null +++ b/Assets/Scripts/TagManager.cs.meta @@ -0,0 +1,12 @@ +fileFormatVersion: 2 +guid: b58258f2de3f66040b725bd920298179 +timeCreated: 1439302840 +licenseType: Free +MonoImporter: + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/Scripts/Unit.cs b/Assets/Scripts/Unit.cs index 94f8a90..f60af6c 100644 --- a/Assets/Scripts/Unit.cs +++ b/Assets/Scripts/Unit.cs @@ -1,49 +1,55 @@ -using UnityEngine; +using System; +using UnityEngine; using System.Collections; using System.Collections.Generic; +using JetBrains.Annotations; public class Unit : MonoBehaviour { - public int HP { get; set; } - public int Attack { get; set; } - public bool isAlly { get; set; } - public bool isHuman { get; set; } - public bool isDead { get; set; } - private LinkedList commandList; // Use this for initialization void Start () { - // initialize default hp - // initialize default attack - // initialize default team - // initialize default specie + // initialize default hp + // initialize default attack + // initialize default team + // initialize default specie } // Update is called once per frame void Update () { - // - - if (isDead) - { - - } + // } - /// - /// Add a command at the end of the list - /// - /// The command to add + /// + /// Add a command at the end of the list + /// + /// The command to add public void addCommand(Command c) { this.commandList.AddLast(c); } - public void executeCommand() - { - - } - + public void executeCommand() + { + + } + + #region Unit properties + + public int HP { get; set; } + public int Attack { get; set; } + //public bool isAlly { get; set; } + //public bool isHuman { get; set; } + public bool isDead { get; set; } + + public String Tag + { + get { return this.gameObject.tag; } + set { gameObject.tag = value; } + } + + #endregion } diff --git a/Assets/Scripts/VampireUnit.cs b/Assets/Scripts/VampireUnit.cs new file mode 100644 index 0000000..785a093 --- /dev/null +++ b/Assets/Scripts/VampireUnit.cs @@ -0,0 +1,38 @@ +using System; +using UnityEngine; +using System.Collections; +/// +/// This class contains the information of the Vampire Units. +/// +public class VampireUnit : Unit +{ + // Use this for initialization + void Start () + { + InitializeDefaultTag(); + } + + // Update is called once per frame + void Update () + { + + } + + private void InitializeDefaultTag() + { + try + { + this.Tag = TagManager.VampirePlayer; // set the tag to player 1 + } + catch (IndexOutOfRangeException ex) + { + Debug.LogError( "Please set a vampire Tag, check the Tag & layers in the inspector!\n" + ex ); + } + + // set the tag of the gameObject to vampire + if (this.gameObject.tag != Tag) + { + this.gameObject.tag = Tag; + } + } +} diff --git a/Assets/Scripts/VampireUnit.cs.meta b/Assets/Scripts/VampireUnit.cs.meta new file mode 100644 index 0000000..3a9fd9c --- /dev/null +++ b/Assets/Scripts/VampireUnit.cs.meta @@ -0,0 +1,12 @@ +fileFormatVersion: 2 +guid: c1cd93867b8a1d7459a4fb92cac63854 +timeCreated: 1439305303 +licenseType: Free +MonoImporter: + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/Scripts/ZombieUnit.cs b/Assets/Scripts/ZombieUnit.cs new file mode 100644 index 0000000..ecfa975 --- /dev/null +++ b/Assets/Scripts/ZombieUnit.cs @@ -0,0 +1,36 @@ +using System; +using UnityEngine; +using System.Collections; + +public class ZombieUnit : Unit +{ + // Use this for initialization + void Start() + { + InitializeDefaultTag(); + } + + // Update is called once per frame + void Update() + { + + } + + private void InitializeDefaultTag() + { + try + { + this.Tag = TagManager.ZombiePlayer; // set the tag to Zombie + } + catch (IndexOutOfRangeException ex) + { + Debug.LogError("Please set a zombie Tag, check the Tag & layers in the inspector!\n" + ex); + } + + // set the tag of the gameObject to zombie + if (this.gameObject.tag != Tag) + { + this.gameObject.tag = Tag; + } + } +} diff --git a/Assets/Scripts/ZombieUnit.cs.meta b/Assets/Scripts/ZombieUnit.cs.meta new file mode 100644 index 0000000..6301b4c --- /dev/null +++ b/Assets/Scripts/ZombieUnit.cs.meta @@ -0,0 +1,12 @@ +fileFormatVersion: 2 +guid: 9346fd84c59bd7d42a27381aeed17dbf +timeCreated: 1439305314 +licenseType: Free +MonoImporter: + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/ProjectSettings/TagManager.asset b/ProjectSettings/TagManager.asset index f74b6b7..18271ed 100644 --- a/ProjectSettings/TagManager.asset +++ b/ProjectSettings/TagManager.asset @@ -5,8 +5,8 @@ TagManager: serializedVersion: 2 tags: - Human - - Player1 - - Player2 + - VampirePlayer + - ZombiePlayer layers: - Default - TransparentFX