AI 人工智能 探索 (一)

时间:2023-11-29 12:38:02

碰撞检测

        //逗留碰撞
void OnTriggerStay (Collider other)
{
if (other.transform.name == name) {
//检测距离
//根据距离 发射子弹, } } private bool peng = false;//和目标物体发生碰撞没有
private string name;//目标
//进入碰撞
void OnTriggerEnter (Collider other)
{
table.Add (other.transform.name, other.transform);
//
if (peng == false) {//如果没碰,
foreach (DictionaryEntry de in table) {
//检测碰撞,发现导入方法
//加入
Transform transform = de.Value as Transform;
if (jiance (transform)) {
name = other.transform.name;
peng = true;
}
}
} }
//离开碰撞
void OnTriggerExit (Collider other)
{
table.Remove (other.transform.name);
//如果消失
if (other.transform.name == name) { peng = false;
}
} bool jiance (Transform tr)
{
//判断是否符合条件
if (tr == transform) {
//这里写方法判断逻辑
if(tr.GetComponent<"对方属性类">()."相关属性" == this.transform.GetComponent<"自己属性类">()."相关属性")
{
//可以打到
return true;
}else
{//重新选择敌人
return false;
}
}
}

上面是 角色被动 技能,下一节 探讨 主动技能 实现