# Puzzle_D()
Version from 8 Nov 2025
```cs
using System.Collections;
using System.Collections.Generic;
using TMPro;
using UnityEngine.UI;
using UnityEngine;
using System.Linq;
public class Puzzle_D : MonoBehaviour
{
// UI
public TMP_InputField nameInputField;
public string nextSceneName;
public GameObject d_Atlas; // the plankton on the scene
public JsonObj_Atlas atlasJsonScript;
// To deactivate buttons during the victory animation,
// and to assign OnButtonClicked method
public List<Button> colorantButtonsList;
private bool[] buttonPairFlags = new bool[7]; // to check if all pairs were clicked
// JUST FOR Atlas D
// Specifically for this atlas to de/activate pointers for patterns
public List<GameObject> pointersList;
// A list of bools for each button in the atlas.
// To check if colours match the correct palette
private bool[] buttonFlagsList = new bool[14];
public PD_TemperatureContr termometerScript;
private Victory victoryScript; // To access atlasCorrect bool (the victory condition)
private void Start()
{
victoryScript = gameObject.GetComponent<Victory>(); // to get access to atlasCorrect bool in CheckVictory();
victoryScript.atlasCorrect = false; // restarts the win-condition
}
void Update()
{
CheckOrgansColour();
CheckVictory();
}
private void CheckVictory()
{
if (buttonPairFlags.All(flag => flag)) // All coloured?
{
int warmArea = termometerScript.warmArea;
int coolArea = termometerScript.coolArea;
if (warmArea > coolArea)
{
victoryScript.atlasCorrect = true;
foreach (Button item in colorantButtonsList)
item.interactable = false;
}
}
}
public void OnButtonClicked(int index)
{
// To check if the atlas is fully coloured
int pairIndex = index / 2;
buttonPairFlags[pairIndex] = true;
// To calculated the index of the button that was just pressed
int pairedIndex = (index % 2 == 0) ? index + 1 : index - 1;
// Switch the activity of buttons in the pair
colorantButtonsList[index].interactable = false;
colorantButtonsList[pairedIndex].interactable = true;
switch (index)
{
case 0:
buttonFlagsList[0] = true; // Sends to the CheckPalettes that button 0 is true;
buttonFlagsList[1] = false; // Sends to the CheckPalettes that button 1 is false;
//Sends data to Json
// Care (0)
atlasJsonScript.colourCodes[0] = 0; // Body_1
atlasJsonScript.colourCodes[13] = 0; // Pattern 1_III
atlasJsonScript.colourCodes[15] = 0; // Pattern 1_IV
atlasJsonScript.colourCodes[17] = 0; // Pattern 1_V
atlasJsonScript.colourCodes[24] = 0; // Caviar_1
break;
case 1:
buttonFlagsList[0] = false;
buttonFlagsList[1] = true;
// Boredom (4)
atlasJsonScript.colourCodes[0] = 4; // Body_1
atlasJsonScript.colourCodes[13] = 4; // Pattern 1_III
atlasJsonScript.colourCodes[15] = 4; // Pattern 1_IV
atlasJsonScript.colourCodes[17] = 4; // Pattern 1_V
atlasJsonScript.colourCodes[24] = 4; // Caviar_1
break;
case 2:
buttonFlagsList[2] = true;
buttonFlagsList[3] = false;
// Dwelling (3)
atlasJsonScript.colourCodes[1] = 4; // Body_2
atlasJsonScript.colourCodes[7] = 4; // Pattern 2_I
atlasJsonScript.colourCodes[9] = 4; // Pattern 2_II
atlasJsonScript.colourCodes[11] = 4; // Pattern 2_III
atlasJsonScript.colourCodes[25] = 4; // Caviar_2
break;
case 3:
buttonFlagsList[2] = false;
buttonFlagsList[3] = true;
// Uncanny (5)
atlasJsonScript.colourCodes[1] = 5; // Body_2
atlasJsonScript.colourCodes[7] = 5; // Pattern 2_I
atlasJsonScript.colourCodes[9] = 5; // Pattern 2_II
atlasJsonScript.colourCodes[11] = 5; // Pattern 2_III
atlasJsonScript.colourCodes[25] = 5; // Caviar_2
break;
case 4:
buttonFlagsList[4] = true;
buttonFlagsList[5] = false;
// Harmony (1)
atlasJsonScript.colourCodes[2] = 1; // Body_3
atlasJsonScript.colourCodes[8] = 1; // Pattern 3_I
atlasJsonScript.colourCodes[10] = 1; // Pattern 3_II
atlasJsonScript.colourCodes[12] = 1; // Pattern 3_III
atlasJsonScript.colourCodes[26] = 1; // Caviar_3
break;
case 5:
buttonFlagsList[4] = false;
buttonFlagsList[5] = true;
// Care (0)
atlasJsonScript.colourCodes[2] = 0; // Body_3
atlasJsonScript.colourCodes[8] = 0; // Pattern 3_I
atlasJsonScript.colourCodes[10] = 0; // Pattern 3_II
atlasJsonScript.colourCodes[12] = 0; // Pattern 3_III
atlasJsonScript.colourCodes[26] = 0; // Caviar_3
break;
case 6:
buttonFlagsList[6] = true;
buttonFlagsList[7] = false;
// Finitude (6)
atlasJsonScript.colourCodes[3] = 6; // Body_4
atlasJsonScript.colourCodes[14] = 6; // Pattern 4_III
atlasJsonScript.colourCodes[16] = 6; // Pattern 4_IV
atlasJsonScript.colourCodes[18] = 6; // Pattern 4_V
atlasJsonScript.colourCodes[27] = 6; // Caviar_4
break;
case 7:
buttonFlagsList[6] = false;
buttonFlagsList[7] = true;
// Everydayness (9)
atlasJsonScript.colourCodes[3] = 9; // Body_4
atlasJsonScript.colourCodes[14] = 9; // Pattern 4_III
atlasJsonScript.colourCodes[16] = 9; // Pattern 4_IV
atlasJsonScript.colourCodes[18] = 9; // Pattern 4_V
atlasJsonScript.colourCodes[27] = 9; // Caviar_4
break;
case 8:
buttonFlagsList[8] = true;
buttonFlagsList[9] = false;
// Everydayness (4)
atlasJsonScript.colourCodes[4] = 4; // Body_5
atlasJsonScript.colourCodes[19] = 4; // Pattern 5_V
atlasJsonScript.colourCodes[20] = 4; // Pattern 5_VI
atlasJsonScript.colourCodes[21] = 4; // Pattern 5_VII
atlasJsonScript.colourCodes[22] = 4; // Pattern 5_VIII
atlasJsonScript.colourCodes[28] = 4; // Caviar_5
break;
case 9:
buttonFlagsList[8] = false;
buttonFlagsList[9] = true;
// Questioning (8)
atlasJsonScript.colourCodes[4] = 8; // Body_5
atlasJsonScript.colourCodes[19] = 8; // Pattern 5_V
atlasJsonScript.colourCodes[20] = 8; // Pattern 5_VI
atlasJsonScript.colourCodes[21] = 8; // Pattern 5_VII
atlasJsonScript.colourCodes[22] = 8; // Pattern 5_VIII
atlasJsonScript.colourCodes[27] = 8; // Caviar_5
break;
case 10:
buttonFlagsList[10] = true;
buttonFlagsList[11] = false;
// Uncanny (5)
atlasJsonScript.colourCodes[5] = 5; // Body_6
atlasJsonScript.colourCodes[28] = 5; // Caviar_6
break;
case 11:
buttonFlagsList[10] = false;
buttonFlagsList[11] = true;
// Togetherness (2)
atlasJsonScript.colourCodes[5] = 2; // Body_6
atlasJsonScript.colourCodes[28] = 2; // Caviar_6
break;
case 12:
buttonFlagsList[12] = true;
buttonFlagsList[13] = false;
// Presence (7)
atlasJsonScript.colourCodes[6] = 7; // Body_7
atlasJsonScript.colourCodes[29] = 7; // Caviar_7
break;
case 13:
buttonFlagsList[12] = false;
buttonFlagsList[13] = true;
// Finitude (6)
atlasJsonScript.colourCodes[6] = 6; // Body_7
atlasJsonScript.colourCodes[29] = 6; // Caviar_7
break;
}
}
// PATTERN'S COLOUR LOGIC
// NB!
// Button's indicators =/= Colorants' indicators =/= Json slices indicators =/= Pointers' list indicators =/= Organs' numbers
// But Colorant's indicators == Json ColorCodes == OnBtnColor indexes
void CheckOrgansColour()
{
// ORGAN 3 (under I, II, III body slices)
// 3 at I.1 (Harmony + Finitude = Presence (7))
if (buttonFlagsList[4] && buttonFlagsList[6])
{
GameObject organSlice = GameObject.Find("Plankton/Patterns/Organ_3_I");
organSlice.GetComponent<ColorantManager>().OnBtnColor7();
pointersList[0].SetActive(true);
pointersList[0].GetComponentInChildren<ColorantManager>().OnBtnColor7();
atlasJsonScript.colourCodes[8] = 7; // Pattern 3_I
}
// 3 at I.1 (Harmony + Everydayness = Dwelling (3))
if (buttonFlagsList[4] && buttonFlagsList[7])
{
GameObject organSlice = GameObject.Find("Plankton/Patterns/Organ_3_I");
organSlice.GetComponent<ColorantManager>().OnBtnColor3();
pointersList[0].SetActive(true);
pointersList[0].GetComponentInChildren<ColorantManager>().OnBtnColor3();
atlasJsonScript.colourCodes[8] = 3;
}
// 3 at I.2 (Care + Finitude = Finitude (6))
if (buttonFlagsList[5] && buttonFlagsList[6])
{
GameObject organSlice = GameObject.Find("Plankton/Patterns/Organ_3_I");
organSlice.GetComponent<ColorantManager>().OnBtnColor6();
pointersList[0].SetActive(true);
pointersList[0].GetComponentInChildren<ColorantManager>().OnBtnColor6();
atlasJsonScript.colourCodes[8] = 6;
}
// 3 at I.2 (Care + Everydayness = Care (0))
if (buttonFlagsList[5] && buttonFlagsList[7])
{
GameObject organSlice = GameObject.Find("Plankton/Patterns/Organ_3_I");
organSlice.GetComponent<ColorantManager>().OnBtnColor0();
pointersList[0].SetActive(true);
pointersList[0].GetComponentInChildren<ColorantManager>().OnBtnColor0();
atlasJsonScript.colourCodes[8] = 0;
}
// 3 at II.1 (Harmony + Boredom = Presence (7))
// 5 at V.1
if (buttonFlagsList[4] && buttonFlagsList[8])
{
GameObject organSlice = GameObject.Find("Plankton/Patterns/Organ_3_II");
organSlice.GetComponent<ColorantManager>().OnBtnColor7();
GameObject organSlice2 = GameObject.Find("Plankton/Patterns/Organ_5_V");
organSlice2.GetComponent<ColorantManager>().OnBtnColor7();
pointersList[12].SetActive(true);
pointersList[12].GetComponentInChildren<ColorantManager>().OnBtnColor7();
pointersList[2].SetActive(true);
pointersList[2].GetComponentInChildren<ColorantManager>().OnBtnColor7();
atlasJsonScript.colourCodes[10] = 7; // Pattern 3_II
atlasJsonScript.colourCodes[19] = 7; // Pattern 5_V
}
// 3 at II.1 (Harmony + Questioning = Finitude (6))
// 5 at V.2
if (buttonFlagsList[4] && buttonFlagsList[9])
{
GameObject organSlice = GameObject.Find("Plankton/Patterns/Organ_3_II");
organSlice.GetComponent<ColorantManager>().OnBtnColor6();
GameObject organSlice2 = GameObject.Find("Plankton/Patterns/Organ_5_V");
organSlice2.GetComponent<ColorantManager>().OnBtnColor6();
pointersList[12].SetActive(true);
pointersList[12].GetComponentInChildren<ColorantManager>().OnBtnColor6();
pointersList[2].SetActive(true);
pointersList[2].GetComponentInChildren<ColorantManager>().OnBtnColor6();
atlasJsonScript.colourCodes[10] = 6;
atlasJsonScript.colourCodes[19] = 6; // Pattern 5_V
}
// 3 at II.2 (Care + Boredom = Dwelling (3))
// 5 at V.1
if (buttonFlagsList[5] && buttonFlagsList[8])
{
GameObject organSlice = GameObject.Find("Plankton/Patterns/Organ_3_II");
organSlice.GetComponent<ColorantManager>().OnBtnColor3();
GameObject organSlice2 = GameObject.Find("Plankton/Patterns/Organ_5_V");
organSlice2.GetComponent<ColorantManager>().OnBtnColor3();
pointersList[12].SetActive(true);
pointersList[12].GetComponentInChildren<ColorantManager>().OnBtnColor3();
pointersList[2].SetActive(true);
pointersList[2].GetComponentInChildren<ColorantManager>().OnBtnColor3();
atlasJsonScript.colourCodes[10] = 3;
atlasJsonScript.colourCodes[19] = 3; // Pattern 5_V
}
// 3 at II.2 (Care + Questioning = Questioning (9))
// 5 at V.2
if (buttonFlagsList[5] && buttonFlagsList[9])
{
GameObject organSlice = GameObject.Find("Plankton/Patterns/Organ_3_II");
organSlice.GetComponent<ColorantManager>().OnBtnColor9();
GameObject organSlice2 = GameObject.Find("Plankton/Patterns/Organ_5_V");
organSlice2.GetComponent<ColorantManager>().OnBtnColor9();
pointersList[12].SetActive(true);
pointersList[12].GetComponentInChildren<ColorantManager>().OnBtnColor9();
pointersList[2].SetActive(true);
pointersList[2].GetComponentInChildren<ColorantManager>().OnBtnColor9();
atlasJsonScript.colourCodes[10] = 9;
atlasJsonScript.colourCodes[19] = 9; // Pattern 5_V
}
// 3 at III.1 (Harmony + Presence = Questioning (8))
if (buttonFlagsList[4] && buttonFlagsList[12])
{
GameObject organSlice = GameObject.Find("Plankton/Patterns/Organ_3_III");
organSlice.GetComponent<ColorantManager>().OnBtnColor8();
pointersList[4].SetActive(true);
pointersList[4].GetComponentInChildren<ColorantManager>().OnBtnColor8();
atlasJsonScript.colourCodes[12] = 8;
}
// 3 at III.1 (Harmony + Finitude = Presence (7))
if (buttonFlagsList[4] && buttonFlagsList[13])
{
GameObject organSlice = GameObject.Find("Plankton/Patterns/Organ_3_III");
organSlice.GetComponent<ColorantManager>().OnBtnColor7();
pointersList[4].SetActive(true);
pointersList[4].GetComponentInChildren<ColorantManager>().OnBtnColor7();
atlasJsonScript.colourCodes[12] = 7;
}
// 3 at III.2 (Care + Presence = Harmony (1))
if (buttonFlagsList[5] && buttonFlagsList[12])
{
GameObject organSlice = GameObject.Find("Plankton/Patterns/Organ_3_III");
organSlice.GetComponent<ColorantManager>().OnBtnColor1();
pointersList[4].SetActive(true);
pointersList[4].GetComponentInChildren<ColorantManager>().OnBtnColor1();
atlasJsonScript.colourCodes[12] = 1;
}
// 3 at III.2 (Care + Finitude = Finitude (6))
if (buttonFlagsList[5] && buttonFlagsList[13])
{
GameObject organSlice = GameObject.Find("Plankton/Patterns/Organ_3_III");
organSlice.GetComponent<ColorantManager>().OnBtnColor6();
pointersList[4].SetActive(true);
pointersList[4].GetComponentInChildren<ColorantManager>().OnBtnColor6();
atlasJsonScript.colourCodes[12] = 6;
}
// ORGAN 2 (under I, II, III body slices)
// 2 at I.1 (Dwelling + Finitude = Uncanny (5))
// 4 at IV.1 (-,,-)
if (buttonFlagsList[2] && buttonFlagsList[6])
{
GameObject organSlice = GameObject.Find("Plankton/Patterns/Organ_2_I");
organSlice.GetComponent<ColorantManager>().OnBtnColor5();
GameObject organSlice2 = GameObject.Find("Plankton/Patterns/Organ_4_IV");
organSlice2.GetComponent<ColorantManager>().OnBtnColor5();
pointersList[1].SetActive(true);
pointersList[1].GetComponentInChildren<ColorantManager>().OnBtnColor5();
pointersList[9].SetActive(true);
pointersList[9].GetComponentInChildren<ColorantManager>().OnBtnColor5();
atlasJsonScript.colourCodes[16] = 5; // Pattern 4_IV
atlasJsonScript.colourCodes[7] = 5; // Pattern 2_I
}
// 2 at I.1 (Dwelling + Everydayness = Care(0))
// 4 at IV.2
if (buttonFlagsList[2] && buttonFlagsList[7])
{
GameObject organSlice = GameObject.Find("Plankton/Patterns/Organ_2_I");
organSlice.GetComponent<ColorantManager>().OnBtnColor0();
GameObject organSlice2 = GameObject.Find("Plankton/Patterns/Organ_4_IV");
organSlice2.GetComponent<ColorantManager>().OnBtnColor0();
pointersList[1].SetActive(true);
pointersList[1].GetComponentInChildren<ColorantManager>().OnBtnColor0();
pointersList[9].SetActive(true);
pointersList[9].GetComponentInChildren<ColorantManager>().OnBtnColor0();
atlasJsonScript.colourCodes[16] = 0; // Pattern 4_IV
atlasJsonScript.colourCodes[7] = 0;
}
// 2 at I.2 (Uncanny + Finitude = Boredom (4))
// 4 at IV.2
if (buttonFlagsList[3] && buttonFlagsList[6])
{
GameObject organSlice = GameObject.Find("Plankton/Patterns/Organ_2_I");
organSlice.GetComponent<ColorantManager>().OnBtnColor4();
GameObject organSlice2 = GameObject.Find("Plankton/Patterns/Organ_4_IV");
organSlice2.GetComponent<ColorantManager>().OnBtnColor4();
pointersList[1].SetActive(true);
pointersList[1].GetComponentInChildren<ColorantManager>().OnBtnColor4();
pointersList[9].SetActive(true);
pointersList[9].GetComponentInChildren<ColorantManager>().OnBtnColor4();
atlasJsonScript.colourCodes[16] = 4; // Pattern 4_IV
atlasJsonScript.colourCodes[7] = 4;
}
// 2 at I.2 (Uncanny + Everydayness = Qustng (8))
// 4 at IV.1 (-,,-)
if (buttonFlagsList[3] && buttonFlagsList[7])
{
GameObject organSlice = GameObject.Find("Plankton/Patterns/Organ_2_I");
organSlice.GetComponent<ColorantManager>().OnBtnColor8();
GameObject organSlice2 = GameObject.Find("Plankton/Patterns/Organ_4_IV");
organSlice2.GetComponent<ColorantManager>().OnBtnColor8();
pointersList[1].SetActive(true);
pointersList[1].GetComponentInChildren<ColorantManager>().OnBtnColor8();
pointersList[9].SetActive(true);
pointersList[9].GetComponentInChildren<ColorantManager>().OnBtnColor8();
atlasJsonScript.colourCodes[16] = 8; // Pattern 4_IV
atlasJsonScript.colourCodes[7] = 8;
}
// 2 at II.1 (Dwelling + Boredom = Presence (7))
if (buttonFlagsList[2] && buttonFlagsList[8])
{
GameObject organSlice = GameObject.Find("Plankton/Patterns/Organ_2_II");
organSlice.GetComponent<ColorantManager>().OnBtnColor7();
pointersList[3].SetActive(true);
pointersList[3].GetComponentInChildren<ColorantManager>().OnBtnColor7();
atlasJsonScript.colourCodes[9] = 7; // Pattern 2_II
}
// 2 at II.1 (Dwelling + Qstnng = Harmony (1))
if (buttonFlagsList[2] && buttonFlagsList[9])
{
GameObject organSlice = GameObject.Find("Plankton/Patterns/Organ_2_II");
organSlice.GetComponent<ColorantManager>().OnBtnColor1();
pointersList[3].SetActive(true);
pointersList[3].GetComponentInChildren<ColorantManager>().OnBtnColor1();
atlasJsonScript.colourCodes[9] = 1; // Pattern 2_II
}
// 2 at II.2 (Uncanny + Boredom = Uncanny (5))
if (buttonFlagsList[3] && buttonFlagsList[8])
{
GameObject organSlice = GameObject.Find("Plankton/Patterns/Organ_2_II");
organSlice.GetComponent<ColorantManager>().OnBtnColor5();
pointersList[3].SetActive(true);
pointersList[3].GetComponentInChildren<ColorantManager>().OnBtnColor5();
atlasJsonScript.colourCodes[9] = 5; // Pattern 2_II
}
// 2 at II.2 (Uncanny + Questioning = Questioning (8))
if (buttonFlagsList[3] && buttonFlagsList[9])
{
GameObject organSlice = GameObject.Find("Plankton/Patterns/Organ_2_II");
organSlice.GetComponent<ColorantManager>().OnBtnColor8();
pointersList[3].SetActive(true);
pointersList[3].GetComponentInChildren<ColorantManager>().OnBtnColor8();
atlasJsonScript.colourCodes[9] = 8; // Pattern 2_II
}
// 2 at III.1 (Dwelling + Presence = Presence (7))
if (buttonFlagsList[2] && buttonFlagsList[12])
{
GameObject organSlice = GameObject.Find("Plankton/Patterns/Organ_2_III");
organSlice.GetComponent<ColorantManager>().OnBtnColor7();
pointersList[5].SetActive(true);
pointersList[5].GetComponentInChildren<ColorantManager>().OnBtnColor7();
atlasJsonScript.colourCodes[11] = 7; // Pattern 2_III
}
// 2 at III.1 (Dwelling + Finitude = Uncanny (5))
if (buttonFlagsList[2] && buttonFlagsList[13])
{
GameObject organSlice = GameObject.Find("Plankton/Patterns/Organ_2_III");
organSlice.GetComponent<ColorantManager>().OnBtnColor5();
pointersList[5].SetActive(true);
pointersList[5].GetComponentInChildren<ColorantManager>().OnBtnColor5();
atlasJsonScript.colourCodes[11] = 5; // Pattern 2_III
}
// 2 at III.2 (Uncanny + Presence = Care (0))
if (buttonFlagsList[3] && buttonFlagsList[12])
{
GameObject organSlice = GameObject.Find("Plankton/Patterns/Organ_2_III");
organSlice.GetComponent<ColorantManager>().OnBtnColor0();
pointersList[5].SetActive(true);
pointersList[5].GetComponentInChildren<ColorantManager>().OnBtnColor0();
atlasJsonScript.colourCodes[11] = 0; // Pattern 2_III
}
// 2 at III.2 (Uncanny + Finitude = Boredom (4))
if (buttonFlagsList[3] && buttonFlagsList[13])
{
GameObject organSlice = GameObject.Find("Plankton/Patterns/Organ_2_III");
organSlice.GetComponent<ColorantManager>().OnBtnColor4();
pointersList[5].SetActive(true);
pointersList[5].GetComponentInChildren<ColorantManager>().OnBtnColor4();
atlasJsonScript.colourCodes[11] = 4; // Pattern 2_III
}
// ORGAN 1 (under III, IV, V body slices)
// 1 at III.1 (Care + Presence = Harmony (1))
if (buttonFlagsList[0] && buttonFlagsList[12])
{
GameObject organSlice = GameObject.Find("Plankton/Patterns/Organ_1_III");
organSlice.GetComponent<ColorantManager>().OnBtnColor1(); // Changes the colour of a pattern
pointersList[6].SetActive(true); // Activate pointer by index in the list of pointers
pointersList[6].GetComponentInChildren<ColorantManager>().OnBtnColor1();
atlasJsonScript.colourCodes[13] = 1; // Pattern 1_III
}
// 1 at III.1 (Care + Finitude = Finitude (6))
if (buttonFlagsList[0] && buttonFlagsList[13])
{
GameObject organSlice = GameObject.Find("Plankton/Patterns/Organ_1_III");
organSlice.GetComponent<ColorantManager>().OnBtnColor6(); // Changes the colour of a pattern
pointersList[6].SetActive(true); // Activate pointer by index in the list of pointers
pointersList[6].GetComponentInChildren<ColorantManager>().OnBtnColor6();
atlasJsonScript.colourCodes[13] = 6; // Pattern 1_III
}
// 1 at III.2 (Boredom + Presence = Questioning (8))
if (buttonFlagsList[1] && buttonFlagsList[12])
{
GameObject organSlice = GameObject.Find("Plankton/Patterns/Organ_1_III");
organSlice.GetComponent<ColorantManager>().OnBtnColor8();
pointersList[6].SetActive(true);
pointersList[6].GetComponentInChildren<ColorantManager>().OnBtnColor8();
atlasJsonScript.colourCodes[13] = 8; // Pattern 1_III
}
// 1 at III.2 (Boredom + Finitude = Dwelling (3))
if (buttonFlagsList[1] && buttonFlagsList[13])
{
GameObject organSlice = GameObject.Find("Plankton/Patterns/Organ_1_III");
organSlice.GetComponent<ColorantManager>().OnBtnColor3(); // Changes the colour of a pattern
pointersList[6].SetActive(true); // Activate pointer by index in the list of pointers
pointersList[6].GetComponentInChildren<ColorantManager>().OnBtnColor3(); // Find in pointer's children "Indicator". Set it to needed colour
atlasJsonScript.colourCodes[13] = 3; // Pattern 1_III
}
// 1 at IV.1 (Care + Dwelling = Everydayness (9))
if (buttonFlagsList[0] && buttonFlagsList[2])
{
GameObject organSlice = GameObject.Find("Plankton/Patterns/Organ_1_IV");
organSlice.GetComponent<ColorantManager>().OnBtnColor9(); // Changes the colour of a pattern
pointersList[8].SetActive(true); // Activate pointer by index in the list of pointers
pointersList[8].GetComponentInChildren<ColorantManager>().OnBtnColor9(); // Find in pointer's children "Indicator". Set it to needed colour
atlasJsonScript.colourCodes[15] = 9; // Pattern 1_IV
}
// 1 at IV.1 (Care + Uncanny = Togetherness (2))
if (buttonFlagsList[0] && buttonFlagsList[3])
{
GameObject organSlice = GameObject.Find("Plankton/Patterns/Organ_1_IV");
organSlice.GetComponent<ColorantManager>().OnBtnColor2();
pointersList[8].SetActive(true);
pointersList[8].GetComponentInChildren<ColorantManager>().OnBtnColor2();
atlasJsonScript.colourCodes[15] = 2; // Pattern 1_IV
}
// 1 at IV.2 (Boredom + Dwelling = Presence (7))
if (buttonFlagsList[1] && buttonFlagsList[2])
{
GameObject organSlice = GameObject.Find("Plankton/Patterns/Organ_1_IV");
organSlice.GetComponent<ColorantManager>().OnBtnColor7();
pointersList[8].SetActive(true);
pointersList[8].GetComponentInChildren<ColorantManager>().OnBtnColor7();
atlasJsonScript.colourCodes[15] = 7; // Pattern 1_IV
}
// 1 at IV.2 (Boredom + Uncanny = Uncanny (5))
if (buttonFlagsList[1] && buttonFlagsList[3])
{
GameObject organSlice = GameObject.Find("Plankton/Patterns/Organ_1_IV");
organSlice.GetComponent<ColorantManager>().OnBtnColor5();
pointersList[8].SetActive(true);
pointersList[8].GetComponentInChildren<ColorantManager>().OnBtnColor5();
atlasJsonScript.colourCodes[15] = 5; // Pattern 1_IV
}
// 1 at V.1 (Care + Harmony = Harmony (1))
if (buttonFlagsList[0] && buttonFlagsList[4])
{
GameObject organSlice = GameObject.Find("Plankton/Patterns/Organ_1_V");
organSlice.GetComponent<ColorantManager>().OnBtnColor1();
pointersList[10].SetActive(true);
pointersList[10].GetComponentInChildren<ColorantManager>().OnBtnColor1();
atlasJsonScript.colourCodes[17] = 1; // Pattern 4_V
}
// 1 at V.1 (Care + Care = Togetherness (2))
if (buttonFlagsList[0] && buttonFlagsList[5])
{
GameObject organSlice = GameObject.Find("Plankton/Patterns/Organ_1_V");
organSlice.GetComponent<ColorantManager>().OnBtnColor2();
pointersList[10].SetActive(true);
pointersList[10].GetComponentInChildren<ColorantManager>().OnBtnColor2();
atlasJsonScript.colourCodes[17] = 2; // Pattern 4_V
}
// 1 at V.2 (Boredom + Harmony = Presence (7))
if (buttonFlagsList[1] && buttonFlagsList[4])
{
GameObject organSlice = GameObject.Find("Plankton/Patterns/Organ_1_V");
organSlice.GetComponent<ColorantManager>().OnBtnColor7();
pointersList[10].SetActive(true);
pointersList[10].GetComponentInChildren<ColorantManager>().OnBtnColor7();
atlasJsonScript.colourCodes[17] = 7; // Pattern 4_V
}
// 1 at V.2 (Boredom + Care = Dwelling (1))
if (buttonFlagsList[1] && buttonFlagsList[5])
{
GameObject organSlice = GameObject.Find("Plankton/Patterns/Organ_1_V");
organSlice.GetComponent<ColorantManager>().OnBtnColor1();
pointersList[10].SetActive(true);
pointersList[10].GetComponentInChildren<ColorantManager>().OnBtnColor1();
atlasJsonScript.colourCodes[17] = 1; // Pattern 4_V
}
// ORGAN 4 (under III, IV, V body slices)
// For 4 at IV -- See 2 at I
// 4 at III.1 (Finitude + Presence = Care (0))
if (buttonFlagsList[6] && buttonFlagsList[12])
{
GameObject organSlice = GameObject.Find("Plankton/Patterns/Organ_4_III");
organSlice.GetComponent<ColorantManager>().OnBtnColor0();
pointersList[7].SetActive(true);
pointersList[7].GetComponentInChildren<ColorantManager>().OnBtnColor0();
atlasJsonScript.colourCodes[14] = 0; // Pattern 4_III
}
// 4 at III.1 (Finitude + Finitude = Uncanny (5))
if (buttonFlagsList[6] && buttonFlagsList[13])
{
GameObject organSlice = GameObject.Find("Plankton/Patterns/Organ_4_III");
organSlice.GetComponent<ColorantManager>().OnBtnColor5();
pointersList[7].SetActive(true);
pointersList[7].GetComponentInChildren<ColorantManager>().OnBtnColor5();
atlasJsonScript.colourCodes[14] = 5; // Pattern 4_III
}
// 4 at III.2 (Everydayness + Presence = Harmony (1))
if (buttonFlagsList[7] && buttonFlagsList[12])
{
GameObject organSlice = GameObject.Find("Plankton/Patterns/Organ_4_III");
organSlice.GetComponent<ColorantManager>().OnBtnColor1();
pointersList[7].SetActive(true);
pointersList[7].GetComponentInChildren<ColorantManager>().OnBtnColor1();
atlasJsonScript.colourCodes[14] = 1; // Pattern 4_III
}
// 4 at III.2 (Everydayness + Finitude = Boredom (4))
if (buttonFlagsList[7] && buttonFlagsList[13])
{
GameObject organSlice = GameObject.Find("Plankton/Patterns/Organ_4_III");
organSlice.GetComponent<ColorantManager>().OnBtnColor4();
pointersList[7].SetActive(true);
pointersList[7].GetComponentInChildren<ColorantManager>().OnBtnColor4();
atlasJsonScript.colourCodes[14] = 4; // Pattern 4_III
}
// 4 at V.1 (Finitude + Harmony = Presence (7))
if (buttonFlagsList[6] && buttonFlagsList[4])
{
GameObject organSlice = GameObject.Find("Plankton/Patterns/Organ_4_V");
organSlice.GetComponent<ColorantManager>().OnBtnColor7();
pointersList[11].SetActive(true);
pointersList[11].GetComponentInChildren<ColorantManager>().OnBtnColor7();
atlasJsonScript.colourCodes[18] = 7; // Pattern 4_V
}
// 4 at V.1 (Finitude + Care = Finitude (6))
if (buttonFlagsList[6] && buttonFlagsList[5])
{
GameObject organSlice = GameObject.Find("Plankton/Patterns/Organ_4_V");
organSlice.GetComponent<ColorantManager>().OnBtnColor6();
pointersList[11].SetActive(true);
pointersList[11].GetComponentInChildren<ColorantManager>().OnBtnColor6();
atlasJsonScript.colourCodes[18] = 6; // Pattern 4_V
}
// 4 at V.2 (Everydayness + Harmony = Boredom (4))
if (buttonFlagsList[7] && buttonFlagsList[4])
{
GameObject organSlice = GameObject.Find("Plankton/Patterns/Organ_4_V");
organSlice.GetComponent<ColorantManager>().OnBtnColor4();
pointersList[11].SetActive(true);
pointersList[11].GetComponentInChildren<ColorantManager>().OnBtnColor4();
atlasJsonScript.colourCodes[18] = 4; // Pattern 4_V
}
// 4 at V.2 (Everydayness + Care = Care (0))
if (buttonFlagsList[7] && buttonFlagsList[5])
{
GameObject organSlice = GameObject.Find("Plankton/Patterns/Organ_4_V");
organSlice.GetComponent<ColorantManager>().OnBtnColor0();
pointersList[11].SetActive(true);
pointersList[11].GetComponentInChildren<ColorantManager>().OnBtnColor0();
atlasJsonScript.colourCodes[18] = 0; // Pattern 4_V
}
// Organ 5 ( V, VI, VII, VIII slices)
// For 5 at V -- See 3 at II
// 5 at VI
// 5 at VI.1 (Boredom + Care = Dwelling (3))
if (buttonFlagsList[8] && buttonFlagsList[0])
{
GameObject organSlice = GameObject.Find("Plankton/Patterns/Organ_5_VI");
organSlice.GetComponent<ColorantManager>().OnBtnColor3();
pointersList[13].SetActive(true);
pointersList[13].GetComponentInChildren<ColorantManager>().OnBtnColor3();
atlasJsonScript.colourCodes[20] = 3; // Pattern 5_VI
}
// 5 at VI.1 (Boredom + Boredom = Presence (7))
if (buttonFlagsList[8] && buttonFlagsList[1])
{
GameObject organSlice = GameObject.Find("Plankton/Patterns/Organ_5_VI");
organSlice.GetComponent<ColorantManager>().OnBtnColor7();
pointersList[13].SetActive(true);
pointersList[13].GetComponentInChildren<ColorantManager>().OnBtnColor7();
atlasJsonScript.colourCodes[20] = 7; // Pattern 5_VI
}
// 5 at VI.2 (Questioning + Care = Questioning (8))
if (buttonFlagsList[9] && buttonFlagsList[0])
{
GameObject organSlice = GameObject.Find("Plankton/Patterns/Organ_5_VI");
organSlice.GetComponent<ColorantManager>().OnBtnColor8();
pointersList[13].SetActive(true);
pointersList[13].GetComponentInChildren<ColorantManager>().OnBtnColor8();
atlasJsonScript.colourCodes[20] = 8; // Pattern 5_VI
}
// 5 at VI.2 (Questioning + Boredom = Care (0))
if (buttonFlagsList[9] && buttonFlagsList[1])
{
GameObject organSlice = GameObject.Find("Plankton/Patterns/Organ_5_VI");
organSlice.GetComponent<ColorantManager>().OnBtnColor0();
pointersList[13].SetActive(true);
pointersList[13].GetComponentInChildren<ColorantManager>().OnBtnColor0();
atlasJsonScript.colourCodes[20] = 0; // Pattern 5_VI
}
// 5 at VII
// 5 at VII.1 (Boredom + Uncanny = Uncanny (5))
if (buttonFlagsList[8] && buttonFlagsList[10])
{
GameObject organSlice = GameObject.Find("Plankton/Patterns/Organ_5_VII");
organSlice.GetComponent<ColorantManager>().OnBtnColor5();
pointersList[14].SetActive(true);
pointersList[14].GetComponentInChildren<ColorantManager>().OnBtnColor5();
atlasJsonScript.colourCodes[21] = 8; // Pattern 5_VII
}
// 5 at VII.1 (Boredom + Togetherness = Everydayness (9))
if (buttonFlagsList[8] && buttonFlagsList[11])
{
GameObject organSlice = GameObject.Find("Plankton/Patterns/Organ_5_VII");
organSlice.GetComponent<ColorantManager>().OnBtnColor9();
pointersList[14].SetActive(true);
pointersList[14].GetComponentInChildren<ColorantManager>().OnBtnColor9();
atlasJsonScript.colourCodes[21] = 9; // Pattern 5_VII
}
// 5 at VII.2 (Questioning + Uncanny = Questioning (8))
if (buttonFlagsList[9] && buttonFlagsList[10])
{
GameObject organSlice = GameObject.Find("Plankton/Patterns/Organ_5_VII");
organSlice.GetComponent<ColorantManager>().OnBtnColor8();
pointersList[14].SetActive(true);
pointersList[14].GetComponentInChildren<ColorantManager>().OnBtnColor8();
atlasJsonScript.colourCodes[21] = 8; // Pattern 5_VII
}
// 5 at VII.2 (Questioning + Togetherness = Boredom (4))
if (buttonFlagsList[9] && buttonFlagsList[11])
{
GameObject organSlice = GameObject.Find("Plankton/Patterns/Organ_5_VII");
organSlice.GetComponent<ColorantManager>().OnBtnColor4();
pointersList[14].SetActive(true);
pointersList[14].GetComponentInChildren<ColorantManager>().OnBtnColor4();
atlasJsonScript.colourCodes[21] = 4; // Pattern 5_VII
}
// 5 at VIII
// 5 at VIII.1 (Boredom + Finitude = Dwelling (1))
if (buttonFlagsList[8] && buttonFlagsList[6])
{
GameObject organSlice = GameObject.Find("Plankton/Patterns/Organ_5_VIII");
organSlice.GetComponent<ColorantManager>().OnBtnColor1();
pointersList[15].SetActive(true);
pointersList[15].GetComponentInChildren<ColorantManager>().OnBtnColor1();
atlasJsonScript.colourCodes[22] = 1; // Pattern 5_VIII
}
// 5 at VIII.1 (Boredom + Everydayness = Togetherness (2))
if (buttonFlagsList[8] && buttonFlagsList[7])
{
GameObject organSlice = GameObject.Find("Plankton/Patterns/Organ_5_VIII");
organSlice.GetComponent<ColorantManager>().OnBtnColor2();
pointersList[15].SetActive(true);
pointersList[15].GetComponentInChildren<ColorantManager>().OnBtnColor2();
atlasJsonScript.colourCodes[22] = 2; // Pattern 5_VIII
}
// 5 at VIII.2 (Questioning + Finitude = Uncanny (5))
if (buttonFlagsList[9] && buttonFlagsList[6])
{
GameObject organSlice = GameObject.Find("Plankton/Patterns/Organ_5_VIII");
organSlice.GetComponent<ColorantManager>().OnBtnColor5();
pointersList[15].SetActive(true);
pointersList[15].GetComponentInChildren<ColorantManager>().OnBtnColor5();
atlasJsonScript.colourCodes[22] = 5; // Pattern 5_VIII
}
// 5 at VIII.2 (Questioning + Everydayness = Harmony (1))
if (buttonFlagsList[9] && buttonFlagsList[7])
{
GameObject organSlice = GameObject.Find("Plankton/Patterns/Organ_5_VIII");
organSlice.GetComponent<ColorantManager>().OnBtnColor1();
pointersList[15].SetActive(true);
pointersList[15].GetComponentInChildren<ColorantManager>().OnBtnColor1();
atlasJsonScript.colourCodes[22] = 1; // Pattern 5_VIII
}
}
}
```