0

我正在尝试将源 ID 和当前正在挖掘源的生成的 ID 保存到房间中当前生成下的内存中。保存后,我可以轻松地将矿工分配给每个来源,而无需执行 FIND_SOURCES。这样做会降低我的 CPU 使用率。

我当前的问题是它只保存源 ID 而不是我试图创建的自定义对象。任何有关纠正此问题的帮助将不胜感激。

这是我正在使用的当前代码:

    if(!spawn.memory.sources){
        //spawn.memory.sources = {}; //Add it
        var roomSources = spawn.room.find(FIND_SOURCES);
        console.log("loading memory");
        for(var i in roomSources){
            var source = {id:roomSources[i].id, currentMinerId: null};
           spawn.memory.sources[i] = source; 
        }
    }
4

1 回答 1

0

我能够使用以下代码更正此问题。希望对其他人有帮助。

    if(!spawns.memory.roomSources){
        spawns.memory.roomSources=[];
        var energySources = spawns.room.find(FIND_SOURCES);
        for(var i in energySources){
            spawns.memory.roomSources[i] = {sourceId: energySources[i].id, currentMinerId: null};

        }
    }
于 2016-11-17T21:38:08.920 回答