1 讲了一个关于json和XML的博客里边有详细的使用
2 大致演示了二进制、XML和Json的大结构。
1 讲了一个关于json和XML的博客里边有详细的使用
2 大致演示了二进制、XML和Json的大结构。
鼠标的位置除以屏幕对应的长或宽信息得到枪的旋转角度,需要研究一下mathf
//协程控制随机时间内生成怪物
IEnumerator AliveTimer()
{
yield return new WaitForSeconds(Random.Range(1, 5));
ActivateMonster();
}
//随机生成怪物,用索引生成
这节课代码可以简写成:
void Awake()
{
int index = PlayerPrefs.GetInt("musicOn", 1);
if (index==1)
{
musicToggle.isOn = true;
}
else
{
musicToggle.isOn = false;
}
MusicSwitch();
}
比老师的方法简单。
当点击事件在toggle上时,isOn发生改变就调用该方法,而不是根据isOn的值判断
①两个迭代器(IEnumerator)交叉调用,完成一个生命周期。
前8个课程都是搭建场景的,未写代码
05-①背景
②墙
③枪
④target
vo
第17 集比较难
再看一遍: 设置手枪的旋转
各位如果有发生找不到位置等的问题的话,有可能是你打多一个Space等的问题,并非仅有打错字才会发生的,所以请各位先生,小姐们注意会比较好哦
/// <summary>
/// 生成怪物
/// </summary>
/// <returns></returns>
IEnumerator AliveTimer()
{
while (true) {
yield return new WaitForSeconds(Random.Range(1, 2));
Debug.Log("生成");
ActiceMoster();
while (true) {
Debug.Log("检测");
if (activeMoster == null) {
break;
}
aliveTime -= Time.deltaTime;
if (aliveTime < 0) {
Debug.Log("死亡");
DeActiceMoster();
}
yield return null;
}
}
}
給Target添加一個腳本
把void start和voidUpdate刪掉
public GameObject[]mosters;
public GameObject activateMonster = null;
把四種怪物都拖進腳本
ptivate void Start(){
foreach(GameObject monster in monsters)
{
monster.SetActivate(false);
monster.GetComponent<BoxCollider>.enabled = false;
}
ActivateMonster();
}
private void ActivateMonster()
{
int index = Range(0,monsters.Lenght);
activateMonster = monster[index];
activate.SetActive(true);
activate.GetCompoment<BoxCollider>().enabled = true;
}
添加一個plane作為
要將牆設置box collier
游戏物体的激活与组件的激活不同
得到退出键键盘响应
(Input.GetKeyDown(KeyCode.Escape))
得到鼠标左键摁下的响应
(Input.GetMouseButtonDown(0))
//左键是0,右键是1
Random.Range(x,y)//随机生成x到y之间的数,不包括y,包括x
协程