【发布时间】:2020-09-04 03:15:57
【问题描述】:
我做了一个库存系统(其他是drop),这里是提货代码
// pickup
found_in_inv = false;
for(var i = 0; i < ds_list_size(global.inv); i++){
if(global.inv[| i][| 0] == other.object_index){ // error line
global.inv[| i][| 1]++;
found_in_inv = true;
break;
}
}
if(found_in_inv){
instance_destroy(other);
}else{
for(var i = 0; i < ds_list_size(global.inv); i++){
if(global.inv[| i][| 0] == noone){
global.inv[| i][| 0] = other.object_index;
global.inv[| i][| 1] = 1;
break;
instance_destroy(other);
}
}
}
我收到一个语法错误,其中“[|”发现,“)”预期。我不知道如何解决这个问题,请帮助。
【问题讨论】:
-
你试过用
[替换global.inv[| i]([|)的行吗? (例如:global.inv[i])这对我来说似乎是语法错误。 -
然后它只是说它得到了“[”而不是“)”
-
我不确定在任何数组括号内使用
|是否是有效的gml,也许这会导致语法错误,你能把它们全部删除吗?如果没有,你能介意解释一下吗你为什么用那个? -
新的 gml 使用 [| index] 现在用于 ds_lists,问题在于 if 语句