好的,所以我有一个脚本应用于一个空的游戏对象以显示分数。
硬币控制器.js
#pragma strict
static var coinCount;
function OnGUI() {
var coinText = "Total Coins: " + coinCount;
GUI.Box (Rect(Screen.width -150,20,130,20), coinText);
}
以及应用于硬币对象的脚本,当玩家与硬币对象碰撞并破坏游戏对象时,该脚本应增加分数。
硬币行为.js
#pragma strict
function OnTriggerEnter(other : Collider){
switch (Collider.gameObject.name){
case "Character":
CoinController.coinCount++;
Destroy(this.gameObject);
break;
case "Character(Clone)":
CoinController.coinCount++;
Destroy(this.gameObject);
break;
}
}
我一辈子都无法让这段代码工作。我有脚本在 c# 中工作,但正在尝试开始使用 java。我知道语法差异很大,我很难弄清楚如何让错误消失。
static var coinCount;
在Javascript中,这将被称为对象。
CoinController.coinCount++;
如果已声明,则不能在对象上使用 ++ 运算符
#pragma strict
您的解决方案是告诉编译器coinCount是一个整数。
static var coinCount:int;
或者简单地删除#pragma strict
,您将不会被强制执行您的数据类型(我个人不推荐)。