Reworked animtion attack sequence so hit effect and damage number display at the same time
This commit is contained in:
+85
-73
@@ -285,74 +285,6 @@ public class GMScript : MonoBehaviour
|
|||||||
|
|
||||||
print(PartyColours[OrderNumbers[i]-1]);
|
print(PartyColours[OrderNumbers[i]-1]);
|
||||||
|
|
||||||
//CHECKING IF AN "ATTACK" OR "NON-ATTACK" ROBOT IS GOING
|
|
||||||
if(((Colours)PartyColours[OrderNumbers[i]-1] != Colours.Grey &&
|
|
||||||
(Colours)PartyColours[OrderNumbers[i]-1] != Colours.White &&
|
|
||||||
(Colours)PartyColours[OrderNumbers[i]-1] != Colours.Black)
|
|
||||||
&& shield != true && enemyShield != true)
|
|
||||||
{
|
|
||||||
|
|
||||||
Hit.transform.GetComponent<SpriteRenderer>().color =
|
|
||||||
SetColour(PartyColours[OrderNumbers[i]-1]);
|
|
||||||
|
|
||||||
Hit.transform.GetChild(0).GetComponent<SpriteRenderer>().sprite =
|
|
||||||
Symbols[PartyColours[OrderNumbers[i]-1]];
|
|
||||||
|
|
||||||
Hit.transform.GetChild(0).GetComponent<SpriteRenderer>().color =
|
|
||||||
SetColour(PartyColours[OrderNumbers[i]-1]);
|
|
||||||
|
|
||||||
Hit.SetActive(true);
|
|
||||||
|
|
||||||
Animator hit = Hit.transform.GetComponent<Animator>();
|
|
||||||
hit.SetTrigger("HitTrigger");
|
|
||||||
|
|
||||||
yield return new WaitForSeconds(
|
|
||||||
hit.GetCurrentAnimatorStateInfo(0).length
|
|
||||||
+hit.GetCurrentAnimatorStateInfo(0).normalizedTime);
|
|
||||||
|
|
||||||
Hit.SetActive(false);
|
|
||||||
hit.SetTrigger("HitTrigger");
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
// GREY ROBOT (SHIELD) IS GOING
|
|
||||||
if ((Colours)PartyColours[OrderNumbers[i]-1] == Colours.Grey){
|
|
||||||
|
|
||||||
shield = true;
|
|
||||||
Shield.transform.GetComponent<SpriteRenderer>().color =
|
|
||||||
SetColour(PartyColours[OrderNumbers[i]-1]);
|
|
||||||
Shield.SetActive(true);
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
// NON-ATTACK ROBOT IS GOING
|
|
||||||
if ((Colours)PartyColours[OrderNumbers[i]-1] == Colours.White ||
|
|
||||||
(Colours)PartyColours[OrderNumbers[i]-1] == Colours.Grey ||
|
|
||||||
(Colours)PartyColours[OrderNumbers[i]-1] == Colours.Black){
|
|
||||||
|
|
||||||
EnemyHit.transform.GetComponent<SpriteRenderer>().color =
|
|
||||||
SetColour(PartyColours[OrderNumbers[i]-1]);
|
|
||||||
|
|
||||||
EnemyHit.transform.GetChild(0).GetComponent<SpriteRenderer>().sprite =
|
|
||||||
Symbols[PartyColours[OrderNumbers[i]-1]];
|
|
||||||
|
|
||||||
EnemyHit.transform.GetChild(0).GetComponent<SpriteRenderer>().color =
|
|
||||||
SetColour(PartyColours[OrderNumbers[i]-1]);
|
|
||||||
|
|
||||||
EnemyHit.SetActive(true);
|
|
||||||
|
|
||||||
Animator hit = EnemyHit.transform.GetComponent<Animator>();
|
|
||||||
hit.SetTrigger("HitTrigger");
|
|
||||||
|
|
||||||
yield return new WaitForSeconds(
|
|
||||||
hit.GetCurrentAnimatorStateInfo(0).length
|
|
||||||
+hit.GetCurrentAnimatorStateInfo(0).normalizedTime);
|
|
||||||
|
|
||||||
EnemyHit.SetActive(false);
|
|
||||||
hit.SetTrigger("HitTrigger");
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
//SETTING AND OUTPUT OF ROBOT COLOUR
|
//SETTING AND OUTPUT OF ROBOT COLOUR
|
||||||
robotColour = (Colours)PartyColours[OrderNumbers[i]-1];
|
robotColour = (Colours)PartyColours[OrderNumbers[i]-1];
|
||||||
//print(robotColour);
|
//print(robotColour);
|
||||||
@@ -390,6 +322,89 @@ public class GMScript : MonoBehaviour
|
|||||||
enemyAttackAnim.GetCurrentAnimatorStateInfo(0).length
|
enemyAttackAnim.GetCurrentAnimatorStateInfo(0).length
|
||||||
+enemyAttackAnim.GetCurrentAnimatorStateInfo(0).normalizedTime);
|
+enemyAttackAnim.GetCurrentAnimatorStateInfo(0).normalizedTime);
|
||||||
|
|
||||||
|
enemyAttackAnim.SetTrigger("AttackTrigger");
|
||||||
|
|
||||||
|
//ENEMY ATTACKING PARTY (DEFAULT DISPLAY TEXT TO RED FOR NOW)
|
||||||
|
DamageEnemy(enemyAttack, Colours.Red);
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
IEnumerator HitEffectParty(Colours partyMember)
|
||||||
|
{
|
||||||
|
|
||||||
|
//CHECKING IF AN "ATTACK" OR "NON-ATTACK" ROBOT IS GOING
|
||||||
|
if((partyMember != Colours.Grey &&
|
||||||
|
partyMember != Colours.White &&
|
||||||
|
partyMember != Colours.Black)
|
||||||
|
&& shield != true && enemyShield != true)
|
||||||
|
{
|
||||||
|
|
||||||
|
Hit.transform.GetComponent<SpriteRenderer>().color =
|
||||||
|
SetColour((int)partyMember);
|
||||||
|
|
||||||
|
Hit.transform.GetChild(0).GetComponent<SpriteRenderer>().sprite =
|
||||||
|
Symbols[(int)partyMember];
|
||||||
|
|
||||||
|
Hit.transform.GetChild(0).GetComponent<SpriteRenderer>().color =
|
||||||
|
SetColour((int)partyMember);
|
||||||
|
|
||||||
|
Hit.SetActive(true);
|
||||||
|
|
||||||
|
Animator hit = Hit.transform.GetComponent<Animator>();
|
||||||
|
hit.SetTrigger("HitTrigger");
|
||||||
|
|
||||||
|
yield return new WaitForSeconds(
|
||||||
|
hit.GetCurrentAnimatorStateInfo(0).length
|
||||||
|
+hit.GetCurrentAnimatorStateInfo(0).normalizedTime);
|
||||||
|
|
||||||
|
Hit.SetActive(false);
|
||||||
|
hit.SetTrigger("HitTrigger");
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
// GREY ROBOT (SHIELD) IS GOING
|
||||||
|
if (partyMember == Colours.Grey){
|
||||||
|
|
||||||
|
shield = true;
|
||||||
|
Shield.transform.GetComponent<SpriteRenderer>().color =
|
||||||
|
SetColour((int)partyMember);
|
||||||
|
Shield.SetActive(true);
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
// NON-ATTACK ROBOT IS GOING
|
||||||
|
if (partyMember == Colours.White ||
|
||||||
|
partyMember == Colours.Grey ||
|
||||||
|
partyMember == Colours.Black){
|
||||||
|
|
||||||
|
EnemyHit.transform.GetComponent<SpriteRenderer>().color =
|
||||||
|
SetColour((int)partyMember);
|
||||||
|
|
||||||
|
EnemyHit.transform.GetChild(0).GetComponent<SpriteRenderer>().sprite =
|
||||||
|
Symbols[(int)partyMember];
|
||||||
|
|
||||||
|
EnemyHit.transform.GetChild(0).GetComponent<SpriteRenderer>().color =
|
||||||
|
SetColour((int)partyMember);
|
||||||
|
|
||||||
|
EnemyHit.SetActive(true);
|
||||||
|
|
||||||
|
Animator hit = EnemyHit.transform.GetComponent<Animator>();
|
||||||
|
hit.SetTrigger("HitTrigger");
|
||||||
|
|
||||||
|
yield return new WaitForSeconds(
|
||||||
|
hit.GetCurrentAnimatorStateInfo(0).length
|
||||||
|
+hit.GetCurrentAnimatorStateInfo(0).normalizedTime);
|
||||||
|
|
||||||
|
EnemyHit.SetActive(false);
|
||||||
|
hit.SetTrigger("HitTrigger");
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
IEnumerator HitEffectEnemy()
|
||||||
|
{
|
||||||
|
|
||||||
EnemyHit.transform.GetComponent<SpriteRenderer>().color =
|
EnemyHit.transform.GetComponent<SpriteRenderer>().color =
|
||||||
SetColour(EnemyPartsColours[3]);
|
SetColour(EnemyPartsColours[3]);
|
||||||
|
|
||||||
@@ -399,8 +414,6 @@ public class GMScript : MonoBehaviour
|
|||||||
EnemyHit.transform.GetChild(0).GetComponent<SpriteRenderer>().color =
|
EnemyHit.transform.GetChild(0).GetComponent<SpriteRenderer>().color =
|
||||||
SetColour(EnemyPartsColours[3]);
|
SetColour(EnemyPartsColours[3]);
|
||||||
|
|
||||||
enemyAttackAnim.SetTrigger("AttackTrigger");
|
|
||||||
|
|
||||||
if((Colours)EnemyPartsColours[0] == Colours.White ||
|
if((Colours)EnemyPartsColours[0] == Colours.White ||
|
||||||
(Colours)EnemyPartsColours[0] == Colours.Grey ||
|
(Colours)EnemyPartsColours[0] == Colours.Grey ||
|
||||||
(Colours)EnemyPartsColours[0] == Colours.Black)
|
(Colours)EnemyPartsColours[0] == Colours.Black)
|
||||||
@@ -476,9 +489,6 @@ public class GMScript : MonoBehaviour
|
|||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
//ENEMY ATTACKING PARTY (DEFAULT DISPLAY TEXT TO RED FOR NOW)
|
|
||||||
DamageEnemy(enemyAttack, Colours.Red);
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
void DamageParty(int partyAttack, Colours partyMember)
|
void DamageParty(int partyAttack, Colours partyMember)
|
||||||
@@ -614,6 +624,7 @@ public class GMScript : MonoBehaviour
|
|||||||
modifiedAttack = partyAttack * modifier;
|
modifiedAttack = partyAttack * modifier;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
StartCoroutine(HitEffectParty(partyMember));
|
||||||
StartCoroutine(DisplayDamageText((int)modifiedAttack, EnemyDamageText, partyMember));
|
StartCoroutine(DisplayDamageText((int)modifiedAttack, EnemyDamageText, partyMember));
|
||||||
|
|
||||||
enemyHealth -= (int)modifiedAttack;
|
enemyHealth -= (int)modifiedAttack;
|
||||||
@@ -669,6 +680,7 @@ public class GMScript : MonoBehaviour
|
|||||||
|
|
||||||
buff = false;
|
buff = false;
|
||||||
|
|
||||||
|
StartCoroutine(HitEffectEnemy());
|
||||||
StartCoroutine(DisplayDamageText(modifiedAttack, PartyDamageText, enemyColour));
|
StartCoroutine(DisplayDamageText(modifiedAttack, PartyDamageText, enemyColour));
|
||||||
|
|
||||||
partyHealth -= modifiedAttack;
|
partyHealth -= modifiedAttack;
|
||||||
|
|||||||
Reference in New Issue
Block a user