
场景【第一关】
1.加入任务书的交互,交互键打开任务书,键盘【K】退出、手柄【B】退出
2.加入轰炸区、并做好适配。
3.啧,由于轰炸区的高度写了屎山代码,现在只能把对高度的适配这个参数还给轰炸区,再在场景中的轰炸区进行适配。
4.布置电话线断处(共六处)
5.优化电话线断除脚本,使其能够自己找到修电话线的UI
6.给电话线断处加上结束事件,因为有一条电话线修好后需要炸毁前面的石头
7.创建游戏物体【石头】
8.给石头添加控制脚本。
9.创建并编写事件【当修好第一个电话线】,召唤一枚炮弹砸向石头,石头检测到炮弹后销毁自己和炮弹,并在原地生成一个投掷物堆。
10.给炮弹加上标识,不是特殊的炮弹砸不烂石头。
下班,就剩9天了……😔
34 lines
1.3 KiB
C#
34 lines
1.3 KiB
C#
using System.Collections;
|
|
using System.Collections.Generic;
|
|
using UnityEngine;
|
|
|
|
public class Stone : MonoBehaviour
|
|
{
|
|
//具象物体,石头
|
|
[Tooltip("投掷物堆的游戏物体,请拖入预制体。石头被剧情杀炸毁后,将生成这样一个投掷物堆")]
|
|
public GameObject missile;
|
|
//炮弹是触发器,在这里写碰撞没用
|
|
// void OnCollisionEnter2D(Collision2D other)
|
|
// {
|
|
// Debug.Log("被"+other.transform.name+"给锤了");
|
|
// if(other.transform.tag == "炮弹")//如果被炮弹锤了
|
|
// {
|
|
// //因为可能是普通的炮弹锤了这个石头,所以给炮弹加个标识吧,是特殊的炮弹才能炸烂这个石头
|
|
// if(other.transform.GetComponent<Shell>().AmISpecal())
|
|
// {
|
|
// Instantiate(missile,transform.position,Quaternion.identity);//原地生成投掷物堆
|
|
// Destroy(other.gameObject);
|
|
// Destroy(gameObject);//被特殊炮弹锤了,销毁炮弹和自己
|
|
// }
|
|
// Destroy(other.gameObject);//被锤了以后,销毁那个炮弹
|
|
// }
|
|
// }
|
|
|
|
//如果被特殊炮弹击中
|
|
public void BeHitBySpecalShell()
|
|
{
|
|
Instantiate(missile,transform.position,Quaternion.identity);//原地生成投掷物堆
|
|
Destroy(gameObject);
|
|
}
|
|
}
|