淘先锋技术网

首页 1 2 3 4 5 6 7

鼠标控制门:通过玩家通过点击鼠标左键来控制门的打开关闭;

1.创建蓝图类和模型:

创建的方法如我的上一篇文章:  键盘控制门    <--戳这里

2.处理蓝图,事件图表

和键盘控制门不同的是,键盘控制门是当玩家靠近时按下E键就发生相应的事件,而鼠标按键触发的条件是:

1.玩家靠近门(进入盒体触发器区域)

2.按下鼠标左键

所以,鼠标触发模式就是在感应门的基础上加上鼠标点击,且顺序是:

玩家靠近门->按下鼠标左键->门开关

那我们点击的时候是点击门这个模型,所以要先给门添加点击事件

单击door,在右面找到“ 点击时” 或者  “ On Clicked”,点击加号

      

将上篇文章的按键E换成这个 “ On Clicked”

 

玩过第一人称,第三人称游戏的人都知道,鼠标是控制方向摇杆的,鼠标左键一般是攻击或者动作,所以在游戏中鼠标左键是不会单独分离出来,那我们怎么点击门?

首先回到我们的世界,点击窗口,找到  “ 世界场景设置”,会在右边细节旁边看到

正常玩家控制类的默认为playerController,因为他是一个C++类,所以我们不能直接改变,我们点击加号,创建一个C++类

   

创建完成后,在右侧找到Mouse Interface,将点击事件勾选

正常情况下将上面的显示鼠标光标也勾选,在场景中就会显示鼠标了,但是鼠标光标会一直在场景中,这不是我们想要的

我们想只有我们靠近门的时候,鼠标光标才出现,促使我们点击门来进行开关。

所以我们回到蓝图,加上这部分逻辑(当角色进入盒体触发器区域内时显示鼠标光标)

拖拽蓝点搜索“ Set Show Mouse ",选择 ” 设置 show mouse cursor“,打勾表示显示,不打勾表示不显示

                     

然后如此连接:

总连接:

编译保存



一定要记得编译保存,不然不好使!

 

 

注意:

如果大家是在一个项目里做的一定要点保存所有

一般不点击 ” 保存当前关卡“,因为其只保存当前关卡的东西,但是咱们制作的蓝图类不只属于关卡,所以不会保存