-
Notifications
You must be signed in to change notification settings - Fork 0
/
role.claimer.js
32 lines (26 loc) · 1.15 KB
/
role.claimer.js
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
var setRoom = require('function.setRoom');
const NicoMsg="にっこにっこにー☆";
var roleClaimer = {
/** @param {Creep} creep **/
run: function(creep) {
if(setRoom(creep,creep.memory.targetRoomPos.roomName,{ignoreRoads:true,ignoreCreeps:false,reusePath:20})==0) return;
const target = creep.room.controller;
if(target) {
if(target.owner&&!target.my){
var ret=creep.attackController(target);
if(ret == ERR_NOT_IN_RANGE) {
creep.moveTo(target, {visualizePathStyle: {stroke: '#ff00aa'},reusePath:20,ignoreRoads:true});
return;
}
else if(ret==OK) return;
}
var ret=creep.reserveController(target);
if(ret == ERR_NOT_IN_RANGE) {
creep.moveTo(target, {visualizePathStyle: {stroke: '#ff00aa'},reusePath:20,ignoreRoads:true});
}
else if(!creep.room.controller.sign||creep.room.controller.sign.username!='iamgqr') creep.signController(creep.room.controller,NicoMsg);
}
return 0;
}
};
module.exports = roleClaimer;