feat: Find soldiers

This commit is contained in:
Krzysztof Rudnicki 2022-05-16 14:12:43 +02:00
parent fe0d6a6b7f
commit 2a0b75fd81
4 changed files with 144 additions and 10 deletions

View File

@ -14,7 +14,7 @@ GameObject:
- component: {fileID: 1033819704020761458}
m_Layer: 0
m_Name: Soldier
m_TagString: Untagged
m_TagString: 'Ally '
m_Icon: {fileID: 0}
m_NavMeshLayer: 0
m_StaticEditorFlags: 0

View File

@ -134,6 +134,7 @@ GameObject:
- component: {fileID: 511887294}
- component: {fileID: 511887293}
- component: {fileID: 511887292}
- component: {fileID: 511887295}
m_Layer: 0
m_Name: Main Camera
m_TagString: MainCamera
@ -207,6 +208,39 @@ Transform:
m_Father: {fileID: 0}
m_RootOrder: 0
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
--- !u!114 &511887295
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 511887291}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: a79441f348de89743a2939f4d699eac1, type: 3}
m_Name:
m_EditorClassIdentifier:
m_RenderShadows: 1
m_RequiresDepthTextureOption: 2
m_RequiresOpaqueTextureOption: 2
m_CameraType: 0
m_Cameras: []
m_RendererIndex: -1
m_VolumeLayerMask:
serializedVersion: 2
m_Bits: 1
m_VolumeTrigger: {fileID: 0}
m_VolumeFrameworkUpdateModeOption: 2
m_RenderPostProcessing: 0
m_Antialiasing: 0
m_AntialiasingQuality: 2
m_StopNaN: 0
m_Dithering: 0
m_ClearDepth: 1
m_AllowXRRendering: 1
m_RequiresDepthTexture: 0
m_RequiresColorTexture: 0
m_Version: 2
--- !u!1001 &1188979422
PrefabInstance:
m_ObjectHideFlags: 0
@ -274,6 +308,100 @@ PrefabInstance:
propertyPath: m_LocalEulerAnglesHint.z
value: 0
objectReference: {fileID: 0}
- target: {fileID: 9215955991629613539, guid: a87b1aa46b0ed3e0fba621e11dd4f1e2,
type: 3}
propertyPath: m_UseGravity
value: 0
objectReference: {fileID: 0}
- target: {fileID: 9215955991629613539, guid: a87b1aa46b0ed3e0fba621e11dd4f1e2,
type: 3}
propertyPath: m_IsKinematic
value: 1
objectReference: {fileID: 0}
m_RemovedComponents: []
m_SourcePrefab: {fileID: 100100000, guid: a87b1aa46b0ed3e0fba621e11dd4f1e2, type: 3}
--- !u!1001 &1413714403
PrefabInstance:
m_ObjectHideFlags: 0
serializedVersion: 2
m_Modification:
m_TransformParent: {fileID: 0}
m_Modifications:
- target: {fileID: 403095692180922766, guid: a87b1aa46b0ed3e0fba621e11dd4f1e2,
type: 3}
propertyPath: m_Name
value: Soldier (1)
objectReference: {fileID: 0}
- target: {fileID: 403095692180922766, guid: a87b1aa46b0ed3e0fba621e11dd4f1e2,
type: 3}
propertyPath: m_TagString
value: Enemy
objectReference: {fileID: 0}
- target: {fileID: 430939372503899243, guid: a87b1aa46b0ed3e0fba621e11dd4f1e2,
type: 3}
propertyPath: m_RootOrder
value: 1
objectReference: {fileID: 0}
- target: {fileID: 430939372503899243, guid: a87b1aa46b0ed3e0fba621e11dd4f1e2,
type: 3}
propertyPath: m_LocalPosition.x
value: -6.8476
objectReference: {fileID: 0}
- target: {fileID: 430939372503899243, guid: a87b1aa46b0ed3e0fba621e11dd4f1e2,
type: 3}
propertyPath: m_LocalPosition.y
value: 0
objectReference: {fileID: 0}
- target: {fileID: 430939372503899243, guid: a87b1aa46b0ed3e0fba621e11dd4f1e2,
type: 3}
propertyPath: m_LocalPosition.z
value: 4.6102185
objectReference: {fileID: 0}
- target: {fileID: 430939372503899243, guid: a87b1aa46b0ed3e0fba621e11dd4f1e2,
type: 3}
propertyPath: m_LocalRotation.w
value: 1
objectReference: {fileID: 0}
- target: {fileID: 430939372503899243, guid: a87b1aa46b0ed3e0fba621e11dd4f1e2,
type: 3}
propertyPath: m_LocalRotation.x
value: 0
objectReference: {fileID: 0}
- target: {fileID: 430939372503899243, guid: a87b1aa46b0ed3e0fba621e11dd4f1e2,
type: 3}
propertyPath: m_LocalRotation.y
value: 0
objectReference: {fileID: 0}
- target: {fileID: 430939372503899243, guid: a87b1aa46b0ed3e0fba621e11dd4f1e2,
type: 3}
propertyPath: m_LocalRotation.z
value: 0
objectReference: {fileID: 0}
- target: {fileID: 430939372503899243, guid: a87b1aa46b0ed3e0fba621e11dd4f1e2,
type: 3}
propertyPath: m_LocalEulerAnglesHint.x
value: 0
objectReference: {fileID: 0}
- target: {fileID: 430939372503899243, guid: a87b1aa46b0ed3e0fba621e11dd4f1e2,
type: 3}
propertyPath: m_LocalEulerAnglesHint.y
value: 0
objectReference: {fileID: 0}
- target: {fileID: 430939372503899243, guid: a87b1aa46b0ed3e0fba621e11dd4f1e2,
type: 3}
propertyPath: m_LocalEulerAnglesHint.z
value: 0
objectReference: {fileID: 0}
- target: {fileID: 9215955991629613539, guid: a87b1aa46b0ed3e0fba621e11dd4f1e2,
type: 3}
propertyPath: m_UseGravity
value: 0
objectReference: {fileID: 0}
- target: {fileID: 9215955991629613539, guid: a87b1aa46b0ed3e0fba621e11dd4f1e2,
type: 3}
propertyPath: m_IsKinematic
value: 1
objectReference: {fileID: 0}
m_RemovedComponents: []
m_SourcePrefab: {fileID: 100100000, guid: a87b1aa46b0ed3e0fba621e11dd4f1e2, type: 3}
--- !u!1 &2045132977
@ -369,7 +497,7 @@ Transform:
m_ConstrainProportionsScale: 0
m_Children: []
m_Father: {fileID: 0}
m_RootOrder: 1
m_RootOrder: 3
m_LocalEulerAnglesHint: {x: 50, y: -30, z: 0}
--- !u!114 &2045132980
MonoBehaviour:

View File

@ -4,14 +4,17 @@ using UnityEngine;
public class Soldier : MonoBehaviour
{
private const string enemyTag = "Enemy";
private const float healthPoints = 1;
private const float rangeAttack = 1;
private const float rangeView = 1;
private const float damageAttack = 1;
private const float speedAttack = 1;
[SerializeField] private Transform target;
[SerializeField] private string enemyTag;
[SerializeField] private float healthPoints = 1;
[SerializeField] private float rangeAttack = 1;
[SerializeField] private float rangeView = 1;
[SerializeField] private float damageAttack = 1;
[SerializeField] private float speedAttack = 1;
// Start is called before the first frame update
void Start(){
if(gameObject.tag == "Ally") enemyTag = "Enemy";
else enemyTag = "Ally";
InvokeRepeating("UpdateTarget", 0f, 0.5f);
// Call UpdateTarget method at the begining of the Start()
// and repeat every 0.5 second
@ -22,6 +25,7 @@ public class Soldier : MonoBehaviour
{
// Enemies are the game objects tagged with the "Enemy"
GameObject[] enemies = GameObject.FindGameObjectsWithTag(enemyTag);
Debug.Log(enemies.Length);
// We have not found enemy yet so the distance to enemy is "infinite"
float shortestDistance = Mathf.Infinity;
GameObject nearestEnemy = null;
@ -39,7 +43,7 @@ public class Soldier : MonoBehaviour
if (nearestEnemy != null && shortestDistance <= rangeAttack)
{
target = nearestEnemey.transform;
target = nearestEnemy.transform;
}
}

View File

@ -3,7 +3,9 @@
--- !u!78 &1
TagManager:
serializedVersion: 2
tags: []
tags:
- Enemy
- 'Ally '
layers:
- Default
- TransparentFX