| ofs | hex dump | ascii |
|---|
| 0000 | 00 00 0f 81 00 00 58 88 00 00 00 15 00 00 10 00 00 00 00 00 32 30 31 39 2e 33 2e 36 66 31 00 fe | ......X.............2019.3.6f1.. |
| 0020 | ff ff ff 01 02 00 00 00 0b 04 00 00 00 ff ff 66 9a 86 21 eb 14 35 98 39 dd 34 1d 51 0e c1 f3 42 | ...............f..!..5.9.4.Q...B |
| 0040 | 00 00 00 ed 00 00 00 02 00 00 00 00 00 00 00 37 00 00 80 ff ff ff ff 00 00 00 00 00 80 00 00 00 | ...............7................ |
| 0060 | 00 00 00 00 00 00 00 01 00 01 00 a6 03 00 80 b2 01 00 80 04 00 00 00 01 00 00 00 01 00 00 00 00 | ................................ |
| 0080 | 00 00 00 00 00 00 00 01 00 01 00 0d 00 00 00 45 04 00 80 0c 00 00 00 02 00 00 00 01 00 00 00 00 | ...............E................ |
| 00a0 | 00 00 00 00 00 00 00 01 00 02 00 de 00 00 80 23 00 00 00 04 00 00 00 03 00 00 00 01 00 80 00 00 | ...............#................ |
| 00c0 | 00 00 00 00 00 00 00 01 00 02 00 2e 03 00 80 2c 00 00 00 08 00 00 00 04 00 00 00 01 00 80 00 00 | ...............,................ |
| 00e0 | 00 00 00 00 00 00 00 01 00 01 00 35 00 00 00 61 04 00 80 0c 00 00 00 05 00 00 00 01 00 00 00 00 | ...........5...a................ |
| 0100 | 00 00 00 00 00 00 00 01 00 02 00 de 00 00 80 23 00 00 00 04 00 00 00 06 00 00 00 01 00 80 00 00 | ...............#................ |
| 0120 | 00 00 00 00 00 00 00 01 00 02 00 2e 03 00 80 2c 00 00 00 08 00 00 00 07 00 00 00 01 00 80 00 00 | ...............,................ |
| 0140 | 00 00 00 00 00 00 00 01 00 01 00 86 02 00 80 72 04 00 80 0c 00 00 00 08 00 00 00 01 00 00 00 00 | ...............r................ |
| 0160 | 00 00 00 00 00 00 00 01 00 02 00 de 00 00 80 23 00 00 00 04 00 00 00 09 00 00 00 01 00 80 00 00 | ...............#................ |
| 0180 | 00 00 00 00 00 00 00 01 00 02 00 2e 03 00 80 2c 00 00 00 08 00 00 00 0a 00 00 00 01 00 80 00 00 | ...............,................ |
| 01a0 | 00 00 00 00 00 00 00 01 00 01 00 48 03 00 80 ab 01 00 80 ff ff ff ff 0b 00 00 00 01 80 08 00 00 | ...........H.................... |
| 01c0 | 00 00 00 00 00 00 00 01 00 02 01 31 00 00 80 31 00 00 80 ff ff ff ff 0c 00 00 00 01 40 08 00 00 | ...........1...1............@... |
| 01e0 | 00 00 00 00 00 00 00 01 00 03 00 de 00 00 80 1b 03 00 80 04 00 00 00 0d 00 00 00 01 00 08 00 00 | ................................ |
| 0200 | 00 00 00 00 00 00 00 01 00 03 00 51 00 00 80 6a 00 00 80 01 00 00 00 0e 00 00 00 01 00 08 00 00 | ...........Q...j................ |
| 0220 | 00 00 00 00 00 00 00 01 00 01 00 f1 00 00 80 4a 00 00 00 ff ff ff ff 0f 00 00 00 00 c0 00 00 00 | ...............J................ |
| 0240 | 00 00 00 00 00 00 00 01 00 02 01 31 00 00 80 31 00 00 80 ff ff ff ff 10 00 00 00 00 80 00 00 00 | ...........1...1................ |
| 0260 | 00 00 00 00 00 00 00 01 00 03 00 de 00 00 80 1b 03 00 80 04 00 00 00 11 00 00 00 00 00 00 00 00 | ................................ |
| 0280 | 00 00 00 00 00 00 00 01 00 03 00 1f 02 00 80 6a 00 00 80 ff ff ff ff 12 00 00 00 00 80 00 00 00 | ...............j................ |
| 02a0 | 00 00 00 00 00 00 00 01 00 04 00 5c 00 00 00 9b 00 00 80 ff ff ff ff 13 00 00 00 00 80 00 00 00 | ...........\.................... |
| 02c0 | 00 00 00 00 00 00 00 01 00 05 00 48 03 00 80 72 00 00 00 ff ff ff ff 14 00 00 00 00 80 00 00 00 | ...........H...r................ |
| 02e0 | 00 00 00 00 00 00 00 01 00 06 01 31 00 00 80 31 00 00 80 ff ff ff ff 15 00 00 00 01 40 00 00 00 | ...........1...1............@... |
| 0300 | 00 00 00 00 00 00 00 01 00 07 00 de 00 00 80 1b 03 00 80 04 00 00 00 16 00 00 00 01 00 00 00 00 | ................................ |
| 0320 | 00 00 00 00 00 00 00 01 00 07 00 51 00 00 80 6a 00 00 80 01 00 00 00 17 00 00 00 01 00 00 00 00 | ...........Q...j................ |
| 0340 | 00 00 00 00 00 00 00 01 00 05 00 48 03 00 80 77 00 00 00 ff ff ff ff 18 00 00 00 00 80 00 00 00 | ...........H...w................ |
| 0360 | 00 00 00 00 00 00 00 01 00 06 01 31 00 00 80 31 00 00 80 ff ff ff ff 19 00 00 00 01 40 00 00 00 | ...........1...1............@... |
| 0380 | 00 00 00 00 00 00 00 01 00 07 00 de 00 00 80 1b 03 00 80 04 00 00 00 1a 00 00 00 01 00 00 00 00 | ................................ |
| 03a0 | 00 00 00 00 00 00 00 01 00 07 00 51 00 00 80 6a 00 00 80 01 00 00 00 1b 00 00 00 01 00 00 00 00 | ...........Q...j................ |
| 03c0 | 00 00 00 00 00 00 00 01 00 05 00 48 03 00 80 80 00 00 00 ff ff ff ff 1c 00 00 00 00 80 00 00 00 | ...........H.................... |
| 03e0 | 00 00 00 00 00 00 00 01 00 06 01 31 00 00 80 31 00 00 80 ff ff ff ff 1d 00 00 00 01 40 00 00 00 | ...........1...1............@... |
| 0400 | 00 00 00 00 00 00 00 01 00 07 00 de 00 00 80 1b 03 00 80 04 00 00 00 1e 00 00 00 01 00 00 00 00 | ................................ |
| 0420 | 00 00 00 00 00 00 00 01 00 07 00 51 00 00 80 6a 00 00 80 01 00 00 00 1f 00 00 00 01 00 00 00 00 | ...........Q...j................ |
| 0440 | 00 00 00 00 00 00 00 01 00 04 00 79 02 00 80 0a 03 00 80 0c 00 00 00 20 00 00 00 00 00 00 00 00 | ...........y.................... |
| 0460 | 00 00 00 00 00 00 00 01 00 05 00 de 00 00 80 23 00 00 00 04 00 00 00 21 00 00 00 01 00 80 00 00 | ...............#.......!........ |
| 0480 | 00 00 00 00 00 00 00 01 00 05 00 2e 03 00 80 2c 00 00 00 08 00 00 00 22 00 00 00 01 00 80 00 00 | ...............,......."........ |
| 04a0 | 00 00 00 00 00 00 00 01 00 01 00 11 03 00 80 85 00 00 00 ff ff ff ff 23 00 00 00 01 40 08 00 00 | .......................#....@... |
| 04c0 | 00 00 00 00 00 00 00 01 00 02 01 31 00 00 80 31 00 00 80 ff ff ff ff 24 00 00 00 01 00 08 00 00 | ...........1...1.......$........ |
| 04e0 | 00 00 00 00 00 00 00 01 00 03 00 de 00 00 80 1b 03 00 80 04 00 00 00 25 00 00 00 01 00 08 00 00 | .......................%........ |
| 0500 | 00 00 00 00 00 00 00 01 00 03 00 2e 03 00 80 6a 00 00 80 08 00 00 00 26 00 00 00 01 00 08 00 00 | ...............j.......&........ |
| 0520 | 00 00 00 00 00 00 00 01 00 01 00 d5 03 00 80 93 00 00 00 ff ff ff ff 27 00 00 00 00 80 00 00 00 | .......................'........ |
| 0540 | 00 00 00 00 00 00 00 01 00 02 01 31 00 00 80 31 00 00 80 ff ff ff ff 28 00 00 00 00 c0 00 00 00 | ...........1...1.......(........ |
| 0560 | 00 00 00 00 00 00 00 01 00 03 00 de 00 00 80 1b 03 00 80 04 00 00 00 29 00 00 00 00 00 00 00 00 | .......................)........ |
| 0580 | 00 00 00 00 00 00 00 01 00 03 00 1f 02 00 80 6a 00 00 80 ff ff ff ff 2a 00 00 00 00 80 00 00 00 | ...............j.......*........ |
| 05a0 | 00 00 00 00 00 00 00 01 00 04 00 48 03 00 80 9b 00 00 80 ff ff ff ff 2b 00 00 00 00 80 00 00 00 | ...........H...........+........ |
| 05c0 | 00 00 00 00 00 00 00 01 00 05 01 31 00 00 80 31 00 00 80 ff ff ff ff 2c 00 00 00 01 40 00 00 00 | ...........1...1.......,....@... |
| 05e0 | 00 00 00 00 00 00 00 01 00 06 00 de 00 00 80 1b 03 00 80 04 00 00 00 2d 00 00 00 01 00 00 00 00 | .......................-........ |
| 0600 | 00 00 00 00 00 00 00 01 00 06 00 51 00 00 80 6a 00 00 80 01 00 00 00 2e 00 00 00 01 00 00 00 00 | ...........Q...j................ |
| 0620 | 00 00 00 00 00 00 00 01 00 04 00 79 02 00 80 0a 03 00 80 0c 00 00 00 2f 00 00 00 00 00 00 00 00 | ...........y.........../........ |
| 0640 | 00 00 00 00 00 00 00 01 00 05 00 de 00 00 80 23 00 00 00 04 00 00 00 30 00 00 00 01 00 80 00 00 | ...............#.......0........ |
| 0660 | 00 00 00 00 00 00 00 01 00 05 00 2e 03 00 80 2c 00 00 00 08 00 00 00 31 00 00 00 01 00 80 00 00 | ...............,.......1........ |
| 0680 | 00 00 00 00 00 00 00 01 00 01 00 20 03 00 80 a7 00 00 00 02 00 00 00 32 00 00 00 00 40 00 00 00 | .......................2....@... |
| 06a0 | 00 00 00 00 00 00 00 01 00 01 00 be 02 00 80 b6 00 00 00 0c 00 00 00 33 00 00 00 00 40 00 00 00 | .......................3....@... |
| 06c0 | 00 00 00 00 00 00 00 01 00 02 00 de 00 00 80 23 00 00 00 04 00 00 00 34 00 00 00 01 00 80 00 00 | ...............#.......4........ |
| 06e0 | 00 00 00 00 00 00 00 01 00 02 00 2e 03 00 80 2c 00 00 00 08 00 00 00 35 00 00 00 01 00 80 00 00 | ...............,.......5........ |
| 0700 | 00 00 00 00 00 00 00 01 00 01 00 48 03 00 80 bb 00 00 00 ff ff ff ff 36 00 00 00 01 80 00 00 00 | ...........H...........6........ |
| 0720 | 00 00 00 00 00 00 00 01 00 02 01 31 00 00 80 31 00 00 80 ff ff ff ff 37 00 00 00 01 40 00 00 00 | ...........1...1.......7....@... |
| 0740 | 00 00 00 00 00 00 00 01 00 03 00 de 00 00 80 1b 03 00 80 04 00 00 00 38 00 00 00 01 00 00 00 00 | .......................8........ |
| 0760 | 00 00 00 00 00 00 00 01 00 03 00 51 00 00 80 6a 00 00 80 01 00 00 00 39 00 00 00 01 00 00 00 00 | ...........Q...j.......9........ |
| 0780 | 00 00 00 00 00 00 00 01 00 01 00 48 03 00 80 c6 00 00 00 ff ff ff ff 3a 00 00 00 01 80 00 00 00 | ...........H...........:........ |
| 07a0 | 00 00 00 00 00 00 00 01 00 02 01 31 00 00 80 31 00 00 80 ff ff ff ff 3b 00 00 00 01 40 00 00 00 | ...........1...1.......;....@... |
| 07c0 | 00 00 00 00 00 00 00 01 00 03 00 de 00 00 80 1b 03 00 80 04 00 00 00 3c 00 00 00 01 00 00 00 00 | .......................<........ |
| 07e0 | 00 00 00 00 00 00 00 01 00 03 00 51 00 00 80 6a 00 00 80 01 00 00 00 3d 00 00 00 01 00 00 00 00 | ...........Q...j.......=........ |
| 0800 | 00 00 00 00 00 00 00 01 00 01 00 48 03 00 80 d8 00 00 00 ff ff ff ff 3e 00 00 00 01 80 00 00 00 | ...........H...........>........ |
| 0820 | 00 00 00 00 00 00 00 01 00 02 01 31 00 00 80 31 00 00 80 ff ff ff ff 3f 00 00 00 01 40 00 00 00 | ...........1...1.......?....@... |
| 0840 | 00 00 00 00 00 00 00 01 00 03 00 de 00 00 80 1b 03 00 80 04 00 00 00 40 00 00 00 01 00 00 00 00 | .......................@........ |
| 0860 | 00 00 00 00 00 00 00 01 00 03 00 51 00 00 80 6a 00 00 80 01 00 00 00 41 00 00 00 01 00 00 00 00 | ...........Q...j.......A........ |
| 0880 | 00 00 00 00 00 00 00 4d 6f 6e 6f 49 6d 70 6f 72 74 65 72 00 50 50 74 72 3c 45 64 69 74 6f 72 45 | .......MonoImporter.PPtr<EditorE |
| 08a0 | 78 74 65 6e 73 69 6f 6e 3e 00 6d 5f 46 69 6c 65 49 44 00 6d 5f 50 61 74 68 49 44 00 50 50 74 72 | xtension>.m_FileID.m_PathID.PPtr |
| 08c0 | 3c 50 72 65 66 61 62 49 6e 73 74 61 6e 63 65 3e 00 6d 5f 45 78 74 65 72 6e 61 6c 4f 62 6a 65 63 | <PrefabInstance>.m_ExternalObjec |
| 08e0 | 74 73 00 53 6f 75 72 63 65 41 73 73 65 74 49 64 65 6e 74 69 66 69 65 72 00 74 79 70 65 00 61 73 | ts.SourceAssetIdentifier.type.as |
| 0900 | 73 65 6d 62 6c 79 00 6e 61 6d 65 00 6d 5f 55 73 65 64 46 69 6c 65 49 44 73 00 6d 5f 44 65 66 61 | sembly.name.m_UsedFileIDs.m_Defa |
| 0920 | 75 6c 74 52 65 66 65 72 65 6e 63 65 73 00 65 78 65 63 75 74 69 6f 6e 4f 72 64 65 72 00 69 63 6f | ultReferences.executionOrder.ico |
| 0940 | 6e 00 6d 5f 55 73 65 72 44 61 74 61 00 6d 5f 41 73 73 65 74 42 75 6e 64 6c 65 4e 61 6d 65 00 6d | n.m_UserData.m_AssetBundleName.m |
| 0960 | 5f 41 73 73 65 74 42 75 6e 64 6c 65 56 61 72 69 61 6e 74 00 00 00 00 00 73 00 00 00 00 ff ff a3 | _AssetBundleVariant.....s....... |
| 0980 | 47 f1 d7 dc 8f 5a 35 36 a0 3a 21 40 69 c1 4a 2a 00 00 00 81 00 00 00 05 00 00 00 15 01 00 80 37 | G....Z56.:!@i.J*...............7 |
| 09a0 | 00 00 80 ff ff ff ff 00 00 00 00 00 80 00 00 00 00 00 00 00 00 00 00 01 00 01 00 a6 03 00 80 b2 | ................................ |
| 09c0 | 01 00 80 04 00 00 00 01 00 00 00 01 00 00 00 00 00 00 00 00 00 00 00 01 00 01 00 00 00 00 00 45 | ...............................E |
| 09e0 | 04 00 80 0c 00 00 00 02 00 00 00 01 00 00 00 00 00 00 00 00 00 00 00 01 00 02 00 de 00 00 80 16 | ................................ |
| 0a00 | 00 00 00 04 00 00 00 03 00 00 00 01 00 80 00 00 00 00 00 00 00 00 00 01 00 02 00 2e 03 00 80 1f | ................................ |
| 0a20 | 00 00 00 08 00 00 00 04 00 00 00 01 00 80 00 00 00 00 00 00 00 00 00 01 00 01 00 28 00 00 00 61 | ...........................(...a |
| 0a40 | 04 00 80 0c 00 00 00 05 00 00 00 01 00 00 00 00 00 00 00 00 00 00 00 01 00 02 00 de 00 00 80 16 | ................................ |
| 0a60 | 00 00 00 04 00 00 00 06 00 00 00 01 00 80 00 00 00 00 00 00 00 00 00 01 00 02 00 2e 03 00 80 1f | ................................ |
| 0a80 | 00 00 00 08 00 00 00 07 00 00 00 01 00 80 00 00 00 00 00 00 00 00 00 01 00 01 00 86 02 00 80 72 | ...............................r |
| 0aa0 | 04 00 80 0c 00 00 00 08 00 00 00 01 00 00 00 00 00 00 00 00 00 00 00 01 00 02 00 de 00 00 80 16 | ................................ |
| 0ac0 | 00 00 00 04 00 00 00 09 00 00 00 01 00 80 00 00 00 00 00 00 00 00 00 01 00 02 00 2e 03 00 80 1f | ................................ |
| 0ae0 | 00 00 00 08 00 00 00 0a 00 00 00 01 00 80 00 00 00 00 00 00 00 00 00 01 00 01 00 48 03 00 80 ab | ...........................H.... |
| 0b00 | 01 00 80 ff ff ff ff 0b 00 00 00 01 80 08 00 00 00 00 00 00 00 00 00 01 00 02 01 31 00 00 80 31 | ...........................1...1 |
| 0b20 | 00 00 80 ff ff ff ff 0c 00 00 00 01 40 08 00 00 00 00 00 00 00 00 00 01 00 03 00 de 00 00 80 1b | ............@................... |
| 0b40 | 03 00 80 04 00 00 00 0d 00 00 00 01 00 08 00 00 00 00 00 00 00 00 00 01 00 03 00 51 00 00 80 6a | ...........................Q...j |
| 0b60 | 00 00 80 01 00 00 00 0e 00 00 00 01 00 08 00 00 00 00 00 00 00 00 00 01 00 01 00 48 03 00 80 ea | ...........................H.... |
| 0b80 | 01 00 80 ff ff ff ff 0f 00 00 00 01 80 00 00 00 00 00 00 00 00 00 00 01 00 02 01 31 00 00 80 31 | ...........................1...1 |
| 0ba0 | 00 00 80 ff ff ff ff 10 00 00 00 01 40 00 00 00 00 00 00 00 00 00 00 01 00 03 00 de 00 00 80 1b | ............@................... |
| 0bc0 | 03 00 80 04 00 00 00 11 00 00 00 01 00 00 00 00 00 00 00 00 00 00 00 01 00 03 00 51 00 00 80 6a | ...........................Q...j |
| 0be0 | 00 00 80 01 00 00 00 12 00 00 00 01 00 00 00 00 00 00 00 00 00 00 00 01 00 01 00 f1 00 00 80 3d | ...............................= |
| 0c00 | 00 00 00 ff ff ff ff 13 00 00 00 01 80 00 00 00 00 00 00 00 00 00 00 01 00 02 01 31 00 00 80 31 | ...........................1...1 |
| 0c20 | 00 00 80 ff ff ff ff 14 00 00 00 01 80 00 00 00 00 00 00 00 00 00 00 01 00 03 00 de 00 00 80 1b | ................................ |
| 0c40 | 03 00 80 04 00 00 00 15 00 00 00 01 00 00 00 00 00 00 00 00 00 00 00 01 00 03 00 1f 02 00 80 6a | ...............................j |
| 0c60 | 00 00 80 ff ff ff ff 16 00 00 00 01 80 00 00 00 00 00 00 00 00 00 00 01 00 04 00 48 03 00 80 9b | ...........................H.... |
| 0c80 | 00 00 80 ff ff ff ff 17 00 00 00 01 80 00 00 00 00 00 00 00 00 00 00 01 00 05 01 31 00 00 80 31 | ...........................1...1 |
| 0ca0 | 00 00 80 ff ff ff ff 18 00 00 00 01 40 00 00 00 00 00 00 00 00 00 00 01 00 06 00 de 00 00 80 1b | ............@................... |
| 0cc0 | 03 00 80 04 00 00 00 19 00 00 00 01 00 00 00 00 00 00 00 00 00 00 00 01 00 06 00 51 00 00 80 6a | ...........................Q...j |
| 0ce0 | 00 00 80 01 00 00 00 1a 00 00 00 01 00 00 00 00 00 00 00 00 00 00 00 01 00 04 00 79 02 00 80 0a | ...........................y.... |
| 0d00 | 03 00 80 0c 00 00 00 1b 00 00 00 01 00 00 00 00 00 00 00 00 00 00 00 01 00 05 00 de 00 00 80 16 | ................................ |
| 0d20 | 00 00 00 04 00 00 00 1c 00 00 00 01 00 80 00 00 00 00 00 00 00 00 00 01 00 05 00 2e 03 00 80 1f | ................................ |
| 0d40 | 00 00 00 08 00 00 00 1d 00 00 00 01 00 80 00 00 00 00 00 00 00 00 00 01 00 01 00 79 02 00 80 51 | ...........................y...Q |
| 0d60 | 00 00 00 0c 00 00 00 1e 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 01 00 02 00 de 00 00 80 16 | ................................ |
| 0d80 | 00 00 00 04 00 00 00 1f 00 00 00 01 00 80 00 00 00 00 00 00 00 00 00 01 00 02 00 2e 03 00 80 1f | ................................ |
| 0da0 | 00 00 00 08 00 00 00 20 00 00 00 01 00 80 00 00 00 00 00 00 00 00 00 01 00 01 00 de 00 00 80 58 | ...............................X |
| 0dc0 | 00 00 00 04 00 00 00 21 00 00 00 10 00 00 00 00 00 00 00 00 00 00 00 01 00 01 00 48 03 00 80 69 | .......!...................H...i |
| 0de0 | 00 00 00 ff ff ff ff 22 00 00 00 10 80 00 00 00 00 00 00 00 00 00 00 01 00 02 01 31 00 00 80 31 | ......."...................1...1 |
| 0e00 | 00 00 80 ff ff ff ff 23 00 00 00 11 40 00 00 00 00 00 00 00 00 00 00 01 00 03 00 de 00 00 80 1b | .......#....@................... |
| 0e20 | 03 00 80 04 00 00 00 24 00 00 00 11 00 00 00 00 00 00 00 00 00 00 00 01 00 03 00 51 00 00 80 6a | .......$...................Q...j |
| 0e40 | 00 00 80 01 00 00 00 25 00 00 00 11 00 00 00 00 00 00 00 00 00 00 00 01 00 01 00 48 03 00 80 75 | .......%...................H...u |
| 0e60 | 00 00 00 ff ff ff ff 26 00 00 00 10 80 00 00 00 00 00 00 00 00 00 00 01 00 02 01 31 00 00 80 31 | .......&...................1...1 |
| 0e80 | 00 00 80 ff ff ff ff 27 00 00 00 11 40 00 00 00 00 00 00 00 00 00 00 01 00 03 00 de 00 00 80 1b | .......'....@................... |
| 0ea0 | 03 00 80 04 00 00 00 28 00 00 00 11 00 00 00 00 00 00 00 00 00 00 00 01 00 03 00 51 00 00 80 6a | .......(...................Q...j |
| 0ec0 | 00 00 80 01 00 00 00 29 00 00 00 11 00 00 00 00 00 00 00 00 00 00 00 50 50 74 72 3c 45 64 69 74 | .......)...............PPtr<Edit |
| 0ee0 | 6f 72 45 78 74 65 6e 73 69 6f 6e 3e 00 6d 5f 46 69 6c 65 49 44 00 6d 5f 50 61 74 68 49 44 00 50 | orExtension>.m_FileID.m_PathID.P |
| 0f00 | 50 74 72 3c 50 72 65 66 61 62 49 6e 73 74 61 6e 63 65 3e 00 6d 5f 44 65 66 61 75 6c 74 52 65 66 | Ptr<PrefabInstance>.m_DefaultRef |
| 0f20 | 65 72 65 6e 63 65 73 00 6d 5f 49 63 6f 6e 00 6d 5f 45 78 65 63 75 74 69 6f 6e 4f 72 64 65 72 00 | erences.m_Icon.m_ExecutionOrder. |
| 0f40 | 6d 5f 43 6c 61 73 73 4e 61 6d 65 00 6d 5f 4e 61 6d 65 73 70 61 63 65 00 00 00 00 00 02 00 00 00 | m_ClassName.m_Namespace......... |
| 0f60 | 03 00 00 00 00 00 00 00 00 00 00 00 5c 00 00 00 00 00 00 00 e0 79 af 00 00 00 00 00 60 00 00 00 | ............\........y......`... |
| 0f80 | 28 48 00 00 01 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | (H.............................. |
| 0fa0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 0fc0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 0fe0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 1000 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 1020 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 01 00 00 00 e0 79 af 00 00 00 00 00 00 00 00 00 | .....................y.......... |
| 1040 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 1060 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 1080 | 00 00 00 00 00 00 00 00 0f 00 00 00 54 6f 75 63 68 53 69 6d 75 6c 61 74 69 6f 6e 00 94 47 00 00 | ............TouchSimulation..G.. |
| 10a0 | 75 73 69 6e 67 20 53 79 73 74 65 6d 3b 0d 0a 75 73 69 6e 67 20 55 6e 69 74 79 45 6e 67 69 6e 65 | using.System;..using.UnityEngine |
| 10c0 | 2e 49 6e 70 75 74 53 79 73 74 65 6d 2e 43 6f 6e 74 72 6f 6c 73 3b 0d 0a 75 73 69 6e 67 20 55 6e | .InputSystem.Controls;..using.Un |
| 10e0 | 69 74 79 45 6e 67 69 6e 65 2e 49 6e 70 75 74 53 79 73 74 65 6d 2e 4c 6f 77 4c 65 76 65 6c 3b 0d | ityEngine.InputSystem.LowLevel;. |
| 1100 | 0a 75 73 69 6e 67 20 55 6e 69 74 79 45 6e 67 69 6e 65 2e 49 6e 70 75 74 53 79 73 74 65 6d 2e 55 | .using.UnityEngine.InputSystem.U |
| 1120 | 74 69 6c 69 74 69 65 73 3b 0d 0a 23 69 66 20 55 4e 49 54 59 5f 45 44 49 54 4f 52 0d 0a 75 73 69 | tilities;..#if.UNITY_EDITOR..usi |
| 1140 | 6e 67 20 55 6e 69 74 79 45 64 69 74 6f 72 3b 0d 0a 75 73 69 6e 67 20 55 6e 69 74 79 45 6e 67 69 | ng.UnityEditor;..using.UnityEngi |
| 1160 | 6e 65 2e 49 6e 70 75 74 53 79 73 74 65 6d 2e 45 64 69 74 6f 72 3b 0d 0a 23 65 6e 64 69 66 0d 0a | ne.InputSystem.Editor;..#endif.. |
| 1180 | 0d 0a 2f 2f 2f 2f 54 4f 44 4f 3a 20 61 64 64 20 70 72 65 73 73 75 72 65 20 73 75 70 70 6f 72 74 | ..////TODO:.add.pressure.support |
| 11a0 | 0d 0a 0d 0a 2f 2f 2f 2f 52 45 56 49 45 57 3a 20 65 78 74 65 6e 64 20 74 68 69 73 20 62 65 79 6f | ....////REVIEW:.extend.this.beyo |
| 11c0 | 6e 64 20 73 69 6d 75 6c 61 74 69 6e 67 20 66 72 6f 6d 20 50 6f 69 6e 74 65 72 73 20 6f 6e 6c 79 | nd.simulating.from.Pointers.only |
| 11e0 | 3f 20 74 68 65 6f 72 65 74 69 63 61 6c 6c 79 2c 20 77 65 20 63 6f 75 6c 64 20 73 69 6d 75 6c 61 | ?.theoretically,.we.could.simula |
| 1200 | 74 65 20 66 72 6f 6d 20 61 6e 79 20 6d 65 61 6e 73 20 6f 66 20 67 65 6e 65 72 61 74 69 6e 67 20 | te.from.any.means.of.generating. |
| 1220 | 70 6f 73 69 74 69 6f 6e 73 20 61 6e 64 20 70 72 65 73 73 65 73 0d 0a 0d 0a 2f 2f 2f 2f 52 45 56 | positions.and.presses....////REV |
| 1240 | 49 45 57 3a 20 49 20 74 68 69 6e 6b 20 74 68 69 73 20 69 73 20 61 20 77 6f 72 6b 61 62 6c 65 20 | IEW:.I.think.this.is.a.workable. |
| 1260 | 66 69 72 73 74 20 61 74 74 65 6d 70 74 20 62 75 74 20 6f 76 65 72 61 6c 6c 2c 20 6e 6f 74 20 61 | first.attempt.but.overall,.not.a |
| 1280 | 20 73 75 66 66 69 63 69 65 6e 74 20 74 61 6b 65 20 6f 6e 20 69 6e 70 75 74 20 73 69 6d 75 6c 61 | .sufficient.take.on.input.simula |
| 12a0 | 74 69 6f 6e 2e 20 41 54 4d 20 74 68 69 73 20 75 73 65 73 20 49 6e 70 75 74 53 74 61 74 65 2e 43 | tion..ATM.this.uses.InputState.C |
| 12c0 | 68 61 6e 67 65 0d 0a 2f 2f 2f 2f 20 20 20 20 20 20 20 20 74 6f 20 73 68 6f 76 65 20 69 6e 70 75 | hange..////........to.shove.inpu |
| 12e0 | 74 20 64 69 72 65 63 74 6c 79 20 69 6e 74 6f 20 54 6f 75 63 68 73 63 72 65 65 6e 2e 20 41 6c 73 | t.directly.into.Touchscreen..Als |
| 1300 | 6f 2c 20 69 74 20 75 73 65 73 20 73 74 61 74 65 20 63 68 61 6e 67 65 20 6e 6f 74 69 66 69 63 61 | o,.it.uses.state.change.notifica |
| 1320 | 74 69 6f 6e 73 20 74 6f 20 73 65 74 20 6f 66 66 20 74 68 65 20 73 69 6d 75 6c 61 74 69 6f 6e 2e | tions.to.set.off.the.simulation. |
| 1340 | 20 54 68 65 20 6c 61 74 74 65 72 20 6c 65 61 64 73 0d 0a 2f 2f 2f 2f 20 20 20 20 20 20 20 20 74 | .The.latter.leads..////........t |
| 1360 | 6f 20 74 6f 75 63 68 20 69 6e 70 75 74 20 70 6f 74 65 6e 74 69 61 6c 6c 79 20 63 68 61 6e 67 69 | o.touch.input.potentially.changi |
| 1380 | 6e 67 20 6d 75 6c 74 69 70 6c 65 20 74 69 6d 65 73 20 69 6e 20 72 65 73 70 6f 6e 73 65 20 74 6f | ng.multiple.times.in.response.to |
| 13a0 | 20 61 20 73 69 6e 67 6c 65 20 70 6f 69 6e 74 65 72 20 65 76 65 6e 74 2e 20 41 6e 64 20 74 68 65 | .a.single.pointer.event..And.the |
| 13c0 | 20 66 6f 72 6d 65 72 20 6c 65 61 64 73 20 74 6f 20 74 68 65 20 73 69 6d 75 6c 61 74 65 64 0d 0a | .former.leads.to.the.simulated.. |
| 13e0 | 2f 2f 2f 2f 20 20 20 20 20 20 20 20 74 6f 75 63 68 20 69 6e 70 75 74 20 6e 6f 74 20 62 65 69 6e | ////........touch.input.not.bein |
| 1400 | 67 20 76 69 73 69 62 6c 65 20 61 74 20 74 68 65 20 65 76 65 6e 74 20 6c 65 76 65 6c 20 2d 2d 20 | g.visible.at.the.event.level.--. |
| 1420 | 77 68 69 63 68 20 6c 65 61 76 65 73 20 54 6f 75 63 68 20 61 6e 64 20 46 69 6e 67 65 72 20 73 6c | which.leaves.Touch.and.Finger.sl |
| 1440 | 69 67 68 74 6c 79 20 75 6e 68 61 70 70 79 2c 20 66 6f 72 20 65 78 61 6d 70 6c 65 2e 0d 0a 2f 2f | ightly.unhappy,.for.example...// |
| 1460 | 2f 2f 20 20 20 20 20 20 20 20 49 20 74 68 69 6e 6b 20 62 65 69 6e 67 20 61 62 6c 65 20 74 6f 20 | //........I.think.being.able.to. |
| 1480 | 63 79 63 6c 65 20 73 69 6d 75 6c 61 74 65 64 20 69 6e 70 75 74 20 66 75 6c 6c 79 20 74 68 72 6f | cycle.simulated.input.fully.thro |
| 14a0 | 75 67 68 20 74 68 65 20 65 76 65 6e 74 20 6c 6f 6f 70 20 77 6f 75 6c 64 20 72 65 73 75 6c 74 20 | ugh.the.event.loop.would.result. |
| 14c0 | 69 6e 20 61 20 73 65 74 75 70 20 74 68 61 74 20 69 73 20 62 6f 74 68 20 73 69 6d 70 6c 65 72 20 | in.a.setup.that.is.both.simpler. |
| 14e0 | 61 6e 64 20 6d 6f 72 65 20 72 6f 62 75 73 74 2e 0d 0a 2f 2f 2f 2f 20 20 20 20 20 20 20 20 41 6c | and.more.robust...////........Al |
| 1500 | 73 6f 2c 20 69 74 20 77 6f 75 6c 64 20 61 6c 6c 6f 77 20 2a 64 69 73 61 62 6c 69 6e 67 2a 20 74 | so,.it.would.allow.*disabling*.t |
| 1520 | 68 65 20 73 6f 75 72 63 65 20 64 65 76 69 63 65 73 20 61 73 20 6c 6f 6e 67 20 61 73 20 77 65 20 | he.source.devices.as.long.as.we. |
| 1540 | 64 6f 6e 27 74 20 64 69 73 61 62 6c 65 20 74 68 65 6d 20 69 6e 20 74 68 65 20 62 61 63 6b 65 6e | don't.disable.them.in.the.backen |
| 1560 | 64 2c 20 74 6f 6f 2e 0d 0a 2f 2f 2f 2f 20 20 20 20 20 20 20 20 46 69 6e 61 6c 6c 79 2c 20 74 68 | d,.too...////........Finally,.th |
| 1580 | 65 20 66 61 63 74 20 74 68 61 74 20 77 65 20 73 70 69 6e 20 6f 66 66 20 69 6e 70 75 74 20 2a 66 | e.fact.that.we.spin.off.input.*f |
| 15a0 | 72 6f 6d 2a 20 65 76 65 6e 74 73 20 68 65 72 65 20 61 6e 64 20 66 65 65 64 20 74 68 61 74 20 69 | rom*.events.here.and.feed.that.i |
| 15c0 | 6e 74 6f 20 49 6e 70 75 74 53 74 61 74 65 2e 43 68 61 6e 67 65 28 29 20 62 79 20 70 61 73 73 69 | nto.InputState.Change().by.passi |
| 15e0 | 6e 67 20 74 68 65 20 65 76 65 6e 74 20 61 6c 6f 6e 67 0d 0a 2f 2f 2f 2f 20 20 20 20 20 20 20 20 | ng.the.event.along..////........ |
| 1600 | 6d 65 61 6e 73 20 74 68 61 74 20 70 6c 61 63 65 73 20 74 68 61 74 20 6d 61 6b 65 20 73 75 72 65 | means.that.places.that.make.sure |
| 1620 | 20 77 65 20 70 72 6f 63 65 73 73 20 69 6e 70 75 74 20 6f 6e 6c 79 20 6f 6e 63 65 20 28 65 2e 67 | .we.process.input.only.once.(e.g |
| 1640 | 2e 20 62 69 6e 64 69 6e 67 20 63 6f 6d 70 6f 73 69 74 65 73 20 77 68 69 63 68 20 77 69 6c 6c 20 | ..binding.composites.which.will. |
| 1660 | 72 65 6d 65 6d 62 65 72 20 74 68 65 20 65 76 65 6e 74 20 49 44 20 74 68 65 79 20 68 61 76 65 0d | remember.the.event.ID.they.have. |
| 1680 | 0a 2f 2f 2f 2f 20 20 20 20 20 20 20 20 62 65 65 6e 20 74 72 69 67 67 65 72 65 64 20 66 72 6f 6d | .////........been.triggered.from |
| 16a0 | 29 20 6d 61 79 20 72 65 6a 65 63 74 20 74 68 65 20 73 69 6d 75 6c 61 74 65 64 20 69 6e 70 75 74 | ).may.reject.the.simulated.input |
| 16c0 | 20 77 68 65 6e 20 74 68 65 79 20 68 61 76 65 20 61 6c 72 65 61 64 79 20 73 65 65 6e 20 74 68 65 | .when.they.have.already.seen.the |
| 16e0 | 20 6e 6f 6e 2d 73 69 6d 75 6c 61 74 65 64 20 69 6e 70 75 74 20 28 77 68 69 63 68 20 6d 61 79 20 | .non-simulated.input.(which.may. |
| 1700 | 62 65 20 6f 6b 61 79 0d 0a 2f 2f 2f 2f 20 20 20 20 20 20 20 20 62 65 68 61 76 69 6f 72 29 2e 0d | be.okay..////........behavior).. |
| 1720 | 0a 0d 0a 6e 61 6d 65 73 70 61 63 65 20 55 6e 69 74 79 45 6e 67 69 6e 65 2e 49 6e 70 75 74 53 79 | ...namespace.UnityEngine.InputSy |
| 1740 | 73 74 65 6d 2e 45 6e 68 61 6e 63 65 64 54 6f 75 63 68 0d 0a 7b 0d 0a 20 20 20 20 2f 2f 2f 20 3c | stem.EnhancedTouch..{......///.< |
| 1760 | 73 75 6d 6d 61 72 79 3e 0d 0a 20 20 20 20 2f 2f 2f 20 41 64 64 73 20 61 20 3c 73 65 65 20 63 72 | summary>......///.Adds.a.<see.cr |
| 1780 | 65 66 3d 22 54 6f 75 63 68 73 63 72 65 65 6e 22 2f 3e 20 77 69 74 68 20 69 6e 70 75 74 20 73 69 | ef="Touchscreen"/>.with.input.si |
| 17a0 | 6d 75 6c 61 74 65 64 20 66 72 6f 6d 20 6f 74 68 65 72 20 74 79 70 65 73 20 6f 66 20 3c 73 65 65 | mulated.from.other.types.of.<see |
| 17c0 | 20 63 72 65 66 3d 22 50 6f 69 6e 74 65 72 22 2f 3e 20 64 65 76 69 63 65 73 20 28 65 2e 67 2e 20 | .cref="Pointer"/>.devices.(e.g.. |
| 17e0 | 3c 73 65 65 20 63 72 65 66 3d 22 4d 6f 75 73 65 22 2f 3e 0d 0a 20 20 20 20 2f 2f 2f 20 6f 72 20 | <see.cref="Mouse"/>......///.or. |
| 1800 | 3c 73 65 65 20 63 72 65 66 3d 22 50 65 6e 22 2f 3e 29 2e 0d 0a 20 20 20 20 2f 2f 2f 20 3c 2f 73 | <see.cref="Pen"/>).......///.</s |
| 1820 | 75 6d 6d 61 72 79 3e 0d 0a 20 20 20 20 5b 41 64 64 43 6f 6d 70 6f 6e 65 6e 74 4d 65 6e 75 28 22 | ummary>......[AddComponentMenu(" |
| 1840 | 49 6e 70 75 74 2f 44 65 62 75 67 2f 54 6f 75 63 68 20 53 69 6d 75 6c 61 74 69 6f 6e 22 29 5d 0d | Input/Debug/Touch.Simulation")]. |
| 1860 | 0a 20 20 20 20 5b 45 78 65 63 75 74 65 49 6e 45 64 69 74 4d 6f 64 65 5d 0d 0a 20 20 20 20 23 69 | .....[ExecuteInEditMode]......#i |
| 1880 | 66 20 55 4e 49 54 59 5f 45 44 49 54 4f 52 0d 0a 20 20 20 20 5b 49 6e 69 74 69 61 6c 69 7a 65 4f | f.UNITY_EDITOR......[InitializeO |
| 18a0 | 6e 4c 6f 61 64 5d 0d 0a 20 20 20 20 23 65 6e 64 69 66 0d 0a 20 20 20 20 70 75 62 6c 69 63 20 63 | nLoad]......#endif......public.c |
| 18c0 | 6c 61 73 73 20 54 6f 75 63 68 53 69 6d 75 6c 61 74 69 6f 6e 20 3a 20 4d 6f 6e 6f 42 65 68 61 76 | lass.TouchSimulation.:.MonoBehav |
| 18e0 | 69 6f 75 72 2c 20 49 49 6e 70 75 74 53 74 61 74 65 43 68 61 6e 67 65 4d 6f 6e 69 74 6f 72 0d 0a | iour,.IInputStateChangeMonitor.. |
| 1900 | 20 20 20 20 7b 0d 0a 20 20 20 20 20 20 20 20 70 75 62 6c 69 63 20 54 6f 75 63 68 73 63 72 65 65 | ....{..........public.Touchscree |
| 1920 | 6e 20 73 69 6d 75 6c 61 74 65 64 54 6f 75 63 68 73 63 72 65 65 6e 20 7b 20 67 65 74 3b 20 70 72 | n.simulatedTouchscreen.{.get;.pr |
| 1940 | 69 76 61 74 65 20 73 65 74 3b 20 7d 0d 0a 0d 0a 20 20 20 20 20 20 20 20 70 75 62 6c 69 63 20 73 | ivate.set;.}............public.s |
| 1960 | 74 61 74 69 63 20 54 6f 75 63 68 53 69 6d 75 6c 61 74 69 6f 6e 20 69 6e 73 74 61 6e 63 65 20 3d | tatic.TouchSimulation.instance.= |
| 1980 | 3e 20 73 5f 49 6e 73 74 61 6e 63 65 3b 0d 0a 0d 0a 20 20 20 20 20 20 20 20 70 75 62 6c 69 63 20 | >.s_Instance;............public. |
| 19a0 | 73 74 61 74 69 63 20 76 6f 69 64 20 45 6e 61 62 6c 65 28 29 0d 0a 20 20 20 20 20 20 20 20 7b 0d | static.void.Enable()..........{. |
| 19c0 | 0a 20 20 20 20 20 20 20 20 20 20 20 20 69 66 20 28 69 6e 73 74 61 6e 63 65 20 3d 3d 20 6e 75 6c | .............if.(instance.==.nul |
| 19e0 | 6c 29 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 7b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 | l)..............{............... |
| 1a00 | 20 20 20 2f 2f 2f 2f 54 4f 44 4f 3a 20 66 69 6e 64 20 69 6e 73 74 61 6e 63 65 0d 0a 20 20 20 20 | ...////TODO:.find.instance...... |
| 1a20 | 20 20 20 20 20 20 20 20 20 20 20 20 76 61 72 20 68 69 64 64 65 6e 47 4f 20 3d 20 6e 65 77 20 47 | ............var.hiddenGO.=.new.G |
| 1a40 | 61 6d 65 4f 62 6a 65 63 74 28 29 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 68 69 | ameObject();..................hi |
| 1a60 | 64 64 65 6e 47 4f 2e 53 65 74 41 63 74 69 76 65 28 66 61 6c 73 65 29 3b 0d 0a 20 20 20 20 20 20 | ddenGO.SetActive(false);........ |
| 1a80 | 20 20 20 20 20 20 20 20 20 20 68 69 64 64 65 6e 47 4f 2e 68 69 64 65 46 6c 61 67 73 20 3d 20 48 | ..........hiddenGO.hideFlags.=.H |
| 1aa0 | 69 64 65 46 6c 61 67 73 2e 48 69 64 65 41 6e 64 44 6f 6e 74 53 61 76 65 3b 0d 0a 20 20 20 20 20 | ideFlags.HideAndDontSave;....... |
| 1ac0 | 20 20 20 20 20 20 20 20 20 20 20 73 5f 49 6e 73 74 61 6e 63 65 20 3d 20 68 69 64 64 65 6e 47 4f | ...........s_Instance.=.hiddenGO |
| 1ae0 | 2e 41 64 64 43 6f 6d 70 6f 6e 65 6e 74 3c 54 6f 75 63 68 53 69 6d 75 6c 61 74 69 6f 6e 3e 28 29 | .AddComponent<TouchSimulation>() |
| 1b00 | 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 69 6e 73 74 61 6e 63 65 2e 67 61 6d 65 | ;..................instance.game |
| 1b20 | 4f 62 6a 65 63 74 2e 53 65 74 41 63 74 69 76 65 28 74 72 75 65 29 3b 0d 0a 20 20 20 20 20 20 20 | Object.SetActive(true);......... |
| 1b40 | 20 20 20 20 20 7d 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 69 6e 73 74 61 6e 63 65 2e 65 6e 61 | .....}..............instance.ena |
| 1b60 | 62 6c 65 64 20 3d 20 74 72 75 65 3b 0d 0a 20 20 20 20 20 20 20 20 7d 0d 0a 0d 0a 20 20 20 20 20 | bled.=.true;..........}......... |
| 1b80 | 20 20 20 70 75 62 6c 69 63 20 73 74 61 74 69 63 20 76 6f 69 64 20 44 69 73 61 62 6c 65 28 29 0d | ...public.static.void.Disable(). |
| 1ba0 | 0a 20 20 20 20 20 20 20 20 7b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 69 66 20 28 69 6e 73 74 | .........{..............if.(inst |
| 1bc0 | 61 6e 63 65 20 21 3d 20 6e 75 6c 6c 29 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 69 | ance.!=.null)..................i |
| 1be0 | 6e 73 74 61 6e 63 65 2e 65 6e 61 62 6c 65 64 20 3d 20 66 61 6c 73 65 3b 0d 0a 20 20 20 20 20 20 | nstance.enabled.=.false;........ |
| 1c00 | 20 20 7d 0d 0a 0d 0a 20 20 20 20 20 20 20 20 70 75 62 6c 69 63 20 73 74 61 74 69 63 20 76 6f 69 | ..}............public.static.voi |
| 1c20 | 64 20 44 65 73 74 72 6f 79 28 29 0d 0a 20 20 20 20 20 20 20 20 7b 0d 0a 20 20 20 20 20 20 20 20 | d.Destroy()..........{.......... |
| 1c40 | 20 20 20 20 44 69 73 61 62 6c 65 28 29 3b 0d 0a 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 69 66 | ....Disable();................if |
| 1c60 | 20 28 73 5f 49 6e 73 74 61 6e 63 65 20 21 3d 20 6e 75 6c 6c 29 0d 0a 20 20 20 20 20 20 20 20 20 | .(s_Instance.!=.null)........... |
| 1c80 | 20 20 20 7b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 44 65 73 74 72 6f 79 28 73 5f | ...{..................Destroy(s_ |
| 1ca0 | 49 6e 73 74 61 6e 63 65 2e 67 61 6d 65 4f 62 6a 65 63 74 29 3b 0d 0a 20 20 20 20 20 20 20 20 20 | Instance.gameObject);........... |
| 1cc0 | 20 20 20 20 20 20 20 73 5f 49 6e 73 74 61 6e 63 65 20 3d 20 6e 75 6c 6c 3b 0d 0a 20 20 20 20 20 | .......s_Instance.=.null;....... |
| 1ce0 | 20 20 20 20 20 20 20 7d 0d 0a 20 20 20 20 20 20 20 20 7d 0d 0a 0d 0a 20 20 20 20 20 20 20 20 70 | .......}..........}............p |
| 1d00 | 72 6f 74 65 63 74 65 64 20 76 6f 69 64 20 41 64 64 50 6f 69 6e 74 65 72 28 50 6f 69 6e 74 65 72 | rotected.void.AddPointer(Pointer |
| 1d20 | 20 70 6f 69 6e 74 65 72 29 0d 0a 20 20 20 20 20 20 20 20 7b 0d 0a 20 20 20 20 20 20 20 20 20 20 | .pointer)..........{............ |
| 1d40 | 20 20 69 66 20 28 70 6f 69 6e 74 65 72 20 3d 3d 20 6e 75 6c 6c 29 0d 0a 20 20 20 20 20 20 20 20 | ..if.(pointer.==.null).......... |
| 1d60 | 20 20 20 20 20 20 20 20 74 68 72 6f 77 20 6e 65 77 20 41 72 67 75 6d 65 6e 74 4e 75 6c 6c 45 78 | ........throw.new.ArgumentNullEx |
| 1d80 | 63 65 70 74 69 6f 6e 28 6e 61 6d 65 6f 66 28 70 6f 69 6e 74 65 72 29 29 3b 0d 0a 0d 0a 20 20 20 | ception(nameof(pointer));....... |
| 1da0 | 20 20 20 20 20 20 20 20 20 2f 2f 20 49 67 6e 6f 72 65 20 69 66 20 61 6c 72 65 61 64 79 20 61 64 | .........//.Ignore.if.already.ad |
| 1dc0 | 64 65 64 2e 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 69 66 20 28 41 72 72 61 79 48 65 6c 70 65 | ded...............if.(ArrayHelpe |
| 1de0 | 72 73 2e 43 6f 6e 74 61 69 6e 73 52 65 66 65 72 65 6e 63 65 28 6d 5f 53 6f 75 72 63 65 73 2c 20 | rs.ContainsReference(m_Sources,. |
| 1e00 | 6d 5f 4e 75 6d 53 6f 75 72 63 65 73 2c 20 70 6f 69 6e 74 65 72 29 29 0d 0a 20 20 20 20 20 20 20 | m_NumSources,.pointer))......... |
| 1e20 | 20 20 20 20 20 20 20 20 20 72 65 74 75 72 6e 3b 0d 0a 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 | .........return;................ |
| 1e40 | 76 61 72 20 6e 75 6d 50 6f 73 69 74 69 6f 6e 73 20 3d 20 6d 5f 4e 75 6d 53 6f 75 72 63 65 73 3b | var.numPositions.=.m_NumSources; |
| 1e60 | 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 41 72 72 61 79 48 65 6c 70 65 72 73 2e 41 70 70 65 6e | ..............ArrayHelpers.Appen |
| 1e80 | 64 57 69 74 68 43 61 70 61 63 69 74 79 28 72 65 66 20 6d 5f 43 75 72 72 65 6e 74 50 6f 73 69 74 | dWithCapacity(ref.m_CurrentPosit |
| 1ea0 | 69 6f 6e 73 2c 20 72 65 66 20 6e 75 6d 50 6f 73 69 74 69 6f 6e 73 2c 20 56 65 63 74 6f 72 32 2e | ions,.ref.numPositions,.Vector2. |
| 1ec0 | 7a 65 72 6f 29 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 76 61 72 20 69 6e 64 65 78 20 3d 20 | zero);..............var.index.=. |
| 1ee0 | 41 72 72 61 79 48 65 6c 70 65 72 73 2e 41 70 70 65 6e 64 57 69 74 68 43 61 70 61 63 69 74 79 28 | ArrayHelpers.AppendWithCapacity( |
| 1f00 | 72 65 66 20 6d 5f 53 6f 75 72 63 65 73 2c 20 72 65 66 20 6d 5f 4e 75 6d 53 6f 75 72 63 65 73 2c | ref.m_Sources,.ref.m_NumSources, |
| 1f20 | 20 70 6f 69 6e 74 65 72 29 3b 0d 0a 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 49 6e 73 74 61 6c | .pointer);................Instal |
| 1f40 | 6c 53 74 61 74 65 43 68 61 6e 67 65 4d 6f 6e 69 74 6f 72 73 28 69 6e 64 65 78 29 3b 0d 0a 20 20 | lStateChangeMonitors(index);.... |
| 1f60 | 20 20 20 20 20 20 7d 0d 0a 0d 0a 20 20 20 20 20 20 20 20 70 72 6f 74 65 63 74 65 64 20 76 6f 69 | ......}............protected.voi |
| 1f80 | 64 20 52 65 6d 6f 76 65 50 6f 69 6e 74 65 72 28 50 6f 69 6e 74 65 72 20 70 6f 69 6e 74 65 72 29 | d.RemovePointer(Pointer.pointer) |
| 1fa0 | 0d 0a 20 20 20 20 20 20 20 20 7b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 69 66 20 28 70 6f 69 | ..........{..............if.(poi |
| 1fc0 | 6e 74 65 72 20 3d 3d 20 6e 75 6c 6c 29 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 74 | nter.==.null)..................t |
| 1fe0 | 68 72 6f 77 20 6e 65 77 20 41 72 67 75 6d 65 6e 74 4e 75 6c 6c 45 78 63 65 70 74 69 6f 6e 28 6e | hrow.new.ArgumentNullException(n |
| 2000 | 61 6d 65 6f 66 28 70 6f 69 6e 74 65 72 29 29 3b 0d 0a 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 | ameof(pointer));................ |
| 2020 | 2f 2f 20 49 67 6e 6f 72 65 20 69 66 20 6e 6f 74 20 61 64 64 65 64 2e 0d 0a 20 20 20 20 20 20 20 | //.Ignore.if.not.added.......... |
| 2040 | 20 20 20 20 20 76 61 72 20 69 6e 64 65 78 20 3d 20 41 72 72 61 79 48 65 6c 70 65 72 73 2e 49 6e | .....var.index.=.ArrayHelpers.In |
| 2060 | 64 65 78 4f 66 52 65 66 65 72 65 6e 63 65 28 6d 5f 53 6f 75 72 63 65 73 2c 20 70 6f 69 6e 74 65 | dexOfReference(m_Sources,.pointe |
| 2080 | 72 2c 20 6d 5f 4e 75 6d 53 6f 75 72 63 65 73 29 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 69 | r,.m_NumSources);..............i |
| 20a0 | 66 20 28 69 6e 64 65 78 20 3d 3d 20 2d 31 29 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | f.(index.==.-1)................. |
| 20c0 | 20 72 65 74 75 72 6e 3b 0d 0a 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 2f 2f 20 52 65 6d 6f 76 | .return;................//.Remov |
| 20e0 | 69 6e 67 20 74 68 65 20 70 6f 69 6e 74 65 72 20 77 69 6c 6c 20 73 68 69 66 74 20 69 6e 64 69 63 | ing.the.pointer.will.shift.indic |
| 2100 | 65 73 20 6f 66 20 61 6c 6c 20 70 6f 69 6e 74 65 72 73 20 63 6f 6d 69 6e 67 20 61 66 74 65 72 20 | es.of.all.pointers.coming.after. |
| 2120 | 69 74 2e 20 53 6f 20 77 65 20 75 6e 69 6e 73 74 61 6c 6c 20 61 6c 6c 0d 0a 20 20 20 20 20 20 20 | it..So.we.uninstall.all......... |
| 2140 | 20 20 20 20 20 2f 2f 20 6d 6f 6e 69 74 6f 72 73 20 73 74 61 72 74 69 6e 67 20 77 69 74 68 20 74 | .....//.monitors.starting.with.t |
| 2160 | 68 65 20 64 65 76 69 63 65 20 77 65 27 72 65 20 61 62 6f 75 74 20 74 6f 20 72 65 6d 6f 76 65 20 | he.device.we're.about.to.remove. |
| 2180 | 61 6e 64 20 74 68 65 6e 20 72 65 2d 69 6e 73 74 61 6c 6c 20 77 68 61 74 65 76 65 72 20 69 73 20 | and.then.re-install.whatever.is. |
| 21a0 | 6c 65 66 74 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 2f 2f 20 73 74 61 72 74 69 6e 67 20 61 74 | left..............//.starting.at |
| 21c0 | 20 74 68 65 20 73 61 6d 65 20 69 6e 64 65 78 2e 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 55 6e | .the.same.index...............Un |
| 21e0 | 69 6e 73 74 61 6c 6c 53 74 61 74 65 43 68 61 6e 67 65 4d 6f 6e 69 74 6f 72 73 28 69 6e 64 65 78 | installStateChangeMonitors(index |
| 2200 | 29 3b 0d 0a 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 2f 2f 20 43 61 6e 63 65 6c 20 61 6c 6c 20 | );................//.Cancel.all. |
| 2220 | 6f 6e 67 6f 69 6e 67 20 74 6f 75 63 68 65 73 20 66 72 6f 6d 20 74 68 65 20 70 6f 69 6e 74 65 72 | ongoing.touches.from.the.pointer |
| 2240 | 2e 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 66 6f 72 20 28 76 61 72 20 69 20 3d 20 30 3b 20 69 | ...............for.(var.i.=.0;.i |
| 2260 | 20 3c 20 6d 5f 54 6f 75 63 68 65 73 2e 4c 65 6e 67 74 68 3b 20 2b 2b 69 29 0d 0a 20 20 20 20 20 | .<.m_Touches.Length;.++i)....... |
| 2280 | 20 20 20 20 20 20 20 7b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 69 66 20 28 6d 5f | .......{..................if.(m_ |
| 22a0 | 54 6f 75 63 68 65 73 5b 69 5d 2e 74 6f 75 63 68 49 64 20 3d 3d 20 30 20 7c 7c 20 6d 5f 54 6f 75 | Touches[i].touchId.==.0.||.m_Tou |
| 22c0 | 63 68 65 73 5b 69 5d 2e 73 6f 75 72 63 65 49 6e 64 65 78 20 21 3d 20 69 6e 64 65 78 29 0d 0a 20 | ches[i].sourceIndex.!=.index)... |
| 22e0 | 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 63 6f 6e 74 69 6e 75 65 3b 0d 0a 0d 0a | ...................continue;.... |
| 2300 | 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 76 61 72 20 69 73 50 72 69 6d 61 72 79 20 3d 20 | ................var.isPrimary.=. |
| 2320 | 6d 5f 50 72 69 6d 61 72 79 54 6f 75 63 68 49 6e 64 65 78 20 3d 3d 20 69 3b 0d 0a 20 20 20 20 20 | m_PrimaryTouchIndex.==.i;....... |
| 2340 | 20 20 20 20 20 20 20 20 20 20 20 76 61 72 20 74 6f 75 63 68 20 3d 20 6e 65 77 20 54 6f 75 63 68 | ...........var.touch.=.new.Touch |
| 2360 | 53 74 61 74 65 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7b 0d 0a 20 20 20 20 20 20 | State..................{........ |
| 2380 | 20 20 20 20 20 20 20 20 20 20 20 20 20 20 70 68 61 73 65 20 3d 20 54 6f 75 63 68 50 68 61 73 65 | ..............phase.=.TouchPhase |
| 23a0 | 2e 43 61 6e 63 65 6c 65 64 2c 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | .Canceled,...................... |
| 23c0 | 70 6f 73 69 74 69 6f 6e 20 3d 20 6d 5f 43 75 72 72 65 6e 74 50 6f 73 69 74 69 6f 6e 73 5b 69 6e | position.=.m_CurrentPositions[in |
| 23e0 | 64 65 78 5d 2c 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 74 6f 75 63 68 | dex],......................touch |
| 2400 | 49 64 20 3d 20 6d 5f 54 6f 75 63 68 65 73 5b 69 5d 2e 74 6f 75 63 68 49 64 2c 0d 0a 20 20 20 20 | Id.=.m_Touches[i].touchId,...... |
| 2420 | 20 20 20 20 20 20 20 20 20 20 20 20 7d 3b 0d 0a 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | ............};.................. |
| 2440 | 20 20 69 66 20 28 69 73 50 72 69 6d 61 72 79 29 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | ..if.(isPrimary)................ |
| 2460 | 20 20 7b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 49 6e 70 75 74 53 74 | ..{......................InputSt |
| 2480 | 61 74 65 2e 43 68 61 6e 67 65 28 73 69 6d 75 6c 61 74 65 64 54 6f 75 63 68 73 63 72 65 65 6e 2e | ate.Change(simulatedTouchscreen. |
| 24a0 | 70 72 69 6d 61 72 79 54 6f 75 63 68 2c 20 74 6f 75 63 68 29 3b 0d 0a 20 20 20 20 20 20 20 20 20 | primaryTouch,.touch);........... |
| 24c0 | 20 20 20 20 20 20 20 20 20 20 20 6d 5f 50 72 69 6d 61 72 79 54 6f 75 63 68 49 6e 64 65 78 20 3d | ...........m_PrimaryTouchIndex.= |
| 24e0 | 20 2d 31 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7d 0d 0a 0d 0a 20 20 20 20 20 | .-1;..................}......... |
| 2500 | 20 20 20 20 20 20 20 20 20 20 20 49 6e 70 75 74 53 74 61 74 65 2e 43 68 61 6e 67 65 28 73 69 6d | ...........InputState.Change(sim |
| 2520 | 75 6c 61 74 65 64 54 6f 75 63 68 73 63 72 65 65 6e 2e 74 6f 75 63 68 65 73 5b 69 5d 2c 20 74 6f | ulatedTouchscreen.touches[i],.to |
| 2540 | 75 63 68 29 3b 0d 0a 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 6d 5f 54 6f 75 63 68 | uch);....................m_Touch |
| 2560 | 65 73 5b 69 5d 2e 74 6f 75 63 68 49 64 20 3d 20 30 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 | es[i].touchId.=.0;.............. |
| 2580 | 20 20 20 20 6d 5f 54 6f 75 63 68 65 73 5b 69 5d 2e 73 6f 75 72 63 65 49 6e 64 65 78 20 3d 20 30 | ....m_Touches[i].sourceIndex.=.0 |
| 25a0 | 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 7d 0d 0a 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 | ;..............}................ |
| 25c0 | 2f 2f 20 52 65 6d 6f 76 65 20 66 72 6f 6d 20 61 72 72 61 79 73 2e 0d 0a 20 20 20 20 20 20 20 20 | //.Remove.from.arrays........... |
| 25e0 | 20 20 20 20 76 61 72 20 6e 75 6d 50 6f 73 69 74 69 6f 6e 73 20 3d 20 6d 5f 4e 75 6d 53 6f 75 72 | ....var.numPositions.=.m_NumSour |
| 2600 | 63 65 73 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 41 72 72 61 79 48 65 6c 70 65 72 73 2e 45 | ces;..............ArrayHelpers.E |
| 2620 | 72 61 73 65 41 74 57 69 74 68 43 61 70 61 63 69 74 79 28 6d 5f 43 75 72 72 65 6e 74 50 6f 73 69 | raseAtWithCapacity(m_CurrentPosi |
| 2640 | 74 69 6f 6e 73 2c 20 72 65 66 20 6e 75 6d 50 6f 73 69 74 69 6f 6e 73 2c 20 69 6e 64 65 78 29 3b | tions,.ref.numPositions,.index); |
| 2660 | 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 41 72 72 61 79 48 65 6c 70 65 72 73 2e 45 72 61 73 65 | ..............ArrayHelpers.Erase |
| 2680 | 41 74 57 69 74 68 43 61 70 61 63 69 74 79 28 6d 5f 53 6f 75 72 63 65 73 2c 20 72 65 66 20 6d 5f | AtWithCapacity(m_Sources,.ref.m_ |
| 26a0 | 4e 75 6d 53 6f 75 72 63 65 73 2c 20 69 6e 64 65 78 29 3b 0d 0a 0d 0a 20 20 20 20 20 20 20 20 20 | NumSources,.index);............. |
| 26c0 | 20 20 20 69 66 20 28 69 6e 64 65 78 20 21 3d 20 6d 5f 4e 75 6d 53 6f 75 72 63 65 73 29 0d 0a 20 | ...if.(index.!=.m_NumSources)... |
| 26e0 | 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 49 6e 73 74 61 6c 6c 53 74 61 74 65 43 68 61 6e 67 | ...............InstallStateChang |
| 2700 | 65 4d 6f 6e 69 74 6f 72 73 28 69 6e 64 65 78 29 3b 0d 0a 20 20 20 20 20 20 20 20 7d 0d 0a 0d 0a | eMonitors(index);..........}.... |
| 2720 | 20 20 20 20 20 20 20 20 70 72 6f 74 65 63 74 65 64 20 76 6f 69 64 20 49 6e 73 74 61 6c 6c 53 74 | ........protected.void.InstallSt |
| 2740 | 61 74 65 43 68 61 6e 67 65 4d 6f 6e 69 74 6f 72 73 28 69 6e 74 20 73 74 61 72 74 49 6e 64 65 78 | ateChangeMonitors(int.startIndex |
| 2760 | 20 3d 20 30 29 0d 0a 20 20 20 20 20 20 20 20 7b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 2f 2f | .=.0)..........{..............// |
| 2780 | 2f 2f 52 45 56 49 45 57 3a 20 6a 75 73 74 20 62 69 6e 64 20 74 6f 20 74 68 65 20 65 6e 74 69 72 | //REVIEW:.just.bind.to.the.entir |
| 27a0 | 65 20 70 6f 69 6e 74 65 72 20 73 74 61 74 65 20 69 6e 73 74 65 61 64 20 6f 66 20 74 6f 20 69 6e | e.pointer.state.instead.of.to.in |
| 27c0 | 64 69 76 69 64 75 61 6c 20 63 6f 6e 74 72 6f 6c 73 3f 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 | dividual.controls?.............. |
| 27e0 | 66 6f 72 20 28 76 61 72 20 69 20 3d 20 73 74 61 72 74 49 6e 64 65 78 3b 20 69 20 3c 20 6d 5f 4e | for.(var.i.=.startIndex;.i.<.m_N |
| 2800 | 75 6d 53 6f 75 72 63 65 73 3b 20 2b 2b 69 29 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 7b 0d 0a | umSources;.++i)..............{.. |
| 2820 | 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 76 61 72 20 70 6f 69 6e 74 65 72 20 3d 20 6d 5f | ................var.pointer.=.m_ |
| 2840 | 53 6f 75 72 63 65 73 5b 69 5d 3b 0d 0a 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 2f | Sources[i];..................../ |
| 2860 | 2f 20 4d 6f 6e 69 74 6f 72 20 70 6f 73 69 74 69 6f 6e 2e 0d 0a 20 20 20 20 20 20 20 20 20 20 20 | /.Monitor.position.............. |
| 2880 | 20 20 20 20 20 49 6e 70 75 74 53 74 61 74 65 2e 41 64 64 43 68 61 6e 67 65 4d 6f 6e 69 74 6f 72 | .....InputState.AddChangeMonitor |
| 28a0 | 28 70 6f 69 6e 74 65 72 2e 70 6f 73 69 74 69 6f 6e 2c 20 74 68 69 73 2c 20 69 29 3b 0d 0a 0d 0a | (pointer.position,.this,.i);.... |
| 28c0 | 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 2f 2f 20 4d 6f 6e 69 74 6f 72 20 61 6e 79 20 62 | ................//.Monitor.any.b |
| 28e0 | 75 74 74 6f 6e 20 74 68 61 74 20 69 73 6e 27 74 20 73 79 6e 74 68 65 74 69 63 2e 0d 0a 20 20 20 | utton.that.isn't.synthetic...... |
| 2900 | 20 20 20 20 20 20 20 20 20 20 20 20 20 76 61 72 20 62 75 74 74 6f 6e 49 6e 64 65 78 20 3d 20 30 | .............var.buttonIndex.=.0 |
| 2920 | 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 66 6f 72 65 61 63 68 20 28 76 61 72 20 | ;..................foreach.(var. |
| 2940 | 63 6f 6e 74 72 6f 6c 20 69 6e 20 70 6f 69 6e 74 65 72 2e 61 6c 6c 43 6f 6e 74 72 6f 6c 73 29 0d | control.in.pointer.allControls). |
| 2960 | 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 69 66 20 28 63 6f 6e 74 72 6f 6c | .....................if.(control |
| 2980 | 20 69 73 20 42 75 74 74 6f 6e 43 6f 6e 74 72 6f 6c 20 62 75 74 74 6f 6e 20 26 26 20 21 62 75 74 | .is.ButtonControl.button.&&.!but |
| 29a0 | 74 6f 6e 2e 73 79 6e 74 68 65 74 69 63 29 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | ton.synthetic).................. |
| 29c0 | 20 20 20 20 7b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 49 | ....{..........................I |
| 29e0 | 6e 70 75 74 53 74 61 74 65 2e 41 64 64 43 68 61 6e 67 65 4d 6f 6e 69 74 6f 72 28 62 75 74 74 6f | nputState.AddChangeMonitor(butto |
| 2a00 | 6e 2c 20 74 68 69 73 2c 20 28 28 6c 6f 6e 67 29 28 75 69 6e 74 29 62 75 74 74 6f 6e 49 6e 64 65 | n,.this,.((long)(uint)buttonInde |
| 2a20 | 78 20 3c 3c 20 33 32 29 20 7c 20 28 75 69 6e 74 29 69 29 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 | x.<<.32).|.(uint)i);............ |
| 2a40 | 20 20 20 20 20 20 20 20 20 20 20 20 20 20 2b 2b 62 75 74 74 6f 6e 49 6e 64 65 78 3b 0d 0a 20 20 | ..............++buttonIndex;.... |
| 2a60 | 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7d 0d 0a 20 20 20 20 20 20 20 20 20 20 20 | ..................}............. |
| 2a80 | 20 7d 0d 0a 20 20 20 20 20 20 20 20 7d 0d 0a 0d 0a 20 20 20 20 20 20 20 20 70 72 6f 74 65 63 74 | .}..........}............protect |
| 2aa0 | 65 64 20 76 6f 69 64 20 55 6e 69 6e 73 74 61 6c 6c 53 74 61 74 65 43 68 61 6e 67 65 4d 6f 6e 69 | ed.void.UninstallStateChangeMoni |
| 2ac0 | 74 6f 72 73 28 69 6e 74 20 73 74 61 72 74 49 6e 64 65 78 20 3d 20 30 29 0d 0a 20 20 20 20 20 20 | tors(int.startIndex.=.0)........ |
| 2ae0 | 20 20 7b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 66 6f 72 20 28 76 61 72 20 69 20 3d 20 73 74 | ..{..............for.(var.i.=.st |
| 2b00 | 61 72 74 49 6e 64 65 78 3b 20 69 20 3c 20 6d 5f 4e 75 6d 53 6f 75 72 63 65 73 3b 20 2b 2b 69 29 | artIndex;.i.<.m_NumSources;.++i) |
| 2b20 | 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 7b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | ..............{................. |
| 2b40 | 20 76 61 72 20 70 6f 69 6e 74 65 72 20 3d 20 6d 5f 53 6f 75 72 63 65 73 5b 69 5d 3b 0d 0a 0d 0a | .var.pointer.=.m_Sources[i];.... |
| 2b60 | 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 49 6e 70 75 74 53 74 61 74 65 2e 52 65 6d 6f 76 | ................InputState.Remov |
| 2b80 | 65 43 68 61 6e 67 65 4d 6f 6e 69 74 6f 72 28 70 6f 69 6e 74 65 72 2e 70 6f 73 69 74 69 6f 6e 2c | eChangeMonitor(pointer.position, |
| 2ba0 | 20 74 68 69 73 2c 20 69 29 3b 0d 0a 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 76 61 | .this,.i);....................va |
| 2bc0 | 72 20 62 75 74 74 6f 6e 49 6e 64 65 78 20 3d 20 30 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 | r.buttonIndex.=.0;.............. |
| 2be0 | 20 20 20 20 66 6f 72 65 61 63 68 20 28 76 61 72 20 63 6f 6e 74 72 6f 6c 20 69 6e 20 70 6f 69 6e | ....foreach.(var.control.in.poin |
| 2c00 | 74 65 72 2e 61 6c 6c 43 6f 6e 74 72 6f 6c 73 29 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | ter.allControls)................ |
| 2c20 | 20 20 20 20 20 20 69 66 20 28 63 6f 6e 74 72 6f 6c 20 69 73 20 42 75 74 74 6f 6e 43 6f 6e 74 72 | ......if.(control.is.ButtonContr |
| 2c40 | 6f 6c 20 62 75 74 74 6f 6e 20 26 26 20 21 62 75 74 74 6f 6e 2e 73 79 6e 74 68 65 74 69 63 29 0d | ol.button.&&.!button.synthetic). |
| 2c60 | 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7b 0d 0a 20 20 20 20 20 20 20 20 | .....................{.......... |
| 2c80 | 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 49 6e 70 75 74 53 74 61 74 65 2e 52 65 6d 6f 76 | ................InputState.Remov |
| 2ca0 | 65 43 68 61 6e 67 65 4d 6f 6e 69 74 6f 72 28 62 75 74 74 6f 6e 2c 20 74 68 69 73 2c 20 28 28 6c | eChangeMonitor(button,.this,.((l |
| 2cc0 | 6f 6e 67 29 28 75 69 6e 74 29 62 75 74 74 6f 6e 49 6e 64 65 78 20 3c 3c 20 33 32 29 20 7c 20 28 | ong)(uint)buttonIndex.<<.32).|.( |
| 2ce0 | 75 69 6e 74 29 69 29 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | uint)i);........................ |
| 2d00 | 20 20 2b 2b 62 75 74 74 6f 6e 49 6e 64 65 78 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | ..++buttonIndex;................ |
| 2d20 | 20 20 20 20 20 20 7d 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 7d 0d 0a 20 20 20 20 20 20 20 20 | ......}..............}.......... |
| 2d40 | 7d 0d 0a 0d 0a 20 20 20 20 20 20 20 20 70 72 6f 74 65 63 74 65 64 20 76 6f 69 64 20 4f 6e 53 6f | }............protected.void.OnSo |
| 2d60 | 75 72 63 65 43 6f 6e 74 72 6f 6c 43 68 61 6e 67 65 64 56 61 6c 75 65 28 49 6e 70 75 74 43 6f 6e | urceControlChangedValue(InputCon |
| 2d80 | 74 72 6f 6c 20 63 6f 6e 74 72 6f 6c 2c 20 64 6f 75 62 6c 65 20 74 69 6d 65 2c 20 49 6e 70 75 74 | trol.control,.double.time,.Input |
| 2da0 | 45 76 65 6e 74 50 74 72 20 65 76 65 6e 74 50 74 72 2c 20 6c 6f 6e 67 20 73 6f 75 72 63 65 44 65 | EventPtr.eventPtr,.long.sourceDe |
| 2dc0 | 76 69 63 65 41 6e 64 42 75 74 74 6f 6e 49 6e 64 65 78 29 0d 0a 20 20 20 20 20 20 20 20 7b 0d 0a | viceAndButtonIndex)..........{.. |
| 2de0 | 20 20 20 20 20 20 20 20 20 20 20 20 76 61 72 20 73 6f 75 72 63 65 44 65 76 69 63 65 49 6e 64 65 | ............var.sourceDeviceInde |
| 2e00 | 78 20 3d 20 73 6f 75 72 63 65 44 65 76 69 63 65 41 6e 64 42 75 74 74 6f 6e 49 6e 64 65 78 20 26 | x.=.sourceDeviceAndButtonIndex.& |
| 2e20 | 20 30 78 66 66 66 66 66 66 66 66 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 69 66 20 28 73 6f | .0xffffffff;..............if.(so |
| 2e40 | 75 72 63 65 44 65 76 69 63 65 49 6e 64 65 78 20 3c 20 30 20 26 26 20 73 6f 75 72 63 65 44 65 76 | urceDeviceIndex.<.0.&&.sourceDev |
| 2e60 | 69 63 65 49 6e 64 65 78 20 3e 3d 20 6d 5f 4e 75 6d 53 6f 75 72 63 65 73 29 0d 0a 20 20 20 20 20 | iceIndex.>=.m_NumSources)....... |
| 2e80 | 20 20 20 20 20 20 20 20 20 20 20 74 68 72 6f 77 20 6e 65 77 20 41 72 67 75 6d 65 6e 74 4f 75 74 | ...........throw.new.ArgumentOut |
| 2ea0 | 4f 66 52 61 6e 67 65 45 78 63 65 70 74 69 6f 6e 28 6e 61 6d 65 6f 66 28 73 6f 75 72 63 65 44 65 | OfRangeException(nameof(sourceDe |
| 2ec0 | 76 69 63 65 49 6e 64 65 78 29 2c 20 24 22 49 6e 64 65 78 20 7b 73 6f 75 72 63 65 44 65 76 69 63 | viceIndex),.$"Index.{sourceDevic |
| 2ee0 | 65 49 6e 64 65 78 7d 20 6f 75 74 20 6f 66 20 72 61 6e 67 65 3b 20 68 61 76 65 20 7b 6d 5f 4e 75 | eIndex}.out.of.range;.have.{m_Nu |
| 2f00 | 6d 53 6f 75 72 63 65 73 7d 20 73 6f 75 72 63 65 73 22 29 3b 0d 0a 0d 0a 20 20 20 20 20 20 20 20 | mSources}.sources");............ |
| 2f20 | 20 20 20 20 2f 2f 2f 2f 54 4f 44 4f 3a 20 74 68 69 73 20 63 61 6e 20 62 65 20 73 69 6d 70 6c 69 | ....////TODO:.this.can.be.simpli |
| 2f40 | 66 69 65 64 20 61 20 6c 6f 74 20 69 66 20 77 65 20 75 73 65 20 65 76 65 6e 74 73 20 69 6e 73 74 | fied.a.lot.if.we.use.events.inst |
| 2f60 | 65 61 64 20 6f 66 20 49 6e 70 75 74 53 74 61 74 65 2e 43 68 61 6e 67 65 28 29 20 62 75 74 20 64 | ead.of.InputState.Change().but.d |
| 2f80 | 6f 69 6e 67 20 73 6f 20 72 65 71 75 69 72 65 73 20 77 6f 72 6b 20 6f 6e 20 62 75 66 66 65 72 69 | oing.so.requires.work.on.bufferi |
| 2fa0 | 6e 67 20 65 76 65 6e 74 73 20 77 68 69 6c 65 20 70 72 6f 63 65 73 73 69 6e 67 3b 20 61 6c 73 6f | ng.events.while.processing;.also |
| 2fc0 | 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 2f 2f 2f 2f 20 20 20 20 20 20 20 6e 65 65 64 73 20 65 | ..............////.......needs.e |
| 2fe0 | 78 74 72 61 20 68 61 6e 64 6c 69 6e 67 20 74 6f 20 6e 6f 74 20 6c 61 67 20 69 6e 74 6f 20 74 68 | xtra.handling.to.not.lag.into.th |
| 3000 | 65 20 6e 65 78 74 20 66 72 61 6d 65 0d 0a 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 69 66 20 28 | e.next.frame................if.( |
| 3020 | 63 6f 6e 74 72 6f 6c 20 69 73 20 42 75 74 74 6f 6e 43 6f 6e 74 72 6f 6c 20 62 75 74 74 6f 6e 29 | control.is.ButtonControl.button) |
| 3040 | 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 7b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | ..............{................. |
| 3060 | 20 76 61 72 20 62 75 74 74 6f 6e 49 6e 64 65 78 20 3d 20 28 69 6e 74 29 28 73 6f 75 72 63 65 44 | .var.buttonIndex.=.(int)(sourceD |
| 3080 | 65 76 69 63 65 41 6e 64 42 75 74 74 6f 6e 49 6e 64 65 78 20 3e 3e 20 33 32 29 3b 0d 0a 20 20 20 | eviceAndButtonIndex.>>.32);..... |
| 30a0 | 20 20 20 20 20 20 20 20 20 20 20 20 20 76 61 72 20 69 73 50 72 65 73 73 65 64 20 3d 20 62 75 74 | .............var.isPressed.=.but |
| 30c0 | 74 6f 6e 2e 69 73 50 72 65 73 73 65 64 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | ton.isPressed;.................. |
| 30e0 | 69 66 20 28 69 73 50 72 65 73 73 65 64 29 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | if.(isPressed).................. |
| 3100 | 7b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 2f 2f 20 53 74 61 72 74 20 | {......................//.Start. |
| 3120 | 6e 65 77 20 74 6f 75 63 68 2e 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | new.touch....................... |
| 3140 | 66 6f 72 20 28 76 61 72 20 69 20 3d 20 30 3b 20 69 20 3c 20 6d 5f 54 6f 75 63 68 65 73 2e 4c 65 | for.(var.i.=.0;.i.<.m_Touches.Le |
| 3160 | 6e 67 74 68 3b 20 2b 2b 69 29 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | ngth;.++i)...................... |
| 3180 | 7b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 2f 2f 20 46 69 | {..........................//.Fi |
| 31a0 | 6e 64 20 75 6e 75 73 65 64 20 74 6f 75 63 68 2e 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | nd.unused.touch................. |
| 31c0 | 20 20 20 20 20 20 20 20 20 20 69 66 20 28 6d 5f 54 6f 75 63 68 65 73 5b 69 5d 2e 74 6f 75 63 68 | ..........if.(m_Touches[i].touch |
| 31e0 | 49 64 20 21 3d 20 30 29 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | Id.!=.0)........................ |
| 3200 | 20 20 20 20 20 20 63 6f 6e 74 69 6e 75 65 3b 0d 0a 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 | ......continue;................. |
| 3220 | 20 20 20 20 20 20 20 20 20 20 20 76 61 72 20 74 6f 75 63 68 49 64 20 3d 20 2b 2b 6d 5f 4c 61 73 | ...........var.touchId.=.++m_Las |
| 3240 | 74 54 6f 75 63 68 49 64 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | tTouchId;....................... |
| 3260 | 20 20 20 6d 5f 54 6f 75 63 68 65 73 5b 69 5d 20 3d 20 6e 65 77 20 53 69 6d 75 6c 61 74 65 64 54 | ...m_Touches[i].=.new.SimulatedT |
| 3280 | 6f 75 63 68 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7b 0d | ouch..........................{. |
| 32a0 | 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 74 6f 75 | .............................tou |
| 32c0 | 63 68 49 64 20 3d 20 74 6f 75 63 68 49 64 2c 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | chId.=.touchId,................. |
| 32e0 | 20 20 20 20 20 20 20 20 20 20 20 20 20 62 75 74 74 6f 6e 49 6e 64 65 78 20 3d 20 62 75 74 74 6f | .............buttonIndex.=.butto |
| 3300 | 6e 49 6e 64 65 78 2c 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | nIndex,......................... |
| 3320 | 20 20 20 20 20 73 6f 75 72 63 65 49 6e 64 65 78 20 3d 20 28 69 6e 74 29 73 6f 75 72 63 65 44 65 | .....sourceIndex.=.(int)sourceDe |
| 3340 | 76 69 63 65 49 6e 64 65 78 2c 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | viceIndex,...................... |
| 3360 | 20 20 20 20 7d 3b 0d 0a 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | ....};.......................... |
| 3380 | 20 20 76 61 72 20 69 73 50 72 69 6d 61 72 79 20 3d 20 6d 5f 50 72 69 6d 61 72 79 54 6f 75 63 68 | ..var.isPrimary.=.m_PrimaryTouch |
| 33a0 | 49 6e 64 65 78 20 3d 3d 20 2d 31 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | Index.==.-1;.................... |
| 33c0 | 20 20 20 20 20 20 76 61 72 20 70 6f 73 69 74 69 6f 6e 20 3d 20 6d 5f 43 75 72 72 65 6e 74 50 6f | ......var.position.=.m_CurrentPo |
| 33e0 | 73 69 74 69 6f 6e 73 5b 73 6f 75 72 63 65 44 65 76 69 63 65 49 6e 64 65 78 5d 3b 0d 0a 20 20 20 | sitions[sourceDeviceIndex];..... |
| 3400 | 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 76 61 72 20 6f 6c 64 54 6f 75 63 | .....................var.oldTouc |
| 3420 | 68 20 3d 20 73 69 6d 75 6c 61 74 65 64 54 6f 75 63 68 73 63 72 65 65 6e 2e 74 6f 75 63 68 65 73 | h.=.simulatedTouchscreen.touches |
| 3440 | 5b 69 5d 2e 52 65 61 64 56 61 6c 75 65 28 29 3b 0d 0a 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 | [i].ReadValue();................ |
| 3460 | 20 20 20 20 20 20 20 20 20 20 20 20 76 61 72 20 74 6f 75 63 68 20 3d 20 6e 65 77 20 54 6f 75 63 | ............var.touch.=.new.Touc |
| 3480 | 68 53 74 61 74 65 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | hState.......................... |
| 34a0 | 7b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 74 | {..............................t |
| 34c0 | 6f 75 63 68 49 64 20 3d 20 74 6f 75 63 68 49 64 2c 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 | ouchId.=.touchId,............... |
| 34e0 | 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 70 6f 73 69 74 69 6f 6e 20 3d 20 70 6f 73 69 74 69 | ...............position.=.positi |
| 3500 | 6f 6e 2c 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | on,............................. |
| 3520 | 20 70 68 61 73 65 20 3d 20 54 6f 75 63 68 50 68 61 73 65 2e 42 65 67 61 6e 2c 0d 0a 20 20 20 20 | .phase.=.TouchPhase.Began,...... |
| 3540 | 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 73 74 61 72 74 54 69 6d | ........................startTim |
| 3560 | 65 20 3d 20 74 69 6d 65 2c 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | e.=.time,....................... |
| 3580 | 20 20 20 20 20 20 20 73 74 61 72 74 50 6f 73 69 74 69 6f 6e 20 3d 20 70 6f 73 69 74 69 6f 6e 2c | .......startPosition.=.position, |
| 35a0 | 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 69 73 | ..............................is |
| 35c0 | 50 72 69 6d 61 72 79 54 6f 75 63 68 20 3d 20 69 73 50 72 69 6d 61 72 79 2c 0d 0a 20 20 20 20 20 | PrimaryTouch.=.isPrimary,....... |
| 35e0 | 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 74 61 70 43 6f 75 6e 74 20 | .......................tapCount. |
| 3600 | 3d 20 6f 6c 64 54 6f 75 63 68 2e 74 61 70 43 6f 75 6e 74 2c 0d 0a 20 20 20 20 20 20 20 20 20 20 | =.oldTouch.tapCount,............ |
| 3620 | 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7d 3b 0d 0a 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 | ..............};................ |
| 3640 | 20 20 20 20 20 20 20 20 20 20 20 20 69 66 20 28 69 73 50 72 69 6d 61 72 79 29 0d 0a 20 20 20 20 | ............if.(isPrimary)...... |
| 3660 | 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7b 0d 0a 20 20 20 20 20 20 20 20 20 | ....................{........... |
| 3680 | 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 49 6e 70 75 74 53 74 61 74 65 2e 43 68 | ...................InputState.Ch |
| 36a0 | 61 6e 67 65 28 73 69 6d 75 6c 61 74 65 64 54 6f 75 63 68 73 63 72 65 65 6e 2e 70 72 69 6d 61 72 | ange(simulatedTouchscreen.primar |
| 36c0 | 79 54 6f 75 63 68 2c 20 74 6f 75 63 68 2c 20 65 76 65 6e 74 50 74 72 3a 20 65 76 65 6e 74 50 74 | yTouch,.touch,.eventPtr:.eventPt |
| 36e0 | 72 29 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | r);............................. |
| 3700 | 20 6d 5f 50 72 69 6d 61 72 79 54 6f 75 63 68 49 6e 64 65 78 20 3d 20 69 3b 0d 0a 20 20 20 20 20 | .m_PrimaryTouchIndex.=.i;....... |
| 3720 | 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7d 0d 0a 20 20 20 20 20 20 20 20 20 20 | ...................}............ |
| 3740 | 20 20 20 20 20 20 20 20 20 20 20 20 20 20 49 6e 70 75 74 53 74 61 74 65 2e 43 68 61 6e 67 65 28 | ..............InputState.Change( |
| 3760 | 73 69 6d 75 6c 61 74 65 64 54 6f 75 63 68 73 63 72 65 65 6e 2e 74 6f 75 63 68 65 73 5b 69 5d 2c | simulatedTouchscreen.touches[i], |
| 3780 | 20 74 6f 75 63 68 2c 20 65 76 65 6e 74 50 74 72 3a 20 65 76 65 6e 74 50 74 72 29 3b 0d 0a 0d 0a | .touch,.eventPtr:.eventPtr);.... |
| 37a0 | 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 62 72 65 61 6b 3b 0d 0a | ........................break;.. |
| 37c0 | 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7d 0d 0a 20 20 20 20 20 20 20 20 20 | ....................}........... |
| 37e0 | 20 20 20 20 20 20 20 7d 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 65 6c 73 65 0d 0a | .......}..................else.. |
| 3800 | 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 | ................{............... |
| 3820 | 20 20 20 20 20 20 20 2f 2f 20 45 6e 64 20 6f 6e 67 6f 69 6e 67 20 74 6f 75 63 68 2e 0d 0a 20 20 | .......//.End.ongoing.touch..... |
| 3840 | 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 66 6f 72 20 28 76 61 72 20 69 20 3d 20 30 | ..................for.(var.i.=.0 |
| 3860 | 3b 20 69 20 3c 20 6d 5f 54 6f 75 63 68 65 73 2e 4c 65 6e 67 74 68 3b 20 2b 2b 69 29 0d 0a 20 20 | ;.i.<.m_Touches.Length;.++i).... |
| 3880 | 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 | ..................{............. |
| 38a0 | 20 20 20 20 20 20 20 20 20 20 20 20 20 69 66 20 28 6d 5f 54 6f 75 63 68 65 73 5b 69 5d 2e 62 75 | .............if.(m_Touches[i].bu |
| 38c0 | 74 74 6f 6e 49 6e 64 65 78 20 21 3d 20 62 75 74 74 6f 6e 49 6e 64 65 78 20 7c 7c 20 6d 5f 54 6f | ttonIndex.!=.buttonIndex.||.m_To |
| 38e0 | 75 63 68 65 73 5b 69 5d 2e 73 6f 75 72 63 65 49 6e 64 65 78 20 21 3d 20 73 6f 75 72 63 65 44 65 | uches[i].sourceIndex.!=.sourceDe |
| 3900 | 76 69 63 65 49 6e 64 65 78 20 7c 7c 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | viceIndex.||.................... |
| 3920 | 20 20 20 20 20 20 20 20 20 20 6d 5f 54 6f 75 63 68 65 73 5b 69 5d 2e 74 6f 75 63 68 49 64 20 3d | ..........m_Touches[i].touchId.= |
| 3940 | 3d 20 30 29 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | =.0)............................ |
| 3960 | 20 20 63 6f 6e 74 69 6e 75 65 3b 0d 0a 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | ..continue;..................... |
| 3980 | 20 20 20 20 20 20 20 2f 2f 20 44 65 74 65 63 74 20 74 61 70 73 2e 0d 0a 20 20 20 20 20 20 20 20 | .......//.Detect.taps........... |
| 39a0 | 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 76 61 72 20 70 6f 73 69 74 69 6f 6e 20 3d 20 6d | ................var.position.=.m |
| 39c0 | 5f 43 75 72 72 65 6e 74 50 6f 73 69 74 69 6f 6e 73 5b 73 6f 75 72 63 65 44 65 76 69 63 65 49 6e | _CurrentPositions[sourceDeviceIn |
| 39e0 | 64 65 78 5d 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 76 | dex];..........................v |
| 3a00 | 61 72 20 6f 6c 64 54 6f 75 63 68 20 3d 20 73 69 6d 75 6c 61 74 65 64 54 6f 75 63 68 73 63 72 65 | ar.oldTouch.=.simulatedTouchscre |
| 3a20 | 65 6e 2e 74 6f 75 63 68 65 73 5b 69 5d 2e 52 65 61 64 56 61 6c 75 65 28 29 3b 0d 0a 20 20 20 20 | en.touches[i].ReadValue();...... |
| 3a40 | 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 76 61 72 20 69 73 54 61 70 20 3d 20 | ....................var.isTap.=. |
| 3a60 | 74 69 6d 65 20 2d 20 6f 6c 64 54 6f 75 63 68 2e 73 74 61 72 74 54 69 6d 65 20 3c 3d 20 54 6f 75 | time.-.oldTouch.startTime.<=.Tou |
| 3a80 | 63 68 73 63 72 65 65 6e 2e 73 5f 54 61 70 54 69 6d 65 20 26 26 0d 0a 20 20 20 20 20 20 20 20 20 | chscreen.s_TapTime.&&........... |
| 3aa0 | 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 70 6f 73 69 74 69 6f 6e 20 2d 20 6f | ...................(position.-.o |
| 3ac0 | 6c 64 54 6f 75 63 68 2e 73 74 61 72 74 50 6f 73 69 74 69 6f 6e 29 2e 73 71 72 4d 61 67 6e 69 74 | ldTouch.startPosition).sqrMagnit |
| 3ae0 | 75 64 65 20 3c 3d 20 54 6f 75 63 68 73 63 72 65 65 6e 2e 73 5f 54 61 70 52 61 64 69 75 73 53 71 | ude.<=.Touchscreen.s_TapRadiusSq |
| 3b00 | 75 61 72 65 64 3b 0d 0a 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | uared;.......................... |
| 3b20 | 20 20 76 61 72 20 74 6f 75 63 68 20 3d 20 6e 65 77 20 54 6f 75 63 68 53 74 61 74 65 0d 0a 20 20 | ..var.touch.=.new.TouchState.... |
| 3b40 | 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7b 0d 0a 20 20 20 20 20 20 20 | ......................{......... |
| 3b60 | 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 74 6f 75 63 68 49 64 20 3d 20 6d | .....................touchId.=.m |
| 3b80 | 5f 54 6f 75 63 68 65 73 5b 69 5d 2e 74 6f 75 63 68 49 64 2c 0d 0a 20 20 20 20 20 20 20 20 20 20 | _Touches[i].touchId,............ |
| 3ba0 | 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 70 68 61 73 65 20 3d 20 54 6f 75 63 68 50 | ..................phase.=.TouchP |
| 3bc0 | 68 61 73 65 2e 45 6e 64 65 64 2c 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | hase.Ended,..................... |
| 3be0 | 20 20 20 20 20 20 20 20 20 70 6f 73 69 74 69 6f 6e 20 3d 20 70 6f 73 69 74 69 6f 6e 2c 0d 0a 20 | .........position.=.position,... |
| 3c00 | 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 74 61 70 43 6f | ...........................tapCo |
| 3c20 | 75 6e 74 20 3d 20 28 62 79 74 65 29 28 6f 6c 64 54 6f 75 63 68 2e 74 61 70 43 6f 75 6e 74 20 2b | unt.=.(byte)(oldTouch.tapCount.+ |
| 3c40 | 20 28 69 73 54 61 70 20 3f 20 31 20 3a 20 30 29 29 2c 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 | .(isTap.?.1.:.0)),.............. |
| 3c60 | 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 69 73 54 61 70 20 3d 20 69 73 54 61 70 2c 0d 0a | ................isTap.=.isTap,.. |
| 3c80 | 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 73 74 61 72 | ............................star |
| 3ca0 | 74 50 6f 73 69 74 69 6f 6e 20 3d 20 6f 6c 64 54 6f 75 63 68 2e 73 74 61 72 74 50 6f 73 69 74 69 | tPosition.=.oldTouch.startPositi |
| 3cc0 | 6f 6e 2c 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | on,............................. |
| 3ce0 | 20 73 74 61 72 74 54 69 6d 65 20 3d 20 6f 6c 64 54 6f 75 63 68 2e 73 74 61 72 74 54 69 6d 65 2c | .startTime.=.oldTouch.startTime, |
| 3d00 | 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7d 3b 0d 0a 0d 0a | ..........................};.... |
| 3d20 | 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 69 66 20 28 6d 5f 50 72 | ........................if.(m_Pr |
| 3d40 | 69 6d 61 72 79 54 6f 75 63 68 49 6e 64 65 78 20 3d 3d 20 69 29 0d 0a 20 20 20 20 20 20 20 20 20 | imaryTouchIndex.==.i)........... |
| 3d60 | 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | ...............{................ |
| 3d80 | 20 20 20 20 20 20 20 20 20 20 20 20 20 20 49 6e 70 75 74 53 74 61 74 65 2e 43 68 61 6e 67 65 28 | ..............InputState.Change( |
| 3da0 | 73 69 6d 75 6c 61 74 65 64 54 6f 75 63 68 73 63 72 65 65 6e 2e 70 72 69 6d 61 72 79 54 6f 75 63 | simulatedTouchscreen.primaryTouc |
| 3dc0 | 68 2c 20 74 6f 75 63 68 2c 20 65 76 65 6e 74 50 74 72 3a 20 65 76 65 6e 74 50 74 72 29 3b 0d 0a | h,.touch,.eventPtr:.eventPtr);.. |
| 3de0 | 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 2f 2f 2f 2f | ............................//// |
| 3e00 | 54 4f 44 4f 3a 20 63 68 65 63 6b 20 69 66 20 74 68 65 72 65 27 73 20 61 6e 20 6f 6e 67 6f 69 6e | TODO:.check.if.there's.an.ongoin |
| 3e20 | 67 20 74 6f 75 63 68 20 74 68 61 74 20 63 61 6e 20 74 61 6b 65 20 6f 76 65 72 0d 0a 20 20 20 20 | g.touch.that.can.take.over...... |
| 3e40 | 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 6d 5f 50 72 69 6d 61 72 | ........................m_Primar |
| 3e60 | 79 54 6f 75 63 68 49 6e 64 65 78 20 3d 20 2d 31 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 | yTouchIndex.=.-1;............... |
| 3e80 | 20 20 20 20 20 20 20 20 20 20 20 7d 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | ...........}.................... |
| 3ea0 | 20 20 20 20 20 20 49 6e 70 75 74 53 74 61 74 65 2e 43 68 61 6e 67 65 28 73 69 6d 75 6c 61 74 65 | ......InputState.Change(simulate |
| 3ec0 | 64 54 6f 75 63 68 73 63 72 65 65 6e 2e 74 6f 75 63 68 65 73 5b 69 5d 2c 20 74 6f 75 63 68 2c 20 | dTouchscreen.touches[i],.touch,. |
| 3ee0 | 65 76 65 6e 74 50 74 72 3a 20 65 76 65 6e 74 50 74 72 29 3b 0d 0a 0d 0a 20 20 20 20 20 20 20 20 | eventPtr:.eventPtr);............ |
| 3f00 | 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 6d 5f 54 6f 75 63 68 65 73 5b 69 5d 2e 74 6f 75 | ................m_Touches[i].tou |
| 3f20 | 63 68 49 64 20 3d 20 30 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | chId.=.0;....................... |
| 3f40 | 20 20 20 62 72 65 61 6b 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7d | ...break;......................} |
| 3f60 | 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7d 0d 0a 20 20 20 20 20 20 20 20 20 20 20 | ..................}............. |
| 3f80 | 20 7d 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 65 6c 73 65 0d 0a 20 20 20 20 20 20 20 20 20 20 | .}..............else............ |
| 3fa0 | 20 20 7b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 44 65 62 75 67 2e 41 73 73 65 72 | ..{..................Debug.Asser |
| 3fc0 | 74 28 63 6f 6e 74 72 6f 6c 20 69 73 20 49 6e 70 75 74 43 6f 6e 74 72 6f 6c 3c 56 65 63 74 6f 72 | t(control.is.InputControl<Vector |
| 3fe0 | 32 3e 2c 20 22 45 78 70 65 63 74 69 6e 67 20 63 6f 6e 74 72 6f 6c 20 74 6f 20 62 65 20 65 69 74 | 2>,."Expecting.control.to.be.eit |
| 4000 | 68 65 72 20 61 20 62 75 74 74 6f 6e 20 6f 72 20 61 20 70 6f 73 69 74 69 6f 6e 22 29 3b 0d 0a 20 | her.a.button.or.a.position");... |
| 4020 | 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 76 61 72 20 70 6f 73 69 74 69 6f 6e 43 6f 6e 74 72 | ...............var.positionContr |
| 4040 | 6f 6c 20 3d 20 28 49 6e 70 75 74 43 6f 6e 74 72 6f 6c 3c 56 65 63 74 6f 72 32 3e 29 63 6f 6e 74 | ol.=.(InputControl<Vector2>)cont |
| 4060 | 72 6f 6c 3b 0d 0a 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 2f 2f 20 55 70 64 61 74 | rol;....................//.Updat |
| 4080 | 65 20 72 65 63 6f 72 64 65 64 20 70 6f 73 69 74 69 6f 6e 2e 0d 0a 20 20 20 20 20 20 20 20 20 20 | e.recorded.position............. |
| 40a0 | 20 20 20 20 20 20 76 61 72 20 70 6f 73 69 74 69 6f 6e 20 3d 20 70 6f 73 69 74 69 6f 6e 43 6f 6e | ......var.position.=.positionCon |
| 40c0 | 74 72 6f 6c 2e 52 65 61 64 56 61 6c 75 65 28 29 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 | trol.ReadValue();............... |
| 40e0 | 20 20 20 76 61 72 20 64 65 6c 74 61 20 3d 20 70 6f 73 69 74 69 6f 6e 20 2d 20 6d 5f 43 75 72 72 | ...var.delta.=.position.-.m_Curr |
| 4100 | 65 6e 74 50 6f 73 69 74 69 6f 6e 73 5b 73 6f 75 72 63 65 44 65 76 69 63 65 49 6e 64 65 78 5d 3b | entPositions[sourceDeviceIndex]; |
| 4120 | 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 6d 5f 43 75 72 72 65 6e 74 50 6f 73 69 74 | ..................m_CurrentPosit |
| 4140 | 69 6f 6e 73 5b 73 6f 75 72 63 65 44 65 76 69 63 65 49 6e 64 65 78 5d 20 3d 20 70 6f 73 69 74 69 | ions[sourceDeviceIndex].=.positi |
| 4160 | 6f 6e 3b 0d 0a 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 2f 2f 20 55 70 64 61 74 65 | on;....................//.Update |
| 4180 | 20 70 6f 73 69 74 69 6f 6e 20 6f 66 20 6f 6e 67 6f 69 6e 67 20 74 6f 75 63 68 65 73 20 66 72 6f | .position.of.ongoing.touches.fro |
| 41a0 | 6d 20 74 68 69 73 20 70 6f 69 6e 74 65 72 2e 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | m.this.pointer.................. |
| 41c0 | 20 66 6f 72 20 28 76 61 72 20 69 20 3d 20 30 3b 20 69 20 3c 20 6d 5f 54 6f 75 63 68 65 73 2e 4c | .for.(var.i.=.0;.i.<.m_Touches.L |
| 41e0 | 65 6e 67 74 68 3b 20 2b 2b 69 29 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7b 0d 0a | ength;.++i)..................{.. |
| 4200 | 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 69 66 20 28 6d 5f 54 6f 75 63 68 65 | ....................if.(m_Touche |
| 4220 | 73 5b 69 5d 2e 73 6f 75 72 63 65 49 6e 64 65 78 20 21 3d 20 73 6f 75 72 63 65 44 65 76 69 63 65 | s[i].sourceIndex.!=.sourceDevice |
| 4240 | 49 6e 64 65 78 20 7c 7c 20 6d 5f 54 6f 75 63 68 65 73 5b 69 5d 2e 74 6f 75 63 68 49 64 20 3d 3d | Index.||.m_Touches[i].touchId.== |
| 4260 | 20 30 29 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 63 6f 6e | .0)..........................con |
| 4280 | 74 69 6e 75 65 3b 0d 0a 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 76 61 | tinue;........................va |
| 42a0 | 72 20 6f 6c 64 54 6f 75 63 68 20 3d 20 73 69 6d 75 6c 61 74 65 64 54 6f 75 63 68 73 63 72 65 65 | r.oldTouch.=.simulatedTouchscree |
| 42c0 | 6e 2e 74 6f 75 63 68 65 73 5b 69 5d 2e 52 65 61 64 56 61 6c 75 65 28 29 3b 0d 0a 20 20 20 20 20 | n.touches[i].ReadValue();....... |
| 42e0 | 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 76 61 72 20 69 73 50 72 69 6d 61 72 79 20 3d 20 6d | ...............var.isPrimary.=.m |
| 4300 | 5f 50 72 69 6d 61 72 79 54 6f 75 63 68 49 6e 64 65 78 20 3d 3d 20 69 3b 0d 0a 20 20 20 20 20 20 | _PrimaryTouchIndex.==.i;........ |
| 4320 | 20 20 20 20 20 20 20 20 20 20 20 20 20 20 76 61 72 20 74 6f 75 63 68 20 3d 20 6e 65 77 20 54 6f | ..............var.touch.=.new.To |
| 4340 | 75 63 68 53 74 61 74 65 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7b 0d | uchState......................{. |
| 4360 | 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 74 6f 75 63 68 49 64 | .........................touchId |
| 4380 | 20 3d 20 6d 5f 54 6f 75 63 68 65 73 5b 69 5d 2e 74 6f 75 63 68 49 64 2c 0d 0a 20 20 20 20 20 20 | .=.m_Touches[i].touchId,........ |
| 43a0 | 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 70 68 61 73 65 20 3d 20 54 6f 75 63 68 50 | ..................phase.=.TouchP |
| 43c0 | 68 61 73 65 2e 4d 6f 76 65 64 2c 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | hase.Moved,..................... |
| 43e0 | 20 20 20 20 20 70 6f 73 69 74 69 6f 6e 20 3d 20 70 6f 73 69 74 69 6f 6e 2c 0d 0a 20 20 20 20 20 | .....position.=.position,....... |
| 4400 | 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 64 65 6c 74 61 20 3d 20 64 65 6c 74 61 | ...................delta.=.delta |
| 4420 | 2c 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 69 73 50 72 69 | ,..........................isPri |
| 4440 | 6d 61 72 79 54 6f 75 63 68 20 3d 20 69 73 50 72 69 6d 61 72 79 2c 0d 0a 20 20 20 20 20 20 20 20 | maryTouch.=.isPrimary,.......... |
| 4460 | 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 74 61 70 43 6f 75 6e 74 20 3d 20 6f 6c 64 54 6f | ................tapCount.=.oldTo |
| 4480 | 75 63 68 2e 74 61 70 43 6f 75 6e 74 2c 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | uch.tapCount,................... |
| 44a0 | 20 20 20 20 20 20 20 69 73 54 61 70 20 3d 20 66 61 6c 73 65 2c 20 2f 2f 20 43 61 6e 27 74 20 62 | .......isTap.=.false,.//.Can't.b |
| 44c0 | 65 20 74 61 70 20 61 73 20 69 74 27 73 20 61 20 6d 6f 76 65 2e 0d 0a 20 20 20 20 20 20 20 20 20 | e.tap.as.it's.a.move............ |
| 44e0 | 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 73 74 61 72 74 50 6f 73 69 74 69 6f 6e 20 3d 20 6f | ...............startPosition.=.o |
| 4500 | 6c 64 54 6f 75 63 68 2e 73 74 61 72 74 50 6f 73 69 74 69 6f 6e 2c 0d 0a 20 20 20 20 20 20 20 20 | ldTouch.startPosition,.......... |
| 4520 | 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 73 74 61 72 74 54 69 6d 65 20 3d 20 6f 6c 64 54 | ................startTime.=.oldT |
| 4540 | 6f 75 63 68 2e 73 74 61 72 74 54 69 6d 65 2c 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | ouch.startTime,................. |
| 4560 | 20 20 20 20 20 7d 3b 0d 0a 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 69 | .....};........................i |
| 4580 | 66 20 28 69 73 50 72 69 6d 61 72 79 29 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | f.(isPrimary)................... |
| 45a0 | 20 20 20 20 20 20 20 49 6e 70 75 74 53 74 61 74 65 2e 43 68 61 6e 67 65 28 73 69 6d 75 6c 61 74 | .......InputState.Change(simulat |
| 45c0 | 65 64 54 6f 75 63 68 73 63 72 65 65 6e 2e 70 72 69 6d 61 72 79 54 6f 75 63 68 2c 20 74 6f 75 63 | edTouchscreen.primaryTouch,.touc |
| 45e0 | 68 2c 20 65 76 65 6e 74 50 74 72 3a 20 65 76 65 6e 74 50 74 72 29 3b 0d 0a 20 20 20 20 20 20 20 | h,.eventPtr:.eventPtr);......... |
| 4600 | 20 20 20 20 20 20 20 20 20 20 20 20 20 49 6e 70 75 74 53 74 61 74 65 2e 43 68 61 6e 67 65 28 73 | .............InputState.Change(s |
| 4620 | 69 6d 75 6c 61 74 65 64 54 6f 75 63 68 73 63 72 65 65 6e 2e 74 6f 75 63 68 65 73 5b 69 5d 2c 20 | imulatedTouchscreen.touches[i],. |
| 4640 | 74 6f 75 63 68 2c 20 65 76 65 6e 74 50 74 72 3a 20 65 76 65 6e 74 50 74 72 29 3b 0d 0a 20 20 20 | touch,.eventPtr:.eventPtr);..... |
| 4660 | 20 20 20 20 20 20 20 20 20 20 20 20 20 7d 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 7d 0d 0a 20 | .............}..............}... |
| 4680 | 20 20 20 20 20 20 20 7d 0d 0a 0d 0a 20 20 20 20 20 20 20 20 76 6f 69 64 20 49 49 6e 70 75 74 53 | .......}............void.IInputS |
| 46a0 | 74 61 74 65 43 68 61 6e 67 65 4d 6f 6e 69 74 6f 72 2e 4e 6f 74 69 66 79 43 6f 6e 74 72 6f 6c 53 | tateChangeMonitor.NotifyControlS |
| 46c0 | 74 61 74 65 43 68 61 6e 67 65 64 28 49 6e 70 75 74 43 6f 6e 74 72 6f 6c 20 63 6f 6e 74 72 6f 6c | tateChanged(InputControl.control |
| 46e0 | 2c 20 64 6f 75 62 6c 65 20 74 69 6d 65 2c 20 49 6e 70 75 74 45 76 65 6e 74 50 74 72 20 65 76 65 | ,.double.time,.InputEventPtr.eve |
| 4700 | 6e 74 50 74 72 2c 20 6c 6f 6e 67 20 6d 6f 6e 69 74 6f 72 49 6e 64 65 78 29 0d 0a 20 20 20 20 20 | ntPtr,.long.monitorIndex)....... |
| 4720 | 20 20 20 7b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 4f 6e 53 6f 75 72 63 65 43 6f 6e 74 72 6f | ...{..............OnSourceContro |
| 4740 | 6c 43 68 61 6e 67 65 64 56 61 6c 75 65 28 63 6f 6e 74 72 6f 6c 2c 20 74 69 6d 65 2c 20 65 76 65 | lChangedValue(control,.time,.eve |
| 4760 | 6e 74 50 74 72 2c 20 6d 6f 6e 69 74 6f 72 49 6e 64 65 78 29 3b 0d 0a 20 20 20 20 20 20 20 20 7d | ntPtr,.monitorIndex);..........} |
| 4780 | 0d 0a 0d 0a 20 20 20 20 20 20 20 20 76 6f 69 64 20 49 49 6e 70 75 74 53 74 61 74 65 43 68 61 6e | ............void.IInputStateChan |
| 47a0 | 67 65 4d 6f 6e 69 74 6f 72 2e 4e 6f 74 69 66 79 54 69 6d 65 72 45 78 70 69 72 65 64 28 49 6e 70 | geMonitor.NotifyTimerExpired(Inp |
| 47c0 | 75 74 43 6f 6e 74 72 6f 6c 20 63 6f 6e 74 72 6f 6c 2c 20 64 6f 75 62 6c 65 20 74 69 6d 65 2c 20 | utControl.control,.double.time,. |
| 47e0 | 6c 6f 6e 67 20 6d 6f 6e 69 74 6f 72 49 6e 64 65 78 2c 20 69 6e 74 20 74 69 6d 65 72 49 6e 64 65 | long.monitorIndex,.int.timerInde |
| 4800 | 78 29 0d 0a 20 20 20 20 20 20 20 20 7b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 2f 2f 20 57 65 | x)..........{..............//.We |
| 4820 | 20 64 6f 6e 27 74 20 75 73 65 20 74 69 6d 65 72 73 20 6f 6e 20 6f 75 72 20 6d 6f 6e 69 74 6f 72 | .don't.use.timers.on.our.monitor |
| 4840 | 73 2e 0d 0a 20 20 20 20 20 20 20 20 7d 0d 0a 0d 0a 20 20 20 20 20 20 20 20 70 72 69 76 61 74 65 | s...........}............private |
| 4860 | 20 76 6f 69 64 20 4f 6e 44 65 76 69 63 65 43 68 61 6e 67 65 28 49 6e 70 75 74 44 65 76 69 63 65 | .void.OnDeviceChange(InputDevice |
| 4880 | 20 64 65 76 69 63 65 2c 20 49 6e 70 75 74 44 65 76 69 63 65 43 68 61 6e 67 65 20 63 68 61 6e 67 | .device,.InputDeviceChange.chang |
| 48a0 | 65 29 0d 0a 20 20 20 20 20 20 20 20 7b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 2f 2f 20 49 66 | e)..........{..............//.If |
| 48c0 | 20 73 6f 6d 65 6f 6e 65 20 72 65 6d 6f 76 65 64 20 6f 75 72 20 73 69 6d 75 6c 61 74 65 64 20 74 | .someone.removed.our.simulated.t |
| 48e0 | 6f 75 63 68 73 63 72 65 65 6e 2c 20 64 69 73 61 62 6c 65 20 74 6f 75 63 68 20 73 69 6d 75 6c 61 | ouchscreen,.disable.touch.simula |
| 4900 | 74 69 6f 6e 2e 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 69 66 20 28 64 65 76 69 63 65 20 3d 3d | tion...............if.(device.== |
| 4920 | 20 73 69 6d 75 6c 61 74 65 64 54 6f 75 63 68 73 63 72 65 65 6e 20 26 26 20 63 68 61 6e 67 65 20 | .simulatedTouchscreen.&&.change. |
| 4940 | 3d 3d 20 49 6e 70 75 74 44 65 76 69 63 65 43 68 61 6e 67 65 2e 52 65 6d 6f 76 65 64 29 0d 0a 20 | ==.InputDeviceChange.Removed)... |
| 4960 | 20 20 20 20 20 20 20 20 20 20 20 7b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 44 69 | ...........{..................Di |
| 4980 | 73 61 62 6c 65 28 29 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 72 65 74 75 72 6e | sable();..................return |
| 49a0 | 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 7d 0d 0a 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 | ;..............}................ |
| 49c0 | 73 77 69 74 63 68 20 28 63 68 61 6e 67 65 29 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 7b 0d 0a | switch.(change)..............{.. |
| 49e0 | 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 63 61 73 65 20 49 6e 70 75 74 44 65 76 69 63 65 | ................case.InputDevice |
| 4a00 | 43 68 61 6e 67 65 2e 41 64 64 65 64 3a 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7b | Change.Added:..................{ |
| 4a20 | 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 69 66 20 28 64 65 76 69 63 65 | ......................if.(device |
| 4a40 | 20 69 73 20 50 6f 69 6e 74 65 72 20 70 6f 69 6e 74 65 72 29 0d 0a 20 20 20 20 20 20 20 20 20 20 | .is.Pointer.pointer)............ |
| 4a60 | 20 20 20 20 20 20 20 20 20 20 7b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | ..........{..................... |
| 4a80 | 20 20 20 20 20 69 66 20 28 64 65 76 69 63 65 20 69 73 20 54 6f 75 63 68 73 63 72 65 65 6e 29 0d | .....if.(device.is.Touchscreen). |
| 4aa0 | 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 72 65 74 | .............................ret |
| 4ac0 | 75 72 6e 3b 20 2f 2f 2f 2f 54 4f 44 4f 3a 20 64 65 63 69 64 65 20 77 68 61 74 20 74 6f 20 64 6f | urn;.////TODO:.decide.what.to.do |
| 4ae0 | 0d 0a 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 41 64 64 50 | ............................AddP |
| 4b00 | 6f 69 6e 74 65 72 28 70 6f 69 6e 74 65 72 29 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | ointer(pointer);................ |
| 4b20 | 20 20 20 20 20 20 7d 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 62 72 65 | ......}......................bre |
| 4b40 | 61 6b 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7d 0d 0a 0d 0a 20 20 20 20 20 20 | ak;..................}.......... |
| 4b60 | 20 20 20 20 20 20 20 20 20 20 63 61 73 65 20 49 6e 70 75 74 44 65 76 69 63 65 43 68 61 6e 67 65 | ..........case.InputDeviceChange |
| 4b80 | 2e 52 65 6d 6f 76 65 64 3a 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7b 0d 0a 20 20 | .Removed:..................{.... |
| 4ba0 | 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 69 66 20 28 64 65 76 69 63 65 20 69 73 20 | ..................if.(device.is. |
| 4bc0 | 50 6f 69 6e 74 65 72 20 70 6f 69 6e 74 65 72 29 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | Pointer.pointer)................ |
| 4be0 | 20 20 20 20 20 20 20 20 20 20 52 65 6d 6f 76 65 50 6f 69 6e 74 65 72 28 70 6f 69 6e 74 65 72 29 | ..........RemovePointer(pointer) |
| 4c00 | 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 62 72 65 61 6b 3b 0d 0a 20 | ;......................break;... |
| 4c20 | 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7d 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 7d 0d | ...............}..............}. |
| 4c40 | 0a 20 20 20 20 20 20 20 20 7d 0d 0a 0d 0a 20 20 20 20 20 20 20 20 70 72 6f 74 65 63 74 65 64 20 | .........}............protected. |
| 4c60 | 76 6f 69 64 20 4f 6e 45 6e 61 62 6c 65 28 29 0d 0a 20 20 20 20 20 20 20 20 7b 0d 0a 20 20 20 20 | void.OnEnable()..........{...... |
| 4c80 | 20 20 20 20 20 20 20 20 69 66 20 28 73 69 6d 75 6c 61 74 65 64 54 6f 75 63 68 73 63 72 65 65 6e | ........if.(simulatedTouchscreen |
| 4ca0 | 20 21 3d 20 6e 75 6c 6c 29 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 7b 0d 0a 20 20 20 20 20 20 | .!=.null)..............{........ |
| 4cc0 | 20 20 20 20 20 20 20 20 20 20 69 66 20 28 21 73 69 6d 75 6c 61 74 65 64 54 6f 75 63 68 73 63 72 | ..........if.(!simulatedTouchscr |
| 4ce0 | 65 65 6e 2e 61 64 64 65 64 29 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | een.added)...................... |
| 4d00 | 49 6e 70 75 74 53 79 73 74 65 6d 2e 41 64 64 44 65 76 69 63 65 28 73 69 6d 75 6c 61 74 65 64 54 | InputSystem.AddDevice(simulatedT |
| 4d20 | 6f 75 63 68 73 63 72 65 65 6e 29 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 7d 0d 0a 20 20 20 | ouchscreen);..............}..... |
| 4d40 | 20 20 20 20 20 20 20 20 20 65 6c 73 65 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 7b 0d 0a 20 20 | .........else..............{.... |
| 4d60 | 20 20 20 20 20 20 20 20 20 20 20 20 20 20 73 69 6d 75 6c 61 74 65 64 54 6f 75 63 68 73 63 72 65 | ..............simulatedTouchscre |
| 4d80 | 65 6e 20 3d 20 49 6e 70 75 74 53 79 73 74 65 6d 2e 47 65 74 44 65 76 69 63 65 28 22 53 69 6d 75 | en.=.InputSystem.GetDevice("Simu |
| 4da0 | 6c 61 74 65 64 20 54 6f 75 63 68 73 63 72 65 65 6e 22 29 20 61 73 20 54 6f 75 63 68 73 63 72 65 | lated.Touchscreen").as.Touchscre |
| 4dc0 | 65 6e 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 69 66 20 28 73 69 6d 75 6c 61 74 | en;..................if.(simulat |
| 4de0 | 65 64 54 6f 75 63 68 73 63 72 65 65 6e 20 3d 3d 20 6e 75 6c 6c 29 0d 0a 20 20 20 20 20 20 20 20 | edTouchscreen.==.null).......... |
| 4e00 | 20 20 20 20 20 20 20 20 20 20 20 20 73 69 6d 75 6c 61 74 65 64 54 6f 75 63 68 73 63 72 65 65 6e | ............simulatedTouchscreen |
| 4e20 | 20 3d 20 49 6e 70 75 74 53 79 73 74 65 6d 2e 41 64 64 44 65 76 69 63 65 3c 54 6f 75 63 68 73 63 | .=.InputSystem.AddDevice<Touchsc |
| 4e40 | 72 65 65 6e 3e 28 22 53 69 6d 75 6c 61 74 65 64 20 54 6f 75 63 68 73 63 72 65 65 6e 22 29 3b 0d | reen>("Simulated.Touchscreen");. |
| 4e60 | 0a 20 20 20 20 20 20 20 20 20 20 20 20 7d 0d 0a 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 69 66 | .............}................if |
| 4e80 | 20 28 6d 5f 54 6f 75 63 68 65 73 20 3d 3d 20 6e 75 6c 6c 29 0d 0a 20 20 20 20 20 20 20 20 20 20 | .(m_Touches.==.null)............ |
| 4ea0 | 20 20 20 20 20 20 6d 5f 54 6f 75 63 68 65 73 20 3d 20 6e 65 77 20 53 69 6d 75 6c 61 74 65 64 54 | ......m_Touches.=.new.SimulatedT |
| 4ec0 | 6f 75 63 68 5b 73 69 6d 75 6c 61 74 65 64 54 6f 75 63 68 73 63 72 65 65 6e 2e 74 6f 75 63 68 65 | ouch[simulatedTouchscreen.touche |
| 4ee0 | 73 2e 43 6f 75 6e 74 5d 3b 0d 0a 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 66 6f 72 65 61 63 68 | s.Count];................foreach |
| 4f00 | 20 28 76 61 72 20 64 65 76 69 63 65 20 69 6e 20 49 6e 70 75 74 53 79 73 74 65 6d 2e 64 65 76 69 | .(var.device.in.InputSystem.devi |
| 4f20 | 63 65 73 29 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 4f 6e 44 65 76 69 63 65 43 68 | ces)..................OnDeviceCh |
| 4f40 | 61 6e 67 65 28 64 65 76 69 63 65 2c 20 49 6e 70 75 74 44 65 76 69 63 65 43 68 61 6e 67 65 2e 41 | ange(device,.InputDeviceChange.A |
| 4f60 | 64 64 65 64 29 3b 0d 0a 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 49 6e 70 75 74 53 79 73 74 65 | dded);................InputSyste |
| 4f80 | 6d 2e 6f 6e 44 65 76 69 63 65 43 68 61 6e 67 65 20 2b 3d 20 4f 6e 44 65 76 69 63 65 43 68 61 6e | m.onDeviceChange.+=.OnDeviceChan |
| 4fa0 | 67 65 3b 0d 0a 20 20 20 20 20 20 20 20 7d 0d 0a 0d 0a 20 20 20 20 20 20 20 20 70 72 6f 74 65 63 | ge;..........}............protec |
| 4fc0 | 74 65 64 20 76 6f 69 64 20 4f 6e 44 69 73 61 62 6c 65 28 29 0d 0a 20 20 20 20 20 20 20 20 7b 0d | ted.void.OnDisable()..........{. |
| 4fe0 | 0a 20 20 20 20 20 20 20 20 20 20 20 20 69 66 20 28 73 69 6d 75 6c 61 74 65 64 54 6f 75 63 68 73 | .............if.(simulatedTouchs |
| 5000 | 63 72 65 65 6e 20 21 3d 20 6e 75 6c 6c 20 26 26 20 73 69 6d 75 6c 61 74 65 64 54 6f 75 63 68 73 | creen.!=.null.&&.simulatedTouchs |
| 5020 | 63 72 65 65 6e 2e 61 64 64 65 64 29 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 49 6e | creen.added)..................In |
| 5040 | 70 75 74 53 79 73 74 65 6d 2e 52 65 6d 6f 76 65 44 65 76 69 63 65 28 73 69 6d 75 6c 61 74 65 64 | putSystem.RemoveDevice(simulated |
| 5060 | 54 6f 75 63 68 73 63 72 65 65 6e 29 3b 0d 0a 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 55 6e 69 | Touchscreen);................Uni |
| 5080 | 6e 73 74 61 6c 6c 53 74 61 74 65 43 68 61 6e 67 65 4d 6f 6e 69 74 6f 72 73 28 29 3b 0d 0a 0d 0a | nstallStateChangeMonitors();.... |
| 50a0 | 20 20 20 20 20 20 20 20 20 20 20 20 6d 5f 53 6f 75 72 63 65 73 2e 43 6c 65 61 72 28 6d 5f 4e 75 | ............m_Sources.Clear(m_Nu |
| 50c0 | 6d 53 6f 75 72 63 65 73 29 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 6d 5f 43 75 72 72 65 6e | mSources);..............m_Curren |
| 50e0 | 74 50 6f 73 69 74 69 6f 6e 73 2e 43 6c 65 61 72 28 6d 5f 4e 75 6d 53 6f 75 72 63 65 73 29 3b 0d | tPositions.Clear(m_NumSources);. |
| 5100 | 0a 20 20 20 20 20 20 20 20 20 20 20 20 6d 5f 54 6f 75 63 68 65 73 2e 43 6c 65 61 72 28 29 3b 0d | .............m_Touches.Clear();. |
| 5120 | 0a 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 6d 5f 4e 75 6d 53 6f 75 72 63 65 73 20 3d 20 30 3b | ...............m_NumSources.=.0; |
| 5140 | 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 6d 5f 4c 61 73 74 54 6f 75 63 68 49 64 20 3d 20 30 3b | ..............m_LastTouchId.=.0; |
| 5160 | 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 6d 5f 50 72 69 6d 61 72 79 54 6f 75 63 68 49 6e 64 65 | ..............m_PrimaryTouchInde |
| 5180 | 78 20 3d 20 2d 31 3b 0d 0a 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 49 6e 70 75 74 53 79 73 74 | x.=.-1;................InputSyst |
| 51a0 | 65 6d 2e 6f 6e 44 65 76 69 63 65 43 68 61 6e 67 65 20 2d 3d 20 4f 6e 44 65 76 69 63 65 43 68 61 | em.onDeviceChange.-=.OnDeviceCha |
| 51c0 | 6e 67 65 3b 0d 0a 20 20 20 20 20 20 20 20 7d 0d 0a 0d 0a 20 20 20 20 20 20 20 20 5b 4e 6f 6e 53 | nge;..........}............[NonS |
| 51e0 | 65 72 69 61 6c 69 7a 65 64 5d 20 70 72 69 76 61 74 65 20 69 6e 74 20 6d 5f 4e 75 6d 53 6f 75 72 | erialized].private.int.m_NumSour |
| 5200 | 63 65 73 3b 0d 0a 20 20 20 20 20 20 20 20 5b 4e 6f 6e 53 65 72 69 61 6c 69 7a 65 64 5d 20 70 72 | ces;..........[NonSerialized].pr |
| 5220 | 69 76 61 74 65 20 50 6f 69 6e 74 65 72 5b 5d 20 6d 5f 53 6f 75 72 63 65 73 3b 0d 0a 20 20 20 20 | ivate.Pointer[].m_Sources;...... |
| 5240 | 20 20 20 20 5b 4e 6f 6e 53 65 72 69 61 6c 69 7a 65 64 5d 20 70 72 69 76 61 74 65 20 56 65 63 74 | ....[NonSerialized].private.Vect |
| 5260 | 6f 72 32 5b 5d 20 6d 5f 43 75 72 72 65 6e 74 50 6f 73 69 74 69 6f 6e 73 3b 0d 0a 20 20 20 20 20 | or2[].m_CurrentPositions;....... |
| 5280 | 20 20 20 5b 4e 6f 6e 53 65 72 69 61 6c 69 7a 65 64 5d 20 70 72 69 76 61 74 65 20 53 69 6d 75 6c | ...[NonSerialized].private.Simul |
| 52a0 | 61 74 65 64 54 6f 75 63 68 5b 5d 20 6d 5f 54 6f 75 63 68 65 73 3b 0d 0a 20 20 20 20 20 20 20 20 | atedTouch[].m_Touches;.......... |
| 52c0 | 5b 4e 6f 6e 53 65 72 69 61 6c 69 7a 65 64 5d 20 70 72 69 76 61 74 65 20 69 6e 74 20 6d 5f 4c 61 | [NonSerialized].private.int.m_La |
| 52e0 | 73 74 54 6f 75 63 68 49 64 3b 0d 0a 20 20 20 20 20 20 20 20 5b 4e 6f 6e 53 65 72 69 61 6c 69 7a | stTouchId;..........[NonSerializ |
| 5300 | 65 64 5d 20 70 72 69 76 61 74 65 20 69 6e 74 20 6d 5f 50 72 69 6d 61 72 79 54 6f 75 63 68 49 6e | ed].private.int.m_PrimaryTouchIn |
| 5320 | 64 65 78 20 3d 20 2d 31 3b 0d 0a 0d 0a 20 20 20 20 20 20 20 20 69 6e 74 65 72 6e 61 6c 20 73 74 | dex.=.-1;............internal.st |
| 5340 | 61 74 69 63 20 54 6f 75 63 68 53 69 6d 75 6c 61 74 69 6f 6e 20 73 5f 49 6e 73 74 61 6e 63 65 3b | atic.TouchSimulation.s_Instance; |
| 5360 | 0d 0a 0d 0a 20 20 20 20 20 20 20 20 23 69 66 20 55 4e 49 54 59 5f 45 44 49 54 4f 52 0d 0a 20 20 | ............#if.UNITY_EDITOR.... |
| 5380 | 20 20 20 20 20 20 73 74 61 74 69 63 20 54 6f 75 63 68 53 69 6d 75 6c 61 74 69 6f 6e 28 29 0d 0a | ......static.TouchSimulation().. |
| 53a0 | 20 20 20 20 20 20 20 20 7b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 2f 2f 20 57 65 27 72 65 20 | ........{..............//.We're. |
| 53c0 | 61 20 4d 6f 6e 6f 42 65 68 61 76 69 6f 75 72 20 73 6f 20 6f 75 72 20 63 63 74 6f 72 20 6d 61 79 | a.MonoBehaviour.so.our.cctor.may |
| 53e0 | 20 67 65 74 20 63 61 6c 6c 65 64 20 61 73 20 70 61 72 74 20 6f 66 20 74 68 65 20 4d 6f 6e 6f 42 | .get.called.as.part.of.the.MonoB |
| 5400 | 65 68 61 76 69 6f 75 72 20 62 65 69 6e 67 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 2f 2f 20 63 | ehaviour.being..............//.c |
| 5420 | 72 65 61 74 65 64 2e 20 57 65 20 64 6f 6e 27 74 20 77 61 6e 74 20 74 6f 20 74 72 69 67 67 65 72 | reated..We.don't.want.to.trigger |
| 5440 | 20 49 6e 70 75 74 53 79 73 74 65 6d 20 69 6e 69 74 69 61 6c 69 7a 61 74 69 6f 6e 20 66 72 6f 6d | .InputSystem.initialization.from |
| 5460 | 20 74 68 65 72 65 20 73 6f 20 64 65 6c 61 79 2d 65 78 65 63 75 74 65 0d 0a 20 20 20 20 20 20 20 | .there.so.delay-execute......... |
| 5480 | 20 20 20 20 20 2f 2f 20 74 68 65 20 63 6f 64 65 20 68 65 72 65 2e 0d 0a 20 20 20 20 20 20 20 20 | .....//.the.code.here........... |
| 54a0 | 20 20 20 20 45 64 69 74 6f 72 41 70 70 6c 69 63 61 74 69 6f 6e 2e 64 65 6c 61 79 43 61 6c 6c 20 | ....EditorApplication.delayCall. |
| 54c0 | 2b 3d 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 29 20 3d 3e 0d 0a 20 20 20 20 20 | +=..................().=>....... |
| 54e0 | 20 20 20 20 20 20 20 7b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 49 6e 70 75 74 53 | .......{..................InputS |
| 5500 | 79 73 74 65 6d 2e 6f 6e 53 65 74 74 69 6e 67 73 43 68 61 6e 67 65 20 2b 3d 20 4f 6e 53 65 74 74 | ystem.onSettingsChange.+=.OnSett |
| 5520 | 69 6e 67 73 43 68 61 6e 67 65 64 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 49 6e | ingsChanged;..................In |
| 5540 | 70 75 74 53 79 73 74 65 6d 2e 6f 6e 42 65 66 6f 72 65 55 70 64 61 74 65 20 2b 3d 20 52 65 45 6e | putSystem.onBeforeUpdate.+=.ReEn |
| 5560 | 61 62 6c 65 41 66 74 65 72 44 6f 6d 61 69 6e 52 65 6c 6f 61 64 3b 0d 0a 20 20 20 20 20 20 20 20 | ableAfterDomainReload;.......... |
| 5580 | 20 20 20 20 7d 3b 0d 0a 20 20 20 20 20 20 20 20 7d 0d 0a 0d 0a 20 20 20 20 20 20 20 20 70 72 69 | ....};..........}............pri |
| 55a0 | 76 61 74 65 20 73 74 61 74 69 63 20 76 6f 69 64 20 52 65 45 6e 61 62 6c 65 41 66 74 65 72 44 6f | vate.static.void.ReEnableAfterDo |
| 55c0 | 6d 61 69 6e 52 65 6c 6f 61 64 28 29 0d 0a 20 20 20 20 20 20 20 20 7b 0d 0a 20 20 20 20 20 20 20 | mainReload()..........{......... |
| 55e0 | 20 20 20 20 20 4f 6e 53 65 74 74 69 6e 67 73 43 68 61 6e 67 65 64 28 29 3b 0d 0a 20 20 20 20 20 | .....OnSettingsChanged();....... |
| 5600 | 20 20 20 20 20 20 20 49 6e 70 75 74 53 79 73 74 65 6d 2e 6f 6e 42 65 66 6f 72 65 55 70 64 61 74 | .......InputSystem.onBeforeUpdat |
| 5620 | 65 20 2d 3d 20 52 65 45 6e 61 62 6c 65 41 66 74 65 72 44 6f 6d 61 69 6e 52 65 6c 6f 61 64 3b 0d | e.-=.ReEnableAfterDomainReload;. |
| 5640 | 0a 20 20 20 20 20 20 20 20 7d 0d 0a 0d 0a 20 20 20 20 20 20 20 20 70 72 69 76 61 74 65 20 73 74 | .........}............private.st |
| 5660 | 61 74 69 63 20 76 6f 69 64 20 4f 6e 53 65 74 74 69 6e 67 73 43 68 61 6e 67 65 64 28 29 0d 0a 20 | atic.void.OnSettingsChanged()... |
| 5680 | 20 20 20 20 20 20 20 7b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 69 66 20 28 49 6e 70 75 74 45 | .......{..............if.(InputE |
| 56a0 | 64 69 74 6f 72 55 73 65 72 53 65 74 74 69 6e 67 73 2e 73 69 6d 75 6c 61 74 65 54 6f 75 63 68 29 | ditorUserSettings.simulateTouch) |
| 56c0 | 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 45 6e 61 62 6c 65 28 29 3b 0d 0a 20 20 20 | ..................Enable();..... |
| 56e0 | 20 20 20 20 20 20 20 20 20 65 6c 73 65 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 44 | .........else..................D |
| 5700 | 69 73 61 62 6c 65 28 29 3b 0d 0a 20 20 20 20 20 20 20 20 7d 0d 0a 0d 0a 20 20 20 20 20 20 20 20 | isable();..........}............ |
| 5720 | 23 65 6e 64 69 66 0d 0a 0d 0a 20 20 20 20 20 20 20 20 2f 2f 2f 20 3c 73 75 6d 6d 61 72 79 3e 0d | #endif............///.<summary>. |
| 5740 | 0a 20 20 20 20 20 20 20 20 2f 2f 2f 20 41 6e 20 6f 6e 67 6f 69 6e 67 20 73 69 6d 75 6c 61 74 65 | .........///.An.ongoing.simulate |
| 5760 | 64 20 74 6f 75 63 68 2e 0d 0a 20 20 20 20 20 20 20 20 2f 2f 2f 20 3c 2f 73 75 6d 6d 61 72 79 3e | d.touch...........///.</summary> |
| 5780 | 0d 0a 20 20 20 20 20 20 20 20 70 72 69 76 61 74 65 20 73 74 72 75 63 74 20 53 69 6d 75 6c 61 74 | ..........private.struct.Simulat |
| 57a0 | 65 64 54 6f 75 63 68 0d 0a 20 20 20 20 20 20 20 20 7b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 | edTouch..........{.............. |
| 57c0 | 70 75 62 6c 69 63 20 69 6e 74 20 73 6f 75 72 63 65 49 6e 64 65 78 3b 0d 0a 20 20 20 20 20 20 20 | public.int.sourceIndex;......... |
| 57e0 | 20 20 20 20 20 70 75 62 6c 69 63 20 69 6e 74 20 62 75 74 74 6f 6e 49 6e 64 65 78 3b 0d 0a 20 20 | .....public.int.buttonIndex;.... |
| 5800 | 20 20 20 20 20 20 20 20 20 20 70 75 62 6c 69 63 20 69 6e 74 20 74 6f 75 63 68 49 64 3b 0d 0a 20 | ..........public.int.touchId;... |
| 5820 | 20 20 20 20 20 20 20 7d 0d 0a 20 20 20 20 7d 0d 0a 7d 0d 0a 00 00 00 00 00 00 00 00 00 00 00 00 | .......}......}..}.............. |
| 5840 | 00 00 00 00 00 00 00 00 0f 00 00 00 54 6f 75 63 68 53 69 6d 75 6c 61 74 69 6f 6e 00 25 00 00 00 | ............TouchSimulation.%... |
| 5860 | 55 6e 69 74 79 45 6e 67 69 6e 65 2e 49 6e 70 75 74 53 79 73 74 65 6d 2e 45 6e 68 61 6e 63 65 64 | UnityEngine.InputSystem.Enhanced |
| 5880 | 54 6f 75 63 68 00 00 00 | Touch... |