[C#]複数のオブジェクトを1つの変数で管理できるようにしてみた

今回はオブジェクトに素数の番号をふって1つの変数で管理できるようにします

ちょっと意味がわかりづらいと思うので、わかりやすく説明すると

まず、オブジェクトに小さい順に素数の番号をふって
オブジェクト1を2
オブジェクト2を3
オブジェクト3を5
と呼ぶようにします

そしてオブジェクト1の処理を呼び出すときは変数の値を2にして
オブジェクト2の処理を呼び出すときは変数の値を3に、
オブジェクト3の処理を呼び出すときは変数の値を5にして管理します

では複数のオブジェクトを呼び出すときはどうするかというと
オブジェクト1とオブジェクト2を呼び出すときは2と3をかけて6
オブジェクト2とオブジェクト3を呼び出すときは3と5をかけて15
オブジェクト1とオブジェクト3を呼び出すときは2と5をかけて10
オブジェクト1とオブジェクト2とオブジェクト3を呼び出すときは2と3と5をかけて30
を変数に代入します

そして変数を2,3,5で割ったときのあまりを計算し、あまりが0になったオブジェクトの処理を実行します

例:変数の値が15

int objectManager = 15;
if(objectManager % 2 == 0)
{
    Debug.Log("オブジェクト1の処理を実行");
}
if(objectManager % 3 == 0)
{
    Debug.Log("オブジェクト2の処理を実行")
}
if(objectManager % 5 == 0)
{
    Debug.Log("オブジェクト3の処理を実行")
}

この場合オブジェクト2とオブジェクト3の処理が実行されます

ちなみにこの方法は開発中のゲームのテストプレイ用の処理に使いました