public void Init(k514enemyController l_enemy, k514SystemManager.DIRECT p_direct, float p_duration, float p_speed, Vector3?p_Offset = null) { Vector3 l_offset = p_Offset ?? Vector3.zero; base.Init(l_enemy, l_offset); gameObject.name = "DashUp"; m_direct = p_direct; m_duration = p_duration; m_speed = p_speed; }
public void Init(k514enemyController l_enemy, k514SystemManager.DIRECT p_direct, float p_target, float p_time, Vector3?p_Offset = null) { Vector3 l_offset = p_Offset ?? Vector3.zero; base.Init(l_enemy, l_offset); gameObject.name = "WalkT"; m_direct = p_direct; m_time = p_time; m_reversedTime = 1f / p_time; m_targetX = p_target; }
public void WalkPattern(Vector3 p_pos, k514SystemManager.DIRECT p_direct) { List <k514EnemyPattern> l_result = new List <k514EnemyPattern>(); k514enemyController l_enemy = k514SystemManager.SYSTEM_ENEMY_SPAWNER.Spawn(p_pos); l_enemy.SetPattern(l_result); k514EnemyPatternWalk l_walkPattern = new GameObject().AddComponent <k514EnemyPatternWalk>(); l_walkPattern.transform.parent = l_enemy.transform; l_walkPattern.Init(l_enemy, p_direct, 10f, 100f, Vector3.up * -0.14f); l_result.Add(l_walkPattern); l_enemy.StartPattern(); }
void Update() { if (m_SpawnTrig) { m_SpawnTrig = false; // WalkPattern(new Vector3(Random.Range(-24f, 24f), -3f, 0f), k514SystemManager.DIRECT.RIGHT); //if(Random.Range(0,2) == 0) //DashUpDownPattern(new Vector3(Random.Range(-24f, 24f), -3f, 0f), k514SystemManager.DIRECT.LEFT); //else //DashUpDownPattern(new Vector3(Random.Range(-24f, 24f), -3f, 0f), k514SystemManager.DIRECT.RIGHT); // WaitPattern(new Vector3(Random.Range(-24f, 24f), -3f, 0f)); float l_timeoffset = 0f; k514SystemManager.DIRECT l_direction = Random.Range(0, 2) == 0 ? k514SystemManager.DIRECT.LEFT : k514SystemManager.DIRECT.RIGHT; k514enemyController l_tmp = k514SystemManager.SYSTEM_PATTERN_GENERATOR.RandomGenerateUpDownPattern(out l_timeoffset, Vector3.right * Random.Range(-24f, 24f), l_direction); l_tmp.StartPattern(); Debug.Log(l_timeoffset); } }
// 스펙트럼 값을 분석함. public void AnalyzeSpectrum() { m_sequence++; k514enemyController l_tmp = null; float l_timeoffset = 0f, l_timeToAdd = 0f; k514SystemManager.DIRECT l_direction = Random.Range(0, 2) == 0 ? k514SystemManager.DIRECT.LEFT : k514SystemManager.DIRECT.RIGHT; // Debug.Log("evaluated value" + m_evaluated); switch (m_evaluated) { case 15: l_tmp = k514SystemManager.SYSTEM_PATTERN_GENERATOR.RandomGenerateUpDownPattern(out l_timeoffset, Vector3.right * Random.Range(-24f, 24f), l_direction); l_timeToAdd = m_sequence * m_seqInterval - l_timeoffset - 0.1f; // 0.1 is jitter expected break; } if (l_timeToAdd > 0f) { int l_up = (int)(10 * l_timeToAdd); l_tmp.gameObject.name = "enemy_at_" + l_up; m_SpawnerSequence.AddPatternToMap(l_up, () => { l_tmp.StartPattern(); }); } m_evaluated = 0; }
public void DashUpDownPattern(Vector3 p_pos, k514SystemManager.DIRECT p_direct) { List <k514EnemyPattern> l_result = new List <k514EnemyPattern>(); k514enemyController l_enemy = k514SystemManager.SYSTEM_ENEMY_SPAWNER.Spawn(p_pos); l_enemy.SetPattern(l_result); k514EnemyPatternDashUp l_dashUpPattern = new GameObject().AddComponent <k514EnemyPatternDashUp>(); l_dashUpPattern.transform.parent = l_enemy.transform; l_dashUpPattern.Init(l_enemy, p_direct, 0.125f, 400f); l_result.Add(l_dashUpPattern); k514EnemyPatternRollinghUp l_rollUpPattern = new GameObject().AddComponent <k514EnemyPatternRollinghUp>(); l_rollUpPattern.transform.parent = l_enemy.transform; l_rollUpPattern.Init(l_enemy, p_direct, 0.125f, 400f); l_result.Add(l_rollUpPattern); k514EnemyPatternDashDown l_dashDownPattern = new GameObject().AddComponent <k514EnemyPatternDashDown>(); l_dashDownPattern.transform.parent = l_enemy.transform; l_dashDownPattern.Init(l_enemy, 0.05f, p_pos + (int)p_direct * Vector3.right * 10f, Vector3.up * -0.3f); l_result.Add(l_dashDownPattern); k514EnemyPatternFaint l_faintPattern = new GameObject().AddComponent <k514EnemyPatternFaint>(); l_faintPattern.transform.parent = l_enemy.transform; l_faintPattern.Init(l_enemy, 1f, Vector3.up * -0.42f); l_result.Add(l_faintPattern); k514EnemyPatternRaise l_raisePattern = new GameObject().AddComponent <k514EnemyPatternRaise>(); l_raisePattern.transform.parent = l_enemy.transform; l_raisePattern.Init(l_enemy, 0.5f); l_result.Add(l_raisePattern); k514EnemyPatternRaise2 l_raisePattern2 = new GameObject().AddComponent <k514EnemyPatternRaise2>(); l_raisePattern2.transform.parent = l_enemy.transform; l_raisePattern2.Init(l_enemy, 0.5f, new Vector3(1f * (float)p_direct, 0.2f, 0f)); l_result.Add(l_raisePattern2); k514EnemyPatternPose l_posePattern = null; l_posePattern = new GameObject().AddComponent <k514EnemyPatternPose>(); l_posePattern.transform.parent = l_enemy.transform; l_posePattern.Init(l_enemy, 1.5f, "Pose1", Vector3.up * 0.18f); l_result.Add(l_posePattern); l_posePattern = new GameObject().AddComponent <k514EnemyPatternPose>(); l_posePattern.transform.parent = l_enemy.transform; l_posePattern.Init(l_enemy, 0.5f, "Idle"); l_result.Add(l_posePattern); k514EnemyPatternWalk l_walkPattern = new GameObject().AddComponent <k514EnemyPatternWalk>(); l_walkPattern.transform.parent = l_enemy.transform; l_walkPattern.Init(l_enemy, p_direct, 20f, 300f, Vector3.up * -0.14f); l_result.Add(l_walkPattern); l_enemy.StartPattern(); }
// Ÿ�� �ɼ�,��ġ�� �� ��� [-24,24], ���ư� ���� public k514enemyController RandomGenerateUpDownPattern(out float offset, Vector3 p_pos, k514SystemManager.DIRECT p_direct) { // ref name k514EnemyPatternDashUp l_dashUpPattern = null; k514EnemyPatternRollinghUp l_rollUpPattern = null; k514EnemyPatternDashDown l_dashDownPattern = null; k514EnemyPatternFaint l_faintPattern = null; k514EnemyPatternRaise l_raisePattern = null; k514EnemyPatternRaise2 l_raisePattern2 = null; k514EnemyPatternPose l_posePattern = null; k514EnemyPatternWalk l_walkPattern = null; k514EnemyPatternWalkInTime l_walkTimePattern = null; // Vector3 l_generatePlace = Vector3.down * 3.3f + Vector3.left * (int)p_direct * 25f; float l_offset = 0f, l_rand = 0f; // �� �� ������ �����ϰ� ����. List <k514EnemyPattern> l_result = new List <k514EnemyPattern>(); k514enemyController l_enemy = k514SystemManager.SYSTEM_ENEMY_SPAWNER.Spawn(l_generatePlace); l_enemy.SetPattern(l_result); // pattern regist l_rand = Random.Range(0.1f, 0.5f); l_walkTimePattern = new GameObject().AddComponent <k514EnemyPatternWalkInTime>(); l_walkTimePattern.transform.parent = l_enemy.transform; l_walkTimePattern.Init(l_enemy, p_direct, 0.5f * (p_pos.x + l_generatePlace.x), l_rand, Vector3.up * -0.14f); l_result.Add(l_walkTimePattern); l_offset += l_rand; l_rand = Random.Range(0.125f, 0.225f); l_dashUpPattern = new GameObject().AddComponent <k514EnemyPatternDashUp>(); l_dashUpPattern.transform.parent = l_enemy.transform; l_dashUpPattern.Init(l_enemy, p_direct, l_rand, 400f); l_result.Add(l_dashUpPattern); l_offset += l_rand; l_rand = Random.Range(0.125f, 0.225f); l_rollUpPattern = new GameObject().AddComponent <k514EnemyPatternRollinghUp>(); l_rollUpPattern.transform.parent = l_enemy.transform; l_rollUpPattern.Init(l_enemy, p_direct, l_rand, 400f); l_result.Add(l_rollUpPattern); l_offset += l_rand; l_rand = Random.Range(0.1f, 0.2f); l_dashDownPattern = new GameObject().AddComponent <k514EnemyPatternDashDown>(); l_dashDownPattern.transform.parent = l_enemy.transform; l_dashDownPattern.Init(l_enemy, l_rand, p_pos + Vector3.down * 3.3f, Vector3.up * -0.3f); l_result.Add(l_dashDownPattern); l_offset += l_rand; l_rand = Random.Range(0.8f, 1.6f); l_faintPattern = new GameObject().AddComponent <k514EnemyPatternFaint>(); l_faintPattern.transform.parent = l_enemy.transform; l_faintPattern.Init(l_enemy, l_rand, Vector3.up * -0.42f); l_result.Add(l_faintPattern); l_raisePattern = new GameObject().AddComponent <k514EnemyPatternRaise>(); l_raisePattern.transform.parent = l_enemy.transform; l_raisePattern.Init(l_enemy, 0.5f); l_result.Add(l_raisePattern); l_raisePattern2 = new GameObject().AddComponent <k514EnemyPatternRaise2>(); l_raisePattern2.transform.parent = l_enemy.transform; l_raisePattern2.Init(l_enemy, 0.5f, new Vector3(1f * (float)p_direct, 0.2f, 0f)); l_result.Add(l_raisePattern2); l_posePattern = new GameObject().AddComponent <k514EnemyPatternPose>(); l_posePattern.transform.parent = l_enemy.transform; l_posePattern.Init(l_enemy, 1.5f, "Pose1", Vector3.up * 0.18f); l_result.Add(l_posePattern); l_rand = Random.Range(0.8f, 1.6f); l_posePattern = new GameObject().AddComponent <k514EnemyPatternPose>(); l_posePattern.transform.parent = l_enemy.transform; l_posePattern.Init(l_enemy, l_rand, "Idle"); l_result.Add(l_posePattern); l_rand = Random.Range(225f, 325f); l_walkPattern = new GameObject().AddComponent <k514EnemyPatternWalk>(); l_walkPattern.transform.parent = l_enemy.transform; l_walkPattern.Init(l_enemy, p_direct, 50f, l_rand, Vector3.up * -0.14f); l_result.Add(l_walkPattern); offset = l_offset; return(l_enemy); }