165 lines
4.4 KiB
C#
Executable file
165 lines
4.4 KiB
C#
Executable file
using System.Collections;
|
|
using System.Collections.Generic;
|
|
using System.Diagnostics;
|
|
using UnityEngine;
|
|
using Debug = UnityEngine.Debug;
|
|
|
|
public class TriggerButton : MonoBehaviour
|
|
{
|
|
public GameObject Boss;
|
|
public GameObject NextBrick;
|
|
public GameObject[] FallWall;
|
|
public GameObject[] Spike;
|
|
|
|
public AudioSource Sound;
|
|
public AudioSource PlaySound;
|
|
public GameObject Cam;
|
|
public AudioClip FWS;
|
|
public AudioClip SS;
|
|
|
|
|
|
public Animator Animator;
|
|
|
|
public int TriggerID;
|
|
|
|
private void Start()
|
|
{
|
|
PlaySound = Cam.GetComponent<AudioSource>();
|
|
}
|
|
|
|
|
|
private void OnTriggerEnter2D(Collider2D collision)
|
|
{
|
|
if (collision.tag == "Player")
|
|
{
|
|
switch (TriggerID)
|
|
{
|
|
case 0:
|
|
Boss.gameObject.GetComponent<Animator>().SetTrigger("StartBoss");
|
|
Up();
|
|
Destroy(this.gameObject);
|
|
break;
|
|
case 1:
|
|
Down();
|
|
|
|
Debug.Log("S");
|
|
for (int i = 15; i < 28; i++)
|
|
{
|
|
Debug.Log(i);
|
|
SpikeAtack(i);
|
|
Sound.Play();
|
|
}
|
|
Up();
|
|
break;
|
|
case 2:
|
|
Down();
|
|
for(int i = 0; i < 14; i++)
|
|
{
|
|
SpikeAtack(i);
|
|
}
|
|
Up();
|
|
break;
|
|
|
|
case 3:
|
|
Down();
|
|
FallWallDown(1);
|
|
FallWallDown(3);
|
|
Up();
|
|
break;
|
|
|
|
case 4:
|
|
Down();
|
|
FallWallDown(2);
|
|
for(int i = 7; i < 21; i++)
|
|
{
|
|
SpikeAtack(i);
|
|
|
|
}
|
|
Up();
|
|
break;
|
|
|
|
case 5:
|
|
Down();
|
|
for(int i = 0; i < 28; i++)
|
|
{
|
|
SpikeAtack(i);
|
|
}
|
|
Up();
|
|
break;
|
|
|
|
case 6:
|
|
Down();
|
|
FallWallDown(1);
|
|
FallWallDown(2);
|
|
FallWallDown(3);
|
|
Up();
|
|
break;
|
|
case 7:
|
|
Down();
|
|
FallWallDown(1);
|
|
FallWallDown(3);
|
|
for (int i = 7; i < 21; i++)
|
|
{
|
|
SpikeAtack(i);
|
|
}
|
|
Up();
|
|
break;
|
|
case 8:
|
|
Down();
|
|
FallWallDown(2);
|
|
for(int i = 1; i < 7; i++)
|
|
{
|
|
SpikeAtack(i);
|
|
}
|
|
for (int i = 21; i < 28; i++)
|
|
{
|
|
SpikeAtack(i);
|
|
}
|
|
Up();
|
|
break;
|
|
case 9:
|
|
Down();
|
|
FallWallDown(1);
|
|
FallWallDown(2);
|
|
FallWallDown(3);
|
|
FallWallDown(4);
|
|
for (int i = 1;i < 28; i++)
|
|
{
|
|
SpikeAtack(i);
|
|
}
|
|
Boss.gameObject.GetComponent<Animator>().SetTrigger("End");
|
|
break;
|
|
|
|
|
|
|
|
}
|
|
}
|
|
}
|
|
|
|
void SpikeAtack(int SN)
|
|
{
|
|
Debug.Log(SN);
|
|
Spike[SN].gameObject.GetComponent<Animator>().SetTrigger("SpikeAttack");
|
|
PlaySound.clip = SS;
|
|
PlaySound.Play(66000);
|
|
}
|
|
|
|
void FallWallDown(int NW)
|
|
{
|
|
FallWall[NW].gameObject.GetComponent<Animator>().SetTrigger("WallFall");
|
|
PlaySound.clip = FWS;
|
|
PlaySound.Play(77100);
|
|
}
|
|
|
|
private void Down()
|
|
{
|
|
GetComponent<Animator>().SetTrigger("Down");
|
|
}
|
|
|
|
private void Up()
|
|
{
|
|
NextBrick.gameObject.GetComponent<Animator>().SetTrigger("Up");
|
|
Debug.Log("Up")
|
|
; }
|
|
|
|
}
|