C# 如何在C代码中交替更改变量? void Update(){ 公共整数x=-10; if(Input.GetKey(“w”)){ GetComponent().velocity=新矢量3(10,x); } }

C# 如何在C代码中交替更改变量? void Update(){ 公共整数x=-10; if(Input.GetKey(“w”)){ GetComponent().velocity=新矢量3(10,x); } },c#,unity3d,C#,Unity3d,当我按下w键时,变量x为-10,当我再次按下w键时,变量x应更改为9。当我再次按下“w”时,x应该是-10。在我的代码中如何做到这一点 这是您的代码,只需在函数内部使用即可。如果您喜欢更紧凑的代码,还可以使用布尔运算符或模运算符。下次,请记住在提出要求之前发布您的解决方案 使用系统集合; 使用System.Collections.Generic; 使用UnityEngine; 公共乒乓球:单一行为 { 专用整数计数器=0; 无效更新() { if(Input.GetKeyDown(KeyCode

当我按下w键时,变量x为-10,当我再次按下w键时,变量x应更改为9。当我再次按下“w”时,x应该是-10。在我的代码中如何做到这一点


这是您的代码,只需在函数内部使用即可。如果您喜欢更紧凑的代码,还可以使用布尔运算符或模运算符。下次,请记住在提出要求之前发布您的解决方案

使用系统集合;
使用System.Collections.Generic;
使用UnityEngine;
公共乒乓球:单一行为
{
专用整数计数器=0;
无效更新()
{
if(Input.GetKeyDown(KeyCode.W))
{
如果(计数器==0)
计数器=1;
其他的
计数器=0;
调试日志(计数器);
}
}
}

不要标记不相关的语言。同时展示你尝试了什么,问题出在哪里,你可以使用
0^1==1
然后
1^1==0
。此
^1
基本上会向后切换,但在您的代码中,1和0只打印了两次。我想有一个循环,其中1和0交替打印。该函数每帧调用一次,更多信息请查看文档。这是完美的工作。好的,但是我如何在顶部的代码中做到这一点呢。
  void Update(){

      public int x = -10;

      if (Input.GetKey("w")){


        GetComponent<Rigidbody2D>().velocity = new Vector3(10, x);

      }
   }