[英]Incrementing an item when a button is pressed, Unity
当按下按钮时,我试图在 Unity 中增加一个项目。 我像这样设置项目值item = shells;
其中 shell 是我之前在代码中设置的另一个变量。 我这样做是为了以后可以将项目值更改为其他值,例如item = fossils;
.
问题是,除非我把它当作shells++;
当我按下按钮时,什么都不会发生。
当前代码:
public double shells;
public addItem(){
item = shells;
item++;
调用 addItem 方法时,此代码不执行任何操作。
有效的代码
public double shells;
public addItem(){
shells++;
如果有更好的方法,请告诉我。
这里的问题是您正在处理“值类型”。 您在第一个示例中的代码是为item
分配shells
的值。 一旦你这样做了,你就有两个变量—— item
和shells
。 当您增加item
值 ( item
item++
) 时,您只是在增加item变量。 所以现在item
的值将大于shells
1。
如果您选择,您可以做的是:
public double shells;
public addItem()
{
item = shells;
item++;
shells = item; // here, you're assigning shells the value of item.
}
代码本身有点毫无意义,但它演示了如何将修改后的值返回到原始变量中。
这是Microsoft 描述“值类型”的页面。 了解“值类型”和“引用类型”之间的区别对您很有帮助。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.