Пример #1
0
    /// <summary>
    /// 检测前方是否即将有障碍物出现,给出提示
    /// </summary>
    public void UpdateRockCheck()
    {
        if ("1" == SettingTb.Element[SettingTb.INDEX_HINT_TIP])   //表示隐藏主界面消息提示,直接不显示提示了
        {
            return;
        }
        lineStart = DataConst.MeDisplay.transform.position + 2 * ToolsFunction.Toward(DataConst.MeDisplay) + 2f * ToolsFunction.ToLeft(DataConst.MeDisplay) + new Vector3(0, 0, -2);
        lineEnd   = DataConst.MeDisplay.transform.position + 2 * ToolsFunction.Toward(DataConst.MeDisplay) - 2f * ToolsFunction.ToLeft(DataConst.MeDisplay) + new Vector3(0, 0, -2);

        Debug.DrawLine(lineStart, lineEnd);
        if (Physics.Linecast(lineStart, lineEnd, out hit, 1))
        {
            //判断是不是障碍物
            string blockName = hit.collider.gameObject.name;
            ToolsFunction.Log(this.gameObject, "line cast name: " + blockName);  //障碍物名称
            if (ToolsFunction.IsBlock(blockName))
            {
                MainTipControl.StartAnim(MainView.MainTip, MainView.BlockHead);
            }
        }
    }