Terraria v1.4.4.9
Terraria source code documentation
Loading...
Searching...
No Matches

◆ RandomNumberGenerator()

unsafe System.Diagnostics.RandomNumberGenerator.RandomNumberGenerator ( )
inline

Definition at line 28 of file RandomNumberGenerator.cs.

29 {
30 do
31 {
32 Guid guid = Guid.NewGuid();
33 Guid guid2 = Guid.NewGuid();
34 ulong* ptr = (ulong*)(&guid);
35 ulong* ptr2 = (ulong*)(&guid2);
36 _s0 = *ptr;
37 _s1 = ptr[1];
38 _s2 = *ptr2;
39 _s3 = ptr2[1];
40 _s0 = (_s0 & 0xFFFFFFFFFFFFFFFuL) | (_s1 & 0xF000000000000000uL);
41 _s2 = (_s2 & 0xFFFFFFFFFFFFFFFuL) | (_s3 & 0xF000000000000000uL);
42 _s1 = (_s1 & 0xFFFFFFFFFFFFFF3FuL) | (_s0 & 0xC0);
43 _s3 = (_s3 & 0xFFFFFFFFFFFFFF3FuL) | (_s2 & 0xC0);
44 }
45 while ((_s0 | _s1 | _s2 | _s3) == 0L);
46 }

References System.Diagnostics.RandomNumberGenerator._s0, System.Diagnostics.RandomNumberGenerator._s1, System.Diagnostics.RandomNumberGenerator._s2, System.Diagnostics.RandomNumberGenerator._s3, System.L, and System.Guid.NewGuid().