Merge remote-tracking branch 'origin/dev' into jason
# Conflicts: # Assets/Scripts/VampireEntity.cs
This commit is contained in:
commit
271bd1d93f
@ -9,11 +9,10 @@ GameObject:
|
||||
serializedVersion: 6
|
||||
m_Component:
|
||||
- component: {fileID: 197677485360569565}
|
||||
- component: {fileID: 197677485360569564}
|
||||
- component: {fileID: 197677485360569563}
|
||||
- component: {fileID: 197677485360569566}
|
||||
- component: {fileID: 3988163462708087662}
|
||||
- component: {fileID: 2142155588016984618}
|
||||
- component: {fileID: -8195126358453283336}
|
||||
m_Layer: 0
|
||||
m_Name: Gladiator
|
||||
m_TagString: Gladiator
|
||||
@ -37,55 +36,6 @@ Transform:
|
||||
m_Father: {fileID: 0}
|
||||
m_RootOrder: 0
|
||||
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
|
||||
--- !u!33 &197677485360569564
|
||||
MeshFilter:
|
||||
m_ObjectHideFlags: 0
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
m_GameObject: {fileID: 197677485360569561}
|
||||
m_Mesh: {fileID: 10207, guid: 0000000000000000e000000000000000, type: 0}
|
||||
--- !u!23 &197677485360569563
|
||||
MeshRenderer:
|
||||
m_ObjectHideFlags: 0
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
m_GameObject: {fileID: 197677485360569561}
|
||||
m_Enabled: 1
|
||||
m_CastShadows: 1
|
||||
m_ReceiveShadows: 1
|
||||
m_DynamicOccludee: 1
|
||||
m_MotionVectors: 1
|
||||
m_LightProbeUsage: 1
|
||||
m_ReflectionProbeUsage: 1
|
||||
m_RayTracingMode: 2
|
||||
m_RayTraceProcedural: 0
|
||||
m_RenderingLayerMask: 1
|
||||
m_RendererPriority: 0
|
||||
m_Materials:
|
||||
- {fileID: 2100000, guid: 31321ba15b8f8eb4c954353edc038b1d, type: 2}
|
||||
m_StaticBatchInfo:
|
||||
firstSubMesh: 0
|
||||
subMeshCount: 0
|
||||
m_StaticBatchRoot: {fileID: 0}
|
||||
m_ProbeAnchor: {fileID: 0}
|
||||
m_LightProbeVolumeOverride: {fileID: 0}
|
||||
m_ScaleInLightmap: 1
|
||||
m_ReceiveGI: 1
|
||||
m_PreserveUVs: 0
|
||||
m_IgnoreNormalsForChartDetection: 0
|
||||
m_ImportantGI: 0
|
||||
m_StitchLightmapSeams: 1
|
||||
m_SelectedEditorRenderState: 3
|
||||
m_MinimumChartSize: 4
|
||||
m_AutoUVMaxDistance: 0.5
|
||||
m_AutoUVMaxAngle: 89
|
||||
m_LightmapParameters: {fileID: 0}
|
||||
m_SortingLayerID: 0
|
||||
m_SortingLayer: 0
|
||||
m_SortingOrder: 0
|
||||
m_AdditionalVertexStreams: {fileID: 0}
|
||||
--- !u!114 &197677485360569566
|
||||
MonoBehaviour:
|
||||
m_ObjectHideFlags: 0
|
||||
@ -99,7 +49,7 @@ MonoBehaviour:
|
||||
m_Name:
|
||||
m_EditorClassIdentifier:
|
||||
gameFlowManager: {fileID: 0}
|
||||
<Health>k__BackingField: 100
|
||||
<Health>k__BackingField: 40
|
||||
healthBar: {fileID: 1378753993005748510}
|
||||
bloodTokens: 1
|
||||
<movementSpeed>k__BackingField: 2
|
||||
@ -110,6 +60,8 @@ MonoBehaviour:
|
||||
attackCooldown: 1
|
||||
target: {fileID: 0}
|
||||
halo: {fileID: 3772547392739388838}
|
||||
deadColor: {r: 0.7075472, g: 0.030037368, b: 0.030037368, a: 1}
|
||||
emptyColor: {r: 0.5660378, g: 0.5660378, b: 0.5660378, a: 0.4117647}
|
||||
AIStats: {fileID: 11400000, guid: 9d8a9a664d932d0498d5eca7607eeb53, type: 2}
|
||||
--- !u!58 &3988163462708087662
|
||||
CircleCollider2D:
|
||||
@ -148,6 +100,57 @@ Rigidbody2D:
|
||||
m_SleepingMode: 1
|
||||
m_CollisionDetection: 0
|
||||
m_Constraints: 4
|
||||
--- !u!212 &-8195126358453283336
|
||||
SpriteRenderer:
|
||||
m_ObjectHideFlags: 0
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
m_GameObject: {fileID: 197677485360569561}
|
||||
m_Enabled: 1
|
||||
m_CastShadows: 0
|
||||
m_ReceiveShadows: 0
|
||||
m_DynamicOccludee: 1
|
||||
m_MotionVectors: 1
|
||||
m_LightProbeUsage: 1
|
||||
m_ReflectionProbeUsage: 1
|
||||
m_RayTracingMode: 0
|
||||
m_RayTraceProcedural: 0
|
||||
m_RenderingLayerMask: 1
|
||||
m_RendererPriority: 0
|
||||
m_Materials:
|
||||
- {fileID: 2100000, guid: a97c105638bdf8b4a8650670310a4cd3, 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: 0
|
||||
m_MinimumChartSize: 4
|
||||
m_AutoUVMaxDistance: 0.5
|
||||
m_AutoUVMaxAngle: 89
|
||||
m_LightmapParameters: {fileID: 0}
|
||||
m_SortingLayerID: -1438510283
|
||||
m_SortingLayer: 1
|
||||
m_SortingOrder: 0
|
||||
m_Sprite: {fileID: -2413806693520163455, guid: 4adeaf2d2b1c7417e89f026626d8264f, type: 3}
|
||||
m_Color: {r: 0.04774831, g: 0.2735849, b: 0.08162382, a: 1}
|
||||
m_FlipX: 0
|
||||
m_FlipY: 0
|
||||
m_DrawMode: 0
|
||||
m_Size: {x: 1, y: 1}
|
||||
m_AdaptiveModeThreshold: 0.5
|
||||
m_SpriteTileMode: 0
|
||||
m_WasSpriteAssigned: 1
|
||||
m_MaskInteraction: 0
|
||||
m_SpriteSortPoint: 0
|
||||
--- !u!1 &3772547392739388838
|
||||
GameObject:
|
||||
m_ObjectHideFlags: 0
|
||||
|
||||
@ -57,7 +57,7 @@ Canvas:
|
||||
m_OverridePixelPerfect: 0
|
||||
m_SortingBucketNormalizedSize: 0
|
||||
m_AdditionalShaderChannelsFlag: 0
|
||||
m_SortingLayerID: 0
|
||||
m_SortingLayerID: -1438510283
|
||||
m_SortingOrder: 0
|
||||
m_TargetDisplay: 0
|
||||
--- !u!114 &2962150094107129824
|
||||
|
||||
@ -91,11 +91,10 @@ GameObject:
|
||||
serializedVersion: 6
|
||||
m_Component:
|
||||
- component: {fileID: 2399377275812995968}
|
||||
- component: {fileID: 2399377275812995969}
|
||||
- component: {fileID: 2399377275812995970}
|
||||
- component: {fileID: 2399377275812995974}
|
||||
- component: {fileID: 1427479462206541758}
|
||||
- component: {fileID: 8912459659685944407}
|
||||
- component: {fileID: 7325874221449804585}
|
||||
m_Layer: 0
|
||||
m_Name: Monster
|
||||
m_TagString: Monster
|
||||
@ -119,55 +118,6 @@ Transform:
|
||||
m_Father: {fileID: 0}
|
||||
m_RootOrder: 0
|
||||
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
|
||||
--- !u!33 &2399377275812995969
|
||||
MeshFilter:
|
||||
m_ObjectHideFlags: 0
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
m_GameObject: {fileID: 2399377275812995980}
|
||||
m_Mesh: {fileID: 10202, guid: 0000000000000000e000000000000000, type: 0}
|
||||
--- !u!23 &2399377275812995970
|
||||
MeshRenderer:
|
||||
m_ObjectHideFlags: 0
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
m_GameObject: {fileID: 2399377275812995980}
|
||||
m_Enabled: 1
|
||||
m_CastShadows: 1
|
||||
m_ReceiveShadows: 1
|
||||
m_DynamicOccludee: 1
|
||||
m_MotionVectors: 1
|
||||
m_LightProbeUsage: 1
|
||||
m_ReflectionProbeUsage: 1
|
||||
m_RayTracingMode: 2
|
||||
m_RayTraceProcedural: 0
|
||||
m_RenderingLayerMask: 1
|
||||
m_RendererPriority: 0
|
||||
m_Materials:
|
||||
- {fileID: 2100000, guid: 31321ba15b8f8eb4c954353edc038b1d, type: 2}
|
||||
m_StaticBatchInfo:
|
||||
firstSubMesh: 0
|
||||
subMeshCount: 0
|
||||
m_StaticBatchRoot: {fileID: 0}
|
||||
m_ProbeAnchor: {fileID: 0}
|
||||
m_LightProbeVolumeOverride: {fileID: 0}
|
||||
m_ScaleInLightmap: 1
|
||||
m_ReceiveGI: 1
|
||||
m_PreserveUVs: 0
|
||||
m_IgnoreNormalsForChartDetection: 0
|
||||
m_ImportantGI: 0
|
||||
m_StitchLightmapSeams: 1
|
||||
m_SelectedEditorRenderState: 3
|
||||
m_MinimumChartSize: 4
|
||||
m_AutoUVMaxDistance: 0.5
|
||||
m_AutoUVMaxAngle: 89
|
||||
m_LightmapParameters: {fileID: 0}
|
||||
m_SortingLayerID: 0
|
||||
m_SortingLayer: 0
|
||||
m_SortingOrder: 0
|
||||
m_AdditionalVertexStreams: {fileID: 0}
|
||||
--- !u!114 &2399377275812995974
|
||||
MonoBehaviour:
|
||||
m_ObjectHideFlags: 0
|
||||
@ -181,7 +131,7 @@ MonoBehaviour:
|
||||
m_Name:
|
||||
m_EditorClassIdentifier:
|
||||
gameFlowManager: {fileID: 0}
|
||||
<Health>k__BackingField: 100
|
||||
<Health>k__BackingField: 40
|
||||
healthBar: {fileID: 7668921808924868904}
|
||||
bloodTokens: 0
|
||||
<movementSpeed>k__BackingField: 2
|
||||
@ -192,6 +142,8 @@ MonoBehaviour:
|
||||
attackCooldown: 1
|
||||
target: {fileID: 0}
|
||||
halo: {fileID: 160873202674104038}
|
||||
deadColor: {r: 0.7058824, g: 0.03137255, b: 0.03137255, a: 1}
|
||||
emptyColor: {r: 0.5647059, g: 0.5647059, b: 0.5647059, a: 0.4117647}
|
||||
AIStats: {fileID: 11400000, guid: 9d8a9a664d932d0498d5eca7607eeb53, type: 2}
|
||||
thrownFromSafeZone: 0
|
||||
thrownTargetPosition: {x: 0, y: 0, z: 0}
|
||||
@ -232,6 +184,57 @@ CircleCollider2D:
|
||||
m_Offset: {x: 0, y: 0}
|
||||
serializedVersion: 2
|
||||
m_Radius: 0.5
|
||||
--- !u!212 &7325874221449804585
|
||||
SpriteRenderer:
|
||||
m_ObjectHideFlags: 0
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
m_GameObject: {fileID: 2399377275812995980}
|
||||
m_Enabled: 1
|
||||
m_CastShadows: 0
|
||||
m_ReceiveShadows: 0
|
||||
m_DynamicOccludee: 1
|
||||
m_MotionVectors: 1
|
||||
m_LightProbeUsage: 1
|
||||
m_ReflectionProbeUsage: 1
|
||||
m_RayTracingMode: 0
|
||||
m_RayTraceProcedural: 0
|
||||
m_RenderingLayerMask: 1
|
||||
m_RendererPriority: 0
|
||||
m_Materials:
|
||||
- {fileID: 2100000, guid: a97c105638bdf8b4a8650670310a4cd3, 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: 0
|
||||
m_MinimumChartSize: 4
|
||||
m_AutoUVMaxDistance: 0.5
|
||||
m_AutoUVMaxAngle: 89
|
||||
m_LightmapParameters: {fileID: 0}
|
||||
m_SortingLayerID: -1438510283
|
||||
m_SortingLayer: 1
|
||||
m_SortingOrder: 0
|
||||
m_Sprite: {fileID: -5177388603050735206, guid: 71ebafeef3c03457483266a33ab2b270, type: 3}
|
||||
m_Color: {r: 0.14929691, g: 0.18158285, b: 0.5754717, a: 1}
|
||||
m_FlipX: 0
|
||||
m_FlipY: 0
|
||||
m_DrawMode: 0
|
||||
m_Size: {x: 1, y: 1}
|
||||
m_AdaptiveModeThreshold: 0.5
|
||||
m_SpriteTileMode: 0
|
||||
m_WasSpriteAssigned: 1
|
||||
m_MaskInteraction: 0
|
||||
m_SpriteSortPoint: 0
|
||||
--- !u!1001 &4861301622389167767
|
||||
PrefabInstance:
|
||||
m_ObjectHideFlags: 0
|
||||
@ -239,6 +242,10 @@ PrefabInstance:
|
||||
m_Modification:
|
||||
m_TransformParent: {fileID: 2399377275812995968}
|
||||
m_Modifications:
|
||||
- target: {fileID: 2962150094107129825, guid: d1d8f8326b5490848a9400aa9bd6b2f4, type: 3}
|
||||
propertyPath: m_Enabled
|
||||
value: 1
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 2962150094107129826, guid: d1d8f8326b5490848a9400aa9bd6b2f4, type: 3}
|
||||
propertyPath: m_Name
|
||||
value: Health Bar Canvas
|
||||
@ -335,6 +342,10 @@ PrefabInstance:
|
||||
propertyPath: m_AnchorMax.y
|
||||
value: 0
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 2962150095602046905, guid: d1d8f8326b5490848a9400aa9bd6b2f4, type: 3}
|
||||
propertyPath: m_IsActive
|
||||
value: 1
|
||||
objectReference: {fileID: 0}
|
||||
m_RemovedComponents: []
|
||||
m_SourcePrefab: {fileID: 100100000, guid: d1d8f8326b5490848a9400aa9bd6b2f4, type: 3}
|
||||
--- !u!224 &7668921808236339569 stripped
|
||||
|
||||
@ -80,6 +80,8 @@ MonoBehaviour:
|
||||
attackCooldown: 0
|
||||
target: {fileID: 0}
|
||||
halo: {fileID: 0}
|
||||
deadColor: {r: 1, g: 0, b: 0, a: 1}
|
||||
emptyColor: {r: 1, g: 0, b: 0, a: 1}
|
||||
playerStats: {fileID: 11400000, guid: 12a626b5a296d934ba078d222ad6ba98, type: 2}
|
||||
--- !u!114 &1967503440015794769
|
||||
MonoBehaviour:
|
||||
@ -150,11 +152,11 @@ SpriteRenderer:
|
||||
m_AutoUVMaxDistance: 0.5
|
||||
m_AutoUVMaxAngle: 89
|
||||
m_LightmapParameters: {fileID: 0}
|
||||
m_SortingLayerID: 0
|
||||
m_SortingLayer: 0
|
||||
m_SortingLayerID: 603553691
|
||||
m_SortingLayer: 2
|
||||
m_SortingOrder: 0
|
||||
m_Sprite: {fileID: 7482667652216324306, guid: 48e93eef0688c4a259cb0eddcd8661f7, type: 3}
|
||||
m_Color: {r: 1, g: 1, b: 1, a: 1}
|
||||
m_Color: {r: 0.03226238, g: 0.0766813, b: 0.23584908, a: 1}
|
||||
m_FlipX: 0
|
||||
m_FlipY: 0
|
||||
m_DrawMode: 0
|
||||
|
||||
@ -18,11 +18,13 @@ public class AIEntity : Entity
|
||||
}
|
||||
|
||||
override protected void Update() {
|
||||
base.Update();
|
||||
if (currentState.UpdateState() is {} newState)
|
||||
SwitchState(newState);
|
||||
}
|
||||
|
||||
override protected void FixedUpdate() {
|
||||
base.FixedUpdate();
|
||||
if (currentState.FixedUpdateState() is {} newState)
|
||||
SwitchState(newState);
|
||||
}
|
||||
@ -47,6 +49,15 @@ public class AIEntity : Entity
|
||||
|
||||
return false;
|
||||
}
|
||||
|
||||
override public bool TakeDamage(float amount, Entity other){
|
||||
Entity currTargetEntity = GetTarget().GetComponent<Entity>();
|
||||
if(!(currTargetEntity is null)){
|
||||
if(currTargetEntity.entityName == "Vampire")
|
||||
SetTarget(other.transform);
|
||||
}
|
||||
return base.TakeDamage(amount, other);
|
||||
}
|
||||
|
||||
protected abstract class BaseStateAI : BaseState{
|
||||
protected AIEntity entity;
|
||||
@ -163,7 +174,7 @@ public class AIEntity : Entity
|
||||
private BaseState? Attack(){
|
||||
Entity targetEntity = entity.GetTarget().GetComponent<Entity>();
|
||||
if(targetEntity != null){
|
||||
targetEntity.TakeDamage(entity.attackDmg);
|
||||
targetEntity.TakeDamage(entity.attackDmg, entity);
|
||||
bool isTargetAlive = targetEntity.IsAlive();
|
||||
if(!isTargetAlive){
|
||||
return new FindTargetState(entity);
|
||||
@ -175,7 +186,7 @@ public class AIEntity : Entity
|
||||
|
||||
protected class DeadState : BaseStateAI{
|
||||
public DeadState(AIEntity entity) : base(entity){
|
||||
Debug.Log("Dead!");
|
||||
|
||||
}
|
||||
|
||||
public override BaseState? UpdateState(){
|
||||
|
||||
@ -12,4 +12,6 @@ MonoBehaviour:
|
||||
m_Script: {fileID: 11500000, guid: 8de175900b604adb984b49af64538a07, type: 3}
|
||||
m_Name: Arena Stats
|
||||
m_EditorClassIdentifier:
|
||||
secondsBetweenSpawners: 5
|
||||
secondsBetweenSpawners: 15
|
||||
initWaitToSpawn: 3
|
||||
waveSize: 3
|
||||
|
||||
@ -40,15 +40,20 @@ public class Arena : MonoBehaviour {
|
||||
}
|
||||
|
||||
IEnumerator SpawnEnemies() {
|
||||
yield return new WaitForSeconds(stats.secondsBetweenSpawners);
|
||||
yield return new WaitForSeconds(stats.initWaitToSpawn);
|
||||
|
||||
int currentSpawner = 0;
|
||||
|
||||
while (true) {
|
||||
SpawnEnemy(currentSpawner);
|
||||
currentSpawner = Random.Range(0, spawners.Length);
|
||||
yield return new WaitForSeconds(stats.secondsBetweenSpawners);
|
||||
int amountSpawned = 0;
|
||||
while(true){
|
||||
while (amountSpawned < stats.waveSize) {
|
||||
currentSpawner = Random.Range(0, spawners.Length);
|
||||
SpawnEnemy(currentSpawner);
|
||||
amountSpawned++;
|
||||
}
|
||||
yield return new WaitForSeconds(stats.secondsBetweenSpawners);
|
||||
amountSpawned = 0;
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
#if UNITY_EDITOR
|
||||
|
||||
@ -3,4 +3,7 @@
|
||||
[CreateAssetMenu]
|
||||
public class ArenaStats : ScriptableObject {
|
||||
[Min(0f)] public float secondsBetweenSpawners = 3f;
|
||||
[Min(0f)] public float initWaitToSpawn = 3f;
|
||||
[Min(0f)] public float waveSize = 3f;
|
||||
|
||||
}
|
||||
@ -24,13 +24,20 @@ public class Entity : MonoBehaviour {
|
||||
protected float attackTimer;
|
||||
[SerializeField] private Transform target;
|
||||
public string entityName { get; protected set; }
|
||||
private Collider atkCollider;
|
||||
public Vector3 direction { get; set; }
|
||||
public Rigidbody2D rb { get; private set; }
|
||||
public Collider2D collider { get; private set; }
|
||||
public SpriteRenderer renderer { get; private set; }
|
||||
bool beingPushed;
|
||||
[SerializeField] GameObject halo;
|
||||
[SerializeField] Color deadColor = Color.red;
|
||||
[SerializeField] Color emptyColor = Color.grey;
|
||||
|
||||
virtual protected void Awake() => rb = GetComponent<Rigidbody2D>();
|
||||
virtual protected void Awake(){
|
||||
rb = GetComponent<Rigidbody2D>();
|
||||
collider = GetComponent<Collider2D>();
|
||||
renderer = GetComponent<SpriteRenderer>();
|
||||
}
|
||||
|
||||
protected virtual void Start() {
|
||||
if (direction == Vector3.zero && !(this is VampireEntity))
|
||||
@ -73,7 +80,7 @@ public class Entity : MonoBehaviour {
|
||||
}
|
||||
|
||||
//Apply damage to the entity, returns true if it is still alive
|
||||
public virtual bool TakeDamage(float amount) {
|
||||
public virtual bool TakeDamage(float amount, Entity other) {
|
||||
Health -= amount;
|
||||
healthBar.SetHealthFraction(Health / initialHealth);
|
||||
|
||||
@ -113,7 +120,28 @@ public class Entity : MonoBehaviour {
|
||||
rb.AddForce(impulse, ForceMode2D.Impulse);
|
||||
}
|
||||
|
||||
protected virtual void OnDied() { }
|
||||
protected virtual void OnDied() {
|
||||
if(!(collider is null)){
|
||||
collider.isTrigger = true;
|
||||
}
|
||||
if(!(rb is null)){
|
||||
rb.isKinematic = true;
|
||||
rb.velocity = Vector2.zero;
|
||||
}
|
||||
healthBar.gameObject.SetActive(false);
|
||||
if(bloodTokens > 0){
|
||||
renderer.color = deadColor;
|
||||
renderer.sortingOrder = -1;
|
||||
}else{
|
||||
renderer.color = emptyColor;
|
||||
renderer.sortingOrder = -2;
|
||||
}
|
||||
}
|
||||
|
||||
protected virtual void OnEmpty(){
|
||||
renderer.color = emptyColor;
|
||||
renderer.sortingOrder = -2;
|
||||
}
|
||||
|
||||
public void EnableHalo() {
|
||||
halo.SetActive(true);
|
||||
|
||||
@ -12,6 +12,13 @@ public class Gladiator : AIEntity
|
||||
base.enemies = new string[]{"Monster", "Vampire"};
|
||||
}
|
||||
|
||||
override protected void Update(){
|
||||
base.Update();
|
||||
if(bloodTokens <= 0){
|
||||
OnEmpty();
|
||||
}
|
||||
}
|
||||
|
||||
override protected bool IsTargetable(Entity other){
|
||||
foreach (string name in enemies){
|
||||
if(other.entityName == name && other.IsAlive()){
|
||||
|
||||
@ -68,7 +68,7 @@ public class MinionThrower : MonoBehaviour {
|
||||
if(minionHealthCost >= vampireEntity.Health) {
|
||||
return;
|
||||
}
|
||||
vampireEntity.TakeDamage(minionHealthCost);
|
||||
vampireEntity.TakeDamage(minionHealthCost, vampireEntity);
|
||||
|
||||
currentInitialCooldown = 2f; // TODO
|
||||
currentCooldownTimer = currentInitialCooldown;
|
||||
|
||||
@ -12,6 +12,6 @@ MonoBehaviour:
|
||||
m_Script: {fileID: 11500000, guid: 5a9c2f4541a74e86afc424d568e0f629, type: 3}
|
||||
m_Name: Player Stats
|
||||
m_EditorClassIdentifier:
|
||||
movementSpeed: 3
|
||||
movementSpeed: 4
|
||||
suckSpeed: 1
|
||||
bloodLossRate: 3
|
||||
bloodLossRate: 2
|
||||
|
||||
@ -19,7 +19,7 @@ public class VampireEntity : Entity {
|
||||
base.Update();
|
||||
|
||||
if (gameFlowManager.CanDoAction)
|
||||
TakeDamage(playerStats.bloodLossRate * Time.deltaTime);
|
||||
TakeDamage(playerStats.bloodLossRate * Time.deltaTime, this);
|
||||
}
|
||||
|
||||
// public override void TakeDamage(float amount) {
|
||||
|
||||
@ -46,3 +46,9 @@ TagManager:
|
||||
- name: Default
|
||||
uniqueID: 0
|
||||
locked: 0
|
||||
- name: AI
|
||||
uniqueID: 2856457013
|
||||
locked: 0
|
||||
- name: Player
|
||||
uniqueID: 603553691
|
||||
locked: 0
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user