游戏精英
 
- 贡献度
- 706
- 金元
- 14418
- 积分
- 4316
- 精华
- 5
- 注册时间
- 2012-10-6
|
本帖最后由 一只双眼皮 于 2019-1-6 03:47 编辑
public void Update()
{
if (Input.GetKey(KeyCode.LeftArrow))
{
if (Input.GetKeyDown(KeyCode.Keypad0))
{
PlayerManager.m_shlmy = !PlayerManager.m_shlmy;
HUDMessage.AddMessage((!PlayerManager.m_shlmy) ? "《命运》不再翻起浪花(功能关闭)" : "《命运》翻起浪花(功能开启)", 1f, false);
如果是Unity游戏先找主控。比如长夜就是在PlayerManager类的Update下写。
在“类”下自建具有Static属性的bool字段,在cctor中给初值False,
然后调用Unity自带的 Input.GetKep ( KeyCode ) 这里的GetKey、GetKeyUp、GetKeyDown有区别。打开/关闭箱子建议用GetKeyUp避免误操作。
具体是用GetKeyDown还是Up调试一下。
如果打算写很多按键,一定要用组合键(嵌套)两层以避免占用过多线程。(一开始写了大概6个单键控制功能,导致画面撕裂)
按键时:PlayerManager.m_shlmy = !PlayerManager.m_shlmy; 实现逻辑转换。
AddMessage有必要就写没必要不写只是个信息提示。如果打算按键开箱子那成功打开会有箱子界面可以不写Message。
然后在箱子的类里加判定,if (PlayerManager.m_shldly)
打开/关闭箱子,或实现其他控制。
|
|