我制作了一个库存系统(其他是投递系统),这里是提货代码
// 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);
}
}
}
我收到语法错误,其中“ [|”找到预期的“)”。我不知道该如何解决,请帮忙。
答案 0 :(得分:2)
仅在> = 2.3版本中才支持链访问器(在您的情况下为a [i] [k]或a [| i] [| k])(在撰写本文时,is in beta)。 / p>
将第一个检索到的项分配到变量中以避开事实。
也许还趁机不要做超出您需要的内容。
for(var i = 0; i < ds_list_size(global.inv); i++){
var item = global.inv[| i];
if(item[| 0] == other.object_index){ // error line
item[| 1]++;
found_in_inv = true;
break;
}
}