Commit d2a1dfc0 authored by santiaago's avatar santiaago
Browse files

clean up triangleId

parent 7aede8c7
Loading
Loading
Loading
Loading
+71 −94
Original line number Diff line number Diff line
@@ -436,7 +436,8 @@ func isInTriangleR(id, xL, yL int) bool {

func triangleId(x, y, direction int) int {

	t1 := [][]int{
	triangles := [][]trianglePosition{
		[]trianglePosition{
			{0, 1, right},
			{0, 2, right},
			{0, 3, right},
@@ -446,8 +447,8 @@ func triangleId(x, y, direction int) int {
			{1, 3, right},
			{1, 2, left},
			{2, 2, right},
	}
	t2 := [][]int{
		},
		[]trianglePosition{
			{0, 1, left},
			{1, 1, right},
			{1, 0, left},
@@ -457,8 +458,7 @@ func triangleId(x, y, direction int) int {
			{2, 0, left},
			{2, 1, left},
			{2, 2, left},
	}
	t3 := [][]int{
		}, []trianglePosition{
			{3, 0, right},
			{3, 1, right},
			{3, 2, right},
@@ -468,8 +468,8 @@ func triangleId(x, y, direction int) int {
			{4, 1, right},
			{4, 1, left},
			{5, 1, right},
	}
	t4 := [][]int{
		},
		[]trianglePosition{
			{3, 2, left},
			{4, 2, right},
			{4, 2, left},
@@ -479,8 +479,8 @@ func triangleId(x, y, direction int) int {
			{5, 1, left},
			{5, 2, left},
			{5, 3, left},
	}
	t5 := [][]int{
		},
		[]trianglePosition{
			{3, 3, right},
			{3, 4, right},
			{3, 5, right},
@@ -490,8 +490,8 @@ func triangleId(x, y, direction int) int {
			{4, 4, right},
			{4, 4, left},
			{5, 4, right},
	}
	t6 := [][]int{
		},
		[]trianglePosition{
			{0, 4, left},
			{1, 4, right},
			{1, 3, left},
@@ -501,37 +501,14 @@ func triangleId(x, y, direction int) int {
			{2, 3, left},
			{2, 4, left},
			{2, 5, left},
		},
	}

	for _, p := range t1 {
		if p[0] == x && p[1] == y && (direction == p[2]) {
			return 0
		}
	}
	for _, p := range t2 {
		if p[0] == x && p[1] == y && (direction == p[2]) {
			return 1
		}
	}
	for _, p := range t3 {
		if p[0] == x && p[1] == y && (direction == p[2]) {
			return 2
		}
	}
	for _, p := range t4 {
		if p[0] == x && p[1] == y && (direction == p[2]) {
			return 3
		}
	}
	for _, p := range t5 {
		if p[0] == x && p[1] == y && (direction == p[2]) {
			return 4
		}
	for i, t := range triangles {
		for _, ti := range t {
			if ti.x == x && ti.y == y && (direction == ti.direction) {
				return i
			}

	for _, p := range t6 {
		if p[0] == x && p[1] == y && (direction == p[2]) {
			return 5
		}
	}