|
@@ -174,7 +174,7 @@ public class EnemyCreater : MonoBehaviour
|
|
|
|
|
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
- if (GameManager.instance.leveType == LeveType.Conclusion
|
|
|
|
|
|
|
+ if (GameManager.instance.leveType == LeveType.Conclusion
|
|
|
|| LevelSelect.instance.isDebug && LevelSelect.instance.isAddLevel_debug)
|
|
|| LevelSelect.instance.isDebug && LevelSelect.instance.isAddLevel_debug)
|
|
|
{
|
|
{
|
|
|
createdEnemy1 = new List<bool>();
|
|
createdEnemy1 = new List<bool>();
|
|
@@ -226,7 +226,7 @@ public class EnemyCreater : MonoBehaviour
|
|
|
else
|
|
else
|
|
|
{
|
|
{
|
|
|
createdEnemy1.Add(false);
|
|
createdEnemy1.Add(false);
|
|
|
- createEnemyTime1.Add(new List<float>
|
|
|
|
|
|
|
+ createEnemyTime1.Add(new List<float>
|
|
|
{ waveTime + cfgCreateEnemy1[i].StartTime, waveTime + cfgCreateEnemy1[i].EndTime });
|
|
{ waveTime + cfgCreateEnemy1[i].StartTime, waveTime + cfgCreateEnemy1[i].EndTime });
|
|
|
createdEnemyTower1.Add("");
|
|
createdEnemyTower1.Add("");
|
|
|
createdEnemyTowerHp1.Add(0);
|
|
createdEnemyTowerHp1.Add(0);
|
|
@@ -244,19 +244,20 @@ public class EnemyCreater : MonoBehaviour
|
|
|
public void GetLevelOrientation(int id)
|
|
public void GetLevelOrientation(int id)
|
|
|
{
|
|
{
|
|
|
List<int> soldierRank = new List<int>();
|
|
List<int> soldierRank = new List<int>();
|
|
|
- for(int i = 0; i < 3; i++)
|
|
|
|
|
|
|
+ for (int i = 0; i < 3; i++)
|
|
|
{
|
|
{
|
|
|
soldierRank.Add(SoldierEXP.expInstance.ssexp[i].level);
|
|
soldierRank.Add(SoldierEXP.expInstance.ssexp[i].level);
|
|
|
}
|
|
}
|
|
|
|
|
+ //µÈ¼¶¸ßµÄÔÚǰ
|
|
|
List<List<int>> idSort = new List<List<int>>();
|
|
List<List<int>> idSort = new List<List<int>>();
|
|
|
if (soldierRank[0] == soldierRank[1])
|
|
if (soldierRank[0] == soldierRank[1])
|
|
|
{
|
|
{
|
|
|
idSort.Add(new List<int> { 0, 1 });
|
|
idSort.Add(new List<int> { 0, 1 });
|
|
|
- if (soldierRank[2] == idSort[0][0])
|
|
|
|
|
|
|
+ if (soldierRank[2] == soldierRank[0])
|
|
|
{
|
|
{
|
|
|
idSort[0].Add(2);
|
|
idSort[0].Add(2);
|
|
|
}
|
|
}
|
|
|
- else if (soldierRank[2] > idSort[0][0])
|
|
|
|
|
|
|
+ else if (soldierRank[2] > soldierRank[0])
|
|
|
{
|
|
{
|
|
|
idSort.Insert(0, new List<int> { 2 });
|
|
idSort.Insert(0, new List<int> { 2 });
|
|
|
}
|
|
}
|
|
@@ -277,71 +278,61 @@ public class EnemyCreater : MonoBehaviour
|
|
|
idSort.Add(new List<int> { 1 });
|
|
idSort.Add(new List<int> { 1 });
|
|
|
idSort.Add(new List<int> { 0 });
|
|
idSort.Add(new List<int> { 0 });
|
|
|
}
|
|
}
|
|
|
- for(int i = 0; i < 2; i++)
|
|
|
|
|
|
|
+ for (int i = 0; i < 2; i++)
|
|
|
{
|
|
{
|
|
|
- if(soldierRank[2] > soldierRank[idSort[i][0]])
|
|
|
|
|
|
|
+ if (soldierRank[2] > soldierRank[idSort[i][0]])
|
|
|
{
|
|
{
|
|
|
idSort.Insert(i, new List<int> { 2 });
|
|
idSort.Insert(i, new List<int> { 2 });
|
|
|
break;
|
|
break;
|
|
|
}
|
|
}
|
|
|
- if(soldierRank[2] == soldierRank[idSort[i][0]])
|
|
|
|
|
|
|
+ if (soldierRank[2] == soldierRank[idSort[i][0]])
|
|
|
{
|
|
{
|
|
|
idSort[i].Add(2);
|
|
idSort[i].Add(2);
|
|
|
break;
|
|
break;
|
|
|
}
|
|
}
|
|
|
- if(i == 1)
|
|
|
|
|
|
|
+ if (i == 1)
|
|
|
{
|
|
{
|
|
|
idSort.Add(new List<int> { 2 });
|
|
idSort.Add(new List<int> { 2 });
|
|
|
}
|
|
}
|
|
|
}
|
|
}
|
|
|
}
|
|
}
|
|
|
|
|
+ //string x = "";
|
|
|
|
|
+ //for(int i = 0; i < idSort.Count; i++)
|
|
|
|
|
+ //{
|
|
|
|
|
+ // x += "[";
|
|
|
|
|
+ // for(int j = 0; j < idSort[i].Count; j++)
|
|
|
|
|
+ // {
|
|
|
|
|
+ // x += idSort[i][j];
|
|
|
|
|
+ // }
|
|
|
|
|
+ // x += "]";
|
|
|
|
|
+ //}
|
|
|
|
|
|
|
|
-
|
|
|
|
|
- List<int> idList = new List<int> { 6,4,1 };
|
|
|
|
|
- int x0 = -1;
|
|
|
|
|
- int x1 = -1;
|
|
|
|
|
switch (idSort.Count)
|
|
switch (idSort.Count)
|
|
|
{
|
|
{
|
|
|
case 1:
|
|
case 1:
|
|
|
- levelTypes[id] = Random.Range(1, 9);
|
|
|
|
|
|
|
+ levelTypes[id] = Random.Range(1, 6);
|
|
|
break;
|
|
break;
|
|
|
case 2:
|
|
case 2:
|
|
|
switch (idSort[id].Count)
|
|
switch (idSort[id].Count)
|
|
|
{
|
|
{
|
|
|
case 1:
|
|
case 1:
|
|
|
- levelTypes[id] = idList[idSort[id][0]];
|
|
|
|
|
|
|
+ levelTypes[id] = GetLevelTypes(idSort[id][0]);
|
|
|
break;
|
|
break;
|
|
|
case 2:
|
|
case 2:
|
|
|
- x0 = idSort[id][0];
|
|
|
|
|
- x1 = idSort[id][1];
|
|
|
|
|
- if(x0 == 0 && x1 == 2)
|
|
|
|
|
- {
|
|
|
|
|
- levelTypes[id] = Random.Range(7, 9);
|
|
|
|
|
- }
|
|
|
|
|
- else
|
|
|
|
|
- {
|
|
|
|
|
- levelTypes[id] = Random.Range(idList[x1] + 1, idList[x0]);
|
|
|
|
|
- }
|
|
|
|
|
|
|
+ levelTypes[id] = (GetLevelTypes(idSort[id][0]) + GetLevelTypes(idSort[id][1])) / 2;
|
|
|
|
|
+ if (levelTypes[id] == 3) levelTypes[id] = 6;
|
|
|
break;
|
|
break;
|
|
|
}
|
|
}
|
|
|
break;
|
|
break;
|
|
|
case 3:
|
|
case 3:
|
|
|
- x0 = Mathf.Min(idSort[0 + id * 2][0], idSort[1][0]);
|
|
|
|
|
- x1 = Mathf.Max(idSort[0 + id * 2][0], idSort[1][0]);
|
|
|
|
|
- if (x0 == 0 && x1 == 2)
|
|
|
|
|
- {
|
|
|
|
|
- levelTypes[id] = Random.Range(7, 9);
|
|
|
|
|
- }
|
|
|
|
|
- else
|
|
|
|
|
- {
|
|
|
|
|
- levelTypes[id] = Random.Range(idList[x1] + 1, idList[x0]);
|
|
|
|
|
- }
|
|
|
|
|
|
|
+ levelTypes[id] = GetLevelTypes(idSort[id * 2][0]);
|
|
|
break;
|
|
break;
|
|
|
}
|
|
}
|
|
|
- if (id == 1 && levelTypes[1] == levelTypes[0])
|
|
|
|
|
- {
|
|
|
|
|
- GetLevelOrientation(1);
|
|
|
|
|
- }
|
|
|
|
|
|
|
+ }
|
|
|
|
|
+
|
|
|
|
|
+ public int GetLevelTypes(int id)
|
|
|
|
|
+ {
|
|
|
|
|
+ return id * 2 + 1;
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
public void OnGameTimeChange(float gameTime)
|
|
public void OnGameTimeChange(float gameTime)
|
|
@@ -566,7 +557,7 @@ public class EnemyCreater : MonoBehaviour
|
|
|
enemy.SetSortingOrder(enemy.baseSortingOrder + enemyDic[cfgEnemy.Name].Count);
|
|
enemy.SetSortingOrder(enemy.baseSortingOrder + enemyDic[cfgEnemy.Name].Count);
|
|
|
break;
|
|
break;
|
|
|
}
|
|
}
|
|
|
- if(cfgEnemy.Type == "Tower")
|
|
|
|
|
|
|
+ if (cfgEnemy.Type == "Tower")
|
|
|
{
|
|
{
|
|
|
|
|
|
|
|
}
|
|
}
|