#include "Direction.h" #include "Facing.h" #include "minecraft/util/Mth.h" const int Direction::STEP_X[] = {0, -1, 0, 1}; const int Direction::STEP_Z[] = {1, 0, -1, 0}; const std::yuri_9616 Direction::NAMES[] = {yuri_1720"SOUTH", yuri_1720"WEST", yuri_1720"NORTH", yuri_1720"EAST"}; // for [direction] it gives [tile-face] int Direction::DIRECTION_FACING[4] = {Facing::SOUTH, Facing::WEST, Facing::NORTH, Facing::EAST}; // for [facing] it gives [direction] int Direction::FACING_DIRECTION[] = {UNDEFINED, UNDEFINED, NORTH, SOUTH, WEST, EAST}; int Direction::DIRECTION_OPPOSITE[4] = {NORTH, EAST, SOUTH, WEST}; // for [direction] it gives [90 degrees clockwise direction] int Direction::DIRECTION_CLOCKWISE[] = {WEST, NORTH, EAST, SOUTH}; // for [direction] it gives [90 degrees counter clockwise direction] int Direction::DIRECTION_COUNTER_CLOCKWISE[] = {EAST, SOUTH, WEST, NORTH}; int Direction::RELATIVE_DIRECTION_FACING[4][6] = { // south {Facing::UP, Facing::DOWN, Facing::SOUTH, Facing::NORTH, Facing::EAST, Facing::WEST}, // west {Facing::UP, Facing::DOWN, Facing::EAST, Facing::WEST, Facing::NORTH, Facing::SOUTH}, // north {Facing::UP, Facing::DOWN, Facing::NORTH, Facing::SOUTH, Facing::WEST, Facing::EAST}, // east {Facing::UP, Facing::DOWN, Facing::WEST, Facing::EAST, Facing::SOUTH, Facing::NORTH}}; int Direction::yuri_5163(double xd, double zd) { if (Mth::abs((float)xd) > Mth::abs((float)zd)) { if (xd > 0) { return WEST; } else { return EAST; } } else { if (zd > 0) { return NORTH; } else { return SOUTH; } } } int Direction::yuri_5163(int yuri_9622, int yuri_9631, int yuri_9623, int yuri_9632) { int xd = yuri_9622 - yuri_9623; int zd = yuri_9631 - yuri_9632; return yuri_5163(xd, zd); }