]> git.deb.at Git - rhonda/theotherroles.git/commitdiff
Update to v4.4.0
authorgendelo3 <gendelo3@gmail.com>
Wed, 20 Sep 2023 07:46:56 +0000 (09:46 +0200)
committergendelo3 <gendelo3@gmail.com>
Wed, 20 Sep 2023 07:46:56 +0000 (09:46 +0200)
550 files changed:
Images/TOR_Roles.png
Images/TOR_colors.jpg
README.md
TheOtherRoles/Buttons.cs
TheOtherRoles/CustomGameModes/PropHunt.cs [new file with mode: 0644]
TheOtherRoles/CustomOptionHolder.cs
TheOtherRoles/Helpers.cs
TheOtherRoles/Main.cs
TheOtherRoles/Modules/CustomHats.cs
TheOtherRoles/Modules/CustomOptions.cs
TheOtherRoles/Modules/ModUpdater.cs
TheOtherRoles/Objects/NinjaTrace.cs
TheOtherRoles/Objects/Portal.cs
TheOtherRoles/Patches/CreateOptionsPickerPatch.cs
TheOtherRoles/Patches/CredentialsPatch.cs
TheOtherRoles/Patches/EndGamePatch.cs
TheOtherRoles/Patches/GameStartManagerPatch.cs
TheOtherRoles/Patches/HauntMenuMinigamePatch.cs
TheOtherRoles/Patches/IntroPatch.cs
TheOtherRoles/Patches/MainMenuPatch.cs
TheOtherRoles/Patches/PlayerControlPatch.cs
TheOtherRoles/Patches/RoleAssignmentPatch.cs
TheOtherRoles/Patches/ShipStatusPatch.cs
TheOtherRoles/Patches/UpdatePatch.cs
TheOtherRoles/Patches/UsablesPatch.cs
TheOtherRoles/RPC.cs
TheOtherRoles/Resources/DisguiseButton.png [new file with mode: 0644]
TheOtherRoles/Resources/FindButton.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1000.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1001.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1002.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1003.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1004.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1005.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1006.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1007.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1008.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1009.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1010.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1011.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1012.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1013.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1014.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1015.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1016.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1017.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1018.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1019.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1020.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1021.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1022.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1023.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1024.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1025.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1026.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1027.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1028.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1029.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1030.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1031.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1032.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1033.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1034.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1035.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1036.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1037.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1038.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1039.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1040.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1041.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1042.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1043.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1044.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1045.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1046.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1047.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1048.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1049.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1050.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1051.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1052.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1053.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1054.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1055.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1056.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1057.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1058.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1059.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1060.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1061.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1062.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1063.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1064.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1065.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1066.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1067.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1068.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1069.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1070.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1071.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1072.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1073.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1074.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1075.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1076.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1077.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1078.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1079.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1080.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1081.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1082.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1083.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1084.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1085.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1086.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1087.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1088.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1089.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1090.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1091.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1092.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1093.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1094.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1095.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1096.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1097.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1098.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1099.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1100.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1101.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1102.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1103.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1104.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1105.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1106.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1107.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1108.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1109.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1110.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1111.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1112.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1113.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1114.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1115.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1116.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1117.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1118.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1119.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1120.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1121.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1122.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1123.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1124.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1125.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1126.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1127.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1128.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1129.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1130.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1131.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1132.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1133.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1134.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1135.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1136.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1137.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1138.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1139.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1140.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1141.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1142.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1143.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1144.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1145.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1146.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1147.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1148.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1149.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1150.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1151.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1152.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1153.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1154.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1155.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1156.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1157.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1158.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1159.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1160.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1161.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1162.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1163.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1164.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1165.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1166.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1167.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1168.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1169.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1170.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1171.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1172.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1173.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1174.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1175.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1176.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1177.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1178.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1179.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1180.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1181.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1182.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1183.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1184.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1185.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1186.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1187.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1188.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1189.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1190.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1191.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1192.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1193.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1194.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1195.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1196.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1197.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1198.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1199.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1200.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1201.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1202.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1203.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1204.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1205.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1206.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1207.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1208.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1209.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1210.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1211.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1212.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1213.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1214.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1215.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1216.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1217.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1218.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1219.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1220.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1221.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1222.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1223.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1224.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1225.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1226.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1227.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1228.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1229.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1230.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1231.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1232.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1233.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1234.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1235.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1236.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1237.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1238.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1239.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1240.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1241.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1242.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1243.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1244.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1245.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1246.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1247.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1248.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1249.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1250.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1251.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1252.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1253.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1254.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1255.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1256.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1257.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1258.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1259.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1260.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1261.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1262.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1263.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1264.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1265.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1266.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1267.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1268.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1269.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1270.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1271.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1272.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1273.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1274.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1275.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1276.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1277.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1278.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1279.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1280.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1281.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1282.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1283.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1284.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1285.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1286.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1287.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1288.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1289.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1290.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1291.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1292.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1293.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1294.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1295.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1296.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1297.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1298.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1299.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1300.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1301.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1302.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1303.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1304.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1305.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1306.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1307.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1308.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1309.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1310.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1311.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1312.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1313.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1314.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1315.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1316.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1317.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1318.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1319.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1320.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1321.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1322.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1323.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1324.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1325.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1326.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1327.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1328.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1329.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1330.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1331.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1332.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1333.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1334.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1335.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1336.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1337.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1338.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1339.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1340.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1341.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1342.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1343.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1344.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1345.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1346.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1347.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1348.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1349.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1350.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1351.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1352.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1353.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1354.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1355.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1356.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1357.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1358.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1359.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1360.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1361.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1362.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1363.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1364.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1365.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1366.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1367.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1368.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1369.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1370.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1371.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1372.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1373.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1374.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1375.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1376.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1377.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1378.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1379.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1380.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1381.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1382.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1383.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1384.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1385.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1386.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1387.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1388.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1389.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1390.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1391.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1392.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1393.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1394.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1395.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1396.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1397.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1398.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1399.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1400.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1401.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1402.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1403.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1404.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1405.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1406.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1407.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1408.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1409.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1410.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1411.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1412.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1413.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1414.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1415.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1416.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1417.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1418.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1419.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1420.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1421.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1422.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1423.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1424.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1425.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1426.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1427.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1428.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1429.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1430.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1431.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1432.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1433.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1434.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1435.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1436.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1437.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1438.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1439.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1440.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1441.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1442.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1443.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1444.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1445.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1446.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1447.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1448.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1449.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1450.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1451.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1452.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1453.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1454.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1455.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1456.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1457.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1458.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1459.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1460.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1461.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1462.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1463.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1464.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1465.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1466.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1467.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1468.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1469.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1470.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1471.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1472.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1473.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1474.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1475.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1476.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1477.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1478.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1479.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1480.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1481.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1482.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1483.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1484.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1485.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1486.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1487.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1488.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1489.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1490.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1491.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1492.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1493.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1494.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1495.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1496.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1497.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1498.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1499.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1500.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1501.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1502.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1503.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1504.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1505.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1506.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1507.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1508.png [new file with mode: 0644]
TheOtherRoles/Resources/IntroAnimation/intro_1509.png [new file with mode: 0644]
TheOtherRoles/Resources/InvisButton.png [new file with mode: 0644]
TheOtherRoles/Resources/Reveal.png [new file with mode: 0644]
TheOtherRoles/Resources/SpeedboostButton.png [new file with mode: 0644]
TheOtherRoles/Resources/TabIconPropHuntSettings.png [new file with mode: 0644]
TheOtherRoles/Resources/Txt/Props.txt [new file with mode: 0644]
TheOtherRoles/Resources/UnStuck.png [new file with mode: 0644]
TheOtherRoles/Resources/poolablesBackground.jpg [new file with mode: 0644]
TheOtherRoles/RoleInfo.cs
TheOtherRoles/SoundEffectsManager.cs
TheOtherRoles/TheOtherRoles.cs
TheOtherRoles/TheOtherRoles.csproj
TheOtherRoles/packages.lock.json

index 8d3a134fdebf610d63149ad66019957d8cdde3f1..b6440453eca24962b9a60628bcadbd16c2d7cfa0 100644 (file)
Binary files a/Images/TOR_Roles.png and b/Images/TOR_Roles.png differ
index 59c0d096b30adb57887607f40ccc4a506e2703c0..2a7134711eead19bbd302eafc743251d6e4a8adb 100644 (file)
Binary files a/Images/TOR_colors.jpg and b/Images/TOR_colors.jpg differ
index 9550c3a5247d157f80530263d2266b14c46f9e95..3ed0f7fccb02ba21ac1a2bc01996797bc286bf81 100644 (file)
--- a/README.md
+++ b/README.md
@@ -21,7 +21,7 @@ Even more roles are coming soon. :)
 | [Mafioso (Mafia)](#mafia) | [Engineer](#engineer) | [Arsonist](#arsonist) | [Anti Teleport](#anti-teleport) | [Guesser Modifier](#guesser-modifier) |
 | [Janitor (Mafia)](#mafia) | [Sheriff](#sheriff) | [Jackal](#jackal) | [Tie Breaker](#tie-breaker) | [Hide 'n' Seek](#hide-n-seek) |
 | [Morphling](#morphling) | [Deputy](#deputy) | [Sidekick](#sidekick) | [Bait](#bait) | [Vanilla Hide 'n' Seek](https://www.innersloth.com/new-game-mode-hide-n-seek-is-here-emergency-meeting-35/) |
-| [Camouflager](#camouflager) | [Lighter](#lighter) | [Vulture](#vulture) | [Lovers](#lovers) |
+| [Camouflager](#camouflager) | [Lighter](#lighter) | [Vulture](#vulture) | [Lovers](#lovers) | [PropHunt](#prophunt)|
 | [Vampire](#vampire) | [Detective](#detective) | [Lawyer](#lawyer) | [Sunglasses](#sunglasses) |
 | [Eraser](#eraser) | [Time Master](#time-master) | [Prosecutor](#prosecutor) | [Mini](#mini) |
 | [Trickster](#trickster) | [Medic](#medic) | [Pursuer](#pursuer) | [VIP](#vip) |
@@ -124,7 +124,11 @@ The [Role Assignment](#role-assignment) sections explains how the roles are bein
 # Changelog
 <details>
   <summary>Click to show the Changelog</summary>
-  
+
+**Version 4.4.0**
+- Added a new gamemode, PropHunt. Players can disguise as objects on the map
+- Changed Lighter and Darker colors: L/D are no longer random, but rather assigned in alternating order.
+
 **Version 4.3.4**
 - Updated BepInEx dependency to 671
 - Fixed compatibility to Submerged (not thouroughly tested)
@@ -796,7 +800,8 @@ docker run -d -p 22023:22023/udp --env IMPOSTOR_AntiCheatEnabled=false --env IMP
 [Crowded-Mod](https://github.com/CrowdedMods/CrowdedMod) - Our implementation for 10+ player lobbies were inspired by the one from the **Crowded Mod Team**\
 [Goose-Goose-Duck](https://store.steampowered.com/app/1568590/Goose_Goose_Duck) - Idea for the Vulture role came from **Slushiegoose**\
 [TheEpicRoles](https://github.com/LaicosVK/TheEpicRoles) - Idea for the first kill shield (partly) and the tabbed option menu (fully + some code), by **LaicosVK** **DasMonschta** **Nova**\
-[Ninja](#ninja), [Thief](#thief), [Lawyer](#lawyer) / [Pursuer](#pursuer), [Deputy](#deputy), [Portalmaker](#portalmaker), [Guesser Modifier](#guesser-modifier) - Idea: [K3ndo](https://github.com/K3ndoo) ; Developed by [Gendelo](https://github.com/gendelo3) & [Mallöris](https://github.com/Mallaris)
+[Ninja](#ninja), [Thief](#thief), [Lawyer](#lawyer) / [Pursuer](#pursuer), [Deputy](#deputy), [Portalmaker](#portalmaker), [Guesser Modifier](#guesser-modifier) - Idea: [K3ndo](https://github.com/K3ndoo) ; Developed by [Gendelo](https://github.com/gendelo3) & [Mallöris](https://github.com/Mallaris) \
+[dMiner53](https://github.com/ugackMiner53/PropHunt) - Idea and core code for the Prop Hunt game mode
 
 # Settings
 The mod adds a few new settings to Among Us (in addition to the role settings):
@@ -885,6 +890,7 @@ Here are a few instructions, on how to create a custom hat:
 - **Submission:** If you got a hat design, you can submit it on our [Discord server](https://discord.gg/77RkMJHWsM). We'll look at all the hats and add all the good ones to the game.
 
 # Colors
+Note: Lighter and Darker colors are no longer based on the players color. Instead they are assigned alternatingly, s.t. they are always balanced in a lobby.
 ![TOR Colors](./Images/TOR_colors.jpg)
 
 # Roles
@@ -2070,15 +2076,55 @@ Each Hunter action or finished Crew task will lower the timer by a configurable
 | Kill Cooldown | -                      | Hunter Light Vision | -                    | Hunted Rewind Time | -
 | Hunter Vision | -                      | Hunter Light Punish in Sec | -             | Hunted Shield Number | -
 | Hunted Vision | -                      | Hunter Admin Cooldown | -
-| Common Tasks | -                       | Hunter Admin Duration | -
-| Short Tasks | -                        | Hunter Admin Punish In Sec | -
-| Long Tasks | -                         | Hunter Arrow Cooldown | -
-| Timer In Min | -                       | Hunter Arrow Duration | -
+|  | -                       | Hunter Admin Duration | -
+|  | -                        | Hunter Admin Punish In Sec | -
+|  | -                         | Hunter Arrow Cooldown | -
+|  | -                       | Hunter Arrow Duration | -
 | Task Win Is Possible | -               | Hunter Arrow Punish In Sec | -
 | Finish Tasks Punish In Sec | -
 | Enable Sabotages | -
 | Time The Hunter Needs To Wait | -
 
+## PropHunt
+The **Prop-Gamemode** is a standalone Gamemode where Hunters have to find the disguised players ("Props").\
+The Hunters and Props who are still alive are displayed to everyone in the bottom left corner (similar to the Arsonist display).\
+When the game starts, the Hunter's movement is disabled for x-seconds (depends on the settings), and their screen is blacked out.\
+There is a time-limit for each round, if the timer runs out and at least one Prop is still alive, the remaining Props win.\
+If the Hunters kill all players before the timer runs out the Hunters win.\
+When a Prop dies, they will either join the Hunter team or die (setting).
+
+#### Shared Abilities:
+- Unstuck: By pressing this button, you can travel through walls for a short time. This is needed, because props sometimes get stuck in walls, due to their changed colliders. Don't use it to cheat!
+
+#### Hunter Abilities:
+- Reveal: A random players current prop is revealed to all players for x seconds (according to settings). The timer will be reduced by *punish* s.
+- Mobile Admin table (like Hacker) - Normal Admin table shares the cooldown
+- Find: Display the DangerMeter known from Vanilla HideNSeek for x seconds. The dangerlevel is rising the closer the Hunter gets to the neares prop.  
+#### Prop Abilities:
+- Invisibility: As a disguised Prop, become invisible for x seconds.
+- Speedboost: Move faster for x seconds.
+
+**NOTE:**
+- The Report button lights up, but cannot be pressed.
+- Hunters can vent
+- The Kill Button and Vent Button are permanently enabled, so that you cannot use them to check if there is a prop nearby
+- The Kill Button can always be pressed, but you can also miss if no Prop is nearby. The cooldown can be configured for hits and misses seperately.
+
+
+### Game Options
+| General | Description | Hunter | Description | Hunted | Description |
+|----------|:-------------:|----------|:-------------:|----------|:-------------:|
+| Map | -                     | Number of Hunters | -                  | Props Become Hunters When Found | -
+| Timer in Min | -            | Initial Blackout Duration | -          | Invisibility Enabled | -
+| Unstuck Cooldown | -        | Kill Cooldown After Miss | -           | Invisibility Cooldown | -
+| Unstuck Duration | -        | Kill Cooldown After Hit | -            | Invisibility Duration | -
+| Hunter Vision | -           | Reveal Prop Cooldown | -               | Speedboost Enabled | -
+| Prop Vision | -             | Reveal Prop Duration | -               | Speedboost Cooldown | -
+|  | -             | Reveal Time Punish | deducted from rem. timer | Speedboost Duration | - 
+|  | -                         |  Hunter Admin Cooldown | - | Speedboost Ratio | Factor with which speed is multiplied 
+|  | -                       | Find Cooldown | -
+|  | -               | Find Duration | -
+
 ## GCERROR
 If the error message "Fatal Error in GC - Collecting from unknown thread" stops you from playing the game, you can now disable the mod-updater, which causes this error.
 In order to do this, create a file called `noupdater.txt` in your modded Among Us folder.
index 1c8c47248c8a74b33350cc15a581146e8f5c36bd..f733166bd48b8a85fd2614735034478300240622 100644 (file)
@@ -62,9 +62,18 @@ namespace TheOtherRoles
         private static CustomButton hunterAdminTableButton;
         private static CustomButton hunterArrowButton;
         private static CustomButton huntedShieldButton;
+        public static CustomButton propDisguiseButton;
+        private static CustomButton propHuntUnstuckButton;
+        public static CustomButton propHuntRevealButton;
+        private static CustomButton propHuntInvisButton;
+        private static CustomButton propHuntSpeedboostButton;
+        public static CustomButton propHuntAdminButton;
+        public static CustomButton propHuntFindButton;
 
         public static Dictionary<byte, List<CustomButton>> deputyHandcuffedButtons = null;
         public static PoolablePlayer targetDisplay;
+        public static GameObject propSpriteHolder;
+        public static SpriteRenderer propSpriteRenderer;
 
         public static TMPro.TMP_Text securityGuardButtonScrewsText;
         public static TMPro.TMP_Text securityGuardChargesText;
@@ -132,6 +141,13 @@ namespace TheOtherRoles
             huntedShieldButton.MaxTimer = Hunted.shieldCooldown;
             defuseButton.MaxTimer = 0f;
             defuseButton.Timer = 0f;
+            propDisguiseButton.MaxTimer = 1f;
+            propHuntUnstuckButton.MaxTimer = PropHunt.unstuckCooldown;
+            propHuntRevealButton.MaxTimer = PropHunt.revealCooldown;
+            propHuntInvisButton.MaxTimer = PropHunt.invisCooldown;
+            propHuntSpeedboostButton.MaxTimer = PropHunt.speedboostCooldown;
+            propHuntAdminButton.MaxTimer = PropHunt.adminCooldown;
+            propHuntFindButton.MaxTimer = PropHunt.findCooldown;
 
             timeMasterShieldButton.EffectDuration = TimeMaster.shieldDuration;
             hackerButton.EffectDuration = Hacker.duration;
@@ -151,6 +167,12 @@ namespace TheOtherRoles
             huntedShieldButton.EffectDuration = Hunted.shieldDuration;
             defuseButton.EffectDuration = Bomber.defuseDuration;
             bomberButton.EffectDuration = Bomber.destructionTime + Bomber.bombActiveAfter;
+            propHuntUnstuckButton.EffectDuration = PropHunt.unstuckDuration;
+            propHuntRevealButton.EffectDuration = PropHunt.revealDuration;
+            propHuntInvisButton.EffectDuration = PropHunt.invisDuration;
+            propHuntSpeedboostButton.EffectDuration = PropHunt.speedboostDuration;
+            propHuntAdminButton.EffectDuration = PropHunt.adminDuration;
+            propHuntFindButton.EffectDuration = PropHunt.findDuration;
             // Already set the timer to the max, as the button is enabled during the game and not available at the start
             lightsOutButton.Timer = lightsOutButton.MaxTimer;
             zoomOutButton.MaxTimer = 0f;
@@ -848,7 +870,7 @@ namespace TheOtherRoles
                     RPCProcedure.placeGarlic(buff);
                     SoundEffectsManager.play("garlic");
                 },
-                () => { return !Vampire.localPlacedGarlic && !CachedPlayer.LocalPlayer.Data.IsDead && Vampire.garlicsActive && !HideNSeek.isHideNSeekGM; },
+                () => { return !Vampire.localPlacedGarlic && !CachedPlayer.LocalPlayer.Data.IsDead && Vampire.garlicsActive && !HideNSeek.isHideNSeekGM && !PropHunt.isPropHuntGM; },
                 () => { return CachedPlayer.LocalPlayer.PlayerControl.CanMove && !Vampire.localPlacedGarlic; },
                 () => { },
                 Vampire.getGarlicButtonSprite(),
@@ -1261,7 +1283,6 @@ namespace TheOtherRoles
                     if (GameOptionsManager.Instance.currentNormalGameOptions.MapId != 1) {
                         if (SecurityGuard.minigame == null) {
                             byte mapId = GameOptionsManager.Instance.currentNormalGameOptions.MapId;
-                            UnityEngine.Object.FindObjectsOfType<SystemConsole>().ToList().ForEach(x => TheOtherRolesPlugin.Logger.LogMessage($"{x.name} {x.GetType()}, {x.MinigamePrefab.TaskType}"));
                             var e = UnityEngine.Object.FindObjectsOfType<SystemConsole>().FirstOrDefault(x => x.gameObject.name.Contains("Surv_Panel") || x.name.Contains("Cam"));
                             if (mapId == 0 || mapId == 3) e = UnityEngine.Object.FindObjectsOfType<SystemConsole>().FirstOrDefault(x => x.gameObject.name.Contains("SurvConsole"));
                             else if (mapId == 4) e = UnityEngine.Object.FindObjectsOfType<SystemConsole>().FirstOrDefault(x => x.gameObject.name.Contains("task_cams"));
@@ -2020,6 +2041,191 @@ namespace TheOtherRoles
             huntedShieldCountText.transform.localScale = Vector3.one * 0.5f;
             huntedShieldCountText.transform.localPosition += new Vector3(-0.05f, 0.7f, 0);
 
+
+            propDisguiseButton = new CustomButton(
+                () => {
+                    // Prop stuff
+                    var player = PlayerControl.LocalPlayer;
+                    GameObject disguiseTarget = PropHunt.currentTarget;
+                    // PropHunt.FindClosestDisguiseObject(player.gameObject, 1, true);
+                    if (disguiseTarget != null) {
+                        player.transform.localScale = disguiseTarget.transform.lossyScale;
+                        MessageWriter writer = AmongUsClient.Instance.StartRpcImmediately(CachedPlayer.LocalPlayer.PlayerControl.NetId, (byte)CustomRPC.SetProp, Hazel.SendOption.Reliable, -1);
+                        writer.Write(CachedPlayer.LocalPlayer.PlayerId);
+                        writer.Write(disguiseTarget.gameObject.name);
+                        writer.Write(disguiseTarget.gameObject.transform.position.x);
+                        AmongUsClient.Instance.FinishRpcImmediately(writer);
+                        RPCProcedure.propHuntSetProp(CachedPlayer.LocalPlayer.PlayerId, disguiseTarget.gameObject.name, disguiseTarget.gameObject.transform.position.x);
+                        SoundEffectsManager.play("morphlingMorph");
+                        propDisguiseButton.Timer = 1f;
+                    }
+                },
+                () => { return PropHunt.isPropHuntGM && !PlayerControl.LocalPlayer.Data.Role.IsImpostor && !PlayerControl.LocalPlayer.Data.IsDead; },
+                () => {
+                    propSpriteRenderer.sprite = PropHunt.currentTarget?.GetComponent<SpriteRenderer>()?.sprite;
+                    if (propSpriteRenderer.sprite != null)
+                        propSpriteHolder.transform.localScale *= 1 / propSpriteRenderer.bounds.size.magnitude;
+                    return PropHunt.currentTarget != null && PropHunt.currentTarget?.GetComponent<SpriteRenderer>()?.sprite != null;
+                },
+                () => {},
+                null,
+                CustomButton.ButtonPositions.lowerRowRight,
+                __instance,
+                KeyCode.F,
+                buttonText: "DISGUISE"               
+                );
+            propSpriteHolder = new GameObject("TORPropButtonPropSpritePreview");
+            propSpriteRenderer = propSpriteHolder.AddComponent<SpriteRenderer>();
+            propSpriteHolder.transform.SetParent(propDisguiseButton.actionButtonGameObject.transform, false);
+            propSpriteHolder.transform.localPosition = new Vector3(0, 0, -2f);
+
+            propHuntUnstuckButton = new CustomButton(
+
+                () => {
+                    PlayerControl.LocalPlayer.Collider.enabled = false;
+                      },
+                () => { return PropHunt.isPropHuntGM && !PlayerControl.LocalPlayer.Data.IsDead; },
+                () => { return true; },
+                () => { },
+                PropHunt.getUnstuckButtonSprite(),
+                CustomButton.ButtonPositions.upperRowLeft,
+                __instance,
+                KeyCode.LeftShift,
+                true,
+                1f,
+                () => { PlayerControl.LocalPlayer.Collider.enabled = true;
+                        propHuntUnstuckButton.Timer = propHuntUnstuckButton.MaxTimer;
+                },
+                buttonText: "UNSTUCK"
+                );
+
+            propHuntRevealButton = new CustomButton(
+                () => {
+                    // select a random crewplayer to reveal.
+                    var candidates = PlayerControl.AllPlayerControls.ToArray().Where(x => !x.Data.Role.IsImpostor && !x.Data.IsDead && !PropHunt.isCurrentlyRevealed.ContainsKey(x.PlayerId)).ToList();
+                    var rng = new System.Random();
+                    PlayerControl selectedPlayer = candidates[rng.Next(candidates.Count)];
+                    MessageWriter writer = AmongUsClient.Instance.StartRpcImmediately(CachedPlayer.LocalPlayer.PlayerControl.NetId, (byte)CustomRPC.SetRevealed, Hazel.SendOption.Reliable, -1);
+                    writer.Write(selectedPlayer.PlayerId);
+                    AmongUsClient.Instance.FinishRpcImmediately(writer);
+                    RPCProcedure.propHuntSetRevealed(selectedPlayer.PlayerId);
+
+                },
+                () => { return PropHunt.isPropHuntGM && !PlayerControl.LocalPlayer.Data.IsDead && PlayerControl.LocalPlayer.Data.Role.IsImpostor; },
+                () => { return PropHunt.timer - PropHunt.revealPunish > 0; },
+                () => { },
+                PropHunt.getRevealButtonSprite(),
+                CustomButton.ButtonPositions.upperRowFarLeft,
+                __instance,
+                KeyCode.R,
+                true,
+                5f,
+                () => {
+                    propHuntRevealButton.Timer = propHuntRevealButton.MaxTimer;
+                }
+                );
+
+            propHuntInvisButton = new CustomButton(
+                () => {
+                    MessageWriter writer = AmongUsClient.Instance.StartRpcImmediately(CachedPlayer.LocalPlayer.PlayerControl.NetId, (byte)CustomRPC.PropHuntSetInvis, Hazel.SendOption.Reliable, -1);
+                    writer.Write(CachedPlayer.LocalPlayer.PlayerId);
+                    AmongUsClient.Instance.FinishRpcImmediately(writer);
+                    RPCProcedure.propHuntSetInvis(CachedPlayer.LocalPlayer.PlayerId);
+                    SoundEffectsManager.play("morphlingMorph");
+                },
+                () => { return PropHunt.isPropHuntGM && !PlayerControl.LocalPlayer.Data.IsDead && !PlayerControl.LocalPlayer.Data.Role.IsImpostor && PropHunt.enableInvis; },
+                () => { return PropHunt.currentObject.ContainsKey(PlayerControl.LocalPlayer.PlayerId); },
+                () => { },
+                PropHunt.getInvisButtonSprite(),
+                CustomButton.ButtonPositions.upperRowFarLeft,
+                __instance,
+                KeyCode.I,
+                true,
+                5f,
+                () => {
+                    SoundEffectsManager.play("morphlingMorph");
+                    propHuntInvisButton.Timer = propHuntInvisButton.MaxTimer;
+                },
+                buttonText: "INVIS"
+                );
+
+            propHuntSpeedboostButton = new CustomButton(
+                () => {
+                    MessageWriter writer = AmongUsClient.Instance.StartRpcImmediately(CachedPlayer.LocalPlayer.PlayerControl.NetId, (byte)CustomRPC.PropHuntSetSpeedboost, Hazel.SendOption.Reliable, -1);
+                    writer.Write(CachedPlayer.LocalPlayer.PlayerId);
+                    AmongUsClient.Instance.FinishRpcImmediately(writer);
+                    RPCProcedure.propHuntSetSpeedboost(CachedPlayer.LocalPlayer.PlayerId);
+                    SoundEffectsManager.play("timemasterShield");
+                },
+                () => { return PropHunt.isPropHuntGM && !PlayerControl.LocalPlayer.Data.IsDead && !PlayerControl.LocalPlayer.Data.Role.IsImpostor && PropHunt.enableSpeedboost; },
+                () => { return true; },
+                () => { },
+                PropHunt.getSpeedboostButtonSprite(),
+                CustomButton.ButtonPositions.lowerRowCenter,
+                __instance,
+                KeyCode.G,
+                true,
+                5f,
+                () => {
+                    SoundEffectsManager.stop("timemasterShield");
+                    propHuntSpeedboostButton.Timer = propHuntSpeedboostButton.MaxTimer;
+                },
+                buttonText: "BOOST"
+                );
+
+            propHuntAdminButton = new CustomButton(
+               () => {
+                   if (!MapBehaviour.Instance || !MapBehaviour.Instance.isActiveAndEnabled) {
+                       HudManager __instance = FastDestroyableSingleton<HudManager>.Instance;
+                       __instance.InitMap();
+                       MapBehaviour.Instance.ShowCountOverlay(allowedToMove: true, showLivePlayerPosition: true, includeDeadBodies: false);
+                   }
+
+                   CachedPlayer.LocalPlayer.NetTransform.Halt(); // Stop current movement
+               },
+               () => { return PropHunt.isPropHuntGM && !PlayerControl.LocalPlayer.Data.IsDead && PlayerControl.LocalPlayer.Data.Role.IsImpostor; },
+               () => {
+                   propHuntAdminButton.PositionOffset = PlayerControl.LocalPlayer.inVent ? CustomButton.ButtonPositions.lowerRowRight : CustomButton.ButtonPositions.upperRowCenter;
+                   return !PlayerControl.LocalPlayer.inVent; },
+               () => {
+                   propHuntAdminButton.Timer = hunterAdminTableButton.MaxTimer;
+                   propHuntAdminButton.isEffectActive = false;
+                   propHuntAdminButton.actionButton.cooldownTimerText.color = Palette.EnabledColor;
+               },
+               Hacker.getAdminSprite(),
+               CustomButton.ButtonPositions.upperRowCenter,
+               __instance,
+               KeyCode.G,
+               true,
+               PropHunt.adminDuration,
+               () => {
+                   propHuntAdminButton.Timer = propHuntAdminButton.MaxTimer;
+                   if (MapBehaviour.Instance && MapBehaviour.Instance.isActiveAndEnabled) MapBehaviour.Instance.Close();
+               },
+               false,
+               "ADMIN"
+            ); 
+            propHuntFindButton = new CustomButton(
+                () => {
+                    SoundEffectsManager.play("timemasterShield");
+                },
+                () => { return PropHunt.isPropHuntGM && !PlayerControl.LocalPlayer.Data.IsDead && PlayerControl.LocalPlayer.Data.Role.IsImpostor; },
+                () => { return true; },
+                () => { },
+                PropHunt.getFindButtonSprite(),
+                CustomButton.ButtonPositions.lowerRowCenter,
+                __instance,
+                KeyCode.F,
+                true,
+                5f,
+                () => {
+                    SoundEffectsManager.stop("timemasterShield");
+                    propHuntFindButton.Timer = propHuntFindButton.MaxTimer;
+                    propHuntFindButton.isEffectActive = false;
+                },
+                buttonText: "FIND"
+                );
+
             // Set the default (or settings from the previous game) timers / durations when spawning the buttons
             initialized = true;
             setCustomButtonCooldowns();
diff --git a/TheOtherRoles/CustomGameModes/PropHunt.cs b/TheOtherRoles/CustomGameModes/PropHunt.cs
new file mode 100644 (file)
index 0000000..cc5ab1f
--- /dev/null
@@ -0,0 +1,576 @@
+using AmongUs.Data;
+using AmongUs.GameOptions;
+using HarmonyLib;
+using Hazel;
+using Reactor.Utilities;
+using Reactor.Utilities.Extensions;
+using System;
+using System.Collections.Generic;
+using System.Linq;
+using TheOtherRoles.Patches;
+using TheOtherRoles.Players;
+using TheOtherRoles.Utilities;
+using TMPro;
+using UnityEngine;
+
+namespace TheOtherRoles.CustomGameModes {
+    [HarmonyPatch]
+    class PropHunt {
+        public static bool isPropHuntGM = false;
+
+        public static Dictionary<byte, int> remainingShots = new Dictionary<byte, int>();
+        public static float timer = 20f;
+        public static bool timerRunning = false;
+        public static float blackOutTimer = 0f;
+
+        public static int numberOfHunters;
+        public static float initialBlackoutTime;
+        public static float killCooldownHit;
+        public static float killCooldownMiss;
+        public static float hunterVision;
+        public static float propVision;
+        public static float revealCooldown = 5f;
+        public static float revealDuration = 5f;
+        public static float unstuckDuration = 5f;
+        public static float unstuckCooldown = 5f;
+        public static float revealPunish = 0f;
+
+        public static float invisCooldown = 0f;
+        public static float invisDuration = 0f;
+        public static float speedboostCooldown = 0f;
+        public static float speedboostDuration = 0f;
+        public static float speedboostRatio = 0f;
+
+        public static float adminCooldown = 5f;
+        public static float adminDuration = 10f;
+
+        public static float findCooldown = 10f;
+        public static float findDuration = 10f;
+
+        public static bool enableSpeedboost = true;
+        public static bool enableInvis = true;
+
+        public static bool propBecomesHunterWhenFound;
+        private static Sprite disguiseButtonSprite;
+        private static Sprite unstuckButtonSprite;
+        private static Sprite revealButtonSprite;
+        private static Sprite invisButtonSprite;
+        private static Sprite speedboostButtonSprite;
+        private static Sprite findButtonSprite;
+        private static Sprite poolablesBackgroundSprite;
+        public static DateTime startTime = DateTime.UtcNow;
+        public static TMP_Text timerText;
+        public static List<string> whitelistedObjects = new List<string>() { };
+
+        public static Dictionary<byte, Tuple<string, float>> currentObject = new();
+        public static Dictionary<byte, float> isCurrentlyRevealed = new();
+        private static Dictionary<byte, GameObject> revealRenderer = new();
+        public static Dictionary<byte, float> invisPlayers = new();
+
+        public static Dictionary<byte, float> speedboostActive = new();
+
+        public static GameObject currentTarget = null;
+        private static GameObject poolablesBackground;
+
+        public static float dangerMeterActive = 0f;
+
+        private static List<GameObject> duplicatedCollider = new();
+        private static GameObject introObject;
+
+        public static void clearAndReload() {
+            remainingShots.Clear();
+            isPropHuntGM = TORMapOptions.gameMode == CustomGamemodes.PropHunt;
+            numberOfHunters = CustomOptionHolder.propHuntNumberOfHunters.getQuantity();
+            initialBlackoutTime = CustomOptionHolder.hunterInitialBlackoutTime.getFloat();
+            //maxMissesBeforeDeath = CustomOptionHolder.hunterMaxMissesBeforeDeath.getQuantity();
+            propBecomesHunterWhenFound = CustomOptionHolder.propBecomesHunterWhenFound.getBool();
+            killCooldownMiss = CustomOptionHolder.hunterMissCooldown.getFloat();
+            killCooldownHit = CustomOptionHolder.hunterHitCooldown.getFloat();
+            hunterVision = CustomOptionHolder.propHunterVision.getFloat();
+            propVision = CustomOptionHolder.propVision.getFloat();
+            timer = CustomOptionHolder.propHuntTimer.getFloat() * 60;
+            revealDuration = CustomOptionHolder.propHuntRevealDuration.getFloat();
+            revealCooldown = CustomOptionHolder.propHuntRevealCooldown.getFloat();
+            unstuckDuration = CustomOptionHolder.propHuntUnstuckDuration.getFloat();
+            unstuckCooldown = CustomOptionHolder.propHuntUnstuckCooldown.getFloat();
+            revealPunish = CustomOptionHolder.propHuntRevealPunish.getFloat();
+            invisCooldown = CustomOptionHolder.propHuntInvisCooldown.getFloat();
+            invisDuration = CustomOptionHolder.propHuntInvisDuration.getFloat();
+            speedboostCooldown = CustomOptionHolder.propHuntSpeedboostCooldown.getFloat();
+            speedboostDuration = CustomOptionHolder.propHuntSpeedboostDuration.getFloat();
+            speedboostRatio = CustomOptionHolder.propHuntSpeedboostSpeed.getFloat();
+            enableSpeedboost = CustomOptionHolder.propHuntSpeedboostEnabled.getBool();
+            enableInvis = CustomOptionHolder.propHuntInvisEnabled.getBool();
+            adminCooldown = CustomOptionHolder.propHuntAdminCooldown.getFloat();
+            findCooldown = CustomOptionHolder.propHuntFindCooldown.getFloat();
+            findDuration = CustomOptionHolder.propHuntFindDuration.getFloat();
+            timerRunning = false;
+            timerText?.Destroy();
+            timerText = null;
+            currentObject = new();
+            isCurrentlyRevealed = new();
+            poolablesBackground?.Destroy();
+            foreach (var go in revealRenderer.Values) { go.Destroy(); }
+            revealRenderer = new();
+            speedboostActive = new();
+            invisPlayers = new();
+            foreach (var go in duplicatedCollider) { go.Destroy(); }
+            duplicatedCollider = new();
+        }
+
+        public static Sprite getIntroSprite(int index) {
+            return Helpers.loadSpriteFromResources($"TheOtherRoles.Resources.IntroAnimation.intro_{index + 1000}.png", 150f, cache: false);
+        }
+
+        public static void update() {
+            
+            if (!isPropHuntGM) {
+                // Make sure the DangerMeter is not displayed in TOR HideNSeek, Classic or Guesser Game mode.
+                if (GameOptionsManager.Instance.currentGameOptions.GameMode != AmongUs.GameOptions.GameModes.HideNSeek) HudManager.Instance.DangerMeter?.gameObject.SetActive(false);
+                return;
+            }
+            if (timerRunning) timer = Math.Clamp(timer -= Time.deltaTime, 0, timer >= 0 ? timer : 0);
+            else if (blackOutTimer > 0f) blackOutTimer -= Time.deltaTime;
+
+            // Local player find prop Target:
+            if (!PlayerControl.LocalPlayer.Data.Role.IsImpostor) currentTarget = FindClosestDisguiseObject(PlayerControl.LocalPlayer.gameObject, 1f);
+
+            if (timerText == null) {
+                RoomTracker roomTracker = FastDestroyableSingleton<HudManager>.Instance?.roomTracker;
+                if (roomTracker != null) {
+                    GameObject gameObject = UnityEngine.Object.Instantiate(roomTracker.gameObject);
+
+                    gameObject.transform.SetParent(FastDestroyableSingleton<HudManager>.Instance.transform);
+                    UnityEngine.Object.DestroyImmediate(gameObject.GetComponent<RoomTracker>());
+                    timerText = gameObject.GetComponent<TMP_Text>();
+
+                    // Use local position to place it in the player's view instead of the world location
+                    gameObject.transform.localPosition = new Vector3(0, -1.8f, gameObject.transform.localPosition.z);
+                    if (AmongUs.Data.DataManager.Settings.Gameplay.StreamerMode) gameObject.transform.localPosition = new Vector3(0, 2f, gameObject.transform.localPosition.z);
+                }
+            } else {
+                if (timerRunning || blackOutTimer > 0f) {
+                    var relevantTimer = timerRunning ? timer : blackOutTimer;
+                    int minutes = (int)relevantTimer / 60;
+                    int seconds = (int)relevantTimer % 60;
+                    string suffix = $" {minutes:00}:{seconds:00}";
+                    timerText.text = Helpers.cs(timerRunning ? Color.blue : Color.red, suffix);
+                    timerText.outlineColor = Color.white;
+                    timerText.outlineWidth = 0.1f;
+                    timerText.color = timerRunning ? Color.blue : Color.red;                    
+                }
+            }
+            if (HudManagerStartPatch.propDisguiseButton != null && HudManagerStartPatch.propDisguiseButton.Timer > HudManagerStartPatch.propDisguiseButton.MaxTimer) HudManagerStartPatch.propDisguiseButton.Timer = HudManagerStartPatch.propDisguiseButton.MaxTimer;
+            // poolable players update.
+            if (poolablesBackground == null) {
+                poolablesBackground = new GameObject("poolablesBackground");
+                poolablesBackground.AddComponent<SpriteRenderer>();
+                if (poolablesBackgroundSprite == null) poolablesBackgroundSprite = Helpers.loadSpriteFromResources("TheOtherRoles.Resources.poolablesBackground.jpg", 200f);
+            }
+            poolablesBackground.transform.SetParent(HudManager.Instance.transform);
+            poolablesBackground.transform.localPosition = IntroCutsceneOnDestroyPatch.bottomLeft + new Vector3(-1.45f, -0.05f, 0)  + Vector3.right * PlayerControl.AllPlayerControls.Count * 0.2f;
+            var backgroundSizeX = PlayerControl.AllPlayerControls.Count * 0.4f + 0.2f;
+            poolablesBackground.GetComponent<SpriteRenderer>().sprite = poolablesBackgroundSprite;
+            poolablesBackground.transform.localScale = new Vector3(poolablesBackground.transform.localScale.x * backgroundSizeX / poolablesBackground.GetComponent<SpriteRenderer>().bounds.size.x, poolablesBackground.transform.localScale.y, poolablesBackground.transform.localScale.z);
+
+            foreach (var pc in PlayerControl.AllPlayerControls) {
+                if (!TORMapOptions.playerIcons.ContainsKey(pc.PlayerId)) continue;
+                var poolablePlayer = TORMapOptions.playerIcons[pc.PlayerId];
+                if (pc.Data.IsDead) {
+                    poolablePlayer.setSemiTransparent(true, 0.25f);
+                    poolablePlayer.cosmetics.nameText.text = Helpers.cs(Palette.DisabledGrey, pc.Data.PlayerName); ;
+                } else if (pc.Data.Role.IsImpostor) {
+                    poolablePlayer.cosmetics.nameText.text = Helpers.cs(Palette.ImpostorRed, pc.Data.PlayerName);
+                    poolablePlayer.cosmetics.currentBodySprite.BodySprite.material.SetFloat("_Outline", 2f);
+                    poolablePlayer.cosmetics.currentBodySprite.BodySprite.material.SetColor("_OutlineColor", Palette.ImpostorRed);
+                    poolablePlayer.cosmetics.nameText.fontSize = 4;
+                } else {
+                    // Display Prop
+                    poolablePlayer.cosmetics.nameText.text = Helpers.cs(Palette.CrewmateBlue, pc.Data.PlayerName); ;
+                    if (isCurrentlyRevealed.ContainsKey(pc.PlayerId)) {
+                        
+                    }
+                }
+                // update currently revealed:
+                if (isCurrentlyRevealed.ContainsKey(pc.PlayerId)) {
+                    if (!revealRenderer.ContainsKey(pc.PlayerId)) {
+                        var go = new GameObject($"reveal_renderer_{pc.PlayerId}");
+                        go.AddComponent<SpriteRenderer>();
+                        go.transform.SetParent(poolablePlayer.transform.parent, false);
+                        go.SetActive(true);
+                        go.transform.localPosition = poolablePlayer.transform.localPosition + new Vector3(0, 0, -50f);
+                        poolablePlayer.gameObject.SetActive(false);
+                        revealRenderer.Add(pc.PlayerId, go);
+                    }
+                    float revealTimer = isCurrentlyRevealed[pc.PlayerId] - Time.deltaTime;
+                    isCurrentlyRevealed[pc.PlayerId] = revealTimer;
+                    if (revealTimer > 0) {
+                        // get sprite:
+                        if (currentObject.ContainsKey(pc.PlayerId)) {
+                            revealRenderer[pc.PlayerId].GetComponent<SpriteRenderer>().sprite = pc.GetComponent<SpriteRenderer>().sprite;
+                            revealRenderer[pc.PlayerId].transform.localScale *= 0.5f / revealRenderer[pc.PlayerId].GetComponent<SpriteRenderer>().bounds.size.magnitude;
+                        }
+                    } else {
+                        revealRenderer[pc.PlayerId].Destroy();
+                        isCurrentlyRevealed.Remove(pc.PlayerId);
+                        revealRenderer.Remove(pc.PlayerId);
+                        poolablePlayer.gameObject.SetActive(true);
+                        SoundEffectsManager.play("morphlingMorph");
+                    }
+                }
+            }
+
+            // speedboost
+            foreach (var key in speedboostActive.Keys) {
+                float speedboostTimer = speedboostActive[key] - Time.deltaTime;
+                speedboostActive[key] = speedboostTimer;
+                if (speedboostTimer < 0)
+                    speedboostActive.Remove(key);
+            }
+            // invisupdate
+            foreach (var playerId in invisPlayers.Keys) {
+                var pc = Helpers.playerById(playerId);
+                if (pc == null || pc.Data.IsDead) continue;
+                float timeLeft = invisPlayers[playerId] - Time.deltaTime;
+                invisPlayers[playerId] = timeLeft;
+                if (timeLeft > 0) {
+                    pc.GetComponent<SpriteRenderer>().color = new Color(1f, 1f, 1f, PlayerControl.LocalPlayer.Data.IsDead || PlayerControl.LocalPlayer.PlayerId == playerId ? 0.1f: 0f);
+
+                }
+                else {
+                    pc.GetComponent<SpriteRenderer>().color = new Color(1f, 1f, 1f, 1f);
+                    invisPlayers.Remove(playerId);
+                }
+                if (isCurrentlyRevealed.ContainsKey(playerId)) {
+                    revealRenderer[playerId].GetComponent<SpriteRenderer>().color = pc.GetComponent<SpriteRenderer>().color;
+                }
+            }
+
+            // Update dangerMeter
+            if (HudManager.Instance.DangerMeter.gameObject.active) {
+                float dist = 55f;
+                float dist2 = 15f;
+                float curr = float.MaxValue;
+                foreach (PlayerControl playerControl in PlayerControl.AllPlayerControls.ToArray().Where(x => !x.Data.IsDead && (PlayerControl.LocalPlayer.Data.Role.IsImpostor ? !x.Data.Role.IsImpostor : x.Data.Role.IsImpostor))) {
+                    if (invisPlayers.ContainsKey(playerControl.PlayerId)) continue;  // Dont light up for invisible players
+                    if (!(playerControl == null)) {
+
+                        float sqrMagnitude = (playerControl.transform.position - PlayerControl.LocalPlayer.transform.position).sqrMagnitude;
+                        if (sqrMagnitude < dist && curr > sqrMagnitude) {
+                            curr = sqrMagnitude;
+                        }
+                    }
+                }
+                float dangerLevel1 = Mathf.Clamp01((dist - curr) / (dist - dist2));
+                float dangerLevel2 = Mathf.Clamp01((dist2 - curr) / dist2);
+                HudManager.Instance.DangerMeter.SetDangerValue(dangerLevel1, dangerLevel2);
+            }
+            HudManager.Instance.DangerMeter?.gameObject.SetActive(!PlayerControl.LocalPlayer.Data.IsDead && (!PlayerControl.LocalPlayer.Data.Role.IsImpostor || HudManagerStartPatch.propHuntFindButton.isEffectActive));
+        }
+
+        public static void transformLayers() {  // A bit of a hacky way to make sure that props as well as propable objects are not visible in the dark, while keeping collisions enabled.
+            PlayerControl.LocalPlayer.clearAllTasks();
+            foreach (Collider2D collider in Physics2D.OverlapCircleAll(PlayerControl.LocalPlayer.transform.position, 500)) {
+                bool whiteListed = false;
+                foreach (var whiteListedWord in whitelistedObjects) if (collider.gameObject.name.Contains(whiteListedWord) && collider.gameObject.GetComponent<SpriteRenderer>() != null) whiteListed = true;
+                if (collider.GetComponent<Console>() != null || whiteListed) {
+                    if (whiteListed) {
+                        var newgo = GameObject.Instantiate(collider.gameObject, collider.transform.parent);
+                        newgo.name = "DONTUSE";
+                        duplicatedCollider.Add(newgo);
+                    }
+                    
+                    collider.gameObject.layer = PlayerControl.LocalPlayer.gameObject.layer;
+                }
+            }
+        }
+
+        public static Sprite getDisguiseButtonSprite() {
+            if (disguiseButtonSprite) return disguiseButtonSprite;
+            disguiseButtonSprite = Helpers.loadSpriteFromResources("TheOtherRoles.Resources.DisguiseButton.png", 115f);
+            return disguiseButtonSprite;
+        }
+
+        public static Sprite getUnstuckButtonSprite() {
+            if (unstuckButtonSprite) return unstuckButtonSprite;
+            unstuckButtonSprite = Helpers.loadSpriteFromResources("TheOtherRoles.Resources.UnStuck.png", 115f);
+            return unstuckButtonSprite;
+        }
+        public static Sprite getRevealButtonSprite() {
+            if (revealButtonSprite) return revealButtonSprite;
+            revealButtonSprite = Helpers.loadSpriteFromResources("TheOtherRoles.Resources.Reveal.png", 115f);
+            return revealButtonSprite;
+        }
+
+        public static Sprite getInvisButtonSprite() {
+            if (invisButtonSprite) return invisButtonSprite;
+            invisButtonSprite = Helpers.loadSpriteFromResources("TheOtherRoles.Resources.InvisButton.png", 115f);
+            return invisButtonSprite;
+        }
+
+        public static Sprite getFindButtonSprite() {
+            if (findButtonSprite) return findButtonSprite;
+            findButtonSprite = Helpers.loadSpriteFromResources("TheOtherRoles.Resources.FindButton.png", 115f);
+            return findButtonSprite;
+        }
+        public static Sprite getSpeedboostButtonSprite() {
+            if (speedboostButtonSprite) return speedboostButtonSprite;
+            speedboostButtonSprite = Helpers.loadSpriteFromResources("TheOtherRoles.Resources.SpeedboostButton.png", 115f);
+            return speedboostButtonSprite;
+        }
+
+
+        public static GameObject FindClosestDisguiseObject(GameObject origin, float radius, bool verbose=false) {
+            // This throws errors if no console is nearby
+            try {
+                Collider2D bestCollider = null;
+                float bestDist = 9999;
+                if (whitelistedObjects == null || whitelistedObjects.Count == 0) {
+                    string allNames = Helpers.readTextFromResources("TheOtherRoles.Resources.Txt.Props.txt");
+                    whitelistedObjects = allNames.Split(Environment.NewLine, StringSplitOptions.RemoveEmptyEntries).ToList();
+                }
+                foreach (Collider2D collider in Physics2D.OverlapCircleAll(origin.transform.position, radius)) {
+                    if (verbose) {
+                        TheOtherRolesPlugin.Logger.LogMessage($"Nearby Object: {collider.gameObject.name}");
+                    }
+                    bool whiteListed = false;
+                    foreach (var whiteListedWord in whitelistedObjects) {
+                        if (collider.gameObject.name.Contains(whiteListedWord)) whiteListed = true;
+                    }
+                    if (collider.GetComponent<Console>() != null || whiteListed) {
+                        float dist = Vector2.Distance(origin.transform.position, collider.transform.position);
+                        if (dist < bestDist) {
+                            bestCollider = collider;
+                            bestDist = dist;
+                        }
+                    }
+                }
+                return bestCollider.gameObject;
+            } catch { return null; }
+        }
+
+        public static GameObject FindPropByNameAndPos(string propName, float posX) {
+            var candidates = GameObject.FindObjectsOfType<GameObject>();
+            GameObject prop = null;
+            foreach (var candidate in candidates) {
+                if (candidate.name == propName && candidate.transform.position.x == posX)
+                    prop = candidate;
+            }
+            return prop;
+        }
+
+        [HarmonyPatch(typeof(PlayerPhysics), nameof(PlayerPhysics.FixedUpdate))]
+        [HarmonyPostfix]
+        public static void SpeedbostPostfix(PlayerPhysics __instance) {
+            if (!__instance.AmOwner || !speedboostActive.ContainsKey(__instance.myPlayer.PlayerId)) return;
+            if (GameData.Instance && __instance.myPlayer.CanMove)
+                __instance.body.velocity *= speedboostRatio;
+        }
+
+        [HarmonyPatch(typeof(CustomNetworkTransform), nameof(CustomNetworkTransform.FixedUpdate))]
+        [HarmonyPostfix]
+        public static void PostfixNetworkSpeed(CustomNetworkTransform __instance) {
+            if (__instance.AmOwner || !speedboostActive.ContainsKey(__instance.myPlayer.PlayerId)) return;
+            if (GameData.Instance && __instance.myPlayer.CanMove)
+                __instance.body.velocity *= speedboostRatio;
+        }
+
+        [HarmonyPatch(typeof(IntroCutscene), nameof(IntroCutscene.OnDestroy))]
+        [HarmonyPostfix]
+        public static void IntroCutsceneDestroyPatch(IntroCutscene __instance) {
+            if (!isPropHuntGM || !PlayerControl.LocalPlayer.Data.Role.IsImpostor) return;
+            PlayerControl.LocalPlayer.moveable = false;
+            MessageWriter writer2 = AmongUsClient.Instance.StartRpcImmediately(CachedPlayer.LocalPlayer.PlayerControl.NetId, (byte)CustomRPC.PropHuntStartTimer, Hazel.SendOption.Reliable, -1);
+            writer2.Write(true);
+            AmongUsClient.Instance.FinishRpcImmediately(writer2);
+            RPCProcedure.propHuntStartTimer(true);
+            introObject = new GameObject("introrenderer");
+            introObject.layer = HudManager.Instance.FullScreen.gameObject.layer;
+            introObject.transform.SetParent(HudManager.Instance.FullScreen.transform);
+            introObject.transform.localPosition = new Vector3(0, 0, -1f);
+            SpriteRenderer introRenderer = introObject.AddComponent<SpriteRenderer>();
+            introObject.SetActive(true);
+            introRenderer.enabled = true;
+            int nFrames = 25 * (int)initialBlackoutTime + 10;
+            FastDestroyableSingleton<HudManager>.Instance.StartCoroutine(Effects.Lerp(initialBlackoutTime, new Action<float>((p) => {
+                if (p == 1f) {
+                    // start timer
+                    MessageWriter writer = AmongUsClient.Instance.StartRpcImmediately(CachedPlayer.LocalPlayer.PlayerControl.NetId, (byte)CustomRPC.PropHuntStartTimer, Hazel.SendOption.Reliable, -1);
+                    writer.Write(false);
+                    AmongUsClient.Instance.FinishRpcImmediately(writer);
+                    RPCProcedure.propHuntStartTimer();
+                    PlayerControl.LocalPlayer.moveable = true;
+                    HudManager.Instance.FullScreen.enabled = false;
+                    introObject.Destroy();
+                } else {
+                    HudManager.Instance.FullScreen.enabled = true;
+                    HudManager.Instance.FullScreen.gameObject.SetActive(true);
+                    HudManager.Instance.FullScreen.color = new Color(0, 0, 0, 1);
+                    introRenderer.sprite?.Destroy();
+                    introRenderer.sprite = getIntroSprite(510 - nFrames + (int)(p * nFrames));
+                    Resources.UnloadUnusedAssets();  // Needed so that the last sprite gets unloaded
+                }
+            })));            
+        }
+
+        [HarmonyPatch(typeof(PlayerControl), nameof(PlayerControl.FixedUpdate))]
+        [HarmonyPostfix]
+        public static void PlayerControlFixedUpdatePatch(PlayerControl __instance) {
+            if (!PropHunt.isPropHuntGM) return;
+                if (__instance.Data.Role.IsImpostor) {
+                    __instance.GetComponent<CircleCollider2D>().radius = 0.2234f;
+                    return;
+                }
+                if (__instance.GetComponent<SpriteRenderer>() != null || __instance.Data.IsDead) return;
+
+                __instance.gameObject.AddComponent<SpriteRenderer>();
+                __instance.GetComponent<CircleCollider2D>().radius = 0.00001f;
+            }
+
+
+        // Runs periodically, resets animation data for players
+        [HarmonyPatch(typeof(PlayerPhysics), nameof(PlayerPhysics.HandleAnimation))]
+        [HarmonyPostfix]
+        public static void PlayerPhysicsAnimationPatch(PlayerPhysics __instance) {
+            if (!AmongUsClient.Instance.IsGameStarted || !PropHunt.isPropHuntGM)
+                return;
+            try {
+                if (__instance.GetComponent<SpriteRenderer>().sprite != null && !__instance.myPlayer.Data.Role.IsImpostor) {
+                    __instance.myPlayer.Visible = false;
+                    __instance.GetComponent<SpriteRenderer>().flipX = __instance.myPlayer.cosmetics.currentBodySprite.BodySprite.flipX;
+                    __instance.myPlayer.cosmetics.currentPet?.Destroy();
+                }
+                if (__instance.myPlayer.Data.IsDead) {
+                    __instance.myPlayer.Visible = PlayerControl.LocalPlayer.Data.IsDead;
+                    GameObject.Destroy(__instance.GetComponent<SpriteRenderer>());
+                }
+            } catch { }
+        }
+
+        // Make prop impostor on death
+        [HarmonyPatch(typeof(PlayerControl), nameof(PlayerControl.Die))]
+        [HarmonyPostfix]
+        public static void MakePropImpostorPatch(PlayerControl __instance) {
+            if (!PropHunt.isPropHuntGM) return;
+            __instance.transform.localScale = new Vector3(0.7f, 0.7f, 1);
+            if (!__instance.Data.Role.IsImpostor && propBecomesHunterWhenFound) {
+                __instance.Revive();
+                DestroyableSingleton<RoleManager>.Instance.SetRole(__instance, RoleTypes.Impostor);
+                if (__instance == PlayerControl.LocalPlayer) {
+                    HudManagerStartPatch.propHuntRevealButton.Timer = revealCooldown;
+                    HudManagerStartPatch.propHuntFindButton.Timer = findCooldown;
+                    HudManagerStartPatch.propHuntAdminButton.Timer = adminCooldown;
+                }
+                __instance.MyPhysics.SetBodyType(PlayerBodyTypes.Seeker);
+            } else {
+                // Find correct dead body, set sprite to dead console object...
+                Sprite currentPlayerSprite = __instance.GetComponent<SpriteRenderer>().sprite;
+                foreach (var db in UnityEngine.Object.FindObjectsOfType<DeadBody>())
+                    if (db.ParentId == __instance.PlayerId && currentPlayerSprite != null) {
+                        db.bodyRenderers[0].sprite = currentPlayerSprite;
+                        db.bodyRenderers[0].color = new Color(0.5f, 0.5f, 0.5f, 0.5f);
+                    }
+            }
+            __instance.GetComponent<SpriteRenderer>().sprite = null;
+        }
+
+        [HarmonyPatch(typeof(HudManager), nameof(HudManager.Update))]
+        [HarmonyPostfix]
+        public static void MapSetPostfix() {  // Make sure the map in the settings is in sync with the map from li
+            if (TORMapOptions.gameMode != CustomGamemodes.PropHunt && TORMapOptions.gameMode != CustomGamemodes.HideNSeek || AmongUsClient.Instance.IsGameStarted) return;
+            int map = GameOptionsManager.Instance.currentGameOptions.MapId;
+            if (map > 3) map--;
+            if (TORMapOptions.gameMode == CustomGamemodes.HideNSeek)
+                if (CustomOptionHolder.hideNSeekMap.selection != map)
+                    CustomOptionHolder.hideNSeekMap.updateSelection(map);
+            if (TORMapOptions.gameMode == CustomGamemodes.PropHunt)
+                if (CustomOptionHolder.propHuntMap.selection != map)
+                    CustomOptionHolder.propHuntMap.updateSelection(map);
+        }
+
+
+        [HarmonyPatch(typeof(MapConsole), nameof(MapConsole.CanUse))]
+        [HarmonyPostfix]
+        public static void AdminCanUsePostfix(MapConsole __instance, GameData.PlayerInfo pc, ref bool canUse, ref bool couldUse, ref float __result) {
+            if (!PropHunt.isPropHuntGM || !PlayerControl.LocalPlayer.Data.Role.IsImpostor) return;
+            if (canUse) {
+                if (HudManagerStartPatch.propHuntAdminButton.Timer > 0) {
+                    canUse = couldUse = false;
+                    __result = float.MaxValue;
+                }
+            }
+        }
+
+        [HarmonyPatch(typeof(MapConsole), nameof(MapConsole.Use))]
+        [HarmonyPrefix]
+        public static bool AdminUsePostfix(MapConsole __instance) {
+            if (!PropHunt.isPropHuntGM || !PlayerControl.LocalPlayer.Data.Role.IsImpostor) return true;
+            HudManagerStartPatch.propHuntAdminButton.onClickEvent();
+            return false;
+        }
+
+
+        [HarmonyPatch(typeof(PlayerControl), nameof(PlayerControl.MurderPlayer))]
+        [HarmonyPostfix]
+        public static void MurderPlayerPostfix(PlayerControl __instance, [HarmonyArgument(0)] PlayerControl target) {
+            if (!PropHunt.isPropHuntGM) return;
+            try {
+                target.NetTransform.RpcSnapTo(__instance.transform.position);
+            } catch { }
+        }
+
+        // Make it so that the kill button doesn't light up when near a player
+        [HarmonyPatch(typeof(VentButton), nameof(VentButton.SetTarget))]
+        [HarmonyPatch(typeof(KillButton), nameof(KillButton.SetTarget))]
+        [HarmonyPostfix]
+        public static void KillButtonHighlightPatch(ActionButton __instance) {
+            if (!PropHunt.isPropHuntGM) return;
+            __instance.SetEnabled();
+        }
+
+
+        // Penalize the impostor if there is no prop killed
+        [HarmonyPatch(typeof(KillButton), nameof(KillButton.CheckClick))]
+        [HarmonyPrefix]
+        public static bool CheckClickPatch(KillButton __instance) {
+            if (!PropHunt.isPropHuntGM) return true;
+           __instance.DoClick();
+            return false;
+        }
+
+        // Penalize the impostor if there is no prop killed
+        [HarmonyPatch(typeof(KillButton), nameof(KillButton.DoClick))]
+        [HarmonyPrefix]
+        public static bool KillButtonClickPatch(KillButton __instance) {
+            if (!PropHunt.isPropHuntGM || __instance.isCoolingDown || PlayerControl.LocalPlayer.Data.IsDead || PlayerControl.LocalPlayer.inVent) return false;
+
+            __instance.SetTarget(PlayerControl.LocalPlayer.Data.Role.GetPlayersInAbilityRangeSorted(RoleBehaviour.GetTempPlayerList(), true).ToArray().FirstOrDefault());
+
+            if (__instance.currentTarget == null) {
+                PlayerControl.LocalPlayer.SetKillTimer(killCooldownMiss);
+            } else {  // There is a target, execute kill!
+                MurderAttemptResult res = Helpers.checkMurderAttemptAndKill(CachedPlayer.LocalPlayer.PlayerControl, __instance.currentTarget);
+                __instance.SetTarget(null);
+                PlayerControl.LocalPlayer.SetKillTimer(killCooldownHit);
+            }
+            return false;
+        }
+
+        [HarmonyPatch(typeof(MapBehaviour), nameof(MapBehaviour.Show))]
+        [HarmonyPrefix]
+        public static void MapBehaviourShowPatch(MapBehaviour __instance, ref MapOptions opts) {
+            if (!PropHunt.isPropHuntGM) return;
+            if (opts.Mode == MapOptions.Modes.Sabotage) opts.Mode = MapOptions.Modes.Normal;
+        }
+
+                
+        // Disable a lot of stuff
+        [HarmonyPatch(typeof(PlayerControl), nameof(PlayerControl.CmdReportDeadBody))]
+        [HarmonyPatch(typeof(Vent), nameof(Vent.SetOutline))]
+        [HarmonyPrefix]
+        public static bool DisableFunctions() {
+            if (!PropHunt.isPropHuntGM) return true;
+            return false;
+        }
+    }
+}
index d932b15429ea02e655f6337e80c7682916b133b4..2d78be4a9c9aa2aaaf919865a2b8578a1e6df8fa 100644 (file)
@@ -362,6 +362,33 @@ namespace TheOtherRoles {
         public static CustomOption huntedShieldRewindTime;
         public static CustomOption huntedShieldNumber;
 
+        // Prop Hunt Settings
+        public static CustomOption propHuntMap;
+        public static CustomOption propHuntTimer;
+        public static CustomOption propHuntNumberOfHunters;
+        public static CustomOption hunterInitialBlackoutTime;
+        public static CustomOption hunterMissCooldown;
+        public static CustomOption hunterHitCooldown;
+        public static CustomOption hunterMaxMissesBeforeDeath;
+        public static CustomOption propBecomesHunterWhenFound;
+        public static CustomOption propHunterVision;
+        public static CustomOption propVision;
+        public static CustomOption propHuntRevealCooldown;
+        public static CustomOption propHuntRevealDuration;
+        public static CustomOption propHuntRevealPunish;
+        public static CustomOption propHuntUnstuckCooldown;
+        public static CustomOption propHuntUnstuckDuration;
+        public static CustomOption propHuntInvisCooldown;
+        public static CustomOption propHuntInvisDuration;
+        public static CustomOption propHuntSpeedboostCooldown;
+        public static CustomOption propHuntSpeedboostDuration;
+        public static CustomOption propHuntSpeedboostSpeed;
+        public static CustomOption propHuntSpeedboostEnabled;
+        public static CustomOption propHuntInvisEnabled;
+        public static CustomOption propHuntAdminCooldown;
+        public static CustomOption propHuntFindCooldown;
+        public static CustomOption propHuntFindDuration;
+
         internal static Dictionary<byte, byte[]> blockedRolePairings = new Dictionary<byte, byte[]>();
 
         public static string cs(Color c, string s) {
@@ -373,6 +400,10 @@ namespace TheOtherRoles {
             return (byte)(f * 255);
         }
 
+        public static bool isMapSelectionOption(CustomOption option) {
+            return option == CustomOptionHolder.propHuntMap && option == CustomOptionHolder.hideNSeekMap;
+        }
+
         public static void Load() {
 
             CustomOption.vanillaSettings = TheOtherRolesPlugin.Instance.Config.Bind("Preset0", "VanillaOptions", "");
@@ -687,7 +718,7 @@ namespace TheOtherRoles {
             guesserGamemodeCantGuessSnitchIfTaksDone = CustomOption.Create(2010, Types.Guesser, "Guesser Can't Guess Snitch When Tasks Completed", true, null);
 
             // Hide N Seek Gamemode (3000 - 3999)
-            hideNSeekMap = CustomOption.Create(3020, Types.HideNSeekMain, cs(Color.yellow, "Map"), new string[] { "The Skeld", "Mira", "Polus", "Airship", "Submerged" }, null, true);
+            hideNSeekMap = CustomOption.Create(3020, Types.HideNSeekMain, cs(Color.yellow, "Map"), new string[] { "The Skeld", "Mira", "Polus", "Airship", "Submerged", "LI Map"}, null, true, onChange: () => { int map = hideNSeekMap.selection; if (map >= 3) map++; GameOptionsManager.Instance.currentNormalGameOptions.MapId = (byte)map; });
             hideNSeekHunterCount = CustomOption.Create(3000, Types.HideNSeekMain, cs(Color.yellow, "Number Of Hunters"), 1f, 1f, 3f, 1f);
             hideNSeekKillCooldown = CustomOption.Create(3021, Types.HideNSeekMain, cs(Color.yellow, "Kill Cooldown"), 10f, 2.5f, 60f, 2.5f);
             hideNSeekHunterVision = CustomOption.Create(3001, Types.HideNSeekMain, cs(Color.yellow, "Hunter Vision"), 0.5f, 0.25f, 2f, 0.25f);
@@ -695,7 +726,7 @@ namespace TheOtherRoles {
             hideNSeekCommonTasks = CustomOption.Create(3023, Types.HideNSeekMain, cs(Color.yellow, "Common Tasks"), 1f, 0f, 4f, 1f);
             hideNSeekShortTasks = CustomOption.Create(3024, Types.HideNSeekMain, cs(Color.yellow, "Short Tasks"), 3f, 1f, 23f, 1f);
             hideNSeekLongTasks = CustomOption.Create(3025, Types.HideNSeekMain, cs(Color.yellow, "Long Tasks"), 3f, 0f, 15f, 1f);
-            hideNSeekTimer = CustomOption.Create(3003, Types.HideNSeekMain, cs(Color.yellow, "Timer In Min"), 5f, 1f, 30f, 1f);
+            hideNSeekTimer = CustomOption.Create(3003, Types.HideNSeekMain, cs(Color.yellow, "Timer In Min"), 5f, 1f, 30f, 0.5f);
             hideNSeekTaskWin = CustomOption.Create(3004, Types.HideNSeekMain, cs(Color.yellow, "Task Win Is Possible"), false);
             hideNSeekTaskPunish = CustomOption.Create(3017, Types.HideNSeekMain, cs(Color.yellow, "Finish Tasks Punish In Sec"), 10f, 0f, 30f, 1f);
             hideNSeekCanSabotage = CustomOption.Create(3019, Types.HideNSeekMain, cs(Color.yellow, "Enable Sabotages"), false);
@@ -717,6 +748,36 @@ namespace TheOtherRoles {
             huntedShieldRewindTime = CustomOption.Create(3018, Types.HideNSeekRoles, cs(Color.gray, "Hunted Rewind Time"), 3f, 1f, 10f, 1f);
             huntedShieldNumber = CustomOption.Create(3026, Types.HideNSeekRoles, cs(Color.gray, "Hunted Shield Number"), 3f, 1f, 15f, 1f);
 
+            // Prop Hunt General Options
+            propHuntMap = CustomOption.Create(4020, Types.PropHunt, cs(Color.yellow, "Map"), new string[] { "The Skeld", "Mira", "Polus", "Airship", "Submerged", "LI Map"}, null, true, onChange: ()=> { int map = propHuntMap.selection; if (map >= 3) map++; GameOptionsManager.Instance.currentNormalGameOptions.MapId = (byte)map;});
+            propHuntTimer = CustomOption.Create(4021, Types.PropHunt, cs(Color.yellow, "Timer In Min"), 5f, 1f, 30f, 0.5f);
+            propHuntUnstuckCooldown = CustomOption.Create(4011, Types.PropHunt, cs(Color.yellow, "Unstuck Cooldown"), 30f, 2.5f, 60f, 2.5f);
+            propHuntUnstuckDuration = CustomOption.Create(4012, Types.PropHunt, cs(Color.yellow, "Unstuck Duration"), 2f, 1f, 60f, 1f);
+            propHunterVision = CustomOption.Create(4006, Types.PropHunt, cs(Color.yellow, "Hunter Vision"), 0.5f, 0.25f, 2f, 0.25f);
+            propVision = CustomOption.Create(4007, Types.PropHunt, cs(Color.yellow, "Prop Vision"), 2f, 0.25f, 5f, 0.25f);
+            // Hunter Options
+            propHuntNumberOfHunters = CustomOption.Create(4000, Types.PropHunt, cs(Color.red, "Number Of Hunters"), 1f, 1f, 5f, 1f, null, true);
+            hunterInitialBlackoutTime = CustomOption.Create(4001, Types.PropHunt, cs(Color.red, "Hunter Initial Blackout Duration"), 10f, 5f, 20f, 1f);
+            hunterMissCooldown = CustomOption.Create(4004, Types.PropHunt, cs(Color.red, "Kill Cooldown After Miss"), 10f, 2.5f, 60f, 2.5f);
+            hunterHitCooldown = CustomOption.Create(4005, Types.PropHunt, cs(Color.red, "Kill Cooldown After Hit"), 10f, 2.5f, 60f, 2.5f);
+            propHuntRevealCooldown = CustomOption.Create(4008, Types.PropHunt, cs(Color.red, "Reveal Prop Cooldown"), 30f, 10f, 90f, 2.5f);
+            propHuntRevealDuration = CustomOption.Create(4009, Types.PropHunt, cs(Color.red, "Reveal Prop Duration"), 5f, 1f, 60f, 1f);
+            propHuntRevealPunish = CustomOption.Create(4010, Types.PropHunt, cs(Color.red, "Reveal Time Punish"), 10f, 0f, 1800f, 5f);
+            propHuntAdminCooldown = CustomOption.Create(4022, Types.PropHunt, cs(Color.red, "Hunter Admin Cooldown"), 30f, 2.5f, 1800f, 2.5f);
+            propHuntFindCooldown = CustomOption.Create(4023, Types.PropHunt, cs(Color.red, "Find Cooldown"), 60f, 2.5f, 1800f, 2.5f);
+            propHuntFindDuration = CustomOption.Create(4024, Types.PropHunt, cs(Color.red, "Find Duration"), 5f, 1f, 15f, 1f);
+            // Prop Options
+            propBecomesHunterWhenFound = CustomOption.Create(4003, Types.PropHunt, cs(Palette.CrewmateBlue, "Props Become Hunters When Found"), false, null, true);
+            propHuntInvisEnabled = CustomOption.Create(4013, Types.PropHunt, cs(Palette.CrewmateBlue, "Invisibility Enabled"), true, null, true);
+            propHuntInvisCooldown = CustomOption.Create(4014, Types.PropHunt, cs(Palette.CrewmateBlue, "Invisibility Cooldown"), 120f, 10f, 1800f, 2.5f, propHuntInvisEnabled);
+            propHuntInvisDuration = CustomOption.Create(4015, Types.PropHunt, cs(Palette.CrewmateBlue, "Invisibility Duration"), 5f, 1f, 30f, 1f, propHuntInvisEnabled);
+            propHuntSpeedboostEnabled = CustomOption.Create(4016, Types.PropHunt, cs(Palette.CrewmateBlue, "Speedboost Enabled"), true, null, true);
+            propHuntSpeedboostCooldown = CustomOption.Create(4017, Types.PropHunt, cs(Palette.CrewmateBlue, "Speedboost Cooldown"), 60f, 2.5f, 1800f, 2.5f, propHuntSpeedboostEnabled);
+            propHuntSpeedboostDuration = CustomOption.Create(4018, Types.PropHunt, cs(Palette.CrewmateBlue, "Speedboost Duration"), 5f, 1f, 15f, 1f, propHuntSpeedboostEnabled);
+            propHuntSpeedboostSpeed = CustomOption.Create(4019, Types.PropHunt, cs(Palette.CrewmateBlue, "Speedboost Ratio"), 2f, 1.25f, 5f, 0.25f, propHuntSpeedboostEnabled);
+
+
+
             // Other options
             maxNumberOfMeetings = CustomOption.Create(3, Types.General, "Number Of Meetings (excluding Mayor meeting)", 10, 0, 15, 1, null, true);
             blockSkippingInEmergencyMeetings = CustomOption.Create(4, Types.General, "Block Skipping In Emergency Meetings", false);
index b582871a87468fea198ac207bac252acc2f8a753..8dfc3ab89d85522ad3996071885baf7a571ec5db 100644 (file)
@@ -28,22 +28,24 @@ namespace TheOtherRoles {
     public enum CustomGamemodes {
         Classic,
         Guesser,
-        HideNSeek
+        HideNSeek,
+        PropHunt
     }
     public static class Helpers
     {
 
         public static Dictionary<string, Sprite> CachedSprites = new();
 
-        public static Sprite loadSpriteFromResources(string path, float pixelsPerUnit) {
+        public static Sprite loadSpriteFromResources(string path, float pixelsPerUnit, bool cache=true) {
             try
             {
-                if (CachedSprites.TryGetValue(path + pixelsPerUnit, out var sprite)) return sprite;
+                if (cache && CachedSprites.TryGetValue(path + pixelsPerUnit, out var sprite)) return sprite;
                 Texture2D texture = loadTextureFromResources(path);
                 sprite = Sprite.Create(texture, new Rect(0, 0, texture.width, texture.height), new Vector2(0.5f, 0.5f), pixelsPerUnit);
-                sprite.hideFlags |= HideFlags.HideAndDontSave | HideFlags.DontSaveInEditor;
+                if (cache) sprite.hideFlags |= HideFlags.HideAndDontSave | HideFlags.DontSaveInEditor;
+                if (!cache) return sprite;
                 return CachedSprites[path + pixelsPerUnit] = sprite;
-            } catch {
+            } catch (Exception e) {
                 System.Console.WriteLine("Error loading sprite from path: " + path);
             }
             return null;
@@ -110,6 +112,14 @@ namespace TheOtherRoles {
             if (Constants.ShouldPlaySfx()) SoundManager.Instance.PlaySound(exampleClip, false, 0.8f);
             */
         }
+
+        public static string readTextFromResources(string path) {
+            Assembly assembly = Assembly.GetExecutingAssembly();
+            Stream stream = assembly.GetManifestResourceStream(path);
+            StreamReader textStreamReader = new StreamReader(stream);
+            return textStreamReader.ReadToEnd();
+        }
+
         public static PlayerControl playerById(byte id)
         {
             foreach (PlayerControl player in CachedPlayer.AllPlayers)
@@ -187,9 +197,13 @@ namespace TheOtherRoles {
             
             return cs(roleInfo.color, $"{roleInfo.name}: {roleInfo.shortDescription}");
         }
-        
-        public static bool isLighterColor(int colorId) {
-            return CustomColors.lighterColors.Contains(colorId);
+
+        public static bool isD(byte playerId) {
+            return playerId % 2 == 0;
+        }
+
+        public static bool isLighterColor(PlayerControl target) {
+            return isD(target.PlayerId);
         }
 
         public static bool isCustomServer() {
@@ -223,8 +237,8 @@ namespace TheOtherRoles {
                 player.Data.Tasks.Clear();
         }
 
-        public static void setSemiTransparent(this PoolablePlayer player, bool value) {
-            float alpha = value ? 0.25f : 1f;
+        public static void setSemiTransparent(this PoolablePlayer player, bool value, float alpha=0.25f) {
+            alpha = value ? alpha : 1f;
             foreach (SpriteRenderer r in player.gameObject.GetComponentsInChildren<SpriteRenderer>())
                 r.color = new Color(r.color.r, r.color.g, r.color.b, alpha);
             player.cosmetics.nameText.color = new Color(player.cosmetics.nameText.color.r, player.cosmetics.nameText.color.g, player.cosmetics.nameText.color.b, alpha);
@@ -377,8 +391,7 @@ namespace TheOtherRoles {
             if (AmongUsClient.Instance.IsGameOver) return MurderAttemptResult.SuppressKill;
             if (killer == null || killer.Data == null || (killer.Data.IsDead && !ignoreIfKillerIsDead) || killer.Data.Disconnected) return MurderAttemptResult.SuppressKill; // Allow non Impostor kills compared to vanilla code
             if (target == null || target.Data == null || target.Data.IsDead || target.Data.Disconnected) return MurderAttemptResult.SuppressKill; // Allow killing players in vents compared to vanilla code
-
-            if (GameOptionsManager.Instance.currentGameOptions.GameMode == GameModes.HideNSeek) return MurderAttemptResult.PerformKill;
+            if (GameOptionsManager.Instance.currentGameOptions.GameMode == GameModes.HideNSeek || PropHunt.isPropHuntGM) return MurderAttemptResult.PerformKill;
 
             // Handle first kill attempt
             if (TORMapOptions.shieldFirstKill && TORMapOptions.firstKillPlayer == target) return MurderAttemptResult.SuppressKill;
@@ -440,8 +453,8 @@ namespace TheOtherRoles {
         public static MurderAttemptResult checkMurderAttemptAndKill(PlayerControl killer, PlayerControl target, bool isMeetingStart = false, bool showAnimation = true, bool ignoreBlank = false, bool ignoreIfKillerIsDead = false)  {
             // The local player checks for the validity of the kill and performs it afterwards (different to vanilla, where the host performs all the checks)
             // The kill attempt will be shared using a custom RPC, hence combining modded and unmodded versions is impossible
-
             MurderAttemptResult murder = checkMuderAttempt(killer, target, isMeetingStart, ignoreBlank, ignoreIfKillerIsDead);
+
             if (murder == MurderAttemptResult.PerformKill) {
                 MessageWriter writer = AmongUsClient.Instance.StartRpcImmediately(CachedPlayer.LocalPlayer.PlayerControl.NetId, (byte)CustomRPC.UncheckedMurderPlayer, Hazel.SendOption.Reliable, -1);
                 writer.Write(killer.PlayerId);
index fed9777fb341179a182518a3976e28b7c19521c1..48e3a8127d3592339d4749c697386d47f614fa8c 100644 (file)
@@ -31,7 +31,7 @@ namespace TheOtherRoles
     public class TheOtherRolesPlugin : BasePlugin
     {
         public const string Id = "me.eisbison.theotherroles";
-        public const string VersionString = "4.3.4";
+        public const string VersionString = "4.4.0";
         public static uint betaDays = 0;  // amount of days for the build to be usable (0 for infinite!)
 
         public static Version Version = Version.Parse(VersionString);
index 559bd9b7f400535fb2662d8fceb2619e7d98bb87..a7ff4de995dad2b9abe7c0940f9d5efc7b9ea135 100644 (file)
@@ -389,7 +389,6 @@ namespace TheOtherRoles.Modules {
         [HarmonyPatch(typeof(HatParent), nameof(HatParent.LateUpdate))]
         public static class HatParentLateUpdatePatch {
             public static bool Prefix(HatParent __instance) {
-                return false;
                 if (__instance.Parent) {
                     HatViewData hatViewData;
                     try {
index 1328883ac83c8ed3a40e0674facc33dd444c7854..d751e994bf92e6585fbc1e0f9058d98eb5032f05 100644 (file)
@@ -14,6 +14,9 @@ using static TheOtherRoles.TheOtherRoles;
 using static TheOtherRoles.CustomOption;
 using Reactor.Utilities.Extensions;
 using AmongUs.GameOptions;
+using BepInEx.Unity.IL2CPP;
+using BepInEx;
+using static ShipStatus;
 
 namespace TheOtherRoles {
     public class CustomOption {
@@ -25,7 +28,8 @@ namespace TheOtherRoles {
             Modifier,
             Guesser,
             HideNSeekMain,
-            HideNSeekRoles
+            HideNSeekRoles,
+            PropHunt,
         }
 
         public static List<CustomOption> options = new List<CustomOption>();
@@ -43,10 +47,11 @@ namespace TheOtherRoles {
         public CustomOption parent;
         public bool isHeader;
         public CustomOptionType type;
+        public Action onChange = null;
 
         // Option creation
 
-        public CustomOption(int id, CustomOptionType type, string name,  System.Object[] selections, System.Object defaultValue, CustomOption parent, bool isHeader) {
+        public CustomOption(int id, CustomOptionType type, string name,  System.Object[] selections, System.Object defaultValue, CustomOption parent, bool isHeader, Action onChange = null) {
             this.id = id;
             this.name = parent == null ? name : "- " + name;
             this.selections = selections;
@@ -55,6 +60,7 @@ namespace TheOtherRoles {
             this.parent = parent;
             this.isHeader = isHeader;
             this.type = type;
+            this.onChange = onChange;
             selection = 0;
             if (id != 0) {
                 entry = TheOtherRolesPlugin.Instance.Config.Bind($"Preset{preset}", id.ToString(), defaultSelection);
@@ -63,19 +69,19 @@ namespace TheOtherRoles {
             options.Add(this);
         }
 
-        public static CustomOption Create(int id, CustomOptionType type, string name, string[] selections, CustomOption parent = null, bool isHeader = false) {
-            return new CustomOption(id, type, name, selections, "", parent, isHeader);
+        public static CustomOption Create(int id, CustomOptionType type, string name, string[] selections, CustomOption parent = null, bool isHeader = false, Action onChange = null) {
+            return new CustomOption(id, type, name, selections, "", parent, isHeader, onChange);
         }
 
-        public static CustomOption Create(int id, CustomOptionType type, string name, float defaultValue, float min, float max, float step, CustomOption parent = null, bool isHeader = false) {
+        public static CustomOption Create(int id, CustomOptionType type, string name, float defaultValue, float min, float max, float step, CustomOption parent = null, bool isHeader = false, Action onChange = null) {
             List<object> selections = new();
             for (float s = min; s <= max; s += step)
                 selections.Add(s);
-            return new CustomOption(id, type, name, selections.ToArray(), defaultValue, parent, isHeader);
+            return new CustomOption(id, type, name, selections.ToArray(), defaultValue, parent, isHeader, onChange);
         }
 
-        public static CustomOption Create(int id, CustomOptionType type, string name, bool defaultValue, CustomOption parent = null, bool isHeader = false) {
-            return new CustomOption(id, type, name, new string[]{"Off", "On"}, defaultValue ? "On" : "Off", parent, isHeader);
+        public static CustomOption Create(int id, CustomOptionType type, string name, bool defaultValue, CustomOption parent = null, bool isHeader = false, Action onChange = null) {
+            return new CustomOption(id, type, name, new string[]{"Off", "On"}, defaultValue ? "On" : "Off", parent, isHeader, onChange);
         }
 
         // Static behaviour
@@ -161,10 +167,12 @@ namespace TheOtherRoles {
 
         public void updateSelection(int newSelection) {
             selection = Mathf.Clamp((newSelection + selections.Length) % selections.Length, 0, selections.Length - 1);
+            try {
+                if (onChange != null) onChange();
+            } catch { }
             if (optionBehaviour != null && optionBehaviour is StringOption stringOption) {
                 stringOption.oldValue = stringOption.Value = selection;
                 stringOption.ValueText.text = selections[selection].ToString();
-
                 if (AmongUsClient.Instance?.AmHost == true && CachedPlayer.LocalPlayer.PlayerControl) {
                     if (id == 0 && selection != preset) {
                         switchPreset(selection); // Switch presets
@@ -178,6 +186,7 @@ namespace TheOtherRoles {
                 switchPreset(selection);
                 ShareOptionSelections();// Share all selections
             }
+
         }
 
         public static byte[] serializeOptions() {
@@ -263,6 +272,9 @@ namespace TheOtherRoles {
                 case CustomGamemodes.HideNSeek:
                     createHideNSeekTabs(__instance);
                     break;
+                case CustomGamemodes.PropHunt:
+                    createPropHuntTabs(__instance);
+                    break;
             }
 
             // create copy to clipboard and paste from clipboard buttons.
@@ -651,6 +663,86 @@ namespace TheOtherRoles {
             gameSettingMenu.GameSettingsHightlight.enabled = false;
         }
 
+
+        private static void createPropHuntTabs(GameOptionsMenu __instance) {
+            bool isReturn = setNames(
+                new Dictionary<string, string>() {
+                    ["TORSettings"] = "Prop Hunt Settings"
+                });
+
+            if (isReturn) return;
+
+            // Setup TOR tab
+            var template = UnityEngine.Object.FindObjectsOfType<StringOption>().FirstOrDefault();
+            if (template == null) return;
+            var gameSettings = GameObject.Find("Game Settings");
+            var gameSettingMenu = UnityEngine.Object.FindObjectsOfType<GameSettingMenu>().FirstOrDefault();
+
+            var torSettings = UnityEngine.Object.Instantiate(gameSettings, gameSettings.transform.parent);
+            var torMenu = getMenu(torSettings, "TORSettings");
+            var roleTab = GameObject.Find("RoleTab");
+            var gameTab = GameObject.Find("GameTab");
+
+            var torTab = UnityEngine.Object.Instantiate(roleTab, gameTab.transform.parent);
+            var torTabHighlight = getTabHighlight(torTab, "TheOtherRolesTab", "TheOtherRoles.Resources.TabIconPropHuntSettings.png");
+
+            roleTab.active = false;
+            gameTab.active = false;
+
+            // Position of Tab Icons
+            torTab.transform.position += Vector3.left * 3f;
+            
+            var tabs = new GameObject[] {torTab};
+            var settingsHighlightMap = new Dictionary<GameObject, SpriteRenderer> {
+                [torSettings.gameObject] = torTabHighlight
+            };
+            for (int i = 0; i < tabs.Length; i++) {
+                var button = tabs[i].GetComponentInChildren<PassiveButton>();
+                if (button == null) continue;
+                int copiedIndex = i;
+                button.OnClick = new UnityEngine.UI.Button.ButtonClickedEvent();
+                button.OnClick.AddListener((System.Action)(() => {
+                    setListener(settingsHighlightMap, copiedIndex);
+                }));
+            }
+
+            destroyOptions(new List<List<OptionBehaviour>>{
+                torMenu.GetComponentsInChildren<OptionBehaviour>().ToList(),
+            });
+
+            List<OptionBehaviour> torOptions = new List<OptionBehaviour>();
+
+            List<Transform> menus = new List<Transform>() { torMenu.transform };
+            List<List<OptionBehaviour>> optionBehaviours = new List<List<OptionBehaviour>>() { torOptions };
+
+            for (int i = 0; i < CustomOption.options.Count; i++) {
+                CustomOption option = CustomOption.options[i];
+                if (option.type != CustomOptionType.PropHunt) continue;
+                if (option.optionBehaviour == null) {
+                    int index = 0;
+                    StringOption stringOption = UnityEngine.Object.Instantiate(template, menus[index]);
+                    optionBehaviours[index].Add(stringOption);
+                    stringOption.OnValueChanged = new Action<OptionBehaviour>((o) => { });
+                    stringOption.TitleText.text = option.name;
+                    stringOption.Value = stringOption.oldValue = option.selection;
+                    stringOption.ValueText.text = option.selections[option.selection].ToString();
+
+                    option.optionBehaviour = stringOption;
+                }
+                option.optionBehaviour.gameObject.SetActive(true);
+            }
+
+            setOptions(
+                new List<GameOptionsMenu> { torMenu},
+                new List<List<OptionBehaviour>> { torOptions },
+                new List<GameObject> { torSettings }
+            );
+
+            torSettings.gameObject.SetActive(true);
+            torTabHighlight.enabled = true;
+            gameSettingMenu.RegularGameSettings.SetActive(false);
+            gameSettingMenu.GameSettingsHightlight.enabled = false;
+        }
         
         private static void setListener(Dictionary<GameObject, SpriteRenderer> settingsHighlightMap, int index) {
             foreach (KeyValuePair<GameObject, SpriteRenderer> entry in settingsHighlightMap) {
@@ -732,7 +824,7 @@ namespace TheOtherRoles {
             return false;
         }
     }
-
+    
     [HarmonyPatch(typeof(StringOption), nameof(StringOption.Increase))]
     public class StringOptionIncreasePatch
     {
@@ -741,6 +833,12 @@ namespace TheOtherRoles {
             CustomOption option = CustomOption.options.FirstOrDefault(option => option.optionBehaviour == __instance);
             if (option == null) return true;
             option.updateSelection(option.selection + 1);
+            if (CustomOptionHolder.isMapSelectionOption(option)) {
+                IGameOptions currentGameOptions = GameOptionsManager.Instance.CurrentGameOptions;
+                currentGameOptions.SetByte(ByteOptionNames.MapId, (byte)option.selection);
+                GameOptionsManager.Instance.GameHostOptions = GameOptionsManager.Instance.CurrentGameOptions;
+                GameManager.Instance.LogicOptions.SyncOptions();
+            }
             return false;
         }
     }
@@ -753,10 +851,34 @@ namespace TheOtherRoles {
             CustomOption option = CustomOption.options.FirstOrDefault(option => option.optionBehaviour == __instance);
             if (option == null) return true;
             option.updateSelection(option.selection - 1);
+            if (CustomOptionHolder.isMapSelectionOption(option)) {
+                IGameOptions currentGameOptions = GameOptionsManager.Instance.CurrentGameOptions;
+                currentGameOptions.SetByte(ByteOptionNames.MapId, (byte)option.selection);
+                GameOptionsManager.Instance.GameHostOptions = GameOptionsManager.Instance.CurrentGameOptions;
+                GameManager.Instance.LogicOptions.SyncOptions();
+            }
             return false;
         }
     }
 
+    [HarmonyPatch(typeof(StringOption), nameof(StringOption.FixedUpdate))]
+    public class StringOptionFixedUpdate {
+        public static void Postfix(StringOption __instance) {
+            if (!IL2CPPChainloader.Instance.Plugins.TryGetValue("com.DigiWorm.LevelImposter", out PluginInfo _)) return;
+            CustomOption option = CustomOption.options.FirstOrDefault(option => option.optionBehaviour == __instance);
+            if (option == null || !CustomOptionHolder.isMapSelectionOption(option)) return;
+            if (GameOptionsManager.Instance.CurrentGameOptions.MapId == 6)
+                if (option.optionBehaviour != null && option.optionBehaviour is StringOption stringOption) {
+                    stringOption.ValueText.text = option.selections[option.selection].ToString();
+                }
+            else if (option.optionBehaviour != null && option.optionBehaviour is StringOption stringOptionToo) {
+                    stringOptionToo.oldValue = stringOptionToo.Value = option.selection;
+                    stringOptionToo.ValueText.text = option.selections[option.selection].ToString();
+                }
+        }
+    }
+
+
     [HarmonyPatch(typeof(PlayerControl), nameof(PlayerControl.RpcSyncSettings))]
     public class RpcSyncSettingsPatch
     {
@@ -793,7 +915,7 @@ namespace TheOtherRoles {
 
             float offset = 2.75f;
             foreach (CustomOption option in CustomOption.options) {
-                if (GameObject.Find("TORSettings") && option.type != CustomOption.CustomOptionType.General && option.type != CustomOptionType.HideNSeekMain)
+                if (GameObject.Find("TORSettings") && option.type != CustomOption.CustomOptionType.General && option.type != CustomOptionType.HideNSeekMain && option.type != CustomOptionType.PropHunt)
                     continue;
                 if (GameObject.Find("ImpostorSettings") && option.type != CustomOption.CustomOptionType.Impostor)
                     continue;
@@ -828,10 +950,6 @@ namespace TheOtherRoles {
     [HarmonyPatch] 
     class GameOptionsDataPatch
     {
-        /*private static IEnumerable<MethodBase> TargetMethods() {
-            return typeof(IGameOptionsExtensions.).GetMethods().Where(x => x.ReturnType == typeof(string) && x.GetParameters().Length == 1 && x.GetParameters()[0].ParameterType == typeof(int));
-        }*/
-
         private static string buildRoleOptions() {
             var impRoles = buildOptionsOfType(CustomOption.CustomOptionType.Impostor, true) + "\n";
             var neutralRoles = buildOptionsOfType(CustomOption.CustomOptionType.Neutral, true) + "\n";
@@ -863,6 +981,8 @@ namespace TheOtherRoles {
                 options = options.Where(x => !(x.type == CustomOption.CustomOptionType.Guesser || x == CustomOptionHolder.crewmateRolesFill));
             else if (TORMapOptions.gameMode == CustomGamemodes.HideNSeek)
                 options = options.Where(x => (x.type == CustomOption.CustomOptionType.HideNSeekMain || x.type == CustomOption.CustomOptionType.HideNSeekRoles));
+            else if (TORMapOptions.gameMode == CustomGamemodes.PropHunt)
+                options = options.Where(x => (x.type == CustomOption.CustomOptionType.PropHunt));
 
             foreach (var option in options) {
                 if (option.parent == null) {
@@ -884,6 +1004,7 @@ namespace TheOtherRoles {
 
             foreach (CustomOption option in options) {
                 if (TORMapOptions.gameMode == CustomGamemodes.HideNSeek && option.type != CustomOptionType.HideNSeekMain && option.type != CustomOptionType.HideNSeekRoles) continue;
+                if (TORMapOptions.gameMode == CustomGamemodes.PropHunt && option.type != CustomOptionType.PropHunt) continue;
                 if (option.parent != null) {
                     bool isIrrelevant = option.parent.getSelection() == 0 || (option.parent.parent != null && option.parent.parent.getSelection() == 0);
 
@@ -942,12 +1063,14 @@ namespace TheOtherRoles {
             return sb.ToString();
         }
 
+
+        public static int maxPage = 7;
         public static string buildAllOptions(string vanillaSettings = "", bool hideExtras = false) {
             if (vanillaSettings == "")
                 vanillaSettings = GameOptionsManager.Instance.CurrentGameOptions.ToHudString(PlayerControl.AllPlayerControls.Count);
             int counter = TheOtherRolesPlugin.optionsPage;
             string hudString = counter != 0 && !hideExtras ? Helpers.cs(DateTime.Now.Second % 2 == 0 ? Color.white : Color.red, "(Use scroll wheel if necessary)\n\n") : "";
-            int maxPage = 7;
+            
             if (TORMapOptions.gameMode == CustomGamemodes.HideNSeek) {
                 if (TheOtherRolesPlugin.optionsPage > 1) TheOtherRolesPlugin.optionsPage = 0;
                 maxPage = 2;
@@ -959,10 +1082,18 @@ namespace TheOtherRoles {
                         hudString += "Page 2: Hide N Seek Role Settings \n\n" + buildOptionsOfType(CustomOption.CustomOptionType.HideNSeekRoles, false);
                         break;
                 }
+            } else if (TORMapOptions.gameMode == CustomGamemodes.PropHunt) {
+                maxPage = 1;
+                switch (counter) {
+                    case 0:
+                        hudString += "Page 1: Prop Hunt Settings \n\n" + buildOptionsOfType(CustomOption.CustomOptionType.PropHunt, false);
+                        break;
+                }
             } else {
+                maxPage = 7;
                 switch (counter) {
                     case 0:
-                        hudString += (!hideExtras ? "" :"Page 1: Vanilla Settings \n\n") + vanillaSettings;
+                        hudString += (!hideExtras ? "" : "Page 1: Vanilla Settings \n\n") + vanillaSettings;
                         break;
                     case 1:
                         hudString += "Page 2: The Other Roles Settings \n" + buildOptionsOfType(CustomOption.CustomOptionType.General, false);
@@ -1030,6 +1161,7 @@ namespace TheOtherRoles {
             }
             if (Input.GetKeyDown(KeyCode.F1))
                 HudManagerUpdate.ToggleSettings(HudManager.Instance);
+            if (TheOtherRolesPlugin.optionsPage >= GameOptionsDataPatch.maxPage) TheOtherRolesPlugin.optionsPage = 0;
 
             if (page != TheOtherRolesPlugin.optionsPage) {
                 Vector3 position = (Vector3)FastDestroyableSingleton<HudManager>.Instance?.GameSettings?.transform.localPosition;
@@ -1152,7 +1284,6 @@ namespace TheOtherRoles {
                     blockCount++;
             }
             for (int i = 0; i < blockCount; i++) {
-                TheOtherRolesPlugin.Logger.LogMessage(blockCount);
                 settingsTMPs[i].transform.localPosition = new Vector3(- blockCount * 1.2f + 2.7f * i, 2.2f, -500f);
             }
         }
index 4bec0dd6b6b5855a8ed5e7a22f5d9806c3a8823b..44dda533f487bcad3e04219b9862258db9d5437a 100644 (file)
@@ -201,7 +201,7 @@ namespace TheOtherRoles.Modules
         {
             // Since running the update check task causes a crash for some users, allow the user to disable the updater by creating a file called noupdater.txt
             // in their Among Us folder (root)
-            if (Il2CppSystem.IO.File.Exists(System.IO.Directory.GetCurrentDirectory() + "\\noupdater.txt")) yield break;
+            if (System.IO.File.Exists(System.IO.Directory.GetCurrentDirectory() + "\\noupdater.txt")) yield break;
             var torUpdateCheck = Task.Run(() => Instance.GetGithubUpdate("Eisbison", "TheOtherRoles"));
             while (!torUpdateCheck.IsCompleted) yield return null;
             if (torUpdateCheck.Result != null && torUpdateCheck.Result.IsNewer(Version.Parse(TheOtherRolesPlugin.VersionString)))
index 82bd3f173ce4da6e5b8ac3cb5a122171c6ba4a2f..8194739d16e2053b4c091f80efac7ea8c4f45e74 100644 (file)
@@ -34,14 +34,13 @@ namespace TheOtherRoles.Objects {
             float colorDuration = CustomOptionHolder.ninjaTraceColorTime.getFloat();
             FastDestroyableSingleton<HudManager>.Instance.StartCoroutine(Effects.Lerp(colorDuration, new Action<float>((p) => {
                 Color c = Palette.PlayerColors[(int)Ninja.ninja.Data.DefaultOutfit.ColorId];
-                if (Helpers.isLighterColor(Ninja.ninja.Data.DefaultOutfit.ColorId)) c = Color.white;
+                if (Helpers.isLighterColor(Ninja.ninja)) c = Color.white;
                 else c = Palette.PlayerColors[6];
                 //if (Camouflager.camouflageTimer > 0) {
                 //    c = Palette.PlayerColors[6];
                 //}
 
-                Color g = Color.green; // Usual display color. could also be Palette.PlayerColors[6] for default grey like camo
-                // if this stays black (0,0,0), it can ofc be removed.
+                Color g = Color.green; // Usual display color.
 
                 Color combinedColor = Mathf.Clamp01(p) * g + Mathf.Clamp01(1 - p) * c;
 
index abc3ac05044a7785a4740409a677ea7c99fe6b2d..d68e9af4eebeaf1ba4eae5ece3ef9813e8151927 100644 (file)
@@ -48,7 +48,7 @@ namespace TheOtherRoles.Objects {
             firstPortal.animationFgRenderer.flipX = flip;
             secondPortal.animationFgRenderer.flipX = flip;
             if (Morphling.morphling != null && Morphling.morphTimer > 0) playerControl = Morphling.morphTarget;  // Will output info of morph-target instead
-            string playerNameDisplay = Portalmaker.logOnlyHasColors ? "A player (" + (Helpers.isLighterColor(playerControl.Data.DefaultOutfit.ColorId) ? "L" : "D") + ")" : playerControl.Data.PlayerName;
+            string playerNameDisplay = Portalmaker.logOnlyHasColors ? "A player (" + (Helpers.isLighterColor(playerControl) ? "L" : "D") + ")" : playerControl.Data.PlayerName;
 
             int colorId = playerControl.Data.DefaultOutfit.ColorId;
 
index e436b96104c56b74a0d86d5df1eb29cb0d3ee56c..c4e6359a6ef6da7fe89b7b404637399a18e693a5 100644 (file)
@@ -18,14 +18,17 @@ namespace TheOtherRoles.Patches {
                 return true;
             }
 
-            __instance.SetGameMode(GameModes.Normal);  //__instance.Refresh();
-
-            if ((int)mode == 3) {
+            __instance.SetGameMode(GameModes.Normal);
+            CustomGamemodes gm = (CustomGamemodes)((int) mode - 2);
+            if (gm == CustomGamemodes.Guesser) {
                 __instance.GameModeText.text = "TOR Guesser";
                 TORMapOptions.gameMode = CustomGamemodes.Guesser;
-            } else {
+            } else if (gm == CustomGamemodes.HideNSeek) {
                 __instance.GameModeText.text = "TOR Hide N Seek";
                 TORMapOptions.gameMode = CustomGamemodes.HideNSeek;
+            } else if (gm == CustomGamemodes.PropHunt) {
+                __instance.GameModeText.text = "TOR Prop Hunt";
+                TORMapOptions.gameMode = CustomGamemodes.PropHunt;
             }
             return false;
         }
@@ -38,6 +41,8 @@ namespace TheOtherRoles.Patches {
             }
             else if (TORMapOptions.gameMode == CustomGamemodes.HideNSeek) {
                 __instance.GameModeText.text = "TOR Hide N Seek";
+            } else if (TORMapOptions.gameMode == CustomGamemodes.PropHunt) {
+                __instance.GameModeText.text = "TOR Prop Hunt";
             }
         }
     }
@@ -50,8 +55,8 @@ namespace TheOtherRoles.Patches {
             float num = ((float)Mathf.CeilToInt(4f / 10f) / 2f - 0.5f) * -2.5f;   // 4 for 4 buttons!
             __instance.controllerSelectable.Clear();
             int num2 = 0;
-            __instance.ButtonPool.poolSize = 4;
-            for (int i=0; i <= 4; i++) {
+            __instance.ButtonPool.poolSize = 5;
+            for (int i=0; i <= 5; i++) {
                     GameModes entry = (GameModes)i;
                 if (entry != GameModes.None) {
                     ChatLanguageButton chatLanguageButton = __instance.ButtonPool.Get<ChatLanguageButton>();
@@ -60,13 +65,15 @@ namespace TheOtherRoles.Patches {
                         chatLanguageButton.Text.text = DestroyableSingleton<TranslationController>.Instance.GetString(GameModesHelpers.ModeToName[entry], new Il2CppReferenceArray<Il2CppSystem.Object>(0));
                     else {
                         chatLanguageButton.Text.text = i == 3 ? "TOR Guesser" : "TOR Hide N Seek";
+                        if (i == 5)
+                            chatLanguageButton.Text.text = "TOR Prop Hunt";
                     }
                     chatLanguageButton.Button.OnClick.RemoveAllListeners();
                     chatLanguageButton.Button.OnClick.AddListener((System.Action)delegate {
                         __instance.ChooseOption(entry);
                     });
 
-                    bool isCurrentMode = i <= 2 && TORMapOptions.gameMode == CustomGamemodes.Classic ? (long)entry == (long)((ulong)gameMode) : (i == 3 && TORMapOptions.gameMode == CustomGamemodes.Guesser || i == 4 && TORMapOptions.gameMode == CustomGamemodes.HideNSeek);
+                    bool isCurrentMode = i <= 2 && TORMapOptions.gameMode == CustomGamemodes.Classic ? (long)entry == (long)((ulong)gameMode) : (i == 3 && TORMapOptions.gameMode == CustomGamemodes.Guesser || i == 4 && TORMapOptions.gameMode == CustomGamemodes.HideNSeek || i == 5 && TORMapOptions.gameMode == CustomGamemodes.PropHunt);
                     chatLanguageButton.SetSelected(isCurrentMode);
                     __instance.controllerSelectable.Add(chatLanguageButton.Button);
                     if (isCurrentMode) {
index d5c2ce819693ef98279e250c798abacacd1c9a3d..a0566f6ead561727083b06b31f7212b58d1a4ef8 100644 (file)
@@ -47,6 +47,7 @@ $@"<size=60%> <color=#FCCE03FF>Special thanks to K3ndo & Smeggy</color></size>";
                     string gameModeText = $"";
                     if (HideNSeek.isHideNSeekGM) gameModeText = $"Hide 'N Seek";
                     else if (HandleGuesser.isGuesserGm) gameModeText = $"Guesser";
+                    else if (PropHunt.isPropHuntGM) gameModeText = "Prop Hunt";
                     if (gameModeText != "") gameModeText = Helpers.cs(Color.yellow, gameModeText) + "\n";
                     __instance.text.text = $"<size=130%><color=#ff351f>TheOtherRoles</color></size> v{TheOtherRolesPlugin.Version.ToString() + (TheOtherRolesPlugin.betaDays > 0 ? "-BETA" : "")}\n{gameModeText}" + __instance.text.text;
                     if (CachedPlayer.LocalPlayer.Data.IsDead || (!(CachedPlayer.LocalPlayer.PlayerControl == null) && (CachedPlayer.LocalPlayer.PlayerControl == Lovers.lover1 || CachedPlayer.LocalPlayer.PlayerControl == Lovers.lover2))) {
@@ -58,6 +59,7 @@ $@"<size=60%> <color=#FCCE03FF>Special thanks to K3ndo & Smeggy</color></size>";
                     string gameModeText = $"";
                     if (TORMapOptions.gameMode == CustomGamemodes.HideNSeek) gameModeText = $"Hide 'N Seek";
                     else if (TORMapOptions.gameMode == CustomGamemodes.Guesser) gameModeText = $"Guesser";
+                    else if (TORMapOptions.gameMode == CustomGamemodes.PropHunt) gameModeText = $"Prop Hunt";
                     if (gameModeText != "") gameModeText = Helpers.cs(Color.yellow, gameModeText) + "\n";
 
                     __instance.text.text = $"{fullCredentialsVersion}\n  {gameModeText + fullCredentials}\n {__instance.text.text}";
index 304fdb9a985685453117131a0dbaba9316bfa261..5a88ba2db0465508ea76d3d92efc44d157e713dd 100644 (file)
@@ -225,10 +225,10 @@ namespace TheOtherRoles.Patches {
                 AdditionalTempData.additionalWinConditions.Add(WinCondition.AdditionalAlivePursuerWin);
             }
 
-            AdditionalTempData.timer = ((float)(DateTime.UtcNow - HideNSeek.startTime).TotalMilliseconds) / 1000;
+            AdditionalTempData.timer = ((float)(DateTime.UtcNow - (HideNSeek.isHideNSeekGM ? HideNSeek.startTime : PropHunt.startTime)).TotalMilliseconds) / 1000;
 
             // Reset Settings
-            if (TORMapOptions.gameMode == CustomGamemodes.HideNSeek) ShipStatusPatch.resetVanillaSettings();
+            if (TORMapOptions.gameMode == CustomGamemodes.HideNSeek ) ShipStatusPatch.resetVanillaSettings();
             RPCProcedure.resetVariables();
             EventUtility.gameEndsUpdate();
         }
@@ -332,14 +332,14 @@ namespace TheOtherRoles.Patches {
                 }
             }
 
-            if (TORMapOptions.showRoleSummary || HideNSeek.isHideNSeekGM) {
+            if (TORMapOptions.showRoleSummary || HideNSeek.isHideNSeekGM || PropHunt.isPropHuntGM) {
                 var position = Camera.main.ViewportToWorldPoint(new Vector3(0f, 1f, Camera.main.nearClipPlane));
                 GameObject roleSummary = UnityEngine.Object.Instantiate(__instance.WinText.gameObject);
                 roleSummary.transform.position = new Vector3(__instance.Navigation.ExitButton.transform.position.x + 0.1f, position.y - 0.1f, -214f); 
                 roleSummary.transform.localScale = new Vector3(1f, 1f, 1f);
 
                 var roleSummaryText = new StringBuilder();
-                if (HideNSeek.isHideNSeekGM) {
+                if (HideNSeek.isHideNSeekGM || PropHunt.isPropHuntGM) {
                     int minutes = (int)AdditionalTempData.timer / 60;
                     int seconds = (int)AdditionalTempData.timer % 60;
                     roleSummaryText.AppendLine($"<color=#FAD934FF>Time: {minutes:00}:{seconds:00}</color> \n");
@@ -452,7 +452,7 @@ namespace TheOtherRoles.Patches {
         }
 
         private static bool CheckAndEndGameForTaskWin(ShipStatus __instance) {
-            if (HideNSeek.isHideNSeekGM && !HideNSeek.taskWinPossible) return false;
+            if (HideNSeek.isHideNSeekGM && !HideNSeek.taskWinPossible || PropHunt.isPropHuntGM) return false;
             if (GameData.Instance.TotalTasks > 0 && GameData.Instance.TotalTasks <= GameData.Instance.CompletedTasks) {
                 //__instance.enabled = false;
                 GameManager.Instance.RpcEndGame(GameOverReason.HumansByTask, false);
@@ -489,7 +489,7 @@ namespace TheOtherRoles.Patches {
         }
 
         private static bool CheckAndEndGameForImpostorWin(ShipStatus __instance, PlayerStatistics statistics) {
-            if (HideNSeek.isHideNSeekGM) 
+            if (HideNSeek.isHideNSeekGM || PropHunt.isPropHuntGM
                 if ((0 != statistics.TotalAlive - statistics.TeamImpostorsAlive)) return false;
 
             if (statistics.TeamImpostorsAlive >= statistics.TotalAlive - statistics.TeamImpostorsAlive && statistics.TeamJackalAlive == 0 && !(statistics.TeamImpostorHasAliveLover && statistics.TeamLoversAlive == 2)) {
@@ -518,6 +518,10 @@ namespace TheOtherRoles.Patches {
                 GameManager.Instance.RpcEndGame(GameOverReason.HumansByVote, false);
                 return true;
             }
+            if (PropHunt.isPropHuntGM && PropHunt.timer <= 0 && PropHunt.timerRunning) {
+                GameManager.Instance.RpcEndGame(GameOverReason.HumansByVote, false);
+                return true;
+            }
             if (statistics.TeamImpostorsAlive == 0 && statistics.TeamJackalAlive == 0) {
                 //__instance.enabled = false;
                 GameManager.Instance.RpcEndGame(GameOverReason.HumansByVote, false);
index f1c7a1d302b4becb16dee6ba818be46baf5b7e50..a49d03a8c8993a238b184352b1cc797d723b690b 100644 (file)
@@ -187,8 +187,10 @@ namespace TheOtherRoles.Patches {
                             break;
                         }
                     }
-                    if (continueStart && TORMapOptions.gameMode == CustomGamemodes.HideNSeek) {
-                        byte mapId = (byte) CustomOptionHolder.hideNSeekMap.getSelection();
+                    if ((continueStart && TORMapOptions.gameMode == CustomGamemodes.HideNSeek || TORMapOptions.gameMode == CustomGamemodes.PropHunt) && GameOptionsManager.Instance.CurrentGameOptions.MapId != 6) {
+                        byte mapId = 0;
+                        if (TORMapOptions.gameMode == CustomGamemodes.HideNSeek) mapId = (byte)CustomOptionHolder.hideNSeekMap.getSelection();
+                        else if (TORMapOptions.gameMode == CustomGamemodes.PropHunt) mapId = (byte)CustomOptionHolder.propHuntMap.getSelection();
                         if (mapId >= 3) mapId++;
                         MessageWriter writer = AmongUsClient.Instance.StartRpcImmediately(CachedPlayer.LocalPlayer.PlayerControl.NetId, (byte)CustomRPC.DynamicMapOption, Hazel.SendOption.Reliable, -1);
                         writer.Write(mapId);
index 32040ba32ada7eabb75a4d04e3c083e503bc8f77..7837d79dc07c57fe2f160289989cb4480c450d76 100644 (file)
@@ -4,6 +4,7 @@ using System.Collections.Generic;
 using System.Linq;
 using TheOtherRoles.Players;
 using System;
+using TheOtherRoles.CustomGameModes;
 
 namespace TheOtherRoles.Patches {
     [HarmonyPatch]
@@ -71,12 +72,12 @@ namespace TheOtherRoles.Patches {
         [HarmonyPostfix]
         [HarmonyPatch(typeof(AbilityButton), nameof(AbilityButton.Update))]
         public static void showOrHideAbilityButtonPostfix(AbilityButton __instance) {
-            bool isHideNSeek = GameOptionsManager.Instance.currentGameOptions.GameMode == GameModes.HideNSeek;
-            if (CachedPlayer.LocalPlayer.Data.IsDead && (CustomOptionHolder.finishTasksBeforeHauntingOrZoomingOut.getBool() || isHideNSeek)) {
+            bool isGameMode = GameOptionsManager.Instance.currentGameOptions.GameMode == GameModes.HideNSeek || PropHunt.isPropHuntGM || HideNSeek.isHideNSeekGM;
+            if (CachedPlayer.LocalPlayer.Data.IsDead && (CustomOptionHolder.finishTasksBeforeHauntingOrZoomingOut.getBool() || isGameMode)) {
                 // player has haunt button.
                 var (playerCompleted, playerTotal) = TasksHandler.taskInfo(CachedPlayer.LocalPlayer.Data);
                 int numberOfLeftTasks = playerTotal - playerCompleted;
-                if (numberOfLeftTasks <= 0 || isHideNSeek)
+                if (numberOfLeftTasks <= 0 || isGameMode)
                     __instance.Show();
                 else
                     __instance.Hide();
index 6c98285fcf838309b18ae9feed22f90e9a77986a..71b46094c816c0f3cd1c606009677e95e962653f 100644 (file)
@@ -57,6 +57,13 @@ namespace TheOtherRoles.Patches {
                             player.gameObject.SetActive(true);
                         }
 
+                    } else if (PropHunt.isPropHuntGM) {
+                        player.transform.localPosition = bottomLeft + new Vector3(-1.25f, -0.1f, 0) + Vector3.right * hideNSeekCounter++ * 0.4f;
+                        player.transform.localScale = Vector3.one * 0.24f;
+                        player.setSemiTransparent(false);
+                        player.cosmetics.nameText.transform.localPosition += Vector3.up * 0.2f * (hideNSeekCounter % 2 == 0 ? 1 : -1);
+                        player.SetFlipX(false);
+                        player.gameObject.SetActive(true);
                     } else {   //  This can be done for all players not just for the bounty hunter as it was before. Allows the thief to have the correct position and scaling
                         player.transform.localPosition = bottomLeft;
                         player.transform.localScale = Vector3.one * 0.4f;
@@ -81,7 +88,7 @@ namespace TheOtherRoles.Patches {
             SoundEffectsManager.Load();
 
             // First kill
-            if (AmongUsClient.Instance.AmHost && TORMapOptions.shieldFirstKill && TORMapOptions.firstKillName != "" && !HideNSeek.isHideNSeekGM) {
+            if (AmongUsClient.Instance.AmHost && TORMapOptions.shieldFirstKill && TORMapOptions.firstKillName != "" && !HideNSeek.isHideNSeekGM && !PropHunt.isPropHuntGM) {
                 PlayerControl target = PlayerControl.AllPlayerControls.ToArray().ToList().FirstOrDefault(x => x.Data.PlayerName.Equals(TORMapOptions.firstKillName));
                 if (target != null) {
                     MessageWriter writer = AmongUsClient.Instance.StartRpcImmediately(CachedPlayer.LocalPlayer.PlayerControl.NetId, (byte)CustomRPC.SetFirstKill, Hazel.SendOption.Reliable, -1);
index aa4ea4cb2798d2301a81b3e2c4a9a6161128ad24..e1f8951eb81300885abf18fe9449a0897f42bcb4 100644 (file)
@@ -107,7 +107,8 @@ TownOfUs - Idea for the Swapper, Shifter, Arsonist and a similar Mayor role came
 Ottomated - Idea for the Morphling, Snitch and Camouflager role came from Ottomated
 Crowded-Mod - Our implementation for 10+ player lobbies was inspired by the one from the Crowded Mod Team
 Goose-Goose-Duck - Idea for the Vulture role came from Slushiegoose
-TheEpicRoles - Idea for the first kill shield (partly) and the tabbed option menu (fully + some code), by LaicosVK DasMonschta Nova</size>";
+TheEpicRoles - Idea for the first kill shield (partly) and the tabbed option menu (fully + some code), by LaicosVK DasMonschta Nova
+ugackMiner53 - Idea and core code for the Prop Hunt game mode</size>";
                 creditsString += "</align>";
 
                 Assets.InnerNet.Announcement creditsAnnouncement = new() {
@@ -169,10 +170,22 @@ TheEpicRoles - Idea for the first kill shield (partly) and the tabbed option men
                     template.OnClick();
                 }));
 
+                var PropHuntButton = GameObject.Instantiate<Transform>(gameButton, gameButton.parent);
+                PropHuntButton.transform.localPosition += new Vector3(3.4f, -0.5f);
+                var PropHuntButtonText = PropHuntButton.GetComponentInChildren<TMPro.TextMeshPro>();
+                var PropHuntButtonPassiveButton = PropHuntButton.GetComponentInChildren<PassiveButton>();
+
+                PropHuntButtonPassiveButton.OnClick = new Button.ButtonClickedEvent();
+                PropHuntButtonPassiveButton.OnClick.AddListener((System.Action)(() => {
+                    TORMapOptions.gameMode = CustomGamemodes.PropHunt;
+                    template.OnClick();
+                }));
+
                 template.StartCoroutine(Effects.Lerp(0.1f, new System.Action<float>((p) => {
                     guesserButtonText.SetText("TOR Guesser");
                     HideNSeekButtonText.SetText("TOR Hide N Seek");
-                 })));
+                    PropHuntButtonText.SetText("TOR Prop Hunt");
+                })));
             }));
         }
     }
index 726772bf43f91f27e91a9e70e293aa5aa6bad7ba..b251d7cabd18023f79101ed101341c6639bf10ff 100644 (file)
@@ -13,6 +13,7 @@ using TheOtherRoles.CustomGameModes;
 using static UnityEngine.GraphicsBuffer;
 using AmongUs.GameOptions;
 using Sentry.Internal.Extensions;
+using Reactor.Utilities.Extensions;
 
 namespace TheOtherRoles.Patches {
     [HarmonyPatch(typeof(PlayerControl), nameof(PlayerControl.FixedUpdate))]
@@ -618,7 +619,8 @@ namespace TheOtherRoles.Patches {
                     Snitch.text.text = $"Snitch is alive: " + playerCompleted + "/" + playerTotal;
                     if (snitchIsDead) Snitch.text.text = $"Snitch is dead!";
                 }
-            }
+            } else if (Snitch.text != null)
+                Snitch.text.Destroy();
 
             if (snitchIsDead) {
                 if (MeetingHud.Instance == null) Snitch.needsUpdate = false;
@@ -961,7 +963,7 @@ namespace TheOtherRoles.Patches {
             if (AmongUsClient.Instance.GameState != InnerNet.InnerNetClient.GameStates.Started || GameOptionsManager.Instance.currentGameOptions.GameMode == GameModes.HideNSeek) return;
 
             // Mini and Morphling shrink
-            playerSizeUpdate(__instance);
+            if (!PropHunt.isPropHuntGM) playerSizeUpdate(__instance);
             
             // set position of colorblind text
             foreach (var pc in PlayerControl.AllPlayerControls) {
@@ -1065,6 +1067,7 @@ namespace TheOtherRoles.Patches {
 
                 // -- GAME MODE --
                 hunterUpdate();
+                PropHunt.update();
             } 
         }
     }
@@ -1085,7 +1088,7 @@ namespace TheOtherRoles.Patches {
     [HarmonyPatch(typeof(PlayerControl), nameof(PlayerControl.CmdReportDeadBody))]
     class PlayerControlCmdReportDeadBodyPatch {
         public static bool Prefix(PlayerControl __instance) {
-            if (HideNSeek.isHideNSeekGM) return false;
+            if (HideNSeek.isHideNSeekGM || PropHunt.isPropHuntGM) return false;
             Helpers.handleVampireBiteOnBodyReport();
             return true;
         }
@@ -1113,7 +1116,7 @@ namespace TheOtherRoles.Patches {
                         if (timeSinceDeath < Detective.reportNameDuration * 1000) {
                             msg =  $"Body Report: The killer appears to be {deadPlayer.killerIfExisting.Data.PlayerName}!";
                         } else if (timeSinceDeath < Detective.reportColorDuration * 1000) {
-                            var typeOfColor = Helpers.isLighterColor(deadPlayer.killerIfExisting.Data.DefaultOutfit.ColorId) ? "lighter" : "darker";
+                            var typeOfColor = Helpers.isLighterColor(deadPlayer.killerIfExisting) ? "lighter" : "darker";
                             msg =  $"Body Report: The killer appears to be a {typeOfColor} color!";
                         } else {
                             msg = $"Body Report: The corpse is too old to gain information from!";
index a403f0ef983ff493aaa8b74b6f1bd01f977a6ee5..43dddd5308e75562288a22bbd7e53ee8d3cad8ed 100644 (file)
@@ -21,8 +21,8 @@ namespace TheOtherRoles.Patches {
     [HarmonyPatch(typeof(IGameOptionsExtensions), nameof(IGameOptionsExtensions.GetAdjustedNumImpostors))]
     class GameOptionsDataGetAdjustedNumImpostorsPatch {
         public static void Postfix(ref int __result) {
-            if (TORMapOptions.gameMode == CustomGamemodes.HideNSeek) {
-                int impCount = Mathf.RoundToInt(CustomOptionHolder.hideNSeekHunterCount.getFloat());
+            if (TORMapOptions.gameMode == CustomGamemodes.HideNSeek || TORMapOptions.gameMode == CustomGamemodes.PropHunt) {
+                int impCount = TORMapOptions.gameMode == CustomGamemodes.HideNSeek ? Mathf.RoundToInt(CustomOptionHolder.hideNSeekHunterCount.getFloat()) : CustomOptionHolder.propHuntNumberOfHunters.getQuantity();
                 __result = impCount; ; // Set Imp Num
             } else if (GameOptionsManager.Instance.CurrentGameOptions.GameMode == GameModes.Normal) {  // Ignore Vanilla impostor limits in TOR Games.
                 __result = Mathf.Clamp(GameOptionsManager.Instance.CurrentGameOptions.NumImpostors, 1, 3);
@@ -34,6 +34,8 @@ namespace TheOtherRoles.Patches {
     class GameOptionsDataValidatePatch {
         public static void Postfix(GameOptionsData __instance) {
             if (TORMapOptions.gameMode == CustomGamemodes.HideNSeek || GameOptionsManager.Instance.CurrentGameOptions.GameMode != GameModes.Normal) return;
+            if (TORMapOptions.gameMode == CustomGamemodes.PropHunt)
+                __instance.NumImpostors = CustomOptionHolder.propHuntNumberOfHunters.getQuantity();
             __instance.NumImpostors = GameOptionsManager.Instance.CurrentGameOptions.NumImpostors;
         }
     }
@@ -49,7 +51,7 @@ namespace TheOtherRoles.Patches {
             MessageWriter writer = AmongUsClient.Instance.StartRpcImmediately(CachedPlayer.LocalPlayer.PlayerControl.NetId, (byte)CustomRPC.ResetVaribles, Hazel.SendOption.Reliable, -1);
             AmongUsClient.Instance.FinishRpcImmediately(writer);
             RPCProcedure.resetVariables();
-            if (TORMapOptions.gameMode == CustomGamemodes.HideNSeek || GameOptionsManager.Instance.currentGameOptions.GameMode == GameModes.HideNSeek) return; // Don't assign Roles in Hide N Seek
+            if (TORMapOptions.gameMode == CustomGamemodes.HideNSeek || TORMapOptions.gameMode == CustomGamemodes.PropHunt || GameOptionsManager.Instance.currentGameOptions.GameMode == GameModes.HideNSeek) return; // Don't assign Roles in Hide N Seek
             if (CustomOptionHolder.activateRoles.getBool()) // Don't assign Roles in Tutorial or if deactivated
                 assignRoles();
         }
index 40d6cd97144543074af8c0a8e064d43268732bd5..9aada93857d653c89e2a81fff643991a024c8c61 100644 (file)
@@ -17,7 +17,18 @@ namespace TheOtherRoles.Patches {
         public static bool Prefix(ref float __result, ShipStatus __instance, [HarmonyArgument(0)] GameData.PlayerInfo player) {
             if (!__instance.Systems.ContainsKey(SystemTypes.Electrical) || GameOptionsManager.Instance.currentGameOptions.GameMode == GameModes.HideNSeek) return true;
 
-            
+            // If Game Mode is PropHunt:
+            if (PropHunt.isPropHuntGM) {
+                if (!PropHunt.timerRunning) {
+                    float progress = (PropHunt.blackOutTimer > 0f && PropHunt.blackOutTimer < 1f) ? 1 - PropHunt.blackOutTimer : 0f;
+                    float minVision = __instance.MaxLightRadius * (PropHunt.propBecomesHunterWhenFound ? 0.25f : PropHunt.propVision);
+                    __result = Mathf.Lerp(minVision, __instance.MaxLightRadius * PropHunt.propVision, progress); // For future start animation
+                } else {
+                    __result = __instance.MaxLightRadius * (PlayerControl.LocalPlayer.Data.Role.IsImpostor ? PropHunt.hunterVision : PropHunt.propVision);
+                }
+                return false;
+            }
+
             if (!HideNSeek.isHideNSeekGM || (HideNSeek.isHideNSeekGM && !Hunter.lightActive.Contains(player.PlayerId))) {
                 // If player is a role which has Impostor vision
                 if (Helpers.hasImpVision(player)) {
@@ -37,6 +48,7 @@ namespace TheOtherRoles.Patches {
             else if (HideNSeek.isHideNSeekGM && Hunter.isLightActive(player.PlayerId)) {
                 float unlerped = Mathf.InverseLerp(__instance.MinLightRadius, __instance.MaxLightRadius, GetNeutralLightRadius(__instance, false));
                 __result = Mathf.Lerp(__instance.MaxLightRadius * Hunter.lightVision, __instance.MaxLightRadius * Hunter.lightVision, unlerped);
+                return false;
             }
 
             // If there is a Trickster with their ability active
@@ -108,6 +120,11 @@ namespace TheOtherRoles.Patches {
                 var normalTaskCount = __instance.NormalTasks.Count;
                 var longTaskCount = __instance.LongTasks.Count;
 
+                if (TORMapOptions.gameMode == CustomGamemodes.PropHunt) {
+                    commonTaskCount = normalTaskCount = longTaskCount = 0;
+                }
+
+
                 if (GameOptionsManager.Instance.currentNormalGameOptions.NumCommonTasks > commonTaskCount) GameOptionsManager.Instance.currentNormalGameOptions.NumCommonTasks = commonTaskCount;
                 if (GameOptionsManager.Instance.currentNormalGameOptions.NumShortTasks > normalTaskCount) GameOptionsManager.Instance.currentNormalGameOptions.NumShortTasks = normalTaskCount;
                 if (GameOptionsManager.Instance.currentNormalGameOptions.NumLongTasks > longTaskCount) GameOptionsManager.Instance.currentNormalGameOptions.NumLongTasks = longTaskCount;
index 71573d71edbe9be891c98483c9a5cc59882b804b..8ef4a720d49b2deb0c062f58f97bda8300e6cda0 100644 (file)
@@ -228,7 +228,7 @@ namespace TheOtherRoles.Patches {
             if (CachedPlayer.LocalPlayer != null && MeetingHud.Instance != null && TORMapOptions.showLighterDarker) {
                 foreach (PlayerVoteArea player in MeetingHud.Instance.playerStates) {
                     var target = Helpers.playerById(player.TargetPlayerId);
-                    if (target != null)  player.NameText.text += $" ({(Helpers.isLighterColor(target.Data.DefaultOutfit.ColorId) ? "L" : "D")})";
+                    if (target != null)  player.NameText.text += $" ({(Helpers.isLighterColor(target) ? "L" : "D")})";
                 }
             }
         }
@@ -313,7 +313,7 @@ namespace TheOtherRoles.Patches {
         }
 
         static void updateSabotageButton(HudManager __instance) {
-            if (MeetingHud.Instance || TORMapOptions.gameMode == CustomGamemodes.HideNSeek) __instance.SabotageButton.Hide();
+            if (MeetingHud.Instance || TORMapOptions.gameMode == CustomGamemodes.HideNSeek || TORMapOptions.gameMode == CustomGamemodes.PropHunt) __instance.SabotageButton.Hide();
         }
 
         static void updateMapButton(HudManager __instance) {
index 5e1af9c9f7b5dfaa4fb4c992a1b7e26f8ff67eb2..2835ec9a2aeb9a180604e4ac084be3c0d6e7f86a 100644 (file)
@@ -169,6 +169,10 @@ namespace TheOtherRoles.Patches {
     [HarmonyPatch(typeof(KillButton), nameof(KillButton.DoClick))]
     class KillButtonDoClickPatch {
         public static bool Prefix(KillButton __instance) {
+            if (PropHunt.isPropHuntGM) {
+                KillAnimationCoPerformKillPatch.hideNextAnimation = true;  // dont jump out of bounds!
+                return false;
+            }
             if (__instance.isActiveAndEnabled && __instance.currentTarget && !__instance.isCoolingDown && !CachedPlayer.LocalPlayer.Data.IsDead && CachedPlayer.LocalPlayer.PlayerControl.CanMove) {
                 // Deputy handcuff update.
                 if (Deputy.handcuffedPlayers.Contains(CachedPlayer.LocalPlayer.PlayerId)) {
@@ -416,19 +420,18 @@ namespace TheOtherRoles.Patches {
                                         if (playerInfo != null) {
                                             var color = Palette.PlayerColors[playerInfo.DefaultOutfit.ColorId];
                                             if (Hacker.onlyColorType)
-                                                color = Helpers.isLighterColor(playerInfo.DefaultOutfit.ColorId) ? Palette.PlayerColors[7] : Palette.PlayerColors[6];
+                                                color = Helpers.isD(playerInfo.PlayerId) ? Palette.PlayerColors[7] : Palette.PlayerColors[6];
                                             roomColors.Add(color);
                                         }
                                     }
-                                } else {
+                                } else if (!collider2D.isTrigger) {
                                     PlayerControl component = collider2D.GetComponent<PlayerControl>();
                                     if (component && component.Data != null && !component.Data.Disconnected && !component.Data.IsDead && (__instance.showLivePlayerPosition || !component.AmOwner) && hashSet.Add((int)component.PlayerId)) {
                                         num2++;
                                         if (component?.cosmetics?.currentBodySprite?.BodySprite?.material != null) {
                                             Color color = component.cosmetics.currentBodySprite.BodySprite.material.GetColor("_BodyColor");
                                             if (Hacker.onlyColorType) {
-                                                var id = Mathf.Max(0, Palette.PlayerColors.IndexOf(color));
-                                                color = Helpers.isLighterColor((byte)id) ? Palette.PlayerColors[7] : Palette.PlayerColors[6];
+                                                color = Helpers.isLighterColor(component) ? Palette.PlayerColors[7] : Palette.PlayerColors[6];
                                             }
                                             roomColors.Add(color);
                                         }
@@ -712,6 +715,7 @@ namespace TheOtherRoles.Patches {
         static bool Prefix(MapBehaviour __instance) {
             if (HideNSeek.isHideNSeekGM)
                 return HideNSeek.canSabotage;
+            if (PropHunt.isPropHuntGM) return false;
             return true;
         }
     }
index 4ea20a724a131d7b606722386daaae1db85069d4..0e64211fbb4464e5114b95c25a84d6bb90306717 100644 (file)
@@ -153,6 +153,11 @@ namespace TheOtherRoles
         SetGuesserGm,
         HuntedShield,
         HuntedRewindTime,
+        SetProp,
+        SetRevealed,
+        PropHuntStartTimer,
+        PropHuntSetInvis,
+        PropHuntSetSpeedboost,
 
         // Other functionality
         ShareTimer,
@@ -1126,6 +1131,42 @@ namespace TheOtherRoles
             CachedPlayer.LocalPlayer.PlayerControl.moveable = false;
         }
 
+        public static void propHuntStartTimer(bool blackout = false) {
+            if (blackout) {
+                PropHunt.blackOutTimer = PropHunt.initialBlackoutTime;
+                PropHunt.transformLayers();
+            } else {
+                PropHunt.timerRunning = true;
+                PropHunt.blackOutTimer = 0f;
+            }            
+            PropHunt.startTime = DateTime.UtcNow;
+            foreach (var pc in PlayerControl.AllPlayerControls.ToArray().Where(x => x.Data.Role.IsImpostor)) {
+                pc.MyPhysics.SetBodyType(PlayerBodyTypes.Seeker);
+            }
+        }
+
+        public static void propHuntSetProp(byte playerId, string propName, float posX) {
+            PlayerControl player = Helpers.playerById(playerId);
+            var prop = PropHunt.FindPropByNameAndPos(propName, posX);
+            if (prop == null) return;
+            player.GetComponent<SpriteRenderer>().sprite = prop.GetComponent<SpriteRenderer>().sprite;
+            player.transform.localScale = prop.transform.lossyScale;
+            player.Visible = false;
+            PropHunt.currentObject[player.PlayerId] = new Tuple<string, float>(propName, posX);
+        }
+
+        public static void propHuntSetRevealed(byte playerId) {
+            SoundEffectsManager.play("morphlingMorph");
+            PropHunt.isCurrentlyRevealed.Add(playerId, PropHunt.revealDuration);
+            PropHunt.timer -= PropHunt.revealPunish;
+        }
+        public static void propHuntSetInvis(byte playerId) {
+            PropHunt.invisPlayers.Add(playerId, PropHunt.invisDuration);
+        }
+        public static void propHuntSetSpeedboost(byte playerId) {
+            PropHunt.speedboostActive.Add(playerId, PropHunt.speedboostDuration);
+        }
+
         public enum GhostInfoTypes {
             HandcuffNoticed,
             HandcuffOver,
@@ -1472,6 +1513,24 @@ namespace TheOtherRoles
                     byte rewindPlayer = reader.ReadByte();
                     RPCProcedure.huntedRewindTime(rewindPlayer);
                     break;
+                case (byte)CustomRPC.PropHuntStartTimer:
+                    RPCProcedure.propHuntStartTimer(reader.ReadBoolean());
+                    break;
+                case (byte)CustomRPC.SetProp:
+                    byte targetPlayer = reader.ReadByte();
+                    string propName = reader.ReadString();
+                    float posX = reader.ReadSingle();
+                    RPCProcedure.propHuntSetProp(targetPlayer, propName, posX);
+                    break;
+                case (byte)CustomRPC.SetRevealed:
+                    RPCProcedure.propHuntSetRevealed(reader.ReadByte());
+                    break;
+                case (byte)CustomRPC.PropHuntSetInvis:
+                    RPCProcedure.propHuntSetInvis(reader.ReadByte());
+                    break;
+                case (byte)CustomRPC.PropHuntSetSpeedboost:
+                    RPCProcedure.propHuntSetSpeedboost(reader.ReadByte());
+                    break;
                 case (byte)CustomRPC.ShareGhostInfo:
                     RPCProcedure.receiveGhostInfo(reader.ReadByte(), reader);
                     break;
diff --git a/TheOtherRoles/Resources/DisguiseButton.png b/TheOtherRoles/Resources/DisguiseButton.png
new file mode 100644 (file)
index 0000000..dbc4b8d
Binary files /dev/null and b/TheOtherRoles/Resources/DisguiseButton.png differ
diff --git a/TheOtherRoles/Resources/FindButton.png b/TheOtherRoles/Resources/FindButton.png
new file mode 100644 (file)
index 0000000..b476302
Binary files /dev/null and b/TheOtherRoles/Resources/FindButton.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1000.png b/TheOtherRoles/Resources/IntroAnimation/intro_1000.png
new file mode 100644 (file)
index 0000000..05fea99
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1000.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1001.png b/TheOtherRoles/Resources/IntroAnimation/intro_1001.png
new file mode 100644 (file)
index 0000000..73abae1
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1001.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1002.png b/TheOtherRoles/Resources/IntroAnimation/intro_1002.png
new file mode 100644 (file)
index 0000000..bb7b7ab
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1002.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1003.png b/TheOtherRoles/Resources/IntroAnimation/intro_1003.png
new file mode 100644 (file)
index 0000000..65fc6ad
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1003.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1004.png b/TheOtherRoles/Resources/IntroAnimation/intro_1004.png
new file mode 100644 (file)
index 0000000..cd60a56
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1004.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1005.png b/TheOtherRoles/Resources/IntroAnimation/intro_1005.png
new file mode 100644 (file)
index 0000000..63aaa11
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1005.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1006.png b/TheOtherRoles/Resources/IntroAnimation/intro_1006.png
new file mode 100644 (file)
index 0000000..aec564f
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1006.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1007.png b/TheOtherRoles/Resources/IntroAnimation/intro_1007.png
new file mode 100644 (file)
index 0000000..37c0fdb
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1007.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1008.png b/TheOtherRoles/Resources/IntroAnimation/intro_1008.png
new file mode 100644 (file)
index 0000000..0aa6eee
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1008.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1009.png b/TheOtherRoles/Resources/IntroAnimation/intro_1009.png
new file mode 100644 (file)
index 0000000..2a46847
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1009.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1010.png b/TheOtherRoles/Resources/IntroAnimation/intro_1010.png
new file mode 100644 (file)
index 0000000..ef82164
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1010.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1011.png b/TheOtherRoles/Resources/IntroAnimation/intro_1011.png
new file mode 100644 (file)
index 0000000..7015702
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1011.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1012.png b/TheOtherRoles/Resources/IntroAnimation/intro_1012.png
new file mode 100644 (file)
index 0000000..982bb5d
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1012.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1013.png b/TheOtherRoles/Resources/IntroAnimation/intro_1013.png
new file mode 100644 (file)
index 0000000..8d650cd
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1013.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1014.png b/TheOtherRoles/Resources/IntroAnimation/intro_1014.png
new file mode 100644 (file)
index 0000000..4365d16
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1014.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1015.png b/TheOtherRoles/Resources/IntroAnimation/intro_1015.png
new file mode 100644 (file)
index 0000000..13c7af5
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1015.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1016.png b/TheOtherRoles/Resources/IntroAnimation/intro_1016.png
new file mode 100644 (file)
index 0000000..0ac7f64
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1016.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1017.png b/TheOtherRoles/Resources/IntroAnimation/intro_1017.png
new file mode 100644 (file)
index 0000000..0750a1a
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1017.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1018.png b/TheOtherRoles/Resources/IntroAnimation/intro_1018.png
new file mode 100644 (file)
index 0000000..0f07b33
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1018.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1019.png b/TheOtherRoles/Resources/IntroAnimation/intro_1019.png
new file mode 100644 (file)
index 0000000..36a0934
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1019.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1020.png b/TheOtherRoles/Resources/IntroAnimation/intro_1020.png
new file mode 100644 (file)
index 0000000..8c8801b
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1020.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1021.png b/TheOtherRoles/Resources/IntroAnimation/intro_1021.png
new file mode 100644 (file)
index 0000000..98b98aa
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1021.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1022.png b/TheOtherRoles/Resources/IntroAnimation/intro_1022.png
new file mode 100644 (file)
index 0000000..5a7efb1
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1022.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1023.png b/TheOtherRoles/Resources/IntroAnimation/intro_1023.png
new file mode 100644 (file)
index 0000000..8739b1a
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1023.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1024.png b/TheOtherRoles/Resources/IntroAnimation/intro_1024.png
new file mode 100644 (file)
index 0000000..8739b1a
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1024.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1025.png b/TheOtherRoles/Resources/IntroAnimation/intro_1025.png
new file mode 100644 (file)
index 0000000..8739b1a
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1025.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1026.png b/TheOtherRoles/Resources/IntroAnimation/intro_1026.png
new file mode 100644 (file)
index 0000000..6b0ace1
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1026.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1027.png b/TheOtherRoles/Resources/IntroAnimation/intro_1027.png
new file mode 100644 (file)
index 0000000..79f52a3
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1027.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1028.png b/TheOtherRoles/Resources/IntroAnimation/intro_1028.png
new file mode 100644 (file)
index 0000000..cc9d981
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1028.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1029.png b/TheOtherRoles/Resources/IntroAnimation/intro_1029.png
new file mode 100644 (file)
index 0000000..19b0613
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1029.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1030.png b/TheOtherRoles/Resources/IntroAnimation/intro_1030.png
new file mode 100644 (file)
index 0000000..2f735ca
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1030.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1031.png b/TheOtherRoles/Resources/IntroAnimation/intro_1031.png
new file mode 100644 (file)
index 0000000..f2cb322
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1031.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1032.png b/TheOtherRoles/Resources/IntroAnimation/intro_1032.png
new file mode 100644 (file)
index 0000000..ba5c7bc
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1032.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1033.png b/TheOtherRoles/Resources/IntroAnimation/intro_1033.png
new file mode 100644 (file)
index 0000000..1d71088
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1033.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1034.png b/TheOtherRoles/Resources/IntroAnimation/intro_1034.png
new file mode 100644 (file)
index 0000000..f5ee5c8
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1034.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1035.png b/TheOtherRoles/Resources/IntroAnimation/intro_1035.png
new file mode 100644 (file)
index 0000000..596c979
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1035.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1036.png b/TheOtherRoles/Resources/IntroAnimation/intro_1036.png
new file mode 100644 (file)
index 0000000..afe57ca
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1036.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1037.png b/TheOtherRoles/Resources/IntroAnimation/intro_1037.png
new file mode 100644 (file)
index 0000000..6982da2
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1037.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1038.png b/TheOtherRoles/Resources/IntroAnimation/intro_1038.png
new file mode 100644 (file)
index 0000000..a6a9ae0
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1038.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1039.png b/TheOtherRoles/Resources/IntroAnimation/intro_1039.png
new file mode 100644 (file)
index 0000000..e404b7d
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1039.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1040.png b/TheOtherRoles/Resources/IntroAnimation/intro_1040.png
new file mode 100644 (file)
index 0000000..77d8e77
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1040.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1041.png b/TheOtherRoles/Resources/IntroAnimation/intro_1041.png
new file mode 100644 (file)
index 0000000..966da1f
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1041.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1042.png b/TheOtherRoles/Resources/IntroAnimation/intro_1042.png
new file mode 100644 (file)
index 0000000..a3f1f90
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1042.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1043.png b/TheOtherRoles/Resources/IntroAnimation/intro_1043.png
new file mode 100644 (file)
index 0000000..e40efa4
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1043.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1044.png b/TheOtherRoles/Resources/IntroAnimation/intro_1044.png
new file mode 100644 (file)
index 0000000..973a059
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1044.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1045.png b/TheOtherRoles/Resources/IntroAnimation/intro_1045.png
new file mode 100644 (file)
index 0000000..dca0db5
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1045.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1046.png b/TheOtherRoles/Resources/IntroAnimation/intro_1046.png
new file mode 100644 (file)
index 0000000..f1b132f
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1046.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1047.png b/TheOtherRoles/Resources/IntroAnimation/intro_1047.png
new file mode 100644 (file)
index 0000000..43ab596
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1047.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1048.png b/TheOtherRoles/Resources/IntroAnimation/intro_1048.png
new file mode 100644 (file)
index 0000000..0637309
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1048.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1049.png b/TheOtherRoles/Resources/IntroAnimation/intro_1049.png
new file mode 100644 (file)
index 0000000..0637309
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1049.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1050.png b/TheOtherRoles/Resources/IntroAnimation/intro_1050.png
new file mode 100644 (file)
index 0000000..0637309
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1050.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1051.png b/TheOtherRoles/Resources/IntroAnimation/intro_1051.png
new file mode 100644 (file)
index 0000000..a628d27
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1051.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1052.png b/TheOtherRoles/Resources/IntroAnimation/intro_1052.png
new file mode 100644 (file)
index 0000000..8a81720
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1052.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1053.png b/TheOtherRoles/Resources/IntroAnimation/intro_1053.png
new file mode 100644 (file)
index 0000000..426d548
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1053.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1054.png b/TheOtherRoles/Resources/IntroAnimation/intro_1054.png
new file mode 100644 (file)
index 0000000..4acce89
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1054.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1055.png b/TheOtherRoles/Resources/IntroAnimation/intro_1055.png
new file mode 100644 (file)
index 0000000..ef4844e
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1055.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1056.png b/TheOtherRoles/Resources/IntroAnimation/intro_1056.png
new file mode 100644 (file)
index 0000000..af44596
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1056.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1057.png b/TheOtherRoles/Resources/IntroAnimation/intro_1057.png
new file mode 100644 (file)
index 0000000..860e76c
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1057.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1058.png b/TheOtherRoles/Resources/IntroAnimation/intro_1058.png
new file mode 100644 (file)
index 0000000..e5d5afd
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1058.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1059.png b/TheOtherRoles/Resources/IntroAnimation/intro_1059.png
new file mode 100644 (file)
index 0000000..1171df9
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1059.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1060.png b/TheOtherRoles/Resources/IntroAnimation/intro_1060.png
new file mode 100644 (file)
index 0000000..f2f29f9
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1060.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1061.png b/TheOtherRoles/Resources/IntroAnimation/intro_1061.png
new file mode 100644 (file)
index 0000000..8660d93
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1061.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1062.png b/TheOtherRoles/Resources/IntroAnimation/intro_1062.png
new file mode 100644 (file)
index 0000000..e2362d6
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1062.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1063.png b/TheOtherRoles/Resources/IntroAnimation/intro_1063.png
new file mode 100644 (file)
index 0000000..d1c2de7
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1063.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1064.png b/TheOtherRoles/Resources/IntroAnimation/intro_1064.png
new file mode 100644 (file)
index 0000000..774276f
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1064.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1065.png b/TheOtherRoles/Resources/IntroAnimation/intro_1065.png
new file mode 100644 (file)
index 0000000..0d291c6
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1065.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1066.png b/TheOtherRoles/Resources/IntroAnimation/intro_1066.png
new file mode 100644 (file)
index 0000000..09d5f02
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1066.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1067.png b/TheOtherRoles/Resources/IntroAnimation/intro_1067.png
new file mode 100644 (file)
index 0000000..fe3bd23
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1067.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1068.png b/TheOtherRoles/Resources/IntroAnimation/intro_1068.png
new file mode 100644 (file)
index 0000000..5ea610a
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1068.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1069.png b/TheOtherRoles/Resources/IntroAnimation/intro_1069.png
new file mode 100644 (file)
index 0000000..79d4df9
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1069.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1070.png b/TheOtherRoles/Resources/IntroAnimation/intro_1070.png
new file mode 100644 (file)
index 0000000..3aae68c
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1070.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1071.png b/TheOtherRoles/Resources/IntroAnimation/intro_1071.png
new file mode 100644 (file)
index 0000000..e21f54f
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1071.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1072.png b/TheOtherRoles/Resources/IntroAnimation/intro_1072.png
new file mode 100644 (file)
index 0000000..dbc8a43
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1072.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1073.png b/TheOtherRoles/Resources/IntroAnimation/intro_1073.png
new file mode 100644 (file)
index 0000000..61ec137
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1073.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1074.png b/TheOtherRoles/Resources/IntroAnimation/intro_1074.png
new file mode 100644 (file)
index 0000000..61ec137
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1074.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1075.png b/TheOtherRoles/Resources/IntroAnimation/intro_1075.png
new file mode 100644 (file)
index 0000000..61ec137
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1075.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1076.png b/TheOtherRoles/Resources/IntroAnimation/intro_1076.png
new file mode 100644 (file)
index 0000000..67fe8ac
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1076.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1077.png b/TheOtherRoles/Resources/IntroAnimation/intro_1077.png
new file mode 100644 (file)
index 0000000..b8e526c
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1077.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1078.png b/TheOtherRoles/Resources/IntroAnimation/intro_1078.png
new file mode 100644 (file)
index 0000000..6c6938a
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1078.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1079.png b/TheOtherRoles/Resources/IntroAnimation/intro_1079.png
new file mode 100644 (file)
index 0000000..c48bf17
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1079.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1080.png b/TheOtherRoles/Resources/IntroAnimation/intro_1080.png
new file mode 100644 (file)
index 0000000..be05c14
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1080.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1081.png b/TheOtherRoles/Resources/IntroAnimation/intro_1081.png
new file mode 100644 (file)
index 0000000..b0084ee
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1081.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1082.png b/TheOtherRoles/Resources/IntroAnimation/intro_1082.png
new file mode 100644 (file)
index 0000000..ca33b03
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1082.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1083.png b/TheOtherRoles/Resources/IntroAnimation/intro_1083.png
new file mode 100644 (file)
index 0000000..f70a8f6
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1083.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1084.png b/TheOtherRoles/Resources/IntroAnimation/intro_1084.png
new file mode 100644 (file)
index 0000000..0ce764c
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1084.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1085.png b/TheOtherRoles/Resources/IntroAnimation/intro_1085.png
new file mode 100644 (file)
index 0000000..b248ecb
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1085.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1086.png b/TheOtherRoles/Resources/IntroAnimation/intro_1086.png
new file mode 100644 (file)
index 0000000..b12548b
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1086.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1087.png b/TheOtherRoles/Resources/IntroAnimation/intro_1087.png
new file mode 100644 (file)
index 0000000..8dddc07
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1087.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1088.png b/TheOtherRoles/Resources/IntroAnimation/intro_1088.png
new file mode 100644 (file)
index 0000000..e499fc6
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1088.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1089.png b/TheOtherRoles/Resources/IntroAnimation/intro_1089.png
new file mode 100644 (file)
index 0000000..d2b420c
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1089.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1090.png b/TheOtherRoles/Resources/IntroAnimation/intro_1090.png
new file mode 100644 (file)
index 0000000..1d48b40
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1090.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1091.png b/TheOtherRoles/Resources/IntroAnimation/intro_1091.png
new file mode 100644 (file)
index 0000000..19789f5
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1091.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1092.png b/TheOtherRoles/Resources/IntroAnimation/intro_1092.png
new file mode 100644 (file)
index 0000000..78e663c
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1092.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1093.png b/TheOtherRoles/Resources/IntroAnimation/intro_1093.png
new file mode 100644 (file)
index 0000000..0af67cf
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1093.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1094.png b/TheOtherRoles/Resources/IntroAnimation/intro_1094.png
new file mode 100644 (file)
index 0000000..227961c
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1094.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1095.png b/TheOtherRoles/Resources/IntroAnimation/intro_1095.png
new file mode 100644 (file)
index 0000000..9b693ab
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1095.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1096.png b/TheOtherRoles/Resources/IntroAnimation/intro_1096.png
new file mode 100644 (file)
index 0000000..99ec691
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1096.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1097.png b/TheOtherRoles/Resources/IntroAnimation/intro_1097.png
new file mode 100644 (file)
index 0000000..9764199
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1097.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1098.png b/TheOtherRoles/Resources/IntroAnimation/intro_1098.png
new file mode 100644 (file)
index 0000000..6bf25a6
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1098.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1099.png b/TheOtherRoles/Resources/IntroAnimation/intro_1099.png
new file mode 100644 (file)
index 0000000..6bf25a6
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1099.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1100.png b/TheOtherRoles/Resources/IntroAnimation/intro_1100.png
new file mode 100644 (file)
index 0000000..76de009
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1100.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1101.png b/TheOtherRoles/Resources/IntroAnimation/intro_1101.png
new file mode 100644 (file)
index 0000000..17c1bec
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1101.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1102.png b/TheOtherRoles/Resources/IntroAnimation/intro_1102.png
new file mode 100644 (file)
index 0000000..851cc69
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1102.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1103.png b/TheOtherRoles/Resources/IntroAnimation/intro_1103.png
new file mode 100644 (file)
index 0000000..498d7bc
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1103.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1104.png b/TheOtherRoles/Resources/IntroAnimation/intro_1104.png
new file mode 100644 (file)
index 0000000..3a43697
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1104.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1105.png b/TheOtherRoles/Resources/IntroAnimation/intro_1105.png
new file mode 100644 (file)
index 0000000..29aaec2
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1105.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1106.png b/TheOtherRoles/Resources/IntroAnimation/intro_1106.png
new file mode 100644 (file)
index 0000000..1540c34
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1106.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1107.png b/TheOtherRoles/Resources/IntroAnimation/intro_1107.png
new file mode 100644 (file)
index 0000000..659a72e
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1107.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1108.png b/TheOtherRoles/Resources/IntroAnimation/intro_1108.png
new file mode 100644 (file)
index 0000000..9fc4195
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1108.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1109.png b/TheOtherRoles/Resources/IntroAnimation/intro_1109.png
new file mode 100644 (file)
index 0000000..79e8ff7
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1109.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1110.png b/TheOtherRoles/Resources/IntroAnimation/intro_1110.png
new file mode 100644 (file)
index 0000000..e29b341
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1110.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1111.png b/TheOtherRoles/Resources/IntroAnimation/intro_1111.png
new file mode 100644 (file)
index 0000000..26557da
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1111.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1112.png b/TheOtherRoles/Resources/IntroAnimation/intro_1112.png
new file mode 100644 (file)
index 0000000..3b073e5
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1112.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1113.png b/TheOtherRoles/Resources/IntroAnimation/intro_1113.png
new file mode 100644 (file)
index 0000000..7b641dc
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1113.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1114.png b/TheOtherRoles/Resources/IntroAnimation/intro_1114.png
new file mode 100644 (file)
index 0000000..78e86ac
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1114.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1115.png b/TheOtherRoles/Resources/IntroAnimation/intro_1115.png
new file mode 100644 (file)
index 0000000..cca343b
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1115.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1116.png b/TheOtherRoles/Resources/IntroAnimation/intro_1116.png
new file mode 100644 (file)
index 0000000..a80f3ac
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1116.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1117.png b/TheOtherRoles/Resources/IntroAnimation/intro_1117.png
new file mode 100644 (file)
index 0000000..6980f51
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1117.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1118.png b/TheOtherRoles/Resources/IntroAnimation/intro_1118.png
new file mode 100644 (file)
index 0000000..2fd5bb5
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1118.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1119.png b/TheOtherRoles/Resources/IntroAnimation/intro_1119.png
new file mode 100644 (file)
index 0000000..b6a01f7
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1119.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1120.png b/TheOtherRoles/Resources/IntroAnimation/intro_1120.png
new file mode 100644 (file)
index 0000000..41e2290
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1120.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1121.png b/TheOtherRoles/Resources/IntroAnimation/intro_1121.png
new file mode 100644 (file)
index 0000000..8da9d7e
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1121.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1122.png b/TheOtherRoles/Resources/IntroAnimation/intro_1122.png
new file mode 100644 (file)
index 0000000..944d081
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1122.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1123.png b/TheOtherRoles/Resources/IntroAnimation/intro_1123.png
new file mode 100644 (file)
index 0000000..944d081
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1123.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1124.png b/TheOtherRoles/Resources/IntroAnimation/intro_1124.png
new file mode 100644 (file)
index 0000000..944d081
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1124.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1125.png b/TheOtherRoles/Resources/IntroAnimation/intro_1125.png
new file mode 100644 (file)
index 0000000..944d081
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1125.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1126.png b/TheOtherRoles/Resources/IntroAnimation/intro_1126.png
new file mode 100644 (file)
index 0000000..d4d7fe5
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1126.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1127.png b/TheOtherRoles/Resources/IntroAnimation/intro_1127.png
new file mode 100644 (file)
index 0000000..8b6d0d2
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1127.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1128.png b/TheOtherRoles/Resources/IntroAnimation/intro_1128.png
new file mode 100644 (file)
index 0000000..9824d29
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1128.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1129.png b/TheOtherRoles/Resources/IntroAnimation/intro_1129.png
new file mode 100644 (file)
index 0000000..ae7d503
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1129.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1130.png b/TheOtherRoles/Resources/IntroAnimation/intro_1130.png
new file mode 100644 (file)
index 0000000..8c1dbe4
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1130.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1131.png b/TheOtherRoles/Resources/IntroAnimation/intro_1131.png
new file mode 100644 (file)
index 0000000..f9688a8
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1131.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1132.png b/TheOtherRoles/Resources/IntroAnimation/intro_1132.png
new file mode 100644 (file)
index 0000000..29f46bf
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1132.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1133.png b/TheOtherRoles/Resources/IntroAnimation/intro_1133.png
new file mode 100644 (file)
index 0000000..b4b5b7b
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1133.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1134.png b/TheOtherRoles/Resources/IntroAnimation/intro_1134.png
new file mode 100644 (file)
index 0000000..ced6043
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1134.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1135.png b/TheOtherRoles/Resources/IntroAnimation/intro_1135.png
new file mode 100644 (file)
index 0000000..536ff44
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1135.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1136.png b/TheOtherRoles/Resources/IntroAnimation/intro_1136.png
new file mode 100644 (file)
index 0000000..d2f7dd4
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1136.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1137.png b/TheOtherRoles/Resources/IntroAnimation/intro_1137.png
new file mode 100644 (file)
index 0000000..82884b3
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1137.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1138.png b/TheOtherRoles/Resources/IntroAnimation/intro_1138.png
new file mode 100644 (file)
index 0000000..ebb40ba
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1138.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1139.png b/TheOtherRoles/Resources/IntroAnimation/intro_1139.png
new file mode 100644 (file)
index 0000000..40a0f80
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1139.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1140.png b/TheOtherRoles/Resources/IntroAnimation/intro_1140.png
new file mode 100644 (file)
index 0000000..ff361d4
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1140.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1141.png b/TheOtherRoles/Resources/IntroAnimation/intro_1141.png
new file mode 100644 (file)
index 0000000..c41529a
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1141.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1142.png b/TheOtherRoles/Resources/IntroAnimation/intro_1142.png
new file mode 100644 (file)
index 0000000..5f5b190
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1142.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1143.png b/TheOtherRoles/Resources/IntroAnimation/intro_1143.png
new file mode 100644 (file)
index 0000000..82ecad5
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1143.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1144.png b/TheOtherRoles/Resources/IntroAnimation/intro_1144.png
new file mode 100644 (file)
index 0000000..59e0802
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1144.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1145.png b/TheOtherRoles/Resources/IntroAnimation/intro_1145.png
new file mode 100644 (file)
index 0000000..4503f8d
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1145.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1146.png b/TheOtherRoles/Resources/IntroAnimation/intro_1146.png
new file mode 100644 (file)
index 0000000..302c0c3
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1146.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1147.png b/TheOtherRoles/Resources/IntroAnimation/intro_1147.png
new file mode 100644 (file)
index 0000000..6233376
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1147.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1148.png b/TheOtherRoles/Resources/IntroAnimation/intro_1148.png
new file mode 100644 (file)
index 0000000..833662a
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1148.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1149.png b/TheOtherRoles/Resources/IntroAnimation/intro_1149.png
new file mode 100644 (file)
index 0000000..833662a
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1149.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1150.png b/TheOtherRoles/Resources/IntroAnimation/intro_1150.png
new file mode 100644 (file)
index 0000000..833662a
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1150.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1151.png b/TheOtherRoles/Resources/IntroAnimation/intro_1151.png
new file mode 100644 (file)
index 0000000..6d88b4e
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1151.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1152.png b/TheOtherRoles/Resources/IntroAnimation/intro_1152.png
new file mode 100644 (file)
index 0000000..a00682f
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1152.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1153.png b/TheOtherRoles/Resources/IntroAnimation/intro_1153.png
new file mode 100644 (file)
index 0000000..3e0bb4e
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1153.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1154.png b/TheOtherRoles/Resources/IntroAnimation/intro_1154.png
new file mode 100644 (file)
index 0000000..905fe7a
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1154.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1155.png b/TheOtherRoles/Resources/IntroAnimation/intro_1155.png
new file mode 100644 (file)
index 0000000..4c99411
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1155.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1156.png b/TheOtherRoles/Resources/IntroAnimation/intro_1156.png
new file mode 100644 (file)
index 0000000..afacff2
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1156.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1157.png b/TheOtherRoles/Resources/IntroAnimation/intro_1157.png
new file mode 100644 (file)
index 0000000..2ebff5e
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1157.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1158.png b/TheOtherRoles/Resources/IntroAnimation/intro_1158.png
new file mode 100644 (file)
index 0000000..7688f5f
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1158.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1159.png b/TheOtherRoles/Resources/IntroAnimation/intro_1159.png
new file mode 100644 (file)
index 0000000..ef95ef0
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1159.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1160.png b/TheOtherRoles/Resources/IntroAnimation/intro_1160.png
new file mode 100644 (file)
index 0000000..b6edf6a
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1160.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1161.png b/TheOtherRoles/Resources/IntroAnimation/intro_1161.png
new file mode 100644 (file)
index 0000000..e2c27d4
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1161.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1162.png b/TheOtherRoles/Resources/IntroAnimation/intro_1162.png
new file mode 100644 (file)
index 0000000..5f6b4da
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1162.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1163.png b/TheOtherRoles/Resources/IntroAnimation/intro_1163.png
new file mode 100644 (file)
index 0000000..f6165af
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1163.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1164.png b/TheOtherRoles/Resources/IntroAnimation/intro_1164.png
new file mode 100644 (file)
index 0000000..8c4ff31
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1164.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1165.png b/TheOtherRoles/Resources/IntroAnimation/intro_1165.png
new file mode 100644 (file)
index 0000000..c8f7651
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1165.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1166.png b/TheOtherRoles/Resources/IntroAnimation/intro_1166.png
new file mode 100644 (file)
index 0000000..c96d1e2
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1166.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1167.png b/TheOtherRoles/Resources/IntroAnimation/intro_1167.png
new file mode 100644 (file)
index 0000000..8316ab5
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1167.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1168.png b/TheOtherRoles/Resources/IntroAnimation/intro_1168.png
new file mode 100644 (file)
index 0000000..0b222fd
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1168.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1169.png b/TheOtherRoles/Resources/IntroAnimation/intro_1169.png
new file mode 100644 (file)
index 0000000..64748fe
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1169.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1170.png b/TheOtherRoles/Resources/IntroAnimation/intro_1170.png
new file mode 100644 (file)
index 0000000..88e4a32
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1170.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1171.png b/TheOtherRoles/Resources/IntroAnimation/intro_1171.png
new file mode 100644 (file)
index 0000000..4940a65
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1171.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1172.png b/TheOtherRoles/Resources/IntroAnimation/intro_1172.png
new file mode 100644 (file)
index 0000000..9447964
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1172.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1173.png b/TheOtherRoles/Resources/IntroAnimation/intro_1173.png
new file mode 100644 (file)
index 0000000..3a2a1c8
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1173.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1174.png b/TheOtherRoles/Resources/IntroAnimation/intro_1174.png
new file mode 100644 (file)
index 0000000..3a2a1c8
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1174.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1175.png b/TheOtherRoles/Resources/IntroAnimation/intro_1175.png
new file mode 100644 (file)
index 0000000..3a2a1c8
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1175.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1176.png b/TheOtherRoles/Resources/IntroAnimation/intro_1176.png
new file mode 100644 (file)
index 0000000..5d274c0
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1176.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1177.png b/TheOtherRoles/Resources/IntroAnimation/intro_1177.png
new file mode 100644 (file)
index 0000000..60d7015
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1177.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1178.png b/TheOtherRoles/Resources/IntroAnimation/intro_1178.png
new file mode 100644 (file)
index 0000000..23cde04
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1178.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1179.png b/TheOtherRoles/Resources/IntroAnimation/intro_1179.png
new file mode 100644 (file)
index 0000000..125a58f
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1179.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1180.png b/TheOtherRoles/Resources/IntroAnimation/intro_1180.png
new file mode 100644 (file)
index 0000000..452b5e4
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1180.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1181.png b/TheOtherRoles/Resources/IntroAnimation/intro_1181.png
new file mode 100644 (file)
index 0000000..3438dfd
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1181.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1182.png b/TheOtherRoles/Resources/IntroAnimation/intro_1182.png
new file mode 100644 (file)
index 0000000..0b2b4d7
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1182.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1183.png b/TheOtherRoles/Resources/IntroAnimation/intro_1183.png
new file mode 100644 (file)
index 0000000..ebcd78c
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1183.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1184.png b/TheOtherRoles/Resources/IntroAnimation/intro_1184.png
new file mode 100644 (file)
index 0000000..6a2a47d
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1184.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1185.png b/TheOtherRoles/Resources/IntroAnimation/intro_1185.png
new file mode 100644 (file)
index 0000000..9d91c33
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1185.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1186.png b/TheOtherRoles/Resources/IntroAnimation/intro_1186.png
new file mode 100644 (file)
index 0000000..ac4ec99
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1186.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1187.png b/TheOtherRoles/Resources/IntroAnimation/intro_1187.png
new file mode 100644 (file)
index 0000000..de4becd
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1187.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1188.png b/TheOtherRoles/Resources/IntroAnimation/intro_1188.png
new file mode 100644 (file)
index 0000000..e6a5646
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1188.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1189.png b/TheOtherRoles/Resources/IntroAnimation/intro_1189.png
new file mode 100644 (file)
index 0000000..4b42219
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1189.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1190.png b/TheOtherRoles/Resources/IntroAnimation/intro_1190.png
new file mode 100644 (file)
index 0000000..c8155b6
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1190.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1191.png b/TheOtherRoles/Resources/IntroAnimation/intro_1191.png
new file mode 100644 (file)
index 0000000..67716dc
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1191.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1192.png b/TheOtherRoles/Resources/IntroAnimation/intro_1192.png
new file mode 100644 (file)
index 0000000..e61c012
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1192.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1193.png b/TheOtherRoles/Resources/IntroAnimation/intro_1193.png
new file mode 100644 (file)
index 0000000..eaf42fe
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1193.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1194.png b/TheOtherRoles/Resources/IntroAnimation/intro_1194.png
new file mode 100644 (file)
index 0000000..35cc4c9
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1194.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1195.png b/TheOtherRoles/Resources/IntroAnimation/intro_1195.png
new file mode 100644 (file)
index 0000000..1331e0f
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1195.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1196.png b/TheOtherRoles/Resources/IntroAnimation/intro_1196.png
new file mode 100644 (file)
index 0000000..fa085e1
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1196.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1197.png b/TheOtherRoles/Resources/IntroAnimation/intro_1197.png
new file mode 100644 (file)
index 0000000..ab70234
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1197.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1198.png b/TheOtherRoles/Resources/IntroAnimation/intro_1198.png
new file mode 100644 (file)
index 0000000..598e9f0
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1198.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1199.png b/TheOtherRoles/Resources/IntroAnimation/intro_1199.png
new file mode 100644 (file)
index 0000000..598e9f0
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1199.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1200.png b/TheOtherRoles/Resources/IntroAnimation/intro_1200.png
new file mode 100644 (file)
index 0000000..598e9f0
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1200.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1201.png b/TheOtherRoles/Resources/IntroAnimation/intro_1201.png
new file mode 100644 (file)
index 0000000..daf309a
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1201.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1202.png b/TheOtherRoles/Resources/IntroAnimation/intro_1202.png
new file mode 100644 (file)
index 0000000..c91a54a
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1202.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1203.png b/TheOtherRoles/Resources/IntroAnimation/intro_1203.png
new file mode 100644 (file)
index 0000000..b969806
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1203.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1204.png b/TheOtherRoles/Resources/IntroAnimation/intro_1204.png
new file mode 100644 (file)
index 0000000..b0d0a2f
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1204.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1205.png b/TheOtherRoles/Resources/IntroAnimation/intro_1205.png
new file mode 100644 (file)
index 0000000..a247af5
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1205.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1206.png b/TheOtherRoles/Resources/IntroAnimation/intro_1206.png
new file mode 100644 (file)
index 0000000..292fffc
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1206.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1207.png b/TheOtherRoles/Resources/IntroAnimation/intro_1207.png
new file mode 100644 (file)
index 0000000..54f203b
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1207.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1208.png b/TheOtherRoles/Resources/IntroAnimation/intro_1208.png
new file mode 100644 (file)
index 0000000..3270848
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1208.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1209.png b/TheOtherRoles/Resources/IntroAnimation/intro_1209.png
new file mode 100644 (file)
index 0000000..4dd2888
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1209.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1210.png b/TheOtherRoles/Resources/IntroAnimation/intro_1210.png
new file mode 100644 (file)
index 0000000..9e8bb10
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1210.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1211.png b/TheOtherRoles/Resources/IntroAnimation/intro_1211.png
new file mode 100644 (file)
index 0000000..581e131
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1211.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1212.png b/TheOtherRoles/Resources/IntroAnimation/intro_1212.png
new file mode 100644 (file)
index 0000000..6ff3263
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1212.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1213.png b/TheOtherRoles/Resources/IntroAnimation/intro_1213.png
new file mode 100644 (file)
index 0000000..2687a69
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1213.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1214.png b/TheOtherRoles/Resources/IntroAnimation/intro_1214.png
new file mode 100644 (file)
index 0000000..af723bc
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1214.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1215.png b/TheOtherRoles/Resources/IntroAnimation/intro_1215.png
new file mode 100644 (file)
index 0000000..b03b7b8
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1215.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1216.png b/TheOtherRoles/Resources/IntroAnimation/intro_1216.png
new file mode 100644 (file)
index 0000000..f2e46bb
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1216.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1217.png b/TheOtherRoles/Resources/IntroAnimation/intro_1217.png
new file mode 100644 (file)
index 0000000..34ac4d0
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1217.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1218.png b/TheOtherRoles/Resources/IntroAnimation/intro_1218.png
new file mode 100644 (file)
index 0000000..0170a5f
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1218.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1219.png b/TheOtherRoles/Resources/IntroAnimation/intro_1219.png
new file mode 100644 (file)
index 0000000..3bbfc6d
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1219.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1220.png b/TheOtherRoles/Resources/IntroAnimation/intro_1220.png
new file mode 100644 (file)
index 0000000..a6f4b1e
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1220.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1221.png b/TheOtherRoles/Resources/IntroAnimation/intro_1221.png
new file mode 100644 (file)
index 0000000..b49a9e0
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1221.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1222.png b/TheOtherRoles/Resources/IntroAnimation/intro_1222.png
new file mode 100644 (file)
index 0000000..56c5563
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1222.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1223.png b/TheOtherRoles/Resources/IntroAnimation/intro_1223.png
new file mode 100644 (file)
index 0000000..8d39290
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1223.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1224.png b/TheOtherRoles/Resources/IntroAnimation/intro_1224.png
new file mode 100644 (file)
index 0000000..8d39290
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1224.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1225.png b/TheOtherRoles/Resources/IntroAnimation/intro_1225.png
new file mode 100644 (file)
index 0000000..8d39290
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1225.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1226.png b/TheOtherRoles/Resources/IntroAnimation/intro_1226.png
new file mode 100644 (file)
index 0000000..10aac40
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1226.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1227.png b/TheOtherRoles/Resources/IntroAnimation/intro_1227.png
new file mode 100644 (file)
index 0000000..9651c16
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1227.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1228.png b/TheOtherRoles/Resources/IntroAnimation/intro_1228.png
new file mode 100644 (file)
index 0000000..11c2415
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1228.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1229.png b/TheOtherRoles/Resources/IntroAnimation/intro_1229.png
new file mode 100644 (file)
index 0000000..966ee2f
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1229.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1230.png b/TheOtherRoles/Resources/IntroAnimation/intro_1230.png
new file mode 100644 (file)
index 0000000..aa54c53
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1230.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1231.png b/TheOtherRoles/Resources/IntroAnimation/intro_1231.png
new file mode 100644 (file)
index 0000000..ab5718c
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1231.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1232.png b/TheOtherRoles/Resources/IntroAnimation/intro_1232.png
new file mode 100644 (file)
index 0000000..486ad30
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1232.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1233.png b/TheOtherRoles/Resources/IntroAnimation/intro_1233.png
new file mode 100644 (file)
index 0000000..11dc866
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1233.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1234.png b/TheOtherRoles/Resources/IntroAnimation/intro_1234.png
new file mode 100644 (file)
index 0000000..97ee1e5
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1234.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1235.png b/TheOtherRoles/Resources/IntroAnimation/intro_1235.png
new file mode 100644 (file)
index 0000000..2f76a49
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1235.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1236.png b/TheOtherRoles/Resources/IntroAnimation/intro_1236.png
new file mode 100644 (file)
index 0000000..ae33fb3
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1236.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1237.png b/TheOtherRoles/Resources/IntroAnimation/intro_1237.png
new file mode 100644 (file)
index 0000000..1616db5
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1237.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1238.png b/TheOtherRoles/Resources/IntroAnimation/intro_1238.png
new file mode 100644 (file)
index 0000000..2185475
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1238.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1239.png b/TheOtherRoles/Resources/IntroAnimation/intro_1239.png
new file mode 100644 (file)
index 0000000..c46f5dd
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1239.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1240.png b/TheOtherRoles/Resources/IntroAnimation/intro_1240.png
new file mode 100644 (file)
index 0000000..54dfd84
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1240.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1241.png b/TheOtherRoles/Resources/IntroAnimation/intro_1241.png
new file mode 100644 (file)
index 0000000..1660b53
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1241.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1242.png b/TheOtherRoles/Resources/IntroAnimation/intro_1242.png
new file mode 100644 (file)
index 0000000..7c8841a
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1242.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1243.png b/TheOtherRoles/Resources/IntroAnimation/intro_1243.png
new file mode 100644 (file)
index 0000000..6e4fdd8
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1243.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1244.png b/TheOtherRoles/Resources/IntroAnimation/intro_1244.png
new file mode 100644 (file)
index 0000000..e72ab8f
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1244.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1245.png b/TheOtherRoles/Resources/IntroAnimation/intro_1245.png
new file mode 100644 (file)
index 0000000..04a289d
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1245.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1246.png b/TheOtherRoles/Resources/IntroAnimation/intro_1246.png
new file mode 100644 (file)
index 0000000..e2d0137
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1246.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1247.png b/TheOtherRoles/Resources/IntroAnimation/intro_1247.png
new file mode 100644 (file)
index 0000000..db1b56d
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1247.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1248.png b/TheOtherRoles/Resources/IntroAnimation/intro_1248.png
new file mode 100644 (file)
index 0000000..26f1dc8
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1248.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1249.png b/TheOtherRoles/Resources/IntroAnimation/intro_1249.png
new file mode 100644 (file)
index 0000000..26f1dc8
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1249.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1250.png b/TheOtherRoles/Resources/IntroAnimation/intro_1250.png
new file mode 100644 (file)
index 0000000..26f1dc8
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1250.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1251.png b/TheOtherRoles/Resources/IntroAnimation/intro_1251.png
new file mode 100644 (file)
index 0000000..6bf6b55
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1251.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1252.png b/TheOtherRoles/Resources/IntroAnimation/intro_1252.png
new file mode 100644 (file)
index 0000000..037c0aa
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1252.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1253.png b/TheOtherRoles/Resources/IntroAnimation/intro_1253.png
new file mode 100644 (file)
index 0000000..df0b11b
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1253.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1254.png b/TheOtherRoles/Resources/IntroAnimation/intro_1254.png
new file mode 100644 (file)
index 0000000..2877dba
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1254.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1255.png b/TheOtherRoles/Resources/IntroAnimation/intro_1255.png
new file mode 100644 (file)
index 0000000..986a2bd
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1255.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1256.png b/TheOtherRoles/Resources/IntroAnimation/intro_1256.png
new file mode 100644 (file)
index 0000000..b1276a8
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1256.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1257.png b/TheOtherRoles/Resources/IntroAnimation/intro_1257.png
new file mode 100644 (file)
index 0000000..1f74e7a
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1257.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1258.png b/TheOtherRoles/Resources/IntroAnimation/intro_1258.png
new file mode 100644 (file)
index 0000000..0eb9a30
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1258.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1259.png b/TheOtherRoles/Resources/IntroAnimation/intro_1259.png
new file mode 100644 (file)
index 0000000..e874b90
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1259.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1260.png b/TheOtherRoles/Resources/IntroAnimation/intro_1260.png
new file mode 100644 (file)
index 0000000..ea87be7
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1260.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1261.png b/TheOtherRoles/Resources/IntroAnimation/intro_1261.png
new file mode 100644 (file)
index 0000000..c4157cb
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1261.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1262.png b/TheOtherRoles/Resources/IntroAnimation/intro_1262.png
new file mode 100644 (file)
index 0000000..5dccbf3
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1262.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1263.png b/TheOtherRoles/Resources/IntroAnimation/intro_1263.png
new file mode 100644 (file)
index 0000000..854ac4f
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1263.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1264.png b/TheOtherRoles/Resources/IntroAnimation/intro_1264.png
new file mode 100644 (file)
index 0000000..4e91024
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1264.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1265.png b/TheOtherRoles/Resources/IntroAnimation/intro_1265.png
new file mode 100644 (file)
index 0000000..570451f
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1265.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1266.png b/TheOtherRoles/Resources/IntroAnimation/intro_1266.png
new file mode 100644 (file)
index 0000000..97bc8f2
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1266.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1267.png b/TheOtherRoles/Resources/IntroAnimation/intro_1267.png
new file mode 100644 (file)
index 0000000..0fa2a66
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1267.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1268.png b/TheOtherRoles/Resources/IntroAnimation/intro_1268.png
new file mode 100644 (file)
index 0000000..995e9b1
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1268.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1269.png b/TheOtherRoles/Resources/IntroAnimation/intro_1269.png
new file mode 100644 (file)
index 0000000..1000cd7
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1269.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1270.png b/TheOtherRoles/Resources/IntroAnimation/intro_1270.png
new file mode 100644 (file)
index 0000000..eb129ca
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1270.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1271.png b/TheOtherRoles/Resources/IntroAnimation/intro_1271.png
new file mode 100644 (file)
index 0000000..6f16661
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1271.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1272.png b/TheOtherRoles/Resources/IntroAnimation/intro_1272.png
new file mode 100644 (file)
index 0000000..174efc9
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1272.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1273.png b/TheOtherRoles/Resources/IntroAnimation/intro_1273.png
new file mode 100644 (file)
index 0000000..e5916e9
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1273.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1274.png b/TheOtherRoles/Resources/IntroAnimation/intro_1274.png
new file mode 100644 (file)
index 0000000..e5916e9
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1274.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1275.png b/TheOtherRoles/Resources/IntroAnimation/intro_1275.png
new file mode 100644 (file)
index 0000000..e5916e9
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1275.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1276.png b/TheOtherRoles/Resources/IntroAnimation/intro_1276.png
new file mode 100644 (file)
index 0000000..e30e20f
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1276.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1277.png b/TheOtherRoles/Resources/IntroAnimation/intro_1277.png
new file mode 100644 (file)
index 0000000..7376b02
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1277.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1278.png b/TheOtherRoles/Resources/IntroAnimation/intro_1278.png
new file mode 100644 (file)
index 0000000..54ab839
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1278.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1279.png b/TheOtherRoles/Resources/IntroAnimation/intro_1279.png
new file mode 100644 (file)
index 0000000..cbe274b
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1279.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1280.png b/TheOtherRoles/Resources/IntroAnimation/intro_1280.png
new file mode 100644 (file)
index 0000000..787fbe6
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1280.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1281.png b/TheOtherRoles/Resources/IntroAnimation/intro_1281.png
new file mode 100644 (file)
index 0000000..dcc41d1
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1281.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1282.png b/TheOtherRoles/Resources/IntroAnimation/intro_1282.png
new file mode 100644 (file)
index 0000000..d1ca785
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1282.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1283.png b/TheOtherRoles/Resources/IntroAnimation/intro_1283.png
new file mode 100644 (file)
index 0000000..cd3c9d0
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1283.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1284.png b/TheOtherRoles/Resources/IntroAnimation/intro_1284.png
new file mode 100644 (file)
index 0000000..7778c5a
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1284.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1285.png b/TheOtherRoles/Resources/IntroAnimation/intro_1285.png
new file mode 100644 (file)
index 0000000..2e881e0
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1285.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1286.png b/TheOtherRoles/Resources/IntroAnimation/intro_1286.png
new file mode 100644 (file)
index 0000000..38c0277
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1286.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1287.png b/TheOtherRoles/Resources/IntroAnimation/intro_1287.png
new file mode 100644 (file)
index 0000000..6057ed6
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1287.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1288.png b/TheOtherRoles/Resources/IntroAnimation/intro_1288.png
new file mode 100644 (file)
index 0000000..8159c87
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1288.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1289.png b/TheOtherRoles/Resources/IntroAnimation/intro_1289.png
new file mode 100644 (file)
index 0000000..32bf5e7
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1289.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1290.png b/TheOtherRoles/Resources/IntroAnimation/intro_1290.png
new file mode 100644 (file)
index 0000000..beec0fa
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1290.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1291.png b/TheOtherRoles/Resources/IntroAnimation/intro_1291.png
new file mode 100644 (file)
index 0000000..1dd797b
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1291.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1292.png b/TheOtherRoles/Resources/IntroAnimation/intro_1292.png
new file mode 100644 (file)
index 0000000..6a41ac1
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1292.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1293.png b/TheOtherRoles/Resources/IntroAnimation/intro_1293.png
new file mode 100644 (file)
index 0000000..ca71ad4
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1293.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1294.png b/TheOtherRoles/Resources/IntroAnimation/intro_1294.png
new file mode 100644 (file)
index 0000000..6d381cc
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1294.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1295.png b/TheOtherRoles/Resources/IntroAnimation/intro_1295.png
new file mode 100644 (file)
index 0000000..c8aa850
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1295.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1296.png b/TheOtherRoles/Resources/IntroAnimation/intro_1296.png
new file mode 100644 (file)
index 0000000..9e071f1
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1296.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1297.png b/TheOtherRoles/Resources/IntroAnimation/intro_1297.png
new file mode 100644 (file)
index 0000000..2a1acad
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1297.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1298.png b/TheOtherRoles/Resources/IntroAnimation/intro_1298.png
new file mode 100644 (file)
index 0000000..ab425ba
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1298.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1299.png b/TheOtherRoles/Resources/IntroAnimation/intro_1299.png
new file mode 100644 (file)
index 0000000..ab425ba
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1299.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1300.png b/TheOtherRoles/Resources/IntroAnimation/intro_1300.png
new file mode 100644 (file)
index 0000000..ab425ba
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1300.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1301.png b/TheOtherRoles/Resources/IntroAnimation/intro_1301.png
new file mode 100644 (file)
index 0000000..b1cf153
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1301.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1302.png b/TheOtherRoles/Resources/IntroAnimation/intro_1302.png
new file mode 100644 (file)
index 0000000..7e025c5
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1302.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1303.png b/TheOtherRoles/Resources/IntroAnimation/intro_1303.png
new file mode 100644 (file)
index 0000000..531f376
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1303.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1304.png b/TheOtherRoles/Resources/IntroAnimation/intro_1304.png
new file mode 100644 (file)
index 0000000..14dfae3
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1304.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1305.png b/TheOtherRoles/Resources/IntroAnimation/intro_1305.png
new file mode 100644 (file)
index 0000000..0177736
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1305.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1306.png b/TheOtherRoles/Resources/IntroAnimation/intro_1306.png
new file mode 100644 (file)
index 0000000..6a1942c
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1306.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1307.png b/TheOtherRoles/Resources/IntroAnimation/intro_1307.png
new file mode 100644 (file)
index 0000000..22e6916
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1307.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1308.png b/TheOtherRoles/Resources/IntroAnimation/intro_1308.png
new file mode 100644 (file)
index 0000000..68b38f9
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1308.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1309.png b/TheOtherRoles/Resources/IntroAnimation/intro_1309.png
new file mode 100644 (file)
index 0000000..1d8627a
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1309.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1310.png b/TheOtherRoles/Resources/IntroAnimation/intro_1310.png
new file mode 100644 (file)
index 0000000..fca7987
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1310.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1311.png b/TheOtherRoles/Resources/IntroAnimation/intro_1311.png
new file mode 100644 (file)
index 0000000..9afa15a
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1311.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1312.png b/TheOtherRoles/Resources/IntroAnimation/intro_1312.png
new file mode 100644 (file)
index 0000000..1d526b3
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1312.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1313.png b/TheOtherRoles/Resources/IntroAnimation/intro_1313.png
new file mode 100644 (file)
index 0000000..5ebe211
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1313.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1314.png b/TheOtherRoles/Resources/IntroAnimation/intro_1314.png
new file mode 100644 (file)
index 0000000..be831f5
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1314.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1315.png b/TheOtherRoles/Resources/IntroAnimation/intro_1315.png
new file mode 100644 (file)
index 0000000..42e8488
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1315.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1316.png b/TheOtherRoles/Resources/IntroAnimation/intro_1316.png
new file mode 100644 (file)
index 0000000..e6f7b50
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1316.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1317.png b/TheOtherRoles/Resources/IntroAnimation/intro_1317.png
new file mode 100644 (file)
index 0000000..1b1a9e4
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1317.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1318.png b/TheOtherRoles/Resources/IntroAnimation/intro_1318.png
new file mode 100644 (file)
index 0000000..5ea326f
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1318.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1319.png b/TheOtherRoles/Resources/IntroAnimation/intro_1319.png
new file mode 100644 (file)
index 0000000..11a96d5
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1319.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1320.png b/TheOtherRoles/Resources/IntroAnimation/intro_1320.png
new file mode 100644 (file)
index 0000000..cc66fc6
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1320.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1321.png b/TheOtherRoles/Resources/IntroAnimation/intro_1321.png
new file mode 100644 (file)
index 0000000..240e392
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1321.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1322.png b/TheOtherRoles/Resources/IntroAnimation/intro_1322.png
new file mode 100644 (file)
index 0000000..b9396a1
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1322.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1323.png b/TheOtherRoles/Resources/IntroAnimation/intro_1323.png
new file mode 100644 (file)
index 0000000..830dd6f
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1323.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1324.png b/TheOtherRoles/Resources/IntroAnimation/intro_1324.png
new file mode 100644 (file)
index 0000000..830dd6f
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1324.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1325.png b/TheOtherRoles/Resources/IntroAnimation/intro_1325.png
new file mode 100644 (file)
index 0000000..830dd6f
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1325.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1326.png b/TheOtherRoles/Resources/IntroAnimation/intro_1326.png
new file mode 100644 (file)
index 0000000..5ffcaa2
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1326.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1327.png b/TheOtherRoles/Resources/IntroAnimation/intro_1327.png
new file mode 100644 (file)
index 0000000..72e3892
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1327.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1328.png b/TheOtherRoles/Resources/IntroAnimation/intro_1328.png
new file mode 100644 (file)
index 0000000..385f186
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1328.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1329.png b/TheOtherRoles/Resources/IntroAnimation/intro_1329.png
new file mode 100644 (file)
index 0000000..8381612
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1329.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1330.png b/TheOtherRoles/Resources/IntroAnimation/intro_1330.png
new file mode 100644 (file)
index 0000000..c0b4cd8
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1330.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1331.png b/TheOtherRoles/Resources/IntroAnimation/intro_1331.png
new file mode 100644 (file)
index 0000000..a25ff7b
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1331.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1332.png b/TheOtherRoles/Resources/IntroAnimation/intro_1332.png
new file mode 100644 (file)
index 0000000..ef21e53
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1332.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1333.png b/TheOtherRoles/Resources/IntroAnimation/intro_1333.png
new file mode 100644 (file)
index 0000000..17c8b69
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1333.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1334.png b/TheOtherRoles/Resources/IntroAnimation/intro_1334.png
new file mode 100644 (file)
index 0000000..3f30911
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1334.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1335.png b/TheOtherRoles/Resources/IntroAnimation/intro_1335.png
new file mode 100644 (file)
index 0000000..839aa95
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1335.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1336.png b/TheOtherRoles/Resources/IntroAnimation/intro_1336.png
new file mode 100644 (file)
index 0000000..8b7262b
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1336.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1337.png b/TheOtherRoles/Resources/IntroAnimation/intro_1337.png
new file mode 100644 (file)
index 0000000..ef1f13e
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1337.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1338.png b/TheOtherRoles/Resources/IntroAnimation/intro_1338.png
new file mode 100644 (file)
index 0000000..8c677c7
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1338.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1339.png b/TheOtherRoles/Resources/IntroAnimation/intro_1339.png
new file mode 100644 (file)
index 0000000..00a49b2
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1339.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1340.png b/TheOtherRoles/Resources/IntroAnimation/intro_1340.png
new file mode 100644 (file)
index 0000000..257554e
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1340.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1341.png b/TheOtherRoles/Resources/IntroAnimation/intro_1341.png
new file mode 100644 (file)
index 0000000..2360098
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1341.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1342.png b/TheOtherRoles/Resources/IntroAnimation/intro_1342.png
new file mode 100644 (file)
index 0000000..9824ebe
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1342.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1343.png b/TheOtherRoles/Resources/IntroAnimation/intro_1343.png
new file mode 100644 (file)
index 0000000..c3b3d5e
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1343.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1344.png b/TheOtherRoles/Resources/IntroAnimation/intro_1344.png
new file mode 100644 (file)
index 0000000..a6406e1
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1344.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1345.png b/TheOtherRoles/Resources/IntroAnimation/intro_1345.png
new file mode 100644 (file)
index 0000000..b3038a9
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1345.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1346.png b/TheOtherRoles/Resources/IntroAnimation/intro_1346.png
new file mode 100644 (file)
index 0000000..c74b7ca
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1346.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1347.png b/TheOtherRoles/Resources/IntroAnimation/intro_1347.png
new file mode 100644 (file)
index 0000000..618efb1
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1347.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1348.png b/TheOtherRoles/Resources/IntroAnimation/intro_1348.png
new file mode 100644 (file)
index 0000000..657e43d
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1348.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1349.png b/TheOtherRoles/Resources/IntroAnimation/intro_1349.png
new file mode 100644 (file)
index 0000000..657e43d
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1349.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1350.png b/TheOtherRoles/Resources/IntroAnimation/intro_1350.png
new file mode 100644 (file)
index 0000000..657e43d
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1350.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1351.png b/TheOtherRoles/Resources/IntroAnimation/intro_1351.png
new file mode 100644 (file)
index 0000000..abe5525
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1351.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1352.png b/TheOtherRoles/Resources/IntroAnimation/intro_1352.png
new file mode 100644 (file)
index 0000000..2422222
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1352.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1353.png b/TheOtherRoles/Resources/IntroAnimation/intro_1353.png
new file mode 100644 (file)
index 0000000..f30e900
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1353.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1354.png b/TheOtherRoles/Resources/IntroAnimation/intro_1354.png
new file mode 100644 (file)
index 0000000..c91854c
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1354.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1355.png b/TheOtherRoles/Resources/IntroAnimation/intro_1355.png
new file mode 100644 (file)
index 0000000..3b424fc
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1355.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1356.png b/TheOtherRoles/Resources/IntroAnimation/intro_1356.png
new file mode 100644 (file)
index 0000000..6cacff6
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1356.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1357.png b/TheOtherRoles/Resources/IntroAnimation/intro_1357.png
new file mode 100644 (file)
index 0000000..1c34091
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1357.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1358.png b/TheOtherRoles/Resources/IntroAnimation/intro_1358.png
new file mode 100644 (file)
index 0000000..3796f73
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1358.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1359.png b/TheOtherRoles/Resources/IntroAnimation/intro_1359.png
new file mode 100644 (file)
index 0000000..c0f318e
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1359.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1360.png b/TheOtherRoles/Resources/IntroAnimation/intro_1360.png
new file mode 100644 (file)
index 0000000..ec2edea
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1360.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1361.png b/TheOtherRoles/Resources/IntroAnimation/intro_1361.png
new file mode 100644 (file)
index 0000000..0bc905c
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1361.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1362.png b/TheOtherRoles/Resources/IntroAnimation/intro_1362.png
new file mode 100644 (file)
index 0000000..09cfde0
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1362.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1363.png b/TheOtherRoles/Resources/IntroAnimation/intro_1363.png
new file mode 100644 (file)
index 0000000..de05206
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1363.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1364.png b/TheOtherRoles/Resources/IntroAnimation/intro_1364.png
new file mode 100644 (file)
index 0000000..94ed729
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1364.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1365.png b/TheOtherRoles/Resources/IntroAnimation/intro_1365.png
new file mode 100644 (file)
index 0000000..b2a3626
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1365.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1366.png b/TheOtherRoles/Resources/IntroAnimation/intro_1366.png
new file mode 100644 (file)
index 0000000..b59f5c5
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1366.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1367.png b/TheOtherRoles/Resources/IntroAnimation/intro_1367.png
new file mode 100644 (file)
index 0000000..3f1398d
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1367.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1368.png b/TheOtherRoles/Resources/IntroAnimation/intro_1368.png
new file mode 100644 (file)
index 0000000..2507574
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1368.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1369.png b/TheOtherRoles/Resources/IntroAnimation/intro_1369.png
new file mode 100644 (file)
index 0000000..d2c96dd
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1369.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1370.png b/TheOtherRoles/Resources/IntroAnimation/intro_1370.png
new file mode 100644 (file)
index 0000000..9d24f04
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1370.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1371.png b/TheOtherRoles/Resources/IntroAnimation/intro_1371.png
new file mode 100644 (file)
index 0000000..d070362
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1371.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1372.png b/TheOtherRoles/Resources/IntroAnimation/intro_1372.png
new file mode 100644 (file)
index 0000000..57748e7
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1372.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1373.png b/TheOtherRoles/Resources/IntroAnimation/intro_1373.png
new file mode 100644 (file)
index 0000000..997d449
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1373.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1374.png b/TheOtherRoles/Resources/IntroAnimation/intro_1374.png
new file mode 100644 (file)
index 0000000..997d449
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1374.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1375.png b/TheOtherRoles/Resources/IntroAnimation/intro_1375.png
new file mode 100644 (file)
index 0000000..997d449
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1375.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1376.png b/TheOtherRoles/Resources/IntroAnimation/intro_1376.png
new file mode 100644 (file)
index 0000000..32add5e
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1376.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1377.png b/TheOtherRoles/Resources/IntroAnimation/intro_1377.png
new file mode 100644 (file)
index 0000000..ee1c7a8
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1377.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1378.png b/TheOtherRoles/Resources/IntroAnimation/intro_1378.png
new file mode 100644 (file)
index 0000000..cc988f4
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1378.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1379.png b/TheOtherRoles/Resources/IntroAnimation/intro_1379.png
new file mode 100644 (file)
index 0000000..58e3edd
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1379.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1380.png b/TheOtherRoles/Resources/IntroAnimation/intro_1380.png
new file mode 100644 (file)
index 0000000..3dc1324
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1380.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1381.png b/TheOtherRoles/Resources/IntroAnimation/intro_1381.png
new file mode 100644 (file)
index 0000000..23696ad
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1381.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1382.png b/TheOtherRoles/Resources/IntroAnimation/intro_1382.png
new file mode 100644 (file)
index 0000000..2ad4ec2
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1382.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1383.png b/TheOtherRoles/Resources/IntroAnimation/intro_1383.png
new file mode 100644 (file)
index 0000000..8ebb893
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1383.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1384.png b/TheOtherRoles/Resources/IntroAnimation/intro_1384.png
new file mode 100644 (file)
index 0000000..930a1ef
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1384.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1385.png b/TheOtherRoles/Resources/IntroAnimation/intro_1385.png
new file mode 100644 (file)
index 0000000..d3843c6
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1385.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1386.png b/TheOtherRoles/Resources/IntroAnimation/intro_1386.png
new file mode 100644 (file)
index 0000000..f401678
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1386.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1387.png b/TheOtherRoles/Resources/IntroAnimation/intro_1387.png
new file mode 100644 (file)
index 0000000..97cb744
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1387.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1388.png b/TheOtherRoles/Resources/IntroAnimation/intro_1388.png
new file mode 100644 (file)
index 0000000..9a25aa6
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1388.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1389.png b/TheOtherRoles/Resources/IntroAnimation/intro_1389.png
new file mode 100644 (file)
index 0000000..79c19e9
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1389.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1390.png b/TheOtherRoles/Resources/IntroAnimation/intro_1390.png
new file mode 100644 (file)
index 0000000..c7c5343
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1390.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1391.png b/TheOtherRoles/Resources/IntroAnimation/intro_1391.png
new file mode 100644 (file)
index 0000000..a65f391
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1391.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1392.png b/TheOtherRoles/Resources/IntroAnimation/intro_1392.png
new file mode 100644 (file)
index 0000000..f6e9f3a
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1392.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1393.png b/TheOtherRoles/Resources/IntroAnimation/intro_1393.png
new file mode 100644 (file)
index 0000000..e088a92
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1393.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1394.png b/TheOtherRoles/Resources/IntroAnimation/intro_1394.png
new file mode 100644 (file)
index 0000000..c4d4159
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1394.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1395.png b/TheOtherRoles/Resources/IntroAnimation/intro_1395.png
new file mode 100644 (file)
index 0000000..8c73adb
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1395.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1396.png b/TheOtherRoles/Resources/IntroAnimation/intro_1396.png
new file mode 100644 (file)
index 0000000..290e072
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1396.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1397.png b/TheOtherRoles/Resources/IntroAnimation/intro_1397.png
new file mode 100644 (file)
index 0000000..3a0734e
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1397.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1398.png b/TheOtherRoles/Resources/IntroAnimation/intro_1398.png
new file mode 100644 (file)
index 0000000..abe8ffa
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1398.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1399.png b/TheOtherRoles/Resources/IntroAnimation/intro_1399.png
new file mode 100644 (file)
index 0000000..abe8ffa
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1399.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1400.png b/TheOtherRoles/Resources/IntroAnimation/intro_1400.png
new file mode 100644 (file)
index 0000000..abe8ffa
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1400.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1401.png b/TheOtherRoles/Resources/IntroAnimation/intro_1401.png
new file mode 100644 (file)
index 0000000..207bb18
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1401.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1402.png b/TheOtherRoles/Resources/IntroAnimation/intro_1402.png
new file mode 100644 (file)
index 0000000..d2b873f
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1402.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1403.png b/TheOtherRoles/Resources/IntroAnimation/intro_1403.png
new file mode 100644 (file)
index 0000000..f8d79e7
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1403.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1404.png b/TheOtherRoles/Resources/IntroAnimation/intro_1404.png
new file mode 100644 (file)
index 0000000..ab54bde
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1404.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1405.png b/TheOtherRoles/Resources/IntroAnimation/intro_1405.png
new file mode 100644 (file)
index 0000000..d892fb4
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1405.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1406.png b/TheOtherRoles/Resources/IntroAnimation/intro_1406.png
new file mode 100644 (file)
index 0000000..d34b3cc
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1406.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1407.png b/TheOtherRoles/Resources/IntroAnimation/intro_1407.png
new file mode 100644 (file)
index 0000000..26c615f
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1407.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1408.png b/TheOtherRoles/Resources/IntroAnimation/intro_1408.png
new file mode 100644 (file)
index 0000000..1bacf3d
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1408.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1409.png b/TheOtherRoles/Resources/IntroAnimation/intro_1409.png
new file mode 100644 (file)
index 0000000..feabe50
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1409.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1410.png b/TheOtherRoles/Resources/IntroAnimation/intro_1410.png
new file mode 100644 (file)
index 0000000..6386e2f
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1410.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1411.png b/TheOtherRoles/Resources/IntroAnimation/intro_1411.png
new file mode 100644 (file)
index 0000000..e25a50f
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1411.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1412.png b/TheOtherRoles/Resources/IntroAnimation/intro_1412.png
new file mode 100644 (file)
index 0000000..810c5d2
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1412.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1413.png b/TheOtherRoles/Resources/IntroAnimation/intro_1413.png
new file mode 100644 (file)
index 0000000..dad8e33
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1413.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1414.png b/TheOtherRoles/Resources/IntroAnimation/intro_1414.png
new file mode 100644 (file)
index 0000000..bc542ae
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1414.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1415.png b/TheOtherRoles/Resources/IntroAnimation/intro_1415.png
new file mode 100644 (file)
index 0000000..7199708
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1415.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1416.png b/TheOtherRoles/Resources/IntroAnimation/intro_1416.png
new file mode 100644 (file)
index 0000000..310e835
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1416.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1417.png b/TheOtherRoles/Resources/IntroAnimation/intro_1417.png
new file mode 100644 (file)
index 0000000..7da23a0
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1417.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1418.png b/TheOtherRoles/Resources/IntroAnimation/intro_1418.png
new file mode 100644 (file)
index 0000000..7766c52
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1418.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1419.png b/TheOtherRoles/Resources/IntroAnimation/intro_1419.png
new file mode 100644 (file)
index 0000000..3c9dd2e
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1419.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1420.png b/TheOtherRoles/Resources/IntroAnimation/intro_1420.png
new file mode 100644 (file)
index 0000000..9229dae
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1420.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1421.png b/TheOtherRoles/Resources/IntroAnimation/intro_1421.png
new file mode 100644 (file)
index 0000000..bded8f4
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1421.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1422.png b/TheOtherRoles/Resources/IntroAnimation/intro_1422.png
new file mode 100644 (file)
index 0000000..bf401df
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1422.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1423.png b/TheOtherRoles/Resources/IntroAnimation/intro_1423.png
new file mode 100644 (file)
index 0000000..8404c1d
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1423.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1424.png b/TheOtherRoles/Resources/IntroAnimation/intro_1424.png
new file mode 100644 (file)
index 0000000..8404c1d
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1424.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1425.png b/TheOtherRoles/Resources/IntroAnimation/intro_1425.png
new file mode 100644 (file)
index 0000000..8404c1d
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1425.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1426.png b/TheOtherRoles/Resources/IntroAnimation/intro_1426.png
new file mode 100644 (file)
index 0000000..ed030f0
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1426.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1427.png b/TheOtherRoles/Resources/IntroAnimation/intro_1427.png
new file mode 100644 (file)
index 0000000..2f17fdc
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1427.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1428.png b/TheOtherRoles/Resources/IntroAnimation/intro_1428.png
new file mode 100644 (file)
index 0000000..23e8c2d
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1428.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1429.png b/TheOtherRoles/Resources/IntroAnimation/intro_1429.png
new file mode 100644 (file)
index 0000000..e50e02b
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1429.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1430.png b/TheOtherRoles/Resources/IntroAnimation/intro_1430.png
new file mode 100644 (file)
index 0000000..e0e04c5
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1430.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1431.png b/TheOtherRoles/Resources/IntroAnimation/intro_1431.png
new file mode 100644 (file)
index 0000000..7cdb975
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1431.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1432.png b/TheOtherRoles/Resources/IntroAnimation/intro_1432.png
new file mode 100644 (file)
index 0000000..b4db382
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1432.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1433.png b/TheOtherRoles/Resources/IntroAnimation/intro_1433.png
new file mode 100644 (file)
index 0000000..73a93d5
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1433.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1434.png b/TheOtherRoles/Resources/IntroAnimation/intro_1434.png
new file mode 100644 (file)
index 0000000..da7ecef
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1434.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1435.png b/TheOtherRoles/Resources/IntroAnimation/intro_1435.png
new file mode 100644 (file)
index 0000000..483a9c4
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1435.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1436.png b/TheOtherRoles/Resources/IntroAnimation/intro_1436.png
new file mode 100644 (file)
index 0000000..bbbbbf5
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1436.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1437.png b/TheOtherRoles/Resources/IntroAnimation/intro_1437.png
new file mode 100644 (file)
index 0000000..2127fb8
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1437.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1438.png b/TheOtherRoles/Resources/IntroAnimation/intro_1438.png
new file mode 100644 (file)
index 0000000..cd441ab
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1438.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1439.png b/TheOtherRoles/Resources/IntroAnimation/intro_1439.png
new file mode 100644 (file)
index 0000000..97368c7
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1439.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1440.png b/TheOtherRoles/Resources/IntroAnimation/intro_1440.png
new file mode 100644 (file)
index 0000000..4f6650f
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1440.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1441.png b/TheOtherRoles/Resources/IntroAnimation/intro_1441.png
new file mode 100644 (file)
index 0000000..bf38543
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1441.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1442.png b/TheOtherRoles/Resources/IntroAnimation/intro_1442.png
new file mode 100644 (file)
index 0000000..ad37cf7
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1442.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1443.png b/TheOtherRoles/Resources/IntroAnimation/intro_1443.png
new file mode 100644 (file)
index 0000000..f4ff973
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1443.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1444.png b/TheOtherRoles/Resources/IntroAnimation/intro_1444.png
new file mode 100644 (file)
index 0000000..83ab266
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1444.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1445.png b/TheOtherRoles/Resources/IntroAnimation/intro_1445.png
new file mode 100644 (file)
index 0000000..d7522a7
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1445.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1446.png b/TheOtherRoles/Resources/IntroAnimation/intro_1446.png
new file mode 100644 (file)
index 0000000..343b8ac
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1446.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1447.png b/TheOtherRoles/Resources/IntroAnimation/intro_1447.png
new file mode 100644 (file)
index 0000000..16823ee
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1447.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1448.png b/TheOtherRoles/Resources/IntroAnimation/intro_1448.png
new file mode 100644 (file)
index 0000000..ad6a81a
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1448.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1449.png b/TheOtherRoles/Resources/IntroAnimation/intro_1449.png
new file mode 100644 (file)
index 0000000..ad6a81a
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1449.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1450.png b/TheOtherRoles/Resources/IntroAnimation/intro_1450.png
new file mode 100644 (file)
index 0000000..ad6a81a
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1450.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1451.png b/TheOtherRoles/Resources/IntroAnimation/intro_1451.png
new file mode 100644 (file)
index 0000000..9c50baa
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1451.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1452.png b/TheOtherRoles/Resources/IntroAnimation/intro_1452.png
new file mode 100644 (file)
index 0000000..41d6160
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1452.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1453.png b/TheOtherRoles/Resources/IntroAnimation/intro_1453.png
new file mode 100644 (file)
index 0000000..191c38d
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1453.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1454.png b/TheOtherRoles/Resources/IntroAnimation/intro_1454.png
new file mode 100644 (file)
index 0000000..25f7169
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1454.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1455.png b/TheOtherRoles/Resources/IntroAnimation/intro_1455.png
new file mode 100644 (file)
index 0000000..c105617
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1455.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1456.png b/TheOtherRoles/Resources/IntroAnimation/intro_1456.png
new file mode 100644 (file)
index 0000000..aa5f901
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1456.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1457.png b/TheOtherRoles/Resources/IntroAnimation/intro_1457.png
new file mode 100644 (file)
index 0000000..aafb8bb
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1457.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1458.png b/TheOtherRoles/Resources/IntroAnimation/intro_1458.png
new file mode 100644 (file)
index 0000000..1e696f7
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1458.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1459.png b/TheOtherRoles/Resources/IntroAnimation/intro_1459.png
new file mode 100644 (file)
index 0000000..b2d445c
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1459.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1460.png b/TheOtherRoles/Resources/IntroAnimation/intro_1460.png
new file mode 100644 (file)
index 0000000..d600627
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1460.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1461.png b/TheOtherRoles/Resources/IntroAnimation/intro_1461.png
new file mode 100644 (file)
index 0000000..869f330
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1461.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1462.png b/TheOtherRoles/Resources/IntroAnimation/intro_1462.png
new file mode 100644 (file)
index 0000000..4f499b3
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1462.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1463.png b/TheOtherRoles/Resources/IntroAnimation/intro_1463.png
new file mode 100644 (file)
index 0000000..78cdf56
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1463.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1464.png b/TheOtherRoles/Resources/IntroAnimation/intro_1464.png
new file mode 100644 (file)
index 0000000..c2dc497
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1464.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1465.png b/TheOtherRoles/Resources/IntroAnimation/intro_1465.png
new file mode 100644 (file)
index 0000000..6ee4947
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1465.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1466.png b/TheOtherRoles/Resources/IntroAnimation/intro_1466.png
new file mode 100644 (file)
index 0000000..213bd31
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1466.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1467.png b/TheOtherRoles/Resources/IntroAnimation/intro_1467.png
new file mode 100644 (file)
index 0000000..b8aa026
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1467.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1468.png b/TheOtherRoles/Resources/IntroAnimation/intro_1468.png
new file mode 100644 (file)
index 0000000..0befa6a
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1468.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1469.png b/TheOtherRoles/Resources/IntroAnimation/intro_1469.png
new file mode 100644 (file)
index 0000000..2237ba6
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1469.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1470.png b/TheOtherRoles/Resources/IntroAnimation/intro_1470.png
new file mode 100644 (file)
index 0000000..05af16a
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1470.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1471.png b/TheOtherRoles/Resources/IntroAnimation/intro_1471.png
new file mode 100644 (file)
index 0000000..0b2c07d
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1471.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1472.png b/TheOtherRoles/Resources/IntroAnimation/intro_1472.png
new file mode 100644 (file)
index 0000000..6ba24c4
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1472.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1473.png b/TheOtherRoles/Resources/IntroAnimation/intro_1473.png
new file mode 100644 (file)
index 0000000..c6ddd88
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1473.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1474.png b/TheOtherRoles/Resources/IntroAnimation/intro_1474.png
new file mode 100644 (file)
index 0000000..c6ddd88
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1474.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1475.png b/TheOtherRoles/Resources/IntroAnimation/intro_1475.png
new file mode 100644 (file)
index 0000000..c6ddd88
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1475.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1476.png b/TheOtherRoles/Resources/IntroAnimation/intro_1476.png
new file mode 100644 (file)
index 0000000..22cc004
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1476.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1477.png b/TheOtherRoles/Resources/IntroAnimation/intro_1477.png
new file mode 100644 (file)
index 0000000..7c3ac75
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1477.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1478.png b/TheOtherRoles/Resources/IntroAnimation/intro_1478.png
new file mode 100644 (file)
index 0000000..c1f4879
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1478.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1479.png b/TheOtherRoles/Resources/IntroAnimation/intro_1479.png
new file mode 100644 (file)
index 0000000..5831545
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1479.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1480.png b/TheOtherRoles/Resources/IntroAnimation/intro_1480.png
new file mode 100644 (file)
index 0000000..2525457
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1480.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1481.png b/TheOtherRoles/Resources/IntroAnimation/intro_1481.png
new file mode 100644 (file)
index 0000000..9509d3e
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1481.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1482.png b/TheOtherRoles/Resources/IntroAnimation/intro_1482.png
new file mode 100644 (file)
index 0000000..e7bf934
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1482.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1483.png b/TheOtherRoles/Resources/IntroAnimation/intro_1483.png
new file mode 100644 (file)
index 0000000..b750070
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1483.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1484.png b/TheOtherRoles/Resources/IntroAnimation/intro_1484.png
new file mode 100644 (file)
index 0000000..1f10879
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1484.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1485.png b/TheOtherRoles/Resources/IntroAnimation/intro_1485.png
new file mode 100644 (file)
index 0000000..c56f6ae
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1485.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1486.png b/TheOtherRoles/Resources/IntroAnimation/intro_1486.png
new file mode 100644 (file)
index 0000000..8123f05
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1486.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1487.png b/TheOtherRoles/Resources/IntroAnimation/intro_1487.png
new file mode 100644 (file)
index 0000000..54cf195
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1487.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1488.png b/TheOtherRoles/Resources/IntroAnimation/intro_1488.png
new file mode 100644 (file)
index 0000000..3d1a13f
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1488.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1489.png b/TheOtherRoles/Resources/IntroAnimation/intro_1489.png
new file mode 100644 (file)
index 0000000..34322c4
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1489.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1490.png b/TheOtherRoles/Resources/IntroAnimation/intro_1490.png
new file mode 100644 (file)
index 0000000..74dadbc
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1490.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1491.png b/TheOtherRoles/Resources/IntroAnimation/intro_1491.png
new file mode 100644 (file)
index 0000000..f7acfa3
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1491.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1492.png b/TheOtherRoles/Resources/IntroAnimation/intro_1492.png
new file mode 100644 (file)
index 0000000..e8c92ab
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1492.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1493.png b/TheOtherRoles/Resources/IntroAnimation/intro_1493.png
new file mode 100644 (file)
index 0000000..6e5a8a4
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1493.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1494.png b/TheOtherRoles/Resources/IntroAnimation/intro_1494.png
new file mode 100644 (file)
index 0000000..9f60917
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1494.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1495.png b/TheOtherRoles/Resources/IntroAnimation/intro_1495.png
new file mode 100644 (file)
index 0000000..5a1c195
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1495.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1496.png b/TheOtherRoles/Resources/IntroAnimation/intro_1496.png
new file mode 100644 (file)
index 0000000..70e6fe2
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1496.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1497.png b/TheOtherRoles/Resources/IntroAnimation/intro_1497.png
new file mode 100644 (file)
index 0000000..f71da96
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1497.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1498.png b/TheOtherRoles/Resources/IntroAnimation/intro_1498.png
new file mode 100644 (file)
index 0000000..d2dca1d
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1498.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1499.png b/TheOtherRoles/Resources/IntroAnimation/intro_1499.png
new file mode 100644 (file)
index 0000000..d2dca1d
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1499.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1500.png b/TheOtherRoles/Resources/IntroAnimation/intro_1500.png
new file mode 100644 (file)
index 0000000..d2dca1d
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1500.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1501.png b/TheOtherRoles/Resources/IntroAnimation/intro_1501.png
new file mode 100644 (file)
index 0000000..d2dca1d
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1501.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1502.png b/TheOtherRoles/Resources/IntroAnimation/intro_1502.png
new file mode 100644 (file)
index 0000000..d2dca1d
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1502.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1503.png b/TheOtherRoles/Resources/IntroAnimation/intro_1503.png
new file mode 100644 (file)
index 0000000..d2dca1d
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1503.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1504.png b/TheOtherRoles/Resources/IntroAnimation/intro_1504.png
new file mode 100644 (file)
index 0000000..d2dca1d
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1504.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1505.png b/TheOtherRoles/Resources/IntroAnimation/intro_1505.png
new file mode 100644 (file)
index 0000000..d2dca1d
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1505.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1506.png b/TheOtherRoles/Resources/IntroAnimation/intro_1506.png
new file mode 100644 (file)
index 0000000..d2dca1d
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1506.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1507.png b/TheOtherRoles/Resources/IntroAnimation/intro_1507.png
new file mode 100644 (file)
index 0000000..d2dca1d
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1507.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1508.png b/TheOtherRoles/Resources/IntroAnimation/intro_1508.png
new file mode 100644 (file)
index 0000000..d2dca1d
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1508.png differ
diff --git a/TheOtherRoles/Resources/IntroAnimation/intro_1509.png b/TheOtherRoles/Resources/IntroAnimation/intro_1509.png
new file mode 100644 (file)
index 0000000..d2dca1d
Binary files /dev/null and b/TheOtherRoles/Resources/IntroAnimation/intro_1509.png differ
diff --git a/TheOtherRoles/Resources/InvisButton.png b/TheOtherRoles/Resources/InvisButton.png
new file mode 100644 (file)
index 0000000..8147372
Binary files /dev/null and b/TheOtherRoles/Resources/InvisButton.png differ
diff --git a/TheOtherRoles/Resources/Reveal.png b/TheOtherRoles/Resources/Reveal.png
new file mode 100644 (file)
index 0000000..544351e
Binary files /dev/null and b/TheOtherRoles/Resources/Reveal.png differ
diff --git a/TheOtherRoles/Resources/SpeedboostButton.png b/TheOtherRoles/Resources/SpeedboostButton.png
new file mode 100644 (file)
index 0000000..004f4ff
Binary files /dev/null and b/TheOtherRoles/Resources/SpeedboostButton.png differ
diff --git a/TheOtherRoles/Resources/TabIconPropHuntSettings.png b/TheOtherRoles/Resources/TabIconPropHuntSettings.png
new file mode 100644 (file)
index 0000000..357b496
Binary files /dev/null and b/TheOtherRoles/Resources/TabIconPropHuntSettings.png differ
diff --git a/TheOtherRoles/Resources/Txt/Props.txt b/TheOtherRoles/Resources/Txt/Props.txt
new file mode 100644 (file)
index 0000000..906cae8
--- /dev/null
@@ -0,0 +1,92 @@
+liprop
+snowman
+Door
+nav_chair
+onsole
+comms-top
+SecurityLogger
+Table
+divertElevStand
+launch-pad-right
+barrier
+gun0001
+table
+bridge
+bigRock
+rockblock
+engine_railback
+medBayBedHort
+medBayBed
+lockersBench
+reactor_Border-Bottom (1)
+reactor_Border-Mid (1)
+reactor_Border-Top (1)
+cafShelf
+storage-boxes1
+storage-box2 (2)
+storage-top
+storage-mop
+weatherPanel
+BushesBottom
+PlanterFern
+PlanterBushTop
+admin-tablelower
+MapTable
+Admin
+Surv_Panel
+transformer0001 (1)
+transformer0001 (2)
+transformer0001 (3)
+panel_vitals
+projector
+EmergencyButton
+panel_map
+telescope
+storagebox
+rock3 (1)
+blockrock
+panel_cockpit_map
+task_records_right
+task_records_rightcen
+task_records_left_cen
+records_admin_map
+lounge_bathroomdoor (1)
+lounge_bathroomdoor (2)
+lounge_bathroomdoor (3)
+TopLeftVert
+LeftDoorBottom
+task_cams
+task_tapes_left
+panel_dummy
+vault_dummie (1)
+vault_dummie (2)
+vault_dummie (3)
+door_vault
+door_gap
+task_emergency
+LowerCentralVent
+LowerTank
+NormalPipesVent
+NormalElectricalVent
+Shelves
+NormalStorageVent
+NormalLobbyVent
+TankDeco
+PipeDeco
+NormalEnginesVent
+Main Turbine
+OpenEngineVent
+NormalSecurityVent
+NormalObservationVent
+NormalCafeteriaVent
+deco_labbench
+NormalMedicalVent
+UpperTank
+UpperCentralVent
+NormalCommsVent
+NormalUpperLobbyVent
+NormalMeetingVent
+console-mr-callmeeting
+deco-mr-table
+console-mr-fishfeed
+NormalAdminVent
\ No newline at end of file
diff --git a/TheOtherRoles/Resources/UnStuck.png b/TheOtherRoles/Resources/UnStuck.png
new file mode 100644 (file)
index 0000000..028930e
Binary files /dev/null and b/TheOtherRoles/Resources/UnStuck.png differ
diff --git a/TheOtherRoles/Resources/poolablesBackground.jpg b/TheOtherRoles/Resources/poolablesBackground.jpg
new file mode 100644 (file)
index 0000000..403c148
Binary files /dev/null and b/TheOtherRoles/Resources/poolablesBackground.jpg differ
index d2c3c807777e892217314402b5eaf4c6719f04f3..29ba52e6a966a73ca8b2f06e276e11c4a6c14c08 100644 (file)
@@ -77,6 +77,8 @@ namespace TheOtherRoles
         public static RoleInfo hunter = new RoleInfo("Hunter", Palette.ImpostorRed, Helpers.cs(Palette.ImpostorRed, "Seek and kill everyone"), "Seek and kill everyone", RoleId.Impostor);
         public static RoleInfo hunted = new RoleInfo("Hunted", Color.white, "Hide", "Hide", RoleId.Crewmate);
 
+        public static RoleInfo prop = new RoleInfo("Prop", Color.white, "Disguise As An Object and Survive", "Disguise As An Object", RoleId.Crewmate);
+
 
 
         // Modifier
@@ -222,12 +224,12 @@ namespace TheOtherRoles
             if (p == Pursuer.pursuer) infos.Add(pursuer);
             if (p == Thief.thief) infos.Add(thief);
 
-            // Default roles (just impostor, just crewmate, or hunter / hunted for hide n seek
+            // Default roles (just impostor, just crewmate, or hunter / hunted for hide n seek, prop hunt prop ...
             if (infos.Count == count) {
                 if (p.Data.Role.IsImpostor)
-                    infos.Add(TORMapOptions.gameMode == CustomGamemodes.HideNSeek ? RoleInfo.hunter : RoleInfo.impostor);
+                    infos.Add(TORMapOptions.gameMode == CustomGamemodes.HideNSeek || TORMapOptions.gameMode == CustomGamemodes.PropHunt ? RoleInfo.hunter : RoleInfo.impostor);
                 else
-                    infos.Add(TORMapOptions.gameMode == CustomGamemodes.HideNSeek ? RoleInfo.hunted : RoleInfo.crewmate);
+                    infos.Add(TORMapOptions.gameMode == CustomGamemodes.HideNSeek ? RoleInfo.hunted : TORMapOptions.gameMode == CustomGamemodes.PropHunt ? RoleInfo.prop : RoleInfo.crewmate);
             }
 
             return infos;
index 2aef9a7ab033ef494663f527b3199af1509317a2..ba153bb8f1b369f689bca096c212007d2321c096 100644 (file)
@@ -38,13 +38,16 @@ namespace TheOtherRoles
         }
 
 
-        public static void play(string path, float volume=0.8f)
+        public static void play(string path, float volume=0.8f, bool loop = false)
         {
             if (!TORMapOptions.enableSoundEffects) return;
             AudioClip clipToPlay = get(path);
             // if (false) clipToPlay = get("exampleClip"); for april fools?
             stop(path);
-            if (Constants.ShouldPlaySfx()) SoundManager.Instance.PlaySound(clipToPlay, false, volume);
+            if (Constants.ShouldPlaySfx()) {
+                AudioSource source = SoundManager.Instance.PlaySound(clipToPlay, false, volume);
+                source.loop = loop;
+            }
         }
         public static void playAtPosition(string path, Vector2 position, float maxDuration = 15f, float range = 5f, bool loop = false) {
             if (!TORMapOptions.enableSoundEffects || !Constants.ShouldPlaySfx()) return;
index 5891768b2bae24d670bf2c595893234fbe7d98be..053206af66aaf2d695d705772284b1c6dba3a13b 100644 (file)
@@ -76,6 +76,7 @@ namespace TheOtherRoles
             // Gamemodes
             HandleGuesser.clearAndReload();
             HideNSeek.clearAndReload();
+            PropHunt.clearAndReload();
 
         }
 
@@ -1449,13 +1450,17 @@ namespace TheOtherRoles
                 }
             } else {
                 int randomNumber = rnd.Next(4);
-                string typeOfColor = Helpers.isLighterColor(Medium.target.killerIfExisting.Data.DefaultOutfit.ColorId) ? "lighter" : "darker";
+                string typeOfColor = Helpers.isLighterColor(Medium.target.killerIfExisting) ? "lighter" : "darker";
                 float timeSinceDeath = ((float)(Medium.meetingStartTime - Medium.target.timeOfDeath).TotalMilliseconds);
-                
-                if (randomNumber == 0) msg = "If my role hasn't been saved, there's no " + RoleInfo.GetRolesString(Medium.target.player, false) + " in the game anymore.";
-                else if (randomNumber == 1) msg = "I'm not sure, but I guess a " + typeOfColor + " color killed me.";
+                var roleString = RoleInfo.GetRolesString(Medium.target.player, false);
+                if (randomNumber == 0) {
+                    if (!roleString.Contains("Impostor") && !roleString.Contains("Crewmate"))
+                        msg = "If my role hasn't been saved, there's no " + roleString + " in the game anymore.";
+                    else
+                        msg = "I am a " + roleString + " without an other role."; 
+                } else if (randomNumber == 1) msg = "I'm not sure, but I guess a " + typeOfColor + " color killed me.";
                 else if (randomNumber == 2) msg = "If I counted correctly, I died " + Math.Round(timeSinceDeath / 1000) + "s before the next meeting started.";
-                else msg = "It seems like my killer was the " + RoleInfo.GetRolesString(Medium.target.killerIfExisting, false, false, true) + ".";
+                else msg = "It seems like my killer is the " + RoleInfo.GetRolesString(Medium.target.killerIfExisting, false, false, true) + ".";
             }
 
             if (rnd.NextDouble() < chanceAdditionalInfo) {
index ab3c7eaa42ca202249b5db866acd09dbb965a1b3..88b8700ca971e382d714bf6d5f8176cd494829d9 100644 (file)
@@ -1,7 +1,7 @@
 <Project Sdk="Microsoft.NET.Sdk">
     <PropertyGroup>
         <TargetFramework>net6.0</TargetFramework>
-        <Version>4.3.4</Version>
+        <Version>4.4.0</Version>
         <Description>TheOtherRoles</Description>
         <Authors>Eisbison</Authors>
                <LangVersion>latest</LangVersion>
index 0151fd8e94106076a4b08244624c4ebdf382d3b2..ae1b9649eb8c4ca899b5ef8e4219eff36f613cfc 100644 (file)
       },
       "Samboy063.Cpp2IL.Core": {
         "type": "Transitive",
-        "resolved": "2022.1.0-development.876",
-        "contentHash": "yomWiPcMGaQ2JmsP5C22taGSJ75IOGTDme1ysw5V4DLfIt1FBBpxC1XBom2RYG6MZ1SbI1yvEaYNCuAHLZ7+xw==",
+        "resolved": "2022.1.0-development.866",
+        "contentHash": "QPMuix/3jRngWBdNSLhAbm9BHYf95Ln1Ph1eCK/cDZdVibxFDFP3a6Yczyx1p7GbN7bRQwrhs2skPJSS/z3m2w==",
         "dependencies": {
           "AsmResolver.DotNet": "5.1.0",
           "Disarm": "2022.1.0-master.26",
           "Iced": "1.18.0",
-          "Samboy063.LibCpp2IL": "2022.1.0-development.876",
-          "StableNameDotNet": "0.1.0-development.876",
+          "Samboy063.LibCpp2IL": "2022.1.0-development.866",
+          "StableNameDotNet": "0.1.0-development.866",
           "js6pak.Gee.External.Capstone": "2.1.0"
         }
       },
       "Samboy063.LibCpp2IL": {
         "type": "Transitive",
-        "resolved": "2022.1.0-development.876",
-        "contentHash": "KrpK5sySZHMPdeatiCqv5Pw8F7oV4fTRfVBvzKVmRlnO7Ye6Lg6n6t/PQ7VjLH6FiF2kH3YPM2uIp4xMJhGXGg==",
+        "resolved": "2022.1.0-development.866",
+        "contentHash": "EcJSWTfQko8SQozozoUT+aQJVWC8wj8C0YUiPBF4rNRId19yTKp2IXcXnI747v+8/aal222QR6WHfoBK2WlVLg==",
         "dependencies": {
           "AssetRipper.VersionUtilities": "1.3.1",
-          "Samboy063.WasmDisassembler": "2022.1.0-development.876"
+          "Samboy063.WasmDisassembler": "2022.1.0-development.866"
         }
       },
       "Samboy063.WasmDisassembler": {
         "type": "Transitive",
-        "resolved": "2022.1.0-development.876",
-        "contentHash": "QDDrTjL/WoGP66Fc1HBtPXpmPn7F+0JYiV1xaZetkYtZ4UNMT7k6i2b6Ge4gq2xkK5NV0YpLyuQcVPeuy7u4XA=="
+        "resolved": "2022.1.0-development.866",
+        "contentHash": "2QK8F3eISkLcoW/Nt7wtxyQh31EXAqEMBVXXjEnuxyvXpBXxOIGpjmE3pWhGwxQwDCbe4zBsLF1zUiqq3/pXRA=="
       },
       "SemanticVersioning": {
         "type": "Transitive",
       },
       "StableNameDotNet": {
         "type": "Transitive",
-        "resolved": "0.1.0-development.876",
-        "contentHash": "e+yo57rKEJoQmTJ8scEbt6l/bqZvZu4hZUZMau/u1tyZI1I42JiXsjcH1+gE/nSQJlKPCykUrO/h+tUVm9I2nw=="
+        "resolved": "0.1.0-development.866",
+        "contentHash": "DJb8x4dV3ucDgM12sU28HxCdeqY/JudJbeJG6mgXWDJzpFZw2Jd7JF1pKFRNLzh/0gpo8bCGLQS9gOWZmBjdtg=="
       },
       "System.Collections": {
         "type": "Transitive",