private void button1_Click(object sender, EventArgs e) { textBox2.Text = ""; ulong a = 0x41C64E6D; ulong[] pseudo = new ulong[5]; ulong b = 0x6073; ulong seed; int seikakuchi; string seikaku; ulong pid; ulong[] kotaichi = new ulong[6];//HABCDSの順; ulong IV; string[] temp = textBox1.Text.Split('-'); ulong hp = ulong.Parse(temp[0]); ulong at = ulong.Parse(temp[1]); ulong de = ulong.Parse(temp[2]); ulong sa = ulong.Parse(temp[3]); ulong sd = ulong.Parse(temp[4]); ulong sp = ulong.Parse(temp[5]); seed = 0; for (int i = 0; i < 5; i++) { pseudo[i] = 0; } for (int flame = 0; flame < 3600*10; flame++) { for (int i = 0; i < 4; i++) { pseudo[i] = pseudo[i + 1]; } seed = (a * seed + b)%0x100000000; pseudo[4] = seed / 0x10000; //pid = pseudo[2] * 0x10000 + pseudo[1];//method1 pid = pseudo[1] * 0x10000 + pseudo[0];//method2 //pid = pseudo[2] * 0x10000 + pseudo[0];//method3 seikakuchi = (int)(pid % 100) % 25; seikaku = seikakuConv(seikakuchi); kotaichi[0] = pseudo[3] % 32; kotaichi[1] = (pseudo[3] % 1024) / 32; kotaichi[2] = (pseudo[3] % 32768) / 1024; kotaichi[5] = pseudo[4] % 32; kotaichi[3] = (pseudo[4] % 1024) / 32; kotaichi[4] = (pseudo[4] % 32768) / 1024; textBox2.Text += flame + "," + seikaku + "," + kotaichi[0] + "-" + kotaichi[1] + "-" + kotaichi[2] + "-" + kotaichi[3] + "-" + kotaichi[4] + "-" + kotaichi[5] + "\r\n"; } } public string seikakuConv(int seikakuchi) { if (seikakuchi == 0) return "無補正"; if (seikakuchi == 1) return "さみしがり"; if (seikakuchi == 2) return "ゆうかん"; if (seikakuchi == 3) return "いじっぱり"; if (seikakuchi == 4) return "やんちゃ"; if (seikakuchi == 5) return "ずぶとい"; if (seikakuchi == 6) return "無補正"; if (seikakuchi == 7) return "のんき"; if (seikakuchi == 8) return "わんぱく"; if (seikakuchi == 9) return "のうてんき"; if (seikakuchi == 10) return "おくびょう"; if (seikakuchi == 11) return "せっかち"; if (seikakuchi == 12) return "無補正"; if (seikakuchi == 13) return "ようき"; if (seikakuchi == 14) return "むじゃき"; if (seikakuchi == 15) return "ひかえめ"; if (seikakuchi == 16) return "おっとり"; if (seikakuchi == 17) return "れいせい"; if (seikakuchi == 18) return "無補正"; if (seikakuchi == 19) return "うっかりや"; if (seikakuchi == 20) return "おだやか"; if (seikakuchi == 21) return "おとなしい"; if (seikakuchi == 22) return "なまいき"; if (seikakuchi == 23) return "しんちょう"; else return "無補正"; }