/// <summary> /// Creates an enemy for the spirit side of the battlefield. /// </summary> /// <param name="values"></param> /// <param name="group"></param> /// <param name="index"></param> private void CreateS(EnemyEntry values, EnemyGroup group) { if (!spawnTop) { return; } ggobjS = Instantiate(values.enemyModelS) as Transform; int side = Random.Range(0, 2); SStateController state = ggobjS.GetComponent <SStateController>(); HurtableEnemyScript hurt = ggobjS.GetComponent <HurtableEnemyScript>(); AttackScript attack = ggobjS.GetComponent <AttackScript>(); if (side == 0) { state.leftSide = true; } ggobjS.position = state.GetRandomLocation(); hurt.group = group; state.enemyid = enemyId; state.values = ScriptableObject.CreateInstance <EnemyEntry>(); state.values.CopyValues(values); group.top = hurt; group.sStateController = state; group.sTransform = ggobjS; group.sAttackScript = attack; }
/// <summary> /// Creates an enemy for the normal side of the battlefield. /// </summary> /// <param name="values"></param> /// <param name="group"></param> /// <param name="index"></param> private void CreateN(EnemyEntry values, EnemyGroup group) { if (!spawnBottom) { return; } ggobjN = Instantiate(values.enemyModelN) as Transform; NStateController state = ggobjN.GetComponent <NStateController>(); HurtableEnemyScript hurt = ggobjN.GetComponent <HurtableEnemyScript>(); AttackScript attack = ggobjN.GetComponent <AttackScript>(); ggobjN.position = state.GetRandomLocation(); hurt.group = group; state.enemyid = enemyId; state.values = ScriptableObject.CreateInstance <EnemyEntry>(); state.values.CopyValues(values); group.bot = hurt; group.nStateController = state; group.nTransform = ggobjN; group.nAttackScript = attack; }