public Vector3[] createP3Tile(string tileType, Vector3 ver1, Vector3 ver2, Vector3 ver3, Vector3 ver4, float tileRotation, int tileMatchingEdge) { GameObject nonMirror = new GameObject(); GameObject mirror = new GameObject(); nonMirror.SetActive(false); mirror.SetActive(false); if (tileType == "red") { nonMirror.name = "topThin"; mirror.name = "bottomThin"; redTile topTriangle = nonMirror.AddComponent <redTile>(); redTile botTriangle = mirror.AddComponent <redTile>(); topTriangle.Init(ver1, ver2, ver3, true, redTile.redTag); topTriangle.tileRotation = tileRotation; topTriangle.matchingCase = tileMatchingEdge; redTile.redTag++; botTriangle.Init(ver2, ver1, ver4, false, redTile.redTag); botTriangle.tileRotation = tileRotation; botTriangle.matchingCase = tileMatchingEdge; redTile.redTag++; } else if (tileType == "blue") { nonMirror.name = "leftThick"; mirror.name = "rightThick"; blueTile leftTriangle = nonMirror.AddComponent <blueTile>(); blueTile rightTriangle = mirror.AddComponent <blueTile>(); leftTriangle.Init(ver1, ver2, ver3, true, blueTile.blueTag); leftTriangle.tileRotation = tileRotation; leftTriangle.matchingCase = tileMatchingEdge; blueTile.blueTag++; rightTriangle.Init(ver2, ver1, ver4, false, blueTile.blueTag); rightTriangle.tileRotation = tileRotation; rightTriangle.matchingCase = tileMatchingEdge; blueTile.blueTag++; } nonMirror.SetActive(true); mirror.SetActive(true); return(new Vector3[] { ver1, ver3, ver2, ver4 }); }
protected Vector3[] createP3Tile(string tileType, Vector3 clickPos) { Vector3 ver1 = new Vector3(); Vector3 ver2 = new Vector3(); Vector3 ver3 = new Vector3(); Vector3 rotatedVer1 = new Vector3(); Vector3 rotatedVer2 = new Vector3(); Vector3 rotatedVer3 = new Vector3(); Vector3 rotatedVer4 = new Vector3(); GameObject nonMirror = new GameObject(); GameObject mirror = new GameObject(); nonMirror.SetActive(false); mirror.SetActive(false); if (tileType == "red") { nonMirror.name = "topThin"; mirror.name = "bottomThin"; redTile topTriangle = nonMirror.AddComponent <redTile>(); redTile botTriangle = mirror.AddComponent <redTile>(); ver1 = clickPos + new Vector3(-0.5f * helperFunctionsClass.redBase, 0); ver2 = clickPos + new Vector3(0.5f * helperFunctionsClass.redBase, 0); ver3 = clickPos + new Vector3(0, helperFunctionsClass.redHieght); rotatedVer4 = helperFunctionsClass.rotatedVector(clickPos, ver3, 180f); rotatedVer1 = ver1; rotatedVer2 = ver2; rotatedVer3 = ver3; topTriangle.Init(rotatedVer1, rotatedVer2, rotatedVer3, true, redTile.redTag); topTriangle.tileRotation = -288; topTriangle.matchingCase = 5; redTile.redTag++; botTriangle.Init(rotatedVer2, rotatedVer1, rotatedVer4, false, redTile.redTag); topTriangle.tileRotation = -288; botTriangle.matchingCase = 5; redTile.redTag++; } else if (tileType == "blue") { nonMirror.name = "leftThick"; mirror.name = "rightThick"; blueTile leftTriangle = nonMirror.AddComponent <blueTile>(); blueTile rightTriangle = mirror.AddComponent <blueTile>(); ver1 = clickPos + new Vector3(-(0.5f * helperFunctionsClass.blueBase), 0); ver2 = clickPos + new Vector3((0.5f * helperFunctionsClass.blueBase), 0); ver3 = clickPos + new Vector3(0, helperFunctionsClass.blueHeight); rotatedVer1 = helperFunctionsClass.rotatedVector(clickPos, ver1, 90f); rotatedVer2 = helperFunctionsClass.rotatedVector(clickPos, ver2, 90f); rotatedVer3 = helperFunctionsClass.rotatedVector(clickPos, ver3, 90f); rotatedVer4 = helperFunctionsClass.rotatedVector(clickPos, ver3, -90f); leftTriangle.Init(rotatedVer1, rotatedVer2, rotatedVer3, true, blueTile.blueTag); leftTriangle.tileRotation = -270; leftTriangle.matchingCase = 5; blueTile.blueTag++; rightTriangle.Init(rotatedVer2, rotatedVer1, rotatedVer4, false, blueTile.blueTag); rightTriangle.tileRotation = -270; rightTriangle.matchingCase = 5; blueTile.blueTag++; } nonMirror.SetActive(true); mirror.SetActive(true); return(new Vector3[] { rotatedVer1, rotatedVer3, rotatedVer2, rotatedVer4 }); }
protected Vector3[] createP2Tile(string tileType, Vector3 clickPos) { Vector3 ver1 = new Vector3(); Vector3 ver2 = new Vector3(); Vector3 ver3 = new Vector3(); Vector3 rotatedVer1 = new Vector3(); Vector3 rotatedVer2 = new Vector3(); Vector3 rotatedVer3 = new Vector3(); Vector3 rotatedVer4 = new Vector3(); GameObject nonMirror = new GameObject(); GameObject mirror = new GameObject(); nonMirror.SetActive(false); mirror.SetActive(false); if (tileType == "red") { nonMirror.name = "rightKite"; mirror.name = "leftKite"; redTile rightTriangle = nonMirror.AddComponent <redTile>(); redTile leftTriangle = mirror.AddComponent <redTile>(); ver1 = clickPos + new Vector3(-(0.5f * helperFunctionsClass.redBase), -helperFunctionsClass.redHieght); ver2 = clickPos + new Vector3((0.5f * helperFunctionsClass.redBase), -helperFunctionsClass.redHieght); ver3 = clickPos; rotatedVer1 = helperFunctionsClass.rotatedVector(clickPos, ver1, 18); rotatedVer2 = helperFunctionsClass.rotatedVector(clickPos, ver2, 18); rotatedVer3 = helperFunctionsClass.rotatedVector(clickPos, ver3, 18); rotatedVer4 = helperFunctionsClass.rotatedVector(clickPos, ver1, -18); rightTriangle.Init(rotatedVer1, rotatedVer2, rotatedVer3, false, redTile.redTag); redTile.redTag++; leftTriangle.Init(rotatedVer4, rotatedVer1, rotatedVer3, true, redTile.redTag); redTile.redTag++; } else if (tileType == "blue") { nonMirror.name = "leftDart"; mirror.name = "rightDart"; blueTile leftTriangle = nonMirror.AddComponent <blueTile>(); blueTile rightTriangle = mirror.AddComponent <blueTile>(); ver1 = clickPos + new Vector3(-(0.5f * helperFunctionsClass.blueBase), -helperFunctionsClass.blueHeight); ver2 = clickPos + new Vector3((0.5f * helperFunctionsClass.blueBase), -helperFunctionsClass.blueHeight); ver3 = clickPos; rotatedVer1 = helperFunctionsClass.rotatedVector(clickPos, ver1, 126); rotatedVer2 = helperFunctionsClass.rotatedVector(clickPos, ver2, 126); rotatedVer3 = helperFunctionsClass.rotatedVector(clickPos, ver3, 126); rotatedVer4 = helperFunctionsClass.rotatedVector(clickPos, ver2, -126); leftTriangle.Init(rotatedVer2, rotatedVer4, rotatedVer3, false, blueTile.blueTag); blueTile.blueTag++; rightTriangle.Init(rotatedVer1, rotatedVer2, rotatedVer3, true, blueTile.blueTag); blueTile.blueTag++; } nonMirror.SetActive(true); mirror.SetActive(true); return(new Vector3[] { rotatedVer1, rotatedVer3, rotatedVer2, rotatedVer4 }); }