31 lines
706 B
JavaScript
31 lines
706 B
JavaScript
var Drone = require('../drone').Drone;
|
|
var bkMaterial = org.bukkit.Material;
|
|
|
|
function canHang( material ) {
|
|
|
|
if ( material.equals(bkMaterial.AIR) ||
|
|
material.equals(bkMaterial.VINE) ) {
|
|
return true;
|
|
} else {
|
|
return false;
|
|
}
|
|
}
|
|
Drone.extend('hangtorch', function () {
|
|
var torch = '50:' + Drone.PLAYER_TORCH_FACING[this.dir];
|
|
var moves = 0;
|
|
var block = this.world.getBlockAt(this.x, this.y, this.z);
|
|
|
|
while ( !canHang(block.type) ){
|
|
|
|
moves++;
|
|
this.back();
|
|
if (moves == 10){
|
|
this.fwd(moves);
|
|
console.log('nowhere to hang torch');
|
|
return;
|
|
}
|
|
block = this.world.getBlockAt(this.x, this.y, this.z);
|
|
}
|
|
this.box(torch)
|
|
.fwd(moves);
|
|
});
|