From 27a162ea69175729aa228ee11b2194d325f524b6 Mon Sep 17 00:00:00 2001 From: Rafal Swierczek <34179rs@gmail.com> Date: Wed, 27 Sep 2023 12:44:27 +0100 Subject: [PATCH 001/112] Created Bounty System Test Level --- .../.idea/.idea.EndlessVendetta/.idea/.gitignore | 13 +++++++++++++ .../.idea/.idea.EndlessVendetta/.idea/encodings.xml | 4 ++++ .../.idea.EndlessVendetta/.idea/indexLayout.xml | 8 ++++++++ .../.idea/.idea.EndlessVendetta/.idea/vcs.xml | 6 ++++++ .../Content/Levels/BountySystemTestLevel.umap | 3 +++ .../Architecture/Floor_400x400.uasset | 4 ++-- .../0/35/GNWDM49ITFAL99MAPU63KW.uasset | 3 +++ .../0/9Q/BGN44FCVKAUBI74L0PVJFH.uasset | 3 +++ .../0/N7/I6SI61JAJULQZ8KSYNC7V4.uasset | 3 +++ .../1/OG/60Y1DLNNKXGJ816DWXWR4K.uasset | 3 +++ .../1/WB/Q6U5CZJDM49ZZNLD2B3UZ4.uasset | 3 +++ .../2/0X/FHOYQRCBJ9TSY34PR9YG9K.uasset | 3 +++ .../2/EG/J1DWWT3IWLXFAZ4ST6V4ZS.uasset | 3 +++ .../2/KW/P7HO2KS2H3F9KY2UWEMFSW.uasset | 3 +++ .../2/OE/7WS9WIEXMH5U64C0ZXVHDG.uasset | 3 +++ .../2/U9/CEJXWHF4HZOWAJH0Z9DVXF.uasset | 3 +++ .../2/UJ/OE9CR46TEW4L20164ZOYX9.uasset | 3 +++ .../3/0N/O2LCQ39RFAI1HX77K8TT52.uasset | 3 +++ .../3/4F/8S26VJON8I4V3TGO6PH8SW.uasset | 3 +++ .../3/MG/Q97N1TH047UOIJQK4OEQ5P.uasset | 3 +++ .../3/XR/86ZFQ3D80QB5U0HXZMZRGT.uasset | 3 +++ .../4/80/Z3VOE7HM87EM9Q66BHOTNC.uasset | 3 +++ .../4/G9/R30GSAVEHD5O8OMLN42SQH.uasset | 3 +++ .../4/LR/K1RHQ8GO0CIBCOJ2CQ7VBC.uasset | 3 +++ .../4/ML/607V0BD8JKYMIZZNQFWT2P.uasset | 3 +++ .../4/TC/55207AXCWRBDEIQMVAL73E.uasset | 3 +++ .../4/Y1/CVW9DVNZATUQ7W422U0IDZ.uasset | 3 +++ .../5/0F/NWBXM8ZFAWQ9K0C9AYA4E9.uasset | 3 +++ .../5/W2/NP5W2WCJMUV9NOZ8VBFC5X.uasset | 3 +++ .../6/1E/Z18X6DQ1RLUHH8APD8MK7W.uasset | 3 +++ .../6/9B/3CEIJDHVWAVHQMIEAN91R7.uasset | 3 +++ .../6/AF/I5Q6J2LIS5W4WR5VI62AUG.uasset | 3 +++ .../6/AK/W7ZHA42P7DRNS3O3QN8BSU.uasset | 3 +++ .../6/PD/CPMXMJW3VW3GEW6AKWR5GJ.uasset | 3 +++ .../7/55/DJOXM0EW53J6H228XSA0N1.uasset | 3 +++ .../7/6H/PL136XXOA5LKR53PXV3BUN.uasset | 3 +++ .../7/HR/WN4SY5WWOIF8QI91SK7CTH.uasset | 3 +++ .../7/K9/0J1KOMY2RH63G5MV4DPJZ1.uasset | 3 +++ .../8/9I/F6ZJ66HW9CDSFFSIQKWXDI.uasset | 3 +++ .../8/E9/H5X3629C3DOMFX077AZFMW.uasset | 3 +++ .../8/IE/ULZSRX1AMEI6J5HUXG0SSV.uasset | 3 +++ .../8/IM/FJ6HRZ9HXPG7XMNJXX9XE0.uasset | 3 +++ .../8/OV/F9IKRV0GCX552V3AOWFU4C.uasset | 3 +++ .../8/TB/7E3XSFVKXJH71BWPQK7DE7.uasset | 3 +++ .../8/TM/XCQ9IRO5QUOT8DURISJJX0.uasset | 3 +++ .../9/22/540LIYPKX7RW44ULUEHGHE.uasset | 3 +++ .../9/J0/NAURUIYIL4FWMCLRWUDE1X.uasset | 3 +++ .../A/F8/VBWZ0ZW0LJXN6633VM36TB.uasset | 3 +++ .../A/I4/GYPPACX2Q6XUN509PQXXUB.uasset | 3 +++ .../B/99/HIHVSRNPR1359HYG9VQ4S9.uasset | 3 +++ .../B/M4/WDZ38E5FQFNLQ3W08AD74K.uasset | 3 +++ .../C/C8/V93JCJG5GNPG3OANIVPEU2.uasset | 3 +++ .../C/IY/1DYGNRS7MUF1969G9AKFEQ.uasset | 3 +++ .../C/R8/1FYI4WVBKRV7XPNB9SF85N.uasset | 3 +++ .../C/TJ/KML81PLR61JZQ25ZCRTOHM.uasset | 3 +++ .../C/X1/J1KYK53FD26XTDA5AYVCA5.uasset | 3 +++ .../D/C5/GO9F5BX1OG0G37W9TQNCJF.uasset | 3 +++ .../D/JF/YGMLISQYZUYCOFWGX11BA5.uasset | 3 +++ .../D/KB/OJ5NYYQG4LT79W8I5I6MS3.uasset | 3 +++ .../E/13/WANY5DUXOHAN9B8VO419ZD.uasset | 3 +++ .../E/72/2Q6FTG9QBV70Q6RY0KMH00.uasset | 3 +++ .../E/C9/PUEF3SDZX6YW93741SQAXO.uasset | 3 +++ .../E/F1/UO65QKXRP70QKOKHZSMZ1F.uasset | 3 +++ .../E/MX/T78JL0KEIV77Y3QP6GYB54.uasset | 3 +++ .../E/XX/PPC77XHOJNZW9PWV5OHH00.uasset | 3 +++ .../0/TQ/3ACFHBDWFABKU596RXRO53.uasset | 3 +++ .../1/30/W9Z34RUFOXLO8DC8TGLS52.uasset | 3 +++ .../3/VN/8BVAC6SV0C7HY7NQZUMR3A.uasset | 3 +++ .../4/O7/YR3DRO0R6AREA4XTW0JVGN.uasset | 3 +++ .../4/OR/RK9JDE40KKJZQWFMFL26I5.uasset | 3 +++ .../5/3P/SF481C8C6IO4CAHI6873XE.uasset | 3 +++ .../7/IO/6Y51GE24EVFOHXCG615BY1.uasset | 3 +++ .../D/WD/LGTPJJO55ED5H60IZ3025H.uasset | 3 +++ 73 files changed, 237 insertions(+), 2 deletions(-) create mode 100644 EndlessVendetta/.idea/.idea.EndlessVendetta/.idea/.gitignore create mode 100644 EndlessVendetta/.idea/.idea.EndlessVendetta/.idea/encodings.xml create mode 100644 EndlessVendetta/.idea/.idea.EndlessVendetta/.idea/indexLayout.xml create mode 100644 EndlessVendetta/.idea/.idea.EndlessVendetta/.idea/vcs.xml create mode 100644 EndlessVendetta/Content/Levels/BountySystemTestLevel.umap create mode 100644 EndlessVendetta/Content/__ExternalActors__/Levels/BountySystemTestLevel/0/35/GNWDM49ITFAL99MAPU63KW.uasset create mode 100644 EndlessVendetta/Content/__ExternalActors__/Levels/BountySystemTestLevel/0/9Q/BGN44FCVKAUBI74L0PVJFH.uasset create mode 100644 EndlessVendetta/Content/__ExternalActors__/Levels/BountySystemTestLevel/0/N7/I6SI61JAJULQZ8KSYNC7V4.uasset create mode 100644 EndlessVendetta/Content/__ExternalActors__/Levels/BountySystemTestLevel/1/OG/60Y1DLNNKXGJ816DWXWR4K.uasset create mode 100644 EndlessVendetta/Content/__ExternalActors__/Levels/BountySystemTestLevel/1/WB/Q6U5CZJDM49ZZNLD2B3UZ4.uasset create mode 100644 EndlessVendetta/Content/__ExternalActors__/Levels/BountySystemTestLevel/2/0X/FHOYQRCBJ9TSY34PR9YG9K.uasset create mode 100644 EndlessVendetta/Content/__ExternalActors__/Levels/BountySystemTestLevel/2/EG/J1DWWT3IWLXFAZ4ST6V4ZS.uasset create mode 100644 EndlessVendetta/Content/__ExternalActors__/Levels/BountySystemTestLevel/2/KW/P7HO2KS2H3F9KY2UWEMFSW.uasset create mode 100644 EndlessVendetta/Content/__ExternalActors__/Levels/BountySystemTestLevel/2/OE/7WS9WIEXMH5U64C0ZXVHDG.uasset create mode 100644 EndlessVendetta/Content/__ExternalActors__/Levels/BountySystemTestLevel/2/U9/CEJXWHF4HZOWAJH0Z9DVXF.uasset create mode 100644 EndlessVendetta/Content/__ExternalActors__/Levels/BountySystemTestLevel/2/UJ/OE9CR46TEW4L20164ZOYX9.uasset create mode 100644 EndlessVendetta/Content/__ExternalActors__/Levels/BountySystemTestLevel/3/0N/O2LCQ39RFAI1HX77K8TT52.uasset create mode 100644 EndlessVendetta/Content/__ExternalActors__/Levels/BountySystemTestLevel/3/4F/8S26VJON8I4V3TGO6PH8SW.uasset create mode 100644 EndlessVendetta/Content/__ExternalActors__/Levels/BountySystemTestLevel/3/MG/Q97N1TH047UOIJQK4OEQ5P.uasset create mode 100644 EndlessVendetta/Content/__ExternalActors__/Levels/BountySystemTestLevel/3/XR/86ZFQ3D80QB5U0HXZMZRGT.uasset create mode 100644 EndlessVendetta/Content/__ExternalActors__/Levels/BountySystemTestLevel/4/80/Z3VOE7HM87EM9Q66BHOTNC.uasset create mode 100644 EndlessVendetta/Content/__ExternalActors__/Levels/BountySystemTestLevel/4/G9/R30GSAVEHD5O8OMLN42SQH.uasset create mode 100644 EndlessVendetta/Content/__ExternalActors__/Levels/BountySystemTestLevel/4/LR/K1RHQ8GO0CIBCOJ2CQ7VBC.uasset create mode 100644 EndlessVendetta/Content/__ExternalActors__/Levels/BountySystemTestLevel/4/ML/607V0BD8JKYMIZZNQFWT2P.uasset create mode 100644 EndlessVendetta/Content/__ExternalActors__/Levels/BountySystemTestLevel/4/TC/55207AXCWRBDEIQMVAL73E.uasset create mode 100644 EndlessVendetta/Content/__ExternalActors__/Levels/BountySystemTestLevel/4/Y1/CVW9DVNZATUQ7W422U0IDZ.uasset create mode 100644 EndlessVendetta/Content/__ExternalActors__/Levels/BountySystemTestLevel/5/0F/NWBXM8ZFAWQ9K0C9AYA4E9.uasset create mode 100644 EndlessVendetta/Content/__ExternalActors__/Levels/BountySystemTestLevel/5/W2/NP5W2WCJMUV9NOZ8VBFC5X.uasset create mode 100644 EndlessVendetta/Content/__ExternalActors__/Levels/BountySystemTestLevel/6/1E/Z18X6DQ1RLUHH8APD8MK7W.uasset create mode 100644 EndlessVendetta/Content/__ExternalActors__/Levels/BountySystemTestLevel/6/9B/3CEIJDHVWAVHQMIEAN91R7.uasset create mode 100644 EndlessVendetta/Content/__ExternalActors__/Levels/BountySystemTestLevel/6/AF/I5Q6J2LIS5W4WR5VI62AUG.uasset create mode 100644 EndlessVendetta/Content/__ExternalActors__/Levels/BountySystemTestLevel/6/AK/W7ZHA42P7DRNS3O3QN8BSU.uasset create mode 100644 EndlessVendetta/Content/__ExternalActors__/Levels/BountySystemTestLevel/6/PD/CPMXMJW3VW3GEW6AKWR5GJ.uasset create mode 100644 EndlessVendetta/Content/__ExternalActors__/Levels/BountySystemTestLevel/7/55/DJOXM0EW53J6H228XSA0N1.uasset create mode 100644 EndlessVendetta/Content/__ExternalActors__/Levels/BountySystemTestLevel/7/6H/PL136XXOA5LKR53PXV3BUN.uasset create mode 100644 EndlessVendetta/Content/__ExternalActors__/Levels/BountySystemTestLevel/7/HR/WN4SY5WWOIF8QI91SK7CTH.uasset create mode 100644 EndlessVendetta/Content/__ExternalActors__/Levels/BountySystemTestLevel/7/K9/0J1KOMY2RH63G5MV4DPJZ1.uasset create mode 100644 EndlessVendetta/Content/__ExternalActors__/Levels/BountySystemTestLevel/8/9I/F6ZJ66HW9CDSFFSIQKWXDI.uasset create mode 100644 EndlessVendetta/Content/__ExternalActors__/Levels/BountySystemTestLevel/8/E9/H5X3629C3DOMFX077AZFMW.uasset create mode 100644 EndlessVendetta/Content/__ExternalActors__/Levels/BountySystemTestLevel/8/IE/ULZSRX1AMEI6J5HUXG0SSV.uasset create mode 100644 EndlessVendetta/Content/__ExternalActors__/Levels/BountySystemTestLevel/8/IM/FJ6HRZ9HXPG7XMNJXX9XE0.uasset create mode 100644 EndlessVendetta/Content/__ExternalActors__/Levels/BountySystemTestLevel/8/OV/F9IKRV0GCX552V3AOWFU4C.uasset create mode 100644 EndlessVendetta/Content/__ExternalActors__/Levels/BountySystemTestLevel/8/TB/7E3XSFVKXJH71BWPQK7DE7.uasset create mode 100644 EndlessVendetta/Content/__ExternalActors__/Levels/BountySystemTestLevel/8/TM/XCQ9IRO5QUOT8DURISJJX0.uasset create mode 100644 EndlessVendetta/Content/__ExternalActors__/Levels/BountySystemTestLevel/9/22/540LIYPKX7RW44ULUEHGHE.uasset create mode 100644 EndlessVendetta/Content/__ExternalActors__/Levels/BountySystemTestLevel/9/J0/NAURUIYIL4FWMCLRWUDE1X.uasset create mode 100644 EndlessVendetta/Content/__ExternalActors__/Levels/BountySystemTestLevel/A/F8/VBWZ0ZW0LJXN6633VM36TB.uasset create mode 100644 EndlessVendetta/Content/__ExternalActors__/Levels/BountySystemTestLevel/A/I4/GYPPACX2Q6XUN509PQXXUB.uasset create mode 100644 EndlessVendetta/Content/__ExternalActors__/Levels/BountySystemTestLevel/B/99/HIHVSRNPR1359HYG9VQ4S9.uasset create mode 100644 EndlessVendetta/Content/__ExternalActors__/Levels/BountySystemTestLevel/B/M4/WDZ38E5FQFNLQ3W08AD74K.uasset create mode 100644 EndlessVendetta/Content/__ExternalActors__/Levels/BountySystemTestLevel/C/C8/V93JCJG5GNPG3OANIVPEU2.uasset create mode 100644 EndlessVendetta/Content/__ExternalActors__/Levels/BountySystemTestLevel/C/IY/1DYGNRS7MUF1969G9AKFEQ.uasset create mode 100644 EndlessVendetta/Content/__ExternalActors__/Levels/BountySystemTestLevel/C/R8/1FYI4WVBKRV7XPNB9SF85N.uasset create mode 100644 EndlessVendetta/Content/__ExternalActors__/Levels/BountySystemTestLevel/C/TJ/KML81PLR61JZQ25ZCRTOHM.uasset create mode 100644 EndlessVendetta/Content/__ExternalActors__/Levels/BountySystemTestLevel/C/X1/J1KYK53FD26XTDA5AYVCA5.uasset create mode 100644 EndlessVendetta/Content/__ExternalActors__/Levels/BountySystemTestLevel/D/C5/GO9F5BX1OG0G37W9TQNCJF.uasset create mode 100644 EndlessVendetta/Content/__ExternalActors__/Levels/BountySystemTestLevel/D/JF/YGMLISQYZUYCOFWGX11BA5.uasset create mode 100644 EndlessVendetta/Content/__ExternalActors__/Levels/BountySystemTestLevel/D/KB/OJ5NYYQG4LT79W8I5I6MS3.uasset create mode 100644 EndlessVendetta/Content/__ExternalActors__/Levels/BountySystemTestLevel/E/13/WANY5DUXOHAN9B8VO419ZD.uasset create mode 100644 EndlessVendetta/Content/__ExternalActors__/Levels/BountySystemTestLevel/E/72/2Q6FTG9QBV70Q6RY0KMH00.uasset create mode 100644 EndlessVendetta/Content/__ExternalActors__/Levels/BountySystemTestLevel/E/C9/PUEF3SDZX6YW93741SQAXO.uasset create mode 100644 EndlessVendetta/Content/__ExternalActors__/Levels/BountySystemTestLevel/E/F1/UO65QKXRP70QKOKHZSMZ1F.uasset create mode 100644 EndlessVendetta/Content/__ExternalActors__/Levels/BountySystemTestLevel/E/MX/T78JL0KEIV77Y3QP6GYB54.uasset create mode 100644 EndlessVendetta/Content/__ExternalActors__/Levels/BountySystemTestLevel/E/XX/PPC77XHOJNZW9PWV5OHH00.uasset create mode 100644 EndlessVendetta/Content/__ExternalObjects__/Levels/BountySystemTestLevel/0/TQ/3ACFHBDWFABKU596RXRO53.uasset create mode 100644 EndlessVendetta/Content/__ExternalObjects__/Levels/BountySystemTestLevel/1/30/W9Z34RUFOXLO8DC8TGLS52.uasset create mode 100644 EndlessVendetta/Content/__ExternalObjects__/Levels/BountySystemTestLevel/3/VN/8BVAC6SV0C7HY7NQZUMR3A.uasset create mode 100644 EndlessVendetta/Content/__ExternalObjects__/Levels/BountySystemTestLevel/4/O7/YR3DRO0R6AREA4XTW0JVGN.uasset create mode 100644 EndlessVendetta/Content/__ExternalObjects__/Levels/BountySystemTestLevel/4/OR/RK9JDE40KKJZQWFMFL26I5.uasset create mode 100644 EndlessVendetta/Content/__ExternalObjects__/Levels/BountySystemTestLevel/5/3P/SF481C8C6IO4CAHI6873XE.uasset create mode 100644 EndlessVendetta/Content/__ExternalObjects__/Levels/BountySystemTestLevel/7/IO/6Y51GE24EVFOHXCG615BY1.uasset create mode 100644 EndlessVendetta/Content/__ExternalObjects__/Levels/BountySystemTestLevel/D/WD/LGTPJJO55ED5H60IZ3025H.uasset diff --git a/EndlessVendetta/.idea/.idea.EndlessVendetta/.idea/.gitignore b/EndlessVendetta/.idea/.idea.EndlessVendetta/.idea/.gitignore new file mode 100644 index 00000000..f4076847 --- /dev/null +++ b/EndlessVendetta/.idea/.idea.EndlessVendetta/.idea/.gitignore @@ -0,0 +1,13 @@ +# Default ignored files +/shelf/ +/workspace.xml +# Rider ignored files +/projectSettingsUpdater.xml +/contentModel.xml +/.idea.EndlessVendetta.iml +/modules.xml +# Editor-based HTTP Client requests +/httpRequests/ +# Datasource local storage ignored files +/dataSources/ +/dataSources.local.xml diff --git a/EndlessVendetta/.idea/.idea.EndlessVendetta/.idea/encodings.xml b/EndlessVendetta/.idea/.idea.EndlessVendetta/.idea/encodings.xml new file mode 100644 index 00000000..df87cf95 --- /dev/null +++ b/EndlessVendetta/.idea/.idea.EndlessVendetta/.idea/encodings.xml @@ -0,0 +1,4 @@ + + + + \ No newline at end of file diff --git a/EndlessVendetta/.idea/.idea.EndlessVendetta/.idea/indexLayout.xml b/EndlessVendetta/.idea/.idea.EndlessVendetta/.idea/indexLayout.xml new file mode 100644 index 00000000..7b08163c --- /dev/null +++ b/EndlessVendetta/.idea/.idea.EndlessVendetta/.idea/indexLayout.xml @@ -0,0 +1,8 @@ + + + + + + + + \ No newline at end of file diff --git a/EndlessVendetta/.idea/.idea.EndlessVendetta/.idea/vcs.xml b/EndlessVendetta/.idea/.idea.EndlessVendetta/.idea/vcs.xml new file mode 100644 index 00000000..6c0b8635 --- /dev/null +++ b/EndlessVendetta/.idea/.idea.EndlessVendetta/.idea/vcs.xml @@ -0,0 +1,6 @@ + + + + + + \ No newline at end of file diff --git a/EndlessVendetta/Content/Levels/BountySystemTestLevel.umap b/EndlessVendetta/Content/Levels/BountySystemTestLevel.umap new file mode 100644 index 00000000..d3a27dd4 --- /dev/null +++ b/EndlessVendetta/Content/Levels/BountySystemTestLevel.umap @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:08b2531ae6806a5368e1a7a237d570a505db2ebeacac6f84152ce3d5578eb2ba +size 19390 diff --git a/EndlessVendetta/Content/StarterContent/Architecture/Floor_400x400.uasset b/EndlessVendetta/Content/StarterContent/Architecture/Floor_400x400.uasset index d7e5048f..e3a82355 100644 --- a/EndlessVendetta/Content/StarterContent/Architecture/Floor_400x400.uasset +++ b/EndlessVendetta/Content/StarterContent/Architecture/Floor_400x400.uasset @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:4affdcf4a4ad958c59cf0f89fc2b9cd113305262e46a5221a577ae9b2fa83055 -size 14831 +oid sha256:c37220dc1a6682fd8e949470980677a49dab396cf3cf2b7c66e37adb26f36006 +size 14829 diff --git a/EndlessVendetta/Content/__ExternalActors__/Levels/BountySystemTestLevel/0/35/GNWDM49ITFAL99MAPU63KW.uasset b/EndlessVendetta/Content/__ExternalActors__/Levels/BountySystemTestLevel/0/35/GNWDM49ITFAL99MAPU63KW.uasset new file mode 100644 index 00000000..f3727df6 --- /dev/null +++ b/EndlessVendetta/Content/__ExternalActors__/Levels/BountySystemTestLevel/0/35/GNWDM49ITFAL99MAPU63KW.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b1e97718185deed3628398f359d1a192db85830f3c92ee0a48d5b6f72ed3aa27 +size 4752 diff --git a/EndlessVendetta/Content/__ExternalActors__/Levels/BountySystemTestLevel/0/9Q/BGN44FCVKAUBI74L0PVJFH.uasset b/EndlessVendetta/Content/__ExternalActors__/Levels/BountySystemTestLevel/0/9Q/BGN44FCVKAUBI74L0PVJFH.uasset new file mode 100644 index 00000000..2be1cdc9 --- /dev/null +++ b/EndlessVendetta/Content/__ExternalActors__/Levels/BountySystemTestLevel/0/9Q/BGN44FCVKAUBI74L0PVJFH.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:71b64dfa91b49a183aa417117f119b337f29d42bce45289965db69b32b76978c +size 4596 diff --git a/EndlessVendetta/Content/__ExternalActors__/Levels/BountySystemTestLevel/0/N7/I6SI61JAJULQZ8KSYNC7V4.uasset b/EndlessVendetta/Content/__ExternalActors__/Levels/BountySystemTestLevel/0/N7/I6SI61JAJULQZ8KSYNC7V4.uasset new file mode 100644 index 00000000..4e23e931 --- /dev/null +++ b/EndlessVendetta/Content/__ExternalActors__/Levels/BountySystemTestLevel/0/N7/I6SI61JAJULQZ8KSYNC7V4.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:9cecec1b3f8ce3dfec6c2709e1418978cd5d719c1062ad5e37f6680e8871fe4e +size 4775 diff --git a/EndlessVendetta/Content/__ExternalActors__/Levels/BountySystemTestLevel/1/OG/60Y1DLNNKXGJ816DWXWR4K.uasset b/EndlessVendetta/Content/__ExternalActors__/Levels/BountySystemTestLevel/1/OG/60Y1DLNNKXGJ816DWXWR4K.uasset new file mode 100644 index 00000000..8a4237f0 --- /dev/null +++ b/EndlessVendetta/Content/__ExternalActors__/Levels/BountySystemTestLevel/1/OG/60Y1DLNNKXGJ816DWXWR4K.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:36e178d04426aa3e95de5fe1aa9e1aca57e8251e9923add81957248992e85833 +size 4773 diff --git a/EndlessVendetta/Content/__ExternalActors__/Levels/BountySystemTestLevel/1/WB/Q6U5CZJDM49ZZNLD2B3UZ4.uasset b/EndlessVendetta/Content/__ExternalActors__/Levels/BountySystemTestLevel/1/WB/Q6U5CZJDM49ZZNLD2B3UZ4.uasset new file mode 100644 index 00000000..df4a45a5 --- /dev/null +++ b/EndlessVendetta/Content/__ExternalActors__/Levels/BountySystemTestLevel/1/WB/Q6U5CZJDM49ZZNLD2B3UZ4.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:eeef04e445c50c3e53e213f3153ec535b36bc6397fa99e0bc3b0802ed820a196 +size 4498 diff --git a/EndlessVendetta/Content/__ExternalActors__/Levels/BountySystemTestLevel/2/0X/FHOYQRCBJ9TSY34PR9YG9K.uasset b/EndlessVendetta/Content/__ExternalActors__/Levels/BountySystemTestLevel/2/0X/FHOYQRCBJ9TSY34PR9YG9K.uasset new file mode 100644 index 00000000..ec892978 --- /dev/null +++ b/EndlessVendetta/Content/__ExternalActors__/Levels/BountySystemTestLevel/2/0X/FHOYQRCBJ9TSY34PR9YG9K.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:7a8341222c00795e6c7a8d378f249f3575589539229c271519348fd72d9896b7 +size 4019 diff --git a/EndlessVendetta/Content/__ExternalActors__/Levels/BountySystemTestLevel/2/EG/J1DWWT3IWLXFAZ4ST6V4ZS.uasset b/EndlessVendetta/Content/__ExternalActors__/Levels/BountySystemTestLevel/2/EG/J1DWWT3IWLXFAZ4ST6V4ZS.uasset new file mode 100644 index 00000000..909d830d --- /dev/null +++ b/EndlessVendetta/Content/__ExternalActors__/Levels/BountySystemTestLevel/2/EG/J1DWWT3IWLXFAZ4ST6V4ZS.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:74b0fa5e10f6d25fdcd091a4754ae28353053bb66e7f2480f5ab160846bf4be1 +size 4594 diff --git a/EndlessVendetta/Content/__ExternalActors__/Levels/BountySystemTestLevel/2/KW/P7HO2KS2H3F9KY2UWEMFSW.uasset b/EndlessVendetta/Content/__ExternalActors__/Levels/BountySystemTestLevel/2/KW/P7HO2KS2H3F9KY2UWEMFSW.uasset new file mode 100644 index 00000000..aa92c9a4 --- /dev/null +++ b/EndlessVendetta/Content/__ExternalActors__/Levels/BountySystemTestLevel/2/KW/P7HO2KS2H3F9KY2UWEMFSW.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:5df5c017c3ae8e66034b98e7bda11c5539ace60a7b6ebca0c5d2df1e7df327f8 +size 4752 diff --git a/EndlessVendetta/Content/__ExternalActors__/Levels/BountySystemTestLevel/2/OE/7WS9WIEXMH5U64C0ZXVHDG.uasset b/EndlessVendetta/Content/__ExternalActors__/Levels/BountySystemTestLevel/2/OE/7WS9WIEXMH5U64C0ZXVHDG.uasset new file mode 100644 index 00000000..3d6f1823 --- /dev/null +++ b/EndlessVendetta/Content/__ExternalActors__/Levels/BountySystemTestLevel/2/OE/7WS9WIEXMH5U64C0ZXVHDG.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a8802432593f8e5db500b17aaddd8ffa6667f8428a43921e74020a41ee792df1 +size 4775 diff --git a/EndlessVendetta/Content/__ExternalActors__/Levels/BountySystemTestLevel/2/U9/CEJXWHF4HZOWAJH0Z9DVXF.uasset b/EndlessVendetta/Content/__ExternalActors__/Levels/BountySystemTestLevel/2/U9/CEJXWHF4HZOWAJH0Z9DVXF.uasset new file mode 100644 index 00000000..4f82a862 --- /dev/null +++ b/EndlessVendetta/Content/__ExternalActors__/Levels/BountySystemTestLevel/2/U9/CEJXWHF4HZOWAJH0Z9DVXF.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:6a30219e61435d2a0b638f57ad1a724caa4ce8c5de97940443f43c630160d8b3 +size 4847 diff --git a/EndlessVendetta/Content/__ExternalActors__/Levels/BountySystemTestLevel/2/UJ/OE9CR46TEW4L20164ZOYX9.uasset b/EndlessVendetta/Content/__ExternalActors__/Levels/BountySystemTestLevel/2/UJ/OE9CR46TEW4L20164ZOYX9.uasset new file mode 100644 index 00000000..97ecaea3 --- /dev/null +++ b/EndlessVendetta/Content/__ExternalActors__/Levels/BountySystemTestLevel/2/UJ/OE9CR46TEW4L20164ZOYX9.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:59a498180c2d57f773d606e7cfbafce5622f5bc5769bc044c2bb205c49d7a7b0 +size 4880 diff --git a/EndlessVendetta/Content/__ExternalActors__/Levels/BountySystemTestLevel/3/0N/O2LCQ39RFAI1HX77K8TT52.uasset b/EndlessVendetta/Content/__ExternalActors__/Levels/BountySystemTestLevel/3/0N/O2LCQ39RFAI1HX77K8TT52.uasset new file mode 100644 index 00000000..3e4143f7 --- /dev/null +++ b/EndlessVendetta/Content/__ExternalActors__/Levels/BountySystemTestLevel/3/0N/O2LCQ39RFAI1HX77K8TT52.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:83620ce3f94dd5aabb7cd42c1215c3372d8b4c42b08f9229f9ceeb79344fd96c +size 4752 diff --git a/EndlessVendetta/Content/__ExternalActors__/Levels/BountySystemTestLevel/3/4F/8S26VJON8I4V3TGO6PH8SW.uasset b/EndlessVendetta/Content/__ExternalActors__/Levels/BountySystemTestLevel/3/4F/8S26VJON8I4V3TGO6PH8SW.uasset new file mode 100644 index 00000000..5fc33af2 --- /dev/null +++ b/EndlessVendetta/Content/__ExternalActors__/Levels/BountySystemTestLevel/3/4F/8S26VJON8I4V3TGO6PH8SW.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:44087fa6b7f3de690d493409baa7da7049eb85822bc6cb06b41cdb284e994359 +size 4743 diff --git a/EndlessVendetta/Content/__ExternalActors__/Levels/BountySystemTestLevel/3/MG/Q97N1TH047UOIJQK4OEQ5P.uasset b/EndlessVendetta/Content/__ExternalActors__/Levels/BountySystemTestLevel/3/MG/Q97N1TH047UOIJQK4OEQ5P.uasset new file mode 100644 index 00000000..5e38b19d --- /dev/null +++ b/EndlessVendetta/Content/__ExternalActors__/Levels/BountySystemTestLevel/3/MG/Q97N1TH047UOIJQK4OEQ5P.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:264292b2b52f10f2e57869e2d40f2d2fa458574d144e69142b943d8c66a0f61a +size 4773 diff --git a/EndlessVendetta/Content/__ExternalActors__/Levels/BountySystemTestLevel/3/XR/86ZFQ3D80QB5U0HXZMZRGT.uasset b/EndlessVendetta/Content/__ExternalActors__/Levels/BountySystemTestLevel/3/XR/86ZFQ3D80QB5U0HXZMZRGT.uasset new file mode 100644 index 00000000..80b9f64c --- /dev/null +++ b/EndlessVendetta/Content/__ExternalActors__/Levels/BountySystemTestLevel/3/XR/86ZFQ3D80QB5U0HXZMZRGT.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e2d7bedbfe607cdf91529ac872ca1ba931b49221223dbce71fdd6aaf148ab02d +size 4715 diff --git a/EndlessVendetta/Content/__ExternalActors__/Levels/BountySystemTestLevel/4/80/Z3VOE7HM87EM9Q66BHOTNC.uasset b/EndlessVendetta/Content/__ExternalActors__/Levels/BountySystemTestLevel/4/80/Z3VOE7HM87EM9Q66BHOTNC.uasset new file mode 100644 index 00000000..8e2c42c0 --- /dev/null +++ b/EndlessVendetta/Content/__ExternalActors__/Levels/BountySystemTestLevel/4/80/Z3VOE7HM87EM9Q66BHOTNC.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:49450719bb5f72be9c82cb53ac0b7ee22a0935eefc31961557398b967ae48b8e +size 4773 diff --git a/EndlessVendetta/Content/__ExternalActors__/Levels/BountySystemTestLevel/4/G9/R30GSAVEHD5O8OMLN42SQH.uasset b/EndlessVendetta/Content/__ExternalActors__/Levels/BountySystemTestLevel/4/G9/R30GSAVEHD5O8OMLN42SQH.uasset new file mode 100644 index 00000000..159ef7c7 --- /dev/null +++ b/EndlessVendetta/Content/__ExternalActors__/Levels/BountySystemTestLevel/4/G9/R30GSAVEHD5O8OMLN42SQH.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:7fa8d449239d03325948b2524a156b1fccf27c1bca0d4307cc0bef8e8a35f661 +size 4773 diff --git a/EndlessVendetta/Content/__ExternalActors__/Levels/BountySystemTestLevel/4/LR/K1RHQ8GO0CIBCOJ2CQ7VBC.uasset b/EndlessVendetta/Content/__ExternalActors__/Levels/BountySystemTestLevel/4/LR/K1RHQ8GO0CIBCOJ2CQ7VBC.uasset new file mode 100644 index 00000000..f91d353e --- /dev/null +++ b/EndlessVendetta/Content/__ExternalActors__/Levels/BountySystemTestLevel/4/LR/K1RHQ8GO0CIBCOJ2CQ7VBC.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:6a03bfafbbabd6bc905cf9ac7b04975e41a14708842800cfa5f493f6891399e2 +size 4715 diff --git a/EndlessVendetta/Content/__ExternalActors__/Levels/BountySystemTestLevel/4/ML/607V0BD8JKYMIZZNQFWT2P.uasset b/EndlessVendetta/Content/__ExternalActors__/Levels/BountySystemTestLevel/4/ML/607V0BD8JKYMIZZNQFWT2P.uasset new file mode 100644 index 00000000..e9541db7 --- /dev/null +++ b/EndlessVendetta/Content/__ExternalActors__/Levels/BountySystemTestLevel/4/ML/607V0BD8JKYMIZZNQFWT2P.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:4a6ed00a7fdedef013163bc3c365e5898c483ad349d5edc918ad6f8acd6d6103 +size 4486 diff --git a/EndlessVendetta/Content/__ExternalActors__/Levels/BountySystemTestLevel/4/TC/55207AXCWRBDEIQMVAL73E.uasset b/EndlessVendetta/Content/__ExternalActors__/Levels/BountySystemTestLevel/4/TC/55207AXCWRBDEIQMVAL73E.uasset new file mode 100644 index 00000000..24f7e651 --- /dev/null +++ b/EndlessVendetta/Content/__ExternalActors__/Levels/BountySystemTestLevel/4/TC/55207AXCWRBDEIQMVAL73E.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e3df538e65dcdfe19ea78c3737258e6af6313fe93102e1678236b347c48b71d6 +size 2502 diff --git a/EndlessVendetta/Content/__ExternalActors__/Levels/BountySystemTestLevel/4/Y1/CVW9DVNZATUQ7W422U0IDZ.uasset b/EndlessVendetta/Content/__ExternalActors__/Levels/BountySystemTestLevel/4/Y1/CVW9DVNZATUQ7W422U0IDZ.uasset new file mode 100644 index 00000000..b8472760 --- /dev/null +++ b/EndlessVendetta/Content/__ExternalActors__/Levels/BountySystemTestLevel/4/Y1/CVW9DVNZATUQ7W422U0IDZ.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a8c38b64a2707875c03514fb65aa2910471978ff1f57d33257880a273596834a +size 3651 diff --git a/EndlessVendetta/Content/__ExternalActors__/Levels/BountySystemTestLevel/5/0F/NWBXM8ZFAWQ9K0C9AYA4E9.uasset b/EndlessVendetta/Content/__ExternalActors__/Levels/BountySystemTestLevel/5/0F/NWBXM8ZFAWQ9K0C9AYA4E9.uasset new file mode 100644 index 00000000..379b934d --- /dev/null +++ b/EndlessVendetta/Content/__ExternalActors__/Levels/BountySystemTestLevel/5/0F/NWBXM8ZFAWQ9K0C9AYA4E9.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:0513a2fdf9c45342e7156ae7e467334b779cad0408d1cdfb41b7068b07db048f +size 4601 diff --git a/EndlessVendetta/Content/__ExternalActors__/Levels/BountySystemTestLevel/5/W2/NP5W2WCJMUV9NOZ8VBFC5X.uasset b/EndlessVendetta/Content/__ExternalActors__/Levels/BountySystemTestLevel/5/W2/NP5W2WCJMUV9NOZ8VBFC5X.uasset new file mode 100644 index 00000000..25dccee5 --- /dev/null +++ b/EndlessVendetta/Content/__ExternalActors__/Levels/BountySystemTestLevel/5/W2/NP5W2WCJMUV9NOZ8VBFC5X.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:41b16314ef8a65243eb88ed7856756d019db3717683cff520b717765f6e4d2af +size 4773 diff --git a/EndlessVendetta/Content/__ExternalActors__/Levels/BountySystemTestLevel/6/1E/Z18X6DQ1RLUHH8APD8MK7W.uasset b/EndlessVendetta/Content/__ExternalActors__/Levels/BountySystemTestLevel/6/1E/Z18X6DQ1RLUHH8APD8MK7W.uasset new file mode 100644 index 00000000..74674679 --- /dev/null +++ b/EndlessVendetta/Content/__ExternalActors__/Levels/BountySystemTestLevel/6/1E/Z18X6DQ1RLUHH8APD8MK7W.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:5719a0f764ec0381598f793f7caf06b0e81bfe62774ee18631cc96fa03ea6dc4 +size 4752 diff --git a/EndlessVendetta/Content/__ExternalActors__/Levels/BountySystemTestLevel/6/9B/3CEIJDHVWAVHQMIEAN91R7.uasset b/EndlessVendetta/Content/__ExternalActors__/Levels/BountySystemTestLevel/6/9B/3CEIJDHVWAVHQMIEAN91R7.uasset new file mode 100644 index 00000000..bb21c666 --- /dev/null +++ b/EndlessVendetta/Content/__ExternalActors__/Levels/BountySystemTestLevel/6/9B/3CEIJDHVWAVHQMIEAN91R7.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:78294ec7406cd39bc8930d0f73db1aefca736d05e6ddf7d960433cf2740dfcd5 +size 4847 diff --git a/EndlessVendetta/Content/__ExternalActors__/Levels/BountySystemTestLevel/6/AF/I5Q6J2LIS5W4WR5VI62AUG.uasset b/EndlessVendetta/Content/__ExternalActors__/Levels/BountySystemTestLevel/6/AF/I5Q6J2LIS5W4WR5VI62AUG.uasset new file mode 100644 index 00000000..229ef4fb --- /dev/null +++ b/EndlessVendetta/Content/__ExternalActors__/Levels/BountySystemTestLevel/6/AF/I5Q6J2LIS5W4WR5VI62AUG.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d233615b6d9a06acd2dbe3653f5b456e1be7556ed8a62284ee23ec1c7cfd1f31 +size 4713 diff --git a/EndlessVendetta/Content/__ExternalActors__/Levels/BountySystemTestLevel/6/AK/W7ZHA42P7DRNS3O3QN8BSU.uasset b/EndlessVendetta/Content/__ExternalActors__/Levels/BountySystemTestLevel/6/AK/W7ZHA42P7DRNS3O3QN8BSU.uasset new file mode 100644 index 00000000..616c1f84 --- /dev/null +++ b/EndlessVendetta/Content/__ExternalActors__/Levels/BountySystemTestLevel/6/AK/W7ZHA42P7DRNS3O3QN8BSU.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a035b11357b9e0e22046672f13d5723a4a1c57a2d6dc701134594951a7ad2fa0 +size 4752 diff --git a/EndlessVendetta/Content/__ExternalActors__/Levels/BountySystemTestLevel/6/PD/CPMXMJW3VW3GEW6AKWR5GJ.uasset b/EndlessVendetta/Content/__ExternalActors__/Levels/BountySystemTestLevel/6/PD/CPMXMJW3VW3GEW6AKWR5GJ.uasset new file mode 100644 index 00000000..79eb40aa --- /dev/null +++ b/EndlessVendetta/Content/__ExternalActors__/Levels/BountySystemTestLevel/6/PD/CPMXMJW3VW3GEW6AKWR5GJ.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:9520e2c292dd45a4d34d86b5bc5bbf7b74385ecd62a5408085f6d8cdd673a980 +size 4661 diff --git a/EndlessVendetta/Content/__ExternalActors__/Levels/BountySystemTestLevel/7/55/DJOXM0EW53J6H228XSA0N1.uasset b/EndlessVendetta/Content/__ExternalActors__/Levels/BountySystemTestLevel/7/55/DJOXM0EW53J6H228XSA0N1.uasset new file mode 100644 index 00000000..8ffd9a97 --- /dev/null +++ b/EndlessVendetta/Content/__ExternalActors__/Levels/BountySystemTestLevel/7/55/DJOXM0EW53J6H228XSA0N1.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:102d2e672a9a7bb71d03b9b6a5516bf2c2e114b107104589998f760e0e22c11f +size 4752 diff --git a/EndlessVendetta/Content/__ExternalActors__/Levels/BountySystemTestLevel/7/6H/PL136XXOA5LKR53PXV3BUN.uasset b/EndlessVendetta/Content/__ExternalActors__/Levels/BountySystemTestLevel/7/6H/PL136XXOA5LKR53PXV3BUN.uasset new file mode 100644 index 00000000..b394dfa9 --- /dev/null +++ b/EndlessVendetta/Content/__ExternalActors__/Levels/BountySystemTestLevel/7/6H/PL136XXOA5LKR53PXV3BUN.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:40a80e94c218ce2e5aa484dd715f5b7212a4d0f76eb2544bbbd37b2e00cc3ea2 +size 4846 diff --git a/EndlessVendetta/Content/__ExternalActors__/Levels/BountySystemTestLevel/7/HR/WN4SY5WWOIF8QI91SK7CTH.uasset b/EndlessVendetta/Content/__ExternalActors__/Levels/BountySystemTestLevel/7/HR/WN4SY5WWOIF8QI91SK7CTH.uasset new file mode 100644 index 00000000..5f303842 --- /dev/null +++ b/EndlessVendetta/Content/__ExternalActors__/Levels/BountySystemTestLevel/7/HR/WN4SY5WWOIF8QI91SK7CTH.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:228a818727a5d46b1bceba92eb75fc0138eaddec1aed7ac710bed1efd4e1d95c +size 2454 diff --git a/EndlessVendetta/Content/__ExternalActors__/Levels/BountySystemTestLevel/7/K9/0J1KOMY2RH63G5MV4DPJZ1.uasset b/EndlessVendetta/Content/__ExternalActors__/Levels/BountySystemTestLevel/7/K9/0J1KOMY2RH63G5MV4DPJZ1.uasset new file mode 100644 index 00000000..d1e79cf3 --- /dev/null +++ b/EndlessVendetta/Content/__ExternalActors__/Levels/BountySystemTestLevel/7/K9/0J1KOMY2RH63G5MV4DPJZ1.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b74d53dc3396b7bf64aec6498eeb0d2b0847bf474f51d0207dc837b7454d1aea +size 4773 diff --git a/EndlessVendetta/Content/__ExternalActors__/Levels/BountySystemTestLevel/8/9I/F6ZJ66HW9CDSFFSIQKWXDI.uasset b/EndlessVendetta/Content/__ExternalActors__/Levels/BountySystemTestLevel/8/9I/F6ZJ66HW9CDSFFSIQKWXDI.uasset new file mode 100644 index 00000000..df741df0 --- /dev/null +++ b/EndlessVendetta/Content/__ExternalActors__/Levels/BountySystemTestLevel/8/9I/F6ZJ66HW9CDSFFSIQKWXDI.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:76df75214f9ae0ccdfdb7fa0a947e7c60b074df3bddec657df6394504e27fa87 +size 4599 diff --git a/EndlessVendetta/Content/__ExternalActors__/Levels/BountySystemTestLevel/8/E9/H5X3629C3DOMFX077AZFMW.uasset b/EndlessVendetta/Content/__ExternalActors__/Levels/BountySystemTestLevel/8/E9/H5X3629C3DOMFX077AZFMW.uasset new file mode 100644 index 00000000..2ce669ec --- /dev/null +++ b/EndlessVendetta/Content/__ExternalActors__/Levels/BountySystemTestLevel/8/E9/H5X3629C3DOMFX077AZFMW.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:c13c418a6e5ef1f3fb2f2cbe7e3fc3e0dffb84f107d0febfd399d677108875da +size 4710 diff --git a/EndlessVendetta/Content/__ExternalActors__/Levels/BountySystemTestLevel/8/IE/ULZSRX1AMEI6J5HUXG0SSV.uasset b/EndlessVendetta/Content/__ExternalActors__/Levels/BountySystemTestLevel/8/IE/ULZSRX1AMEI6J5HUXG0SSV.uasset new file mode 100644 index 00000000..449033ee --- /dev/null +++ b/EndlessVendetta/Content/__ExternalActors__/Levels/BountySystemTestLevel/8/IE/ULZSRX1AMEI6J5HUXG0SSV.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d9a649a73a9849dd0b38d19f50dc89ab1258982c07b784970b78d34d9100e66c +size 4752 diff --git a/EndlessVendetta/Content/__ExternalActors__/Levels/BountySystemTestLevel/8/IM/FJ6HRZ9HXPG7XMNJXX9XE0.uasset b/EndlessVendetta/Content/__ExternalActors__/Levels/BountySystemTestLevel/8/IM/FJ6HRZ9HXPG7XMNJXX9XE0.uasset new file mode 100644 index 00000000..fd18ac04 --- /dev/null +++ b/EndlessVendetta/Content/__ExternalActors__/Levels/BountySystemTestLevel/8/IM/FJ6HRZ9HXPG7XMNJXX9XE0.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:6a6d9636f6401f5b548255d956ca34f5c159817691951cfc805160a7403ea270 +size 4710 diff --git a/EndlessVendetta/Content/__ExternalActors__/Levels/BountySystemTestLevel/8/OV/F9IKRV0GCX552V3AOWFU4C.uasset b/EndlessVendetta/Content/__ExternalActors__/Levels/BountySystemTestLevel/8/OV/F9IKRV0GCX552V3AOWFU4C.uasset new file mode 100644 index 00000000..42665482 --- /dev/null +++ b/EndlessVendetta/Content/__ExternalActors__/Levels/BountySystemTestLevel/8/OV/F9IKRV0GCX552V3AOWFU4C.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:4d4c47a3b5b5623450b037ad152de90a2d548e5d38942ffcb61f9ba415655032 +size 4775 diff --git a/EndlessVendetta/Content/__ExternalActors__/Levels/BountySystemTestLevel/8/TB/7E3XSFVKXJH71BWPQK7DE7.uasset b/EndlessVendetta/Content/__ExternalActors__/Levels/BountySystemTestLevel/8/TB/7E3XSFVKXJH71BWPQK7DE7.uasset new file mode 100644 index 00000000..d161de91 --- /dev/null +++ b/EndlessVendetta/Content/__ExternalActors__/Levels/BountySystemTestLevel/8/TB/7E3XSFVKXJH71BWPQK7DE7.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:851b94848f43a4cd6bad00686a04305d4fbc9b6cb68b346f7aa78bc111d8dce4 +size 3657 diff --git a/EndlessVendetta/Content/__ExternalActors__/Levels/BountySystemTestLevel/8/TM/XCQ9IRO5QUOT8DURISJJX0.uasset b/EndlessVendetta/Content/__ExternalActors__/Levels/BountySystemTestLevel/8/TM/XCQ9IRO5QUOT8DURISJJX0.uasset new file mode 100644 index 00000000..3590e68f --- /dev/null +++ b/EndlessVendetta/Content/__ExternalActors__/Levels/BountySystemTestLevel/8/TM/XCQ9IRO5QUOT8DURISJJX0.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:8c35efd60e7d360558b5189aa81060ef9af187ea1153c54565b3437d31df98f0 +size 4598 diff --git a/EndlessVendetta/Content/__ExternalActors__/Levels/BountySystemTestLevel/9/22/540LIYPKX7RW44ULUEHGHE.uasset b/EndlessVendetta/Content/__ExternalActors__/Levels/BountySystemTestLevel/9/22/540LIYPKX7RW44ULUEHGHE.uasset new file mode 100644 index 00000000..376c9810 --- /dev/null +++ b/EndlessVendetta/Content/__ExternalActors__/Levels/BountySystemTestLevel/9/22/540LIYPKX7RW44ULUEHGHE.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:5b7f296da12963ba4910485a6492c067dc454e77a28dadaff20d44d697059ae0 +size 4598 diff --git a/EndlessVendetta/Content/__ExternalActors__/Levels/BountySystemTestLevel/9/J0/NAURUIYIL4FWMCLRWUDE1X.uasset b/EndlessVendetta/Content/__ExternalActors__/Levels/BountySystemTestLevel/9/J0/NAURUIYIL4FWMCLRWUDE1X.uasset new file mode 100644 index 00000000..8fbae906 --- /dev/null +++ b/EndlessVendetta/Content/__ExternalActors__/Levels/BountySystemTestLevel/9/J0/NAURUIYIL4FWMCLRWUDE1X.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:02ae5a0f6f1b670c8cd9259880fd62bed9db13b75e30109a8eea4ffe2c3bca28 +size 5371 diff --git a/EndlessVendetta/Content/__ExternalActors__/Levels/BountySystemTestLevel/A/F8/VBWZ0ZW0LJXN6633VM36TB.uasset b/EndlessVendetta/Content/__ExternalActors__/Levels/BountySystemTestLevel/A/F8/VBWZ0ZW0LJXN6633VM36TB.uasset new file mode 100644 index 00000000..e04c23c3 --- /dev/null +++ b/EndlessVendetta/Content/__ExternalActors__/Levels/BountySystemTestLevel/A/F8/VBWZ0ZW0LJXN6633VM36TB.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:87c0c75e225c71ba0ea0a65874e5b863944c41e02bba7d2af2fde1a84aadc72d +size 4712 diff --git a/EndlessVendetta/Content/__ExternalActors__/Levels/BountySystemTestLevel/A/I4/GYPPACX2Q6XUN509PQXXUB.uasset b/EndlessVendetta/Content/__ExternalActors__/Levels/BountySystemTestLevel/A/I4/GYPPACX2Q6XUN509PQXXUB.uasset new file mode 100644 index 00000000..f6c04b0c --- /dev/null +++ b/EndlessVendetta/Content/__ExternalActors__/Levels/BountySystemTestLevel/A/I4/GYPPACX2Q6XUN509PQXXUB.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:6321bd12e6718e0dc77b2d83ab64ce337d9ccbae036c04ffca4440bd2151a4a8 +size 4847 diff --git a/EndlessVendetta/Content/__ExternalActors__/Levels/BountySystemTestLevel/B/99/HIHVSRNPR1359HYG9VQ4S9.uasset b/EndlessVendetta/Content/__ExternalActors__/Levels/BountySystemTestLevel/B/99/HIHVSRNPR1359HYG9VQ4S9.uasset new file mode 100644 index 00000000..f6552999 --- /dev/null +++ b/EndlessVendetta/Content/__ExternalActors__/Levels/BountySystemTestLevel/B/99/HIHVSRNPR1359HYG9VQ4S9.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:86824e8bff939dab04f169c970d8516dbbc8c1462b531b9d0d385e6ee646d351 +size 4713 diff --git a/EndlessVendetta/Content/__ExternalActors__/Levels/BountySystemTestLevel/B/M4/WDZ38E5FQFNLQ3W08AD74K.uasset b/EndlessVendetta/Content/__ExternalActors__/Levels/BountySystemTestLevel/B/M4/WDZ38E5FQFNLQ3W08AD74K.uasset new file mode 100644 index 00000000..4820ed56 --- /dev/null +++ b/EndlessVendetta/Content/__ExternalActors__/Levels/BountySystemTestLevel/B/M4/WDZ38E5FQFNLQ3W08AD74K.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:10e9c8b331c7e39000e9e1be1e8497cf20e21321591f282fbb088f9c39d03291 +size 4750 diff --git a/EndlessVendetta/Content/__ExternalActors__/Levels/BountySystemTestLevel/C/C8/V93JCJG5GNPG3OANIVPEU2.uasset b/EndlessVendetta/Content/__ExternalActors__/Levels/BountySystemTestLevel/C/C8/V93JCJG5GNPG3OANIVPEU2.uasset new file mode 100644 index 00000000..09957a2e --- /dev/null +++ b/EndlessVendetta/Content/__ExternalActors__/Levels/BountySystemTestLevel/C/C8/V93JCJG5GNPG3OANIVPEU2.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:62e247610e993dae8a228e98be8fd5d5b7d0cae3470f00274b7b4edf7c90c035 +size 4653 diff --git a/EndlessVendetta/Content/__ExternalActors__/Levels/BountySystemTestLevel/C/IY/1DYGNRS7MUF1969G9AKFEQ.uasset b/EndlessVendetta/Content/__ExternalActors__/Levels/BountySystemTestLevel/C/IY/1DYGNRS7MUF1969G9AKFEQ.uasset new file mode 100644 index 00000000..be7af589 --- /dev/null +++ b/EndlessVendetta/Content/__ExternalActors__/Levels/BountySystemTestLevel/C/IY/1DYGNRS7MUF1969G9AKFEQ.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:426622e0d16acd8195c950af262884c25b5878785435d57188a8f0067194c447 +size 4713 diff --git a/EndlessVendetta/Content/__ExternalActors__/Levels/BountySystemTestLevel/C/R8/1FYI4WVBKRV7XPNB9SF85N.uasset b/EndlessVendetta/Content/__ExternalActors__/Levels/BountySystemTestLevel/C/R8/1FYI4WVBKRV7XPNB9SF85N.uasset new file mode 100644 index 00000000..2997e54c --- /dev/null +++ b/EndlessVendetta/Content/__ExternalActors__/Levels/BountySystemTestLevel/C/R8/1FYI4WVBKRV7XPNB9SF85N.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b38458ec107ff72a0770fe43aeaab2f8b9f5e93c0b6ff9ae3efbca63dc251b3a +size 4775 diff --git a/EndlessVendetta/Content/__ExternalActors__/Levels/BountySystemTestLevel/C/TJ/KML81PLR61JZQ25ZCRTOHM.uasset b/EndlessVendetta/Content/__ExternalActors__/Levels/BountySystemTestLevel/C/TJ/KML81PLR61JZQ25ZCRTOHM.uasset new file mode 100644 index 00000000..3c8f1a1c --- /dev/null +++ b/EndlessVendetta/Content/__ExternalActors__/Levels/BountySystemTestLevel/C/TJ/KML81PLR61JZQ25ZCRTOHM.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:825d2d3a4266fc8c9cb3caab90f332e327fb9a1d5ad4dcaecafc55cb41e30b92 +size 12506 diff --git a/EndlessVendetta/Content/__ExternalActors__/Levels/BountySystemTestLevel/C/X1/J1KYK53FD26XTDA5AYVCA5.uasset b/EndlessVendetta/Content/__ExternalActors__/Levels/BountySystemTestLevel/C/X1/J1KYK53FD26XTDA5AYVCA5.uasset new file mode 100644 index 00000000..a82f4d9e --- /dev/null +++ b/EndlessVendetta/Content/__ExternalActors__/Levels/BountySystemTestLevel/C/X1/J1KYK53FD26XTDA5AYVCA5.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:4e1f4dd6dad0f55fcc1c479d0cd59fcd1e2845f2276a65652e47169a636b31f5 +size 4715 diff --git a/EndlessVendetta/Content/__ExternalActors__/Levels/BountySystemTestLevel/D/C5/GO9F5BX1OG0G37W9TQNCJF.uasset b/EndlessVendetta/Content/__ExternalActors__/Levels/BountySystemTestLevel/D/C5/GO9F5BX1OG0G37W9TQNCJF.uasset new file mode 100644 index 00000000..2ac08f13 --- /dev/null +++ b/EndlessVendetta/Content/__ExternalActors__/Levels/BountySystemTestLevel/D/C5/GO9F5BX1OG0G37W9TQNCJF.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:cdb84f5781f4fd2c47400bb270d794a6d16ec858bf9af297471446d9620d75fd +size 3637 diff --git a/EndlessVendetta/Content/__ExternalActors__/Levels/BountySystemTestLevel/D/JF/YGMLISQYZUYCOFWGX11BA5.uasset b/EndlessVendetta/Content/__ExternalActors__/Levels/BountySystemTestLevel/D/JF/YGMLISQYZUYCOFWGX11BA5.uasset new file mode 100644 index 00000000..ffdb22d9 --- /dev/null +++ b/EndlessVendetta/Content/__ExternalActors__/Levels/BountySystemTestLevel/D/JF/YGMLISQYZUYCOFWGX11BA5.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b3a2799d8af52c79cbc5e178653d65bac68fde63e7fa18436ac0cbfbaffd04df +size 4752 diff --git a/EndlessVendetta/Content/__ExternalActors__/Levels/BountySystemTestLevel/D/KB/OJ5NYYQG4LT79W8I5I6MS3.uasset b/EndlessVendetta/Content/__ExternalActors__/Levels/BountySystemTestLevel/D/KB/OJ5NYYQG4LT79W8I5I6MS3.uasset new file mode 100644 index 00000000..03b63281 --- /dev/null +++ b/EndlessVendetta/Content/__ExternalActors__/Levels/BountySystemTestLevel/D/KB/OJ5NYYQG4LT79W8I5I6MS3.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ea74791fd8856cbebbe60ca5574563dea9998ae98cf3ea204d691c99e2193d0b +size 4750 diff --git a/EndlessVendetta/Content/__ExternalActors__/Levels/BountySystemTestLevel/E/13/WANY5DUXOHAN9B8VO419ZD.uasset b/EndlessVendetta/Content/__ExternalActors__/Levels/BountySystemTestLevel/E/13/WANY5DUXOHAN9B8VO419ZD.uasset new file mode 100644 index 00000000..070cfeaf --- /dev/null +++ b/EndlessVendetta/Content/__ExternalActors__/Levels/BountySystemTestLevel/E/13/WANY5DUXOHAN9B8VO419ZD.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:37a8f63c87e5e66bd83953c692b83605d10a046f85ede974f253cd50523bdab6 +size 5274 diff --git a/EndlessVendetta/Content/__ExternalActors__/Levels/BountySystemTestLevel/E/72/2Q6FTG9QBV70Q6RY0KMH00.uasset b/EndlessVendetta/Content/__ExternalActors__/Levels/BountySystemTestLevel/E/72/2Q6FTG9QBV70Q6RY0KMH00.uasset new file mode 100644 index 00000000..220c2524 --- /dev/null +++ b/EndlessVendetta/Content/__ExternalActors__/Levels/BountySystemTestLevel/E/72/2Q6FTG9QBV70Q6RY0KMH00.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:0b8255d19a25b2a422f2bc6bc5bf38f3f910b89f0701a8353d77d08d228d2c1f +size 4752 diff --git a/EndlessVendetta/Content/__ExternalActors__/Levels/BountySystemTestLevel/E/C9/PUEF3SDZX6YW93741SQAXO.uasset b/EndlessVendetta/Content/__ExternalActors__/Levels/BountySystemTestLevel/E/C9/PUEF3SDZX6YW93741SQAXO.uasset new file mode 100644 index 00000000..f8cdee67 --- /dev/null +++ b/EndlessVendetta/Content/__ExternalActors__/Levels/BountySystemTestLevel/E/C9/PUEF3SDZX6YW93741SQAXO.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:7f753a2468824b16930329099d1d086f24f83cd972c27c9538d6fbf1564f3473 +size 4601 diff --git a/EndlessVendetta/Content/__ExternalActors__/Levels/BountySystemTestLevel/E/F1/UO65QKXRP70QKOKHZSMZ1F.uasset b/EndlessVendetta/Content/__ExternalActors__/Levels/BountySystemTestLevel/E/F1/UO65QKXRP70QKOKHZSMZ1F.uasset new file mode 100644 index 00000000..40c2ae15 --- /dev/null +++ b/EndlessVendetta/Content/__ExternalActors__/Levels/BountySystemTestLevel/E/F1/UO65QKXRP70QKOKHZSMZ1F.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b7952a3fc61719f0b4a6ab11a7975136e58873cd15c51ccaf3de7f55ff27af84 +size 3866 diff --git a/EndlessVendetta/Content/__ExternalActors__/Levels/BountySystemTestLevel/E/MX/T78JL0KEIV77Y3QP6GYB54.uasset b/EndlessVendetta/Content/__ExternalActors__/Levels/BountySystemTestLevel/E/MX/T78JL0KEIV77Y3QP6GYB54.uasset new file mode 100644 index 00000000..f1f517bc --- /dev/null +++ b/EndlessVendetta/Content/__ExternalActors__/Levels/BountySystemTestLevel/E/MX/T78JL0KEIV77Y3QP6GYB54.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:09a9cf559b65797287c43acf8f41b8a709a0c7fa18f3295c14f4a6465cf06f6a +size 4601 diff --git a/EndlessVendetta/Content/__ExternalActors__/Levels/BountySystemTestLevel/E/XX/PPC77XHOJNZW9PWV5OHH00.uasset b/EndlessVendetta/Content/__ExternalActors__/Levels/BountySystemTestLevel/E/XX/PPC77XHOJNZW9PWV5OHH00.uasset new file mode 100644 index 00000000..44d364a0 --- /dev/null +++ b/EndlessVendetta/Content/__ExternalActors__/Levels/BountySystemTestLevel/E/XX/PPC77XHOJNZW9PWV5OHH00.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:1a7a355d2b9e10bd064b3f8d6a8e5989c3f5f61e7e601b95f418d179740baade +size 4715 diff --git a/EndlessVendetta/Content/__ExternalObjects__/Levels/BountySystemTestLevel/0/TQ/3ACFHBDWFABKU596RXRO53.uasset b/EndlessVendetta/Content/__ExternalObjects__/Levels/BountySystemTestLevel/0/TQ/3ACFHBDWFABKU596RXRO53.uasset new file mode 100644 index 00000000..052f4dbc --- /dev/null +++ b/EndlessVendetta/Content/__ExternalObjects__/Levels/BountySystemTestLevel/0/TQ/3ACFHBDWFABKU596RXRO53.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a79b1aa4df4ba710fb0c190153eca14aafc650f2283ab6f75fdef50ec8187457 +size 2266 diff --git a/EndlessVendetta/Content/__ExternalObjects__/Levels/BountySystemTestLevel/1/30/W9Z34RUFOXLO8DC8TGLS52.uasset b/EndlessVendetta/Content/__ExternalObjects__/Levels/BountySystemTestLevel/1/30/W9Z34RUFOXLO8DC8TGLS52.uasset new file mode 100644 index 00000000..fb35d4ae --- /dev/null +++ b/EndlessVendetta/Content/__ExternalObjects__/Levels/BountySystemTestLevel/1/30/W9Z34RUFOXLO8DC8TGLS52.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b9983df2ebcf1a8ea3b0984d5a69729548ac7b6e738d1bb05a4422a57087faf5 +size 2266 diff --git a/EndlessVendetta/Content/__ExternalObjects__/Levels/BountySystemTestLevel/3/VN/8BVAC6SV0C7HY7NQZUMR3A.uasset b/EndlessVendetta/Content/__ExternalObjects__/Levels/BountySystemTestLevel/3/VN/8BVAC6SV0C7HY7NQZUMR3A.uasset new file mode 100644 index 00000000..ffee1d42 --- /dev/null +++ b/EndlessVendetta/Content/__ExternalObjects__/Levels/BountySystemTestLevel/3/VN/8BVAC6SV0C7HY7NQZUMR3A.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:655a0e0a9a85c00698ba8db09c5273a150c8751bb22ae98951aceca46be08e61 +size 2268 diff --git a/EndlessVendetta/Content/__ExternalObjects__/Levels/BountySystemTestLevel/4/O7/YR3DRO0R6AREA4XTW0JVGN.uasset b/EndlessVendetta/Content/__ExternalObjects__/Levels/BountySystemTestLevel/4/O7/YR3DRO0R6AREA4XTW0JVGN.uasset new file mode 100644 index 00000000..dddfcf3e --- /dev/null +++ b/EndlessVendetta/Content/__ExternalObjects__/Levels/BountySystemTestLevel/4/O7/YR3DRO0R6AREA4XTW0JVGN.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ce01ca0c1ff2b1b33409de4eb58726f2666d8d6448567a5b0625d7b79e1438fd +size 2266 diff --git a/EndlessVendetta/Content/__ExternalObjects__/Levels/BountySystemTestLevel/4/OR/RK9JDE40KKJZQWFMFL26I5.uasset b/EndlessVendetta/Content/__ExternalObjects__/Levels/BountySystemTestLevel/4/OR/RK9JDE40KKJZQWFMFL26I5.uasset new file mode 100644 index 00000000..f16bdbc9 --- /dev/null +++ b/EndlessVendetta/Content/__ExternalObjects__/Levels/BountySystemTestLevel/4/OR/RK9JDE40KKJZQWFMFL26I5.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:32078880cc6806c270d8d27d528e43c3fc80cba4665271bb3ac2af6f7953ce72 +size 2266 diff --git a/EndlessVendetta/Content/__ExternalObjects__/Levels/BountySystemTestLevel/5/3P/SF481C8C6IO4CAHI6873XE.uasset b/EndlessVendetta/Content/__ExternalObjects__/Levels/BountySystemTestLevel/5/3P/SF481C8C6IO4CAHI6873XE.uasset new file mode 100644 index 00000000..e193b09f --- /dev/null +++ b/EndlessVendetta/Content/__ExternalObjects__/Levels/BountySystemTestLevel/5/3P/SF481C8C6IO4CAHI6873XE.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:57788d46a02cc5322526c77cd47d5cd75659ffc5c327293a7caa8d3f9457b944 +size 2272 diff --git a/EndlessVendetta/Content/__ExternalObjects__/Levels/BountySystemTestLevel/7/IO/6Y51GE24EVFOHXCG615BY1.uasset b/EndlessVendetta/Content/__ExternalObjects__/Levels/BountySystemTestLevel/7/IO/6Y51GE24EVFOHXCG615BY1.uasset new file mode 100644 index 00000000..27ff8b05 --- /dev/null +++ b/EndlessVendetta/Content/__ExternalObjects__/Levels/BountySystemTestLevel/7/IO/6Y51GE24EVFOHXCG615BY1.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:547a9c620a0f9ad81097e2593122e87fecc7a71aac871bc70801ec438da613e0 +size 2280 diff --git a/EndlessVendetta/Content/__ExternalObjects__/Levels/BountySystemTestLevel/D/WD/LGTPJJO55ED5H60IZ3025H.uasset b/EndlessVendetta/Content/__ExternalObjects__/Levels/BountySystemTestLevel/D/WD/LGTPJJO55ED5H60IZ3025H.uasset new file mode 100644 index 00000000..acf08f54 --- /dev/null +++ b/EndlessVendetta/Content/__ExternalObjects__/Levels/BountySystemTestLevel/D/WD/LGTPJJO55ED5H60IZ3025H.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:1c1adbd3bf1a497e1cdc01c183a824327dee8588e190117f15951d7aca76a44b +size 2268 From 720620b7d04e9a459f1da8d5106ae24968976a24 Mon Sep 17 00:00:00 2001 From: Marcel Hara Date: Wed, 27 Sep 2023 13:32:15 +0100 Subject: [PATCH 002/112] Added GunMechanic tester level Added gun mechanic tester level to start working on the basic gun mechanics in a seperated level --- .../.idea/indexLayout.xml | 4 ++- .../.idea.EndlessVendetta.dir/.idea/vcs.xml | 7 ++++ EndlessVendetta/Config/DefaultEngine.ini | 4 +-- .../FirstPerson/Maps/GunMechanicTester.umap | 3 ++ .../Architecture/Floor_400x400.uasset | 4 +-- .../0/25/17SUOAG1ZXCXS8NCT6BX1J.uasset | 3 ++ .../0/GK/2Y8SXHNN2DD2HWUFT5W8WJ.uasset | 3 ++ .../0/IZ/XQW4EUO3VZ41RD1M86T11D.uasset | 3 ++ .../0/X0/A8AJ030WDFS3UX0CDW7NQT.uasset | 3 ++ .../1/CZ/T22L35O6ZL5DC7H1KAS12V.uasset | 3 ++ .../1/EX/M4NUWNTSMSB30D92R0JNVH.uasset | 3 ++ .../1/ZI/R1ZA0YHAVRKP938ICPJNTS.uasset | 3 ++ .../2/OY/NWUJZZF3O1FRAXABLHEC7A.uasset | 3 ++ .../2/ZT/CS7AJMMD9W67X2ZP1JTMDY.uasset | 3 ++ .../3/2S/VMP9PWZPQHZL0PQ6M3P46T.uasset | 3 ++ .../4/MA/A156FPMZYSJI32UUV5KAUD.uasset | 3 ++ .../4/O7/Y27SOAR2KGMJHHHD7QG9W3.uasset | 3 ++ .../4/P4/6UW1DVWYFFIZTMUG9V8YCE.uasset | 3 ++ .../4/SX/ZQBKEDB8JW6BYC09LYGEGM.uasset | 3 ++ .../4/WG/SUVM1JZ0PVCC7SNBKLONYJ.uasset | 3 ++ .../4/YT/5VDYD721E8OB69DHUVNW4O.uasset | 3 ++ .../5/66/WQ2W64S04PNZLE92TJRS11.uasset | 3 ++ .../5/AC/1Z9VIJ2JRVY0MQQ44OF11V.uasset | 3 ++ .../5/C2/79BVTOH23GR8N0SWG6GWWW.uasset | 3 ++ .../5/DI/05W7546RV25UV9MUAZJUW8.uasset | 3 ++ .../5/XV/QS5R65LII0DY9AY8BZX62U.uasset | 3 ++ .../6/0M/M2D0X7GYI4FK051TQ36XEU.uasset | 3 ++ .../6/1X/M9YEJR335ZC5O8CL7YMOHP.uasset | 3 ++ .../6/2C/Q7P1X4BLFUTW8VRW3P7RIB.uasset | 3 ++ .../6/TX/BTC9S0W28D5I25IOL56715.uasset | 3 ++ .../6/XS/WL0ZK548OH4TTOZX0S761Y.uasset | 3 ++ .../6/YZ/8IO3NK6CAJNBOCZAR2BZPG.uasset | 3 ++ .../7/B5/TD7932XGOMQQH3EN17E3ZB.uasset | 3 ++ .../7/BL/5QFMPQA4LA59B0C1K7VEUO.uasset | 3 ++ .../8/GE/SFWEJY7HPPETIYTKPNF2PM.uasset | 3 ++ .../8/HC/5I57CIXRPQ6ES1G8NUV4AG.uasset | 3 ++ .../8/I6/GW76OI4EC3GFQC5NOD09UZ.uasset | 3 ++ .../8/IZ/57UNOHSEA89PDKIFF498WP.uasset | 3 ++ .../8/OE/2U43UZHFR9OAOPQP4TQBB4.uasset | 3 ++ .../8/OX/CSW98GYLISUMWC9Q0DOGEL.uasset | 3 ++ .../8/PC/IBGC4ILAFO0EI86PK0LA5R.uasset | 3 ++ .../8/RL/6H17UR2CPP4I0BW6W3N1FP.uasset | 3 ++ .../9/UY/QODPAS7H93ZRX0HZSVXGFI.uasset | 3 ++ .../9/V0/K6EQUGOEAMS93X1F5D1MHF.uasset | 3 ++ .../9/VR/NNCUWMLACWHDW29WII4SD7.uasset | 3 ++ .../9/VS/DCB65WIYSZJZJOCI6WSJ9Q.uasset | 3 ++ .../9/W0/UE1P9W899X3GCWVKMDDSGK.uasset | 3 ++ .../A/61/IQXXIOWP1L9O63YAABFG27.uasset | 3 ++ .../A/S6/727VECD7OCUDIZ2GHRBJJ3.uasset | 3 ++ .../B/LW/P5662X206J8FK010FEDYJH.uasset | 3 ++ .../C/05/HA4J5CS0609L7XWM1WR2F7.uasset | 3 ++ .../C/BN/CVBE6G5FCQBP7JH4WABUQD.uasset | 3 ++ .../C/O1/KOEM67VWDH98WGOAJBI4E2.uasset | 3 ++ .../D/F4/GUJDQQXQ025WJJ6RLE0SSF.uasset | 3 ++ .../D/KR/WJ92O3G9AE40MUVIPW466O.uasset | 3 ++ .../D/P4/4NNEH19QJ3ARXX12O9TPD1.uasset | 3 ++ .../D/PI/JNOQ11LVO9MVMU7H8GL3D7.uasset | 3 ++ .../D/V3/7KJ2D3EDU8FL3HZEPRM5FK.uasset | 3 ++ .../E/6M/TFDPLCSP2249C7MMH6Q6IJ.uasset | 3 ++ .../E/7O/DU906LIBS2H7DIXZOXTLI5.uasset | 3 ++ .../E/CF/03RTKZM37AOGZ60H864CDB.uasset | 3 ++ .../E/F0/WXXA0FYBUVM9150G6DL079.uasset | 3 ++ .../E/I2/594QUZU1UVGU5T002GJSWF.uasset | 3 ++ .../0/37/3XN21XBZV427UIXTUT8H9W.uasset | 3 ++ .../1/KK/5N51OQ0EA6OYJSFQZZMEN8.uasset | 3 ++ .../3/PO/7NO7RHQONSP3PXZM34SO4K.uasset | 3 ++ .../4/0M/WY2357UKBHUI8P5RHRK2DZ.uasset | 3 ++ .../4/CY/PA7VG9UZWHLZTEZL7VUBI9.uasset | 3 ++ .../5/YT/BWXH8AQGEZZOD1E6ZNPXSC.uasset | 3 ++ .../7/8N/ZRFPBTO989XQKP7T5RS7KK.uasset | 3 ++ .../D/KZ/6W87MJLX6NJ5XR8ELXDNYK.uasset | 3 ++ .../HoloLens/Config/HoloLensEngine.ini | 32 +++++++++++++++++++ 72 files changed, 247 insertions(+), 5 deletions(-) create mode 100644 EndlessVendetta/.idea/.idea.EndlessVendetta.dir/.idea/vcs.xml create mode 100644 EndlessVendetta/Content/FirstPerson/Maps/GunMechanicTester.umap create mode 100644 EndlessVendetta/Content/__ExternalActors__/FirstPerson/Maps/GunMechanicTester/0/25/17SUOAG1ZXCXS8NCT6BX1J.uasset create mode 100644 EndlessVendetta/Content/__ExternalActors__/FirstPerson/Maps/GunMechanicTester/0/GK/2Y8SXHNN2DD2HWUFT5W8WJ.uasset create mode 100644 EndlessVendetta/Content/__ExternalActors__/FirstPerson/Maps/GunMechanicTester/0/IZ/XQW4EUO3VZ41RD1M86T11D.uasset create mode 100644 EndlessVendetta/Content/__ExternalActors__/FirstPerson/Maps/GunMechanicTester/0/X0/A8AJ030WDFS3UX0CDW7NQT.uasset create mode 100644 EndlessVendetta/Content/__ExternalActors__/FirstPerson/Maps/GunMechanicTester/1/CZ/T22L35O6ZL5DC7H1KAS12V.uasset create mode 100644 EndlessVendetta/Content/__ExternalActors__/FirstPerson/Maps/GunMechanicTester/1/EX/M4NUWNTSMSB30D92R0JNVH.uasset create mode 100644 EndlessVendetta/Content/__ExternalActors__/FirstPerson/Maps/GunMechanicTester/1/ZI/R1ZA0YHAVRKP938ICPJNTS.uasset create mode 100644 EndlessVendetta/Content/__ExternalActors__/FirstPerson/Maps/GunMechanicTester/2/OY/NWUJZZF3O1FRAXABLHEC7A.uasset create mode 100644 EndlessVendetta/Content/__ExternalActors__/FirstPerson/Maps/GunMechanicTester/2/ZT/CS7AJMMD9W67X2ZP1JTMDY.uasset create mode 100644 EndlessVendetta/Content/__ExternalActors__/FirstPerson/Maps/GunMechanicTester/3/2S/VMP9PWZPQHZL0PQ6M3P46T.uasset create mode 100644 EndlessVendetta/Content/__ExternalActors__/FirstPerson/Maps/GunMechanicTester/4/MA/A156FPMZYSJI32UUV5KAUD.uasset create mode 100644 EndlessVendetta/Content/__ExternalActors__/FirstPerson/Maps/GunMechanicTester/4/O7/Y27SOAR2KGMJHHHD7QG9W3.uasset create mode 100644 EndlessVendetta/Content/__ExternalActors__/FirstPerson/Maps/GunMechanicTester/4/P4/6UW1DVWYFFIZTMUG9V8YCE.uasset create mode 100644 EndlessVendetta/Content/__ExternalActors__/FirstPerson/Maps/GunMechanicTester/4/SX/ZQBKEDB8JW6BYC09LYGEGM.uasset create mode 100644 EndlessVendetta/Content/__ExternalActors__/FirstPerson/Maps/GunMechanicTester/4/WG/SUVM1JZ0PVCC7SNBKLONYJ.uasset create mode 100644 EndlessVendetta/Content/__ExternalActors__/FirstPerson/Maps/GunMechanicTester/4/YT/5VDYD721E8OB69DHUVNW4O.uasset create mode 100644 EndlessVendetta/Content/__ExternalActors__/FirstPerson/Maps/GunMechanicTester/5/66/WQ2W64S04PNZLE92TJRS11.uasset create mode 100644 EndlessVendetta/Content/__ExternalActors__/FirstPerson/Maps/GunMechanicTester/5/AC/1Z9VIJ2JRVY0MQQ44OF11V.uasset create mode 100644 EndlessVendetta/Content/__ExternalActors__/FirstPerson/Maps/GunMechanicTester/5/C2/79BVTOH23GR8N0SWG6GWWW.uasset create mode 100644 EndlessVendetta/Content/__ExternalActors__/FirstPerson/Maps/GunMechanicTester/5/DI/05W7546RV25UV9MUAZJUW8.uasset create mode 100644 EndlessVendetta/Content/__ExternalActors__/FirstPerson/Maps/GunMechanicTester/5/XV/QS5R65LII0DY9AY8BZX62U.uasset create mode 100644 EndlessVendetta/Content/__ExternalActors__/FirstPerson/Maps/GunMechanicTester/6/0M/M2D0X7GYI4FK051TQ36XEU.uasset create mode 100644 EndlessVendetta/Content/__ExternalActors__/FirstPerson/Maps/GunMechanicTester/6/1X/M9YEJR335ZC5O8CL7YMOHP.uasset create mode 100644 EndlessVendetta/Content/__ExternalActors__/FirstPerson/Maps/GunMechanicTester/6/2C/Q7P1X4BLFUTW8VRW3P7RIB.uasset create mode 100644 EndlessVendetta/Content/__ExternalActors__/FirstPerson/Maps/GunMechanicTester/6/TX/BTC9S0W28D5I25IOL56715.uasset create mode 100644 EndlessVendetta/Content/__ExternalActors__/FirstPerson/Maps/GunMechanicTester/6/XS/WL0ZK548OH4TTOZX0S761Y.uasset create mode 100644 EndlessVendetta/Content/__ExternalActors__/FirstPerson/Maps/GunMechanicTester/6/YZ/8IO3NK6CAJNBOCZAR2BZPG.uasset create mode 100644 EndlessVendetta/Content/__ExternalActors__/FirstPerson/Maps/GunMechanicTester/7/B5/TD7932XGOMQQH3EN17E3ZB.uasset create mode 100644 EndlessVendetta/Content/__ExternalActors__/FirstPerson/Maps/GunMechanicTester/7/BL/5QFMPQA4LA59B0C1K7VEUO.uasset create mode 100644 EndlessVendetta/Content/__ExternalActors__/FirstPerson/Maps/GunMechanicTester/8/GE/SFWEJY7HPPETIYTKPNF2PM.uasset create mode 100644 EndlessVendetta/Content/__ExternalActors__/FirstPerson/Maps/GunMechanicTester/8/HC/5I57CIXRPQ6ES1G8NUV4AG.uasset create mode 100644 EndlessVendetta/Content/__ExternalActors__/FirstPerson/Maps/GunMechanicTester/8/I6/GW76OI4EC3GFQC5NOD09UZ.uasset create mode 100644 EndlessVendetta/Content/__ExternalActors__/FirstPerson/Maps/GunMechanicTester/8/IZ/57UNOHSEA89PDKIFF498WP.uasset create mode 100644 EndlessVendetta/Content/__ExternalActors__/FirstPerson/Maps/GunMechanicTester/8/OE/2U43UZHFR9OAOPQP4TQBB4.uasset create mode 100644 EndlessVendetta/Content/__ExternalActors__/FirstPerson/Maps/GunMechanicTester/8/OX/CSW98GYLISUMWC9Q0DOGEL.uasset create mode 100644 EndlessVendetta/Content/__ExternalActors__/FirstPerson/Maps/GunMechanicTester/8/PC/IBGC4ILAFO0EI86PK0LA5R.uasset create mode 100644 EndlessVendetta/Content/__ExternalActors__/FirstPerson/Maps/GunMechanicTester/8/RL/6H17UR2CPP4I0BW6W3N1FP.uasset create mode 100644 EndlessVendetta/Content/__ExternalActors__/FirstPerson/Maps/GunMechanicTester/9/UY/QODPAS7H93ZRX0HZSVXGFI.uasset create mode 100644 EndlessVendetta/Content/__ExternalActors__/FirstPerson/Maps/GunMechanicTester/9/V0/K6EQUGOEAMS93X1F5D1MHF.uasset create mode 100644 EndlessVendetta/Content/__ExternalActors__/FirstPerson/Maps/GunMechanicTester/9/VR/NNCUWMLACWHDW29WII4SD7.uasset create mode 100644 EndlessVendetta/Content/__ExternalActors__/FirstPerson/Maps/GunMechanicTester/9/VS/DCB65WIYSZJZJOCI6WSJ9Q.uasset create mode 100644 EndlessVendetta/Content/__ExternalActors__/FirstPerson/Maps/GunMechanicTester/9/W0/UE1P9W899X3GCWVKMDDSGK.uasset create mode 100644 EndlessVendetta/Content/__ExternalActors__/FirstPerson/Maps/GunMechanicTester/A/61/IQXXIOWP1L9O63YAABFG27.uasset create mode 100644 EndlessVendetta/Content/__ExternalActors__/FirstPerson/Maps/GunMechanicTester/A/S6/727VECD7OCUDIZ2GHRBJJ3.uasset create mode 100644 EndlessVendetta/Content/__ExternalActors__/FirstPerson/Maps/GunMechanicTester/B/LW/P5662X206J8FK010FEDYJH.uasset create mode 100644 EndlessVendetta/Content/__ExternalActors__/FirstPerson/Maps/GunMechanicTester/C/05/HA4J5CS0609L7XWM1WR2F7.uasset create mode 100644 EndlessVendetta/Content/__ExternalActors__/FirstPerson/Maps/GunMechanicTester/C/BN/CVBE6G5FCQBP7JH4WABUQD.uasset create mode 100644 EndlessVendetta/Content/__ExternalActors__/FirstPerson/Maps/GunMechanicTester/C/O1/KOEM67VWDH98WGOAJBI4E2.uasset create mode 100644 EndlessVendetta/Content/__ExternalActors__/FirstPerson/Maps/GunMechanicTester/D/F4/GUJDQQXQ025WJJ6RLE0SSF.uasset create mode 100644 EndlessVendetta/Content/__ExternalActors__/FirstPerson/Maps/GunMechanicTester/D/KR/WJ92O3G9AE40MUVIPW466O.uasset create mode 100644 EndlessVendetta/Content/__ExternalActors__/FirstPerson/Maps/GunMechanicTester/D/P4/4NNEH19QJ3ARXX12O9TPD1.uasset create mode 100644 EndlessVendetta/Content/__ExternalActors__/FirstPerson/Maps/GunMechanicTester/D/PI/JNOQ11LVO9MVMU7H8GL3D7.uasset create mode 100644 EndlessVendetta/Content/__ExternalActors__/FirstPerson/Maps/GunMechanicTester/D/V3/7KJ2D3EDU8FL3HZEPRM5FK.uasset create mode 100644 EndlessVendetta/Content/__ExternalActors__/FirstPerson/Maps/GunMechanicTester/E/6M/TFDPLCSP2249C7MMH6Q6IJ.uasset create mode 100644 EndlessVendetta/Content/__ExternalActors__/FirstPerson/Maps/GunMechanicTester/E/7O/DU906LIBS2H7DIXZOXTLI5.uasset create mode 100644 EndlessVendetta/Content/__ExternalActors__/FirstPerson/Maps/GunMechanicTester/E/CF/03RTKZM37AOGZ60H864CDB.uasset create mode 100644 EndlessVendetta/Content/__ExternalActors__/FirstPerson/Maps/GunMechanicTester/E/F0/WXXA0FYBUVM9150G6DL079.uasset create mode 100644 EndlessVendetta/Content/__ExternalActors__/FirstPerson/Maps/GunMechanicTester/E/I2/594QUZU1UVGU5T002GJSWF.uasset create mode 100644 EndlessVendetta/Content/__ExternalObjects__/FirstPerson/Maps/GunMechanicTester/0/37/3XN21XBZV427UIXTUT8H9W.uasset create mode 100644 EndlessVendetta/Content/__ExternalObjects__/FirstPerson/Maps/GunMechanicTester/1/KK/5N51OQ0EA6OYJSFQZZMEN8.uasset create mode 100644 EndlessVendetta/Content/__ExternalObjects__/FirstPerson/Maps/GunMechanicTester/3/PO/7NO7RHQONSP3PXZM34SO4K.uasset create mode 100644 EndlessVendetta/Content/__ExternalObjects__/FirstPerson/Maps/GunMechanicTester/4/0M/WY2357UKBHUI8P5RHRK2DZ.uasset create mode 100644 EndlessVendetta/Content/__ExternalObjects__/FirstPerson/Maps/GunMechanicTester/4/CY/PA7VG9UZWHLZTEZL7VUBI9.uasset create mode 100644 EndlessVendetta/Content/__ExternalObjects__/FirstPerson/Maps/GunMechanicTester/5/YT/BWXH8AQGEZZOD1E6ZNPXSC.uasset create mode 100644 EndlessVendetta/Content/__ExternalObjects__/FirstPerson/Maps/GunMechanicTester/7/8N/ZRFPBTO989XQKP7T5RS7KK.uasset create mode 100644 EndlessVendetta/Content/__ExternalObjects__/FirstPerson/Maps/GunMechanicTester/D/KZ/6W87MJLX6NJ5XR8ELXDNYK.uasset create mode 100644 EndlessVendetta/Platforms/HoloLens/Config/HoloLensEngine.ini diff --git a/EndlessVendetta/.idea/.idea.EndlessVendetta.dir/.idea/indexLayout.xml b/EndlessVendetta/.idea/.idea.EndlessVendetta.dir/.idea/indexLayout.xml index 7b08163c..5c30a127 100644 --- a/EndlessVendetta/.idea/.idea.EndlessVendetta.dir/.idea/indexLayout.xml +++ b/EndlessVendetta/.idea/.idea.EndlessVendetta.dir/.idea/indexLayout.xml @@ -1,7 +1,9 @@ - + + ../../Endless-Vendetta + diff --git a/EndlessVendetta/.idea/.idea.EndlessVendetta.dir/.idea/vcs.xml b/EndlessVendetta/.idea/.idea.EndlessVendetta.dir/.idea/vcs.xml new file mode 100644 index 00000000..62bd7a01 --- /dev/null +++ b/EndlessVendetta/.idea/.idea.EndlessVendetta.dir/.idea/vcs.xml @@ -0,0 +1,7 @@ + + + + + + + \ No newline at end of file diff --git a/EndlessVendetta/Config/DefaultEngine.ini b/EndlessVendetta/Config/DefaultEngine.ini index b419691f..1c20f465 100644 --- a/EndlessVendetta/Config/DefaultEngine.ini +++ b/EndlessVendetta/Config/DefaultEngine.ini @@ -4,14 +4,14 @@ +EditProfiles=(Name="Trigger",CustomResponses=((Channel=Projectile, Response=ECR_Ignore))) [/Script/EngineSettings.GameMapsSettings] -EditorStartupMap=/Game/FirstPerson/Maps/FirstPersonMap.FirstPersonMap +EditorStartupMap=/Game/FirstPerson/Maps/GunMechanicTester.GunMechanicTester LocalMapOptions= TransitionMap= bUseSplitscreen=True TwoPlayerSplitscreenLayout=Horizontal ThreePlayerSplitscreenLayout=FavorTop GameInstanceClass=/Script/Engine.GameInstance -GameDefaultMap=/Game/FirstPerson/Maps/FirstPersonMap.FirstPersonMap +GameDefaultMap=/Game/FirstPerson/Maps/GunMechanicTester.GunMechanicTester ServerDefaultMap=/Engine/Maps/Entry GlobalDefaultGameMode=/Script/EndlessVendetta.EndlessVendettaGameMode GlobalDefaultServerGameMode=None diff --git a/EndlessVendetta/Content/FirstPerson/Maps/GunMechanicTester.umap b/EndlessVendetta/Content/FirstPerson/Maps/GunMechanicTester.umap new file mode 100644 index 00000000..503b25b8 --- /dev/null +++ b/EndlessVendetta/Content/FirstPerson/Maps/GunMechanicTester.umap @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ee182b80d3a23ed532f8e4efed1b99c1c648c6076e3e6d72b75e8a511784ff06 +size 19378 diff --git a/EndlessVendetta/Content/StarterContent/Architecture/Floor_400x400.uasset b/EndlessVendetta/Content/StarterContent/Architecture/Floor_400x400.uasset index d7e5048f..db9c31d9 100644 --- a/EndlessVendetta/Content/StarterContent/Architecture/Floor_400x400.uasset +++ b/EndlessVendetta/Content/StarterContent/Architecture/Floor_400x400.uasset @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:4affdcf4a4ad958c59cf0f89fc2b9cd113305262e46a5221a577ae9b2fa83055 -size 14831 +oid sha256:c4714323c517973cefc36046bc8310e35417fac27e8b323667e4a46c5c09ba5f +size 14803 diff --git a/EndlessVendetta/Content/__ExternalActors__/FirstPerson/Maps/GunMechanicTester/0/25/17SUOAG1ZXCXS8NCT6BX1J.uasset b/EndlessVendetta/Content/__ExternalActors__/FirstPerson/Maps/GunMechanicTester/0/25/17SUOAG1ZXCXS8NCT6BX1J.uasset new file mode 100644 index 00000000..7c8720d9 --- /dev/null +++ b/EndlessVendetta/Content/__ExternalActors__/FirstPerson/Maps/GunMechanicTester/0/25/17SUOAG1ZXCXS8NCT6BX1J.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:772087796135600b11d143dec0c8996663a3f6185c09c7d50e09e235b06a8ff4 +size 4791 diff --git a/EndlessVendetta/Content/__ExternalActors__/FirstPerson/Maps/GunMechanicTester/0/GK/2Y8SXHNN2DD2HWUFT5W8WJ.uasset b/EndlessVendetta/Content/__ExternalActors__/FirstPerson/Maps/GunMechanicTester/0/GK/2Y8SXHNN2DD2HWUFT5W8WJ.uasset new file mode 100644 index 00000000..eefd8c77 --- /dev/null +++ b/EndlessVendetta/Content/__ExternalActors__/FirstPerson/Maps/GunMechanicTester/0/GK/2Y8SXHNN2DD2HWUFT5W8WJ.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:db94b82619e2d3184e577effce11d85cd85c4085e59d3aed9dc9223f33bc0c24 +size 4502 diff --git a/EndlessVendetta/Content/__ExternalActors__/FirstPerson/Maps/GunMechanicTester/0/IZ/XQW4EUO3VZ41RD1M86T11D.uasset b/EndlessVendetta/Content/__ExternalActors__/FirstPerson/Maps/GunMechanicTester/0/IZ/XQW4EUO3VZ41RD1M86T11D.uasset new file mode 100644 index 00000000..061cd85a --- /dev/null +++ b/EndlessVendetta/Content/__ExternalActors__/FirstPerson/Maps/GunMechanicTester/0/IZ/XQW4EUO3VZ41RD1M86T11D.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:28ffaa0dfb2279028ea95ca7fe6117646211631961efb80ea958393a8595b96d +size 4791 diff --git a/EndlessVendetta/Content/__ExternalActors__/FirstPerson/Maps/GunMechanicTester/0/X0/A8AJ030WDFS3UX0CDW7NQT.uasset b/EndlessVendetta/Content/__ExternalActors__/FirstPerson/Maps/GunMechanicTester/0/X0/A8AJ030WDFS3UX0CDW7NQT.uasset new file mode 100644 index 00000000..3dbc6545 --- /dev/null +++ b/EndlessVendetta/Content/__ExternalActors__/FirstPerson/Maps/GunMechanicTester/0/X0/A8AJ030WDFS3UX0CDW7NQT.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:91f151f31ecf16ac36949ff0dc58e7978690b14334ab19dcf8027e38c6e8c393 +size 4768 diff --git a/EndlessVendetta/Content/__ExternalActors__/FirstPerson/Maps/GunMechanicTester/1/CZ/T22L35O6ZL5DC7H1KAS12V.uasset b/EndlessVendetta/Content/__ExternalActors__/FirstPerson/Maps/GunMechanicTester/1/CZ/T22L35O6ZL5DC7H1KAS12V.uasset new file mode 100644 index 00000000..728f0e59 --- /dev/null +++ b/EndlessVendetta/Content/__ExternalActors__/FirstPerson/Maps/GunMechanicTester/1/CZ/T22L35O6ZL5DC7H1KAS12V.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e0ec1b5b73477f139a5d856e771bd2f669107ac5ff461949b66e592da9e07d37 +size 5290 diff --git a/EndlessVendetta/Content/__ExternalActors__/FirstPerson/Maps/GunMechanicTester/1/EX/M4NUWNTSMSB30D92R0JNVH.uasset b/EndlessVendetta/Content/__ExternalActors__/FirstPerson/Maps/GunMechanicTester/1/EX/M4NUWNTSMSB30D92R0JNVH.uasset new file mode 100644 index 00000000..572e71f7 --- /dev/null +++ b/EndlessVendetta/Content/__ExternalActors__/FirstPerson/Maps/GunMechanicTester/1/EX/M4NUWNTSMSB30D92R0JNVH.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:29caa0da6bdd9417b18be98e65a66216d98444b61dbf953eb500de819c3bd79d +size 4614 diff --git a/EndlessVendetta/Content/__ExternalActors__/FirstPerson/Maps/GunMechanicTester/1/ZI/R1ZA0YHAVRKP938ICPJNTS.uasset b/EndlessVendetta/Content/__ExternalActors__/FirstPerson/Maps/GunMechanicTester/1/ZI/R1ZA0YHAVRKP938ICPJNTS.uasset new file mode 100644 index 00000000..bffedc24 --- /dev/null +++ b/EndlessVendetta/Content/__ExternalActors__/FirstPerson/Maps/GunMechanicTester/1/ZI/R1ZA0YHAVRKP938ICPJNTS.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ff14ad93ec55ab54346e62619514158d4678cfee8c6a4209e442121fa6c526aa +size 4729 diff --git a/EndlessVendetta/Content/__ExternalActors__/FirstPerson/Maps/GunMechanicTester/2/OY/NWUJZZF3O1FRAXABLHEC7A.uasset b/EndlessVendetta/Content/__ExternalActors__/FirstPerson/Maps/GunMechanicTester/2/OY/NWUJZZF3O1FRAXABLHEC7A.uasset new file mode 100644 index 00000000..d0b38dd7 --- /dev/null +++ b/EndlessVendetta/Content/__ExternalActors__/FirstPerson/Maps/GunMechanicTester/2/OY/NWUJZZF3O1FRAXABLHEC7A.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d048f3006b00b67988036379aac8d53857a86cca76875ec474ad9514e9d7ec46 +size 4862 diff --git a/EndlessVendetta/Content/__ExternalActors__/FirstPerson/Maps/GunMechanicTester/2/ZT/CS7AJMMD9W67X2ZP1JTMDY.uasset b/EndlessVendetta/Content/__ExternalActors__/FirstPerson/Maps/GunMechanicTester/2/ZT/CS7AJMMD9W67X2ZP1JTMDY.uasset new file mode 100644 index 00000000..c2d59190 --- /dev/null +++ b/EndlessVendetta/Content/__ExternalActors__/FirstPerson/Maps/GunMechanicTester/2/ZT/CS7AJMMD9W67X2ZP1JTMDY.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:bb1e64afb18b4af3a116d28b4fe40b5d323f39e7ab3980a45fbd8116187653dd +size 4789 diff --git a/EndlessVendetta/Content/__ExternalActors__/FirstPerson/Maps/GunMechanicTester/3/2S/VMP9PWZPQHZL0PQ6M3P46T.uasset b/EndlessVendetta/Content/__ExternalActors__/FirstPerson/Maps/GunMechanicTester/3/2S/VMP9PWZPQHZL0PQ6M3P46T.uasset new file mode 100644 index 00000000..ca4f715d --- /dev/null +++ b/EndlessVendetta/Content/__ExternalActors__/FirstPerson/Maps/GunMechanicTester/3/2S/VMP9PWZPQHZL0PQ6M3P46T.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:0daaff5f052e6904f6480a0b8a098dda84245d0938e2eb34681cbe0553a0943d +size 4863 diff --git a/EndlessVendetta/Content/__ExternalActors__/FirstPerson/Maps/GunMechanicTester/4/MA/A156FPMZYSJI32UUV5KAUD.uasset b/EndlessVendetta/Content/__ExternalActors__/FirstPerson/Maps/GunMechanicTester/4/MA/A156FPMZYSJI32UUV5KAUD.uasset new file mode 100644 index 00000000..48cde451 --- /dev/null +++ b/EndlessVendetta/Content/__ExternalActors__/FirstPerson/Maps/GunMechanicTester/4/MA/A156FPMZYSJI32UUV5KAUD.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:2d0762dbc6e2e881d2d49b47d833c54c27bb49f133f658f8165d92ce4646e333 +size 4729 diff --git a/EndlessVendetta/Content/__ExternalActors__/FirstPerson/Maps/GunMechanicTester/4/O7/Y27SOAR2KGMJHHHD7QG9W3.uasset b/EndlessVendetta/Content/__ExternalActors__/FirstPerson/Maps/GunMechanicTester/4/O7/Y27SOAR2KGMJHHHD7QG9W3.uasset new file mode 100644 index 00000000..a6d592c0 --- /dev/null +++ b/EndlessVendetta/Content/__ExternalActors__/FirstPerson/Maps/GunMechanicTester/4/O7/Y27SOAR2KGMJHHHD7QG9W3.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:fa2295694fced0a5cc7b080338a5b2ce91a4ebb5d4890316be1f97634f9c4672 +size 4768 diff --git a/EndlessVendetta/Content/__ExternalActors__/FirstPerson/Maps/GunMechanicTester/4/P4/6UW1DVWYFFIZTMUG9V8YCE.uasset b/EndlessVendetta/Content/__ExternalActors__/FirstPerson/Maps/GunMechanicTester/4/P4/6UW1DVWYFFIZTMUG9V8YCE.uasset new file mode 100644 index 00000000..bfcc37b3 --- /dev/null +++ b/EndlessVendetta/Content/__ExternalActors__/FirstPerson/Maps/GunMechanicTester/4/P4/6UW1DVWYFFIZTMUG9V8YCE.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:bdef15fb4b4c6e554d6f589a302f9d7fc94fa89f737d6fc5bd0ba7b8655944a6 +size 4669 diff --git a/EndlessVendetta/Content/__ExternalActors__/FirstPerson/Maps/GunMechanicTester/4/SX/ZQBKEDB8JW6BYC09LYGEGM.uasset b/EndlessVendetta/Content/__ExternalActors__/FirstPerson/Maps/GunMechanicTester/4/SX/ZQBKEDB8JW6BYC09LYGEGM.uasset new file mode 100644 index 00000000..6c063ebf --- /dev/null +++ b/EndlessVendetta/Content/__ExternalActors__/FirstPerson/Maps/GunMechanicTester/4/SX/ZQBKEDB8JW6BYC09LYGEGM.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:3001b834af86196fa34a8a49bdfb1fd0312e4d98adec67150ff821172326b029 +size 4614 diff --git a/EndlessVendetta/Content/__ExternalActors__/FirstPerson/Maps/GunMechanicTester/4/WG/SUVM1JZ0PVCC7SNBKLONYJ.uasset b/EndlessVendetta/Content/__ExternalActors__/FirstPerson/Maps/GunMechanicTester/4/WG/SUVM1JZ0PVCC7SNBKLONYJ.uasset new file mode 100644 index 00000000..1561f0ea --- /dev/null +++ b/EndlessVendetta/Content/__ExternalActors__/FirstPerson/Maps/GunMechanicTester/4/WG/SUVM1JZ0PVCC7SNBKLONYJ.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:02796000b6265968a6b8ffae771f4812693ee26f02eeec837b542009bd1322da +size 3667 diff --git a/EndlessVendetta/Content/__ExternalActors__/FirstPerson/Maps/GunMechanicTester/4/YT/5VDYD721E8OB69DHUVNW4O.uasset b/EndlessVendetta/Content/__ExternalActors__/FirstPerson/Maps/GunMechanicTester/4/YT/5VDYD721E8OB69DHUVNW4O.uasset new file mode 100644 index 00000000..613ed0c9 --- /dev/null +++ b/EndlessVendetta/Content/__ExternalActors__/FirstPerson/Maps/GunMechanicTester/4/YT/5VDYD721E8OB69DHUVNW4O.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:6473828270e4cab01ef58d338bac0f29fd17a9799240829a0a7a8105829db28d +size 4863 diff --git a/EndlessVendetta/Content/__ExternalActors__/FirstPerson/Maps/GunMechanicTester/5/66/WQ2W64S04PNZLE92TJRS11.uasset b/EndlessVendetta/Content/__ExternalActors__/FirstPerson/Maps/GunMechanicTester/5/66/WQ2W64S04PNZLE92TJRS11.uasset new file mode 100644 index 00000000..bf328d07 --- /dev/null +++ b/EndlessVendetta/Content/__ExternalActors__/FirstPerson/Maps/GunMechanicTester/5/66/WQ2W64S04PNZLE92TJRS11.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:9c0a6632bc47ea3532b227a9c73be3abf44ba8c13524f182a86eac6206d0b1b9 +size 4615 diff --git a/EndlessVendetta/Content/__ExternalActors__/FirstPerson/Maps/GunMechanicTester/5/AC/1Z9VIJ2JRVY0MQQ44OF11V.uasset b/EndlessVendetta/Content/__ExternalActors__/FirstPerson/Maps/GunMechanicTester/5/AC/1Z9VIJ2JRVY0MQQ44OF11V.uasset new file mode 100644 index 00000000..45dca1c2 --- /dev/null +++ b/EndlessVendetta/Content/__ExternalActors__/FirstPerson/Maps/GunMechanicTester/5/AC/1Z9VIJ2JRVY0MQQ44OF11V.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:db8a881ef81bbe3d2523d1342e2c6167330c82c631a73da2e5ebf14d4b947924 +size 4731 diff --git a/EndlessVendetta/Content/__ExternalActors__/FirstPerson/Maps/GunMechanicTester/5/C2/79BVTOH23GR8N0SWG6GWWW.uasset b/EndlessVendetta/Content/__ExternalActors__/FirstPerson/Maps/GunMechanicTester/5/C2/79BVTOH23GR8N0SWG6GWWW.uasset new file mode 100644 index 00000000..ecca0351 --- /dev/null +++ b/EndlessVendetta/Content/__ExternalActors__/FirstPerson/Maps/GunMechanicTester/5/C2/79BVTOH23GR8N0SWG6GWWW.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:328fd51d3c7fefdbdda511f05cb29f849da14631cab1e07a5d7da3c01450ba25 +size 4768 diff --git a/EndlessVendetta/Content/__ExternalActors__/FirstPerson/Maps/GunMechanicTester/5/DI/05W7546RV25UV9MUAZJUW8.uasset b/EndlessVendetta/Content/__ExternalActors__/FirstPerson/Maps/GunMechanicTester/5/DI/05W7546RV25UV9MUAZJUW8.uasset new file mode 100644 index 00000000..e6f47978 --- /dev/null +++ b/EndlessVendetta/Content/__ExternalActors__/FirstPerson/Maps/GunMechanicTester/5/DI/05W7546RV25UV9MUAZJUW8.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:9c8a526d758028a5796590075ec8f3a3547fa1bd7e534d09ce96ef1bc39f4e4b +size 4789 diff --git a/EndlessVendetta/Content/__ExternalActors__/FirstPerson/Maps/GunMechanicTester/5/XV/QS5R65LII0DY9AY8BZX62U.uasset b/EndlessVendetta/Content/__ExternalActors__/FirstPerson/Maps/GunMechanicTester/5/XV/QS5R65LII0DY9AY8BZX62U.uasset new file mode 100644 index 00000000..7bba47a9 --- /dev/null +++ b/EndlessVendetta/Content/__ExternalActors__/FirstPerson/Maps/GunMechanicTester/5/XV/QS5R65LII0DY9AY8BZX62U.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b48a16b8b6333b89850703fc602a5e9559b70797977af0fe3aaa71884c7ca0ed +size 4728 diff --git a/EndlessVendetta/Content/__ExternalActors__/FirstPerson/Maps/GunMechanicTester/6/0M/M2D0X7GYI4FK051TQ36XEU.uasset b/EndlessVendetta/Content/__ExternalActors__/FirstPerson/Maps/GunMechanicTester/6/0M/M2D0X7GYI4FK051TQ36XEU.uasset new file mode 100644 index 00000000..57b5b2f9 --- /dev/null +++ b/EndlessVendetta/Content/__ExternalActors__/FirstPerson/Maps/GunMechanicTester/6/0M/M2D0X7GYI4FK051TQ36XEU.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:604f2b1a4e7d98e8ebb0cbd3ca6d77a6330db9af1f245c4c30dd157f4184eca8 +size 4863 diff --git a/EndlessVendetta/Content/__ExternalActors__/FirstPerson/Maps/GunMechanicTester/6/1X/M9YEJR335ZC5O8CL7YMOHP.uasset b/EndlessVendetta/Content/__ExternalActors__/FirstPerson/Maps/GunMechanicTester/6/1X/M9YEJR335ZC5O8CL7YMOHP.uasset new file mode 100644 index 00000000..eb164855 --- /dev/null +++ b/EndlessVendetta/Content/__ExternalActors__/FirstPerson/Maps/GunMechanicTester/6/1X/M9YEJR335ZC5O8CL7YMOHP.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:6ad254157b98fa2f4b255e4b553c078efbf6e1bd2f3e4bff473c79b774ff91a4 +size 4789 diff --git a/EndlessVendetta/Content/__ExternalActors__/FirstPerson/Maps/GunMechanicTester/6/2C/Q7P1X4BLFUTW8VRW3P7RIB.uasset b/EndlessVendetta/Content/__ExternalActors__/FirstPerson/Maps/GunMechanicTester/6/2C/Q7P1X4BLFUTW8VRW3P7RIB.uasset new file mode 100644 index 00000000..0eb7832b --- /dev/null +++ b/EndlessVendetta/Content/__ExternalActors__/FirstPerson/Maps/GunMechanicTester/6/2C/Q7P1X4BLFUTW8VRW3P7RIB.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:8c4c589fbdfb25dbacfef760367c2290c24030b1ebbdebd9700f3df55e1ea630 +size 4791 diff --git a/EndlessVendetta/Content/__ExternalActors__/FirstPerson/Maps/GunMechanicTester/6/TX/BTC9S0W28D5I25IOL56715.uasset b/EndlessVendetta/Content/__ExternalActors__/FirstPerson/Maps/GunMechanicTester/6/TX/BTC9S0W28D5I25IOL56715.uasset new file mode 100644 index 00000000..fa64ab8e --- /dev/null +++ b/EndlessVendetta/Content/__ExternalActors__/FirstPerson/Maps/GunMechanicTester/6/TX/BTC9S0W28D5I25IOL56715.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:39162e6e995a0f6846b1a806d1fa532ddc0af51fc910ab83b5c988fc591f91ff +size 4768 diff --git a/EndlessVendetta/Content/__ExternalActors__/FirstPerson/Maps/GunMechanicTester/6/XS/WL0ZK548OH4TTOZX0S761Y.uasset b/EndlessVendetta/Content/__ExternalActors__/FirstPerson/Maps/GunMechanicTester/6/XS/WL0ZK548OH4TTOZX0S761Y.uasset new file mode 100644 index 00000000..d321c2d9 --- /dev/null +++ b/EndlessVendetta/Content/__ExternalActors__/FirstPerson/Maps/GunMechanicTester/6/XS/WL0ZK548OH4TTOZX0S761Y.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:9573fa0ad445694cf7b7cd8da62fe41785b828dc0285a311d019238c537731e9 +size 4896 diff --git a/EndlessVendetta/Content/__ExternalActors__/FirstPerson/Maps/GunMechanicTester/6/YZ/8IO3NK6CAJNBOCZAR2BZPG.uasset b/EndlessVendetta/Content/__ExternalActors__/FirstPerson/Maps/GunMechanicTester/6/YZ/8IO3NK6CAJNBOCZAR2BZPG.uasset new file mode 100644 index 00000000..5c2307a8 --- /dev/null +++ b/EndlessVendetta/Content/__ExternalActors__/FirstPerson/Maps/GunMechanicTester/6/YZ/8IO3NK6CAJNBOCZAR2BZPG.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a87ed8f1f5fe8a44a98efa0ebe6035b2ca4b3d18b2b31385bf26ac82454b56af +size 4789 diff --git a/EndlessVendetta/Content/__ExternalActors__/FirstPerson/Maps/GunMechanicTester/7/B5/TD7932XGOMQQH3EN17E3ZB.uasset b/EndlessVendetta/Content/__ExternalActors__/FirstPerson/Maps/GunMechanicTester/7/B5/TD7932XGOMQQH3EN17E3ZB.uasset new file mode 100644 index 00000000..6352cf1a --- /dev/null +++ b/EndlessVendetta/Content/__ExternalActors__/FirstPerson/Maps/GunMechanicTester/7/B5/TD7932XGOMQQH3EN17E3ZB.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a588b9debbb5cb4b0993f0a2c70154f1b3a64ef5f3e30bf098654b99b6d6c912 +size 4617 diff --git a/EndlessVendetta/Content/__ExternalActors__/FirstPerson/Maps/GunMechanicTester/7/BL/5QFMPQA4LA59B0C1K7VEUO.uasset b/EndlessVendetta/Content/__ExternalActors__/FirstPerson/Maps/GunMechanicTester/7/BL/5QFMPQA4LA59B0C1K7VEUO.uasset new file mode 100644 index 00000000..fba7167a --- /dev/null +++ b/EndlessVendetta/Content/__ExternalActors__/FirstPerson/Maps/GunMechanicTester/7/BL/5QFMPQA4LA59B0C1K7VEUO.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:04956fe8b0d34aedf19481f08808a9511672cecf78fff03a25286afb6d9e0989 +size 3673 diff --git a/EndlessVendetta/Content/__ExternalActors__/FirstPerson/Maps/GunMechanicTester/8/GE/SFWEJY7HPPETIYTKPNF2PM.uasset b/EndlessVendetta/Content/__ExternalActors__/FirstPerson/Maps/GunMechanicTester/8/GE/SFWEJY7HPPETIYTKPNF2PM.uasset new file mode 100644 index 00000000..d4ccc8e7 --- /dev/null +++ b/EndlessVendetta/Content/__ExternalActors__/FirstPerson/Maps/GunMechanicTester/8/GE/SFWEJY7HPPETIYTKPNF2PM.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d088e9ded09de57825efd00a1dfd9dfcf70ecf41bf52cfbb22e6a6923a61eb8f +size 4612 diff --git a/EndlessVendetta/Content/__ExternalActors__/FirstPerson/Maps/GunMechanicTester/8/HC/5I57CIXRPQ6ES1G8NUV4AG.uasset b/EndlessVendetta/Content/__ExternalActors__/FirstPerson/Maps/GunMechanicTester/8/HC/5I57CIXRPQ6ES1G8NUV4AG.uasset new file mode 100644 index 00000000..fa5251b8 --- /dev/null +++ b/EndlessVendetta/Content/__ExternalActors__/FirstPerson/Maps/GunMechanicTester/8/HC/5I57CIXRPQ6ES1G8NUV4AG.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:0e2042529db332f272a83fb75c975b0b746a93b65b7c59ebec1322a6a6a4a6f3 +size 3882 diff --git a/EndlessVendetta/Content/__ExternalActors__/FirstPerson/Maps/GunMechanicTester/8/I6/GW76OI4EC3GFQC5NOD09UZ.uasset b/EndlessVendetta/Content/__ExternalActors__/FirstPerson/Maps/GunMechanicTester/8/I6/GW76OI4EC3GFQC5NOD09UZ.uasset new file mode 100644 index 00000000..e1a57512 --- /dev/null +++ b/EndlessVendetta/Content/__ExternalActors__/FirstPerson/Maps/GunMechanicTester/8/I6/GW76OI4EC3GFQC5NOD09UZ.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d8236b7774ea3bc2df89973ae76d388c267a477e2bc429be2b6251abd3f256eb +size 3653 diff --git a/EndlessVendetta/Content/__ExternalActors__/FirstPerson/Maps/GunMechanicTester/8/IZ/57UNOHSEA89PDKIFF498WP.uasset b/EndlessVendetta/Content/__ExternalActors__/FirstPerson/Maps/GunMechanicTester/8/IZ/57UNOHSEA89PDKIFF498WP.uasset new file mode 100644 index 00000000..6537afc1 --- /dev/null +++ b/EndlessVendetta/Content/__ExternalActors__/FirstPerson/Maps/GunMechanicTester/8/IZ/57UNOHSEA89PDKIFF498WP.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:195d6b5599f369be818715ee9736c4f93b34d51b5a275454ed4bb2c6dff4d984 +size 4789 diff --git a/EndlessVendetta/Content/__ExternalActors__/FirstPerson/Maps/GunMechanicTester/8/OE/2U43UZHFR9OAOPQP4TQBB4.uasset b/EndlessVendetta/Content/__ExternalActors__/FirstPerson/Maps/GunMechanicTester/8/OE/2U43UZHFR9OAOPQP4TQBB4.uasset new file mode 100644 index 00000000..6de004d9 --- /dev/null +++ b/EndlessVendetta/Content/__ExternalActors__/FirstPerson/Maps/GunMechanicTester/8/OE/2U43UZHFR9OAOPQP4TQBB4.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:da4966141ff18d3a6ab047b056fbd366fae00ad0b857fb0e7e21202e5029e1d8 +size 4791 diff --git a/EndlessVendetta/Content/__ExternalActors__/FirstPerson/Maps/GunMechanicTester/8/OX/CSW98GYLISUMWC9Q0DOGEL.uasset b/EndlessVendetta/Content/__ExternalActors__/FirstPerson/Maps/GunMechanicTester/8/OX/CSW98GYLISUMWC9Q0DOGEL.uasset new file mode 100644 index 00000000..c5979f74 --- /dev/null +++ b/EndlessVendetta/Content/__ExternalActors__/FirstPerson/Maps/GunMechanicTester/8/OX/CSW98GYLISUMWC9Q0DOGEL.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:53266eb9f08b264b3a9db089cda463a9ebd396367e568011a16dc85004b326be +size 4731 diff --git a/EndlessVendetta/Content/__ExternalActors__/FirstPerson/Maps/GunMechanicTester/8/PC/IBGC4ILAFO0EI86PK0LA5R.uasset b/EndlessVendetta/Content/__ExternalActors__/FirstPerson/Maps/GunMechanicTester/8/PC/IBGC4ILAFO0EI86PK0LA5R.uasset new file mode 100644 index 00000000..87df4385 --- /dev/null +++ b/EndlessVendetta/Content/__ExternalActors__/FirstPerson/Maps/GunMechanicTester/8/PC/IBGC4ILAFO0EI86PK0LA5R.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:44170b8a086a754d9e5fd6816b30c3d11bc1566d767a565ad45237864185512f +size 12522 diff --git a/EndlessVendetta/Content/__ExternalActors__/FirstPerson/Maps/GunMechanicTester/8/RL/6H17UR2CPP4I0BW6W3N1FP.uasset b/EndlessVendetta/Content/__ExternalActors__/FirstPerson/Maps/GunMechanicTester/8/RL/6H17UR2CPP4I0BW6W3N1FP.uasset new file mode 100644 index 00000000..06199b95 --- /dev/null +++ b/EndlessVendetta/Content/__ExternalActors__/FirstPerson/Maps/GunMechanicTester/8/RL/6H17UR2CPP4I0BW6W3N1FP.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e3cd19f4063687eb134743c5aceef5d12d07604ddc4fcf77d1639b3e5d827b05 +size 4514 diff --git a/EndlessVendetta/Content/__ExternalActors__/FirstPerson/Maps/GunMechanicTester/9/UY/QODPAS7H93ZRX0HZSVXGFI.uasset b/EndlessVendetta/Content/__ExternalActors__/FirstPerson/Maps/GunMechanicTester/9/UY/QODPAS7H93ZRX0HZSVXGFI.uasset new file mode 100644 index 00000000..e615df1d --- /dev/null +++ b/EndlessVendetta/Content/__ExternalActors__/FirstPerson/Maps/GunMechanicTester/9/UY/QODPAS7H93ZRX0HZSVXGFI.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a172d6f6a9e3e3960b61096ed6405dd64c5743d1c6bf77bda4f3644919eea40a +size 4766 diff --git a/EndlessVendetta/Content/__ExternalActors__/FirstPerson/Maps/GunMechanicTester/9/V0/K6EQUGOEAMS93X1F5D1MHF.uasset b/EndlessVendetta/Content/__ExternalActors__/FirstPerson/Maps/GunMechanicTester/9/V0/K6EQUGOEAMS93X1F5D1MHF.uasset new file mode 100644 index 00000000..a1c6b01e --- /dev/null +++ b/EndlessVendetta/Content/__ExternalActors__/FirstPerson/Maps/GunMechanicTester/9/V0/K6EQUGOEAMS93X1F5D1MHF.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:9ce2aa5690a328158325c461e7a5340a842c1ca48c77a1a0910e31d070c091f4 +size 4729 diff --git a/EndlessVendetta/Content/__ExternalActors__/FirstPerson/Maps/GunMechanicTester/9/VR/NNCUWMLACWHDW29WII4SD7.uasset b/EndlessVendetta/Content/__ExternalActors__/FirstPerson/Maps/GunMechanicTester/9/VR/NNCUWMLACWHDW29WII4SD7.uasset new file mode 100644 index 00000000..6a2c1c54 --- /dev/null +++ b/EndlessVendetta/Content/__ExternalActors__/FirstPerson/Maps/GunMechanicTester/9/VR/NNCUWMLACWHDW29WII4SD7.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a352e5ac99d32233102874586a68a2db307013046a7f9f6c7dee3030a830be37 +size 4768 diff --git a/EndlessVendetta/Content/__ExternalActors__/FirstPerson/Maps/GunMechanicTester/9/VS/DCB65WIYSZJZJOCI6WSJ9Q.uasset b/EndlessVendetta/Content/__ExternalActors__/FirstPerson/Maps/GunMechanicTester/9/VS/DCB65WIYSZJZJOCI6WSJ9Q.uasset new file mode 100644 index 00000000..3af2dbba --- /dev/null +++ b/EndlessVendetta/Content/__ExternalActors__/FirstPerson/Maps/GunMechanicTester/9/VS/DCB65WIYSZJZJOCI6WSJ9Q.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:dc0ce36ca9b14bb6f9b4b82209d1f4195687b2a4e64e10908ba9d760d2fe8283 +size 4677 diff --git a/EndlessVendetta/Content/__ExternalActors__/FirstPerson/Maps/GunMechanicTester/9/W0/UE1P9W899X3GCWVKMDDSGK.uasset b/EndlessVendetta/Content/__ExternalActors__/FirstPerson/Maps/GunMechanicTester/9/W0/UE1P9W899X3GCWVKMDDSGK.uasset new file mode 100644 index 00000000..c44aed95 --- /dev/null +++ b/EndlessVendetta/Content/__ExternalActors__/FirstPerson/Maps/GunMechanicTester/9/W0/UE1P9W899X3GCWVKMDDSGK.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:c7d568d84d5ef1400bac810a93a13b9c6392d2a1daafcd89c102aaf048540025 +size 4768 diff --git a/EndlessVendetta/Content/__ExternalActors__/FirstPerson/Maps/GunMechanicTester/A/61/IQXXIOWP1L9O63YAABFG27.uasset b/EndlessVendetta/Content/__ExternalActors__/FirstPerson/Maps/GunMechanicTester/A/61/IQXXIOWP1L9O63YAABFG27.uasset new file mode 100644 index 00000000..b0bb4c10 --- /dev/null +++ b/EndlessVendetta/Content/__ExternalActors__/FirstPerson/Maps/GunMechanicTester/A/61/IQXXIOWP1L9O63YAABFG27.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:be3da3da4cc97d2f91b8dd035ac121485d0adc76e07ea0ef50f30837bc309462 +size 4731 diff --git a/EndlessVendetta/Content/__ExternalActors__/FirstPerson/Maps/GunMechanicTester/A/S6/727VECD7OCUDIZ2GHRBJJ3.uasset b/EndlessVendetta/Content/__ExternalActors__/FirstPerson/Maps/GunMechanicTester/A/S6/727VECD7OCUDIZ2GHRBJJ3.uasset new file mode 100644 index 00000000..043c1384 --- /dev/null +++ b/EndlessVendetta/Content/__ExternalActors__/FirstPerson/Maps/GunMechanicTester/A/S6/727VECD7OCUDIZ2GHRBJJ3.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e5f7f07c79a66cedbc507b0f685429d46d4af28e33621bbad4db575d16908384 +size 4766 diff --git a/EndlessVendetta/Content/__ExternalActors__/FirstPerson/Maps/GunMechanicTester/B/LW/P5662X206J8FK010FEDYJH.uasset b/EndlessVendetta/Content/__ExternalActors__/FirstPerson/Maps/GunMechanicTester/B/LW/P5662X206J8FK010FEDYJH.uasset new file mode 100644 index 00000000..18c91a74 --- /dev/null +++ b/EndlessVendetta/Content/__ExternalActors__/FirstPerson/Maps/GunMechanicTester/B/LW/P5662X206J8FK010FEDYJH.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:7ff30bcf6f78115ab555efca0b66c0f721e67ac028440835f4206f9c5a9aea1f +size 4731 diff --git a/EndlessVendetta/Content/__ExternalActors__/FirstPerson/Maps/GunMechanicTester/C/05/HA4J5CS0609L7XWM1WR2F7.uasset b/EndlessVendetta/Content/__ExternalActors__/FirstPerson/Maps/GunMechanicTester/C/05/HA4J5CS0609L7XWM1WR2F7.uasset new file mode 100644 index 00000000..517d6f97 --- /dev/null +++ b/EndlessVendetta/Content/__ExternalActors__/FirstPerson/Maps/GunMechanicTester/C/05/HA4J5CS0609L7XWM1WR2F7.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:eaa7c4a2c74573f6188bf9e4387a80b302b6fbafe128e8cb2a698a74dcdce5d5 +size 4617 diff --git a/EndlessVendetta/Content/__ExternalActors__/FirstPerson/Maps/GunMechanicTester/C/BN/CVBE6G5FCQBP7JH4WABUQD.uasset b/EndlessVendetta/Content/__ExternalActors__/FirstPerson/Maps/GunMechanicTester/C/BN/CVBE6G5FCQBP7JH4WABUQD.uasset new file mode 100644 index 00000000..00bca627 --- /dev/null +++ b/EndlessVendetta/Content/__ExternalActors__/FirstPerson/Maps/GunMechanicTester/C/BN/CVBE6G5FCQBP7JH4WABUQD.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:7a8c8a0a9339cb5b646e24a50e6ad75ee7a1f42c2dfd9a796e6566e12cc178ad +size 4726 diff --git a/EndlessVendetta/Content/__ExternalActors__/FirstPerson/Maps/GunMechanicTester/C/O1/KOEM67VWDH98WGOAJBI4E2.uasset b/EndlessVendetta/Content/__ExternalActors__/FirstPerson/Maps/GunMechanicTester/C/O1/KOEM67VWDH98WGOAJBI4E2.uasset new file mode 100644 index 00000000..c283936d --- /dev/null +++ b/EndlessVendetta/Content/__ExternalActors__/FirstPerson/Maps/GunMechanicTester/C/O1/KOEM67VWDH98WGOAJBI4E2.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:1b06fbd6495607b48f5588b850821d47e150309705a9e1e441047fa112583ef8 +size 4768 diff --git a/EndlessVendetta/Content/__ExternalActors__/FirstPerson/Maps/GunMechanicTester/D/F4/GUJDQQXQ025WJJ6RLE0SSF.uasset b/EndlessVendetta/Content/__ExternalActors__/FirstPerson/Maps/GunMechanicTester/D/F4/GUJDQQXQ025WJJ6RLE0SSF.uasset new file mode 100644 index 00000000..d2305d87 --- /dev/null +++ b/EndlessVendetta/Content/__ExternalActors__/FirstPerson/Maps/GunMechanicTester/D/F4/GUJDQQXQ025WJJ6RLE0SSF.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:9adbfc289e3c12328c60346a2be7212627f7039f4b981bb3d1667bce98e2bb03 +size 4789 diff --git a/EndlessVendetta/Content/__ExternalActors__/FirstPerson/Maps/GunMechanicTester/D/KR/WJ92O3G9AE40MUVIPW466O.uasset b/EndlessVendetta/Content/__ExternalActors__/FirstPerson/Maps/GunMechanicTester/D/KR/WJ92O3G9AE40MUVIPW466O.uasset new file mode 100644 index 00000000..b4b5a7a0 --- /dev/null +++ b/EndlessVendetta/Content/__ExternalActors__/FirstPerson/Maps/GunMechanicTester/D/KR/WJ92O3G9AE40MUVIPW466O.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:6e65faeb7c028363dc6ea103f12f3482b8c2f7f4ac1f9c7105bdaf4bd8132283 +size 4759 diff --git a/EndlessVendetta/Content/__ExternalActors__/FirstPerson/Maps/GunMechanicTester/D/P4/4NNEH19QJ3ARXX12O9TPD1.uasset b/EndlessVendetta/Content/__ExternalActors__/FirstPerson/Maps/GunMechanicTester/D/P4/4NNEH19QJ3ARXX12O9TPD1.uasset new file mode 100644 index 00000000..3270c30a --- /dev/null +++ b/EndlessVendetta/Content/__ExternalActors__/FirstPerson/Maps/GunMechanicTester/D/P4/4NNEH19QJ3ARXX12O9TPD1.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:845d6f6da7e9aae85f618875158a2e29fc35eb04e0cfb40740f5ae8350d5e5da +size 4617 diff --git a/EndlessVendetta/Content/__ExternalActors__/FirstPerson/Maps/GunMechanicTester/D/PI/JNOQ11LVO9MVMU7H8GL3D7.uasset b/EndlessVendetta/Content/__ExternalActors__/FirstPerson/Maps/GunMechanicTester/D/PI/JNOQ11LVO9MVMU7H8GL3D7.uasset new file mode 100644 index 00000000..051dd363 --- /dev/null +++ b/EndlessVendetta/Content/__ExternalActors__/FirstPerson/Maps/GunMechanicTester/D/PI/JNOQ11LVO9MVMU7H8GL3D7.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:36141b38a7562ac85281cb7bf6ef96c2de58aabc5af2f6a7d2da1b1d1b0c78cb +size 4726 diff --git a/EndlessVendetta/Content/__ExternalActors__/FirstPerson/Maps/GunMechanicTester/D/V3/7KJ2D3EDU8FL3HZEPRM5FK.uasset b/EndlessVendetta/Content/__ExternalActors__/FirstPerson/Maps/GunMechanicTester/D/V3/7KJ2D3EDU8FL3HZEPRM5FK.uasset new file mode 100644 index 00000000..2cb2d663 --- /dev/null +++ b/EndlessVendetta/Content/__ExternalActors__/FirstPerson/Maps/GunMechanicTester/D/V3/7KJ2D3EDU8FL3HZEPRM5FK.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:da709a0f422af8d01b7b449c8033dbe4df951cc9348af4d5a63441af4bd42119 +size 4768 diff --git a/EndlessVendetta/Content/__ExternalActors__/FirstPerson/Maps/GunMechanicTester/E/6M/TFDPLCSP2249C7MMH6Q6IJ.uasset b/EndlessVendetta/Content/__ExternalActors__/FirstPerson/Maps/GunMechanicTester/E/6M/TFDPLCSP2249C7MMH6Q6IJ.uasset new file mode 100644 index 00000000..2c71f1c2 --- /dev/null +++ b/EndlessVendetta/Content/__ExternalActors__/FirstPerson/Maps/GunMechanicTester/E/6M/TFDPLCSP2249C7MMH6Q6IJ.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a862a44cdf94e3167c6363d616cee7b94db044c26e447ca7bc35917a6df3fe1e +size 4610 diff --git a/EndlessVendetta/Content/__ExternalActors__/FirstPerson/Maps/GunMechanicTester/E/7O/DU906LIBS2H7DIXZOXTLI5.uasset b/EndlessVendetta/Content/__ExternalActors__/FirstPerson/Maps/GunMechanicTester/E/7O/DU906LIBS2H7DIXZOXTLI5.uasset new file mode 100644 index 00000000..76c533ec --- /dev/null +++ b/EndlessVendetta/Content/__ExternalActors__/FirstPerson/Maps/GunMechanicTester/E/7O/DU906LIBS2H7DIXZOXTLI5.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:05ffc30cc78438cf473263d6c484f94f97f171750f21993ad8ae249c92a1587c +size 4768 diff --git a/EndlessVendetta/Content/__ExternalActors__/FirstPerson/Maps/GunMechanicTester/E/CF/03RTKZM37AOGZ60H864CDB.uasset b/EndlessVendetta/Content/__ExternalActors__/FirstPerson/Maps/GunMechanicTester/E/CF/03RTKZM37AOGZ60H864CDB.uasset new file mode 100644 index 00000000..69e94ea3 --- /dev/null +++ b/EndlessVendetta/Content/__ExternalActors__/FirstPerson/Maps/GunMechanicTester/E/CF/03RTKZM37AOGZ60H864CDB.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a62286ccd54254e959243a70f36f6a487c98c853ff584dbcade3709a72f393e1 +size 2470 diff --git a/EndlessVendetta/Content/__ExternalActors__/FirstPerson/Maps/GunMechanicTester/E/F0/WXXA0FYBUVM9150G6DL079.uasset b/EndlessVendetta/Content/__ExternalActors__/FirstPerson/Maps/GunMechanicTester/E/F0/WXXA0FYBUVM9150G6DL079.uasset new file mode 100644 index 00000000..fe7e2271 --- /dev/null +++ b/EndlessVendetta/Content/__ExternalActors__/FirstPerson/Maps/GunMechanicTester/E/F0/WXXA0FYBUVM9150G6DL079.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d2d7cae3562b1a8e70bb189432d5e5b5684f3dd4961c9203c946a0d7c2d1e883 +size 2518 diff --git a/EndlessVendetta/Content/__ExternalActors__/FirstPerson/Maps/GunMechanicTester/E/I2/594QUZU1UVGU5T002GJSWF.uasset b/EndlessVendetta/Content/__ExternalActors__/FirstPerson/Maps/GunMechanicTester/E/I2/594QUZU1UVGU5T002GJSWF.uasset new file mode 100644 index 00000000..e3eb69b2 --- /dev/null +++ b/EndlessVendetta/Content/__ExternalActors__/FirstPerson/Maps/GunMechanicTester/E/I2/594QUZU1UVGU5T002GJSWF.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ad1ba263bc6beb6df6704bc9dbdd290fbbdf0cc7b46534f9ca0a1982a10e302e +size 4035 diff --git a/EndlessVendetta/Content/__ExternalObjects__/FirstPerson/Maps/GunMechanicTester/0/37/3XN21XBZV427UIXTUT8H9W.uasset b/EndlessVendetta/Content/__ExternalObjects__/FirstPerson/Maps/GunMechanicTester/0/37/3XN21XBZV427UIXTUT8H9W.uasset new file mode 100644 index 00000000..85889a04 --- /dev/null +++ b/EndlessVendetta/Content/__ExternalObjects__/FirstPerson/Maps/GunMechanicTester/0/37/3XN21XBZV427UIXTUT8H9W.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:1504fa2b263e776ab8e1a9fb5108fe45893a98c120f686e960491515ca912f74 +size 2286 diff --git a/EndlessVendetta/Content/__ExternalObjects__/FirstPerson/Maps/GunMechanicTester/1/KK/5N51OQ0EA6OYJSFQZZMEN8.uasset b/EndlessVendetta/Content/__ExternalObjects__/FirstPerson/Maps/GunMechanicTester/1/KK/5N51OQ0EA6OYJSFQZZMEN8.uasset new file mode 100644 index 00000000..0a5dae60 --- /dev/null +++ b/EndlessVendetta/Content/__ExternalObjects__/FirstPerson/Maps/GunMechanicTester/1/KK/5N51OQ0EA6OYJSFQZZMEN8.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:1cb7cc553e0aabffceddc6ce3cfa95e4f49672cac565d60a3f7055324a3ff160 +size 2290 diff --git a/EndlessVendetta/Content/__ExternalObjects__/FirstPerson/Maps/GunMechanicTester/3/PO/7NO7RHQONSP3PXZM34SO4K.uasset b/EndlessVendetta/Content/__ExternalObjects__/FirstPerson/Maps/GunMechanicTester/3/PO/7NO7RHQONSP3PXZM34SO4K.uasset new file mode 100644 index 00000000..7369763e --- /dev/null +++ b/EndlessVendetta/Content/__ExternalObjects__/FirstPerson/Maps/GunMechanicTester/3/PO/7NO7RHQONSP3PXZM34SO4K.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:6e7a188a39e6e8a9d36bca995ff417b8068850986a95262e5d8d8df143855c6b +size 2298 diff --git a/EndlessVendetta/Content/__ExternalObjects__/FirstPerson/Maps/GunMechanicTester/4/0M/WY2357UKBHUI8P5RHRK2DZ.uasset b/EndlessVendetta/Content/__ExternalObjects__/FirstPerson/Maps/GunMechanicTester/4/0M/WY2357UKBHUI8P5RHRK2DZ.uasset new file mode 100644 index 00000000..e44f8133 --- /dev/null +++ b/EndlessVendetta/Content/__ExternalObjects__/FirstPerson/Maps/GunMechanicTester/4/0M/WY2357UKBHUI8P5RHRK2DZ.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:40b8a99a5f17375390374165be7325c0c7b41d0733228f3c0ad031410f5bf6c5 +size 2284 diff --git a/EndlessVendetta/Content/__ExternalObjects__/FirstPerson/Maps/GunMechanicTester/4/CY/PA7VG9UZWHLZTEZL7VUBI9.uasset b/EndlessVendetta/Content/__ExternalObjects__/FirstPerson/Maps/GunMechanicTester/4/CY/PA7VG9UZWHLZTEZL7VUBI9.uasset new file mode 100644 index 00000000..20deb822 --- /dev/null +++ b/EndlessVendetta/Content/__ExternalObjects__/FirstPerson/Maps/GunMechanicTester/4/CY/PA7VG9UZWHLZTEZL7VUBI9.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:8682a7fae586f4559213c1b7911028aba67b9e307197049e1065ee2d6eb92aba +size 2284 diff --git a/EndlessVendetta/Content/__ExternalObjects__/FirstPerson/Maps/GunMechanicTester/5/YT/BWXH8AQGEZZOD1E6ZNPXSC.uasset b/EndlessVendetta/Content/__ExternalObjects__/FirstPerson/Maps/GunMechanicTester/5/YT/BWXH8AQGEZZOD1E6ZNPXSC.uasset new file mode 100644 index 00000000..783f8418 --- /dev/null +++ b/EndlessVendetta/Content/__ExternalObjects__/FirstPerson/Maps/GunMechanicTester/5/YT/BWXH8AQGEZZOD1E6ZNPXSC.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:100ee8544e63be62122c3a7bd70a2d860a522384f77f13712dfe55e3e72971d8 +size 2286 diff --git a/EndlessVendetta/Content/__ExternalObjects__/FirstPerson/Maps/GunMechanicTester/7/8N/ZRFPBTO989XQKP7T5RS7KK.uasset b/EndlessVendetta/Content/__ExternalObjects__/FirstPerson/Maps/GunMechanicTester/7/8N/ZRFPBTO989XQKP7T5RS7KK.uasset new file mode 100644 index 00000000..d6ee501c --- /dev/null +++ b/EndlessVendetta/Content/__ExternalObjects__/FirstPerson/Maps/GunMechanicTester/7/8N/ZRFPBTO989XQKP7T5RS7KK.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:74973ca24943e6b3c1f032eebf19fbe885ff4bd80c55c19b6b32392c8176baf5 +size 2284 diff --git a/EndlessVendetta/Content/__ExternalObjects__/FirstPerson/Maps/GunMechanicTester/D/KZ/6W87MJLX6NJ5XR8ELXDNYK.uasset b/EndlessVendetta/Content/__ExternalObjects__/FirstPerson/Maps/GunMechanicTester/D/KZ/6W87MJLX6NJ5XR8ELXDNYK.uasset new file mode 100644 index 00000000..ebfd6ce4 --- /dev/null +++ b/EndlessVendetta/Content/__ExternalObjects__/FirstPerson/Maps/GunMechanicTester/D/KZ/6W87MJLX6NJ5XR8ELXDNYK.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:00adfd4b0eba1f7ae121b2d50b5022b23fdd698d6d8014eea3bc725d676737e5 +size 2284 diff --git a/EndlessVendetta/Platforms/HoloLens/Config/HoloLensEngine.ini b/EndlessVendetta/Platforms/HoloLens/Config/HoloLensEngine.ini new file mode 100644 index 00000000..57b268f3 --- /dev/null +++ b/EndlessVendetta/Platforms/HoloLens/Config/HoloLensEngine.ini @@ -0,0 +1,32 @@ + + +[/Script/HoloLensPlatformEditor.HoloLensTargetSettings] +bBuildForEmulation=False +bBuildForDevice=True +bUseNameForLogo=True +bBuildForRetailWindowsStore=False +bAutoIncrementVersion=False +bShouldCreateAppInstaller=False +AppInstallerInstallationURL= +HoursBetweenUpdateChecks=0 +bEnablePIXProfiling=False +TileBackgroundColor=(B=64,G=0,R=0,A=255) +SplashScreenBackgroundColor=(B=64,G=0,R=0,A=255) ++PerCultureResources=(CultureId="",Strings=(PackageDisplayName="",PublisherDisplayName="",PackageDescription="",ApplicationDisplayName="",ApplicationDescription=""),Images=()) +TargetDeviceFamily=Windows.Holographic +MinimumPlatformVersion= +MaximumPlatformVersionTested=10.0.22621.0 +MaxTrianglesPerCubicMeter=500.000000 +SpatialMeshingVolumeSize=20.000000 +CompilerVersion=Default +Windows10SDKVersion=10.0.18362.0 ++CapabilityList=internetClientServer ++CapabilityList=privateNetworkClientServer ++Uap2CapabilityList=spatialPerception +bSetDefaultCapabilities=False +SpatializationPlugin= +SourceDataOverridePlugin= +ReverbPlugin= +OcclusionPlugin= +SoundCueCookQualityIndex=-1 + From a8c66b20467f40650a7cc511577a9661bbb4e570 Mon Sep 17 00:00:00 2001 From: Marcel Hara Date: Wed, 27 Sep 2023 13:45:21 +0100 Subject: [PATCH 003/112] Added all basic weapon needed classes --- .../EndlessVendetta/BaseWeaponClass.cpp | 26 ++++++++++++++ .../Source/EndlessVendetta/BaseWeaponClass.h | 25 +++++++++++++ .../Source/EndlessVendetta/PistolClass.cpp | 26 ++++++++++++++ .../Source/EndlessVendetta/PistolClass.h | 25 +++++++++++++ .../EndlessVendetta/WeaponInventory.cpp | 35 +++++++++++++++++++ .../Source/EndlessVendetta/WeaponInventory.h | 26 ++++++++++++++ .../EndlessVendetta/WeaponItemClass.cpp | 26 ++++++++++++++ .../Source/EndlessVendetta/WeaponItemClass.h | 25 +++++++++++++ 8 files changed, 214 insertions(+) create mode 100644 EndlessVendetta/Source/EndlessVendetta/BaseWeaponClass.cpp create mode 100644 EndlessVendetta/Source/EndlessVendetta/BaseWeaponClass.h create mode 100644 EndlessVendetta/Source/EndlessVendetta/PistolClass.cpp create mode 100644 EndlessVendetta/Source/EndlessVendetta/PistolClass.h create mode 100644 EndlessVendetta/Source/EndlessVendetta/WeaponInventory.cpp create mode 100644 EndlessVendetta/Source/EndlessVendetta/WeaponInventory.h create mode 100644 EndlessVendetta/Source/EndlessVendetta/WeaponItemClass.cpp create mode 100644 EndlessVendetta/Source/EndlessVendetta/WeaponItemClass.h diff --git a/EndlessVendetta/Source/EndlessVendetta/BaseWeaponClass.cpp b/EndlessVendetta/Source/EndlessVendetta/BaseWeaponClass.cpp new file mode 100644 index 00000000..ade25671 --- /dev/null +++ b/EndlessVendetta/Source/EndlessVendetta/BaseWeaponClass.cpp @@ -0,0 +1,26 @@ +// Fill out your copyright notice in the Description page of Project Settings. + + +#include "BaseWeaponClass.h" + + +// Sets default values +ABaseWeaponClass::ABaseWeaponClass() +{ + // Set this actor to call Tick() every frame. You can turn this off to improve performance if you don't need it. + PrimaryActorTick.bCanEverTick = true; +} + +// Called when the game starts or when spawned +void ABaseWeaponClass::BeginPlay() +{ + Super::BeginPlay(); + +} + +// Called every frame +void ABaseWeaponClass::Tick(float DeltaTime) +{ + Super::Tick(DeltaTime); +} + diff --git a/EndlessVendetta/Source/EndlessVendetta/BaseWeaponClass.h b/EndlessVendetta/Source/EndlessVendetta/BaseWeaponClass.h new file mode 100644 index 00000000..57604d02 --- /dev/null +++ b/EndlessVendetta/Source/EndlessVendetta/BaseWeaponClass.h @@ -0,0 +1,25 @@ +// Fill out your copyright notice in the Description page of Project Settings. + +#pragma once + +#include "CoreMinimal.h" +#include "WeaponItemClass.h" +#include "BaseWeaponClass.generated.h" + +UCLASS() +class ENDLESSVENDETTA_API ABaseWeaponClass : public AWeaponItemClass +{ + GENERATED_BODY() + +public: + // Sets default values for this actor's properties + ABaseWeaponClass(); + +protected: + // Called when the game starts or when spawned + virtual void BeginPlay() override; + +public: + // Called every frame + virtual void Tick(float DeltaTime) override; +}; diff --git a/EndlessVendetta/Source/EndlessVendetta/PistolClass.cpp b/EndlessVendetta/Source/EndlessVendetta/PistolClass.cpp new file mode 100644 index 00000000..c40b9fdc --- /dev/null +++ b/EndlessVendetta/Source/EndlessVendetta/PistolClass.cpp @@ -0,0 +1,26 @@ +// Fill out your copyright notice in the Description page of Project Settings. + + +#include "PistolClass.h" + + +// Sets default values +APistolClass::APistolClass() +{ + // Set this actor to call Tick() every frame. You can turn this off to improve performance if you don't need it. + PrimaryActorTick.bCanEverTick = true; +} + +// Called when the game starts or when spawned +void APistolClass::BeginPlay() +{ + Super::BeginPlay(); + +} + +// Called every frame +void APistolClass::Tick(float DeltaTime) +{ + Super::Tick(DeltaTime); +} + diff --git a/EndlessVendetta/Source/EndlessVendetta/PistolClass.h b/EndlessVendetta/Source/EndlessVendetta/PistolClass.h new file mode 100644 index 00000000..4ad676b2 --- /dev/null +++ b/EndlessVendetta/Source/EndlessVendetta/PistolClass.h @@ -0,0 +1,25 @@ +// Fill out your copyright notice in the Description page of Project Settings. + +#pragma once + +#include "CoreMinimal.h" +#include "BaseWeaponClass.h" +#include "PistolClass.generated.h" + +UCLASS() +class ENDLESSVENDETTA_API APistolClass : public ABaseWeaponClass +{ + GENERATED_BODY() + +public: + // Sets default values for this actor's properties + APistolClass(); + +protected: + // Called when the game starts or when spawned + virtual void BeginPlay() override; + +public: + // Called every frame + virtual void Tick(float DeltaTime) override; +}; diff --git a/EndlessVendetta/Source/EndlessVendetta/WeaponInventory.cpp b/EndlessVendetta/Source/EndlessVendetta/WeaponInventory.cpp new file mode 100644 index 00000000..14c10a17 --- /dev/null +++ b/EndlessVendetta/Source/EndlessVendetta/WeaponInventory.cpp @@ -0,0 +1,35 @@ +// Fill out your copyright notice in the Description page of Project Settings. + + +#include "WeaponInventory.h" + + +// Sets default values for this component's properties +UWeaponInventory::UWeaponInventory() +{ + // Set this component to be initialized when the game starts, and to be ticked every frame. You can turn these features + // off to improve performance if you don't need them. + PrimaryComponentTick.bCanEverTick = true; + + // ... +} + + +// Called when the game starts +void UWeaponInventory::BeginPlay() +{ + Super::BeginPlay(); + + // ... + +} + + +// Called every frame +void UWeaponInventory::TickComponent(float DeltaTime, ELevelTick TickType, FActorComponentTickFunction* ThisTickFunction) +{ + Super::TickComponent(DeltaTime, TickType, ThisTickFunction); + + // ... +} + diff --git a/EndlessVendetta/Source/EndlessVendetta/WeaponInventory.h b/EndlessVendetta/Source/EndlessVendetta/WeaponInventory.h new file mode 100644 index 00000000..5ac32b02 --- /dev/null +++ b/EndlessVendetta/Source/EndlessVendetta/WeaponInventory.h @@ -0,0 +1,26 @@ +// Fill out your copyright notice in the Description page of Project Settings. + +#pragma once + +#include "CoreMinimal.h" +#include "Components/ActorComponent.h" +#include "WeaponInventory.generated.h" + + +UCLASS(ClassGroup=(Custom), meta=(BlueprintSpawnableComponent)) +class ENDLESSVENDETTA_API UWeaponInventory : public UActorComponent +{ + GENERATED_BODY() + +public: + // Sets default values for this component's properties + UWeaponInventory(); + +protected: + // Called when the game starts + virtual void BeginPlay() override; + +public: + // Called every frame + virtual void TickComponent(float DeltaTime, ELevelTick TickType, FActorComponentTickFunction* ThisTickFunction) override; +}; diff --git a/EndlessVendetta/Source/EndlessVendetta/WeaponItemClass.cpp b/EndlessVendetta/Source/EndlessVendetta/WeaponItemClass.cpp new file mode 100644 index 00000000..90d8f5ac --- /dev/null +++ b/EndlessVendetta/Source/EndlessVendetta/WeaponItemClass.cpp @@ -0,0 +1,26 @@ +// Fill out your copyright notice in the Description page of Project Settings. + + +#include "WeaponItemClass.h" + + +// Sets default values +AWeaponItemClass::AWeaponItemClass() +{ + // Set this actor to call Tick() every frame. You can turn this off to improve performance if you don't need it. + PrimaryActorTick.bCanEverTick = true; +} + +// Called when the game starts or when spawned +void AWeaponItemClass::BeginPlay() +{ + Super::BeginPlay(); + +} + +// Called every frame +void AWeaponItemClass::Tick(float DeltaTime) +{ + Super::Tick(DeltaTime); +} + diff --git a/EndlessVendetta/Source/EndlessVendetta/WeaponItemClass.h b/EndlessVendetta/Source/EndlessVendetta/WeaponItemClass.h new file mode 100644 index 00000000..e7042620 --- /dev/null +++ b/EndlessVendetta/Source/EndlessVendetta/WeaponItemClass.h @@ -0,0 +1,25 @@ +// Fill out your copyright notice in the Description page of Project Settings. + +#pragma once + +#include "CoreMinimal.h" +#include "GameFramework/Actor.h" +#include "WeaponItemClass.generated.h" + +UCLASS() +class ENDLESSVENDETTA_API AWeaponItemClass : public AActor +{ + GENERATED_BODY() + +public: + // Sets default values for this actor's properties + AWeaponItemClass(); + +protected: + // Called when the game starts or when spawned + virtual void BeginPlay() override; + +public: + // Called every frame + virtual void Tick(float DeltaTime) override; +}; From 51cc5b893067d734d54825aa44e22fa5f9089812 Mon Sep 17 00:00:00 2001 From: Rafal Swierczek <34179rs@gmail.com> Date: Wed, 27 Sep 2023 14:09:45 +0100 Subject: [PATCH 004/112] Added Empty Bounty System Classes --- .../Architecture/Floor_400x400.uasset | 4 +-- EndlessVendetta/EndlessVendetta.uproject | 5 +++- .../BountySystem/BountyClass.cpp | 27 +++++++++++++++++++ .../BountySystem/BountyClass.h | 26 ++++++++++++++++++ .../BountySystem/BountyDirector.cpp | 27 +++++++++++++++++++ .../BountySystem/BountyDirector.h | 26 ++++++++++++++++++ .../BountySystem/CheckpointClass.cpp | 27 +++++++++++++++++++ .../BountySystem/CheckpointClass.h | 26 ++++++++++++++++++ .../BountySystem/SideBountyClass.cpp | 5 ++++ .../BountySystem/SideBountyClass.h | 17 ++++++++++++ 10 files changed, 187 insertions(+), 3 deletions(-) create mode 100644 EndlessVendetta/Source/EndlessVendetta/BountySystem/BountyClass.cpp create mode 100644 EndlessVendetta/Source/EndlessVendetta/BountySystem/BountyClass.h create mode 100644 EndlessVendetta/Source/EndlessVendetta/BountySystem/BountyDirector.cpp create mode 100644 EndlessVendetta/Source/EndlessVendetta/BountySystem/BountyDirector.h create mode 100644 EndlessVendetta/Source/EndlessVendetta/BountySystem/CheckpointClass.cpp create mode 100644 EndlessVendetta/Source/EndlessVendetta/BountySystem/CheckpointClass.h create mode 100644 EndlessVendetta/Source/EndlessVendetta/BountySystem/SideBountyClass.cpp create mode 100644 EndlessVendetta/Source/EndlessVendetta/BountySystem/SideBountyClass.h diff --git a/EndlessVendetta/Content/StarterContent/Architecture/Floor_400x400.uasset b/EndlessVendetta/Content/StarterContent/Architecture/Floor_400x400.uasset index e3a82355..b62ede04 100644 --- a/EndlessVendetta/Content/StarterContent/Architecture/Floor_400x400.uasset +++ b/EndlessVendetta/Content/StarterContent/Architecture/Floor_400x400.uasset @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:c37220dc1a6682fd8e949470980677a49dab396cf3cf2b7c66e37adb26f36006 -size 14829 +oid sha256:1b95b1625b69860032c6a30ad9af83d68e7c0214b449e5355e3affa071fa6230 +size 14831 diff --git a/EndlessVendetta/EndlessVendetta.uproject b/EndlessVendetta/EndlessVendetta.uproject index 02d42dff..4717d351 100644 --- a/EndlessVendetta/EndlessVendetta.uproject +++ b/EndlessVendetta/EndlessVendetta.uproject @@ -7,7 +7,10 @@ { "Name": "EndlessVendetta", "Type": "Runtime", - "LoadingPhase": "Default" + "LoadingPhase": "Default", + "AdditionalDependencies": [ + "Engine" + ] } ], "Plugins": [ diff --git a/EndlessVendetta/Source/EndlessVendetta/BountySystem/BountyClass.cpp b/EndlessVendetta/Source/EndlessVendetta/BountySystem/BountyClass.cpp new file mode 100644 index 00000000..c497cd67 --- /dev/null +++ b/EndlessVendetta/Source/EndlessVendetta/BountySystem/BountyClass.cpp @@ -0,0 +1,27 @@ +// Fill out your copyright notice in the Description page of Project Settings. + + +#include "BountyClass.h" + +// Sets default values +ABountyClass::ABountyClass() +{ + // Set this actor to call Tick() every frame. You can turn this off to improve performance if you don't need it. + PrimaryActorTick.bCanEverTick = true; + +} + +// Called when the game starts or when spawned +void ABountyClass::BeginPlay() +{ + Super::BeginPlay(); + +} + +// Called every frame +void ABountyClass::Tick(float DeltaTime) +{ + Super::Tick(DeltaTime); + +} + diff --git a/EndlessVendetta/Source/EndlessVendetta/BountySystem/BountyClass.h b/EndlessVendetta/Source/EndlessVendetta/BountySystem/BountyClass.h new file mode 100644 index 00000000..d56e3d21 --- /dev/null +++ b/EndlessVendetta/Source/EndlessVendetta/BountySystem/BountyClass.h @@ -0,0 +1,26 @@ +// Fill out your copyright notice in the Description page of Project Settings. + +#pragma once + +#include "CoreMinimal.h" +#include "GameFramework/Actor.h" +#include "BountyClass.generated.h" + +UCLASS() +class ENDLESSVENDETTA_API ABountyClass : public AActor +{ + GENERATED_BODY() + +public: + // Sets default values for this actor's properties + ABountyClass(); + +protected: + // Called when the game starts or when spawned + virtual void BeginPlay() override; + +public: + // Called every frame + virtual void Tick(float DeltaTime) override; + +}; diff --git a/EndlessVendetta/Source/EndlessVendetta/BountySystem/BountyDirector.cpp b/EndlessVendetta/Source/EndlessVendetta/BountySystem/BountyDirector.cpp new file mode 100644 index 00000000..67e12786 --- /dev/null +++ b/EndlessVendetta/Source/EndlessVendetta/BountySystem/BountyDirector.cpp @@ -0,0 +1,27 @@ +// Fill out your copyright notice in the Description page of Project Settings. + + +#include "BountyDirector.h" + +// Sets default values +ABountyDirector::ABountyDirector() +{ + // Set this actor to call Tick() every frame. You can turn this off to improve performance if you don't need it. + PrimaryActorTick.bCanEverTick = true; + +} + +// Called when the game starts or when spawned +void ABountyDirector::BeginPlay() +{ + Super::BeginPlay(); + +} + +// Called every frame +void ABountyDirector::Tick(float DeltaTime) +{ + Super::Tick(DeltaTime); + +} + diff --git a/EndlessVendetta/Source/EndlessVendetta/BountySystem/BountyDirector.h b/EndlessVendetta/Source/EndlessVendetta/BountySystem/BountyDirector.h new file mode 100644 index 00000000..7192ce21 --- /dev/null +++ b/EndlessVendetta/Source/EndlessVendetta/BountySystem/BountyDirector.h @@ -0,0 +1,26 @@ +// Fill out your copyright notice in the Description page of Project Settings. + +#pragma once + +#include "CoreMinimal.h" +#include "GameFramework/Actor.h" +#include "BountyDirector.generated.h" + +UCLASS() +class ENDLESSVENDETTA_API ABountyDirector : public AActor +{ + GENERATED_BODY() + +public: + // Sets default values for this actor's properties + ABountyDirector(); + +protected: + // Called when the game starts or when spawned + virtual void BeginPlay() override; + +public: + // Called every frame + virtual void Tick(float DeltaTime) override; + +}; diff --git a/EndlessVendetta/Source/EndlessVendetta/BountySystem/CheckpointClass.cpp b/EndlessVendetta/Source/EndlessVendetta/BountySystem/CheckpointClass.cpp new file mode 100644 index 00000000..630725e4 --- /dev/null +++ b/EndlessVendetta/Source/EndlessVendetta/BountySystem/CheckpointClass.cpp @@ -0,0 +1,27 @@ +// Fill out your copyright notice in the Description page of Project Settings. + + +#include "CheckpointClass.h" + +// Sets default values +ACheckpointClass::ACheckpointClass() +{ + // Set this actor to call Tick() every frame. You can turn this off to improve performance if you don't need it. + PrimaryActorTick.bCanEverTick = true; + +} + +// Called when the game starts or when spawned +void ACheckpointClass::BeginPlay() +{ + Super::BeginPlay(); + +} + +// Called every frame +void ACheckpointClass::Tick(float DeltaTime) +{ + Super::Tick(DeltaTime); + +} + diff --git a/EndlessVendetta/Source/EndlessVendetta/BountySystem/CheckpointClass.h b/EndlessVendetta/Source/EndlessVendetta/BountySystem/CheckpointClass.h new file mode 100644 index 00000000..d8e09c23 --- /dev/null +++ b/EndlessVendetta/Source/EndlessVendetta/BountySystem/CheckpointClass.h @@ -0,0 +1,26 @@ +// Fill out your copyright notice in the Description page of Project Settings. + +#pragma once + +#include "CoreMinimal.h" +#include "GameFramework/Actor.h" +#include "CheckpointClass.generated.h" + +UCLASS() +class ENDLESSVENDETTA_API ACheckpointClass : public AActor +{ + GENERATED_BODY() + +public: + // Sets default values for this actor's properties + ACheckpointClass(); + +protected: + // Called when the game starts or when spawned + virtual void BeginPlay() override; + +public: + // Called every frame + virtual void Tick(float DeltaTime) override; + +}; diff --git a/EndlessVendetta/Source/EndlessVendetta/BountySystem/SideBountyClass.cpp b/EndlessVendetta/Source/EndlessVendetta/BountySystem/SideBountyClass.cpp new file mode 100644 index 00000000..9cb7eb8b --- /dev/null +++ b/EndlessVendetta/Source/EndlessVendetta/BountySystem/SideBountyClass.cpp @@ -0,0 +1,5 @@ +// Fill out your copyright notice in the Description page of Project Settings. + + +#include "SideBountyClass.h" + diff --git a/EndlessVendetta/Source/EndlessVendetta/BountySystem/SideBountyClass.h b/EndlessVendetta/Source/EndlessVendetta/BountySystem/SideBountyClass.h new file mode 100644 index 00000000..460bb922 --- /dev/null +++ b/EndlessVendetta/Source/EndlessVendetta/BountySystem/SideBountyClass.h @@ -0,0 +1,17 @@ +// Fill out your copyright notice in the Description page of Project Settings. + +#pragma once + +#include "CoreMinimal.h" +#include "BountyClass.h" +#include "SideBountyClass.generated.h" + +/** + * + */ +UCLASS() +class ENDLESSVENDETTA_API ASideBountyClass : public ABountyClass +{ + GENERATED_BODY() + +}; From 44e0a6bc2d1943d05bb4296ceb6e2c3a68b29742 Mon Sep 17 00:00:00 2001 From: Rafal Swierczek <34179rs@gmail.com> Date: Wed, 27 Sep 2023 14:47:50 +0100 Subject: [PATCH 005/112] Implemented Checkpoint Class Functionality --- .../BountySystem/CheckpointClass.h | 54 +++++++++++++++++-- 1 file changed, 49 insertions(+), 5 deletions(-) diff --git a/EndlessVendetta/Source/EndlessVendetta/BountySystem/CheckpointClass.h b/EndlessVendetta/Source/EndlessVendetta/BountySystem/CheckpointClass.h index d8e09c23..c182b8cb 100644 --- a/EndlessVendetta/Source/EndlessVendetta/BountySystem/CheckpointClass.h +++ b/EndlessVendetta/Source/EndlessVendetta/BountySystem/CheckpointClass.h @@ -6,21 +6,65 @@ #include "GameFramework/Actor.h" #include "CheckpointClass.generated.h" +DECLARE_DYNAMIC_MULTICAST_DELEGATE(FCompletedCheckpoint); + UCLASS() class ENDLESSVENDETTA_API ACheckpointClass : public AActor { GENERATED_BODY() + + // ------ Properties set from Editor ------ + UPROPERTY(EditDefaultsOnly, Category = "Checkpoint") + FString CheckpointDescription; + UPROPERTY(EditDefaultsOnly, Category = "Checkpoint") + FVector WaypointLoc; + UPROPERTY(EditDefaultsOnly, Category = "Checkpoint") + UTexture2D* WaypointIcon; + UPROPERTY(EditDefaultsOnly, Category = "Checkpoint") + FTransform CheckpointSpawnTransform; + // ---------------------------------------- -public: - // Sets default values for this actor's properties - ACheckpointClass(); + UFUNCTION(BlueprintCallable, Category = "Checkpoint") + void BroadcastCompletion() + { + CompletedCheckpoint.Broadcast(); + } protected: // Called when the game starts or when spawned virtual void BeginPlay() override; + +public: + FCompletedCheckpoint CompletedCheckpoint; -public: + UPROPERTY(BlueprintReadOnly, Category = "Checkpoint") + bool Active = false; + + // ------ Getters for CP Properties ------ + FString GetCheckpointDesc() + { + return CheckpointDescription; + } + FVector GetWaypointLoc() + { + return WaypointLoc; + } + UTexture2D* GetWaypointIcon() + { + return WaypointIcon; + } + FTransform GetCheckpointSpawnTransform() + { + return CheckpointSpawnTransform; + } + // --------------------------------------- + + // Sets default values for this actor's properties + ACheckpointClass(); + // Called every frame - virtual void Tick(float DeltaTime) override; + virtual void Tick(float DeltaTime) override; + + }; From 10eb04fa77b6cc3c612d9730e4bd4197dbab76cb Mon Sep 17 00:00:00 2001 From: Marcel Hara Date: Wed, 27 Sep 2023 15:01:42 +0100 Subject: [PATCH 006/112] Added BP of weapon and setup BP pickup components + Added input action --- .../FirstPerson/Blueprints/BP_FirstPersonCharacter.uasset | 4 ++-- .../FirstPerson/Blueprints/BaseWeapons/BP_BaseWeapon.uasset | 3 +++ .../Blueprints/BaseWeapons/Pistols/BP_BasePistolWeapon.uasset | 3 +++ .../Content/FirstPerson/Input/Actions/IA_WeaponEquip.uasset | 3 +++ EndlessVendetta/Content/FirstPerson/Input/IMC_Default.uasset | 4 ++-- .../Maps/GunMechanicTester/1/1E/W6O6OMVMAU1GMH2HVWXH3L.uasset | 3 +++ 6 files changed, 16 insertions(+), 4 deletions(-) create mode 100644 EndlessVendetta/Content/FirstPerson/Blueprints/BaseWeapons/BP_BaseWeapon.uasset create mode 100644 EndlessVendetta/Content/FirstPerson/Blueprints/BaseWeapons/Pistols/BP_BasePistolWeapon.uasset create mode 100644 EndlessVendetta/Content/FirstPerson/Input/Actions/IA_WeaponEquip.uasset create mode 100644 EndlessVendetta/Content/__ExternalActors__/FirstPerson/Maps/GunMechanicTester/1/1E/W6O6OMVMAU1GMH2HVWXH3L.uasset diff --git a/EndlessVendetta/Content/FirstPerson/Blueprints/BP_FirstPersonCharacter.uasset b/EndlessVendetta/Content/FirstPerson/Blueprints/BP_FirstPersonCharacter.uasset index 701e0537..690d04ef 100644 --- a/EndlessVendetta/Content/FirstPerson/Blueprints/BP_FirstPersonCharacter.uasset +++ b/EndlessVendetta/Content/FirstPerson/Blueprints/BP_FirstPersonCharacter.uasset @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:bedfc53528df762af9be906a8707ddff7568baf324a5d7df56d6bdfe1575ee3d -size 23020 +oid sha256:2d5de8f4e27f1e085417782dd7729fc662c3ab813afabba992a0bfe6ad51573c +size 35545 diff --git a/EndlessVendetta/Content/FirstPerson/Blueprints/BaseWeapons/BP_BaseWeapon.uasset b/EndlessVendetta/Content/FirstPerson/Blueprints/BaseWeapons/BP_BaseWeapon.uasset new file mode 100644 index 00000000..0aef22ed --- /dev/null +++ b/EndlessVendetta/Content/FirstPerson/Blueprints/BaseWeapons/BP_BaseWeapon.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a4dfbc572d0f67be5a3c6898946ce7fce2895174236407ce9910f99c59690367 +size 28778 diff --git a/EndlessVendetta/Content/FirstPerson/Blueprints/BaseWeapons/Pistols/BP_BasePistolWeapon.uasset b/EndlessVendetta/Content/FirstPerson/Blueprints/BaseWeapons/Pistols/BP_BasePistolWeapon.uasset new file mode 100644 index 00000000..16d0e458 --- /dev/null +++ b/EndlessVendetta/Content/FirstPerson/Blueprints/BaseWeapons/Pistols/BP_BasePistolWeapon.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f562f592d0a4fc6f34c7deb5c861593a1b7282f786b19b3789fbac2bee01c7a1 +size 29063 diff --git a/EndlessVendetta/Content/FirstPerson/Input/Actions/IA_WeaponEquip.uasset b/EndlessVendetta/Content/FirstPerson/Input/Actions/IA_WeaponEquip.uasset new file mode 100644 index 00000000..d06772c3 --- /dev/null +++ b/EndlessVendetta/Content/FirstPerson/Input/Actions/IA_WeaponEquip.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d0c07e01e5199aaa3d4e7fb5dc36733918e91aa93620cbef070e2472021315d4 +size 1672 diff --git a/EndlessVendetta/Content/FirstPerson/Input/IMC_Default.uasset b/EndlessVendetta/Content/FirstPerson/Input/IMC_Default.uasset index 81354aec..4568b732 100644 --- a/EndlessVendetta/Content/FirstPerson/Input/IMC_Default.uasset +++ b/EndlessVendetta/Content/FirstPerson/Input/IMC_Default.uasset @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:6faeeff3129efe33b48bd11297efb307a7bbcc6c98d6fc8da4742c0759a7e2ea -size 12793 +oid sha256:7d38ac187045f18e01436a5d90333878b3490d25037c84c712f943cb34f785bb +size 14484 diff --git a/EndlessVendetta/Content/__ExternalActors__/FirstPerson/Maps/GunMechanicTester/1/1E/W6O6OMVMAU1GMH2HVWXH3L.uasset b/EndlessVendetta/Content/__ExternalActors__/FirstPerson/Maps/GunMechanicTester/1/1E/W6O6OMVMAU1GMH2HVWXH3L.uasset new file mode 100644 index 00000000..9414b284 --- /dev/null +++ b/EndlessVendetta/Content/__ExternalActors__/FirstPerson/Maps/GunMechanicTester/1/1E/W6O6OMVMAU1GMH2HVWXH3L.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:df93071fd48bde5bf300bdb99470e05451e488b38627fbf6b22212b3c03e0fd3 +size 5061 From 09b22ff33ddc7ce33f7731dfe93294e2e0dc141d Mon Sep 17 00:00:00 2001 From: Marcel Hara Date: Wed, 27 Sep 2023 15:02:06 +0100 Subject: [PATCH 007/112] Added BaseWeaponClass, WeaponInventory, WeaponItemClass, Character basic functionality --- .../Source/EndlessVendetta/BaseWeaponClass.cpp | 2 ++ .../Source/EndlessVendetta/BaseWeaponClass.h | 18 ++++++++++++++++++ .../EndlessVendettaCharacter.cpp | 8 ++++++++ .../EndlessVendetta/EndlessVendettaCharacter.h | 10 ++++++++++ .../Source/EndlessVendetta/WeaponInventory.cpp | 13 +++++++++++-- .../Source/EndlessVendetta/WeaponInventory.h | 18 ++++++++++++++++++ .../Source/EndlessVendetta/WeaponItemClass.cpp | 15 +++++++++++++++ .../Source/EndlessVendetta/WeaponItemClass.h | 10 ++++++++++ 8 files changed, 92 insertions(+), 2 deletions(-) diff --git a/EndlessVendetta/Source/EndlessVendetta/BaseWeaponClass.cpp b/EndlessVendetta/Source/EndlessVendetta/BaseWeaponClass.cpp index ade25671..3d2bf453 100644 --- a/EndlessVendetta/Source/EndlessVendetta/BaseWeaponClass.cpp +++ b/EndlessVendetta/Source/EndlessVendetta/BaseWeaponClass.cpp @@ -3,6 +3,8 @@ #include "BaseWeaponClass.h" +#include "Components/CapsuleComponent.h" + // Sets default values ABaseWeaponClass::ABaseWeaponClass() diff --git a/EndlessVendetta/Source/EndlessVendetta/BaseWeaponClass.h b/EndlessVendetta/Source/EndlessVendetta/BaseWeaponClass.h index 57604d02..32225fe0 100644 --- a/EndlessVendetta/Source/EndlessVendetta/BaseWeaponClass.h +++ b/EndlessVendetta/Source/EndlessVendetta/BaseWeaponClass.h @@ -6,6 +6,8 @@ #include "WeaponItemClass.h" #include "BaseWeaponClass.generated.h" +class UCapsuleComponent; + UCLASS() class ENDLESSVENDETTA_API ABaseWeaponClass : public AWeaponItemClass { @@ -22,4 +24,20 @@ protected: public: // Called every frame virtual void Tick(float DeltaTime) override; + + UPROPERTY(EditAnywhere) + FName WeaponName; + + UPROPERTY(EditAnywhere) + int WeaponDamage; + + UPROPERTY(EditAnywhere) + float FireRate; + + UPROPERTY(EditAnywhere) + int MagazineSize; + + UPROPERTY(EditAnywhere) + UTexture2D* WeaponImage; + }; diff --git a/EndlessVendetta/Source/EndlessVendetta/EndlessVendettaCharacter.cpp b/EndlessVendetta/Source/EndlessVendetta/EndlessVendettaCharacter.cpp index 59310e24..f9dc4927 100644 --- a/EndlessVendetta/Source/EndlessVendetta/EndlessVendettaCharacter.cpp +++ b/EndlessVendetta/Source/EndlessVendetta/EndlessVendettaCharacter.cpp @@ -69,6 +69,9 @@ void AEndlessVendettaCharacter::SetupPlayerInputComponent(class UInputComponent* //Looking EnhancedInputComponent->BindAction(LookAction, ETriggerEvent::Triggered, this, &AEndlessVendettaCharacter::Look); + + //Weapon Switching + EnhancedInputComponent->BindAction(WeaponEquipAction, ETriggerEvent::Triggered, this, &AEndlessVendettaCharacter::WeaponEquip); } } @@ -99,6 +102,11 @@ void AEndlessVendettaCharacter::Look(const FInputActionValue& Value) } } +void AEndlessVendettaCharacter::WeaponEquip() +{ + UE_LOG(LogTemp, Display, TEXT("EQUIPPING WEAPONS")); +} + void AEndlessVendettaCharacter::SetHasRifle(bool bNewHasRifle) { bHasRifle = bNewHasRifle; diff --git a/EndlessVendetta/Source/EndlessVendetta/EndlessVendettaCharacter.h b/EndlessVendetta/Source/EndlessVendetta/EndlessVendettaCharacter.h index 667db81c..c9405896 100644 --- a/EndlessVendetta/Source/EndlessVendetta/EndlessVendettaCharacter.h +++ b/EndlessVendetta/Source/EndlessVendetta/EndlessVendettaCharacter.h @@ -7,6 +7,7 @@ #include "InputActionValue.h" #include "EndlessVendettaCharacter.generated.h" +class UWeaponInventory; class UInputComponent; class USkeletalMeshComponent; class USceneComponent; @@ -39,6 +40,10 @@ class AEndlessVendettaCharacter : public ACharacter UPROPERTY(EditAnywhere, BlueprintReadOnly, Category=Input, meta=(AllowPrivateAccess = "true")) class UInputAction* MoveAction; + /** Weapon Equip Action */ + UPROPERTY(EditAnywhere, BlueprintReadOnly, Category=Input, meta=(AllowPrivateAccess = "true")) + class UInputAction* WeaponEquipAction; + public: AEndlessVendettaCharacter(); @@ -71,6 +76,8 @@ protected: /** Called for looking input */ void Look(const FInputActionValue& Value); + void WeaponEquip(); + protected: // APawn interface virtual void SetupPlayerInputComponent(UInputComponent* InputComponent) override; @@ -82,6 +89,9 @@ public: /** Returns FirstPersonCameraComponent subobject **/ UCameraComponent* GetFirstPersonCameraComponent() const { return FirstPersonCameraComponent; } +private: + UWeaponInventory* WeaponInventory; + }; diff --git a/EndlessVendetta/Source/EndlessVendetta/WeaponInventory.cpp b/EndlessVendetta/Source/EndlessVendetta/WeaponInventory.cpp index 14c10a17..97262c6c 100644 --- a/EndlessVendetta/Source/EndlessVendetta/WeaponInventory.cpp +++ b/EndlessVendetta/Source/EndlessVendetta/WeaponInventory.cpp @@ -3,6 +3,8 @@ #include "WeaponInventory.h" +#include "WeaponItemClass.h" + // Sets default values for this component's properties UWeaponInventory::UWeaponInventory() @@ -10,8 +12,7 @@ UWeaponInventory::UWeaponInventory() // Set this component to be initialized when the game starts, and to be ticked every frame. You can turn these features // off to improve performance if you don't need them. PrimaryComponentTick.bCanEverTick = true; - - // ... + } @@ -33,3 +34,11 @@ void UWeaponInventory::TickComponent(float DeltaTime, ELevelTick TickType, FActo // ... } +//Called from blueprints from the player +void UWeaponInventory::WeaponPickup(AActor* WeaponPickedUp) +{ + AWeaponItemClass* WeaponItemClass = Cast(WeaponPickedUp); + WeaponsArray.Add(WeaponItemClass); + WeaponPickedUp->Destroy(); +} + diff --git a/EndlessVendetta/Source/EndlessVendetta/WeaponInventory.h b/EndlessVendetta/Source/EndlessVendetta/WeaponInventory.h index 5ac32b02..b060d0ac 100644 --- a/EndlessVendetta/Source/EndlessVendetta/WeaponInventory.h +++ b/EndlessVendetta/Source/EndlessVendetta/WeaponInventory.h @@ -7,6 +7,8 @@ #include "WeaponInventory.generated.h" +class AWeaponItemClass; + UCLASS(ClassGroup=(Custom), meta=(BlueprintSpawnableComponent)) class ENDLESSVENDETTA_API UWeaponInventory : public UActorComponent { @@ -20,7 +22,23 @@ protected: // Called when the game starts virtual void BeginPlay() override; + UPROPERTY(VisibleAnywhere, Category = "Weapon System") + TArray WeaponsArray; + public: // Called every frame virtual void TickComponent(float DeltaTime, ELevelTick TickType, FActorComponentTickFunction* ThisTickFunction) override; + + //Using a getter to get the protected weaponsArray + UFUNCTION() + TArray GetWeaponArray() const { return WeaponsArray; } + + //Using a Setter to set the protected weapons array to the getter + UFUNCTION() + void SetArray(const TArray weaponArray) { WeaponsArray = weaponArray; } + +private: + //Called from blueprints from the player + UFUNCTION(BlueprintCallable) + void WeaponPickup(AActor* WeaponPickedUp); }; diff --git a/EndlessVendetta/Source/EndlessVendetta/WeaponItemClass.cpp b/EndlessVendetta/Source/EndlessVendetta/WeaponItemClass.cpp index 90d8f5ac..d1e399a7 100644 --- a/EndlessVendetta/Source/EndlessVendetta/WeaponItemClass.cpp +++ b/EndlessVendetta/Source/EndlessVendetta/WeaponItemClass.cpp @@ -24,3 +24,18 @@ void AWeaponItemClass::Tick(float DeltaTime) Super::Tick(DeltaTime); } +//Called from WeaponInventory actor component class +void AWeaponItemClass::Equip(ABaseWeaponClass* PickedUpWeapon) +{ + //get the weapons in the array from component + //whatever input is being pressed add that to the player socket + //if there is no gun simply add it to the socket + //if there is a weapon remove from socket and add the requested one +} + +//Called from WeaponInventory actor component class +void AWeaponItemClass::Unequip(ABaseWeaponClass* PickedUpWeapon) +{ + //same as equip but +} + diff --git a/EndlessVendetta/Source/EndlessVendetta/WeaponItemClass.h b/EndlessVendetta/Source/EndlessVendetta/WeaponItemClass.h index e7042620..a1ad01bf 100644 --- a/EndlessVendetta/Source/EndlessVendetta/WeaponItemClass.h +++ b/EndlessVendetta/Source/EndlessVendetta/WeaponItemClass.h @@ -6,6 +6,8 @@ #include "GameFramework/Actor.h" #include "WeaponItemClass.generated.h" +class ABaseWeaponClass; + UCLASS() class ENDLESSVENDETTA_API AWeaponItemClass : public AActor { @@ -22,4 +24,12 @@ protected: public: // Called every frame virtual void Tick(float DeltaTime) override; + +private: + + UFUNCTION() + void Equip(ABaseWeaponClass* PickedUpWeapon); + + UFUNCTION() + void Unequip(ABaseWeaponClass* PickedUpWeapon); }; From 52af66afecb1daf6c51aeefa2c756785bf60c2ee Mon Sep 17 00:00:00 2001 From: Rafal Swierczek <34179rs@gmail.com> Date: Wed, 27 Sep 2023 16:43:33 +0100 Subject: [PATCH 008/112] Implemented Bounty Class Functionality --- .../Blueprints/BP_FirstPersonCharacter.uasset | 4 +- .../BountySystem/BountyClass.cpp | 107 ++++++++++++++- .../BountySystem/BountyClass.h | 128 +++++++++++++++++- 3 files changed, 229 insertions(+), 10 deletions(-) diff --git a/EndlessVendetta/Content/FirstPerson/Blueprints/BP_FirstPersonCharacter.uasset b/EndlessVendetta/Content/FirstPerson/Blueprints/BP_FirstPersonCharacter.uasset index 701e0537..161871e8 100644 --- a/EndlessVendetta/Content/FirstPerson/Blueprints/BP_FirstPersonCharacter.uasset +++ b/EndlessVendetta/Content/FirstPerson/Blueprints/BP_FirstPersonCharacter.uasset @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:bedfc53528df762af9be906a8707ddff7568baf324a5d7df56d6bdfe1575ee3d -size 23020 +oid sha256:97d5406f3cd7dcb656b8f29ebc71700d765f690ece26250ae04a0de9b2e19ce1 +size 22718 diff --git a/EndlessVendetta/Source/EndlessVendetta/BountySystem/BountyClass.cpp b/EndlessVendetta/Source/EndlessVendetta/BountySystem/BountyClass.cpp index c497cd67..ae8fbd8d 100644 --- a/EndlessVendetta/Source/EndlessVendetta/BountySystem/BountyClass.cpp +++ b/EndlessVendetta/Source/EndlessVendetta/BountySystem/BountyClass.cpp @@ -11,17 +11,120 @@ ABountyClass::ABountyClass() } -// Called when the game starts or when spawned void ABountyClass::BeginPlay() { Super::BeginPlay(); + + SpawnCheckpoints(); } -// Called every frame void ABountyClass::Tick(float DeltaTime) { Super::Tick(DeltaTime); } +void ABountyClass::SpawnCheckpoints() +{ + // Spawn all checkpoints associated with this bounty and store them in order + FActorSpawnParameters SpawnParameters; + SpawnParameters.SpawnCollisionHandlingOverride = ESpawnActorCollisionHandlingMethod::AlwaysSpawn; + + for(TSubclassOf CheckpointClass : CheckpointsToSpawn) + { + if (CheckpointClass == nullptr) + { + // An unassigned checkpoint class can lead to undefined behaviour, hence the fatal log + UE_LOG(LogTemp, Fatal, TEXT("A checkpoint class wasn't set for %s"), *BountyTitle); + return; + } + + FVector Loc = CheckpointClass.GetDefaultObject()->GetCheckpointSpawnTransform().GetLocation(); + FRotator Rot = CheckpointClass.GetDefaultObject()->GetCheckpointSpawnTransform().GetRotation().Rotator(); + ACheckpointClass* SpawnedCheckpoint = Cast(GetWorld()->SpawnActor(CheckpointClass, Loc, Rot, SpawnParameters)); + BountyCheckpoints.Add(SpawnedCheckpoint); + } + + // Activate the first checkpoint and listen for its completion + BountyCheckpoints[0]->Active = true; + BountyCheckpoints[0]->CompletedCheckpoint.AddDynamic(this, &ABountyClass::IncrementBountyCheckpoint); +} + +void ABountyClass::IncrementBountyCheckpoint() +{ + // Broadcast that the first Checkpoint has been completed so that side bounties can be destroyed + if (!BountyStarted) + { + BountyStarted = true; + CompletedFirstCheckpoint.Broadcast(); + } + + // Bounty Completion Condition + if (BountyCheckpoints.Num() <= MinCPsRequiredForCompletion) + { + Completed = true; + BountyCheckpoints[0]->Active = false; + BountyCheckpoints[0]->Destroy(); + BountyCheckpoints.RemoveAt(0); + UE_LOG(LogTemp, Warning, TEXT(" You've Completed the Bounty!! Well done")); + return; + } + + if (BountyCheckpoints[0] == nullptr) + { + UE_LOG(LogTemp, Fatal, TEXT("Missing checkpoint in bounty checkpoints, could've failed to spawn or cast")); + return; + } + + // Destroy Actor and Shrink Array + BountyCheckpoints[0]->Active = false; + BountyCheckpoints[0]->Destroy(); + BountyCheckpoints.RemoveAt(0); + + // Set the new checkpoint in pos 0 to be active and listen for it's completion + BountyCheckpoints[0]->Active = true; + BountyCheckpoints[0]->CompletedCheckpoint.AddDynamic(this, &ABountyClass::IncrementBountyCheckpoint); + +} + +void ABountyClass::CollectRewards_Implementation() +{ + UE_LOG(LogTemp, Warning, TEXT("The player has gained $%d for completing the bounty!"), RewardMoney); +} + +void ABountyClass::UpdateBountyCheckpoints(TMap> ReplacementCheckpoints) +{ + if (ReplacementCheckpoints.IsEmpty()) + { + UE_LOG(LogTemp, Warning, TEXT("No Replacement Steps found")); + return; + } + + FActorSpawnParameters SpawnParameters; + SpawnParameters.SpawnCollisionHandlingOverride = ESpawnActorCollisionHandlingMethod::AlwaysSpawn; + + for (auto ReplacementCheckpoint : ReplacementCheckpoints) + { + BountyCheckpoints[ReplacementCheckpoint.Key]->Destroy(); + ReplacementCheckpointClass = ReplacementCheckpoint.Value; + + FVector Loc = ReplacementCheckpointClass.GetDefaultObject()->GetCheckpointSpawnTransform().GetLocation(); + FRotator Rot = ReplacementCheckpointClass.GetDefaultObject()->GetCheckpointSpawnTransform().GetRotation().Rotator(); + ACheckpointClass* SpawnedCheckpoint = Cast(GetWorld()->SpawnActor(ReplacementCheckpoint.Value, Loc, Rot, SpawnParameters)); + + if (SpawnedCheckpoint == nullptr) + { + UE_LOG(LogTemp, Fatal, TEXT("The new checkpoint hasn't spawned in properly or can't be cast to")); + return; + } + + BountyCheckpoints[ReplacementCheckpoint.Key] = SpawnedCheckpoint; + if (ReplacementCheckpoint.Key == 0) + { + BountyCheckpoints[ReplacementCheckpoint.Key]->Active = true; + BountyCheckpoints[ReplacementCheckpoint.Key]->CompletedCheckpoint.AddDynamic(this, &ABountyClass::IncrementBountyCheckpoint); + } + } +} + diff --git a/EndlessVendetta/Source/EndlessVendetta/BountySystem/BountyClass.h b/EndlessVendetta/Source/EndlessVendetta/BountySystem/BountyClass.h index d56e3d21..9dfb87e1 100644 --- a/EndlessVendetta/Source/EndlessVendetta/BountySystem/BountyClass.h +++ b/EndlessVendetta/Source/EndlessVendetta/BountySystem/BountyClass.h @@ -3,24 +3,140 @@ #pragma once #include "CoreMinimal.h" +#include "CheckpointClass.h" #include "GameFramework/Actor.h" #include "BountyClass.generated.h" +DECLARE_DYNAMIC_MULTICAST_DELEGATE(FCompletedFirstCheckpoint) + UCLASS() class ENDLESSVENDETTA_API ABountyClass : public AActor { GENERATED_BODY() + + // Used to temp store value of incoming replacement checkpoint class + TSubclassOf ReplacementCheckpointClass; -public: - // Sets default values for this actor's properties - ABountyClass(); + bool BountyStarted = false; protected: + // ------- Properties Set in Editor -------------- + UPROPERTY(EditDefaultsOnly, Category = "Bounty") + TArray> CheckpointsToSpawn; + + UPROPERTY(EditDefaultsOnly, Category = "Bounty") + int RewardMoney = 0; + + UPROPERTY(EditDefaultsOnly, Category = "Bounty") + FString BountyTitle; + + UPROPERTY(EditDefaultsOnly, Category = "Bounty") + FString BountyDesc; + // ----------------------------------------------- + + bool Completed = false; + + /** + * Default is 2 as final step in most Bounties is to return to ship, + * which can't be completed. Change to 1 if that's not the case. + */ + int MinCPsRequiredForCompletion = 2; + + // Spawned in Checkpoints for this Bounty + TArray BountyCheckpoints; + + // Spawns and stores this Bounties Checkpoints in order + void SpawnCheckpoints(); + // Called when the game starts or when spawned virtual void BeginPlay() override; -public: - // Called every frame - virtual void Tick(float DeltaTime) override; + +public: + // Broadcast when first checkpoint from this bounty is completed + FCompletedFirstCheckpoint CompletedFirstCheckpoint; + // ------ Getters for Bounty and Checkpoint Properties ------ + bool IsCompleted() + { + return Completed; + } + + FString GetBountyTitle() + { + return BountyTitle; + } + + FString GetBountyDesc() + { + return BountyDesc; + } + + FVector GetCheckpointLocation() + { + if (BountyCheckpoints.IsEmpty() || BountyCheckpoints[0] == nullptr) + { + return FVector(0, 0, 0); + } + + return BountyCheckpoints[0]->GetCheckpointSpawnTransform().GetLocation(); + } + + FVector GetActiveWaypointLocation() + { + if (BountyCheckpoints.IsEmpty() || BountyCheckpoints[0] == nullptr) + { + return FVector(0, 0, 0); + } + + return BountyCheckpoints[0]->GetWaypointLoc(); + } + + UTexture2D* GetActiveWaypointIcon() + { + if (BountyCheckpoints.IsEmpty() || BountyCheckpoints[0] == nullptr) + { + return nullptr; + } + + return BountyCheckpoints[0]->GetWaypointIcon(); + } + + FString GetCheckpointDescription() + { + if (BountyCheckpoints.IsEmpty() || BountyCheckpoints[0] == nullptr) + { + return FString("No more Bounty checkpoints, check BountyClass.h GetCheckpointDescription()"); + } + + return BountyCheckpoints[0]->GetCheckpointDesc(); + } + // ---------------------------------------------------------- + + // Sets default values for this actor's properties + ABountyClass(); + + // Called every frame + virtual void Tick(float DeltaTime) override; + + // Called when a checkpoint is completed, handles moving onto next checkpoint and discarding the old one + UFUNCTION() + virtual void IncrementBountyCheckpoint(); + + // Collect Money in C++, any other special reward will be implemented in BP if neccessary + UFUNCTION(BlueprintCallable, BlueprintNativeEvent) + void CollectRewards(); + + void DestroyReturnToShipStep() + { + if (BountyCheckpoints.Num() > 1) + { + UE_LOG(LogTemp, Warning, TEXT("Didn't Destroy final step as more than one steps still left in Bounty")); + } + + BountyCheckpoints[0]->Destroy(); + } + + // Called by Bounty Director, replaces specified checkpoints to alter Bounty when player completes a side bounty + void UpdateBountyCheckpoints(TMap> ReplacementCheckpoints); }; From 9a75262e6644bf7fa212e79a512f88cbf69c1645 Mon Sep 17 00:00:00 2001 From: Marcel Hara Date: Wed, 27 Sep 2023 17:42:35 +0100 Subject: [PATCH 009/112] Added Pickup Functionality and working on spawning to hand --- .../Blueprints/BP_FirstPersonCharacter.uasset | 4 +- .../AssaultRifles/BP_BaseAssaultRifle.uasset | 3 ++ .../Pistols/BP_BasePistolWeapon.uasset | 4 +- .../Actions/IA_EquipPrimaryWeapon.uasset | 3 ++ .../Actions/IA_EquipSecondaryWeapon.uasset | 3 ++ .../Input/Actions/IA_WeaponEquip.uasset | 3 -- .../FirstPerson/Input/IMC_Default.uasset | 4 +- .../1/1E/W6O6OMVMAU1GMH2HVWXH3L.uasset | 2 +- .../7/GA/SIX97XFU4YK3BWI9S71SMF.uasset | 3 ++ .../EndlessVendettaCharacter.cpp | 52 +++++++++++++++++-- .../EndlessVendettaCharacter.h | 28 +++++++--- .../EndlessVendetta/WeaponInventory.cpp | 44 ---------------- .../Source/EndlessVendetta/WeaponInventory.h | 44 ---------------- 13 files changed, 86 insertions(+), 111 deletions(-) create mode 100644 EndlessVendetta/Content/FirstPerson/Blueprints/BaseWeapons/AssaultRifles/BP_BaseAssaultRifle.uasset create mode 100644 EndlessVendetta/Content/FirstPerson/Input/Actions/IA_EquipPrimaryWeapon.uasset create mode 100644 EndlessVendetta/Content/FirstPerson/Input/Actions/IA_EquipSecondaryWeapon.uasset delete mode 100644 EndlessVendetta/Content/FirstPerson/Input/Actions/IA_WeaponEquip.uasset create mode 100644 EndlessVendetta/Content/__ExternalActors__/FirstPerson/Maps/GunMechanicTester/7/GA/SIX97XFU4YK3BWI9S71SMF.uasset delete mode 100644 EndlessVendetta/Source/EndlessVendetta/WeaponInventory.cpp delete mode 100644 EndlessVendetta/Source/EndlessVendetta/WeaponInventory.h diff --git a/EndlessVendetta/Content/FirstPerson/Blueprints/BP_FirstPersonCharacter.uasset b/EndlessVendetta/Content/FirstPerson/Blueprints/BP_FirstPersonCharacter.uasset index 690d04ef..0877150a 100644 --- a/EndlessVendetta/Content/FirstPerson/Blueprints/BP_FirstPersonCharacter.uasset +++ b/EndlessVendetta/Content/FirstPerson/Blueprints/BP_FirstPersonCharacter.uasset @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:2d5de8f4e27f1e085417782dd7729fc662c3ab813afabba992a0bfe6ad51573c -size 35545 +oid sha256:92f8bdd8d4e8196894411a8141429f15316d83e076b0163070ee174bd3eb4ac7 +size 32087 diff --git a/EndlessVendetta/Content/FirstPerson/Blueprints/BaseWeapons/AssaultRifles/BP_BaseAssaultRifle.uasset b/EndlessVendetta/Content/FirstPerson/Blueprints/BaseWeapons/AssaultRifles/BP_BaseAssaultRifle.uasset new file mode 100644 index 00000000..50209cd2 --- /dev/null +++ b/EndlessVendetta/Content/FirstPerson/Blueprints/BaseWeapons/AssaultRifles/BP_BaseAssaultRifle.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:8b311799aa263b7af6d3eb738da33d39b0d40d7883bf0a4e3cb6024e06157cec +size 37724 diff --git a/EndlessVendetta/Content/FirstPerson/Blueprints/BaseWeapons/Pistols/BP_BasePistolWeapon.uasset b/EndlessVendetta/Content/FirstPerson/Blueprints/BaseWeapons/Pistols/BP_BasePistolWeapon.uasset index 16d0e458..fe34a700 100644 --- a/EndlessVendetta/Content/FirstPerson/Blueprints/BaseWeapons/Pistols/BP_BasePistolWeapon.uasset +++ b/EndlessVendetta/Content/FirstPerson/Blueprints/BaseWeapons/Pistols/BP_BasePistolWeapon.uasset @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:f562f592d0a4fc6f34c7deb5c861593a1b7282f786b19b3789fbac2bee01c7a1 -size 29063 +oid sha256:60c71c86a00bef84374641ca7fed67e2338916dba788e69d643a8477add71d97 +size 29026 diff --git a/EndlessVendetta/Content/FirstPerson/Input/Actions/IA_EquipPrimaryWeapon.uasset b/EndlessVendetta/Content/FirstPerson/Input/Actions/IA_EquipPrimaryWeapon.uasset new file mode 100644 index 00000000..62f17b30 --- /dev/null +++ b/EndlessVendetta/Content/FirstPerson/Input/Actions/IA_EquipPrimaryWeapon.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e8920145a0a5f7ac0f10a98d15f35f28926503ff5d3ea093c79a07688b92bfdf +size 1707 diff --git a/EndlessVendetta/Content/FirstPerson/Input/Actions/IA_EquipSecondaryWeapon.uasset b/EndlessVendetta/Content/FirstPerson/Input/Actions/IA_EquipSecondaryWeapon.uasset new file mode 100644 index 00000000..3c045634 --- /dev/null +++ b/EndlessVendetta/Content/FirstPerson/Input/Actions/IA_EquipSecondaryWeapon.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:8f05f0bf87ed32cb40eac24d420dc279e2e808df4358300d3f3b839530267584 +size 1717 diff --git a/EndlessVendetta/Content/FirstPerson/Input/Actions/IA_WeaponEquip.uasset b/EndlessVendetta/Content/FirstPerson/Input/Actions/IA_WeaponEquip.uasset deleted file mode 100644 index d06772c3..00000000 --- a/EndlessVendetta/Content/FirstPerson/Input/Actions/IA_WeaponEquip.uasset +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:d0c07e01e5199aaa3d4e7fb5dc36733918e91aa93620cbef070e2472021315d4 -size 1672 diff --git a/EndlessVendetta/Content/FirstPerson/Input/IMC_Default.uasset b/EndlessVendetta/Content/FirstPerson/Input/IMC_Default.uasset index 4568b732..c85553cd 100644 --- a/EndlessVendetta/Content/FirstPerson/Input/IMC_Default.uasset +++ b/EndlessVendetta/Content/FirstPerson/Input/IMC_Default.uasset @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:7d38ac187045f18e01436a5d90333878b3490d25037c84c712f943cb34f785bb -size 14484 +oid sha256:ffa41b9939bbfe39ea2480464028578938aa1a8c0acc1edeac030ade6d1d9d76 +size 14001 diff --git a/EndlessVendetta/Content/__ExternalActors__/FirstPerson/Maps/GunMechanicTester/1/1E/W6O6OMVMAU1GMH2HVWXH3L.uasset b/EndlessVendetta/Content/__ExternalActors__/FirstPerson/Maps/GunMechanicTester/1/1E/W6O6OMVMAU1GMH2HVWXH3L.uasset index 9414b284..fa367335 100644 --- a/EndlessVendetta/Content/__ExternalActors__/FirstPerson/Maps/GunMechanicTester/1/1E/W6O6OMVMAU1GMH2HVWXH3L.uasset +++ b/EndlessVendetta/Content/__ExternalActors__/FirstPerson/Maps/GunMechanicTester/1/1E/W6O6OMVMAU1GMH2HVWXH3L.uasset @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:df93071fd48bde5bf300bdb99470e05451e488b38627fbf6b22212b3c03e0fd3 +oid sha256:abfeb59ea7bea538e1b873a97345a0336c40b7c353d167ddd1a4fac4a16dcad6 size 5061 diff --git a/EndlessVendetta/Content/__ExternalActors__/FirstPerson/Maps/GunMechanicTester/7/GA/SIX97XFU4YK3BWI9S71SMF.uasset b/EndlessVendetta/Content/__ExternalActors__/FirstPerson/Maps/GunMechanicTester/7/GA/SIX97XFU4YK3BWI9S71SMF.uasset new file mode 100644 index 00000000..bd2505f8 --- /dev/null +++ b/EndlessVendetta/Content/__ExternalActors__/FirstPerson/Maps/GunMechanicTester/7/GA/SIX97XFU4YK3BWI9S71SMF.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:4c7be8ced7b103ba47409aefeea3621d8602fcd366160651c53447a7c2f866e4 +size 5097 diff --git a/EndlessVendetta/Source/EndlessVendetta/EndlessVendettaCharacter.cpp b/EndlessVendetta/Source/EndlessVendetta/EndlessVendettaCharacter.cpp index f9dc4927..ef3f3c8e 100644 --- a/EndlessVendetta/Source/EndlessVendetta/EndlessVendettaCharacter.cpp +++ b/EndlessVendetta/Source/EndlessVendetta/EndlessVendettaCharacter.cpp @@ -71,7 +71,53 @@ void AEndlessVendettaCharacter::SetupPlayerInputComponent(class UInputComponent* EnhancedInputComponent->BindAction(LookAction, ETriggerEvent::Triggered, this, &AEndlessVendettaCharacter::Look); //Weapon Switching - EnhancedInputComponent->BindAction(WeaponEquipAction, ETriggerEvent::Triggered, this, &AEndlessVendettaCharacter::WeaponEquip); + EnhancedInputComponent->BindAction(EquipPrimaryWeapon, ETriggerEvent::Triggered, this, &AEndlessVendettaCharacter::EquipPrimary); + EnhancedInputComponent->BindAction(EquipSecondaryWeapon, ETriggerEvent::Triggered, this, &AEndlessVendettaCharacter::EquipSecondary); + } +} + +void AEndlessVendettaCharacter::EquipPrimary() +{ + UE_LOG(LogTemp, Display, TEXT("Primary equipped")); +} + +void AEndlessVendettaCharacter::EquipSecondary() +{ + UE_LOG(LogTemp, Display, TEXT("Secondary equipped")); +} + +//Called from Player BluePrints +void AEndlessVendettaCharacter::WeaponPickUpSystem(AActor* PickedUpWeapon) +{ + ABaseWeaponClass* WeaponInWorld = Cast(PickedUpWeapon); + if(WeaponInWorld->IsA(ABaseWeaponClass::StaticClass())) + { + if(PrimaryWeapon) + { + UE_LOG(LogTemp, Display, TEXT("Primary Weapon Picked up")); + bHasRifle = true; + FVector loc = GetActorLocation() + FVector(-50, 0, 0); + FRotator rot = GetActorRotation(); + FActorSpawnParameters spawnParams; + spawnParams.SpawnCollisionHandlingOverride = ESpawnActorCollisionHandlingMethod::AlwaysSpawn; + FAttachmentTransformRules AttachmentRules(EAttachmentRule::SnapToTarget, true); + //WeaponInWorld = Cast(GetWorld()->SpawnActor(PrimaryWeapon, loc, rot, spawnParams)); + WeaponInWorld->AttachToComponent(Mesh1P, AttachmentRules, FName("GripPoint")); + WeaponInWorld->Destroy(); + + //for some reason the spawning of the weapon is broken to the players hand so need to fix this. + + // potentially add a varibable to check if its a secondary or priamry weapon being picked up + // add this in the baseweaponclass variable + } + } + if(WeaponInWorld->IsA(ABaseWeaponClass::StaticClass())) + { + if(SecondaryWeapon) + { + UE_LOG(LogTemp, Display, TEXT("Secondary Weapon Picked up")); + + } } } @@ -102,10 +148,6 @@ void AEndlessVendettaCharacter::Look(const FInputActionValue& Value) } } -void AEndlessVendettaCharacter::WeaponEquip() -{ - UE_LOG(LogTemp, Display, TEXT("EQUIPPING WEAPONS")); -} void AEndlessVendettaCharacter::SetHasRifle(bool bNewHasRifle) { diff --git a/EndlessVendetta/Source/EndlessVendetta/EndlessVendettaCharacter.h b/EndlessVendetta/Source/EndlessVendetta/EndlessVendettaCharacter.h index c9405896..c96f307f 100644 --- a/EndlessVendetta/Source/EndlessVendetta/EndlessVendettaCharacter.h +++ b/EndlessVendetta/Source/EndlessVendetta/EndlessVendettaCharacter.h @@ -3,6 +3,7 @@ #pragma once #include "CoreMinimal.h" +#include "BaseWeaponClass.h" #include "GameFramework/Character.h" #include "InputActionValue.h" #include "EndlessVendettaCharacter.generated.h" @@ -42,7 +43,10 @@ class AEndlessVendettaCharacter : public ACharacter /** Weapon Equip Action */ UPROPERTY(EditAnywhere, BlueprintReadOnly, Category=Input, meta=(AllowPrivateAccess = "true")) - class UInputAction* WeaponEquipAction; + class UInputAction* EquipPrimaryWeapon; + + UPROPERTY(EditAnywhere, BlueprintReadOnly, Category=Input, meta=(AllowPrivateAccess = "true")) + class UInputAction* EquipSecondaryWeapon; public: @@ -69,15 +73,27 @@ public: UFUNCTION(BlueprintCallable, Category = Weapon) bool GetHasRifle(); + UPROPERTY(EditAnywhere, Category = "Weapons") + TSubclassOf PrimaryWeapon; + + UPROPERTY(EditAnywhere, Category = "Weapons") + TSubclassOf SecondaryWeapon; + protected: /** Called for movement input */ void Move(const FInputActionValue& Value); /** Called for looking input */ void Look(const FInputActionValue& Value); + + void EquipPrimary(); + + void EquipSecondary(); - void WeaponEquip(); - + //Called from Player BluePrints + UFUNCTION(BlueprintCallable, Category = "Weapons") + void WeaponPickUpSystem(AActor* PickedUpWeapon); + protected: // APawn interface virtual void SetupPlayerInputComponent(UInputComponent* InputComponent) override; @@ -88,10 +104,6 @@ public: USkeletalMeshComponent* GetMesh1P() const { return Mesh1P; } /** Returns FirstPersonCameraComponent subobject **/ UCameraComponent* GetFirstPersonCameraComponent() const { return FirstPersonCameraComponent; } - -private: - UWeaponInventory* WeaponInventory; - - + }; diff --git a/EndlessVendetta/Source/EndlessVendetta/WeaponInventory.cpp b/EndlessVendetta/Source/EndlessVendetta/WeaponInventory.cpp deleted file mode 100644 index 97262c6c..00000000 --- a/EndlessVendetta/Source/EndlessVendetta/WeaponInventory.cpp +++ /dev/null @@ -1,44 +0,0 @@ -// Fill out your copyright notice in the Description page of Project Settings. - - -#include "WeaponInventory.h" - -#include "WeaponItemClass.h" - - -// Sets default values for this component's properties -UWeaponInventory::UWeaponInventory() -{ - // Set this component to be initialized when the game starts, and to be ticked every frame. You can turn these features - // off to improve performance if you don't need them. - PrimaryComponentTick.bCanEverTick = true; - -} - - -// Called when the game starts -void UWeaponInventory::BeginPlay() -{ - Super::BeginPlay(); - - // ... - -} - - -// Called every frame -void UWeaponInventory::TickComponent(float DeltaTime, ELevelTick TickType, FActorComponentTickFunction* ThisTickFunction) -{ - Super::TickComponent(DeltaTime, TickType, ThisTickFunction); - - // ... -} - -//Called from blueprints from the player -void UWeaponInventory::WeaponPickup(AActor* WeaponPickedUp) -{ - AWeaponItemClass* WeaponItemClass = Cast(WeaponPickedUp); - WeaponsArray.Add(WeaponItemClass); - WeaponPickedUp->Destroy(); -} - diff --git a/EndlessVendetta/Source/EndlessVendetta/WeaponInventory.h b/EndlessVendetta/Source/EndlessVendetta/WeaponInventory.h deleted file mode 100644 index b060d0ac..00000000 --- a/EndlessVendetta/Source/EndlessVendetta/WeaponInventory.h +++ /dev/null @@ -1,44 +0,0 @@ -// Fill out your copyright notice in the Description page of Project Settings. - -#pragma once - -#include "CoreMinimal.h" -#include "Components/ActorComponent.h" -#include "WeaponInventory.generated.h" - - -class AWeaponItemClass; - -UCLASS(ClassGroup=(Custom), meta=(BlueprintSpawnableComponent)) -class ENDLESSVENDETTA_API UWeaponInventory : public UActorComponent -{ - GENERATED_BODY() - -public: - // Sets default values for this component's properties - UWeaponInventory(); - -protected: - // Called when the game starts - virtual void BeginPlay() override; - - UPROPERTY(VisibleAnywhere, Category = "Weapon System") - TArray WeaponsArray; - -public: - // Called every frame - virtual void TickComponent(float DeltaTime, ELevelTick TickType, FActorComponentTickFunction* ThisTickFunction) override; - - //Using a getter to get the protected weaponsArray - UFUNCTION() - TArray GetWeaponArray() const { return WeaponsArray; } - - //Using a Setter to set the protected weapons array to the getter - UFUNCTION() - void SetArray(const TArray weaponArray) { WeaponsArray = weaponArray; } - -private: - //Called from blueprints from the player - UFUNCTION(BlueprintCallable) - void WeaponPickup(AActor* WeaponPickedUp); -}; From 5e6f5e4b9e2ff90e12fe1cd6682e70c3fbd0f1e0 Mon Sep 17 00:00:00 2001 From: Rafal Swierczek <34179rs@gmail.com> Date: Wed, 27 Sep 2023 18:52:35 +0100 Subject: [PATCH 010/112] Implemented Side Bounty Class Functionality --- .../Architecture/Floor_400x400.uasset | 4 +-- .../HDRI/HDRI_Epic_Courtyard_Daylight.uasset | 4 +-- .../BountySystem/SideBountyClass.cpp | 30 +++++++++++++++++++ .../BountySystem/SideBountyClass.h | 24 +++++++++++++-- 4 files changed, 55 insertions(+), 7 deletions(-) diff --git a/EndlessVendetta/Content/StarterContent/Architecture/Floor_400x400.uasset b/EndlessVendetta/Content/StarterContent/Architecture/Floor_400x400.uasset index b62ede04..c2a34afc 100644 --- a/EndlessVendetta/Content/StarterContent/Architecture/Floor_400x400.uasset +++ b/EndlessVendetta/Content/StarterContent/Architecture/Floor_400x400.uasset @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:1b95b1625b69860032c6a30ad9af83d68e7c0214b449e5355e3affa071fa6230 -size 14831 +oid sha256:4c0ecf0ac0702cc2bd355ec050232a61c49e10f102448efbeb735a51824adef6 +size 14948 diff --git a/EndlessVendetta/Content/StarterContent/HDRI/HDRI_Epic_Courtyard_Daylight.uasset b/EndlessVendetta/Content/StarterContent/HDRI/HDRI_Epic_Courtyard_Daylight.uasset index 0f990580..bc2f4981 100644 --- a/EndlessVendetta/Content/StarterContent/HDRI/HDRI_Epic_Courtyard_Daylight.uasset +++ b/EndlessVendetta/Content/StarterContent/HDRI/HDRI_Epic_Courtyard_Daylight.uasset @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:bc35eb2d43a47427d30aba0196f9eac90d089dd3abca319528c5d25c83510d0d -size 72364642 +oid sha256:8d8e13eaeaa5d8a31e974965a0e7f2c7cb546934b4129fe17baa4c26f838a051 +size 66790690 diff --git a/EndlessVendetta/Source/EndlessVendetta/BountySystem/SideBountyClass.cpp b/EndlessVendetta/Source/EndlessVendetta/BountySystem/SideBountyClass.cpp index 9cb7eb8b..e78f6b94 100644 --- a/EndlessVendetta/Source/EndlessVendetta/BountySystem/SideBountyClass.cpp +++ b/EndlessVendetta/Source/EndlessVendetta/BountySystem/SideBountyClass.cpp @@ -3,3 +3,33 @@ #include "SideBountyClass.h" +void ASideBountyClass::BeginPlay() +{ + Super::BeginPlay(); + + MinCPsRequiredForCompletion = 1; +} + +void ASideBountyClass::IncrementBountyCheckpoint() +{ + Super::IncrementBountyCheckpoint(); + + if (Completed) + { + CompletedSideBounty.Broadcast(ActiveSBC_Index); + } +} + +void ASideBountyClass::DestroyCheckpoints() +{ + for (int i = 0; i < BountyCheckpoints.Num(); i++) + { + if (BountyCheckpoints[i] == nullptr) + { + continue; + } + + BountyCheckpoints[i]->Destroy(); + } +} + diff --git a/EndlessVendetta/Source/EndlessVendetta/BountySystem/SideBountyClass.h b/EndlessVendetta/Source/EndlessVendetta/BountySystem/SideBountyClass.h index 460bb922..9c0dd1e2 100644 --- a/EndlessVendetta/Source/EndlessVendetta/BountySystem/SideBountyClass.h +++ b/EndlessVendetta/Source/EndlessVendetta/BountySystem/SideBountyClass.h @@ -6,12 +6,30 @@ #include "BountyClass.h" #include "SideBountyClass.generated.h" -/** - * - */ +DECLARE_DYNAMIC_MULTICAST_DELEGATE_OneParam(FCompletedSideBounty, int, SB_Index); + UCLASS() class ENDLESSVENDETTA_API ASideBountyClass : public ABountyClass { GENERATED_BODY() + + UPROPERTY(EditDefaultsOnly, Category = "Side Bounty") + TMap> ReplacementCheckpoints; + +protected: + virtual void BeginPlay() override; + +public: + FCompletedSideBounty CompletedSideBounty; + int ActiveSBC_Index; + + TMap> GetReplacementCheckpoints() + { + return ReplacementCheckpoints; + } + + virtual void IncrementBountyCheckpoint() override; + + void DestroyCheckpoints(); }; From 1432b479b28fff4906026a04b1a01f4be0a7518b Mon Sep 17 00:00:00 2001 From: MARCEL HARA Date: Thu, 28 Sep 2023 11:42:16 +0100 Subject: [PATCH 011/112] Added Simple Gun Swapping and un-equip --- .../FPWeapon/Materials/M_FPGunPistol.uasset | 3 ++ .../Blueprints/BP_FirstPersonCharacter.uasset | 4 +- .../Pistols/BP_BasePistolWeapon.uasset | 4 +- .../Architecture/Floor_400x400.uasset | 4 +- .../1/1E/W6O6OMVMAU1GMH2HVWXH3L.uasset | 3 -- .../7/GA/SIX97XFU4YK3BWI9S71SMF.uasset | 3 -- .../EndlessVendettaCharacter.cpp | 52 ++++++++++++++++--- .../EndlessVendettaCharacter.h | 14 +++-- 8 files changed, 64 insertions(+), 23 deletions(-) create mode 100644 EndlessVendetta/Content/FPWeapon/Materials/M_FPGunPistol.uasset delete mode 100644 EndlessVendetta/Content/__ExternalActors__/FirstPerson/Maps/GunMechanicTester/1/1E/W6O6OMVMAU1GMH2HVWXH3L.uasset delete mode 100644 EndlessVendetta/Content/__ExternalActors__/FirstPerson/Maps/GunMechanicTester/7/GA/SIX97XFU4YK3BWI9S71SMF.uasset diff --git a/EndlessVendetta/Content/FPWeapon/Materials/M_FPGunPistol.uasset b/EndlessVendetta/Content/FPWeapon/Materials/M_FPGunPistol.uasset new file mode 100644 index 00000000..1872dca9 --- /dev/null +++ b/EndlessVendetta/Content/FPWeapon/Materials/M_FPGunPistol.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:abb955fc6a17250b071cde3d7a9c1403826533ff48906851ff00c5205df1607d +size 30077 diff --git a/EndlessVendetta/Content/FirstPerson/Blueprints/BP_FirstPersonCharacter.uasset b/EndlessVendetta/Content/FirstPerson/Blueprints/BP_FirstPersonCharacter.uasset index 0877150a..00b38c8d 100644 --- a/EndlessVendetta/Content/FirstPerson/Blueprints/BP_FirstPersonCharacter.uasset +++ b/EndlessVendetta/Content/FirstPerson/Blueprints/BP_FirstPersonCharacter.uasset @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:92f8bdd8d4e8196894411a8141429f15316d83e076b0163070ee174bd3eb4ac7 -size 32087 +oid sha256:46657eb5de2de0259508b2ff818d484f06f895c13f8bb3d04c6fc34ea61659a1 +size 23694 diff --git a/EndlessVendetta/Content/FirstPerson/Blueprints/BaseWeapons/Pistols/BP_BasePistolWeapon.uasset b/EndlessVendetta/Content/FirstPerson/Blueprints/BaseWeapons/Pistols/BP_BasePistolWeapon.uasset index fe34a700..3f00099b 100644 --- a/EndlessVendetta/Content/FirstPerson/Blueprints/BaseWeapons/Pistols/BP_BasePistolWeapon.uasset +++ b/EndlessVendetta/Content/FirstPerson/Blueprints/BaseWeapons/Pistols/BP_BasePistolWeapon.uasset @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:60c71c86a00bef84374641ca7fed67e2338916dba788e69d643a8477add71d97 -size 29026 +oid sha256:202ab16b4ffa35b8b8140c728744b529514cd98e7cf595a674e0bd13bcfbaff9 +size 29227 diff --git a/EndlessVendetta/Content/StarterContent/Architecture/Floor_400x400.uasset b/EndlessVendetta/Content/StarterContent/Architecture/Floor_400x400.uasset index db9c31d9..1ea19b26 100644 --- a/EndlessVendetta/Content/StarterContent/Architecture/Floor_400x400.uasset +++ b/EndlessVendetta/Content/StarterContent/Architecture/Floor_400x400.uasset @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:c4714323c517973cefc36046bc8310e35417fac27e8b323667e4a46c5c09ba5f -size 14803 +oid sha256:e5a9006c075f35f1cab65fb02d8034543f6b54e6087f7352477f45abf6640e43 +size 14831 diff --git a/EndlessVendetta/Content/__ExternalActors__/FirstPerson/Maps/GunMechanicTester/1/1E/W6O6OMVMAU1GMH2HVWXH3L.uasset b/EndlessVendetta/Content/__ExternalActors__/FirstPerson/Maps/GunMechanicTester/1/1E/W6O6OMVMAU1GMH2HVWXH3L.uasset deleted file mode 100644 index fa367335..00000000 --- a/EndlessVendetta/Content/__ExternalActors__/FirstPerson/Maps/GunMechanicTester/1/1E/W6O6OMVMAU1GMH2HVWXH3L.uasset +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:abfeb59ea7bea538e1b873a97345a0336c40b7c353d167ddd1a4fac4a16dcad6 -size 5061 diff --git a/EndlessVendetta/Content/__ExternalActors__/FirstPerson/Maps/GunMechanicTester/7/GA/SIX97XFU4YK3BWI9S71SMF.uasset b/EndlessVendetta/Content/__ExternalActors__/FirstPerson/Maps/GunMechanicTester/7/GA/SIX97XFU4YK3BWI9S71SMF.uasset deleted file mode 100644 index bd2505f8..00000000 --- a/EndlessVendetta/Content/__ExternalActors__/FirstPerson/Maps/GunMechanicTester/7/GA/SIX97XFU4YK3BWI9S71SMF.uasset +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:4c7be8ced7b103ba47409aefeea3621d8602fcd366160651c53447a7c2f866e4 -size 5097 diff --git a/EndlessVendetta/Source/EndlessVendetta/EndlessVendettaCharacter.cpp b/EndlessVendetta/Source/EndlessVendetta/EndlessVendettaCharacter.cpp index ef3f3c8e..7195bf46 100644 --- a/EndlessVendetta/Source/EndlessVendetta/EndlessVendettaCharacter.cpp +++ b/EndlessVendetta/Source/EndlessVendetta/EndlessVendettaCharacter.cpp @@ -16,10 +16,10 @@ AEndlessVendettaCharacter::AEndlessVendettaCharacter() { // Character doesnt have a rifle at start bHasRifle = false; - + // Set size for collision capsule GetCapsuleComponent()->InitCapsuleSize(55.f, 96.0f); - + // Create a CameraComponent FirstPersonCameraComponent = CreateDefaultSubobject(TEXT("FirstPersonCamera")); FirstPersonCameraComponent->SetupAttachment(GetCapsuleComponent()); @@ -78,16 +78,54 @@ void AEndlessVendettaCharacter::SetupPlayerInputComponent(class UInputComponent* void AEndlessVendettaCharacter::EquipPrimary() { - UE_LOG(LogTemp, Display, TEXT("Primary equipped")); + if (!IsValid(PrimaryWeapon)) + { + if (IsValid(SecondaryWeapon)) EquipSecondary(); + + UE_LOG(LogTemp, Display, TEXT("Primary equipped")); + bHasRifle = true; + FActorSpawnParameters spawnParams; + spawnParams.SpawnCollisionHandlingOverride = ESpawnActorCollisionHandlingMethod::AlwaysSpawn; + FAttachmentTransformRules AttachmentRules(EAttachmentRule::SnapToTarget, true); + AActor* PrimaryWeaponActor = GetWorld()->SpawnActor(PrimaryWeaponClass, spawnParams); + PrimaryWeaponActor->AttachToComponent(Mesh1P, AttachmentRules, FName("GripPoint")); + PrimaryWeapon = Cast(PrimaryWeaponActor); + + } + else if (IsValid(PrimaryWeapon)) + { + PrimaryWeapon->Destroy(); + bHasRifle = false; + + } } void AEndlessVendettaCharacter::EquipSecondary() { - UE_LOG(LogTemp, Display, TEXT("Secondary equipped")); + if (!IsValid(SecondaryWeapon)) + { + if (IsValid(PrimaryWeapon)) EquipPrimary(); + + UE_LOG(LogTemp, Display, TEXT("Secondary equipped")); + bHasRifle = true; + FActorSpawnParameters spawnParams; + spawnParams.SpawnCollisionHandlingOverride = ESpawnActorCollisionHandlingMethod::AlwaysSpawn; + FAttachmentTransformRules AttachmentRules(EAttachmentRule::SnapToTarget, true); + AActor* SecondaryWeaponActor = GetWorld()->SpawnActor(SecondaryWeaponClass, spawnParams); + SecondaryWeaponActor->AttachToComponent(Mesh1P, AttachmentRules, FName("GripPoint")); + SecondaryWeapon = Cast(SecondaryWeaponActor); + } + else if (IsValid(SecondaryWeapon)) + { + SecondaryWeapon->Destroy(); + bHasRifle = false; + } } +//POTENTIAL PICKUP SYSTEM NEEDS CHANGING BUT YES + //Called from Player BluePrints -void AEndlessVendettaCharacter::WeaponPickUpSystem(AActor* PickedUpWeapon) +/*void AEndlessVendettaCharacter::WeaponPickUpSystem(AActor* PickedUpWeapon) { ABaseWeaponClass* WeaponInWorld = Cast(PickedUpWeapon); if(WeaponInWorld->IsA(ABaseWeaponClass::StaticClass())) @@ -116,10 +154,10 @@ void AEndlessVendettaCharacter::WeaponPickUpSystem(AActor* PickedUpWeapon) if(SecondaryWeapon) { UE_LOG(LogTemp, Display, TEXT("Secondary Weapon Picked up")); - + } } -} +}*/ void AEndlessVendettaCharacter::Move(const FInputActionValue& Value) diff --git a/EndlessVendetta/Source/EndlessVendetta/EndlessVendettaCharacter.h b/EndlessVendetta/Source/EndlessVendetta/EndlessVendettaCharacter.h index c96f307f..c5c020fc 100644 --- a/EndlessVendetta/Source/EndlessVendetta/EndlessVendettaCharacter.h +++ b/EndlessVendetta/Source/EndlessVendetta/EndlessVendettaCharacter.h @@ -6,6 +6,7 @@ #include "BaseWeaponClass.h" #include "GameFramework/Character.h" #include "InputActionValue.h" +#include "Components/ArrowComponent.h" #include "EndlessVendettaCharacter.generated.h" class UWeaponInventory; @@ -74,10 +75,15 @@ public: bool GetHasRifle(); UPROPERTY(EditAnywhere, Category = "Weapons") - TSubclassOf PrimaryWeapon; + TSubclassOf PrimaryWeaponClass; UPROPERTY(EditAnywhere, Category = "Weapons") - TSubclassOf SecondaryWeapon; + TSubclassOf SecondaryWeaponClass; + + ABaseWeaponClass* PrimaryWeapon; + + ABaseWeaponClass* SecondaryWeapon; + protected: /** Called for movement input */ @@ -91,8 +97,8 @@ protected: void EquipSecondary(); //Called from Player BluePrints - UFUNCTION(BlueprintCallable, Category = "Weapons") - void WeaponPickUpSystem(AActor* PickedUpWeapon); + //UFUNCTION(BlueprintCallable, Category = "Weapons") + //void WeaponPickUpSystem(AActor* PickedUpWeapon); protected: // APawn interface From 64fc74c5fc0f75ef70627d919d33a18d15ff825d Mon Sep 17 00:00:00 2001 From: MARCEL HARA Date: Thu, 28 Sep 2023 11:57:14 +0100 Subject: [PATCH 012/112] Added Comments to increase readability --- .../Source/EndlessVendetta/EndlessVendettaCharacter.cpp | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/EndlessVendetta/Source/EndlessVendetta/EndlessVendettaCharacter.cpp b/EndlessVendetta/Source/EndlessVendetta/EndlessVendettaCharacter.cpp index 7195bf46..189f8513 100644 --- a/EndlessVendetta/Source/EndlessVendetta/EndlessVendettaCharacter.cpp +++ b/EndlessVendetta/Source/EndlessVendetta/EndlessVendettaCharacter.cpp @@ -76,8 +76,13 @@ void AEndlessVendettaCharacter::SetupPlayerInputComponent(class UInputComponent* } } +//When 1 is pressed it calls EquipPrimary void AEndlessVendettaCharacter::EquipPrimary() { + //If primary weapon is not there but secondary weapon is it will call equipSecondary. + //EquipSecondary checks and sees that secondary is there so it will call to destroy itself + //Code goes back and sees primary weapon is not there anymore and spawns it in. + //Same thing for the EquipSecondary() if (!IsValid(PrimaryWeapon)) { if (IsValid(SecondaryWeapon)) EquipSecondary(); @@ -87,8 +92,11 @@ void AEndlessVendettaCharacter::EquipPrimary() FActorSpawnParameters spawnParams; spawnParams.SpawnCollisionHandlingOverride = ESpawnActorCollisionHandlingMethod::AlwaysSpawn; FAttachmentTransformRules AttachmentRules(EAttachmentRule::SnapToTarget, true); + //Creating a new actor object called PrimaryWeapon that is based off primaryweaponClass AActor* PrimaryWeaponActor = GetWorld()->SpawnActor(PrimaryWeaponClass, spawnParams); PrimaryWeaponActor->AttachToComponent(Mesh1P, AttachmentRules, FName("GripPoint")); + //Changing PrimaryWeaponActor to ABaseWeaponClass type instead of actor and storing it into PrimaryWeapon which is a ABaseClass Object + //We do this because we need to check if PrimaryWeapon is equipped and we want primaryweapon to be ABaseWeapon type and not a generic AActor PrimaryWeapon = Cast(PrimaryWeaponActor); } From 0fd1b60d52679ed623e1a7f8331ea6bb415834e2 Mon Sep 17 00:00:00 2001 From: Rafal Swierczek <34179rs@gmail.com> Date: Thu, 28 Sep 2023 15:19:26 +0100 Subject: [PATCH 013/112] Implemented Bounty Director Class Functionality --- .../Architecture/Floor_400x400.uasset | 4 +- .../HDRI/HDRI_Epic_Courtyard_Daylight.uasset | 4 +- .../BountySystem/BountyDirector.cpp | 138 +++++++++++++++++- .../BountySystem/BountyDirector.h | 78 +++++++++- .../BountySystem/CheckpointClass.h | 1 + 5 files changed, 211 insertions(+), 14 deletions(-) diff --git a/EndlessVendetta/Content/StarterContent/Architecture/Floor_400x400.uasset b/EndlessVendetta/Content/StarterContent/Architecture/Floor_400x400.uasset index c2a34afc..d8d11add 100644 --- a/EndlessVendetta/Content/StarterContent/Architecture/Floor_400x400.uasset +++ b/EndlessVendetta/Content/StarterContent/Architecture/Floor_400x400.uasset @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:4c0ecf0ac0702cc2bd355ec050232a61c49e10f102448efbeb735a51824adef6 -size 14948 +oid sha256:c253fc4685a93abd7626303f34194de38d32f2d1549008ec1051e50eff7e5c62 +size 14831 diff --git a/EndlessVendetta/Content/StarterContent/HDRI/HDRI_Epic_Courtyard_Daylight.uasset b/EndlessVendetta/Content/StarterContent/HDRI/HDRI_Epic_Courtyard_Daylight.uasset index bc2f4981..0f990580 100644 --- a/EndlessVendetta/Content/StarterContent/HDRI/HDRI_Epic_Courtyard_Daylight.uasset +++ b/EndlessVendetta/Content/StarterContent/HDRI/HDRI_Epic_Courtyard_Daylight.uasset @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:8d8e13eaeaa5d8a31e974965a0e7f2c7cb546934b4129fe17baa4c26f838a051 -size 66790690 +oid sha256:bc35eb2d43a47427d30aba0196f9eac90d089dd3abca319528c5d25c83510d0d +size 72364642 diff --git a/EndlessVendetta/Source/EndlessVendetta/BountySystem/BountyDirector.cpp b/EndlessVendetta/Source/EndlessVendetta/BountySystem/BountyDirector.cpp index 67e12786..9e622442 100644 --- a/EndlessVendetta/Source/EndlessVendetta/BountySystem/BountyDirector.cpp +++ b/EndlessVendetta/Source/EndlessVendetta/BountySystem/BountyDirector.cpp @@ -3,6 +3,8 @@ #include "BountyDirector.h" +#include "Components/ArrowComponent.h" + // Sets default values ABountyDirector::ABountyDirector() { @@ -11,17 +13,139 @@ ABountyDirector::ABountyDirector() } -// Called when the game starts or when spawned -void ABountyDirector::BeginPlay() -{ - Super::BeginPlay(); - -} - // Called every frame void ABountyDirector::Tick(float DeltaTime) { Super::Tick(DeltaTime); } +// Called when the game starts or when spawned +void ABountyDirector::BeginPlay() +{ + Super::BeginPlay(); + + PlayerChar = Cast(GetWorld()->GetFirstPlayerController()->GetCharacter()); + if (!IsValid(PlayerChar)) UE_LOG(LogTemp, Fatal, TEXT("Players Character isn't being loaded in BeginPlay() in BountyDirector")); + + // Setup a component for bounties to attach to on the player + for (UActorComponent* ActorComp : PlayerChar->GetComponentsByTag(UArrowComponent::StaticClass(), FName("Bounty"))) + { + BountyAttachmentPoint = Cast(ActorComp); + if (!IsValid(BountyAttachmentPoint)) UE_LOG(LogTemp, Fatal, TEXT("There's no Bounty Attachment UArrowComponent on Players Char ")); + break; + } + + // Setup up starting Side Bounty indexes + for (int Index = 0; Index < 3; Index++) + { + CurrentSideBountyIndexes.Add(Index); + } + + ActiveSideBounties.SetNum(3); + SpawnBountyAndItsSideBounties(); + UpdateBountyDisplay(); +} + +void ABountyDirector::SpawnBountyAndItsSideBounties() +{ + UE_LOG(LogTemp, Warning, TEXT("Spawning Bounty...")); + + if (BountyClassArray.IsEmpty()) return; + if (!IsValid(BountyClassArray[CurrentBountyIndex])) UE_LOG(LogTemp, Fatal, TEXT("Missing Bounty at Index: %d"), CurrentBountyIndex); + + // Spawn Main Bounty which the current bounty index is pointing to + FActorSpawnParameters SpawnParams; + SpawnParams.SpawnCollisionHandlingOverride = ESpawnActorCollisionHandlingMethod::AlwaysSpawn; + + AActor* BountyActor = GetWorld()->SpawnActor(BountyClassArray[CurrentBountyIndex], PlayerChar->GetActorLocation(), PlayerChar->GetActorRotation(), SpawnParams); + const FAttachmentTransformRules AttachmentTransformRules(EAttachmentRule::SnapToTarget, true); + BountyActor->AttachToComponent(BountyAttachmentPoint, AttachmentTransformRules); + + ActiveBounty = Cast(BountyActor); + if (!IsValid(ActiveBounty)) UE_LOG(LogTemp, Fatal, TEXT("Failed to Cast to Bounty class")); + + // WHEN MARCEL STOPS PLAYING WITH THE CHARACTER, ADD THIS BOUNTY TO PLAYERS ARRAY OF ACTIVE BOUNTIES!!!!! + ActiveBounty->CompletedFirstCheckpoint.AddDynamic(this, &ABountyDirector::DestroyActiveSideBounties); + + // Spawn in Side Bounties which are linked to the Main Bounty + int ActiveSideBountyIndex = 0; + for (int CurrentSideBountyIndex : CurrentSideBountyIndexes) + { + if (SideBountyClassArray.Num() <= CurrentSideBountyIndex || !IsValid(SideBountyClassArray[CurrentSideBountyIndex])) continue; + + AActor* SideBountyActor = GetWorld()->SpawnActor(SideBountyClassArray[CurrentSideBountyIndex], PlayerChar->GetActorLocation(), PlayerChar->GetActorRotation(), SpawnParams); + ASideBountyClass* SideBounty = Cast(SideBountyActor); + SideBounty->AttachToComponent(BountyAttachmentPoint, AttachmentTransformRules); + + ActiveSideBounties[ActiveSideBountyIndex] = SideBounty; + SideBounty->ActiveSBC_Index = ActiveSideBountyIndex; + ActiveSideBounties[ActiveSideBountyIndex]->CompletedSideBounty.AddDynamic(this, &ABountyDirector::SideBountyCompleted); + // ONCE AGAIN WHEN MARCEL STOPS PLAYING WITH THE CHARACTER, ADD THIS SIDE BOUNTY TO PLAYERS ARRAY OF ACTIVE BOUNTIES!!!!! + ActiveSideBountyIndex++; + } +} + +void ABountyDirector::UpdateBountyProgression() +{ + if (!IsValid(ActiveBounty)) return; + + if (ActiveBounty->IsCompleted()) FinishActiveBounty(); +} + +void ABountyDirector::FinishActiveBounty() +{ + ActiveBounty->CollectRewards(); + + // Destroy old Bounties + ActiveBounty->DestroyReturnToShipStep(); + ActiveBounty->Destroy(); + DestroyActiveSideBounties(); + + // Increment Main and Side Bounty Indexes + CurrentBountyIndex++; + for (int i = 0; i < 3; i++) + { + CurrentSideBountyIndexes[i] += 3; + } + + // Game Completion Check + if (CurrentBountyIndex >= BountyClassArray.Num()) + { + UE_LOG(LogTemp, Warning, TEXT("Finished all bounties currently available in the game :)")); + ActiveBounty = nullptr; + UpdateBountyDisplay(); + return; + } + + SpawnBountyAndItsSideBounties(); + UpdateBountyDisplay(); +} + +void ABountyDirector::DestroyActiveSideBounties() +{ + for (ASideBountyClass* SideBounty : ActiveSideBounties) + { + if (!IsValid(SideBounty)) continue; + + // WHEN MARCEL STOPS PLAYING WITH PLAYERS CHARACTER, REMOVE THIS SIDE BOUNTY FROM ACTIVE BOUNTIES + + SideBounty->DestroyCheckpoints(); + SideBounty->Destroy(); + } + + UpdateBountyDisplay(); +} + +void ABountyDirector::SideBountyCompleted(int SideBountyIndex) +{ + UE_LOG(LogTemp,Warning,TEXT("Updating Main Bounties Checkpoints")); + ActiveBounty->UpdateBountyCheckpoints(ActiveSideBounties[SideBountyIndex]->GetReplacementCheckpoints()); + + // WHEN MARCEL STOPS PLAYING WITH PLAYER CHAR, REMOVE THIS SIDE BOUNTY FROM ACTIVE BOUNTIES + ActiveSideBounties[SideBountyIndex]->DestroyCheckpoints(); + ActiveSideBounties[SideBountyIndex]->Destroy(); + + UpdateBountyDisplay(); +} + diff --git a/EndlessVendetta/Source/EndlessVendetta/BountySystem/BountyDirector.h b/EndlessVendetta/Source/EndlessVendetta/BountySystem/BountyDirector.h index 7192ce21..00b69ef9 100644 --- a/EndlessVendetta/Source/EndlessVendetta/BountySystem/BountyDirector.h +++ b/EndlessVendetta/Source/EndlessVendetta/BountySystem/BountyDirector.h @@ -3,6 +3,9 @@ #pragma once #include "CoreMinimal.h" +#include "BountyClass.h" +#include "SideBountyClass.h" +#include "EndlessVendetta/EndlessVendettaCharacter.h" #include "GameFramework/Actor.h" #include "BountyDirector.generated.h" @@ -11,16 +14,85 @@ class ENDLESSVENDETTA_API ABountyDirector : public AActor { GENERATED_BODY() -public: - // Sets default values for this actor's properties - ABountyDirector(); + AEndlessVendettaCharacter* PlayerChar; + // Scene Component Used to Attach Bounties to + UArrowComponent* BountyAttachmentPoint; + + // Ordered Array of Main Bounties + UPROPERTY(EditDefaultsOnly, Category = "Bounty") + TArray> BountyClassArray; + + // Ordered Array of Side Bounties, in three's + UPROPERTY(EditDefaultsOnly, Category = "Bounty") + TArray> SideBountyClassArray; + + int CurrentBountyIndex = 0; + + TArray CurrentSideBountyIndexes; + + UPROPERTY(VisibleAnywhere, Category = "Bounty") + ABountyClass* ActiveBounty; + + UPROPERTY(VisibleAnywhere, Category = "Bounty") + TArray ActiveSideBounties; + + // Checks if completed the bounty, and moves onto the next if so + UFUNCTION(BlueprintCallable, Category = "Bounty") + void UpdateBountyProgression(); + + void SpawnBountyAndItsSideBounties(); + + // Collect reward for current Bounty and prepare for the next + void FinishActiveBounty(); + protected: // Called when the game starts or when spawned virtual void BeginPlay() override; + /** Blueprint implemented function called from c++, handles aesthetic changes to bounty display + based on data from ActiveBC and ActiveSBC */ + UFUNCTION(BlueprintImplementableEvent, Category = "bounty") + void UpdateBountyDisplay(); + + // Ran when a Side Bounty is completed and wants to update the active bounties checkpoints + UFUNCTION() + void SideBountyCompleted(int SideBountyIndex); + + UFUNCTION() + void DestroyActiveSideBounties(); + public: // Called every frame virtual void Tick(float DeltaTime) override; + // Sets default values for this actor's properties + ABountyDirector(); + + // ------ Getters ------ + UFUNCTION(BlueprintCallable, Category = "Bounty") + FString GetBountyTitle() + { + return IsValid(ActiveBounty) ? FString("N/A") : ActiveBounty->GetBountyTitle(); + } + + UFUNCTION(BlueprintCallable, Category = "Bounty") + FString GetBountyDescription() + { + return IsValid(ActiveBounty) ? FString("N/A") : ActiveBounty->GetBountyDesc(); + } + + UFUNCTION(BlueprintCallable, Category = "Bounty") + FString GetSideBountyTitle(int SideBountyIndex) + { + return (SideBountyIndex > 2 || SideBountyIndex < 0 || IsValid(ActiveSideBounties[SideBountyIndex])) ? FString("N/A") : ActiveSideBounties[SideBountyIndex]->GetBountyTitle(); + } + + UFUNCTION(BlueprintCallable, Category = "Bounty") + FString GetSideBountyDescription(int SideBountyIndex) + { + return (SideBountyIndex > 2 || SideBountyIndex < 0 || IsValid(ActiveSideBounties[SideBountyIndex])) ? FString("N/A") : ActiveSideBounties[SideBountyIndex]->GetBountyDesc(); + } + + }; diff --git a/EndlessVendetta/Source/EndlessVendetta/BountySystem/CheckpointClass.h b/EndlessVendetta/Source/EndlessVendetta/BountySystem/CheckpointClass.h index c182b8cb..6991181a 100644 --- a/EndlessVendetta/Source/EndlessVendetta/BountySystem/CheckpointClass.h +++ b/EndlessVendetta/Source/EndlessVendetta/BountySystem/CheckpointClass.h @@ -27,6 +27,7 @@ class ENDLESSVENDETTA_API ACheckpointClass : public AActor UFUNCTION(BlueprintCallable, Category = "Checkpoint") void BroadcastCompletion() { + UE_LOG(LogTemp, Warning, TEXT("Completed Checkpoint")); CompletedCheckpoint.Broadcast(); } From 23c40b95b87e97db8043cc719d233ccf1e08306d Mon Sep 17 00:00:00 2001 From: PHILIP WHITE Date: Thu, 28 Sep 2023 17:21:57 +0100 Subject: [PATCH 014/112] Add Third Person Character Starter Pack --- .../.idea/discord-ij.xml | 7 + .../.idea.EndlessVendetta.dir/.idea/vcs.xml | 6 + EndlessVendetta/Config/DefaultEngine.ini | 6 +- EndlessVendetta/Config/DefaultInput.ini | 13 ++ .../Mannequin_UE4/Animations/Jog_Fwd.uasset | 3 + .../Materials/Layers/ML_Latex_Black.uasset | 3 + .../Layers/ML_ShinyPlastic_Beige.uasset | 3 + .../Layers/ML_ShinyPlastic_Beige_Logo.uasset | 3 + .../Materials/Layers/ML_SoftMetal.uasset | 3 + .../Materials/M_MannequinUE4_Body.uasset | 3 + .../Materials/M_MannequinUE4_ChestLogo.uasset | 3 + .../Mannequin_UE4/Meshes/SK_Mannequin.uasset | 3 + .../Meshes/SK_Mannequin_PhysicsAsset.uasset | 3 + .../Meshes/SK_Mannequin_Skeleton.uasset | 3 + .../Rigs/IK_UE4_Mannequin.uasset | 3 + .../Rigs/RTG_UE4Manny_UE5Manny.uasset | 3 + .../Rigs/RTG_UE5Manny_UE4Manny.uasset | 3 + .../Textures/T_ML_Aluminum01.uasset | 3 + .../Textures/T_ML_Aluminum01_N.uasset | 3 + .../Textures/T_ML_Rubber_Blue_01_D.uasset | 3 + .../Textures/T_ML_Rubber_Blue_01_N.uasset | 3 + .../Textures/T_UE4_Mannequin_MAT_MASKA.uasset | 3 + .../Textures/T_UE4_Mannequin__normals.uasset | 3 + .../Textures/T_UELogo_Mask.uasset | 3 + .../Textures/T_UELogo_N_TGA.uasset | 3 + .../Mannequins/Animations/ABP_Manny.uasset | 3 + .../Mannequins/Animations/ABP_Quinn.uasset | 3 + .../Animations/Manny/BS_MM_WalkRun.uasset | 3 + .../Animations/Manny/MM_Fall_Loop.uasset | 3 + .../Animations/Manny/MM_Idle.uasset | 3 + .../Animations/Manny/MM_Jump.uasset | 3 + .../Animations/Manny/MM_Land.uasset | 3 + .../Animations/Manny/MM_Run_Fwd.uasset | 3 + .../Animations/Manny/MM_T_Pose.uasset | 3 + .../Animations/Manny/MM_Walk_Fwd.uasset | 3 + .../Animations/Manny/MM_Walk_InPlace.uasset | 3 + .../Quinn/BS_MF_Unarmed_WalkRun.uasset | 3 + .../Animations/Quinn/MF_Idle.uasset | 3 + .../Animations/Quinn/MF_Run_Fwd.uasset | 3 + .../Animations/Quinn/MF_Walk_Fwd.uasset | 3 + .../Materials/Functions/CA_Mannequin.uasset | 3 + .../Materials/Functions/ChromaticCurve.uasset | 3 + .../Materials/Functions/MF_Diffraction.uasset | 3 + .../Materials/Functions/MF_logo3layers.uasset | 3 + .../Functions/ML_BaseColorFallOff.uasset | 3 + .../Instances/Manny/MI_Manny_01.uasset | 3 + .../Instances/Manny/MI_Manny_02.uasset | 3 + .../Instances/Quinn/MI_Quinn_01.uasset | 3 + .../Instances/Quinn/MI_Quinn_02.uasset | 3 + .../Mannequins/Materials/M_Mannequin.uasset | 3 + .../Meshes/Mannequin_LODSettings.uasset | 3 + .../Mannequins/Meshes/SKM_Manny.uasset | 3 + .../Mannequins/Meshes/SKM_Manny_Simple.uasset | 3 + .../Mannequins/Meshes/SKM_Quinn.uasset | 3 + .../Mannequins/Meshes/SKM_Quinn_Simple.uasset | 3 + .../Mannequins/Meshes/SK_Mannequin.uasset | 3 + .../Rigs/ABP_Manny_PostProcess.uasset | 3 + .../Rigs/ABP_Quinn_PostProcess.uasset | 3 + .../Rigs/CR_Mannequin_BasicFootIK.uasset | 3 + .../Mannequins/Rigs/CR_Mannequin_Body.uasset | 3 + .../Rigs/CR_Mannequin_Procedural.uasset | 3 + .../Mannequins/Rigs/IK_Mannequin.uasset | 3 + .../Mannequins/Rigs/PA_Mannequin.uasset | 3 + .../Rigs/Poses/Manny/Manny_calf_l_anim.uasset | 3 + .../Rigs/Poses/Manny/Manny_calf_l_pose.uasset | 3 + .../Rigs/Poses/Manny/Manny_calf_r_anim.uasset | 3 + .../Rigs/Poses/Manny/Manny_calf_r_pose.uasset | 3 + .../Poses/Manny/Manny_clavicle_l_anim.uasset | 3 + .../Poses/Manny/Manny_clavicle_l_pose.uasset | 3 + .../Poses/Manny/Manny_clavicle_r_anim.uasset | 3 + .../Poses/Manny/Manny_clavicle_r_pose.uasset | 3 + .../Rigs/Poses/Manny/Manny_foot_l_anim.uasset | 3 + .../Rigs/Poses/Manny/Manny_foot_l_pose.uasset | 3 + .../Rigs/Poses/Manny/Manny_foot_r_anim.uasset | 3 + .../Rigs/Poses/Manny/Manny_foot_r_pose.uasset | 3 + .../Rigs/Poses/Manny/Manny_hand_l_anim.uasset | 3 + .../Rigs/Poses/Manny/Manny_hand_l_pose.uasset | 3 + .../Rigs/Poses/Manny/Manny_hand_r_anim.uasset | 3 + .../Rigs/Poses/Manny/Manny_hand_r_pose.uasset | 3 + .../Poses/Manny/Manny_lowerarm_l_anim.uasset | 3 + .../Poses/Manny/Manny_lowerarm_l_pose.uasset | 3 + .../Poses/Manny/Manny_lowerarm_r_anim.uasset | 3 + .../Poses/Manny/Manny_lowerarm_r_pose.uasset | 3 + .../Poses/Manny/Manny_thigh_l_anim.uasset | 3 + .../Poses/Manny/Manny_thigh_l_pose.uasset | 3 + .../Poses/Manny/Manny_thigh_r_anim.uasset | 3 + .../Poses/Manny/Manny_thigh_r_pose.uasset | 3 + .../Poses/Manny/Manny_upperarm_l_anim.uasset | 3 + .../Poses/Manny/Manny_upperarm_l_pose.uasset | 3 + .../Poses/Manny/Manny_upperarm_r_anim.uasset | 3 + .../Poses/Manny/Manny_upperarm_r_pose.uasset | 3 + .../Rigs/Poses/Quinn/Quinn_calf_l_anim.uasset | 3 + .../Rigs/Poses/Quinn/Quinn_calf_l_pose.uasset | 3 + .../Rigs/Poses/Quinn/Quinn_calf_r_anim.uasset | 3 + .../Rigs/Poses/Quinn/Quinn_calf_r_pose.uasset | 3 + .../Poses/Quinn/Quinn_clavicle_l_anim.uasset | 3 + .../Poses/Quinn/Quinn_clavicle_l_pose.uasset | 3 + .../Poses/Quinn/Quinn_clavicle_r_anim.uasset | 3 + .../Poses/Quinn/Quinn_clavicle_r_pose.uasset | 3 + .../Rigs/Poses/Quinn/Quinn_foot_l_anim.uasset | 3 + .../Rigs/Poses/Quinn/Quinn_foot_l_pose.uasset | 3 + .../Rigs/Poses/Quinn/Quinn_foot_r_anim.uasset | 3 + .../Rigs/Poses/Quinn/Quinn_foot_r_pose.uasset | 3 + .../Rigs/Poses/Quinn/Quinn_hand_l_anim.uasset | 3 + .../Rigs/Poses/Quinn/Quinn_hand_l_pose.uasset | 3 + .../Rigs/Poses/Quinn/Quinn_hand_r_anim.uasset | 3 + .../Rigs/Poses/Quinn/Quinn_hand_r_pose.uasset | 3 + .../Poses/Quinn/Quinn_lowerarm_l_anim.uasset | 3 + .../Poses/Quinn/Quinn_lowerarm_l_pose.uasset | 3 + .../Poses/Quinn/Quinn_lowerarm_r_anim.uasset | 3 + .../Poses/Quinn/Quinn_lowerarm_r_pose.uasset | 3 + .../Poses/Quinn/Quinn_thigh_l_anim.uasset | 3 + .../Poses/Quinn/Quinn_thigh_l_pose.uasset | 3 + .../Poses/Quinn/Quinn_thigh_r_anim.uasset | 3 + .../Poses/Quinn/Quinn_thigh_r_pose.uasset | 3 + .../Poses/Quinn/Quinn_upperarm_l_anim.uasset | 3 + .../Poses/Quinn/Quinn_upperarm_l_pose.uasset | 3 + .../Poses/Quinn/Quinn_upperarm_r_anim.uasset | 3 + .../Poses/Quinn/Quinn_upperarm_r_pose.uasset | 3 + .../Mannequins/Rigs/RTG_Mannequin.uasset | 3 + .../Manny/T_Manny_01_ASAOPMASK_MSK.uasset | 3 + .../Textures/Manny/T_Manny_01_BN.uasset | 3 + .../Manny/T_Manny_01_CCRCCPlastic_MSK.uasset | 3 + .../Textures/Manny/T_Manny_01_D.uasset | 3 + .../Textures/Manny/T_Manny_01_MSR_MSK.uasset | 3 + .../Textures/Manny/T_Manny_01_N.uasset | 3 + .../Textures/Manny/T_Manny_01_Tan.uasset | 3 + .../Manny/T_Manny_02_ASAOPMASK_MSK.uasset | 3 + .../Textures/Manny/T_Manny_02_BN.uasset | 3 + .../Manny/T_Manny_02_CCRCCPlastic_MSK.uasset | 3 + .../Textures/Manny/T_Manny_02_D.uasset | 3 + .../Textures/Manny/T_Manny_02_MSR_MSK.uasset | 3 + .../Textures/Manny/T_Manny_02_N.uasset | 3 + .../Textures/Manny/T_Manny_02_Tan.uasset | 3 + .../Textures/Quinn/T_Quinn_01ID_BN.uasset | 3 + .../Textures/Quinn/T_Quinn_01ID_D.uasset | 3 + .../Quinn/T_Quinn_01ID_MSR_MSK.uasset | 3 + .../Textures/Quinn/T_Quinn_01ID_N.uasset | 3 + .../Textures/Quinn/T_Quinn_01ID_Tan.uasset | 3 + .../Quinn/T_Quinn_01_ASAOMASK_MSK.uasset | 3 + .../Quinn/T_Quinn_01_CCRCCPlastic_MSK.uasset | 3 + .../Textures/Quinn/T_Quinn_02ID_BN.uasset | 3 + .../Textures/Quinn/T_Quinn_02ID_D.uasset | 3 + .../Quinn/T_Quinn_02ID_MSR_MSK.uasset | 3 + .../Textures/Quinn/T_Quinn_02ID_N.uasset | 3 + .../Textures/Quinn/T_Quinn_02ID_Tan.uasset | 3 + .../Quinn/T_Quinn_02_ASAOMASK_MSK.uasset | 3 + .../Quinn/T_Quinn_02_CCRCCPlastic_MSK.uasset | 3 + .../Textures/Shared/T_UE_Logo_M.uasset | 3 + .../Blueprints/BP_ThirdPersonCharacter.uasset | 3 + .../ThirdPerson/Input/Actions/IA_Jump.uasset | 3 + .../ThirdPerson/Input/Actions/IA_Look.uasset | 3 + .../ThirdPerson/Input/Actions/IA_Move.uasset | 3 + .../ThirdPerson/Input/IMC_Default.uasset | 3 + .../ThirdPerson/Maps/ThirdPersonMap.umap | 3 + .../0/43/HYQWORMY4JDQ5X3OKZXFLC.uasset | 3 + .../0/FZ/4XWWUGWFDLX56REQRH8Z9W.uasset | 3 + .../0/SX/SKO7AH9HKZVPN4OMFO4DV3.uasset | 3 + .../1/0G/HOAJZN9E4DDI6Y1W3JU13K.uasset | 3 + .../1/2J/AQ1PWWT9TBAI7AA470T014.uasset | 3 + .../1/AZ/A7GPT109Y6ZTTJD4A7TXER.uasset | 3 + .../1/EJ/PGUWWHRTS59S34GKBX0OUI.uasset | 3 + .../1/HF/YFYBQ72OYLHJQS0TSSXGBV.uasset | 3 + .../1/QS/VHQF8JWOATZI5V3ZVY5YTM.uasset | 3 + .../1/WU/NB37RT5Q32Z8MJWD8BD2SO.uasset | 3 + .../2/66/0OP5U85W4H0R7CHG999ZDN.uasset | 3 + .../3/1V/XSFYSB2EC9Z21RQOBXZLMO.uasset | 3 + .../3/B1/9G3WNX7WIR7UKI26T9LK5O.uasset | 3 + .../3/HE/U35NZS5A9W1UXP1E3FF2GW.uasset | 3 + .../3/OG/KDQDMXAXZXD8VLDDU4K3JL.uasset | 3 + .../3/P3/O43ETCZTFMLWWH1CJ941H2.uasset | 3 + .../5/Q1/5IZD4L3UPM3EEODZK67MH1.uasset | 3 + .../6/0D/0WM78RPJCXHX477YOZXKQE.uasset | 3 + .../6/HF/9H7TKAXH9DD8KI3TIXGI2I.uasset | 3 + .../6/NC/UUYHDUFQAXTRRN4RVOPIUF.uasset | 3 + .../6/NP/Z9EK2TXQ1TFO26WFZHWZII.uasset | 3 + .../6/UV/1C6W14EIHMXOXXB657JYKB.uasset | 3 + .../8/7Y/C94R5C0R01QSL2SVHUG3KD.uasset | 3 + .../8/H9/GITN2HJQNERMM41FAE68W0.uasset | 3 + .../8/P1/NN84RP20JNUCL0SHI5W2B8.uasset | 3 + .../9/21/WWYX44RDCCS98492P9K9O3.uasset | 3 + .../9/6I/RU1L28PS820IOVH625A0DA.uasset | 3 + .../9/CI/KST702KSCRZWYV56G3VJBD.uasset | 3 + .../9/MO/72II2GSLK9VS0ULW9SACWH.uasset | 3 + .../A/BW/M7Z5RX3O7568TBJFK5R76I.uasset | 3 + .../A/IO/07IVU4EY14FMETPGTJULEO.uasset | 3 + .../B/CJ/ZQ5BFL59YGMQUT9ZD7CAHJ.uasset | 3 + .../B/KW/9YH18EUCJFK5CZXL6H3W3R.uasset | 3 + .../C/0I/VIQQWOEJKSKV1EK1XGX3EY.uasset | 3 + .../D/DE/SWSI13675DVYIZ0N4NF7Y3.uasset | 3 + .../D/MM/5416TNIX8GKJW3B714Y6WF.uasset | 3 + .../D/OI/BVNTLHAPOPDXURSVGR63ME.uasset | 3 + .../D/SY/Z4CTQ4LG3YV10EKPD0UE8Q.uasset | 3 + .../D/VL/KUT2U1MQ1ND9CXN070OTDM.uasset | 3 + .../E/FR/LBG6LPN5JCL3FMVSI2CK6R.uasset | 3 + .../E/T8/46ZIBNTTDDR3AOR2XC9VO6.uasset | 3 + .../3/DH/JQTP3L9HHXRN8IUHATI906.uasset | 3 + .../4/4A/NCNZF2U4ZTZ8XZJNF86FNT.uasset | 3 + .../8/05/U8OLLG133BEQMR58UPHM3P.uasset | 3 + .../A/KP/VZTB4WP3P1L1F1WL9R6XLZ.uasset | 3 + .../B/AN/0Z4D0BFPHEXAYK76DY0WLL.uasset | 3 + .../D/13/KQB15WT334LUGWVAUX80XH.uasset | 3 + .../EndlessVendetta/AI/EnemyCharacter.cpp | 32 +++++ .../EndlessVendetta/AI/EnemyCharacter.h | 28 ++++ .../TP_ThirdPerson/TP_ThirdPerson.h | 5 + .../TP_ThirdPersonCharacter.cpp | 129 ++++++++++++++++++ .../TP_ThirdPerson/TP_ThirdPersonCharacter.h | 66 +++++++++ .../TP_ThirdPerson/TP_ThirdPersonGameMode.cpp | 15 ++ .../TP_ThirdPerson/TP_ThirdPersonGameMode.h | 19 +++ 209 files changed, 916 insertions(+), 4 deletions(-) create mode 100644 EndlessVendetta/.idea/.idea.EndlessVendetta.dir/.idea/discord-ij.xml create mode 100644 EndlessVendetta/.idea/.idea.EndlessVendetta.dir/.idea/vcs.xml create mode 100644 EndlessVendetta/Content/Characters/Mannequin_UE4/Animations/Jog_Fwd.uasset create mode 100644 EndlessVendetta/Content/Characters/Mannequin_UE4/Materials/Layers/ML_Latex_Black.uasset create mode 100644 EndlessVendetta/Content/Characters/Mannequin_UE4/Materials/Layers/ML_ShinyPlastic_Beige.uasset create mode 100644 EndlessVendetta/Content/Characters/Mannequin_UE4/Materials/Layers/ML_ShinyPlastic_Beige_Logo.uasset create mode 100644 EndlessVendetta/Content/Characters/Mannequin_UE4/Materials/Layers/ML_SoftMetal.uasset create mode 100644 EndlessVendetta/Content/Characters/Mannequin_UE4/Materials/M_MannequinUE4_Body.uasset create mode 100644 EndlessVendetta/Content/Characters/Mannequin_UE4/Materials/M_MannequinUE4_ChestLogo.uasset create mode 100644 EndlessVendetta/Content/Characters/Mannequin_UE4/Meshes/SK_Mannequin.uasset create mode 100644 EndlessVendetta/Content/Characters/Mannequin_UE4/Meshes/SK_Mannequin_PhysicsAsset.uasset create mode 100644 EndlessVendetta/Content/Characters/Mannequin_UE4/Meshes/SK_Mannequin_Skeleton.uasset create mode 100644 EndlessVendetta/Content/Characters/Mannequin_UE4/Rigs/IK_UE4_Mannequin.uasset create mode 100644 EndlessVendetta/Content/Characters/Mannequin_UE4/Rigs/RTG_UE4Manny_UE5Manny.uasset create mode 100644 EndlessVendetta/Content/Characters/Mannequin_UE4/Rigs/RTG_UE5Manny_UE4Manny.uasset create mode 100644 EndlessVendetta/Content/Characters/Mannequin_UE4/Textures/T_ML_Aluminum01.uasset create mode 100644 EndlessVendetta/Content/Characters/Mannequin_UE4/Textures/T_ML_Aluminum01_N.uasset create mode 100644 EndlessVendetta/Content/Characters/Mannequin_UE4/Textures/T_ML_Rubber_Blue_01_D.uasset create mode 100644 EndlessVendetta/Content/Characters/Mannequin_UE4/Textures/T_ML_Rubber_Blue_01_N.uasset create mode 100644 EndlessVendetta/Content/Characters/Mannequin_UE4/Textures/T_UE4_Mannequin_MAT_MASKA.uasset create mode 100644 EndlessVendetta/Content/Characters/Mannequin_UE4/Textures/T_UE4_Mannequin__normals.uasset create mode 100644 EndlessVendetta/Content/Characters/Mannequin_UE4/Textures/T_UELogo_Mask.uasset create mode 100644 EndlessVendetta/Content/Characters/Mannequin_UE4/Textures/T_UELogo_N_TGA.uasset create mode 100644 EndlessVendetta/Content/Characters/Mannequins/Animations/ABP_Manny.uasset create mode 100644 EndlessVendetta/Content/Characters/Mannequins/Animations/ABP_Quinn.uasset create mode 100644 EndlessVendetta/Content/Characters/Mannequins/Animations/Manny/BS_MM_WalkRun.uasset create mode 100644 EndlessVendetta/Content/Characters/Mannequins/Animations/Manny/MM_Fall_Loop.uasset create mode 100644 EndlessVendetta/Content/Characters/Mannequins/Animations/Manny/MM_Idle.uasset create mode 100644 EndlessVendetta/Content/Characters/Mannequins/Animations/Manny/MM_Jump.uasset create mode 100644 EndlessVendetta/Content/Characters/Mannequins/Animations/Manny/MM_Land.uasset create mode 100644 EndlessVendetta/Content/Characters/Mannequins/Animations/Manny/MM_Run_Fwd.uasset create mode 100644 EndlessVendetta/Content/Characters/Mannequins/Animations/Manny/MM_T_Pose.uasset create mode 100644 EndlessVendetta/Content/Characters/Mannequins/Animations/Manny/MM_Walk_Fwd.uasset create mode 100644 EndlessVendetta/Content/Characters/Mannequins/Animations/Manny/MM_Walk_InPlace.uasset create mode 100644 EndlessVendetta/Content/Characters/Mannequins/Animations/Quinn/BS_MF_Unarmed_WalkRun.uasset create mode 100644 EndlessVendetta/Content/Characters/Mannequins/Animations/Quinn/MF_Idle.uasset create mode 100644 EndlessVendetta/Content/Characters/Mannequins/Animations/Quinn/MF_Run_Fwd.uasset create mode 100644 EndlessVendetta/Content/Characters/Mannequins/Animations/Quinn/MF_Walk_Fwd.uasset create mode 100644 EndlessVendetta/Content/Characters/Mannequins/Materials/Functions/CA_Mannequin.uasset create mode 100644 EndlessVendetta/Content/Characters/Mannequins/Materials/Functions/ChromaticCurve.uasset create mode 100644 EndlessVendetta/Content/Characters/Mannequins/Materials/Functions/MF_Diffraction.uasset create mode 100644 EndlessVendetta/Content/Characters/Mannequins/Materials/Functions/MF_logo3layers.uasset create mode 100644 EndlessVendetta/Content/Characters/Mannequins/Materials/Functions/ML_BaseColorFallOff.uasset create mode 100644 EndlessVendetta/Content/Characters/Mannequins/Materials/Instances/Manny/MI_Manny_01.uasset create mode 100644 EndlessVendetta/Content/Characters/Mannequins/Materials/Instances/Manny/MI_Manny_02.uasset create mode 100644 EndlessVendetta/Content/Characters/Mannequins/Materials/Instances/Quinn/MI_Quinn_01.uasset create mode 100644 EndlessVendetta/Content/Characters/Mannequins/Materials/Instances/Quinn/MI_Quinn_02.uasset create mode 100644 EndlessVendetta/Content/Characters/Mannequins/Materials/M_Mannequin.uasset create mode 100644 EndlessVendetta/Content/Characters/Mannequins/Meshes/Mannequin_LODSettings.uasset create mode 100644 EndlessVendetta/Content/Characters/Mannequins/Meshes/SKM_Manny.uasset create mode 100644 EndlessVendetta/Content/Characters/Mannequins/Meshes/SKM_Manny_Simple.uasset create mode 100644 EndlessVendetta/Content/Characters/Mannequins/Meshes/SKM_Quinn.uasset create mode 100644 EndlessVendetta/Content/Characters/Mannequins/Meshes/SKM_Quinn_Simple.uasset create mode 100644 EndlessVendetta/Content/Characters/Mannequins/Meshes/SK_Mannequin.uasset create mode 100644 EndlessVendetta/Content/Characters/Mannequins/Rigs/ABP_Manny_PostProcess.uasset create mode 100644 EndlessVendetta/Content/Characters/Mannequins/Rigs/ABP_Quinn_PostProcess.uasset create mode 100644 EndlessVendetta/Content/Characters/Mannequins/Rigs/CR_Mannequin_BasicFootIK.uasset create mode 100644 EndlessVendetta/Content/Characters/Mannequins/Rigs/CR_Mannequin_Body.uasset create mode 100644 EndlessVendetta/Content/Characters/Mannequins/Rigs/CR_Mannequin_Procedural.uasset create mode 100644 EndlessVendetta/Content/Characters/Mannequins/Rigs/IK_Mannequin.uasset create mode 100644 EndlessVendetta/Content/Characters/Mannequins/Rigs/PA_Mannequin.uasset create mode 100644 EndlessVendetta/Content/Characters/Mannequins/Rigs/Poses/Manny/Manny_calf_l_anim.uasset create mode 100644 EndlessVendetta/Content/Characters/Mannequins/Rigs/Poses/Manny/Manny_calf_l_pose.uasset create mode 100644 EndlessVendetta/Content/Characters/Mannequins/Rigs/Poses/Manny/Manny_calf_r_anim.uasset create mode 100644 EndlessVendetta/Content/Characters/Mannequins/Rigs/Poses/Manny/Manny_calf_r_pose.uasset create mode 100644 EndlessVendetta/Content/Characters/Mannequins/Rigs/Poses/Manny/Manny_clavicle_l_anim.uasset create mode 100644 EndlessVendetta/Content/Characters/Mannequins/Rigs/Poses/Manny/Manny_clavicle_l_pose.uasset create mode 100644 EndlessVendetta/Content/Characters/Mannequins/Rigs/Poses/Manny/Manny_clavicle_r_anim.uasset create mode 100644 EndlessVendetta/Content/Characters/Mannequins/Rigs/Poses/Manny/Manny_clavicle_r_pose.uasset create mode 100644 EndlessVendetta/Content/Characters/Mannequins/Rigs/Poses/Manny/Manny_foot_l_anim.uasset create mode 100644 EndlessVendetta/Content/Characters/Mannequins/Rigs/Poses/Manny/Manny_foot_l_pose.uasset create mode 100644 EndlessVendetta/Content/Characters/Mannequins/Rigs/Poses/Manny/Manny_foot_r_anim.uasset create mode 100644 EndlessVendetta/Content/Characters/Mannequins/Rigs/Poses/Manny/Manny_foot_r_pose.uasset create mode 100644 EndlessVendetta/Content/Characters/Mannequins/Rigs/Poses/Manny/Manny_hand_l_anim.uasset create mode 100644 EndlessVendetta/Content/Characters/Mannequins/Rigs/Poses/Manny/Manny_hand_l_pose.uasset create mode 100644 EndlessVendetta/Content/Characters/Mannequins/Rigs/Poses/Manny/Manny_hand_r_anim.uasset create mode 100644 EndlessVendetta/Content/Characters/Mannequins/Rigs/Poses/Manny/Manny_hand_r_pose.uasset create mode 100644 EndlessVendetta/Content/Characters/Mannequins/Rigs/Poses/Manny/Manny_lowerarm_l_anim.uasset create mode 100644 EndlessVendetta/Content/Characters/Mannequins/Rigs/Poses/Manny/Manny_lowerarm_l_pose.uasset create mode 100644 EndlessVendetta/Content/Characters/Mannequins/Rigs/Poses/Manny/Manny_lowerarm_r_anim.uasset create mode 100644 EndlessVendetta/Content/Characters/Mannequins/Rigs/Poses/Manny/Manny_lowerarm_r_pose.uasset create mode 100644 EndlessVendetta/Content/Characters/Mannequins/Rigs/Poses/Manny/Manny_thigh_l_anim.uasset create mode 100644 EndlessVendetta/Content/Characters/Mannequins/Rigs/Poses/Manny/Manny_thigh_l_pose.uasset create mode 100644 EndlessVendetta/Content/Characters/Mannequins/Rigs/Poses/Manny/Manny_thigh_r_anim.uasset create mode 100644 EndlessVendetta/Content/Characters/Mannequins/Rigs/Poses/Manny/Manny_thigh_r_pose.uasset create mode 100644 EndlessVendetta/Content/Characters/Mannequins/Rigs/Poses/Manny/Manny_upperarm_l_anim.uasset create mode 100644 EndlessVendetta/Content/Characters/Mannequins/Rigs/Poses/Manny/Manny_upperarm_l_pose.uasset create mode 100644 EndlessVendetta/Content/Characters/Mannequins/Rigs/Poses/Manny/Manny_upperarm_r_anim.uasset create mode 100644 EndlessVendetta/Content/Characters/Mannequins/Rigs/Poses/Manny/Manny_upperarm_r_pose.uasset create mode 100644 EndlessVendetta/Content/Characters/Mannequins/Rigs/Poses/Quinn/Quinn_calf_l_anim.uasset create mode 100644 EndlessVendetta/Content/Characters/Mannequins/Rigs/Poses/Quinn/Quinn_calf_l_pose.uasset create mode 100644 EndlessVendetta/Content/Characters/Mannequins/Rigs/Poses/Quinn/Quinn_calf_r_anim.uasset create mode 100644 EndlessVendetta/Content/Characters/Mannequins/Rigs/Poses/Quinn/Quinn_calf_r_pose.uasset create mode 100644 EndlessVendetta/Content/Characters/Mannequins/Rigs/Poses/Quinn/Quinn_clavicle_l_anim.uasset create mode 100644 EndlessVendetta/Content/Characters/Mannequins/Rigs/Poses/Quinn/Quinn_clavicle_l_pose.uasset create mode 100644 EndlessVendetta/Content/Characters/Mannequins/Rigs/Poses/Quinn/Quinn_clavicle_r_anim.uasset create mode 100644 EndlessVendetta/Content/Characters/Mannequins/Rigs/Poses/Quinn/Quinn_clavicle_r_pose.uasset create mode 100644 EndlessVendetta/Content/Characters/Mannequins/Rigs/Poses/Quinn/Quinn_foot_l_anim.uasset create mode 100644 EndlessVendetta/Content/Characters/Mannequins/Rigs/Poses/Quinn/Quinn_foot_l_pose.uasset create mode 100644 EndlessVendetta/Content/Characters/Mannequins/Rigs/Poses/Quinn/Quinn_foot_r_anim.uasset create mode 100644 EndlessVendetta/Content/Characters/Mannequins/Rigs/Poses/Quinn/Quinn_foot_r_pose.uasset create mode 100644 EndlessVendetta/Content/Characters/Mannequins/Rigs/Poses/Quinn/Quinn_hand_l_anim.uasset create mode 100644 EndlessVendetta/Content/Characters/Mannequins/Rigs/Poses/Quinn/Quinn_hand_l_pose.uasset create mode 100644 EndlessVendetta/Content/Characters/Mannequins/Rigs/Poses/Quinn/Quinn_hand_r_anim.uasset create mode 100644 EndlessVendetta/Content/Characters/Mannequins/Rigs/Poses/Quinn/Quinn_hand_r_pose.uasset create mode 100644 EndlessVendetta/Content/Characters/Mannequins/Rigs/Poses/Quinn/Quinn_lowerarm_l_anim.uasset create mode 100644 EndlessVendetta/Content/Characters/Mannequins/Rigs/Poses/Quinn/Quinn_lowerarm_l_pose.uasset create mode 100644 EndlessVendetta/Content/Characters/Mannequins/Rigs/Poses/Quinn/Quinn_lowerarm_r_anim.uasset create mode 100644 EndlessVendetta/Content/Characters/Mannequins/Rigs/Poses/Quinn/Quinn_lowerarm_r_pose.uasset create mode 100644 EndlessVendetta/Content/Characters/Mannequins/Rigs/Poses/Quinn/Quinn_thigh_l_anim.uasset create mode 100644 EndlessVendetta/Content/Characters/Mannequins/Rigs/Poses/Quinn/Quinn_thigh_l_pose.uasset create mode 100644 EndlessVendetta/Content/Characters/Mannequins/Rigs/Poses/Quinn/Quinn_thigh_r_anim.uasset create mode 100644 EndlessVendetta/Content/Characters/Mannequins/Rigs/Poses/Quinn/Quinn_thigh_r_pose.uasset create mode 100644 EndlessVendetta/Content/Characters/Mannequins/Rigs/Poses/Quinn/Quinn_upperarm_l_anim.uasset create mode 100644 EndlessVendetta/Content/Characters/Mannequins/Rigs/Poses/Quinn/Quinn_upperarm_l_pose.uasset create mode 100644 EndlessVendetta/Content/Characters/Mannequins/Rigs/Poses/Quinn/Quinn_upperarm_r_anim.uasset create mode 100644 EndlessVendetta/Content/Characters/Mannequins/Rigs/Poses/Quinn/Quinn_upperarm_r_pose.uasset create mode 100644 EndlessVendetta/Content/Characters/Mannequins/Rigs/RTG_Mannequin.uasset create mode 100644 EndlessVendetta/Content/Characters/Mannequins/Textures/Manny/T_Manny_01_ASAOPMASK_MSK.uasset create mode 100644 EndlessVendetta/Content/Characters/Mannequins/Textures/Manny/T_Manny_01_BN.uasset create mode 100644 EndlessVendetta/Content/Characters/Mannequins/Textures/Manny/T_Manny_01_CCRCCPlastic_MSK.uasset create mode 100644 EndlessVendetta/Content/Characters/Mannequins/Textures/Manny/T_Manny_01_D.uasset create mode 100644 EndlessVendetta/Content/Characters/Mannequins/Textures/Manny/T_Manny_01_MSR_MSK.uasset create mode 100644 EndlessVendetta/Content/Characters/Mannequins/Textures/Manny/T_Manny_01_N.uasset create mode 100644 EndlessVendetta/Content/Characters/Mannequins/Textures/Manny/T_Manny_01_Tan.uasset create mode 100644 EndlessVendetta/Content/Characters/Mannequins/Textures/Manny/T_Manny_02_ASAOPMASK_MSK.uasset create mode 100644 EndlessVendetta/Content/Characters/Mannequins/Textures/Manny/T_Manny_02_BN.uasset create mode 100644 EndlessVendetta/Content/Characters/Mannequins/Textures/Manny/T_Manny_02_CCRCCPlastic_MSK.uasset create mode 100644 EndlessVendetta/Content/Characters/Mannequins/Textures/Manny/T_Manny_02_D.uasset create mode 100644 EndlessVendetta/Content/Characters/Mannequins/Textures/Manny/T_Manny_02_MSR_MSK.uasset create mode 100644 EndlessVendetta/Content/Characters/Mannequins/Textures/Manny/T_Manny_02_N.uasset create mode 100644 EndlessVendetta/Content/Characters/Mannequins/Textures/Manny/T_Manny_02_Tan.uasset create mode 100644 EndlessVendetta/Content/Characters/Mannequins/Textures/Quinn/T_Quinn_01ID_BN.uasset create mode 100644 EndlessVendetta/Content/Characters/Mannequins/Textures/Quinn/T_Quinn_01ID_D.uasset create mode 100644 EndlessVendetta/Content/Characters/Mannequins/Textures/Quinn/T_Quinn_01ID_MSR_MSK.uasset create mode 100644 EndlessVendetta/Content/Characters/Mannequins/Textures/Quinn/T_Quinn_01ID_N.uasset create mode 100644 EndlessVendetta/Content/Characters/Mannequins/Textures/Quinn/T_Quinn_01ID_Tan.uasset create mode 100644 EndlessVendetta/Content/Characters/Mannequins/Textures/Quinn/T_Quinn_01_ASAOMASK_MSK.uasset create mode 100644 EndlessVendetta/Content/Characters/Mannequins/Textures/Quinn/T_Quinn_01_CCRCCPlastic_MSK.uasset create mode 100644 EndlessVendetta/Content/Characters/Mannequins/Textures/Quinn/T_Quinn_02ID_BN.uasset create mode 100644 EndlessVendetta/Content/Characters/Mannequins/Textures/Quinn/T_Quinn_02ID_D.uasset create mode 100644 EndlessVendetta/Content/Characters/Mannequins/Textures/Quinn/T_Quinn_02ID_MSR_MSK.uasset create mode 100644 EndlessVendetta/Content/Characters/Mannequins/Textures/Quinn/T_Quinn_02ID_N.uasset create mode 100644 EndlessVendetta/Content/Characters/Mannequins/Textures/Quinn/T_Quinn_02ID_Tan.uasset create mode 100644 EndlessVendetta/Content/Characters/Mannequins/Textures/Quinn/T_Quinn_02_ASAOMASK_MSK.uasset create mode 100644 EndlessVendetta/Content/Characters/Mannequins/Textures/Quinn/T_Quinn_02_CCRCCPlastic_MSK.uasset create mode 100644 EndlessVendetta/Content/Characters/Mannequins/Textures/Shared/T_UE_Logo_M.uasset create mode 100644 EndlessVendetta/Content/ThirdPerson/Blueprints/BP_ThirdPersonCharacter.uasset create mode 100644 EndlessVendetta/Content/ThirdPerson/Input/Actions/IA_Jump.uasset create mode 100644 EndlessVendetta/Content/ThirdPerson/Input/Actions/IA_Look.uasset create mode 100644 EndlessVendetta/Content/ThirdPerson/Input/Actions/IA_Move.uasset create mode 100644 EndlessVendetta/Content/ThirdPerson/Input/IMC_Default.uasset create mode 100644 EndlessVendetta/Content/ThirdPerson/Maps/ThirdPersonMap.umap create mode 100644 EndlessVendetta/Content/__ExternalActors__/ThirdPerson/Maps/ThirdPersonMap/0/43/HYQWORMY4JDQ5X3OKZXFLC.uasset create mode 100644 EndlessVendetta/Content/__ExternalActors__/ThirdPerson/Maps/ThirdPersonMap/0/FZ/4XWWUGWFDLX56REQRH8Z9W.uasset create mode 100644 EndlessVendetta/Content/__ExternalActors__/ThirdPerson/Maps/ThirdPersonMap/0/SX/SKO7AH9HKZVPN4OMFO4DV3.uasset create mode 100644 EndlessVendetta/Content/__ExternalActors__/ThirdPerson/Maps/ThirdPersonMap/1/0G/HOAJZN9E4DDI6Y1W3JU13K.uasset create mode 100644 EndlessVendetta/Content/__ExternalActors__/ThirdPerson/Maps/ThirdPersonMap/1/2J/AQ1PWWT9TBAI7AA470T014.uasset create mode 100644 EndlessVendetta/Content/__ExternalActors__/ThirdPerson/Maps/ThirdPersonMap/1/AZ/A7GPT109Y6ZTTJD4A7TXER.uasset create mode 100644 EndlessVendetta/Content/__ExternalActors__/ThirdPerson/Maps/ThirdPersonMap/1/EJ/PGUWWHRTS59S34GKBX0OUI.uasset create mode 100644 EndlessVendetta/Content/__ExternalActors__/ThirdPerson/Maps/ThirdPersonMap/1/HF/YFYBQ72OYLHJQS0TSSXGBV.uasset create mode 100644 EndlessVendetta/Content/__ExternalActors__/ThirdPerson/Maps/ThirdPersonMap/1/QS/VHQF8JWOATZI5V3ZVY5YTM.uasset create mode 100644 EndlessVendetta/Content/__ExternalActors__/ThirdPerson/Maps/ThirdPersonMap/1/WU/NB37RT5Q32Z8MJWD8BD2SO.uasset create mode 100644 EndlessVendetta/Content/__ExternalActors__/ThirdPerson/Maps/ThirdPersonMap/2/66/0OP5U85W4H0R7CHG999ZDN.uasset create mode 100644 EndlessVendetta/Content/__ExternalActors__/ThirdPerson/Maps/ThirdPersonMap/3/1V/XSFYSB2EC9Z21RQOBXZLMO.uasset create mode 100644 EndlessVendetta/Content/__ExternalActors__/ThirdPerson/Maps/ThirdPersonMap/3/B1/9G3WNX7WIR7UKI26T9LK5O.uasset create mode 100644 EndlessVendetta/Content/__ExternalActors__/ThirdPerson/Maps/ThirdPersonMap/3/HE/U35NZS5A9W1UXP1E3FF2GW.uasset create mode 100644 EndlessVendetta/Content/__ExternalActors__/ThirdPerson/Maps/ThirdPersonMap/3/OG/KDQDMXAXZXD8VLDDU4K3JL.uasset create mode 100644 EndlessVendetta/Content/__ExternalActors__/ThirdPerson/Maps/ThirdPersonMap/3/P3/O43ETCZTFMLWWH1CJ941H2.uasset create mode 100644 EndlessVendetta/Content/__ExternalActors__/ThirdPerson/Maps/ThirdPersonMap/5/Q1/5IZD4L3UPM3EEODZK67MH1.uasset create mode 100644 EndlessVendetta/Content/__ExternalActors__/ThirdPerson/Maps/ThirdPersonMap/6/0D/0WM78RPJCXHX477YOZXKQE.uasset create mode 100644 EndlessVendetta/Content/__ExternalActors__/ThirdPerson/Maps/ThirdPersonMap/6/HF/9H7TKAXH9DD8KI3TIXGI2I.uasset create mode 100644 EndlessVendetta/Content/__ExternalActors__/ThirdPerson/Maps/ThirdPersonMap/6/NC/UUYHDUFQAXTRRN4RVOPIUF.uasset create mode 100644 EndlessVendetta/Content/__ExternalActors__/ThirdPerson/Maps/ThirdPersonMap/6/NP/Z9EK2TXQ1TFO26WFZHWZII.uasset create mode 100644 EndlessVendetta/Content/__ExternalActors__/ThirdPerson/Maps/ThirdPersonMap/6/UV/1C6W14EIHMXOXXB657JYKB.uasset create mode 100644 EndlessVendetta/Content/__ExternalActors__/ThirdPerson/Maps/ThirdPersonMap/8/7Y/C94R5C0R01QSL2SVHUG3KD.uasset create mode 100644 EndlessVendetta/Content/__ExternalActors__/ThirdPerson/Maps/ThirdPersonMap/8/H9/GITN2HJQNERMM41FAE68W0.uasset create mode 100644 EndlessVendetta/Content/__ExternalActors__/ThirdPerson/Maps/ThirdPersonMap/8/P1/NN84RP20JNUCL0SHI5W2B8.uasset create mode 100644 EndlessVendetta/Content/__ExternalActors__/ThirdPerson/Maps/ThirdPersonMap/9/21/WWYX44RDCCS98492P9K9O3.uasset create mode 100644 EndlessVendetta/Content/__ExternalActors__/ThirdPerson/Maps/ThirdPersonMap/9/6I/RU1L28PS820IOVH625A0DA.uasset create mode 100644 EndlessVendetta/Content/__ExternalActors__/ThirdPerson/Maps/ThirdPersonMap/9/CI/KST702KSCRZWYV56G3VJBD.uasset create mode 100644 EndlessVendetta/Content/__ExternalActors__/ThirdPerson/Maps/ThirdPersonMap/9/MO/72II2GSLK9VS0ULW9SACWH.uasset create mode 100644 EndlessVendetta/Content/__ExternalActors__/ThirdPerson/Maps/ThirdPersonMap/A/BW/M7Z5RX3O7568TBJFK5R76I.uasset create mode 100644 EndlessVendetta/Content/__ExternalActors__/ThirdPerson/Maps/ThirdPersonMap/A/IO/07IVU4EY14FMETPGTJULEO.uasset create mode 100644 EndlessVendetta/Content/__ExternalActors__/ThirdPerson/Maps/ThirdPersonMap/B/CJ/ZQ5BFL59YGMQUT9ZD7CAHJ.uasset create mode 100644 EndlessVendetta/Content/__ExternalActors__/ThirdPerson/Maps/ThirdPersonMap/B/KW/9YH18EUCJFK5CZXL6H3W3R.uasset create mode 100644 EndlessVendetta/Content/__ExternalActors__/ThirdPerson/Maps/ThirdPersonMap/C/0I/VIQQWOEJKSKV1EK1XGX3EY.uasset create mode 100644 EndlessVendetta/Content/__ExternalActors__/ThirdPerson/Maps/ThirdPersonMap/D/DE/SWSI13675DVYIZ0N4NF7Y3.uasset create mode 100644 EndlessVendetta/Content/__ExternalActors__/ThirdPerson/Maps/ThirdPersonMap/D/MM/5416TNIX8GKJW3B714Y6WF.uasset create mode 100644 EndlessVendetta/Content/__ExternalActors__/ThirdPerson/Maps/ThirdPersonMap/D/OI/BVNTLHAPOPDXURSVGR63ME.uasset create mode 100644 EndlessVendetta/Content/__ExternalActors__/ThirdPerson/Maps/ThirdPersonMap/D/SY/Z4CTQ4LG3YV10EKPD0UE8Q.uasset create mode 100644 EndlessVendetta/Content/__ExternalActors__/ThirdPerson/Maps/ThirdPersonMap/D/VL/KUT2U1MQ1ND9CXN070OTDM.uasset create mode 100644 EndlessVendetta/Content/__ExternalActors__/ThirdPerson/Maps/ThirdPersonMap/E/FR/LBG6LPN5JCL3FMVSI2CK6R.uasset create mode 100644 EndlessVendetta/Content/__ExternalActors__/ThirdPerson/Maps/ThirdPersonMap/E/T8/46ZIBNTTDDR3AOR2XC9VO6.uasset create mode 100644 EndlessVendetta/Content/__ExternalObjects__/ThirdPerson/Maps/ThirdPersonMap/3/DH/JQTP3L9HHXRN8IUHATI906.uasset create mode 100644 EndlessVendetta/Content/__ExternalObjects__/ThirdPerson/Maps/ThirdPersonMap/4/4A/NCNZF2U4ZTZ8XZJNF86FNT.uasset create mode 100644 EndlessVendetta/Content/__ExternalObjects__/ThirdPerson/Maps/ThirdPersonMap/8/05/U8OLLG133BEQMR58UPHM3P.uasset create mode 100644 EndlessVendetta/Content/__ExternalObjects__/ThirdPerson/Maps/ThirdPersonMap/A/KP/VZTB4WP3P1L1F1WL9R6XLZ.uasset create mode 100644 EndlessVendetta/Content/__ExternalObjects__/ThirdPerson/Maps/ThirdPersonMap/B/AN/0Z4D0BFPHEXAYK76DY0WLL.uasset create mode 100644 EndlessVendetta/Content/__ExternalObjects__/ThirdPerson/Maps/ThirdPersonMap/D/13/KQB15WT334LUGWVAUX80XH.uasset create mode 100644 EndlessVendetta/Source/EndlessVendetta/AI/EnemyCharacter.cpp create mode 100644 EndlessVendetta/Source/EndlessVendetta/AI/EnemyCharacter.h create mode 100644 EndlessVendetta/Source/EndlessVendetta/TP_ThirdPerson/TP_ThirdPerson.h create mode 100644 EndlessVendetta/Source/EndlessVendetta/TP_ThirdPerson/TP_ThirdPersonCharacter.cpp create mode 100644 EndlessVendetta/Source/EndlessVendetta/TP_ThirdPerson/TP_ThirdPersonCharacter.h create mode 100644 EndlessVendetta/Source/EndlessVendetta/TP_ThirdPerson/TP_ThirdPersonGameMode.cpp create mode 100644 EndlessVendetta/Source/EndlessVendetta/TP_ThirdPerson/TP_ThirdPersonGameMode.h diff --git a/EndlessVendetta/.idea/.idea.EndlessVendetta.dir/.idea/discord-ij.xml b/EndlessVendetta/.idea/.idea.EndlessVendetta.dir/.idea/discord-ij.xml new file mode 100644 index 00000000..b2c4e3f1 --- /dev/null +++ b/EndlessVendetta/.idea/.idea.EndlessVendetta.dir/.idea/discord-ij.xml @@ -0,0 +1,7 @@ + + + + + \ No newline at end of file diff --git a/EndlessVendetta/.idea/.idea.EndlessVendetta.dir/.idea/vcs.xml b/EndlessVendetta/.idea/.idea.EndlessVendetta.dir/.idea/vcs.xml new file mode 100644 index 00000000..6c0b8635 --- /dev/null +++ b/EndlessVendetta/.idea/.idea.EndlessVendetta.dir/.idea/vcs.xml @@ -0,0 +1,6 @@ + + + + + + \ No newline at end of file diff --git a/EndlessVendetta/Config/DefaultEngine.ini b/EndlessVendetta/Config/DefaultEngine.ini index b419691f..a36b892f 100644 --- a/EndlessVendetta/Config/DefaultEngine.ini +++ b/EndlessVendetta/Config/DefaultEngine.ini @@ -23,8 +23,6 @@ r.DynamicGlobalIlluminationMethod=1 r.Mobile.EnableNoPrecomputedLightingCSMShader=1 r.DefaultFeature.AutoExposure.ExtendDefaultLuminanceRange=True r.DefaultFeature.AutoExposure.ExtendDefaultLuminanceRange=true - - r.Shadow.Virtual.Enable=1 [/Script/WindowsTargetPlatform.WindowsTargetSettings] @@ -56,8 +54,6 @@ CompressionQualityModifier=1.000000 AutoStreamingThreshold=0.000000 SoundCueCookQualityIndex=-1 - - [/Script/HardwareTargeting.HardwareTargetingSettings] TargetedHardwareClass=Desktop AppliedTargetedHardwareClass=Desktop @@ -67,6 +63,8 @@ AppliedDefaultGraphicsPerformance=Maximum [/Script/Engine.Engine] +ActiveGameNameRedirects=(OldGameName="TP_FirstPerson",NewGameName="/Script/EndlessVendetta") +ActiveGameNameRedirects=(OldGameName="/Script/TP_FirstPerson",NewGameName="/Script/EndlessVendetta") ++ActiveGameNameRedirects=(OldGameName="/Script/TP_ThirdPerson",NewGameName="/Script/EndlessVendetta") ++ActiveGameNameRedirects=(OldGameName="TP_ThirdPerson",NewGameName="/Script/EndlessVendetta") +ActiveClassRedirects=(OldClassName="TP_FirstPersonProjectile",NewClassName="EndlessVendettaProjectile") +ActiveClassRedirects=(OldClassName="TP_FirstPersonGameMode",NewClassName="EndlessVendettaGameMode") +ActiveClassRedirects=(OldClassName="TP_FirstPersonCharacter",NewClassName="EndlessVendettaCharacter") diff --git a/EndlessVendetta/Config/DefaultInput.ini b/EndlessVendetta/Config/DefaultInput.ini index 1bf5f902..aec1fc5c 100644 --- a/EndlessVendetta/Config/DefaultInput.ini +++ b/EndlessVendetta/Config/DefaultInput.ini @@ -93,6 +93,7 @@ bEnableLegacyInputScales=True bEnableMotionControls=True bFilterInputByPlatformUser=False bShouldFlushPressedKeysOnViewportFocusLost=True +bEnableDynamicComponentInputBinding=True bAlwaysShowTouchInterface=False bShowConsoleOnFourFingerTap=True bEnableGestureRecognizer=False @@ -101,6 +102,18 @@ DefaultViewportMouseCaptureMode=CapturePermanently_IncludingInitialMouseDown DefaultViewportMouseLockMode=LockOnCapture FOVScale=0.011110 DoubleClickTime=0.200000 ++ActionMappings=(ActionName="Jump",bShift=False,bCtrl=False,bAlt=False,bCmd=False,Key=Gamepad_FaceButton_Bottom) ++ActionMappings=(ActionName="Jump",bShift=False,bCtrl=False,bAlt=False,bCmd=False,Key=SpaceBar) ++AxisMappings=(AxisName="Look Up / Down Gamepad",Scale=1.000000,Key=Gamepad_RightY) ++AxisMappings=(AxisName="Look Up / Down Mouse",Scale=-1.000000,Key=MouseY) ++AxisMappings=(AxisName="Move Forward / Backward",Scale=1.000000,Key=Gamepad_LeftY) ++AxisMappings=(AxisName="Move Forward / Backward",Scale=-1.000000,Key=S) ++AxisMappings=(AxisName="Move Forward / Backward",Scale=1.000000,Key=W) ++AxisMappings=(AxisName="Move Right / Left",Scale=-1.000000,Key=A) ++AxisMappings=(AxisName="Move Right / Left",Scale=1.000000,Key=D) ++AxisMappings=(AxisName="Move Right / Left",Scale=1.000000,Key=Gamepad_LeftX) ++AxisMappings=(AxisName="Turn Right / Left Gamepad",Scale=1.000000,Key=Gamepad_RightX) ++AxisMappings=(AxisName="Turn Right / Left Mouse",Scale=1.000000,Key=MouseX) DefaultPlayerInputClass=/Script/EnhancedInput.EnhancedPlayerInput DefaultInputComponentClass=/Script/EnhancedInput.EnhancedInputComponent DefaultTouchInterface=/Engine/MobileResources/HUD/DefaultVirtualJoysticks.DefaultVirtualJoysticks diff --git a/EndlessVendetta/Content/Characters/Mannequin_UE4/Animations/Jog_Fwd.uasset b/EndlessVendetta/Content/Characters/Mannequin_UE4/Animations/Jog_Fwd.uasset new file mode 100644 index 00000000..b915e8e3 --- /dev/null +++ b/EndlessVendetta/Content/Characters/Mannequin_UE4/Animations/Jog_Fwd.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:81b4dd2a00331ba3086ce06a8673667359183399c5fb1ab924060e2c84720691 +size 203111 diff --git a/EndlessVendetta/Content/Characters/Mannequin_UE4/Materials/Layers/ML_Latex_Black.uasset b/EndlessVendetta/Content/Characters/Mannequin_UE4/Materials/Layers/ML_Latex_Black.uasset new file mode 100644 index 00000000..4d2cc648 --- /dev/null +++ b/EndlessVendetta/Content/Characters/Mannequin_UE4/Materials/Layers/ML_Latex_Black.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:fa87ecdbb722402bdb4decef1a53487d6b74789076cb7aa51a4521553f478a89 +size 13710 diff --git a/EndlessVendetta/Content/Characters/Mannequin_UE4/Materials/Layers/ML_ShinyPlastic_Beige.uasset b/EndlessVendetta/Content/Characters/Mannequin_UE4/Materials/Layers/ML_ShinyPlastic_Beige.uasset new file mode 100644 index 00000000..26c98f45 --- /dev/null +++ b/EndlessVendetta/Content/Characters/Mannequin_UE4/Materials/Layers/ML_ShinyPlastic_Beige.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b544f3c62bdc242ceb673eb94a30a1bb881ea3b126d849e8e969ea6b30c25772 +size 10382 diff --git a/EndlessVendetta/Content/Characters/Mannequin_UE4/Materials/Layers/ML_ShinyPlastic_Beige_Logo.uasset b/EndlessVendetta/Content/Characters/Mannequin_UE4/Materials/Layers/ML_ShinyPlastic_Beige_Logo.uasset new file mode 100644 index 00000000..71812b72 --- /dev/null +++ b/EndlessVendetta/Content/Characters/Mannequin_UE4/Materials/Layers/ML_ShinyPlastic_Beige_Logo.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ff2747888cb753414087d94c0aaa824e88aae93ca25584419a1ace2de31bb048 +size 11197 diff --git a/EndlessVendetta/Content/Characters/Mannequin_UE4/Materials/Layers/ML_SoftMetal.uasset b/EndlessVendetta/Content/Characters/Mannequin_UE4/Materials/Layers/ML_SoftMetal.uasset new file mode 100644 index 00000000..3fbbe601 --- /dev/null +++ b/EndlessVendetta/Content/Characters/Mannequin_UE4/Materials/Layers/ML_SoftMetal.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:28ffa6db34aa484d7f36d872c88b5628a5a9aff7279c1e0d819fb20fe29459ed +size 14647 diff --git a/EndlessVendetta/Content/Characters/Mannequin_UE4/Materials/M_MannequinUE4_Body.uasset b/EndlessVendetta/Content/Characters/Mannequin_UE4/Materials/M_MannequinUE4_Body.uasset new file mode 100644 index 00000000..ab712a1e --- /dev/null +++ b/EndlessVendetta/Content/Characters/Mannequin_UE4/Materials/M_MannequinUE4_Body.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:4042ac871e2df59386ec9b28ce4c8436753e92ba1e0c69b8ba1b75220a386e96 +size 28440 diff --git a/EndlessVendetta/Content/Characters/Mannequin_UE4/Materials/M_MannequinUE4_ChestLogo.uasset b/EndlessVendetta/Content/Characters/Mannequin_UE4/Materials/M_MannequinUE4_ChestLogo.uasset new file mode 100644 index 00000000..86a96e3a --- /dev/null +++ b/EndlessVendetta/Content/Characters/Mannequin_UE4/Materials/M_MannequinUE4_ChestLogo.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:03e96660ce9ddd947d06b73332cc5e3ce76339f937d2cd7ef5396e20a1bdd968 +size 11162 diff --git a/EndlessVendetta/Content/Characters/Mannequin_UE4/Meshes/SK_Mannequin.uasset b/EndlessVendetta/Content/Characters/Mannequin_UE4/Meshes/SK_Mannequin.uasset new file mode 100644 index 00000000..f5959314 --- /dev/null +++ b/EndlessVendetta/Content/Characters/Mannequin_UE4/Meshes/SK_Mannequin.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:add4a29562eefee1f38203b6377e56cdb62ad5f109776e845d05e4050552926c +size 5583495 diff --git a/EndlessVendetta/Content/Characters/Mannequin_UE4/Meshes/SK_Mannequin_PhysicsAsset.uasset b/EndlessVendetta/Content/Characters/Mannequin_UE4/Meshes/SK_Mannequin_PhysicsAsset.uasset new file mode 100644 index 00000000..063f9350 --- /dev/null +++ b/EndlessVendetta/Content/Characters/Mannequin_UE4/Meshes/SK_Mannequin_PhysicsAsset.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:c8e0bf4f4a7a8702be683d64e382e0994d56a24f6ef94a0e13d0d3504df9e490 +size 46446 diff --git a/EndlessVendetta/Content/Characters/Mannequin_UE4/Meshes/SK_Mannequin_Skeleton.uasset b/EndlessVendetta/Content/Characters/Mannequin_UE4/Meshes/SK_Mannequin_Skeleton.uasset new file mode 100644 index 00000000..5ee88a5f --- /dev/null +++ b/EndlessVendetta/Content/Characters/Mannequin_UE4/Meshes/SK_Mannequin_Skeleton.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:44ad784e4e3635f78abc34c3f266522218994b20714ddda144bbcbaa5972c4ed +size 22962 diff --git a/EndlessVendetta/Content/Characters/Mannequin_UE4/Rigs/IK_UE4_Mannequin.uasset b/EndlessVendetta/Content/Characters/Mannequin_UE4/Rigs/IK_UE4_Mannequin.uasset new file mode 100644 index 00000000..80b681c2 --- /dev/null +++ b/EndlessVendetta/Content/Characters/Mannequin_UE4/Rigs/IK_UE4_Mannequin.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ce8694572ad9b6bf3f7b4bfb00f12aba5d5253d65389475ebcc8f9d8d43c37b2 +size 68924 diff --git a/EndlessVendetta/Content/Characters/Mannequin_UE4/Rigs/RTG_UE4Manny_UE5Manny.uasset b/EndlessVendetta/Content/Characters/Mannequin_UE4/Rigs/RTG_UE4Manny_UE5Manny.uasset new file mode 100644 index 00000000..4c60e88d --- /dev/null +++ b/EndlessVendetta/Content/Characters/Mannequin_UE4/Rigs/RTG_UE4Manny_UE5Manny.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:592717cabe08dd57e5ee625c860879be13a18932f8654fe73ee0bbaee063caf6 +size 23985 diff --git a/EndlessVendetta/Content/Characters/Mannequin_UE4/Rigs/RTG_UE5Manny_UE4Manny.uasset b/EndlessVendetta/Content/Characters/Mannequin_UE4/Rigs/RTG_UE5Manny_UE4Manny.uasset new file mode 100644 index 00000000..11f762ef --- /dev/null +++ b/EndlessVendetta/Content/Characters/Mannequin_UE4/Rigs/RTG_UE5Manny_UE4Manny.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b34deb079185dedefe04151a3c824a6981b25e12c65f89e7bcd120c68d0f7cac +size 19357 diff --git a/EndlessVendetta/Content/Characters/Mannequin_UE4/Textures/T_ML_Aluminum01.uasset b/EndlessVendetta/Content/Characters/Mannequin_UE4/Textures/T_ML_Aluminum01.uasset new file mode 100644 index 00000000..0909fde5 --- /dev/null +++ b/EndlessVendetta/Content/Characters/Mannequin_UE4/Textures/T_ML_Aluminum01.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:bf805e02f583024a7f5a40f4b2a249809ce711a46de5c84bcd74609b73fed351 +size 395400 diff --git a/EndlessVendetta/Content/Characters/Mannequin_UE4/Textures/T_ML_Aluminum01_N.uasset b/EndlessVendetta/Content/Characters/Mannequin_UE4/Textures/T_ML_Aluminum01_N.uasset new file mode 100644 index 00000000..7eceba11 --- /dev/null +++ b/EndlessVendetta/Content/Characters/Mannequin_UE4/Textures/T_ML_Aluminum01_N.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:582564da5dbbe8e30e6d65babae05ff22edce4a0bc8833f95180b505f0837447 +size 404289 diff --git a/EndlessVendetta/Content/Characters/Mannequin_UE4/Textures/T_ML_Rubber_Blue_01_D.uasset b/EndlessVendetta/Content/Characters/Mannequin_UE4/Textures/T_ML_Rubber_Blue_01_D.uasset new file mode 100644 index 00000000..e18a52aa --- /dev/null +++ b/EndlessVendetta/Content/Characters/Mannequin_UE4/Textures/T_ML_Rubber_Blue_01_D.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:64a3293fbe4df89c9040bc8d5e9cc6cebc945715ca1c8dc62a7682acc526a524 +size 429026 diff --git a/EndlessVendetta/Content/Characters/Mannequin_UE4/Textures/T_ML_Rubber_Blue_01_N.uasset b/EndlessVendetta/Content/Characters/Mannequin_UE4/Textures/T_ML_Rubber_Blue_01_N.uasset new file mode 100644 index 00000000..e9845353 --- /dev/null +++ b/EndlessVendetta/Content/Characters/Mannequin_UE4/Textures/T_ML_Rubber_Blue_01_N.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:4c84157238dd3d148b4f51e44a46f82d5dfd714beaa67c4c9c2998bdc7ec3365 +size 358524 diff --git a/EndlessVendetta/Content/Characters/Mannequin_UE4/Textures/T_UE4_Mannequin_MAT_MASKA.uasset b/EndlessVendetta/Content/Characters/Mannequin_UE4/Textures/T_UE4_Mannequin_MAT_MASKA.uasset new file mode 100644 index 00000000..5e4c2a3a --- /dev/null +++ b/EndlessVendetta/Content/Characters/Mannequin_UE4/Textures/T_UE4_Mannequin_MAT_MASKA.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ec1d27963fc08f75eeee585f78d96ffbd8727bfe86c7c1fe0e7e2a2dd57d5a26 +size 211489 diff --git a/EndlessVendetta/Content/Characters/Mannequin_UE4/Textures/T_UE4_Mannequin__normals.uasset b/EndlessVendetta/Content/Characters/Mannequin_UE4/Textures/T_UE4_Mannequin__normals.uasset new file mode 100644 index 00000000..8fd335bb --- /dev/null +++ b/EndlessVendetta/Content/Characters/Mannequin_UE4/Textures/T_UE4_Mannequin__normals.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:354c99110df3d84a5cf4bb01de49d994a5c674c9788bd4b5fc779bf3030c54cf +size 5427488 diff --git a/EndlessVendetta/Content/Characters/Mannequin_UE4/Textures/T_UELogo_Mask.uasset b/EndlessVendetta/Content/Characters/Mannequin_UE4/Textures/T_UELogo_Mask.uasset new file mode 100644 index 00000000..6c32cbeb --- /dev/null +++ b/EndlessVendetta/Content/Characters/Mannequin_UE4/Textures/T_UELogo_Mask.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a6f7d178353537343355bd9e8021951aac860c189c1393f57777df90c720466a +size 41868 diff --git a/EndlessVendetta/Content/Characters/Mannequin_UE4/Textures/T_UELogo_N_TGA.uasset b/EndlessVendetta/Content/Characters/Mannequin_UE4/Textures/T_UELogo_N_TGA.uasset new file mode 100644 index 00000000..3236d1f5 --- /dev/null +++ b/EndlessVendetta/Content/Characters/Mannequin_UE4/Textures/T_UELogo_N_TGA.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:5a30f20159eb0e91b89c5f36aa9e6699b4c1a2af7328296c3fd77c392e10b2c7 +size 56343 diff --git a/EndlessVendetta/Content/Characters/Mannequins/Animations/ABP_Manny.uasset b/EndlessVendetta/Content/Characters/Mannequins/Animations/ABP_Manny.uasset new file mode 100644 index 00000000..9e5b15dc --- /dev/null +++ b/EndlessVendetta/Content/Characters/Mannequins/Animations/ABP_Manny.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:698ad59b091eadff740a7ed78bb18cfad875fa3143d2ae614e0317d5e9680a79 +size 368180 diff --git a/EndlessVendetta/Content/Characters/Mannequins/Animations/ABP_Quinn.uasset b/EndlessVendetta/Content/Characters/Mannequins/Animations/ABP_Quinn.uasset new file mode 100644 index 00000000..ae1cbadb --- /dev/null +++ b/EndlessVendetta/Content/Characters/Mannequins/Animations/ABP_Quinn.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:cd84317778ba8ee13b7addf2bd11988a07c38cffbebb129562a25785e5215abb +size 39313 diff --git a/EndlessVendetta/Content/Characters/Mannequins/Animations/Manny/BS_MM_WalkRun.uasset b/EndlessVendetta/Content/Characters/Mannequins/Animations/Manny/BS_MM_WalkRun.uasset new file mode 100644 index 00000000..c1625d56 --- /dev/null +++ b/EndlessVendetta/Content/Characters/Mannequins/Animations/Manny/BS_MM_WalkRun.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:17534cfadb0ecbfec9556f6b116d3cc4276b2d8ea5b451062ba3919c5ce24a6c +size 8993 diff --git a/EndlessVendetta/Content/Characters/Mannequins/Animations/Manny/MM_Fall_Loop.uasset b/EndlessVendetta/Content/Characters/Mannequins/Animations/Manny/MM_Fall_Loop.uasset new file mode 100644 index 00000000..391c2456 --- /dev/null +++ b/EndlessVendetta/Content/Characters/Mannequins/Animations/Manny/MM_Fall_Loop.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:732b4cb73137a34d510f774b0ab63934bf2ee5532b0333d401fa450f88e44010 +size 698209 diff --git a/EndlessVendetta/Content/Characters/Mannequins/Animations/Manny/MM_Idle.uasset b/EndlessVendetta/Content/Characters/Mannequins/Animations/Manny/MM_Idle.uasset new file mode 100644 index 00000000..00049a8b --- /dev/null +++ b/EndlessVendetta/Content/Characters/Mannequins/Animations/Manny/MM_Idle.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:3d03e57ab6829b8f60cf19ba1ee5e0ac82e37e5429427edaad472fb473f71d1c +size 897634 diff --git a/EndlessVendetta/Content/Characters/Mannequins/Animations/Manny/MM_Jump.uasset b/EndlessVendetta/Content/Characters/Mannequins/Animations/Manny/MM_Jump.uasset new file mode 100644 index 00000000..360bd01b --- /dev/null +++ b/EndlessVendetta/Content/Characters/Mannequins/Animations/Manny/MM_Jump.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:771ad470861e3bec955b22c889d2b9acb844a6ae91565b0e647c7adace39878b +size 290962 diff --git a/EndlessVendetta/Content/Characters/Mannequins/Animations/Manny/MM_Land.uasset b/EndlessVendetta/Content/Characters/Mannequins/Animations/Manny/MM_Land.uasset new file mode 100644 index 00000000..f5e0d2cf --- /dev/null +++ b/EndlessVendetta/Content/Characters/Mannequins/Animations/Manny/MM_Land.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:24f34cf736992c09b7502185c3d71ef1c79278fb558dacc91fa494ecfe452fe5 +size 300335 diff --git a/EndlessVendetta/Content/Characters/Mannequins/Animations/Manny/MM_Run_Fwd.uasset b/EndlessVendetta/Content/Characters/Mannequins/Animations/Manny/MM_Run_Fwd.uasset new file mode 100644 index 00000000..84ca0780 --- /dev/null +++ b/EndlessVendetta/Content/Characters/Mannequins/Animations/Manny/MM_Run_Fwd.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:aff51ddb72b98d9cd2f4c1351f132dfcfde83d905f4f37d1f35b793b26c95b96 +size 293237 diff --git a/EndlessVendetta/Content/Characters/Mannequins/Animations/Manny/MM_T_Pose.uasset b/EndlessVendetta/Content/Characters/Mannequins/Animations/Manny/MM_T_Pose.uasset new file mode 100644 index 00000000..16d22893 --- /dev/null +++ b/EndlessVendetta/Content/Characters/Mannequins/Animations/Manny/MM_T_Pose.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:4b7e4d1ff30352e296f446e77eed841ad7d5344430c5f7141fd09aad7e0af2c3 +size 30458 diff --git a/EndlessVendetta/Content/Characters/Mannequins/Animations/Manny/MM_Walk_Fwd.uasset b/EndlessVendetta/Content/Characters/Mannequins/Animations/Manny/MM_Walk_Fwd.uasset new file mode 100644 index 00000000..5e734eb1 --- /dev/null +++ b/EndlessVendetta/Content/Characters/Mannequins/Animations/Manny/MM_Walk_Fwd.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:226e6affa1682ddf630a2e7759bc8b08dae033490a0449400af18a97941440c4 +size 382783 diff --git a/EndlessVendetta/Content/Characters/Mannequins/Animations/Manny/MM_Walk_InPlace.uasset b/EndlessVendetta/Content/Characters/Mannequins/Animations/Manny/MM_Walk_InPlace.uasset new file mode 100644 index 00000000..18e06808 --- /dev/null +++ b/EndlessVendetta/Content/Characters/Mannequins/Animations/Manny/MM_Walk_InPlace.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:55a005cf4d673d8fcef1b93e2be270b8c47a8a82b7cbf895a915d27710d4a40b +size 609238 diff --git a/EndlessVendetta/Content/Characters/Mannequins/Animations/Quinn/BS_MF_Unarmed_WalkRun.uasset b/EndlessVendetta/Content/Characters/Mannequins/Animations/Quinn/BS_MF_Unarmed_WalkRun.uasset new file mode 100644 index 00000000..83e9ffb9 --- /dev/null +++ b/EndlessVendetta/Content/Characters/Mannequins/Animations/Quinn/BS_MF_Unarmed_WalkRun.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e6974eb2d3d4f246d91f0cfea6b4400aed38c722b67dc9ca8c15c9bc4a14e193 +size 9025 diff --git a/EndlessVendetta/Content/Characters/Mannequins/Animations/Quinn/MF_Idle.uasset b/EndlessVendetta/Content/Characters/Mannequins/Animations/Quinn/MF_Idle.uasset new file mode 100644 index 00000000..56a8a863 --- /dev/null +++ b/EndlessVendetta/Content/Characters/Mannequins/Animations/Quinn/MF_Idle.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:98c6ee27d23ad13b69cd51e466058ff8f75e55ec69ab78911d43eb2d54151022 +size 919278 diff --git a/EndlessVendetta/Content/Characters/Mannequins/Animations/Quinn/MF_Run_Fwd.uasset b/EndlessVendetta/Content/Characters/Mannequins/Animations/Quinn/MF_Run_Fwd.uasset new file mode 100644 index 00000000..a022266f --- /dev/null +++ b/EndlessVendetta/Content/Characters/Mannequins/Animations/Quinn/MF_Run_Fwd.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:069b7d70641be0a4f2c0d9f0cb4662c796da0f2969c6f1297ae3e22dd3479026 +size 431040 diff --git a/EndlessVendetta/Content/Characters/Mannequins/Animations/Quinn/MF_Walk_Fwd.uasset b/EndlessVendetta/Content/Characters/Mannequins/Animations/Quinn/MF_Walk_Fwd.uasset new file mode 100644 index 00000000..a334b558 --- /dev/null +++ b/EndlessVendetta/Content/Characters/Mannequins/Animations/Quinn/MF_Walk_Fwd.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a277d4a34033b8e5b336eace9857a4abf1f255a2a4687fa1709b5a5a464ea137 +size 449906 diff --git a/EndlessVendetta/Content/Characters/Mannequins/Materials/Functions/CA_Mannequin.uasset b/EndlessVendetta/Content/Characters/Mannequins/Materials/Functions/CA_Mannequin.uasset new file mode 100644 index 00000000..33b7e4d0 --- /dev/null +++ b/EndlessVendetta/Content/Characters/Mannequins/Materials/Functions/CA_Mannequin.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:5564d59ac367f94d06d6eafc8eafbc1144eec525ebcaf0bd20c3effd400bcf8b +size 4812 diff --git a/EndlessVendetta/Content/Characters/Mannequins/Materials/Functions/ChromaticCurve.uasset b/EndlessVendetta/Content/Characters/Mannequins/Materials/Functions/ChromaticCurve.uasset new file mode 100644 index 00000000..b66dfadb --- /dev/null +++ b/EndlessVendetta/Content/Characters/Mannequins/Materials/Functions/ChromaticCurve.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:32f26545999f01c55f8900c2d491d4cb39f3c545b061225deee2c8b70e760b70 +size 6306 diff --git a/EndlessVendetta/Content/Characters/Mannequins/Materials/Functions/MF_Diffraction.uasset b/EndlessVendetta/Content/Characters/Mannequins/Materials/Functions/MF_Diffraction.uasset new file mode 100644 index 00000000..fbe47aaf --- /dev/null +++ b/EndlessVendetta/Content/Characters/Mannequins/Materials/Functions/MF_Diffraction.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:1248c9176bcd4693cab74b63249bd9f0434758dda1c4f4b5c53da5e2a2b91ec2 +size 32183 diff --git a/EndlessVendetta/Content/Characters/Mannequins/Materials/Functions/MF_logo3layers.uasset b/EndlessVendetta/Content/Characters/Mannequins/Materials/Functions/MF_logo3layers.uasset new file mode 100644 index 00000000..96a2e85d --- /dev/null +++ b/EndlessVendetta/Content/Characters/Mannequins/Materials/Functions/MF_logo3layers.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d1f542fd354f8ff82fb685318e3665da4e9a9207add267de9ce6cf8779b5e147 +size 56603 diff --git a/EndlessVendetta/Content/Characters/Mannequins/Materials/Functions/ML_BaseColorFallOff.uasset b/EndlessVendetta/Content/Characters/Mannequins/Materials/Functions/ML_BaseColorFallOff.uasset new file mode 100644 index 00000000..2c791171 --- /dev/null +++ b/EndlessVendetta/Content/Characters/Mannequins/Materials/Functions/ML_BaseColorFallOff.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:242a332a47b300d429e94147a7ffd38ed09b5c2467dede5e90525494af7c5e18 +size 13437 diff --git a/EndlessVendetta/Content/Characters/Mannequins/Materials/Instances/Manny/MI_Manny_01.uasset b/EndlessVendetta/Content/Characters/Mannequins/Materials/Instances/Manny/MI_Manny_01.uasset new file mode 100644 index 00000000..4c76d434 --- /dev/null +++ b/EndlessVendetta/Content/Characters/Mannequins/Materials/Instances/Manny/MI_Manny_01.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:2492fbdc6d6af64af264159aeab1b4ed6fc859e2adbd1be4aef59dd8221c7d49 +size 21590 diff --git a/EndlessVendetta/Content/Characters/Mannequins/Materials/Instances/Manny/MI_Manny_02.uasset b/EndlessVendetta/Content/Characters/Mannequins/Materials/Instances/Manny/MI_Manny_02.uasset new file mode 100644 index 00000000..8027144f --- /dev/null +++ b/EndlessVendetta/Content/Characters/Mannequins/Materials/Instances/Manny/MI_Manny_02.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:9e6b0c28b5f10768f406776c4fc9d853eb915efdcff8e79465e96aff8c11872b +size 24853 diff --git a/EndlessVendetta/Content/Characters/Mannequins/Materials/Instances/Quinn/MI_Quinn_01.uasset b/EndlessVendetta/Content/Characters/Mannequins/Materials/Instances/Quinn/MI_Quinn_01.uasset new file mode 100644 index 00000000..b486efd6 --- /dev/null +++ b/EndlessVendetta/Content/Characters/Mannequins/Materials/Instances/Quinn/MI_Quinn_01.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:cc66db2c2b3f8f37191aad8bc59bbdecda0a19a03a995c602df3b2d8cb3f19e9 +size 19667 diff --git a/EndlessVendetta/Content/Characters/Mannequins/Materials/Instances/Quinn/MI_Quinn_02.uasset b/EndlessVendetta/Content/Characters/Mannequins/Materials/Instances/Quinn/MI_Quinn_02.uasset new file mode 100644 index 00000000..7f69c8ab --- /dev/null +++ b/EndlessVendetta/Content/Characters/Mannequins/Materials/Instances/Quinn/MI_Quinn_02.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:46e73fecdb44bdf4bbbd661ee36798f7956f76360594023cb51b96f92ca4c01c +size 25230 diff --git a/EndlessVendetta/Content/Characters/Mannequins/Materials/M_Mannequin.uasset b/EndlessVendetta/Content/Characters/Mannequins/Materials/M_Mannequin.uasset new file mode 100644 index 00000000..8c4ba136 --- /dev/null +++ b/EndlessVendetta/Content/Characters/Mannequins/Materials/M_Mannequin.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:c19c44d3a63f9975bb2e777d37d44341cf24907674c36cca79c558383406f0d5 +size 83079 diff --git a/EndlessVendetta/Content/Characters/Mannequins/Meshes/Mannequin_LODSettings.uasset b/EndlessVendetta/Content/Characters/Mannequins/Meshes/Mannequin_LODSettings.uasset new file mode 100644 index 00000000..b342d7b2 --- /dev/null +++ b/EndlessVendetta/Content/Characters/Mannequins/Meshes/Mannequin_LODSettings.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ae6203ccee7839e886951796d05315fe1dd9b9aa44c8a60a9525d5ccd905d5b6 +size 18996 diff --git a/EndlessVendetta/Content/Characters/Mannequins/Meshes/SKM_Manny.uasset b/EndlessVendetta/Content/Characters/Mannequins/Meshes/SKM_Manny.uasset new file mode 100644 index 00000000..9f1f7d25 --- /dev/null +++ b/EndlessVendetta/Content/Characters/Mannequins/Meshes/SKM_Manny.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f1df1a6b3db170cd80f14c40653fbc9a692af00f7abd575872d9cd8a707e05c6 +size 34534883 diff --git a/EndlessVendetta/Content/Characters/Mannequins/Meshes/SKM_Manny_Simple.uasset b/EndlessVendetta/Content/Characters/Mannequins/Meshes/SKM_Manny_Simple.uasset new file mode 100644 index 00000000..efc750c9 --- /dev/null +++ b/EndlessVendetta/Content/Characters/Mannequins/Meshes/SKM_Manny_Simple.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:bc39b456f2700d3f7aa0dfa99432424c78464b723a143bdf337dcc96867aaab9 +size 18527372 diff --git a/EndlessVendetta/Content/Characters/Mannequins/Meshes/SKM_Quinn.uasset b/EndlessVendetta/Content/Characters/Mannequins/Meshes/SKM_Quinn.uasset new file mode 100644 index 00000000..113ac4e3 --- /dev/null +++ b/EndlessVendetta/Content/Characters/Mannequins/Meshes/SKM_Quinn.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e0fdd468262ff66fd30eb55f7bac167063959e5d9dbfa36abf853a5d77616a59 +size 36495654 diff --git a/EndlessVendetta/Content/Characters/Mannequins/Meshes/SKM_Quinn_Simple.uasset b/EndlessVendetta/Content/Characters/Mannequins/Meshes/SKM_Quinn_Simple.uasset new file mode 100644 index 00000000..0a0d0d11 --- /dev/null +++ b/EndlessVendetta/Content/Characters/Mannequins/Meshes/SKM_Quinn_Simple.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:01031c54550174f0a09f13787b128229316afa699302577044e13b6c71d830ed +size 19371553 diff --git a/EndlessVendetta/Content/Characters/Mannequins/Meshes/SK_Mannequin.uasset b/EndlessVendetta/Content/Characters/Mannequins/Meshes/SK_Mannequin.uasset new file mode 100644 index 00000000..e864a47a --- /dev/null +++ b/EndlessVendetta/Content/Characters/Mannequins/Meshes/SK_Mannequin.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:777b2aa0a679b5d326814440204787ff0ba56b4ad9477a407b24d689155b050c +size 160872 diff --git a/EndlessVendetta/Content/Characters/Mannequins/Rigs/ABP_Manny_PostProcess.uasset b/EndlessVendetta/Content/Characters/Mannequins/Rigs/ABP_Manny_PostProcess.uasset new file mode 100644 index 00000000..dd58011c --- /dev/null +++ b/EndlessVendetta/Content/Characters/Mannequins/Rigs/ABP_Manny_PostProcess.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:5f58d1ac6047ec45bf31bec1071a5afc0e9dde9d50849bd8e74ca1c4271495c8 +size 463451 diff --git a/EndlessVendetta/Content/Characters/Mannequins/Rigs/ABP_Quinn_PostProcess.uasset b/EndlessVendetta/Content/Characters/Mannequins/Rigs/ABP_Quinn_PostProcess.uasset new file mode 100644 index 00000000..2bb81b55 --- /dev/null +++ b/EndlessVendetta/Content/Characters/Mannequins/Rigs/ABP_Quinn_PostProcess.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:2f57ba4350e61b3a5fac6cff45c3d21b81d0ab289765dac797b150b8bac98f34 +size 463249 diff --git a/EndlessVendetta/Content/Characters/Mannequins/Rigs/CR_Mannequin_BasicFootIK.uasset b/EndlessVendetta/Content/Characters/Mannequins/Rigs/CR_Mannequin_BasicFootIK.uasset new file mode 100644 index 00000000..f9c827a9 --- /dev/null +++ b/EndlessVendetta/Content/Characters/Mannequins/Rigs/CR_Mannequin_BasicFootIK.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:968ba2fa8bf2bca36556b5623b895b9ac9db162f9c2936acda0b0504239543b4 +size 580522 diff --git a/EndlessVendetta/Content/Characters/Mannequins/Rigs/CR_Mannequin_Body.uasset b/EndlessVendetta/Content/Characters/Mannequins/Rigs/CR_Mannequin_Body.uasset new file mode 100644 index 00000000..f58f7655 --- /dev/null +++ b/EndlessVendetta/Content/Characters/Mannequins/Rigs/CR_Mannequin_Body.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:2d6092d8eb4a158e99568dffe0f036a5310b03d5a917e3b58529c7d5fd4088ce +size 16036573 diff --git a/EndlessVendetta/Content/Characters/Mannequins/Rigs/CR_Mannequin_Procedural.uasset b/EndlessVendetta/Content/Characters/Mannequins/Rigs/CR_Mannequin_Procedural.uasset new file mode 100644 index 00000000..98e02048 --- /dev/null +++ b/EndlessVendetta/Content/Characters/Mannequins/Rigs/CR_Mannequin_Procedural.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:4d1abd304377e26c3c7e5a3b7488c522b118cc62ba0f574e9a63ec2e6ca22ac6 +size 2267523 diff --git a/EndlessVendetta/Content/Characters/Mannequins/Rigs/IK_Mannequin.uasset b/EndlessVendetta/Content/Characters/Mannequins/Rigs/IK_Mannequin.uasset new file mode 100644 index 00000000..c35c1aba --- /dev/null +++ b/EndlessVendetta/Content/Characters/Mannequins/Rigs/IK_Mannequin.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:edd623de3bde5afa06348d226eb98ba4f7d66c962ad7c93b4d25feef5de4b124 +size 143479 diff --git a/EndlessVendetta/Content/Characters/Mannequins/Rigs/PA_Mannequin.uasset b/EndlessVendetta/Content/Characters/Mannequins/Rigs/PA_Mannequin.uasset new file mode 100644 index 00000000..72b36116 --- /dev/null +++ b/EndlessVendetta/Content/Characters/Mannequins/Rigs/PA_Mannequin.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a0b163ae42f4717b12d4a9ab0c6b9da218e2d0d64e891b508e81586ac2a3adee +size 289285 diff --git a/EndlessVendetta/Content/Characters/Mannequins/Rigs/Poses/Manny/Manny_calf_l_anim.uasset b/EndlessVendetta/Content/Characters/Mannequins/Rigs/Poses/Manny/Manny_calf_l_anim.uasset new file mode 100644 index 00000000..3c14e35b --- /dev/null +++ b/EndlessVendetta/Content/Characters/Mannequins/Rigs/Poses/Manny/Manny_calf_l_anim.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ec42316c0d0e642867721ab1ac8b58452ee537c9dde5e4d4389d745ccc44e9a6 +size 141452 diff --git a/EndlessVendetta/Content/Characters/Mannequins/Rigs/Poses/Manny/Manny_calf_l_pose.uasset b/EndlessVendetta/Content/Characters/Mannequins/Rigs/Poses/Manny/Manny_calf_l_pose.uasset new file mode 100644 index 00000000..44ba84b0 --- /dev/null +++ b/EndlessVendetta/Content/Characters/Mannequins/Rigs/Poses/Manny/Manny_calf_l_pose.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:26f5c00f4b1a7000505a233e217aa55c5e32b0473128b7cb96f34051dc330da5 +size 207430 diff --git a/EndlessVendetta/Content/Characters/Mannequins/Rigs/Poses/Manny/Manny_calf_r_anim.uasset b/EndlessVendetta/Content/Characters/Mannequins/Rigs/Poses/Manny/Manny_calf_r_anim.uasset new file mode 100644 index 00000000..bd39dac7 --- /dev/null +++ b/EndlessVendetta/Content/Characters/Mannequins/Rigs/Poses/Manny/Manny_calf_r_anim.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:afe97fa82d46c150d56573b1d1c3d59fbac288f498c3de5fecedd8ac64c2263a +size 141462 diff --git a/EndlessVendetta/Content/Characters/Mannequins/Rigs/Poses/Manny/Manny_calf_r_pose.uasset b/EndlessVendetta/Content/Characters/Mannequins/Rigs/Poses/Manny/Manny_calf_r_pose.uasset new file mode 100644 index 00000000..13f26224 --- /dev/null +++ b/EndlessVendetta/Content/Characters/Mannequins/Rigs/Poses/Manny/Manny_calf_r_pose.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:5fb5783ac00efbfb039007568246d1ac33d36da09eec69e3cf0d01e1f96d13fe +size 207430 diff --git a/EndlessVendetta/Content/Characters/Mannequins/Rigs/Poses/Manny/Manny_clavicle_l_anim.uasset b/EndlessVendetta/Content/Characters/Mannequins/Rigs/Poses/Manny/Manny_clavicle_l_anim.uasset new file mode 100644 index 00000000..31710ace --- /dev/null +++ b/EndlessVendetta/Content/Characters/Mannequins/Rigs/Poses/Manny/Manny_clavicle_l_anim.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:5b4292d4d3cc8c3a23c0d2ea80461f9c05379a22e97c94094a1c4e342e6f0fa9 +size 141484 diff --git a/EndlessVendetta/Content/Characters/Mannequins/Rigs/Poses/Manny/Manny_clavicle_l_pose.uasset b/EndlessVendetta/Content/Characters/Mannequins/Rigs/Poses/Manny/Manny_clavicle_l_pose.uasset new file mode 100644 index 00000000..18cd5507 --- /dev/null +++ b/EndlessVendetta/Content/Characters/Mannequins/Rigs/Poses/Manny/Manny_clavicle_l_pose.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:56c0e188c3d854c92956755b9c89b8cb6cdb75f1bc4aac655f0d5f6524fb8160 +size 205732 diff --git a/EndlessVendetta/Content/Characters/Mannequins/Rigs/Poses/Manny/Manny_clavicle_r_anim.uasset b/EndlessVendetta/Content/Characters/Mannequins/Rigs/Poses/Manny/Manny_clavicle_r_anim.uasset new file mode 100644 index 00000000..d7cc7354 --- /dev/null +++ b/EndlessVendetta/Content/Characters/Mannequins/Rigs/Poses/Manny/Manny_clavicle_r_anim.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:9263821d96862a7121442b54bcaff72775c4758fb2218747bd3540207aa0fecd +size 141486 diff --git a/EndlessVendetta/Content/Characters/Mannequins/Rigs/Poses/Manny/Manny_clavicle_r_pose.uasset b/EndlessVendetta/Content/Characters/Mannequins/Rigs/Poses/Manny/Manny_clavicle_r_pose.uasset new file mode 100644 index 00000000..8fe32e58 --- /dev/null +++ b/EndlessVendetta/Content/Characters/Mannequins/Rigs/Poses/Manny/Manny_clavicle_r_pose.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:20d21639ca1cd7876ba408a4e6603f66d3d4c9a65d2bbf7c76b59f28e4d020e3 +size 206334 diff --git a/EndlessVendetta/Content/Characters/Mannequins/Rigs/Poses/Manny/Manny_foot_l_anim.uasset b/EndlessVendetta/Content/Characters/Mannequins/Rigs/Poses/Manny/Manny_foot_l_anim.uasset new file mode 100644 index 00000000..46f2b70a --- /dev/null +++ b/EndlessVendetta/Content/Characters/Mannequins/Rigs/Poses/Manny/Manny_foot_l_anim.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d5d2ef5f757409ad457660e4388272646155d5bcdfecc4705b85b41d338835c6 +size 129460 diff --git a/EndlessVendetta/Content/Characters/Mannequins/Rigs/Poses/Manny/Manny_foot_l_pose.uasset b/EndlessVendetta/Content/Characters/Mannequins/Rigs/Poses/Manny/Manny_foot_l_pose.uasset new file mode 100644 index 00000000..e022eeda --- /dev/null +++ b/EndlessVendetta/Content/Characters/Mannequins/Rigs/Poses/Manny/Manny_foot_l_pose.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:9b0c29406e6b6a8074edb2b2d1107d62972059ccae5c0bfe3dc6d99d932f00ed +size 132176 diff --git a/EndlessVendetta/Content/Characters/Mannequins/Rigs/Poses/Manny/Manny_foot_r_anim.uasset b/EndlessVendetta/Content/Characters/Mannequins/Rigs/Poses/Manny/Manny_foot_r_anim.uasset new file mode 100644 index 00000000..b347990b --- /dev/null +++ b/EndlessVendetta/Content/Characters/Mannequins/Rigs/Poses/Manny/Manny_foot_r_anim.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:3f872db9323bc78b01d91dea5e406cfa348ef10aeed5b9e66a97ddc87b58704e +size 129462 diff --git a/EndlessVendetta/Content/Characters/Mannequins/Rigs/Poses/Manny/Manny_foot_r_pose.uasset b/EndlessVendetta/Content/Characters/Mannequins/Rigs/Poses/Manny/Manny_foot_r_pose.uasset new file mode 100644 index 00000000..f35a3146 --- /dev/null +++ b/EndlessVendetta/Content/Characters/Mannequins/Rigs/Poses/Manny/Manny_foot_r_pose.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:0313dfda857c8a37ae26a104bee21803eb49acc138a18fd7a6864320d025ef40 +size 132176 diff --git a/EndlessVendetta/Content/Characters/Mannequins/Rigs/Poses/Manny/Manny_hand_l_anim.uasset b/EndlessVendetta/Content/Characters/Mannequins/Rigs/Poses/Manny/Manny_hand_l_anim.uasset new file mode 100644 index 00000000..b2d1b800 --- /dev/null +++ b/EndlessVendetta/Content/Characters/Mannequins/Rigs/Poses/Manny/Manny_hand_l_anim.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:0ad7d36e92954cf783be7be2c7ce8e2e6b3b4376645985a6a772b5890977c381 +size 135460 diff --git a/EndlessVendetta/Content/Characters/Mannequins/Rigs/Poses/Manny/Manny_hand_l_pose.uasset b/EndlessVendetta/Content/Characters/Mannequins/Rigs/Poses/Manny/Manny_hand_l_pose.uasset new file mode 100644 index 00000000..05550aaa --- /dev/null +++ b/EndlessVendetta/Content/Characters/Mannequins/Rigs/Poses/Manny/Manny_hand_l_pose.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a1d40437f02274fec5ff3cad47fa3e1cb2997db9397507823c299f0749e1c5f0 +size 169206 diff --git a/EndlessVendetta/Content/Characters/Mannequins/Rigs/Poses/Manny/Manny_hand_r_anim.uasset b/EndlessVendetta/Content/Characters/Mannequins/Rigs/Poses/Manny/Manny_hand_r_anim.uasset new file mode 100644 index 00000000..64537c2b --- /dev/null +++ b/EndlessVendetta/Content/Characters/Mannequins/Rigs/Poses/Manny/Manny_hand_r_anim.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e52609e89b719e493df4ed2a196996db3c4dfff4b20a83f68a747099f31827c9 +size 135462 diff --git a/EndlessVendetta/Content/Characters/Mannequins/Rigs/Poses/Manny/Manny_hand_r_pose.uasset b/EndlessVendetta/Content/Characters/Mannequins/Rigs/Poses/Manny/Manny_hand_r_pose.uasset new file mode 100644 index 00000000..0cd5c370 --- /dev/null +++ b/EndlessVendetta/Content/Characters/Mannequins/Rigs/Poses/Manny/Manny_hand_r_pose.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:c9b7b4ce565d7c55919dfeea6b785e2704cba7cc2ca8ad786145739a7eac36bc +size 169206 diff --git a/EndlessVendetta/Content/Characters/Mannequins/Rigs/Poses/Manny/Manny_lowerarm_l_anim.uasset b/EndlessVendetta/Content/Characters/Mannequins/Rigs/Poses/Manny/Manny_lowerarm_l_anim.uasset new file mode 100644 index 00000000..3653416b --- /dev/null +++ b/EndlessVendetta/Content/Characters/Mannequins/Rigs/Poses/Manny/Manny_lowerarm_l_anim.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a1761fa57b6504be33ac4c346839446698f20fcc8942a36574ae579e99d6311b +size 203916 diff --git a/EndlessVendetta/Content/Characters/Mannequins/Rigs/Poses/Manny/Manny_lowerarm_l_pose.uasset b/EndlessVendetta/Content/Characters/Mannequins/Rigs/Poses/Manny/Manny_lowerarm_l_pose.uasset new file mode 100644 index 00000000..9009fa14 --- /dev/null +++ b/EndlessVendetta/Content/Characters/Mannequins/Rigs/Poses/Manny/Manny_lowerarm_l_pose.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:6a75265541e206479aabe98ede22dad0ae72aedd9b43fa8c33741422f4c5ec38 +size 361644 diff --git a/EndlessVendetta/Content/Characters/Mannequins/Rigs/Poses/Manny/Manny_lowerarm_r_anim.uasset b/EndlessVendetta/Content/Characters/Mannequins/Rigs/Poses/Manny/Manny_lowerarm_r_anim.uasset new file mode 100644 index 00000000..68f69cbf --- /dev/null +++ b/EndlessVendetta/Content/Characters/Mannequins/Rigs/Poses/Manny/Manny_lowerarm_r_anim.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:7bad38ef33364282ad783d13ff05ac64235fbd94f735f7970aa690f302927139 +size 165486 diff --git a/EndlessVendetta/Content/Characters/Mannequins/Rigs/Poses/Manny/Manny_lowerarm_r_pose.uasset b/EndlessVendetta/Content/Characters/Mannequins/Rigs/Poses/Manny/Manny_lowerarm_r_pose.uasset new file mode 100644 index 00000000..ad01a2d9 --- /dev/null +++ b/EndlessVendetta/Content/Characters/Mannequins/Rigs/Poses/Manny/Manny_lowerarm_r_pose.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:02a9cb1c077531f9bc0acd2f5868d25d42e7f1edaf21d29b0a89a67f277bb2d2 +size 361644 diff --git a/EndlessVendetta/Content/Characters/Mannequins/Rigs/Poses/Manny/Manny_thigh_l_anim.uasset b/EndlessVendetta/Content/Characters/Mannequins/Rigs/Poses/Manny/Manny_thigh_l_anim.uasset new file mode 100644 index 00000000..6abd3af2 --- /dev/null +++ b/EndlessVendetta/Content/Characters/Mannequins/Rigs/Poses/Manny/Manny_thigh_l_anim.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:46328ac897d55c35ed2c5f7d28443c963b6e4ed348adaf74980b1b7e64514975 +size 195468 diff --git a/EndlessVendetta/Content/Characters/Mannequins/Rigs/Poses/Manny/Manny_thigh_l_pose.uasset b/EndlessVendetta/Content/Characters/Mannequins/Rigs/Poses/Manny/Manny_thigh_l_pose.uasset new file mode 100644 index 00000000..30332d0b --- /dev/null +++ b/EndlessVendetta/Content/Characters/Mannequins/Rigs/Poses/Manny/Manny_thigh_l_pose.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ac1fba41bdc8d3832f26bee507b7f83d2e51051cae58ecbea0a1e73f3d1e8198 +size 557972 diff --git a/EndlessVendetta/Content/Characters/Mannequins/Rigs/Poses/Manny/Manny_thigh_r_anim.uasset b/EndlessVendetta/Content/Characters/Mannequins/Rigs/Poses/Manny/Manny_thigh_r_anim.uasset new file mode 100644 index 00000000..a18ad76e --- /dev/null +++ b/EndlessVendetta/Content/Characters/Mannequins/Rigs/Poses/Manny/Manny_thigh_r_anim.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b17348bde6d9bd17838698331f08c1babf8a120aab05553ddcbf658cef3d6caf +size 195470 diff --git a/EndlessVendetta/Content/Characters/Mannequins/Rigs/Poses/Manny/Manny_thigh_r_pose.uasset b/EndlessVendetta/Content/Characters/Mannequins/Rigs/Poses/Manny/Manny_thigh_r_pose.uasset new file mode 100644 index 00000000..c673e13f --- /dev/null +++ b/EndlessVendetta/Content/Characters/Mannequins/Rigs/Poses/Manny/Manny_thigh_r_pose.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:3bd106c4cf63362f741611edf562149e7d928c4e12a5debac2a27265bc315775 +size 557972 diff --git a/EndlessVendetta/Content/Characters/Mannequins/Rigs/Poses/Manny/Manny_upperarm_l_anim.uasset b/EndlessVendetta/Content/Characters/Mannequins/Rigs/Poses/Manny/Manny_upperarm_l_anim.uasset new file mode 100644 index 00000000..e4c5ebe7 --- /dev/null +++ b/EndlessVendetta/Content/Characters/Mannequins/Rigs/Poses/Manny/Manny_upperarm_l_anim.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:59995bd0fd055a0c29809abcec8ab593a4cfb517a8c52d09b56870ad46a6a431 +size 207486 diff --git a/EndlessVendetta/Content/Characters/Mannequins/Rigs/Poses/Manny/Manny_upperarm_l_pose.uasset b/EndlessVendetta/Content/Characters/Mannequins/Rigs/Poses/Manny/Manny_upperarm_l_pose.uasset new file mode 100644 index 00000000..91540fe4 --- /dev/null +++ b/EndlessVendetta/Content/Characters/Mannequins/Rigs/Poses/Manny/Manny_upperarm_l_pose.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b56619a8bff783926b5bc17770f90ca5b6dae18cfce0cfde29c69db26df8c968 +size 641633 diff --git a/EndlessVendetta/Content/Characters/Mannequins/Rigs/Poses/Manny/Manny_upperarm_r_anim.uasset b/EndlessVendetta/Content/Characters/Mannequins/Rigs/Poses/Manny/Manny_upperarm_r_anim.uasset new file mode 100644 index 00000000..cef74d71 --- /dev/null +++ b/EndlessVendetta/Content/Characters/Mannequins/Rigs/Poses/Manny/Manny_upperarm_r_anim.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:55a49a9b5f1d55df4733f651d7110c677fff421e8ccf317a7b5604d46380df9c +size 207488 diff --git a/EndlessVendetta/Content/Characters/Mannequins/Rigs/Poses/Manny/Manny_upperarm_r_pose.uasset b/EndlessVendetta/Content/Characters/Mannequins/Rigs/Poses/Manny/Manny_upperarm_r_pose.uasset new file mode 100644 index 00000000..00174b75 --- /dev/null +++ b/EndlessVendetta/Content/Characters/Mannequins/Rigs/Poses/Manny/Manny_upperarm_r_pose.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ed2b9dab16c319539175975f14ed906f2e442ebb3705a0f1bfb932b8b2752eec +size 630195 diff --git a/EndlessVendetta/Content/Characters/Mannequins/Rigs/Poses/Quinn/Quinn_calf_l_anim.uasset b/EndlessVendetta/Content/Characters/Mannequins/Rigs/Poses/Quinn/Quinn_calf_l_anim.uasset new file mode 100644 index 00000000..41247fa5 --- /dev/null +++ b/EndlessVendetta/Content/Characters/Mannequins/Rigs/Poses/Quinn/Quinn_calf_l_anim.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:315c606d481e66842161f6d640843049c1bb8fad801817cdc01b5347459fe663 +size 190030 diff --git a/EndlessVendetta/Content/Characters/Mannequins/Rigs/Poses/Quinn/Quinn_calf_l_pose.uasset b/EndlessVendetta/Content/Characters/Mannequins/Rigs/Poses/Quinn/Quinn_calf_l_pose.uasset new file mode 100644 index 00000000..7c0c6644 --- /dev/null +++ b/EndlessVendetta/Content/Characters/Mannequins/Rigs/Poses/Quinn/Quinn_calf_l_pose.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:5ee7e7490da8bc5da27bee03d313475c546418b9aa15186cc1e342ac314d1599 +size 245188 diff --git a/EndlessVendetta/Content/Characters/Mannequins/Rigs/Poses/Quinn/Quinn_calf_r_anim.uasset b/EndlessVendetta/Content/Characters/Mannequins/Rigs/Poses/Quinn/Quinn_calf_r_anim.uasset new file mode 100644 index 00000000..54c61deb --- /dev/null +++ b/EndlessVendetta/Content/Characters/Mannequins/Rigs/Poses/Quinn/Quinn_calf_r_anim.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:46a6c2f1c8b50afe1849072f062ead508a2f570682f1b21b2e85334776c5f315 +size 228099 diff --git a/EndlessVendetta/Content/Characters/Mannequins/Rigs/Poses/Quinn/Quinn_calf_r_pose.uasset b/EndlessVendetta/Content/Characters/Mannequins/Rigs/Poses/Quinn/Quinn_calf_r_pose.uasset new file mode 100644 index 00000000..c7c29305 --- /dev/null +++ b/EndlessVendetta/Content/Characters/Mannequins/Rigs/Poses/Quinn/Quinn_calf_r_pose.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:eaf41bdfdbbcde2f668b07dd932baac1b5517312d04d75b77dce1e82272b31b4 +size 245269 diff --git a/EndlessVendetta/Content/Characters/Mannequins/Rigs/Poses/Quinn/Quinn_clavicle_l_anim.uasset b/EndlessVendetta/Content/Characters/Mannequins/Rigs/Poses/Quinn/Quinn_clavicle_l_anim.uasset new file mode 100644 index 00000000..89f006aa --- /dev/null +++ b/EndlessVendetta/Content/Characters/Mannequins/Rigs/Poses/Quinn/Quinn_clavicle_l_anim.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:def1eceb6484991a242bd5bd4bf2c9c1b857861ff5b981ee916a23d4db023b4b +size 222063 diff --git a/EndlessVendetta/Content/Characters/Mannequins/Rigs/Poses/Quinn/Quinn_clavicle_l_pose.uasset b/EndlessVendetta/Content/Characters/Mannequins/Rigs/Poses/Quinn/Quinn_clavicle_l_pose.uasset new file mode 100644 index 00000000..da6c387c --- /dev/null +++ b/EndlessVendetta/Content/Characters/Mannequins/Rigs/Poses/Quinn/Quinn_clavicle_l_pose.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:c2225dbb5778c1529862086865e86272e574cc993ac0a48cb1c0cc28fafb27c1 +size 205936 diff --git a/EndlessVendetta/Content/Characters/Mannequins/Rigs/Poses/Quinn/Quinn_clavicle_r_anim.uasset b/EndlessVendetta/Content/Characters/Mannequins/Rigs/Poses/Quinn/Quinn_clavicle_r_anim.uasset new file mode 100644 index 00000000..3fc197f5 --- /dev/null +++ b/EndlessVendetta/Content/Characters/Mannequins/Rigs/Poses/Quinn/Quinn_clavicle_r_anim.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:97a0673daaa10512b94608a6ff11d82914e0812760b75ea7e86c3b43c0b4c97b +size 183734 diff --git a/EndlessVendetta/Content/Characters/Mannequins/Rigs/Poses/Quinn/Quinn_clavicle_r_pose.uasset b/EndlessVendetta/Content/Characters/Mannequins/Rigs/Poses/Quinn/Quinn_clavicle_r_pose.uasset new file mode 100644 index 00000000..7c90b800 --- /dev/null +++ b/EndlessVendetta/Content/Characters/Mannequins/Rigs/Poses/Quinn/Quinn_clavicle_r_pose.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:aba097887d167f4b9277338de16c7feb689882acb393b32a0ac176d27f62e2b8 +size 205980 diff --git a/EndlessVendetta/Content/Characters/Mannequins/Rigs/Poses/Quinn/Quinn_foot_l_anim.uasset b/EndlessVendetta/Content/Characters/Mannequins/Rigs/Poses/Quinn/Quinn_foot_l_anim.uasset new file mode 100644 index 00000000..500df25c --- /dev/null +++ b/EndlessVendetta/Content/Characters/Mannequins/Rigs/Poses/Quinn/Quinn_foot_l_anim.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:6995c1603c3553af502c2ef04f6fb685d9183f0668266c6562f16238e08f80fb +size 171708 diff --git a/EndlessVendetta/Content/Characters/Mannequins/Rigs/Poses/Quinn/Quinn_foot_l_pose.uasset b/EndlessVendetta/Content/Characters/Mannequins/Rigs/Poses/Quinn/Quinn_foot_l_pose.uasset new file mode 100644 index 00000000..16a952aa --- /dev/null +++ b/EndlessVendetta/Content/Characters/Mannequins/Rigs/Poses/Quinn/Quinn_foot_l_pose.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:98e401355f6f5bdba83fc2e84ecd9d7e5128f1d6f0c585f368b9d971da58273c +size 132123 diff --git a/EndlessVendetta/Content/Characters/Mannequins/Rigs/Poses/Quinn/Quinn_foot_r_anim.uasset b/EndlessVendetta/Content/Characters/Mannequins/Rigs/Poses/Quinn/Quinn_foot_r_anim.uasset new file mode 100644 index 00000000..b79204b7 --- /dev/null +++ b/EndlessVendetta/Content/Characters/Mannequins/Rigs/Poses/Quinn/Quinn_foot_r_anim.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:91500b65453319b136c33e0b3edb161adf1030a5c3c30c8602390f1725af65b3 +size 171710 diff --git a/EndlessVendetta/Content/Characters/Mannequins/Rigs/Poses/Quinn/Quinn_foot_r_pose.uasset b/EndlessVendetta/Content/Characters/Mannequins/Rigs/Poses/Quinn/Quinn_foot_r_pose.uasset new file mode 100644 index 00000000..a1b9497d --- /dev/null +++ b/EndlessVendetta/Content/Characters/Mannequins/Rigs/Poses/Quinn/Quinn_foot_r_pose.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d4af5fd34572deb49a2335651c0a311e4db80ed2394c6c1ad633735fa1cf5e44 +size 132123 diff --git a/EndlessVendetta/Content/Characters/Mannequins/Rigs/Poses/Quinn/Quinn_hand_l_anim.uasset b/EndlessVendetta/Content/Characters/Mannequins/Rigs/Poses/Quinn/Quinn_hand_l_anim.uasset new file mode 100644 index 00000000..30a8ffb1 --- /dev/null +++ b/EndlessVendetta/Content/Characters/Mannequins/Rigs/Poses/Quinn/Quinn_hand_l_anim.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:7b0b0e92c4297c40bf94f63ccebd938acc49fc4b1ce45f1680fa533c5ea923cc +size 177708 diff --git a/EndlessVendetta/Content/Characters/Mannequins/Rigs/Poses/Quinn/Quinn_hand_l_pose.uasset b/EndlessVendetta/Content/Characters/Mannequins/Rigs/Poses/Quinn/Quinn_hand_l_pose.uasset new file mode 100644 index 00000000..01c81058 --- /dev/null +++ b/EndlessVendetta/Content/Characters/Mannequins/Rigs/Poses/Quinn/Quinn_hand_l_pose.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:c7c66da3c6a7b2801d9ada447fff4a2593a4b6054a178141f1eae26e21e4b3a7 +size 169153 diff --git a/EndlessVendetta/Content/Characters/Mannequins/Rigs/Poses/Quinn/Quinn_hand_r_anim.uasset b/EndlessVendetta/Content/Characters/Mannequins/Rigs/Poses/Quinn/Quinn_hand_r_anim.uasset new file mode 100644 index 00000000..635dce77 --- /dev/null +++ b/EndlessVendetta/Content/Characters/Mannequins/Rigs/Poses/Quinn/Quinn_hand_r_anim.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:c6128ed9b666f06dde9df5e3d647aff8994b07ad1b4b36fedf693726d63ce138 +size 158608 diff --git a/EndlessVendetta/Content/Characters/Mannequins/Rigs/Poses/Quinn/Quinn_hand_r_pose.uasset b/EndlessVendetta/Content/Characters/Mannequins/Rigs/Poses/Quinn/Quinn_hand_r_pose.uasset new file mode 100644 index 00000000..622cc1b4 --- /dev/null +++ b/EndlessVendetta/Content/Characters/Mannequins/Rigs/Poses/Quinn/Quinn_hand_r_pose.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:973ad5984394de84cfbe2dd3021f7f64f8c4c2e85b6573866382df76c0d9d2f3 +size 169153 diff --git a/EndlessVendetta/Content/Characters/Mannequins/Rigs/Poses/Quinn/Quinn_lowerarm_l_anim.uasset b/EndlessVendetta/Content/Characters/Mannequins/Rigs/Poses/Quinn/Quinn_lowerarm_l_anim.uasset new file mode 100644 index 00000000..5a95d707 --- /dev/null +++ b/EndlessVendetta/Content/Characters/Mannequins/Rigs/Poses/Quinn/Quinn_lowerarm_l_anim.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ecd03a972b3109a14840c924efe7d5f6b486ad3e7764773d33eacfb8032bea64 +size 194631 diff --git a/EndlessVendetta/Content/Characters/Mannequins/Rigs/Poses/Quinn/Quinn_lowerarm_l_pose.uasset b/EndlessVendetta/Content/Characters/Mannequins/Rigs/Poses/Quinn/Quinn_lowerarm_l_pose.uasset new file mode 100644 index 00000000..f2c2239e --- /dev/null +++ b/EndlessVendetta/Content/Characters/Mannequins/Rigs/Poses/Quinn/Quinn_lowerarm_l_pose.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:106aa8dc6d3493474f24e4d3240212c3c24428249d5f09f078c65d0372cc3d4d +size 399529 diff --git a/EndlessVendetta/Content/Characters/Mannequins/Rigs/Poses/Quinn/Quinn_lowerarm_r_anim.uasset b/EndlessVendetta/Content/Characters/Mannequins/Rigs/Poses/Quinn/Quinn_lowerarm_r_anim.uasset new file mode 100644 index 00000000..d830514c --- /dev/null +++ b/EndlessVendetta/Content/Characters/Mannequins/Rigs/Poses/Quinn/Quinn_lowerarm_r_anim.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:93be05fdf4241bdc152877416175f804bd2e1976d7588919192316bd7b21e936 +size 194633 diff --git a/EndlessVendetta/Content/Characters/Mannequins/Rigs/Poses/Quinn/Quinn_lowerarm_r_pose.uasset b/EndlessVendetta/Content/Characters/Mannequins/Rigs/Poses/Quinn/Quinn_lowerarm_r_pose.uasset new file mode 100644 index 00000000..a9791658 --- /dev/null +++ b/EndlessVendetta/Content/Characters/Mannequins/Rigs/Poses/Quinn/Quinn_lowerarm_r_pose.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:610877f087e4e77eba703036159d4abc95b52a1f196b7a317da97963e7477455 +size 399529 diff --git a/EndlessVendetta/Content/Characters/Mannequins/Rigs/Poses/Quinn/Quinn_thigh_l_anim.uasset b/EndlessVendetta/Content/Characters/Mannequins/Rigs/Poses/Quinn/Quinn_thigh_l_anim.uasset new file mode 100644 index 00000000..d39f2031 --- /dev/null +++ b/EndlessVendetta/Content/Characters/Mannequins/Rigs/Poses/Quinn/Quinn_thigh_l_anim.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ae59b67795d102845bd680e15d74a9b70688315a0ca489232f56cc9005de5597 +size 218614 diff --git a/EndlessVendetta/Content/Characters/Mannequins/Rigs/Poses/Quinn/Quinn_thigh_l_pose.uasset b/EndlessVendetta/Content/Characters/Mannequins/Rigs/Poses/Quinn/Quinn_thigh_l_pose.uasset new file mode 100644 index 00000000..591b42b9 --- /dev/null +++ b/EndlessVendetta/Content/Characters/Mannequins/Rigs/Poses/Quinn/Quinn_thigh_l_pose.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:04d95febf97f6a4d406c53efc6551eb20b378c8a91fef18c151b92a8b3df1abb +size 557618 diff --git a/EndlessVendetta/Content/Characters/Mannequins/Rigs/Poses/Quinn/Quinn_thigh_r_anim.uasset b/EndlessVendetta/Content/Characters/Mannequins/Rigs/Poses/Quinn/Quinn_thigh_r_anim.uasset new file mode 100644 index 00000000..0062c43c --- /dev/null +++ b/EndlessVendetta/Content/Characters/Mannequins/Rigs/Poses/Quinn/Quinn_thigh_r_anim.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b808aa71712168bf1905b91a238f152347579523c2eeec52401b67bf6de6ad27 +size 218616 diff --git a/EndlessVendetta/Content/Characters/Mannequins/Rigs/Poses/Quinn/Quinn_thigh_r_pose.uasset b/EndlessVendetta/Content/Characters/Mannequins/Rigs/Poses/Quinn/Quinn_thigh_r_pose.uasset new file mode 100644 index 00000000..49e65e6b --- /dev/null +++ b/EndlessVendetta/Content/Characters/Mannequins/Rigs/Poses/Quinn/Quinn_thigh_r_pose.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:76f65a5466dd4cd84abd48bef6245bb84930f7b8efff23807a88d4b23df3c1b3 +size 557618 diff --git a/EndlessVendetta/Content/Characters/Mannequins/Rigs/Poses/Quinn/Quinn_upperarm_l_anim.uasset b/EndlessVendetta/Content/Characters/Mannequins/Rigs/Poses/Quinn/Quinn_upperarm_l_anim.uasset new file mode 100644 index 00000000..81727ce1 --- /dev/null +++ b/EndlessVendetta/Content/Characters/Mannequins/Rigs/Poses/Quinn/Quinn_upperarm_l_anim.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:1de49cf76ee2b6e93936cad3a1ace2bb849e3cd84a24bb84e566abde3a035758 +size 206632 diff --git a/EndlessVendetta/Content/Characters/Mannequins/Rigs/Poses/Quinn/Quinn_upperarm_l_pose.uasset b/EndlessVendetta/Content/Characters/Mannequins/Rigs/Poses/Quinn/Quinn_upperarm_l_pose.uasset new file mode 100644 index 00000000..782027a6 --- /dev/null +++ b/EndlessVendetta/Content/Characters/Mannequins/Rigs/Poses/Quinn/Quinn_upperarm_l_pose.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d72952cdf9066cd84e1e5ea11cc2f6a754b0e79f8f037e1f2c8fc8c86ddb408f +size 485440 diff --git a/EndlessVendetta/Content/Characters/Mannequins/Rigs/Poses/Quinn/Quinn_upperarm_r_anim.uasset b/EndlessVendetta/Content/Characters/Mannequins/Rigs/Poses/Quinn/Quinn_upperarm_r_anim.uasset new file mode 100644 index 00000000..a756ff3b --- /dev/null +++ b/EndlessVendetta/Content/Characters/Mannequins/Rigs/Poses/Quinn/Quinn_upperarm_r_anim.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:6d1fd8bad84e7c6c45884137870261dc78789def4c72683b3775790722d1894d +size 206634 diff --git a/EndlessVendetta/Content/Characters/Mannequins/Rigs/Poses/Quinn/Quinn_upperarm_r_pose.uasset b/EndlessVendetta/Content/Characters/Mannequins/Rigs/Poses/Quinn/Quinn_upperarm_r_pose.uasset new file mode 100644 index 00000000..ed588fcc --- /dev/null +++ b/EndlessVendetta/Content/Characters/Mannequins/Rigs/Poses/Quinn/Quinn_upperarm_r_pose.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ee8b8e737a19894faf44176bcd5aca3405b3a1879eeea792ebdb0c534691cf1c +size 488450 diff --git a/EndlessVendetta/Content/Characters/Mannequins/Rigs/RTG_Mannequin.uasset b/EndlessVendetta/Content/Characters/Mannequins/Rigs/RTG_Mannequin.uasset new file mode 100644 index 00000000..88c8cd29 --- /dev/null +++ b/EndlessVendetta/Content/Characters/Mannequins/Rigs/RTG_Mannequin.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:710754e06ca383f6333958aea11321463736f5ffe6b1f82dfcf79896e2a5228b +size 23721 diff --git a/EndlessVendetta/Content/Characters/Mannequins/Textures/Manny/T_Manny_01_ASAOPMASK_MSK.uasset b/EndlessVendetta/Content/Characters/Mannequins/Textures/Manny/T_Manny_01_ASAOPMASK_MSK.uasset new file mode 100644 index 00000000..110ab264 --- /dev/null +++ b/EndlessVendetta/Content/Characters/Mannequins/Textures/Manny/T_Manny_01_ASAOPMASK_MSK.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ac817a2d33aa0cd0a8695b9fba9a925a1c71cfbe6de32986a51e6acb1ca598c0 +size 3612605 diff --git a/EndlessVendetta/Content/Characters/Mannequins/Textures/Manny/T_Manny_01_BN.uasset b/EndlessVendetta/Content/Characters/Mannequins/Textures/Manny/T_Manny_01_BN.uasset new file mode 100644 index 00000000..0875d1de --- /dev/null +++ b/EndlessVendetta/Content/Characters/Mannequins/Textures/Manny/T_Manny_01_BN.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:8036d465bf677ee48f2c45bb50911cbd085a3d5208959e0b70377bb8d9bc26a6 +size 18514168 diff --git a/EndlessVendetta/Content/Characters/Mannequins/Textures/Manny/T_Manny_01_CCRCCPlastic_MSK.uasset b/EndlessVendetta/Content/Characters/Mannequins/Textures/Manny/T_Manny_01_CCRCCPlastic_MSK.uasset new file mode 100644 index 00000000..83b1a1f5 --- /dev/null +++ b/EndlessVendetta/Content/Characters/Mannequins/Textures/Manny/T_Manny_01_CCRCCPlastic_MSK.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a3502ef8e4e68f4968b52510cf1fbf2fc0ccc1eb8d7c1e1afeb350d650c2e8ab +size 10271972 diff --git a/EndlessVendetta/Content/Characters/Mannequins/Textures/Manny/T_Manny_01_D.uasset b/EndlessVendetta/Content/Characters/Mannequins/Textures/Manny/T_Manny_01_D.uasset new file mode 100644 index 00000000..eb17abe4 --- /dev/null +++ b/EndlessVendetta/Content/Characters/Mannequins/Textures/Manny/T_Manny_01_D.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:fc929bd4eb67ba8610069c601709062d142cca925eedc40c89a940037650b524 +size 5740376 diff --git a/EndlessVendetta/Content/Characters/Mannequins/Textures/Manny/T_Manny_01_MSR_MSK.uasset b/EndlessVendetta/Content/Characters/Mannequins/Textures/Manny/T_Manny_01_MSR_MSK.uasset new file mode 100644 index 00000000..f3414989 --- /dev/null +++ b/EndlessVendetta/Content/Characters/Mannequins/Textures/Manny/T_Manny_01_MSR_MSK.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b54209191bfa9dc3c8e195661e0d7807a24f039a3010d54f04e984f63669881c +size 11038184 diff --git a/EndlessVendetta/Content/Characters/Mannequins/Textures/Manny/T_Manny_01_N.uasset b/EndlessVendetta/Content/Characters/Mannequins/Textures/Manny/T_Manny_01_N.uasset new file mode 100644 index 00000000..6168d144 --- /dev/null +++ b/EndlessVendetta/Content/Characters/Mannequins/Textures/Manny/T_Manny_01_N.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b90b6df5b96b505495be378ecb268a17640ba88b40cfe5b0fc764aac26a07c40 +size 7198251 diff --git a/EndlessVendetta/Content/Characters/Mannequins/Textures/Manny/T_Manny_01_Tan.uasset b/EndlessVendetta/Content/Characters/Mannequins/Textures/Manny/T_Manny_01_Tan.uasset new file mode 100644 index 00000000..ed6ba96d --- /dev/null +++ b/EndlessVendetta/Content/Characters/Mannequins/Textures/Manny/T_Manny_01_Tan.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:251a25a1ac777fddadd2845c84edca5b4ce15b749e9f46d8169c001b9be9c4ea +size 1357770 diff --git a/EndlessVendetta/Content/Characters/Mannequins/Textures/Manny/T_Manny_02_ASAOPMASK_MSK.uasset b/EndlessVendetta/Content/Characters/Mannequins/Textures/Manny/T_Manny_02_ASAOPMASK_MSK.uasset new file mode 100644 index 00000000..66c12c4f --- /dev/null +++ b/EndlessVendetta/Content/Characters/Mannequins/Textures/Manny/T_Manny_02_ASAOPMASK_MSK.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:51d2a2a0683e0c5654d4c5c724e8360c83e4ffe5181ae740872ca3fc0533e85a +size 8341381 diff --git a/EndlessVendetta/Content/Characters/Mannequins/Textures/Manny/T_Manny_02_BN.uasset b/EndlessVendetta/Content/Characters/Mannequins/Textures/Manny/T_Manny_02_BN.uasset new file mode 100644 index 00000000..779cd912 --- /dev/null +++ b/EndlessVendetta/Content/Characters/Mannequins/Textures/Manny/T_Manny_02_BN.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:0361a08e270d688814e73adf503937c3012771b0a939f839a06f7c6c8d5269c3 +size 21139527 diff --git a/EndlessVendetta/Content/Characters/Mannequins/Textures/Manny/T_Manny_02_CCRCCPlastic_MSK.uasset b/EndlessVendetta/Content/Characters/Mannequins/Textures/Manny/T_Manny_02_CCRCCPlastic_MSK.uasset new file mode 100644 index 00000000..acd53f15 --- /dev/null +++ b/EndlessVendetta/Content/Characters/Mannequins/Textures/Manny/T_Manny_02_CCRCCPlastic_MSK.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:651eac4091121b27a09f3b13110ec307e9bd815f9a6e573618d051c24387de46 +size 13144043 diff --git a/EndlessVendetta/Content/Characters/Mannequins/Textures/Manny/T_Manny_02_D.uasset b/EndlessVendetta/Content/Characters/Mannequins/Textures/Manny/T_Manny_02_D.uasset new file mode 100644 index 00000000..4c97af82 --- /dev/null +++ b/EndlessVendetta/Content/Characters/Mannequins/Textures/Manny/T_Manny_02_D.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:42864bd62f0f0d9510453038ff284cc1c1fc09630af8da0cb496e0563a2ffacb +size 9033544 diff --git a/EndlessVendetta/Content/Characters/Mannequins/Textures/Manny/T_Manny_02_MSR_MSK.uasset b/EndlessVendetta/Content/Characters/Mannequins/Textures/Manny/T_Manny_02_MSR_MSK.uasset new file mode 100644 index 00000000..264d3731 --- /dev/null +++ b/EndlessVendetta/Content/Characters/Mannequins/Textures/Manny/T_Manny_02_MSR_MSK.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:bb66b07e8c8621bf361a9d18f97c668677e51164b5892c2577c94703531482e8 +size 13677610 diff --git a/EndlessVendetta/Content/Characters/Mannequins/Textures/Manny/T_Manny_02_N.uasset b/EndlessVendetta/Content/Characters/Mannequins/Textures/Manny/T_Manny_02_N.uasset new file mode 100644 index 00000000..709611b0 --- /dev/null +++ b/EndlessVendetta/Content/Characters/Mannequins/Textures/Manny/T_Manny_02_N.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:790e9d4e061af061c727d118634801c4834b46e119dd1917ffe5d18f6601d53f +size 7269335 diff --git a/EndlessVendetta/Content/Characters/Mannequins/Textures/Manny/T_Manny_02_Tan.uasset b/EndlessVendetta/Content/Characters/Mannequins/Textures/Manny/T_Manny_02_Tan.uasset new file mode 100644 index 00000000..fd9ae9fe --- /dev/null +++ b/EndlessVendetta/Content/Characters/Mannequins/Textures/Manny/T_Manny_02_Tan.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:187e5fb0047bcc653c7a6e014c49e3d6582e955a3c034579cfb756c80b68dc53 +size 2153790 diff --git a/EndlessVendetta/Content/Characters/Mannequins/Textures/Quinn/T_Quinn_01ID_BN.uasset b/EndlessVendetta/Content/Characters/Mannequins/Textures/Quinn/T_Quinn_01ID_BN.uasset new file mode 100644 index 00000000..cd4420a3 --- /dev/null +++ b/EndlessVendetta/Content/Characters/Mannequins/Textures/Quinn/T_Quinn_01ID_BN.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:267382e5ca6dcb468e63545e09778b0e16dbd7652cb6d735b487cff1990e809f +size 16108599 diff --git a/EndlessVendetta/Content/Characters/Mannequins/Textures/Quinn/T_Quinn_01ID_D.uasset b/EndlessVendetta/Content/Characters/Mannequins/Textures/Quinn/T_Quinn_01ID_D.uasset new file mode 100644 index 00000000..a9ba5478 --- /dev/null +++ b/EndlessVendetta/Content/Characters/Mannequins/Textures/Quinn/T_Quinn_01ID_D.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:792f234ebadad1dc45153c9b1987326d3a4da485d88cf8b1234e3395f5165070 +size 4711156 diff --git a/EndlessVendetta/Content/Characters/Mannequins/Textures/Quinn/T_Quinn_01ID_MSR_MSK.uasset b/EndlessVendetta/Content/Characters/Mannequins/Textures/Quinn/T_Quinn_01ID_MSR_MSK.uasset new file mode 100644 index 00000000..d692b9fc --- /dev/null +++ b/EndlessVendetta/Content/Characters/Mannequins/Textures/Quinn/T_Quinn_01ID_MSR_MSK.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e765500d0458a2b4612541ae714281afc376b1d4758403017eb1ca6bc6892de9 +size 11656141 diff --git a/EndlessVendetta/Content/Characters/Mannequins/Textures/Quinn/T_Quinn_01ID_N.uasset b/EndlessVendetta/Content/Characters/Mannequins/Textures/Quinn/T_Quinn_01ID_N.uasset new file mode 100644 index 00000000..2c453f37 --- /dev/null +++ b/EndlessVendetta/Content/Characters/Mannequins/Textures/Quinn/T_Quinn_01ID_N.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a8266e8da977f915cbd75329eb02feee571f92067ee749b45099c290519bf20b +size 5217676 diff --git a/EndlessVendetta/Content/Characters/Mannequins/Textures/Quinn/T_Quinn_01ID_Tan.uasset b/EndlessVendetta/Content/Characters/Mannequins/Textures/Quinn/T_Quinn_01ID_Tan.uasset new file mode 100644 index 00000000..552a695a --- /dev/null +++ b/EndlessVendetta/Content/Characters/Mannequins/Textures/Quinn/T_Quinn_01ID_Tan.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:57d9b50418e742ee22fc67783d9db3afb5027c3ef943753e4137742a692b4e01 +size 1104627 diff --git a/EndlessVendetta/Content/Characters/Mannequins/Textures/Quinn/T_Quinn_01_ASAOMASK_MSK.uasset b/EndlessVendetta/Content/Characters/Mannequins/Textures/Quinn/T_Quinn_01_ASAOMASK_MSK.uasset new file mode 100644 index 00000000..044d1f5f --- /dev/null +++ b/EndlessVendetta/Content/Characters/Mannequins/Textures/Quinn/T_Quinn_01_ASAOMASK_MSK.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d5583b02c8b943d60f91f5d9bb59466c9fb1ab3aa811d599c54a20f2a19661b2 +size 5834834 diff --git a/EndlessVendetta/Content/Characters/Mannequins/Textures/Quinn/T_Quinn_01_CCRCCPlastic_MSK.uasset b/EndlessVendetta/Content/Characters/Mannequins/Textures/Quinn/T_Quinn_01_CCRCCPlastic_MSK.uasset new file mode 100644 index 00000000..de237dd6 --- /dev/null +++ b/EndlessVendetta/Content/Characters/Mannequins/Textures/Quinn/T_Quinn_01_CCRCCPlastic_MSK.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:2134af63f2d5037e8fcab8e4f50593d62c731f4a8af43bdbd7c2613debea0cbb +size 12399926 diff --git a/EndlessVendetta/Content/Characters/Mannequins/Textures/Quinn/T_Quinn_02ID_BN.uasset b/EndlessVendetta/Content/Characters/Mannequins/Textures/Quinn/T_Quinn_02ID_BN.uasset new file mode 100644 index 00000000..d47e6fdf --- /dev/null +++ b/EndlessVendetta/Content/Characters/Mannequins/Textures/Quinn/T_Quinn_02ID_BN.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:fa063b2ea5c44fbc95b17b6a6c093c39a6bbbee1082137c42cbf23b311c75cef +size 19706883 diff --git a/EndlessVendetta/Content/Characters/Mannequins/Textures/Quinn/T_Quinn_02ID_D.uasset b/EndlessVendetta/Content/Characters/Mannequins/Textures/Quinn/T_Quinn_02ID_D.uasset new file mode 100644 index 00000000..779799d9 --- /dev/null +++ b/EndlessVendetta/Content/Characters/Mannequins/Textures/Quinn/T_Quinn_02ID_D.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:40f579c2a83087c90b7f36744a15798194e9ecbe7c6560d0da2903653ed17723 +size 6732524 diff --git a/EndlessVendetta/Content/Characters/Mannequins/Textures/Quinn/T_Quinn_02ID_MSR_MSK.uasset b/EndlessVendetta/Content/Characters/Mannequins/Textures/Quinn/T_Quinn_02ID_MSR_MSK.uasset new file mode 100644 index 00000000..282d0b60 --- /dev/null +++ b/EndlessVendetta/Content/Characters/Mannequins/Textures/Quinn/T_Quinn_02ID_MSR_MSK.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:98195f96efbfcf97ddf05c69f2f04388a5e5aefa22d2c9d771f37b22aba8fc2a +size 13169771 diff --git a/EndlessVendetta/Content/Characters/Mannequins/Textures/Quinn/T_Quinn_02ID_N.uasset b/EndlessVendetta/Content/Characters/Mannequins/Textures/Quinn/T_Quinn_02ID_N.uasset new file mode 100644 index 00000000..be613344 --- /dev/null +++ b/EndlessVendetta/Content/Characters/Mannequins/Textures/Quinn/T_Quinn_02ID_N.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:637241dcbbff574ea1032881f60ddb007ce4a33a61864c6b0d3b3b7aa392d0d9 +size 5217676 diff --git a/EndlessVendetta/Content/Characters/Mannequins/Textures/Quinn/T_Quinn_02ID_Tan.uasset b/EndlessVendetta/Content/Characters/Mannequins/Textures/Quinn/T_Quinn_02ID_Tan.uasset new file mode 100644 index 00000000..9b9edc4f --- /dev/null +++ b/EndlessVendetta/Content/Characters/Mannequins/Textures/Quinn/T_Quinn_02ID_Tan.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:bcb445b1af4f07ce1b59ab3c8c25af3da7eb1f9c019559b0fd9172c31f38fa5f +size 1758494 diff --git a/EndlessVendetta/Content/Characters/Mannequins/Textures/Quinn/T_Quinn_02_ASAOMASK_MSK.uasset b/EndlessVendetta/Content/Characters/Mannequins/Textures/Quinn/T_Quinn_02_ASAOMASK_MSK.uasset new file mode 100644 index 00000000..977a24f8 --- /dev/null +++ b/EndlessVendetta/Content/Characters/Mannequins/Textures/Quinn/T_Quinn_02_ASAOMASK_MSK.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:53b15563df73f76b904d67eec1f7f7ad3c27166bdb1aa21d99c7f9eec0116d60 +size 6901973 diff --git a/EndlessVendetta/Content/Characters/Mannequins/Textures/Quinn/T_Quinn_02_CCRCCPlastic_MSK.uasset b/EndlessVendetta/Content/Characters/Mannequins/Textures/Quinn/T_Quinn_02_CCRCCPlastic_MSK.uasset new file mode 100644 index 00000000..717049b2 --- /dev/null +++ b/EndlessVendetta/Content/Characters/Mannequins/Textures/Quinn/T_Quinn_02_CCRCCPlastic_MSK.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:fe4e287b727a2b1d18f26557d1569111eda715219f8c73bd96cb74ff87c2cb8c +size 13427858 diff --git a/EndlessVendetta/Content/Characters/Mannequins/Textures/Shared/T_UE_Logo_M.uasset b/EndlessVendetta/Content/Characters/Mannequins/Textures/Shared/T_UE_Logo_M.uasset new file mode 100644 index 00000000..51bc9085 --- /dev/null +++ b/EndlessVendetta/Content/Characters/Mannequins/Textures/Shared/T_UE_Logo_M.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:0571397248a1f4acc7607d1e53676cbb154e3c9c8a19d570915d76b70caaf99c +size 69960 diff --git a/EndlessVendetta/Content/ThirdPerson/Blueprints/BP_ThirdPersonCharacter.uasset b/EndlessVendetta/Content/ThirdPerson/Blueprints/BP_ThirdPersonCharacter.uasset new file mode 100644 index 00000000..53b74e99 --- /dev/null +++ b/EndlessVendetta/Content/ThirdPerson/Blueprints/BP_ThirdPersonCharacter.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:77ea60d528f8dedb8a1e810e8c41b193fb6ad35a25855fe4790784e42d7f7847 +size 34232 diff --git a/EndlessVendetta/Content/ThirdPerson/Input/Actions/IA_Jump.uasset b/EndlessVendetta/Content/ThirdPerson/Input/Actions/IA_Jump.uasset new file mode 100644 index 00000000..f259a9a3 --- /dev/null +++ b/EndlessVendetta/Content/ThirdPerson/Input/Actions/IA_Jump.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:be70c0d8a764ac67ce853e9bf07a97332996c27bcbf49e0ffafe0c3c13711c51 +size 1307 diff --git a/EndlessVendetta/Content/ThirdPerson/Input/Actions/IA_Look.uasset b/EndlessVendetta/Content/ThirdPerson/Input/Actions/IA_Look.uasset new file mode 100644 index 00000000..66b846e8 --- /dev/null +++ b/EndlessVendetta/Content/ThirdPerson/Input/Actions/IA_Look.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f31e273949de9b9798743f238b895cd422d9b14e77f73e11d993ff3527bbb735 +size 1454 diff --git a/EndlessVendetta/Content/ThirdPerson/Input/Actions/IA_Move.uasset b/EndlessVendetta/Content/ThirdPerson/Input/Actions/IA_Move.uasset new file mode 100644 index 00000000..7b57d9b6 --- /dev/null +++ b/EndlessVendetta/Content/ThirdPerson/Input/Actions/IA_Move.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d8ece438a653b29d1c64011ef11d4bd05245413994ecf4ad80ef4da1694b666f +size 1454 diff --git a/EndlessVendetta/Content/ThirdPerson/Input/IMC_Default.uasset b/EndlessVendetta/Content/ThirdPerson/Input/IMC_Default.uasset new file mode 100644 index 00000000..2b0033cc --- /dev/null +++ b/EndlessVendetta/Content/ThirdPerson/Input/IMC_Default.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:658cd92edd5950a4c65ab878682bde4ee787adf1b0d1c3d529fc9f43bcfe0830 +size 12793 diff --git a/EndlessVendetta/Content/ThirdPerson/Maps/ThirdPersonMap.umap b/EndlessVendetta/Content/ThirdPerson/Maps/ThirdPersonMap.umap new file mode 100644 index 00000000..29ccb762 --- /dev/null +++ b/EndlessVendetta/Content/ThirdPerson/Maps/ThirdPersonMap.umap @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ea0979f98e1f73562e66dd20db6bbfef467cf1a2d7da7d9111ea81fab98ff211 +size 18857 diff --git a/EndlessVendetta/Content/__ExternalActors__/ThirdPerson/Maps/ThirdPersonMap/0/43/HYQWORMY4JDQ5X3OKZXFLC.uasset b/EndlessVendetta/Content/__ExternalActors__/ThirdPerson/Maps/ThirdPersonMap/0/43/HYQWORMY4JDQ5X3OKZXFLC.uasset new file mode 100644 index 00000000..9714987f --- /dev/null +++ b/EndlessVendetta/Content/__ExternalActors__/ThirdPerson/Maps/ThirdPersonMap/0/43/HYQWORMY4JDQ5X3OKZXFLC.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b5b66a81c776d90069dce1a1f6b97fd13ebd75bed3eeecef9341b7769eb6c79b +size 2725 diff --git a/EndlessVendetta/Content/__ExternalActors__/ThirdPerson/Maps/ThirdPersonMap/0/FZ/4XWWUGWFDLX56REQRH8Z9W.uasset b/EndlessVendetta/Content/__ExternalActors__/ThirdPerson/Maps/ThirdPersonMap/0/FZ/4XWWUGWFDLX56REQRH8Z9W.uasset new file mode 100644 index 00000000..4845d086 --- /dev/null +++ b/EndlessVendetta/Content/__ExternalActors__/ThirdPerson/Maps/ThirdPersonMap/0/FZ/4XWWUGWFDLX56REQRH8Z9W.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:fb6ee8eb772326f09459ce560a30fdf856167c2d63e2d339994dfb2275f2f286 +size 4085 diff --git a/EndlessVendetta/Content/__ExternalActors__/ThirdPerson/Maps/ThirdPersonMap/0/SX/SKO7AH9HKZVPN4OMFO4DV3.uasset b/EndlessVendetta/Content/__ExternalActors__/ThirdPerson/Maps/ThirdPersonMap/0/SX/SKO7AH9HKZVPN4OMFO4DV3.uasset new file mode 100644 index 00000000..be6a8c37 --- /dev/null +++ b/EndlessVendetta/Content/__ExternalActors__/ThirdPerson/Maps/ThirdPersonMap/0/SX/SKO7AH9HKZVPN4OMFO4DV3.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:41069649b9e18e8ef0fa7e499b0685d042dbefb25a4b6ff8cf05768ae9ece1a3 +size 4083 diff --git a/EndlessVendetta/Content/__ExternalActors__/ThirdPerson/Maps/ThirdPersonMap/1/0G/HOAJZN9E4DDI6Y1W3JU13K.uasset b/EndlessVendetta/Content/__ExternalActors__/ThirdPerson/Maps/ThirdPersonMap/1/0G/HOAJZN9E4DDI6Y1W3JU13K.uasset new file mode 100644 index 00000000..0b012161 --- /dev/null +++ b/EndlessVendetta/Content/__ExternalActors__/ThirdPerson/Maps/ThirdPersonMap/1/0G/HOAJZN9E4DDI6Y1W3JU13K.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:7da4960c7166070d1beb553f5830711853b68576eb6e05b3d8cb3c8eb17c412a +size 4259 diff --git a/EndlessVendetta/Content/__ExternalActors__/ThirdPerson/Maps/ThirdPersonMap/1/2J/AQ1PWWT9TBAI7AA470T014.uasset b/EndlessVendetta/Content/__ExternalActors__/ThirdPerson/Maps/ThirdPersonMap/1/2J/AQ1PWWT9TBAI7AA470T014.uasset new file mode 100644 index 00000000..35f3245d --- /dev/null +++ b/EndlessVendetta/Content/__ExternalActors__/ThirdPerson/Maps/ThirdPersonMap/1/2J/AQ1PWWT9TBAI7AA470T014.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:6d58df588f04a19b1a7e9d24baaa072479e98424635ce2ad9b04f4a21d7f170f +size 4259 diff --git a/EndlessVendetta/Content/__ExternalActors__/ThirdPerson/Maps/ThirdPersonMap/1/AZ/A7GPT109Y6ZTTJD4A7TXER.uasset b/EndlessVendetta/Content/__ExternalActors__/ThirdPerson/Maps/ThirdPersonMap/1/AZ/A7GPT109Y6ZTTJD4A7TXER.uasset new file mode 100644 index 00000000..d12dc467 --- /dev/null +++ b/EndlessVendetta/Content/__ExternalActors__/ThirdPerson/Maps/ThirdPersonMap/1/AZ/A7GPT109Y6ZTTJD4A7TXER.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f48da921e22f146a0e9a033494f73e7a6e0bdae23560c40541ea73e2c866210f +size 12412 diff --git a/EndlessVendetta/Content/__ExternalActors__/ThirdPerson/Maps/ThirdPersonMap/1/EJ/PGUWWHRTS59S34GKBX0OUI.uasset b/EndlessVendetta/Content/__ExternalActors__/ThirdPerson/Maps/ThirdPersonMap/1/EJ/PGUWWHRTS59S34GKBX0OUI.uasset new file mode 100644 index 00000000..babc005b --- /dev/null +++ b/EndlessVendetta/Content/__ExternalActors__/ThirdPerson/Maps/ThirdPersonMap/1/EJ/PGUWWHRTS59S34GKBX0OUI.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:c09ae2489999de7866bfa0bb0ac8cf702067b14771f37972551555dd042b9d6f +size 4607 diff --git a/EndlessVendetta/Content/__ExternalActors__/ThirdPerson/Maps/ThirdPersonMap/1/HF/YFYBQ72OYLHJQS0TSSXGBV.uasset b/EndlessVendetta/Content/__ExternalActors__/ThirdPerson/Maps/ThirdPersonMap/1/HF/YFYBQ72OYLHJQS0TSSXGBV.uasset new file mode 100644 index 00000000..d881168b --- /dev/null +++ b/EndlessVendetta/Content/__ExternalActors__/ThirdPerson/Maps/ThirdPersonMap/1/HF/YFYBQ72OYLHJQS0TSSXGBV.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:aebc1a03fc1cc275a3a085a2414b75502cde3b9b7b8e596398c4a5f945bb198b +size 4554 diff --git a/EndlessVendetta/Content/__ExternalActors__/ThirdPerson/Maps/ThirdPersonMap/1/QS/VHQF8JWOATZI5V3ZVY5YTM.uasset b/EndlessVendetta/Content/__ExternalActors__/ThirdPerson/Maps/ThirdPersonMap/1/QS/VHQF8JWOATZI5V3ZVY5YTM.uasset new file mode 100644 index 00000000..0d4d458c --- /dev/null +++ b/EndlessVendetta/Content/__ExternalActors__/ThirdPerson/Maps/ThirdPersonMap/1/QS/VHQF8JWOATZI5V3ZVY5YTM.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d1a63a58fa0473b49ca10244c97f73cbc79689bcf463108c880c4e0d9b30c7a3 +size 4554 diff --git a/EndlessVendetta/Content/__ExternalActors__/ThirdPerson/Maps/ThirdPersonMap/1/WU/NB37RT5Q32Z8MJWD8BD2SO.uasset b/EndlessVendetta/Content/__ExternalActors__/ThirdPerson/Maps/ThirdPersonMap/1/WU/NB37RT5Q32Z8MJWD8BD2SO.uasset new file mode 100644 index 00000000..80f7706c --- /dev/null +++ b/EndlessVendetta/Content/__ExternalActors__/ThirdPerson/Maps/ThirdPersonMap/1/WU/NB37RT5Q32Z8MJWD8BD2SO.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:7a9b50e79e5ef7ceed9e2d568bd7daf3741a7dc3c6504b48b12d1292f7fd3aed +size 3746 diff --git a/EndlessVendetta/Content/__ExternalActors__/ThirdPerson/Maps/ThirdPersonMap/2/66/0OP5U85W4H0R7CHG999ZDN.uasset b/EndlessVendetta/Content/__ExternalActors__/ThirdPerson/Maps/ThirdPersonMap/2/66/0OP5U85W4H0R7CHG999ZDN.uasset new file mode 100644 index 00000000..7b3e79bd --- /dev/null +++ b/EndlessVendetta/Content/__ExternalActors__/ThirdPerson/Maps/ThirdPersonMap/2/66/0OP5U85W4H0R7CHG999ZDN.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:9c63d31b74fb34ccd62f844218e1caea3096a9acfde112bb5edbeda02f86bd18 +size 3300 diff --git a/EndlessVendetta/Content/__ExternalActors__/ThirdPerson/Maps/ThirdPersonMap/3/1V/XSFYSB2EC9Z21RQOBXZLMO.uasset b/EndlessVendetta/Content/__ExternalActors__/ThirdPerson/Maps/ThirdPersonMap/3/1V/XSFYSB2EC9Z21RQOBXZLMO.uasset new file mode 100644 index 00000000..a072f258 --- /dev/null +++ b/EndlessVendetta/Content/__ExternalActors__/ThirdPerson/Maps/ThirdPersonMap/3/1V/XSFYSB2EC9Z21RQOBXZLMO.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a230044fd78fb50b1f1ed54138edbaa6a634ee5f8f59004ba0e9216fde66be60 +size 4257 diff --git a/EndlessVendetta/Content/__ExternalActors__/ThirdPerson/Maps/ThirdPersonMap/3/B1/9G3WNX7WIR7UKI26T9LK5O.uasset b/EndlessVendetta/Content/__ExternalActors__/ThirdPerson/Maps/ThirdPersonMap/3/B1/9G3WNX7WIR7UKI26T9LK5O.uasset new file mode 100644 index 00000000..715d4452 --- /dev/null +++ b/EndlessVendetta/Content/__ExternalActors__/ThirdPerson/Maps/ThirdPersonMap/3/B1/9G3WNX7WIR7UKI26T9LK5O.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:beb985fce505d8b808a4b9ce039e3f1001c7c009a00d3afc85e0b23a0054d8fa +size 4085 diff --git a/EndlessVendetta/Content/__ExternalActors__/ThirdPerson/Maps/ThirdPersonMap/3/HE/U35NZS5A9W1UXP1E3FF2GW.uasset b/EndlessVendetta/Content/__ExternalActors__/ThirdPerson/Maps/ThirdPersonMap/3/HE/U35NZS5A9W1UXP1E3FF2GW.uasset new file mode 100644 index 00000000..dc2d3b16 --- /dev/null +++ b/EndlessVendetta/Content/__ExternalActors__/ThirdPerson/Maps/ThirdPersonMap/3/HE/U35NZS5A9W1UXP1E3FF2GW.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:97a41f6a2af00e9b8edb95a77a6320c32078d2528512cbd5b180a86c3f36c6c4 +size 3983 diff --git a/EndlessVendetta/Content/__ExternalActors__/ThirdPerson/Maps/ThirdPersonMap/3/OG/KDQDMXAXZXD8VLDDU4K3JL.uasset b/EndlessVendetta/Content/__ExternalActors__/ThirdPerson/Maps/ThirdPersonMap/3/OG/KDQDMXAXZXD8VLDDU4K3JL.uasset new file mode 100644 index 00000000..e72fa82c --- /dev/null +++ b/EndlessVendetta/Content/__ExternalActors__/ThirdPerson/Maps/ThirdPersonMap/3/OG/KDQDMXAXZXD8VLDDU4K3JL.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f3cd06524bb4945fb0fa8402ed950f03bef10d76f50f6dd19595da24a1d130a7 +size 5015 diff --git a/EndlessVendetta/Content/__ExternalActors__/ThirdPerson/Maps/ThirdPersonMap/3/P3/O43ETCZTFMLWWH1CJ941H2.uasset b/EndlessVendetta/Content/__ExternalActors__/ThirdPerson/Maps/ThirdPersonMap/3/P3/O43ETCZTFMLWWH1CJ941H2.uasset new file mode 100644 index 00000000..54fe615b --- /dev/null +++ b/EndlessVendetta/Content/__ExternalActors__/ThirdPerson/Maps/ThirdPersonMap/3/P3/O43ETCZTFMLWWH1CJ941H2.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:2e73c6c7d4d225a7196b2c5906fb34b7dd54ffa8cbcb7504f4a008ca733d16e1 +size 4438 diff --git a/EndlessVendetta/Content/__ExternalActors__/ThirdPerson/Maps/ThirdPersonMap/5/Q1/5IZD4L3UPM3EEODZK67MH1.uasset b/EndlessVendetta/Content/__ExternalActors__/ThirdPerson/Maps/ThirdPersonMap/5/Q1/5IZD4L3UPM3EEODZK67MH1.uasset new file mode 100644 index 00000000..3d6d8a46 --- /dev/null +++ b/EndlessVendetta/Content/__ExternalActors__/ThirdPerson/Maps/ThirdPersonMap/5/Q1/5IZD4L3UPM3EEODZK67MH1.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:787d45c626e04e33490e0293215d4eaa384f154eec3f9b7ac9611dab25d51b75 +size 4143 diff --git a/EndlessVendetta/Content/__ExternalActors__/ThirdPerson/Maps/ThirdPersonMap/6/0D/0WM78RPJCXHX477YOZXKQE.uasset b/EndlessVendetta/Content/__ExternalActors__/ThirdPerson/Maps/ThirdPersonMap/6/0D/0WM78RPJCXHX477YOZXKQE.uasset new file mode 100644 index 00000000..e0cb5df2 --- /dev/null +++ b/EndlessVendetta/Content/__ExternalActors__/ThirdPerson/Maps/ThirdPersonMap/6/0D/0WM78RPJCXHX477YOZXKQE.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:c21918f264c05666ed09cda482d4d137a7d81cc2a67f747bf6729ae8f7059d2b +size 4083 diff --git a/EndlessVendetta/Content/__ExternalActors__/ThirdPerson/Maps/ThirdPersonMap/6/HF/9H7TKAXH9DD8KI3TIXGI2I.uasset b/EndlessVendetta/Content/__ExternalActors__/ThirdPerson/Maps/ThirdPersonMap/6/HF/9H7TKAXH9DD8KI3TIXGI2I.uasset new file mode 100644 index 00000000..dc4d993b --- /dev/null +++ b/EndlessVendetta/Content/__ExternalActors__/ThirdPerson/Maps/ThirdPersonMap/6/HF/9H7TKAXH9DD8KI3TIXGI2I.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a5d007cc8571f1191319d3e019324a754c466ef54fdff4a881ce2395298c905f +size 4079 diff --git a/EndlessVendetta/Content/__ExternalActors__/ThirdPerson/Maps/ThirdPersonMap/6/NC/UUYHDUFQAXTRRN4RVOPIUF.uasset b/EndlessVendetta/Content/__ExternalActors__/ThirdPerson/Maps/ThirdPersonMap/6/NC/UUYHDUFQAXTRRN4RVOPIUF.uasset new file mode 100644 index 00000000..2c578d43 --- /dev/null +++ b/EndlessVendetta/Content/__ExternalActors__/ThirdPerson/Maps/ThirdPersonMap/6/NC/UUYHDUFQAXTRRN4RVOPIUF.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:0bb5da121c05b7dc1da3c43e9cd7b67630d4d69e64d895adebf4584627f5bda3 +size 4107 diff --git a/EndlessVendetta/Content/__ExternalActors__/ThirdPerson/Maps/ThirdPersonMap/6/NP/Z9EK2TXQ1TFO26WFZHWZII.uasset b/EndlessVendetta/Content/__ExternalActors__/ThirdPerson/Maps/ThirdPersonMap/6/NP/Z9EK2TXQ1TFO26WFZHWZII.uasset new file mode 100644 index 00000000..623f50b7 --- /dev/null +++ b/EndlessVendetta/Content/__ExternalActors__/ThirdPerson/Maps/ThirdPersonMap/6/NP/Z9EK2TXQ1TFO26WFZHWZII.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:596d164a9c149af87b384d8132b74583aae4fa5b9fb6ff1fe5100efe48fc8689 +size 3364 diff --git a/EndlessVendetta/Content/__ExternalActors__/ThirdPerson/Maps/ThirdPersonMap/6/UV/1C6W14EIHMXOXXB657JYKB.uasset b/EndlessVendetta/Content/__ExternalActors__/ThirdPerson/Maps/ThirdPersonMap/6/UV/1C6W14EIHMXOXXB657JYKB.uasset new file mode 100644 index 00000000..76ed28a8 --- /dev/null +++ b/EndlessVendetta/Content/__ExternalActors__/ThirdPerson/Maps/ThirdPersonMap/6/UV/1C6W14EIHMXOXXB657JYKB.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:4ae7576eee89d8def30e67ac4590f2349cdb26a1488f1d62670ba643a6aec883 +size 4199 diff --git a/EndlessVendetta/Content/__ExternalActors__/ThirdPerson/Maps/ThirdPersonMap/8/7Y/C94R5C0R01QSL2SVHUG3KD.uasset b/EndlessVendetta/Content/__ExternalActors__/ThirdPerson/Maps/ThirdPersonMap/8/7Y/C94R5C0R01QSL2SVHUG3KD.uasset new file mode 100644 index 00000000..9f8be96f --- /dev/null +++ b/EndlessVendetta/Content/__ExternalActors__/ThirdPerson/Maps/ThirdPersonMap/8/7Y/C94R5C0R01QSL2SVHUG3KD.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:7eeb2d5c32c92dde7da650f1c0e28b0318fdb2ec320eec6b38ec56e273e00c82 +size 4257 diff --git a/EndlessVendetta/Content/__ExternalActors__/ThirdPerson/Maps/ThirdPersonMap/8/H9/GITN2HJQNERMM41FAE68W0.uasset b/EndlessVendetta/Content/__ExternalActors__/ThirdPerson/Maps/ThirdPersonMap/8/H9/GITN2HJQNERMM41FAE68W0.uasset new file mode 100644 index 00000000..dba34de3 --- /dev/null +++ b/EndlessVendetta/Content/__ExternalActors__/ThirdPerson/Maps/ThirdPersonMap/8/H9/GITN2HJQNERMM41FAE68W0.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d526e85dd6b00ae1e550a509dd21dc308b3bef198300938e7f3d49540704386a +size 3601 diff --git a/EndlessVendetta/Content/__ExternalActors__/ThirdPerson/Maps/ThirdPersonMap/8/P1/NN84RP20JNUCL0SHI5W2B8.uasset b/EndlessVendetta/Content/__ExternalActors__/ThirdPerson/Maps/ThirdPersonMap/8/P1/NN84RP20JNUCL0SHI5W2B8.uasset new file mode 100644 index 00000000..3ab3b857 --- /dev/null +++ b/EndlessVendetta/Content/__ExternalActors__/ThirdPerson/Maps/ThirdPersonMap/8/P1/NN84RP20JNUCL0SHI5W2B8.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ad7ce57ee4db04d8b34862228a9a8eb0520a9a2016e982df5374e04e81041e85 +size 4137 diff --git a/EndlessVendetta/Content/__ExternalActors__/ThirdPerson/Maps/ThirdPersonMap/9/21/WWYX44RDCCS98492P9K9O3.uasset b/EndlessVendetta/Content/__ExternalActors__/ThirdPerson/Maps/ThirdPersonMap/9/21/WWYX44RDCCS98492P9K9O3.uasset new file mode 100644 index 00000000..51f82820 --- /dev/null +++ b/EndlessVendetta/Content/__ExternalActors__/ThirdPerson/Maps/ThirdPersonMap/9/21/WWYX44RDCCS98492P9K9O3.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:2cc9b152cf0171f0da0147e7e2b1a45a7da803b8585fe0300d795a2bc98843ff +size 4083 diff --git a/EndlessVendetta/Content/__ExternalActors__/ThirdPerson/Maps/ThirdPersonMap/9/6I/RU1L28PS820IOVH625A0DA.uasset b/EndlessVendetta/Content/__ExternalActors__/ThirdPerson/Maps/ThirdPersonMap/9/6I/RU1L28PS820IOVH625A0DA.uasset new file mode 100644 index 00000000..f4b8136d --- /dev/null +++ b/EndlessVendetta/Content/__ExternalActors__/ThirdPerson/Maps/ThirdPersonMap/9/6I/RU1L28PS820IOVH625A0DA.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ad08de5d7e928d08da67e868030cb76230874a9380200f27575dbc6fdc918ebe +size 4259 diff --git a/EndlessVendetta/Content/__ExternalActors__/ThirdPerson/Maps/ThirdPersonMap/9/CI/KST702KSCRZWYV56G3VJBD.uasset b/EndlessVendetta/Content/__ExternalActors__/ThirdPerson/Maps/ThirdPersonMap/9/CI/KST702KSCRZWYV56G3VJBD.uasset new file mode 100644 index 00000000..356a28da --- /dev/null +++ b/EndlessVendetta/Content/__ExternalActors__/ThirdPerson/Maps/ThirdPersonMap/9/CI/KST702KSCRZWYV56G3VJBD.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:13c37cf7da8e54d5a9c733a209b3d84484e3c29a4a81e87f13f5520a51907770 +size 4195 diff --git a/EndlessVendetta/Content/__ExternalActors__/ThirdPerson/Maps/ThirdPersonMap/9/MO/72II2GSLK9VS0ULW9SACWH.uasset b/EndlessVendetta/Content/__ExternalActors__/ThirdPerson/Maps/ThirdPersonMap/9/MO/72II2GSLK9VS0ULW9SACWH.uasset new file mode 100644 index 00000000..39f15c7c --- /dev/null +++ b/EndlessVendetta/Content/__ExternalActors__/ThirdPerson/Maps/ThirdPersonMap/9/MO/72II2GSLK9VS0ULW9SACWH.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:1d9ae3c360d130eb5f2824b2235dd3bee7b61c649bd1e3056914b25f63f072d6 +size 4081 diff --git a/EndlessVendetta/Content/__ExternalActors__/ThirdPerson/Maps/ThirdPersonMap/A/BW/M7Z5RX3O7568TBJFK5R76I.uasset b/EndlessVendetta/Content/__ExternalActors__/ThirdPerson/Maps/ThirdPersonMap/A/BW/M7Z5RX3O7568TBJFK5R76I.uasset new file mode 100644 index 00000000..0cad9208 --- /dev/null +++ b/EndlessVendetta/Content/__ExternalActors__/ThirdPerson/Maps/ThirdPersonMap/A/BW/M7Z5RX3O7568TBJFK5R76I.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:3d9785c14f57af40b7b2ea05a60a6dc5703e8ab9848ab980b0b7673c90524d0e +size 4197 diff --git a/EndlessVendetta/Content/__ExternalActors__/ThirdPerson/Maps/ThirdPersonMap/A/IO/07IVU4EY14FMETPGTJULEO.uasset b/EndlessVendetta/Content/__ExternalActors__/ThirdPerson/Maps/ThirdPersonMap/A/IO/07IVU4EY14FMETPGTJULEO.uasset new file mode 100644 index 00000000..038c6450 --- /dev/null +++ b/EndlessVendetta/Content/__ExternalActors__/ThirdPerson/Maps/ThirdPersonMap/A/IO/07IVU4EY14FMETPGTJULEO.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:dd01191dd97eddc4dd58042d38cf81bdbe6a2c7a7fb325c7ad5a72a8bf2a2601 +size 4145 diff --git a/EndlessVendetta/Content/__ExternalActors__/ThirdPerson/Maps/ThirdPersonMap/B/CJ/ZQ5BFL59YGMQUT9ZD7CAHJ.uasset b/EndlessVendetta/Content/__ExternalActors__/ThirdPerson/Maps/ThirdPersonMap/B/CJ/ZQ5BFL59YGMQUT9ZD7CAHJ.uasset new file mode 100644 index 00000000..183534ff --- /dev/null +++ b/EndlessVendetta/Content/__ExternalActors__/ThirdPerson/Maps/ThirdPersonMap/B/CJ/ZQ5BFL59YGMQUT9ZD7CAHJ.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:2d36d6d378261d895fd200239df3a51f71d91878886963f5b9c71c72c7afe1f4 +size 4083 diff --git a/EndlessVendetta/Content/__ExternalActors__/ThirdPerson/Maps/ThirdPersonMap/B/KW/9YH18EUCJFK5CZXL6H3W3R.uasset b/EndlessVendetta/Content/__ExternalActors__/ThirdPerson/Maps/ThirdPersonMap/B/KW/9YH18EUCJFK5CZXL6H3W3R.uasset new file mode 100644 index 00000000..22f568e7 --- /dev/null +++ b/EndlessVendetta/Content/__ExternalActors__/ThirdPerson/Maps/ThirdPersonMap/B/KW/9YH18EUCJFK5CZXL6H3W3R.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:2fa993398f6b05dbdafe6d8cfa0444a8b1da501c3b103983d567b2d0c471ed98 +size 3378 diff --git a/EndlessVendetta/Content/__ExternalActors__/ThirdPerson/Maps/ThirdPersonMap/C/0I/VIQQWOEJKSKV1EK1XGX3EY.uasset b/EndlessVendetta/Content/__ExternalActors__/ThirdPerson/Maps/ThirdPersonMap/C/0I/VIQQWOEJKSKV1EK1XGX3EY.uasset new file mode 100644 index 00000000..798876f2 --- /dev/null +++ b/EndlessVendetta/Content/__ExternalActors__/ThirdPerson/Maps/ThirdPersonMap/C/0I/VIQQWOEJKSKV1EK1XGX3EY.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:97556c67bcf00ebc8dc99200fb036e5ef9d2a7ba1c866932c30de63602eb6612 +size 4195 diff --git a/EndlessVendetta/Content/__ExternalActors__/ThirdPerson/Maps/ThirdPersonMap/D/DE/SWSI13675DVYIZ0N4NF7Y3.uasset b/EndlessVendetta/Content/__ExternalActors__/ThirdPerson/Maps/ThirdPersonMap/D/DE/SWSI13675DVYIZ0N4NF7Y3.uasset new file mode 100644 index 00000000..7f8018a7 --- /dev/null +++ b/EndlessVendetta/Content/__ExternalActors__/ThirdPerson/Maps/ThirdPersonMap/D/DE/SWSI13675DVYIZ0N4NF7Y3.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:155efc55358d86b7b7017b683862030b83481f5dbb4551c9d759694bb112232b +size 4064 diff --git a/EndlessVendetta/Content/__ExternalActors__/ThirdPerson/Maps/ThirdPersonMap/D/MM/5416TNIX8GKJW3B714Y6WF.uasset b/EndlessVendetta/Content/__ExternalActors__/ThirdPerson/Maps/ThirdPersonMap/D/MM/5416TNIX8GKJW3B714Y6WF.uasset new file mode 100644 index 00000000..b4aebb1b --- /dev/null +++ b/EndlessVendetta/Content/__ExternalActors__/ThirdPerson/Maps/ThirdPersonMap/D/MM/5416TNIX8GKJW3B714Y6WF.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:da81cbbe66fd8cc93c6015adbdaf10d79d417f2102d586d230b9434415c50f6a +size 4257 diff --git a/EndlessVendetta/Content/__ExternalActors__/ThirdPerson/Maps/ThirdPersonMap/D/OI/BVNTLHAPOPDXURSVGR63ME.uasset b/EndlessVendetta/Content/__ExternalActors__/ThirdPerson/Maps/ThirdPersonMap/D/OI/BVNTLHAPOPDXURSVGR63ME.uasset new file mode 100644 index 00000000..f9092d49 --- /dev/null +++ b/EndlessVendetta/Content/__ExternalActors__/ThirdPerson/Maps/ThirdPersonMap/D/OI/BVNTLHAPOPDXURSVGR63ME.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:1acced0dca47586b090ac74dc77bc38d083f07e68ae10fde10cb860c2befe25e +size 4257 diff --git a/EndlessVendetta/Content/__ExternalActors__/ThirdPerson/Maps/ThirdPersonMap/D/SY/Z4CTQ4LG3YV10EKPD0UE8Q.uasset b/EndlessVendetta/Content/__ExternalActors__/ThirdPerson/Maps/ThirdPersonMap/D/SY/Z4CTQ4LG3YV10EKPD0UE8Q.uasset new file mode 100644 index 00000000..d1220c4a --- /dev/null +++ b/EndlessVendetta/Content/__ExternalActors__/ThirdPerson/Maps/ThirdPersonMap/D/SY/Z4CTQ4LG3YV10EKPD0UE8Q.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:90adcdc364f7f30c5538c5bf8596bea4f66c70068f90990210fc986aeb2ef5ea +size 849 diff --git a/EndlessVendetta/Content/__ExternalActors__/ThirdPerson/Maps/ThirdPersonMap/D/VL/KUT2U1MQ1ND9CXN070OTDM.uasset b/EndlessVendetta/Content/__ExternalActors__/ThirdPerson/Maps/ThirdPersonMap/D/VL/KUT2U1MQ1ND9CXN070OTDM.uasset new file mode 100644 index 00000000..c7ae24e8 --- /dev/null +++ b/EndlessVendetta/Content/__ExternalActors__/ThirdPerson/Maps/ThirdPersonMap/D/VL/KUT2U1MQ1ND9CXN070OTDM.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b251c0f1d34e124a9c75c2efcb3c74fabcfdf5871b15a68d18df63e89c322fb5 +size 4085 diff --git a/EndlessVendetta/Content/__ExternalActors__/ThirdPerson/Maps/ThirdPersonMap/E/FR/LBG6LPN5JCL3FMVSI2CK6R.uasset b/EndlessVendetta/Content/__ExternalActors__/ThirdPerson/Maps/ThirdPersonMap/E/FR/LBG6LPN5JCL3FMVSI2CK6R.uasset new file mode 100644 index 00000000..7da1ffd0 --- /dev/null +++ b/EndlessVendetta/Content/__ExternalActors__/ThirdPerson/Maps/ThirdPersonMap/E/FR/LBG6LPN5JCL3FMVSI2CK6R.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e6cbaaaa9a10138be4952b22394cd3107901561e24650e05851f7f327326cc7b +size 2580 diff --git a/EndlessVendetta/Content/__ExternalActors__/ThirdPerson/Maps/ThirdPersonMap/E/T8/46ZIBNTTDDR3AOR2XC9VO6.uasset b/EndlessVendetta/Content/__ExternalActors__/ThirdPerson/Maps/ThirdPersonMap/E/T8/46ZIBNTTDDR3AOR2XC9VO6.uasset new file mode 100644 index 00000000..9bb947b3 --- /dev/null +++ b/EndlessVendetta/Content/__ExternalActors__/ThirdPerson/Maps/ThirdPersonMap/E/T8/46ZIBNTTDDR3AOR2XC9VO6.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:4a82e69dbef197b40a16ea06a6b44aff09f7d81ec7c0de80ef77aa7ca47b9197 +size 4197 diff --git a/EndlessVendetta/Content/__ExternalObjects__/ThirdPerson/Maps/ThirdPersonMap/3/DH/JQTP3L9HHXRN8IUHATI906.uasset b/EndlessVendetta/Content/__ExternalObjects__/ThirdPerson/Maps/ThirdPersonMap/3/DH/JQTP3L9HHXRN8IUHATI906.uasset new file mode 100644 index 00000000..8a4c9e5f --- /dev/null +++ b/EndlessVendetta/Content/__ExternalObjects__/ThirdPerson/Maps/ThirdPersonMap/3/DH/JQTP3L9HHXRN8IUHATI906.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:8502666e004c0b5c35154b7464b441013c705eed34c3ea749f17c36c96558cf7 +size 2011 diff --git a/EndlessVendetta/Content/__ExternalObjects__/ThirdPerson/Maps/ThirdPersonMap/4/4A/NCNZF2U4ZTZ8XZJNF86FNT.uasset b/EndlessVendetta/Content/__ExternalObjects__/ThirdPerson/Maps/ThirdPersonMap/4/4A/NCNZF2U4ZTZ8XZJNF86FNT.uasset new file mode 100644 index 00000000..e425d263 --- /dev/null +++ b/EndlessVendetta/Content/__ExternalObjects__/ThirdPerson/Maps/ThirdPersonMap/4/4A/NCNZF2U4ZTZ8XZJNF86FNT.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:5fd467498618623173886f91ea74e8e2a647fb4eb05887dfb71b36602364b49b +size 2009 diff --git a/EndlessVendetta/Content/__ExternalObjects__/ThirdPerson/Maps/ThirdPersonMap/8/05/U8OLLG133BEQMR58UPHM3P.uasset b/EndlessVendetta/Content/__ExternalObjects__/ThirdPerson/Maps/ThirdPersonMap/8/05/U8OLLG133BEQMR58UPHM3P.uasset new file mode 100644 index 00000000..464a93c4 --- /dev/null +++ b/EndlessVendetta/Content/__ExternalObjects__/ThirdPerson/Maps/ThirdPersonMap/8/05/U8OLLG133BEQMR58UPHM3P.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ce6528560be9a7d4a162f899701bf0117c3aebce4a53ca8b1a4974070bde602b +size 2009 diff --git a/EndlessVendetta/Content/__ExternalObjects__/ThirdPerson/Maps/ThirdPersonMap/A/KP/VZTB4WP3P1L1F1WL9R6XLZ.uasset b/EndlessVendetta/Content/__ExternalObjects__/ThirdPerson/Maps/ThirdPersonMap/A/KP/VZTB4WP3P1L1F1WL9R6XLZ.uasset new file mode 100644 index 00000000..bececfa8 --- /dev/null +++ b/EndlessVendetta/Content/__ExternalObjects__/ThirdPerson/Maps/ThirdPersonMap/A/KP/VZTB4WP3P1L1F1WL9R6XLZ.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:03f8cff85345b9cd9307106f09dc44109abea9c061343ceac9ad9e118e377132 +size 2015 diff --git a/EndlessVendetta/Content/__ExternalObjects__/ThirdPerson/Maps/ThirdPersonMap/B/AN/0Z4D0BFPHEXAYK76DY0WLL.uasset b/EndlessVendetta/Content/__ExternalObjects__/ThirdPerson/Maps/ThirdPersonMap/B/AN/0Z4D0BFPHEXAYK76DY0WLL.uasset new file mode 100644 index 00000000..f51dfcca --- /dev/null +++ b/EndlessVendetta/Content/__ExternalObjects__/ThirdPerson/Maps/ThirdPersonMap/B/AN/0Z4D0BFPHEXAYK76DY0WLL.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:cf3a8b0b3a498efe6e49e4c5dae12833aefdd9bf87663ee35f6a210e847588b1 +size 2009 diff --git a/EndlessVendetta/Content/__ExternalObjects__/ThirdPerson/Maps/ThirdPersonMap/D/13/KQB15WT334LUGWVAUX80XH.uasset b/EndlessVendetta/Content/__ExternalObjects__/ThirdPerson/Maps/ThirdPersonMap/D/13/KQB15WT334LUGWVAUX80XH.uasset new file mode 100644 index 00000000..790c306a --- /dev/null +++ b/EndlessVendetta/Content/__ExternalObjects__/ThirdPerson/Maps/ThirdPersonMap/D/13/KQB15WT334LUGWVAUX80XH.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d98ab61e02eafe51722506d3a0382ad21976f47e2290f539607fb3ba9d71038d +size 2011 diff --git a/EndlessVendetta/Source/EndlessVendetta/AI/EnemyCharacter.cpp b/EndlessVendetta/Source/EndlessVendetta/AI/EnemyCharacter.cpp new file mode 100644 index 00000000..57a5285f --- /dev/null +++ b/EndlessVendetta/Source/EndlessVendetta/AI/EnemyCharacter.cpp @@ -0,0 +1,32 @@ +// Fill out your copyright notice in the Description page of Project Settings. + + +#include "EnemyCharacter.h" + + +// Sets default values +AEnemyCharacter::AEnemyCharacter() +{ + // Set this character to call Tick() every frame. You can turn this off to improve performance if you don't need it. + PrimaryActorTick.bCanEverTick = true; +} + +// Called when the game starts or when spawned +void AEnemyCharacter::BeginPlay() +{ + Super::BeginPlay(); + +} + +// Called every frame +void AEnemyCharacter::Tick(float DeltaTime) +{ + Super::Tick(DeltaTime); +} + +// Called to bind functionality to input +void AEnemyCharacter::SetupPlayerInputComponent(UInputComponent* PlayerInputComponent) +{ + Super::SetupPlayerInputComponent(PlayerInputComponent); +} + diff --git a/EndlessVendetta/Source/EndlessVendetta/AI/EnemyCharacter.h b/EndlessVendetta/Source/EndlessVendetta/AI/EnemyCharacter.h new file mode 100644 index 00000000..74e529e5 --- /dev/null +++ b/EndlessVendetta/Source/EndlessVendetta/AI/EnemyCharacter.h @@ -0,0 +1,28 @@ +// Fill out your copyright notice in the Description page of Project Settings. + +#pragma once + +#include "CoreMinimal.h" +#include "GameFramework/Character.h" +#include "EnemyCharacter.generated.h" + +UCLASS() +class ENDLESSVENDETTA_API AEnemyCharacter : public ACharacter +{ + GENERATED_BODY() + +public: + // Sets default values for this character's properties + AEnemyCharacter(); + +protected: + // Called when the game starts or when spawned + virtual void BeginPlay() override; + +public: + // Called every frame + virtual void Tick(float DeltaTime) override; + + // Called to bind functionality to input + virtual void SetupPlayerInputComponent(class UInputComponent* PlayerInputComponent) override; +}; diff --git a/EndlessVendetta/Source/EndlessVendetta/TP_ThirdPerson/TP_ThirdPerson.h b/EndlessVendetta/Source/EndlessVendetta/TP_ThirdPerson/TP_ThirdPerson.h new file mode 100644 index 00000000..ddbf2e22 --- /dev/null +++ b/EndlessVendetta/Source/EndlessVendetta/TP_ThirdPerson/TP_ThirdPerson.h @@ -0,0 +1,5 @@ +// Copyright Epic Games, Inc. All Rights Reserved. + +#pragma once + +#include "CoreMinimal.h" diff --git a/EndlessVendetta/Source/EndlessVendetta/TP_ThirdPerson/TP_ThirdPersonCharacter.cpp b/EndlessVendetta/Source/EndlessVendetta/TP_ThirdPerson/TP_ThirdPersonCharacter.cpp new file mode 100644 index 00000000..61708391 --- /dev/null +++ b/EndlessVendetta/Source/EndlessVendetta/TP_ThirdPerson/TP_ThirdPersonCharacter.cpp @@ -0,0 +1,129 @@ +// Copyright Epic Games, Inc. All Rights Reserved. + +#include "TP_ThirdPersonCharacter.h" +#include "Camera/CameraComponent.h" +#include "Components/CapsuleComponent.h" +#include "Components/InputComponent.h" +#include "GameFramework/CharacterMovementComponent.h" +#include "GameFramework/Controller.h" +#include "GameFramework/SpringArmComponent.h" +#include "EnhancedInputComponent.h" +#include "EnhancedInputSubsystems.h" + + +////////////////////////////////////////////////////////////////////////// +// ATP_ThirdPersonCharacter + +ATP_ThirdPersonCharacter::ATP_ThirdPersonCharacter() +{ + // Set size for collision capsule + GetCapsuleComponent()->InitCapsuleSize(42.f, 96.0f); + + // Don't rotate when the controller rotates. Let that just affect the camera. + bUseControllerRotationPitch = false; + bUseControllerRotationYaw = false; + bUseControllerRotationRoll = false; + + // Configure character movement + GetCharacterMovement()->bOrientRotationToMovement = true; // Character moves in the direction of input... + GetCharacterMovement()->RotationRate = FRotator(0.0f, 500.0f, 0.0f); // ...at this rotation rate + + // Note: For faster iteration times these variables, and many more, can be tweaked in the Character Blueprint + // instead of recompiling to adjust them + GetCharacterMovement()->JumpZVelocity = 700.f; + GetCharacterMovement()->AirControl = 0.35f; + GetCharacterMovement()->MaxWalkSpeed = 500.f; + GetCharacterMovement()->MinAnalogWalkSpeed = 20.f; + GetCharacterMovement()->BrakingDecelerationWalking = 2000.f; + + // Create a camera boom (pulls in towards the player if there is a collision) + CameraBoom = CreateDefaultSubobject(TEXT("CameraBoom")); + CameraBoom->SetupAttachment(RootComponent); + CameraBoom->TargetArmLength = 400.0f; // The camera follows at this distance behind the character + CameraBoom->bUsePawnControlRotation = true; // Rotate the arm based on the controller + + // Create a follow camera + FollowCamera = CreateDefaultSubobject(TEXT("FollowCamera")); + FollowCamera->SetupAttachment(CameraBoom, USpringArmComponent::SocketName); // Attach the camera to the end of the boom and let the boom adjust to match the controller orientation + FollowCamera->bUsePawnControlRotation = false; // Camera does not rotate relative to arm + + // Note: The skeletal mesh and anim blueprint references on the Mesh component (inherited from Character) + // are set in the derived blueprint asset named ThirdPersonCharacter (to avoid direct content references in C++) +} + +void ATP_ThirdPersonCharacter::BeginPlay() +{ + // Call the base class + Super::BeginPlay(); + + //Add Input Mapping Context + if (APlayerController* PlayerController = Cast(Controller)) + { + if (UEnhancedInputLocalPlayerSubsystem* Subsystem = ULocalPlayer::GetSubsystem(PlayerController->GetLocalPlayer())) + { + Subsystem->AddMappingContext(DefaultMappingContext, 0); + } + } +} + +////////////////////////////////////////////////////////////////////////// +// Input + +void ATP_ThirdPersonCharacter::SetupPlayerInputComponent(class UInputComponent* PlayerInputComponent) +{ + // Set up action bindings + if (UEnhancedInputComponent* EnhancedInputComponent = CastChecked(PlayerInputComponent)) { + + //Jumping + EnhancedInputComponent->BindAction(JumpAction, ETriggerEvent::Triggered, this, &ACharacter::Jump); + EnhancedInputComponent->BindAction(JumpAction, ETriggerEvent::Completed, this, &ACharacter::StopJumping); + + //Moving + EnhancedInputComponent->BindAction(MoveAction, ETriggerEvent::Triggered, this, &ATP_ThirdPersonCharacter::Move); + + //Looking + EnhancedInputComponent->BindAction(LookAction, ETriggerEvent::Triggered, this, &ATP_ThirdPersonCharacter::Look); + + } + +} + +void ATP_ThirdPersonCharacter::Move(const FInputActionValue& Value) +{ + // input is a Vector2D + FVector2D MovementVector = Value.Get(); + + if (Controller != nullptr) + { + // find out which way is forward + const FRotator Rotation = Controller->GetControlRotation(); + const FRotator YawRotation(0, Rotation.Yaw, 0); + + // get forward vector + const FVector ForwardDirection = FRotationMatrix(YawRotation).GetUnitAxis(EAxis::X); + + // get right vector + const FVector RightDirection = FRotationMatrix(YawRotation).GetUnitAxis(EAxis::Y); + + // add movement + AddMovementInput(ForwardDirection, MovementVector.Y); + AddMovementInput(RightDirection, MovementVector.X); + } +} + +void ATP_ThirdPersonCharacter::Look(const FInputActionValue& Value) +{ + // input is a Vector2D + FVector2D LookAxisVector = Value.Get(); + + if (Controller != nullptr) + { + // add yaw and pitch input to controller + AddControllerYawInput(LookAxisVector.X); + AddControllerPitchInput(LookAxisVector.Y); + } +} + + + + diff --git a/EndlessVendetta/Source/EndlessVendetta/TP_ThirdPerson/TP_ThirdPersonCharacter.h b/EndlessVendetta/Source/EndlessVendetta/TP_ThirdPerson/TP_ThirdPersonCharacter.h new file mode 100644 index 00000000..77f7869f --- /dev/null +++ b/EndlessVendetta/Source/EndlessVendetta/TP_ThirdPerson/TP_ThirdPersonCharacter.h @@ -0,0 +1,66 @@ +// Copyright Epic Games, Inc. All Rights Reserved. + +#pragma once + +#include "CoreMinimal.h" +#include "GameFramework/Character.h" +#include "InputActionValue.h" +#include "TP_ThirdPersonCharacter.generated.h" + + +UCLASS(config=Game) +class ATP_ThirdPersonCharacter : public ACharacter +{ + GENERATED_BODY() + + /** Camera boom positioning the camera behind the character */ + UPROPERTY(VisibleAnywhere, BlueprintReadOnly, Category = Camera, meta = (AllowPrivateAccess = "true")) + class USpringArmComponent* CameraBoom; + + /** Follow camera */ + UPROPERTY(VisibleAnywhere, BlueprintReadOnly, Category = Camera, meta = (AllowPrivateAccess = "true")) + class UCameraComponent* FollowCamera; + + /** MappingContext */ + UPROPERTY(EditAnywhere, BlueprintReadOnly, Category = Input, meta = (AllowPrivateAccess = "true")) + class UInputMappingContext* DefaultMappingContext; + + /** Jump Input Action */ + UPROPERTY(EditAnywhere, BlueprintReadOnly, Category = Input, meta = (AllowPrivateAccess = "true")) + class UInputAction* JumpAction; + + /** Move Input Action */ + UPROPERTY(EditAnywhere, BlueprintReadOnly, Category = Input, meta = (AllowPrivateAccess = "true")) + class UInputAction* MoveAction; + + /** Look Input Action */ + UPROPERTY(EditAnywhere, BlueprintReadOnly, Category = Input, meta = (AllowPrivateAccess = "true")) + class UInputAction* LookAction; + +public: + ATP_ThirdPersonCharacter(); + + +protected: + + /** Called for movement input */ + void Move(const FInputActionValue& Value); + + /** Called for looking input */ + void Look(const FInputActionValue& Value); + + +protected: + // APawn interface + virtual void SetupPlayerInputComponent(class UInputComponent* PlayerInputComponent) override; + + // To add mapping context + virtual void BeginPlay(); + +public: + /** Returns CameraBoom subobject **/ + FORCEINLINE class USpringArmComponent* GetCameraBoom() const { return CameraBoom; } + /** Returns FollowCamera subobject **/ + FORCEINLINE class UCameraComponent* GetFollowCamera() const { return FollowCamera; } +}; + diff --git a/EndlessVendetta/Source/EndlessVendetta/TP_ThirdPerson/TP_ThirdPersonGameMode.cpp b/EndlessVendetta/Source/EndlessVendetta/TP_ThirdPerson/TP_ThirdPersonGameMode.cpp new file mode 100644 index 00000000..aa7ce003 --- /dev/null +++ b/EndlessVendetta/Source/EndlessVendetta/TP_ThirdPerson/TP_ThirdPersonGameMode.cpp @@ -0,0 +1,15 @@ +// Copyright Epic Games, Inc. All Rights Reserved. + +#include "TP_ThirdPersonGameMode.h" +#include "TP_ThirdPersonCharacter.h" +#include "UObject/ConstructorHelpers.h" + +ATP_ThirdPersonGameMode::ATP_ThirdPersonGameMode() +{ + // set default pawn class to our Blueprinted character + static ConstructorHelpers::FClassFinder PlayerPawnBPClass(TEXT("/Game/ThirdPerson/Blueprints/BP_ThirdPersonCharacter")); + if (PlayerPawnBPClass.Class != NULL) + { + DefaultPawnClass = PlayerPawnBPClass.Class; + } +} diff --git a/EndlessVendetta/Source/EndlessVendetta/TP_ThirdPerson/TP_ThirdPersonGameMode.h b/EndlessVendetta/Source/EndlessVendetta/TP_ThirdPerson/TP_ThirdPersonGameMode.h new file mode 100644 index 00000000..bf3f6900 --- /dev/null +++ b/EndlessVendetta/Source/EndlessVendetta/TP_ThirdPerson/TP_ThirdPersonGameMode.h @@ -0,0 +1,19 @@ +// Copyright Epic Games, Inc. All Rights Reserved. + +#pragma once + +#include "CoreMinimal.h" +#include "GameFramework/GameModeBase.h" +#include "TP_ThirdPersonGameMode.generated.h" + +UCLASS(minimalapi) +class ATP_ThirdPersonGameMode : public AGameModeBase +{ + GENERATED_BODY() + +public: + ATP_ThirdPersonGameMode(); +}; + + + From a65978a915bf2454dee723f4942d2493918dfe5a Mon Sep 17 00:00:00 2001 From: PHILIP WHITE Date: Thu, 28 Sep 2023 17:34:02 +0100 Subject: [PATCH 015/112] Update Build File for UI, AI & Particle Modules --- .../Source/EndlessVendetta/EndlessVendetta.Build.cs | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/EndlessVendetta/Source/EndlessVendetta/EndlessVendetta.Build.cs b/EndlessVendetta/Source/EndlessVendetta/EndlessVendetta.Build.cs index 55a052ca..3149aa96 100644 --- a/EndlessVendetta/Source/EndlessVendetta/EndlessVendetta.Build.cs +++ b/EndlessVendetta/Source/EndlessVendetta/EndlessVendetta.Build.cs @@ -8,6 +8,10 @@ public class EndlessVendetta : ModuleRules { PCHUsage = PCHUsageMode.UseExplicitOrSharedPCHs; - PublicDependencyModuleNames.AddRange(new string[] { "Core", "CoreUObject", "Engine", "InputCore", "HeadMountedDisplay", "EnhancedInput" }); + PublicDependencyModuleNames.AddRange(new string[] + { + "Core", "CoreUObject", "Engine", "InputCore", "HeadMountedDisplay", "EnhancedInput", "AIModule", + "GameplayTasks", "NavigationSystem", "UMG", "Slate", "SlateCore", "Niagara", "NiagaraCore", "NiagaraShader" + }); } -} +} \ No newline at end of file From 8217d4acbd510f92148b0c1bfba4b901ab2cacb8 Mon Sep 17 00:00:00 2001 From: Rafal Swierczek <34179rs@gmail.com> Date: Thu, 28 Sep 2023 20:25:49 +0100 Subject: [PATCH 016/112] Implemented and Tested 2 Main and 3 Side Bounties --- .../BountySystem/BountyDirector.uasset | 3 ++ .../BountySystem/CC_ReturnToShip.uasset | 3 ++ .../Test_Bounty1/BC_TestBounty1.uasset | 3 ++ .../Checkpoints/CC_Test1_1.uasset | 3 ++ .../Checkpoints/CC_Test1_2.uasset | 3 ++ .../Checkpoints/CC_Test1_3.uasset | 3 ++ .../Checkpoints/CC_SideTest1_1.uasset | 3 ++ .../CC_SideTest1_Replacement_1.uasset | 3 ++ .../TestSideBounty1/SB_TestSideBounty1.uasset | 3 ++ .../Checkpoints/CC_SideTest2_1.uasset | 3 ++ .../Checkpoints/CC_SideTest2_2.uasset | 3 ++ .../SB_TestSideBounty_2.uasset | 3 ++ .../Test_Bounty2/BC_TestBounty2.uasset | 3 ++ .../SideBounties/SB_SideTest2_1.uasset | 3 ++ .../CC_Replacement_SideTest2_1.uasset | 3 ++ .../checkpoints/CC_SideTest2_First.uasset | 3 ++ .../checkpoints/CC_Test2_1.uasset | 3 ++ .../Blueprints/BP_FirstPersonCharacter.uasset | 4 +-- .../Architecture/Floor_400x400.uasset | 4 +-- .../Blueprints/Blueprint_CeilingLight.uasset | 4 +-- .../C/N1/E7M6U3RRQJ0NKZWADRZU2F.uasset | 3 ++ .../0/TQ/3ACFHBDWFABKU596RXRO53.uasset | 4 +-- .../1/30/W9Z34RUFOXLO8DC8TGLS52.uasset | 4 +-- .../3/VN/8BVAC6SV0C7HY7NQZUMR3A.uasset | 4 +-- .../3/X0/UIXBS52CP92S41MZVNKQ5N.uasset | 3 ++ .../4/O7/YR3DRO0R6AREA4XTW0JVGN.uasset | 4 +-- .../4/OR/RK9JDE40KKJZQWFMFL26I5.uasset | 4 +-- .../5/3P/SF481C8C6IO4CAHI6873XE.uasset | 4 +-- .../7/IO/6Y51GE24EVFOHXCG615BY1.uasset | 4 +-- .../D/WD/LGTPJJO55ED5H60IZ3025H.uasset | 4 +-- .../HoloLens/Config/HoloLensEngine.ini | 32 +++++++++++++++++++ .../BountySystem/BountyDirector.cpp | 1 + .../BountySystem/BountyDirector.h | 8 ++--- .../BountySystem/SideBountyClass.cpp | 1 + 34 files changed, 117 insertions(+), 26 deletions(-) create mode 100644 EndlessVendetta/Content/BountySystem/BountyDirector.uasset create mode 100644 EndlessVendetta/Content/BountySystem/CC_ReturnToShip.uasset create mode 100644 EndlessVendetta/Content/BountySystem/TestBounties/Test_Bounty1/BC_TestBounty1.uasset create mode 100644 EndlessVendetta/Content/BountySystem/TestBounties/Test_Bounty1/Checkpoints/CC_Test1_1.uasset create mode 100644 EndlessVendetta/Content/BountySystem/TestBounties/Test_Bounty1/Checkpoints/CC_Test1_2.uasset create mode 100644 EndlessVendetta/Content/BountySystem/TestBounties/Test_Bounty1/Checkpoints/CC_Test1_3.uasset create mode 100644 EndlessVendetta/Content/BountySystem/TestBounties/Test_Bounty1/SideBounties/TestSideBounty1/Checkpoints/CC_SideTest1_1.uasset create mode 100644 EndlessVendetta/Content/BountySystem/TestBounties/Test_Bounty1/SideBounties/TestSideBounty1/Checkpoints/CC_SideTest1_Replacement_1.uasset create mode 100644 EndlessVendetta/Content/BountySystem/TestBounties/Test_Bounty1/SideBounties/TestSideBounty1/SB_TestSideBounty1.uasset create mode 100644 EndlessVendetta/Content/BountySystem/TestBounties/Test_Bounty1/SideBounties/TestSideBounty2/Checkpoints/CC_SideTest2_1.uasset create mode 100644 EndlessVendetta/Content/BountySystem/TestBounties/Test_Bounty1/SideBounties/TestSideBounty2/Checkpoints/CC_SideTest2_2.uasset create mode 100644 EndlessVendetta/Content/BountySystem/TestBounties/Test_Bounty1/SideBounties/TestSideBounty2/SB_TestSideBounty_2.uasset create mode 100644 EndlessVendetta/Content/BountySystem/TestBounties/Test_Bounty2/BC_TestBounty2.uasset create mode 100644 EndlessVendetta/Content/BountySystem/TestBounties/Test_Bounty2/SideBounties/SB_SideTest2_1.uasset create mode 100644 EndlessVendetta/Content/BountySystem/TestBounties/Test_Bounty2/SideBounties/checkpoints/CC_Replacement_SideTest2_1.uasset create mode 100644 EndlessVendetta/Content/BountySystem/TestBounties/Test_Bounty2/SideBounties/checkpoints/CC_SideTest2_First.uasset create mode 100644 EndlessVendetta/Content/BountySystem/TestBounties/Test_Bounty2/checkpoints/CC_Test2_1.uasset create mode 100644 EndlessVendetta/Content/__ExternalActors__/Levels/BountySystemTestLevel/C/N1/E7M6U3RRQJ0NKZWADRZU2F.uasset create mode 100644 EndlessVendetta/Content/__ExternalObjects__/Levels/BountySystemTestLevel/3/X0/UIXBS52CP92S41MZVNKQ5N.uasset create mode 100644 EndlessVendetta/Platforms/HoloLens/Config/HoloLensEngine.ini diff --git a/EndlessVendetta/Content/BountySystem/BountyDirector.uasset b/EndlessVendetta/Content/BountySystem/BountyDirector.uasset new file mode 100644 index 00000000..864d575c --- /dev/null +++ b/EndlessVendetta/Content/BountySystem/BountyDirector.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:8364b58c763904adb7b727800d9e1d2de027a9793f82db94c34cfa3ef32be588 +size 43410 diff --git a/EndlessVendetta/Content/BountySystem/CC_ReturnToShip.uasset b/EndlessVendetta/Content/BountySystem/CC_ReturnToShip.uasset new file mode 100644 index 00000000..9fce0370 --- /dev/null +++ b/EndlessVendetta/Content/BountySystem/CC_ReturnToShip.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:c7cad648008fd70041f5bf4f160cffa927427c047f41469065e52f61f4fbc5ac +size 22256 diff --git a/EndlessVendetta/Content/BountySystem/TestBounties/Test_Bounty1/BC_TestBounty1.uasset b/EndlessVendetta/Content/BountySystem/TestBounties/Test_Bounty1/BC_TestBounty1.uasset new file mode 100644 index 00000000..6235ec12 --- /dev/null +++ b/EndlessVendetta/Content/BountySystem/TestBounties/Test_Bounty1/BC_TestBounty1.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:dd50cc9532eeeff9ce7cb812e9e03c28b92860a7793f37f4f39b9a061a0a075a +size 27020 diff --git a/EndlessVendetta/Content/BountySystem/TestBounties/Test_Bounty1/Checkpoints/CC_Test1_1.uasset b/EndlessVendetta/Content/BountySystem/TestBounties/Test_Bounty1/Checkpoints/CC_Test1_1.uasset new file mode 100644 index 00000000..a63f7b7c --- /dev/null +++ b/EndlessVendetta/Content/BountySystem/TestBounties/Test_Bounty1/Checkpoints/CC_Test1_1.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f8c2b9772377d7c970c6e0b27eb1c7e70859df8ecc6e37d8e76d6700c63aa93d +size 39590 diff --git a/EndlessVendetta/Content/BountySystem/TestBounties/Test_Bounty1/Checkpoints/CC_Test1_2.uasset b/EndlessVendetta/Content/BountySystem/TestBounties/Test_Bounty1/Checkpoints/CC_Test1_2.uasset new file mode 100644 index 00000000..9750c92a --- /dev/null +++ b/EndlessVendetta/Content/BountySystem/TestBounties/Test_Bounty1/Checkpoints/CC_Test1_2.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e1236ba19a7d2c62dcc1607f3e73db7b8cb67f0fbcc84d34ff603ca98807050f +size 39541 diff --git a/EndlessVendetta/Content/BountySystem/TestBounties/Test_Bounty1/Checkpoints/CC_Test1_3.uasset b/EndlessVendetta/Content/BountySystem/TestBounties/Test_Bounty1/Checkpoints/CC_Test1_3.uasset new file mode 100644 index 00000000..e06e3641 --- /dev/null +++ b/EndlessVendetta/Content/BountySystem/TestBounties/Test_Bounty1/Checkpoints/CC_Test1_3.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:cd19115cde54422bb8a86f8de553f1e9de27982bde4fd798eaa08290459f9c1e +size 39540 diff --git a/EndlessVendetta/Content/BountySystem/TestBounties/Test_Bounty1/SideBounties/TestSideBounty1/Checkpoints/CC_SideTest1_1.uasset b/EndlessVendetta/Content/BountySystem/TestBounties/Test_Bounty1/SideBounties/TestSideBounty1/Checkpoints/CC_SideTest1_1.uasset new file mode 100644 index 00000000..8ed2eabd --- /dev/null +++ b/EndlessVendetta/Content/BountySystem/TestBounties/Test_Bounty1/SideBounties/TestSideBounty1/Checkpoints/CC_SideTest1_1.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a2d30e5ffdcb69db19e7d829035a0ebd1e73cac5fd1b10300e081a7bb67d4a92 +size 39477 diff --git a/EndlessVendetta/Content/BountySystem/TestBounties/Test_Bounty1/SideBounties/TestSideBounty1/Checkpoints/CC_SideTest1_Replacement_1.uasset b/EndlessVendetta/Content/BountySystem/TestBounties/Test_Bounty1/SideBounties/TestSideBounty1/Checkpoints/CC_SideTest1_Replacement_1.uasset new file mode 100644 index 00000000..72155b25 --- /dev/null +++ b/EndlessVendetta/Content/BountySystem/TestBounties/Test_Bounty1/SideBounties/TestSideBounty1/Checkpoints/CC_SideTest1_Replacement_1.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:14eaef3239f5095b66728601fa95223c30fd67cc9bf4c52b055734aac60a7388 +size 39708 diff --git a/EndlessVendetta/Content/BountySystem/TestBounties/Test_Bounty1/SideBounties/TestSideBounty1/SB_TestSideBounty1.uasset b/EndlessVendetta/Content/BountySystem/TestBounties/Test_Bounty1/SideBounties/TestSideBounty1/SB_TestSideBounty1.uasset new file mode 100644 index 00000000..8d8f5cc2 --- /dev/null +++ b/EndlessVendetta/Content/BountySystem/TestBounties/Test_Bounty1/SideBounties/TestSideBounty1/SB_TestSideBounty1.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:3e13db15ea111f6efb21a5777152b8a4a6a34c5af4aa592b73b6fe7d0b9f0a9c +size 27169 diff --git a/EndlessVendetta/Content/BountySystem/TestBounties/Test_Bounty1/SideBounties/TestSideBounty2/Checkpoints/CC_SideTest2_1.uasset b/EndlessVendetta/Content/BountySystem/TestBounties/Test_Bounty1/SideBounties/TestSideBounty2/Checkpoints/CC_SideTest2_1.uasset new file mode 100644 index 00000000..1f9e13bf --- /dev/null +++ b/EndlessVendetta/Content/BountySystem/TestBounties/Test_Bounty1/SideBounties/TestSideBounty2/Checkpoints/CC_SideTest2_1.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a87f05fe6854ed82a5db66b2c07fbb381be0d153e5abba8a486f408b2e004b27 +size 39387 diff --git a/EndlessVendetta/Content/BountySystem/TestBounties/Test_Bounty1/SideBounties/TestSideBounty2/Checkpoints/CC_SideTest2_2.uasset b/EndlessVendetta/Content/BountySystem/TestBounties/Test_Bounty1/SideBounties/TestSideBounty2/Checkpoints/CC_SideTest2_2.uasset new file mode 100644 index 00000000..d8e02fed --- /dev/null +++ b/EndlessVendetta/Content/BountySystem/TestBounties/Test_Bounty1/SideBounties/TestSideBounty2/Checkpoints/CC_SideTest2_2.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:3cf8bab0d0b5317a555098d30d7d4864b800c47b81dcd522cc64fc142153ac3e +size 39564 diff --git a/EndlessVendetta/Content/BountySystem/TestBounties/Test_Bounty1/SideBounties/TestSideBounty2/SB_TestSideBounty_2.uasset b/EndlessVendetta/Content/BountySystem/TestBounties/Test_Bounty1/SideBounties/TestSideBounty2/SB_TestSideBounty_2.uasset new file mode 100644 index 00000000..a04d5636 --- /dev/null +++ b/EndlessVendetta/Content/BountySystem/TestBounties/Test_Bounty1/SideBounties/TestSideBounty2/SB_TestSideBounty_2.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:646e508a4884b73eaac398d4061f707f16b12a4eccd28bee398496050b16aa9e +size 27303 diff --git a/EndlessVendetta/Content/BountySystem/TestBounties/Test_Bounty2/BC_TestBounty2.uasset b/EndlessVendetta/Content/BountySystem/TestBounties/Test_Bounty2/BC_TestBounty2.uasset new file mode 100644 index 00000000..885ca38f --- /dev/null +++ b/EndlessVendetta/Content/BountySystem/TestBounties/Test_Bounty2/BC_TestBounty2.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:42dfa3a8b7f8c66bbdf4f9875672f9efc2501e7aee9e28f0dfbd72a1259b0493 +size 22778 diff --git a/EndlessVendetta/Content/BountySystem/TestBounties/Test_Bounty2/SideBounties/SB_SideTest2_1.uasset b/EndlessVendetta/Content/BountySystem/TestBounties/Test_Bounty2/SideBounties/SB_SideTest2_1.uasset new file mode 100644 index 00000000..abd1ec8f --- /dev/null +++ b/EndlessVendetta/Content/BountySystem/TestBounties/Test_Bounty2/SideBounties/SB_SideTest2_1.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:2190aa3998c9523b02ee9f4e31c6baa8797c220bf1f0a024a05110034ac4ef1b +size 23037 diff --git a/EndlessVendetta/Content/BountySystem/TestBounties/Test_Bounty2/SideBounties/checkpoints/CC_Replacement_SideTest2_1.uasset b/EndlessVendetta/Content/BountySystem/TestBounties/Test_Bounty2/SideBounties/checkpoints/CC_Replacement_SideTest2_1.uasset new file mode 100644 index 00000000..ede79440 --- /dev/null +++ b/EndlessVendetta/Content/BountySystem/TestBounties/Test_Bounty2/SideBounties/checkpoints/CC_Replacement_SideTest2_1.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:62aabf7b119ce98c1b24d02b5e1f16040b79d1777b6971d344aae896481b93a9 +size 39556 diff --git a/EndlessVendetta/Content/BountySystem/TestBounties/Test_Bounty2/SideBounties/checkpoints/CC_SideTest2_First.uasset b/EndlessVendetta/Content/BountySystem/TestBounties/Test_Bounty2/SideBounties/checkpoints/CC_SideTest2_First.uasset new file mode 100644 index 00000000..a83ba390 --- /dev/null +++ b/EndlessVendetta/Content/BountySystem/TestBounties/Test_Bounty2/SideBounties/checkpoints/CC_SideTest2_First.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f92ca0a9deafc5e5cad2efc032ff4c6f96ffcfaeeab24074e6dd2cffcdfb765d +size 39558 diff --git a/EndlessVendetta/Content/BountySystem/TestBounties/Test_Bounty2/checkpoints/CC_Test2_1.uasset b/EndlessVendetta/Content/BountySystem/TestBounties/Test_Bounty2/checkpoints/CC_Test2_1.uasset new file mode 100644 index 00000000..ec736e3e --- /dev/null +++ b/EndlessVendetta/Content/BountySystem/TestBounties/Test_Bounty2/checkpoints/CC_Test2_1.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ea139267d19360db4dadf77cd0e2684922997ddaec704ff427b261a38051cfab +size 39284 diff --git a/EndlessVendetta/Content/FirstPerson/Blueprints/BP_FirstPersonCharacter.uasset b/EndlessVendetta/Content/FirstPerson/Blueprints/BP_FirstPersonCharacter.uasset index 161871e8..79509a2c 100644 --- a/EndlessVendetta/Content/FirstPerson/Blueprints/BP_FirstPersonCharacter.uasset +++ b/EndlessVendetta/Content/FirstPerson/Blueprints/BP_FirstPersonCharacter.uasset @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:97d5406f3cd7dcb656b8f29ebc71700d765f690ece26250ae04a0de9b2e19ce1 -size 22718 +oid sha256:f207cb75089283938e0639bb29831b31734031856f5e3c0ba7a08c72fa9c1605 +size 24132 diff --git a/EndlessVendetta/Content/StarterContent/Architecture/Floor_400x400.uasset b/EndlessVendetta/Content/StarterContent/Architecture/Floor_400x400.uasset index d8d11add..c2a34afc 100644 --- a/EndlessVendetta/Content/StarterContent/Architecture/Floor_400x400.uasset +++ b/EndlessVendetta/Content/StarterContent/Architecture/Floor_400x400.uasset @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:c253fc4685a93abd7626303f34194de38d32f2d1549008ec1051e50eff7e5c62 -size 14831 +oid sha256:4c0ecf0ac0702cc2bd355ec050232a61c49e10f102448efbeb735a51824adef6 +size 14948 diff --git a/EndlessVendetta/Content/StarterContent/Blueprints/Blueprint_CeilingLight.uasset b/EndlessVendetta/Content/StarterContent/Blueprints/Blueprint_CeilingLight.uasset index c5c3b84e..1d65a5bd 100644 --- a/EndlessVendetta/Content/StarterContent/Blueprints/Blueprint_CeilingLight.uasset +++ b/EndlessVendetta/Content/StarterContent/Blueprints/Blueprint_CeilingLight.uasset @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:4a60a29ad596546d481e43dfb8698842a78cc07f4a4b1000fa397cfba4e72331 -size 158206 +oid sha256:5cc11f2015bdafd405b5b35cb75effe550762a10721f8b38b78dcde79c3e9e39 +size 43745 diff --git a/EndlessVendetta/Content/__ExternalActors__/Levels/BountySystemTestLevel/C/N1/E7M6U3RRQJ0NKZWADRZU2F.uasset b/EndlessVendetta/Content/__ExternalActors__/Levels/BountySystemTestLevel/C/N1/E7M6U3RRQJ0NKZWADRZU2F.uasset new file mode 100644 index 00000000..a396b15f --- /dev/null +++ b/EndlessVendetta/Content/__ExternalActors__/Levels/BountySystemTestLevel/C/N1/E7M6U3RRQJ0NKZWADRZU2F.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:04de015b0bb32939230883654ad41bf7054c369134749aeb11e98f963a1c0a09 +size 4464 diff --git a/EndlessVendetta/Content/__ExternalObjects__/Levels/BountySystemTestLevel/0/TQ/3ACFHBDWFABKU596RXRO53.uasset b/EndlessVendetta/Content/__ExternalObjects__/Levels/BountySystemTestLevel/0/TQ/3ACFHBDWFABKU596RXRO53.uasset index 052f4dbc..0f60fc68 100644 --- a/EndlessVendetta/Content/__ExternalObjects__/Levels/BountySystemTestLevel/0/TQ/3ACFHBDWFABKU596RXRO53.uasset +++ b/EndlessVendetta/Content/__ExternalObjects__/Levels/BountySystemTestLevel/0/TQ/3ACFHBDWFABKU596RXRO53.uasset @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:a79b1aa4df4ba710fb0c190153eca14aafc650f2283ab6f75fdef50ec8187457 -size 2266 +oid sha256:7d5d4d254a7f11e0a82a85632804ab80103b7a94485e8f6764cc8a71dfbb7cf2 +size 2356 diff --git a/EndlessVendetta/Content/__ExternalObjects__/Levels/BountySystemTestLevel/1/30/W9Z34RUFOXLO8DC8TGLS52.uasset b/EndlessVendetta/Content/__ExternalObjects__/Levels/BountySystemTestLevel/1/30/W9Z34RUFOXLO8DC8TGLS52.uasset index fb35d4ae..6d951b32 100644 --- a/EndlessVendetta/Content/__ExternalObjects__/Levels/BountySystemTestLevel/1/30/W9Z34RUFOXLO8DC8TGLS52.uasset +++ b/EndlessVendetta/Content/__ExternalObjects__/Levels/BountySystemTestLevel/1/30/W9Z34RUFOXLO8DC8TGLS52.uasset @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:b9983df2ebcf1a8ea3b0984d5a69729548ac7b6e738d1bb05a4422a57087faf5 -size 2266 +oid sha256:0cf023f6d69a487faf937e406d8ad0571784576efef2732d587cfd7b0fbc06b0 +size 2356 diff --git a/EndlessVendetta/Content/__ExternalObjects__/Levels/BountySystemTestLevel/3/VN/8BVAC6SV0C7HY7NQZUMR3A.uasset b/EndlessVendetta/Content/__ExternalObjects__/Levels/BountySystemTestLevel/3/VN/8BVAC6SV0C7HY7NQZUMR3A.uasset index ffee1d42..b0300fc8 100644 --- a/EndlessVendetta/Content/__ExternalObjects__/Levels/BountySystemTestLevel/3/VN/8BVAC6SV0C7HY7NQZUMR3A.uasset +++ b/EndlessVendetta/Content/__ExternalObjects__/Levels/BountySystemTestLevel/3/VN/8BVAC6SV0C7HY7NQZUMR3A.uasset @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:655a0e0a9a85c00698ba8db09c5273a150c8751bb22ae98951aceca46be08e61 -size 2268 +oid sha256:762ed00b866ef1c1c08482a322e6ee4b34869ed2c489d9c3ee5a5a54b594f03e +size 2358 diff --git a/EndlessVendetta/Content/__ExternalObjects__/Levels/BountySystemTestLevel/3/X0/UIXBS52CP92S41MZVNKQ5N.uasset b/EndlessVendetta/Content/__ExternalObjects__/Levels/BountySystemTestLevel/3/X0/UIXBS52CP92S41MZVNKQ5N.uasset new file mode 100644 index 00000000..611bccd6 --- /dev/null +++ b/EndlessVendetta/Content/__ExternalObjects__/Levels/BountySystemTestLevel/3/X0/UIXBS52CP92S41MZVNKQ5N.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:7feb47b555948d4b652cbf2844eb4d6a6de101610e116a17a9bc211132970104 +size 2270 diff --git a/EndlessVendetta/Content/__ExternalObjects__/Levels/BountySystemTestLevel/4/O7/YR3DRO0R6AREA4XTW0JVGN.uasset b/EndlessVendetta/Content/__ExternalObjects__/Levels/BountySystemTestLevel/4/O7/YR3DRO0R6AREA4XTW0JVGN.uasset index dddfcf3e..9611b21c 100644 --- a/EndlessVendetta/Content/__ExternalObjects__/Levels/BountySystemTestLevel/4/O7/YR3DRO0R6AREA4XTW0JVGN.uasset +++ b/EndlessVendetta/Content/__ExternalObjects__/Levels/BountySystemTestLevel/4/O7/YR3DRO0R6AREA4XTW0JVGN.uasset @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:ce01ca0c1ff2b1b33409de4eb58726f2666d8d6448567a5b0625d7b79e1438fd -size 2266 +oid sha256:747d3daaa877de9903dddbbce38df48b4d7791c4a19f94a0b40dbabd9ae613a2 +size 2356 diff --git a/EndlessVendetta/Content/__ExternalObjects__/Levels/BountySystemTestLevel/4/OR/RK9JDE40KKJZQWFMFL26I5.uasset b/EndlessVendetta/Content/__ExternalObjects__/Levels/BountySystemTestLevel/4/OR/RK9JDE40KKJZQWFMFL26I5.uasset index f16bdbc9..2bd727dc 100644 --- a/EndlessVendetta/Content/__ExternalObjects__/Levels/BountySystemTestLevel/4/OR/RK9JDE40KKJZQWFMFL26I5.uasset +++ b/EndlessVendetta/Content/__ExternalObjects__/Levels/BountySystemTestLevel/4/OR/RK9JDE40KKJZQWFMFL26I5.uasset @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:32078880cc6806c270d8d27d528e43c3fc80cba4665271bb3ac2af6f7953ce72 -size 2266 +oid sha256:10215e56b02b528b6db32375c7ad77f3ec95c2b1b96d37fee7f3cae687c10a6b +size 2356 diff --git a/EndlessVendetta/Content/__ExternalObjects__/Levels/BountySystemTestLevel/5/3P/SF481C8C6IO4CAHI6873XE.uasset b/EndlessVendetta/Content/__ExternalObjects__/Levels/BountySystemTestLevel/5/3P/SF481C8C6IO4CAHI6873XE.uasset index e193b09f..2ba42637 100644 --- a/EndlessVendetta/Content/__ExternalObjects__/Levels/BountySystemTestLevel/5/3P/SF481C8C6IO4CAHI6873XE.uasset +++ b/EndlessVendetta/Content/__ExternalObjects__/Levels/BountySystemTestLevel/5/3P/SF481C8C6IO4CAHI6873XE.uasset @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:57788d46a02cc5322526c77cd47d5cd75659ffc5c327293a7caa8d3f9457b944 -size 2272 +oid sha256:3f0332abd88de716a1f9a7d2aa75f2a0106e6e05ac04b8752f2bf7ef1f07ac88 +size 2362 diff --git a/EndlessVendetta/Content/__ExternalObjects__/Levels/BountySystemTestLevel/7/IO/6Y51GE24EVFOHXCG615BY1.uasset b/EndlessVendetta/Content/__ExternalObjects__/Levels/BountySystemTestLevel/7/IO/6Y51GE24EVFOHXCG615BY1.uasset index 27ff8b05..d66c978d 100644 --- a/EndlessVendetta/Content/__ExternalObjects__/Levels/BountySystemTestLevel/7/IO/6Y51GE24EVFOHXCG615BY1.uasset +++ b/EndlessVendetta/Content/__ExternalObjects__/Levels/BountySystemTestLevel/7/IO/6Y51GE24EVFOHXCG615BY1.uasset @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:547a9c620a0f9ad81097e2593122e87fecc7a71aac871bc70801ec438da613e0 -size 2280 +oid sha256:10bc3f7b244305eec4fac0ce6ea3798cc21689af65664c8e0dc1e8b22e47a123 +size 2370 diff --git a/EndlessVendetta/Content/__ExternalObjects__/Levels/BountySystemTestLevel/D/WD/LGTPJJO55ED5H60IZ3025H.uasset b/EndlessVendetta/Content/__ExternalObjects__/Levels/BountySystemTestLevel/D/WD/LGTPJJO55ED5H60IZ3025H.uasset index acf08f54..12762e0c 100644 --- a/EndlessVendetta/Content/__ExternalObjects__/Levels/BountySystemTestLevel/D/WD/LGTPJJO55ED5H60IZ3025H.uasset +++ b/EndlessVendetta/Content/__ExternalObjects__/Levels/BountySystemTestLevel/D/WD/LGTPJJO55ED5H60IZ3025H.uasset @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:1c1adbd3bf1a497e1cdc01c183a824327dee8588e190117f15951d7aca76a44b -size 2268 +oid sha256:ebb4ae789fd6106278e299904384cfd060a5e59110a0a4091ea77b4b50b81976 +size 2358 diff --git a/EndlessVendetta/Platforms/HoloLens/Config/HoloLensEngine.ini b/EndlessVendetta/Platforms/HoloLens/Config/HoloLensEngine.ini new file mode 100644 index 00000000..d5ebb91b --- /dev/null +++ b/EndlessVendetta/Platforms/HoloLens/Config/HoloLensEngine.ini @@ -0,0 +1,32 @@ + + +[/Script/HoloLensPlatformEditor.HoloLensTargetSettings] +bBuildForEmulation=False +bBuildForDevice=True +bUseNameForLogo=True +bBuildForRetailWindowsStore=False +bAutoIncrementVersion=False +bShouldCreateAppInstaller=False +AppInstallerInstallationURL= +HoursBetweenUpdateChecks=0 +bEnablePIXProfiling=False +TileBackgroundColor=(B=64,G=0,R=0,A=255) +SplashScreenBackgroundColor=(B=64,G=0,R=0,A=255) ++PerCultureResources=(CultureId="",Strings=(PackageDisplayName="",PublisherDisplayName="",PackageDescription="",ApplicationDisplayName="",ApplicationDescription=""),Images=()) +TargetDeviceFamily=Windows.Holographic +MinimumPlatformVersion= +MaximumPlatformVersionTested=10.0.18362.0 +MaxTrianglesPerCubicMeter=500.000000 +SpatialMeshingVolumeSize=20.000000 +CompilerVersion=Default +Windows10SDKVersion=10.0.18362.0 ++CapabilityList=internetClientServer ++CapabilityList=privateNetworkClientServer ++Uap2CapabilityList=spatialPerception +bSetDefaultCapabilities=False +SpatializationPlugin= +SourceDataOverridePlugin= +ReverbPlugin= +OcclusionPlugin= +SoundCueCookQualityIndex=-1 + diff --git a/EndlessVendetta/Source/EndlessVendetta/BountySystem/BountyDirector.cpp b/EndlessVendetta/Source/EndlessVendetta/BountySystem/BountyDirector.cpp index 9e622442..7cf44c2a 100644 --- a/EndlessVendetta/Source/EndlessVendetta/BountySystem/BountyDirector.cpp +++ b/EndlessVendetta/Source/EndlessVendetta/BountySystem/BountyDirector.cpp @@ -142,6 +142,7 @@ void ABountyDirector::SideBountyCompleted(int SideBountyIndex) ActiveBounty->UpdateBountyCheckpoints(ActiveSideBounties[SideBountyIndex]->GetReplacementCheckpoints()); // WHEN MARCEL STOPS PLAYING WITH PLAYER CHAR, REMOVE THIS SIDE BOUNTY FROM ACTIVE BOUNTIES + ActiveSideBounties[SideBountyIndex]->CollectRewards(); ActiveSideBounties[SideBountyIndex]->DestroyCheckpoints(); ActiveSideBounties[SideBountyIndex]->Destroy(); diff --git a/EndlessVendetta/Source/EndlessVendetta/BountySystem/BountyDirector.h b/EndlessVendetta/Source/EndlessVendetta/BountySystem/BountyDirector.h index 00b69ef9..c5c67311 100644 --- a/EndlessVendetta/Source/EndlessVendetta/BountySystem/BountyDirector.h +++ b/EndlessVendetta/Source/EndlessVendetta/BountySystem/BountyDirector.h @@ -73,25 +73,25 @@ public: UFUNCTION(BlueprintCallable, Category = "Bounty") FString GetBountyTitle() { - return IsValid(ActiveBounty) ? FString("N/A") : ActiveBounty->GetBountyTitle(); + return !IsValid(ActiveBounty) ? FString("N/A") : ActiveBounty->GetBountyTitle(); } UFUNCTION(BlueprintCallable, Category = "Bounty") FString GetBountyDescription() { - return IsValid(ActiveBounty) ? FString("N/A") : ActiveBounty->GetBountyDesc(); + return !IsValid(ActiveBounty) ? FString("N/A") : ActiveBounty->GetBountyDesc(); } UFUNCTION(BlueprintCallable, Category = "Bounty") FString GetSideBountyTitle(int SideBountyIndex) { - return (SideBountyIndex > 2 || SideBountyIndex < 0 || IsValid(ActiveSideBounties[SideBountyIndex])) ? FString("N/A") : ActiveSideBounties[SideBountyIndex]->GetBountyTitle(); + return (SideBountyIndex > 2 || SideBountyIndex < 0 || !IsValid(ActiveSideBounties[SideBountyIndex])) ? FString("N/A") : ActiveSideBounties[SideBountyIndex]->GetBountyTitle(); } UFUNCTION(BlueprintCallable, Category = "Bounty") FString GetSideBountyDescription(int SideBountyIndex) { - return (SideBountyIndex > 2 || SideBountyIndex < 0 || IsValid(ActiveSideBounties[SideBountyIndex])) ? FString("N/A") : ActiveSideBounties[SideBountyIndex]->GetBountyDesc(); + return (SideBountyIndex > 2 || SideBountyIndex < 0 || !IsValid(ActiveSideBounties[SideBountyIndex])) ? FString("N/A") : ActiveSideBounties[SideBountyIndex]->GetBountyDesc(); } diff --git a/EndlessVendetta/Source/EndlessVendetta/BountySystem/SideBountyClass.cpp b/EndlessVendetta/Source/EndlessVendetta/BountySystem/SideBountyClass.cpp index e78f6b94..7d63f3ba 100644 --- a/EndlessVendetta/Source/EndlessVendetta/BountySystem/SideBountyClass.cpp +++ b/EndlessVendetta/Source/EndlessVendetta/BountySystem/SideBountyClass.cpp @@ -16,6 +16,7 @@ void ASideBountyClass::IncrementBountyCheckpoint() if (Completed) { + CompletedSideBounty.Broadcast(ActiveSBC_Index); } } From 44bf11634041221888a56d46ecb45bd717326b79 Mon Sep 17 00:00:00 2001 From: PHILIP WHITE Date: Thu, 28 Sep 2023 21:26:45 +0100 Subject: [PATCH 017/112] Add AI Task for Random Patrolling of a Set Area --- .../AI/BTTask_FindRandomLocation.cpp | 32 +++++++++++++++++++ .../AI/BTTask_FindRandomLocation.h | 24 ++++++++++++++ 2 files changed, 56 insertions(+) create mode 100644 EndlessVendetta/Source/EndlessVendetta/AI/BTTask_FindRandomLocation.cpp create mode 100644 EndlessVendetta/Source/EndlessVendetta/AI/BTTask_FindRandomLocation.h diff --git a/EndlessVendetta/Source/EndlessVendetta/AI/BTTask_FindRandomLocation.cpp b/EndlessVendetta/Source/EndlessVendetta/AI/BTTask_FindRandomLocation.cpp new file mode 100644 index 00000000..62a3d9b8 --- /dev/null +++ b/EndlessVendetta/Source/EndlessVendetta/AI/BTTask_FindRandomLocation.cpp @@ -0,0 +1,32 @@ +// Fill out your copyright notice in the Description page of Project Settings. + + +#include "BTTask_FindRandomLocation.h" + +#include "AI_EnemyController.h" +#include "NavigationSystem.h" +#include "BehaviorTree/BlackboardComponent.h" + +UBTTask_FindRandomLocation::UBTTask_FindRandomLocation(FObjectInitializer const& ObjectInitializer) +{ + NodeName = TEXT("Find Random Location"); +} + +EBTNodeResult::Type UBTTask_FindRandomLocation::ExecuteTask(UBehaviorTreeComponent& OwnerComp, uint8* NodeMemory) +{ + if (const AAI_EnemyController* const AIController = Cast(OwnerComp.GetAIOwner())) + { + if (UBlackboardComponent* const Blackboard = OwnerComp.GetBlackboardComponent()) + { + FVector const Origin = AIController->GetPawn()->GetActorLocation(); + const UNavigationSystemV1* const NavSystem = UNavigationSystemV1::GetCurrent(GetWorld()); + if (FNavLocation RandomLocation; NavSystem->GetRandomPointInNavigableRadius(Origin, SearchRadius, RandomLocation)) + { + Blackboard->SetValueAsVector(GetSelectedBlackboardKey(), RandomLocation.Location); + FinishLatentTask(OwnerComp, EBTNodeResult::Succeeded); + return EBTNodeResult::Succeeded; + } + } + } + return EBTNodeResult::Failed; +} diff --git a/EndlessVendetta/Source/EndlessVendetta/AI/BTTask_FindRandomLocation.h b/EndlessVendetta/Source/EndlessVendetta/AI/BTTask_FindRandomLocation.h new file mode 100644 index 00000000..e3b5df85 --- /dev/null +++ b/EndlessVendetta/Source/EndlessVendetta/AI/BTTask_FindRandomLocation.h @@ -0,0 +1,24 @@ +// Fill out your copyright notice in the Description page of Project Settings. + +#pragma once + +#include "CoreMinimal.h" +#include "BehaviorTree/Tasks/BTTask_BlackboardBase.h" +#include "BTTask_FindRandomLocation.generated.h" + +/** + * + */ +UCLASS() +class ENDLESSVENDETTA_API UBTTask_FindRandomLocation : public UBTTask_BlackboardBase +{ + GENERATED_BODY() + +public: + explicit UBTTask_FindRandomLocation(FObjectInitializer const& ObjectInitializer); + virtual EBTNodeResult::Type ExecuteTask(UBehaviorTreeComponent& OwnerComp, uint8* NodeMemory) override; + +private: + UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "AI", meta = (AllowPrivateAccess = "true")) + float SearchRadius = 1000.f; +}; From 22e615d7cf51bc9ab8455c01c97d7ac8eb683345 Mon Sep 17 00:00:00 2001 From: PHILIP WHITE Date: Thu, 28 Sep 2023 21:29:04 +0100 Subject: [PATCH 018/112] Add AI Task for Getting the Player Location or an Area Around Them --- .../AI/BTTask_FindPlayerLocation.cpp | 39 +++++++++++++++++++ .../AI/BTTask_FindPlayerLocation.h | 27 +++++++++++++ 2 files changed, 66 insertions(+) create mode 100644 EndlessVendetta/Source/EndlessVendetta/AI/BTTask_FindPlayerLocation.cpp create mode 100644 EndlessVendetta/Source/EndlessVendetta/AI/BTTask_FindPlayerLocation.h diff --git a/EndlessVendetta/Source/EndlessVendetta/AI/BTTask_FindPlayerLocation.cpp b/EndlessVendetta/Source/EndlessVendetta/AI/BTTask_FindPlayerLocation.cpp new file mode 100644 index 00000000..7607af23 --- /dev/null +++ b/EndlessVendetta/Source/EndlessVendetta/AI/BTTask_FindPlayerLocation.cpp @@ -0,0 +1,39 @@ +// Fill out your copyright notice in the Description page of Project Settings. + + +#include "BTTask_FindPlayerLocation.h" + +#include "NavigationSystem.h" +#include "BehaviorTree/BlackboardComponent.h" +#include "GameFramework/Character.h" + +UBTTask_FindPlayerLocation::UBTTask_FindPlayerLocation(FObjectInitializer const& ObjectInitializer) +{ + NodeName = TEXT("Find Player Location"); +} + +EBTNodeResult::Type UBTTask_FindPlayerLocation::ExecuteTask(UBehaviorTreeComponent& OwnerComp, uint8* NodeMemory) +{ + if (const ACharacter* const Player = Cast(GetWorld()->GetFirstPlayerController()->GetPawn())) + { + if (UBlackboardComponent* const Blackboard = OwnerComp.GetBlackboardComponent()) + { + if (SearchRandom) + { + FVector const Origin = Player->GetActorLocation(); + const UNavigationSystemV1* const NavSystem = UNavigationSystemV1::GetCurrent(GetWorld()); + if (FNavLocation RandomLocation; NavSystem->GetRandomPointInNavigableRadius(Origin, SearchRadius, RandomLocation)) + { + Blackboard->SetValueAsVector(GetSelectedBlackboardKey(), RandomLocation.Location); + } + } + else + { + Blackboard->SetValueAsVector(GetSelectedBlackboardKey(), Player->GetActorLocation()); + } + FinishLatentTask(OwnerComp, EBTNodeResult::Succeeded); + return EBTNodeResult::Succeeded; + } + } + return EBTNodeResult::Failed; +} diff --git a/EndlessVendetta/Source/EndlessVendetta/AI/BTTask_FindPlayerLocation.h b/EndlessVendetta/Source/EndlessVendetta/AI/BTTask_FindPlayerLocation.h new file mode 100644 index 00000000..6161bd90 --- /dev/null +++ b/EndlessVendetta/Source/EndlessVendetta/AI/BTTask_FindPlayerLocation.h @@ -0,0 +1,27 @@ +// Fill out your copyright notice in the Description page of Project Settings. + +#pragma once + +#include "CoreMinimal.h" +#include "BehaviorTree/Tasks/BTTask_BlackboardBase.h" +#include "BTTask_FindPlayerLocation.generated.h" + +/** + * + */ +UCLASS() +class ENDLESSVENDETTA_API UBTTask_FindPlayerLocation : public UBTTask_BlackboardBase +{ + GENERATED_BODY() + +public: + explicit UBTTask_FindPlayerLocation(FObjectInitializer const& ObjectInitializer); + virtual EBTNodeResult::Type ExecuteTask(UBehaviorTreeComponent& OwnerComp, uint8* NodeMemory) override; + +private: + UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "AI", meta = (AllowPrivateAccess = "true")) + float SearchRadius = 150.f; + + UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "AI", meta = (AllowPrivateAccess = "true")) + bool SearchRandom = false; +}; From f10fda514247a85289e636ea0ad5b856deaa8eb8 Mon Sep 17 00:00:00 2001 From: PHILIP WHITE Date: Thu, 28 Sep 2023 21:30:06 +0100 Subject: [PATCH 019/112] Add Blackboard and Behaviour Tree for Enemy AI --- EndlessVendetta/Content/AI/Enemy/Basic/BB_BasicEnemy.uasset | 3 +++ .../Content/AI/Enemy/Basic/BP_BasicEnemyCharacter.uasset | 3 +++ EndlessVendetta/Content/AI/Enemy/Basic/BT_BasicEnemy.uasset | 3 +++ .../Maps/FirstPersonMap/A/OW/M2M9BG6AWDJW3UNODUVGA2.uasset | 3 +++ .../Maps/FirstPersonMap/B/EL/ZUCMIANGP54V86XN0JR5Y6.uasset | 3 +++ .../Maps/FirstPersonMap/D/KO/5NABXAV1RIRN3HX2KXBHV8.uasset | 3 +++ 6 files changed, 18 insertions(+) create mode 100644 EndlessVendetta/Content/AI/Enemy/Basic/BB_BasicEnemy.uasset create mode 100644 EndlessVendetta/Content/AI/Enemy/Basic/BP_BasicEnemyCharacter.uasset create mode 100644 EndlessVendetta/Content/AI/Enemy/Basic/BT_BasicEnemy.uasset create mode 100644 EndlessVendetta/Content/__ExternalActors__/FirstPerson/Maps/FirstPersonMap/A/OW/M2M9BG6AWDJW3UNODUVGA2.uasset create mode 100644 EndlessVendetta/Content/__ExternalActors__/FirstPerson/Maps/FirstPersonMap/B/EL/ZUCMIANGP54V86XN0JR5Y6.uasset create mode 100644 EndlessVendetta/Content/__ExternalActors__/FirstPerson/Maps/FirstPersonMap/D/KO/5NABXAV1RIRN3HX2KXBHV8.uasset diff --git a/EndlessVendetta/Content/AI/Enemy/Basic/BB_BasicEnemy.uasset b/EndlessVendetta/Content/AI/Enemy/Basic/BB_BasicEnemy.uasset new file mode 100644 index 00000000..f631ee69 --- /dev/null +++ b/EndlessVendetta/Content/AI/Enemy/Basic/BB_BasicEnemy.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:7e12facb03e605fcf3b7459c80c0ce5bd857df9f837d92a0b1f802dcf251ceff +size 2586 diff --git a/EndlessVendetta/Content/AI/Enemy/Basic/BP_BasicEnemyCharacter.uasset b/EndlessVendetta/Content/AI/Enemy/Basic/BP_BasicEnemyCharacter.uasset new file mode 100644 index 00000000..ee381207 --- /dev/null +++ b/EndlessVendetta/Content/AI/Enemy/Basic/BP_BasicEnemyCharacter.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f5a7fcd4447476e36ad777f4db7b6e5898905b85f6fa1bb8b193a98ec26066dc +size 32684 diff --git a/EndlessVendetta/Content/AI/Enemy/Basic/BT_BasicEnemy.uasset b/EndlessVendetta/Content/AI/Enemy/Basic/BT_BasicEnemy.uasset new file mode 100644 index 00000000..2d4c633a --- /dev/null +++ b/EndlessVendetta/Content/AI/Enemy/Basic/BT_BasicEnemy.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f48b1e9b530fcb9a22eda28d4347ef5562fc9eaf7562f1d206c36b1ae0714889 +size 10205 diff --git a/EndlessVendetta/Content/__ExternalActors__/FirstPerson/Maps/FirstPersonMap/A/OW/M2M9BG6AWDJW3UNODUVGA2.uasset b/EndlessVendetta/Content/__ExternalActors__/FirstPerson/Maps/FirstPersonMap/A/OW/M2M9BG6AWDJW3UNODUVGA2.uasset new file mode 100644 index 00000000..f061064d --- /dev/null +++ b/EndlessVendetta/Content/__ExternalActors__/FirstPerson/Maps/FirstPersonMap/A/OW/M2M9BG6AWDJW3UNODUVGA2.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:1988331cb675ef5854b9e0bf00b72da4746c2034323a0749b398193134f3c9d3 +size 5288 diff --git a/EndlessVendetta/Content/__ExternalActors__/FirstPerson/Maps/FirstPersonMap/B/EL/ZUCMIANGP54V86XN0JR5Y6.uasset b/EndlessVendetta/Content/__ExternalActors__/FirstPerson/Maps/FirstPersonMap/B/EL/ZUCMIANGP54V86XN0JR5Y6.uasset new file mode 100644 index 00000000..a5caac61 --- /dev/null +++ b/EndlessVendetta/Content/__ExternalActors__/FirstPerson/Maps/FirstPersonMap/B/EL/ZUCMIANGP54V86XN0JR5Y6.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ce6567235fd97e70957e706942ac503a48630467d721fee98bbfa4eb26a8b294 +size 27307 diff --git a/EndlessVendetta/Content/__ExternalActors__/FirstPerson/Maps/FirstPersonMap/D/KO/5NABXAV1RIRN3HX2KXBHV8.uasset b/EndlessVendetta/Content/__ExternalActors__/FirstPerson/Maps/FirstPersonMap/D/KO/5NABXAV1RIRN3HX2KXBHV8.uasset new file mode 100644 index 00000000..d12d268b --- /dev/null +++ b/EndlessVendetta/Content/__ExternalActors__/FirstPerson/Maps/FirstPersonMap/D/KO/5NABXAV1RIRN3HX2KXBHV8.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:710bc3c5911ac600db4de37b019e48d5d410f4b7b21927e2bf74800cde15de5b +size 9113 From d5223bcf4f482bf32f021ae2e31ab5d7b68a8ac8 Mon Sep 17 00:00:00 2001 From: Marcel Hara Date: Thu, 28 Sep 2023 22:37:31 +0100 Subject: [PATCH 020/112] Started funcionality for pistol and singlefire weapons --- .../DefaultEditorPerProjectUserSettings.ini | 196 +++++++++++++++++- EndlessVendetta/Config/DefaultEngine.ini | 8 +- .../Blueprints/BP_FirstPersonCharacter.uasset | 4 +- .../Blueprints/BP_PickUp_Rifle.uasset | 4 +- .../FirstPerson/GunMechanicWorld.uasset | 3 + .../Input/Actions/IA_HoldShoot.uasset | 3 + .../FirstPerson/Input/Actions/IA_Shoot.uasset | 3 - .../Input/Actions/IA_TapShoot.uasset | 3 + .../FirstPerson/Input/IMC_Default.uasset | 4 +- .../FirstPerson/Input/IMC_Weapons.uasset | 4 +- .../FirstPerson/Maps/GunMechanicTester.umap | 4 +- .../0/3Z/SNIBJQL2L6YHSC7MTTK1C2.uasset | 3 + .../EndlessVendetta/BaseWeaponClass.cpp | 40 +++- .../Source/EndlessVendetta/BaseWeaponClass.h | 17 +- .../EndlessVendettaCharacter.cpp | 12 ++ .../EndlessVendettaCharacter.h | 8 + .../EndlessVendetta/WeaponItemClass.cpp | 8 +- .../Source/EndlessVendetta/WeaponItemClass.h | 5 +- 18 files changed, 302 insertions(+), 27 deletions(-) create mode 100644 EndlessVendetta/Content/FirstPerson/GunMechanicWorld.uasset create mode 100644 EndlessVendetta/Content/FirstPerson/Input/Actions/IA_HoldShoot.uasset delete mode 100644 EndlessVendetta/Content/FirstPerson/Input/Actions/IA_Shoot.uasset create mode 100644 EndlessVendetta/Content/FirstPerson/Input/Actions/IA_TapShoot.uasset create mode 100644 EndlessVendetta/Content/__ExternalActors__/FirstPerson/Maps/GunMechanicTester/0/3Z/SNIBJQL2L6YHSC7MTTK1C2.uasset diff --git a/EndlessVendetta/Config/DefaultEditorPerProjectUserSettings.ini b/EndlessVendetta/Config/DefaultEditorPerProjectUserSettings.ini index 220a5519..094343ea 100644 --- a/EndlessVendetta/Config/DefaultEditorPerProjectUserSettings.ini +++ b/EndlessVendetta/Config/DefaultEditorPerProjectUserSettings.ini @@ -1,2 +1,196 @@ [ContentBrowser] -ContentBrowserTab1.SelectedPaths=/Game/FirstPerson \ No newline at end of file +ContentBrowserTab1.SelectedPaths=/Game/FirstPerson + +[/Script/UnrealEd.LevelEditorPlaySettings] +PlayFromHerePlayerStartClassName=/Script/Engine.PlayerStartPIE +GameGetsMouseControl=False +UseMouseForTouch=False +ShowMouseControlLabel=True +MouseControlLabelPosition=LabelAnchorMode_TopLeft +ViewportGetsHMDControl=False +ShouldMinimizeEditorOnVRPIE=True +bShouldMinimizeEditorOnNonVRPIE=False +bEmulateStereo=False +AutoRecompileBlueprints=True +EnableGameSound=True +SoloAudioInFirstPIEClient=False +EnablePIEEnterAndExitSounds=False +PlayInEditorSoundQualityLevel=0 +bUseNonRealtimeAudioDevice=False +bOnlyLoadVisibleLevelsInPIE=False +bPreferToStreamLevelsInPIE=False +bPromoteOutputLogWarningsDuringPIE=False +NewWindowWidth=1280 +NewWindowHeight=720 +NewWindowPosition=(X=-1,Y=-1) +CenterNewWindow=False +PIEAlwaysOnTop=False +DisableStandaloneSound=False +AdditionalLaunchParameters= +BuildGameBeforeLaunch=PlayOnBuild_Default +LaunchConfiguration=LaunchConfig_Default +PackFilesForLaunch=NoPak +bAutoCompileBlueprintsOnLaunch=True +bLaunchSeparateServer=False +PlayNetMode=PIE_Standalone +RunUnderOneProcess=True +PlayNetDedicated=False +PlayNumberOfClients=1 +PrimaryPIEClientIndex=0 +ServerPort=17777 +ClientWindowWidth=640 +AutoConnectToServer=True +RouteGamepadToSecondWindow=False +CreateAudioDeviceForEveryPlayer=False +ClientWindowHeight=480 +ServerMapNameOverride= +AdditionalServerGameOptions= +AdditionalLaunchOptions= +bShowServerDebugDrawingByDefault=True +ServerDebugDrawingColorTintStrength=0.000000 +ServerDebugDrawingColorTint=(R=0.000000,G=0.000000,B=0.000000,A=1.000000) +AdditionalServerLaunchParameters= +ServerFixedFPS=0 +NetworkEmulationSettings=(bIsNetworkEmulationEnabled=False,EmulationTarget=Server,CurrentProfile="Custom",OutPackets=(MinLatency=0,MaxLatency=0,PacketLossPercentage=0),InPackets=(MinLatency=0,MaxLatency=0,PacketLossPercentage=0)) +LastSize=(X=0,Y=0) +LastExecutedLaunchDevice=Windows@MARCELSPC +LastExecutedLaunchName=MARCELSPC +LastExecutedLaunchModeType=LaunchMode_OnDevice +LastExecutedPlayModeLocation=PlayLocation_DefaultPlayerStart +LastExecutedPlayModeType=PlayMode_InViewPort +LastExecutedPIEPreviewDevice= +-LaptopScreenResolutions=(Description="Apple MacBook Air 11",Width=1366,Height=768,AspectRatio="16:9",bCanSwapAspectRatio=true) +-LaptopScreenResolutions=(Description="Apple MacBook Air 13\"",Width=1440,Height=900,AspectRatio="16:10",bCanSwapAspectRatio=true) +-LaptopScreenResolutions=(Description="Apple MacBook Pro 13\"",Width=1280,Height=800,AspectRatio="16:10",bCanSwapAspectRatio=true) +-LaptopScreenResolutions=(Description="Apple MacBook Pro 13\" (Retina)",Width=2560,Height=1600,AspectRatio="16:10",bCanSwapAspectRatio=true) +-LaptopScreenResolutions=(Description="Apple MacBook Pro 15\"",Width=1440,Height=900,AspectRatio="16:10",bCanSwapAspectRatio=true) +-LaptopScreenResolutions=(Description="Apple MacBook Pro 15\" (Retina)",Width=2880,Height=1800,AspectRatio="16:10",bCanSwapAspectRatio=true) +-LaptopScreenResolutions=(Description="Generic 14-15.6\" Notebook",Width=1366,Height=768,AspectRatio="16:9",bCanSwapAspectRatio=true) ++LaptopScreenResolutions=(Description="Apple MacBook Air 11",Width=1366,Height=768,AspectRatio="16:9",bCanSwapAspectRatio=True,ProfileName="") ++LaptopScreenResolutions=(Description="Apple MacBook Air 13\"",Width=1440,Height=900,AspectRatio="16:10",bCanSwapAspectRatio=True,ProfileName="") ++LaptopScreenResolutions=(Description="Apple MacBook Pro 13\"",Width=1280,Height=800,AspectRatio="16:10",bCanSwapAspectRatio=True,ProfileName="") ++LaptopScreenResolutions=(Description="Apple MacBook Pro 13\" (Retina)",Width=2560,Height=1600,AspectRatio="16:10",bCanSwapAspectRatio=True,ProfileName="") ++LaptopScreenResolutions=(Description="Apple MacBook Pro 15\"",Width=1440,Height=900,AspectRatio="16:10",bCanSwapAspectRatio=True,ProfileName="") ++LaptopScreenResolutions=(Description="Apple MacBook Pro 15\" (Retina)",Width=2880,Height=1800,AspectRatio="16:10",bCanSwapAspectRatio=True,ProfileName="") ++LaptopScreenResolutions=(Description="Generic 14-15.6\" Notebook",Width=1366,Height=768,AspectRatio="16:9",bCanSwapAspectRatio=True,ProfileName="") +-MonitorScreenResolutions=(Description="19\" monitor",Width=1440,Height=900,AspectRatio="16:10",bCanSwapAspectRatio=true) +-MonitorScreenResolutions=(Description="20\" monitor",Width=1600,Height=900,AspectRatio="16:9",bCanSwapAspectRatio=true) +-MonitorScreenResolutions=(Description="22\" monitor",Width=1680,Height=1050,AspectRatio="16:10",bCanSwapAspectRatio=true) +-MonitorScreenResolutions=(Description="21.5-24\" monitor",Width=1920,Height=1080,AspectRatio="16:9",bCanSwapAspectRatio=true) +-MonitorScreenResolutions=(Description="27\" monitor",Width=2560,Height=1440,AspectRatio="16:9",bCanSwapAspectRatio=true) ++MonitorScreenResolutions=(Description="19\" monitor",Width=1440,Height=900,AspectRatio="16:10",bCanSwapAspectRatio=True,ProfileName="") ++MonitorScreenResolutions=(Description="20\" monitor",Width=1600,Height=900,AspectRatio="16:9",bCanSwapAspectRatio=True,ProfileName="") ++MonitorScreenResolutions=(Description="22\" monitor",Width=1680,Height=1050,AspectRatio="16:10",bCanSwapAspectRatio=True,ProfileName="") ++MonitorScreenResolutions=(Description="21.5-24\" monitor",Width=1920,Height=1080,AspectRatio="16:9",bCanSwapAspectRatio=True,ProfileName="") ++MonitorScreenResolutions=(Description="27\" monitor",Width=2560,Height=1440,AspectRatio="16:9",bCanSwapAspectRatio=True,ProfileName="") +-PhoneScreenResolutions=(Description="Apple iPhone 5S",Width=320,Height=568,AspectRatio="~16:9",bCanSwapAspectRatio=true,ProfileName="iPhone5S") +-PhoneScreenResolutions=(Description="Apple iPhone 6",Width=375,Height=667,AspectRatio="16:9",bCanSwapAspectRatio=true,ProfileName="iPhone6") +-PhoneScreenResolutions=(Description="Apple iPhone 6+",Width=414,Height=736,AspectRatio="16:9",bCanSwapAspectRatio=true,ProfileName="iPhone6Plus") +-PhoneScreenResolutions=(Description="Apple iPhone 6S",Width=375,Height=667,AspectRatio="16:9",bCanSwapAspectRatio=true,ProfileName="iPhone6S") +-PhoneScreenResolutions=(Description="Apple iPhone 6S+",Width=414,Height=736,AspectRatio="16:9",bCanSwapAspectRatio=true,ProfileName="iPhone6SPlus") +-PhoneScreenResolutions=(Description="Apple iPhone 7",Width=375,Height=667,AspectRatio="16:9",bCanSwapAspectRatio=true,ProfileName="iPhone7") +-PhoneScreenResolutions=(Description="Apple iPhone 7+",Width=414,Height=736,AspectRatio="16:9",bCanSwapAspectRatio=true,ProfileName="iPhone7Plus") +-PhoneScreenResolutions=(Description="Apple iPhone 8",Width=375,Height=667,AspectRatio="16:9",bCanSwapAspectRatio=true,ProfileName="iPhone8") +-PhoneScreenResolutions=(Description="Apple iPhone 8+",Width=414,Height=736,AspectRatio="16:9",bCanSwapAspectRatio=true,ProfileName="iPhone8Plus") +-PhoneScreenResolutions=(Description="Apple iPhone X",Width=375,Height=812,AspectRatio="19.5:9",bCanSwapAspectRatio=true,ProfileName="iPhoneX") +-PhoneScreenResolutions=(Description="Apple iPhone XS",Width=375,Height=812,AspectRatio="16:9",bCanSwapAspectRatio=true,ProfileName="iPhoneXS") +-PhoneScreenResolutions=(Description="Apple iPhone XS Max",Width=414,Height=896,AspectRatio="16:9",bCanSwapAspectRatio=true,ProfileName="iPhoneXSMax") +-PhoneScreenResolutions=(Description="Apple iPhone XR",Width=414,Height=896,AspectRatio="16:9",bCanSwapAspectRatio=true,ProfileName="iPhoneXR") +-PhoneScreenResolutions=(Description="HTC One",Width=1080,Height=1920,AspectRatio="16:9",bCanSwapAspectRatio=true,ProfileName="Android_High") +-PhoneScreenResolutions=(Description="Samsung Galaxy S4",Width=1080,Height=1920,AspectRatio="16:9",bCanSwapAspectRatio=true,ProfileName="Android_Low") +-PhoneScreenResolutions=(Description="Samsung Galaxy S6",Width=1440,Height=2560,AspectRatio="16:9",bCanSwapAspectRatio=true,ProfileName="Android_Mali_T7xx") +-PhoneScreenResolutions=(Description="Samsung Galaxy S7",Width=1440,Height=2560,AspectRatio="16:9",bCanSwapAspectRatio=true,ProfileName="Android_High") +-PhoneScreenResolutions=(Description="Samsung Galaxy S8 (Mali)",Width=1080,Height=2220,AspectRatio="18.5:9",bCanSwapAspectRatio=true,ProfileName="Android_Mali_G71") +-PhoneScreenResolutions=(Description="Samsung Galaxy S8 (Adreno)",Width=1080,Height=2220,AspectRatio="18.5:9",bCanSwapAspectRatio=true,ProfileName="Android_Adreno5xx") +-PhoneScreenResolutions=(Description="Samsung Galaxy S9 (Mali)",Width=1440,Height=2960,AspectRatio="18.5:9",bCanSwapAspectRatio=true,ProfileName="Android_High") +-PhoneScreenResolutions=(Description="Samsung Galaxy S9 (Adreno)",Width=1440,Height=2960,AspectRatio="18.5:9",bCanSwapAspectRatio=true,ProfileName="Android_High") +-PhoneScreenResolutions=(Description="Samsung Galaxy Note 9 (Mali)",Width=1440,Height=2960,AspectRatio="18.5:9",bCanSwapAspectRatio=true,ProfileName="Android_High") +-PhoneScreenResolutions=(Description="Samsung Galaxy S10 (Adreno)",Width=1440,Height=3040,AspectRatio="19:9",bCanSwapAspectRatio=true,ProfileName="Android_Adreno6xx") +-PhoneScreenResolutions=(Description="Samsung Galaxy S10 (Mali)",Width=1440,Height=3040,AspectRatio="19:9",bCanSwapAspectRatio=true,ProfileName="Android_Mali_G76") +-PhoneScreenResolutions=(Description="Samsung Galaxy S10e (Adreno)",Width=1080,Height=2280,AspectRatio="19:9",bCanSwapAspectRatio=true,ProfileName="Android_Adreno6xx") +-PhoneScreenResolutions=(Description="Samsung Galaxy S10e (Mali)",Width=1080,Height=2280,AspectRatio="19:9",bCanSwapAspectRatio=true,ProfileName="Android_Mali_G76") +-PhoneScreenResolutions=(Description="Google Pixel",Width=1080,Height=1920,AspectRatio="16:9",bCanSwapAspectRatio=true,ProfileName="Android_Mid") +-PhoneScreenResolutions=(Description="Google Pixel XL",Width=1080,Height=1920,AspectRatio="16:9",bCanSwapAspectRatio=true,ProfileName="Android_Mid") +-PhoneScreenResolutions=(Description="Google Pixel 2",Width=1080,Height=1920,AspectRatio="16:9",bCanSwapAspectRatio=true,ProfileName="Android_Mid") +-PhoneScreenResolutions=(Description="Google Pixel 2 XL",Width=1080,Height=1920,AspectRatio="16:9",bCanSwapAspectRatio=true,ProfileName="Android_Mid") +-PhoneScreenResolutions=(Description="Google Pixel 3",Width=1080,Height=2160,AspectRatio="18:9",bCanSwapAspectRatio=true,ProfileName="Android_Mid") +-PhoneScreenResolutions=(Description="Google Pixel 3 XL",Width=1440,Height=2960,AspectRatio="18.5:9",bCanSwapAspectRatio=true,ProfileName="Android_Mid") +-PhoneScreenResolutions=(Description="Razer Phone",Width=1080,Height=1920,AspectRatio="16:9",bCanSwapAspectRatio=true,ProfileName="Android_Mid") ++PhoneScreenResolutions=(Description="Apple iPhone 5S",Width=320,Height=568,AspectRatio="~16:9",bCanSwapAspectRatio=True,ProfileName="iPhone5S") ++PhoneScreenResolutions=(Description="Apple iPhone 6",Width=375,Height=667,AspectRatio="16:9",bCanSwapAspectRatio=True,ProfileName="iPhone6") ++PhoneScreenResolutions=(Description="Apple iPhone 6+",Width=414,Height=736,AspectRatio="16:9",bCanSwapAspectRatio=True,ProfileName="iPhone6Plus") ++PhoneScreenResolutions=(Description="Apple iPhone 6S",Width=375,Height=667,AspectRatio="16:9",bCanSwapAspectRatio=True,ProfileName="iPhone6S") ++PhoneScreenResolutions=(Description="Apple iPhone 6S+",Width=414,Height=736,AspectRatio="16:9",bCanSwapAspectRatio=True,ProfileName="iPhone6SPlus") ++PhoneScreenResolutions=(Description="Apple iPhone 7",Width=375,Height=667,AspectRatio="16:9",bCanSwapAspectRatio=True,ProfileName="iPhone7") ++PhoneScreenResolutions=(Description="Apple iPhone 7+",Width=414,Height=736,AspectRatio="16:9",bCanSwapAspectRatio=True,ProfileName="iPhone7Plus") ++PhoneScreenResolutions=(Description="Apple iPhone 8",Width=375,Height=667,AspectRatio="16:9",bCanSwapAspectRatio=True,ProfileName="iPhone8") ++PhoneScreenResolutions=(Description="Apple iPhone 8+",Width=414,Height=736,AspectRatio="16:9",bCanSwapAspectRatio=True,ProfileName="iPhone8Plus") ++PhoneScreenResolutions=(Description="Apple iPhone X",Width=375,Height=812,AspectRatio="19.5:9",bCanSwapAspectRatio=True,ProfileName="iPhoneX") ++PhoneScreenResolutions=(Description="Apple iPhone XS",Width=375,Height=812,AspectRatio="16:9",bCanSwapAspectRatio=True,ProfileName="iPhoneXS") ++PhoneScreenResolutions=(Description="Apple iPhone XS Max",Width=414,Height=896,AspectRatio="16:9",bCanSwapAspectRatio=True,ProfileName="iPhoneXSMax") ++PhoneScreenResolutions=(Description="Apple iPhone XR",Width=414,Height=896,AspectRatio="16:9",bCanSwapAspectRatio=True,ProfileName="iPhoneXR") ++PhoneScreenResolutions=(Description="HTC One",Width=1080,Height=1920,AspectRatio="16:9",bCanSwapAspectRatio=True,ProfileName="Android_High") ++PhoneScreenResolutions=(Description="Samsung Galaxy S4",Width=1080,Height=1920,AspectRatio="16:9",bCanSwapAspectRatio=True,ProfileName="Android_Low") ++PhoneScreenResolutions=(Description="Samsung Galaxy S6",Width=1440,Height=2560,AspectRatio="16:9",bCanSwapAspectRatio=True,ProfileName="Android_Mali_T7xx") ++PhoneScreenResolutions=(Description="Samsung Galaxy S7",Width=1440,Height=2560,AspectRatio="16:9",bCanSwapAspectRatio=True,ProfileName="Android_High") ++PhoneScreenResolutions=(Description="Samsung Galaxy S8 (Mali)",Width=1080,Height=2220,AspectRatio="18.5:9",bCanSwapAspectRatio=True,ProfileName="Android_Mali_G71") ++PhoneScreenResolutions=(Description="Samsung Galaxy S8 (Adreno)",Width=1080,Height=2220,AspectRatio="18.5:9",bCanSwapAspectRatio=True,ProfileName="Android_Adreno5xx") ++PhoneScreenResolutions=(Description="Samsung Galaxy S9 (Mali)",Width=1440,Height=2960,AspectRatio="18.5:9",bCanSwapAspectRatio=True,ProfileName="Android_High") ++PhoneScreenResolutions=(Description="Samsung Galaxy S9 (Adreno)",Width=1440,Height=2960,AspectRatio="18.5:9",bCanSwapAspectRatio=True,ProfileName="Android_High") ++PhoneScreenResolutions=(Description="Samsung Galaxy Note 9 (Mali)",Width=1440,Height=2960,AspectRatio="18.5:9",bCanSwapAspectRatio=True,ProfileName="Android_High") ++PhoneScreenResolutions=(Description="Samsung Galaxy S10 (Adreno)",Width=1440,Height=3040,AspectRatio="19:9",bCanSwapAspectRatio=True,ProfileName="Android_Adreno6xx") ++PhoneScreenResolutions=(Description="Samsung Galaxy S10 (Mali)",Width=1440,Height=3040,AspectRatio="19:9",bCanSwapAspectRatio=True,ProfileName="Android_Mali_G76") ++PhoneScreenResolutions=(Description="Samsung Galaxy S10e (Adreno)",Width=1080,Height=2280,AspectRatio="19:9",bCanSwapAspectRatio=True,ProfileName="Android_Adreno6xx") ++PhoneScreenResolutions=(Description="Samsung Galaxy S10e (Mali)",Width=1080,Height=2280,AspectRatio="19:9",bCanSwapAspectRatio=True,ProfileName="Android_Mali_G76") ++PhoneScreenResolutions=(Description="Google Pixel",Width=1080,Height=1920,AspectRatio="16:9",bCanSwapAspectRatio=True,ProfileName="Android_Mid") ++PhoneScreenResolutions=(Description="Google Pixel XL",Width=1080,Height=1920,AspectRatio="16:9",bCanSwapAspectRatio=True,ProfileName="Android_Mid") ++PhoneScreenResolutions=(Description="Google Pixel 2",Width=1080,Height=1920,AspectRatio="16:9",bCanSwapAspectRatio=True,ProfileName="Android_Mid") ++PhoneScreenResolutions=(Description="Google Pixel 2 XL",Width=1080,Height=1920,AspectRatio="16:9",bCanSwapAspectRatio=True,ProfileName="Android_Mid") ++PhoneScreenResolutions=(Description="Google Pixel 3",Width=1080,Height=2160,AspectRatio="18:9",bCanSwapAspectRatio=True,ProfileName="Android_Mid") ++PhoneScreenResolutions=(Description="Google Pixel 3 XL",Width=1440,Height=2960,AspectRatio="18.5:9",bCanSwapAspectRatio=True,ProfileName="Android_Mid") ++PhoneScreenResolutions=(Description="Razer Phone",Width=1080,Height=1920,AspectRatio="16:9",bCanSwapAspectRatio=True,ProfileName="Android_Mid") +-TabletScreenResolutions=(Description="iPad Pro 12.9-inch (3rd gen.)",Width=1024,Height=1366,AspectRatio="~3:4",bCanSwapAspectRatio=true,ProfileName="iPadPro3_129") +-TabletScreenResolutions=(Description="iPad Pro 12.9-inch (2nd gen.)",Width=1024,Height=1366,AspectRatio="~3:4",bCanSwapAspectRatio=true,ProfileName="iPadPro2_129") +-TabletScreenResolutions=(Description="iPad Pro 11-inch",Width=834,Height=1194,AspectRatio="5:7",bCanSwapAspectRatio=true,ProfileName="iPadPro11") +-TabletScreenResolutions=(Description="iPad Pro 10.5-inch",Width=834,Height=1112,AspectRatio="3:4",bCanSwapAspectRatio=true,ProfileName="iPadPro105") +-TabletScreenResolutions=(Description="iPad Pro 12.9-inch",Width=1024,Height=1366,AspectRatio="3:4",bCanSwapAspectRatio=true,ProfileName="iPadPro129") +-TabletScreenResolutions=(Description="iPad Pro 9.7-inch",Width=768,Height=1024,AspectRatio="3:4",bCanSwapAspectRatio=true,ProfileName="iPadPro97") +-TabletScreenResolutions=(Description="iPad (6th gen.)",Width=768,Height=1024,AspectRatio="3:4",bCanSwapAspectRatio=true,ProfileName="iPad6") +-TabletScreenResolutions=(Description="iPad (5th gen.)",Width=768,Height=1024,AspectRatio="3:4",bCanSwapAspectRatio=true,ProfileName="iPad5") +-TabletScreenResolutions=(Description="iPad Air 3",Width=768,Height=1024,AspectRatio="3:4",bCanSwapAspectRatio=true,ProfileName="iPadAir3") +-TabletScreenResolutions=(Description="iPad Air 2",Width=768,Height=1024,AspectRatio="3:4",bCanSwapAspectRatio=true,ProfileName="iPadAir2") +-TabletScreenResolutions=(Description="iPad Mini 5",Width=768,Height=1024,AspectRatio="3:4",bCanSwapAspectRatio=true,ProfileName="iPadMini5") +-TabletScreenResolutions=(Description="iPad Mini 4",Width=768,Height=1024,AspectRatio="3:4",bCanSwapAspectRatio=true,ProfileName="iPadMini4") +-TabletScreenResolutions=(Description="LG G Pad X 8.0",Width=768,Height=1366,AspectRatio="9:16",bCanSwapAspectRatio=true) +-TabletScreenResolutions=(Description="Asus Zenpad 3s 10",Width=768,Height=1366,AspectRatio="9:16",bCanSwapAspectRatio=true) +-TabletScreenResolutions=(Description="Huawei MediaPad M3",Width=768,Height=1366,AspectRatio="9:16",bCanSwapAspectRatio=true) +-TabletScreenResolutions=(Description="Microsoft Surface RT",Width=768,Height=1366,AspectRatio="9:16",bCanSwapAspectRatio=true) +-TabletScreenResolutions=(Description="Microsoft Surface Pro",Width=1080,Height=1920,AspectRatio="9:16",bCanSwapAspectRatio=true) ++TabletScreenResolutions=(Description="iPad Pro 12.9-inch (3rd gen.)",Width=1024,Height=1366,AspectRatio="~3:4",bCanSwapAspectRatio=True,ProfileName="iPadPro3_129") ++TabletScreenResolutions=(Description="iPad Pro 12.9-inch (2nd gen.)",Width=1024,Height=1366,AspectRatio="~3:4",bCanSwapAspectRatio=True,ProfileName="iPadPro2_129") ++TabletScreenResolutions=(Description="iPad Pro 11-inch",Width=834,Height=1194,AspectRatio="5:7",bCanSwapAspectRatio=True,ProfileName="iPadPro11") ++TabletScreenResolutions=(Description="iPad Pro 10.5-inch",Width=834,Height=1112,AspectRatio="3:4",bCanSwapAspectRatio=True,ProfileName="iPadPro105") ++TabletScreenResolutions=(Description="iPad Pro 12.9-inch",Width=1024,Height=1366,AspectRatio="3:4",bCanSwapAspectRatio=True,ProfileName="iPadPro129") ++TabletScreenResolutions=(Description="iPad Pro 9.7-inch",Width=768,Height=1024,AspectRatio="3:4",bCanSwapAspectRatio=True,ProfileName="iPadPro97") ++TabletScreenResolutions=(Description="iPad (6th gen.)",Width=768,Height=1024,AspectRatio="3:4",bCanSwapAspectRatio=True,ProfileName="iPad6") ++TabletScreenResolutions=(Description="iPad (5th gen.)",Width=768,Height=1024,AspectRatio="3:4",bCanSwapAspectRatio=True,ProfileName="iPad5") ++TabletScreenResolutions=(Description="iPad Air 3",Width=768,Height=1024,AspectRatio="3:4",bCanSwapAspectRatio=True,ProfileName="iPadAir3") ++TabletScreenResolutions=(Description="iPad Air 2",Width=768,Height=1024,AspectRatio="3:4",bCanSwapAspectRatio=True,ProfileName="iPadAir2") ++TabletScreenResolutions=(Description="iPad Mini 5",Width=768,Height=1024,AspectRatio="3:4",bCanSwapAspectRatio=True,ProfileName="iPadMini5") ++TabletScreenResolutions=(Description="iPad Mini 4",Width=768,Height=1024,AspectRatio="3:4",bCanSwapAspectRatio=True,ProfileName="iPadMini4") ++TabletScreenResolutions=(Description="LG G Pad X 8.0",Width=768,Height=1366,AspectRatio="9:16",bCanSwapAspectRatio=True,ProfileName="") ++TabletScreenResolutions=(Description="Asus Zenpad 3s 10",Width=768,Height=1366,AspectRatio="9:16",bCanSwapAspectRatio=True,ProfileName="") ++TabletScreenResolutions=(Description="Huawei MediaPad M3",Width=768,Height=1366,AspectRatio="9:16",bCanSwapAspectRatio=True,ProfileName="") ++TabletScreenResolutions=(Description="Microsoft Surface RT",Width=768,Height=1366,AspectRatio="9:16",bCanSwapAspectRatio=True,ProfileName="") ++TabletScreenResolutions=(Description="Microsoft Surface Pro",Width=1080,Height=1920,AspectRatio="9:16",bCanSwapAspectRatio=True,ProfileName="") +-TelevisionScreenResolutions=(Description="720p (HDTV, Blu-ray)",Width=1280,Height=720,AspectRatio="16:9",bCanSwapAspectRatio=true) +-TelevisionScreenResolutions=(Description="1080i, 1080p (HDTV, Blu-ray)",Width=1920,Height=1080,AspectRatio="16:9",bCanSwapAspectRatio=true) +-TelevisionScreenResolutions=(Description="4K Ultra HD",Width=3840,Height=2160,AspectRatio="16:9",bCanSwapAspectRatio=true) +-TelevisionScreenResolutions=(Description="4K Digital Cinema",Width=4096,Height=2160,AspectRatio="1.90:1",bCanSwapAspectRatio=true) ++TelevisionScreenResolutions=(Description="720p (HDTV, Blu-ray)",Width=1280,Height=720,AspectRatio="16:9",bCanSwapAspectRatio=True,ProfileName="") ++TelevisionScreenResolutions=(Description="1080i, 1080p (HDTV, Blu-ray)",Width=1920,Height=1080,AspectRatio="16:9",bCanSwapAspectRatio=True,ProfileName="") ++TelevisionScreenResolutions=(Description="4K Ultra HD",Width=3840,Height=2160,AspectRatio="16:9",bCanSwapAspectRatio=True,ProfileName="") ++TelevisionScreenResolutions=(Description="4K Digital Cinema",Width=4096,Height=2160,AspectRatio="1.90:1",bCanSwapAspectRatio=True,ProfileName="") +DeviceToEmulate= +PIESafeZoneOverride=(Left=0.000000,Top=0.000000,Right=0.000000,Bottom=0.000000) + diff --git a/EndlessVendetta/Config/DefaultEngine.ini b/EndlessVendetta/Config/DefaultEngine.ini index 1c20f465..f61108f4 100644 --- a/EndlessVendetta/Config/DefaultEngine.ini +++ b/EndlessVendetta/Config/DefaultEngine.ini @@ -6,14 +6,16 @@ [/Script/EngineSettings.GameMapsSettings] EditorStartupMap=/Game/FirstPerson/Maps/GunMechanicTester.GunMechanicTester LocalMapOptions= -TransitionMap= +TransitionMap=None bUseSplitscreen=True TwoPlayerSplitscreenLayout=Horizontal ThreePlayerSplitscreenLayout=FavorTop +FourPlayerSplitscreenLayout=Grid +bOffsetPlayerGamepadIds=False GameInstanceClass=/Script/Engine.GameInstance GameDefaultMap=/Game/FirstPerson/Maps/GunMechanicTester.GunMechanicTester -ServerDefaultMap=/Engine/Maps/Entry -GlobalDefaultGameMode=/Script/EndlessVendetta.EndlessVendettaGameMode +ServerDefaultMap=/Engine/Maps/Entry.Entry +GlobalDefaultGameMode=/Game/FirstPerson/GunMechanicWorld.GunMechanicWorld_C GlobalDefaultServerGameMode=None [/Script/Engine.RendererSettings] diff --git a/EndlessVendetta/Content/FirstPerson/Blueprints/BP_FirstPersonCharacter.uasset b/EndlessVendetta/Content/FirstPerson/Blueprints/BP_FirstPersonCharacter.uasset index 00b38c8d..034d9419 100644 --- a/EndlessVendetta/Content/FirstPerson/Blueprints/BP_FirstPersonCharacter.uasset +++ b/EndlessVendetta/Content/FirstPerson/Blueprints/BP_FirstPersonCharacter.uasset @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:46657eb5de2de0259508b2ff818d484f06f895c13f8bb3d04c6fc34ea61659a1 -size 23694 +oid sha256:7cdc8c835b9e8e0bf81e8bc89d0ea3027bae94e2174be261c132bd300f1fad51 +size 23989 diff --git a/EndlessVendetta/Content/FirstPerson/Blueprints/BP_PickUp_Rifle.uasset b/EndlessVendetta/Content/FirstPerson/Blueprints/BP_PickUp_Rifle.uasset index c40095d8..42fff7f9 100644 --- a/EndlessVendetta/Content/FirstPerson/Blueprints/BP_PickUp_Rifle.uasset +++ b/EndlessVendetta/Content/FirstPerson/Blueprints/BP_PickUp_Rifle.uasset @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:91c5ce4a3278b69b5104cd1d2972be90b80fc199098202556009b1d28b52fe38 -size 32842 +oid sha256:4d156d6fe24779674a35f18f9209313b0c2096d22772400c4d10c241a2e59e9e +size 21649 diff --git a/EndlessVendetta/Content/FirstPerson/GunMechanicWorld.uasset b/EndlessVendetta/Content/FirstPerson/GunMechanicWorld.uasset new file mode 100644 index 00000000..551d8f69 --- /dev/null +++ b/EndlessVendetta/Content/FirstPerson/GunMechanicWorld.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:50316ead250bb810a80831ade33e194f2de7ccb433dc172e5217540998e2854e +size 19098 diff --git a/EndlessVendetta/Content/FirstPerson/Input/Actions/IA_HoldShoot.uasset b/EndlessVendetta/Content/FirstPerson/Input/Actions/IA_HoldShoot.uasset new file mode 100644 index 00000000..ac52169f --- /dev/null +++ b/EndlessVendetta/Content/FirstPerson/Input/Actions/IA_HoldShoot.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:1360a5e75da75d76374ea2091191ab85eab8ae0407f660ec7e242bdb51056670 +size 1659 diff --git a/EndlessVendetta/Content/FirstPerson/Input/Actions/IA_Shoot.uasset b/EndlessVendetta/Content/FirstPerson/Input/Actions/IA_Shoot.uasset deleted file mode 100644 index 108736e1..00000000 --- a/EndlessVendetta/Content/FirstPerson/Input/Actions/IA_Shoot.uasset +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:e1d44dcf8506d3f89055e8f440e10943ff7f436e1bc5ec345c2a79069e2327d4 -size 1598 diff --git a/EndlessVendetta/Content/FirstPerson/Input/Actions/IA_TapShoot.uasset b/EndlessVendetta/Content/FirstPerson/Input/Actions/IA_TapShoot.uasset new file mode 100644 index 00000000..b951ed44 --- /dev/null +++ b/EndlessVendetta/Content/FirstPerson/Input/Actions/IA_TapShoot.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:3d02927e6f81929b1b6715400ce5f1a62361f239a5baad938902ae86b61ddc55 +size 1657 diff --git a/EndlessVendetta/Content/FirstPerson/Input/IMC_Default.uasset b/EndlessVendetta/Content/FirstPerson/Input/IMC_Default.uasset index c85553cd..ea55777d 100644 --- a/EndlessVendetta/Content/FirstPerson/Input/IMC_Default.uasset +++ b/EndlessVendetta/Content/FirstPerson/Input/IMC_Default.uasset @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:ffa41b9939bbfe39ea2480464028578938aa1a8c0acc1edeac030ade6d1d9d76 -size 14001 +oid sha256:1006f1f08d6d5428a9c4689b38adff8ae38cb5a4b71ed3d8831ad0ef4da32363 +size 15167 diff --git a/EndlessVendetta/Content/FirstPerson/Input/IMC_Weapons.uasset b/EndlessVendetta/Content/FirstPerson/Input/IMC_Weapons.uasset index e1400043..e0d25572 100644 --- a/EndlessVendetta/Content/FirstPerson/Input/IMC_Weapons.uasset +++ b/EndlessVendetta/Content/FirstPerson/Input/IMC_Weapons.uasset @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:cbc3f6b581c994996d42e89d377343eb9699442117748a71f9ead311d203992b -size 4115 +oid sha256:99664f7a2d02cd77eec769cd0a690345e80de975fcacb8a615346583218e1b15 +size 4138 diff --git a/EndlessVendetta/Content/FirstPerson/Maps/GunMechanicTester.umap b/EndlessVendetta/Content/FirstPerson/Maps/GunMechanicTester.umap index 503b25b8..9b60a76e 100644 --- a/EndlessVendetta/Content/FirstPerson/Maps/GunMechanicTester.umap +++ b/EndlessVendetta/Content/FirstPerson/Maps/GunMechanicTester.umap @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:ee182b80d3a23ed532f8e4efed1b99c1c648c6076e3e6d72b75e8a511784ff06 -size 19378 +oid sha256:317895349b964df99a6a8316ea5f4664ebf4127af8e56f543893d36cc49afbfe +size 19651 diff --git a/EndlessVendetta/Content/__ExternalActors__/FirstPerson/Maps/GunMechanicTester/0/3Z/SNIBJQL2L6YHSC7MTTK1C2.uasset b/EndlessVendetta/Content/__ExternalActors__/FirstPerson/Maps/GunMechanicTester/0/3Z/SNIBJQL2L6YHSC7MTTK1C2.uasset new file mode 100644 index 00000000..4f6bab25 --- /dev/null +++ b/EndlessVendetta/Content/__ExternalActors__/FirstPerson/Maps/GunMechanicTester/0/3Z/SNIBJQL2L6YHSC7MTTK1C2.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:fdab805d14a7bc4f2fa61abc0106161cf2626e8857ae14089d5e4c93f9a320d6 +size 5061 diff --git a/EndlessVendetta/Source/EndlessVendetta/BaseWeaponClass.cpp b/EndlessVendetta/Source/EndlessVendetta/BaseWeaponClass.cpp index 3d2bf453..35d57eb1 100644 --- a/EndlessVendetta/Source/EndlessVendetta/BaseWeaponClass.cpp +++ b/EndlessVendetta/Source/EndlessVendetta/BaseWeaponClass.cpp @@ -2,8 +2,9 @@ #include "BaseWeaponClass.h" - +#include "EndlessVendettaCharacter.h" #include "Components/CapsuleComponent.h" +#include "Kismet/GameplayStatics.h" // Sets default values @@ -18,6 +19,24 @@ void ABaseWeaponClass::BeginPlay() { Super::BeginPlay(); + // Attempt to find the player character + APlayerController* PlayerController = UGameplayStatics::GetPlayerController(this, 0); + player = Cast(PlayerController->GetCharacter()); + if (PlayerController) + { + if (player) + { + UE_LOG(LogTemp, Display, TEXT("BeginPlay: Player found.")); + } + else + { + UE_LOG(LogTemp, Error, TEXT("BeginPlay: Player not found.")); + } + } + else + { + UE_LOG(LogTemp, Error, TEXT("BeginPlay: Player controller not found.")); + } } // Called every frame @@ -26,3 +45,22 @@ void ABaseWeaponClass::Tick(float DeltaTime) Super::Tick(DeltaTime); } +void ABaseWeaponClass::TapFire() +{ + FHitResult outHit; + FVector traceStart; + FVector traceEnd; + traceStart = player->GetActorLocation(); + traceEnd = traceStart + (player->GetActorForwardVector() * 50); + UE_LOG(LogTemp, Display, TEXT("World: %s"), *GetWorld()->GetName()); + FCollisionQueryParams collisionParams; + GetWorld()->LineTraceSingleByChannel(outHit, traceStart, traceEnd, ECC_Visibility, collisionParams); + + //Debug line to see where the trace hit + DrawDebugLine(this->GetWorld(), traceStart, traceEnd, FColor::Red, true); + if (outHit.bBlockingHit) + { + UE_LOG(LogTemp, Display, TEXT("Hit something")); + } + UE_LOG(LogTemp, Display, TEXT("BOOMBOOMBIMBAMBIM")); +} diff --git a/EndlessVendetta/Source/EndlessVendetta/BaseWeaponClass.h b/EndlessVendetta/Source/EndlessVendetta/BaseWeaponClass.h index 32225fe0..2fc1219a 100644 --- a/EndlessVendetta/Source/EndlessVendetta/BaseWeaponClass.h +++ b/EndlessVendetta/Source/EndlessVendetta/BaseWeaponClass.h @@ -6,10 +6,11 @@ #include "WeaponItemClass.h" #include "BaseWeaponClass.generated.h" +class AEndlessVendettaCharacter; class UCapsuleComponent; UCLASS() -class ENDLESSVENDETTA_API ABaseWeaponClass : public AWeaponItemClass +class ENDLESSVENDETTA_API ABaseWeaponClass : public AActor { GENERATED_BODY() @@ -39,5 +40,19 @@ public: UPROPERTY(EditAnywhere) UTexture2D* WeaponImage; + + UFUNCTION(BlueprintCallable, Category = "Weapons") + void TapFire(); + + UPROPERTY(VisibleAnywhere) + ACharacter* player; + + + + + //Add HoldFire functionality after pistol is complete for holding fire for pistol and make it start spraying innacuratly. + + // UFUNCTION(BlueprintCallable, Category = "Weapons") + // void HoldFire(); }; diff --git a/EndlessVendetta/Source/EndlessVendetta/EndlessVendettaCharacter.cpp b/EndlessVendetta/Source/EndlessVendetta/EndlessVendettaCharacter.cpp index 189f8513..62ffd896 100644 --- a/EndlessVendetta/Source/EndlessVendetta/EndlessVendettaCharacter.cpp +++ b/EndlessVendetta/Source/EndlessVendetta/EndlessVendettaCharacter.cpp @@ -73,6 +73,9 @@ void AEndlessVendettaCharacter::SetupPlayerInputComponent(class UInputComponent* //Weapon Switching EnhancedInputComponent->BindAction(EquipPrimaryWeapon, ETriggerEvent::Triggered, this, &AEndlessVendettaCharacter::EquipPrimary); EnhancedInputComponent->BindAction(EquipSecondaryWeapon, ETriggerEvent::Triggered, this, &AEndlessVendettaCharacter::EquipSecondary); + + //Weapon Shooting + EnhancedInputComponent->BindAction(TapShootAction, ETriggerEvent::Triggered, this, &AEndlessVendettaCharacter::TapFireCaller); } } @@ -130,6 +133,15 @@ void AEndlessVendettaCharacter::EquipSecondary() } } +//Calls the fire function in the baseWeaponClass +void AEndlessVendettaCharacter::TapFireCaller() +{ + if (IsValid(PrimaryWeapon) || IsValid(SecondaryWeapon)) + { + PrimaryWeaponClass.GetDefaultObject()->TapFire(); + } +} + //POTENTIAL PICKUP SYSTEM NEEDS CHANGING BUT YES //Called from Player BluePrints diff --git a/EndlessVendetta/Source/EndlessVendetta/EndlessVendettaCharacter.h b/EndlessVendetta/Source/EndlessVendetta/EndlessVendettaCharacter.h index c5c020fc..357f0cfd 100644 --- a/EndlessVendetta/Source/EndlessVendetta/EndlessVendettaCharacter.h +++ b/EndlessVendetta/Source/EndlessVendetta/EndlessVendettaCharacter.h @@ -49,6 +49,11 @@ class AEndlessVendettaCharacter : public ACharacter UPROPERTY(EditAnywhere, BlueprintReadOnly, Category=Input, meta=(AllowPrivateAccess = "true")) class UInputAction* EquipSecondaryWeapon; + UPROPERTY(EditAnywhere, BlueprintReadOnly, Category=Input, meta=(AllowPrivateAccess = "true")) + class UInputAction* TapShootAction; + + UPROPERTY(EditAnywhere, BlueprintReadOnly, Category=Input, meta=(AllowPrivateAccess = "true")) + class UInputAction* HoldShootAction; public: AEndlessVendettaCharacter(); @@ -84,6 +89,9 @@ public: ABaseWeaponClass* SecondaryWeapon; + UFUNCTION(BlueprintCallable, Category = "Weapons") + void TapFireCaller(); + protected: /** Called for movement input */ diff --git a/EndlessVendetta/Source/EndlessVendetta/WeaponItemClass.cpp b/EndlessVendetta/Source/EndlessVendetta/WeaponItemClass.cpp index d1e399a7..32f68147 100644 --- a/EndlessVendetta/Source/EndlessVendetta/WeaponItemClass.cpp +++ b/EndlessVendetta/Source/EndlessVendetta/WeaponItemClass.cpp @@ -25,12 +25,10 @@ void AWeaponItemClass::Tick(float DeltaTime) } //Called from WeaponInventory actor component class -void AWeaponItemClass::Equip(ABaseWeaponClass* PickedUpWeapon) +void AWeaponItemClass::Equip() { - //get the weapons in the array from component - //whatever input is being pressed add that to the player socket - //if there is no gun simply add it to the socket - //if there is a weapon remove from socket and add the requested one + GetWorld(); + UE_LOG(LogTemp, Display, TEXT("World Player is in: %s"), GetWorld()); } //Called from WeaponInventory actor component class diff --git a/EndlessVendetta/Source/EndlessVendetta/WeaponItemClass.h b/EndlessVendetta/Source/EndlessVendetta/WeaponItemClass.h index a1ad01bf..0ab0f0a6 100644 --- a/EndlessVendetta/Source/EndlessVendetta/WeaponItemClass.h +++ b/EndlessVendetta/Source/EndlessVendetta/WeaponItemClass.h @@ -25,11 +25,10 @@ public: // Called every frame virtual void Tick(float DeltaTime) override; -private: - UFUNCTION() - void Equip(ABaseWeaponClass* PickedUpWeapon); + void Equip(); UFUNCTION() void Unequip(ABaseWeaponClass* PickedUpWeapon); + }; From d4c602e262fae36a7d2425aac5e4d98848c3a870 Mon Sep 17 00:00:00 2001 From: PHILIP WHITE Date: Fri, 29 Sep 2023 00:07:12 +0100 Subject: [PATCH 021/112] Add EQS for AI to Find Valid Cover Locations --- .../AI/Enemy/Basic/BB_BasicEnemy.uasset | 4 +- .../AI/Enemy/Basic/BT_BasicEnemy.uasset | 4 +- .../Content/AI/Enemy/Basic/EQSB_Player.uasset | 3 + .../AI/Enemy/Basic/EQS_FindCover.uasset | 3 + .../Content/AI/Enemy/Basic/EQS_Test.uasset | 3 + .../FirstPerson/Maps/FirstPersonMap.umap | 4 +- .../A/OW/M2M9BG6AWDJW3UNODUVGA2.uasset | 2 +- .../HoloLens/Config/HoloLensEngine.ini | 32 +++++++ .../EndlessVendetta/AI/AI_EnemyController.cpp | 83 +++++++++++++++++++ .../EndlessVendetta/AI/AI_EnemyController.h | 35 ++++++++ .../EndlessVendetta/AI/BTTask_FindCover.cpp | 14 ++++ .../EndlessVendetta/AI/BTTask_FindCover.h | 23 +++++ .../EndlessVendetta/AI/EnemyCharacter.cpp | 20 +++++ .../EndlessVendetta/AI/EnemyCharacter.h | 10 +++ 14 files changed, 233 insertions(+), 7 deletions(-) create mode 100644 EndlessVendetta/Content/AI/Enemy/Basic/EQSB_Player.uasset create mode 100644 EndlessVendetta/Content/AI/Enemy/Basic/EQS_FindCover.uasset create mode 100644 EndlessVendetta/Content/AI/Enemy/Basic/EQS_Test.uasset create mode 100644 EndlessVendetta/Platforms/HoloLens/Config/HoloLensEngine.ini create mode 100644 EndlessVendetta/Source/EndlessVendetta/AI/AI_EnemyController.cpp create mode 100644 EndlessVendetta/Source/EndlessVendetta/AI/AI_EnemyController.h create mode 100644 EndlessVendetta/Source/EndlessVendetta/AI/BTTask_FindCover.cpp create mode 100644 EndlessVendetta/Source/EndlessVendetta/AI/BTTask_FindCover.h diff --git a/EndlessVendetta/Content/AI/Enemy/Basic/BB_BasicEnemy.uasset b/EndlessVendetta/Content/AI/Enemy/Basic/BB_BasicEnemy.uasset index f631ee69..52c3d994 100644 --- a/EndlessVendetta/Content/AI/Enemy/Basic/BB_BasicEnemy.uasset +++ b/EndlessVendetta/Content/AI/Enemy/Basic/BB_BasicEnemy.uasset @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:7e12facb03e605fcf3b7459c80c0ce5bd857df9f837d92a0b1f802dcf251ceff -size 2586 +oid sha256:0c439461f7778a2156b0c90fe965cd8bb56c84703110c655e5682b15da9ba2b7 +size 2952 diff --git a/EndlessVendetta/Content/AI/Enemy/Basic/BT_BasicEnemy.uasset b/EndlessVendetta/Content/AI/Enemy/Basic/BT_BasicEnemy.uasset index 2d4c633a..ced1ec89 100644 --- a/EndlessVendetta/Content/AI/Enemy/Basic/BT_BasicEnemy.uasset +++ b/EndlessVendetta/Content/AI/Enemy/Basic/BT_BasicEnemy.uasset @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:f48b1e9b530fcb9a22eda28d4347ef5562fc9eaf7562f1d206c36b1ae0714889 -size 10205 +oid sha256:a6d42687973696b95d580795273e6993dd6eba1d2e5d513e21bf0d876a05c6e1 +size 9634 diff --git a/EndlessVendetta/Content/AI/Enemy/Basic/EQSB_Player.uasset b/EndlessVendetta/Content/AI/Enemy/Basic/EQSB_Player.uasset new file mode 100644 index 00000000..a1e8f59b --- /dev/null +++ b/EndlessVendetta/Content/AI/Enemy/Basic/EQSB_Player.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:4da78b93d151ff916a8b62f09f88ce28b8efeb76a9d1d468a6e56f95d50a711d +size 17987 diff --git a/EndlessVendetta/Content/AI/Enemy/Basic/EQS_FindCover.uasset b/EndlessVendetta/Content/AI/Enemy/Basic/EQS_FindCover.uasset new file mode 100644 index 00000000..6e74a14b --- /dev/null +++ b/EndlessVendetta/Content/AI/Enemy/Basic/EQS_FindCover.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:7fcaaf5f822a38ea450d63d75ae96d5207fd7b0d37e0c06edc04938dc3d19e48 +size 11056 diff --git a/EndlessVendetta/Content/AI/Enemy/Basic/EQS_Test.uasset b/EndlessVendetta/Content/AI/Enemy/Basic/EQS_Test.uasset new file mode 100644 index 00000000..eb8c4663 --- /dev/null +++ b/EndlessVendetta/Content/AI/Enemy/Basic/EQS_Test.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:5f5b2ddf1641fad4bf9b75104089070dd382ab3b630619aa5cbb0fb19e215f22 +size 22729 diff --git a/EndlessVendetta/Content/FirstPerson/Maps/FirstPersonMap.umap b/EndlessVendetta/Content/FirstPerson/Maps/FirstPersonMap.umap index 18ab88e2..54eb07cc 100644 --- a/EndlessVendetta/Content/FirstPerson/Maps/FirstPersonMap.umap +++ b/EndlessVendetta/Content/FirstPerson/Maps/FirstPersonMap.umap @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:50dc7643805f79735dcfd5446b36ff8ddea8adeda4b88438744192186c26f707 -size 19238 +oid sha256:89c980519d00e643fc39c075bf791f256c5cbedde3f1714c9b8dc549b66f747d +size 19936 diff --git a/EndlessVendetta/Content/__ExternalActors__/FirstPerson/Maps/FirstPersonMap/A/OW/M2M9BG6AWDJW3UNODUVGA2.uasset b/EndlessVendetta/Content/__ExternalActors__/FirstPerson/Maps/FirstPersonMap/A/OW/M2M9BG6AWDJW3UNODUVGA2.uasset index f061064d..d2ed851f 100644 --- a/EndlessVendetta/Content/__ExternalActors__/FirstPerson/Maps/FirstPersonMap/A/OW/M2M9BG6AWDJW3UNODUVGA2.uasset +++ b/EndlessVendetta/Content/__ExternalActors__/FirstPerson/Maps/FirstPersonMap/A/OW/M2M9BG6AWDJW3UNODUVGA2.uasset @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:1988331cb675ef5854b9e0bf00b72da4746c2034323a0749b398193134f3c9d3 +oid sha256:e389d4fdd420c3db3068711fe04fd3fa8d65bdb13895ef085fc9deb499078797 size 5288 diff --git a/EndlessVendetta/Platforms/HoloLens/Config/HoloLensEngine.ini b/EndlessVendetta/Platforms/HoloLens/Config/HoloLensEngine.ini new file mode 100644 index 00000000..d5ebb91b --- /dev/null +++ b/EndlessVendetta/Platforms/HoloLens/Config/HoloLensEngine.ini @@ -0,0 +1,32 @@ + + +[/Script/HoloLensPlatformEditor.HoloLensTargetSettings] +bBuildForEmulation=False +bBuildForDevice=True +bUseNameForLogo=True +bBuildForRetailWindowsStore=False +bAutoIncrementVersion=False +bShouldCreateAppInstaller=False +AppInstallerInstallationURL= +HoursBetweenUpdateChecks=0 +bEnablePIXProfiling=False +TileBackgroundColor=(B=64,G=0,R=0,A=255) +SplashScreenBackgroundColor=(B=64,G=0,R=0,A=255) ++PerCultureResources=(CultureId="",Strings=(PackageDisplayName="",PublisherDisplayName="",PackageDescription="",ApplicationDisplayName="",ApplicationDescription=""),Images=()) +TargetDeviceFamily=Windows.Holographic +MinimumPlatformVersion= +MaximumPlatformVersionTested=10.0.18362.0 +MaxTrianglesPerCubicMeter=500.000000 +SpatialMeshingVolumeSize=20.000000 +CompilerVersion=Default +Windows10SDKVersion=10.0.18362.0 ++CapabilityList=internetClientServer ++CapabilityList=privateNetworkClientServer ++Uap2CapabilityList=spatialPerception +bSetDefaultCapabilities=False +SpatializationPlugin= +SourceDataOverridePlugin= +ReverbPlugin= +OcclusionPlugin= +SoundCueCookQualityIndex=-1 + diff --git a/EndlessVendetta/Source/EndlessVendetta/AI/AI_EnemyController.cpp b/EndlessVendetta/Source/EndlessVendetta/AI/AI_EnemyController.cpp new file mode 100644 index 00000000..eca94318 --- /dev/null +++ b/EndlessVendetta/Source/EndlessVendetta/AI/AI_EnemyController.cpp @@ -0,0 +1,83 @@ +// Fill out your copyright notice in the Description page of Project Settings. + + +#include "AI_EnemyController.h" + +#include "EnemyCharacter.h" +#include "BehaviorTree/BlackboardComponent.h" +#include "Perception/AIPerceptionComponent.h" +#include "Perception/AISenseConfig_Sight.h" + + +// Sets default values +AAI_EnemyController::AAI_EnemyController(FObjectInitializer const& ObjectInitializer) +{ + // Set this actor to call Tick() every frame. You can turn this off to improve performance if you don't need it. + PrimaryActorTick.bCanEverTick = true; + + SetupPerceptionSystem(); +} + +// Called when the game starts or when spawned +void AAI_EnemyController::BeginPlay() +{ + Super::BeginPlay(); +} + +void AAI_EnemyController::OnPossess(APawn* InPawn) +{ + Super::OnPossess(InPawn); + if (const AEnemyCharacter* EnemyCharacter = Cast(InPawn)) + { + if (UBehaviorTree* const BehaviorTree = EnemyCharacter->GetBehaviorTree()) + { + UBlackboardComponent* TempBlackboardPtr; + UseBlackboard(BehaviorTree->BlackboardAsset, TempBlackboardPtr); + Blackboard = TempBlackboardPtr; + RunBehaviorTree(BehaviorTree); + } + } +} + +// Called every frame +void AAI_EnemyController::Tick(float DeltaTime) +{ + Super::Tick(DeltaTime); +} + +void AAI_EnemyController::SetupPerceptionSystem() +{ + SightConfig = CreateDefaultSubobject(TEXT("Sight Config")); + if (IsValid(SightConfig)) + { + SetPerceptionComponent(*CreateDefaultSubobject(TEXT("Perception Component"))); + SightConfig->SightRadius = 1000.0f; + SightConfig->LoseSightRadius = 1100.0f; + SightConfig->PeripheralVisionAngleDegrees = 90.0f; + SightConfig->SetMaxAge(5.0f); + SightConfig->AutoSuccessRangeFromLastSeenLocation = 520.0f; + SightConfig->DetectionByAffiliation.bDetectEnemies = true; + SightConfig->DetectionByAffiliation.bDetectFriendlies = true; + SightConfig->DetectionByAffiliation.bDetectNeutrals = true; + GetPerceptionComponent()->SetDominantSense(*SightConfig->GetSenseImplementation()); + GetPerceptionComponent()->OnTargetPerceptionUpdated.AddDynamic(this, &AAI_EnemyController::OnTargetPerceptionUpdated); + GetPerceptionComponent()->ConfigureSense(*SightConfig); + } +} + +void AAI_EnemyController::OnTargetPerceptionUpdated(AActor* Actor, FAIStimulus const Stimulus) +{ + if (AEnemyCharacter* const EnemyCharacter = Cast(Actor)) + { + if (Stimulus.WasSuccessfullySensed()) + { + GetBlackboardComponent()->SetValueAsObject("TargetActor", Actor); + GetBlackboardComponent()->SetValueAsVector("TargetLocation", Stimulus.StimulusLocation); + } + else + { + GetBlackboardComponent()->ClearValue("TargetActor"); + GetBlackboardComponent()->ClearValue("TargetLocation"); + } + } +} diff --git a/EndlessVendetta/Source/EndlessVendetta/AI/AI_EnemyController.h b/EndlessVendetta/Source/EndlessVendetta/AI/AI_EnemyController.h new file mode 100644 index 00000000..786bb0c3 --- /dev/null +++ b/EndlessVendetta/Source/EndlessVendetta/AI/AI_EnemyController.h @@ -0,0 +1,35 @@ +// Fill out your copyright notice in the Description page of Project Settings. + +#pragma once + +#include "CoreMinimal.h" +#include "AIController.h" +#include "Perception/AIPerceptionTypes.h" +#include "AI_EnemyController.generated.h" + +UCLASS() +class ENDLESSVENDETTA_API AAI_EnemyController : public AAIController +{ + GENERATED_BODY() + +public: + // Sets default values for this actor's properties + explicit AAI_EnemyController(FObjectInitializer const& ObjectInitializer); + +protected: + // Called when the game starts or when spawned + virtual void BeginPlay() override; + virtual void OnPossess(APawn* InPawn) override; + +public: + // Called every frame + virtual void Tick(float DeltaTime) override; + +private: + class UAISenseConfig_Sight* SightConfig; + void SetupPerceptionSystem(); + + UFUNCTION() + void OnTargetPerceptionUpdated(AActor* Actor, FAIStimulus const Stimulus); + +}; diff --git a/EndlessVendetta/Source/EndlessVendetta/AI/BTTask_FindCover.cpp b/EndlessVendetta/Source/EndlessVendetta/AI/BTTask_FindCover.cpp new file mode 100644 index 00000000..af60b35c --- /dev/null +++ b/EndlessVendetta/Source/EndlessVendetta/AI/BTTask_FindCover.cpp @@ -0,0 +1,14 @@ +// Fill out your copyright notice in the Description page of Project Settings. + + +#include "BTTask_FindCover.h" + +UBTTask_FindCover::UBTTask_FindCover(FObjectInitializer const& ObjectInitializer) +{ + NodeName = TEXT("Find Vaild Cover"); +} + +EBTNodeResult::Type UBTTask_FindCover::ExecuteTask(UBehaviorTreeComponent& OwnerComp, uint8* NodeMemory) +{ + return EBTNodeResult::Failed; +} diff --git a/EndlessVendetta/Source/EndlessVendetta/AI/BTTask_FindCover.h b/EndlessVendetta/Source/EndlessVendetta/AI/BTTask_FindCover.h new file mode 100644 index 00000000..8c1fa208 --- /dev/null +++ b/EndlessVendetta/Source/EndlessVendetta/AI/BTTask_FindCover.h @@ -0,0 +1,23 @@ +// Fill out your copyright notice in the Description page of Project Settings. + +#pragma once + +#include "CoreMinimal.h" +#include "BehaviorTree/Tasks/BTTask_BlackboardBase.h" +#include "BTTask_FindCover.generated.h" + +/** + * + */ +UCLASS() +class ENDLESSVENDETTA_API UBTTask_FindCover : public UBTTask_BlackboardBase +{ + GENERATED_BODY() +public: + explicit UBTTask_FindCover(FObjectInitializer const& ObjectInitializer); + virtual EBTNodeResult::Type ExecuteTask(UBehaviorTreeComponent& OwnerComp, uint8* NodeMemory) override; + +private: + UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "AI", meta = (AllowPrivateAccess = "true")) + float SearchRadius = 1000.f; +}; diff --git a/EndlessVendetta/Source/EndlessVendetta/AI/EnemyCharacter.cpp b/EndlessVendetta/Source/EndlessVendetta/AI/EnemyCharacter.cpp index 57a5285f..14827c11 100644 --- a/EndlessVendetta/Source/EndlessVendetta/AI/EnemyCharacter.cpp +++ b/EndlessVendetta/Source/EndlessVendetta/AI/EnemyCharacter.cpp @@ -3,12 +3,17 @@ #include "EnemyCharacter.h" +#include "Perception/AIPerceptionStimuliSourceComponent.h" +#include "Perception/AISense_Sight.h" + +class UAISense_Sight; // Sets default values AEnemyCharacter::AEnemyCharacter() { // Set this character to call Tick() every frame. You can turn this off to improve performance if you don't need it. PrimaryActorTick.bCanEverTick = true; + SetupStimuliSourceComponent(); } // Called when the game starts or when spawned @@ -30,3 +35,18 @@ void AEnemyCharacter::SetupPlayerInputComponent(UInputComponent* PlayerInputComp Super::SetupPlayerInputComponent(PlayerInputComponent); } +UBehaviorTree* AEnemyCharacter::GetBehaviorTree() const +{ + return BehaviorTree; +} + +void AEnemyCharacter::SetupStimuliSourceComponent() +{ + StimuliSourceComponent = CreateDefaultSubobject(TEXT("Stimuli Source Component")); + if (IsValid(StimuliSourceComponent)) + { + StimuliSourceComponent->RegisterForSense(TSubclassOf()); + StimuliSourceComponent->RegisterWithPerceptionSystem(); + } +} + diff --git a/EndlessVendetta/Source/EndlessVendetta/AI/EnemyCharacter.h b/EndlessVendetta/Source/EndlessVendetta/AI/EnemyCharacter.h index 74e529e5..23e7e3be 100644 --- a/EndlessVendetta/Source/EndlessVendetta/AI/EnemyCharacter.h +++ b/EndlessVendetta/Source/EndlessVendetta/AI/EnemyCharacter.h @@ -3,6 +3,7 @@ #pragma once #include "CoreMinimal.h" +#include "BehaviorTree/BehaviorTree.h" #include "GameFramework/Character.h" #include "EnemyCharacter.generated.h" @@ -19,10 +20,19 @@ protected: // Called when the game starts or when spawned virtual void BeginPlay() override; + UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "AI") + UBehaviorTree* BehaviorTree; public: // Called every frame virtual void Tick(float DeltaTime) override; // Called to bind functionality to input virtual void SetupPlayerInputComponent(class UInputComponent* PlayerInputComponent) override; + + UFUNCTION(BlueprintCallable, Category = "AI") + UBehaviorTree* GetBehaviorTree() const; + +private: + class UAIPerceptionStimuliSourceComponent* StimuliSourceComponent; + void SetupStimuliSourceComponent(); }; From 2757895ab9fd0ba96712c946d26a73d114fd2714 Mon Sep 17 00:00:00 2001 From: Rafal Swierczek <34179rs@gmail.com> Date: Fri, 29 Sep 2023 16:13:36 +0100 Subject: [PATCH 022/112] Added Arrow Comp and New Tag to Player BP --- .../FirstPerson/Blueprints/BP_FirstPersonCharacter.uasset | 4 ++-- .../StarterContent/Blueprints/Blueprint_CeilingLight.uasset | 4 ++-- .../Content/StarterContent/Particles/P_Ambient_Dust.uasset | 4 ++-- 3 files changed, 6 insertions(+), 6 deletions(-) diff --git a/EndlessVendetta/Content/FirstPerson/Blueprints/BP_FirstPersonCharacter.uasset b/EndlessVendetta/Content/FirstPerson/Blueprints/BP_FirstPersonCharacter.uasset index 034d9419..3966ce80 100644 --- a/EndlessVendetta/Content/FirstPerson/Blueprints/BP_FirstPersonCharacter.uasset +++ b/EndlessVendetta/Content/FirstPerson/Blueprints/BP_FirstPersonCharacter.uasset @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:7cdc8c835b9e8e0bf81e8bc89d0ea3027bae94e2174be261c132bd300f1fad51 -size 23989 +oid sha256:d567687e62b21f8c8c96c320928de71d9c2de143c13ae51aa7484f74e0abe0bc +size 25589 diff --git a/EndlessVendetta/Content/StarterContent/Blueprints/Blueprint_CeilingLight.uasset b/EndlessVendetta/Content/StarterContent/Blueprints/Blueprint_CeilingLight.uasset index 1d65a5bd..c5c3b84e 100644 --- a/EndlessVendetta/Content/StarterContent/Blueprints/Blueprint_CeilingLight.uasset +++ b/EndlessVendetta/Content/StarterContent/Blueprints/Blueprint_CeilingLight.uasset @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:5cc11f2015bdafd405b5b35cb75effe550762a10721f8b38b78dcde79c3e9e39 -size 43745 +oid sha256:4a60a29ad596546d481e43dfb8698842a78cc07f4a4b1000fa397cfba4e72331 +size 158206 diff --git a/EndlessVendetta/Content/StarterContent/Particles/P_Ambient_Dust.uasset b/EndlessVendetta/Content/StarterContent/Particles/P_Ambient_Dust.uasset index bf2e4391..bd4bbca0 100644 --- a/EndlessVendetta/Content/StarterContent/Particles/P_Ambient_Dust.uasset +++ b/EndlessVendetta/Content/StarterContent/Particles/P_Ambient_Dust.uasset @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:01ef616c7a8bd90cd1b7a13efb18a56f33346efbae51efa31f09804478b7621d -size 43456 +oid sha256:85646f10125ee134d64359d6de90f20c6aca59da9ccd8558c8fdcb450ec61cfd +size 53268 From cde2375851d384955d2571e1305fa24f68fc750c Mon Sep 17 00:00:00 2001 From: Rafal Swierczek <34179rs@gmail.com> Date: Fri, 29 Sep 2023 16:20:35 +0100 Subject: [PATCH 023/112] Added Weapon System Directory --- .../Content/StarterContent/Particles/P_Ambient_Dust.uasset | 2 +- .../Source/EndlessVendetta/EndlessVendettaCharacter.h | 2 +- .../EndlessVendetta/{ => WeaponSystem}/BaseWeaponClass.cpp | 2 +- .../Source/EndlessVendetta/{ => WeaponSystem}/BaseWeaponClass.h | 0 .../Source/EndlessVendetta/{ => WeaponSystem}/PistolClass.cpp | 0 .../Source/EndlessVendetta/{ => WeaponSystem}/PistolClass.h | 0 .../EndlessVendetta/{ => WeaponSystem}/WeaponItemClass.cpp | 0 .../Source/EndlessVendetta/{ => WeaponSystem}/WeaponItemClass.h | 0 8 files changed, 3 insertions(+), 3 deletions(-) rename EndlessVendetta/Source/EndlessVendetta/{ => WeaponSystem}/BaseWeaponClass.cpp (97%) rename EndlessVendetta/Source/EndlessVendetta/{ => WeaponSystem}/BaseWeaponClass.h (100%) rename EndlessVendetta/Source/EndlessVendetta/{ => WeaponSystem}/PistolClass.cpp (100%) rename EndlessVendetta/Source/EndlessVendetta/{ => WeaponSystem}/PistolClass.h (100%) rename EndlessVendetta/Source/EndlessVendetta/{ => WeaponSystem}/WeaponItemClass.cpp (100%) rename EndlessVendetta/Source/EndlessVendetta/{ => WeaponSystem}/WeaponItemClass.h (100%) diff --git a/EndlessVendetta/Content/StarterContent/Particles/P_Ambient_Dust.uasset b/EndlessVendetta/Content/StarterContent/Particles/P_Ambient_Dust.uasset index bd4bbca0..919b2265 100644 --- a/EndlessVendetta/Content/StarterContent/Particles/P_Ambient_Dust.uasset +++ b/EndlessVendetta/Content/StarterContent/Particles/P_Ambient_Dust.uasset @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:85646f10125ee134d64359d6de90f20c6aca59da9ccd8558c8fdcb450ec61cfd +oid sha256:c4e71b06a28a12efdd7d2eb8526af3f1821a01324d2a0e16feb3eb88bcf8c89f size 53268 diff --git a/EndlessVendetta/Source/EndlessVendetta/EndlessVendettaCharacter.h b/EndlessVendetta/Source/EndlessVendetta/EndlessVendettaCharacter.h index 357f0cfd..46f3e4c0 100644 --- a/EndlessVendetta/Source/EndlessVendetta/EndlessVendettaCharacter.h +++ b/EndlessVendetta/Source/EndlessVendetta/EndlessVendettaCharacter.h @@ -3,7 +3,7 @@ #pragma once #include "CoreMinimal.h" -#include "BaseWeaponClass.h" +#include "WeaponSystem/BaseWeaponClass.h" #include "GameFramework/Character.h" #include "InputActionValue.h" #include "Components/ArrowComponent.h" diff --git a/EndlessVendetta/Source/EndlessVendetta/BaseWeaponClass.cpp b/EndlessVendetta/Source/EndlessVendetta/WeaponSystem/BaseWeaponClass.cpp similarity index 97% rename from EndlessVendetta/Source/EndlessVendetta/BaseWeaponClass.cpp rename to EndlessVendetta/Source/EndlessVendetta/WeaponSystem/BaseWeaponClass.cpp index 35d57eb1..0d14f19d 100644 --- a/EndlessVendetta/Source/EndlessVendetta/BaseWeaponClass.cpp +++ b/EndlessVendetta/Source/EndlessVendetta/WeaponSystem/BaseWeaponClass.cpp @@ -2,7 +2,7 @@ #include "BaseWeaponClass.h" -#include "EndlessVendettaCharacter.h" +#include "EndlessVendetta/EndlessVendettaCharacter.h" #include "Components/CapsuleComponent.h" #include "Kismet/GameplayStatics.h" diff --git a/EndlessVendetta/Source/EndlessVendetta/BaseWeaponClass.h b/EndlessVendetta/Source/EndlessVendetta/WeaponSystem/BaseWeaponClass.h similarity index 100% rename from EndlessVendetta/Source/EndlessVendetta/BaseWeaponClass.h rename to EndlessVendetta/Source/EndlessVendetta/WeaponSystem/BaseWeaponClass.h diff --git a/EndlessVendetta/Source/EndlessVendetta/PistolClass.cpp b/EndlessVendetta/Source/EndlessVendetta/WeaponSystem/PistolClass.cpp similarity index 100% rename from EndlessVendetta/Source/EndlessVendetta/PistolClass.cpp rename to EndlessVendetta/Source/EndlessVendetta/WeaponSystem/PistolClass.cpp diff --git a/EndlessVendetta/Source/EndlessVendetta/PistolClass.h b/EndlessVendetta/Source/EndlessVendetta/WeaponSystem/PistolClass.h similarity index 100% rename from EndlessVendetta/Source/EndlessVendetta/PistolClass.h rename to EndlessVendetta/Source/EndlessVendetta/WeaponSystem/PistolClass.h diff --git a/EndlessVendetta/Source/EndlessVendetta/WeaponItemClass.cpp b/EndlessVendetta/Source/EndlessVendetta/WeaponSystem/WeaponItemClass.cpp similarity index 100% rename from EndlessVendetta/Source/EndlessVendetta/WeaponItemClass.cpp rename to EndlessVendetta/Source/EndlessVendetta/WeaponSystem/WeaponItemClass.cpp diff --git a/EndlessVendetta/Source/EndlessVendetta/WeaponItemClass.h b/EndlessVendetta/Source/EndlessVendetta/WeaponSystem/WeaponItemClass.h similarity index 100% rename from EndlessVendetta/Source/EndlessVendetta/WeaponItemClass.h rename to EndlessVendetta/Source/EndlessVendetta/WeaponSystem/WeaponItemClass.h From fa3e28f07526029b4b3a69ab4c0c5763924a271e Mon Sep 17 00:00:00 2001 From: Rafal Swierczek <34179rs@gmail.com> Date: Fri, 29 Sep 2023 16:59:03 +0100 Subject: [PATCH 024/112] Created Gadget System Test Level --- EndlessVendetta/Content/Levels/GadgetSystemTestLevel.umap | 3 +++ .../Content/StarterContent/Particles/P_Ambient_Dust.uasset | 2 +- 2 files changed, 4 insertions(+), 1 deletion(-) create mode 100644 EndlessVendetta/Content/Levels/GadgetSystemTestLevel.umap diff --git a/EndlessVendetta/Content/Levels/GadgetSystemTestLevel.umap b/EndlessVendetta/Content/Levels/GadgetSystemTestLevel.umap new file mode 100644 index 00000000..29995f18 --- /dev/null +++ b/EndlessVendetta/Content/Levels/GadgetSystemTestLevel.umap @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:9c379fa13b284e76785e0bca667577f04256220a612899c64cdfbbbaaf5b7c47 +size 99918 diff --git a/EndlessVendetta/Content/StarterContent/Particles/P_Ambient_Dust.uasset b/EndlessVendetta/Content/StarterContent/Particles/P_Ambient_Dust.uasset index 919b2265..ec55f660 100644 --- a/EndlessVendetta/Content/StarterContent/Particles/P_Ambient_Dust.uasset +++ b/EndlessVendetta/Content/StarterContent/Particles/P_Ambient_Dust.uasset @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:c4e71b06a28a12efdd7d2eb8526af3f1821a01324d2a0e16feb3eb88bcf8c89f +oid sha256:44be6c9290787003db24558430758031dda2c5017643f3439757379c9ec93051 size 53268 From fa8c6f681cfb6183da72451bbe62adb669e17d3a Mon Sep 17 00:00:00 2001 From: Rafal Swierczek <34179rs@gmail.com> Date: Fri, 29 Sep 2023 20:00:25 +0100 Subject: [PATCH 025/112] Implemented a Gadget Base and Manager Tested using test gadgets without any behaviour beyond uelogs --- .../Blueprints/BP_FirstPersonCharacter.uasset | 4 +- .../Input/Actions/IA_Combat.uasset | 3 + .../FirstPerson/Input/Actions/IA_Recon.uasset | 3 + .../FirstPerson/Input/IMC_Default.uasset | 4 +- .../Content/Gadgets/GM_GadgetManager.uasset | 3 + .../TestGadgets/CG_ExampleCombat.uasset | 3 + .../Gadgets/TestGadgets/IA_UseGadget.uasset | 3 + .../Gadgets/TestGadgets/IMC_Gadget.uasset | 3 + .../TestGadgets/RC_ExampleRecon.uasset | 3 + .../Content/Levels/GadgetSystemTestLevel.umap | 4 +- .../Particles/P_Ambient_Dust.uasset | 4 +- .../Props/MaterialSphere.uasset | 4 +- .../EndlessVendettaCharacter.cpp | 51 +++++++++- .../EndlessVendettaCharacter.h | 15 +++ .../GadgetSystem/CombatGadget.cpp | 5 + .../GadgetSystem/CombatGadget.h | 17 ++++ .../GadgetSystem/GadgetBase.cpp | 92 +++++++++++++++++++ .../EndlessVendetta/GadgetSystem/GadgetBase.h | 83 +++++++++++++++++ .../GadgetClasses/ExampleCombatClass.cpp | 34 +++++++ .../GadgetClasses/ExampleCombatClass.h | 24 +++++ .../GadgetClasses/ExampleReconClass.cpp | 35 +++++++ .../GadgetClasses/ExampleReconClass.h | 25 +++++ .../GadgetSystem/GadgetManager.cpp | 45 +++++++++ .../GadgetSystem/GadgetManager.h | 75 +++++++++++++++ .../GadgetSystem/ReconGadget.cpp | 5 + .../GadgetSystem/ReconGadget.h | 17 ++++ 26 files changed, 553 insertions(+), 11 deletions(-) create mode 100644 EndlessVendetta/Content/FirstPerson/Input/Actions/IA_Combat.uasset create mode 100644 EndlessVendetta/Content/FirstPerson/Input/Actions/IA_Recon.uasset create mode 100644 EndlessVendetta/Content/Gadgets/GM_GadgetManager.uasset create mode 100644 EndlessVendetta/Content/Gadgets/TestGadgets/CG_ExampleCombat.uasset create mode 100644 EndlessVendetta/Content/Gadgets/TestGadgets/IA_UseGadget.uasset create mode 100644 EndlessVendetta/Content/Gadgets/TestGadgets/IMC_Gadget.uasset create mode 100644 EndlessVendetta/Content/Gadgets/TestGadgets/RC_ExampleRecon.uasset create mode 100644 EndlessVendetta/Source/EndlessVendetta/GadgetSystem/CombatGadget.cpp create mode 100644 EndlessVendetta/Source/EndlessVendetta/GadgetSystem/CombatGadget.h create mode 100644 EndlessVendetta/Source/EndlessVendetta/GadgetSystem/GadgetBase.cpp create mode 100644 EndlessVendetta/Source/EndlessVendetta/GadgetSystem/GadgetBase.h create mode 100644 EndlessVendetta/Source/EndlessVendetta/GadgetSystem/GadgetClasses/ExampleCombatClass.cpp create mode 100644 EndlessVendetta/Source/EndlessVendetta/GadgetSystem/GadgetClasses/ExampleCombatClass.h create mode 100644 EndlessVendetta/Source/EndlessVendetta/GadgetSystem/GadgetClasses/ExampleReconClass.cpp create mode 100644 EndlessVendetta/Source/EndlessVendetta/GadgetSystem/GadgetClasses/ExampleReconClass.h create mode 100644 EndlessVendetta/Source/EndlessVendetta/GadgetSystem/GadgetManager.cpp create mode 100644 EndlessVendetta/Source/EndlessVendetta/GadgetSystem/GadgetManager.h create mode 100644 EndlessVendetta/Source/EndlessVendetta/GadgetSystem/ReconGadget.cpp create mode 100644 EndlessVendetta/Source/EndlessVendetta/GadgetSystem/ReconGadget.h diff --git a/EndlessVendetta/Content/FirstPerson/Blueprints/BP_FirstPersonCharacter.uasset b/EndlessVendetta/Content/FirstPerson/Blueprints/BP_FirstPersonCharacter.uasset index 3966ce80..a993997e 100644 --- a/EndlessVendetta/Content/FirstPerson/Blueprints/BP_FirstPersonCharacter.uasset +++ b/EndlessVendetta/Content/FirstPerson/Blueprints/BP_FirstPersonCharacter.uasset @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:d567687e62b21f8c8c96c320928de71d9c2de143c13ae51aa7484f74e0abe0bc -size 25589 +oid sha256:3192f3e53f9cde4484a9e8fd75184a71bf9ea1da5876fee94ceded15c274685a +size 26191 diff --git a/EndlessVendetta/Content/FirstPerson/Input/Actions/IA_Combat.uasset b/EndlessVendetta/Content/FirstPerson/Input/Actions/IA_Combat.uasset new file mode 100644 index 00000000..0562b346 --- /dev/null +++ b/EndlessVendetta/Content/FirstPerson/Input/Actions/IA_Combat.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:00f4ed84367ee429face15faba364bc15ee2d562096d2f845a3a3a6deb69dc3d +size 1360 diff --git a/EndlessVendetta/Content/FirstPerson/Input/Actions/IA_Recon.uasset b/EndlessVendetta/Content/FirstPerson/Input/Actions/IA_Recon.uasset new file mode 100644 index 00000000..aa886642 --- /dev/null +++ b/EndlessVendetta/Content/FirstPerson/Input/Actions/IA_Recon.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:fc86691c4b8b22416ce275bedd78c738d4b9ee2ddcb59ea7c130933c15a290dd +size 1355 diff --git a/EndlessVendetta/Content/FirstPerson/Input/IMC_Default.uasset b/EndlessVendetta/Content/FirstPerson/Input/IMC_Default.uasset index ea55777d..55abcd6c 100644 --- a/EndlessVendetta/Content/FirstPerson/Input/IMC_Default.uasset +++ b/EndlessVendetta/Content/FirstPerson/Input/IMC_Default.uasset @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:1006f1f08d6d5428a9c4689b38adff8ae38cb5a4b71ed3d8831ad0ef4da32363 -size 15167 +oid sha256:3af06cb5478091fcf55d1069e28395f32708276bd53cc5dce82faa2a2d1f822b +size 16317 diff --git a/EndlessVendetta/Content/Gadgets/GM_GadgetManager.uasset b/EndlessVendetta/Content/Gadgets/GM_GadgetManager.uasset new file mode 100644 index 00000000..40b371f1 --- /dev/null +++ b/EndlessVendetta/Content/Gadgets/GM_GadgetManager.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e321d507454cc656ecee8ffaa8ce7a439b7bc824731e2932c160289609e6fe14 +size 22647 diff --git a/EndlessVendetta/Content/Gadgets/TestGadgets/CG_ExampleCombat.uasset b/EndlessVendetta/Content/Gadgets/TestGadgets/CG_ExampleCombat.uasset new file mode 100644 index 00000000..154f762a --- /dev/null +++ b/EndlessVendetta/Content/Gadgets/TestGadgets/CG_ExampleCombat.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:5647c792435713b3b313153fd4a9985e6f0a69adca680e12c8e309ff35ee89b9 +size 29363 diff --git a/EndlessVendetta/Content/Gadgets/TestGadgets/IA_UseGadget.uasset b/EndlessVendetta/Content/Gadgets/TestGadgets/IA_UseGadget.uasset new file mode 100644 index 00000000..6ff56db6 --- /dev/null +++ b/EndlessVendetta/Content/Gadgets/TestGadgets/IA_UseGadget.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:612640a4303e85695119bd2552ac09775debae2b5f0e4c04317f4b7bcf45680b +size 1363 diff --git a/EndlessVendetta/Content/Gadgets/TestGadgets/IMC_Gadget.uasset b/EndlessVendetta/Content/Gadgets/TestGadgets/IMC_Gadget.uasset new file mode 100644 index 00000000..bab4f88c --- /dev/null +++ b/EndlessVendetta/Content/Gadgets/TestGadgets/IMC_Gadget.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:8c0a91a49b1c3887fd037daaa0033990d9f49625e36b765e196d5f5765a8638a +size 2477 diff --git a/EndlessVendetta/Content/Gadgets/TestGadgets/RC_ExampleRecon.uasset b/EndlessVendetta/Content/Gadgets/TestGadgets/RC_ExampleRecon.uasset new file mode 100644 index 00000000..88a1933b --- /dev/null +++ b/EndlessVendetta/Content/Gadgets/TestGadgets/RC_ExampleRecon.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:83a5888b61a03cd032e12e5ed42b2aa5f13ca709b06b50ed9726e7404419cfea +size 29907 diff --git a/EndlessVendetta/Content/Levels/GadgetSystemTestLevel.umap b/EndlessVendetta/Content/Levels/GadgetSystemTestLevel.umap index 29995f18..7ae1bbe3 100644 --- a/EndlessVendetta/Content/Levels/GadgetSystemTestLevel.umap +++ b/EndlessVendetta/Content/Levels/GadgetSystemTestLevel.umap @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:9c379fa13b284e76785e0bca667577f04256220a612899c64cdfbbbaaf5b7c47 -size 99918 +oid sha256:5187272f65c655c1bbca4f6a814ab42219fcb74a566fb68d72cc23cfa8b92999 +size 101262 diff --git a/EndlessVendetta/Content/StarterContent/Particles/P_Ambient_Dust.uasset b/EndlessVendetta/Content/StarterContent/Particles/P_Ambient_Dust.uasset index ec55f660..bf2e4391 100644 --- a/EndlessVendetta/Content/StarterContent/Particles/P_Ambient_Dust.uasset +++ b/EndlessVendetta/Content/StarterContent/Particles/P_Ambient_Dust.uasset @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:44be6c9290787003db24558430758031dda2c5017643f3439757379c9ec93051 -size 53268 +oid sha256:01ef616c7a8bd90cd1b7a13efb18a56f33346efbae51efa31f09804478b7621d +size 43456 diff --git a/EndlessVendetta/Content/StarterContent/Props/MaterialSphere.uasset b/EndlessVendetta/Content/StarterContent/Props/MaterialSphere.uasset index 56bddfc9..b2376d1b 100644 --- a/EndlessVendetta/Content/StarterContent/Props/MaterialSphere.uasset +++ b/EndlessVendetta/Content/StarterContent/Props/MaterialSphere.uasset @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:3a8777c01491888bba9f40eda9d2bed76a611f0e80f75917501ce69c1a321342 -size 47333 +oid sha256:f5a41a71ca352997a9dba7abac1a00868a31a8942a621cb7d614a00c0d6311de +size 47710 diff --git a/EndlessVendetta/Source/EndlessVendetta/EndlessVendettaCharacter.cpp b/EndlessVendetta/Source/EndlessVendetta/EndlessVendettaCharacter.cpp index 62ffd896..53174fdf 100644 --- a/EndlessVendetta/Source/EndlessVendetta/EndlessVendettaCharacter.cpp +++ b/EndlessVendetta/Source/EndlessVendetta/EndlessVendettaCharacter.cpp @@ -50,7 +50,11 @@ void AEndlessVendettaCharacter::BeginPlay() Subsystem->AddMappingContext(DefaultMappingContext, 0); } } - + AActor* GadgetManagerActor = GetWorld()->SpawnActor(GadgetManagerClass, GetActorLocation(), GetActorRotation()); + GadgetManager = Cast(GadgetManagerActor); + FAttachmentTransformRules AttachmentRules(EAttachmentRule::SnapToTarget, true); + GadgetManagerActor->AttachToComponent(GetRootComponent(), AttachmentRules); + GadgetManager->SpawnGadgets(GetRootComponent()); } //////////////////////////////////////////////////////////////////////////// Input @@ -70,6 +74,10 @@ void AEndlessVendettaCharacter::SetupPlayerInputComponent(class UInputComponent* //Looking EnhancedInputComponent->BindAction(LookAction, ETriggerEvent::Triggered, this, &AEndlessVendettaCharacter::Look); + // Gadget Toggling + EnhancedInputComponent->BindAction(ReconAction, ETriggerEvent::Started, this, &AEndlessVendettaCharacter::ToggleRecon); + EnhancedInputComponent->BindAction(CombatAction, ETriggerEvent::Started, this, &AEndlessVendettaCharacter::ToggleCombat); + //Weapon Switching EnhancedInputComponent->BindAction(EquipPrimaryWeapon, ETriggerEvent::Triggered, this, &AEndlessVendettaCharacter::EquipPrimary); EnhancedInputComponent->BindAction(EquipSecondaryWeapon, ETriggerEvent::Triggered, this, &AEndlessVendettaCharacter::EquipSecondary); @@ -79,6 +87,47 @@ void AEndlessVendettaCharacter::SetupPlayerInputComponent(class UInputComponent* } } +void AEndlessVendettaCharacter::ToggleRecon() +{ + if (IsValid(PrimaryWeapon)) EquipPrimary(); + if (IsValid(SecondaryWeapon)) EquipSecondary(); + + if (GadgetManager->IsReconEquipped()) + { + GadgetManager->TryToUnequipRecon(); + return; + } + + if (GadgetManager->IsCombatEquipped() && !GadgetManager->TryToUnequipCombat()) + { + // Do nothing if combat is equipped and can't be unequipped at this moment + return; + } + + GadgetManager->EquipRecon(); +} + +void AEndlessVendettaCharacter::ToggleCombat() +{ + if (IsValid(PrimaryWeapon)) EquipPrimary(); + if (IsValid(SecondaryWeapon)) EquipSecondary(); + + if (GadgetManager->IsCombatEquipped()) + { + GadgetManager->TryToUnequipCombat(); + return; + } + + if (GadgetManager->IsReconEquipped() && !GadgetManager->TryToUnequipRecon()) + { + // Do nothing if recon is equipped and can't be unequipped at the moment + return; + } + + GadgetManager->EquipCombat(); +} + + //When 1 is pressed it calls EquipPrimary void AEndlessVendettaCharacter::EquipPrimary() { diff --git a/EndlessVendetta/Source/EndlessVendetta/EndlessVendettaCharacter.h b/EndlessVendetta/Source/EndlessVendetta/EndlessVendettaCharacter.h index 46f3e4c0..cf41bef6 100644 --- a/EndlessVendetta/Source/EndlessVendetta/EndlessVendettaCharacter.h +++ b/EndlessVendetta/Source/EndlessVendetta/EndlessVendettaCharacter.h @@ -7,6 +7,7 @@ #include "GameFramework/Character.h" #include "InputActionValue.h" #include "Components/ArrowComponent.h" +#include "GadgetSystem/GadgetManager.h" #include "EndlessVendettaCharacter.generated.h" class UWeaponInventory; @@ -42,6 +43,12 @@ class AEndlessVendettaCharacter : public ACharacter UPROPERTY(EditAnywhere, BlueprintReadOnly, Category=Input, meta=(AllowPrivateAccess = "true")) class UInputAction* MoveAction; + // Gadget Actions + UPROPERTY(EditAnywhere, BlueprintReadOnly, Category=Input, meta=(AllowPrivateAccess = "true")) + UInputAction* ReconAction; + UPROPERTY(EditAnywhere, BlueprintReadOnly, Category=Input, meta=(AllowPrivateAccess = "true")) + UInputAction* CombatAction; + /** Weapon Equip Action */ UPROPERTY(EditAnywhere, BlueprintReadOnly, Category=Input, meta=(AllowPrivateAccess = "true")) class UInputAction* EquipPrimaryWeapon; @@ -61,6 +68,10 @@ public: protected: virtual void BeginPlay(); + UPROPERTY(EditDefaultsOnly, Category = "Gadget") + TSubclassOf GadgetManagerClass; + AGadgetManager* GadgetManager; + public: /** Look Input Action */ @@ -99,6 +110,10 @@ protected: /** Called for looking input */ void Look(const FInputActionValue& Value); + + void ToggleRecon(); + + void ToggleCombat(); void EquipPrimary(); diff --git a/EndlessVendetta/Source/EndlessVendetta/GadgetSystem/CombatGadget.cpp b/EndlessVendetta/Source/EndlessVendetta/GadgetSystem/CombatGadget.cpp new file mode 100644 index 00000000..55976a01 --- /dev/null +++ b/EndlessVendetta/Source/EndlessVendetta/GadgetSystem/CombatGadget.cpp @@ -0,0 +1,5 @@ +// Fill out your copyright notice in the Description page of Project Settings. + + +#include "CombatGadget.h" + diff --git a/EndlessVendetta/Source/EndlessVendetta/GadgetSystem/CombatGadget.h b/EndlessVendetta/Source/EndlessVendetta/GadgetSystem/CombatGadget.h new file mode 100644 index 00000000..7175c889 --- /dev/null +++ b/EndlessVendetta/Source/EndlessVendetta/GadgetSystem/CombatGadget.h @@ -0,0 +1,17 @@ +// Fill out your copyright notice in the Description page of Project Settings. + +#pragma once + +#include "CoreMinimal.h" +#include "GadgetBase.h" +#include "CombatGadget.generated.h" + +/** + * + */ +UCLASS() +class ENDLESSVENDETTA_API ACombatGadget : public AGadgetBase +{ + GENERATED_BODY() + +}; diff --git a/EndlessVendetta/Source/EndlessVendetta/GadgetSystem/GadgetBase.cpp b/EndlessVendetta/Source/EndlessVendetta/GadgetSystem/GadgetBase.cpp new file mode 100644 index 00000000..107df86f --- /dev/null +++ b/EndlessVendetta/Source/EndlessVendetta/GadgetSystem/GadgetBase.cpp @@ -0,0 +1,92 @@ +// Fill out your copyright notice in the Description page of Project Settings. + + +#include "GadgetBase.h" + +#include "EnhancedInputComponent.h" +#include "EnhancedInputSubsystems.h" + +// Sets default values +AGadgetBase::AGadgetBase() +{ + // Set this actor to call Tick() every frame. You can turn this off to improve performance if you don't need it. + PrimaryActorTick.bCanEverTick = true; + +} + +// Called when the game starts or when spawned +void AGadgetBase::BeginPlay() +{ + Super::BeginPlay(); + + PlayerController = GetWorld()->GetFirstPlayerController(); +} + +// Called every frame +void AGadgetBase::Tick(float DeltaTime) +{ + Super::Tick(DeltaTime); + +} + +void AGadgetBase::Equip() +{ + SetActorRelativeLocation(EquippedOffset); + Equipped = true; + + + + UEnhancedInputLocalPlayerSubsystem* Subsystem = ULocalPlayer::GetSubsystem(PlayerController->GetLocalPlayer()); + Subsystem->AddMappingContext(GadgetMappingContext, 2); + UEnhancedInputComponent* EnhancedInputComponent = Cast(PlayerController->InputComponent); + EnhancedInputComponent->BindAction(ActivateAction, ETriggerEvent::Started, this, &AGadgetBase::Activate); +} + +bool AGadgetBase::Unequip() +{ + if (GadgetInUse) return false; + + SetActorRelativeLocation(UnequippedOffset); + Equipped = false; + + UEnhancedInputLocalPlayerSubsystem* Subsystem = ULocalPlayer::GetSubsystem(PlayerController->GetLocalPlayer()); + Subsystem->RemoveMappingContext(GadgetMappingContext); + UEnhancedInputComponent* EnhancedInputComponent = Cast(PlayerController->InputComponent); + EnhancedInputComponent->ClearActionBindings(); + + return true; +} + +void AGadgetBase::Activate() +{ + StartInUseTimer(); +} + +void AGadgetBase::FinishedUsing() +{ + UE_LOG(LogTemp, Warning, TEXT("Gadget is no longer being used")); + + GadgetInUse = false; + InUseHandle.Invalidate(); + + StartGadgetCooldown(); +} + +// -------------- Timers -------------- + +void AGadgetBase::StartGadgetCooldown() +{ + GadgetOnCooldown = true; + GetWorld()->GetTimerManager().SetTimer(CooldownHandle, this, &AGadgetBase::ReadyGadget, CooldownTime, false); +} + +void AGadgetBase::StartInUseTimer() +{ + UE_LOG(LogTemp, Warning, TEXT("Gadget In Use Timer Started")); + + GadgetInUse = true; + GetWorld()->GetTimerManager().SetTimer(InUseHandle, this, &AGadgetBase::FinishedUsing, GadgetMaxUptime, false); +} + + + diff --git a/EndlessVendetta/Source/EndlessVendetta/GadgetSystem/GadgetBase.h b/EndlessVendetta/Source/EndlessVendetta/GadgetSystem/GadgetBase.h new file mode 100644 index 00000000..37f5190e --- /dev/null +++ b/EndlessVendetta/Source/EndlessVendetta/GadgetSystem/GadgetBase.h @@ -0,0 +1,83 @@ +// Fill out your copyright notice in the Description page of Project Settings. + +#pragma once + +#include "CoreMinimal.h" +#include "EnhancedInputSubsystemInterface.h" +#include "GameFramework/Actor.h" +#include "GadgetBase.generated.h" + +UCLASS() +class ENDLESSVENDETTA_API AGadgetBase : public AActor +{ + GENERATED_BODY() + + APlayerController* PlayerController; + + FTimerHandle CooldownHandle; + void StartGadgetCooldown(); + bool GadgetOnCooldown = false; + + FTimerHandle InUseHandle; + void StartInUseTimer(); + bool GadgetInUse = false; + + void ReadyGadget() + { + UE_LOG(LogTemp, Warning, TEXT("Gadget is now ready to be used again")); + GadgetOnCooldown = false; + } + +protected: + UPROPERTY(EditDefaultsOnly, Category = "Gadget") + FVector EquippedOffset = FVector(0, 0, 0); + + UPROPERTY(EditDefaultsOnly, CAtegory = "Gadget") + FVector UnequippedOffset = FVector(0, 0, -1000); + + UPROPERTY(EditDefaultsOnly, cATEGORY = "Gadget") + float GadgetMaxUptime; + + UPROPERTY(EditDefaultsOnly, Category = "Gadget") + float CooldownTime; + + UPROPERTY(EditDefaultsOnly, Category = "Gadget") + UInputMappingContext* GadgetMappingContext; + + UPROPERTY(EditDefaultsOnly, Category = "Gadget") + UInputAction* ActivateAction; + + // Used by child classes to run custom gadget behaviour + virtual void Activate(); + + // Starts Cooldown and automatically unequips gadget, used by child classes to implement custom behaviour + virtual void FinishedUsing(); + + bool GadgetCantBeUsed() + { + return GadgetOnCooldown|| GadgetInUse; + } + + // Called when the game starts or when spawned + virtual void BeginPlay() override; + +public: + bool Equipped = false; + + void Equip(); + + // Return true if unequip succeeds + bool Unequip(); + + FVector GetUnequippedOffset() + { + return UnequippedOffset; + } + + // Sets default values for this actor's properties + AGadgetBase(); + + // Called every frame + virtual void Tick(float DeltaTime) override; + +}; diff --git a/EndlessVendetta/Source/EndlessVendetta/GadgetSystem/GadgetClasses/ExampleCombatClass.cpp b/EndlessVendetta/Source/EndlessVendetta/GadgetSystem/GadgetClasses/ExampleCombatClass.cpp new file mode 100644 index 00000000..4e759791 --- /dev/null +++ b/EndlessVendetta/Source/EndlessVendetta/GadgetSystem/GadgetClasses/ExampleCombatClass.cpp @@ -0,0 +1,34 @@ +// Fill out your copyright notice in the Description page of Project Settings. + + +#include "ExampleCombatClass.h" + +void AExampleCombatClass::BeginPlay() +{ + Super::BeginPlay(); + + SetActorTickEnabled(false); +} + + +void AExampleCombatClass::Tick(float DeltaSeconds) +{ + Super::Tick(DeltaSeconds); + + UE_LOG(LogTemp, Warning, TEXT("Example Combat is being used...")); +} + +void AExampleCombatClass::Activate() +{ + if (GadgetCantBeUsed()) return; + + Super::Activate(); + SetActorTickEnabled(true); +} + +void AExampleCombatClass::FinishedUsing() +{ + SetActorTickEnabled(false); + + Super::FinishedUsing(); +} \ No newline at end of file diff --git a/EndlessVendetta/Source/EndlessVendetta/GadgetSystem/GadgetClasses/ExampleCombatClass.h b/EndlessVendetta/Source/EndlessVendetta/GadgetSystem/GadgetClasses/ExampleCombatClass.h new file mode 100644 index 00000000..d53cfefb --- /dev/null +++ b/EndlessVendetta/Source/EndlessVendetta/GadgetSystem/GadgetClasses/ExampleCombatClass.h @@ -0,0 +1,24 @@ +// Fill out your copyright notice in the Description page of Project Settings. + +#pragma once + +#include "CoreMinimal.h" +#include "EndlessVendetta/GadgetSystem/CombatGadget.h" +#include "ExampleCombatClass.generated.h" + +/** + * + */ +UCLASS() +class ENDLESSVENDETTA_API AExampleCombatClass : public ACombatGadget +{ + GENERATED_BODY() + + virtual void BeginPlay() override; + + virtual void Tick(float DeltaSeconds) override; + + virtual void Activate() override; + + virtual void FinishedUsing() override; +}; diff --git a/EndlessVendetta/Source/EndlessVendetta/GadgetSystem/GadgetClasses/ExampleReconClass.cpp b/EndlessVendetta/Source/EndlessVendetta/GadgetSystem/GadgetClasses/ExampleReconClass.cpp new file mode 100644 index 00000000..cfa574cf --- /dev/null +++ b/EndlessVendetta/Source/EndlessVendetta/GadgetSystem/GadgetClasses/ExampleReconClass.cpp @@ -0,0 +1,35 @@ +// Fill out your copyright notice in the Description page of Project Settings. + + +#include "ExampleReconClass.h" + +void AExampleReconClass::BeginPlay() +{ + Super::BeginPlay(); + SetActorTickEnabled(false); +} + + +void AExampleReconClass::Tick(float DeltaSeconds) +{ + Super::Tick(DeltaSeconds); + + UE_LOG(LogTemp, Warning, TEXT("Example Recon is being used...")); +} + +void AExampleReconClass::Activate() +{ + if (GadgetCantBeUsed()) return; + + Super::Activate(); + SetActorTickEnabled(true); +} + +void AExampleReconClass::FinishedUsing() +{ + SetActorTickEnabled(false); + + Super::FinishedUsing(); +} + + diff --git a/EndlessVendetta/Source/EndlessVendetta/GadgetSystem/GadgetClasses/ExampleReconClass.h b/EndlessVendetta/Source/EndlessVendetta/GadgetSystem/GadgetClasses/ExampleReconClass.h new file mode 100644 index 00000000..7abc52af --- /dev/null +++ b/EndlessVendetta/Source/EndlessVendetta/GadgetSystem/GadgetClasses/ExampleReconClass.h @@ -0,0 +1,25 @@ +// Fill out your copyright notice in the Description page of Project Settings. + +#pragma once + +#include "CoreMinimal.h" +#include "EndlessVendetta/GadgetSystem/ReconGadget.h" +#include "ExampleReconClass.generated.h" + +/** + * + */ +UCLASS() +class ENDLESSVENDETTA_API AExampleReconClass : public AReconGadget +{ + GENERATED_BODY() + + virtual void BeginPlay() override; + + virtual void Tick(float DeltaSeconds) override; + + virtual void Activate() override; + + virtual void FinishedUsing() override; + +}; diff --git a/EndlessVendetta/Source/EndlessVendetta/GadgetSystem/GadgetManager.cpp b/EndlessVendetta/Source/EndlessVendetta/GadgetSystem/GadgetManager.cpp new file mode 100644 index 00000000..6e5a8ee4 --- /dev/null +++ b/EndlessVendetta/Source/EndlessVendetta/GadgetSystem/GadgetManager.cpp @@ -0,0 +1,45 @@ +// Fill out your copyright notice in the Description page of Project Settings. + + +#include "GadgetManager.h" + +// Sets default values +AGadgetManager::AGadgetManager() +{ + // Set this actor to call Tick() every frame. You can turn this off to improve performance if you don't need it. + PrimaryActorTick.bCanEverTick = true; + +} + +// Called when the game starts or when spawned +void AGadgetManager::BeginPlay() +{ + Super::BeginPlay(); + +} + +// Called every frame +void AGadgetManager::Tick(float DeltaTime) +{ + Super::Tick(DeltaTime); + +} + +void AGadgetManager::SpawnGadgets(USceneComponent* PlayersRootComponent) +{ + if (!IsValid(ReconClass) || !IsValid(CombatClass)) UE_LOG(LogTemp, Fatal, TEXT("Recon or Combat class hasn't been set")); + + FActorSpawnParameters SpawnParams; + SpawnParams.SpawnCollisionHandlingOverride = ESpawnActorCollisionHandlingMethod::AlwaysSpawn; + const FAttachmentTransformRules AttachmentRules(EAttachmentRule::SnapToTarget, true); + + AActor* SpawnedActor = GetWorld()->SpawnActor(ReconClass, GetActorLocation(), GetActorRotation(), SpawnParams); + ReconGadget = Cast(SpawnedActor); + SpawnedActor->AttachToComponent(PlayersRootComponent, AttachmentRules); + SpawnedActor->SetActorRelativeLocation(ReconGadget->GetUnequippedOffset()); + + SpawnedActor = GetWorld()->SpawnActor(CombatClass, GetActorLocation(), GetActorRotation(), SpawnParams); + CombatGadget = Cast(SpawnedActor); + SpawnedActor->AttachToComponent(PlayersRootComponent, AttachmentRules); + SpawnedActor->SetActorRelativeLocation(CombatGadget->GetUnequippedOffset()); +} diff --git a/EndlessVendetta/Source/EndlessVendetta/GadgetSystem/GadgetManager.h b/EndlessVendetta/Source/EndlessVendetta/GadgetSystem/GadgetManager.h new file mode 100644 index 00000000..837c1222 --- /dev/null +++ b/EndlessVendetta/Source/EndlessVendetta/GadgetSystem/GadgetManager.h @@ -0,0 +1,75 @@ +// Fill out your copyright notice in the Description page of Project Settings. + +#pragma once + +#include "CoreMinimal.h" +#include "CombatGadget.h" +#include "ReconGadget.h" +#include "GameFramework/Actor.h" +#include "GadgetManager.generated.h" + +UCLASS() +class ENDLESSVENDETTA_API AGadgetManager : public AActor +{ + GENERATED_BODY() + + AReconGadget* ReconGadget; + ACombatGadget* CombatGadget; + +protected: + UPROPERTY(EditDefaultsOnly, Category = "Gadget") + TSubclassOf ReconClass; + UPROPERTY(EditDefaultsOnly, Category = "Gadget") + TSubclassOf CombatClass; + + // Called when the game starts or when spawned + virtual void BeginPlay() override; + +public: + void SpawnGadgets(USceneComponent* PlayersRootComponent); + + // Sets default values for this actor's properties + AGadgetManager(); + + // Called every frame + virtual void Tick(float DeltaTime) override; + + void EquipRecon() + { + ReconGadget->Equip(); + } + + void EquipCombat() + { + CombatGadget->Equip(); + } + + bool IsReconEquipped() + { + return ReconGadget->Equipped; + } + + bool IsCombatEquipped() + { + return CombatGadget->Equipped; + } + + bool TryToUnequipRecon() + { + if (ReconGadget->Equipped) + { + return ReconGadget->Unequip(); + } + return false; + } + + bool TryToUnequipCombat() + { + if (CombatGadget->Equipped) + { + return CombatGadget->Unequip(); + } + return false; + } + +}; diff --git a/EndlessVendetta/Source/EndlessVendetta/GadgetSystem/ReconGadget.cpp b/EndlessVendetta/Source/EndlessVendetta/GadgetSystem/ReconGadget.cpp new file mode 100644 index 00000000..03c10623 --- /dev/null +++ b/EndlessVendetta/Source/EndlessVendetta/GadgetSystem/ReconGadget.cpp @@ -0,0 +1,5 @@ +// Fill out your copyright notice in the Description page of Project Settings. + + +#include "ReconGadget.h" + diff --git a/EndlessVendetta/Source/EndlessVendetta/GadgetSystem/ReconGadget.h b/EndlessVendetta/Source/EndlessVendetta/GadgetSystem/ReconGadget.h new file mode 100644 index 00000000..7122d3bb --- /dev/null +++ b/EndlessVendetta/Source/EndlessVendetta/GadgetSystem/ReconGadget.h @@ -0,0 +1,17 @@ +// Fill out your copyright notice in the Description page of Project Settings. + +#pragma once + +#include "CoreMinimal.h" +#include "GadgetBase.h" +#include "ReconGadget.generated.h" + +/** + * + */ +UCLASS() +class ENDLESSVENDETTA_API AReconGadget : public AGadgetBase +{ + GENERATED_BODY() + +}; From 6cf1fc1869a03b5edb7ed0fdeb39a30c8e92aeae Mon Sep 17 00:00:00 2001 From: Rafal Swierczek <34179rs@gmail.com> Date: Sat, 30 Sep 2023 11:58:53 +0100 Subject: [PATCH 026/112] Implemented Unequipping Gadgets when Equipping Gun --- .../Gadgets/TestGadgets/RC_ExampleRecon.uasset | 2 +- .../StarterContent/Architecture/Floor_400x400.uasset | 4 ++-- .../StarterContent/Props/MaterialSphere.uasset | 4 ++-- .../EndlessVendetta/EndlessVendettaCharacter.cpp | 12 ++++++++++++ 4 files changed, 17 insertions(+), 5 deletions(-) diff --git a/EndlessVendetta/Content/Gadgets/TestGadgets/RC_ExampleRecon.uasset b/EndlessVendetta/Content/Gadgets/TestGadgets/RC_ExampleRecon.uasset index 88a1933b..484c5c92 100644 --- a/EndlessVendetta/Content/Gadgets/TestGadgets/RC_ExampleRecon.uasset +++ b/EndlessVendetta/Content/Gadgets/TestGadgets/RC_ExampleRecon.uasset @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:83a5888b61a03cd032e12e5ed42b2aa5f13ca709b06b50ed9726e7404419cfea +oid sha256:1c4186b567ed68cae389b7f52baee361aec478d019d5b727ecc6132b12c8d02b size 29907 diff --git a/EndlessVendetta/Content/StarterContent/Architecture/Floor_400x400.uasset b/EndlessVendetta/Content/StarterContent/Architecture/Floor_400x400.uasset index c2a34afc..8a892c7b 100644 --- a/EndlessVendetta/Content/StarterContent/Architecture/Floor_400x400.uasset +++ b/EndlessVendetta/Content/StarterContent/Architecture/Floor_400x400.uasset @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:4c0ecf0ac0702cc2bd355ec050232a61c49e10f102448efbeb735a51824adef6 -size 14948 +oid sha256:4bad1f067f8be7d35d0fdde8fb883c0f0ec45cedecadc67f58f2f0d9b4e484fb +size 14831 diff --git a/EndlessVendetta/Content/StarterContent/Props/MaterialSphere.uasset b/EndlessVendetta/Content/StarterContent/Props/MaterialSphere.uasset index b2376d1b..56bddfc9 100644 --- a/EndlessVendetta/Content/StarterContent/Props/MaterialSphere.uasset +++ b/EndlessVendetta/Content/StarterContent/Props/MaterialSphere.uasset @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:f5a41a71ca352997a9dba7abac1a00868a31a8942a621cb7d614a00c0d6311de -size 47710 +oid sha256:3a8777c01491888bba9f40eda9d2bed76a611f0e80f75917501ce69c1a321342 +size 47333 diff --git a/EndlessVendetta/Source/EndlessVendetta/EndlessVendettaCharacter.cpp b/EndlessVendetta/Source/EndlessVendetta/EndlessVendettaCharacter.cpp index 53174fdf..1f197632 100644 --- a/EndlessVendetta/Source/EndlessVendetta/EndlessVendettaCharacter.cpp +++ b/EndlessVendetta/Source/EndlessVendetta/EndlessVendettaCharacter.cpp @@ -131,6 +131,12 @@ void AEndlessVendettaCharacter::ToggleCombat() //When 1 is pressed it calls EquipPrimary void AEndlessVendettaCharacter::EquipPrimary() { + // Marcel I respect you, like you and what not, please for the love of god don't touch these two guard clauses + ///////////////////////////////////////////////////////////////////////////////////////////////////////////// + if (GadgetManager->IsReconEquipped() && !GadgetManager->TryToUnequipRecon()) return;///////////////////////// + if (GadgetManager->IsCombatEquipped() && !GadgetManager->TryToUnequipCombat()) return;/////////////////////// + ///////////////////////////////////////////////////////////////////////////////////////////////////////////// + //If primary weapon is not there but secondary weapon is it will call equipSecondary. //EquipSecondary checks and sees that secondary is there so it will call to destroy itself //Code goes back and sees primary weapon is not there anymore and spawns it in. @@ -162,6 +168,12 @@ void AEndlessVendettaCharacter::EquipPrimary() void AEndlessVendettaCharacter::EquipSecondary() { + // Marcel I respect you, like you and what not, please for the love of god don't touch these two guard clauses + ///////////////////////////////////////////////////////////////////////////////////////////////////////////// + if (GadgetManager->IsReconEquipped() && !GadgetManager->TryToUnequipRecon()) return;///////////////////////// + if (GadgetManager->IsCombatEquipped() && !GadgetManager->TryToUnequipCombat()) return;/////////////////////// + ///////////////////////////////////////////////////////////////////////////////////////////////////////////// + if (!IsValid(SecondaryWeapon)) { if (IsValid(PrimaryWeapon)) EquipPrimary(); From f2215f05e4c6bc7bde67adac53d49e0644233a17 Mon Sep 17 00:00:00 2001 From: Rafal Swierczek <34179rs@gmail.com> Date: Sat, 30 Sep 2023 16:05:28 +0100 Subject: [PATCH 027/112] Fixed Missing Ref when Quickly Switching Equipment --- .../TestGadgets/RC_ExampleRecon.uasset | 4 +- .../Architecture/Floor_400x400.uasset | 4 +- .../Particles/P_Ambient_Dust.uasset | 4 +- .../EndlessVendettaCharacter.cpp | 132 ++++++++++++------ .../GadgetSystem/GadgetManager.h | 10 +- 5 files changed, 96 insertions(+), 58 deletions(-) diff --git a/EndlessVendetta/Content/Gadgets/TestGadgets/RC_ExampleRecon.uasset b/EndlessVendetta/Content/Gadgets/TestGadgets/RC_ExampleRecon.uasset index 484c5c92..7630574b 100644 --- a/EndlessVendetta/Content/Gadgets/TestGadgets/RC_ExampleRecon.uasset +++ b/EndlessVendetta/Content/Gadgets/TestGadgets/RC_ExampleRecon.uasset @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:1c4186b567ed68cae389b7f52baee361aec478d019d5b727ecc6132b12c8d02b -size 29907 +oid sha256:0d162dc461b9db3b93d49bf5d7abe2a0b1a96faba906ab9faef43bb9fed45ca5 +size 29969 diff --git a/EndlessVendetta/Content/StarterContent/Architecture/Floor_400x400.uasset b/EndlessVendetta/Content/StarterContent/Architecture/Floor_400x400.uasset index 8a892c7b..c2a34afc 100644 --- a/EndlessVendetta/Content/StarterContent/Architecture/Floor_400x400.uasset +++ b/EndlessVendetta/Content/StarterContent/Architecture/Floor_400x400.uasset @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:4bad1f067f8be7d35d0fdde8fb883c0f0ec45cedecadc67f58f2f0d9b4e484fb -size 14831 +oid sha256:4c0ecf0ac0702cc2bd355ec050232a61c49e10f102448efbeb735a51824adef6 +size 14948 diff --git a/EndlessVendetta/Content/StarterContent/Particles/P_Ambient_Dust.uasset b/EndlessVendetta/Content/StarterContent/Particles/P_Ambient_Dust.uasset index bf2e4391..16ecae3d 100644 --- a/EndlessVendetta/Content/StarterContent/Particles/P_Ambient_Dust.uasset +++ b/EndlessVendetta/Content/StarterContent/Particles/P_Ambient_Dust.uasset @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:01ef616c7a8bd90cd1b7a13efb18a56f33346efbae51efa31f09804478b7621d -size 43456 +oid sha256:64419a367bb9a6ffc554aad1ea3a6c988438aa4ff5d6f712c1702664d5fb9e0f +size 53268 diff --git a/EndlessVendetta/Source/EndlessVendetta/EndlessVendettaCharacter.cpp b/EndlessVendetta/Source/EndlessVendetta/EndlessVendettaCharacter.cpp index 1f197632..b54d9bab 100644 --- a/EndlessVendetta/Source/EndlessVendetta/EndlessVendettaCharacter.cpp +++ b/EndlessVendetta/Source/EndlessVendetta/EndlessVendettaCharacter.cpp @@ -131,76 +131,120 @@ void AEndlessVendettaCharacter::ToggleCombat() //When 1 is pressed it calls EquipPrimary void AEndlessVendettaCharacter::EquipPrimary() { + if (IsValid(PrimaryWeapon)) + { + PrimaryWeapon->Destroy(); + PrimaryWeapon = nullptr; + bHasRifle = false; + return; + } + + if (IsValid(SecondaryWeapon)) EquipSecondary(); + // Marcel I respect you, like you and what not, please for the love of god don't touch these two guard clauses ///////////////////////////////////////////////////////////////////////////////////////////////////////////// if (GadgetManager->IsReconEquipped() && !GadgetManager->TryToUnequipRecon()) return;///////////////////////// if (GadgetManager->IsCombatEquipped() && !GadgetManager->TryToUnequipCombat()) return;/////////////////////// ///////////////////////////////////////////////////////////////////////////////////////////////////////////// + + FActorSpawnParameters spawnParams; + spawnParams.SpawnCollisionHandlingOverride = ESpawnActorCollisionHandlingMethod::AlwaysSpawn; + FAttachmentTransformRules AttachmentRules(EAttachmentRule::SnapToTarget, true); + + bHasRifle = true; + //Creating a new actor object called PrimaryWeapon that is based off primaryweaponClass + AActor* PrimaryWeaponActor = GetWorld()->SpawnActor(PrimaryWeaponClass, spawnParams); + PrimaryWeaponActor->AttachToComponent(Mesh1P, AttachmentRules, FName("GripPoint")); + //Changing PrimaryWeaponActor to ABaseWeaponClass type instead of actor and storing it into PrimaryWeapon which is a ABaseClass Object + //We do this because we need to check if PrimaryWeapon is equipped and we want primaryweapon to be ABaseWeapon type and not a generic AActor + PrimaryWeapon = Cast(PrimaryWeaponActor); //If primary weapon is not there but secondary weapon is it will call equipSecondary. //EquipSecondary checks and sees that secondary is there so it will call to destroy itself //Code goes back and sees primary weapon is not there anymore and spawns it in. //Same thing for the EquipSecondary() - if (!IsValid(PrimaryWeapon)) - { - if (IsValid(SecondaryWeapon)) EquipSecondary(); - UE_LOG(LogTemp, Display, TEXT("Primary equipped")); - bHasRifle = true; - FActorSpawnParameters spawnParams; - spawnParams.SpawnCollisionHandlingOverride = ESpawnActorCollisionHandlingMethod::AlwaysSpawn; - FAttachmentTransformRules AttachmentRules(EAttachmentRule::SnapToTarget, true); - //Creating a new actor object called PrimaryWeapon that is based off primaryweaponClass - AActor* PrimaryWeaponActor = GetWorld()->SpawnActor(PrimaryWeaponClass, spawnParams); - PrimaryWeaponActor->AttachToComponent(Mesh1P, AttachmentRules, FName("GripPoint")); - //Changing PrimaryWeaponActor to ABaseWeaponClass type instead of actor and storing it into PrimaryWeapon which is a ABaseClass Object - //We do this because we need to check if PrimaryWeapon is equipped and we want primaryweapon to be ABaseWeapon type and not a generic AActor - PrimaryWeapon = Cast(PrimaryWeaponActor); - - } - else if (IsValid(PrimaryWeapon)) - { - PrimaryWeapon->Destroy(); - bHasRifle = false; - - } + + // if (!IsValid(PrimaryWeapon)) + // { + // if (IsValid(SecondaryWeapon)) EquipSecondary(); + // + // UE_LOG(LogTemp, Display, TEXT("Primary equipped")); + // bHasRifle = true; + // FActorSpawnParameters spawnParams; + // spawnParams.SpawnCollisionHandlingOverride = ESpawnActorCollisionHandlingMethod::AlwaysSpawn; + // FAttachmentTransformRules AttachmentRules(EAttachmentRule::SnapToTarget, true); + // //Creating a new actor object called PrimaryWeapon that is based off primaryweaponClass + // AActor* PrimaryWeaponActor = GetWorld()->SpawnActor(PrimaryWeaponClass, spawnParams); + // PrimaryWeaponActor->AttachToComponent(Mesh1P, AttachmentRules, FName("GripPoint")); + // //Changing PrimaryWeaponActor to ABaseWeaponClass type instead of actor and storing it into PrimaryWeapon which is a ABaseClass Object + // //We do this because we need to check if PrimaryWeapon is equipped and we want primaryweapon to be ABaseWeapon type and not a generic AActor + // PrimaryWeapon = Cast(PrimaryWeaponActor); + // + // } + // else if (IsValid(PrimaryWeapon)) + // { + // PrimaryWeapon->Destroy(); + // bHasRifle = false; + // } } void AEndlessVendettaCharacter::EquipSecondary() { + if (IsValid(SecondaryWeapon)) + { + SecondaryWeapon->Destroy(); + SecondaryWeapon = nullptr; + bHasRifle = false; + return; + } + + if (IsValid(PrimaryWeapon)) EquipPrimary(); + // Marcel I respect you, like you and what not, please for the love of god don't touch these two guard clauses ///////////////////////////////////////////////////////////////////////////////////////////////////////////// if (GadgetManager->IsReconEquipped() && !GadgetManager->TryToUnequipRecon()) return;///////////////////////// if (GadgetManager->IsCombatEquipped() && !GadgetManager->TryToUnequipCombat()) return;/////////////////////// ///////////////////////////////////////////////////////////////////////////////////////////////////////////// - - if (!IsValid(SecondaryWeapon)) - { - if (IsValid(PrimaryWeapon)) EquipPrimary(); - UE_LOG(LogTemp, Display, TEXT("Secondary equipped")); - bHasRifle = true; - FActorSpawnParameters spawnParams; - spawnParams.SpawnCollisionHandlingOverride = ESpawnActorCollisionHandlingMethod::AlwaysSpawn; - FAttachmentTransformRules AttachmentRules(EAttachmentRule::SnapToTarget, true); - AActor* SecondaryWeaponActor = GetWorld()->SpawnActor(SecondaryWeaponClass, spawnParams); - SecondaryWeaponActor->AttachToComponent(Mesh1P, AttachmentRules, FName("GripPoint")); - SecondaryWeapon = Cast(SecondaryWeaponActor); - } - else if (IsValid(SecondaryWeapon)) - { - SecondaryWeapon->Destroy(); - bHasRifle = false; - } + FActorSpawnParameters spawnParams; + spawnParams.SpawnCollisionHandlingOverride = ESpawnActorCollisionHandlingMethod::AlwaysSpawn; + FAttachmentTransformRules AttachmentRules(EAttachmentRule::SnapToTarget, true); + + bHasRifle = true; + AActor* SecondaryWeaponActor = GetWorld()->SpawnActor(SecondaryWeaponClass, spawnParams); + SecondaryWeaponActor->AttachToComponent(Mesh1P, AttachmentRules, FName("GripPoint")); + SecondaryWeapon = Cast(SecondaryWeaponActor); + + // if (!IsValid(SecondaryWeapon)) + // { + // if (IsValid(PrimaryWeapon)) EquipPrimary(); + // + // UE_LOG(LogTemp, Display, TEXT("Secondary equipped")); + // bHasRifle = true; + // FActorSpawnParameters spawnParams; + // spawnParams.SpawnCollisionHandlingOverride = ESpawnActorCollisionHandlingMethod::AlwaysSpawn; + // FAttachmentTransformRules AttachmentRules(EAttachmentRule::SnapToTarget, true); + // AActor* SecondaryWeaponActor = GetWorld()->SpawnActor(SecondaryWeaponClass, spawnParams); + // SecondaryWeaponActor->AttachToComponent(Mesh1P, AttachmentRules, FName("GripPoint")); + // SecondaryWeapon = Cast(SecondaryWeaponActor); + // } + // else if (IsValid(SecondaryWeapon)) + // { + // SecondaryWeapon->Destroy(); + // bHasRifle = false; + // } + } //Calls the fire function in the baseWeaponClass void AEndlessVendettaCharacter::TapFireCaller() { - if (IsValid(PrimaryWeapon) || IsValid(SecondaryWeapon)) - { - PrimaryWeaponClass.GetDefaultObject()->TapFire(); - } + UE_LOG(LogTemp, Warning, TEXT("Tap Fire")); + // if (IsValid(PrimaryWeapon) || IsValid(SecondaryWeapon)) + // { + // PrimaryWeaponClass.GetDefaultObject()->TapFire(); + // } } //POTENTIAL PICKUP SYSTEM NEEDS CHANGING BUT YES diff --git a/EndlessVendetta/Source/EndlessVendetta/GadgetSystem/GadgetManager.h b/EndlessVendetta/Source/EndlessVendetta/GadgetSystem/GadgetManager.h index 837c1222..7935ac0d 100644 --- a/EndlessVendetta/Source/EndlessVendetta/GadgetSystem/GadgetManager.h +++ b/EndlessVendetta/Source/EndlessVendetta/GadgetSystem/GadgetManager.h @@ -56,19 +56,13 @@ public: bool TryToUnequipRecon() { - if (ReconGadget->Equipped) - { - return ReconGadget->Unequip(); - } + if (ReconGadget->Equipped) return ReconGadget->Unequip(); return false; } bool TryToUnequipCombat() { - if (CombatGadget->Equipped) - { - return CombatGadget->Unequip(); - } + if (CombatGadget->Equipped) return CombatGadget->Unequip(); return false; } From 56e7a2a9e32f5ed57f4edae4d0ea7ed782edc211 Mon Sep 17 00:00:00 2001 From: Rafal Swierczek <34179rs@gmail.com> Date: Sat, 30 Sep 2023 17:18:21 +0100 Subject: [PATCH 028/112] Imported UE5 Mannequin Pack for Temp Enemies Official Unreal Mannequins from the third person template project --- .../Characters/Mannequins/Animations/ABP_Manny.uasset | 3 +++ .../Characters/Mannequins/Animations/ABP_Quinn.uasset | 3 +++ .../Mannequins/Animations/Manny/BS_MM_WalkRun.uasset | 3 +++ .../Characters/Mannequins/Animations/Manny/MM_Fall_Loop.uasset | 3 +++ .../Characters/Mannequins/Animations/Manny/MM_Idle.uasset | 3 +++ .../Characters/Mannequins/Animations/Manny/MM_Jump.uasset | 3 +++ .../Characters/Mannequins/Animations/Manny/MM_Land.uasset | 3 +++ .../Characters/Mannequins/Animations/Manny/MM_Run_Fwd.uasset | 3 +++ .../Characters/Mannequins/Animations/Manny/MM_Walk_Fwd.uasset | 3 +++ .../Mannequins/Animations/Manny/MM_Walk_InPlace.uasset | 3 +++ .../Mannequins/Animations/Quinn/BS_MF_Unarmed_WalkRun.uasset | 3 +++ .../Characters/Mannequins/Animations/Quinn/MF_Idle.uasset | 3 +++ .../Characters/Mannequins/Animations/Quinn/MF_Run_Fwd.uasset | 3 +++ .../Characters/Mannequins/Animations/Quinn/MF_Walk_Fwd.uasset | 3 +++ .../Mannequins/Materials/Functions/CA_Mannequin.uasset | 3 +++ .../Mannequins/Materials/Functions/ChromaticCurve.uasset | 3 +++ .../Mannequins/Materials/Functions/MF_Diffraction.uasset | 3 +++ .../Mannequins/Materials/Functions/MF_logo3layers.uasset | 3 +++ .../Mannequins/Materials/Functions/ML_BaseColorFallOff.uasset | 3 +++ .../Mannequins/Materials/Instances/Manny/MI_Manny_01.uasset | 3 +++ .../Mannequins/Materials/Instances/Manny/MI_Manny_02.uasset | 3 +++ .../Mannequins/Materials/Instances/Quinn/MI_Quinn_01.uasset | 3 +++ .../Mannequins/Materials/Instances/Quinn/MI_Quinn_02.uasset | 3 +++ .../Characters/Mannequins/Materials/M_Mannequin.uasset | 3 +++ .../Characters/Mannequins/Meshes/Mannequin_LODSettings.uasset | 3 +++ .../ControlRig/Characters/Mannequins/Meshes/SKM_Manny.uasset | 3 +++ .../Characters/Mannequins/Meshes/SKM_Manny_Simple.uasset | 3 +++ .../ControlRig/Characters/Mannequins/Meshes/SKM_Quinn.uasset | 3 +++ .../Characters/Mannequins/Meshes/SKM_Quinn_Simple.uasset | 3 +++ .../Characters/Mannequins/Meshes/SK_Mannequin.uasset | 3 +++ .../Characters/Mannequins/Rigs/ABP_Manny_PostProcess.uasset | 3 +++ .../Characters/Mannequins/Rigs/ABP_Quinn_PostProcess.uasset | 3 +++ .../Characters/Mannequins/Rigs/CR_Mannequin_BasicBiped.uasset | 3 +++ .../Characters/Mannequins/Rigs/CR_Mannequin_BasicFootIK.uasset | 3 +++ .../Characters/Mannequins/Rigs/CR_Mannequin_Body.uasset | 3 +++ .../Characters/Mannequins/Rigs/CR_Mannequin_Procedural.uasset | 3 +++ .../ControlRig/Characters/Mannequins/Rigs/IK_Mannequin.uasset | 3 +++ .../ControlRig/Characters/Mannequins/Rigs/PA_Mannequin.uasset | 3 +++ .../Mannequins/Rigs/Poses/Manny/Manny_calf_l_anim.uasset | 3 +++ .../Mannequins/Rigs/Poses/Manny/Manny_calf_l_pose.uasset | 3 +++ .../Mannequins/Rigs/Poses/Manny/Manny_calf_r_anim.uasset | 3 +++ .../Mannequins/Rigs/Poses/Manny/Manny_calf_r_pose.uasset | 3 +++ .../Mannequins/Rigs/Poses/Manny/Manny_clavicle_l_anim.uasset | 3 +++ .../Mannequins/Rigs/Poses/Manny/Manny_clavicle_l_pose.uasset | 3 +++ .../Mannequins/Rigs/Poses/Manny/Manny_clavicle_r_anim.uasset | 3 +++ .../Mannequins/Rigs/Poses/Manny/Manny_clavicle_r_pose.uasset | 3 +++ .../Mannequins/Rigs/Poses/Manny/Manny_foot_l_anim.uasset | 3 +++ .../Mannequins/Rigs/Poses/Manny/Manny_foot_l_pose.uasset | 3 +++ .../Mannequins/Rigs/Poses/Manny/Manny_foot_r_anim.uasset | 3 +++ .../Mannequins/Rigs/Poses/Manny/Manny_foot_r_pose.uasset | 3 +++ .../Mannequins/Rigs/Poses/Manny/Manny_hand_l_anim.uasset | 3 +++ .../Mannequins/Rigs/Poses/Manny/Manny_hand_l_pose.uasset | 3 +++ .../Mannequins/Rigs/Poses/Manny/Manny_hand_r_anim.uasset | 3 +++ .../Mannequins/Rigs/Poses/Manny/Manny_hand_r_pose.uasset | 3 +++ .../Mannequins/Rigs/Poses/Manny/Manny_lowerarm_l_anim.uasset | 3 +++ .../Mannequins/Rigs/Poses/Manny/Manny_lowerarm_l_pose.uasset | 3 +++ .../Mannequins/Rigs/Poses/Manny/Manny_lowerarm_r_anim.uasset | 3 +++ .../Mannequins/Rigs/Poses/Manny/Manny_lowerarm_r_pose.uasset | 3 +++ .../Mannequins/Rigs/Poses/Manny/Manny_thigh_l_anim.uasset | 3 +++ .../Mannequins/Rigs/Poses/Manny/Manny_thigh_l_pose.uasset | 3 +++ .../Mannequins/Rigs/Poses/Manny/Manny_thigh_r_anim.uasset | 3 +++ .../Mannequins/Rigs/Poses/Manny/Manny_thigh_r_pose.uasset | 3 +++ .../Mannequins/Rigs/Poses/Manny/Manny_upperarm_l_anim.uasset | 3 +++ .../Mannequins/Rigs/Poses/Manny/Manny_upperarm_l_pose.uasset | 3 +++ .../Mannequins/Rigs/Poses/Manny/Manny_upperarm_r_anim.uasset | 3 +++ .../Mannequins/Rigs/Poses/Manny/Manny_upperarm_r_pose.uasset | 3 +++ .../Mannequins/Rigs/Poses/Quinn/Quinn_calf_l_anim.uasset | 3 +++ .../Mannequins/Rigs/Poses/Quinn/Quinn_calf_l_pose.uasset | 3 +++ .../Mannequins/Rigs/Poses/Quinn/Quinn_calf_r_anim.uasset | 3 +++ .../Mannequins/Rigs/Poses/Quinn/Quinn_calf_r_pose.uasset | 3 +++ .../Mannequins/Rigs/Poses/Quinn/Quinn_clavicle_l_anim.uasset | 3 +++ .../Mannequins/Rigs/Poses/Quinn/Quinn_clavicle_l_pose.uasset | 3 +++ .../Mannequins/Rigs/Poses/Quinn/Quinn_clavicle_r_anim.uasset | 3 +++ .../Mannequins/Rigs/Poses/Quinn/Quinn_clavicle_r_pose.uasset | 3 +++ .../Mannequins/Rigs/Poses/Quinn/Quinn_foot_l_anim.uasset | 3 +++ .../Mannequins/Rigs/Poses/Quinn/Quinn_foot_l_pose.uasset | 3 +++ .../Mannequins/Rigs/Poses/Quinn/Quinn_foot_r_anim.uasset | 3 +++ .../Mannequins/Rigs/Poses/Quinn/Quinn_foot_r_pose.uasset | 3 +++ .../Mannequins/Rigs/Poses/Quinn/Quinn_hand_l_anim.uasset | 3 +++ .../Mannequins/Rigs/Poses/Quinn/Quinn_hand_l_pose.uasset | 3 +++ .../Mannequins/Rigs/Poses/Quinn/Quinn_hand_r_anim.uasset | 3 +++ .../Mannequins/Rigs/Poses/Quinn/Quinn_hand_r_pose.uasset | 3 +++ .../Mannequins/Rigs/Poses/Quinn/Quinn_lowerarm_l_anim.uasset | 3 +++ .../Mannequins/Rigs/Poses/Quinn/Quinn_lowerarm_l_pose.uasset | 3 +++ .../Mannequins/Rigs/Poses/Quinn/Quinn_lowerarm_r_anim.uasset | 3 +++ .../Mannequins/Rigs/Poses/Quinn/Quinn_lowerarm_r_pose.uasset | 3 +++ .../Mannequins/Rigs/Poses/Quinn/Quinn_thigh_l_anim.uasset | 3 +++ .../Mannequins/Rigs/Poses/Quinn/Quinn_thigh_l_pose.uasset | 3 +++ .../Mannequins/Rigs/Poses/Quinn/Quinn_thigh_r_anim.uasset | 3 +++ .../Mannequins/Rigs/Poses/Quinn/Quinn_thigh_r_pose.uasset | 3 +++ .../Mannequins/Rigs/Poses/Quinn/Quinn_upperarm_l_anim.uasset | 3 +++ .../Mannequins/Rigs/Poses/Quinn/Quinn_upperarm_l_pose.uasset | 3 +++ .../Mannequins/Rigs/Poses/Quinn/Quinn_upperarm_r_anim.uasset | 3 +++ .../Mannequins/Rigs/Poses/Quinn/Quinn_upperarm_r_pose.uasset | 3 +++ .../ControlRig/Characters/Mannequins/Rigs/RTG_Mannequin.uasset | 3 +++ .../Mannequins/Textures/Manny/T_Manny_01_ASAOPMASK_MSK.uasset | 3 +++ .../Characters/Mannequins/Textures/Manny/T_Manny_01_BN.uasset | 3 +++ .../Textures/Manny/T_Manny_01_CCRCCPlastic_MSK.uasset | 3 +++ .../Characters/Mannequins/Textures/Manny/T_Manny_01_D.uasset | 3 +++ .../Mannequins/Textures/Manny/T_Manny_01_MSR_MSK.uasset | 3 +++ .../Characters/Mannequins/Textures/Manny/T_Manny_01_N.uasset | 3 +++ .../Characters/Mannequins/Textures/Manny/T_Manny_01_Tan.uasset | 3 +++ .../Mannequins/Textures/Manny/T_Manny_02_ASAOPMASK_MSK.uasset | 3 +++ .../Characters/Mannequins/Textures/Manny/T_Manny_02_BN.uasset | 3 +++ .../Textures/Manny/T_Manny_02_CCRCCPlastic_MSK.uasset | 3 +++ .../Characters/Mannequins/Textures/Manny/T_Manny_02_D.uasset | 3 +++ .../Mannequins/Textures/Manny/T_Manny_02_MSR_MSK.uasset | 3 +++ .../Characters/Mannequins/Textures/Manny/T_Manny_02_N.uasset | 3 +++ .../Characters/Mannequins/Textures/Manny/T_Manny_02_Tan.uasset | 3 +++ .../Mannequins/Textures/Quinn/T_Quinn_01ID_BN.uasset | 3 +++ .../Characters/Mannequins/Textures/Quinn/T_Quinn_01ID_D.uasset | 3 +++ .../Mannequins/Textures/Quinn/T_Quinn_01ID_MSR_MSK.uasset | 3 +++ .../Characters/Mannequins/Textures/Quinn/T_Quinn_01ID_N.uasset | 3 +++ .../Mannequins/Textures/Quinn/T_Quinn_01ID_Tan.uasset | 3 +++ .../Mannequins/Textures/Quinn/T_Quinn_01_ASAOMASK_MSK.uasset | 3 +++ .../Textures/Quinn/T_Quinn_01_CCRCCPlastic_MSK.uasset | 3 +++ .../Mannequins/Textures/Quinn/T_Quinn_02ID_BN.uasset | 3 +++ .../Characters/Mannequins/Textures/Quinn/T_Quinn_02ID_D.uasset | 3 +++ .../Mannequins/Textures/Quinn/T_Quinn_02ID_MSR_MSK.uasset | 3 +++ .../Characters/Mannequins/Textures/Quinn/T_Quinn_02ID_N.uasset | 3 +++ .../Mannequins/Textures/Quinn/T_Quinn_02ID_Tan.uasset | 3 +++ .../Mannequins/Textures/Quinn/T_Quinn_02_ASAOMASK_MSK.uasset | 3 +++ .../Textures/Quinn/T_Quinn_02_CCRCCPlastic_MSK.uasset | 3 +++ .../Characters/Mannequins/Textures/Shared/T_UE_Logo_M.uasset | 3 +++ .../Content/StarterContent/Particles/P_Ambient_Dust.uasset | 2 +- 125 files changed, 373 insertions(+), 1 deletion(-) create mode 100644 EndlessVendetta/Content/ControlRig/Characters/Mannequins/Animations/ABP_Manny.uasset create mode 100644 EndlessVendetta/Content/ControlRig/Characters/Mannequins/Animations/ABP_Quinn.uasset create mode 100644 EndlessVendetta/Content/ControlRig/Characters/Mannequins/Animations/Manny/BS_MM_WalkRun.uasset create mode 100644 EndlessVendetta/Content/ControlRig/Characters/Mannequins/Animations/Manny/MM_Fall_Loop.uasset create mode 100644 EndlessVendetta/Content/ControlRig/Characters/Mannequins/Animations/Manny/MM_Idle.uasset create mode 100644 EndlessVendetta/Content/ControlRig/Characters/Mannequins/Animations/Manny/MM_Jump.uasset create mode 100644 EndlessVendetta/Content/ControlRig/Characters/Mannequins/Animations/Manny/MM_Land.uasset create mode 100644 EndlessVendetta/Content/ControlRig/Characters/Mannequins/Animations/Manny/MM_Run_Fwd.uasset create mode 100644 EndlessVendetta/Content/ControlRig/Characters/Mannequins/Animations/Manny/MM_Walk_Fwd.uasset create mode 100644 EndlessVendetta/Content/ControlRig/Characters/Mannequins/Animations/Manny/MM_Walk_InPlace.uasset create mode 100644 EndlessVendetta/Content/ControlRig/Characters/Mannequins/Animations/Quinn/BS_MF_Unarmed_WalkRun.uasset create mode 100644 EndlessVendetta/Content/ControlRig/Characters/Mannequins/Animations/Quinn/MF_Idle.uasset create mode 100644 EndlessVendetta/Content/ControlRig/Characters/Mannequins/Animations/Quinn/MF_Run_Fwd.uasset create mode 100644 EndlessVendetta/Content/ControlRig/Characters/Mannequins/Animations/Quinn/MF_Walk_Fwd.uasset create mode 100644 EndlessVendetta/Content/ControlRig/Characters/Mannequins/Materials/Functions/CA_Mannequin.uasset create mode 100644 EndlessVendetta/Content/ControlRig/Characters/Mannequins/Materials/Functions/ChromaticCurve.uasset create mode 100644 EndlessVendetta/Content/ControlRig/Characters/Mannequins/Materials/Functions/MF_Diffraction.uasset create mode 100644 EndlessVendetta/Content/ControlRig/Characters/Mannequins/Materials/Functions/MF_logo3layers.uasset create mode 100644 EndlessVendetta/Content/ControlRig/Characters/Mannequins/Materials/Functions/ML_BaseColorFallOff.uasset create mode 100644 EndlessVendetta/Content/ControlRig/Characters/Mannequins/Materials/Instances/Manny/MI_Manny_01.uasset create mode 100644 EndlessVendetta/Content/ControlRig/Characters/Mannequins/Materials/Instances/Manny/MI_Manny_02.uasset create mode 100644 EndlessVendetta/Content/ControlRig/Characters/Mannequins/Materials/Instances/Quinn/MI_Quinn_01.uasset create mode 100644 EndlessVendetta/Content/ControlRig/Characters/Mannequins/Materials/Instances/Quinn/MI_Quinn_02.uasset create mode 100644 EndlessVendetta/Content/ControlRig/Characters/Mannequins/Materials/M_Mannequin.uasset create mode 100644 EndlessVendetta/Content/ControlRig/Characters/Mannequins/Meshes/Mannequin_LODSettings.uasset create mode 100644 EndlessVendetta/Content/ControlRig/Characters/Mannequins/Meshes/SKM_Manny.uasset create mode 100644 EndlessVendetta/Content/ControlRig/Characters/Mannequins/Meshes/SKM_Manny_Simple.uasset create mode 100644 EndlessVendetta/Content/ControlRig/Characters/Mannequins/Meshes/SKM_Quinn.uasset create mode 100644 EndlessVendetta/Content/ControlRig/Characters/Mannequins/Meshes/SKM_Quinn_Simple.uasset create mode 100644 EndlessVendetta/Content/ControlRig/Characters/Mannequins/Meshes/SK_Mannequin.uasset create mode 100644 EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/ABP_Manny_PostProcess.uasset create mode 100644 EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/ABP_Quinn_PostProcess.uasset create mode 100644 EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/CR_Mannequin_BasicBiped.uasset create mode 100644 EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/CR_Mannequin_BasicFootIK.uasset create mode 100644 EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/CR_Mannequin_Body.uasset create mode 100644 EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/CR_Mannequin_Procedural.uasset create mode 100644 EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/IK_Mannequin.uasset create mode 100644 EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/PA_Mannequin.uasset create mode 100644 EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/Poses/Manny/Manny_calf_l_anim.uasset create mode 100644 EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/Poses/Manny/Manny_calf_l_pose.uasset create mode 100644 EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/Poses/Manny/Manny_calf_r_anim.uasset create mode 100644 EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/Poses/Manny/Manny_calf_r_pose.uasset create mode 100644 EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/Poses/Manny/Manny_clavicle_l_anim.uasset create mode 100644 EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/Poses/Manny/Manny_clavicle_l_pose.uasset create mode 100644 EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/Poses/Manny/Manny_clavicle_r_anim.uasset create mode 100644 EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/Poses/Manny/Manny_clavicle_r_pose.uasset create mode 100644 EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/Poses/Manny/Manny_foot_l_anim.uasset create mode 100644 EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/Poses/Manny/Manny_foot_l_pose.uasset create mode 100644 EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/Poses/Manny/Manny_foot_r_anim.uasset create mode 100644 EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/Poses/Manny/Manny_foot_r_pose.uasset create mode 100644 EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/Poses/Manny/Manny_hand_l_anim.uasset create mode 100644 EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/Poses/Manny/Manny_hand_l_pose.uasset create mode 100644 EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/Poses/Manny/Manny_hand_r_anim.uasset create mode 100644 EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/Poses/Manny/Manny_hand_r_pose.uasset create mode 100644 EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/Poses/Manny/Manny_lowerarm_l_anim.uasset create mode 100644 EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/Poses/Manny/Manny_lowerarm_l_pose.uasset create mode 100644 EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/Poses/Manny/Manny_lowerarm_r_anim.uasset create mode 100644 EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/Poses/Manny/Manny_lowerarm_r_pose.uasset create mode 100644 EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/Poses/Manny/Manny_thigh_l_anim.uasset create mode 100644 EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/Poses/Manny/Manny_thigh_l_pose.uasset create mode 100644 EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/Poses/Manny/Manny_thigh_r_anim.uasset create mode 100644 EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/Poses/Manny/Manny_thigh_r_pose.uasset create mode 100644 EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/Poses/Manny/Manny_upperarm_l_anim.uasset create mode 100644 EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/Poses/Manny/Manny_upperarm_l_pose.uasset create mode 100644 EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/Poses/Manny/Manny_upperarm_r_anim.uasset create mode 100644 EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/Poses/Manny/Manny_upperarm_r_pose.uasset create mode 100644 EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/Poses/Quinn/Quinn_calf_l_anim.uasset create mode 100644 EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/Poses/Quinn/Quinn_calf_l_pose.uasset create mode 100644 EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/Poses/Quinn/Quinn_calf_r_anim.uasset create mode 100644 EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/Poses/Quinn/Quinn_calf_r_pose.uasset create mode 100644 EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/Poses/Quinn/Quinn_clavicle_l_anim.uasset create mode 100644 EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/Poses/Quinn/Quinn_clavicle_l_pose.uasset create mode 100644 EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/Poses/Quinn/Quinn_clavicle_r_anim.uasset create mode 100644 EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/Poses/Quinn/Quinn_clavicle_r_pose.uasset create mode 100644 EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/Poses/Quinn/Quinn_foot_l_anim.uasset create mode 100644 EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/Poses/Quinn/Quinn_foot_l_pose.uasset create mode 100644 EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/Poses/Quinn/Quinn_foot_r_anim.uasset create mode 100644 EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/Poses/Quinn/Quinn_foot_r_pose.uasset create mode 100644 EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/Poses/Quinn/Quinn_hand_l_anim.uasset create mode 100644 EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/Poses/Quinn/Quinn_hand_l_pose.uasset create mode 100644 EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/Poses/Quinn/Quinn_hand_r_anim.uasset create mode 100644 EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/Poses/Quinn/Quinn_hand_r_pose.uasset create mode 100644 EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/Poses/Quinn/Quinn_lowerarm_l_anim.uasset create mode 100644 EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/Poses/Quinn/Quinn_lowerarm_l_pose.uasset create mode 100644 EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/Poses/Quinn/Quinn_lowerarm_r_anim.uasset create mode 100644 EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/Poses/Quinn/Quinn_lowerarm_r_pose.uasset create mode 100644 EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/Poses/Quinn/Quinn_thigh_l_anim.uasset create mode 100644 EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/Poses/Quinn/Quinn_thigh_l_pose.uasset create mode 100644 EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/Poses/Quinn/Quinn_thigh_r_anim.uasset create mode 100644 EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/Poses/Quinn/Quinn_thigh_r_pose.uasset create mode 100644 EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/Poses/Quinn/Quinn_upperarm_l_anim.uasset create mode 100644 EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/Poses/Quinn/Quinn_upperarm_l_pose.uasset create mode 100644 EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/Poses/Quinn/Quinn_upperarm_r_anim.uasset create mode 100644 EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/Poses/Quinn/Quinn_upperarm_r_pose.uasset create mode 100644 EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/RTG_Mannequin.uasset create mode 100644 EndlessVendetta/Content/ControlRig/Characters/Mannequins/Textures/Manny/T_Manny_01_ASAOPMASK_MSK.uasset create mode 100644 EndlessVendetta/Content/ControlRig/Characters/Mannequins/Textures/Manny/T_Manny_01_BN.uasset create mode 100644 EndlessVendetta/Content/ControlRig/Characters/Mannequins/Textures/Manny/T_Manny_01_CCRCCPlastic_MSK.uasset create mode 100644 EndlessVendetta/Content/ControlRig/Characters/Mannequins/Textures/Manny/T_Manny_01_D.uasset create mode 100644 EndlessVendetta/Content/ControlRig/Characters/Mannequins/Textures/Manny/T_Manny_01_MSR_MSK.uasset create mode 100644 EndlessVendetta/Content/ControlRig/Characters/Mannequins/Textures/Manny/T_Manny_01_N.uasset create mode 100644 EndlessVendetta/Content/ControlRig/Characters/Mannequins/Textures/Manny/T_Manny_01_Tan.uasset create mode 100644 EndlessVendetta/Content/ControlRig/Characters/Mannequins/Textures/Manny/T_Manny_02_ASAOPMASK_MSK.uasset create mode 100644 EndlessVendetta/Content/ControlRig/Characters/Mannequins/Textures/Manny/T_Manny_02_BN.uasset create mode 100644 EndlessVendetta/Content/ControlRig/Characters/Mannequins/Textures/Manny/T_Manny_02_CCRCCPlastic_MSK.uasset create mode 100644 EndlessVendetta/Content/ControlRig/Characters/Mannequins/Textures/Manny/T_Manny_02_D.uasset create mode 100644 EndlessVendetta/Content/ControlRig/Characters/Mannequins/Textures/Manny/T_Manny_02_MSR_MSK.uasset create mode 100644 EndlessVendetta/Content/ControlRig/Characters/Mannequins/Textures/Manny/T_Manny_02_N.uasset create mode 100644 EndlessVendetta/Content/ControlRig/Characters/Mannequins/Textures/Manny/T_Manny_02_Tan.uasset create mode 100644 EndlessVendetta/Content/ControlRig/Characters/Mannequins/Textures/Quinn/T_Quinn_01ID_BN.uasset create mode 100644 EndlessVendetta/Content/ControlRig/Characters/Mannequins/Textures/Quinn/T_Quinn_01ID_D.uasset create mode 100644 EndlessVendetta/Content/ControlRig/Characters/Mannequins/Textures/Quinn/T_Quinn_01ID_MSR_MSK.uasset create mode 100644 EndlessVendetta/Content/ControlRig/Characters/Mannequins/Textures/Quinn/T_Quinn_01ID_N.uasset create mode 100644 EndlessVendetta/Content/ControlRig/Characters/Mannequins/Textures/Quinn/T_Quinn_01ID_Tan.uasset create mode 100644 EndlessVendetta/Content/ControlRig/Characters/Mannequins/Textures/Quinn/T_Quinn_01_ASAOMASK_MSK.uasset create mode 100644 EndlessVendetta/Content/ControlRig/Characters/Mannequins/Textures/Quinn/T_Quinn_01_CCRCCPlastic_MSK.uasset create mode 100644 EndlessVendetta/Content/ControlRig/Characters/Mannequins/Textures/Quinn/T_Quinn_02ID_BN.uasset create mode 100644 EndlessVendetta/Content/ControlRig/Characters/Mannequins/Textures/Quinn/T_Quinn_02ID_D.uasset create mode 100644 EndlessVendetta/Content/ControlRig/Characters/Mannequins/Textures/Quinn/T_Quinn_02ID_MSR_MSK.uasset create mode 100644 EndlessVendetta/Content/ControlRig/Characters/Mannequins/Textures/Quinn/T_Quinn_02ID_N.uasset create mode 100644 EndlessVendetta/Content/ControlRig/Characters/Mannequins/Textures/Quinn/T_Quinn_02ID_Tan.uasset create mode 100644 EndlessVendetta/Content/ControlRig/Characters/Mannequins/Textures/Quinn/T_Quinn_02_ASAOMASK_MSK.uasset create mode 100644 EndlessVendetta/Content/ControlRig/Characters/Mannequins/Textures/Quinn/T_Quinn_02_CCRCCPlastic_MSK.uasset create mode 100644 EndlessVendetta/Content/ControlRig/Characters/Mannequins/Textures/Shared/T_UE_Logo_M.uasset diff --git a/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Animations/ABP_Manny.uasset b/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Animations/ABP_Manny.uasset new file mode 100644 index 00000000..06510ed2 --- /dev/null +++ b/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Animations/ABP_Manny.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:eeacdc8b0f92b8e16dd2cf4ed7e919feadf650736072c9efd4f5f77499eb62d9 +size 377396 diff --git a/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Animations/ABP_Quinn.uasset b/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Animations/ABP_Quinn.uasset new file mode 100644 index 00000000..301842c6 --- /dev/null +++ b/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Animations/ABP_Quinn.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:5e423711c22cbb84b4249a04385d8f5c398a5e9c5d237516ff0db3a8dccefc96 +size 39372 diff --git a/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Animations/Manny/BS_MM_WalkRun.uasset b/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Animations/Manny/BS_MM_WalkRun.uasset new file mode 100644 index 00000000..73c543f1 --- /dev/null +++ b/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Animations/Manny/BS_MM_WalkRun.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:2acc29c41680b4c399ffacd3299289c2e98f6770c099f55495218754a8390d2a +size 8851 diff --git a/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Animations/Manny/MM_Fall_Loop.uasset b/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Animations/Manny/MM_Fall_Loop.uasset new file mode 100644 index 00000000..8979d182 --- /dev/null +++ b/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Animations/Manny/MM_Fall_Loop.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:dcaaea03f57149cff7cd81e7e7f598e85e252378b0d84202824c63055ea7fc26 +size 616720 diff --git a/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Animations/Manny/MM_Idle.uasset b/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Animations/Manny/MM_Idle.uasset new file mode 100644 index 00000000..8ffff7be --- /dev/null +++ b/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Animations/Manny/MM_Idle.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a315ff6ecf54d4e1abe6600072267a2a20cb83e990d2ee91fa1fad63fa3c25e0 +size 838022 diff --git a/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Animations/Manny/MM_Jump.uasset b/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Animations/Manny/MM_Jump.uasset new file mode 100644 index 00000000..924ae4fc --- /dev/null +++ b/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Animations/Manny/MM_Jump.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:4bfd7488afe83d1d50faae6b6c281c4889f739ea6b4bfc7fbfbcb9e1c399ed75 +size 209468 diff --git a/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Animations/Manny/MM_Land.uasset b/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Animations/Manny/MM_Land.uasset new file mode 100644 index 00000000..42e11bb3 --- /dev/null +++ b/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Animations/Manny/MM_Land.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:05de3888c5a29ab643f74adf4d588a72b1ee547520c049520e3c90b9cd91bc2f +size 210231 diff --git a/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Animations/Manny/MM_Run_Fwd.uasset b/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Animations/Manny/MM_Run_Fwd.uasset new file mode 100644 index 00000000..70eb9d5f --- /dev/null +++ b/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Animations/Manny/MM_Run_Fwd.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:779b8f8fd668b9b3ac255796b5eb505b38582a5f3a6a14d21015746c427f5203 +size 233628 diff --git a/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Animations/Manny/MM_Walk_Fwd.uasset b/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Animations/Manny/MM_Walk_Fwd.uasset new file mode 100644 index 00000000..01750427 --- /dev/null +++ b/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Animations/Manny/MM_Walk_Fwd.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b554f588731ccc2ab91017696d6edc189e8d905f3bd1658aa0bbb52fb56d9f2a +size 323175 diff --git a/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Animations/Manny/MM_Walk_InPlace.uasset b/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Animations/Manny/MM_Walk_InPlace.uasset new file mode 100644 index 00000000..10d9e0aa --- /dev/null +++ b/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Animations/Manny/MM_Walk_InPlace.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:c5b75829aa4fa7d1400ab98858ae3ff499c7473bb12487e9e58c853e500ebc90 +size 565708 diff --git a/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Animations/Quinn/BS_MF_Unarmed_WalkRun.uasset b/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Animations/Quinn/BS_MF_Unarmed_WalkRun.uasset new file mode 100644 index 00000000..34e0bb3c --- /dev/null +++ b/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Animations/Quinn/BS_MF_Unarmed_WalkRun.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:1842726ff2d091261376cfb631645e1f6e676edc7c8332d6edc6bbf8b4306ab7 +size 8891 diff --git a/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Animations/Quinn/MF_Idle.uasset b/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Animations/Quinn/MF_Idle.uasset new file mode 100644 index 00000000..cc05e290 --- /dev/null +++ b/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Animations/Quinn/MF_Idle.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:aed5bfcce6e424c3fde1fe69bbb2a5b4406b78109ed9818e2f0de85096f5d883 +size 869685 diff --git a/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Animations/Quinn/MF_Run_Fwd.uasset b/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Animations/Quinn/MF_Run_Fwd.uasset new file mode 100644 index 00000000..3793707b --- /dev/null +++ b/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Animations/Quinn/MF_Run_Fwd.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:4ef6b3b0d8435fa4aa92bbf22317e265446ddcab34f2596258f4316a8f52f275 +size 381450 diff --git a/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Animations/Quinn/MF_Walk_Fwd.uasset b/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Animations/Quinn/MF_Walk_Fwd.uasset new file mode 100644 index 00000000..b65637cb --- /dev/null +++ b/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Animations/Quinn/MF_Walk_Fwd.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:68fae0ca27a7cffec957a549bdd37e0637162981b41de6018b720de4201ec5de +size 400317 diff --git a/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Materials/Functions/CA_Mannequin.uasset b/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Materials/Functions/CA_Mannequin.uasset new file mode 100644 index 00000000..ca441994 --- /dev/null +++ b/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Materials/Functions/CA_Mannequin.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:923f69a89ca9a3c34e2dcb3b0be8fdeb180f0d5f5781c2f5aed93591434df0d4 +size 4654 diff --git a/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Materials/Functions/ChromaticCurve.uasset b/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Materials/Functions/ChromaticCurve.uasset new file mode 100644 index 00000000..98a22005 --- /dev/null +++ b/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Materials/Functions/ChromaticCurve.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b2db73d6d14a4bfe11d2aefec2a6ed72dbceaa7fc658de55a7ce1037aaa2da15 +size 6118 diff --git a/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Materials/Functions/MF_Diffraction.uasset b/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Materials/Functions/MF_Diffraction.uasset new file mode 100644 index 00000000..d6efab0e --- /dev/null +++ b/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Materials/Functions/MF_Diffraction.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:0461c5e62fb008d178b4a23172511cdfb3f2f29d3201dedbae3014e979ac3a53 +size 31748 diff --git a/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Materials/Functions/MF_logo3layers.uasset b/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Materials/Functions/MF_logo3layers.uasset new file mode 100644 index 00000000..50716752 --- /dev/null +++ b/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Materials/Functions/MF_logo3layers.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:43c4cf35c7e847de2ee6e93c086e18c2163a9b09e095b170a3b8e66941aa689c +size 55701 diff --git a/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Materials/Functions/ML_BaseColorFallOff.uasset b/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Materials/Functions/ML_BaseColorFallOff.uasset new file mode 100644 index 00000000..3e526b8c --- /dev/null +++ b/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Materials/Functions/ML_BaseColorFallOff.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:8e8d8f5cdab9bd468ad3731719000cbd72134a64aed69bd6a2349241b6c08ef8 +size 13422 diff --git a/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Materials/Instances/Manny/MI_Manny_01.uasset b/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Materials/Instances/Manny/MI_Manny_01.uasset new file mode 100644 index 00000000..bb3aa5e4 --- /dev/null +++ b/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Materials/Instances/Manny/MI_Manny_01.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a854b2354341c525668b120e3fdfc356d58d51a3297394ee471ae8b14a9a1bf0 +size 21243 diff --git a/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Materials/Instances/Manny/MI_Manny_02.uasset b/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Materials/Instances/Manny/MI_Manny_02.uasset new file mode 100644 index 00000000..128b32dc --- /dev/null +++ b/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Materials/Instances/Manny/MI_Manny_02.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b651ac85f23b43b1751155bb479766d66ae1db4bfdd1b191d1c6526988d003fe +size 24277 diff --git a/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Materials/Instances/Quinn/MI_Quinn_01.uasset b/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Materials/Instances/Quinn/MI_Quinn_01.uasset new file mode 100644 index 00000000..76c30741 --- /dev/null +++ b/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Materials/Instances/Quinn/MI_Quinn_01.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:cae533968c2178e476733efcd12b1d7d03b9cdd8ca50bd0f90da77ad3edd3ab5 +size 19288 diff --git a/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Materials/Instances/Quinn/MI_Quinn_02.uasset b/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Materials/Instances/Quinn/MI_Quinn_02.uasset new file mode 100644 index 00000000..82cfe40b --- /dev/null +++ b/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Materials/Instances/Quinn/MI_Quinn_02.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:64032da0d5072a3c4447f603c63a1ffb33990cfdc69573d0817c9c02f717919a +size 24636 diff --git a/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Materials/M_Mannequin.uasset b/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Materials/M_Mannequin.uasset new file mode 100644 index 00000000..982d1365 --- /dev/null +++ b/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Materials/M_Mannequin.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:10d06ca935972621ab0699abd560d3a31343dba40248d21cede0704b31bc735c +size 83055 diff --git a/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Meshes/Mannequin_LODSettings.uasset b/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Meshes/Mannequin_LODSettings.uasset new file mode 100644 index 00000000..76e83de3 --- /dev/null +++ b/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Meshes/Mannequin_LODSettings.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d1832b78f81bbe3c7cbc648c7c25b0af352605e25c35f7de5b8ece4668d57ef0 +size 18631 diff --git a/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Meshes/SKM_Manny.uasset b/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Meshes/SKM_Manny.uasset new file mode 100644 index 00000000..97ff8bac --- /dev/null +++ b/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Meshes/SKM_Manny.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:2563c3549a2e563431c27c7c082960b18a53b503299ce6b92c61460436290879 +size 34534206 diff --git a/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Meshes/SKM_Manny_Simple.uasset b/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Meshes/SKM_Manny_Simple.uasset new file mode 100644 index 00000000..8d9a50e4 --- /dev/null +++ b/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Meshes/SKM_Manny_Simple.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:830f40a8cd84a39637256dee341382ec0e91968cfb44db724bfed2f91af1c775 +size 18526672 diff --git a/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Meshes/SKM_Quinn.uasset b/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Meshes/SKM_Quinn.uasset new file mode 100644 index 00000000..6fdb30df --- /dev/null +++ b/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Meshes/SKM_Quinn.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:63f14e9f8aac7d52b18078b8d50648c9957cedd09007c225a8f3e8776cd68265 +size 36495213 diff --git a/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Meshes/SKM_Quinn_Simple.uasset b/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Meshes/SKM_Quinn_Simple.uasset new file mode 100644 index 00000000..fe094e23 --- /dev/null +++ b/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Meshes/SKM_Quinn_Simple.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:048c0ae462fb0dffc00b29b554070db7e7246a9369e2a00931ec5729c1ad7312 +size 19371051 diff --git a/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Meshes/SK_Mannequin.uasset b/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Meshes/SK_Mannequin.uasset new file mode 100644 index 00000000..8ce47365 --- /dev/null +++ b/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Meshes/SK_Mannequin.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:215ed40ad2c8290531cf50ead108221d2aa6af461636a98cf891e63775446616 +size 119087 diff --git a/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/ABP_Manny_PostProcess.uasset b/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/ABP_Manny_PostProcess.uasset new file mode 100644 index 00000000..78071b7c --- /dev/null +++ b/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/ABP_Manny_PostProcess.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:592779e91fc8ed09e4d2e71852ff4af108050e37d3a82b0f5b300c7712ff2966 +size 462272 diff --git a/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/ABP_Quinn_PostProcess.uasset b/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/ABP_Quinn_PostProcess.uasset new file mode 100644 index 00000000..644a100d --- /dev/null +++ b/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/ABP_Quinn_PostProcess.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:0c51c2993e09be99e3480af0ce30ac7d4f5299e3cb1ea95deeff583789794353 +size 462170 diff --git a/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/CR_Mannequin_BasicBiped.uasset b/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/CR_Mannequin_BasicBiped.uasset new file mode 100644 index 00000000..61dbe44b --- /dev/null +++ b/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/CR_Mannequin_BasicBiped.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e370a6ffd00112b7f6189e99703b5920f09664f686733de528c485126356fa19 +size 4168573 diff --git a/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/CR_Mannequin_BasicFootIK.uasset b/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/CR_Mannequin_BasicFootIK.uasset new file mode 100644 index 00000000..18f1fb5d --- /dev/null +++ b/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/CR_Mannequin_BasicFootIK.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:9e30a862ca99af96f3d0877538c5140c9e2b989df252d52468eabdb872ec45cc +size 590359 diff --git a/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/CR_Mannequin_Body.uasset b/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/CR_Mannequin_Body.uasset new file mode 100644 index 00000000..55fd98be --- /dev/null +++ b/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/CR_Mannequin_Body.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:46c93ec5db984971aaa40cc7e63ecd07f415bce492403bedfaecb755b415ef53 +size 16002462 diff --git a/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/CR_Mannequin_Procedural.uasset b/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/CR_Mannequin_Procedural.uasset new file mode 100644 index 00000000..65fc2cf2 --- /dev/null +++ b/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/CR_Mannequin_Procedural.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:5aec7fd100ef8687ac4cf56996eb22de4d6833e7361b7c61b31685e94e7d6796 +size 2335736 diff --git a/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/IK_Mannequin.uasset b/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/IK_Mannequin.uasset new file mode 100644 index 00000000..f50d2d95 --- /dev/null +++ b/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/IK_Mannequin.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:3cab1d297286a5bc0e62b5c3dd86af3f178e7c8f4710e4dc1203868894b3e132 +size 143134 diff --git a/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/PA_Mannequin.uasset b/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/PA_Mannequin.uasset new file mode 100644 index 00000000..987b2548 --- /dev/null +++ b/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/PA_Mannequin.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d082d00558bf6ea9284f65623cee82f4f9a823adf2883b0ca7172352e8916fc6 +size 63662 diff --git a/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/Poses/Manny/Manny_calf_l_anim.uasset b/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/Poses/Manny/Manny_calf_l_anim.uasset new file mode 100644 index 00000000..92e00056 --- /dev/null +++ b/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/Poses/Manny/Manny_calf_l_anim.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b59f701e426315cadfd16453f1445cab8f23caca24bed38e77e0a26031f18101 +size 64816 diff --git a/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/Poses/Manny/Manny_calf_l_pose.uasset b/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/Poses/Manny/Manny_calf_l_pose.uasset new file mode 100644 index 00000000..8f8c5f06 --- /dev/null +++ b/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/Poses/Manny/Manny_calf_l_pose.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ebe608a1bb96251dc4aa098caefeb3c7aac17c5f952383950e29a744ae62b18e +size 207223 diff --git a/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/Poses/Manny/Manny_calf_r_anim.uasset b/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/Poses/Manny/Manny_calf_r_anim.uasset new file mode 100644 index 00000000..87a69787 --- /dev/null +++ b/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/Poses/Manny/Manny_calf_r_anim.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:bf6059f576b4cc9ccd78a90eed7cf3cd6ae1d2bbd51be46ee313e3584e75833c +size 64826 diff --git a/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/Poses/Manny/Manny_calf_r_pose.uasset b/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/Poses/Manny/Manny_calf_r_pose.uasset new file mode 100644 index 00000000..050dafb1 --- /dev/null +++ b/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/Poses/Manny/Manny_calf_r_pose.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:4b350e80733131422cfa702d41f3df2ce96e00d2afb441d2fb5d746014504380 +size 207223 diff --git a/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/Poses/Manny/Manny_clavicle_l_anim.uasset b/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/Poses/Manny/Manny_clavicle_l_anim.uasset new file mode 100644 index 00000000..55d25794 --- /dev/null +++ b/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/Poses/Manny/Manny_clavicle_l_anim.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b37dfd7dba3014752915db44545ee334eeda25409a738b99ded3b2074fccbfcb +size 64852 diff --git a/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/Poses/Manny/Manny_clavicle_l_pose.uasset b/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/Poses/Manny/Manny_clavicle_l_pose.uasset new file mode 100644 index 00000000..39f87a29 --- /dev/null +++ b/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/Poses/Manny/Manny_clavicle_l_pose.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:790016bfdb567b8200e0cd84f76d6f11a831e057054d7dcf8374b30d79a3df5b +size 205529 diff --git a/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/Poses/Manny/Manny_clavicle_r_anim.uasset b/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/Poses/Manny/Manny_clavicle_r_anim.uasset new file mode 100644 index 00000000..532b46c2 --- /dev/null +++ b/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/Poses/Manny/Manny_clavicle_r_anim.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:bd400f5be56c758ff5394dbb683c5169d0848b0ba9d09f9e6c272e3bf3f10ab5 +size 64854 diff --git a/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/Poses/Manny/Manny_clavicle_r_pose.uasset b/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/Poses/Manny/Manny_clavicle_r_pose.uasset new file mode 100644 index 00000000..b8d0058f --- /dev/null +++ b/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/Poses/Manny/Manny_clavicle_r_pose.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:bb0713e0451b39d49c5cdac5cd1ee4f9154bfd1423098cf4195686df3c4d20d8 +size 206131 diff --git a/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/Poses/Manny/Manny_foot_l_anim.uasset b/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/Poses/Manny/Manny_foot_l_anim.uasset new file mode 100644 index 00000000..cab49123 --- /dev/null +++ b/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/Poses/Manny/Manny_foot_l_anim.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:c5f150d98767071f4bcd28bdfde1685fee9d40aa1d5d82434c518d40ad6b3b30 +size 52824 diff --git a/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/Poses/Manny/Manny_foot_l_pose.uasset b/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/Poses/Manny/Manny_foot_l_pose.uasset new file mode 100644 index 00000000..af8531d0 --- /dev/null +++ b/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/Poses/Manny/Manny_foot_l_pose.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:142101f70f42f02f41199706477b99874c75bcefd0f277fbdea47ba7de193741 +size 131969 diff --git a/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/Poses/Manny/Manny_foot_r_anim.uasset b/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/Poses/Manny/Manny_foot_r_anim.uasset new file mode 100644 index 00000000..a653463e --- /dev/null +++ b/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/Poses/Manny/Manny_foot_r_anim.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:40b46c0ef3ddba150b14bc4c3263e515300ebc72dd88419c9e027334e3c6082d +size 52826 diff --git a/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/Poses/Manny/Manny_foot_r_pose.uasset b/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/Poses/Manny/Manny_foot_r_pose.uasset new file mode 100644 index 00000000..5d3c11c4 --- /dev/null +++ b/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/Poses/Manny/Manny_foot_r_pose.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:df08784aa1c599d205e05ba57d9348381e6db5f74d2332e3449f62df981d2bda +size 131969 diff --git a/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/Poses/Manny/Manny_hand_l_anim.uasset b/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/Poses/Manny/Manny_hand_l_anim.uasset new file mode 100644 index 00000000..d3043a5f --- /dev/null +++ b/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/Poses/Manny/Manny_hand_l_anim.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:112cb9ce37a704413410f4996e4a3ee04b54b27a08e023e6ad3939b16b422552 +size 58824 diff --git a/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/Poses/Manny/Manny_hand_l_pose.uasset b/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/Poses/Manny/Manny_hand_l_pose.uasset new file mode 100644 index 00000000..b887852a --- /dev/null +++ b/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/Poses/Manny/Manny_hand_l_pose.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:27f7d9ff395a01d762166107f3c8fb43b9862b0785750e185e25fa1dd86ce29c +size 168999 diff --git a/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/Poses/Manny/Manny_hand_r_anim.uasset b/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/Poses/Manny/Manny_hand_r_anim.uasset new file mode 100644 index 00000000..46de699f --- /dev/null +++ b/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/Poses/Manny/Manny_hand_r_anim.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b1b2777419bfc49e444bf34c4ec6bb1427b8bb829c92ccfcf0f979e2dd90ddd7 +size 58826 diff --git a/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/Poses/Manny/Manny_hand_r_pose.uasset b/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/Poses/Manny/Manny_hand_r_pose.uasset new file mode 100644 index 00000000..6aba1f00 --- /dev/null +++ b/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/Poses/Manny/Manny_hand_r_pose.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:6f73d48f424e90b916123b37783fbe47b568e53ffbbf16bfc3599978f3e7badd +size 168999 diff --git a/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/Poses/Manny/Manny_lowerarm_l_anim.uasset b/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/Poses/Manny/Manny_lowerarm_l_anim.uasset new file mode 100644 index 00000000..f98cb1c6 --- /dev/null +++ b/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/Poses/Manny/Manny_lowerarm_l_anim.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:69ccff3cc8a6ed58eff6463be1f8d5290f3fde12b91e72ffd5c93a852bc177ee +size 127276 diff --git a/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/Poses/Manny/Manny_lowerarm_l_pose.uasset b/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/Poses/Manny/Manny_lowerarm_l_pose.uasset new file mode 100644 index 00000000..f8b77ff9 --- /dev/null +++ b/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/Poses/Manny/Manny_lowerarm_l_pose.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:3b7caf543c0b38805f75fd1406e26520a1124b2c1ca3aa81792ae5c897d20741 +size 361441 diff --git a/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/Poses/Manny/Manny_lowerarm_r_anim.uasset b/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/Poses/Manny/Manny_lowerarm_r_anim.uasset new file mode 100644 index 00000000..55866a7e --- /dev/null +++ b/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/Poses/Manny/Manny_lowerarm_r_anim.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:32d442c2f889f74f96be4a678e84f4ddfbda7a6231bfcf073d8259c9257079c8 +size 88854 diff --git a/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/Poses/Manny/Manny_lowerarm_r_pose.uasset b/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/Poses/Manny/Manny_lowerarm_r_pose.uasset new file mode 100644 index 00000000..4c001f2b --- /dev/null +++ b/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/Poses/Manny/Manny_lowerarm_r_pose.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:327e6b5cb9d426c10f21ea1e5e2f6004761016a0e11361aed240a8a493f35dbc +size 361441 diff --git a/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/Poses/Manny/Manny_thigh_l_anim.uasset b/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/Poses/Manny/Manny_thigh_l_anim.uasset new file mode 100644 index 00000000..a8234112 --- /dev/null +++ b/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/Poses/Manny/Manny_thigh_l_anim.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:153a9f670d5612852b3bdfb1e5911dd3ba13f00a53e01c004cd6c0625a4e25cd +size 118833 diff --git a/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/Poses/Manny/Manny_thigh_l_pose.uasset b/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/Poses/Manny/Manny_thigh_l_pose.uasset new file mode 100644 index 00000000..fc5710d4 --- /dev/null +++ b/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/Poses/Manny/Manny_thigh_l_pose.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:24ee80de174ae79555219f1eb7a12d5cbaabac6b42fae59421dd8192e754be55 +size 557766 diff --git a/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/Poses/Manny/Manny_thigh_r_anim.uasset b/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/Poses/Manny/Manny_thigh_r_anim.uasset new file mode 100644 index 00000000..2e838034 --- /dev/null +++ b/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/Poses/Manny/Manny_thigh_r_anim.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e61e506bc006d9db0ba4a0469b48984dd9ca90cb4caf89db100ff7b43cbbbd00 +size 118835 diff --git a/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/Poses/Manny/Manny_thigh_r_pose.uasset b/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/Poses/Manny/Manny_thigh_r_pose.uasset new file mode 100644 index 00000000..f08619af --- /dev/null +++ b/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/Poses/Manny/Manny_thigh_r_pose.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:c02f07aa3e4f0a0229508f410901cbc56c18adc334d51e4ab58b11b039b150e2 +size 557766 diff --git a/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/Poses/Manny/Manny_upperarm_l_anim.uasset b/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/Poses/Manny/Manny_upperarm_l_anim.uasset new file mode 100644 index 00000000..dde86b2e --- /dev/null +++ b/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/Poses/Manny/Manny_upperarm_l_anim.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:16c364d55b05f67bbffb4ed23cc5d0333fe5611c82380a74aed7e11371a32d1d +size 130854 diff --git a/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/Poses/Manny/Manny_upperarm_l_pose.uasset b/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/Poses/Manny/Manny_upperarm_l_pose.uasset new file mode 100644 index 00000000..6c78a0dc --- /dev/null +++ b/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/Poses/Manny/Manny_upperarm_l_pose.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:747e14c6054a2c809011c3aac243f4438bd929183d6b24dc05c827c6599eec04 +size 641430 diff --git a/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/Poses/Manny/Manny_upperarm_r_anim.uasset b/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/Poses/Manny/Manny_upperarm_r_anim.uasset new file mode 100644 index 00000000..e9dc936a --- /dev/null +++ b/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/Poses/Manny/Manny_upperarm_r_anim.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:922fddcf4264b66d389f61b7c5e5effcef2aca70f48c98d41fec4514a250cc2c +size 130856 diff --git a/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/Poses/Manny/Manny_upperarm_r_pose.uasset b/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/Poses/Manny/Manny_upperarm_r_pose.uasset new file mode 100644 index 00000000..a5e78588 --- /dev/null +++ b/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/Poses/Manny/Manny_upperarm_r_pose.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:de4cec17652b3232f12905381e0fb3085486b47f8c169d8988dc1573aa98ab99 +size 629992 diff --git a/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/Poses/Quinn/Quinn_calf_l_anim.uasset b/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/Poses/Quinn/Quinn_calf_l_anim.uasset new file mode 100644 index 00000000..309aed01 --- /dev/null +++ b/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/Poses/Quinn/Quinn_calf_l_anim.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:9d1e68764a3e6438bf344c38faff188298708652d54a14bf16e4c6d42f16ee13 +size 71463 diff --git a/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/Poses/Quinn/Quinn_calf_l_pose.uasset b/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/Poses/Quinn/Quinn_calf_l_pose.uasset new file mode 100644 index 00000000..d635f868 --- /dev/null +++ b/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/Poses/Quinn/Quinn_calf_l_pose.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:df7fddc20d642dfee60ee24b42b7cdfb8181ef77b63590173c227bedb37c996e +size 244960 diff --git a/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/Poses/Quinn/Quinn_calf_r_anim.uasset b/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/Poses/Quinn/Quinn_calf_r_anim.uasset new file mode 100644 index 00000000..b860ce2f --- /dev/null +++ b/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/Poses/Quinn/Quinn_calf_r_anim.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:34ea78c58adb22c006f9030cbc238c1f22fa3060857de5ce75374dc694cd0bb6 +size 109521 diff --git a/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/Poses/Quinn/Quinn_calf_r_pose.uasset b/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/Poses/Quinn/Quinn_calf_r_pose.uasset new file mode 100644 index 00000000..0f1c58ba --- /dev/null +++ b/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/Poses/Quinn/Quinn_calf_r_pose.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:baeebcaeab8371ac6d2c113396d402bc7ce4d0279d9ac47ba70a870bfcf7e2ff +size 245041 diff --git a/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/Poses/Quinn/Quinn_clavicle_l_anim.uasset b/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/Poses/Quinn/Quinn_clavicle_l_anim.uasset new file mode 100644 index 00000000..8b1c8220 --- /dev/null +++ b/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/Poses/Quinn/Quinn_clavicle_l_anim.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:cb3cb479595daad83cbd3f700bddaa0f7cf3a5173a6b470ba03ff22cf7b63a9d +size 103489 diff --git a/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/Poses/Quinn/Quinn_clavicle_l_pose.uasset b/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/Poses/Quinn/Quinn_clavicle_l_pose.uasset new file mode 100644 index 00000000..619dca36 --- /dev/null +++ b/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/Poses/Quinn/Quinn_clavicle_l_pose.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:6a2ee7b5868b5af8dc3dc0441986980bc3a72db7f9989798d08c0ee43b41c728 +size 205712 diff --git a/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/Poses/Quinn/Quinn_clavicle_r_anim.uasset b/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/Poses/Quinn/Quinn_clavicle_r_anim.uasset new file mode 100644 index 00000000..568122ff --- /dev/null +++ b/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/Poses/Quinn/Quinn_clavicle_r_anim.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:be091ffa3cd99911432a60807d3df1a1790dbd9c5f311274eee61df93221a8a2 +size 65171 diff --git a/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/Poses/Quinn/Quinn_clavicle_r_pose.uasset b/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/Poses/Quinn/Quinn_clavicle_r_pose.uasset new file mode 100644 index 00000000..7a436416 --- /dev/null +++ b/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/Poses/Quinn/Quinn_clavicle_r_pose.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d6cbf50e59d7484b0e5e96e2d76c2a152d960804778599f60273f3bc07b27a22 +size 205813 diff --git a/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/Poses/Quinn/Quinn_foot_l_anim.uasset b/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/Poses/Quinn/Quinn_foot_l_anim.uasset new file mode 100644 index 00000000..67fa2677 --- /dev/null +++ b/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/Poses/Quinn/Quinn_foot_l_anim.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e1c2166fca7cd0381f733bee6c0f93697fb4a01aa24be032fcff672d31a4518b +size 53141 diff --git a/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/Poses/Quinn/Quinn_foot_l_pose.uasset b/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/Poses/Quinn/Quinn_foot_l_pose.uasset new file mode 100644 index 00000000..53474c50 --- /dev/null +++ b/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/Poses/Quinn/Quinn_foot_l_pose.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:cf437126561ca844185fab690f3f52b5102768f78c9dbf6090e7c07778f95685 +size 131952 diff --git a/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/Poses/Quinn/Quinn_foot_r_anim.uasset b/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/Poses/Quinn/Quinn_foot_r_anim.uasset new file mode 100644 index 00000000..70ad1394 --- /dev/null +++ b/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/Poses/Quinn/Quinn_foot_r_anim.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b9b384a47ef153f631d9ef77d5074e97fd608d17932f82eba5b896072be8634d +size 53143 diff --git a/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/Poses/Quinn/Quinn_foot_r_pose.uasset b/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/Poses/Quinn/Quinn_foot_r_pose.uasset new file mode 100644 index 00000000..417f3946 --- /dev/null +++ b/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/Poses/Quinn/Quinn_foot_r_pose.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ac044481c0edcc833e959a64fc0d1185d1c07d9abd95674f7861b9e81868c202 +size 131952 diff --git a/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/Poses/Quinn/Quinn_hand_l_anim.uasset b/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/Poses/Quinn/Quinn_hand_l_anim.uasset new file mode 100644 index 00000000..ec3be71f --- /dev/null +++ b/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/Poses/Quinn/Quinn_hand_l_anim.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:35d5a7296f4b2f06506bc1804a0f8a1b5acd6b277450a8f16c66667a1a5ce79d +size 59141 diff --git a/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/Poses/Quinn/Quinn_hand_l_pose.uasset b/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/Poses/Quinn/Quinn_hand_l_pose.uasset new file mode 100644 index 00000000..8f46f2f5 --- /dev/null +++ b/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/Poses/Quinn/Quinn_hand_l_pose.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d8bb2a9106bfe27f7edc51a421346adeb114bc03e3d28b02e11680a7afac5e87 +size 168982 diff --git a/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/Poses/Quinn/Quinn_hand_r_anim.uasset b/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/Poses/Quinn/Quinn_hand_r_anim.uasset new file mode 100644 index 00000000..68b24613 --- /dev/null +++ b/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/Poses/Quinn/Quinn_hand_r_anim.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:cf604470532fda86259c302e289344845dec4534a587a08d90ccd471a6d5015a +size 59143 diff --git a/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/Poses/Quinn/Quinn_hand_r_pose.uasset b/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/Poses/Quinn/Quinn_hand_r_pose.uasset new file mode 100644 index 00000000..dec28731 --- /dev/null +++ b/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/Poses/Quinn/Quinn_hand_r_pose.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b74a369ae02fcba33cc58eb0adea2b9e75aa23f765e90153d7431544b2ab62ed +size 168982 diff --git a/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/Poses/Quinn/Quinn_lowerarm_l_anim.uasset b/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/Poses/Quinn/Quinn_lowerarm_l_anim.uasset new file mode 100644 index 00000000..09e63c52 --- /dev/null +++ b/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/Poses/Quinn/Quinn_lowerarm_l_anim.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:c9811d92c228fcc359c7ea4a8edd75654250872b2d53afafb15ce5b544e4e4b4 +size 95170 diff --git a/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/Poses/Quinn/Quinn_lowerarm_l_pose.uasset b/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/Poses/Quinn/Quinn_lowerarm_l_pose.uasset new file mode 100644 index 00000000..ddfe6f8b --- /dev/null +++ b/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/Poses/Quinn/Quinn_lowerarm_l_pose.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:df72c191c2ca9520e199904e02662a18703a6a6a1932b460ec4ab87875581932 +size 399362 diff --git a/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/Poses/Quinn/Quinn_lowerarm_r_anim.uasset b/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/Poses/Quinn/Quinn_lowerarm_r_anim.uasset new file mode 100644 index 00000000..27d5a7ca --- /dev/null +++ b/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/Poses/Quinn/Quinn_lowerarm_r_anim.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a4afc263c634f34988b35d831c31797a2b5caf793d18b2c9ced7463d87a67432 +size 95172 diff --git a/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/Poses/Quinn/Quinn_lowerarm_r_pose.uasset b/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/Poses/Quinn/Quinn_lowerarm_r_pose.uasset new file mode 100644 index 00000000..f8388f33 --- /dev/null +++ b/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/Poses/Quinn/Quinn_lowerarm_r_pose.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:1a1aca955ce2d3f39ecc3f99ba4e84ff15efa2c739aca482bed9c832f8974a16 +size 399362 diff --git a/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/Poses/Quinn/Quinn_thigh_l_anim.uasset b/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/Poses/Quinn/Quinn_thigh_l_anim.uasset new file mode 100644 index 00000000..57c4da95 --- /dev/null +++ b/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/Poses/Quinn/Quinn_thigh_l_anim.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:80291d670ebbf2bf83e00b8eb5cf778bdcce65c69e6d5ded19de0735f259e725 +size 119150 diff --git a/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/Poses/Quinn/Quinn_thigh_l_pose.uasset b/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/Poses/Quinn/Quinn_thigh_l_pose.uasset new file mode 100644 index 00000000..bfc7a63e --- /dev/null +++ b/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/Poses/Quinn/Quinn_thigh_l_pose.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f02da143850cb1e7530144714de054cadf0360af342779ce7dde8e6c702b39f5 +size 557448 diff --git a/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/Poses/Quinn/Quinn_thigh_r_anim.uasset b/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/Poses/Quinn/Quinn_thigh_r_anim.uasset new file mode 100644 index 00000000..791b5783 --- /dev/null +++ b/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/Poses/Quinn/Quinn_thigh_r_anim.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:5290046e20673b247d12f49b09dfc6345fc9c3ed94d69d4c27eb36939224af44 +size 119152 diff --git a/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/Poses/Quinn/Quinn_thigh_r_pose.uasset b/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/Poses/Quinn/Quinn_thigh_r_pose.uasset new file mode 100644 index 00000000..9b1dd61f --- /dev/null +++ b/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/Poses/Quinn/Quinn_thigh_r_pose.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:7d64cf78ef6c012d5a5473681f2e30958ed9b9e316a1ae5c067fdcfd4bab2dff +size 557448 diff --git a/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/Poses/Quinn/Quinn_upperarm_l_anim.uasset b/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/Poses/Quinn/Quinn_upperarm_l_anim.uasset new file mode 100644 index 00000000..1de13a5d --- /dev/null +++ b/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/Poses/Quinn/Quinn_upperarm_l_anim.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:44579e38e5daa8cdf0ea5e91e5615c559a4ff49af59e219813a73f70fe3669aa +size 107171 diff --git a/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/Poses/Quinn/Quinn_upperarm_l_pose.uasset b/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/Poses/Quinn/Quinn_upperarm_l_pose.uasset new file mode 100644 index 00000000..4411b7e9 --- /dev/null +++ b/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/Poses/Quinn/Quinn_upperarm_l_pose.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b8395312c3806b120b145e0f12d121470cdbd3cd5f20920b6a57ff7b3768faa5 +size 485273 diff --git a/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/Poses/Quinn/Quinn_upperarm_r_anim.uasset b/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/Poses/Quinn/Quinn_upperarm_r_anim.uasset new file mode 100644 index 00000000..697794ab --- /dev/null +++ b/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/Poses/Quinn/Quinn_upperarm_r_anim.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:57abcd99441bf8add532a089ed4e4d84f0d9a4cde364a7fbb257a93a4360abec +size 107173 diff --git a/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/Poses/Quinn/Quinn_upperarm_r_pose.uasset b/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/Poses/Quinn/Quinn_upperarm_r_pose.uasset new file mode 100644 index 00000000..38e3461b --- /dev/null +++ b/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/Poses/Quinn/Quinn_upperarm_r_pose.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ef3cf53ba9d8e6cd365bbaf0872feeed031fb8df636e5ad98a371e70909e75c9 +size 488283 diff --git a/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/RTG_Mannequin.uasset b/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/RTG_Mannequin.uasset new file mode 100644 index 00000000..d35d1f94 --- /dev/null +++ b/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/RTG_Mannequin.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:7ec102df7e53ef4385079d0cae403bb9c3e666b0a04bf32b1148563083de5f76 +size 13589 diff --git a/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Textures/Manny/T_Manny_01_ASAOPMASK_MSK.uasset b/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Textures/Manny/T_Manny_01_ASAOPMASK_MSK.uasset new file mode 100644 index 00000000..4f63c941 --- /dev/null +++ b/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Textures/Manny/T_Manny_01_ASAOPMASK_MSK.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d9d6193987025eb29f967d5ccb5b7901b4381e5c10e415db41c176ea4572ef11 +size 3612394 diff --git a/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Textures/Manny/T_Manny_01_BN.uasset b/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Textures/Manny/T_Manny_01_BN.uasset new file mode 100644 index 00000000..cc3a87eb --- /dev/null +++ b/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Textures/Manny/T_Manny_01_BN.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:afe938a994f15b8fe1e0342e614635923745e83907b73dfaf9e622c963a53dad +size 18513946 diff --git a/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Textures/Manny/T_Manny_01_CCRCCPlastic_MSK.uasset b/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Textures/Manny/T_Manny_01_CCRCCPlastic_MSK.uasset new file mode 100644 index 00000000..b87cea11 --- /dev/null +++ b/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Textures/Manny/T_Manny_01_CCRCCPlastic_MSK.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:c0ec57bdad72c7ed955916bc3046c68b30952ee6f03b2a85ec227fede620b362 +size 10271764 diff --git a/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Textures/Manny/T_Manny_01_D.uasset b/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Textures/Manny/T_Manny_01_D.uasset new file mode 100644 index 00000000..54ae2e0e --- /dev/null +++ b/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Textures/Manny/T_Manny_01_D.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:19c9590688726f55ab28ec7af40adc894c445eda255b7799c06a3351a8fd5dcf +size 5740132 diff --git a/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Textures/Manny/T_Manny_01_MSR_MSK.uasset b/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Textures/Manny/T_Manny_01_MSR_MSK.uasset new file mode 100644 index 00000000..4fc7f16e --- /dev/null +++ b/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Textures/Manny/T_Manny_01_MSR_MSK.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f853e5fe06fd03309769cd2dd656e56ece60ef917d53178cdbd55c8832aeb0b0 +size 11037967 diff --git a/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Textures/Manny/T_Manny_01_N.uasset b/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Textures/Manny/T_Manny_01_N.uasset new file mode 100644 index 00000000..5bc356d7 --- /dev/null +++ b/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Textures/Manny/T_Manny_01_N.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b03f66c9332142ba3ced19ddc37cf332794c045e2d43a7bb676c4a4b06e36061 +size 7198028 diff --git a/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Textures/Manny/T_Manny_01_Tan.uasset b/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Textures/Manny/T_Manny_01_Tan.uasset new file mode 100644 index 00000000..4dee7ebb --- /dev/null +++ b/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Textures/Manny/T_Manny_01_Tan.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:82a54cc8769089d8d874e4dee8978893d454dc3e91672c701233e3765bb6039f +size 1357549 diff --git a/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Textures/Manny/T_Manny_02_ASAOPMASK_MSK.uasset b/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Textures/Manny/T_Manny_02_ASAOPMASK_MSK.uasset new file mode 100644 index 00000000..9ad1a156 --- /dev/null +++ b/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Textures/Manny/T_Manny_02_ASAOPMASK_MSK.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:4ded416115c3f655485bcb55362ea06fbe8f47440d4be9b3fd7ed88ba7546c57 +size 8341170 diff --git a/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Textures/Manny/T_Manny_02_BN.uasset b/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Textures/Manny/T_Manny_02_BN.uasset new file mode 100644 index 00000000..fbeb06b4 --- /dev/null +++ b/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Textures/Manny/T_Manny_02_BN.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:321087605f95eb2e4842e14a50c6103b9068a57a6243e2d0fa873686684baad0 +size 21139305 diff --git a/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Textures/Manny/T_Manny_02_CCRCCPlastic_MSK.uasset b/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Textures/Manny/T_Manny_02_CCRCCPlastic_MSK.uasset new file mode 100644 index 00000000..434d166f --- /dev/null +++ b/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Textures/Manny/T_Manny_02_CCRCCPlastic_MSK.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:176ddc8fedd7f83cf83f50834db2bd66a5d9242a40e2caec5be50dd2f70dd830 +size 13143835 diff --git a/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Textures/Manny/T_Manny_02_D.uasset b/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Textures/Manny/T_Manny_02_D.uasset new file mode 100644 index 00000000..66be3576 --- /dev/null +++ b/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Textures/Manny/T_Manny_02_D.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a8b6209275181a583ecf7cc09fddfbd572bd84cf0d1c4fb37d6a83cec57d783e +size 9033300 diff --git a/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Textures/Manny/T_Manny_02_MSR_MSK.uasset b/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Textures/Manny/T_Manny_02_MSR_MSK.uasset new file mode 100644 index 00000000..6c01dcd3 --- /dev/null +++ b/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Textures/Manny/T_Manny_02_MSR_MSK.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:4231e9852bad86777fc300d63dbaa79d39f02e05f014894e0b2d04cef1f8a3e0 +size 13677393 diff --git a/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Textures/Manny/T_Manny_02_N.uasset b/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Textures/Manny/T_Manny_02_N.uasset new file mode 100644 index 00000000..054a64a5 --- /dev/null +++ b/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Textures/Manny/T_Manny_02_N.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:766a04e3601e2f7a05e6a98a8ebcc686bbca8bcaacc03291f869068c40cf44cd +size 7269112 diff --git a/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Textures/Manny/T_Manny_02_Tan.uasset b/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Textures/Manny/T_Manny_02_Tan.uasset new file mode 100644 index 00000000..bba8ece2 --- /dev/null +++ b/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Textures/Manny/T_Manny_02_Tan.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ebbf4022a70efdc480e3880867d3a772ca2f13577514eb6b5cd9175ecc8b7ac2 +size 2153569 diff --git a/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Textures/Quinn/T_Quinn_01ID_BN.uasset b/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Textures/Quinn/T_Quinn_01ID_BN.uasset new file mode 100644 index 00000000..dc1695f8 --- /dev/null +++ b/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Textures/Quinn/T_Quinn_01ID_BN.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b9b2dbe21cd947d3615eba6478966f3521b05d09211e0628184134bfd906e21f +size 16108379 diff --git a/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Textures/Quinn/T_Quinn_01ID_D.uasset b/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Textures/Quinn/T_Quinn_01ID_D.uasset new file mode 100644 index 00000000..f2d4d67c --- /dev/null +++ b/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Textures/Quinn/T_Quinn_01ID_D.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:cd16576a92ac50a81a69f0fc1c4fee4f5a671d819f698639479a41dffcc6045e +size 4710914 diff --git a/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Textures/Quinn/T_Quinn_01ID_MSR_MSK.uasset b/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Textures/Quinn/T_Quinn_01ID_MSR_MSK.uasset new file mode 100644 index 00000000..f44f47dc --- /dev/null +++ b/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Textures/Quinn/T_Quinn_01ID_MSR_MSK.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:3b8e783361011ce33b9dea10f1bdd8f915b12efb3d3ace5c5b6d5049e7f404f9 +size 11655926 diff --git a/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Textures/Quinn/T_Quinn_01ID_N.uasset b/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Textures/Quinn/T_Quinn_01ID_N.uasset new file mode 100644 index 00000000..330656e7 --- /dev/null +++ b/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Textures/Quinn/T_Quinn_01ID_N.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:cb239cf13f6e7761a95442749a7a68d44bbb075e9dd965277107313eb8e5b290 +size 5217455 diff --git a/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Textures/Quinn/T_Quinn_01ID_Tan.uasset b/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Textures/Quinn/T_Quinn_01ID_Tan.uasset new file mode 100644 index 00000000..8cfa1129 --- /dev/null +++ b/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Textures/Quinn/T_Quinn_01ID_Tan.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:faed00de843abcb013d3b59b9ff4025a7792c970c61e08d360a46a4549ba9b21 +size 1104408 diff --git a/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Textures/Quinn/T_Quinn_01_ASAOMASK_MSK.uasset b/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Textures/Quinn/T_Quinn_01_ASAOMASK_MSK.uasset new file mode 100644 index 00000000..62a520a6 --- /dev/null +++ b/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Textures/Quinn/T_Quinn_01_ASAOMASK_MSK.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a609a98d50bac5143c9421774ce99e737b7aec6afcc762e2674751cf1367254f +size 5834622 diff --git a/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Textures/Quinn/T_Quinn_01_CCRCCPlastic_MSK.uasset b/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Textures/Quinn/T_Quinn_01_CCRCCPlastic_MSK.uasset new file mode 100644 index 00000000..e9c1f2f9 --- /dev/null +++ b/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Textures/Quinn/T_Quinn_01_CCRCCPlastic_MSK.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:4c59546202439d76750e5b2dc5ce16638e5ba8a105d23e952d947be51cf397ee +size 12399718 diff --git a/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Textures/Quinn/T_Quinn_02ID_BN.uasset b/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Textures/Quinn/T_Quinn_02ID_BN.uasset new file mode 100644 index 00000000..512284a0 --- /dev/null +++ b/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Textures/Quinn/T_Quinn_02ID_BN.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:c9e566088ab415b4ab1fbf674880372d4f1dabf66b91fd26df0f4ab109203224 +size 19706663 diff --git a/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Textures/Quinn/T_Quinn_02ID_D.uasset b/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Textures/Quinn/T_Quinn_02ID_D.uasset new file mode 100644 index 00000000..e08d9438 --- /dev/null +++ b/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Textures/Quinn/T_Quinn_02ID_D.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:5941d417ca6312003935cd4ea0b88b8192207ba1e88b3feb924e633f0080a6a9 +size 6732282 diff --git a/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Textures/Quinn/T_Quinn_02ID_MSR_MSK.uasset b/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Textures/Quinn/T_Quinn_02ID_MSR_MSK.uasset new file mode 100644 index 00000000..d387ee1a --- /dev/null +++ b/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Textures/Quinn/T_Quinn_02ID_MSR_MSK.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:79fadb22034452a17bc381ce845347c94f4cdb069f6e5d70a3caa2e50450aec7 +size 13169556 diff --git a/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Textures/Quinn/T_Quinn_02ID_N.uasset b/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Textures/Quinn/T_Quinn_02ID_N.uasset new file mode 100644 index 00000000..946ce264 --- /dev/null +++ b/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Textures/Quinn/T_Quinn_02ID_N.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:5fdce23eac905d8bef79eeb463d1b5885b1f7fe94626f261a8544050eec81149 +size 5217455 diff --git a/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Textures/Quinn/T_Quinn_02ID_Tan.uasset b/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Textures/Quinn/T_Quinn_02ID_Tan.uasset new file mode 100644 index 00000000..a9a702e2 --- /dev/null +++ b/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Textures/Quinn/T_Quinn_02ID_Tan.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f6a39df9d091562417420c2ae5f23a490ef085f51445599f708aa74b989a4fbb +size 1758275 diff --git a/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Textures/Quinn/T_Quinn_02_ASAOMASK_MSK.uasset b/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Textures/Quinn/T_Quinn_02_ASAOMASK_MSK.uasset new file mode 100644 index 00000000..d16e6bed --- /dev/null +++ b/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Textures/Quinn/T_Quinn_02_ASAOMASK_MSK.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:509bca88dce73baa774f45ee2e5a336928db2b6a5aa3f473ed05dfe1edf7fdc3 +size 6901761 diff --git a/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Textures/Quinn/T_Quinn_02_CCRCCPlastic_MSK.uasset b/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Textures/Quinn/T_Quinn_02_CCRCCPlastic_MSK.uasset new file mode 100644 index 00000000..fecab4c9 --- /dev/null +++ b/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Textures/Quinn/T_Quinn_02_CCRCCPlastic_MSK.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:9ddc71bc1851c3e8657d0093d8a8b451c7e25ed143c43e77a9c246a453c646c7 +size 13427650 diff --git a/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Textures/Shared/T_UE_Logo_M.uasset b/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Textures/Shared/T_UE_Logo_M.uasset new file mode 100644 index 00000000..1b633b61 --- /dev/null +++ b/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Textures/Shared/T_UE_Logo_M.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:2a99d47f554511c79553803721702bf58f71e5c56553f1dde948aeeabb226e90 +size 69737 diff --git a/EndlessVendetta/Content/StarterContent/Particles/P_Ambient_Dust.uasset b/EndlessVendetta/Content/StarterContent/Particles/P_Ambient_Dust.uasset index 16ecae3d..4d2f79f2 100644 --- a/EndlessVendetta/Content/StarterContent/Particles/P_Ambient_Dust.uasset +++ b/EndlessVendetta/Content/StarterContent/Particles/P_Ambient_Dust.uasset @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:64419a367bb9a6ffc554aad1ea3a6c988438aa4ff5d6f712c1702664d5fb9e0f +oid sha256:818d8dd3a7817841c13acd921331fd7710f2482245efcaa53e792c711e67ae1b size 53268 From 9c2a1abeab5cfa11e0a2fd97f69b864a11313642 Mon Sep 17 00:00:00 2001 From: Rafal Swierczek <34179rs@gmail.com> Date: Sat, 30 Sep 2023 17:23:11 +0100 Subject: [PATCH 029/112] Implemented a Temp Gadget Test Enemy --- EndlessVendetta/Content/Gadgets/BP_GadgetTestEnemy.uasset | 3 +++ .../Maps/GunMechanicTester/4/NE/2GFAH24W7HHTRWO5SDGMSZ.uasset | 3 +++ 2 files changed, 6 insertions(+) create mode 100644 EndlessVendetta/Content/Gadgets/BP_GadgetTestEnemy.uasset create mode 100644 EndlessVendetta/Content/__ExternalActors__/FirstPerson/Maps/GunMechanicTester/4/NE/2GFAH24W7HHTRWO5SDGMSZ.uasset diff --git a/EndlessVendetta/Content/Gadgets/BP_GadgetTestEnemy.uasset b/EndlessVendetta/Content/Gadgets/BP_GadgetTestEnemy.uasset new file mode 100644 index 00000000..5340c880 --- /dev/null +++ b/EndlessVendetta/Content/Gadgets/BP_GadgetTestEnemy.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:6e5052a85c00c1a3b15c810175d56caa13c047e4fc73a372e469e6a6fcdc8305 +size 28918 diff --git a/EndlessVendetta/Content/__ExternalActors__/FirstPerson/Maps/GunMechanicTester/4/NE/2GFAH24W7HHTRWO5SDGMSZ.uasset b/EndlessVendetta/Content/__ExternalActors__/FirstPerson/Maps/GunMechanicTester/4/NE/2GFAH24W7HHTRWO5SDGMSZ.uasset new file mode 100644 index 00000000..564f02d1 --- /dev/null +++ b/EndlessVendetta/Content/__ExternalActors__/FirstPerson/Maps/GunMechanicTester/4/NE/2GFAH24W7HHTRWO5SDGMSZ.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:8edc43e34140db370cd832d70374ee75a1c4b8aab02c18815656f9494ecf7883 +size 5885 From 5e36b9e25e541c0045e221f1ea6e7430162d4e72 Mon Sep 17 00:00:00 2001 From: Rafal Swierczek <34179rs@gmail.com> Date: Sat, 30 Sep 2023 19:29:41 +0100 Subject: [PATCH 030/112] Switched Gadget Attachment Point to Players Camera --- .../Blueprints/BP_FirstPersonCharacter.uasset | 4 ++-- .../Source/EndlessVendetta/EndlessVendettaCharacter.cpp | 8 +++++++- .../Source/EndlessVendetta/GadgetSystem/GadgetBase.h | 9 ++++++++- .../EndlessVendetta/GadgetSystem/GadgetManager.cpp | 8 +++++--- .../Source/EndlessVendetta/GadgetSystem/GadgetManager.h | 2 +- 5 files changed, 23 insertions(+), 8 deletions(-) diff --git a/EndlessVendetta/Content/FirstPerson/Blueprints/BP_FirstPersonCharacter.uasset b/EndlessVendetta/Content/FirstPerson/Blueprints/BP_FirstPersonCharacter.uasset index a993997e..68a7823a 100644 --- a/EndlessVendetta/Content/FirstPerson/Blueprints/BP_FirstPersonCharacter.uasset +++ b/EndlessVendetta/Content/FirstPerson/Blueprints/BP_FirstPersonCharacter.uasset @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:3192f3e53f9cde4484a9e8fd75184a71bf9ea1da5876fee94ceded15c274685a -size 26191 +oid sha256:072d87c768407249e6e50f7b87ab9a88392c17cf82c72934e3c947e2943210bb +size 26284 diff --git a/EndlessVendetta/Source/EndlessVendetta/EndlessVendettaCharacter.cpp b/EndlessVendetta/Source/EndlessVendetta/EndlessVendettaCharacter.cpp index b54d9bab..1f728d05 100644 --- a/EndlessVendetta/Source/EndlessVendetta/EndlessVendettaCharacter.cpp +++ b/EndlessVendetta/Source/EndlessVendetta/EndlessVendettaCharacter.cpp @@ -54,7 +54,13 @@ void AEndlessVendettaCharacter::BeginPlay() GadgetManager = Cast(GadgetManagerActor); FAttachmentTransformRules AttachmentRules(EAttachmentRule::SnapToTarget, true); GadgetManagerActor->AttachToComponent(GetRootComponent(), AttachmentRules); - GadgetManager->SpawnGadgets(GetRootComponent()); + for (UActorComponent* PlayersCamera : GetComponentsByTag(UCameraComponent::StaticClass(), FName("PlayersCamera"))) + { + UE_LOG(LogTemp, Warning, TEXT("An actor component with PlayersCamera tag has been found")); + GadgetManager->SpawnGadgets(Cast(PlayersCamera)); + break; + } + } //////////////////////////////////////////////////////////////////////////// Input diff --git a/EndlessVendetta/Source/EndlessVendetta/GadgetSystem/GadgetBase.h b/EndlessVendetta/Source/EndlessVendetta/GadgetSystem/GadgetBase.h index 37f5190e..50917ebb 100644 --- a/EndlessVendetta/Source/EndlessVendetta/GadgetSystem/GadgetBase.h +++ b/EndlessVendetta/Source/EndlessVendetta/GadgetSystem/GadgetBase.h @@ -32,6 +32,9 @@ protected: UPROPERTY(EditDefaultsOnly, Category = "Gadget") FVector EquippedOffset = FVector(0, 0, 0); + UPROPERTY(EditDefaultsOnly, Category = "Gadget") + FRotator GadgetRotation = FRotator(0, 0, 0); + UPROPERTY(EditDefaultsOnly, CAtegory = "Gadget") FVector UnequippedOffset = FVector(0, 0, -1000); @@ -73,7 +76,11 @@ public: { return UnequippedOffset; } - + + FRotator GetGadgetSpawnRotation() + { + return GadgetRotation; + } // Sets default values for this actor's properties AGadgetBase(); diff --git a/EndlessVendetta/Source/EndlessVendetta/GadgetSystem/GadgetManager.cpp b/EndlessVendetta/Source/EndlessVendetta/GadgetSystem/GadgetManager.cpp index 6e5a8ee4..8f7c6aa0 100644 --- a/EndlessVendetta/Source/EndlessVendetta/GadgetSystem/GadgetManager.cpp +++ b/EndlessVendetta/Source/EndlessVendetta/GadgetSystem/GadgetManager.cpp @@ -25,7 +25,7 @@ void AGadgetManager::Tick(float DeltaTime) } -void AGadgetManager::SpawnGadgets(USceneComponent* PlayersRootComponent) +void AGadgetManager::SpawnGadgets(USceneComponent* PlayersCameraComponent) { if (!IsValid(ReconClass) || !IsValid(CombatClass)) UE_LOG(LogTemp, Fatal, TEXT("Recon or Combat class hasn't been set")); @@ -35,11 +35,13 @@ void AGadgetManager::SpawnGadgets(USceneComponent* PlayersRootComponent) AActor* SpawnedActor = GetWorld()->SpawnActor(ReconClass, GetActorLocation(), GetActorRotation(), SpawnParams); ReconGadget = Cast(SpawnedActor); - SpawnedActor->AttachToComponent(PlayersRootComponent, AttachmentRules); + SpawnedActor->AttachToComponent(PlayersCameraComponent, AttachmentRules); SpawnedActor->SetActorRelativeLocation(ReconGadget->GetUnequippedOffset()); + SpawnedActor->SetActorRelativeRotation(ReconGadget->GetGadgetSpawnRotation()); SpawnedActor = GetWorld()->SpawnActor(CombatClass, GetActorLocation(), GetActorRotation(), SpawnParams); CombatGadget = Cast(SpawnedActor); - SpawnedActor->AttachToComponent(PlayersRootComponent, AttachmentRules); + SpawnedActor->AttachToComponent(PlayersCameraComponent, AttachmentRules); SpawnedActor->SetActorRelativeLocation(CombatGadget->GetUnequippedOffset()); + SpawnedActor->SetActorRelativeRotation(CombatGadget->GetGadgetSpawnRotation()); } diff --git a/EndlessVendetta/Source/EndlessVendetta/GadgetSystem/GadgetManager.h b/EndlessVendetta/Source/EndlessVendetta/GadgetSystem/GadgetManager.h index 7935ac0d..686b2516 100644 --- a/EndlessVendetta/Source/EndlessVendetta/GadgetSystem/GadgetManager.h +++ b/EndlessVendetta/Source/EndlessVendetta/GadgetSystem/GadgetManager.h @@ -26,7 +26,7 @@ protected: virtual void BeginPlay() override; public: - void SpawnGadgets(USceneComponent* PlayersRootComponent); + void SpawnGadgets(USceneComponent* PlayersCameraComponent); // Sets default values for this actor's properties AGadgetManager(); From 8c7219c655e49eec5d021187d2a7d622fe52a617 Mon Sep 17 00:00:00 2001 From: Rafal Swierczek <34179rs@gmail.com> Date: Sat, 30 Sep 2023 22:11:10 +0100 Subject: [PATCH 031/112] Implemented Vision Links Watch Face --- .../Content/Gadgets/BP_GadgetTestEnemy.uasset | 4 +- .../Content/Gadgets/GM_GadgetManager.uasset | 4 +- .../VisionLink/RG_VisionLink.uasset | 3 ++ .../VisionLink/WBP_VisionLinkWatchFace.uasset | 3 ++ .../VisionLink/WatchFaceBGImage.png | 3 ++ .../VisionLink/WatchFaceBGImage.uasset | 3 ++ .../Content/Levels/GadgetSystemTestLevel.umap | 4 +- .../Blueprints/Blueprint_CeilingLight.uasset | 4 +- .../Particles/P_Ambient_Dust.uasset | 4 +- .../4/NE/2GFAH24W7HHTRWO5SDGMSZ.uasset | 3 -- .../GadgetSystem/GadgetBase.cpp | 2 +- .../EndlessVendetta/GadgetSystem/GadgetBase.h | 3 ++ .../GadgetClasses/Recon/VisionLink.cpp | 37 +++++++++++++++++++ .../GadgetClasses/Recon/VisionLink.h | 35 ++++++++++++++++++ 14 files changed, 98 insertions(+), 14 deletions(-) create mode 100644 EndlessVendetta/Content/Gadgets/ReconGadgets/VisionLink/RG_VisionLink.uasset create mode 100644 EndlessVendetta/Content/Gadgets/ReconGadgets/VisionLink/WBP_VisionLinkWatchFace.uasset create mode 100644 EndlessVendetta/Content/Gadgets/ReconGadgets/VisionLink/WatchFaceBGImage.png create mode 100644 EndlessVendetta/Content/Gadgets/ReconGadgets/VisionLink/WatchFaceBGImage.uasset delete mode 100644 EndlessVendetta/Content/__ExternalActors__/FirstPerson/Maps/GunMechanicTester/4/NE/2GFAH24W7HHTRWO5SDGMSZ.uasset create mode 100644 EndlessVendetta/Source/EndlessVendetta/GadgetSystem/GadgetClasses/Recon/VisionLink.cpp create mode 100644 EndlessVendetta/Source/EndlessVendetta/GadgetSystem/GadgetClasses/Recon/VisionLink.h diff --git a/EndlessVendetta/Content/Gadgets/BP_GadgetTestEnemy.uasset b/EndlessVendetta/Content/Gadgets/BP_GadgetTestEnemy.uasset index 5340c880..48b9b41e 100644 --- a/EndlessVendetta/Content/Gadgets/BP_GadgetTestEnemy.uasset +++ b/EndlessVendetta/Content/Gadgets/BP_GadgetTestEnemy.uasset @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:6e5052a85c00c1a3b15c810175d56caa13c047e4fc73a372e469e6a6fcdc8305 -size 28918 +oid sha256:7a3c55e1fa7f6cecc3cf312e04498d0b8d9bfdfaac710b43392a61dfd34399fd +size 29209 diff --git a/EndlessVendetta/Content/Gadgets/GM_GadgetManager.uasset b/EndlessVendetta/Content/Gadgets/GM_GadgetManager.uasset index 40b371f1..3f170b83 100644 --- a/EndlessVendetta/Content/Gadgets/GM_GadgetManager.uasset +++ b/EndlessVendetta/Content/Gadgets/GM_GadgetManager.uasset @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:e321d507454cc656ecee8ffaa8ce7a439b7bc824731e2932c160289609e6fe14 -size 22647 +oid sha256:654adc50d788c8fb0546796c4a290967958f12c156d3a135034339350831dba6 +size 22655 diff --git a/EndlessVendetta/Content/Gadgets/ReconGadgets/VisionLink/RG_VisionLink.uasset b/EndlessVendetta/Content/Gadgets/ReconGadgets/VisionLink/RG_VisionLink.uasset new file mode 100644 index 00000000..ed052b31 --- /dev/null +++ b/EndlessVendetta/Content/Gadgets/ReconGadgets/VisionLink/RG_VisionLink.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:cc03486eff6b6773661f66c933fa9133c4cb06574cb449b416f5f79620ddc5d3 +size 55610 diff --git a/EndlessVendetta/Content/Gadgets/ReconGadgets/VisionLink/WBP_VisionLinkWatchFace.uasset b/EndlessVendetta/Content/Gadgets/ReconGadgets/VisionLink/WBP_VisionLinkWatchFace.uasset new file mode 100644 index 00000000..2cc5c2f2 --- /dev/null +++ b/EndlessVendetta/Content/Gadgets/ReconGadgets/VisionLink/WBP_VisionLinkWatchFace.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:78f277f6a8815d1561fb351b22d894e56a144c05e6b5250e480c3b3beeadb119 +size 165946 diff --git a/EndlessVendetta/Content/Gadgets/ReconGadgets/VisionLink/WatchFaceBGImage.png b/EndlessVendetta/Content/Gadgets/ReconGadgets/VisionLink/WatchFaceBGImage.png new file mode 100644 index 00000000..b7f30e16 --- /dev/null +++ b/EndlessVendetta/Content/Gadgets/ReconGadgets/VisionLink/WatchFaceBGImage.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:fd09031c00b4f5c7775a880706b149a33d8c6137dc79cf156722c6197791198d +size 15063 diff --git a/EndlessVendetta/Content/Gadgets/ReconGadgets/VisionLink/WatchFaceBGImage.uasset b/EndlessVendetta/Content/Gadgets/ReconGadgets/VisionLink/WatchFaceBGImage.uasset new file mode 100644 index 00000000..d05f935a --- /dev/null +++ b/EndlessVendetta/Content/Gadgets/ReconGadgets/VisionLink/WatchFaceBGImage.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:afbeeb63e797939650edcf947c6d364fc2372b04290963f53cddc2025d7e4efa +size 19748 diff --git a/EndlessVendetta/Content/Levels/GadgetSystemTestLevel.umap b/EndlessVendetta/Content/Levels/GadgetSystemTestLevel.umap index 7ae1bbe3..bd4aee5a 100644 --- a/EndlessVendetta/Content/Levels/GadgetSystemTestLevel.umap +++ b/EndlessVendetta/Content/Levels/GadgetSystemTestLevel.umap @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:5187272f65c655c1bbca4f6a814ab42219fcb74a566fb68d72cc23cfa8b92999 -size 101262 +oid sha256:6c62d2b4827914f2af412d694fd0a91dd89833265ee15c3de4b1dd9123f1a94f +size 109679 diff --git a/EndlessVendetta/Content/StarterContent/Blueprints/Blueprint_CeilingLight.uasset b/EndlessVendetta/Content/StarterContent/Blueprints/Blueprint_CeilingLight.uasset index c5c3b84e..6842e215 100644 --- a/EndlessVendetta/Content/StarterContent/Blueprints/Blueprint_CeilingLight.uasset +++ b/EndlessVendetta/Content/StarterContent/Blueprints/Blueprint_CeilingLight.uasset @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:4a60a29ad596546d481e43dfb8698842a78cc07f4a4b1000fa397cfba4e72331 -size 158206 +oid sha256:120d16a134f7603db5d10931b9b1a163876b1f2691dffd91b10d871496f688b2 +size 43745 diff --git a/EndlessVendetta/Content/StarterContent/Particles/P_Ambient_Dust.uasset b/EndlessVendetta/Content/StarterContent/Particles/P_Ambient_Dust.uasset index 4d2f79f2..bf2e4391 100644 --- a/EndlessVendetta/Content/StarterContent/Particles/P_Ambient_Dust.uasset +++ b/EndlessVendetta/Content/StarterContent/Particles/P_Ambient_Dust.uasset @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:818d8dd3a7817841c13acd921331fd7710f2482245efcaa53e792c711e67ae1b -size 53268 +oid sha256:01ef616c7a8bd90cd1b7a13efb18a56f33346efbae51efa31f09804478b7621d +size 43456 diff --git a/EndlessVendetta/Content/__ExternalActors__/FirstPerson/Maps/GunMechanicTester/4/NE/2GFAH24W7HHTRWO5SDGMSZ.uasset b/EndlessVendetta/Content/__ExternalActors__/FirstPerson/Maps/GunMechanicTester/4/NE/2GFAH24W7HHTRWO5SDGMSZ.uasset deleted file mode 100644 index 564f02d1..00000000 --- a/EndlessVendetta/Content/__ExternalActors__/FirstPerson/Maps/GunMechanicTester/4/NE/2GFAH24W7HHTRWO5SDGMSZ.uasset +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:8edc43e34140db370cd832d70374ee75a1c4b8aab02c18815656f9494ecf7883 -size 5885 diff --git a/EndlessVendetta/Source/EndlessVendetta/GadgetSystem/GadgetBase.cpp b/EndlessVendetta/Source/EndlessVendetta/GadgetSystem/GadgetBase.cpp index 107df86f..a028af77 100644 --- a/EndlessVendetta/Source/EndlessVendetta/GadgetSystem/GadgetBase.cpp +++ b/EndlessVendetta/Source/EndlessVendetta/GadgetSystem/GadgetBase.cpp @@ -44,7 +44,7 @@ void AGadgetBase::Equip() bool AGadgetBase::Unequip() { - if (GadgetInUse) return false; + if (GadgetInUse && !UnequippableWhenInUse) return false; SetActorRelativeLocation(UnequippedOffset); Equipped = false; diff --git a/EndlessVendetta/Source/EndlessVendetta/GadgetSystem/GadgetBase.h b/EndlessVendetta/Source/EndlessVendetta/GadgetSystem/GadgetBase.h index 50917ebb..a0b65dce 100644 --- a/EndlessVendetta/Source/EndlessVendetta/GadgetSystem/GadgetBase.h +++ b/EndlessVendetta/Source/EndlessVendetta/GadgetSystem/GadgetBase.h @@ -44,6 +44,9 @@ protected: UPROPERTY(EditDefaultsOnly, Category = "Gadget") float CooldownTime; + UPROPERTY(EditDefaultsOnly, CAtegory = "Gadget") + bool UnequippableWhenInUse = false; + UPROPERTY(EditDefaultsOnly, Category = "Gadget") UInputMappingContext* GadgetMappingContext; diff --git a/EndlessVendetta/Source/EndlessVendetta/GadgetSystem/GadgetClasses/Recon/VisionLink.cpp b/EndlessVendetta/Source/EndlessVendetta/GadgetSystem/GadgetClasses/Recon/VisionLink.cpp new file mode 100644 index 00000000..68f67a4b --- /dev/null +++ b/EndlessVendetta/Source/EndlessVendetta/GadgetSystem/GadgetClasses/Recon/VisionLink.cpp @@ -0,0 +1,37 @@ +// Fill out your copyright notice in the Description page of Project Settings. + + +#include "VisionLink.h" + +void AVisionLink::BeginPlay() +{ + Super::BeginPlay(); + SetActorTickEnabled(false); + CooldownLength = CooldownTime; +} + + + +void AVisionLink::Tick(float DeltaSeconds) +{ + Super::Tick(DeltaSeconds); +} + +void AVisionLink::Activate() +{ + if (GadgetCantBeUsed()) return; + + Super::Activate(); + SetActorTickEnabled(true); + SwitchToActiveWatchFace(); +} + +void AVisionLink::FinishedUsing() +{ + SetActorTickEnabled(false); + SwitchToRechargingWatchFace(); + + Super::FinishedUsing(); +} + + diff --git a/EndlessVendetta/Source/EndlessVendetta/GadgetSystem/GadgetClasses/Recon/VisionLink.h b/EndlessVendetta/Source/EndlessVendetta/GadgetSystem/GadgetClasses/Recon/VisionLink.h new file mode 100644 index 00000000..a2a273fb --- /dev/null +++ b/EndlessVendetta/Source/EndlessVendetta/GadgetSystem/GadgetClasses/Recon/VisionLink.h @@ -0,0 +1,35 @@ +// Fill out your copyright notice in the Description page of Project Settings. + +#pragma once + +#include "CoreMinimal.h" +#include "EndlessVendetta/GadgetSystem/ReconGadget.h" +#include "VisionLink.generated.h" + +/** + * + */ +UCLASS() +class ENDLESSVENDETTA_API AVisionLink : public AReconGadget +{ + GENERATED_BODY() + + virtual void BeginPlay() override; + + virtual void Tick(float DeltaSeconds) override; + + virtual void Activate() override; + + virtual void FinishedUsing() override; + +protected: + UPROPERTY(BlueprintReadOnly, Category = "Vision Link") + float CooldownLength; + + UFUNCTION(BlueprintImplementableEvent, Category = "Vision Link") + void SwitchToActiveWatchFace(); + + UFUNCTION(BlueprintImplementableEvent, Category = "Vision Link") + void SwitchToRechargingWatchFace(); + +}; From e61b51d466b8461f0e414d63d32a4fc0c360ca15 Mon Sep 17 00:00:00 2001 From: Rafal Swierczek <34179rs@gmail.com> Date: Sun, 1 Oct 2023 12:47:50 +0100 Subject: [PATCH 032/112] Added new File Directory for FP Template Classes --- .../StarterContent/Blueprints/Blueprint_CeilingLight.uasset | 4 ++-- .../StarterContent/HDRI/HDRI_Epic_Courtyard_Daylight.uasset | 4 ++-- .../Source/EndlessVendetta/EndlessVendettaCharacter.cpp | 1 - .../EndlessVendettaProjectile.cpp | 0 .../EndlessVendettaProjectile.h | 0 .../{ => FirstPersonTemplateClasses}/TP_PickUpComponent.cpp | 0 .../{ => FirstPersonTemplateClasses}/TP_PickUpComponent.h | 2 +- .../{ => FirstPersonTemplateClasses}/TP_WeaponComponent.cpp | 2 +- .../{ => FirstPersonTemplateClasses}/TP_WeaponComponent.h | 0 9 files changed, 6 insertions(+), 7 deletions(-) rename EndlessVendetta/Source/EndlessVendetta/{ => FirstPersonTemplateClasses}/EndlessVendettaProjectile.cpp (100%) rename EndlessVendetta/Source/EndlessVendetta/{ => FirstPersonTemplateClasses}/EndlessVendettaProjectile.h (100%) rename EndlessVendetta/Source/EndlessVendetta/{ => FirstPersonTemplateClasses}/TP_PickUpComponent.cpp (100%) rename EndlessVendetta/Source/EndlessVendetta/{ => FirstPersonTemplateClasses}/TP_PickUpComponent.h (95%) rename EndlessVendetta/Source/EndlessVendetta/{ => FirstPersonTemplateClasses}/TP_WeaponComponent.cpp (98%) rename EndlessVendetta/Source/EndlessVendetta/{ => FirstPersonTemplateClasses}/TP_WeaponComponent.h (100%) diff --git a/EndlessVendetta/Content/StarterContent/Blueprints/Blueprint_CeilingLight.uasset b/EndlessVendetta/Content/StarterContent/Blueprints/Blueprint_CeilingLight.uasset index 6842e215..c5c3b84e 100644 --- a/EndlessVendetta/Content/StarterContent/Blueprints/Blueprint_CeilingLight.uasset +++ b/EndlessVendetta/Content/StarterContent/Blueprints/Blueprint_CeilingLight.uasset @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:120d16a134f7603db5d10931b9b1a163876b1f2691dffd91b10d871496f688b2 -size 43745 +oid sha256:4a60a29ad596546d481e43dfb8698842a78cc07f4a4b1000fa397cfba4e72331 +size 158206 diff --git a/EndlessVendetta/Content/StarterContent/HDRI/HDRI_Epic_Courtyard_Daylight.uasset b/EndlessVendetta/Content/StarterContent/HDRI/HDRI_Epic_Courtyard_Daylight.uasset index 0f990580..37d1e08f 100644 --- a/EndlessVendetta/Content/StarterContent/HDRI/HDRI_Epic_Courtyard_Daylight.uasset +++ b/EndlessVendetta/Content/StarterContent/HDRI/HDRI_Epic_Courtyard_Daylight.uasset @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:bc35eb2d43a47427d30aba0196f9eac90d089dd3abca319528c5d25c83510d0d -size 72364642 +oid sha256:56e13fbe6897a734316632f3c04e3e6b1f331dcbb878543e367ade26d2ae0075 +size 66790690 diff --git a/EndlessVendetta/Source/EndlessVendetta/EndlessVendettaCharacter.cpp b/EndlessVendetta/Source/EndlessVendetta/EndlessVendettaCharacter.cpp index 1f728d05..448d805c 100644 --- a/EndlessVendetta/Source/EndlessVendetta/EndlessVendettaCharacter.cpp +++ b/EndlessVendetta/Source/EndlessVendetta/EndlessVendettaCharacter.cpp @@ -1,7 +1,6 @@ // Copyright Epic Games, Inc. All Rights Reserved. #include "EndlessVendettaCharacter.h" -#include "EndlessVendettaProjectile.h" #include "Animation/AnimInstance.h" #include "Camera/CameraComponent.h" #include "Components/CapsuleComponent.h" diff --git a/EndlessVendetta/Source/EndlessVendetta/EndlessVendettaProjectile.cpp b/EndlessVendetta/Source/EndlessVendetta/FirstPersonTemplateClasses/EndlessVendettaProjectile.cpp similarity index 100% rename from EndlessVendetta/Source/EndlessVendetta/EndlessVendettaProjectile.cpp rename to EndlessVendetta/Source/EndlessVendetta/FirstPersonTemplateClasses/EndlessVendettaProjectile.cpp diff --git a/EndlessVendetta/Source/EndlessVendetta/EndlessVendettaProjectile.h b/EndlessVendetta/Source/EndlessVendetta/FirstPersonTemplateClasses/EndlessVendettaProjectile.h similarity index 100% rename from EndlessVendetta/Source/EndlessVendetta/EndlessVendettaProjectile.h rename to EndlessVendetta/Source/EndlessVendetta/FirstPersonTemplateClasses/EndlessVendettaProjectile.h diff --git a/EndlessVendetta/Source/EndlessVendetta/TP_PickUpComponent.cpp b/EndlessVendetta/Source/EndlessVendetta/FirstPersonTemplateClasses/TP_PickUpComponent.cpp similarity index 100% rename from EndlessVendetta/Source/EndlessVendetta/TP_PickUpComponent.cpp rename to EndlessVendetta/Source/EndlessVendetta/FirstPersonTemplateClasses/TP_PickUpComponent.cpp diff --git a/EndlessVendetta/Source/EndlessVendetta/TP_PickUpComponent.h b/EndlessVendetta/Source/EndlessVendetta/FirstPersonTemplateClasses/TP_PickUpComponent.h similarity index 95% rename from EndlessVendetta/Source/EndlessVendetta/TP_PickUpComponent.h rename to EndlessVendetta/Source/EndlessVendetta/FirstPersonTemplateClasses/TP_PickUpComponent.h index a59366e7..62b5655a 100644 --- a/EndlessVendetta/Source/EndlessVendetta/TP_PickUpComponent.h +++ b/EndlessVendetta/Source/EndlessVendetta/FirstPersonTemplateClasses/TP_PickUpComponent.h @@ -4,7 +4,7 @@ #include "CoreMinimal.h" #include "Components/SphereComponent.h" -#include "EndlessVendettaCharacter.h" +#include "EndlessVendetta/EndlessVendettaCharacter.h" #include "TP_PickUpComponent.generated.h" // Declaration of the delegate that will be called when someone picks this up diff --git a/EndlessVendetta/Source/EndlessVendetta/TP_WeaponComponent.cpp b/EndlessVendetta/Source/EndlessVendetta/FirstPersonTemplateClasses/TP_WeaponComponent.cpp similarity index 98% rename from EndlessVendetta/Source/EndlessVendetta/TP_WeaponComponent.cpp rename to EndlessVendetta/Source/EndlessVendetta/FirstPersonTemplateClasses/TP_WeaponComponent.cpp index bd7c0deb..50dfa1d8 100644 --- a/EndlessVendetta/Source/EndlessVendetta/TP_WeaponComponent.cpp +++ b/EndlessVendetta/Source/EndlessVendetta/FirstPersonTemplateClasses/TP_WeaponComponent.cpp @@ -2,7 +2,7 @@ #include "TP_WeaponComponent.h" -#include "EndlessVendettaCharacter.h" +#include "EndlessVendetta/EndlessVendettaCharacter.h" #include "EndlessVendettaProjectile.h" #include "GameFramework/PlayerController.h" #include "Camera/PlayerCameraManager.h" diff --git a/EndlessVendetta/Source/EndlessVendetta/TP_WeaponComponent.h b/EndlessVendetta/Source/EndlessVendetta/FirstPersonTemplateClasses/TP_WeaponComponent.h similarity index 100% rename from EndlessVendetta/Source/EndlessVendetta/TP_WeaponComponent.h rename to EndlessVendetta/Source/EndlessVendetta/FirstPersonTemplateClasses/TP_WeaponComponent.h From aca63055f323a3eb4539269c7938fac37c8bf2bc Mon Sep 17 00:00:00 2001 From: Rafal Swierczek <34179rs@gmail.com> Date: Sun, 1 Oct 2023 13:51:15 +0100 Subject: [PATCH 033/112] Created Vision Links Viewport Widget Has a functioning battery life bar --- .../Gadgets/ReconGadgets/VisionLink/RG_VisionLink.uasset | 4 ++-- .../ReconGadgets/VisionLink/VisionLinkViewPortBG.png | 3 +++ .../ReconGadgets/VisionLink/VisionLinkViewPortBG.uasset | 3 +++ .../VisionLink/WBP_VisionLinkViewPort.uasset | 3 +++ .../VisionLink/WBP_VisionLinkWatchFace.uasset | 4 ++-- .../HDRI/HDRI_Epic_Courtyard_Daylight.uasset | 4 ++-- .../StarterContent/Particles/P_Ambient_Dust.uasset | 4 ++-- .../GadgetSystem/GadgetClasses/Recon/VisionLink.cpp | 5 +++-- .../GadgetSystem/GadgetClasses/Recon/VisionLink.h | 9 ++++++--- 9 files changed, 26 insertions(+), 13 deletions(-) create mode 100644 EndlessVendetta/Content/Gadgets/ReconGadgets/VisionLink/VisionLinkViewPortBG.png create mode 100644 EndlessVendetta/Content/Gadgets/ReconGadgets/VisionLink/VisionLinkViewPortBG.uasset create mode 100644 EndlessVendetta/Content/Gadgets/ReconGadgets/VisionLink/WBP_VisionLinkViewPort.uasset diff --git a/EndlessVendetta/Content/Gadgets/ReconGadgets/VisionLink/RG_VisionLink.uasset b/EndlessVendetta/Content/Gadgets/ReconGadgets/VisionLink/RG_VisionLink.uasset index ed052b31..ace3be4f 100644 --- a/EndlessVendetta/Content/Gadgets/ReconGadgets/VisionLink/RG_VisionLink.uasset +++ b/EndlessVendetta/Content/Gadgets/ReconGadgets/VisionLink/RG_VisionLink.uasset @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:cc03486eff6b6773661f66c933fa9133c4cb06574cb449b416f5f79620ddc5d3 -size 55610 +oid sha256:a4b1eb50312687772c3a03c0ef4e857d8db493b85d341ca5d9d4fda2cd8669f2 +size 69951 diff --git a/EndlessVendetta/Content/Gadgets/ReconGadgets/VisionLink/VisionLinkViewPortBG.png b/EndlessVendetta/Content/Gadgets/ReconGadgets/VisionLink/VisionLinkViewPortBG.png new file mode 100644 index 00000000..66c7ba77 --- /dev/null +++ b/EndlessVendetta/Content/Gadgets/ReconGadgets/VisionLink/VisionLinkViewPortBG.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:527675573f05b7640baddcab7340a398e3daa8a170ef6b43d0e8ce4b22594c1c +size 60971 diff --git a/EndlessVendetta/Content/Gadgets/ReconGadgets/VisionLink/VisionLinkViewPortBG.uasset b/EndlessVendetta/Content/Gadgets/ReconGadgets/VisionLink/VisionLinkViewPortBG.uasset new file mode 100644 index 00000000..c31bec52 --- /dev/null +++ b/EndlessVendetta/Content/Gadgets/ReconGadgets/VisionLink/VisionLinkViewPortBG.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:fd673d7b47c8310bbae47b765919076a4b73cc20813122a3904f97950973435c +size 45518 diff --git a/EndlessVendetta/Content/Gadgets/ReconGadgets/VisionLink/WBP_VisionLinkViewPort.uasset b/EndlessVendetta/Content/Gadgets/ReconGadgets/VisionLink/WBP_VisionLinkViewPort.uasset new file mode 100644 index 00000000..847aeaaf --- /dev/null +++ b/EndlessVendetta/Content/Gadgets/ReconGadgets/VisionLink/WBP_VisionLinkViewPort.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:fb578a8064dba062142046bcb432a36f7cf120096d75835630f55c95df96c3be +size 76094 diff --git a/EndlessVendetta/Content/Gadgets/ReconGadgets/VisionLink/WBP_VisionLinkWatchFace.uasset b/EndlessVendetta/Content/Gadgets/ReconGadgets/VisionLink/WBP_VisionLinkWatchFace.uasset index 2cc5c2f2..b205dedf 100644 --- a/EndlessVendetta/Content/Gadgets/ReconGadgets/VisionLink/WBP_VisionLinkWatchFace.uasset +++ b/EndlessVendetta/Content/Gadgets/ReconGadgets/VisionLink/WBP_VisionLinkWatchFace.uasset @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:78f277f6a8815d1561fb351b22d894e56a144c05e6b5250e480c3b3beeadb119 -size 165946 +oid sha256:b05365476d12ad22f88a47f072cccc79b65376d67c4eb1ac21a02556c0922449 +size 162045 diff --git a/EndlessVendetta/Content/StarterContent/HDRI/HDRI_Epic_Courtyard_Daylight.uasset b/EndlessVendetta/Content/StarterContent/HDRI/HDRI_Epic_Courtyard_Daylight.uasset index 37d1e08f..0f990580 100644 --- a/EndlessVendetta/Content/StarterContent/HDRI/HDRI_Epic_Courtyard_Daylight.uasset +++ b/EndlessVendetta/Content/StarterContent/HDRI/HDRI_Epic_Courtyard_Daylight.uasset @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:56e13fbe6897a734316632f3c04e3e6b1f331dcbb878543e367ade26d2ae0075 -size 66790690 +oid sha256:bc35eb2d43a47427d30aba0196f9eac90d089dd3abca319528c5d25c83510d0d +size 72364642 diff --git a/EndlessVendetta/Content/StarterContent/Particles/P_Ambient_Dust.uasset b/EndlessVendetta/Content/StarterContent/Particles/P_Ambient_Dust.uasset index bf2e4391..1f62de3d 100644 --- a/EndlessVendetta/Content/StarterContent/Particles/P_Ambient_Dust.uasset +++ b/EndlessVendetta/Content/StarterContent/Particles/P_Ambient_Dust.uasset @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:01ef616c7a8bd90cd1b7a13efb18a56f33346efbae51efa31f09804478b7621d -size 43456 +oid sha256:4626e21a5b63987ab4b19eadd047c6bc94a0bf6fe8ca9b40681a1f7d7bdd803e +size 53268 diff --git a/EndlessVendetta/Source/EndlessVendetta/GadgetSystem/GadgetClasses/Recon/VisionLink.cpp b/EndlessVendetta/Source/EndlessVendetta/GadgetSystem/GadgetClasses/Recon/VisionLink.cpp index 68f67a4b..f2b3c9d0 100644 --- a/EndlessVendetta/Source/EndlessVendetta/GadgetSystem/GadgetClasses/Recon/VisionLink.cpp +++ b/EndlessVendetta/Source/EndlessVendetta/GadgetSystem/GadgetClasses/Recon/VisionLink.cpp @@ -8,6 +8,7 @@ void AVisionLink::BeginPlay() Super::BeginPlay(); SetActorTickEnabled(false); CooldownLength = CooldownTime; + InUseDuration = GadgetMaxUptime; } @@ -23,13 +24,13 @@ void AVisionLink::Activate() Super::Activate(); SetActorTickEnabled(true); - SwitchToActiveWatchFace(); + VisionLinkActivated(); } void AVisionLink::FinishedUsing() { SetActorTickEnabled(false); - SwitchToRechargingWatchFace(); + VisionLinkRecharging(); Super::FinishedUsing(); } diff --git a/EndlessVendetta/Source/EndlessVendetta/GadgetSystem/GadgetClasses/Recon/VisionLink.h b/EndlessVendetta/Source/EndlessVendetta/GadgetSystem/GadgetClasses/Recon/VisionLink.h index a2a273fb..14aa75ac 100644 --- a/EndlessVendetta/Source/EndlessVendetta/GadgetSystem/GadgetClasses/Recon/VisionLink.h +++ b/EndlessVendetta/Source/EndlessVendetta/GadgetSystem/GadgetClasses/Recon/VisionLink.h @@ -26,10 +26,13 @@ protected: UPROPERTY(BlueprintReadOnly, Category = "Vision Link") float CooldownLength; - UFUNCTION(BlueprintImplementableEvent, Category = "Vision Link") - void SwitchToActiveWatchFace(); + UPROPERTY(BlueprintReadOnly, Category = "Vision Link") + float InUseDuration; UFUNCTION(BlueprintImplementableEvent, Category = "Vision Link") - void SwitchToRechargingWatchFace(); + void VisionLinkActivated(); + + UFUNCTION(BlueprintImplementableEvent, Category = "Vision Link") + void VisionLinkRecharging(); }; From 91052ed5aca2531b610d375f40586dd3a9a7081a Mon Sep 17 00:00:00 2001 From: Rafal Swierczek <34179rs@gmail.com> Date: Sun, 1 Oct 2023 16:50:38 +0100 Subject: [PATCH 034/112] Implemented Vision Links UI Animations --- .../VisionLink/RG_VisionLink.uasset | 4 +-- .../VisionLink/WBP_VisionLinkViewPort.uasset | 4 +-- .../Content/Levels/GadgetSystemTestLevel.umap | 2 +- .../Architecture/Floor_400x400.uasset | 4 +-- .../Particles/P_Ambient_Dust.uasset | 4 +-- .../GadgetClasses/Recon/VisionLink.cpp | 26 +++++++++++++------ .../GadgetClasses/Recon/VisionLink.h | 21 +++++++++++++-- 7 files changed, 46 insertions(+), 19 deletions(-) diff --git a/EndlessVendetta/Content/Gadgets/ReconGadgets/VisionLink/RG_VisionLink.uasset b/EndlessVendetta/Content/Gadgets/ReconGadgets/VisionLink/RG_VisionLink.uasset index ace3be4f..a98e94f1 100644 --- a/EndlessVendetta/Content/Gadgets/ReconGadgets/VisionLink/RG_VisionLink.uasset +++ b/EndlessVendetta/Content/Gadgets/ReconGadgets/VisionLink/RG_VisionLink.uasset @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:a4b1eb50312687772c3a03c0ef4e857d8db493b85d341ca5d9d4fda2cd8669f2 -size 69951 +oid sha256:2a063d83c2d3461bee076adc8e95f993662e0d2cfe542ea8adfec6b524ecde24 +size 97920 diff --git a/EndlessVendetta/Content/Gadgets/ReconGadgets/VisionLink/WBP_VisionLinkViewPort.uasset b/EndlessVendetta/Content/Gadgets/ReconGadgets/VisionLink/WBP_VisionLinkViewPort.uasset index 847aeaaf..414cd557 100644 --- a/EndlessVendetta/Content/Gadgets/ReconGadgets/VisionLink/WBP_VisionLinkViewPort.uasset +++ b/EndlessVendetta/Content/Gadgets/ReconGadgets/VisionLink/WBP_VisionLinkViewPort.uasset @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:fb578a8064dba062142046bcb432a36f7cf120096d75835630f55c95df96c3be -size 76094 +oid sha256:10ba4f55ea7d6e695bfa848cef4da05c40c2dbe3bbb6be34b00d711f0db12b7b +size 204366 diff --git a/EndlessVendetta/Content/Levels/GadgetSystemTestLevel.umap b/EndlessVendetta/Content/Levels/GadgetSystemTestLevel.umap index bd4aee5a..07001d61 100644 --- a/EndlessVendetta/Content/Levels/GadgetSystemTestLevel.umap +++ b/EndlessVendetta/Content/Levels/GadgetSystemTestLevel.umap @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:6c62d2b4827914f2af412d694fd0a91dd89833265ee15c3de4b1dd9123f1a94f +oid sha256:5e27a9b735217e9310c6c773ebb19ce87a4f00d959f0c4710de79ce8975be500 size 109679 diff --git a/EndlessVendetta/Content/StarterContent/Architecture/Floor_400x400.uasset b/EndlessVendetta/Content/StarterContent/Architecture/Floor_400x400.uasset index c2a34afc..96cc6e20 100644 --- a/EndlessVendetta/Content/StarterContent/Architecture/Floor_400x400.uasset +++ b/EndlessVendetta/Content/StarterContent/Architecture/Floor_400x400.uasset @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:4c0ecf0ac0702cc2bd355ec050232a61c49e10f102448efbeb735a51824adef6 -size 14948 +oid sha256:abd4f2fad257e7b583ac37aa10b18aca055f039b950e0100e587611f13a0e39b +size 14831 diff --git a/EndlessVendetta/Content/StarterContent/Particles/P_Ambient_Dust.uasset b/EndlessVendetta/Content/StarterContent/Particles/P_Ambient_Dust.uasset index 1f62de3d..bf2e4391 100644 --- a/EndlessVendetta/Content/StarterContent/Particles/P_Ambient_Dust.uasset +++ b/EndlessVendetta/Content/StarterContent/Particles/P_Ambient_Dust.uasset @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:4626e21a5b63987ab4b19eadd047c6bc94a0bf6fe8ca9b40681a1f7d7bdd803e -size 53268 +oid sha256:01ef616c7a8bd90cd1b7a13efb18a56f33346efbae51efa31f09804478b7621d +size 43456 diff --git a/EndlessVendetta/Source/EndlessVendetta/GadgetSystem/GadgetClasses/Recon/VisionLink.cpp b/EndlessVendetta/Source/EndlessVendetta/GadgetSystem/GadgetClasses/Recon/VisionLink.cpp index f2b3c9d0..62fb9b7f 100644 --- a/EndlessVendetta/Source/EndlessVendetta/GadgetSystem/GadgetClasses/Recon/VisionLink.cpp +++ b/EndlessVendetta/Source/EndlessVendetta/GadgetSystem/GadgetClasses/Recon/VisionLink.cpp @@ -9,13 +9,9 @@ void AVisionLink::BeginPlay() SetActorTickEnabled(false); CooldownLength = CooldownTime; InUseDuration = GadgetMaxUptime; -} - - -void AVisionLink::Tick(float DeltaSeconds) -{ - Super::Tick(DeltaSeconds); + if (NumberOfPingPulses <= 0 ) NumberOfPingPulses = 1; + TimeInbetweenPingPulses = GadgetMaxUptime / (float)NumberOfPingPulses; } void AVisionLink::Activate() @@ -23,16 +19,30 @@ void AVisionLink::Activate() if (GadgetCantBeUsed()) return; Super::Activate(); - SetActorTickEnabled(true); + + NumOfPingPulsesLeftInThisCycle = NumberOfPingPulses; VisionLinkActivated(); + SendOutPingPulse(); } void AVisionLink::FinishedUsing() { - SetActorTickEnabled(false); VisionLinkRecharging(); Super::FinishedUsing(); } +void AVisionLink::SendOutPingPulse() +{ + NumOfPingPulsesLeftInThisCycle--; + UpdatePulsesRemaining(NumOfPingPulsesLeftInThisCycle); + if (NumOfPingPulsesLeftInThisCycle < 0) return; + + // THIS IS WHERE I"LL PUT PING PULSE LOGIC + UE_LOG(LogTemp, Warning, TEXT("Ping Pulse!")); + GetWorld()->GetTimerManager().SetTimer(PulseHandle, this, &AVisionLink::SendOutPingPulse, TimeInbetweenPingPulses, false); + PlayPingPulseAnim(TimeInbetweenPingPulses); +} + + diff --git a/EndlessVendetta/Source/EndlessVendetta/GadgetSystem/GadgetClasses/Recon/VisionLink.h b/EndlessVendetta/Source/EndlessVendetta/GadgetSystem/GadgetClasses/Recon/VisionLink.h index 14aa75ac..97869006 100644 --- a/EndlessVendetta/Source/EndlessVendetta/GadgetSystem/GadgetClasses/Recon/VisionLink.h +++ b/EndlessVendetta/Source/EndlessVendetta/GadgetSystem/GadgetClasses/Recon/VisionLink.h @@ -14,21 +14,38 @@ class ENDLESSVENDETTA_API AVisionLink : public AReconGadget { GENERATED_BODY() - virtual void BeginPlay() override; + int NumOfPingPulsesLeftInThisCycle; - virtual void Tick(float DeltaSeconds) override; + float TimeInbetweenPingPulses; + + FTimerHandle PulseHandle; + + void SendOutPingPulse(); + + virtual void BeginPlay() override; virtual void Activate() override; virtual void FinishedUsing() override; protected: + UPROPERTY(EditDefaultsOnly, Category = "Vision Link") + int NumberOfPingPulses = 1; + UPROPERTY(BlueprintReadOnly, Category = "Vision Link") float CooldownLength; UPROPERTY(BlueprintReadOnly, Category = "Vision Link") float InUseDuration; + // Updates UI with time to next Pulse + UFUNCTION(BlueprintImplementableEvent, Category = "Vision Link") + void PlayPingPulseAnim(float PulseDuration); + + // Updates UI with pulses remaining + UFUNCTION(BlueprintImplementableEvent, Category = "Vision Link") + void UpdatePulsesRemaining(int PulsesRemaining); + UFUNCTION(BlueprintImplementableEvent, Category = "Vision Link") void VisionLinkActivated(); From 81a8c2ae44fab1ad98202e08354c5caad2f5c67f Mon Sep 17 00:00:00 2001 From: Rafal Swierczek <34179rs@gmail.com> Date: Sun, 1 Oct 2023 17:43:38 +0100 Subject: [PATCH 035/112] Started Implementing Vision Link Functionality --- .../Recon/{ => VisionLink}/VisionLink.cpp | 9 ++- .../Recon/{ => VisionLink}/VisionLink.h | 4 ++ .../VisionLink/VisionLinkEnemyLOSTest.cpp | 70 +++++++++++++++++++ .../Recon/VisionLink/VisionLinkEnemyLOSTest.h | 30 ++++++++ 4 files changed, 112 insertions(+), 1 deletion(-) rename EndlessVendetta/Source/EndlessVendetta/GadgetSystem/GadgetClasses/Recon/{ => VisionLink}/VisionLink.cpp (68%) rename EndlessVendetta/Source/EndlessVendetta/GadgetSystem/GadgetClasses/Recon/{ => VisionLink}/VisionLink.h (89%) create mode 100644 EndlessVendetta/Source/EndlessVendetta/GadgetSystem/GadgetClasses/Recon/VisionLink/VisionLinkEnemyLOSTest.cpp create mode 100644 EndlessVendetta/Source/EndlessVendetta/GadgetSystem/GadgetClasses/Recon/VisionLink/VisionLinkEnemyLOSTest.h diff --git a/EndlessVendetta/Source/EndlessVendetta/GadgetSystem/GadgetClasses/Recon/VisionLink.cpp b/EndlessVendetta/Source/EndlessVendetta/GadgetSystem/GadgetClasses/Recon/VisionLink/VisionLink.cpp similarity index 68% rename from EndlessVendetta/Source/EndlessVendetta/GadgetSystem/GadgetClasses/Recon/VisionLink.cpp rename to EndlessVendetta/Source/EndlessVendetta/GadgetSystem/GadgetClasses/Recon/VisionLink/VisionLink.cpp index 62fb9b7f..9ac77162 100644 --- a/EndlessVendetta/Source/EndlessVendetta/GadgetSystem/GadgetClasses/Recon/VisionLink.cpp +++ b/EndlessVendetta/Source/EndlessVendetta/GadgetSystem/GadgetClasses/Recon/VisionLink/VisionLink.cpp @@ -38,7 +38,14 @@ void AVisionLink::SendOutPingPulse() UpdatePulsesRemaining(NumOfPingPulsesLeftInThisCycle); if (NumOfPingPulsesLeftInThisCycle < 0) return; - // THIS IS WHERE I"LL PUT PING PULSE LOGIC + FActorSpawnParameters SpawnParams; + SpawnParams.SpawnCollisionHandlingOverride = ESpawnActorCollisionHandlingMethod::AlwaysSpawn; + FVector SpawnLoc = (GetActorLocation() - EquippedOffset) + EnemyLOSTestActor.GetDefaultObject()->SpawnOffset; + + AActor* LOSTestActor = GetWorld()->SpawnActor(EnemyLOSTestActor, SpawnLoc, GetActorRotation(), SpawnParams); + TArray EmptyActorArray; + Cast(LOSTestActor)->TestLOS(EmptyActorArray, GetOwner()); + UE_LOG(LogTemp, Warning, TEXT("Ping Pulse!")); GetWorld()->GetTimerManager().SetTimer(PulseHandle, this, &AVisionLink::SendOutPingPulse, TimeInbetweenPingPulses, false); PlayPingPulseAnim(TimeInbetweenPingPulses); diff --git a/EndlessVendetta/Source/EndlessVendetta/GadgetSystem/GadgetClasses/Recon/VisionLink.h b/EndlessVendetta/Source/EndlessVendetta/GadgetSystem/GadgetClasses/Recon/VisionLink/VisionLink.h similarity index 89% rename from EndlessVendetta/Source/EndlessVendetta/GadgetSystem/GadgetClasses/Recon/VisionLink.h rename to EndlessVendetta/Source/EndlessVendetta/GadgetSystem/GadgetClasses/Recon/VisionLink/VisionLink.h index 97869006..fa5ac3e9 100644 --- a/EndlessVendetta/Source/EndlessVendetta/GadgetSystem/GadgetClasses/Recon/VisionLink.h +++ b/EndlessVendetta/Source/EndlessVendetta/GadgetSystem/GadgetClasses/Recon/VisionLink/VisionLink.h @@ -3,6 +3,7 @@ #pragma once #include "CoreMinimal.h" +#include "VisionLinkEnemyLOSTest.h" #include "EndlessVendetta/GadgetSystem/ReconGadget.h" #include "VisionLink.generated.h" @@ -32,6 +33,9 @@ protected: UPROPERTY(EditDefaultsOnly, Category = "Vision Link") int NumberOfPingPulses = 1; + UPROPERTY(EditDefaultsOnly, Category = "Vision Link") + TSubclassOf EnemyLOSTestActor; + UPROPERTY(BlueprintReadOnly, Category = "Vision Link") float CooldownLength; diff --git a/EndlessVendetta/Source/EndlessVendetta/GadgetSystem/GadgetClasses/Recon/VisionLink/VisionLinkEnemyLOSTest.cpp b/EndlessVendetta/Source/EndlessVendetta/GadgetSystem/GadgetClasses/Recon/VisionLink/VisionLinkEnemyLOSTest.cpp new file mode 100644 index 00000000..7d837c18 --- /dev/null +++ b/EndlessVendetta/Source/EndlessVendetta/GadgetSystem/GadgetClasses/Recon/VisionLink/VisionLinkEnemyLOSTest.cpp @@ -0,0 +1,70 @@ +// Fill out your copyright notice in the Description page of Project Settings. + + +#include "VisionLinkEnemyLOSTest.h" + +#include "Components/BoxComponent.h" +#include "Kismet/KismetMathLibrary.h" + +// Sets default values +AVisionLinkEnemyLOSTest::AVisionLinkEnemyLOSTest() +{ + // Set this actor to call Tick() every frame. You can turn this off to improve performance if you don't need it. + PrimaryActorTick.bCanEverTick = true; + +} + +// Called when the game starts or when spawned +void AVisionLinkEnemyLOSTest::BeginPlay() +{ + Super::BeginPlay(); + +} + +// Called every frame +void AVisionLinkEnemyLOSTest::Tick(float DeltaTime) +{ + Super::Tick(DeltaTime); + +} + +void AVisionLinkEnemyLOSTest::TestLOS(TArray EnemiesInLink, AActor* LOSActor) +{ + // Get all overlapping Actors + UBoxComponent* CollisionBox = Cast(GetComponentByClass(UBoxComponent::StaticClass())); + if (!IsValid(CollisionBox)) + { + Destroy(); + return; + } + TArray OverlappingEnemies; + CollisionBox->GetOverlappingActors(OverlappingEnemies); + if (OverlappingEnemies.IsEmpty()) + { + Destroy(); + return; + } + + for (int i = 0; i < OverlappingEnemies.Num(); i++) + { + // Overlapping Enemies Array should only contain enemies which aren't already in the link + if (!OverlappingEnemies[i]->ActorHasTag(FName("Enemy")) || EnemiesInLink.Contains(OverlappingEnemies[i])) OverlappingEnemies.RemoveAt(i); + } + if (OverlappingEnemies.IsEmpty()) + { + Destroy(); + return; + } + + for (AActor* Enemy : OverlappingEnemies) + { + FRotator LookAtRotation = UKismetMathLibrary::FindLookAtRotation(LOSActor->GetActorLocation(), Enemy->GetActorLocation()); + UE_LOG(LogTemp, Warning, TEXT("Look at Rotation: %f"), LookAtRotation.Yaw); + } + + Destroy(); + + +} + + diff --git a/EndlessVendetta/Source/EndlessVendetta/GadgetSystem/GadgetClasses/Recon/VisionLink/VisionLinkEnemyLOSTest.h b/EndlessVendetta/Source/EndlessVendetta/GadgetSystem/GadgetClasses/Recon/VisionLink/VisionLinkEnemyLOSTest.h new file mode 100644 index 00000000..40d7846a --- /dev/null +++ b/EndlessVendetta/Source/EndlessVendetta/GadgetSystem/GadgetClasses/Recon/VisionLink/VisionLinkEnemyLOSTest.h @@ -0,0 +1,30 @@ +// Fill out your copyright notice in the Description page of Project Settings. + +#pragma once + +#include "CoreMinimal.h" +#include "GameFramework/Actor.h" +#include "VisionLinkEnemyLOSTest.generated.h" + +UCLASS() +class ENDLESSVENDETTA_API AVisionLinkEnemyLOSTest : public AActor +{ + GENERATED_BODY() + + +protected: + // Called when the game starts or when spawned + virtual void BeginPlay() override; + +public: + UPROPERTY(EditDefaultsOnly, Category = "Vision Link") + FVector SpawnOffset = FVector(0, 0, 0 ); + + // Sets default values for this actor's properties + AVisionLinkEnemyLOSTest(); + + // Called every frame + virtual void Tick(float DeltaTime) override; + + void TestLOS(TArray EnemiesInLink, AActor* LOS_Actor); +}; From bd1f3b3b1452dc95a1f495a8642bf92dda085b87 Mon Sep 17 00:00:00 2001 From: PHILIP WHITE Date: Mon, 2 Oct 2023 01:29:26 +0100 Subject: [PATCH 036/112] Add Enemy AI Testing Level to Test Line of Sight --- .../Content/Levels/EnemyAITest.umap | 3 ++ .../Content/Levels/FirstPersonMap.umap | 3 ++ .../D/KO/5NABXAV1RIRN3HX2KXBHV8.uasset | 4 +-- .../0/E1/IQFW07RTPNSMRH29XIEJ6K.uasset | 3 ++ .../0/GX/GIS7MZ67XR2J3PFEU2JQAQ.uasset | 3 ++ .../0/IX/2HJNN09VIUGECAWE7RQF7E.uasset | 3 ++ .../0/J9/CJ0EBOCRNQM7JW268TJIYP.uasset | 3 ++ .../0/K8/6SR44C1CVICPSD9PDDIAZ5.uasset | 3 ++ .../0/LR/WD02RYJ2PYZD1AMUAN4FKJ.uasset | 3 ++ .../0/PE/AU0ZEVM147PGYZYETWYMEJ.uasset | 3 ++ .../0/Q7/0NC9X1M4P0178PJ62HLZBL.uasset | 3 ++ .../1/4W/TZWKOM776CCB9T1CQESPAC.uasset | 3 ++ .../1/5S/7ID5OVJCB5CTLJKPQKIC1I.uasset | 3 ++ .../1/6S/A9J1OJI3RV53ISSKR2J5U1.uasset | 3 ++ .../1/BP/EE03SQQCZJQSEUPRGJPTP0.uasset | 3 ++ .../1/HB/E2H2DJ0IYXZ7YPKWWFF0FG.uasset | 3 ++ .../1/MY/R1JII7B2C24B9CWJXSQ46T.uasset | 3 ++ .../1/WZ/18S5NW75OTIRU2HFO79N4M.uasset | 3 ++ .../2/37/1NHB75E9P7T630GL2K4WWN.uasset | 3 ++ .../2/9H/UI6E3IHLXCVIV54810ZSUS.uasset | 3 ++ .../2/CT/39SOGBQQWQPX5XF5XSIDUZ.uasset | 3 ++ .../2/D3/R44Z9O6CLM37P3G5IX40CI.uasset | 3 ++ .../2/GF/LRPO23YW2N7WZ21HT3ADU8.uasset | 3 ++ .../2/RX/YRPO3KV1HDO96HPZ66IMQI.uasset | 3 ++ .../3/21/OZ7HVAU40P457N2KQYO1Z5.uasset | 3 ++ .../3/7D/94E51K8PLPK43WRYXU8RL0.uasset | 3 ++ .../3/8B/5GCK7S3AV6GJBA0IACF1XO.uasset | 3 ++ .../3/GB/Q8MDU4O8NVGCNQC48I9E8C.uasset | 3 ++ .../3/LK/1HYMG69QSB1R2IKKLMNVLT.uasset | 3 ++ .../4/7S/M6H76KT5RYSC8FT08UOYYV.uasset | 3 ++ .../4/DO/KPWW5M0TRW408IVKQNTBX7.uasset | 3 ++ .../4/EH/H0RJG09BGRG4TA8B6P9SKL.uasset | 3 ++ .../4/NV/0O5K04NGZ280HG3EDN82BS.uasset | 3 ++ .../6/T0/6P1LRRDLZM1EUAF0VJ2A1Z.uasset | 3 ++ .../7/5X/SGTTTEQNKAZC3W9C8ICWCD.uasset | 3 ++ .../7/ON/O0RSM3NJKRZPH0FXBF9L3S.uasset | 3 ++ .../7/VD/0FS7NIRZS2R8T57JW12AXA.uasset | 3 ++ .../8/7J/5M8HYAJBH6S06KBPPU5V7W.uasset | 3 ++ .../8/L7/JWTIPNAQRZ09Y5NAQL5BW8.uasset | 3 ++ .../8/PN/HJTAS89CNH6I0AR0ZCCE4H.uasset | 3 ++ .../9/45/BRJA5VHIWN6NTS13DYDN08.uasset | 3 ++ .../9/AG/M50NVM1A6DXOF9R7EHESH6.uasset | 3 ++ .../9/EB/XWFQGB0N0AV29HQ1RZBRTN.uasset | 3 ++ .../9/JJ/USZ2IG22JXYQ9U9L4R3O9K.uasset | 3 ++ .../9/SL/1ABG5W1O6BMZYRRZY742RR.uasset | 3 ++ .../9/TM/SXQEJM0WJTDHS510NE0ARB.uasset | 3 ++ .../9/ZA/DT4HPQ7S67F0V9G8T1YCQI.uasset | 3 ++ .../A/IY/10597N2XJ21LILF5KIZ5KL.uasset | 3 ++ .../A/ON/FV27LO60GPVLJOY7YY1WLP.uasset | 3 ++ .../A/PF/EG3JGUPDQZSATN1FLSWJVL.uasset | 3 ++ .../A/SX/4TUAQI2F98RL122DKAHM7N.uasset | 3 ++ .../A/WI/254BGPLW3CW799JAYW11ZE.uasset | 3 ++ .../B/8R/JBRRKN8XRT8V47MOSZ3XFX.uasset | 3 ++ .../B/AZ/GX8EY01G00J28SE17R0FJV.uasset | 3 ++ .../B/KC/MH5IV9S2GG4KCWNMZHWKG9.uasset | 3 ++ .../C/6W/LBHG7995AIEJVSD5QZYXZS.uasset | 3 ++ .../D/JE/MPPG27DTK7Y2X2HONLOIS2.uasset | 3 ++ .../D/OV/MIML8IG26185E7HH7OUYXY.uasset | 3 ++ .../E/AO/6CUEZ00H5605BZ34CYJ59J.uasset | 3 ++ .../E/CR/DRCNPPN33IO9BDIGKV8CQD.uasset | 3 ++ .../E/FJ/TDFYID5LIFN4RZYNHYR2L3.uasset | 3 ++ .../E/L4/2A3KY5I7FJ21NDC7OURASV.uasset | 3 ++ .../E/ML/NLOI6RS1TZE6573JN4LJAU.uasset | 3 ++ .../E/PL/ODMT46SVZ8BKVV6CH39RBJ.uasset | 3 ++ .../E/TC/E3CXYQV6UQS02X2RRKCPDE.uasset | 3 ++ .../3/IN/ZX0DKIDX2JX3JZ5AHZ358H.uasset | 3 ++ .../5/ED/F43HQFUB7DXKRU5ZNLN2HL.uasset | 3 ++ .../6/JT/KDT0MAGCOXR70VASIZOKMP.uasset | 3 ++ .../7/0J/97389JWAHOKRK9742IJNUD.uasset | 3 ++ .../7/6G/DU9OC4U9R64TY369G0N48F.uasset | 3 ++ .../A/OF/DMAUKRJ7ZVQKZ15OGILSN5.uasset | 3 ++ .../C/4M/6DZ06BS46GV23GYW6TYVSW.uasset | 3 ++ .../E/KK/K83LURWABW69BW7GEPNTMB.uasset | 3 ++ UE5 Layout/Phil_s_UE5_Layout.ini | 30 +++++++++++++++++++ 74 files changed, 248 insertions(+), 2 deletions(-) create mode 100644 EndlessVendetta/Content/Levels/EnemyAITest.umap create mode 100644 EndlessVendetta/Content/Levels/FirstPersonMap.umap create mode 100644 EndlessVendetta/Content/__ExternalActors__/Levels/EnemyAITest/0/E1/IQFW07RTPNSMRH29XIEJ6K.uasset create mode 100644 EndlessVendetta/Content/__ExternalActors__/Levels/EnemyAITest/0/GX/GIS7MZ67XR2J3PFEU2JQAQ.uasset create mode 100644 EndlessVendetta/Content/__ExternalActors__/Levels/EnemyAITest/0/IX/2HJNN09VIUGECAWE7RQF7E.uasset create mode 100644 EndlessVendetta/Content/__ExternalActors__/Levels/EnemyAITest/0/J9/CJ0EBOCRNQM7JW268TJIYP.uasset create mode 100644 EndlessVendetta/Content/__ExternalActors__/Levels/EnemyAITest/0/K8/6SR44C1CVICPSD9PDDIAZ5.uasset create mode 100644 EndlessVendetta/Content/__ExternalActors__/Levels/EnemyAITest/0/LR/WD02RYJ2PYZD1AMUAN4FKJ.uasset create mode 100644 EndlessVendetta/Content/__ExternalActors__/Levels/EnemyAITest/0/PE/AU0ZEVM147PGYZYETWYMEJ.uasset create mode 100644 EndlessVendetta/Content/__ExternalActors__/Levels/EnemyAITest/0/Q7/0NC9X1M4P0178PJ62HLZBL.uasset create mode 100644 EndlessVendetta/Content/__ExternalActors__/Levels/EnemyAITest/1/4W/TZWKOM776CCB9T1CQESPAC.uasset create mode 100644 EndlessVendetta/Content/__ExternalActors__/Levels/EnemyAITest/1/5S/7ID5OVJCB5CTLJKPQKIC1I.uasset create mode 100644 EndlessVendetta/Content/__ExternalActors__/Levels/EnemyAITest/1/6S/A9J1OJI3RV53ISSKR2J5U1.uasset create mode 100644 EndlessVendetta/Content/__ExternalActors__/Levels/EnemyAITest/1/BP/EE03SQQCZJQSEUPRGJPTP0.uasset create mode 100644 EndlessVendetta/Content/__ExternalActors__/Levels/EnemyAITest/1/HB/E2H2DJ0IYXZ7YPKWWFF0FG.uasset create mode 100644 EndlessVendetta/Content/__ExternalActors__/Levels/EnemyAITest/1/MY/R1JII7B2C24B9CWJXSQ46T.uasset create mode 100644 EndlessVendetta/Content/__ExternalActors__/Levels/EnemyAITest/1/WZ/18S5NW75OTIRU2HFO79N4M.uasset create mode 100644 EndlessVendetta/Content/__ExternalActors__/Levels/EnemyAITest/2/37/1NHB75E9P7T630GL2K4WWN.uasset create mode 100644 EndlessVendetta/Content/__ExternalActors__/Levels/EnemyAITest/2/9H/UI6E3IHLXCVIV54810ZSUS.uasset create mode 100644 EndlessVendetta/Content/__ExternalActors__/Levels/EnemyAITest/2/CT/39SOGBQQWQPX5XF5XSIDUZ.uasset create mode 100644 EndlessVendetta/Content/__ExternalActors__/Levels/EnemyAITest/2/D3/R44Z9O6CLM37P3G5IX40CI.uasset create mode 100644 EndlessVendetta/Content/__ExternalActors__/Levels/EnemyAITest/2/GF/LRPO23YW2N7WZ21HT3ADU8.uasset create mode 100644 EndlessVendetta/Content/__ExternalActors__/Levels/EnemyAITest/2/RX/YRPO3KV1HDO96HPZ66IMQI.uasset create mode 100644 EndlessVendetta/Content/__ExternalActors__/Levels/EnemyAITest/3/21/OZ7HVAU40P457N2KQYO1Z5.uasset create mode 100644 EndlessVendetta/Content/__ExternalActors__/Levels/EnemyAITest/3/7D/94E51K8PLPK43WRYXU8RL0.uasset create mode 100644 EndlessVendetta/Content/__ExternalActors__/Levels/EnemyAITest/3/8B/5GCK7S3AV6GJBA0IACF1XO.uasset create mode 100644 EndlessVendetta/Content/__ExternalActors__/Levels/EnemyAITest/3/GB/Q8MDU4O8NVGCNQC48I9E8C.uasset create mode 100644 EndlessVendetta/Content/__ExternalActors__/Levels/EnemyAITest/3/LK/1HYMG69QSB1R2IKKLMNVLT.uasset create mode 100644 EndlessVendetta/Content/__ExternalActors__/Levels/EnemyAITest/4/7S/M6H76KT5RYSC8FT08UOYYV.uasset create mode 100644 EndlessVendetta/Content/__ExternalActors__/Levels/EnemyAITest/4/DO/KPWW5M0TRW408IVKQNTBX7.uasset create mode 100644 EndlessVendetta/Content/__ExternalActors__/Levels/EnemyAITest/4/EH/H0RJG09BGRG4TA8B6P9SKL.uasset create mode 100644 EndlessVendetta/Content/__ExternalActors__/Levels/EnemyAITest/4/NV/0O5K04NGZ280HG3EDN82BS.uasset create mode 100644 EndlessVendetta/Content/__ExternalActors__/Levels/EnemyAITest/6/T0/6P1LRRDLZM1EUAF0VJ2A1Z.uasset create mode 100644 EndlessVendetta/Content/__ExternalActors__/Levels/EnemyAITest/7/5X/SGTTTEQNKAZC3W9C8ICWCD.uasset create mode 100644 EndlessVendetta/Content/__ExternalActors__/Levels/EnemyAITest/7/ON/O0RSM3NJKRZPH0FXBF9L3S.uasset create mode 100644 EndlessVendetta/Content/__ExternalActors__/Levels/EnemyAITest/7/VD/0FS7NIRZS2R8T57JW12AXA.uasset create mode 100644 EndlessVendetta/Content/__ExternalActors__/Levels/EnemyAITest/8/7J/5M8HYAJBH6S06KBPPU5V7W.uasset create mode 100644 EndlessVendetta/Content/__ExternalActors__/Levels/EnemyAITest/8/L7/JWTIPNAQRZ09Y5NAQL5BW8.uasset create mode 100644 EndlessVendetta/Content/__ExternalActors__/Levels/EnemyAITest/8/PN/HJTAS89CNH6I0AR0ZCCE4H.uasset create mode 100644 EndlessVendetta/Content/__ExternalActors__/Levels/EnemyAITest/9/45/BRJA5VHIWN6NTS13DYDN08.uasset create mode 100644 EndlessVendetta/Content/__ExternalActors__/Levels/EnemyAITest/9/AG/M50NVM1A6DXOF9R7EHESH6.uasset create mode 100644 EndlessVendetta/Content/__ExternalActors__/Levels/EnemyAITest/9/EB/XWFQGB0N0AV29HQ1RZBRTN.uasset create mode 100644 EndlessVendetta/Content/__ExternalActors__/Levels/EnemyAITest/9/JJ/USZ2IG22JXYQ9U9L4R3O9K.uasset create mode 100644 EndlessVendetta/Content/__ExternalActors__/Levels/EnemyAITest/9/SL/1ABG5W1O6BMZYRRZY742RR.uasset create mode 100644 EndlessVendetta/Content/__ExternalActors__/Levels/EnemyAITest/9/TM/SXQEJM0WJTDHS510NE0ARB.uasset create mode 100644 EndlessVendetta/Content/__ExternalActors__/Levels/EnemyAITest/9/ZA/DT4HPQ7S67F0V9G8T1YCQI.uasset create mode 100644 EndlessVendetta/Content/__ExternalActors__/Levels/EnemyAITest/A/IY/10597N2XJ21LILF5KIZ5KL.uasset create mode 100644 EndlessVendetta/Content/__ExternalActors__/Levels/EnemyAITest/A/ON/FV27LO60GPVLJOY7YY1WLP.uasset create mode 100644 EndlessVendetta/Content/__ExternalActors__/Levels/EnemyAITest/A/PF/EG3JGUPDQZSATN1FLSWJVL.uasset create mode 100644 EndlessVendetta/Content/__ExternalActors__/Levels/EnemyAITest/A/SX/4TUAQI2F98RL122DKAHM7N.uasset create mode 100644 EndlessVendetta/Content/__ExternalActors__/Levels/EnemyAITest/A/WI/254BGPLW3CW799JAYW11ZE.uasset create mode 100644 EndlessVendetta/Content/__ExternalActors__/Levels/EnemyAITest/B/8R/JBRRKN8XRT8V47MOSZ3XFX.uasset create mode 100644 EndlessVendetta/Content/__ExternalActors__/Levels/EnemyAITest/B/AZ/GX8EY01G00J28SE17R0FJV.uasset create mode 100644 EndlessVendetta/Content/__ExternalActors__/Levels/EnemyAITest/B/KC/MH5IV9S2GG4KCWNMZHWKG9.uasset create mode 100644 EndlessVendetta/Content/__ExternalActors__/Levels/EnemyAITest/C/6W/LBHG7995AIEJVSD5QZYXZS.uasset create mode 100644 EndlessVendetta/Content/__ExternalActors__/Levels/EnemyAITest/D/JE/MPPG27DTK7Y2X2HONLOIS2.uasset create mode 100644 EndlessVendetta/Content/__ExternalActors__/Levels/EnemyAITest/D/OV/MIML8IG26185E7HH7OUYXY.uasset create mode 100644 EndlessVendetta/Content/__ExternalActors__/Levels/EnemyAITest/E/AO/6CUEZ00H5605BZ34CYJ59J.uasset create mode 100644 EndlessVendetta/Content/__ExternalActors__/Levels/EnemyAITest/E/CR/DRCNPPN33IO9BDIGKV8CQD.uasset create mode 100644 EndlessVendetta/Content/__ExternalActors__/Levels/EnemyAITest/E/FJ/TDFYID5LIFN4RZYNHYR2L3.uasset create mode 100644 EndlessVendetta/Content/__ExternalActors__/Levels/EnemyAITest/E/L4/2A3KY5I7FJ21NDC7OURASV.uasset create mode 100644 EndlessVendetta/Content/__ExternalActors__/Levels/EnemyAITest/E/ML/NLOI6RS1TZE6573JN4LJAU.uasset create mode 100644 EndlessVendetta/Content/__ExternalActors__/Levels/EnemyAITest/E/PL/ODMT46SVZ8BKVV6CH39RBJ.uasset create mode 100644 EndlessVendetta/Content/__ExternalActors__/Levels/EnemyAITest/E/TC/E3CXYQV6UQS02X2RRKCPDE.uasset create mode 100644 EndlessVendetta/Content/__ExternalObjects__/Levels/EnemyAITest/3/IN/ZX0DKIDX2JX3JZ5AHZ358H.uasset create mode 100644 EndlessVendetta/Content/__ExternalObjects__/Levels/EnemyAITest/5/ED/F43HQFUB7DXKRU5ZNLN2HL.uasset create mode 100644 EndlessVendetta/Content/__ExternalObjects__/Levels/EnemyAITest/6/JT/KDT0MAGCOXR70VASIZOKMP.uasset create mode 100644 EndlessVendetta/Content/__ExternalObjects__/Levels/EnemyAITest/7/0J/97389JWAHOKRK9742IJNUD.uasset create mode 100644 EndlessVendetta/Content/__ExternalObjects__/Levels/EnemyAITest/7/6G/DU9OC4U9R64TY369G0N48F.uasset create mode 100644 EndlessVendetta/Content/__ExternalObjects__/Levels/EnemyAITest/A/OF/DMAUKRJ7ZVQKZ15OGILSN5.uasset create mode 100644 EndlessVendetta/Content/__ExternalObjects__/Levels/EnemyAITest/C/4M/6DZ06BS46GV23GYW6TYVSW.uasset create mode 100644 EndlessVendetta/Content/__ExternalObjects__/Levels/EnemyAITest/E/KK/K83LURWABW69BW7GEPNTMB.uasset create mode 100644 UE5 Layout/Phil_s_UE5_Layout.ini diff --git a/EndlessVendetta/Content/Levels/EnemyAITest.umap b/EndlessVendetta/Content/Levels/EnemyAITest.umap new file mode 100644 index 00000000..8319bb34 --- /dev/null +++ b/EndlessVendetta/Content/Levels/EnemyAITest.umap @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ba62070ea31cc50bd2bea8db9b7d8f66bbe89280d203f53c448605cc9f5efc14 +size 19438 diff --git a/EndlessVendetta/Content/Levels/FirstPersonMap.umap b/EndlessVendetta/Content/Levels/FirstPersonMap.umap new file mode 100644 index 00000000..b55a585b --- /dev/null +++ b/EndlessVendetta/Content/Levels/FirstPersonMap.umap @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:23d2e3f9308eca1cb84f2561c48860f0c51b5e8c51a7257dff11988d2e1b5724 +size 2116 diff --git a/EndlessVendetta/Content/__ExternalActors__/FirstPerson/Maps/FirstPersonMap/D/KO/5NABXAV1RIRN3HX2KXBHV8.uasset b/EndlessVendetta/Content/__ExternalActors__/FirstPerson/Maps/FirstPersonMap/D/KO/5NABXAV1RIRN3HX2KXBHV8.uasset index d12d268b..ee2444db 100644 --- a/EndlessVendetta/Content/__ExternalActors__/FirstPerson/Maps/FirstPersonMap/D/KO/5NABXAV1RIRN3HX2KXBHV8.uasset +++ b/EndlessVendetta/Content/__ExternalActors__/FirstPerson/Maps/FirstPersonMap/D/KO/5NABXAV1RIRN3HX2KXBHV8.uasset @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:710bc3c5911ac600db4de37b019e48d5d410f4b7b21927e2bf74800cde15de5b -size 9113 +oid sha256:1ea76fc172df362aee30e4018ebac61f97f005f127b25e628b6befb851e332c6 +size 10457 diff --git a/EndlessVendetta/Content/__ExternalActors__/Levels/EnemyAITest/0/E1/IQFW07RTPNSMRH29XIEJ6K.uasset b/EndlessVendetta/Content/__ExternalActors__/Levels/EnemyAITest/0/E1/IQFW07RTPNSMRH29XIEJ6K.uasset new file mode 100644 index 00000000..d26e7cc7 --- /dev/null +++ b/EndlessVendetta/Content/__ExternalActors__/Levels/EnemyAITest/0/E1/IQFW07RTPNSMRH29XIEJ6K.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:0adcbba9dd12519aa193fd0cedb65bf17ec9209792a3d4bb10ddadb55a0dd098 +size 4652 diff --git a/EndlessVendetta/Content/__ExternalActors__/Levels/EnemyAITest/0/GX/GIS7MZ67XR2J3PFEU2JQAQ.uasset b/EndlessVendetta/Content/__ExternalActors__/Levels/EnemyAITest/0/GX/GIS7MZ67XR2J3PFEU2JQAQ.uasset new file mode 100644 index 00000000..9e4d412a --- /dev/null +++ b/EndlessVendetta/Content/__ExternalActors__/Levels/EnemyAITest/0/GX/GIS7MZ67XR2J3PFEU2JQAQ.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ecab7663f508522aa1d8e5784628eaaaf1c77eefda4fa4e60dbe23695dff5455 +size 4715 diff --git a/EndlessVendetta/Content/__ExternalActors__/Levels/EnemyAITest/0/IX/2HJNN09VIUGECAWE7RQF7E.uasset b/EndlessVendetta/Content/__ExternalActors__/Levels/EnemyAITest/0/IX/2HJNN09VIUGECAWE7RQF7E.uasset new file mode 100644 index 00000000..a2ce66a3 --- /dev/null +++ b/EndlessVendetta/Content/__ExternalActors__/Levels/EnemyAITest/0/IX/2HJNN09VIUGECAWE7RQF7E.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ba47531b1f53d15d50cb43c9db404e2b21b884149bbd4075713987a0dc58beeb +size 4653 diff --git a/EndlessVendetta/Content/__ExternalActors__/Levels/EnemyAITest/0/J9/CJ0EBOCRNQM7JW268TJIYP.uasset b/EndlessVendetta/Content/__ExternalActors__/Levels/EnemyAITest/0/J9/CJ0EBOCRNQM7JW268TJIYP.uasset new file mode 100644 index 00000000..85e208b0 --- /dev/null +++ b/EndlessVendetta/Content/__ExternalActors__/Levels/EnemyAITest/0/J9/CJ0EBOCRNQM7JW268TJIYP.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:fe2005cbd7d221a5eda1099634d0e3e02b5c0670382719adffb59e9e987795eb +size 4653 diff --git a/EndlessVendetta/Content/__ExternalActors__/Levels/EnemyAITest/0/K8/6SR44C1CVICPSD9PDDIAZ5.uasset b/EndlessVendetta/Content/__ExternalActors__/Levels/EnemyAITest/0/K8/6SR44C1CVICPSD9PDDIAZ5.uasset new file mode 100644 index 00000000..e73fc94e --- /dev/null +++ b/EndlessVendetta/Content/__ExternalActors__/Levels/EnemyAITest/0/K8/6SR44C1CVICPSD9PDDIAZ5.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:5290040de602d01aebcef81b116f9d6453714d6af102deb8adf92f6c284b852b +size 4655 diff --git a/EndlessVendetta/Content/__ExternalActors__/Levels/EnemyAITest/0/LR/WD02RYJ2PYZD1AMUAN4FKJ.uasset b/EndlessVendetta/Content/__ExternalActors__/Levels/EnemyAITest/0/LR/WD02RYJ2PYZD1AMUAN4FKJ.uasset new file mode 100644 index 00000000..901ac284 --- /dev/null +++ b/EndlessVendetta/Content/__ExternalActors__/Levels/EnemyAITest/0/LR/WD02RYJ2PYZD1AMUAN4FKJ.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ac890528add1456f17ee331724e45541159a0a614a47dea926f24827587fa4d0 +size 4787 diff --git a/EndlessVendetta/Content/__ExternalActors__/Levels/EnemyAITest/0/PE/AU0ZEVM147PGYZYETWYMEJ.uasset b/EndlessVendetta/Content/__ExternalActors__/Levels/EnemyAITest/0/PE/AU0ZEVM147PGYZYETWYMEJ.uasset new file mode 100644 index 00000000..28eb2456 --- /dev/null +++ b/EndlessVendetta/Content/__ExternalActors__/Levels/EnemyAITest/0/PE/AU0ZEVM147PGYZYETWYMEJ.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b220824a0f633c07b1cf8893ebf96544fd86ee76a767f7f9e5400fd39acf69ba +size 3806 diff --git a/EndlessVendetta/Content/__ExternalActors__/Levels/EnemyAITest/0/Q7/0NC9X1M4P0178PJ62HLZBL.uasset b/EndlessVendetta/Content/__ExternalActors__/Levels/EnemyAITest/0/Q7/0NC9X1M4P0178PJ62HLZBL.uasset new file mode 100644 index 00000000..5efc5748 --- /dev/null +++ b/EndlessVendetta/Content/__ExternalActors__/Levels/EnemyAITest/0/Q7/0NC9X1M4P0178PJ62HLZBL.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:4bb00ea144b9575f5353f61e24b5f59489aa91c62d3334ad313dd1d90b9e2670 +size 4713 diff --git a/EndlessVendetta/Content/__ExternalActors__/Levels/EnemyAITest/1/4W/TZWKOM776CCB9T1CQESPAC.uasset b/EndlessVendetta/Content/__ExternalActors__/Levels/EnemyAITest/1/4W/TZWKOM776CCB9T1CQESPAC.uasset new file mode 100644 index 00000000..4e7af2ed --- /dev/null +++ b/EndlessVendetta/Content/__ExternalActors__/Levels/EnemyAITest/1/4W/TZWKOM776CCB9T1CQESPAC.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b28b6ff61c85777d7999e63a820858db4b2a6153abfebacf97b167a91f3c13be +size 4541 diff --git a/EndlessVendetta/Content/__ExternalActors__/Levels/EnemyAITest/1/5S/7ID5OVJCB5CTLJKPQKIC1I.uasset b/EndlessVendetta/Content/__ExternalActors__/Levels/EnemyAITest/1/5S/7ID5OVJCB5CTLJKPQKIC1I.uasset new file mode 100644 index 00000000..8d448d7e --- /dev/null +++ b/EndlessVendetta/Content/__ExternalActors__/Levels/EnemyAITest/1/5S/7ID5OVJCB5CTLJKPQKIC1I.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:76a12d6a9ec9f46a665ad784c79e2e03a79bb8f35260754a576a904b4c5dd57a +size 4534 diff --git a/EndlessVendetta/Content/__ExternalActors__/Levels/EnemyAITest/1/6S/A9J1OJI3RV53ISSKR2J5U1.uasset b/EndlessVendetta/Content/__ExternalActors__/Levels/EnemyAITest/1/6S/A9J1OJI3RV53ISSKR2J5U1.uasset new file mode 100644 index 00000000..7961b35c --- /dev/null +++ b/EndlessVendetta/Content/__ExternalActors__/Levels/EnemyAITest/1/6S/A9J1OJI3RV53ISSKR2J5U1.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:7894b05d9639d996719cbf0ac9a30099b2454bc2522868f4c0a81aa95d4d0b39 +size 10399 diff --git a/EndlessVendetta/Content/__ExternalActors__/Levels/EnemyAITest/1/BP/EE03SQQCZJQSEUPRGJPTP0.uasset b/EndlessVendetta/Content/__ExternalActors__/Levels/EnemyAITest/1/BP/EE03SQQCZJQSEUPRGJPTP0.uasset new file mode 100644 index 00000000..e530f3e7 --- /dev/null +++ b/EndlessVendetta/Content/__ExternalActors__/Levels/EnemyAITest/1/BP/EE03SQQCZJQSEUPRGJPTP0.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:568f2a474a475045288e1552b9be176fa4e6e7a70d1438064f049b957bfedfe8 +size 4541 diff --git a/EndlessVendetta/Content/__ExternalActors__/Levels/EnemyAITest/1/HB/E2H2DJ0IYXZ7YPKWWFF0FG.uasset b/EndlessVendetta/Content/__ExternalActors__/Levels/EnemyAITest/1/HB/E2H2DJ0IYXZ7YPKWWFF0FG.uasset new file mode 100644 index 00000000..bbaf2b0e --- /dev/null +++ b/EndlessVendetta/Content/__ExternalActors__/Levels/EnemyAITest/1/HB/E2H2DJ0IYXZ7YPKWWFF0FG.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:762c0e26021fdc42c7904454f6ad9b02f872d0d017788c9fc6ffeacc9a896bce +size 4692 diff --git a/EndlessVendetta/Content/__ExternalActors__/Levels/EnemyAITest/1/MY/R1JII7B2C24B9CWJXSQ46T.uasset b/EndlessVendetta/Content/__ExternalActors__/Levels/EnemyAITest/1/MY/R1JII7B2C24B9CWJXSQ46T.uasset new file mode 100644 index 00000000..2b68f8dc --- /dev/null +++ b/EndlessVendetta/Content/__ExternalActors__/Levels/EnemyAITest/1/MY/R1JII7B2C24B9CWJXSQ46T.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b9545eb125107d2bb1605930ffe7af4dcb6d51bfa9b503fc829c26163149eba9 +size 4655 diff --git a/EndlessVendetta/Content/__ExternalActors__/Levels/EnemyAITest/1/WZ/18S5NW75OTIRU2HFO79N4M.uasset b/EndlessVendetta/Content/__ExternalActors__/Levels/EnemyAITest/1/WZ/18S5NW75OTIRU2HFO79N4M.uasset new file mode 100644 index 00000000..083077d1 --- /dev/null +++ b/EndlessVendetta/Content/__ExternalActors__/Levels/EnemyAITest/1/WZ/18S5NW75OTIRU2HFO79N4M.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:8cbfb594832690a4d22e750e1c9cdcf01ec3115e1f902390ad3aa83af0733887 +size 4690 diff --git a/EndlessVendetta/Content/__ExternalActors__/Levels/EnemyAITest/2/37/1NHB75E9P7T630GL2K4WWN.uasset b/EndlessVendetta/Content/__ExternalActors__/Levels/EnemyAITest/2/37/1NHB75E9P7T630GL2K4WWN.uasset new file mode 100644 index 00000000..193f240e --- /dev/null +++ b/EndlessVendetta/Content/__ExternalActors__/Levels/EnemyAITest/2/37/1NHB75E9P7T630GL2K4WWN.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:362a0c728d4c1a65e6bde6f6cc59d26c06e3d2341699251879d4734aaf6125fa +size 4539 diff --git a/EndlessVendetta/Content/__ExternalActors__/Levels/EnemyAITest/2/9H/UI6E3IHLXCVIV54810ZSUS.uasset b/EndlessVendetta/Content/__ExternalActors__/Levels/EnemyAITest/2/9H/UI6E3IHLXCVIV54810ZSUS.uasset new file mode 100644 index 00000000..f32ef151 --- /dev/null +++ b/EndlessVendetta/Content/__ExternalActors__/Levels/EnemyAITest/2/9H/UI6E3IHLXCVIV54810ZSUS.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:9649867553b90bb4397d8c3901e403a70701d82712475b1cf554331493fe18ea +size 3591 diff --git a/EndlessVendetta/Content/__ExternalActors__/Levels/EnemyAITest/2/CT/39SOGBQQWQPX5XF5XSIDUZ.uasset b/EndlessVendetta/Content/__ExternalActors__/Levels/EnemyAITest/2/CT/39SOGBQQWQPX5XF5XSIDUZ.uasset new file mode 100644 index 00000000..f7d69200 --- /dev/null +++ b/EndlessVendetta/Content/__ExternalActors__/Levels/EnemyAITest/2/CT/39SOGBQQWQPX5XF5XSIDUZ.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:760dce31c9f18576781d0678cbb982ab4c16127d61b8391d68edd31744ef2e2b +size 5214 diff --git a/EndlessVendetta/Content/__ExternalActors__/Levels/EnemyAITest/2/D3/R44Z9O6CLM37P3G5IX40CI.uasset b/EndlessVendetta/Content/__ExternalActors__/Levels/EnemyAITest/2/D3/R44Z9O6CLM37P3G5IX40CI.uasset new file mode 100644 index 00000000..e64df1d8 --- /dev/null +++ b/EndlessVendetta/Content/__ExternalActors__/Levels/EnemyAITest/2/D3/R44Z9O6CLM37P3G5IX40CI.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b13181dd37c900800b8063c1e369065d7b0164e0ebacff2a12f9161d27820dbb +size 4787 diff --git a/EndlessVendetta/Content/__ExternalActors__/Levels/EnemyAITest/2/GF/LRPO23YW2N7WZ21HT3ADU8.uasset b/EndlessVendetta/Content/__ExternalActors__/Levels/EnemyAITest/2/GF/LRPO23YW2N7WZ21HT3ADU8.uasset new file mode 100644 index 00000000..97b71e5a --- /dev/null +++ b/EndlessVendetta/Content/__ExternalActors__/Levels/EnemyAITest/2/GF/LRPO23YW2N7WZ21HT3ADU8.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:1157a301eaf171ced8252f794196b28001e9c2b1e37a1fd453cc4dde6ed6c87b +size 4713 diff --git a/EndlessVendetta/Content/__ExternalActors__/Levels/EnemyAITest/2/RX/YRPO3KV1HDO96HPZ66IMQI.uasset b/EndlessVendetta/Content/__ExternalActors__/Levels/EnemyAITest/2/RX/YRPO3KV1HDO96HPZ66IMQI.uasset new file mode 100644 index 00000000..e503aa04 --- /dev/null +++ b/EndlessVendetta/Content/__ExternalActors__/Levels/EnemyAITest/2/RX/YRPO3KV1HDO96HPZ66IMQI.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:9af8f569b99044bcd458580d5f6b118a4e223cf17c4b8474c25cf0d01113ff29 +size 4683 diff --git a/EndlessVendetta/Content/__ExternalActors__/Levels/EnemyAITest/3/21/OZ7HVAU40P457N2KQYO1Z5.uasset b/EndlessVendetta/Content/__ExternalActors__/Levels/EnemyAITest/3/21/OZ7HVAU40P457N2KQYO1Z5.uasset new file mode 100644 index 00000000..77b37b57 --- /dev/null +++ b/EndlessVendetta/Content/__ExternalActors__/Levels/EnemyAITest/3/21/OZ7HVAU40P457N2KQYO1Z5.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:173bc0e598c4e789da276f6cd5083232689d81af4baa1e78ef41147b46ae19e0 +size 4538 diff --git a/EndlessVendetta/Content/__ExternalActors__/Levels/EnemyAITest/3/7D/94E51K8PLPK43WRYXU8RL0.uasset b/EndlessVendetta/Content/__ExternalActors__/Levels/EnemyAITest/3/7D/94E51K8PLPK43WRYXU8RL0.uasset new file mode 100644 index 00000000..3663e2b6 --- /dev/null +++ b/EndlessVendetta/Content/__ExternalActors__/Levels/EnemyAITest/3/7D/94E51K8PLPK43WRYXU8RL0.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:efdf6470ed0556e4edcc55ea713b76456005b0b0166aee0e591d048d59e519bc +size 4692 diff --git a/EndlessVendetta/Content/__ExternalActors__/Levels/EnemyAITest/3/8B/5GCK7S3AV6GJBA0IACF1XO.uasset b/EndlessVendetta/Content/__ExternalActors__/Levels/EnemyAITest/3/8B/5GCK7S3AV6GJBA0IACF1XO.uasset new file mode 100644 index 00000000..d2a18605 --- /dev/null +++ b/EndlessVendetta/Content/__ExternalActors__/Levels/EnemyAITest/3/8B/5GCK7S3AV6GJBA0IACF1XO.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:49298a3d050dc63572fe5b0f8443a64c7e521e276c0075e7d694f07aec463dae +size 4541 diff --git a/EndlessVendetta/Content/__ExternalActors__/Levels/EnemyAITest/3/GB/Q8MDU4O8NVGCNQC48I9E8C.uasset b/EndlessVendetta/Content/__ExternalActors__/Levels/EnemyAITest/3/GB/Q8MDU4O8NVGCNQC48I9E8C.uasset new file mode 100644 index 00000000..15cf82ea --- /dev/null +++ b/EndlessVendetta/Content/__ExternalActors__/Levels/EnemyAITest/3/GB/Q8MDU4O8NVGCNQC48I9E8C.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e308d86ccd87772a9b48f42294078386841e9af06bb1f4e358995138b6ee98d4 +size 4715 diff --git a/EndlessVendetta/Content/__ExternalActors__/Levels/EnemyAITest/3/LK/1HYMG69QSB1R2IKKLMNVLT.uasset b/EndlessVendetta/Content/__ExternalActors__/Levels/EnemyAITest/3/LK/1HYMG69QSB1R2IKKLMNVLT.uasset new file mode 100644 index 00000000..74f50cfc --- /dev/null +++ b/EndlessVendetta/Content/__ExternalActors__/Levels/EnemyAITest/3/LK/1HYMG69QSB1R2IKKLMNVLT.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:591eb4207c25e0a75f7eddf92f0046f7e72a0cc9ce7ea2100530a5f54e15f353 +size 4426 diff --git a/EndlessVendetta/Content/__ExternalActors__/Levels/EnemyAITest/4/7S/M6H76KT5RYSC8FT08UOYYV.uasset b/EndlessVendetta/Content/__ExternalActors__/Levels/EnemyAITest/4/7S/M6H76KT5RYSC8FT08UOYYV.uasset new file mode 100644 index 00000000..45781de8 --- /dev/null +++ b/EndlessVendetta/Content/__ExternalActors__/Levels/EnemyAITest/4/7S/M6H76KT5RYSC8FT08UOYYV.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f80c49bb71351e21d6c7fd5d07ba02d4c6ecb893f078ad9fc354c411a261b391 +size 4593 diff --git a/EndlessVendetta/Content/__ExternalActors__/Levels/EnemyAITest/4/DO/KPWW5M0TRW408IVKQNTBX7.uasset b/EndlessVendetta/Content/__ExternalActors__/Levels/EnemyAITest/4/DO/KPWW5M0TRW408IVKQNTBX7.uasset new file mode 100644 index 00000000..c43294d7 --- /dev/null +++ b/EndlessVendetta/Content/__ExternalActors__/Levels/EnemyAITest/4/DO/KPWW5M0TRW408IVKQNTBX7.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:addf7e6a676b465357631fecd85086cb3282294dd3a60d25ec1a45c44275820b +size 4786 diff --git a/EndlessVendetta/Content/__ExternalActors__/Levels/EnemyAITest/4/EH/H0RJG09BGRG4TA8B6P9SKL.uasset b/EndlessVendetta/Content/__ExternalActors__/Levels/EnemyAITest/4/EH/H0RJG09BGRG4TA8B6P9SKL.uasset new file mode 100644 index 00000000..76ff7bba --- /dev/null +++ b/EndlessVendetta/Content/__ExternalActors__/Levels/EnemyAITest/4/EH/H0RJG09BGRG4TA8B6P9SKL.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:3ded950368a5368f3187fcdae9b883ab92a7b57840a28a3613a0024df71d2098 +size 27121 diff --git a/EndlessVendetta/Content/__ExternalActors__/Levels/EnemyAITest/4/NV/0O5K04NGZ280HG3EDN82BS.uasset b/EndlessVendetta/Content/__ExternalActors__/Levels/EnemyAITest/4/NV/0O5K04NGZ280HG3EDN82BS.uasset new file mode 100644 index 00000000..0dfebb5c --- /dev/null +++ b/EndlessVendetta/Content/__ExternalActors__/Levels/EnemyAITest/4/NV/0O5K04NGZ280HG3EDN82BS.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:254992fc3dab572613b2ecd197002613a0772e89822600345f9f9a724bf20770 +size 4438 diff --git a/EndlessVendetta/Content/__ExternalActors__/Levels/EnemyAITest/6/T0/6P1LRRDLZM1EUAF0VJ2A1Z.uasset b/EndlessVendetta/Content/__ExternalActors__/Levels/EnemyAITest/6/T0/6P1LRRDLZM1EUAF0VJ2A1Z.uasset new file mode 100644 index 00000000..1cd549c3 --- /dev/null +++ b/EndlessVendetta/Content/__ExternalActors__/Levels/EnemyAITest/6/T0/6P1LRRDLZM1EUAF0VJ2A1Z.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:1fb000a8d5590b3f45db2cc93f88a1f2a0c33c1d478bb3f415ebb3dea20be866 +size 4692 diff --git a/EndlessVendetta/Content/__ExternalActors__/Levels/EnemyAITest/7/5X/SGTTTEQNKAZC3W9C8ICWCD.uasset b/EndlessVendetta/Content/__ExternalActors__/Levels/EnemyAITest/7/5X/SGTTTEQNKAZC3W9C8ICWCD.uasset new file mode 100644 index 00000000..f6c08eca --- /dev/null +++ b/EndlessVendetta/Content/__ExternalActors__/Levels/EnemyAITest/7/5X/SGTTTEQNKAZC3W9C8ICWCD.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:efe8687b693ae889c18ae026262399acc470a627b44b2c13ffb6c3fda05f96c7 +size 4692 diff --git a/EndlessVendetta/Content/__ExternalActors__/Levels/EnemyAITest/7/ON/O0RSM3NJKRZPH0FXBF9L3S.uasset b/EndlessVendetta/Content/__ExternalActors__/Levels/EnemyAITest/7/ON/O0RSM3NJKRZPH0FXBF9L3S.uasset new file mode 100644 index 00000000..7867fd94 --- /dev/null +++ b/EndlessVendetta/Content/__ExternalActors__/Levels/EnemyAITest/7/ON/O0RSM3NJKRZPH0FXBF9L3S.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:0dcbcd815a02baed2145105961a0ca02ecf79520c45272314ab6a87f9d46e8e1 +size 4692 diff --git a/EndlessVendetta/Content/__ExternalActors__/Levels/EnemyAITest/7/VD/0FS7NIRZS2R8T57JW12AXA.uasset b/EndlessVendetta/Content/__ExternalActors__/Levels/EnemyAITest/7/VD/0FS7NIRZS2R8T57JW12AXA.uasset new file mode 100644 index 00000000..65bcd19a --- /dev/null +++ b/EndlessVendetta/Content/__ExternalActors__/Levels/EnemyAITest/7/VD/0FS7NIRZS2R8T57JW12AXA.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e7213ce229e3507136525afca1c0617c8adc58c0366a73606d931cc348a10c22 +size 4820 diff --git a/EndlessVendetta/Content/__ExternalActors__/Levels/EnemyAITest/8/7J/5M8HYAJBH6S06KBPPU5V7W.uasset b/EndlessVendetta/Content/__ExternalActors__/Levels/EnemyAITest/8/7J/5M8HYAJBH6S06KBPPU5V7W.uasset new file mode 100644 index 00000000..4821f821 --- /dev/null +++ b/EndlessVendetta/Content/__ExternalActors__/Levels/EnemyAITest/8/7J/5M8HYAJBH6S06KBPPU5V7W.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:11f32a1fc9c265eaa142b46bb38d5a6ac78f8f236efa0c4b88bc7a3261086b41 +size 4715 diff --git a/EndlessVendetta/Content/__ExternalActors__/Levels/EnemyAITest/8/L7/JWTIPNAQRZ09Y5NAQL5BW8.uasset b/EndlessVendetta/Content/__ExternalActors__/Levels/EnemyAITest/8/L7/JWTIPNAQRZ09Y5NAQL5BW8.uasset new file mode 100644 index 00000000..d2d2b2c3 --- /dev/null +++ b/EndlessVendetta/Content/__ExternalActors__/Levels/EnemyAITest/8/L7/JWTIPNAQRZ09Y5NAQL5BW8.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:1394519fdbfca8cd57fe5d14b0c9c08b8711a01baf4dd467320a49fcd95f6096 +size 4713 diff --git a/EndlessVendetta/Content/__ExternalActors__/Levels/EnemyAITest/8/PN/HJTAS89CNH6I0AR0ZCCE4H.uasset b/EndlessVendetta/Content/__ExternalActors__/Levels/EnemyAITest/8/PN/HJTAS89CNH6I0AR0ZCCE4H.uasset new file mode 100644 index 00000000..1b18c190 --- /dev/null +++ b/EndlessVendetta/Content/__ExternalActors__/Levels/EnemyAITest/8/PN/HJTAS89CNH6I0AR0ZCCE4H.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:7004ea5397728a307a687eafb1f55f84a8b5dc6eb5baa7bf867e5600da2e2170 +size 4650 diff --git a/EndlessVendetta/Content/__ExternalActors__/Levels/EnemyAITest/9/45/BRJA5VHIWN6NTS13DYDN08.uasset b/EndlessVendetta/Content/__ExternalActors__/Levels/EnemyAITest/9/45/BRJA5VHIWN6NTS13DYDN08.uasset new file mode 100644 index 00000000..c5296a03 --- /dev/null +++ b/EndlessVendetta/Content/__ExternalActors__/Levels/EnemyAITest/9/45/BRJA5VHIWN6NTS13DYDN08.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:46f180e7d001110d9fcb9e2855269222e67b05bb4610fce087bea9ff8e6c1708 +size 4787 diff --git a/EndlessVendetta/Content/__ExternalActors__/Levels/EnemyAITest/9/AG/M50NVM1A6DXOF9R7EHESH6.uasset b/EndlessVendetta/Content/__ExternalActors__/Levels/EnemyAITest/9/AG/M50NVM1A6DXOF9R7EHESH6.uasset new file mode 100644 index 00000000..7109c790 --- /dev/null +++ b/EndlessVendetta/Content/__ExternalActors__/Levels/EnemyAITest/9/AG/M50NVM1A6DXOF9R7EHESH6.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:fff2630cecd7cc45e10370918bc86692ef8c098fc7ffa4a6fdd8517a040bf83b +size 4655 diff --git a/EndlessVendetta/Content/__ExternalActors__/Levels/EnemyAITest/9/EB/XWFQGB0N0AV29HQ1RZBRTN.uasset b/EndlessVendetta/Content/__ExternalActors__/Levels/EnemyAITest/9/EB/XWFQGB0N0AV29HQ1RZBRTN.uasset new file mode 100644 index 00000000..e88336ab --- /dev/null +++ b/EndlessVendetta/Content/__ExternalActors__/Levels/EnemyAITest/9/EB/XWFQGB0N0AV29HQ1RZBRTN.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:bc4b6a4512cab5257543fa72092fa61e70347811f842a7545e5b60c94443856f +size 3597 diff --git a/EndlessVendetta/Content/__ExternalActors__/Levels/EnemyAITest/9/JJ/USZ2IG22JXYQ9U9L4R3O9K.uasset b/EndlessVendetta/Content/__ExternalActors__/Levels/EnemyAITest/9/JJ/USZ2IG22JXYQ9U9L4R3O9K.uasset new file mode 100644 index 00000000..872903de --- /dev/null +++ b/EndlessVendetta/Content/__ExternalActors__/Levels/EnemyAITest/9/JJ/USZ2IG22JXYQ9U9L4R3O9K.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:4c27ca877d66f24ae8e7cd3396b7c6992c931a9e529c15c8fff36c9f49d00796 +size 4692 diff --git a/EndlessVendetta/Content/__ExternalActors__/Levels/EnemyAITest/9/SL/1ABG5W1O6BMZYRRZY742RR.uasset b/EndlessVendetta/Content/__ExternalActors__/Levels/EnemyAITest/9/SL/1ABG5W1O6BMZYRRZY742RR.uasset new file mode 100644 index 00000000..f39b6e36 --- /dev/null +++ b/EndlessVendetta/Content/__ExternalActors__/Levels/EnemyAITest/9/SL/1ABG5W1O6BMZYRRZY742RR.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d5d6e77de164077904ab242eafa07691014d6441a34ff827d9e35627448d9fe6 +size 4690 diff --git a/EndlessVendetta/Content/__ExternalActors__/Levels/EnemyAITest/9/TM/SXQEJM0WJTDHS510NE0ARB.uasset b/EndlessVendetta/Content/__ExternalActors__/Levels/EnemyAITest/9/TM/SXQEJM0WJTDHS510NE0ARB.uasset new file mode 100644 index 00000000..36704479 --- /dev/null +++ b/EndlessVendetta/Content/__ExternalActors__/Levels/EnemyAITest/9/TM/SXQEJM0WJTDHS510NE0ARB.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:95461b4e892c7faa9c6f4736e6f5f614e163bbe5666bc3c794aa2373be5e95b5 +size 2394 diff --git a/EndlessVendetta/Content/__ExternalActors__/Levels/EnemyAITest/9/ZA/DT4HPQ7S67F0V9G8T1YCQI.uasset b/EndlessVendetta/Content/__ExternalActors__/Levels/EnemyAITest/9/ZA/DT4HPQ7S67F0V9G8T1YCQI.uasset new file mode 100644 index 00000000..2087dece --- /dev/null +++ b/EndlessVendetta/Content/__ExternalActors__/Levels/EnemyAITest/9/ZA/DT4HPQ7S67F0V9G8T1YCQI.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:48a4a2eba8060b4e8fc2ef7d45d2cbed7a7fc8c0e1393ed0648d96b407bbb473 +size 4601 diff --git a/EndlessVendetta/Content/__ExternalActors__/Levels/EnemyAITest/A/IY/10597N2XJ21LILF5KIZ5KL.uasset b/EndlessVendetta/Content/__ExternalActors__/Levels/EnemyAITest/A/IY/10597N2XJ21LILF5KIZ5KL.uasset new file mode 100644 index 00000000..290014a2 --- /dev/null +++ b/EndlessVendetta/Content/__ExternalActors__/Levels/EnemyAITest/A/IY/10597N2XJ21LILF5KIZ5KL.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:57d2b691962af05ad68bcdac1425a27731afe4da3219fcddd125b7827ffa4033 +size 4715 diff --git a/EndlessVendetta/Content/__ExternalActors__/Levels/EnemyAITest/A/ON/FV27LO60GPVLJOY7YY1WLP.uasset b/EndlessVendetta/Content/__ExternalActors__/Levels/EnemyAITest/A/ON/FV27LO60GPVLJOY7YY1WLP.uasset new file mode 100644 index 00000000..8a522426 --- /dev/null +++ b/EndlessVendetta/Content/__ExternalActors__/Levels/EnemyAITest/A/ON/FV27LO60GPVLJOY7YY1WLP.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:bc5301307680ee70a29d57f281faa21861b37bbd7cdeb71bd8c4d7f78b63c2ee +size 4692 diff --git a/EndlessVendetta/Content/__ExternalActors__/Levels/EnemyAITest/A/PF/EG3JGUPDQZSATN1FLSWJVL.uasset b/EndlessVendetta/Content/__ExternalActors__/Levels/EnemyAITest/A/PF/EG3JGUPDQZSATN1FLSWJVL.uasset new file mode 100644 index 00000000..a67a17b2 --- /dev/null +++ b/EndlessVendetta/Content/__ExternalActors__/Levels/EnemyAITest/A/PF/EG3JGUPDQZSATN1FLSWJVL.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e9a51f8e53482ec71db4c60a9b83ba86412c2a09b64ceafec97d9eb176ac45e6 +size 3577 diff --git a/EndlessVendetta/Content/__ExternalActors__/Levels/EnemyAITest/A/SX/4TUAQI2F98RL122DKAHM7N.uasset b/EndlessVendetta/Content/__ExternalActors__/Levels/EnemyAITest/A/SX/4TUAQI2F98RL122DKAHM7N.uasset new file mode 100644 index 00000000..03ec5516 --- /dev/null +++ b/EndlessVendetta/Content/__ExternalActors__/Levels/EnemyAITest/A/SX/4TUAQI2F98RL122DKAHM7N.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:c2d83a1c4216d4e8663256c26ded9832baa8d603725e6690eba8b702e7286429 +size 2442 diff --git a/EndlessVendetta/Content/__ExternalActors__/Levels/EnemyAITest/A/WI/254BGPLW3CW799JAYW11ZE.uasset b/EndlessVendetta/Content/__ExternalActors__/Levels/EnemyAITest/A/WI/254BGPLW3CW799JAYW11ZE.uasset new file mode 100644 index 00000000..fd44451e --- /dev/null +++ b/EndlessVendetta/Content/__ExternalActors__/Levels/EnemyAITest/A/WI/254BGPLW3CW799JAYW11ZE.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:c104ec5adca67bcbc822e379a77c64ade6e6dc0fc31f0b5ab7e8a40978dd81d3 +size 4536 diff --git a/EndlessVendetta/Content/__ExternalActors__/Levels/EnemyAITest/B/8R/JBRRKN8XRT8V47MOSZ3XFX.uasset b/EndlessVendetta/Content/__ExternalActors__/Levels/EnemyAITest/B/8R/JBRRKN8XRT8V47MOSZ3XFX.uasset new file mode 100644 index 00000000..48da1872 --- /dev/null +++ b/EndlessVendetta/Content/__ExternalActors__/Levels/EnemyAITest/B/8R/JBRRKN8XRT8V47MOSZ3XFX.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:bb180ba7ea4720628e20e94d49e9163f003c25a2b273ecaef6cea8138ce045b0 +size 3959 diff --git a/EndlessVendetta/Content/__ExternalActors__/Levels/EnemyAITest/B/AZ/GX8EY01G00J28SE17R0FJV.uasset b/EndlessVendetta/Content/__ExternalActors__/Levels/EnemyAITest/B/AZ/GX8EY01G00J28SE17R0FJV.uasset new file mode 100644 index 00000000..d4567926 --- /dev/null +++ b/EndlessVendetta/Content/__ExternalActors__/Levels/EnemyAITest/B/AZ/GX8EY01G00J28SE17R0FJV.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:bcadae2018380b51ecd7bea3850566c6b0013ea6acb8ad1cdb8a0f4307fbc65c +size 5230 diff --git a/EndlessVendetta/Content/__ExternalActors__/Levels/EnemyAITest/B/KC/MH5IV9S2GG4KCWNMZHWKG9.uasset b/EndlessVendetta/Content/__ExternalActors__/Levels/EnemyAITest/B/KC/MH5IV9S2GG4KCWNMZHWKG9.uasset new file mode 100644 index 00000000..307b01a9 --- /dev/null +++ b/EndlessVendetta/Content/__ExternalActors__/Levels/EnemyAITest/B/KC/MH5IV9S2GG4KCWNMZHWKG9.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:8a1bfc27ac492ac3fece03c083295664ee62db2315e3fdd9ef5d8484c9cedada +size 4713 diff --git a/EndlessVendetta/Content/__ExternalActors__/Levels/EnemyAITest/C/6W/LBHG7995AIEJVSD5QZYXZS.uasset b/EndlessVendetta/Content/__ExternalActors__/Levels/EnemyAITest/C/6W/LBHG7995AIEJVSD5QZYXZS.uasset new file mode 100644 index 00000000..55d4bf60 --- /dev/null +++ b/EndlessVendetta/Content/__ExternalActors__/Levels/EnemyAITest/C/6W/LBHG7995AIEJVSD5QZYXZS.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:61472c31c9367301e40cb2d598e5bd9de8159a220d509f9638478bfb98dad958 +size 12446 diff --git a/EndlessVendetta/Content/__ExternalActors__/Levels/EnemyAITest/D/JE/MPPG27DTK7Y2X2HONLOIS2.uasset b/EndlessVendetta/Content/__ExternalActors__/Levels/EnemyAITest/D/JE/MPPG27DTK7Y2X2HONLOIS2.uasset new file mode 100644 index 00000000..040b9534 --- /dev/null +++ b/EndlessVendetta/Content/__ExternalActors__/Levels/EnemyAITest/D/JE/MPPG27DTK7Y2X2HONLOIS2.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:8c87a366434e64473d22935b5e9c68acb99184f76d5ed56af04200931155f47d +size 4713 diff --git a/EndlessVendetta/Content/__ExternalActors__/Levels/EnemyAITest/D/OV/MIML8IG26185E7HH7OUYXY.uasset b/EndlessVendetta/Content/__ExternalActors__/Levels/EnemyAITest/D/OV/MIML8IG26185E7HH7OUYXY.uasset new file mode 100644 index 00000000..ddbda486 --- /dev/null +++ b/EndlessVendetta/Content/__ExternalActors__/Levels/EnemyAITest/D/OV/MIML8IG26185E7HH7OUYXY.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:592670f9ea8edf0b9085636742da98af0a88a6031082f803938c48bcf73573c4 +size 5311 diff --git a/EndlessVendetta/Content/__ExternalActors__/Levels/EnemyAITest/E/AO/6CUEZ00H5605BZ34CYJ59J.uasset b/EndlessVendetta/Content/__ExternalActors__/Levels/EnemyAITest/E/AO/6CUEZ00H5605BZ34CYJ59J.uasset new file mode 100644 index 00000000..a7898461 --- /dev/null +++ b/EndlessVendetta/Content/__ExternalActors__/Levels/EnemyAITest/E/AO/6CUEZ00H5605BZ34CYJ59J.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:906d272fa13dc2a25be6bf7f61780f5840940b7fb54a40b019b344aaeb94e823 +size 4713 diff --git a/EndlessVendetta/Content/__ExternalActors__/Levels/EnemyAITest/E/CR/DRCNPPN33IO9BDIGKV8CQD.uasset b/EndlessVendetta/Content/__ExternalActors__/Levels/EnemyAITest/E/CR/DRCNPPN33IO9BDIGKV8CQD.uasset new file mode 100644 index 00000000..5e9674d4 --- /dev/null +++ b/EndlessVendetta/Content/__ExternalActors__/Levels/EnemyAITest/E/CR/DRCNPPN33IO9BDIGKV8CQD.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:0828e21397762093d0fd8299b39a1fd593299c2f91cefdeb3e0d9bb21584f8e6 +size 4650 diff --git a/EndlessVendetta/Content/__ExternalActors__/Levels/EnemyAITest/E/FJ/TDFYID5LIFN4RZYNHYR2L3.uasset b/EndlessVendetta/Content/__ExternalActors__/Levels/EnemyAITest/E/FJ/TDFYID5LIFN4RZYNHYR2L3.uasset new file mode 100644 index 00000000..f8c46abb --- /dev/null +++ b/EndlessVendetta/Content/__ExternalActors__/Levels/EnemyAITest/E/FJ/TDFYID5LIFN4RZYNHYR2L3.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:2e7ff25b38356d87268f402d5526e3f3bc3fff044c4365d900754ae17602c562 +size 4655 diff --git a/EndlessVendetta/Content/__ExternalActors__/Levels/EnemyAITest/E/L4/2A3KY5I7FJ21NDC7OURASV.uasset b/EndlessVendetta/Content/__ExternalActors__/Levels/EnemyAITest/E/L4/2A3KY5I7FJ21NDC7OURASV.uasset new file mode 100644 index 00000000..7052ebff --- /dev/null +++ b/EndlessVendetta/Content/__ExternalActors__/Levels/EnemyAITest/E/L4/2A3KY5I7FJ21NDC7OURASV.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ed5a847025a37763ddfd4fb22f866159e46913c6647d43bb32104dedbc75e0d4 +size 4538 diff --git a/EndlessVendetta/Content/__ExternalActors__/Levels/EnemyAITest/E/ML/NLOI6RS1TZE6573JN4LJAU.uasset b/EndlessVendetta/Content/__ExternalActors__/Levels/EnemyAITest/E/ML/NLOI6RS1TZE6573JN4LJAU.uasset new file mode 100644 index 00000000..e4311471 --- /dev/null +++ b/EndlessVendetta/Content/__ExternalActors__/Levels/EnemyAITest/E/ML/NLOI6RS1TZE6573JN4LJAU.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b5443b15f085029068d057876ecccfcf9252b6c9eea827f54c291ee4aa60f8ce +size 4653 diff --git a/EndlessVendetta/Content/__ExternalActors__/Levels/EnemyAITest/E/PL/ODMT46SVZ8BKVV6CH39RBJ.uasset b/EndlessVendetta/Content/__ExternalActors__/Levels/EnemyAITest/E/PL/ODMT46SVZ8BKVV6CH39RBJ.uasset new file mode 100644 index 00000000..1a394921 --- /dev/null +++ b/EndlessVendetta/Content/__ExternalActors__/Levels/EnemyAITest/E/PL/ODMT46SVZ8BKVV6CH39RBJ.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:2a340b2dd31ca10ee57e81b5c7564c0ae38fd58042ffc4803a7358af1e4df412 +size 4692 diff --git a/EndlessVendetta/Content/__ExternalActors__/Levels/EnemyAITest/E/TC/E3CXYQV6UQS02X2RRKCPDE.uasset b/EndlessVendetta/Content/__ExternalActors__/Levels/EnemyAITest/E/TC/E3CXYQV6UQS02X2RRKCPDE.uasset new file mode 100644 index 00000000..99dfa0af --- /dev/null +++ b/EndlessVendetta/Content/__ExternalActors__/Levels/EnemyAITest/E/TC/E3CXYQV6UQS02X2RRKCPDE.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b76dde1f5ce6a46bdc8b4917fcf89fe4ff2976fb86356402dd5f33a0aec26af9 +size 4692 diff --git a/EndlessVendetta/Content/__ExternalObjects__/Levels/EnemyAITest/3/IN/ZX0DKIDX2JX3JZ5AHZ358H.uasset b/EndlessVendetta/Content/__ExternalObjects__/Levels/EnemyAITest/3/IN/ZX0DKIDX2JX3JZ5AHZ358H.uasset new file mode 100644 index 00000000..8bc88b22 --- /dev/null +++ b/EndlessVendetta/Content/__ExternalObjects__/Levels/EnemyAITest/3/IN/ZX0DKIDX2JX3JZ5AHZ358H.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:90f3861f162a74e62d9638a7bf157726f95488a9b7e87aa5955cdaa81767de3b +size 2186 diff --git a/EndlessVendetta/Content/__ExternalObjects__/Levels/EnemyAITest/5/ED/F43HQFUB7DXKRU5ZNLN2HL.uasset b/EndlessVendetta/Content/__ExternalObjects__/Levels/EnemyAITest/5/ED/F43HQFUB7DXKRU5ZNLN2HL.uasset new file mode 100644 index 00000000..b26e8770 --- /dev/null +++ b/EndlessVendetta/Content/__ExternalObjects__/Levels/EnemyAITest/5/ED/F43HQFUB7DXKRU5ZNLN2HL.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:64fdade231bc37c873e650f913074ceecc4b5621ee952f20bdd17ddd3533f3fa +size 2200 diff --git a/EndlessVendetta/Content/__ExternalObjects__/Levels/EnemyAITest/6/JT/KDT0MAGCOXR70VASIZOKMP.uasset b/EndlessVendetta/Content/__ExternalObjects__/Levels/EnemyAITest/6/JT/KDT0MAGCOXR70VASIZOKMP.uasset new file mode 100644 index 00000000..0f6ff441 --- /dev/null +++ b/EndlessVendetta/Content/__ExternalObjects__/Levels/EnemyAITest/6/JT/KDT0MAGCOXR70VASIZOKMP.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:3f7fdb0a5971a633719b2967432504edf6409cdca147a1c11b4049d6dd5f4e7c +size 2186 diff --git a/EndlessVendetta/Content/__ExternalObjects__/Levels/EnemyAITest/7/0J/97389JWAHOKRK9742IJNUD.uasset b/EndlessVendetta/Content/__ExternalObjects__/Levels/EnemyAITest/7/0J/97389JWAHOKRK9742IJNUD.uasset new file mode 100644 index 00000000..829b8f15 --- /dev/null +++ b/EndlessVendetta/Content/__ExternalObjects__/Levels/EnemyAITest/7/0J/97389JWAHOKRK9742IJNUD.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ee9c5ac0277bfd791d343120790ab822d742ec64658dbc0ec02a88a1156b7217 +size 2188 diff --git a/EndlessVendetta/Content/__ExternalObjects__/Levels/EnemyAITest/7/6G/DU9OC4U9R64TY369G0N48F.uasset b/EndlessVendetta/Content/__ExternalObjects__/Levels/EnemyAITest/7/6G/DU9OC4U9R64TY369G0N48F.uasset new file mode 100644 index 00000000..94b8cb09 --- /dev/null +++ b/EndlessVendetta/Content/__ExternalObjects__/Levels/EnemyAITest/7/6G/DU9OC4U9R64TY369G0N48F.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:99a25acee5c7712ce29bf79274241157a841d8395b4861f048bd9d72508bb87b +size 2186 diff --git a/EndlessVendetta/Content/__ExternalObjects__/Levels/EnemyAITest/A/OF/DMAUKRJ7ZVQKZ15OGILSN5.uasset b/EndlessVendetta/Content/__ExternalObjects__/Levels/EnemyAITest/A/OF/DMAUKRJ7ZVQKZ15OGILSN5.uasset new file mode 100644 index 00000000..e67ed7f0 --- /dev/null +++ b/EndlessVendetta/Content/__ExternalObjects__/Levels/EnemyAITest/A/OF/DMAUKRJ7ZVQKZ15OGILSN5.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b9477e753ec6e98c3ac912e3e03ceae0e9b453adb2bf5d0ab2ac0b15de1740c1 +size 2188 diff --git a/EndlessVendetta/Content/__ExternalObjects__/Levels/EnemyAITest/C/4M/6DZ06BS46GV23GYW6TYVSW.uasset b/EndlessVendetta/Content/__ExternalObjects__/Levels/EnemyAITest/C/4M/6DZ06BS46GV23GYW6TYVSW.uasset new file mode 100644 index 00000000..093a7b9d --- /dev/null +++ b/EndlessVendetta/Content/__ExternalObjects__/Levels/EnemyAITest/C/4M/6DZ06BS46GV23GYW6TYVSW.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:57c903a6b521f7b86ec75f8a63d8eab9aceabca2a45d5e06dc8b81fbf4c745f7 +size 2192 diff --git a/EndlessVendetta/Content/__ExternalObjects__/Levels/EnemyAITest/E/KK/K83LURWABW69BW7GEPNTMB.uasset b/EndlessVendetta/Content/__ExternalObjects__/Levels/EnemyAITest/E/KK/K83LURWABW69BW7GEPNTMB.uasset new file mode 100644 index 00000000..3dac1372 --- /dev/null +++ b/EndlessVendetta/Content/__ExternalObjects__/Levels/EnemyAITest/E/KK/K83LURWABW69BW7GEPNTMB.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:0ba7aff1929eb1391d4be9aa86c03d2b2eebdf17ccb29b755a0618675ce05df3 +size 2186 diff --git a/UE5 Layout/Phil_s_UE5_Layout.ini b/UE5 Layout/Phil_s_UE5_Layout.ini new file mode 100644 index 00000000..abba7c93 --- /dev/null +++ b/UE5 Layout/Phil_s_UE5_Layout.ini @@ -0,0 +1,30 @@ +[EditorLayouts] +LayoutName=NSLOCTEXT("LayoutNamespace", "Phil_s_UE5_Layout", "Phil's UE5 Layout") +LayoutDescription=NSLOCTEXT("LayoutNamespace", "", "") +UnrealEd_Layout_v1.5=("Type": "Layout","Name": "UnrealEd_Layout_v1.5","PrimaryAreaIndex": 0,"Areas": [("SizeCoefficient": 1,"Type": "Area","Orientation": "Orient_Horizontal","WindowPlacement": "Placement_NoWindow","Nodes": [("SizeCoefficient": 2,"Type": "Stack","HideTabWell": false,"ForegroundTab": "LevelEditor","Tabs": [("TabId": "LevelEditor","TabState": "OpenedTab"),("TabId": "DockedToolkit","TabState": "ClosedTab"),("TabId": "ProjectSettings","TabState": "ClosedTab")])]),("SizeCoefficient": 1,"Type": "Area","Orientation": "Orient_Horizontal","WindowPlacement": "Placement_Automatic","WindowSize_X": 2236,"WindowSize_Y": 909.99993896484375,"Nodes": [("SizeCoefficient": 1,"Type": "Stack","HideTabWell": false,"ForegroundTab": "None","Tabs": [("TabId": "ContentBrowser1Tab","TabState": "ClosedTab")])]),("SizeCoefficient": 1,"Type": "Area","Orientation": "Orient_Horizontal","WindowPlacement": "Placement_Specified","WindowPosition_X": -1058,"WindowPosition_Y": 229,"WindowSize_X": 1000,"WindowSize_Y": 600,"bIsMaximized": false,"Nodes": [("SizeCoefficient": 1,"Type": "Stack","HideTabWell": false,"ForegroundTab": "None","Tabs": [("TabId": "WidgetReflector","TabState": "ClosedTab")])]),("SizeCoefficient": 1,"Type": "Area","Orientation": "Orient_Horizontal","WindowPlacement": "Placement_Specified","WindowPosition_X": 9,"WindowPosition_Y": 186,"WindowSize_X": 1644,"WindowSize_Y": 600,"bIsMaximized": false,"Nodes": [("SizeCoefficient": 1,"Type": "Stack","HideTabWell": false,"ForegroundTab": "None","Tabs": [("TabId": "MessageLog","TabState": "ClosedTab")])]),("SizeCoefficient": 1,"Type": "Area","Orientation": "Orient_Horizontal","WindowPlacement": "Placement_Specified","WindowPosition_X": 457,"WindowPosition_Y": 213,"WindowSize_X": 1000,"WindowSize_Y": 600,"bIsMaximized": false,"Nodes": [("SizeCoefficient": 1,"Type": "Stack","HideTabWell": false,"ForegroundTab": "None","Tabs": [("TabId": "ReferenceViewer","TabState": "ClosedTab")])]),("SizeCoefficient": 1,"Type": "Area","Orientation": "Orient_Horizontal","WindowPlacement": "Placement_Specified","WindowPosition_X": 455,"WindowPosition_Y": 227,"WindowSize_X": 1000,"WindowSize_Y": 600,"bIsMaximized": false,"Nodes": [("SizeCoefficient": 1,"Type": "Stack","HideTabWell": false,"ForegroundTab": "None","Tabs": [("TabId": "ProjectLauncher","TabState": "ClosedTab")])]),("SizeCoefficient": 1,"Type": "Area","Orientation": "Orient_Horizontal","WindowPlacement": "Placement_Specified","WindowPosition_X": 0,"WindowPosition_Y": 58,"WindowSize_X": 1914,"WindowSize_Y": 910,"bIsMaximized": false,"Nodes": [("SizeCoefficient": 1,"Type": "Stack","HideTabWell": false,"ForegroundTab": "None","Tabs": [("TabId": "EditorSettings","TabState": "ClosedTab"),("TabId": "PluginsEditor","TabState": "ClosedTab")])]),("SizeCoefficient": 1,"Type": "Area","Orientation": "Orient_Horizontal","WindowPlacement": "Placement_Specified","WindowPosition_X": 134,"WindowPosition_Y": 74,"WindowSize_X": 1650,"WindowSize_Y": 900,"bIsMaximized": false,"Nodes": [("SizeCoefficient": 1,"Type": "Stack","HideTabWell": false,"ForegroundTab": "None","Tabs": [("TabId": "BridgeTab","TabState": "ClosedTab")])]),("SizeCoefficient": 1,"Type": "Area","Orientation": "Orient_Vertical","WindowPlacement": "Placement_Specified","WindowPosition_X": 0,"WindowPosition_Y": 58,"WindowSize_X": 1914,"WindowSize_Y": 910,"bIsMaximized": false,"Nodes": [("SizeCoefficient": 1,"Type": "Stack","HideTabWell": false,"ForegroundTab": "None","Tabs": [("TabId": "StandaloneToolkit","TabState": "ClosedTab")]),("SizeCoefficient": 0.34999999403953552,"Type": "Stack","HideTabWell": false,"ForegroundTab": "None","Tabs": [("TabId": "MergeTool","TabState": "ClosedTab")])])]) +LevelEditor_Layout_v1.8=("Type": "Layout","Name": "LevelEditor_Layout_v1.8","PrimaryAreaIndex": 0,"Areas": [("SizeCoefficient": 1,"Type": "Area","Orientation": "Orient_Horizontal","WindowPlacement": "Placement_NoWindow","Nodes": [("SizeCoefficient": 1,"Type": "Splitter","Orientation": "Orient_Vertical","Nodes": [("SizeCoefficient": 0.75,"Type": "Splitter","Orientation": "Orient_Horizontal","Nodes": [("SizeCoefficient": 0.30000001192092896,"Type": "Stack","HideTabWell": false,"ForegroundTab": "None","Tabs": [("TabId": "TopLeftModeTab","TabState": "ClosedTab"),("TabId": "LevelEditorToolBox","TabState": "ClosedTab")]),("SizeCoefficient": 1.1499999761581421,"Type": "Splitter","Orientation": "Orient_Vertical","Nodes": [("SizeCoefficient": 1,"Type": "Stack","HideTabWell": true,"ForegroundTab": "None","Tabs": [("TabId": "LevelEditorToolBar","TabState": "OpenedTab")]),("SizeCoefficient": 1,"Type": "Stack","HideTabWell": true,"ForegroundTab": "None","Tabs": [("TabId": "EditorModeToolbar","TabState": "ClosedTab")]),("SizeCoefficient": 1,"Type": "Splitter","Orientation": "Orient_Horizontal","Nodes": [("SizeCoefficient": 1.5425490140914917,"Type": "Stack","HideTabWell": true,"ForegroundTab": "LevelEditorViewport","Tabs": [("TabId": "LevelEditorViewport","TabState": "OpenedTab")]),("SizeCoefficient": 0.45745047926902771,"Type": "Stack","HideTabWell": false,"ForegroundTab": "PlacementBrowser","Tabs": [("TabId": "PlacementBrowser","TabState": "OpenedTab")])])])]),("SizeCoefficient": 0.40000000596046448,"Type": "Splitter","Orientation": "Orient_Horizontal","Nodes": [("SizeCoefficient": 0.41683539748191833,"Type": "Stack","HideTabWell": false,"ForegroundTab": "ContentBrowserTab1","Tabs": [("TabId": "EmbeddedSequenceID","TabState": "ClosedTab"),("TabId": "ContentBrowserTab1","TabState": "OpenedTab"),("TabId": "OutputLog","TabState": "OpenedTab"),("TabId": "Sequencer","TabState": "ClosedTab")]),("SizeCoefficient": 0.38316473364830017,"Type": "Stack","HideTabWell": false,"ForegroundTab": "None","Tabs": [("TabId": "ContentBrowserTab2","TabState": "ClosedTab")])])]),("SizeCoefficient": 0.30000001192092896,"Type": "Stack","HideTabWell": false,"ForegroundTab": "None","Tabs": [("TabId": "TakeRecorder","TabState": "ClosedTab")]),("SizeCoefficient": 0.25,"Type": "Splitter","Orientation": "Orient_Vertical","Nodes": [("SizeCoefficient": 0.56138122081756592,"Type": "Stack","HideTabWell": false,"ForegroundTab": "None","Tabs": [("TabId": "TopRightModeTab","TabState": "ClosedTab"),("TabId": "LevelEditorLayerBrowser","TabState": "ClosedTab")]),("SizeCoefficient": 0.83861857652664185,"Type": "Stack","HideTabWell": false,"ForegroundTab": "LevelEditorSceneOutliner","Tabs": [("TabId": "BottomRightModeTab","TabState": "ClosedTab"),("TabId": "LevelEditorSelectionDetails","TabState": "OpenedTab"),("TabId": "WorldBrowserPartitionEditor","TabState": "ClosedTab"),("TabId": "WorldSettingsTab","TabState": "ClosedTab"),("TabId": "LevelEditorSceneOutliner","TabState": "OpenedTab")])])]),("SizeCoefficient": 1,"Type": "Area","Orientation": "Orient_Horizontal","WindowPlacement": "Placement_Specified","WindowPosition_X": 457,"WindowPosition_Y": 213,"WindowSize_X": 1000,"WindowSize_Y": 600,"bIsMaximized": false,"Nodes": [("SizeCoefficient": 1,"Type": "Stack","HideTabWell": false,"ForegroundTab": "None","Tabs": [("TabId": "WorldBrowserDetails","TabState": "ClosedTab")])]),("SizeCoefficient": 1,"Type": "Area","Orientation": "Orient_Horizontal","WindowPlacement": "Placement_Specified","WindowPosition_X": 457,"WindowPosition_Y": 213,"WindowSize_X": 1000,"WindowSize_Y": 600,"bIsMaximized": false,"Nodes": [("SizeCoefficient": 1,"Type": "Stack","HideTabWell": false,"ForegroundTab": "None","Tabs": [("TabId": "WorldBrowserHierarchy","TabState": "ClosedTab")])])]) +WidgetBlueprintEditor_Designer_Layout_v4_8=("Type": "Layout","Name": "WidgetBlueprintEditor_Designer_Layout_v4_8","PrimaryAreaIndex": 0,"Areas": [("SizeCoefficient": 1,"Type": "Area","Orientation": "Orient_Horizontal","WindowPlacement": "Placement_NoWindow","Nodes": [("SizeCoefficient": 0.15000000596046448,"Type": "Splitter","Orientation": "Orient_Vertical","Nodes": [("SizeCoefficient": 0.5,"Type": "Stack","HideTabWell": false,"ForegroundTab": "WidgetTemplates","Tabs": [("TabId": "WidgetTemplates","TabState": "OpenedTab"),("TabId": "WidgetLibrary","TabState": "OpenedTab")]),("SizeCoefficient": 0.5,"Type": "Stack","HideTabWell": false,"ForegroundTab": "SlateHierarchy","Tabs": [("TabId": "SlateHierarchy","TabState": "OpenedTab"),("TabId": "BindWidget","TabState": "OpenedTab")])]),("SizeCoefficient": 0.85000002384185791,"Type": "Splitter","Orientation": "Orient_Vertical","Nodes": [("SizeCoefficient": 0.69999998807907104,"Type": "Splitter","Orientation": "Orient_Horizontal","Nodes": [("SizeCoefficient": 0.05000000074505806,"Type": "Stack","HideTabWell": true,"ForegroundTab": "None","Tabs": [("TabId": "TopLeftModeTab","TabState": "ClosedTab")]),("SizeCoefficient": 0.80000001192092896,"Type": "Stack","HideTabWell": true,"ForegroundTab": "SlatePreview","Tabs": [("TabId": "SlatePreview","TabState": "OpenedTab")]),("SizeCoefficient": 0.34999999403953552,"Type": "Stack","HideTabWell": false,"ForegroundTab": "WidgetDetails","Tabs": [("TabId": "WidgetDetails","TabState": "OpenedTab")])]),("SizeCoefficient": 0.30000001192092896,"Type": "Stack","HideTabWell": false,"ForegroundTab": "Animations","Tabs": [("TabId": "Animations","TabState": "OpenedTab"),("TabId": "EmbeddedSequenceID","TabState": "ClosedTab"),("TabId": "CompilerResults","TabState": "ClosedTab")])])]),("SizeCoefficient": 1,"Type": "Area","Orientation": "Orient_Vertical","WindowPlacement": "Placement_Specified","WindowPosition_X": 573,"WindowPosition_Y": 306,"WindowSize_X": 768,"WindowSize_Y": 413,"bIsMaximized": false,"Nodes": [("SizeCoefficient": 1,"Type": "Stack","HideTabWell": false,"ForegroundTab": "None","Tabs": [("TabId": "SequencerGraphEditor","TabState": "ClosedTab")])])]) +Blueprints_Unified_Components_v7=("Type": "Layout","Name": "Blueprints_Unified_Components_v7","PrimaryAreaIndex": 0,"Areas": [("SizeCoefficient": 1,"Type": "Area","Orientation": "Orient_Horizontal","WindowPlacement": "Placement_NoWindow","Nodes": [("SizeCoefficient": 0.15000000596046448,"Type": "Splitter","Orientation": "Orient_Vertical","Nodes": [("SizeCoefficient": 0.30000001192092896,"Type": "Stack","HideTabWell": false,"ForegroundTab": "ConstructionScriptEditor","Tabs": [("TabId": "ConstructionScriptEditor","TabState": "OpenedTab")]),("SizeCoefficient": 0.69999998807907104,"Type": "Stack","HideTabWell": false,"ForegroundTab": "MyBlueprint","Tabs": [("TabId": "MyBlueprint","TabState": "OpenedTab")])]),("SizeCoefficient": 0.60000002384185791,"Type": "Splitter","Orientation": "Orient_Vertical","Nodes": [("SizeCoefficient": 0.80000001192092896,"Type": "Stack","HideTabWell": false,"ForegroundTab": "SCSViewport","Tabs": [("TabId": "SCSViewport","TabState": "OpenedTab"),("TabId": "Document","TabState": "ClosedTab")]),("SizeCoefficient": 0.20000000298023224,"Type": "Stack","HideTabWell": false,"ForegroundTab": "FindResults","Tabs": [("TabId": "EmbeddedSequenceID","TabState": "ClosedTab"),("TabId": "CompilerResults","TabState": "OpenedTab"),("TabId": "FindResults","TabState": "OpenedTab"),("TabId": "BookmarkList","TabState": "ClosedTab")])]),("SizeCoefficient": 0.25,"Type": "Stack","HideTabWell": false,"ForegroundTab": "Inspector","Tabs": [("TabId": "Inspector","TabState": "OpenedTab"),("TabId": "PaletteList","TabState": "ClosedTab")])])]) +Standalone_TextureEditor_Layout_v5=("Type": "Layout","Name": "Standalone_TextureEditor_Layout_v5","PrimaryAreaIndex": 0,"Areas": [("SizeCoefficient": 1,"Type": "Area","Orientation": "Orient_Horizontal","WindowPlacement": "Placement_NoWindow","Nodes": [("SizeCoefficient": 1,"Type": "Stack","HideTabWell": true,"ForegroundTab": "TextureEditor_Viewport","Tabs": [("TabId": "TextureEditor_Viewport","TabState": "OpenedTab")]),("SizeCoefficient": 0.33000001311302185,"Type": "Stack","HideTabWell": false,"ForegroundTab": "TextureEditor_Properties","Tabs": [("TabId": "TextureEditor_Properties","TabState": "OpenedTab"),("TabId": "TextureEditor_Oodle","TabState": "OpenedTab")])])]) +Standalone_BlueprintDefaults_Layout_v7=("Type": "Layout","Name": "Standalone_BlueprintDefaults_Layout_v7","PrimaryAreaIndex": 0,"Areas": [("SizeCoefficient": 1,"Type": "Area","Orientation": "Orient_Vertical","WindowPlacement": "Placement_NoWindow","Nodes": [("SizeCoefficient": 1,"Type": "Stack","HideTabWell": true,"ForegroundTab": "DefaultEditor","Tabs": [("TabId": "DefaultEditor","TabState": "OpenedTab")])])]) +Blueprints_Unified_v5=("Type": "Layout","Name": "Blueprints_Unified_v5","PrimaryAreaIndex": 0,"Areas": [("SizeCoefficient": 1,"Type": "Area","Orientation": "Orient_Horizontal","WindowPlacement": "Placement_NoWindow","Nodes": [("SizeCoefficient": 0.15000000596046448,"Type": "Stack","HideTabWell": false,"ForegroundTab": "MyBlueprint","Tabs": [("TabId": "MyBlueprint","TabState": "OpenedTab")]),("SizeCoefficient": 0.60000002384185791,"Type": "Splitter","Orientation": "Orient_Vertical","Nodes": [("SizeCoefficient": 0.80000001192092896,"Type": "Stack","HideTabWell": false,"ForegroundTab": "Document","Tabs": [("TabId": "Document","TabState": "ClosedTab")]),("SizeCoefficient": 0.20000000298023224,"Type": "Stack","HideTabWell": false,"ForegroundTab": "None","Tabs": [("TabId": "EmbeddedSequenceID","TabState": "ClosedTab"),("TabId": "CompilerResults","TabState": "ClosedTab"),("TabId": "FindResults","TabState": "ClosedTab"),("TabId": "BookmarkList","TabState": "ClosedTab")])]),("SizeCoefficient": 0.25,"Type": "Stack","HideTabWell": false,"ForegroundTab": "Inspector","Tabs": [("TabId": "Inspector","TabState": "OpenedTab"),("TabId": "PaletteList","TabState": "ClosedTab")])])]) +Standalone_SimpleAssetEditor_Layout_v4=("Type": "Layout","Name": "Standalone_SimpleAssetEditor_Layout_v4","PrimaryAreaIndex": 0,"Areas": [("SizeCoefficient": 1,"Type": "Area","Orientation": "Orient_Vertical","WindowPlacement": "Placement_NoWindow","Nodes": [("SizeCoefficient": 1,"Type": "Stack","HideTabWell": false,"ForegroundTab": "GenericEditor_Properties","Tabs": [("TabId": "GenericEditor_Properties","TabState": "OpenedTab")])])]) +Standalone_DataTableEditor_Layout_v6=("Type": "Layout","Name": "Standalone_DataTableEditor_Layout_v6","PrimaryAreaIndex": 0,"Areas": [("SizeCoefficient": 1,"Type": "Area","Orientation": "Orient_Vertical","WindowPlacement": "Placement_NoWindow","Nodes": [("SizeCoefficient": 1,"Type": "Stack","HideTabWell": false,"ForegroundTab": "DataTableEditor_DataTable","Tabs": [("TabId": "DataTableEditor_DataTable","TabState": "OpenedTab"),("TabId": "DataTableEditor_DataTableDetails","TabState": "OpenedTab")]),("SizeCoefficient": 1,"Type": "Stack","HideTabWell": false,"ForegroundTab": "DataTableEditor_RowEditor","Tabs": [("TabId": "DataTableEditor_RowEditor","TabState": "OpenedTab")])])]) +WidgetBlueprintEditor_Graph_Layout_v2x1=("Type": "Layout","Name": "WidgetBlueprintEditor_Graph_Layout_v2x1","PrimaryAreaIndex": 0,"Areas": [("SizeCoefficient": 1,"Type": "Area","Orientation": "Orient_Horizontal","WindowPlacement": "Placement_NoWindow","Nodes": [("SizeCoefficient": 0.15000000596046448,"Type": "Splitter","Orientation": "Orient_Vertical","Nodes": [("SizeCoefficient": 0.5,"Type": "Stack","HideTabWell": false,"ForegroundTab": "MyBlueprint","Tabs": [("TabId": "MyBlueprint","TabState": "OpenedTab")]),("SizeCoefficient": 0.5,"Type": "Stack","HideTabWell": false,"ForegroundTab": "Inspector","Tabs": [("TabId": "Inspector","TabState": "OpenedTab")])]),("SizeCoefficient": 0.69999998807907104,"Type": "Splitter","Orientation": "Orient_Vertical","Nodes": [("SizeCoefficient": 0.80000001192092896,"Type": "Stack","HideTabWell": false,"ForegroundTab": "Document","Tabs": [("TabId": "Document","TabState": "ClosedTab")]),("SizeCoefficient": 0.20000000298023224,"Type": "Stack","HideTabWell": false,"ForegroundTab": "None","Tabs": [("TabId": "EmbeddedSequenceID","TabState": "ClosedTab"),("TabId": "CompilerResults","TabState": "ClosedTab"),("TabId": "FindResults","TabState": "ClosedTab")])]),("SizeCoefficient": 0.15000000596046448,"Type": "Stack","HideTabWell": false,"ForegroundTab": "None","Tabs": [("TabId": "PaletteList","TabState": "ClosedTab")])])]) +Stanalone_AnimationBlueprintEditMode_Layout_v1.4=("Type": "Layout","Name": "Stanalone_AnimationBlueprintEditMode_Layout_v1.4","PrimaryAreaIndex": 0,"Areas": [("SizeCoefficient": 1,"Type": "Area","Orientation": "Orient_Horizontal","WindowPlacement": "Placement_NoWindow","Nodes": [("SizeCoefficient": 0.25,"Type": "Splitter","Orientation": "Orient_Vertical","Nodes": [("SizeCoefficient": 0.5,"Type": "Stack","HideTabWell": true,"ForegroundTab": "Viewport","Tabs": [("TabId": "Viewport","TabState": "OpenedTab")]),("SizeCoefficient": 0.5,"Type": "Stack","HideTabWell": false,"ForegroundTab": "MyBlueprint","Tabs": [("TabId": "AnimCurveViewerTab","TabState": "ClosedTab"),("TabId": "SkeletonTreeView","TabState": "ClosedTab"),("TabId": "PoseWatchManager","TabState": "OpenedTab"),("TabId": "MyBlueprint","TabState": "OpenedTab")])]),("SizeCoefficient": 0.55000001192092896,"Type": "Splitter","Orientation": "Orient_Vertical","Nodes": [("SizeCoefficient": 0.80000001192092896,"Type": "Stack","HideTabWell": false,"ForegroundTab": "Document","Tabs": [("TabId": "Document","TabState": "ClosedTab")]),("SizeCoefficient": 0.20000000298023224,"Type": "Stack","HideTabWell": false,"ForegroundTab": "CompilerResults","Tabs": [("TabId": "CompilerResults","TabState": "OpenedTab"),("TabId": "FindResults","TabState": "ClosedTab")])]),("SizeCoefficient": 0.20000000298023224,"Type": "Splitter","Orientation": "Orient_Vertical","Nodes": [("SizeCoefficient": 0.5,"Type": "Stack","HideTabWell": false,"ForegroundTab": "Inspector","Tabs": [("TabId": "Inspector","TabState": "OpenedTab"),("TabId": "AdvancedPreviewTab","TabState": "OpenedTab"),("TabId": "PersonaSequenceRecorderSettings","TabState": "ClosedTab"),("TabId": "AnimBlueprintParentPlayerEditor","TabState": "ClosedTab")]),("SizeCoefficient": 0.5,"Type": "Stack","HideTabWell": false,"ForegroundTab": "SequenceBrowser","Tabs": [("TabId": "AnimBlueprintPreviewEditor","TabState": "OpenedTab"),("TabId": "SequenceBrowser","TabState": "OpenedTab"),("TabId": "SkeletonSlotNames","TabState": "ClosedTab")])])])]) +Standalone_MaterialEditor_Layout_v13=("Type": "Layout","Name": "Standalone_MaterialEditor_Layout_v13","PrimaryAreaIndex": 0,"Areas": [("SizeCoefficient": 1,"Type": "Area","Orientation": "Orient_Horizontal","WindowPlacement": "Placement_NoWindow","Nodes": [("SizeCoefficient": 0.14999999105930328,"Type": "Splitter","Orientation": "Orient_Vertical","Nodes": [("SizeCoefficient": 1,"Type": "Stack","HideTabWell": true,"ForegroundTab": "MaterialEditor_Preview","Tabs": [("TabId": "MaterialEditor_Preview","TabState": "OpenedTab")]),("SizeCoefficient": 1,"Type": "Stack","HideTabWell": false,"ForegroundTab": "MaterialEditor_MaterialProperties","Tabs": [("TabId": "MaterialEditor_MaterialProperties","TabState": "OpenedTab"),("TabId": "MaterialEditor_PreviewSettings","TabState": "ClosedTab"),("TabId": "MaterialEditor_ParameterDefaults","TabState": "OpenedTab"),("TabId": "MaterialEditor_CustomPrimitiveData","TabState": "ClosedTab"),("TabId": "MaterialInstanceEditor_MaterialLayerProperties","TabState": "ClosedTab")])]),("SizeCoefficient": 0.59999996423721313,"Type": "Splitter","Orientation": "Orient_Vertical","Nodes": [("SizeCoefficient": 0.80000001192092896,"Type": "Stack","HideTabWell": true,"ForegroundTab": "Document","Tabs": [("TabId": "Document","TabState": "OpenedTab")]),("SizeCoefficient": 0.20000000298023224,"Type": "Stack","HideTabWell": false,"ForegroundTab": "OldMaterialStats_Grid","Tabs": [("TabId": "MaterialStats_Grid","TabState": "ClosedTab"),("TabId": "OldMaterialStats_Grid","TabState": "OpenedTab"),("TabId": "MaterialEditor_Find","TabState": "ClosedTab")])]),("SizeCoefficient": 0.14999999105930328,"Type": "Stack","HideTabWell": false,"ForegroundTab": "None","Tabs": [("TabId": "MaterialEditor_Palette","TabState": "SidebarTab","SidebarLocation": "Right","SidebarCoeff": 0.14000000059604645,"SidebarPinned": false)])])]) +Standalone_StaticMeshEditor_Layout_v6=("Type": "Layout","Name": "Standalone_StaticMeshEditor_Layout_v6","PrimaryAreaIndex": 0,"Areas": [("SizeCoefficient": 1,"Type": "Area","Orientation": "Orient_Horizontal","WindowPlacement": "Placement_NoWindow","Nodes": [("SizeCoefficient": 0.73684209585189819,"Type": "Stack","HideTabWell": true,"ForegroundTab": "StaticMeshEditor_Viewport","Tabs": [("TabId": "StaticMeshEditor_Viewport","TabState": "OpenedTab")]),("SizeCoefficient": 0.26315790414810181,"Type": "Splitter","Orientation": "Orient_Vertical","Nodes": [("SizeCoefficient": 0.69999998807907104,"Type": "Stack","HideTabWell": false,"ForegroundTab": "StaticMeshEditor_Properties","Tabs": [("TabId": "StaticMeshEditor_Properties","TabState": "OpenedTab"),("TabId": "StaticMeshEditor_SocketManager","TabState": "OpenedTab"),("TabId": "TopLeftModeTab","TabState": "ClosedTab")]),("SizeCoefficient": 0.30000001192092896,"Type": "Stack","HideTabWell": false,"ForegroundTab": "None","Tabs": [("TabId": "StaticMeshEditor_SocketManager","TabState": "OpenedTab"),("TabId": "TopLeftModeTab","TabState": "ClosedTab"),("TabId": "StaticMeshEditor_Collision","TabState": "ClosedTab")])])])]) +Standalone_SkeletalMeshEditor_Layout_v3.4=("Type": "Layout","Name": "Standalone_SkeletalMeshEditor_Layout_v3.4","PrimaryAreaIndex": 0,"Areas": [("SizeCoefficient": 1,"Type": "Area","Orientation": "Orient_Horizontal","WindowPlacement": "Placement_NoWindow","Nodes": [("SizeCoefficient": 0.17999999225139618,"Type": "Stack","HideTabWell": false,"ForegroundTab": "SkeletonTreeView","Tabs": [("TabId": "AnimAssetPropertiesTab","TabState": "OpenedTab"),("TabId": "SkeletonTreeView","TabState": "OpenedTab")]),("SizeCoefficient": 0.54000002145767212,"Type": "Stack","HideTabWell": true,"ForegroundTab": "Viewport","Tabs": [("TabId": "Viewport","TabState": "OpenedTab")]),("SizeCoefficient": 0.17999999225139618,"Type": "Stack","HideTabWell": false,"ForegroundTab": "MorphTargetsTab","Tabs": [("TabId": "MorphTargetsTab","TabState": "OpenedTab"),("TabId": "DetailsTab","TabState": "ClosedTab"),("TabId": "ToolBoxDetailsTab","TabState": "ClosedTab"),("TabId": "AdvancedPreviewTab","TabState": "OpenedTab"),("TabId": "PersonaSequenceRecorderSettings","TabState": "ClosedTab")])])]) +Standalone_AnimationEditor_Layout_v1.4=("Type": "Layout","Name": "Standalone_AnimationEditor_Layout_v1.4","PrimaryAreaIndex": 0,"Areas": [("SizeCoefficient": 1,"Type": "Area","Orientation": "Orient_Horizontal","WindowPlacement": "Placement_NoWindow","Nodes": [("SizeCoefficient": 0.17999999225139618,"Type": "Stack","HideTabWell": false,"ForegroundTab": "AnimAssetPropertiesTab","Tabs": [("TabId": "SkeletonTreeView","TabState": "OpenedTab"),("TabId": "AnimAssetPropertiesTab","TabState": "OpenedTab")]),("SizeCoefficient": 0.54000002145767212,"Type": "Splitter","Orientation": "Orient_Vertical","Nodes": [("SizeCoefficient": 0.60000002384185791,"Type": "Stack","HideTabWell": true,"ForegroundTab": "Viewport","Tabs": [("TabId": "Viewport","TabState": "OpenedTab")]),("SizeCoefficient": 0.40000000596046448,"Type": "Stack","HideTabWell": true,"ForegroundTab": "Document","Tabs": [("TabId": "Document","TabState": "ClosedTab"),("TabId": "CurveEditor","TabState": "ClosedTab")])]),("SizeCoefficient": 0.17999999225139618,"Type": "Splitter","Orientation": "Orient_Vertical","Nodes": [("SizeCoefficient": 0.60000002384185791,"Type": "Stack","HideTabWell": false,"ForegroundTab": "DetailsTab","Tabs": [("TabId": "DetailsTab","TabState": "OpenedTab"),("TabId": "AdvancedPreviewTab","TabState": "OpenedTab"),("TabId": "PersonaSequenceRecorderSettings","TabState": "ClosedTab")]),("SizeCoefficient": 0.40000000596046448,"Type": "Stack","HideTabWell": false,"ForegroundTab": "SequenceBrowser","Tabs": [("TabId": "SequenceBrowser","TabState": "OpenedTab"),("TabId": "AnimMontageSections","TabState": "ClosedTab"),("TabId": "AnimCurveViewerTab","TabState": "ClosedTab"),("TabId": "SkeletonSlotNames","TabState": "ClosedTab")])])])]) +Standalone_SkeletonEditor_Layout_v1.3=("Type": "Layout","Name": "Standalone_SkeletonEditor_Layout_v1.3","PrimaryAreaIndex": 0,"Areas": [("SizeCoefficient": 1,"Type": "Area","Orientation": "Orient_Horizontal","WindowPlacement": "Placement_NoWindow","Nodes": [("SizeCoefficient": 0.17999999225139618,"Type": "Stack","HideTabWell": false,"ForegroundTab": "SkeletonTreeView","Tabs": [("TabId": "SkeletonTreeView","TabState": "OpenedTab"),("TabId": "RetargetManager","TabState": "ClosedTab")]),("SizeCoefficient": 0.54000002145767212,"Type": "Stack","HideTabWell": true,"ForegroundTab": "Viewport","Tabs": [("TabId": "Viewport","TabState": "OpenedTab")]),("SizeCoefficient": 0.17999999225139618,"Type": "Splitter","Orientation": "Orient_Vertical","Nodes": [("SizeCoefficient": 0.5,"Type": "Stack","HideTabWell": false,"ForegroundTab": "AdvancedPreviewTab","Tabs": [("TabId": "DetailsTab","TabState": "OpenedTab"),("TabId": "AdvancedPreviewTab","TabState": "OpenedTab"),("TabId": "PersonaSequenceRecorderSettings","TabState": "ClosedTab")]),("SizeCoefficient": 0.5,"Type": "Stack","HideTabWell": false,"ForegroundTab": "SkeletonAnimNotifies","Tabs": [("TabId": "SkeletonAnimNotifies","TabState": "OpenedTab"),("TabId": "SequenceBrowser","TabState": "OpenedTab"),("TabId": "AnimCurveViewerTab","TabState": "OpenedTab"),("TabId": "SkeletonSlotNames","TabState": "ClosedTab")])])])]) +Standalone_PhysicsAssetEditor_Layout_v5.3=("Type": "Layout","Name": "Standalone_PhysicsAssetEditor_Layout_v5.3","PrimaryAreaIndex": 0,"Areas": [("SizeCoefficient": 1,"Type": "Area","Orientation": "Orient_Horizontal","WindowPlacement": "Placement_NoWindow","Nodes": [("SizeCoefficient": 0.17999999225139618,"Type": "Splitter","Orientation": "Orient_Vertical","Nodes": [("SizeCoefficient": 0.60000002384185791,"Type": "Stack","HideTabWell": false,"ForegroundTab": "SkeletonTreeView","Tabs": [("TabId": "SkeletonTreeView","TabState": "OpenedTab")]),("SizeCoefficient": 0.40000000596046448,"Type": "Stack","HideTabWell": false,"ForegroundTab": "PhysicsAssetGraphView","Tabs": [("TabId": "PhysicsAssetGraphView","TabState": "OpenedTab")])]),("SizeCoefficient": 0.54000002145767212,"Type": "Stack","HideTabWell": true,"ForegroundTab": "Viewport","Tabs": [("TabId": "Viewport","TabState": "OpenedTab")]),("SizeCoefficient": 0.17999999225139618,"Type": "Splitter","Orientation": "Orient_Vertical","Nodes": [("SizeCoefficient": 0.60000002384185791,"Type": "Stack","HideTabWell": false,"ForegroundTab": "DetailsTab","Tabs": [("TabId": "DetailsTab","TabState": "OpenedTab"),("TabId": "AdvancedPreviewTab","TabState": "OpenedTab"),("TabId": "PersonaSequenceRecorderSettings","TabState": "ClosedTab")]),("SizeCoefficient": 0.40000000596046448,"Type": "Stack","HideTabWell": false,"ForegroundTab": "PhysicsAssetTools","Tabs": [("TabId": "PhysicsAssetTools","TabState": "OpenedTab"),("TabId": "PhysicsAssetProfilesView","TabState": "OpenedTab")])])])]) +UVEditorLayout2=("Type": "Layout","Name": "UVEditorLayout2","PrimaryAreaIndex": 0,"Areas": [("SizeCoefficient": 1,"Type": "Area","Orientation": "Orient_Horizontal","WindowPlacement": "Placement_NoWindow","Nodes": [("SizeCoefficient": 0.20000000298023224,"Type": "Stack","HideTabWell": true,"ForegroundTab": "None","Tabs": [("TabId": "TopLeftModeTab","TabState": "ClosedTab")]),("SizeCoefficient": 0.40000000596046448,"Type": "Stack","HideTabWell": true,"ForegroundTab": "BaseAssetToolkit_Viewport","Tabs": [("TabId": "BaseAssetToolkit_Viewport","TabState": "OpenedTab")]),("SizeCoefficient": 0.40000000596046448,"Type": "Stack","HideTabWell": true,"ForegroundTab": "UVEditor_LivePreviewTab","Tabs": [("TabId": "UVEditor_LivePreviewTab","TabState": "OpenedTab")])])]) +Standalone_SoundCueEditor_Layout_v5=("Type": "Layout","Name": "Standalone_SoundCueEditor_Layout_v5","PrimaryAreaIndex": 0,"Areas": [("SizeCoefficient": 1,"Type": "Area","Orientation": "Orient_Horizontal","WindowPlacement": "Placement_NoWindow","Nodes": [("SizeCoefficient": 0.20249998569488525,"Type": "Stack","HideTabWell": true,"ForegroundTab": "SoundCueEditor_Properties","Tabs": [("TabId": "SoundCueEditor_Properties","TabState": "OpenedTab")]),("SizeCoefficient": 0.58499997854232788,"Type": "Stack","HideTabWell": true,"ForegroundTab": "SoundCueEditor_GraphCanvas","Tabs": [("TabId": "SoundCueEditor_GraphCanvas","TabState": "OpenedTab")]),("SizeCoefficient": 0.11249999701976776,"Type": "Stack","HideTabWell": true,"ForegroundTab": "SoundCueEditor_Palette","Tabs": [("TabId": "SoundCueEditor_Palette","TabState": "OpenedTab")])])]) +Standalone_BehaviorTree_Layout_v2=("Type": "Layout","Name": "Standalone_BehaviorTree_Layout_v2","PrimaryAreaIndex": 0,"Areas": [("SizeCoefficient": 1,"Type": "Area","Orientation": "Orient_Horizontal","WindowPlacement": "Placement_NoWindow","Nodes": [("SizeCoefficient": 0.69999998807907104,"Type": "Stack","HideTabWell": false,"ForegroundTab": "Document","Tabs": [("TabId": "Document","TabState": "ClosedTab")]),("SizeCoefficient": 0.30000001192092896,"Type": "Splitter","Orientation": "Orient_Vertical","Nodes": [("SizeCoefficient": 0.60000002384185791,"Type": "Stack","HideTabWell": false,"ForegroundTab": "BehaviorTreeEditor_Properties","Tabs": [("TabId": "BehaviorTreeEditor_Properties","TabState": "OpenedTab"),("TabId": "BehaviorTreeEditor_Search","TabState": "ClosedTab")]),("SizeCoefficient": 0.40000000596046448,"Type": "Stack","HideTabWell": false,"ForegroundTab": "BehaviorTreeEditor_Blackboard","Tabs": [("TabId": "BehaviorTreeEditor_Blackboard","TabState": "OpenedTab")])])])]) +WidgetReflector_Layout_NoStats_v2=("Type": "Layout","Name": "WidgetReflector_Layout_NoStats_v2","PrimaryAreaIndex": 0,"Areas": [("SizeCoefficient": 1,"Type": "Area","Orientation": "Orient_Vertical","WindowPlacement": "Placement_NoWindow","Nodes": [("SizeCoefficient": 1,"Type": "Stack","HideTabWell": true,"ForegroundTab": "WidgetReflector.SlateOptionsTab","Tabs": [("TabId": "WidgetReflector.SlateOptionsTab","TabState": "OpenedTab")]),("SizeCoefficient": 1,"Type": "Splitter","Orientation": "Orient_Horizontal","Nodes": [("SizeCoefficient": 1,"Type": "Splitter","Orientation": "Orient_Vertical","Nodes": [("SizeCoefficient": 0.69999998807907104,"Type": "Stack","HideTabWell": true,"ForegroundTab": "WidgetReflector.WidgetHierarchyTab","Tabs": [("TabId": "WidgetReflector.WidgetHierarchyTab","TabState": "OpenedTab")]),("SizeCoefficient": 0.30000001192092896,"Type": "Stack","HideTabWell": true,"ForegroundTab": "None","Tabs": [("TabId": "WidgetReflector.SnapshotWidgetPickerTab","TabState": "ClosedTab"),("TabId": "WidgetReflector.WidgetEventsTab","TabState": "ClosedTab"),("TabId": "WidgetReflector.HittestGridTab","TabState": "ClosedTab"),("TabId": "WidgetReflector.WidgetList","TabState": "ClosedTab")])]),("SizeCoefficient": 0.30000001192092896,"Type": "Stack","HideTabWell": true,"ForegroundTab": "WidgetReflector.WidgetDetailsTab","Tabs": [("TabId": "WidgetReflector.WidgetDetailsTab","TabState": "OpenedTab")])])])]) +Standalone_MaterialInstanceEditor_Layout_v8=("Type": "Layout","Name": "Standalone_MaterialInstanceEditor_Layout_v8","PrimaryAreaIndex": 0,"Areas": [("SizeCoefficient": 1,"Type": "Area","Orientation": "Orient_Horizontal","WindowPlacement": "Placement_NoWindow","Nodes": [("SizeCoefficient": 0.62999999523162842,"Type": "Stack","HideTabWell": true,"ForegroundTab": "MaterialInstanceEditor_Preview","Tabs": [("TabId": "MaterialInstanceEditor_Preview","TabState": "OpenedTab"),("TabId": "MaterialInstanceEditor_PreviewSettings","TabState": "ClosedTab")]),("SizeCoefficient": 0.27000001072883606,"Type": "Stack","HideTabWell": false,"ForegroundTab": "MaterialInstanceEditor_MaterialProperties","Tabs": [("TabId": "MaterialInstanceEditor_MaterialProperties","TabState": "OpenedTab"),("TabId": "MaterialInstanceEditor_MaterialLayerProperties","TabState": "OpenedTab")])])]) +None=("Type": "Layout","Name": "None","PrimaryAreaIndex": -1,"Areas": []) +Standalone_ControlRigEditMode_Layout_v1.5=("Type": "Layout","Name": "Standalone_ControlRigEditMode_Layout_v1.5","PrimaryAreaIndex": -1,"Areas": []) +Standalone_BlackboardEditor_Layout_v2=("Type": "Layout","Name": "Standalone_BlackboardEditor_Layout_v2","PrimaryAreaIndex": 0,"Areas": [("SizeCoefficient": 1,"Type": "Area","Orientation": "Orient_Horizontal","WindowPlacement": "Placement_NoWindow","Nodes": [("SizeCoefficient": 0.5,"Type": "Stack","HideTabWell": false,"ForegroundTab": "BehaviorTreeEditor_BlackboardEditor","Tabs": [("TabId": "BehaviorTreeEditor_BlackboardEditor","TabState": "OpenedTab")]),("SizeCoefficient": 0.5,"Type": "Stack","HideTabWell": false,"ForegroundTab": "BehaviorTreeEditor_BlackboardProperties","Tabs": [("TabId": "BehaviorTreeEditor_BlackboardProperties","TabState": "OpenedTab")])])]) +Standalone_EnvironmentQuery_Layout_v2=("Type": "Layout","Name": "Standalone_EnvironmentQuery_Layout_v2","PrimaryAreaIndex": 0,"Areas": [("SizeCoefficient": 1,"Type": "Area","Orientation": "Orient_Horizontal","WindowPlacement": "Placement_NoWindow","Nodes": [("SizeCoefficient": 0.69999998807907104,"Type": "Stack","HideTabWell": false,"ForegroundTab": "EnvironmentQueryEditor_UpdateGraph","Tabs": [("TabId": "EnvironmentQueryEditor_UpdateGraph","TabState": "OpenedTab")]),("SizeCoefficient": 0.30000001192092896,"Type": "Stack","HideTabWell": false,"ForegroundTab": "EnvironmentQueryEditor_Properties","Tabs": [("TabId": "EnvironmentQueryEditor_Properties","TabState": "OpenedTab"),("TabId": "EnvironmentQueryEditor_Profiler","TabState": "OpenedTab")])])]) + From b7185694484a6f3493fb993a8b1ab3654e768f9b Mon Sep 17 00:00:00 2001 From: PHILIP WHITE Date: Mon, 2 Oct 2023 01:30:29 +0100 Subject: [PATCH 037/112] Update EnemyFindCover EQS to Find Corners & Attack --- EndlessVendetta/Content/AI/Enemy/Basic/BB_BasicEnemy.uasset | 4 ++-- EndlessVendetta/Content/AI/Enemy/Basic/BT_BasicEnemy.uasset | 4 ++-- .../Content/AI/Enemy/Basic/EQS_EnemyFindCover.uasset | 3 +++ EndlessVendetta/Content/AI/Enemy/Basic/EQS_FindCover.uasset | 3 --- 4 files changed, 7 insertions(+), 7 deletions(-) create mode 100644 EndlessVendetta/Content/AI/Enemy/Basic/EQS_EnemyFindCover.uasset delete mode 100644 EndlessVendetta/Content/AI/Enemy/Basic/EQS_FindCover.uasset diff --git a/EndlessVendetta/Content/AI/Enemy/Basic/BB_BasicEnemy.uasset b/EndlessVendetta/Content/AI/Enemy/Basic/BB_BasicEnemy.uasset index 52c3d994..83745345 100644 --- a/EndlessVendetta/Content/AI/Enemy/Basic/BB_BasicEnemy.uasset +++ b/EndlessVendetta/Content/AI/Enemy/Basic/BB_BasicEnemy.uasset @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:0c439461f7778a2156b0c90fe965cd8bb56c84703110c655e5682b15da9ba2b7 -size 2952 +oid sha256:73bd053142b2dc9fb78973a96805b66270a7f976a36986ef658580a9d2ba75a7 +size 4123 diff --git a/EndlessVendetta/Content/AI/Enemy/Basic/BT_BasicEnemy.uasset b/EndlessVendetta/Content/AI/Enemy/Basic/BT_BasicEnemy.uasset index ced1ec89..2b5f26e3 100644 --- a/EndlessVendetta/Content/AI/Enemy/Basic/BT_BasicEnemy.uasset +++ b/EndlessVendetta/Content/AI/Enemy/Basic/BT_BasicEnemy.uasset @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:a6d42687973696b95d580795273e6993dd6eba1d2e5d513e21bf0d876a05c6e1 -size 9634 +oid sha256:8cc72d5c792915b0c3002c85fb1c1fc24fcf3a88d4fa85200d1d8b04f483f4ef +size 15107 diff --git a/EndlessVendetta/Content/AI/Enemy/Basic/EQS_EnemyFindCover.uasset b/EndlessVendetta/Content/AI/Enemy/Basic/EQS_EnemyFindCover.uasset new file mode 100644 index 00000000..31dcfb1a --- /dev/null +++ b/EndlessVendetta/Content/AI/Enemy/Basic/EQS_EnemyFindCover.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:fcf182403f772d060b1f0c2997671ec13f6f6d32dd3817841a4f612ad87dff81 +size 10974 diff --git a/EndlessVendetta/Content/AI/Enemy/Basic/EQS_FindCover.uasset b/EndlessVendetta/Content/AI/Enemy/Basic/EQS_FindCover.uasset deleted file mode 100644 index 6e74a14b..00000000 --- a/EndlessVendetta/Content/AI/Enemy/Basic/EQS_FindCover.uasset +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:7fcaaf5f822a38ea450d63d75ae96d5207fd7b0d37e0c06edc04938dc3d19e48 -size 11056 From 174becfdf128ea21005010b294d6cb3ee28731f2 Mon Sep 17 00:00:00 2001 From: PHILIP WHITE Date: Mon, 2 Oct 2023 01:31:06 +0100 Subject: [PATCH 038/112] Update Enemy AI Controller for Increased Sight Perception --- .../EndlessVendetta/AI/AI_EnemyController.cpp | 19 +++++++++++++------ 1 file changed, 13 insertions(+), 6 deletions(-) diff --git a/EndlessVendetta/Source/EndlessVendetta/AI/AI_EnemyController.cpp b/EndlessVendetta/Source/EndlessVendetta/AI/AI_EnemyController.cpp index eca94318..94ef8372 100644 --- a/EndlessVendetta/Source/EndlessVendetta/AI/AI_EnemyController.cpp +++ b/EndlessVendetta/Source/EndlessVendetta/AI/AI_EnemyController.cpp @@ -5,6 +5,7 @@ #include "EnemyCharacter.h" #include "BehaviorTree/BlackboardComponent.h" +#include "EndlessVendetta/EndlessVendettaCharacter.h" #include "Perception/AIPerceptionComponent.h" #include "Perception/AISenseConfig_Sight.h" @@ -43,6 +44,10 @@ void AAI_EnemyController::OnPossess(APawn* InPawn) void AAI_EnemyController::Tick(float DeltaTime) { Super::Tick(DeltaTime); + if (GetBlackboardComponent()->GetValueAsBool("CanSeePlayer")) + { + GetBlackboardComponent()->SetValueAsVector("TargetLocation", GetWorld()->GetFirstPlayerController()->GetPawn()->GetActorLocation()); + } } void AAI_EnemyController::SetupPerceptionSystem() @@ -51,10 +56,10 @@ void AAI_EnemyController::SetupPerceptionSystem() if (IsValid(SightConfig)) { SetPerceptionComponent(*CreateDefaultSubobject(TEXT("Perception Component"))); - SightConfig->SightRadius = 1000.0f; - SightConfig->LoseSightRadius = 1100.0f; - SightConfig->PeripheralVisionAngleDegrees = 90.0f; - SightConfig->SetMaxAge(5.0f); + SightConfig->SightRadius = 2000.0f; + SightConfig->LoseSightRadius = 2100.0f; + SightConfig->PeripheralVisionAngleDegrees = 70.0f; + SightConfig->SetMaxAge(20.0f); SightConfig->AutoSuccessRangeFromLastSeenLocation = 520.0f; SightConfig->DetectionByAffiliation.bDetectEnemies = true; SightConfig->DetectionByAffiliation.bDetectFriendlies = true; @@ -67,17 +72,19 @@ void AAI_EnemyController::SetupPerceptionSystem() void AAI_EnemyController::OnTargetPerceptionUpdated(AActor* Actor, FAIStimulus const Stimulus) { - if (AEnemyCharacter* const EnemyCharacter = Cast(Actor)) + if (AEndlessVendettaCharacter* const PlayerCharacter = Cast(Actor)) { if (Stimulus.WasSuccessfullySensed()) { - GetBlackboardComponent()->SetValueAsObject("TargetActor", Actor); + GetBlackboardComponent()->SetValueAsObject("TargetPlayer", Actor); GetBlackboardComponent()->SetValueAsVector("TargetLocation", Stimulus.StimulusLocation); + GetBlackboardComponent()->SetValueAsBool("CanSeePlayer", true); } else { GetBlackboardComponent()->ClearValue("TargetActor"); GetBlackboardComponent()->ClearValue("TargetLocation"); + GetBlackboardComponent()->SetValueAsBool("CanSeePlayer", false); } } } From b1531a5acfd4619d28ca97f4cab8d8197c0f27bd Mon Sep 17 00:00:00 2001 From: PHILIP WHITE Date: Mon, 2 Oct 2023 01:31:38 +0100 Subject: [PATCH 039/112] Add Enemy AI Behaviour Task for Attacking Player --- .../AI/BTTask_AttackPlayer.cpp | 27 +++++++++++++++++++ .../EndlessVendetta/AI/BTTask_AttackPlayer.h | 19 +++++++++++++ 2 files changed, 46 insertions(+) create mode 100644 EndlessVendetta/Source/EndlessVendetta/AI/BTTask_AttackPlayer.cpp create mode 100644 EndlessVendetta/Source/EndlessVendetta/AI/BTTask_AttackPlayer.h diff --git a/EndlessVendetta/Source/EndlessVendetta/AI/BTTask_AttackPlayer.cpp b/EndlessVendetta/Source/EndlessVendetta/AI/BTTask_AttackPlayer.cpp new file mode 100644 index 00000000..07db4b83 --- /dev/null +++ b/EndlessVendetta/Source/EndlessVendetta/AI/BTTask_AttackPlayer.cpp @@ -0,0 +1,27 @@ +// Fill out your copyright notice in the Description page of Project Settings. + + +#include "BTTask_AttackPlayer.h" + +#include "AI_EnemyController.h" +#include "BehaviorTree/BlackboardComponent.h" + +UBTTask_AttackPlayer::UBTTask_AttackPlayer(FObjectInitializer const& ObjectInitializer) +{ +} + +EBTNodeResult::Type UBTTask_AttackPlayer::ExecuteTask(UBehaviorTreeComponent& OwnerComp, uint8* NodeMemory) +{ + if (const AAI_EnemyController* const AIController = Cast(OwnerComp.GetAIOwner())) + { + if (const UBlackboardComponent* const Blackboard = OwnerComp.GetBlackboardComponent()) + { + FVector const Origin = AIController->GetPawn()->GetActorLocation(); + FVector const PlayerLocation = Blackboard->GetValueAsVector("TargetLocation"); + DrawDebugLine(GetWorld(), Origin, PlayerLocation, FColor::Green, false, 1.f, 0, 1.f); + FinishLatentTask(OwnerComp, EBTNodeResult::Succeeded); + return EBTNodeResult::Succeeded; + } + } + return EBTNodeResult::Failed; +} diff --git a/EndlessVendetta/Source/EndlessVendetta/AI/BTTask_AttackPlayer.h b/EndlessVendetta/Source/EndlessVendetta/AI/BTTask_AttackPlayer.h new file mode 100644 index 00000000..bc228d3d --- /dev/null +++ b/EndlessVendetta/Source/EndlessVendetta/AI/BTTask_AttackPlayer.h @@ -0,0 +1,19 @@ +// Fill out your copyright notice in the Description page of Project Settings. + +#pragma once + +#include "CoreMinimal.h" +#include "BehaviorTree/Tasks/BTTask_BlackboardBase.h" +#include "BTTask_AttackPlayer.generated.h" + +/** + * + */ +UCLASS() +class ENDLESSVENDETTA_API UBTTask_AttackPlayer : public UBTTask_BlackboardBase +{ + GENERATED_BODY() +public: + explicit UBTTask_AttackPlayer(FObjectInitializer const& ObjectInitializer); + virtual EBTNodeResult::Type ExecuteTask(UBehaviorTreeComponent& OwnerComp, uint8* NodeMemory) override; +}; From c0cc7c4782b27f99bb51ba162f956cd6bcd15b10 Mon Sep 17 00:00:00 2001 From: Rafal Swierczek <34179rs@gmail.com> Date: Mon, 2 Oct 2023 09:23:38 +0100 Subject: [PATCH 040/112] Fixed Issue with Searching Actor Array in LOS Test Temp solution, a work around for quickly finding a specific actor in array --- .../Content/StarterContent/Architecture/Floor_400x400.uasset | 4 ++-- .../Content/StarterContent/Audio/Collapse01.uasset | 4 ++-- .../GadgetClasses/Recon/VisionLink/VisionLink.cpp | 4 ++-- .../Recon/VisionLink/VisionLinkEnemyLOSTest.cpp | 5 +++-- .../GadgetClasses/Recon/VisionLink/VisionLinkEnemyLOSTest.h | 2 +- 5 files changed, 10 insertions(+), 9 deletions(-) diff --git a/EndlessVendetta/Content/StarterContent/Architecture/Floor_400x400.uasset b/EndlessVendetta/Content/StarterContent/Architecture/Floor_400x400.uasset index 96cc6e20..c2a34afc 100644 --- a/EndlessVendetta/Content/StarterContent/Architecture/Floor_400x400.uasset +++ b/EndlessVendetta/Content/StarterContent/Architecture/Floor_400x400.uasset @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:abd4f2fad257e7b583ac37aa10b18aca055f039b950e0100e587611f13a0e39b -size 14831 +oid sha256:4c0ecf0ac0702cc2bd355ec050232a61c49e10f102448efbeb735a51824adef6 +size 14948 diff --git a/EndlessVendetta/Content/StarterContent/Audio/Collapse01.uasset b/EndlessVendetta/Content/StarterContent/Audio/Collapse01.uasset index 5e3ff30e..198f128d 100644 --- a/EndlessVendetta/Content/StarterContent/Audio/Collapse01.uasset +++ b/EndlessVendetta/Content/StarterContent/Audio/Collapse01.uasset @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:85c827023ee4b466228ec65e92b4b4a0415a106de041ac1c2cab481a2a5dfa8d -size 348532 +oid sha256:43d44b5a53fbbfc62522f67ad9523360b15677e3d0caeea96f4d9d0580a013cd +size 353935 diff --git a/EndlessVendetta/Source/EndlessVendetta/GadgetSystem/GadgetClasses/Recon/VisionLink/VisionLink.cpp b/EndlessVendetta/Source/EndlessVendetta/GadgetSystem/GadgetClasses/Recon/VisionLink/VisionLink.cpp index 9ac77162..34e523ae 100644 --- a/EndlessVendetta/Source/EndlessVendetta/GadgetSystem/GadgetClasses/Recon/VisionLink/VisionLink.cpp +++ b/EndlessVendetta/Source/EndlessVendetta/GadgetSystem/GadgetClasses/Recon/VisionLink/VisionLink.cpp @@ -43,8 +43,8 @@ void AVisionLink::SendOutPingPulse() FVector SpawnLoc = (GetActorLocation() - EquippedOffset) + EnemyLOSTestActor.GetDefaultObject()->SpawnOffset; AActor* LOSTestActor = GetWorld()->SpawnActor(EnemyLOSTestActor, SpawnLoc, GetActorRotation(), SpawnParams); - TArray EmptyActorArray; - Cast(LOSTestActor)->TestLOS(EmptyActorArray, GetOwner()); + TArray EmptyFStringArray; + Cast(LOSTestActor)->TestLOS(EmptyFStringArray, GetOwner()); UE_LOG(LogTemp, Warning, TEXT("Ping Pulse!")); GetWorld()->GetTimerManager().SetTimer(PulseHandle, this, &AVisionLink::SendOutPingPulse, TimeInbetweenPingPulses, false); diff --git a/EndlessVendetta/Source/EndlessVendetta/GadgetSystem/GadgetClasses/Recon/VisionLink/VisionLinkEnemyLOSTest.cpp b/EndlessVendetta/Source/EndlessVendetta/GadgetSystem/GadgetClasses/Recon/VisionLink/VisionLinkEnemyLOSTest.cpp index 7d837c18..b81b4d54 100644 --- a/EndlessVendetta/Source/EndlessVendetta/GadgetSystem/GadgetClasses/Recon/VisionLink/VisionLinkEnemyLOSTest.cpp +++ b/EndlessVendetta/Source/EndlessVendetta/GadgetSystem/GadgetClasses/Recon/VisionLink/VisionLinkEnemyLOSTest.cpp @@ -28,7 +28,7 @@ void AVisionLinkEnemyLOSTest::Tick(float DeltaTime) } -void AVisionLinkEnemyLOSTest::TestLOS(TArray EnemiesInLink, AActor* LOSActor) +void AVisionLinkEnemyLOSTest::TestLOS(TArray EnemiesInLink, AActor* LOSActor) { // Get all overlapping Actors UBoxComponent* CollisionBox = Cast(GetComponentByClass(UBoxComponent::StaticClass())); @@ -47,8 +47,9 @@ void AVisionLinkEnemyLOSTest::TestLOS(TArray EnemiesInLink, AActor* LOSA for (int i = 0; i < OverlappingEnemies.Num(); i++) { + UE_LOG(LogTemp, Warning, TEXT("Overlapping Enemy Name: %s"), *OverlappingEnemies[i]->GetName()); // Overlapping Enemies Array should only contain enemies which aren't already in the link - if (!OverlappingEnemies[i]->ActorHasTag(FName("Enemy")) || EnemiesInLink.Contains(OverlappingEnemies[i])) OverlappingEnemies.RemoveAt(i); + if (!OverlappingEnemies[i]->ActorHasTag(FName("Enemy")) || EnemiesInLink.Contains(OverlappingEnemies[i]->GetName())) OverlappingEnemies.RemoveAt(i); } if (OverlappingEnemies.IsEmpty()) { diff --git a/EndlessVendetta/Source/EndlessVendetta/GadgetSystem/GadgetClasses/Recon/VisionLink/VisionLinkEnemyLOSTest.h b/EndlessVendetta/Source/EndlessVendetta/GadgetSystem/GadgetClasses/Recon/VisionLink/VisionLinkEnemyLOSTest.h index 40d7846a..c9d6b81a 100644 --- a/EndlessVendetta/Source/EndlessVendetta/GadgetSystem/GadgetClasses/Recon/VisionLink/VisionLinkEnemyLOSTest.h +++ b/EndlessVendetta/Source/EndlessVendetta/GadgetSystem/GadgetClasses/Recon/VisionLink/VisionLinkEnemyLOSTest.h @@ -26,5 +26,5 @@ public: // Called every frame virtual void Tick(float DeltaTime) override; - void TestLOS(TArray EnemiesInLink, AActor* LOS_Actor); + void TestLOS(TArray EnemiesInLink, AActor* LOS_Actor); }; From 34be0929e6a37c169fb3b26f0ea5d42e01ca45db Mon Sep 17 00:00:00 2001 From: Rafal Swierczek Date: Mon, 2 Oct 2023 13:16:25 +0100 Subject: [PATCH 041/112] Fixed Missing Semi Colon After Delegate --- .../Source/EndlessVendetta/BountySystem/BountyClass.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/EndlessVendetta/Source/EndlessVendetta/BountySystem/BountyClass.h b/EndlessVendetta/Source/EndlessVendetta/BountySystem/BountyClass.h index 9dfb87e1..4f65bae9 100644 --- a/EndlessVendetta/Source/EndlessVendetta/BountySystem/BountyClass.h +++ b/EndlessVendetta/Source/EndlessVendetta/BountySystem/BountyClass.h @@ -7,7 +7,7 @@ #include "GameFramework/Actor.h" #include "BountyClass.generated.h" -DECLARE_DYNAMIC_MULTICAST_DELEGATE(FCompletedFirstCheckpoint) +DECLARE_DYNAMIC_MULTICAST_DELEGATE(FCompletedFirstCheckpoint); UCLASS() class ENDLESSVENDETTA_API ABountyClass : public AActor From 5743e885e0135bd06cf73bc38bb58707019a650c Mon Sep 17 00:00:00 2001 From: MARCEL HARA Date: Mon, 2 Oct 2023 13:36:19 +0100 Subject: [PATCH 042/112] Basic Shooting functionality fixed Shooting now shoots a ray out and detects what object is being hit --- .../Blueprints/BP_FirstPersonCharacter.uasset | 4 +- .../AssaultRifles/BP_BaseAssaultRifle.uasset | 4 +- .../BaseWeapons/BP_BaseWeapon.uasset | 4 +- .../Architecture/Floor_400x400.uasset | 4 +- .../StarterContent/Audio/Collapse01.uasset | 4 +- .../0/3Z/SNIBJQL2L6YHSC7MTTK1C2.uasset | 2 +- .../BountySystem/BountyClass.h | 2 +- .../EndlessVendettaCharacter.cpp | 131 +++--------------- .../EndlessVendettaCharacter.h | 5 +- .../WeaponSystem/BaseWeaponClass.cpp | 33 ++--- .../WeaponSystem/BaseWeaponClass.h | 8 +- 11 files changed, 57 insertions(+), 144 deletions(-) diff --git a/EndlessVendetta/Content/FirstPerson/Blueprints/BP_FirstPersonCharacter.uasset b/EndlessVendetta/Content/FirstPerson/Blueprints/BP_FirstPersonCharacter.uasset index 68a7823a..fda783bd 100644 --- a/EndlessVendetta/Content/FirstPerson/Blueprints/BP_FirstPersonCharacter.uasset +++ b/EndlessVendetta/Content/FirstPerson/Blueprints/BP_FirstPersonCharacter.uasset @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:072d87c768407249e6e50f7b87ab9a88392c17cf82c72934e3c947e2943210bb -size 26284 +oid sha256:d580d82ff6abdbebffa1e57dc264fb6e4b0e6c53e28aa0c853b56149f7867471 +size 27305 diff --git a/EndlessVendetta/Content/FirstPerson/Blueprints/BaseWeapons/AssaultRifles/BP_BaseAssaultRifle.uasset b/EndlessVendetta/Content/FirstPerson/Blueprints/BaseWeapons/AssaultRifles/BP_BaseAssaultRifle.uasset index 50209cd2..52b41107 100644 --- a/EndlessVendetta/Content/FirstPerson/Blueprints/BaseWeapons/AssaultRifles/BP_BaseAssaultRifle.uasset +++ b/EndlessVendetta/Content/FirstPerson/Blueprints/BaseWeapons/AssaultRifles/BP_BaseAssaultRifle.uasset @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:8b311799aa263b7af6d3eb738da33d39b0d40d7883bf0a4e3cb6024e06157cec -size 37724 +oid sha256:21afd371e599a3fb2c37e3662406978c3305c602a1c77bb3717e9bc4f2514b48 +size 35926 diff --git a/EndlessVendetta/Content/FirstPerson/Blueprints/BaseWeapons/BP_BaseWeapon.uasset b/EndlessVendetta/Content/FirstPerson/Blueprints/BaseWeapons/BP_BaseWeapon.uasset index 0aef22ed..063848e3 100644 --- a/EndlessVendetta/Content/FirstPerson/Blueprints/BaseWeapons/BP_BaseWeapon.uasset +++ b/EndlessVendetta/Content/FirstPerson/Blueprints/BaseWeapons/BP_BaseWeapon.uasset @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:a4dfbc572d0f67be5a3c6898946ce7fce2895174236407ce9910f99c59690367 -size 28778 +oid sha256:51cc0f9f0adae065e9941acdd88abe2fe5f7015a3a5343a63f7b0507e90c21ed +size 28900 diff --git a/EndlessVendetta/Content/StarterContent/Architecture/Floor_400x400.uasset b/EndlessVendetta/Content/StarterContent/Architecture/Floor_400x400.uasset index c2a34afc..ec9ee977 100644 --- a/EndlessVendetta/Content/StarterContent/Architecture/Floor_400x400.uasset +++ b/EndlessVendetta/Content/StarterContent/Architecture/Floor_400x400.uasset @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:4c0ecf0ac0702cc2bd355ec050232a61c49e10f102448efbeb735a51824adef6 -size 14948 +oid sha256:d4e6c0e1dad79feeaa5078889de9cf4c6753f1e77cf7d17a3eb3de082b91d4ae +size 14831 diff --git a/EndlessVendetta/Content/StarterContent/Audio/Collapse01.uasset b/EndlessVendetta/Content/StarterContent/Audio/Collapse01.uasset index 198f128d..5e3ff30e 100644 --- a/EndlessVendetta/Content/StarterContent/Audio/Collapse01.uasset +++ b/EndlessVendetta/Content/StarterContent/Audio/Collapse01.uasset @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:43d44b5a53fbbfc62522f67ad9523360b15677e3d0caeea96f4d9d0580a013cd -size 353935 +oid sha256:85c827023ee4b466228ec65e92b4b4a0415a106de041ac1c2cab481a2a5dfa8d +size 348532 diff --git a/EndlessVendetta/Content/__ExternalActors__/FirstPerson/Maps/GunMechanicTester/0/3Z/SNIBJQL2L6YHSC7MTTK1C2.uasset b/EndlessVendetta/Content/__ExternalActors__/FirstPerson/Maps/GunMechanicTester/0/3Z/SNIBJQL2L6YHSC7MTTK1C2.uasset index 4f6bab25..4777b0ad 100644 --- a/EndlessVendetta/Content/__ExternalActors__/FirstPerson/Maps/GunMechanicTester/0/3Z/SNIBJQL2L6YHSC7MTTK1C2.uasset +++ b/EndlessVendetta/Content/__ExternalActors__/FirstPerson/Maps/GunMechanicTester/0/3Z/SNIBJQL2L6YHSC7MTTK1C2.uasset @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:fdab805d14a7bc4f2fa61abc0106161cf2626e8857ae14089d5e4c93f9a320d6 +oid sha256:5b8b34286278ebb69adb37de9d922ea859ecab2e2547f7e3a634d75c61522828 size 5061 diff --git a/EndlessVendetta/Source/EndlessVendetta/BountySystem/BountyClass.h b/EndlessVendetta/Source/EndlessVendetta/BountySystem/BountyClass.h index 9dfb87e1..4f65bae9 100644 --- a/EndlessVendetta/Source/EndlessVendetta/BountySystem/BountyClass.h +++ b/EndlessVendetta/Source/EndlessVendetta/BountySystem/BountyClass.h @@ -7,7 +7,7 @@ #include "GameFramework/Actor.h" #include "BountyClass.generated.h" -DECLARE_DYNAMIC_MULTICAST_DELEGATE(FCompletedFirstCheckpoint) +DECLARE_DYNAMIC_MULTICAST_DELEGATE(FCompletedFirstCheckpoint); UCLASS() class ENDLESSVENDETTA_API ABountyClass : public AActor diff --git a/EndlessVendetta/Source/EndlessVendetta/EndlessVendettaCharacter.cpp b/EndlessVendetta/Source/EndlessVendetta/EndlessVendettaCharacter.cpp index 448d805c..ace56207 100644 --- a/EndlessVendetta/Source/EndlessVendetta/EndlessVendettaCharacter.cpp +++ b/EndlessVendetta/Source/EndlessVendetta/EndlessVendettaCharacter.cpp @@ -59,7 +59,7 @@ void AEndlessVendettaCharacter::BeginPlay() GadgetManager->SpawnGadgets(Cast(PlayersCamera)); break; } - + } //////////////////////////////////////////////////////////////////////////// Input @@ -82,13 +82,14 @@ void AEndlessVendettaCharacter::SetupPlayerInputComponent(class UInputComponent* // Gadget Toggling EnhancedInputComponent->BindAction(ReconAction, ETriggerEvent::Started, this, &AEndlessVendettaCharacter::ToggleRecon); EnhancedInputComponent->BindAction(CombatAction, ETriggerEvent::Started, this, &AEndlessVendettaCharacter::ToggleCombat); - + //Weapon Switching EnhancedInputComponent->BindAction(EquipPrimaryWeapon, ETriggerEvent::Triggered, this, &AEndlessVendettaCharacter::EquipPrimary); EnhancedInputComponent->BindAction(EquipSecondaryWeapon, ETriggerEvent::Triggered, this, &AEndlessVendettaCharacter::EquipSecondary); //Weapon Shooting EnhancedInputComponent->BindAction(TapShootAction, ETriggerEvent::Triggered, this, &AEndlessVendettaCharacter::TapFireCaller); + EnhancedInputComponent->BindAction(HoldShootAction, ETriggerEvent::Triggered, this, &AEndlessVendettaCharacter::TapFireCaller); } } @@ -145,12 +146,10 @@ void AEndlessVendettaCharacter::EquipPrimary() } if (IsValid(SecondaryWeapon)) EquipSecondary(); - - // Marcel I respect you, like you and what not, please for the love of god don't touch these two guard clauses - ///////////////////////////////////////////////////////////////////////////////////////////////////////////// - if (GadgetManager->IsReconEquipped() && !GadgetManager->TryToUnequipRecon()) return;///////////////////////// - if (GadgetManager->IsCombatEquipped() && !GadgetManager->TryToUnequipCombat()) return;/////////////////////// - ///////////////////////////////////////////////////////////////////////////////////////////////////////////// + + if (GadgetManager->IsReconEquipped() && !GadgetManager->TryToUnequipRecon()) return; + if (GadgetManager->IsCombatEquipped() && !GadgetManager->TryToUnequipCombat()) return; + FActorSpawnParameters spawnParams; spawnParams.SpawnCollisionHandlingOverride = ESpawnActorCollisionHandlingMethod::AlwaysSpawn; @@ -163,131 +162,47 @@ void AEndlessVendettaCharacter::EquipPrimary() //Changing PrimaryWeaponActor to ABaseWeaponClass type instead of actor and storing it into PrimaryWeapon which is a ABaseClass Object //We do this because we need to check if PrimaryWeapon is equipped and we want primaryweapon to be ABaseWeapon type and not a generic AActor PrimaryWeapon = Cast(PrimaryWeaponActor); - - //If primary weapon is not there but secondary weapon is it will call equipSecondary. - //EquipSecondary checks and sees that secondary is there so it will call to destroy itself - //Code goes back and sees primary weapon is not there anymore and spawns it in. - //Same thing for the EquipSecondary() - - // if (!IsValid(PrimaryWeapon)) - // { - // if (IsValid(SecondaryWeapon)) EquipSecondary(); - // - // UE_LOG(LogTemp, Display, TEXT("Primary equipped")); - // bHasRifle = true; - // FActorSpawnParameters spawnParams; - // spawnParams.SpawnCollisionHandlingOverride = ESpawnActorCollisionHandlingMethod::AlwaysSpawn; - // FAttachmentTransformRules AttachmentRules(EAttachmentRule::SnapToTarget, true); - // //Creating a new actor object called PrimaryWeapon that is based off primaryweaponClass - // AActor* PrimaryWeaponActor = GetWorld()->SpawnActor(PrimaryWeaponClass, spawnParams); - // PrimaryWeaponActor->AttachToComponent(Mesh1P, AttachmentRules, FName("GripPoint")); - // //Changing PrimaryWeaponActor to ABaseWeaponClass type instead of actor and storing it into PrimaryWeapon which is a ABaseClass Object - // //We do this because we need to check if PrimaryWeapon is equipped and we want primaryweapon to be ABaseWeapon type and not a generic AActor - // PrimaryWeapon = Cast(PrimaryWeaponActor); - // - // } - // else if (IsValid(PrimaryWeapon)) - // { - // PrimaryWeapon->Destroy(); - // bHasRifle = false; - // } } void AEndlessVendettaCharacter::EquipSecondary() { if (IsValid(SecondaryWeapon)) - { - SecondaryWeapon->Destroy(); + { + SecondaryWeapon->Destroy(); SecondaryWeapon = nullptr; - bHasRifle = false; - return; - } + bHasRifle = false; + return; + } if (IsValid(PrimaryWeapon)) EquipPrimary(); - - // Marcel I respect you, like you and what not, please for the love of god don't touch these two guard clauses - ///////////////////////////////////////////////////////////////////////////////////////////////////////////// - if (GadgetManager->IsReconEquipped() && !GadgetManager->TryToUnequipRecon()) return;///////////////////////// - if (GadgetManager->IsCombatEquipped() && !GadgetManager->TryToUnequipCombat()) return;/////////////////////// - ///////////////////////////////////////////////////////////////////////////////////////////////////////////// + + if (GadgetManager->IsReconEquipped() && !GadgetManager->TryToUnequipRecon()) return; + if (GadgetManager->IsCombatEquipped() && !GadgetManager->TryToUnequipCombat()) return; + FActorSpawnParameters spawnParams; spawnParams.SpawnCollisionHandlingOverride = ESpawnActorCollisionHandlingMethod::AlwaysSpawn; FAttachmentTransformRules AttachmentRules(EAttachmentRule::SnapToTarget, true); - + bHasRifle = true; AActor* SecondaryWeaponActor = GetWorld()->SpawnActor(SecondaryWeaponClass, spawnParams); SecondaryWeaponActor->AttachToComponent(Mesh1P, AttachmentRules, FName("GripPoint")); SecondaryWeapon = Cast(SecondaryWeaponActor); - - // if (!IsValid(SecondaryWeapon)) - // { - // if (IsValid(PrimaryWeapon)) EquipPrimary(); - // - // UE_LOG(LogTemp, Display, TEXT("Secondary equipped")); - // bHasRifle = true; - // FActorSpawnParameters spawnParams; - // spawnParams.SpawnCollisionHandlingOverride = ESpawnActorCollisionHandlingMethod::AlwaysSpawn; - // FAttachmentTransformRules AttachmentRules(EAttachmentRule::SnapToTarget, true); - // AActor* SecondaryWeaponActor = GetWorld()->SpawnActor(SecondaryWeaponClass, spawnParams); - // SecondaryWeaponActor->AttachToComponent(Mesh1P, AttachmentRules, FName("GripPoint")); - // SecondaryWeapon = Cast(SecondaryWeaponActor); - // } - // else if (IsValid(SecondaryWeapon)) - // { - // SecondaryWeapon->Destroy(); - // bHasRifle = false; - // } - + + } //Calls the fire function in the baseWeaponClass void AEndlessVendettaCharacter::TapFireCaller() { UE_LOG(LogTemp, Warning, TEXT("Tap Fire")); - // if (IsValid(PrimaryWeapon) || IsValid(SecondaryWeapon)) - // { - // PrimaryWeaponClass.GetDefaultObject()->TapFire(); - // } + if (IsValid(PrimaryWeapon) || IsValid(SecondaryWeapon)) + { + PrimaryWeapon->TapFire(); + } } -//POTENTIAL PICKUP SYSTEM NEEDS CHANGING BUT YES - -//Called from Player BluePrints -/*void AEndlessVendettaCharacter::WeaponPickUpSystem(AActor* PickedUpWeapon) -{ - ABaseWeaponClass* WeaponInWorld = Cast(PickedUpWeapon); - if(WeaponInWorld->IsA(ABaseWeaponClass::StaticClass())) - { - if(PrimaryWeapon) - { - UE_LOG(LogTemp, Display, TEXT("Primary Weapon Picked up")); - bHasRifle = true; - FVector loc = GetActorLocation() + FVector(-50, 0, 0); - FRotator rot = GetActorRotation(); - FActorSpawnParameters spawnParams; - spawnParams.SpawnCollisionHandlingOverride = ESpawnActorCollisionHandlingMethod::AlwaysSpawn; - FAttachmentTransformRules AttachmentRules(EAttachmentRule::SnapToTarget, true); - //WeaponInWorld = Cast(GetWorld()->SpawnActor(PrimaryWeapon, loc, rot, spawnParams)); - WeaponInWorld->AttachToComponent(Mesh1P, AttachmentRules, FName("GripPoint")); - WeaponInWorld->Destroy(); - - //for some reason the spawning of the weapon is broken to the players hand so need to fix this. - - // potentially add a varibable to check if its a secondary or priamry weapon being picked up - // add this in the baseweaponclass variable - } - } - if(WeaponInWorld->IsA(ABaseWeaponClass::StaticClass())) - { - if(SecondaryWeapon) - { - UE_LOG(LogTemp, Display, TEXT("Secondary Weapon Picked up")); - - } - } -}*/ void AEndlessVendettaCharacter::Move(const FInputActionValue& Value) diff --git a/EndlessVendetta/Source/EndlessVendetta/EndlessVendettaCharacter.h b/EndlessVendetta/Source/EndlessVendetta/EndlessVendettaCharacter.h index cf41bef6..20681db6 100644 --- a/EndlessVendetta/Source/EndlessVendetta/EndlessVendettaCharacter.h +++ b/EndlessVendetta/Source/EndlessVendetta/EndlessVendettaCharacter.h @@ -103,7 +103,6 @@ public: UFUNCTION(BlueprintCallable, Category = "Weapons") void TapFireCaller(); - protected: /** Called for movement input */ void Move(const FInputActionValue& Value); @@ -119,9 +118,6 @@ protected: void EquipSecondary(); - //Called from Player BluePrints - //UFUNCTION(BlueprintCallable, Category = "Weapons") - //void WeaponPickUpSystem(AActor* PickedUpWeapon); protected: // APawn interface @@ -133,6 +129,7 @@ public: USkeletalMeshComponent* GetMesh1P() const { return Mesh1P; } /** Returns FirstPersonCameraComponent subobject **/ UCameraComponent* GetFirstPersonCameraComponent() const { return FirstPersonCameraComponent; } + }; diff --git a/EndlessVendetta/Source/EndlessVendetta/WeaponSystem/BaseWeaponClass.cpp b/EndlessVendetta/Source/EndlessVendetta/WeaponSystem/BaseWeaponClass.cpp index 0d14f19d..89e02d0a 100644 --- a/EndlessVendetta/Source/EndlessVendetta/WeaponSystem/BaseWeaponClass.cpp +++ b/EndlessVendetta/Source/EndlessVendetta/WeaponSystem/BaseWeaponClass.cpp @@ -22,21 +22,13 @@ void ABaseWeaponClass::BeginPlay() // Attempt to find the player character APlayerController* PlayerController = UGameplayStatics::GetPlayerController(this, 0); player = Cast(PlayerController->GetCharacter()); - if (PlayerController) + + for (UActorComponent* actorComp : player->GetComponentsByTag(UArrowComponent::StaticClass(), FName("GunStart"))) { - if (player) - { - UE_LOG(LogTemp, Display, TEXT("BeginPlay: Player found.")); - } - else - { - UE_LOG(LogTemp, Error, TEXT("BeginPlay: Player not found.")); - } - } - else - { - UE_LOG(LogTemp, Error, TEXT("BeginPlay: Player controller not found.")); + GunStartArrow = Cast(actorComp); + break; } + } // Called every frame @@ -47,20 +39,23 @@ void ABaseWeaponClass::Tick(float DeltaTime) void ABaseWeaponClass::TapFire() { + FTimerHandle timerHandle; FHitResult outHit; FVector traceStart; FVector traceEnd; - traceStart = player->GetActorLocation(); - traceEnd = traceStart + (player->GetActorForwardVector() * 50); - UE_LOG(LogTemp, Display, TEXT("World: %s"), *GetWorld()->GetName()); + traceStart = GunStartArrow->GetComponentLocation(); + traceEnd = traceStart + (player->GetActorForwardVector() * BulletDistance); FCollisionQueryParams collisionParams; + collisionParams.AddIgnoredActor(player); + collisionParams.AddIgnoredActor(this); + GetWorldTimerManager().SetTimer(timerHandle, 1 / FireRate, false, 1.0f); GetWorld()->LineTraceSingleByChannel(outHit, traceStart, traceEnd, ECC_Visibility, collisionParams); //Debug line to see where the trace hit - DrawDebugLine(this->GetWorld(), traceStart, traceEnd, FColor::Red, true); + DrawDebugLine(this->GetWorld(), traceStart, traceEnd, FColor::Red, true, 500.0f, 0U, 5.f); if (outHit.bBlockingHit) { - UE_LOG(LogTemp, Display, TEXT("Hit something")); + UE_LOG(LogTemp, Display, TEXT("hit item: %s"), *outHit.GetActor()->GetName()); + } - UE_LOG(LogTemp, Display, TEXT("BOOMBOOMBIMBAMBIM")); } diff --git a/EndlessVendetta/Source/EndlessVendetta/WeaponSystem/BaseWeaponClass.h b/EndlessVendetta/Source/EndlessVendetta/WeaponSystem/BaseWeaponClass.h index 2fc1219a..149d45d5 100644 --- a/EndlessVendetta/Source/EndlessVendetta/WeaponSystem/BaseWeaponClass.h +++ b/EndlessVendetta/Source/EndlessVendetta/WeaponSystem/BaseWeaponClass.h @@ -4,6 +4,7 @@ #include "CoreMinimal.h" #include "WeaponItemClass.h" +#include "Components/ArrowComponent.h" #include "BaseWeaponClass.generated.h" class AEndlessVendettaCharacter; @@ -47,7 +48,12 @@ public: UPROPERTY(VisibleAnywhere) ACharacter* player; - +private: + + UArrowComponent* GunStartArrow; + + UPROPERTY(EditAnywhere) + float BulletDistance; //Add HoldFire functionality after pistol is complete for holding fire for pistol and make it start spraying innacuratly. From 495c1fc4ee3ec01aa44319acbc67e649bbb06dff Mon Sep 17 00:00:00 2001 From: Rafal Swierczek Date: Mon, 2 Oct 2023 13:56:50 +0100 Subject: [PATCH 043/112] Bugfix VisionLink to Deactivate WIP Fucntionalilty --- .../GadgetClasses/Recon/VisionLink/VisionLink.cpp | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/EndlessVendetta/Source/EndlessVendetta/GadgetSystem/GadgetClasses/Recon/VisionLink/VisionLink.cpp b/EndlessVendetta/Source/EndlessVendetta/GadgetSystem/GadgetClasses/Recon/VisionLink/VisionLink.cpp index 34e523ae..943897d1 100644 --- a/EndlessVendetta/Source/EndlessVendetta/GadgetSystem/GadgetClasses/Recon/VisionLink/VisionLink.cpp +++ b/EndlessVendetta/Source/EndlessVendetta/GadgetSystem/GadgetClasses/Recon/VisionLink/VisionLink.cpp @@ -38,9 +38,9 @@ void AVisionLink::SendOutPingPulse() UpdatePulsesRemaining(NumOfPingPulsesLeftInThisCycle); if (NumOfPingPulsesLeftInThisCycle < 0) return; - FActorSpawnParameters SpawnParams; - SpawnParams.SpawnCollisionHandlingOverride = ESpawnActorCollisionHandlingMethod::AlwaysSpawn; - FVector SpawnLoc = (GetActorLocation() - EquippedOffset) + EnemyLOSTestActor.GetDefaultObject()->SpawnOffset; + //FActorSpawnParameters SpawnParams; + //SpawnParams.SpawnCollisionHandlingOverride = ESpawnActorCollisionHandlingMethod::AlwaysSpawn; + //FVector SpawnLoc = (GetActorLocation() - EquippedOffset) + EnemyLOSTestActor.GetDefaultObject()->SpawnOffset; AActor* LOSTestActor = GetWorld()->SpawnActor(EnemyLOSTestActor, SpawnLoc, GetActorRotation(), SpawnParams); TArray EmptyFStringArray; From f0ac65acb8228a6a7e7c0f6f9dd60923761cc4b1 Mon Sep 17 00:00:00 2001 From: MARCEL HARA Date: Mon, 2 Oct 2023 14:27:47 +0100 Subject: [PATCH 044/112] Updated GunShooting to fix grabbing forward vector of guncomp --- .../Blueprints/BP_FirstPersonCharacter.uasset | 2 +- .../AssaultRifles/BP_BaseAssaultRifle.uasset | 4 +- .../BaseWeapons/BP_BaseWeapon.uasset | 4 +- .../0/3Z/SNIBJQL2L6YHSC7MTTK1C2.uasset | 2 +- .../EndlessVendettaCharacter.cpp | 25 ++++++++++-- .../EndlessVendettaCharacter.h | 5 +++ .../WeaponSystem/BaseWeaponClass.cpp | 39 +++++++++++++++++-- .../WeaponSystem/BaseWeaponClass.h | 12 ++++++ 8 files changed, 81 insertions(+), 12 deletions(-) diff --git a/EndlessVendetta/Content/FirstPerson/Blueprints/BP_FirstPersonCharacter.uasset b/EndlessVendetta/Content/FirstPerson/Blueprints/BP_FirstPersonCharacter.uasset index fda783bd..7d416e94 100644 --- a/EndlessVendetta/Content/FirstPerson/Blueprints/BP_FirstPersonCharacter.uasset +++ b/EndlessVendetta/Content/FirstPerson/Blueprints/BP_FirstPersonCharacter.uasset @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:d580d82ff6abdbebffa1e57dc264fb6e4b0e6c53e28aa0c853b56149f7867471 +oid sha256:00e38eda0524fe228dc71f14ef9f96ebec3f8142ffaeca9366f253a7456d529b size 27305 diff --git a/EndlessVendetta/Content/FirstPerson/Blueprints/BaseWeapons/AssaultRifles/BP_BaseAssaultRifle.uasset b/EndlessVendetta/Content/FirstPerson/Blueprints/BaseWeapons/AssaultRifles/BP_BaseAssaultRifle.uasset index 52b41107..998ce21b 100644 --- a/EndlessVendetta/Content/FirstPerson/Blueprints/BaseWeapons/AssaultRifles/BP_BaseAssaultRifle.uasset +++ b/EndlessVendetta/Content/FirstPerson/Blueprints/BaseWeapons/AssaultRifles/BP_BaseAssaultRifle.uasset @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:21afd371e599a3fb2c37e3662406978c3305c602a1c77bb3717e9bc4f2514b48 -size 35926 +oid sha256:6c3599c78d84a6895d06de8ce3697a6aefd517ac0105d041cab6f5124090bb3b +size 35834 diff --git a/EndlessVendetta/Content/FirstPerson/Blueprints/BaseWeapons/BP_BaseWeapon.uasset b/EndlessVendetta/Content/FirstPerson/Blueprints/BaseWeapons/BP_BaseWeapon.uasset index 063848e3..f09d81f5 100644 --- a/EndlessVendetta/Content/FirstPerson/Blueprints/BaseWeapons/BP_BaseWeapon.uasset +++ b/EndlessVendetta/Content/FirstPerson/Blueprints/BaseWeapons/BP_BaseWeapon.uasset @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:51cc0f9f0adae065e9941acdd88abe2fe5f7015a3a5343a63f7b0507e90c21ed -size 28900 +oid sha256:694f084a31b369305b9cf0e066786a624f73721bf819d3823177703341f0b98c +size 28902 diff --git a/EndlessVendetta/Content/__ExternalActors__/FirstPerson/Maps/GunMechanicTester/0/3Z/SNIBJQL2L6YHSC7MTTK1C2.uasset b/EndlessVendetta/Content/__ExternalActors__/FirstPerson/Maps/GunMechanicTester/0/3Z/SNIBJQL2L6YHSC7MTTK1C2.uasset index 4777b0ad..b70bdb74 100644 --- a/EndlessVendetta/Content/__ExternalActors__/FirstPerson/Maps/GunMechanicTester/0/3Z/SNIBJQL2L6YHSC7MTTK1C2.uasset +++ b/EndlessVendetta/Content/__ExternalActors__/FirstPerson/Maps/GunMechanicTester/0/3Z/SNIBJQL2L6YHSC7MTTK1C2.uasset @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:5b8b34286278ebb69adb37de9d922ea859ecab2e2547f7e3a634d75c61522828 +oid sha256:51fdff374c4c25c321646b9315bc5286b1ddc89511a597538bf96bea96222e02 size 5061 diff --git a/EndlessVendetta/Source/EndlessVendetta/EndlessVendettaCharacter.cpp b/EndlessVendetta/Source/EndlessVendetta/EndlessVendettaCharacter.cpp index ace56207..5a08ac16 100644 --- a/EndlessVendetta/Source/EndlessVendetta/EndlessVendettaCharacter.cpp +++ b/EndlessVendetta/Source/EndlessVendetta/EndlessVendettaCharacter.cpp @@ -89,7 +89,8 @@ void AEndlessVendettaCharacter::SetupPlayerInputComponent(class UInputComponent* //Weapon Shooting EnhancedInputComponent->BindAction(TapShootAction, ETriggerEvent::Triggered, this, &AEndlessVendettaCharacter::TapFireCaller); - EnhancedInputComponent->BindAction(HoldShootAction, ETriggerEvent::Triggered, this, &AEndlessVendettaCharacter::TapFireCaller); + EnhancedInputComponent->BindAction(HoldShootAction, ETriggerEvent::Triggered, this, &AEndlessVendettaCharacter::HoldFireCaller); + //EnhancedInputComponent->BindAction(HoldShootAction, ETriggerEvent::Completed, this, &AEndlessVendettaCharacter::CancelFire); } } @@ -197,10 +198,28 @@ void AEndlessVendettaCharacter::EquipSecondary() void AEndlessVendettaCharacter::TapFireCaller() { UE_LOG(LogTemp, Warning, TEXT("Tap Fire")); - if (IsValid(PrimaryWeapon) || IsValid(SecondaryWeapon)) + if (IsValid(PrimaryWeapon)) { - PrimaryWeapon->TapFire(); + PrimaryWeapon->TapFire(); } + if (IsValid(SecondaryWeapon)) + { + SecondaryWeapon->TapFire(); + } +} + +void AEndlessVendettaCharacter::HoldFireCaller() +{ + UE_LOG(LogTemp, Warning, TEXT("Hold Fire")); + if (IsValid(PrimaryWeapon) || IsValid(SecondaryWeapon)) + { + PrimaryWeapon->HoldFire(); + } +} + +void AEndlessVendettaCharacter::CancelFire() +{ + PrimaryWeapon->CancelFire(); } diff --git a/EndlessVendetta/Source/EndlessVendetta/EndlessVendettaCharacter.h b/EndlessVendetta/Source/EndlessVendetta/EndlessVendettaCharacter.h index 20681db6..837ae1d4 100644 --- a/EndlessVendetta/Source/EndlessVendetta/EndlessVendettaCharacter.h +++ b/EndlessVendetta/Source/EndlessVendetta/EndlessVendettaCharacter.h @@ -103,6 +103,11 @@ public: UFUNCTION(BlueprintCallable, Category = "Weapons") void TapFireCaller(); + UFUNCTION(BlueprintCallable, Category = "Weapons") + void HoldFireCaller(); + + void CancelFire(); + protected: /** Called for movement input */ void Move(const FInputActionValue& Value); diff --git a/EndlessVendetta/Source/EndlessVendetta/WeaponSystem/BaseWeaponClass.cpp b/EndlessVendetta/Source/EndlessVendetta/WeaponSystem/BaseWeaponClass.cpp index 89e02d0a..102ddcf9 100644 --- a/EndlessVendetta/Source/EndlessVendetta/WeaponSystem/BaseWeaponClass.cpp +++ b/EndlessVendetta/Source/EndlessVendetta/WeaponSystem/BaseWeaponClass.cpp @@ -37,9 +37,44 @@ void ABaseWeaponClass::Tick(float DeltaTime) Super::Tick(DeltaTime); } +void ABaseWeaponClass::ClickDetectionTimer() +{ + if (GetWorldTimerManager().IsTimerActive(timerHandle)) + { + return; + } + GetWorldTimerManager().SetTimer(timerHandle, this, &ABaseWeaponClass::TapFire, 1 / FireRate, false); + + +} + +void ABaseWeaponClass::CancelFire() +{ + GetWorldTimerManager().ClearTimer(timerHandle); +} + void ABaseWeaponClass::TapFire() { - FTimerHandle timerHandle; + FHitResult outHit; + FVector traceStart; + FVector traceEnd; + traceStart = GunStartArrow->GetComponentLocation(); + traceEnd = traceStart + (GunStartArrow->GetForwardVector() * BulletDistance); + FCollisionQueryParams collisionParams; + collisionParams.AddIgnoredActor(player); + collisionParams.AddIgnoredActor(this); + GetWorld()->LineTraceSingleByChannel(outHit, traceStart, traceEnd, ECC_Visibility, collisionParams); + + //Debug line to see where the trace hit + DrawDebugLine(this->GetWorld(), traceStart, traceEnd, FColor::Red, true, 500.0f, 0U, 5.f); + if (outHit.bBlockingHit) + { + UE_LOG(LogTemp, Display, TEXT("hit item: %s"), *outHit.GetActor()->GetName()); + } +} + +void ABaseWeaponClass::HoldFire() +{ FHitResult outHit; FVector traceStart; FVector traceEnd; @@ -48,7 +83,6 @@ void ABaseWeaponClass::TapFire() FCollisionQueryParams collisionParams; collisionParams.AddIgnoredActor(player); collisionParams.AddIgnoredActor(this); - GetWorldTimerManager().SetTimer(timerHandle, 1 / FireRate, false, 1.0f); GetWorld()->LineTraceSingleByChannel(outHit, traceStart, traceEnd, ECC_Visibility, collisionParams); //Debug line to see where the trace hit @@ -56,6 +90,5 @@ void ABaseWeaponClass::TapFire() if (outHit.bBlockingHit) { UE_LOG(LogTemp, Display, TEXT("hit item: %s"), *outHit.GetActor()->GetName()); - } } diff --git a/EndlessVendetta/Source/EndlessVendetta/WeaponSystem/BaseWeaponClass.h b/EndlessVendetta/Source/EndlessVendetta/WeaponSystem/BaseWeaponClass.h index 149d45d5..903e46ff 100644 --- a/EndlessVendetta/Source/EndlessVendetta/WeaponSystem/BaseWeaponClass.h +++ b/EndlessVendetta/Source/EndlessVendetta/WeaponSystem/BaseWeaponClass.h @@ -45,9 +45,21 @@ public: UFUNCTION(BlueprintCallable, Category = "Weapons") void TapFire(); + UFUNCTION(BlueprintCallable, Category = "Weapons") + void HoldFire(); + + UFUNCTION(BlueprintCallable, Category = "Weapons") + void ClickDetectionTimer(); + + void CancelFire(); + UPROPERTY(VisibleAnywhere) ACharacter* player; + FTimerHandle timerHandle; + + bool bFirstBulletShot = false; + private: UArrowComponent* GunStartArrow; From fed24de414435dd74c360004cb59111b8c5d29be Mon Sep 17 00:00:00 2001 From: MARCEL HARA Date: Mon, 2 Oct 2023 14:27:47 +0100 Subject: [PATCH 045/112] Updated GunShooting to fix grabbing forward vector of guncomp --- .../Blueprints/BP_FirstPersonCharacter.uasset | 2 +- .../AssaultRifles/BP_BaseAssaultRifle.uasset | 4 +- .../BaseWeapons/BP_BaseWeapon.uasset | 4 +- .../0/3Z/SNIBJQL2L6YHSC7MTTK1C2.uasset | 2 +- .../EndlessVendettaCharacter.cpp | 25 ++++++++++-- .../EndlessVendettaCharacter.h | 5 +++ .../WeaponSystem/BaseWeaponClass.cpp | 39 +++++++++++++++++-- .../WeaponSystem/BaseWeaponClass.h | 12 ++++++ 8 files changed, 81 insertions(+), 12 deletions(-) diff --git a/EndlessVendetta/Content/FirstPerson/Blueprints/BP_FirstPersonCharacter.uasset b/EndlessVendetta/Content/FirstPerson/Blueprints/BP_FirstPersonCharacter.uasset index fda783bd..7d416e94 100644 --- a/EndlessVendetta/Content/FirstPerson/Blueprints/BP_FirstPersonCharacter.uasset +++ b/EndlessVendetta/Content/FirstPerson/Blueprints/BP_FirstPersonCharacter.uasset @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:d580d82ff6abdbebffa1e57dc264fb6e4b0e6c53e28aa0c853b56149f7867471 +oid sha256:00e38eda0524fe228dc71f14ef9f96ebec3f8142ffaeca9366f253a7456d529b size 27305 diff --git a/EndlessVendetta/Content/FirstPerson/Blueprints/BaseWeapons/AssaultRifles/BP_BaseAssaultRifle.uasset b/EndlessVendetta/Content/FirstPerson/Blueprints/BaseWeapons/AssaultRifles/BP_BaseAssaultRifle.uasset index 52b41107..998ce21b 100644 --- a/EndlessVendetta/Content/FirstPerson/Blueprints/BaseWeapons/AssaultRifles/BP_BaseAssaultRifle.uasset +++ b/EndlessVendetta/Content/FirstPerson/Blueprints/BaseWeapons/AssaultRifles/BP_BaseAssaultRifle.uasset @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:21afd371e599a3fb2c37e3662406978c3305c602a1c77bb3717e9bc4f2514b48 -size 35926 +oid sha256:6c3599c78d84a6895d06de8ce3697a6aefd517ac0105d041cab6f5124090bb3b +size 35834 diff --git a/EndlessVendetta/Content/FirstPerson/Blueprints/BaseWeapons/BP_BaseWeapon.uasset b/EndlessVendetta/Content/FirstPerson/Blueprints/BaseWeapons/BP_BaseWeapon.uasset index 063848e3..f09d81f5 100644 --- a/EndlessVendetta/Content/FirstPerson/Blueprints/BaseWeapons/BP_BaseWeapon.uasset +++ b/EndlessVendetta/Content/FirstPerson/Blueprints/BaseWeapons/BP_BaseWeapon.uasset @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:51cc0f9f0adae065e9941acdd88abe2fe5f7015a3a5343a63f7b0507e90c21ed -size 28900 +oid sha256:694f084a31b369305b9cf0e066786a624f73721bf819d3823177703341f0b98c +size 28902 diff --git a/EndlessVendetta/Content/__ExternalActors__/FirstPerson/Maps/GunMechanicTester/0/3Z/SNIBJQL2L6YHSC7MTTK1C2.uasset b/EndlessVendetta/Content/__ExternalActors__/FirstPerson/Maps/GunMechanicTester/0/3Z/SNIBJQL2L6YHSC7MTTK1C2.uasset index 4777b0ad..b70bdb74 100644 --- a/EndlessVendetta/Content/__ExternalActors__/FirstPerson/Maps/GunMechanicTester/0/3Z/SNIBJQL2L6YHSC7MTTK1C2.uasset +++ b/EndlessVendetta/Content/__ExternalActors__/FirstPerson/Maps/GunMechanicTester/0/3Z/SNIBJQL2L6YHSC7MTTK1C2.uasset @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:5b8b34286278ebb69adb37de9d922ea859ecab2e2547f7e3a634d75c61522828 +oid sha256:51fdff374c4c25c321646b9315bc5286b1ddc89511a597538bf96bea96222e02 size 5061 diff --git a/EndlessVendetta/Source/EndlessVendetta/EndlessVendettaCharacter.cpp b/EndlessVendetta/Source/EndlessVendetta/EndlessVendettaCharacter.cpp index ace56207..5a08ac16 100644 --- a/EndlessVendetta/Source/EndlessVendetta/EndlessVendettaCharacter.cpp +++ b/EndlessVendetta/Source/EndlessVendetta/EndlessVendettaCharacter.cpp @@ -89,7 +89,8 @@ void AEndlessVendettaCharacter::SetupPlayerInputComponent(class UInputComponent* //Weapon Shooting EnhancedInputComponent->BindAction(TapShootAction, ETriggerEvent::Triggered, this, &AEndlessVendettaCharacter::TapFireCaller); - EnhancedInputComponent->BindAction(HoldShootAction, ETriggerEvent::Triggered, this, &AEndlessVendettaCharacter::TapFireCaller); + EnhancedInputComponent->BindAction(HoldShootAction, ETriggerEvent::Triggered, this, &AEndlessVendettaCharacter::HoldFireCaller); + //EnhancedInputComponent->BindAction(HoldShootAction, ETriggerEvent::Completed, this, &AEndlessVendettaCharacter::CancelFire); } } @@ -197,10 +198,28 @@ void AEndlessVendettaCharacter::EquipSecondary() void AEndlessVendettaCharacter::TapFireCaller() { UE_LOG(LogTemp, Warning, TEXT("Tap Fire")); - if (IsValid(PrimaryWeapon) || IsValid(SecondaryWeapon)) + if (IsValid(PrimaryWeapon)) { - PrimaryWeapon->TapFire(); + PrimaryWeapon->TapFire(); } + if (IsValid(SecondaryWeapon)) + { + SecondaryWeapon->TapFire(); + } +} + +void AEndlessVendettaCharacter::HoldFireCaller() +{ + UE_LOG(LogTemp, Warning, TEXT("Hold Fire")); + if (IsValid(PrimaryWeapon) || IsValid(SecondaryWeapon)) + { + PrimaryWeapon->HoldFire(); + } +} + +void AEndlessVendettaCharacter::CancelFire() +{ + PrimaryWeapon->CancelFire(); } diff --git a/EndlessVendetta/Source/EndlessVendetta/EndlessVendettaCharacter.h b/EndlessVendetta/Source/EndlessVendetta/EndlessVendettaCharacter.h index 20681db6..837ae1d4 100644 --- a/EndlessVendetta/Source/EndlessVendetta/EndlessVendettaCharacter.h +++ b/EndlessVendetta/Source/EndlessVendetta/EndlessVendettaCharacter.h @@ -103,6 +103,11 @@ public: UFUNCTION(BlueprintCallable, Category = "Weapons") void TapFireCaller(); + UFUNCTION(BlueprintCallable, Category = "Weapons") + void HoldFireCaller(); + + void CancelFire(); + protected: /** Called for movement input */ void Move(const FInputActionValue& Value); diff --git a/EndlessVendetta/Source/EndlessVendetta/WeaponSystem/BaseWeaponClass.cpp b/EndlessVendetta/Source/EndlessVendetta/WeaponSystem/BaseWeaponClass.cpp index 89e02d0a..102ddcf9 100644 --- a/EndlessVendetta/Source/EndlessVendetta/WeaponSystem/BaseWeaponClass.cpp +++ b/EndlessVendetta/Source/EndlessVendetta/WeaponSystem/BaseWeaponClass.cpp @@ -37,9 +37,44 @@ void ABaseWeaponClass::Tick(float DeltaTime) Super::Tick(DeltaTime); } +void ABaseWeaponClass::ClickDetectionTimer() +{ + if (GetWorldTimerManager().IsTimerActive(timerHandle)) + { + return; + } + GetWorldTimerManager().SetTimer(timerHandle, this, &ABaseWeaponClass::TapFire, 1 / FireRate, false); + + +} + +void ABaseWeaponClass::CancelFire() +{ + GetWorldTimerManager().ClearTimer(timerHandle); +} + void ABaseWeaponClass::TapFire() { - FTimerHandle timerHandle; + FHitResult outHit; + FVector traceStart; + FVector traceEnd; + traceStart = GunStartArrow->GetComponentLocation(); + traceEnd = traceStart + (GunStartArrow->GetForwardVector() * BulletDistance); + FCollisionQueryParams collisionParams; + collisionParams.AddIgnoredActor(player); + collisionParams.AddIgnoredActor(this); + GetWorld()->LineTraceSingleByChannel(outHit, traceStart, traceEnd, ECC_Visibility, collisionParams); + + //Debug line to see where the trace hit + DrawDebugLine(this->GetWorld(), traceStart, traceEnd, FColor::Red, true, 500.0f, 0U, 5.f); + if (outHit.bBlockingHit) + { + UE_LOG(LogTemp, Display, TEXT("hit item: %s"), *outHit.GetActor()->GetName()); + } +} + +void ABaseWeaponClass::HoldFire() +{ FHitResult outHit; FVector traceStart; FVector traceEnd; @@ -48,7 +83,6 @@ void ABaseWeaponClass::TapFire() FCollisionQueryParams collisionParams; collisionParams.AddIgnoredActor(player); collisionParams.AddIgnoredActor(this); - GetWorldTimerManager().SetTimer(timerHandle, 1 / FireRate, false, 1.0f); GetWorld()->LineTraceSingleByChannel(outHit, traceStart, traceEnd, ECC_Visibility, collisionParams); //Debug line to see where the trace hit @@ -56,6 +90,5 @@ void ABaseWeaponClass::TapFire() if (outHit.bBlockingHit) { UE_LOG(LogTemp, Display, TEXT("hit item: %s"), *outHit.GetActor()->GetName()); - } } diff --git a/EndlessVendetta/Source/EndlessVendetta/WeaponSystem/BaseWeaponClass.h b/EndlessVendetta/Source/EndlessVendetta/WeaponSystem/BaseWeaponClass.h index 149d45d5..903e46ff 100644 --- a/EndlessVendetta/Source/EndlessVendetta/WeaponSystem/BaseWeaponClass.h +++ b/EndlessVendetta/Source/EndlessVendetta/WeaponSystem/BaseWeaponClass.h @@ -45,9 +45,21 @@ public: UFUNCTION(BlueprintCallable, Category = "Weapons") void TapFire(); + UFUNCTION(BlueprintCallable, Category = "Weapons") + void HoldFire(); + + UFUNCTION(BlueprintCallable, Category = "Weapons") + void ClickDetectionTimer(); + + void CancelFire(); + UPROPERTY(VisibleAnywhere) ACharacter* player; + FTimerHandle timerHandle; + + bool bFirstBulletShot = false; + private: UArrowComponent* GunStartArrow; From 93447bde97c6696f4e54888f52aed2488b729cc7 Mon Sep 17 00:00:00 2001 From: MARCEL HARA Date: Mon, 2 Oct 2023 14:47:49 +0100 Subject: [PATCH 046/112] Added working firerate to weapons & sorted out hold and tap fire --- .../Blueprints/BP_FirstPersonCharacter.uasset | 4 +-- .../Blueprints/BP_PickUp_Rifle.uasset | 4 +-- .../Input/Actions/IA_HoldShoot.uasset | 3 -- .../FirstPerson/Input/Actions/IA_Shoot.uasset | 3 ++ .../Input/Actions/IA_TapShoot.uasset | 3 -- .../FirstPerson/Input/IMC_Default.uasset | 4 +-- .../FirstPerson/Input/IMC_Weapons.uasset | 4 +-- .../EndlessVendettaCharacter.cpp | 25 +++---------- .../EndlessVendettaCharacter.h | 6 +--- .../WeaponSystem/BaseWeaponClass.cpp | 35 ++++--------------- .../WeaponSystem/BaseWeaponClass.h | 5 +-- 11 files changed, 24 insertions(+), 72 deletions(-) delete mode 100644 EndlessVendetta/Content/FirstPerson/Input/Actions/IA_HoldShoot.uasset create mode 100644 EndlessVendetta/Content/FirstPerson/Input/Actions/IA_Shoot.uasset delete mode 100644 EndlessVendetta/Content/FirstPerson/Input/Actions/IA_TapShoot.uasset diff --git a/EndlessVendetta/Content/FirstPerson/Blueprints/BP_FirstPersonCharacter.uasset b/EndlessVendetta/Content/FirstPerson/Blueprints/BP_FirstPersonCharacter.uasset index 7d416e94..62e16495 100644 --- a/EndlessVendetta/Content/FirstPerson/Blueprints/BP_FirstPersonCharacter.uasset +++ b/EndlessVendetta/Content/FirstPerson/Blueprints/BP_FirstPersonCharacter.uasset @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:00e38eda0524fe228dc71f14ef9f96ebec3f8142ffaeca9366f253a7456d529b -size 27305 +oid sha256:059c5de9ae43a57d471949157f8c1e59bcbc14c1ca117627ccb9d1b27036c180 +size 27098 diff --git a/EndlessVendetta/Content/FirstPerson/Blueprints/BP_PickUp_Rifle.uasset b/EndlessVendetta/Content/FirstPerson/Blueprints/BP_PickUp_Rifle.uasset index 42fff7f9..a8f825b9 100644 --- a/EndlessVendetta/Content/FirstPerson/Blueprints/BP_PickUp_Rifle.uasset +++ b/EndlessVendetta/Content/FirstPerson/Blueprints/BP_PickUp_Rifle.uasset @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:4d156d6fe24779674a35f18f9209313b0c2096d22772400c4d10c241a2e59e9e -size 21649 +oid sha256:118d852be72576a513c2a8c719e1d94450907a5dc00f27dd98914deb48a18c09 +size 21604 diff --git a/EndlessVendetta/Content/FirstPerson/Input/Actions/IA_HoldShoot.uasset b/EndlessVendetta/Content/FirstPerson/Input/Actions/IA_HoldShoot.uasset deleted file mode 100644 index ac52169f..00000000 --- a/EndlessVendetta/Content/FirstPerson/Input/Actions/IA_HoldShoot.uasset +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:1360a5e75da75d76374ea2091191ab85eab8ae0407f660ec7e242bdb51056670 -size 1659 diff --git a/EndlessVendetta/Content/FirstPerson/Input/Actions/IA_Shoot.uasset b/EndlessVendetta/Content/FirstPerson/Input/Actions/IA_Shoot.uasset new file mode 100644 index 00000000..0186b774 --- /dev/null +++ b/EndlessVendetta/Content/FirstPerson/Input/Actions/IA_Shoot.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d92be41146c90185585f7a2de5a18d31a688d2cc8dfb22b24b9a7a92dbfd1ce1 +size 1355 diff --git a/EndlessVendetta/Content/FirstPerson/Input/Actions/IA_TapShoot.uasset b/EndlessVendetta/Content/FirstPerson/Input/Actions/IA_TapShoot.uasset deleted file mode 100644 index b951ed44..00000000 --- a/EndlessVendetta/Content/FirstPerson/Input/Actions/IA_TapShoot.uasset +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:3d02927e6f81929b1b6715400ce5f1a62361f239a5baad938902ae86b61ddc55 -size 1657 diff --git a/EndlessVendetta/Content/FirstPerson/Input/IMC_Default.uasset b/EndlessVendetta/Content/FirstPerson/Input/IMC_Default.uasset index 55abcd6c..6c703775 100644 --- a/EndlessVendetta/Content/FirstPerson/Input/IMC_Default.uasset +++ b/EndlessVendetta/Content/FirstPerson/Input/IMC_Default.uasset @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:3af06cb5478091fcf55d1069e28395f32708276bd53cc5dce82faa2a2d1f822b -size 16317 +oid sha256:639f363d6702f2597b9140becc6854a1a5e5872978e79c4a83b062ccec7c1966 +size 15739 diff --git a/EndlessVendetta/Content/FirstPerson/Input/IMC_Weapons.uasset b/EndlessVendetta/Content/FirstPerson/Input/IMC_Weapons.uasset index e0d25572..0f7cd254 100644 --- a/EndlessVendetta/Content/FirstPerson/Input/IMC_Weapons.uasset +++ b/EndlessVendetta/Content/FirstPerson/Input/IMC_Weapons.uasset @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:99664f7a2d02cd77eec769cd0a690345e80de975fcacb8a615346583218e1b15 -size 4138 +oid sha256:24bf0d5a1ecce706cf33ff99e0ba7c1e0601dea5433ffd1f61732d522c9f4488 +size 4115 diff --git a/EndlessVendetta/Source/EndlessVendetta/EndlessVendettaCharacter.cpp b/EndlessVendetta/Source/EndlessVendetta/EndlessVendettaCharacter.cpp index 5a08ac16..38f6b3b4 100644 --- a/EndlessVendetta/Source/EndlessVendetta/EndlessVendettaCharacter.cpp +++ b/EndlessVendetta/Source/EndlessVendetta/EndlessVendettaCharacter.cpp @@ -88,9 +88,7 @@ void AEndlessVendettaCharacter::SetupPlayerInputComponent(class UInputComponent* EnhancedInputComponent->BindAction(EquipSecondaryWeapon, ETriggerEvent::Triggered, this, &AEndlessVendettaCharacter::EquipSecondary); //Weapon Shooting - EnhancedInputComponent->BindAction(TapShootAction, ETriggerEvent::Triggered, this, &AEndlessVendettaCharacter::TapFireCaller); - EnhancedInputComponent->BindAction(HoldShootAction, ETriggerEvent::Triggered, this, &AEndlessVendettaCharacter::HoldFireCaller); - //EnhancedInputComponent->BindAction(HoldShootAction, ETriggerEvent::Completed, this, &AEndlessVendettaCharacter::CancelFire); + EnhancedInputComponent->BindAction(TapShootAction, ETriggerEvent::Triggered, this, &AEndlessVendettaCharacter::FireCaller); } } @@ -195,34 +193,19 @@ void AEndlessVendettaCharacter::EquipSecondary() } //Calls the fire function in the baseWeaponClass -void AEndlessVendettaCharacter::TapFireCaller() +void AEndlessVendettaCharacter::FireCaller() { UE_LOG(LogTemp, Warning, TEXT("Tap Fire")); if (IsValid(PrimaryWeapon)) { - PrimaryWeapon->TapFire(); + PrimaryWeapon->Fire(); } if (IsValid(SecondaryWeapon)) { - SecondaryWeapon->TapFire(); + SecondaryWeapon->Fire(); } } -void AEndlessVendettaCharacter::HoldFireCaller() -{ - UE_LOG(LogTemp, Warning, TEXT("Hold Fire")); - if (IsValid(PrimaryWeapon) || IsValid(SecondaryWeapon)) - { - PrimaryWeapon->HoldFire(); - } -} - -void AEndlessVendettaCharacter::CancelFire() -{ - PrimaryWeapon->CancelFire(); -} - - void AEndlessVendettaCharacter::Move(const FInputActionValue& Value) { diff --git a/EndlessVendetta/Source/EndlessVendetta/EndlessVendettaCharacter.h b/EndlessVendetta/Source/EndlessVendetta/EndlessVendettaCharacter.h index 837ae1d4..259737a7 100644 --- a/EndlessVendetta/Source/EndlessVendetta/EndlessVendettaCharacter.h +++ b/EndlessVendetta/Source/EndlessVendetta/EndlessVendettaCharacter.h @@ -101,12 +101,8 @@ public: ABaseWeaponClass* SecondaryWeapon; UFUNCTION(BlueprintCallable, Category = "Weapons") - void TapFireCaller(); + void FireCaller(); - UFUNCTION(BlueprintCallable, Category = "Weapons") - void HoldFireCaller(); - - void CancelFire(); protected: /** Called for movement input */ diff --git a/EndlessVendetta/Source/EndlessVendetta/WeaponSystem/BaseWeaponClass.cpp b/EndlessVendetta/Source/EndlessVendetta/WeaponSystem/BaseWeaponClass.cpp index 102ddcf9..5bcf7c6a 100644 --- a/EndlessVendetta/Source/EndlessVendetta/WeaponSystem/BaseWeaponClass.cpp +++ b/EndlessVendetta/Source/EndlessVendetta/WeaponSystem/BaseWeaponClass.cpp @@ -39,13 +39,7 @@ void ABaseWeaponClass::Tick(float DeltaTime) void ABaseWeaponClass::ClickDetectionTimer() { - if (GetWorldTimerManager().IsTimerActive(timerHandle)) - { - return; - } - GetWorldTimerManager().SetTimer(timerHandle, this, &ABaseWeaponClass::TapFire, 1 / FireRate, false); - - + GetWorldTimerManager().SetTimer(timerHandle, this, &ABaseWeaponClass::Fire, 1 / FireRate, false); } void ABaseWeaponClass::CancelFire() @@ -53,7 +47,7 @@ void ABaseWeaponClass::CancelFire() GetWorldTimerManager().ClearTimer(timerHandle); } -void ABaseWeaponClass::TapFire() +void ABaseWeaponClass::Fire() { FHitResult outHit; FVector traceStart; @@ -63,32 +57,17 @@ void ABaseWeaponClass::TapFire() FCollisionQueryParams collisionParams; collisionParams.AddIgnoredActor(player); collisionParams.AddIgnoredActor(this); + if (GetWorldTimerManager().IsTimerActive(timerHandle)) + { + return; + } GetWorld()->LineTraceSingleByChannel(outHit, traceStart, traceEnd, ECC_Visibility, collisionParams); - //Debug line to see where the trace hit DrawDebugLine(this->GetWorld(), traceStart, traceEnd, FColor::Red, true, 500.0f, 0U, 5.f); + ClickDetectionTimer(); if (outHit.bBlockingHit) { UE_LOG(LogTemp, Display, TEXT("hit item: %s"), *outHit.GetActor()->GetName()); } } -void ABaseWeaponClass::HoldFire() -{ - FHitResult outHit; - FVector traceStart; - FVector traceEnd; - traceStart = GunStartArrow->GetComponentLocation(); - traceEnd = traceStart + (player->GetActorForwardVector() * BulletDistance); - FCollisionQueryParams collisionParams; - collisionParams.AddIgnoredActor(player); - collisionParams.AddIgnoredActor(this); - GetWorld()->LineTraceSingleByChannel(outHit, traceStart, traceEnd, ECC_Visibility, collisionParams); - - //Debug line to see where the trace hit - DrawDebugLine(this->GetWorld(), traceStart, traceEnd, FColor::Red, true, 500.0f, 0U, 5.f); - if (outHit.bBlockingHit) - { - UE_LOG(LogTemp, Display, TEXT("hit item: %s"), *outHit.GetActor()->GetName()); - } -} diff --git a/EndlessVendetta/Source/EndlessVendetta/WeaponSystem/BaseWeaponClass.h b/EndlessVendetta/Source/EndlessVendetta/WeaponSystem/BaseWeaponClass.h index 903e46ff..67be17fc 100644 --- a/EndlessVendetta/Source/EndlessVendetta/WeaponSystem/BaseWeaponClass.h +++ b/EndlessVendetta/Source/EndlessVendetta/WeaponSystem/BaseWeaponClass.h @@ -43,10 +43,7 @@ public: UTexture2D* WeaponImage; UFUNCTION(BlueprintCallable, Category = "Weapons") - void TapFire(); - - UFUNCTION(BlueprintCallable, Category = "Weapons") - void HoldFire(); + void Fire(); UFUNCTION(BlueprintCallable, Category = "Weapons") void ClickDetectionTimer(); From c4da037d2d74c65dac051a82bfb0f487e4c4a9e2 Mon Sep 17 00:00:00 2001 From: MARCEL HARA Date: Mon, 2 Oct 2023 14:52:30 +0100 Subject: [PATCH 047/112] Updated SecondaryWeapons BulletTravel --- .../Blueprints/BaseWeapons/Pistols/BP_BasePistolWeapon.uasset | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/EndlessVendetta/Content/FirstPerson/Blueprints/BaseWeapons/Pistols/BP_BasePistolWeapon.uasset b/EndlessVendetta/Content/FirstPerson/Blueprints/BaseWeapons/Pistols/BP_BasePistolWeapon.uasset index 3f00099b..a1f00f47 100644 --- a/EndlessVendetta/Content/FirstPerson/Blueprints/BaseWeapons/Pistols/BP_BasePistolWeapon.uasset +++ b/EndlessVendetta/Content/FirstPerson/Blueprints/BaseWeapons/Pistols/BP_BasePistolWeapon.uasset @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:202ab16b4ffa35b8b8140c728744b529514cd98e7cf595a674e0bd13bcfbaff9 -size 29227 +oid sha256:69e0dd14f07413220251048a5a7bb322eebd9e2d9362dc29bab3d3de096a9a82 +size 29337 From 282705ed2fe6d4e060f8619804700e7047998764 Mon Sep 17 00:00:00 2001 From: Rafal Swierczek Date: Mon, 2 Oct 2023 13:56:50 +0100 Subject: [PATCH 048/112] Bugfix VisionLink to Deactivate WIP Fucntionalilty --- .../Recon/VisionLink/VisionLink.cpp | 23 ++++++++----------- 1 file changed, 10 insertions(+), 13 deletions(-) diff --git a/EndlessVendetta/Source/EndlessVendetta/GadgetSystem/GadgetClasses/Recon/VisionLink/VisionLink.cpp b/EndlessVendetta/Source/EndlessVendetta/GadgetSystem/GadgetClasses/Recon/VisionLink/VisionLink.cpp index 34e523ae..9b8933b8 100644 --- a/EndlessVendetta/Source/EndlessVendetta/GadgetSystem/GadgetClasses/Recon/VisionLink/VisionLink.cpp +++ b/EndlessVendetta/Source/EndlessVendetta/GadgetSystem/GadgetClasses/Recon/VisionLink/VisionLink.cpp @@ -10,7 +10,7 @@ void AVisionLink::BeginPlay() CooldownLength = CooldownTime; InUseDuration = GadgetMaxUptime; - if (NumberOfPingPulses <= 0 ) NumberOfPingPulses = 1; + if (NumberOfPingPulses <= 0) NumberOfPingPulses = 1; TimeInbetweenPingPulses = GadgetMaxUptime / (float)NumberOfPingPulses; } @@ -28,7 +28,7 @@ void AVisionLink::Activate() void AVisionLink::FinishedUsing() { VisionLinkRecharging(); - + Super::FinishedUsing(); } @@ -38,18 +38,15 @@ void AVisionLink::SendOutPingPulse() UpdatePulsesRemaining(NumOfPingPulsesLeftInThisCycle); if (NumOfPingPulsesLeftInThisCycle < 0) return; - FActorSpawnParameters SpawnParams; - SpawnParams.SpawnCollisionHandlingOverride = ESpawnActorCollisionHandlingMethod::AlwaysSpawn; - FVector SpawnLoc = (GetActorLocation() - EquippedOffset) + EnemyLOSTestActor.GetDefaultObject()->SpawnOffset; - - AActor* LOSTestActor = GetWorld()->SpawnActor(EnemyLOSTestActor, SpawnLoc, GetActorRotation(), SpawnParams); - TArray EmptyFStringArray; - Cast(LOSTestActor)->TestLOS(EmptyFStringArray, GetOwner()); - + //FActorSpawnParameters SpawnParams; + //SpawnParams.SpawnCollisionHandlingOverride = ESpawnActorCollisionHandlingMethod::AlwaysSpawn; + //FVector SpawnLoc = (GetActorLocation() - EquippedOffset) + EnemyLOSTestActor.GetDefaultObject()->SpawnOffset; + + // AActor* LOSTestActor = GetWorld()->SpawnActor(EnemyLOSTestActor, SpawnLoc, GetActorRotation(), SpawnParams); + // TArray EmptyFStringArray; + // Cast(LOSTestActor)->TestLOS(EmptyFStringArray, GetOwner()); + UE_LOG(LogTemp, Warning, TEXT("Ping Pulse!")); GetWorld()->GetTimerManager().SetTimer(PulseHandle, this, &AVisionLink::SendOutPingPulse, TimeInbetweenPingPulses, false); PlayPingPulseAnim(TimeInbetweenPingPulses); } - - - From 49bd9aac1cfb58daf6607b38a9ed2ab250e4c8cd Mon Sep 17 00:00:00 2001 From: Kacper Szelest Date: Tue, 3 Oct 2023 11:06:32 +0100 Subject: [PATCH 049/112] Fixing rafals code I became a programmer and fixed rafals code so i can do my own work --- .../GadgetClasses/Recon/VisionLink/VisionLink.cpp | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/EndlessVendetta/Source/EndlessVendetta/GadgetSystem/GadgetClasses/Recon/VisionLink/VisionLink.cpp b/EndlessVendetta/Source/EndlessVendetta/GadgetSystem/GadgetClasses/Recon/VisionLink/VisionLink.cpp index d075a5e3..29b30310 100644 --- a/EndlessVendetta/Source/EndlessVendetta/GadgetSystem/GadgetClasses/Recon/VisionLink/VisionLink.cpp +++ b/EndlessVendetta/Source/EndlessVendetta/GadgetSystem/GadgetClasses/Recon/VisionLink/VisionLink.cpp @@ -42,9 +42,9 @@ void AVisionLink::SendOutPingPulse() //SpawnParams.SpawnCollisionHandlingOverride = ESpawnActorCollisionHandlingMethod::AlwaysSpawn; //FVector SpawnLoc = (GetActorLocation() - EquippedOffset) + EnemyLOSTestActor.GetDefaultObject()->SpawnOffset; - AActor* LOSTestActor = GetWorld()->SpawnActor(EnemyLOSTestActor, SpawnLoc, GetActorRotation(), SpawnParams); - TArray EmptyFStringArray; - Cast(LOSTestActor)->TestLOS(EmptyFStringArray, GetOwner()); + //AActor* LOSTestActor = GetWorld()->SpawnActor(EnemyLOSTestActor, SpawnLoc, GetActorRotation(), SpawnParams); + //TArray EmptyFStringArray; + //Cast(LOSTestActor)->TestLOS(EmptyFStringArray, GetOwner()); UE_LOG(LogTemp, Warning, TEXT("Ping Pulse!")); GetWorld()->GetTimerManager().SetTimer(PulseHandle, this, &AVisionLink::SendOutPingPulse, TimeInbetweenPingPulses, false); From c764ce182ad7b6989660542c18b2b4b08bf21797 Mon Sep 17 00:00:00 2001 From: Rafal Swierczek Date: Tue, 3 Oct 2023 12:39:20 +0100 Subject: [PATCH 050/112] Fixed LOS Test Missing Actor Reference --- .../ReconGadgets/VisionLink/LOS_Test.uasset | 3 +++ .../VisionLink/RG_VisionLink.uasset | 4 ++-- .../Content/Levels/GadgetSystemTestLevel.umap | 2 +- .../Architecture/Floor_400x400.uasset | 4 ++-- .../StarterContent/Audio/Collapse01.uasset | 4 ++-- .../Recon/VisionLink/VisionLink.cpp | 18 ++++++++++++------ .../VisionLink/VisionLinkEnemyLOSTest.cpp | 8 ++++---- .../Recon/VisionLink/VisionLinkEnemyLOSTest.h | 2 +- 8 files changed, 27 insertions(+), 18 deletions(-) create mode 100644 EndlessVendetta/Content/Gadgets/ReconGadgets/VisionLink/LOS_Test.uasset diff --git a/EndlessVendetta/Content/Gadgets/ReconGadgets/VisionLink/LOS_Test.uasset b/EndlessVendetta/Content/Gadgets/ReconGadgets/VisionLink/LOS_Test.uasset new file mode 100644 index 00000000..8dc51b6b --- /dev/null +++ b/EndlessVendetta/Content/Gadgets/ReconGadgets/VisionLink/LOS_Test.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:3dcf2376c901c20297196f292d3af9789583d7023bb529d5e347e29cf43967e1 +size 14705 diff --git a/EndlessVendetta/Content/Gadgets/ReconGadgets/VisionLink/RG_VisionLink.uasset b/EndlessVendetta/Content/Gadgets/ReconGadgets/VisionLink/RG_VisionLink.uasset index a98e94f1..600897ad 100644 --- a/EndlessVendetta/Content/Gadgets/ReconGadgets/VisionLink/RG_VisionLink.uasset +++ b/EndlessVendetta/Content/Gadgets/ReconGadgets/VisionLink/RG_VisionLink.uasset @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:2a063d83c2d3461bee076adc8e95f993662e0d2cfe542ea8adfec6b524ecde24 -size 97920 +oid sha256:2e54f66125275a7482edeefbb4f92ebba6bc1791877f697fd60c6051711946e7 +size 98220 diff --git a/EndlessVendetta/Content/Levels/GadgetSystemTestLevel.umap b/EndlessVendetta/Content/Levels/GadgetSystemTestLevel.umap index 07001d61..452a38a1 100644 --- a/EndlessVendetta/Content/Levels/GadgetSystemTestLevel.umap +++ b/EndlessVendetta/Content/Levels/GadgetSystemTestLevel.umap @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:5e27a9b735217e9310c6c773ebb19ce87a4f00d959f0c4710de79ce8975be500 +oid sha256:e8b0e40ede14db8ce7ce78f51420e587af885afcbc93c4c0e8a24ec6798005ec size 109679 diff --git a/EndlessVendetta/Content/StarterContent/Architecture/Floor_400x400.uasset b/EndlessVendetta/Content/StarterContent/Architecture/Floor_400x400.uasset index c2a34afc..2a403468 100644 --- a/EndlessVendetta/Content/StarterContent/Architecture/Floor_400x400.uasset +++ b/EndlessVendetta/Content/StarterContent/Architecture/Floor_400x400.uasset @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:4c0ecf0ac0702cc2bd355ec050232a61c49e10f102448efbeb735a51824adef6 -size 14948 +oid sha256:30e523627b30cc7ce8fd4c7a81a580903d0c6689149e9f7cbf39c373d5475a40 +size 14831 diff --git a/EndlessVendetta/Content/StarterContent/Audio/Collapse01.uasset b/EndlessVendetta/Content/StarterContent/Audio/Collapse01.uasset index 198f128d..5e3ff30e 100644 --- a/EndlessVendetta/Content/StarterContent/Audio/Collapse01.uasset +++ b/EndlessVendetta/Content/StarterContent/Audio/Collapse01.uasset @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:43d44b5a53fbbfc62522f67ad9523360b15677e3d0caeea96f4d9d0580a013cd -size 353935 +oid sha256:85c827023ee4b466228ec65e92b4b4a0415a106de041ac1c2cab481a2a5dfa8d +size 348532 diff --git a/EndlessVendetta/Source/EndlessVendetta/GadgetSystem/GadgetClasses/Recon/VisionLink/VisionLink.cpp b/EndlessVendetta/Source/EndlessVendetta/GadgetSystem/GadgetClasses/Recon/VisionLink/VisionLink.cpp index d075a5e3..2aa44fa2 100644 --- a/EndlessVendetta/Source/EndlessVendetta/GadgetSystem/GadgetClasses/Recon/VisionLink/VisionLink.cpp +++ b/EndlessVendetta/Source/EndlessVendetta/GadgetSystem/GadgetClasses/Recon/VisionLink/VisionLink.cpp @@ -3,6 +3,10 @@ #include "VisionLink.h" +#include "Camera/CameraComponent.h" +#include "VisionLinkEnemyLOSTest.h" +#include "GameFramework/Character.h" + void AVisionLink::BeginPlay() { Super::BeginPlay(); @@ -38,13 +42,15 @@ void AVisionLink::SendOutPingPulse() UpdatePulsesRemaining(NumOfPingPulsesLeftInThisCycle); if (NumOfPingPulsesLeftInThisCycle < 0) return; - //FActorSpawnParameters SpawnParams; - //SpawnParams.SpawnCollisionHandlingOverride = ESpawnActorCollisionHandlingMethod::AlwaysSpawn; - //FVector SpawnLoc = (GetActorLocation() - EquippedOffset) + EnemyLOSTestActor.GetDefaultObject()->SpawnOffset; + FActorSpawnParameters SpawnParams; + SpawnParams.SpawnCollisionHandlingOverride = ESpawnActorCollisionHandlingMethod::AlwaysSpawn; + UCameraComponent* PlayerCamComp = Cast(GetWorld()->GetFirstPlayerController()->GetCharacter()->GetComponentByClass(UCameraComponent::StaticClass())); + //FVector SpawnLoc = PlayerCamComp->GetSocketLocation(NAME_None) + PlayerCamComp->GetForwardVector() * EnemyLOSTestActor->GetDefaultObject() - AActor* LOSTestActor = GetWorld()->SpawnActor(EnemyLOSTestActor, SpawnLoc, GetActorRotation(), SpawnParams); - TArray EmptyFStringArray; - Cast(LOSTestActor)->TestLOS(EmptyFStringArray, GetOwner()); + + //AActor* LOSTestActor = GetWorld()->SpawnActor(EnemyLOSTestActor, SpawnLoc, GetActorRotation(), SpawnParams); + //TArray EmptyIDArray; + //Cast(LOSTestActor)->TestLOS(EmptyIDArray, this); UE_LOG(LogTemp, Warning, TEXT("Ping Pulse!")); GetWorld()->GetTimerManager().SetTimer(PulseHandle, this, &AVisionLink::SendOutPingPulse, TimeInbetweenPingPulses, false); diff --git a/EndlessVendetta/Source/EndlessVendetta/GadgetSystem/GadgetClasses/Recon/VisionLink/VisionLinkEnemyLOSTest.cpp b/EndlessVendetta/Source/EndlessVendetta/GadgetSystem/GadgetClasses/Recon/VisionLink/VisionLinkEnemyLOSTest.cpp index b81b4d54..bb08e273 100644 --- a/EndlessVendetta/Source/EndlessVendetta/GadgetSystem/GadgetClasses/Recon/VisionLink/VisionLinkEnemyLOSTest.cpp +++ b/EndlessVendetta/Source/EndlessVendetta/GadgetSystem/GadgetClasses/Recon/VisionLink/VisionLinkEnemyLOSTest.cpp @@ -28,7 +28,7 @@ void AVisionLinkEnemyLOSTest::Tick(float DeltaTime) } -void AVisionLinkEnemyLOSTest::TestLOS(TArray EnemiesInLink, AActor* LOSActor) +void AVisionLinkEnemyLOSTest::TestLOS(TArray EnemiesInLink, AActor* LOSActor) { // Get all overlapping Actors UBoxComponent* CollisionBox = Cast(GetComponentByClass(UBoxComponent::StaticClass())); @@ -47,9 +47,8 @@ void AVisionLinkEnemyLOSTest::TestLOS(TArray EnemiesInLink, AActor* LOS for (int i = 0; i < OverlappingEnemies.Num(); i++) { - UE_LOG(LogTemp, Warning, TEXT("Overlapping Enemy Name: %s"), *OverlappingEnemies[i]->GetName()); // Overlapping Enemies Array should only contain enemies which aren't already in the link - if (!OverlappingEnemies[i]->ActorHasTag(FName("Enemy")) || EnemiesInLink.Contains(OverlappingEnemies[i]->GetName())) OverlappingEnemies.RemoveAt(i); + if (!OverlappingEnemies[i]->ActorHasTag(FName("Enemy")) || EnemiesInLink.Contains(OverlappingEnemies[i]->GetUniqueID())) OverlappingEnemies.RemoveAt(i); } if (OverlappingEnemies.IsEmpty()) { @@ -59,11 +58,12 @@ void AVisionLinkEnemyLOSTest::TestLOS(TArray EnemiesInLink, AActor* LOS for (AActor* Enemy : OverlappingEnemies) { + if (!IsValid(LOSActor)) UE_LOG(LogTemp, Fatal, TEXT("im an idiot")); FRotator LookAtRotation = UKismetMathLibrary::FindLookAtRotation(LOSActor->GetActorLocation(), Enemy->GetActorLocation()); UE_LOG(LogTemp, Warning, TEXT("Look at Rotation: %f"), LookAtRotation.Yaw); } - Destroy(); + //Destroy(); } diff --git a/EndlessVendetta/Source/EndlessVendetta/GadgetSystem/GadgetClasses/Recon/VisionLink/VisionLinkEnemyLOSTest.h b/EndlessVendetta/Source/EndlessVendetta/GadgetSystem/GadgetClasses/Recon/VisionLink/VisionLinkEnemyLOSTest.h index c9d6b81a..30475038 100644 --- a/EndlessVendetta/Source/EndlessVendetta/GadgetSystem/GadgetClasses/Recon/VisionLink/VisionLinkEnemyLOSTest.h +++ b/EndlessVendetta/Source/EndlessVendetta/GadgetSystem/GadgetClasses/Recon/VisionLink/VisionLinkEnemyLOSTest.h @@ -26,5 +26,5 @@ public: // Called every frame virtual void Tick(float DeltaTime) override; - void TestLOS(TArray EnemiesInLink, AActor* LOS_Actor); + void TestLOS(TArray EnemiesInLink, AActor* LOS_Actor); }; From 7bb582f6365bbcbd5282113b3a82a13b74467444 Mon Sep 17 00:00:00 2001 From: Rafal Swierczek <34179rs@gmail.com> Date: Tue, 3 Oct 2023 20:18:12 +0100 Subject: [PATCH 051/112] Implemented a Recursive Function TestLOS() for Vision Link Spots Enemies that spotted enemies can see until no more unique enemies are found within the collective vision --- .../ReconGadgets/VisionLink/LOS_Test.uasset | 4 +- .../VisionLink/RG_VisionLink.uasset | 4 +- .../Content/Levels/GadgetSystemTestLevel.umap | 4 +- .../Architecture/Floor_400x400.uasset | 4 +- .../HDRI/HDRI_Epic_Courtyard_Daylight.uasset | 4 +- .../Recon/VisionLink/VisionLink.cpp | 60 ++++++++++++++++--- .../Recon/VisionLink/VisionLink.h | 21 ++++++- .../VisionLink/VisionLinkEnemyLOSTest.cpp | 10 +++- .../Recon/VisionLink/VisionLinkEnemyLOSTest.h | 2 +- 9 files changed, 90 insertions(+), 23 deletions(-) diff --git a/EndlessVendetta/Content/Gadgets/ReconGadgets/VisionLink/LOS_Test.uasset b/EndlessVendetta/Content/Gadgets/ReconGadgets/VisionLink/LOS_Test.uasset index 8dc51b6b..4d036d96 100644 --- a/EndlessVendetta/Content/Gadgets/ReconGadgets/VisionLink/LOS_Test.uasset +++ b/EndlessVendetta/Content/Gadgets/ReconGadgets/VisionLink/LOS_Test.uasset @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:3dcf2376c901c20297196f292d3af9789583d7023bb529d5e347e29cf43967e1 -size 14705 +oid sha256:16b8ace32a02155ad001cb46a64f3b5bef4c4c4ae6f13f0a6e13ac5d683c9a3c +size 14694 diff --git a/EndlessVendetta/Content/Gadgets/ReconGadgets/VisionLink/RG_VisionLink.uasset b/EndlessVendetta/Content/Gadgets/ReconGadgets/VisionLink/RG_VisionLink.uasset index 600897ad..570bf9cb 100644 --- a/EndlessVendetta/Content/Gadgets/ReconGadgets/VisionLink/RG_VisionLink.uasset +++ b/EndlessVendetta/Content/Gadgets/ReconGadgets/VisionLink/RG_VisionLink.uasset @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:2e54f66125275a7482edeefbb4f92ebba6bc1791877f697fd60c6051711946e7 -size 98220 +oid sha256:0d16edae7f13193d1183a5d98fe86bdc3c55fa37936345f8239280501fd89fd5 +size 98008 diff --git a/EndlessVendetta/Content/Levels/GadgetSystemTestLevel.umap b/EndlessVendetta/Content/Levels/GadgetSystemTestLevel.umap index 452a38a1..07a4fcd2 100644 --- a/EndlessVendetta/Content/Levels/GadgetSystemTestLevel.umap +++ b/EndlessVendetta/Content/Levels/GadgetSystemTestLevel.umap @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:e8b0e40ede14db8ce7ce78f51420e587af885afcbc93c4c0e8a24ec6798005ec -size 109679 +oid sha256:9e3dc3ac3d7558e57253059c870b13d20e67e639f7a748c3c6a384d65ae7df7f +size 109712 diff --git a/EndlessVendetta/Content/StarterContent/Architecture/Floor_400x400.uasset b/EndlessVendetta/Content/StarterContent/Architecture/Floor_400x400.uasset index 2a403468..c2a34afc 100644 --- a/EndlessVendetta/Content/StarterContent/Architecture/Floor_400x400.uasset +++ b/EndlessVendetta/Content/StarterContent/Architecture/Floor_400x400.uasset @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:30e523627b30cc7ce8fd4c7a81a580903d0c6689149e9f7cbf39c373d5475a40 -size 14831 +oid sha256:4c0ecf0ac0702cc2bd355ec050232a61c49e10f102448efbeb735a51824adef6 +size 14948 diff --git a/EndlessVendetta/Content/StarterContent/HDRI/HDRI_Epic_Courtyard_Daylight.uasset b/EndlessVendetta/Content/StarterContent/HDRI/HDRI_Epic_Courtyard_Daylight.uasset index 0f990580..caa0814c 100644 --- a/EndlessVendetta/Content/StarterContent/HDRI/HDRI_Epic_Courtyard_Daylight.uasset +++ b/EndlessVendetta/Content/StarterContent/HDRI/HDRI_Epic_Courtyard_Daylight.uasset @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:bc35eb2d43a47427d30aba0196f9eac90d089dd3abca319528c5d25c83510d0d -size 72364642 +oid sha256:81331a890b185a2c1bc418da80b947c289a8ab67ff91737e9b187c45c71d083d +size 66790690 diff --git a/EndlessVendetta/Source/EndlessVendetta/GadgetSystem/GadgetClasses/Recon/VisionLink/VisionLink.cpp b/EndlessVendetta/Source/EndlessVendetta/GadgetSystem/GadgetClasses/Recon/VisionLink/VisionLink.cpp index 2aa44fa2..459321d3 100644 --- a/EndlessVendetta/Source/EndlessVendetta/GadgetSystem/GadgetClasses/Recon/VisionLink/VisionLink.cpp +++ b/EndlessVendetta/Source/EndlessVendetta/GadgetSystem/GadgetClasses/Recon/VisionLink/VisionLink.cpp @@ -3,6 +3,7 @@ #include "VisionLink.h" +#include "Kismet/KismetMathLibrary.h" #include "Camera/CameraComponent.h" #include "VisionLinkEnemyLOSTest.h" #include "GameFramework/Character.h" @@ -42,17 +43,60 @@ void AVisionLink::SendOutPingPulse() UpdatePulsesRemaining(NumOfPingPulsesLeftInThisCycle); if (NumOfPingPulsesLeftInThisCycle < 0) return; - FActorSpawnParameters SpawnParams; - SpawnParams.SpawnCollisionHandlingOverride = ESpawnActorCollisionHandlingMethod::AlwaysSpawn; - UCameraComponent* PlayerCamComp = Cast(GetWorld()->GetFirstPlayerController()->GetCharacter()->GetComponentByClass(UCameraComponent::StaticClass())); - //FVector SpawnLoc = PlayerCamComp->GetSocketLocation(NAME_None) + PlayerCamComp->GetForwardVector() * EnemyLOSTestActor->GetDefaultObject() + // FActorSpawnParameters SpawnParams; + // SpawnParams.SpawnCollisionHandlingOverride = ESpawnActorCollisionHandlingMethod::AlwaysSpawn; - - //AActor* LOSTestActor = GetWorld()->SpawnActor(EnemyLOSTestActor, SpawnLoc, GetActorRotation(), SpawnParams); - //TArray EmptyIDArray; - //Cast(LOSTestActor)->TestLOS(EmptyIDArray, this); + // FVector SpawnLoc = PlayerCamComp->GetComponentLocation() + PlayerCamComp->GetForwardVector() * EnemyLOSTestActor->GetDefaultObject()->SpawnOffset; + // + // + // AActor* LOSTestActor = GetWorld()->SpawnActor(EnemyLOSTestActor, SpawnLoc, PlayerCamComp->GetComponentRotation(), SpawnParams); + // TArray EmptyIDArray; + // Cast(LOSTestActor)->TestLOS(EmptyIDArray, this); UE_LOG(LogTemp, Warning, TEXT("Ping Pulse!")); GetWorld()->GetTimerManager().SetTimer(PulseHandle, this, &AVisionLink::SendOutPingPulse, TimeInbetweenPingPulses, false); PlayPingPulseAnim(TimeInbetweenPingPulses); + + UCameraComponent* PlayerCamComp = Cast(GetWorld()->GetFirstPlayerController()->GetCharacter()->GetComponentByClass(UCameraComponent::StaticClass())); + TArray ActorsToIgnore; + ActorsToIgnore.Add(GetWorld()->GetFirstPlayerController()->GetCharacter()); + TestLOS(PlayerCamComp->GetComponentTransform(), ActorsToIgnore); } + +void AVisionLink::TestLOS(FTransform StartingPos, TArray &ActorsToIgnore) +{ + float H_DegreeIncrement = (float)H_FOV / (float)LT_Horizontal_Density; + float V_DegreeIncrement = (float)V_FOV / (float)LT_Vertical_Density; + float H_StartingRot = StartingPos.GetRotation().Rotator().Yaw - ((float)H_FOV / 2.0); + float V_StartingRot = StartingPos.GetRotation().Rotator().Pitch - ((float)V_FOV / 2.0); + + for (int H_Increment = 1; H_Increment <= LT_Horizontal_Density; H_Increment++) + { + for (int V_Increment = 1; V_Increment <= LT_Vertical_Density; V_Increment++) + { + FHitResult outHit; + FCollisionQueryParams QueryParams = FCollisionQueryParams::DefaultQueryParam; + QueryParams.bTraceComplex = true; + QueryParams.AddIgnoredActors(ActorsToIgnore); + + FRotator LT_Rot = FRotator(V_StartingRot + (V_Increment * V_DegreeIncrement), H_StartingRot + (H_Increment * H_DegreeIncrement), StartingPos.GetRotation().Rotator().Roll); + FVector LT_EndPoint = StartingPos.GetLocation() + UKismetMathLibrary::GetForwardVector(LT_Rot) * LT_Distance; + + if (!GetWorld()->LineTraceSingleByChannel(outHit, StartingPos.GetLocation(), LT_EndPoint, ECC_Camera, QueryParams)) continue; + + // Only consider enemies which we haven't seen before + AActor* HitActor = outHit.GetActor(); + if (!HitActor->ActorHasTag(FName("Enemy"))) continue; //|| EnemiesInLink.Contains(HitActor->GetUniqueID())) continue; + + DrawDebugLine(GetWorld(), outHit.TraceStart, outHit.ImpactPoint, FColor::Blue, false, 3, 0, 3); + ActorsToIgnore.Add(HitActor); + UE_LOG(LogTemp, Warning, TEXT("I've Seen an Enemy called: %s"), *HitActor->GetName()); + TestLOS(HitActor->GetTransform(), ActorsToIgnore); + + + + } + } + +} + diff --git a/EndlessVendetta/Source/EndlessVendetta/GadgetSystem/GadgetClasses/Recon/VisionLink/VisionLink.h b/EndlessVendetta/Source/EndlessVendetta/GadgetSystem/GadgetClasses/Recon/VisionLink/VisionLink.h index fa5ac3e9..a8097ed2 100644 --- a/EndlessVendetta/Source/EndlessVendetta/GadgetSystem/GadgetClasses/Recon/VisionLink/VisionLink.h +++ b/EndlessVendetta/Source/EndlessVendetta/GadgetSystem/GadgetClasses/Recon/VisionLink/VisionLink.h @@ -21,6 +21,8 @@ class ENDLESSVENDETTA_API AVisionLink : public AReconGadget FTimerHandle PulseHandle; + void TestLOS(FTransform StartingPos, TArray &ActorsToIgnore); + void SendOutPingPulse(); virtual void BeginPlay() override; @@ -34,7 +36,24 @@ protected: int NumberOfPingPulses = 1; UPROPERTY(EditDefaultsOnly, Category = "Vision Link") - TSubclassOf EnemyLOSTestActor; + int LT_Horizontal_Density = 80; + + UPROPERTY(EditDefaultsOnly, Category = "Vision Link") + int LT_Vertical_Density = 25; + + UPROPERTY(EditDefaultsOnly, Category = "Vision Link") + float LT_Distance = 4000; + + UPROPERTY(EditDefaultsOnly, Category = "Vision Link") + float H_FOV = 75; + + UPROPERTY(EditDefaultsOnly, Category = "Vision Link") + float V_FOV = 25; + + + + // UPROPERTY(EditDefaultsOnly, Category = "Vision Link") + // TSubclassOf EnemyLOSTestActor; UPROPERTY(BlueprintReadOnly, Category = "Vision Link") float CooldownLength; diff --git a/EndlessVendetta/Source/EndlessVendetta/GadgetSystem/GadgetClasses/Recon/VisionLink/VisionLinkEnemyLOSTest.cpp b/EndlessVendetta/Source/EndlessVendetta/GadgetSystem/GadgetClasses/Recon/VisionLink/VisionLinkEnemyLOSTest.cpp index bb08e273..52c807f9 100644 --- a/EndlessVendetta/Source/EndlessVendetta/GadgetSystem/GadgetClasses/Recon/VisionLink/VisionLinkEnemyLOSTest.cpp +++ b/EndlessVendetta/Source/EndlessVendetta/GadgetSystem/GadgetClasses/Recon/VisionLink/VisionLinkEnemyLOSTest.cpp @@ -48,7 +48,11 @@ void AVisionLinkEnemyLOSTest::TestLOS(TArray EnemiesInLink, AActor* LOSA for (int i = 0; i < OverlappingEnemies.Num(); i++) { // Overlapping Enemies Array should only contain enemies which aren't already in the link - if (!OverlappingEnemies[i]->ActorHasTag(FName("Enemy")) || EnemiesInLink.Contains(OverlappingEnemies[i]->GetUniqueID())) OverlappingEnemies.RemoveAt(i); + if (!OverlappingEnemies[i]->ActorHasTag(FName("Enemy")) || EnemiesInLink.Contains(OverlappingEnemies[i]->GetUniqueID())) + { + UE_LOG(LogTemp, Warning, TEXT("enemy name: %s"), *OverlappingEnemies[i]->GetName()); + OverlappingEnemies.RemoveAt(i); + } } if (OverlappingEnemies.IsEmpty()) { @@ -58,12 +62,12 @@ void AVisionLinkEnemyLOSTest::TestLOS(TArray EnemiesInLink, AActor* LOSA for (AActor* Enemy : OverlappingEnemies) { - if (!IsValid(LOSActor)) UE_LOG(LogTemp, Fatal, TEXT("im an idiot")); FRotator LookAtRotation = UKismetMathLibrary::FindLookAtRotation(LOSActor->GetActorLocation(), Enemy->GetActorLocation()); UE_LOG(LogTemp, Warning, TEXT("Look at Rotation: %f"), LookAtRotation.Yaw); + UE_LOG(LogTemp, Warning, TEXT("enemy name: %s"), *Enemy->GetName()); } - //Destroy(); + Destroy(); } diff --git a/EndlessVendetta/Source/EndlessVendetta/GadgetSystem/GadgetClasses/Recon/VisionLink/VisionLinkEnemyLOSTest.h b/EndlessVendetta/Source/EndlessVendetta/GadgetSystem/GadgetClasses/Recon/VisionLink/VisionLinkEnemyLOSTest.h index 30475038..add35b97 100644 --- a/EndlessVendetta/Source/EndlessVendetta/GadgetSystem/GadgetClasses/Recon/VisionLink/VisionLinkEnemyLOSTest.h +++ b/EndlessVendetta/Source/EndlessVendetta/GadgetSystem/GadgetClasses/Recon/VisionLink/VisionLinkEnemyLOSTest.h @@ -18,7 +18,7 @@ protected: public: UPROPERTY(EditDefaultsOnly, Category = "Vision Link") - FVector SpawnOffset = FVector(0, 0, 0 ); + float SpawnOffset = 0; // Sets default values for this actor's properties AVisionLinkEnemyLOSTest(); From 6dee50a62b70e593abf36ca2e1b947c1d2e1148a Mon Sep 17 00:00:00 2001 From: Rafal Swierczek <34179rs@gmail.com> Date: Tue, 3 Oct 2023 20:30:36 +0100 Subject: [PATCH 052/112] Removed Redundant LOS Test Box --- .../ReconGadgets/VisionLink/LOS_Test.uasset | 3 --- .../Content/Levels/GadgetSystemTestLevel.umap | 2 +- .../Recon/VisionLink/VisionLink.cpp | 22 +++---------------- .../Recon/VisionLink/VisionLink.h | 9 ++------ 4 files changed, 6 insertions(+), 30 deletions(-) delete mode 100644 EndlessVendetta/Content/Gadgets/ReconGadgets/VisionLink/LOS_Test.uasset diff --git a/EndlessVendetta/Content/Gadgets/ReconGadgets/VisionLink/LOS_Test.uasset b/EndlessVendetta/Content/Gadgets/ReconGadgets/VisionLink/LOS_Test.uasset deleted file mode 100644 index 4d036d96..00000000 --- a/EndlessVendetta/Content/Gadgets/ReconGadgets/VisionLink/LOS_Test.uasset +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:16b8ace32a02155ad001cb46a64f3b5bef4c4c4ae6f13f0a6e13ac5d683c9a3c -size 14694 diff --git a/EndlessVendetta/Content/Levels/GadgetSystemTestLevel.umap b/EndlessVendetta/Content/Levels/GadgetSystemTestLevel.umap index 07a4fcd2..616fa6fe 100644 --- a/EndlessVendetta/Content/Levels/GadgetSystemTestLevel.umap +++ b/EndlessVendetta/Content/Levels/GadgetSystemTestLevel.umap @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:9e3dc3ac3d7558e57253059c870b13d20e67e639f7a748c3c6a384d65ae7df7f +oid sha256:236689015c26708fac1bf19a6077122a373dbd62804e8b0643abe62a82db39ae size 109712 diff --git a/EndlessVendetta/Source/EndlessVendetta/GadgetSystem/GadgetClasses/Recon/VisionLink/VisionLink.cpp b/EndlessVendetta/Source/EndlessVendetta/GadgetSystem/GadgetClasses/Recon/VisionLink/VisionLink.cpp index 459321d3..049398c4 100644 --- a/EndlessVendetta/Source/EndlessVendetta/GadgetSystem/GadgetClasses/Recon/VisionLink/VisionLink.cpp +++ b/EndlessVendetta/Source/EndlessVendetta/GadgetSystem/GadgetClasses/Recon/VisionLink/VisionLink.cpp @@ -42,18 +42,7 @@ void AVisionLink::SendOutPingPulse() NumOfPingPulsesLeftInThisCycle--; UpdatePulsesRemaining(NumOfPingPulsesLeftInThisCycle); if (NumOfPingPulsesLeftInThisCycle < 0) return; - - // FActorSpawnParameters SpawnParams; - // SpawnParams.SpawnCollisionHandlingOverride = ESpawnActorCollisionHandlingMethod::AlwaysSpawn; - // FVector SpawnLoc = PlayerCamComp->GetComponentLocation() + PlayerCamComp->GetForwardVector() * EnemyLOSTestActor->GetDefaultObject()->SpawnOffset; - // - // - // AActor* LOSTestActor = GetWorld()->SpawnActor(EnemyLOSTestActor, SpawnLoc, PlayerCamComp->GetComponentRotation(), SpawnParams); - // TArray EmptyIDArray; - // Cast(LOSTestActor)->TestLOS(EmptyIDArray, this); - - UE_LOG(LogTemp, Warning, TEXT("Ping Pulse!")); GetWorld()->GetTimerManager().SetTimer(PulseHandle, this, &AVisionLink::SendOutPingPulse, TimeInbetweenPingPulses, false); PlayPingPulseAnim(TimeInbetweenPingPulses); @@ -83,20 +72,15 @@ void AVisionLink::TestLOS(FTransform StartingPos, TArray &ActorsToIgnor FVector LT_EndPoint = StartingPos.GetLocation() + UKismetMathLibrary::GetForwardVector(LT_Rot) * LT_Distance; if (!GetWorld()->LineTraceSingleByChannel(outHit, StartingPos.GetLocation(), LT_EndPoint, ECC_Camera, QueryParams)) continue; - - // Only consider enemies which we haven't seen before + AActor* HitActor = outHit.GetActor(); - if (!HitActor->ActorHasTag(FName("Enemy"))) continue; //|| EnemiesInLink.Contains(HitActor->GetUniqueID())) continue; + if (!HitActor->ActorHasTag(FName("Enemy"))) continue; DrawDebugLine(GetWorld(), outHit.TraceStart, outHit.ImpactPoint, FColor::Blue, false, 3, 0, 3); ActorsToIgnore.Add(HitActor); - UE_LOG(LogTemp, Warning, TEXT("I've Seen an Enemy called: %s"), *HitActor->GetName()); + //Spawn in a Ping TestLOS(HitActor->GetTransform(), ActorsToIgnore); - - - } } - } diff --git a/EndlessVendetta/Source/EndlessVendetta/GadgetSystem/GadgetClasses/Recon/VisionLink/VisionLink.h b/EndlessVendetta/Source/EndlessVendetta/GadgetSystem/GadgetClasses/Recon/VisionLink/VisionLink.h index a8097ed2..43ab84d0 100644 --- a/EndlessVendetta/Source/EndlessVendetta/GadgetSystem/GadgetClasses/Recon/VisionLink/VisionLink.h +++ b/EndlessVendetta/Source/EndlessVendetta/GadgetSystem/GadgetClasses/Recon/VisionLink/VisionLink.h @@ -21,10 +21,10 @@ class ENDLESSVENDETTA_API AVisionLink : public AReconGadget FTimerHandle PulseHandle; - void TestLOS(FTransform StartingPos, TArray &ActorsToIgnore); - void SendOutPingPulse(); + void TestLOS(FTransform StartingPos, TArray &ActorsToIgnore); + virtual void BeginPlay() override; virtual void Activate() override; @@ -50,11 +50,6 @@ protected: UPROPERTY(EditDefaultsOnly, Category = "Vision Link") float V_FOV = 25; - - - // UPROPERTY(EditDefaultsOnly, Category = "Vision Link") - // TSubclassOf EnemyLOSTestActor; - UPROPERTY(BlueprintReadOnly, Category = "Vision Link") float CooldownLength; From 3523823a5bcf75f4bffc5a5e200edb028db11229 Mon Sep 17 00:00:00 2001 From: Rafal Swierczek <34179rs@gmail.com> Date: Tue, 3 Oct 2023 21:32:46 +0100 Subject: [PATCH 053/112] Implemented Vision Link Pings Spawn on spotted enemies, can be seen through walls --- .../Gadgets/ReconGadgets/VisionLink/Ping/BP_Ping.uasset | 3 +++ .../Gadgets/ReconGadgets/VisionLink/Ping/PingImage.png | 3 +++ .../Gadgets/ReconGadgets/VisionLink/Ping/PingImage.uasset | 3 +++ .../Gadgets/ReconGadgets/VisionLink/Ping/WBP_Ping.uasset | 3 +++ .../Gadgets/ReconGadgets/VisionLink/RG_VisionLink.uasset | 4 ++-- .../VisionLink/{ => Viewport}/VisionLinkViewPortBG.png | 0 .../VisionLink/Viewport/VisionLinkViewPortBG.uasset | 3 +++ .../VisionLink/Viewport/WBP_VisionLinkViewPort.uasset | 3 +++ .../ReconGadgets/VisionLink/VisionLinkViewPortBG.uasset | 3 --- .../ReconGadgets/VisionLink/WBP_VisionLinkViewPort.uasset | 3 --- .../ReconGadgets/VisionLink/WBP_VisionLinkWatchFace.uasset | 3 --- .../VisionLink/WatchFace/WBP_VisionLinkWatchFace.uasset | 3 +++ .../VisionLink/{ => WatchFace}/WatchFaceBGImage.png | 0 .../VisionLink/WatchFace/WatchFaceBGImage.uasset | 3 +++ .../Gadgets/ReconGadgets/VisionLink/WatchFaceBGImage.uasset | 3 --- EndlessVendetta/Content/Levels/GadgetSystemTestLevel.umap | 4 ++-- .../Content/UI/UI_Material_SeeThroughWalls.uasset | 3 +++ .../GadgetClasses/Recon/VisionLink/VisionLink.cpp | 5 +++-- .../GadgetSystem/GadgetClasses/Recon/VisionLink/VisionLink.h | 4 +++- 19 files changed, 37 insertions(+), 19 deletions(-) create mode 100644 EndlessVendetta/Content/Gadgets/ReconGadgets/VisionLink/Ping/BP_Ping.uasset create mode 100644 EndlessVendetta/Content/Gadgets/ReconGadgets/VisionLink/Ping/PingImage.png create mode 100644 EndlessVendetta/Content/Gadgets/ReconGadgets/VisionLink/Ping/PingImage.uasset create mode 100644 EndlessVendetta/Content/Gadgets/ReconGadgets/VisionLink/Ping/WBP_Ping.uasset rename EndlessVendetta/Content/Gadgets/ReconGadgets/VisionLink/{ => Viewport}/VisionLinkViewPortBG.png (100%) create mode 100644 EndlessVendetta/Content/Gadgets/ReconGadgets/VisionLink/Viewport/VisionLinkViewPortBG.uasset create mode 100644 EndlessVendetta/Content/Gadgets/ReconGadgets/VisionLink/Viewport/WBP_VisionLinkViewPort.uasset delete mode 100644 EndlessVendetta/Content/Gadgets/ReconGadgets/VisionLink/VisionLinkViewPortBG.uasset delete mode 100644 EndlessVendetta/Content/Gadgets/ReconGadgets/VisionLink/WBP_VisionLinkViewPort.uasset delete mode 100644 EndlessVendetta/Content/Gadgets/ReconGadgets/VisionLink/WBP_VisionLinkWatchFace.uasset create mode 100644 EndlessVendetta/Content/Gadgets/ReconGadgets/VisionLink/WatchFace/WBP_VisionLinkWatchFace.uasset rename EndlessVendetta/Content/Gadgets/ReconGadgets/VisionLink/{ => WatchFace}/WatchFaceBGImage.png (100%) create mode 100644 EndlessVendetta/Content/Gadgets/ReconGadgets/VisionLink/WatchFace/WatchFaceBGImage.uasset delete mode 100644 EndlessVendetta/Content/Gadgets/ReconGadgets/VisionLink/WatchFaceBGImage.uasset create mode 100644 EndlessVendetta/Content/UI/UI_Material_SeeThroughWalls.uasset diff --git a/EndlessVendetta/Content/Gadgets/ReconGadgets/VisionLink/Ping/BP_Ping.uasset b/EndlessVendetta/Content/Gadgets/ReconGadgets/VisionLink/Ping/BP_Ping.uasset new file mode 100644 index 00000000..4b2eeb98 --- /dev/null +++ b/EndlessVendetta/Content/Gadgets/ReconGadgets/VisionLink/Ping/BP_Ping.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d550ef5403fa8eb4429aa8a02bf20ee8861165cdfec6f86783634750e14c7ad2 +size 64620 diff --git a/EndlessVendetta/Content/Gadgets/ReconGadgets/VisionLink/Ping/PingImage.png b/EndlessVendetta/Content/Gadgets/ReconGadgets/VisionLink/Ping/PingImage.png new file mode 100644 index 00000000..6e12b0fe --- /dev/null +++ b/EndlessVendetta/Content/Gadgets/ReconGadgets/VisionLink/Ping/PingImage.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:9e0e7b01c20546d33776b7e9ab7b48c2e81a79c07558f92ed0ef035ad729cd2a +size 66320 diff --git a/EndlessVendetta/Content/Gadgets/ReconGadgets/VisionLink/Ping/PingImage.uasset b/EndlessVendetta/Content/Gadgets/ReconGadgets/VisionLink/Ping/PingImage.uasset new file mode 100644 index 00000000..9f97a970 --- /dev/null +++ b/EndlessVendetta/Content/Gadgets/ReconGadgets/VisionLink/Ping/PingImage.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d64b09bc01c01afde43af7565f5c136c6dff1330b0db17d871964513366fc5ad +size 74632 diff --git a/EndlessVendetta/Content/Gadgets/ReconGadgets/VisionLink/Ping/WBP_Ping.uasset b/EndlessVendetta/Content/Gadgets/ReconGadgets/VisionLink/Ping/WBP_Ping.uasset new file mode 100644 index 00000000..18281d37 --- /dev/null +++ b/EndlessVendetta/Content/Gadgets/ReconGadgets/VisionLink/Ping/WBP_Ping.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:11ba552af3b2c39dcfae07749f63f56e4f87b1bcc38306d9a7f51d037e20e5d5 +size 54205 diff --git a/EndlessVendetta/Content/Gadgets/ReconGadgets/VisionLink/RG_VisionLink.uasset b/EndlessVendetta/Content/Gadgets/ReconGadgets/VisionLink/RG_VisionLink.uasset index 570bf9cb..a52acef6 100644 --- a/EndlessVendetta/Content/Gadgets/ReconGadgets/VisionLink/RG_VisionLink.uasset +++ b/EndlessVendetta/Content/Gadgets/ReconGadgets/VisionLink/RG_VisionLink.uasset @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:0d16edae7f13193d1183a5d98fe86bdc3c55fa37936345f8239280501fd89fd5 -size 98008 +oid sha256:00ef54778dd4058c75ad6dca1b46531f8b20b3b154373294be43fa8d5e9ebbdc +size 106247 diff --git a/EndlessVendetta/Content/Gadgets/ReconGadgets/VisionLink/VisionLinkViewPortBG.png b/EndlessVendetta/Content/Gadgets/ReconGadgets/VisionLink/Viewport/VisionLinkViewPortBG.png similarity index 100% rename from EndlessVendetta/Content/Gadgets/ReconGadgets/VisionLink/VisionLinkViewPortBG.png rename to EndlessVendetta/Content/Gadgets/ReconGadgets/VisionLink/Viewport/VisionLinkViewPortBG.png diff --git a/EndlessVendetta/Content/Gadgets/ReconGadgets/VisionLink/Viewport/VisionLinkViewPortBG.uasset b/EndlessVendetta/Content/Gadgets/ReconGadgets/VisionLink/Viewport/VisionLinkViewPortBG.uasset new file mode 100644 index 00000000..8db47e99 --- /dev/null +++ b/EndlessVendetta/Content/Gadgets/ReconGadgets/VisionLink/Viewport/VisionLinkViewPortBG.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:67d9f11bc227f55da0c8ed5642e838600c464ad28dd6ff960cf8d89e3e4d2156 +size 45631 diff --git a/EndlessVendetta/Content/Gadgets/ReconGadgets/VisionLink/Viewport/WBP_VisionLinkViewPort.uasset b/EndlessVendetta/Content/Gadgets/ReconGadgets/VisionLink/Viewport/WBP_VisionLinkViewPort.uasset new file mode 100644 index 00000000..2fe7eeaa --- /dev/null +++ b/EndlessVendetta/Content/Gadgets/ReconGadgets/VisionLink/Viewport/WBP_VisionLinkViewPort.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a0df7d8ccd875abeaaa1f439439dc1a8dd8fb765c09cbaf506743dcfede51538 +size 199275 diff --git a/EndlessVendetta/Content/Gadgets/ReconGadgets/VisionLink/VisionLinkViewPortBG.uasset b/EndlessVendetta/Content/Gadgets/ReconGadgets/VisionLink/VisionLinkViewPortBG.uasset deleted file mode 100644 index c31bec52..00000000 --- a/EndlessVendetta/Content/Gadgets/ReconGadgets/VisionLink/VisionLinkViewPortBG.uasset +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:fd673d7b47c8310bbae47b765919076a4b73cc20813122a3904f97950973435c -size 45518 diff --git a/EndlessVendetta/Content/Gadgets/ReconGadgets/VisionLink/WBP_VisionLinkViewPort.uasset b/EndlessVendetta/Content/Gadgets/ReconGadgets/VisionLink/WBP_VisionLinkViewPort.uasset deleted file mode 100644 index 414cd557..00000000 --- a/EndlessVendetta/Content/Gadgets/ReconGadgets/VisionLink/WBP_VisionLinkViewPort.uasset +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:10ba4f55ea7d6e695bfa848cef4da05c40c2dbe3bbb6be34b00d711f0db12b7b -size 204366 diff --git a/EndlessVendetta/Content/Gadgets/ReconGadgets/VisionLink/WBP_VisionLinkWatchFace.uasset b/EndlessVendetta/Content/Gadgets/ReconGadgets/VisionLink/WBP_VisionLinkWatchFace.uasset deleted file mode 100644 index b205dedf..00000000 --- a/EndlessVendetta/Content/Gadgets/ReconGadgets/VisionLink/WBP_VisionLinkWatchFace.uasset +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:b05365476d12ad22f88a47f072cccc79b65376d67c4eb1ac21a02556c0922449 -size 162045 diff --git a/EndlessVendetta/Content/Gadgets/ReconGadgets/VisionLink/WatchFace/WBP_VisionLinkWatchFace.uasset b/EndlessVendetta/Content/Gadgets/ReconGadgets/VisionLink/WatchFace/WBP_VisionLinkWatchFace.uasset new file mode 100644 index 00000000..f4473218 --- /dev/null +++ b/EndlessVendetta/Content/Gadgets/ReconGadgets/VisionLink/WatchFace/WBP_VisionLinkWatchFace.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:bc8393479c593c48fd8db154aa11f6ac9f5f6d5cd03ee4d93f2754556653dccb +size 161556 diff --git a/EndlessVendetta/Content/Gadgets/ReconGadgets/VisionLink/WatchFaceBGImage.png b/EndlessVendetta/Content/Gadgets/ReconGadgets/VisionLink/WatchFace/WatchFaceBGImage.png similarity index 100% rename from EndlessVendetta/Content/Gadgets/ReconGadgets/VisionLink/WatchFaceBGImage.png rename to EndlessVendetta/Content/Gadgets/ReconGadgets/VisionLink/WatchFace/WatchFaceBGImage.png diff --git a/EndlessVendetta/Content/Gadgets/ReconGadgets/VisionLink/WatchFace/WatchFaceBGImage.uasset b/EndlessVendetta/Content/Gadgets/ReconGadgets/VisionLink/WatchFace/WatchFaceBGImage.uasset new file mode 100644 index 00000000..4e03bf1b --- /dev/null +++ b/EndlessVendetta/Content/Gadgets/ReconGadgets/VisionLink/WatchFace/WatchFaceBGImage.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:9aa56bafa97642804de02c9e00f3a77e0794167d534174993b616e8761757153 +size 19863 diff --git a/EndlessVendetta/Content/Gadgets/ReconGadgets/VisionLink/WatchFaceBGImage.uasset b/EndlessVendetta/Content/Gadgets/ReconGadgets/VisionLink/WatchFaceBGImage.uasset deleted file mode 100644 index d05f935a..00000000 --- a/EndlessVendetta/Content/Gadgets/ReconGadgets/VisionLink/WatchFaceBGImage.uasset +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:afbeeb63e797939650edcf947c6d364fc2372b04290963f53cddc2025d7e4efa -size 19748 diff --git a/EndlessVendetta/Content/Levels/GadgetSystemTestLevel.umap b/EndlessVendetta/Content/Levels/GadgetSystemTestLevel.umap index 616fa6fe..cb32e614 100644 --- a/EndlessVendetta/Content/Levels/GadgetSystemTestLevel.umap +++ b/EndlessVendetta/Content/Levels/GadgetSystemTestLevel.umap @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:236689015c26708fac1bf19a6077122a373dbd62804e8b0643abe62a82db39ae -size 109712 +oid sha256:4b05392dd6ea5c33327b50c71be4e3b736b96c356d8de84d894562af209c1f75 +size 103876 diff --git a/EndlessVendetta/Content/UI/UI_Material_SeeThroughWalls.uasset b/EndlessVendetta/Content/UI/UI_Material_SeeThroughWalls.uasset new file mode 100644 index 00000000..c3067fb0 --- /dev/null +++ b/EndlessVendetta/Content/UI/UI_Material_SeeThroughWalls.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:8a38d567de25b3df88bbe21626983ee66de938d460d4c22aabc81f9790376222 +size 14569 diff --git a/EndlessVendetta/Source/EndlessVendetta/GadgetSystem/GadgetClasses/Recon/VisionLink/VisionLink.cpp b/EndlessVendetta/Source/EndlessVendetta/GadgetSystem/GadgetClasses/Recon/VisionLink/VisionLink.cpp index 049398c4..1dbe1dd7 100644 --- a/EndlessVendetta/Source/EndlessVendetta/GadgetSystem/GadgetClasses/Recon/VisionLink/VisionLink.cpp +++ b/EndlessVendetta/Source/EndlessVendetta/GadgetSystem/GadgetClasses/Recon/VisionLink/VisionLink.cpp @@ -3,6 +3,7 @@ #include "VisionLink.h" +#include "CollisionDebugDrawingPublic.h" #include "Kismet/KismetMathLibrary.h" #include "Camera/CameraComponent.h" #include "VisionLinkEnemyLOSTest.h" @@ -76,9 +77,9 @@ void AVisionLink::TestLOS(FTransform StartingPos, TArray &ActorsToIgnor AActor* HitActor = outHit.GetActor(); if (!HitActor->ActorHasTag(FName("Enemy"))) continue; - DrawDebugLine(GetWorld(), outHit.TraceStart, outHit.ImpactPoint, FColor::Blue, false, 3, 0, 3); + //DrawDebugLine(GetWorld(), outHit.TraceStart, outHit.ImpactPoint, FColor::Blue, false, 3, 0, 3); ActorsToIgnore.Add(HitActor); - //Spawn in a Ping + SpawnPing(HitActor->GetTransform()); TestLOS(HitActor->GetTransform(), ActorsToIgnore); } } diff --git a/EndlessVendetta/Source/EndlessVendetta/GadgetSystem/GadgetClasses/Recon/VisionLink/VisionLink.h b/EndlessVendetta/Source/EndlessVendetta/GadgetSystem/GadgetClasses/Recon/VisionLink/VisionLink.h index 43ab84d0..2a3b7789 100644 --- a/EndlessVendetta/Source/EndlessVendetta/GadgetSystem/GadgetClasses/Recon/VisionLink/VisionLink.h +++ b/EndlessVendetta/Source/EndlessVendetta/GadgetSystem/GadgetClasses/Recon/VisionLink/VisionLink.h @@ -69,5 +69,7 @@ protected: UFUNCTION(BlueprintImplementableEvent, Category = "Vision Link") void VisionLinkRecharging(); - + + UFUNCTION(BlueprintImplementableEvent, Category = "Vision Link") + void SpawnPing(FTransform PingSpawnTransform); }; From 395ea7baa475b380b84c3422378116843ba3ed1c Mon Sep 17 00:00:00 2001 From: PHILIP WHITE Date: Wed, 4 Oct 2023 01:24:03 +0100 Subject: [PATCH 054/112] Update Basic Enemy Behaviour Tree to Patrol --- EndlessVendetta/Content/AI/Enemy/Basic/BB_BasicEnemy.uasset | 4 ++-- EndlessVendetta/Content/AI/Enemy/Basic/BT_BasicEnemy.uasset | 4 ++-- .../ReconGadgets/VisionLink/VisionLinkViewPortBG.uasset | 4 ++-- .../Gadgets/ReconGadgets/VisionLink/WatchFaceBGImage.uasset | 4 ++-- .../Source/EndlessVendetta/AI/BTTask_AttackPlayer.cpp | 1 + 5 files changed, 9 insertions(+), 8 deletions(-) diff --git a/EndlessVendetta/Content/AI/Enemy/Basic/BB_BasicEnemy.uasset b/EndlessVendetta/Content/AI/Enemy/Basic/BB_BasicEnemy.uasset index 83745345..56819b9d 100644 --- a/EndlessVendetta/Content/AI/Enemy/Basic/BB_BasicEnemy.uasset +++ b/EndlessVendetta/Content/AI/Enemy/Basic/BB_BasicEnemy.uasset @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:73bd053142b2dc9fb78973a96805b66270a7f976a36986ef658580a9d2ba75a7 -size 4123 +oid sha256:d175544d93e03c9c35e6fa9e17caa58f91fa9c2227be1f62ddc9234b095e8d46 +size 4420 diff --git a/EndlessVendetta/Content/AI/Enemy/Basic/BT_BasicEnemy.uasset b/EndlessVendetta/Content/AI/Enemy/Basic/BT_BasicEnemy.uasset index 2b5f26e3..63d6a5f9 100644 --- a/EndlessVendetta/Content/AI/Enemy/Basic/BT_BasicEnemy.uasset +++ b/EndlessVendetta/Content/AI/Enemy/Basic/BT_BasicEnemy.uasset @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:8cc72d5c792915b0c3002c85fb1c1fc24fcf3a88d4fa85200d1d8b04f483f4ef -size 15107 +oid sha256:7edfafa0555092e33fe013a8130878ffa4cc97c34d1cd617bc71bb03bd5d194c +size 19535 diff --git a/EndlessVendetta/Content/Gadgets/ReconGadgets/VisionLink/VisionLinkViewPortBG.uasset b/EndlessVendetta/Content/Gadgets/ReconGadgets/VisionLink/VisionLinkViewPortBG.uasset index c31bec52..47adc792 100644 --- a/EndlessVendetta/Content/Gadgets/ReconGadgets/VisionLink/VisionLinkViewPortBG.uasset +++ b/EndlessVendetta/Content/Gadgets/ReconGadgets/VisionLink/VisionLinkViewPortBG.uasset @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:fd673d7b47c8310bbae47b765919076a4b73cc20813122a3904f97950973435c -size 45518 +oid sha256:b2a0267c4ceb00701b79abff52a736e5a2a001237b1000565794517852d0f647 +size 45613 diff --git a/EndlessVendetta/Content/Gadgets/ReconGadgets/VisionLink/WatchFaceBGImage.uasset b/EndlessVendetta/Content/Gadgets/ReconGadgets/VisionLink/WatchFaceBGImage.uasset index d05f935a..0daf9a11 100644 --- a/EndlessVendetta/Content/Gadgets/ReconGadgets/VisionLink/WatchFaceBGImage.uasset +++ b/EndlessVendetta/Content/Gadgets/ReconGadgets/VisionLink/WatchFaceBGImage.uasset @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:afbeeb63e797939650edcf947c6d364fc2372b04290963f53cddc2025d7e4efa -size 19748 +oid sha256:da887885cdc8d543e4992f2e9e543c974427ce77414d85c5b1faa92bf13c2357 +size 19843 diff --git a/EndlessVendetta/Source/EndlessVendetta/AI/BTTask_AttackPlayer.cpp b/EndlessVendetta/Source/EndlessVendetta/AI/BTTask_AttackPlayer.cpp index 07db4b83..74b01095 100644 --- a/EndlessVendetta/Source/EndlessVendetta/AI/BTTask_AttackPlayer.cpp +++ b/EndlessVendetta/Source/EndlessVendetta/AI/BTTask_AttackPlayer.cpp @@ -19,6 +19,7 @@ EBTNodeResult::Type UBTTask_AttackPlayer::ExecuteTask(UBehaviorTreeComponent& Ow FVector const Origin = AIController->GetPawn()->GetActorLocation(); FVector const PlayerLocation = Blackboard->GetValueAsVector("TargetLocation"); DrawDebugLine(GetWorld(), Origin, PlayerLocation, FColor::Green, false, 1.f, 0, 1.f); + FinishLatentTask(OwnerComp, EBTNodeResult::Succeeded); return EBTNodeResult::Succeeded; } From e13e6d1bacac5f0d58f26a74f47f5653ca3680d3 Mon Sep 17 00:00:00 2001 From: PHILIP WHITE Date: Wed, 4 Oct 2023 01:49:10 +0100 Subject: [PATCH 055/112] Update Basic Enemy AI to Not Overlap with Friendlies --- .../Content/AI/Enemy/Basic/BP_BasicEnemyCharacter.uasset | 4 ++-- EndlessVendetta/Content/AI/Enemy/Basic/EQSB_Enemy.uasset | 3 +++ .../Content/AI/Enemy/Basic/EQS_EnemyFindCover.uasset | 4 ++-- .../Levels/EnemyAITest/B/AZ/GX8EY01G00J28SE17R0FJV.uasset | 4 ++-- .../Levels/EnemyAITest/E/PJ/BY6E8JXZSRNMAW3DFHRHRJ.uasset | 3 +++ .../Source/EndlessVendetta/AI/AI_EnemyController.cpp | 2 +- 6 files changed, 13 insertions(+), 7 deletions(-) create mode 100644 EndlessVendetta/Content/AI/Enemy/Basic/EQSB_Enemy.uasset create mode 100644 EndlessVendetta/Content/__ExternalActors__/Levels/EnemyAITest/E/PJ/BY6E8JXZSRNMAW3DFHRHRJ.uasset diff --git a/EndlessVendetta/Content/AI/Enemy/Basic/BP_BasicEnemyCharacter.uasset b/EndlessVendetta/Content/AI/Enemy/Basic/BP_BasicEnemyCharacter.uasset index ee381207..894c9059 100644 --- a/EndlessVendetta/Content/AI/Enemy/Basic/BP_BasicEnemyCharacter.uasset +++ b/EndlessVendetta/Content/AI/Enemy/Basic/BP_BasicEnemyCharacter.uasset @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:f5a7fcd4447476e36ad777f4db7b6e5898905b85f6fa1bb8b193a98ec26066dc -size 32684 +oid sha256:0cce34a40f6aed425749f0c271aa6ba31b8bfea2ffafb3446559e374f0676b4b +size 32990 diff --git a/EndlessVendetta/Content/AI/Enemy/Basic/EQSB_Enemy.uasset b/EndlessVendetta/Content/AI/Enemy/Basic/EQSB_Enemy.uasset new file mode 100644 index 00000000..436112d7 --- /dev/null +++ b/EndlessVendetta/Content/AI/Enemy/Basic/EQSB_Enemy.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:978aab3035ae3876cef293be990751ff0a4966d407f62262698a530862855320 +size 19419 diff --git a/EndlessVendetta/Content/AI/Enemy/Basic/EQS_EnemyFindCover.uasset b/EndlessVendetta/Content/AI/Enemy/Basic/EQS_EnemyFindCover.uasset index 31dcfb1a..d8fa1226 100644 --- a/EndlessVendetta/Content/AI/Enemy/Basic/EQS_EnemyFindCover.uasset +++ b/EndlessVendetta/Content/AI/Enemy/Basic/EQS_EnemyFindCover.uasset @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:fcf182403f772d060b1f0c2997671ec13f6f6d32dd3817841a4f612ad87dff81 -size 10974 +oid sha256:115f268dcbca6bf144baa4bb0572ea023da1ffd074ae6e7dd445bd9f4cba645c +size 11772 diff --git a/EndlessVendetta/Content/__ExternalActors__/Levels/EnemyAITest/B/AZ/GX8EY01G00J28SE17R0FJV.uasset b/EndlessVendetta/Content/__ExternalActors__/Levels/EnemyAITest/B/AZ/GX8EY01G00J28SE17R0FJV.uasset index d4567926..60451f7e 100644 --- a/EndlessVendetta/Content/__ExternalActors__/Levels/EnemyAITest/B/AZ/GX8EY01G00J28SE17R0FJV.uasset +++ b/EndlessVendetta/Content/__ExternalActors__/Levels/EnemyAITest/B/AZ/GX8EY01G00J28SE17R0FJV.uasset @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:bcadae2018380b51ecd7bea3850566c6b0013ea6acb8ad1cdb8a0f4307fbc65c -size 5230 +oid sha256:c7cb8357ffc004ebe77fee2fef237bde524e9a64befca078884785e9762c654c +size 5440 diff --git a/EndlessVendetta/Content/__ExternalActors__/Levels/EnemyAITest/E/PJ/BY6E8JXZSRNMAW3DFHRHRJ.uasset b/EndlessVendetta/Content/__ExternalActors__/Levels/EnemyAITest/E/PJ/BY6E8JXZSRNMAW3DFHRHRJ.uasset new file mode 100644 index 00000000..93f0eeb7 --- /dev/null +++ b/EndlessVendetta/Content/__ExternalActors__/Levels/EnemyAITest/E/PJ/BY6E8JXZSRNMAW3DFHRHRJ.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:7b6617a297705f0f5de3dd5a3a85b65bb6984399bbacc3863b84e88df64cd01e +size 5115 diff --git a/EndlessVendetta/Source/EndlessVendetta/AI/AI_EnemyController.cpp b/EndlessVendetta/Source/EndlessVendetta/AI/AI_EnemyController.cpp index 94ef8372..6e0b0ec2 100644 --- a/EndlessVendetta/Source/EndlessVendetta/AI/AI_EnemyController.cpp +++ b/EndlessVendetta/Source/EndlessVendetta/AI/AI_EnemyController.cpp @@ -15,7 +15,7 @@ AAI_EnemyController::AAI_EnemyController(FObjectInitializer const& ObjectInitial { // Set this actor to call Tick() every frame. You can turn this off to improve performance if you don't need it. PrimaryActorTick.bCanEverTick = true; - + SetGenericTeamId(FGenericTeamId(1)); SetupPerceptionSystem(); } From 44e25b8472dfee24766b1d1ebb6d6a8849e40d26 Mon Sep 17 00:00:00 2001 From: PHILIP WHITE Date: Wed, 4 Oct 2023 02:25:27 +0100 Subject: [PATCH 056/112] Add Companion Character for Generic Base --- EndlessVendetta/Content/AI/EQSB_Enemy.uasset | 3 + EndlessVendetta/Content/AI/EQSB_Player.uasset | 3 + EndlessVendetta/Content/AI/EQS_Test.uasset | 3 + .../Content/AI/Enemy/Basic/EQSB_Enemy.uasset | 3 - .../Content/AI/Enemy/Basic/EQSB_Player.uasset | 3 - .../AI/Enemy/Basic/EQS_EnemyFindCover.uasset | 4 +- .../Content/AI/Enemy/Basic/EQS_Test.uasset | 3 - .../B/AZ/GX8EY01G00J28SE17R0FJV.uasset | 4 +- .../E/PJ/BY6E8JXZSRNMAW3DFHRHRJ.uasset | 4 +- .../AI/AI_CompanionController.cpp | 85 +++++++++++++++++++ .../AI/AI_CompanionController.h | 36 ++++++++ .../EndlessVendetta/AI/AI_EnemyController.cpp | 2 +- .../EndlessVendetta/AI/CompanionCharacter.cpp | 50 +++++++++++ .../EndlessVendetta/AI/CompanionCharacter.h | 38 +++++++++ 14 files changed, 225 insertions(+), 16 deletions(-) create mode 100644 EndlessVendetta/Content/AI/EQSB_Enemy.uasset create mode 100644 EndlessVendetta/Content/AI/EQSB_Player.uasset create mode 100644 EndlessVendetta/Content/AI/EQS_Test.uasset delete mode 100644 EndlessVendetta/Content/AI/Enemy/Basic/EQSB_Enemy.uasset delete mode 100644 EndlessVendetta/Content/AI/Enemy/Basic/EQSB_Player.uasset delete mode 100644 EndlessVendetta/Content/AI/Enemy/Basic/EQS_Test.uasset create mode 100644 EndlessVendetta/Source/EndlessVendetta/AI/AI_CompanionController.cpp create mode 100644 EndlessVendetta/Source/EndlessVendetta/AI/AI_CompanionController.h create mode 100644 EndlessVendetta/Source/EndlessVendetta/AI/CompanionCharacter.cpp create mode 100644 EndlessVendetta/Source/EndlessVendetta/AI/CompanionCharacter.h diff --git a/EndlessVendetta/Content/AI/EQSB_Enemy.uasset b/EndlessVendetta/Content/AI/EQSB_Enemy.uasset new file mode 100644 index 00000000..39744dd3 --- /dev/null +++ b/EndlessVendetta/Content/AI/EQSB_Enemy.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d9fafb5ea724311d8a706eb8f12493e004ab343735895a80be1811e2caa95f64 +size 18966 diff --git a/EndlessVendetta/Content/AI/EQSB_Player.uasset b/EndlessVendetta/Content/AI/EQSB_Player.uasset new file mode 100644 index 00000000..65abdba4 --- /dev/null +++ b/EndlessVendetta/Content/AI/EQSB_Player.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:92ebb9e1566806ef68b6d274fa0a1ebd629b71d24c87c36024db0720213cdc8b +size 17638 diff --git a/EndlessVendetta/Content/AI/EQS_Test.uasset b/EndlessVendetta/Content/AI/EQS_Test.uasset new file mode 100644 index 00000000..d6184a2f --- /dev/null +++ b/EndlessVendetta/Content/AI/EQS_Test.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:0d7fcae1638292db5530edb7c1a864ecfedc45f339b8bbf85f86a78754f1ac4a +size 24150 diff --git a/EndlessVendetta/Content/AI/Enemy/Basic/EQSB_Enemy.uasset b/EndlessVendetta/Content/AI/Enemy/Basic/EQSB_Enemy.uasset deleted file mode 100644 index 436112d7..00000000 --- a/EndlessVendetta/Content/AI/Enemy/Basic/EQSB_Enemy.uasset +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:978aab3035ae3876cef293be990751ff0a4966d407f62262698a530862855320 -size 19419 diff --git a/EndlessVendetta/Content/AI/Enemy/Basic/EQSB_Player.uasset b/EndlessVendetta/Content/AI/Enemy/Basic/EQSB_Player.uasset deleted file mode 100644 index a1e8f59b..00000000 --- a/EndlessVendetta/Content/AI/Enemy/Basic/EQSB_Player.uasset +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:4da78b93d151ff916a8b62f09f88ce28b8efeb76a9d1d468a6e56f95d50a711d -size 17987 diff --git a/EndlessVendetta/Content/AI/Enemy/Basic/EQS_EnemyFindCover.uasset b/EndlessVendetta/Content/AI/Enemy/Basic/EQS_EnemyFindCover.uasset index d8fa1226..ae3f1455 100644 --- a/EndlessVendetta/Content/AI/Enemy/Basic/EQS_EnemyFindCover.uasset +++ b/EndlessVendetta/Content/AI/Enemy/Basic/EQS_EnemyFindCover.uasset @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:115f268dcbca6bf144baa4bb0572ea023da1ffd074ae6e7dd445bd9f4cba645c -size 11772 +oid sha256:9e53cfdf2c62f71a8e9cf4533df7a333c33ddec1b9b830b7c85434c2dad50b3c +size 11760 diff --git a/EndlessVendetta/Content/AI/Enemy/Basic/EQS_Test.uasset b/EndlessVendetta/Content/AI/Enemy/Basic/EQS_Test.uasset deleted file mode 100644 index eb8c4663..00000000 --- a/EndlessVendetta/Content/AI/Enemy/Basic/EQS_Test.uasset +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:5f5b2ddf1641fad4bf9b75104089070dd382ab3b630619aa5cbb0fb19e215f22 -size 22729 diff --git a/EndlessVendetta/Content/__ExternalActors__/Levels/EnemyAITest/B/AZ/GX8EY01G00J28SE17R0FJV.uasset b/EndlessVendetta/Content/__ExternalActors__/Levels/EnemyAITest/B/AZ/GX8EY01G00J28SE17R0FJV.uasset index 60451f7e..b1ec8842 100644 --- a/EndlessVendetta/Content/__ExternalActors__/Levels/EnemyAITest/B/AZ/GX8EY01G00J28SE17R0FJV.uasset +++ b/EndlessVendetta/Content/__ExternalActors__/Levels/EnemyAITest/B/AZ/GX8EY01G00J28SE17R0FJV.uasset @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:c7cb8357ffc004ebe77fee2fef237bde524e9a64befca078884785e9762c654c -size 5440 +oid sha256:b846a25931a6e0277f004c0f41c52eb17b7ea951697783592186c6cb01904bfc +size 5216 diff --git a/EndlessVendetta/Content/__ExternalActors__/Levels/EnemyAITest/E/PJ/BY6E8JXZSRNMAW3DFHRHRJ.uasset b/EndlessVendetta/Content/__ExternalActors__/Levels/EnemyAITest/E/PJ/BY6E8JXZSRNMAW3DFHRHRJ.uasset index 93f0eeb7..4abdf431 100644 --- a/EndlessVendetta/Content/__ExternalActors__/Levels/EnemyAITest/E/PJ/BY6E8JXZSRNMAW3DFHRHRJ.uasset +++ b/EndlessVendetta/Content/__ExternalActors__/Levels/EnemyAITest/E/PJ/BY6E8JXZSRNMAW3DFHRHRJ.uasset @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:7b6617a297705f0f5de3dd5a3a85b65bb6984399bbacc3863b84e88df64cd01e -size 5115 +oid sha256:cfb0f1718ab71a979c83b7884652cb8b9a757abf7c2e17c1d3b356f1ef4228f7 +size 5313 diff --git a/EndlessVendetta/Source/EndlessVendetta/AI/AI_CompanionController.cpp b/EndlessVendetta/Source/EndlessVendetta/AI/AI_CompanionController.cpp new file mode 100644 index 00000000..5ca23fe3 --- /dev/null +++ b/EndlessVendetta/Source/EndlessVendetta/AI/AI_CompanionController.cpp @@ -0,0 +1,85 @@ +// Fill out your copyright notice in the Description page of Project Settings. + + +#include "AI_CompanionController.h" + +#include "AI_EnemyController.h" +#include "CompanionCharacter.h" +#include "EndlessVendetta/EndlessVendettaCharacter.h" +#include "Perception/AIPerceptionComponent.h" +#include "Perception/AISenseConfig_Sight.h" + + +AAI_CompanionController::AAI_CompanionController(FObjectInitializer const& ObjectInitializer) +{ + // Set this actor to call Tick() every frame. You can turn this off to improve performance if you don't need it. + PrimaryActorTick.bCanEverTick = true; + AAIController::SetGenericTeamId(FGenericTeamId(0)); + SetupPerceptionSystem(); +} + +// Called when the game starts or when spawned +void AAI_CompanionController::BeginPlay() +{ + Super::BeginPlay(); +} + +void AAI_CompanionController::OnPossess(APawn* InPawn) +{ + Super::OnPossess(InPawn); + if (const ACompanionCharacter* CompanionCharacter = Cast(InPawn)) + { + if (UBehaviorTree* const BehaviorTree = CompanionCharacter->GetBehaviorTree()) + { + UBlackboardComponent* TempBlackboardPtr; + UseBlackboard(BehaviorTree->BlackboardAsset, TempBlackboardPtr); + Blackboard = TempBlackboardPtr; + RunBehaviorTree(BehaviorTree); + } + } +} + +// Called every frame +void AAI_CompanionController::Tick(float DeltaTime) +{ + Super::Tick(DeltaTime); +} + +void AAI_CompanionController::SetupPerceptionSystem() +{ + SightConfig = CreateDefaultSubobject(TEXT("Sight Config")); + if (IsValid(SightConfig)) + { + SetPerceptionComponent(*CreateDefaultSubobject(TEXT("Perception Component"))); + SightConfig->SightRadius = 2000.0f; + SightConfig->LoseSightRadius = 2100.0f; + SightConfig->PeripheralVisionAngleDegrees = 70.0f; + SightConfig->SetMaxAge(20.0f); + SightConfig->AutoSuccessRangeFromLastSeenLocation = 520.0f; + SightConfig->DetectionByAffiliation.bDetectEnemies = true; + SightConfig->DetectionByAffiliation.bDetectFriendlies = true; + SightConfig->DetectionByAffiliation.bDetectNeutrals = true; + GetPerceptionComponent()->SetDominantSense(*SightConfig->GetSenseImplementation()); + GetPerceptionComponent()->OnTargetPerceptionUpdated.AddDynamic(this, &AAI_CompanionController::OnTargetPerceptionUpdated); + GetPerceptionComponent()->ConfigureSense(*SightConfig); + } +} + +void AAI_CompanionController::OnTargetPerceptionUpdated(AActor* Actor, FAIStimulus const Stimulus) +{ + if (AEndlessVendettaCharacter* const PlayerCharacter = Cast(Actor)) + { + // if (Stimulus.WasSuccessfullySensed()) + // { + // GetBlackboardComponent()->SetValueAsObject("TargetPlayer", Actor); + // GetBlackboardComponent()->SetValueAsVector("TargetLocation", Stimulus.StimulusLocation); + // GetBlackboardComponent()->SetValueAsBool("CanSeePlayer", true); + // } + // else + // { + // GetBlackboardComponent()->ClearValue("TargetActor"); + // GetBlackboardComponent()->ClearValue("TargetLocation"); + // GetBlackboardComponent()->SetValueAsBool("CanSeePlayer", false); + // } + } +} diff --git a/EndlessVendetta/Source/EndlessVendetta/AI/AI_CompanionController.h b/EndlessVendetta/Source/EndlessVendetta/AI/AI_CompanionController.h new file mode 100644 index 00000000..3fb57dc2 --- /dev/null +++ b/EndlessVendetta/Source/EndlessVendetta/AI/AI_CompanionController.h @@ -0,0 +1,36 @@ +// Fill out your copyright notice in the Description page of Project Settings. + +#pragma once + +#include "CoreMinimal.h" +#include "AIController.h" +#include "AI_CompanionController.generated.h" + +struct FAIStimulus; + +UCLASS() +class ENDLESSVENDETTA_API AAI_CompanionController : public AAIController +{ + GENERATED_BODY() + +public: + // Sets default values for this actor's properties + explicit AAI_CompanionController(FObjectInitializer const& ObjectInitializer); + +protected: + // Called when the game starts or when spawned + virtual void BeginPlay() override; + virtual void OnPossess(APawn* InPawn) override; + +public: + // Called every frame + virtual void Tick(float DeltaTime) override; + +private: + class UAISenseConfig_Sight* SightConfig; + void SetupPerceptionSystem(); + + UFUNCTION() + void OnTargetPerceptionUpdated(AActor* Actor, FAIStimulus const Stimulus); + +}; diff --git a/EndlessVendetta/Source/EndlessVendetta/AI/AI_EnemyController.cpp b/EndlessVendetta/Source/EndlessVendetta/AI/AI_EnemyController.cpp index 6e0b0ec2..f29f3d4a 100644 --- a/EndlessVendetta/Source/EndlessVendetta/AI/AI_EnemyController.cpp +++ b/EndlessVendetta/Source/EndlessVendetta/AI/AI_EnemyController.cpp @@ -15,7 +15,7 @@ AAI_EnemyController::AAI_EnemyController(FObjectInitializer const& ObjectInitial { // Set this actor to call Tick() every frame. You can turn this off to improve performance if you don't need it. PrimaryActorTick.bCanEverTick = true; - SetGenericTeamId(FGenericTeamId(1)); + AAIController::SetGenericTeamId(FGenericTeamId(1)); SetupPerceptionSystem(); } diff --git a/EndlessVendetta/Source/EndlessVendetta/AI/CompanionCharacter.cpp b/EndlessVendetta/Source/EndlessVendetta/AI/CompanionCharacter.cpp new file mode 100644 index 00000000..5475ee04 --- /dev/null +++ b/EndlessVendetta/Source/EndlessVendetta/AI/CompanionCharacter.cpp @@ -0,0 +1,50 @@ +// Fill out your copyright notice in the Description page of Project Settings. + + +#include "CompanionCharacter.h" + +#include "Perception/AIPerceptionStimuliSourceComponent.h" +#include "Perception/AISense_Sight.h" + + +// Sets default values +ACompanionCharacter::ACompanionCharacter() +{ + // Set this character to call Tick() every frame. You can turn this off to improve performance if you don't need it. + PrimaryActorTick.bCanEverTick = true; +} + +// Called when the game starts or when spawned +void ACompanionCharacter::BeginPlay() +{ + Super::BeginPlay(); + +} + +// Called every frame +void ACompanionCharacter::Tick(float DeltaTime) +{ + Super::Tick(DeltaTime); +} + +// Called to bind functionality to input +void ACompanionCharacter::SetupPlayerInputComponent(UInputComponent* PlayerInputComponent) +{ + Super::SetupPlayerInputComponent(PlayerInputComponent); +} + +UBehaviorTree* ACompanionCharacter::GetBehaviorTree() const +{ + return BehaviorTree; +} + +void ACompanionCharacter::SetupStimuliSourceComponent() +{ + StimuliSourceComponent = CreateDefaultSubobject(TEXT("Stimuli Source Component")); + if (IsValid(StimuliSourceComponent)) + { + StimuliSourceComponent->RegisterForSense(TSubclassOf()); + StimuliSourceComponent->RegisterWithPerceptionSystem(); + } +} + diff --git a/EndlessVendetta/Source/EndlessVendetta/AI/CompanionCharacter.h b/EndlessVendetta/Source/EndlessVendetta/AI/CompanionCharacter.h new file mode 100644 index 00000000..0a484bbc --- /dev/null +++ b/EndlessVendetta/Source/EndlessVendetta/AI/CompanionCharacter.h @@ -0,0 +1,38 @@ +// Fill out your copyright notice in the Description page of Project Settings. + +#pragma once + +#include "CoreMinimal.h" +#include "BehaviorTree/BehaviorTree.h" +#include "GameFramework/Character.h" +#include "CompanionCharacter.generated.h" + +UCLASS() +class ENDLESSVENDETTA_API ACompanionCharacter : public ACharacter +{ + GENERATED_BODY() + +public: + // Sets default values for this character's properties + ACompanionCharacter(); + +protected: + // Called when the game starts or when spawned + virtual void BeginPlay() override; + + UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "AI") + UBehaviorTree* BehaviorTree; +public: + // Called every frame + virtual void Tick(float DeltaTime) override; + + // Called to bind functionality to input + virtual void SetupPlayerInputComponent(class UInputComponent* PlayerInputComponent) override; + + UFUNCTION(BlueprintCallable, Category = "AI") + UBehaviorTree* GetBehaviorTree() const; + +private: + class UAIPerceptionStimuliSourceComponent* StimuliSourceComponent; + void SetupStimuliSourceComponent(); +}; From c69b61c65042315973cea0baf7d75c524ea5e46c Mon Sep 17 00:00:00 2001 From: PHILIP WHITE Date: Wed, 4 Oct 2023 02:26:11 +0100 Subject: [PATCH 057/112] Add EQS, BP Companion Character for Companion Pathing --- .../Content/AI/Companion/Generic/BB_GenericCompanion.uasset | 3 +++ .../Content/AI/Companion/Generic/BT_GenericCompanion.uasset | 3 +++ .../Content/AI/Companion/Generic/CompanionCharacter.uasset | 3 +++ .../AI/Companion/Generic/EQS_FindCoverNearPlayer.uasset | 3 +++ .../Levels/EnemyAITest/A/UU/P4XZ4FDZKD5IXIWK3JDDDK.uasset | 3 +++ .../Levels/EnemyAITest/C/U2/RJOME4RGCN15IGVOBN2IPY.uasset | 3 +++ 6 files changed, 18 insertions(+) create mode 100644 EndlessVendetta/Content/AI/Companion/Generic/BB_GenericCompanion.uasset create mode 100644 EndlessVendetta/Content/AI/Companion/Generic/BT_GenericCompanion.uasset create mode 100644 EndlessVendetta/Content/AI/Companion/Generic/CompanionCharacter.uasset create mode 100644 EndlessVendetta/Content/AI/Companion/Generic/EQS_FindCoverNearPlayer.uasset create mode 100644 EndlessVendetta/Content/__ExternalActors__/Levels/EnemyAITest/A/UU/P4XZ4FDZKD5IXIWK3JDDDK.uasset create mode 100644 EndlessVendetta/Content/__ExternalActors__/Levels/EnemyAITest/C/U2/RJOME4RGCN15IGVOBN2IPY.uasset diff --git a/EndlessVendetta/Content/AI/Companion/Generic/BB_GenericCompanion.uasset b/EndlessVendetta/Content/AI/Companion/Generic/BB_GenericCompanion.uasset new file mode 100644 index 00000000..38798a46 --- /dev/null +++ b/EndlessVendetta/Content/AI/Companion/Generic/BB_GenericCompanion.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:eaedcee2488826c0cbd4c69646da5a3f0b12d6815971805e9ecfbbdf4bc1a2ce +size 2258 diff --git a/EndlessVendetta/Content/AI/Companion/Generic/BT_GenericCompanion.uasset b/EndlessVendetta/Content/AI/Companion/Generic/BT_GenericCompanion.uasset new file mode 100644 index 00000000..6fb83025 --- /dev/null +++ b/EndlessVendetta/Content/AI/Companion/Generic/BT_GenericCompanion.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:0a51c6e09ee9b960ab6f095ef348e94881cf58c2594520303790718cdbd2b12d +size 10480 diff --git a/EndlessVendetta/Content/AI/Companion/Generic/CompanionCharacter.uasset b/EndlessVendetta/Content/AI/Companion/Generic/CompanionCharacter.uasset new file mode 100644 index 00000000..1d6453bf --- /dev/null +++ b/EndlessVendetta/Content/AI/Companion/Generic/CompanionCharacter.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e98da72016a1ef89567571563bb8ddcb251370a7ae7f39b5a0ef17741de9154d +size 32421 diff --git a/EndlessVendetta/Content/AI/Companion/Generic/EQS_FindCoverNearPlayer.uasset b/EndlessVendetta/Content/AI/Companion/Generic/EQS_FindCoverNearPlayer.uasset new file mode 100644 index 00000000..6f4e7c66 --- /dev/null +++ b/EndlessVendetta/Content/AI/Companion/Generic/EQS_FindCoverNearPlayer.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:c7b6be5f989ea63aac50260d68dd846abb7a4a421a8d3fa81d193204c6514c68 +size 24886 diff --git a/EndlessVendetta/Content/__ExternalActors__/Levels/EnemyAITest/A/UU/P4XZ4FDZKD5IXIWK3JDDDK.uasset b/EndlessVendetta/Content/__ExternalActors__/Levels/EnemyAITest/A/UU/P4XZ4FDZKD5IXIWK3JDDDK.uasset new file mode 100644 index 00000000..c31f9729 --- /dev/null +++ b/EndlessVendetta/Content/__ExternalActors__/Levels/EnemyAITest/A/UU/P4XZ4FDZKD5IXIWK3JDDDK.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:cf054aae033d323e2dc383293f32913ba2abc9f97ae89368159c2b9eb8c7e8bd +size 5073 diff --git a/EndlessVendetta/Content/__ExternalActors__/Levels/EnemyAITest/C/U2/RJOME4RGCN15IGVOBN2IPY.uasset b/EndlessVendetta/Content/__ExternalActors__/Levels/EnemyAITest/C/U2/RJOME4RGCN15IGVOBN2IPY.uasset new file mode 100644 index 00000000..c7e7eb8a --- /dev/null +++ b/EndlessVendetta/Content/__ExternalActors__/Levels/EnemyAITest/C/U2/RJOME4RGCN15IGVOBN2IPY.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:fc0811871384ecf24f8ed7287814d09b40b34b84d18582e0a3dcd4273f9ac44d +size 5073 From af34f6a5870fbcdc63f820f2ecbdc221ad0a8448 Mon Sep 17 00:00:00 2001 From: PHILIP WHITE Date: Wed, 4 Oct 2023 02:30:47 +0100 Subject: [PATCH 058/112] Update Blackboard Key to Include Cover Location --- .../Content/AI/Companion/Generic/BB_GenericCompanion.uasset | 4 ++-- .../Levels/EnemyAITest/C/U2/RJOME4RGCN15IGVOBN2IPY.uasset | 3 --- 2 files changed, 2 insertions(+), 5 deletions(-) delete mode 100644 EndlessVendetta/Content/__ExternalActors__/Levels/EnemyAITest/C/U2/RJOME4RGCN15IGVOBN2IPY.uasset diff --git a/EndlessVendetta/Content/AI/Companion/Generic/BB_GenericCompanion.uasset b/EndlessVendetta/Content/AI/Companion/Generic/BB_GenericCompanion.uasset index 38798a46..13d036c4 100644 --- a/EndlessVendetta/Content/AI/Companion/Generic/BB_GenericCompanion.uasset +++ b/EndlessVendetta/Content/AI/Companion/Generic/BB_GenericCompanion.uasset @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:eaedcee2488826c0cbd4c69646da5a3f0b12d6815971805e9ecfbbdf4bc1a2ce -size 2258 +oid sha256:20197ccd89d5871cd395eac1941f9d29344e76e457d5ebd1200fd271f2ced360 +size 2627 diff --git a/EndlessVendetta/Content/__ExternalActors__/Levels/EnemyAITest/C/U2/RJOME4RGCN15IGVOBN2IPY.uasset b/EndlessVendetta/Content/__ExternalActors__/Levels/EnemyAITest/C/U2/RJOME4RGCN15IGVOBN2IPY.uasset deleted file mode 100644 index c7e7eb8a..00000000 --- a/EndlessVendetta/Content/__ExternalActors__/Levels/EnemyAITest/C/U2/RJOME4RGCN15IGVOBN2IPY.uasset +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:fc0811871384ecf24f8ed7287814d09b40b34b84d18582e0a3dcd4273f9ac44d -size 5073 From a2035ffe2fac8b09a06f381032fd015026788ba6 Mon Sep 17 00:00:00 2001 From: Marcel Hara Date: Wed, 4 Oct 2023 15:45:43 +0100 Subject: [PATCH 059/112] Cleaned up & added Weapon kick shake (non-universal) --- .../AssaultRifles/BP_BaseAssaultRifle.uasset | 4 ++-- .../Blueprints/BaseWeapons/BP_BaseWeapon.uasset | 4 ++-- .../BaseWeapons/BP_GunCameraShake.uasset | 3 +++ .../Pistols/BP_BasePistolWeapon.uasset | 4 ++-- .../0/3Z/SNIBJQL2L6YHSC7MTTK1C2.uasset | 2 +- .../WeaponSystem/BaseWeaponClass.cpp | 16 ++++++++++++++-- .../WeaponSystem/BaseWeaponClass.h | 15 ++++++++------- .../EndlessVendetta/WeaponSystem/PistolClass.cpp | 6 ++++++ .../EndlessVendetta/WeaponSystem/PistolClass.h | 2 ++ 9 files changed, 40 insertions(+), 16 deletions(-) create mode 100644 EndlessVendetta/Content/FirstPerson/Blueprints/BaseWeapons/BP_GunCameraShake.uasset diff --git a/EndlessVendetta/Content/FirstPerson/Blueprints/BaseWeapons/AssaultRifles/BP_BaseAssaultRifle.uasset b/EndlessVendetta/Content/FirstPerson/Blueprints/BaseWeapons/AssaultRifles/BP_BaseAssaultRifle.uasset index 998ce21b..d62958e4 100644 --- a/EndlessVendetta/Content/FirstPerson/Blueprints/BaseWeapons/AssaultRifles/BP_BaseAssaultRifle.uasset +++ b/EndlessVendetta/Content/FirstPerson/Blueprints/BaseWeapons/AssaultRifles/BP_BaseAssaultRifle.uasset @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:6c3599c78d84a6895d06de8ce3697a6aefd517ac0105d041cab6f5124090bb3b -size 35834 +oid sha256:fc4caf67df37627a19c4b9f2c464d84cb293574db45f018458c0d59e0a15ba1a +size 37750 diff --git a/EndlessVendetta/Content/FirstPerson/Blueprints/BaseWeapons/BP_BaseWeapon.uasset b/EndlessVendetta/Content/FirstPerson/Blueprints/BaseWeapons/BP_BaseWeapon.uasset index f09d81f5..e4f50596 100644 --- a/EndlessVendetta/Content/FirstPerson/Blueprints/BaseWeapons/BP_BaseWeapon.uasset +++ b/EndlessVendetta/Content/FirstPerson/Blueprints/BaseWeapons/BP_BaseWeapon.uasset @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:694f084a31b369305b9cf0e066786a624f73721bf819d3823177703341f0b98c -size 28902 +oid sha256:77b4872fd2fde68620f3fb539222718cbe2c66160a956c6373d3650c58a9bf88 +size 29117 diff --git a/EndlessVendetta/Content/FirstPerson/Blueprints/BaseWeapons/BP_GunCameraShake.uasset b/EndlessVendetta/Content/FirstPerson/Blueprints/BaseWeapons/BP_GunCameraShake.uasset new file mode 100644 index 00000000..a24df98a --- /dev/null +++ b/EndlessVendetta/Content/FirstPerson/Blueprints/BaseWeapons/BP_GunCameraShake.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:5b5bc4f06eaeb74c61b627c02ff6e49dedeebfe047bc79fbfa8941b25c4674ef +size 7209 diff --git a/EndlessVendetta/Content/FirstPerson/Blueprints/BaseWeapons/Pistols/BP_BasePistolWeapon.uasset b/EndlessVendetta/Content/FirstPerson/Blueprints/BaseWeapons/Pistols/BP_BasePistolWeapon.uasset index a1f00f47..1a6ea0df 100644 --- a/EndlessVendetta/Content/FirstPerson/Blueprints/BaseWeapons/Pistols/BP_BasePistolWeapon.uasset +++ b/EndlessVendetta/Content/FirstPerson/Blueprints/BaseWeapons/Pistols/BP_BasePistolWeapon.uasset @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:69e0dd14f07413220251048a5a7bb322eebd9e2d9362dc29bab3d3de096a9a82 -size 29337 +oid sha256:668c94fe648e9fde608e3a07b193f42087fddc44d0e76ec3e4705be642f78679 +size 29493 diff --git a/EndlessVendetta/Content/__ExternalActors__/FirstPerson/Maps/GunMechanicTester/0/3Z/SNIBJQL2L6YHSC7MTTK1C2.uasset b/EndlessVendetta/Content/__ExternalActors__/FirstPerson/Maps/GunMechanicTester/0/3Z/SNIBJQL2L6YHSC7MTTK1C2.uasset index b70bdb74..3f91ee89 100644 --- a/EndlessVendetta/Content/__ExternalActors__/FirstPerson/Maps/GunMechanicTester/0/3Z/SNIBJQL2L6YHSC7MTTK1C2.uasset +++ b/EndlessVendetta/Content/__ExternalActors__/FirstPerson/Maps/GunMechanicTester/0/3Z/SNIBJQL2L6YHSC7MTTK1C2.uasset @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:51fdff374c4c25c321646b9315bc5286b1ddc89511a597538bf96bea96222e02 +oid sha256:f9dd9531bbf28069122709420605ec7c6478ddea44b642b28f016b2349a05597 size 5061 diff --git a/EndlessVendetta/Source/EndlessVendetta/WeaponSystem/BaseWeaponClass.cpp b/EndlessVendetta/Source/EndlessVendetta/WeaponSystem/BaseWeaponClass.cpp index 5bcf7c6a..0c3cafba 100644 --- a/EndlessVendetta/Source/EndlessVendetta/WeaponSystem/BaseWeaponClass.cpp +++ b/EndlessVendetta/Source/EndlessVendetta/WeaponSystem/BaseWeaponClass.cpp @@ -2,7 +2,11 @@ #include "BaseWeaponClass.h" + +#include "AIHelpers.h" +#include "GeneratedCodeHelpers.h" #include "EndlessVendetta/EndlessVendettaCharacter.h" +#include "Kismet/KismetMathLibrary.h" #include "Components/CapsuleComponent.h" #include "Kismet/GameplayStatics.h" @@ -28,6 +32,11 @@ void ABaseWeaponClass::BeginPlay() GunStartArrow = Cast(actorComp); break; } + + if (!playerControllerRef) + { + playerControllerRef = UGameplayStatics::GetPlayerController(GetWorld(), 0); + } } @@ -35,6 +44,7 @@ void ABaseWeaponClass::BeginPlay() void ABaseWeaponClass::Tick(float DeltaTime) { Super::Tick(DeltaTime); + } void ABaseWeaponClass::ClickDetectionTimer() @@ -47,6 +57,7 @@ void ABaseWeaponClass::CancelFire() GetWorldTimerManager().ClearTimer(timerHandle); } + void ABaseWeaponClass::Fire() { FHitResult outHit; @@ -63,11 +74,12 @@ void ABaseWeaponClass::Fire() } GetWorld()->LineTraceSingleByChannel(outHit, traceStart, traceEnd, ECC_Visibility, collisionParams); //Debug line to see where the trace hit - DrawDebugLine(this->GetWorld(), traceStart, traceEnd, FColor::Red, true, 500.0f, 0U, 5.f); + DrawDebugLine(this->GetWorld(), traceStart, traceEnd, FColor::Red, false, 5.0f, 0U, 2.5f); + playerControllerRef->PlayerCameraManager->StartCameraShake(CameraShakeClass, 1); ClickDetectionTimer(); if (outHit.bBlockingHit) { UE_LOG(LogTemp, Display, TEXT("hit item: %s"), *outHit.GetActor()->GetName()); } } - + diff --git a/EndlessVendetta/Source/EndlessVendetta/WeaponSystem/BaseWeaponClass.h b/EndlessVendetta/Source/EndlessVendetta/WeaponSystem/BaseWeaponClass.h index 67be17fc..a32c90bc 100644 --- a/EndlessVendetta/Source/EndlessVendetta/WeaponSystem/BaseWeaponClass.h +++ b/EndlessVendetta/Source/EndlessVendetta/WeaponSystem/BaseWeaponClass.h @@ -5,6 +5,7 @@ #include "CoreMinimal.h" #include "WeaponItemClass.h" #include "Components/ArrowComponent.h" +#include "Kismet/KismetMathLibrary.h" #include "BaseWeaponClass.generated.h" class AEndlessVendettaCharacter; @@ -43,7 +44,7 @@ public: UTexture2D* WeaponImage; UFUNCTION(BlueprintCallable, Category = "Weapons") - void Fire(); + virtual void Fire(); UFUNCTION(BlueprintCallable, Category = "Weapons") void ClickDetectionTimer(); @@ -53,10 +54,16 @@ public: UPROPERTY(VisibleAnywhere) ACharacter* player; + UPROPERTY() + APlayerController* playerControllerRef; + FTimerHandle timerHandle; bool bFirstBulletShot = false; + UPROPERTY(EditAnywhere) + TSubclassOf CameraShakeClass; + private: UArrowComponent* GunStartArrow; @@ -64,10 +71,4 @@ private: UPROPERTY(EditAnywhere) float BulletDistance; - - //Add HoldFire functionality after pistol is complete for holding fire for pistol and make it start spraying innacuratly. - - // UFUNCTION(BlueprintCallable, Category = "Weapons") - // void HoldFire(); - }; diff --git a/EndlessVendetta/Source/EndlessVendetta/WeaponSystem/PistolClass.cpp b/EndlessVendetta/Source/EndlessVendetta/WeaponSystem/PistolClass.cpp index c40b9fdc..2b7dc95a 100644 --- a/EndlessVendetta/Source/EndlessVendetta/WeaponSystem/PistolClass.cpp +++ b/EndlessVendetta/Source/EndlessVendetta/WeaponSystem/PistolClass.cpp @@ -24,3 +24,9 @@ void APistolClass::Tick(float DeltaTime) Super::Tick(DeltaTime); } +void APistolClass::Fire() +{ + Super::Fire(); + UE_LOG(LogTemp, Display, TEXT("Testing overrides: Pistol has been fired")); +} + diff --git a/EndlessVendetta/Source/EndlessVendetta/WeaponSystem/PistolClass.h b/EndlessVendetta/Source/EndlessVendetta/WeaponSystem/PistolClass.h index 4ad676b2..ca85b67e 100644 --- a/EndlessVendetta/Source/EndlessVendetta/WeaponSystem/PistolClass.h +++ b/EndlessVendetta/Source/EndlessVendetta/WeaponSystem/PistolClass.h @@ -22,4 +22,6 @@ protected: public: // Called every frame virtual void Tick(float DeltaTime) override; + + virtual void Fire() override; }; From 2f0a49faafc1fde775a30236699d6e58c943d83d Mon Sep 17 00:00:00 2001 From: Marcel Hara Date: Wed, 4 Oct 2023 16:11:31 +0100 Subject: [PATCH 060/112] Added base weapon camera shake class --- .../WeaponSystem/BaseWeaponClass.cpp | 1 + .../WeaponSystem/WeaponCameraShake.cpp | 4 ++++ .../WeaponSystem/WeaponCameraShake.h | 16 ++++++++++++++++ 3 files changed, 21 insertions(+) create mode 100644 EndlessVendetta/Source/EndlessVendetta/WeaponSystem/WeaponCameraShake.cpp create mode 100644 EndlessVendetta/Source/EndlessVendetta/WeaponSystem/WeaponCameraShake.h diff --git a/EndlessVendetta/Source/EndlessVendetta/WeaponSystem/BaseWeaponClass.cpp b/EndlessVendetta/Source/EndlessVendetta/WeaponSystem/BaseWeaponClass.cpp index 0c3cafba..92a56a31 100644 --- a/EndlessVendetta/Source/EndlessVendetta/WeaponSystem/BaseWeaponClass.cpp +++ b/EndlessVendetta/Source/EndlessVendetta/WeaponSystem/BaseWeaponClass.cpp @@ -60,6 +60,7 @@ void ABaseWeaponClass::CancelFire() void ABaseWeaponClass::Fire() { + //do damage fallof based off distance FHitResult outHit; FVector traceStart; FVector traceEnd; diff --git a/EndlessVendetta/Source/EndlessVendetta/WeaponSystem/WeaponCameraShake.cpp b/EndlessVendetta/Source/EndlessVendetta/WeaponSystem/WeaponCameraShake.cpp new file mode 100644 index 00000000..03a594a9 --- /dev/null +++ b/EndlessVendetta/Source/EndlessVendetta/WeaponSystem/WeaponCameraShake.cpp @@ -0,0 +1,4 @@ +// Fill out your copyright notice in the Description page of Project Settings. + + +#include "WeaponCameraShake.h" diff --git a/EndlessVendetta/Source/EndlessVendetta/WeaponSystem/WeaponCameraShake.h b/EndlessVendetta/Source/EndlessVendetta/WeaponSystem/WeaponCameraShake.h new file mode 100644 index 00000000..604113b5 --- /dev/null +++ b/EndlessVendetta/Source/EndlessVendetta/WeaponSystem/WeaponCameraShake.h @@ -0,0 +1,16 @@ +// Fill out your copyright notice in the Description page of Project Settings. + +#pragma once + +#include "CoreMinimal.h" + +#include "WeaponCameraShake.generated.h" + +/** + * + */ +UCLASS() +class ENDLESSVENDETTA_API UWeaponCameraShake : public UCameraShakeBase +{ + GENERATED_BODY() +}; From e9cacdb064dc6c01419afa186691ae5a013ae08a Mon Sep 17 00:00:00 2001 From: MARCEL HARA Date: Thu, 5 Oct 2023 10:48:44 +0100 Subject: [PATCH 061/112] Added temp crosshair to level --- .../FirstPerson/Blueprints/BP_FirstPersonCharacter.uasset | 4 ++-- .../Blueprints/BaseWeapons/Images/crosshair.uasset | 3 +++ ...-god-hates-us-all-album-cover-11562902578sasayvkjg8.uasset | 3 +++ .../Content/FirstPerson/Blueprints/WBP_Crosshair.uasset | 3 +++ .../Content/StarterContent/Architecture/Floor_400x400.uasset | 4 ++-- .../StarterContent/HDRI/HDRI_Epic_Courtyard_Daylight.uasset | 4 ++-- .../GadgetClasses/Recon/VisionLink/VisionLinkEnemyLOSTest.cpp | 4 ++-- 7 files changed, 17 insertions(+), 8 deletions(-) create mode 100644 EndlessVendetta/Content/FirstPerson/Blueprints/BaseWeapons/Images/crosshair.uasset create mode 100644 EndlessVendetta/Content/FirstPerson/Blueprints/BaseWeapons/Images/fadenkreuz-transparent-crosshair-slayer-god-hates-us-all-album-cover-11562902578sasayvkjg8.uasset create mode 100644 EndlessVendetta/Content/FirstPerson/Blueprints/WBP_Crosshair.uasset diff --git a/EndlessVendetta/Content/FirstPerson/Blueprints/BP_FirstPersonCharacter.uasset b/EndlessVendetta/Content/FirstPerson/Blueprints/BP_FirstPersonCharacter.uasset index 62e16495..0e677a52 100644 --- a/EndlessVendetta/Content/FirstPerson/Blueprints/BP_FirstPersonCharacter.uasset +++ b/EndlessVendetta/Content/FirstPerson/Blueprints/BP_FirstPersonCharacter.uasset @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:059c5de9ae43a57d471949157f8c1e59bcbc14c1ca117627ccb9d1b27036c180 -size 27098 +oid sha256:a64df34489d5d5452a5b7310e944fd0cb2ea1a2a52eacf2c7bcf9a8d03aadb2c +size 40999 diff --git a/EndlessVendetta/Content/FirstPerson/Blueprints/BaseWeapons/Images/crosshair.uasset b/EndlessVendetta/Content/FirstPerson/Blueprints/BaseWeapons/Images/crosshair.uasset new file mode 100644 index 00000000..aeb09d75 --- /dev/null +++ b/EndlessVendetta/Content/FirstPerson/Blueprints/BaseWeapons/Images/crosshair.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:110eea3093bb784d7c237753fcd6f029cc8d3b388991f886a9752d6960195e14 +size 12511 diff --git a/EndlessVendetta/Content/FirstPerson/Blueprints/BaseWeapons/Images/fadenkreuz-transparent-crosshair-slayer-god-hates-us-all-album-cover-11562902578sasayvkjg8.uasset b/EndlessVendetta/Content/FirstPerson/Blueprints/BaseWeapons/Images/fadenkreuz-transparent-crosshair-slayer-god-hates-us-all-album-cover-11562902578sasayvkjg8.uasset new file mode 100644 index 00000000..2caf2972 --- /dev/null +++ b/EndlessVendetta/Content/FirstPerson/Blueprints/BaseWeapons/Images/fadenkreuz-transparent-crosshair-slayer-god-hates-us-all-album-cover-11562902578sasayvkjg8.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:df1398829f499b8a95bd2a912851aa613d1b26519496f1bc38a58db91c2a7730 +size 62044 diff --git a/EndlessVendetta/Content/FirstPerson/Blueprints/WBP_Crosshair.uasset b/EndlessVendetta/Content/FirstPerson/Blueprints/WBP_Crosshair.uasset new file mode 100644 index 00000000..bdd28701 --- /dev/null +++ b/EndlessVendetta/Content/FirstPerson/Blueprints/WBP_Crosshair.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a3c0a70c5b68ec66372ae8e29abcb76deb385319f24202e43395c9061b3d0f8a +size 24854 diff --git a/EndlessVendetta/Content/StarterContent/Architecture/Floor_400x400.uasset b/EndlessVendetta/Content/StarterContent/Architecture/Floor_400x400.uasset index ec9ee977..c2a34afc 100644 --- a/EndlessVendetta/Content/StarterContent/Architecture/Floor_400x400.uasset +++ b/EndlessVendetta/Content/StarterContent/Architecture/Floor_400x400.uasset @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:d4e6c0e1dad79feeaa5078889de9cf4c6753f1e77cf7d17a3eb3de082b91d4ae -size 14831 +oid sha256:4c0ecf0ac0702cc2bd355ec050232a61c49e10f102448efbeb735a51824adef6 +size 14948 diff --git a/EndlessVendetta/Content/StarterContent/HDRI/HDRI_Epic_Courtyard_Daylight.uasset b/EndlessVendetta/Content/StarterContent/HDRI/HDRI_Epic_Courtyard_Daylight.uasset index 0f990580..48901753 100644 --- a/EndlessVendetta/Content/StarterContent/HDRI/HDRI_Epic_Courtyard_Daylight.uasset +++ b/EndlessVendetta/Content/StarterContent/HDRI/HDRI_Epic_Courtyard_Daylight.uasset @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:bc35eb2d43a47427d30aba0196f9eac90d089dd3abca319528c5d25c83510d0d -size 72364642 +oid sha256:2f245999e23fa99035343927a6662fb51718dfc13fbb549ffb43d3f94b47e375 +size 66790690 diff --git a/EndlessVendetta/Source/EndlessVendetta/GadgetSystem/GadgetClasses/Recon/VisionLink/VisionLinkEnemyLOSTest.cpp b/EndlessVendetta/Source/EndlessVendetta/GadgetSystem/GadgetClasses/Recon/VisionLink/VisionLinkEnemyLOSTest.cpp index b81b4d54..feac557c 100644 --- a/EndlessVendetta/Source/EndlessVendetta/GadgetSystem/GadgetClasses/Recon/VisionLink/VisionLinkEnemyLOSTest.cpp +++ b/EndlessVendetta/Source/EndlessVendetta/GadgetSystem/GadgetClasses/Recon/VisionLink/VisionLinkEnemyLOSTest.cpp @@ -57,11 +57,11 @@ void AVisionLinkEnemyLOSTest::TestLOS(TArray EnemiesInLink, AActor* LOS return; } - for (AActor* Enemy : OverlappingEnemies) + /*for (AActor* Enemy : OverlappingEnemies) { FRotator LookAtRotation = UKismetMathLibrary::FindLookAtRotation(LOSActor->GetActorLocation(), Enemy->GetActorLocation()); UE_LOG(LogTemp, Warning, TEXT("Look at Rotation: %f"), LookAtRotation.Yaw); - } + }*/ Destroy(); From fed628ed770d7a4c07eafc97fa646ed6e8768c49 Mon Sep 17 00:00:00 2001 From: MARCEL HARA Date: Thu, 5 Oct 2023 12:24:18 +0100 Subject: [PATCH 062/112] Added weapon recoil for all future guns --- .../AssaultRifles/BP_BaseAssaultRifle.uasset | 4 +- .../BaseWeapons/BP_BaseWeapon.uasset | 4 +- .../Pistols/BP_BasePistolWeapon.uasset | 4 +- .../WeaonRecoil/AssaultRecoilPattern.uasset | 3 + .../0/3Z/SNIBJQL2L6YHSC7MTTK1C2.uasset | 2 +- .../WeaponSystem/BaseWeaponClass.cpp | 76 ++++++++++++++++++- .../WeaponSystem/BaseWeaponClass.h | 44 +++++++++++ 7 files changed, 128 insertions(+), 9 deletions(-) create mode 100644 EndlessVendetta/Content/FirstPerson/Blueprints/BaseWeapons/WeaonRecoil/AssaultRecoilPattern.uasset diff --git a/EndlessVendetta/Content/FirstPerson/Blueprints/BaseWeapons/AssaultRifles/BP_BaseAssaultRifle.uasset b/EndlessVendetta/Content/FirstPerson/Blueprints/BaseWeapons/AssaultRifles/BP_BaseAssaultRifle.uasset index d62958e4..ef248e2a 100644 --- a/EndlessVendetta/Content/FirstPerson/Blueprints/BaseWeapons/AssaultRifles/BP_BaseAssaultRifle.uasset +++ b/EndlessVendetta/Content/FirstPerson/Blueprints/BaseWeapons/AssaultRifles/BP_BaseAssaultRifle.uasset @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:fc4caf67df37627a19c4b9f2c464d84cb293574db45f018458c0d59e0a15ba1a -size 37750 +oid sha256:cff6a88ce5641de43b7168dbe156dc6c743108fd4fe22dd89647224cdc5249fc +size 37804 diff --git a/EndlessVendetta/Content/FirstPerson/Blueprints/BaseWeapons/BP_BaseWeapon.uasset b/EndlessVendetta/Content/FirstPerson/Blueprints/BaseWeapons/BP_BaseWeapon.uasset index e4f50596..eb786d5b 100644 --- a/EndlessVendetta/Content/FirstPerson/Blueprints/BaseWeapons/BP_BaseWeapon.uasset +++ b/EndlessVendetta/Content/FirstPerson/Blueprints/BaseWeapons/BP_BaseWeapon.uasset @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:77b4872fd2fde68620f3fb539222718cbe2c66160a956c6373d3650c58a9bf88 -size 29117 +oid sha256:c12dd919c67095a4cdc8439b9a0e8c25d5d65566abbd657d7b43bcdf6dac24b8 +size 29704 diff --git a/EndlessVendetta/Content/FirstPerson/Blueprints/BaseWeapons/Pistols/BP_BasePistolWeapon.uasset b/EndlessVendetta/Content/FirstPerson/Blueprints/BaseWeapons/Pistols/BP_BasePistolWeapon.uasset index 1a6ea0df..ea240160 100644 --- a/EndlessVendetta/Content/FirstPerson/Blueprints/BaseWeapons/Pistols/BP_BasePistolWeapon.uasset +++ b/EndlessVendetta/Content/FirstPerson/Blueprints/BaseWeapons/Pistols/BP_BasePistolWeapon.uasset @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:668c94fe648e9fde608e3a07b193f42087fddc44d0e76ec3e4705be642f78679 -size 29493 +oid sha256:71b1463641785fe268bbea7f26c1e1d12cb0703f47b2ec1c50afd19ed3f061ed +size 30046 diff --git a/EndlessVendetta/Content/FirstPerson/Blueprints/BaseWeapons/WeaonRecoil/AssaultRecoilPattern.uasset b/EndlessVendetta/Content/FirstPerson/Blueprints/BaseWeapons/WeaonRecoil/AssaultRecoilPattern.uasset new file mode 100644 index 00000000..6fa60a25 --- /dev/null +++ b/EndlessVendetta/Content/FirstPerson/Blueprints/BaseWeapons/WeaonRecoil/AssaultRecoilPattern.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:5f4479a0f7cd596b9f9d263ba4898b07487d8e065ec43bd14dd4ea87d239695d +size 2006 diff --git a/EndlessVendetta/Content/__ExternalActors__/FirstPerson/Maps/GunMechanicTester/0/3Z/SNIBJQL2L6YHSC7MTTK1C2.uasset b/EndlessVendetta/Content/__ExternalActors__/FirstPerson/Maps/GunMechanicTester/0/3Z/SNIBJQL2L6YHSC7MTTK1C2.uasset index 3f91ee89..82931fab 100644 --- a/EndlessVendetta/Content/__ExternalActors__/FirstPerson/Maps/GunMechanicTester/0/3Z/SNIBJQL2L6YHSC7MTTK1C2.uasset +++ b/EndlessVendetta/Content/__ExternalActors__/FirstPerson/Maps/GunMechanicTester/0/3Z/SNIBJQL2L6YHSC7MTTK1C2.uasset @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:f9dd9531bbf28069122709420605ec7c6478ddea44b642b28f016b2349a05597 +oid sha256:1beca35b5b67f492442adf27a1933f51133cce10ed01c3ae69b21a371efe6c4e size 5061 diff --git a/EndlessVendetta/Source/EndlessVendetta/WeaponSystem/BaseWeaponClass.cpp b/EndlessVendetta/Source/EndlessVendetta/WeaponSystem/BaseWeaponClass.cpp index 92a56a31..170ad5ab 100644 --- a/EndlessVendetta/Source/EndlessVendetta/WeaponSystem/BaseWeaponClass.cpp +++ b/EndlessVendetta/Source/EndlessVendetta/WeaponSystem/BaseWeaponClass.cpp @@ -44,9 +44,81 @@ void ABaseWeaponClass::BeginPlay() void ABaseWeaponClass::Tick(float DeltaTime) { Super::Tick(DeltaTime); - + + if (player) + { + ApplyRecoil(DeltaTime); + } } + + + +// Recoil Handling // +void ABaseWeaponClass::GenerateRecoilVector() +{ + float angle = FMath::RandRange(recoilMaxAngleLeft, -recoilMaxAngleRight); //randomg recoil vector angle between left and right + float recMag = recoilMagnitude * 252.f; //converting degrees to controller units + float tempMag = -FMath::RandRange(recMag * recoilMinMultiplier, recMag); // recoil magnitude + + recoilResultYaw = FMath::Sin(FMath::DegreesToRadians(angle)); + recoilResultPitch = FMath::Cos(FMath::DegreesToRadians(angle)); + + //scaling direction to magnitude + recoilResultPitch *= -tempMag; + recoilResultYaw *= tempMag; + + //reset recoil to 0 of curve + recoilTime = 0; +} + +void ABaseWeaponClass::ApplyRecoil(float DeltaTime) +{ + if (recoilTime < 0.3) + { + float amplitude = RecoilCurve->GetFloatValue(recoilTime); //get current value of curve in time + recoilTime += DeltaTime; + player->AddControllerPitchInput(GetRecoilPitch(amplitude, recoilTime)); + player->AddControllerYawInput(GetRecoilYaw(amplitude, recoilTime)); + UpdateSamples(amplitude, recoilTime); + } +} + +void ABaseWeaponClass::nullSamples() +{ + recoilCurvet = 0; + recoilCurvez1 = 0; +} + +float ABaseWeaponClass::GetRecoilPitch(float Amp, float Time) +{ + //Using the trapez method and we are getting the surface under the curve, each trapezoid consist of square and right triangle + float lower = recoilCurvez1 < Amp ? recoilCurvez1 : Amp; //get which point is common for both triangle and square of trapezoid + //lower point + float mult = (Time - recoilCurvet) * lower; //getting surface of square + mult += (Time - recoilCurvet) * (Amp - recoilCurvez1) / 2.0f; //getting and adding surface of triangle + return (recoilResultPitch * mult) / playerControllerRef->InputPitchScale_DEPRECATED; //calculating and return recoil force for current frame +} + + +//Same as getrecoilpitch +float ABaseWeaponClass::GetRecoilYaw(float Amp, float Time) +{ + float lower = recoilCurvez1 < Amp ? recoilCurvez1 : Amp; + float mult = (Time - recoilCurvet) * lower; + + mult += (Time - recoilCurvet) * (Amp - recoilCurvez1) / 2.0f; + return (recoilResultYaw * mult) / playerControllerRef->InputYawScale_DEPRECATED; +} + +void ABaseWeaponClass::UpdateSamples(float Amp, float Time) +{ + recoilCurvez1 = Amp; + recoilCurvet = Time; +} + + +// Fire handling // void ABaseWeaponClass::ClickDetectionTimer() { GetWorldTimerManager().SetTimer(timerHandle, this, &ABaseWeaponClass::Fire, 1 / FireRate, false); @@ -57,7 +129,6 @@ void ABaseWeaponClass::CancelFire() GetWorldTimerManager().ClearTimer(timerHandle); } - void ABaseWeaponClass::Fire() { //do damage fallof based off distance @@ -77,6 +148,7 @@ void ABaseWeaponClass::Fire() //Debug line to see where the trace hit DrawDebugLine(this->GetWorld(), traceStart, traceEnd, FColor::Red, false, 5.0f, 0U, 2.5f); playerControllerRef->PlayerCameraManager->StartCameraShake(CameraShakeClass, 1); + GenerateRecoilVector(); ClickDetectionTimer(); if (outHit.bBlockingHit) { diff --git a/EndlessVendetta/Source/EndlessVendetta/WeaponSystem/BaseWeaponClass.h b/EndlessVendetta/Source/EndlessVendetta/WeaponSystem/BaseWeaponClass.h index a32c90bc..b7e3b654 100644 --- a/EndlessVendetta/Source/EndlessVendetta/WeaponSystem/BaseWeaponClass.h +++ b/EndlessVendetta/Source/EndlessVendetta/WeaponSystem/BaseWeaponClass.h @@ -24,6 +24,23 @@ protected: // Called when the game starts or when spawned virtual void BeginPlay() override; + void GenerateRecoilVector(); + + void ApplyRecoil(float DeltaTime); + + void nullSamples(); + + //recoil previous curve + float recoilCurvez1 = 0; + + //recoil previous curve time + float recoilCurvet = 0; + + float recoilTime = 0; + + float recoilResultPitch = 0; + float recoilResultYaw = 0; + public: // Called every frame virtual void Tick(float DeltaTime) override; @@ -64,6 +81,33 @@ public: UPROPERTY(EditAnywhere) TSubclassOf CameraShakeClass; + /* How far the gun goes up*/ + UPROPERTY(EditAnywhere, Category = "Recoil") + float recoilMagnitude; + + UPROPERTY(EditAnywhere, Category = "Recoil") + float recoilMaxAngleLeft; + + UPROPERTY(EditAnywhere, Category = "Recoil") + float recoilMaxAngleRight; + + UPROPERTY(EditAnywhere, Category = "Recoil") + float recoilMinMultiplier; + + UPROPERTY(EditAnywhere, Category = "Recoil") + class UCurveFloat* RecoilCurve; + + UFUNCTION(BlueprintCallable, Category = "Recoil") + float GetRecoilPitch(float Amp, float Time); + + UFUNCTION(BlueprintCallable, Category = "Recoil") + float GetRecoilYaw(float Amp, float Time); + + UFUNCTION(BlueprintCallable, Category = "Recoil") + void UpdateSamples(float Amp, float Time); + + + private: UArrowComponent* GunStartArrow; From ac4662a9f31c3449ce0a8ca934fef4b71e7eebc7 Mon Sep 17 00:00:00 2001 From: Louis Horne Date: Thu, 5 Oct 2023 18:52:21 +0100 Subject: [PATCH 063/112] Add Blockout for Tutrorial Started the blockout for the tutorial level. --- .../Characters/Mannequins/Animations/ABP_Manny.uasset | 3 +++ .../Characters/Mannequins/Animations/ABP_Quinn.uasset | 3 +++ .../Mannequins/Animations/Manny/BS_MM_WalkRun.uasset | 3 +++ .../Characters/Mannequins/Animations/Manny/MM_Fall_Loop.uasset | 3 +++ .../Characters/Mannequins/Animations/Manny/MM_Idle.uasset | 3 +++ .../Characters/Mannequins/Animations/Manny/MM_Jump.uasset | 3 +++ .../Characters/Mannequins/Animations/Manny/MM_Land.uasset | 3 +++ .../Characters/Mannequins/Animations/Manny/MM_Run_Fwd.uasset | 3 +++ .../Characters/Mannequins/Animations/Manny/MM_Walk_Fwd.uasset | 3 +++ .../Mannequins/Animations/Manny/MM_Walk_InPlace.uasset | 3 +++ .../Mannequins/Animations/Quinn/BS_MF_Unarmed_WalkRun.uasset | 3 +++ .../Characters/Mannequins/Animations/Quinn/MF_Idle.uasset | 3 +++ .../Characters/Mannequins/Animations/Quinn/MF_Run_Fwd.uasset | 3 +++ .../Characters/Mannequins/Animations/Quinn/MF_Walk_Fwd.uasset | 3 +++ .../Mannequins/Materials/Functions/CA_Mannequin.uasset | 3 +++ .../Mannequins/Materials/Functions/ChromaticCurve.uasset | 3 +++ .../Mannequins/Materials/Functions/MF_Diffraction.uasset | 3 +++ .../Mannequins/Materials/Functions/MF_logo3layers.uasset | 3 +++ .../Mannequins/Materials/Functions/ML_BaseColorFallOff.uasset | 3 +++ .../Mannequins/Materials/Instances/Manny/MI_Manny_01.uasset | 3 +++ .../Mannequins/Materials/Instances/Manny/MI_Manny_02.uasset | 3 +++ .../Mannequins/Materials/Instances/Quinn/MI_Quinn_01.uasset | 3 +++ .../Mannequins/Materials/Instances/Quinn/MI_Quinn_02.uasset | 3 +++ .../Characters/Mannequins/Materials/M_Mannequin.uasset | 3 +++ .../Characters/Mannequins/Meshes/Mannequin_LODSettings.uasset | 3 +++ .../ControlRig/Characters/Mannequins/Meshes/SKM_Manny.uasset | 3 +++ .../Characters/Mannequins/Meshes/SKM_Manny_Simple.uasset | 3 +++ .../ControlRig/Characters/Mannequins/Meshes/SKM_Quinn.uasset | 3 +++ .../Characters/Mannequins/Meshes/SKM_Quinn_Simple.uasset | 3 +++ .../Characters/Mannequins/Meshes/SK_Mannequin.uasset | 3 +++ .../Characters/Mannequins/Rigs/ABP_Manny_PostProcess.uasset | 3 +++ .../Characters/Mannequins/Rigs/ABP_Quinn_PostProcess.uasset | 3 +++ .../Characters/Mannequins/Rigs/CR_Mannequin_BasicBiped.uasset | 3 +++ .../Characters/Mannequins/Rigs/CR_Mannequin_BasicFootIK.uasset | 3 +++ .../Characters/Mannequins/Rigs/CR_Mannequin_Body.uasset | 3 +++ .../Characters/Mannequins/Rigs/CR_Mannequin_Procedural.uasset | 3 +++ .../ControlRig/Characters/Mannequins/Rigs/IK_Mannequin.uasset | 3 +++ .../ControlRig/Characters/Mannequins/Rigs/PA_Mannequin.uasset | 3 +++ .../Mannequins/Rigs/Poses/Manny/Manny_calf_l_anim.uasset | 3 +++ .../Mannequins/Rigs/Poses/Manny/Manny_calf_l_pose.uasset | 3 +++ .../Mannequins/Rigs/Poses/Manny/Manny_calf_r_anim.uasset | 3 +++ .../Mannequins/Rigs/Poses/Manny/Manny_calf_r_pose.uasset | 3 +++ .../Mannequins/Rigs/Poses/Manny/Manny_clavicle_l_anim.uasset | 3 +++ .../Mannequins/Rigs/Poses/Manny/Manny_clavicle_l_pose.uasset | 3 +++ .../Mannequins/Rigs/Poses/Manny/Manny_clavicle_r_anim.uasset | 3 +++ .../Mannequins/Rigs/Poses/Manny/Manny_clavicle_r_pose.uasset | 3 +++ .../Mannequins/Rigs/Poses/Manny/Manny_foot_l_anim.uasset | 3 +++ .../Mannequins/Rigs/Poses/Manny/Manny_foot_l_pose.uasset | 3 +++ .../Mannequins/Rigs/Poses/Manny/Manny_foot_r_anim.uasset | 3 +++ .../Mannequins/Rigs/Poses/Manny/Manny_foot_r_pose.uasset | 3 +++ .../Mannequins/Rigs/Poses/Manny/Manny_hand_l_anim.uasset | 3 +++ .../Mannequins/Rigs/Poses/Manny/Manny_hand_l_pose.uasset | 3 +++ .../Mannequins/Rigs/Poses/Manny/Manny_hand_r_anim.uasset | 3 +++ .../Mannequins/Rigs/Poses/Manny/Manny_hand_r_pose.uasset | 3 +++ .../Mannequins/Rigs/Poses/Manny/Manny_lowerarm_l_anim.uasset | 3 +++ .../Mannequins/Rigs/Poses/Manny/Manny_lowerarm_l_pose.uasset | 3 +++ .../Mannequins/Rigs/Poses/Manny/Manny_lowerarm_r_anim.uasset | 3 +++ .../Mannequins/Rigs/Poses/Manny/Manny_lowerarm_r_pose.uasset | 3 +++ .../Mannequins/Rigs/Poses/Manny/Manny_thigh_l_anim.uasset | 3 +++ .../Mannequins/Rigs/Poses/Manny/Manny_thigh_l_pose.uasset | 3 +++ .../Mannequins/Rigs/Poses/Manny/Manny_thigh_r_anim.uasset | 3 +++ .../Mannequins/Rigs/Poses/Manny/Manny_thigh_r_pose.uasset | 3 +++ .../Mannequins/Rigs/Poses/Manny/Manny_upperarm_l_anim.uasset | 3 +++ .../Mannequins/Rigs/Poses/Manny/Manny_upperarm_l_pose.uasset | 3 +++ .../Mannequins/Rigs/Poses/Manny/Manny_upperarm_r_anim.uasset | 3 +++ .../Mannequins/Rigs/Poses/Manny/Manny_upperarm_r_pose.uasset | 3 +++ .../Mannequins/Rigs/Poses/Quinn/Quinn_calf_l_anim.uasset | 3 +++ .../Mannequins/Rigs/Poses/Quinn/Quinn_calf_l_pose.uasset | 3 +++ .../Mannequins/Rigs/Poses/Quinn/Quinn_calf_r_anim.uasset | 3 +++ .../Mannequins/Rigs/Poses/Quinn/Quinn_calf_r_pose.uasset | 3 +++ .../Mannequins/Rigs/Poses/Quinn/Quinn_clavicle_l_anim.uasset | 3 +++ .../Mannequins/Rigs/Poses/Quinn/Quinn_clavicle_l_pose.uasset | 3 +++ .../Mannequins/Rigs/Poses/Quinn/Quinn_clavicle_r_anim.uasset | 3 +++ .../Mannequins/Rigs/Poses/Quinn/Quinn_clavicle_r_pose.uasset | 3 +++ .../Mannequins/Rigs/Poses/Quinn/Quinn_foot_l_anim.uasset | 3 +++ .../Mannequins/Rigs/Poses/Quinn/Quinn_foot_l_pose.uasset | 3 +++ .../Mannequins/Rigs/Poses/Quinn/Quinn_foot_r_anim.uasset | 3 +++ .../Mannequins/Rigs/Poses/Quinn/Quinn_foot_r_pose.uasset | 3 +++ .../Mannequins/Rigs/Poses/Quinn/Quinn_hand_l_anim.uasset | 3 +++ .../Mannequins/Rigs/Poses/Quinn/Quinn_hand_l_pose.uasset | 3 +++ .../Mannequins/Rigs/Poses/Quinn/Quinn_hand_r_anim.uasset | 3 +++ .../Mannequins/Rigs/Poses/Quinn/Quinn_hand_r_pose.uasset | 3 +++ .../Mannequins/Rigs/Poses/Quinn/Quinn_lowerarm_l_anim.uasset | 3 +++ .../Mannequins/Rigs/Poses/Quinn/Quinn_lowerarm_l_pose.uasset | 3 +++ .../Mannequins/Rigs/Poses/Quinn/Quinn_lowerarm_r_anim.uasset | 3 +++ .../Mannequins/Rigs/Poses/Quinn/Quinn_lowerarm_r_pose.uasset | 3 +++ .../Mannequins/Rigs/Poses/Quinn/Quinn_thigh_l_anim.uasset | 3 +++ .../Mannequins/Rigs/Poses/Quinn/Quinn_thigh_l_pose.uasset | 3 +++ .../Mannequins/Rigs/Poses/Quinn/Quinn_thigh_r_anim.uasset | 3 +++ .../Mannequins/Rigs/Poses/Quinn/Quinn_thigh_r_pose.uasset | 3 +++ .../Mannequins/Rigs/Poses/Quinn/Quinn_upperarm_l_anim.uasset | 3 +++ .../Mannequins/Rigs/Poses/Quinn/Quinn_upperarm_l_pose.uasset | 3 +++ .../Mannequins/Rigs/Poses/Quinn/Quinn_upperarm_r_anim.uasset | 3 +++ .../Mannequins/Rigs/Poses/Quinn/Quinn_upperarm_r_pose.uasset | 3 +++ .../ControlRig/Characters/Mannequins/Rigs/RTG_Mannequin.uasset | 3 +++ .../Mannequins/Textures/Manny/T_Manny_01_ASAOPMASK_MSK.uasset | 3 +++ .../Characters/Mannequins/Textures/Manny/T_Manny_01_BN.uasset | 3 +++ .../Textures/Manny/T_Manny_01_CCRCCPlastic_MSK.uasset | 3 +++ .../Characters/Mannequins/Textures/Manny/T_Manny_01_D.uasset | 3 +++ .../Mannequins/Textures/Manny/T_Manny_01_MSR_MSK.uasset | 3 +++ .../Characters/Mannequins/Textures/Manny/T_Manny_01_N.uasset | 3 +++ .../Characters/Mannequins/Textures/Manny/T_Manny_01_Tan.uasset | 3 +++ .../Mannequins/Textures/Manny/T_Manny_02_ASAOPMASK_MSK.uasset | 3 +++ .../Characters/Mannequins/Textures/Manny/T_Manny_02_BN.uasset | 3 +++ .../Textures/Manny/T_Manny_02_CCRCCPlastic_MSK.uasset | 3 +++ .../Characters/Mannequins/Textures/Manny/T_Manny_02_D.uasset | 3 +++ .../Mannequins/Textures/Manny/T_Manny_02_MSR_MSK.uasset | 3 +++ .../Characters/Mannequins/Textures/Manny/T_Manny_02_N.uasset | 3 +++ .../Characters/Mannequins/Textures/Manny/T_Manny_02_Tan.uasset | 3 +++ .../Mannequins/Textures/Quinn/T_Quinn_01ID_BN.uasset | 3 +++ .../Characters/Mannequins/Textures/Quinn/T_Quinn_01ID_D.uasset | 3 +++ .../Mannequins/Textures/Quinn/T_Quinn_01ID_MSR_MSK.uasset | 3 +++ .../Characters/Mannequins/Textures/Quinn/T_Quinn_01ID_N.uasset | 3 +++ .../Mannequins/Textures/Quinn/T_Quinn_01ID_Tan.uasset | 3 +++ .../Mannequins/Textures/Quinn/T_Quinn_01_ASAOMASK_MSK.uasset | 3 +++ .../Textures/Quinn/T_Quinn_01_CCRCCPlastic_MSK.uasset | 3 +++ .../Mannequins/Textures/Quinn/T_Quinn_02ID_BN.uasset | 3 +++ .../Characters/Mannequins/Textures/Quinn/T_Quinn_02ID_D.uasset | 3 +++ .../Mannequins/Textures/Quinn/T_Quinn_02ID_MSR_MSK.uasset | 3 +++ .../Characters/Mannequins/Textures/Quinn/T_Quinn_02ID_N.uasset | 3 +++ .../Mannequins/Textures/Quinn/T_Quinn_02ID_Tan.uasset | 3 +++ .../Mannequins/Textures/Quinn/T_Quinn_02_ASAOMASK_MSK.uasset | 3 +++ .../Textures/Quinn/T_Quinn_02_CCRCCPlastic_MSK.uasset | 3 +++ .../Characters/Mannequins/Textures/Shared/T_UE_Logo_M.uasset | 3 +++ .../Content/LevelPrototyping/Scenes/TutorialHit.umap | 3 +++ .../Content/StarterContent/Architecture/Floor_400x400.uasset | 2 +- 126 files changed, 376 insertions(+), 1 deletion(-) create mode 100644 EndlessVendetta/Content/ControlRig/Characters/Mannequins/Animations/ABP_Manny.uasset create mode 100644 EndlessVendetta/Content/ControlRig/Characters/Mannequins/Animations/ABP_Quinn.uasset create mode 100644 EndlessVendetta/Content/ControlRig/Characters/Mannequins/Animations/Manny/BS_MM_WalkRun.uasset create mode 100644 EndlessVendetta/Content/ControlRig/Characters/Mannequins/Animations/Manny/MM_Fall_Loop.uasset create mode 100644 EndlessVendetta/Content/ControlRig/Characters/Mannequins/Animations/Manny/MM_Idle.uasset create mode 100644 EndlessVendetta/Content/ControlRig/Characters/Mannequins/Animations/Manny/MM_Jump.uasset create mode 100644 EndlessVendetta/Content/ControlRig/Characters/Mannequins/Animations/Manny/MM_Land.uasset create mode 100644 EndlessVendetta/Content/ControlRig/Characters/Mannequins/Animations/Manny/MM_Run_Fwd.uasset create mode 100644 EndlessVendetta/Content/ControlRig/Characters/Mannequins/Animations/Manny/MM_Walk_Fwd.uasset create mode 100644 EndlessVendetta/Content/ControlRig/Characters/Mannequins/Animations/Manny/MM_Walk_InPlace.uasset create mode 100644 EndlessVendetta/Content/ControlRig/Characters/Mannequins/Animations/Quinn/BS_MF_Unarmed_WalkRun.uasset create mode 100644 EndlessVendetta/Content/ControlRig/Characters/Mannequins/Animations/Quinn/MF_Idle.uasset create mode 100644 EndlessVendetta/Content/ControlRig/Characters/Mannequins/Animations/Quinn/MF_Run_Fwd.uasset create mode 100644 EndlessVendetta/Content/ControlRig/Characters/Mannequins/Animations/Quinn/MF_Walk_Fwd.uasset create mode 100644 EndlessVendetta/Content/ControlRig/Characters/Mannequins/Materials/Functions/CA_Mannequin.uasset create mode 100644 EndlessVendetta/Content/ControlRig/Characters/Mannequins/Materials/Functions/ChromaticCurve.uasset create mode 100644 EndlessVendetta/Content/ControlRig/Characters/Mannequins/Materials/Functions/MF_Diffraction.uasset create mode 100644 EndlessVendetta/Content/ControlRig/Characters/Mannequins/Materials/Functions/MF_logo3layers.uasset create mode 100644 EndlessVendetta/Content/ControlRig/Characters/Mannequins/Materials/Functions/ML_BaseColorFallOff.uasset create mode 100644 EndlessVendetta/Content/ControlRig/Characters/Mannequins/Materials/Instances/Manny/MI_Manny_01.uasset create mode 100644 EndlessVendetta/Content/ControlRig/Characters/Mannequins/Materials/Instances/Manny/MI_Manny_02.uasset create mode 100644 EndlessVendetta/Content/ControlRig/Characters/Mannequins/Materials/Instances/Quinn/MI_Quinn_01.uasset create mode 100644 EndlessVendetta/Content/ControlRig/Characters/Mannequins/Materials/Instances/Quinn/MI_Quinn_02.uasset create mode 100644 EndlessVendetta/Content/ControlRig/Characters/Mannequins/Materials/M_Mannequin.uasset create mode 100644 EndlessVendetta/Content/ControlRig/Characters/Mannequins/Meshes/Mannequin_LODSettings.uasset create mode 100644 EndlessVendetta/Content/ControlRig/Characters/Mannequins/Meshes/SKM_Manny.uasset create mode 100644 EndlessVendetta/Content/ControlRig/Characters/Mannequins/Meshes/SKM_Manny_Simple.uasset create mode 100644 EndlessVendetta/Content/ControlRig/Characters/Mannequins/Meshes/SKM_Quinn.uasset create mode 100644 EndlessVendetta/Content/ControlRig/Characters/Mannequins/Meshes/SKM_Quinn_Simple.uasset create mode 100644 EndlessVendetta/Content/ControlRig/Characters/Mannequins/Meshes/SK_Mannequin.uasset create mode 100644 EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/ABP_Manny_PostProcess.uasset create mode 100644 EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/ABP_Quinn_PostProcess.uasset create mode 100644 EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/CR_Mannequin_BasicBiped.uasset create mode 100644 EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/CR_Mannequin_BasicFootIK.uasset create mode 100644 EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/CR_Mannequin_Body.uasset create mode 100644 EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/CR_Mannequin_Procedural.uasset create mode 100644 EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/IK_Mannequin.uasset create mode 100644 EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/PA_Mannequin.uasset create mode 100644 EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/Poses/Manny/Manny_calf_l_anim.uasset create mode 100644 EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/Poses/Manny/Manny_calf_l_pose.uasset create mode 100644 EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/Poses/Manny/Manny_calf_r_anim.uasset create mode 100644 EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/Poses/Manny/Manny_calf_r_pose.uasset create mode 100644 EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/Poses/Manny/Manny_clavicle_l_anim.uasset create mode 100644 EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/Poses/Manny/Manny_clavicle_l_pose.uasset create mode 100644 EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/Poses/Manny/Manny_clavicle_r_anim.uasset create mode 100644 EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/Poses/Manny/Manny_clavicle_r_pose.uasset create mode 100644 EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/Poses/Manny/Manny_foot_l_anim.uasset create mode 100644 EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/Poses/Manny/Manny_foot_l_pose.uasset create mode 100644 EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/Poses/Manny/Manny_foot_r_anim.uasset create mode 100644 EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/Poses/Manny/Manny_foot_r_pose.uasset create mode 100644 EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/Poses/Manny/Manny_hand_l_anim.uasset create mode 100644 EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/Poses/Manny/Manny_hand_l_pose.uasset create mode 100644 EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/Poses/Manny/Manny_hand_r_anim.uasset create mode 100644 EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/Poses/Manny/Manny_hand_r_pose.uasset create mode 100644 EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/Poses/Manny/Manny_lowerarm_l_anim.uasset create mode 100644 EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/Poses/Manny/Manny_lowerarm_l_pose.uasset create mode 100644 EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/Poses/Manny/Manny_lowerarm_r_anim.uasset create mode 100644 EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/Poses/Manny/Manny_lowerarm_r_pose.uasset create mode 100644 EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/Poses/Manny/Manny_thigh_l_anim.uasset create mode 100644 EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/Poses/Manny/Manny_thigh_l_pose.uasset create mode 100644 EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/Poses/Manny/Manny_thigh_r_anim.uasset create mode 100644 EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/Poses/Manny/Manny_thigh_r_pose.uasset create mode 100644 EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/Poses/Manny/Manny_upperarm_l_anim.uasset create mode 100644 EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/Poses/Manny/Manny_upperarm_l_pose.uasset create mode 100644 EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/Poses/Manny/Manny_upperarm_r_anim.uasset create mode 100644 EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/Poses/Manny/Manny_upperarm_r_pose.uasset create mode 100644 EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/Poses/Quinn/Quinn_calf_l_anim.uasset create mode 100644 EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/Poses/Quinn/Quinn_calf_l_pose.uasset create mode 100644 EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/Poses/Quinn/Quinn_calf_r_anim.uasset create mode 100644 EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/Poses/Quinn/Quinn_calf_r_pose.uasset create mode 100644 EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/Poses/Quinn/Quinn_clavicle_l_anim.uasset create mode 100644 EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/Poses/Quinn/Quinn_clavicle_l_pose.uasset create mode 100644 EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/Poses/Quinn/Quinn_clavicle_r_anim.uasset create mode 100644 EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/Poses/Quinn/Quinn_clavicle_r_pose.uasset create mode 100644 EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/Poses/Quinn/Quinn_foot_l_anim.uasset create mode 100644 EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/Poses/Quinn/Quinn_foot_l_pose.uasset create mode 100644 EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/Poses/Quinn/Quinn_foot_r_anim.uasset create mode 100644 EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/Poses/Quinn/Quinn_foot_r_pose.uasset create mode 100644 EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/Poses/Quinn/Quinn_hand_l_anim.uasset create mode 100644 EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/Poses/Quinn/Quinn_hand_l_pose.uasset create mode 100644 EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/Poses/Quinn/Quinn_hand_r_anim.uasset create mode 100644 EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/Poses/Quinn/Quinn_hand_r_pose.uasset create mode 100644 EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/Poses/Quinn/Quinn_lowerarm_l_anim.uasset create mode 100644 EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/Poses/Quinn/Quinn_lowerarm_l_pose.uasset create mode 100644 EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/Poses/Quinn/Quinn_lowerarm_r_anim.uasset create mode 100644 EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/Poses/Quinn/Quinn_lowerarm_r_pose.uasset create mode 100644 EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/Poses/Quinn/Quinn_thigh_l_anim.uasset create mode 100644 EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/Poses/Quinn/Quinn_thigh_l_pose.uasset create mode 100644 EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/Poses/Quinn/Quinn_thigh_r_anim.uasset create mode 100644 EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/Poses/Quinn/Quinn_thigh_r_pose.uasset create mode 100644 EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/Poses/Quinn/Quinn_upperarm_l_anim.uasset create mode 100644 EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/Poses/Quinn/Quinn_upperarm_l_pose.uasset create mode 100644 EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/Poses/Quinn/Quinn_upperarm_r_anim.uasset create mode 100644 EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/Poses/Quinn/Quinn_upperarm_r_pose.uasset create mode 100644 EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/RTG_Mannequin.uasset create mode 100644 EndlessVendetta/Content/ControlRig/Characters/Mannequins/Textures/Manny/T_Manny_01_ASAOPMASK_MSK.uasset create mode 100644 EndlessVendetta/Content/ControlRig/Characters/Mannequins/Textures/Manny/T_Manny_01_BN.uasset create mode 100644 EndlessVendetta/Content/ControlRig/Characters/Mannequins/Textures/Manny/T_Manny_01_CCRCCPlastic_MSK.uasset create mode 100644 EndlessVendetta/Content/ControlRig/Characters/Mannequins/Textures/Manny/T_Manny_01_D.uasset create mode 100644 EndlessVendetta/Content/ControlRig/Characters/Mannequins/Textures/Manny/T_Manny_01_MSR_MSK.uasset create mode 100644 EndlessVendetta/Content/ControlRig/Characters/Mannequins/Textures/Manny/T_Manny_01_N.uasset create mode 100644 EndlessVendetta/Content/ControlRig/Characters/Mannequins/Textures/Manny/T_Manny_01_Tan.uasset create mode 100644 EndlessVendetta/Content/ControlRig/Characters/Mannequins/Textures/Manny/T_Manny_02_ASAOPMASK_MSK.uasset create mode 100644 EndlessVendetta/Content/ControlRig/Characters/Mannequins/Textures/Manny/T_Manny_02_BN.uasset create mode 100644 EndlessVendetta/Content/ControlRig/Characters/Mannequins/Textures/Manny/T_Manny_02_CCRCCPlastic_MSK.uasset create mode 100644 EndlessVendetta/Content/ControlRig/Characters/Mannequins/Textures/Manny/T_Manny_02_D.uasset create mode 100644 EndlessVendetta/Content/ControlRig/Characters/Mannequins/Textures/Manny/T_Manny_02_MSR_MSK.uasset create mode 100644 EndlessVendetta/Content/ControlRig/Characters/Mannequins/Textures/Manny/T_Manny_02_N.uasset create mode 100644 EndlessVendetta/Content/ControlRig/Characters/Mannequins/Textures/Manny/T_Manny_02_Tan.uasset create mode 100644 EndlessVendetta/Content/ControlRig/Characters/Mannequins/Textures/Quinn/T_Quinn_01ID_BN.uasset create mode 100644 EndlessVendetta/Content/ControlRig/Characters/Mannequins/Textures/Quinn/T_Quinn_01ID_D.uasset create mode 100644 EndlessVendetta/Content/ControlRig/Characters/Mannequins/Textures/Quinn/T_Quinn_01ID_MSR_MSK.uasset create mode 100644 EndlessVendetta/Content/ControlRig/Characters/Mannequins/Textures/Quinn/T_Quinn_01ID_N.uasset create mode 100644 EndlessVendetta/Content/ControlRig/Characters/Mannequins/Textures/Quinn/T_Quinn_01ID_Tan.uasset create mode 100644 EndlessVendetta/Content/ControlRig/Characters/Mannequins/Textures/Quinn/T_Quinn_01_ASAOMASK_MSK.uasset create mode 100644 EndlessVendetta/Content/ControlRig/Characters/Mannequins/Textures/Quinn/T_Quinn_01_CCRCCPlastic_MSK.uasset create mode 100644 EndlessVendetta/Content/ControlRig/Characters/Mannequins/Textures/Quinn/T_Quinn_02ID_BN.uasset create mode 100644 EndlessVendetta/Content/ControlRig/Characters/Mannequins/Textures/Quinn/T_Quinn_02ID_D.uasset create mode 100644 EndlessVendetta/Content/ControlRig/Characters/Mannequins/Textures/Quinn/T_Quinn_02ID_MSR_MSK.uasset create mode 100644 EndlessVendetta/Content/ControlRig/Characters/Mannequins/Textures/Quinn/T_Quinn_02ID_N.uasset create mode 100644 EndlessVendetta/Content/ControlRig/Characters/Mannequins/Textures/Quinn/T_Quinn_02ID_Tan.uasset create mode 100644 EndlessVendetta/Content/ControlRig/Characters/Mannequins/Textures/Quinn/T_Quinn_02_ASAOMASK_MSK.uasset create mode 100644 EndlessVendetta/Content/ControlRig/Characters/Mannequins/Textures/Quinn/T_Quinn_02_CCRCCPlastic_MSK.uasset create mode 100644 EndlessVendetta/Content/ControlRig/Characters/Mannequins/Textures/Shared/T_UE_Logo_M.uasset create mode 100644 EndlessVendetta/Content/LevelPrototyping/Scenes/TutorialHit.umap diff --git a/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Animations/ABP_Manny.uasset b/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Animations/ABP_Manny.uasset new file mode 100644 index 00000000..06510ed2 --- /dev/null +++ b/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Animations/ABP_Manny.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:eeacdc8b0f92b8e16dd2cf4ed7e919feadf650736072c9efd4f5f77499eb62d9 +size 377396 diff --git a/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Animations/ABP_Quinn.uasset b/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Animations/ABP_Quinn.uasset new file mode 100644 index 00000000..301842c6 --- /dev/null +++ b/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Animations/ABP_Quinn.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:5e423711c22cbb84b4249a04385d8f5c398a5e9c5d237516ff0db3a8dccefc96 +size 39372 diff --git a/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Animations/Manny/BS_MM_WalkRun.uasset b/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Animations/Manny/BS_MM_WalkRun.uasset new file mode 100644 index 00000000..73c543f1 --- /dev/null +++ b/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Animations/Manny/BS_MM_WalkRun.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:2acc29c41680b4c399ffacd3299289c2e98f6770c099f55495218754a8390d2a +size 8851 diff --git a/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Animations/Manny/MM_Fall_Loop.uasset b/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Animations/Manny/MM_Fall_Loop.uasset new file mode 100644 index 00000000..8979d182 --- /dev/null +++ b/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Animations/Manny/MM_Fall_Loop.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:dcaaea03f57149cff7cd81e7e7f598e85e252378b0d84202824c63055ea7fc26 +size 616720 diff --git a/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Animations/Manny/MM_Idle.uasset b/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Animations/Manny/MM_Idle.uasset new file mode 100644 index 00000000..8ffff7be --- /dev/null +++ b/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Animations/Manny/MM_Idle.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a315ff6ecf54d4e1abe6600072267a2a20cb83e990d2ee91fa1fad63fa3c25e0 +size 838022 diff --git a/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Animations/Manny/MM_Jump.uasset b/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Animations/Manny/MM_Jump.uasset new file mode 100644 index 00000000..924ae4fc --- /dev/null +++ b/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Animations/Manny/MM_Jump.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:4bfd7488afe83d1d50faae6b6c281c4889f739ea6b4bfc7fbfbcb9e1c399ed75 +size 209468 diff --git a/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Animations/Manny/MM_Land.uasset b/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Animations/Manny/MM_Land.uasset new file mode 100644 index 00000000..42e11bb3 --- /dev/null +++ b/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Animations/Manny/MM_Land.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:05de3888c5a29ab643f74adf4d588a72b1ee547520c049520e3c90b9cd91bc2f +size 210231 diff --git a/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Animations/Manny/MM_Run_Fwd.uasset b/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Animations/Manny/MM_Run_Fwd.uasset new file mode 100644 index 00000000..70eb9d5f --- /dev/null +++ b/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Animations/Manny/MM_Run_Fwd.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:779b8f8fd668b9b3ac255796b5eb505b38582a5f3a6a14d21015746c427f5203 +size 233628 diff --git a/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Animations/Manny/MM_Walk_Fwd.uasset b/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Animations/Manny/MM_Walk_Fwd.uasset new file mode 100644 index 00000000..01750427 --- /dev/null +++ b/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Animations/Manny/MM_Walk_Fwd.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b554f588731ccc2ab91017696d6edc189e8d905f3bd1658aa0bbb52fb56d9f2a +size 323175 diff --git a/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Animations/Manny/MM_Walk_InPlace.uasset b/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Animations/Manny/MM_Walk_InPlace.uasset new file mode 100644 index 00000000..10d9e0aa --- /dev/null +++ b/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Animations/Manny/MM_Walk_InPlace.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:c5b75829aa4fa7d1400ab98858ae3ff499c7473bb12487e9e58c853e500ebc90 +size 565708 diff --git a/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Animations/Quinn/BS_MF_Unarmed_WalkRun.uasset b/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Animations/Quinn/BS_MF_Unarmed_WalkRun.uasset new file mode 100644 index 00000000..34e0bb3c --- /dev/null +++ b/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Animations/Quinn/BS_MF_Unarmed_WalkRun.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:1842726ff2d091261376cfb631645e1f6e676edc7c8332d6edc6bbf8b4306ab7 +size 8891 diff --git a/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Animations/Quinn/MF_Idle.uasset b/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Animations/Quinn/MF_Idle.uasset new file mode 100644 index 00000000..cc05e290 --- /dev/null +++ b/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Animations/Quinn/MF_Idle.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:aed5bfcce6e424c3fde1fe69bbb2a5b4406b78109ed9818e2f0de85096f5d883 +size 869685 diff --git a/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Animations/Quinn/MF_Run_Fwd.uasset b/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Animations/Quinn/MF_Run_Fwd.uasset new file mode 100644 index 00000000..3793707b --- /dev/null +++ b/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Animations/Quinn/MF_Run_Fwd.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:4ef6b3b0d8435fa4aa92bbf22317e265446ddcab34f2596258f4316a8f52f275 +size 381450 diff --git a/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Animations/Quinn/MF_Walk_Fwd.uasset b/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Animations/Quinn/MF_Walk_Fwd.uasset new file mode 100644 index 00000000..b65637cb --- /dev/null +++ b/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Animations/Quinn/MF_Walk_Fwd.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:68fae0ca27a7cffec957a549bdd37e0637162981b41de6018b720de4201ec5de +size 400317 diff --git a/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Materials/Functions/CA_Mannequin.uasset b/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Materials/Functions/CA_Mannequin.uasset new file mode 100644 index 00000000..ca441994 --- /dev/null +++ b/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Materials/Functions/CA_Mannequin.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:923f69a89ca9a3c34e2dcb3b0be8fdeb180f0d5f5781c2f5aed93591434df0d4 +size 4654 diff --git a/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Materials/Functions/ChromaticCurve.uasset b/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Materials/Functions/ChromaticCurve.uasset new file mode 100644 index 00000000..98a22005 --- /dev/null +++ b/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Materials/Functions/ChromaticCurve.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b2db73d6d14a4bfe11d2aefec2a6ed72dbceaa7fc658de55a7ce1037aaa2da15 +size 6118 diff --git a/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Materials/Functions/MF_Diffraction.uasset b/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Materials/Functions/MF_Diffraction.uasset new file mode 100644 index 00000000..d6efab0e --- /dev/null +++ b/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Materials/Functions/MF_Diffraction.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:0461c5e62fb008d178b4a23172511cdfb3f2f29d3201dedbae3014e979ac3a53 +size 31748 diff --git a/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Materials/Functions/MF_logo3layers.uasset b/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Materials/Functions/MF_logo3layers.uasset new file mode 100644 index 00000000..50716752 --- /dev/null +++ b/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Materials/Functions/MF_logo3layers.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:43c4cf35c7e847de2ee6e93c086e18c2163a9b09e095b170a3b8e66941aa689c +size 55701 diff --git a/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Materials/Functions/ML_BaseColorFallOff.uasset b/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Materials/Functions/ML_BaseColorFallOff.uasset new file mode 100644 index 00000000..3e526b8c --- /dev/null +++ b/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Materials/Functions/ML_BaseColorFallOff.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:8e8d8f5cdab9bd468ad3731719000cbd72134a64aed69bd6a2349241b6c08ef8 +size 13422 diff --git a/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Materials/Instances/Manny/MI_Manny_01.uasset b/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Materials/Instances/Manny/MI_Manny_01.uasset new file mode 100644 index 00000000..bb3aa5e4 --- /dev/null +++ b/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Materials/Instances/Manny/MI_Manny_01.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a854b2354341c525668b120e3fdfc356d58d51a3297394ee471ae8b14a9a1bf0 +size 21243 diff --git a/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Materials/Instances/Manny/MI_Manny_02.uasset b/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Materials/Instances/Manny/MI_Manny_02.uasset new file mode 100644 index 00000000..128b32dc --- /dev/null +++ b/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Materials/Instances/Manny/MI_Manny_02.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b651ac85f23b43b1751155bb479766d66ae1db4bfdd1b191d1c6526988d003fe +size 24277 diff --git a/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Materials/Instances/Quinn/MI_Quinn_01.uasset b/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Materials/Instances/Quinn/MI_Quinn_01.uasset new file mode 100644 index 00000000..76c30741 --- /dev/null +++ b/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Materials/Instances/Quinn/MI_Quinn_01.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:cae533968c2178e476733efcd12b1d7d03b9cdd8ca50bd0f90da77ad3edd3ab5 +size 19288 diff --git a/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Materials/Instances/Quinn/MI_Quinn_02.uasset b/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Materials/Instances/Quinn/MI_Quinn_02.uasset new file mode 100644 index 00000000..82cfe40b --- /dev/null +++ b/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Materials/Instances/Quinn/MI_Quinn_02.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:64032da0d5072a3c4447f603c63a1ffb33990cfdc69573d0817c9c02f717919a +size 24636 diff --git a/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Materials/M_Mannequin.uasset b/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Materials/M_Mannequin.uasset new file mode 100644 index 00000000..982d1365 --- /dev/null +++ b/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Materials/M_Mannequin.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:10d06ca935972621ab0699abd560d3a31343dba40248d21cede0704b31bc735c +size 83055 diff --git a/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Meshes/Mannequin_LODSettings.uasset b/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Meshes/Mannequin_LODSettings.uasset new file mode 100644 index 00000000..76e83de3 --- /dev/null +++ b/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Meshes/Mannequin_LODSettings.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d1832b78f81bbe3c7cbc648c7c25b0af352605e25c35f7de5b8ece4668d57ef0 +size 18631 diff --git a/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Meshes/SKM_Manny.uasset b/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Meshes/SKM_Manny.uasset new file mode 100644 index 00000000..97ff8bac --- /dev/null +++ b/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Meshes/SKM_Manny.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:2563c3549a2e563431c27c7c082960b18a53b503299ce6b92c61460436290879 +size 34534206 diff --git a/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Meshes/SKM_Manny_Simple.uasset b/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Meshes/SKM_Manny_Simple.uasset new file mode 100644 index 00000000..8d9a50e4 --- /dev/null +++ b/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Meshes/SKM_Manny_Simple.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:830f40a8cd84a39637256dee341382ec0e91968cfb44db724bfed2f91af1c775 +size 18526672 diff --git a/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Meshes/SKM_Quinn.uasset b/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Meshes/SKM_Quinn.uasset new file mode 100644 index 00000000..6fdb30df --- /dev/null +++ b/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Meshes/SKM_Quinn.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:63f14e9f8aac7d52b18078b8d50648c9957cedd09007c225a8f3e8776cd68265 +size 36495213 diff --git a/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Meshes/SKM_Quinn_Simple.uasset b/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Meshes/SKM_Quinn_Simple.uasset new file mode 100644 index 00000000..fe094e23 --- /dev/null +++ b/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Meshes/SKM_Quinn_Simple.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:048c0ae462fb0dffc00b29b554070db7e7246a9369e2a00931ec5729c1ad7312 +size 19371051 diff --git a/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Meshes/SK_Mannequin.uasset b/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Meshes/SK_Mannequin.uasset new file mode 100644 index 00000000..8ce47365 --- /dev/null +++ b/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Meshes/SK_Mannequin.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:215ed40ad2c8290531cf50ead108221d2aa6af461636a98cf891e63775446616 +size 119087 diff --git a/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/ABP_Manny_PostProcess.uasset b/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/ABP_Manny_PostProcess.uasset new file mode 100644 index 00000000..78071b7c --- /dev/null +++ b/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/ABP_Manny_PostProcess.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:592779e91fc8ed09e4d2e71852ff4af108050e37d3a82b0f5b300c7712ff2966 +size 462272 diff --git a/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/ABP_Quinn_PostProcess.uasset b/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/ABP_Quinn_PostProcess.uasset new file mode 100644 index 00000000..644a100d --- /dev/null +++ b/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/ABP_Quinn_PostProcess.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:0c51c2993e09be99e3480af0ce30ac7d4f5299e3cb1ea95deeff583789794353 +size 462170 diff --git a/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/CR_Mannequin_BasicBiped.uasset b/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/CR_Mannequin_BasicBiped.uasset new file mode 100644 index 00000000..61dbe44b --- /dev/null +++ b/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/CR_Mannequin_BasicBiped.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e370a6ffd00112b7f6189e99703b5920f09664f686733de528c485126356fa19 +size 4168573 diff --git a/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/CR_Mannequin_BasicFootIK.uasset b/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/CR_Mannequin_BasicFootIK.uasset new file mode 100644 index 00000000..18f1fb5d --- /dev/null +++ b/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/CR_Mannequin_BasicFootIK.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:9e30a862ca99af96f3d0877538c5140c9e2b989df252d52468eabdb872ec45cc +size 590359 diff --git a/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/CR_Mannequin_Body.uasset b/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/CR_Mannequin_Body.uasset new file mode 100644 index 00000000..55fd98be --- /dev/null +++ b/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/CR_Mannequin_Body.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:46c93ec5db984971aaa40cc7e63ecd07f415bce492403bedfaecb755b415ef53 +size 16002462 diff --git a/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/CR_Mannequin_Procedural.uasset b/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/CR_Mannequin_Procedural.uasset new file mode 100644 index 00000000..65fc2cf2 --- /dev/null +++ b/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/CR_Mannequin_Procedural.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:5aec7fd100ef8687ac4cf56996eb22de4d6833e7361b7c61b31685e94e7d6796 +size 2335736 diff --git a/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/IK_Mannequin.uasset b/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/IK_Mannequin.uasset new file mode 100644 index 00000000..f50d2d95 --- /dev/null +++ b/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/IK_Mannequin.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:3cab1d297286a5bc0e62b5c3dd86af3f178e7c8f4710e4dc1203868894b3e132 +size 143134 diff --git a/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/PA_Mannequin.uasset b/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/PA_Mannequin.uasset new file mode 100644 index 00000000..987b2548 --- /dev/null +++ b/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/PA_Mannequin.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d082d00558bf6ea9284f65623cee82f4f9a823adf2883b0ca7172352e8916fc6 +size 63662 diff --git a/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/Poses/Manny/Manny_calf_l_anim.uasset b/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/Poses/Manny/Manny_calf_l_anim.uasset new file mode 100644 index 00000000..92e00056 --- /dev/null +++ b/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/Poses/Manny/Manny_calf_l_anim.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b59f701e426315cadfd16453f1445cab8f23caca24bed38e77e0a26031f18101 +size 64816 diff --git a/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/Poses/Manny/Manny_calf_l_pose.uasset b/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/Poses/Manny/Manny_calf_l_pose.uasset new file mode 100644 index 00000000..8f8c5f06 --- /dev/null +++ b/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/Poses/Manny/Manny_calf_l_pose.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ebe608a1bb96251dc4aa098caefeb3c7aac17c5f952383950e29a744ae62b18e +size 207223 diff --git a/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/Poses/Manny/Manny_calf_r_anim.uasset b/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/Poses/Manny/Manny_calf_r_anim.uasset new file mode 100644 index 00000000..87a69787 --- /dev/null +++ b/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/Poses/Manny/Manny_calf_r_anim.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:bf6059f576b4cc9ccd78a90eed7cf3cd6ae1d2bbd51be46ee313e3584e75833c +size 64826 diff --git a/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/Poses/Manny/Manny_calf_r_pose.uasset b/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/Poses/Manny/Manny_calf_r_pose.uasset new file mode 100644 index 00000000..050dafb1 --- /dev/null +++ b/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/Poses/Manny/Manny_calf_r_pose.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:4b350e80733131422cfa702d41f3df2ce96e00d2afb441d2fb5d746014504380 +size 207223 diff --git a/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/Poses/Manny/Manny_clavicle_l_anim.uasset b/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/Poses/Manny/Manny_clavicle_l_anim.uasset new file mode 100644 index 00000000..55d25794 --- /dev/null +++ b/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/Poses/Manny/Manny_clavicle_l_anim.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b37dfd7dba3014752915db44545ee334eeda25409a738b99ded3b2074fccbfcb +size 64852 diff --git a/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/Poses/Manny/Manny_clavicle_l_pose.uasset b/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/Poses/Manny/Manny_clavicle_l_pose.uasset new file mode 100644 index 00000000..39f87a29 --- /dev/null +++ b/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/Poses/Manny/Manny_clavicle_l_pose.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:790016bfdb567b8200e0cd84f76d6f11a831e057054d7dcf8374b30d79a3df5b +size 205529 diff --git a/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/Poses/Manny/Manny_clavicle_r_anim.uasset b/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/Poses/Manny/Manny_clavicle_r_anim.uasset new file mode 100644 index 00000000..532b46c2 --- /dev/null +++ b/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/Poses/Manny/Manny_clavicle_r_anim.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:bd400f5be56c758ff5394dbb683c5169d0848b0ba9d09f9e6c272e3bf3f10ab5 +size 64854 diff --git a/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/Poses/Manny/Manny_clavicle_r_pose.uasset b/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/Poses/Manny/Manny_clavicle_r_pose.uasset new file mode 100644 index 00000000..b8d0058f --- /dev/null +++ b/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/Poses/Manny/Manny_clavicle_r_pose.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:bb0713e0451b39d49c5cdac5cd1ee4f9154bfd1423098cf4195686df3c4d20d8 +size 206131 diff --git a/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/Poses/Manny/Manny_foot_l_anim.uasset b/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/Poses/Manny/Manny_foot_l_anim.uasset new file mode 100644 index 00000000..cab49123 --- /dev/null +++ b/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/Poses/Manny/Manny_foot_l_anim.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:c5f150d98767071f4bcd28bdfde1685fee9d40aa1d5d82434c518d40ad6b3b30 +size 52824 diff --git a/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/Poses/Manny/Manny_foot_l_pose.uasset b/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/Poses/Manny/Manny_foot_l_pose.uasset new file mode 100644 index 00000000..af8531d0 --- /dev/null +++ b/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/Poses/Manny/Manny_foot_l_pose.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:142101f70f42f02f41199706477b99874c75bcefd0f277fbdea47ba7de193741 +size 131969 diff --git a/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/Poses/Manny/Manny_foot_r_anim.uasset b/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/Poses/Manny/Manny_foot_r_anim.uasset new file mode 100644 index 00000000..a653463e --- /dev/null +++ b/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/Poses/Manny/Manny_foot_r_anim.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:40b46c0ef3ddba150b14bc4c3263e515300ebc72dd88419c9e027334e3c6082d +size 52826 diff --git a/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/Poses/Manny/Manny_foot_r_pose.uasset b/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/Poses/Manny/Manny_foot_r_pose.uasset new file mode 100644 index 00000000..5d3c11c4 --- /dev/null +++ b/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/Poses/Manny/Manny_foot_r_pose.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:df08784aa1c599d205e05ba57d9348381e6db5f74d2332e3449f62df981d2bda +size 131969 diff --git a/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/Poses/Manny/Manny_hand_l_anim.uasset b/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/Poses/Manny/Manny_hand_l_anim.uasset new file mode 100644 index 00000000..d3043a5f --- /dev/null +++ b/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/Poses/Manny/Manny_hand_l_anim.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:112cb9ce37a704413410f4996e4a3ee04b54b27a08e023e6ad3939b16b422552 +size 58824 diff --git a/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/Poses/Manny/Manny_hand_l_pose.uasset b/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/Poses/Manny/Manny_hand_l_pose.uasset new file mode 100644 index 00000000..b887852a --- /dev/null +++ b/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/Poses/Manny/Manny_hand_l_pose.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:27f7d9ff395a01d762166107f3c8fb43b9862b0785750e185e25fa1dd86ce29c +size 168999 diff --git a/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/Poses/Manny/Manny_hand_r_anim.uasset b/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/Poses/Manny/Manny_hand_r_anim.uasset new file mode 100644 index 00000000..46de699f --- /dev/null +++ b/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/Poses/Manny/Manny_hand_r_anim.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b1b2777419bfc49e444bf34c4ec6bb1427b8bb829c92ccfcf0f979e2dd90ddd7 +size 58826 diff --git a/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/Poses/Manny/Manny_hand_r_pose.uasset b/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/Poses/Manny/Manny_hand_r_pose.uasset new file mode 100644 index 00000000..6aba1f00 --- /dev/null +++ b/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/Poses/Manny/Manny_hand_r_pose.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:6f73d48f424e90b916123b37783fbe47b568e53ffbbf16bfc3599978f3e7badd +size 168999 diff --git a/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/Poses/Manny/Manny_lowerarm_l_anim.uasset b/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/Poses/Manny/Manny_lowerarm_l_anim.uasset new file mode 100644 index 00000000..f98cb1c6 --- /dev/null +++ b/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/Poses/Manny/Manny_lowerarm_l_anim.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:69ccff3cc8a6ed58eff6463be1f8d5290f3fde12b91e72ffd5c93a852bc177ee +size 127276 diff --git a/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/Poses/Manny/Manny_lowerarm_l_pose.uasset b/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/Poses/Manny/Manny_lowerarm_l_pose.uasset new file mode 100644 index 00000000..f8b77ff9 --- /dev/null +++ b/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/Poses/Manny/Manny_lowerarm_l_pose.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:3b7caf543c0b38805f75fd1406e26520a1124b2c1ca3aa81792ae5c897d20741 +size 361441 diff --git a/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/Poses/Manny/Manny_lowerarm_r_anim.uasset b/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/Poses/Manny/Manny_lowerarm_r_anim.uasset new file mode 100644 index 00000000..55866a7e --- /dev/null +++ b/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/Poses/Manny/Manny_lowerarm_r_anim.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:32d442c2f889f74f96be4a678e84f4ddfbda7a6231bfcf073d8259c9257079c8 +size 88854 diff --git a/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/Poses/Manny/Manny_lowerarm_r_pose.uasset b/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/Poses/Manny/Manny_lowerarm_r_pose.uasset new file mode 100644 index 00000000..4c001f2b --- /dev/null +++ b/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/Poses/Manny/Manny_lowerarm_r_pose.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:327e6b5cb9d426c10f21ea1e5e2f6004761016a0e11361aed240a8a493f35dbc +size 361441 diff --git a/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/Poses/Manny/Manny_thigh_l_anim.uasset b/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/Poses/Manny/Manny_thigh_l_anim.uasset new file mode 100644 index 00000000..a8234112 --- /dev/null +++ b/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/Poses/Manny/Manny_thigh_l_anim.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:153a9f670d5612852b3bdfb1e5911dd3ba13f00a53e01c004cd6c0625a4e25cd +size 118833 diff --git a/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/Poses/Manny/Manny_thigh_l_pose.uasset b/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/Poses/Manny/Manny_thigh_l_pose.uasset new file mode 100644 index 00000000..fc5710d4 --- /dev/null +++ b/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/Poses/Manny/Manny_thigh_l_pose.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:24ee80de174ae79555219f1eb7a12d5cbaabac6b42fae59421dd8192e754be55 +size 557766 diff --git a/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/Poses/Manny/Manny_thigh_r_anim.uasset b/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/Poses/Manny/Manny_thigh_r_anim.uasset new file mode 100644 index 00000000..2e838034 --- /dev/null +++ b/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/Poses/Manny/Manny_thigh_r_anim.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e61e506bc006d9db0ba4a0469b48984dd9ca90cb4caf89db100ff7b43cbbbd00 +size 118835 diff --git a/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/Poses/Manny/Manny_thigh_r_pose.uasset b/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/Poses/Manny/Manny_thigh_r_pose.uasset new file mode 100644 index 00000000..f08619af --- /dev/null +++ b/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/Poses/Manny/Manny_thigh_r_pose.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:c02f07aa3e4f0a0229508f410901cbc56c18adc334d51e4ab58b11b039b150e2 +size 557766 diff --git a/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/Poses/Manny/Manny_upperarm_l_anim.uasset b/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/Poses/Manny/Manny_upperarm_l_anim.uasset new file mode 100644 index 00000000..dde86b2e --- /dev/null +++ b/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/Poses/Manny/Manny_upperarm_l_anim.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:16c364d55b05f67bbffb4ed23cc5d0333fe5611c82380a74aed7e11371a32d1d +size 130854 diff --git a/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/Poses/Manny/Manny_upperarm_l_pose.uasset b/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/Poses/Manny/Manny_upperarm_l_pose.uasset new file mode 100644 index 00000000..6c78a0dc --- /dev/null +++ b/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/Poses/Manny/Manny_upperarm_l_pose.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:747e14c6054a2c809011c3aac243f4438bd929183d6b24dc05c827c6599eec04 +size 641430 diff --git a/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/Poses/Manny/Manny_upperarm_r_anim.uasset b/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/Poses/Manny/Manny_upperarm_r_anim.uasset new file mode 100644 index 00000000..e9dc936a --- /dev/null +++ b/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/Poses/Manny/Manny_upperarm_r_anim.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:922fddcf4264b66d389f61b7c5e5effcef2aca70f48c98d41fec4514a250cc2c +size 130856 diff --git a/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/Poses/Manny/Manny_upperarm_r_pose.uasset b/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/Poses/Manny/Manny_upperarm_r_pose.uasset new file mode 100644 index 00000000..a5e78588 --- /dev/null +++ b/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/Poses/Manny/Manny_upperarm_r_pose.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:de4cec17652b3232f12905381e0fb3085486b47f8c169d8988dc1573aa98ab99 +size 629992 diff --git a/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/Poses/Quinn/Quinn_calf_l_anim.uasset b/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/Poses/Quinn/Quinn_calf_l_anim.uasset new file mode 100644 index 00000000..309aed01 --- /dev/null +++ b/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/Poses/Quinn/Quinn_calf_l_anim.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:9d1e68764a3e6438bf344c38faff188298708652d54a14bf16e4c6d42f16ee13 +size 71463 diff --git a/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/Poses/Quinn/Quinn_calf_l_pose.uasset b/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/Poses/Quinn/Quinn_calf_l_pose.uasset new file mode 100644 index 00000000..d635f868 --- /dev/null +++ b/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/Poses/Quinn/Quinn_calf_l_pose.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:df7fddc20d642dfee60ee24b42b7cdfb8181ef77b63590173c227bedb37c996e +size 244960 diff --git a/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/Poses/Quinn/Quinn_calf_r_anim.uasset b/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/Poses/Quinn/Quinn_calf_r_anim.uasset new file mode 100644 index 00000000..b860ce2f --- /dev/null +++ b/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/Poses/Quinn/Quinn_calf_r_anim.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:34ea78c58adb22c006f9030cbc238c1f22fa3060857de5ce75374dc694cd0bb6 +size 109521 diff --git a/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/Poses/Quinn/Quinn_calf_r_pose.uasset b/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/Poses/Quinn/Quinn_calf_r_pose.uasset new file mode 100644 index 00000000..0f1c58ba --- /dev/null +++ b/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/Poses/Quinn/Quinn_calf_r_pose.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:baeebcaeab8371ac6d2c113396d402bc7ce4d0279d9ac47ba70a870bfcf7e2ff +size 245041 diff --git a/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/Poses/Quinn/Quinn_clavicle_l_anim.uasset b/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/Poses/Quinn/Quinn_clavicle_l_anim.uasset new file mode 100644 index 00000000..8b1c8220 --- /dev/null +++ b/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/Poses/Quinn/Quinn_clavicle_l_anim.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:cb3cb479595daad83cbd3f700bddaa0f7cf3a5173a6b470ba03ff22cf7b63a9d +size 103489 diff --git a/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/Poses/Quinn/Quinn_clavicle_l_pose.uasset b/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/Poses/Quinn/Quinn_clavicle_l_pose.uasset new file mode 100644 index 00000000..619dca36 --- /dev/null +++ b/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/Poses/Quinn/Quinn_clavicle_l_pose.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:6a2ee7b5868b5af8dc3dc0441986980bc3a72db7f9989798d08c0ee43b41c728 +size 205712 diff --git a/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/Poses/Quinn/Quinn_clavicle_r_anim.uasset b/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/Poses/Quinn/Quinn_clavicle_r_anim.uasset new file mode 100644 index 00000000..568122ff --- /dev/null +++ b/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/Poses/Quinn/Quinn_clavicle_r_anim.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:be091ffa3cd99911432a60807d3df1a1790dbd9c5f311274eee61df93221a8a2 +size 65171 diff --git a/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/Poses/Quinn/Quinn_clavicle_r_pose.uasset b/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/Poses/Quinn/Quinn_clavicle_r_pose.uasset new file mode 100644 index 00000000..7a436416 --- /dev/null +++ b/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/Poses/Quinn/Quinn_clavicle_r_pose.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d6cbf50e59d7484b0e5e96e2d76c2a152d960804778599f60273f3bc07b27a22 +size 205813 diff --git a/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/Poses/Quinn/Quinn_foot_l_anim.uasset b/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/Poses/Quinn/Quinn_foot_l_anim.uasset new file mode 100644 index 00000000..67fa2677 --- /dev/null +++ b/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/Poses/Quinn/Quinn_foot_l_anim.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e1c2166fca7cd0381f733bee6c0f93697fb4a01aa24be032fcff672d31a4518b +size 53141 diff --git a/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/Poses/Quinn/Quinn_foot_l_pose.uasset b/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/Poses/Quinn/Quinn_foot_l_pose.uasset new file mode 100644 index 00000000..53474c50 --- /dev/null +++ b/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/Poses/Quinn/Quinn_foot_l_pose.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:cf437126561ca844185fab690f3f52b5102768f78c9dbf6090e7c07778f95685 +size 131952 diff --git a/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/Poses/Quinn/Quinn_foot_r_anim.uasset b/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/Poses/Quinn/Quinn_foot_r_anim.uasset new file mode 100644 index 00000000..70ad1394 --- /dev/null +++ b/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/Poses/Quinn/Quinn_foot_r_anim.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b9b384a47ef153f631d9ef77d5074e97fd608d17932f82eba5b896072be8634d +size 53143 diff --git a/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/Poses/Quinn/Quinn_foot_r_pose.uasset b/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/Poses/Quinn/Quinn_foot_r_pose.uasset new file mode 100644 index 00000000..417f3946 --- /dev/null +++ b/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/Poses/Quinn/Quinn_foot_r_pose.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ac044481c0edcc833e959a64fc0d1185d1c07d9abd95674f7861b9e81868c202 +size 131952 diff --git a/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/Poses/Quinn/Quinn_hand_l_anim.uasset b/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/Poses/Quinn/Quinn_hand_l_anim.uasset new file mode 100644 index 00000000..ec3be71f --- /dev/null +++ b/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/Poses/Quinn/Quinn_hand_l_anim.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:35d5a7296f4b2f06506bc1804a0f8a1b5acd6b277450a8f16c66667a1a5ce79d +size 59141 diff --git a/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/Poses/Quinn/Quinn_hand_l_pose.uasset b/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/Poses/Quinn/Quinn_hand_l_pose.uasset new file mode 100644 index 00000000..8f46f2f5 --- /dev/null +++ b/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/Poses/Quinn/Quinn_hand_l_pose.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d8bb2a9106bfe27f7edc51a421346adeb114bc03e3d28b02e11680a7afac5e87 +size 168982 diff --git a/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/Poses/Quinn/Quinn_hand_r_anim.uasset b/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/Poses/Quinn/Quinn_hand_r_anim.uasset new file mode 100644 index 00000000..68b24613 --- /dev/null +++ b/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/Poses/Quinn/Quinn_hand_r_anim.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:cf604470532fda86259c302e289344845dec4534a587a08d90ccd471a6d5015a +size 59143 diff --git a/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/Poses/Quinn/Quinn_hand_r_pose.uasset b/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/Poses/Quinn/Quinn_hand_r_pose.uasset new file mode 100644 index 00000000..dec28731 --- /dev/null +++ b/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/Poses/Quinn/Quinn_hand_r_pose.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b74a369ae02fcba33cc58eb0adea2b9e75aa23f765e90153d7431544b2ab62ed +size 168982 diff --git a/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/Poses/Quinn/Quinn_lowerarm_l_anim.uasset b/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/Poses/Quinn/Quinn_lowerarm_l_anim.uasset new file mode 100644 index 00000000..09e63c52 --- /dev/null +++ b/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/Poses/Quinn/Quinn_lowerarm_l_anim.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:c9811d92c228fcc359c7ea4a8edd75654250872b2d53afafb15ce5b544e4e4b4 +size 95170 diff --git a/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/Poses/Quinn/Quinn_lowerarm_l_pose.uasset b/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/Poses/Quinn/Quinn_lowerarm_l_pose.uasset new file mode 100644 index 00000000..ddfe6f8b --- /dev/null +++ b/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/Poses/Quinn/Quinn_lowerarm_l_pose.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:df72c191c2ca9520e199904e02662a18703a6a6a1932b460ec4ab87875581932 +size 399362 diff --git a/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/Poses/Quinn/Quinn_lowerarm_r_anim.uasset b/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/Poses/Quinn/Quinn_lowerarm_r_anim.uasset new file mode 100644 index 00000000..27d5a7ca --- /dev/null +++ b/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/Poses/Quinn/Quinn_lowerarm_r_anim.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a4afc263c634f34988b35d831c31797a2b5caf793d18b2c9ced7463d87a67432 +size 95172 diff --git a/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/Poses/Quinn/Quinn_lowerarm_r_pose.uasset b/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/Poses/Quinn/Quinn_lowerarm_r_pose.uasset new file mode 100644 index 00000000..f8388f33 --- /dev/null +++ b/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/Poses/Quinn/Quinn_lowerarm_r_pose.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:1a1aca955ce2d3f39ecc3f99ba4e84ff15efa2c739aca482bed9c832f8974a16 +size 399362 diff --git a/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/Poses/Quinn/Quinn_thigh_l_anim.uasset b/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/Poses/Quinn/Quinn_thigh_l_anim.uasset new file mode 100644 index 00000000..57c4da95 --- /dev/null +++ b/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/Poses/Quinn/Quinn_thigh_l_anim.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:80291d670ebbf2bf83e00b8eb5cf778bdcce65c69e6d5ded19de0735f259e725 +size 119150 diff --git a/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/Poses/Quinn/Quinn_thigh_l_pose.uasset b/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/Poses/Quinn/Quinn_thigh_l_pose.uasset new file mode 100644 index 00000000..bfc7a63e --- /dev/null +++ b/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/Poses/Quinn/Quinn_thigh_l_pose.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f02da143850cb1e7530144714de054cadf0360af342779ce7dde8e6c702b39f5 +size 557448 diff --git a/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/Poses/Quinn/Quinn_thigh_r_anim.uasset b/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/Poses/Quinn/Quinn_thigh_r_anim.uasset new file mode 100644 index 00000000..791b5783 --- /dev/null +++ b/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/Poses/Quinn/Quinn_thigh_r_anim.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:5290046e20673b247d12f49b09dfc6345fc9c3ed94d69d4c27eb36939224af44 +size 119152 diff --git a/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/Poses/Quinn/Quinn_thigh_r_pose.uasset b/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/Poses/Quinn/Quinn_thigh_r_pose.uasset new file mode 100644 index 00000000..9b1dd61f --- /dev/null +++ b/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/Poses/Quinn/Quinn_thigh_r_pose.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:7d64cf78ef6c012d5a5473681f2e30958ed9b9e316a1ae5c067fdcfd4bab2dff +size 557448 diff --git a/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/Poses/Quinn/Quinn_upperarm_l_anim.uasset b/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/Poses/Quinn/Quinn_upperarm_l_anim.uasset new file mode 100644 index 00000000..1de13a5d --- /dev/null +++ b/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/Poses/Quinn/Quinn_upperarm_l_anim.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:44579e38e5daa8cdf0ea5e91e5615c559a4ff49af59e219813a73f70fe3669aa +size 107171 diff --git a/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/Poses/Quinn/Quinn_upperarm_l_pose.uasset b/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/Poses/Quinn/Quinn_upperarm_l_pose.uasset new file mode 100644 index 00000000..4411b7e9 --- /dev/null +++ b/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/Poses/Quinn/Quinn_upperarm_l_pose.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b8395312c3806b120b145e0f12d121470cdbd3cd5f20920b6a57ff7b3768faa5 +size 485273 diff --git a/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/Poses/Quinn/Quinn_upperarm_r_anim.uasset b/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/Poses/Quinn/Quinn_upperarm_r_anim.uasset new file mode 100644 index 00000000..697794ab --- /dev/null +++ b/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/Poses/Quinn/Quinn_upperarm_r_anim.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:57abcd99441bf8add532a089ed4e4d84f0d9a4cde364a7fbb257a93a4360abec +size 107173 diff --git a/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/Poses/Quinn/Quinn_upperarm_r_pose.uasset b/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/Poses/Quinn/Quinn_upperarm_r_pose.uasset new file mode 100644 index 00000000..38e3461b --- /dev/null +++ b/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/Poses/Quinn/Quinn_upperarm_r_pose.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ef3cf53ba9d8e6cd365bbaf0872feeed031fb8df636e5ad98a371e70909e75c9 +size 488283 diff --git a/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/RTG_Mannequin.uasset b/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/RTG_Mannequin.uasset new file mode 100644 index 00000000..d35d1f94 --- /dev/null +++ b/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Rigs/RTG_Mannequin.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:7ec102df7e53ef4385079d0cae403bb9c3e666b0a04bf32b1148563083de5f76 +size 13589 diff --git a/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Textures/Manny/T_Manny_01_ASAOPMASK_MSK.uasset b/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Textures/Manny/T_Manny_01_ASAOPMASK_MSK.uasset new file mode 100644 index 00000000..4f63c941 --- /dev/null +++ b/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Textures/Manny/T_Manny_01_ASAOPMASK_MSK.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d9d6193987025eb29f967d5ccb5b7901b4381e5c10e415db41c176ea4572ef11 +size 3612394 diff --git a/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Textures/Manny/T_Manny_01_BN.uasset b/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Textures/Manny/T_Manny_01_BN.uasset new file mode 100644 index 00000000..cc3a87eb --- /dev/null +++ b/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Textures/Manny/T_Manny_01_BN.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:afe938a994f15b8fe1e0342e614635923745e83907b73dfaf9e622c963a53dad +size 18513946 diff --git a/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Textures/Manny/T_Manny_01_CCRCCPlastic_MSK.uasset b/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Textures/Manny/T_Manny_01_CCRCCPlastic_MSK.uasset new file mode 100644 index 00000000..b87cea11 --- /dev/null +++ b/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Textures/Manny/T_Manny_01_CCRCCPlastic_MSK.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:c0ec57bdad72c7ed955916bc3046c68b30952ee6f03b2a85ec227fede620b362 +size 10271764 diff --git a/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Textures/Manny/T_Manny_01_D.uasset b/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Textures/Manny/T_Manny_01_D.uasset new file mode 100644 index 00000000..54ae2e0e --- /dev/null +++ b/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Textures/Manny/T_Manny_01_D.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:19c9590688726f55ab28ec7af40adc894c445eda255b7799c06a3351a8fd5dcf +size 5740132 diff --git a/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Textures/Manny/T_Manny_01_MSR_MSK.uasset b/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Textures/Manny/T_Manny_01_MSR_MSK.uasset new file mode 100644 index 00000000..4fc7f16e --- /dev/null +++ b/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Textures/Manny/T_Manny_01_MSR_MSK.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f853e5fe06fd03309769cd2dd656e56ece60ef917d53178cdbd55c8832aeb0b0 +size 11037967 diff --git a/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Textures/Manny/T_Manny_01_N.uasset b/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Textures/Manny/T_Manny_01_N.uasset new file mode 100644 index 00000000..5bc356d7 --- /dev/null +++ b/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Textures/Manny/T_Manny_01_N.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b03f66c9332142ba3ced19ddc37cf332794c045e2d43a7bb676c4a4b06e36061 +size 7198028 diff --git a/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Textures/Manny/T_Manny_01_Tan.uasset b/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Textures/Manny/T_Manny_01_Tan.uasset new file mode 100644 index 00000000..4dee7ebb --- /dev/null +++ b/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Textures/Manny/T_Manny_01_Tan.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:82a54cc8769089d8d874e4dee8978893d454dc3e91672c701233e3765bb6039f +size 1357549 diff --git a/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Textures/Manny/T_Manny_02_ASAOPMASK_MSK.uasset b/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Textures/Manny/T_Manny_02_ASAOPMASK_MSK.uasset new file mode 100644 index 00000000..9ad1a156 --- /dev/null +++ b/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Textures/Manny/T_Manny_02_ASAOPMASK_MSK.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:4ded416115c3f655485bcb55362ea06fbe8f47440d4be9b3fd7ed88ba7546c57 +size 8341170 diff --git a/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Textures/Manny/T_Manny_02_BN.uasset b/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Textures/Manny/T_Manny_02_BN.uasset new file mode 100644 index 00000000..fbeb06b4 --- /dev/null +++ b/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Textures/Manny/T_Manny_02_BN.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:321087605f95eb2e4842e14a50c6103b9068a57a6243e2d0fa873686684baad0 +size 21139305 diff --git a/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Textures/Manny/T_Manny_02_CCRCCPlastic_MSK.uasset b/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Textures/Manny/T_Manny_02_CCRCCPlastic_MSK.uasset new file mode 100644 index 00000000..434d166f --- /dev/null +++ b/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Textures/Manny/T_Manny_02_CCRCCPlastic_MSK.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:176ddc8fedd7f83cf83f50834db2bd66a5d9242a40e2caec5be50dd2f70dd830 +size 13143835 diff --git a/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Textures/Manny/T_Manny_02_D.uasset b/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Textures/Manny/T_Manny_02_D.uasset new file mode 100644 index 00000000..66be3576 --- /dev/null +++ b/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Textures/Manny/T_Manny_02_D.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a8b6209275181a583ecf7cc09fddfbd572bd84cf0d1c4fb37d6a83cec57d783e +size 9033300 diff --git a/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Textures/Manny/T_Manny_02_MSR_MSK.uasset b/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Textures/Manny/T_Manny_02_MSR_MSK.uasset new file mode 100644 index 00000000..6c01dcd3 --- /dev/null +++ b/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Textures/Manny/T_Manny_02_MSR_MSK.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:4231e9852bad86777fc300d63dbaa79d39f02e05f014894e0b2d04cef1f8a3e0 +size 13677393 diff --git a/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Textures/Manny/T_Manny_02_N.uasset b/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Textures/Manny/T_Manny_02_N.uasset new file mode 100644 index 00000000..054a64a5 --- /dev/null +++ b/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Textures/Manny/T_Manny_02_N.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:766a04e3601e2f7a05e6a98a8ebcc686bbca8bcaacc03291f869068c40cf44cd +size 7269112 diff --git a/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Textures/Manny/T_Manny_02_Tan.uasset b/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Textures/Manny/T_Manny_02_Tan.uasset new file mode 100644 index 00000000..bba8ece2 --- /dev/null +++ b/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Textures/Manny/T_Manny_02_Tan.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ebbf4022a70efdc480e3880867d3a772ca2f13577514eb6b5cd9175ecc8b7ac2 +size 2153569 diff --git a/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Textures/Quinn/T_Quinn_01ID_BN.uasset b/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Textures/Quinn/T_Quinn_01ID_BN.uasset new file mode 100644 index 00000000..dc1695f8 --- /dev/null +++ b/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Textures/Quinn/T_Quinn_01ID_BN.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b9b2dbe21cd947d3615eba6478966f3521b05d09211e0628184134bfd906e21f +size 16108379 diff --git a/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Textures/Quinn/T_Quinn_01ID_D.uasset b/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Textures/Quinn/T_Quinn_01ID_D.uasset new file mode 100644 index 00000000..f2d4d67c --- /dev/null +++ b/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Textures/Quinn/T_Quinn_01ID_D.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:cd16576a92ac50a81a69f0fc1c4fee4f5a671d819f698639479a41dffcc6045e +size 4710914 diff --git a/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Textures/Quinn/T_Quinn_01ID_MSR_MSK.uasset b/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Textures/Quinn/T_Quinn_01ID_MSR_MSK.uasset new file mode 100644 index 00000000..f44f47dc --- /dev/null +++ b/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Textures/Quinn/T_Quinn_01ID_MSR_MSK.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:3b8e783361011ce33b9dea10f1bdd8f915b12efb3d3ace5c5b6d5049e7f404f9 +size 11655926 diff --git a/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Textures/Quinn/T_Quinn_01ID_N.uasset b/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Textures/Quinn/T_Quinn_01ID_N.uasset new file mode 100644 index 00000000..330656e7 --- /dev/null +++ b/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Textures/Quinn/T_Quinn_01ID_N.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:cb239cf13f6e7761a95442749a7a68d44bbb075e9dd965277107313eb8e5b290 +size 5217455 diff --git a/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Textures/Quinn/T_Quinn_01ID_Tan.uasset b/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Textures/Quinn/T_Quinn_01ID_Tan.uasset new file mode 100644 index 00000000..8cfa1129 --- /dev/null +++ b/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Textures/Quinn/T_Quinn_01ID_Tan.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:faed00de843abcb013d3b59b9ff4025a7792c970c61e08d360a46a4549ba9b21 +size 1104408 diff --git a/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Textures/Quinn/T_Quinn_01_ASAOMASK_MSK.uasset b/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Textures/Quinn/T_Quinn_01_ASAOMASK_MSK.uasset new file mode 100644 index 00000000..62a520a6 --- /dev/null +++ b/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Textures/Quinn/T_Quinn_01_ASAOMASK_MSK.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a609a98d50bac5143c9421774ce99e737b7aec6afcc762e2674751cf1367254f +size 5834622 diff --git a/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Textures/Quinn/T_Quinn_01_CCRCCPlastic_MSK.uasset b/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Textures/Quinn/T_Quinn_01_CCRCCPlastic_MSK.uasset new file mode 100644 index 00000000..e9c1f2f9 --- /dev/null +++ b/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Textures/Quinn/T_Quinn_01_CCRCCPlastic_MSK.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:4c59546202439d76750e5b2dc5ce16638e5ba8a105d23e952d947be51cf397ee +size 12399718 diff --git a/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Textures/Quinn/T_Quinn_02ID_BN.uasset b/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Textures/Quinn/T_Quinn_02ID_BN.uasset new file mode 100644 index 00000000..512284a0 --- /dev/null +++ b/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Textures/Quinn/T_Quinn_02ID_BN.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:c9e566088ab415b4ab1fbf674880372d4f1dabf66b91fd26df0f4ab109203224 +size 19706663 diff --git a/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Textures/Quinn/T_Quinn_02ID_D.uasset b/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Textures/Quinn/T_Quinn_02ID_D.uasset new file mode 100644 index 00000000..e08d9438 --- /dev/null +++ b/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Textures/Quinn/T_Quinn_02ID_D.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:5941d417ca6312003935cd4ea0b88b8192207ba1e88b3feb924e633f0080a6a9 +size 6732282 diff --git a/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Textures/Quinn/T_Quinn_02ID_MSR_MSK.uasset b/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Textures/Quinn/T_Quinn_02ID_MSR_MSK.uasset new file mode 100644 index 00000000..d387ee1a --- /dev/null +++ b/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Textures/Quinn/T_Quinn_02ID_MSR_MSK.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:79fadb22034452a17bc381ce845347c94f4cdb069f6e5d70a3caa2e50450aec7 +size 13169556 diff --git a/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Textures/Quinn/T_Quinn_02ID_N.uasset b/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Textures/Quinn/T_Quinn_02ID_N.uasset new file mode 100644 index 00000000..946ce264 --- /dev/null +++ b/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Textures/Quinn/T_Quinn_02ID_N.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:5fdce23eac905d8bef79eeb463d1b5885b1f7fe94626f261a8544050eec81149 +size 5217455 diff --git a/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Textures/Quinn/T_Quinn_02ID_Tan.uasset b/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Textures/Quinn/T_Quinn_02ID_Tan.uasset new file mode 100644 index 00000000..a9a702e2 --- /dev/null +++ b/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Textures/Quinn/T_Quinn_02ID_Tan.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f6a39df9d091562417420c2ae5f23a490ef085f51445599f708aa74b989a4fbb +size 1758275 diff --git a/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Textures/Quinn/T_Quinn_02_ASAOMASK_MSK.uasset b/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Textures/Quinn/T_Quinn_02_ASAOMASK_MSK.uasset new file mode 100644 index 00000000..d16e6bed --- /dev/null +++ b/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Textures/Quinn/T_Quinn_02_ASAOMASK_MSK.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:509bca88dce73baa774f45ee2e5a336928db2b6a5aa3f473ed05dfe1edf7fdc3 +size 6901761 diff --git a/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Textures/Quinn/T_Quinn_02_CCRCCPlastic_MSK.uasset b/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Textures/Quinn/T_Quinn_02_CCRCCPlastic_MSK.uasset new file mode 100644 index 00000000..fecab4c9 --- /dev/null +++ b/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Textures/Quinn/T_Quinn_02_CCRCCPlastic_MSK.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:9ddc71bc1851c3e8657d0093d8a8b451c7e25ed143c43e77a9c246a453c646c7 +size 13427650 diff --git a/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Textures/Shared/T_UE_Logo_M.uasset b/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Textures/Shared/T_UE_Logo_M.uasset new file mode 100644 index 00000000..1b633b61 --- /dev/null +++ b/EndlessVendetta/Content/ControlRig/Characters/Mannequins/Textures/Shared/T_UE_Logo_M.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:2a99d47f554511c79553803721702bf58f71e5c56553f1dde948aeeabb226e90 +size 69737 diff --git a/EndlessVendetta/Content/LevelPrototyping/Scenes/TutorialHit.umap b/EndlessVendetta/Content/LevelPrototyping/Scenes/TutorialHit.umap new file mode 100644 index 00000000..32e67cd1 --- /dev/null +++ b/EndlessVendetta/Content/LevelPrototyping/Scenes/TutorialHit.umap @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:9b3a3b80c0e2202acf7dee2abf480fb0af186208e3b66ad51aaee63d9cb64d49 +size 59846 diff --git a/EndlessVendetta/Content/StarterContent/Architecture/Floor_400x400.uasset b/EndlessVendetta/Content/StarterContent/Architecture/Floor_400x400.uasset index d7e5048f..e1c5d9aa 100644 --- a/EndlessVendetta/Content/StarterContent/Architecture/Floor_400x400.uasset +++ b/EndlessVendetta/Content/StarterContent/Architecture/Floor_400x400.uasset @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:4affdcf4a4ad958c59cf0f89fc2b9cd113305262e46a5221a577ae9b2fa83055 +oid sha256:1fad714b06ca68b8c0ca86d9188b06810dc1c45596e9b9feb3133228ffdc9e7e size 14831 From 262de913ce5a9a7e384cc3ce0c252123cd4ddea4 Mon Sep 17 00:00:00 2001 From: Louis Horne Date: Fri, 6 Oct 2023 10:40:08 +0100 Subject: [PATCH 064/112] Continue Tutorial Hit Blockout Finished the first floor of the tutorial hit. Carrying on to the upper floor later. --- .../Content/LevelPrototyping/Scenes/TutorialHit.umap | 4 ++-- .../Content/StarterContent/Architecture/Floor_400x400.uasset | 4 ++-- .../StarterContent/HDRI/HDRI_Epic_Courtyard_Daylight.uasset | 4 ++-- 3 files changed, 6 insertions(+), 6 deletions(-) diff --git a/EndlessVendetta/Content/LevelPrototyping/Scenes/TutorialHit.umap b/EndlessVendetta/Content/LevelPrototyping/Scenes/TutorialHit.umap index 32e67cd1..7227b585 100644 --- a/EndlessVendetta/Content/LevelPrototyping/Scenes/TutorialHit.umap +++ b/EndlessVendetta/Content/LevelPrototyping/Scenes/TutorialHit.umap @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:9b3a3b80c0e2202acf7dee2abf480fb0af186208e3b66ad51aaee63d9cb64d49 -size 59846 +oid sha256:d1c1c6bbcd436113a83a234d11ea9ffdcd3519ae2c184849d31d77d5866ed7a8 +size 132947 diff --git a/EndlessVendetta/Content/StarterContent/Architecture/Floor_400x400.uasset b/EndlessVendetta/Content/StarterContent/Architecture/Floor_400x400.uasset index e1c5d9aa..c2a34afc 100644 --- a/EndlessVendetta/Content/StarterContent/Architecture/Floor_400x400.uasset +++ b/EndlessVendetta/Content/StarterContent/Architecture/Floor_400x400.uasset @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:1fad714b06ca68b8c0ca86d9188b06810dc1c45596e9b9feb3133228ffdc9e7e -size 14831 +oid sha256:4c0ecf0ac0702cc2bd355ec050232a61c49e10f102448efbeb735a51824adef6 +size 14948 diff --git a/EndlessVendetta/Content/StarterContent/HDRI/HDRI_Epic_Courtyard_Daylight.uasset b/EndlessVendetta/Content/StarterContent/HDRI/HDRI_Epic_Courtyard_Daylight.uasset index 0f990580..1ba35309 100644 --- a/EndlessVendetta/Content/StarterContent/HDRI/HDRI_Epic_Courtyard_Daylight.uasset +++ b/EndlessVendetta/Content/StarterContent/HDRI/HDRI_Epic_Courtyard_Daylight.uasset @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:bc35eb2d43a47427d30aba0196f9eac90d089dd3abca319528c5d25c83510d0d -size 72364642 +oid sha256:dda4b9b170b4163ec9781daf3302b88539cf260efdacb29df1a4a10813400f5c +size 66790688 From b93e78108e826bf50cb3607099073ba6cf889538 Mon Sep 17 00:00:00 2001 From: Rafal Swierczek <34179rs@gmail.com> Date: Fri, 6 Oct 2023 13:42:20 +0100 Subject: [PATCH 065/112] Added Stand-In Dead Enemy --- EndlessVendetta/Content/Gadgets/BP_DeadEnemy.uasset | 3 +++ .../Gadgets/ReconGadgets/VisionLink/RG_VisionLink.uasset | 4 ++-- EndlessVendetta/Content/Levels/GadgetSystemTestLevel.umap | 4 ++-- .../Content/StarterContent/Architecture/Floor_400x400.uasset | 4 ++-- .../StarterContent/HDRI/HDRI_Epic_Courtyard_Daylight.uasset | 4 ++-- 5 files changed, 11 insertions(+), 8 deletions(-) create mode 100644 EndlessVendetta/Content/Gadgets/BP_DeadEnemy.uasset diff --git a/EndlessVendetta/Content/Gadgets/BP_DeadEnemy.uasset b/EndlessVendetta/Content/Gadgets/BP_DeadEnemy.uasset new file mode 100644 index 00000000..bbf47748 --- /dev/null +++ b/EndlessVendetta/Content/Gadgets/BP_DeadEnemy.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:4f28b60c8b026af2e9c599996f99ccc333e23e38bac7fcaf83d345bb48703edf +size 28631 diff --git a/EndlessVendetta/Content/Gadgets/ReconGadgets/VisionLink/RG_VisionLink.uasset b/EndlessVendetta/Content/Gadgets/ReconGadgets/VisionLink/RG_VisionLink.uasset index a52acef6..f0c43d86 100644 --- a/EndlessVendetta/Content/Gadgets/ReconGadgets/VisionLink/RG_VisionLink.uasset +++ b/EndlessVendetta/Content/Gadgets/ReconGadgets/VisionLink/RG_VisionLink.uasset @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:00ef54778dd4058c75ad6dca1b46531f8b20b3b154373294be43fa8d5e9ebbdc -size 106247 +oid sha256:f40722ce6381c0b65978b90489e162c36b1335524162d4b112fe22a6d382fc24 +size 108529 diff --git a/EndlessVendetta/Content/Levels/GadgetSystemTestLevel.umap b/EndlessVendetta/Content/Levels/GadgetSystemTestLevel.umap index cb32e614..80f122b6 100644 --- a/EndlessVendetta/Content/Levels/GadgetSystemTestLevel.umap +++ b/EndlessVendetta/Content/Levels/GadgetSystemTestLevel.umap @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:4b05392dd6ea5c33327b50c71be4e3b736b96c356d8de84d894562af209c1f75 -size 103876 +oid sha256:d2231f4d2a4b46f8a7daa258e14487b5ee0c0d6ed602fa256de0ef9cdd04f188 +size 106160 diff --git a/EndlessVendetta/Content/StarterContent/Architecture/Floor_400x400.uasset b/EndlessVendetta/Content/StarterContent/Architecture/Floor_400x400.uasset index c2a34afc..699c604a 100644 --- a/EndlessVendetta/Content/StarterContent/Architecture/Floor_400x400.uasset +++ b/EndlessVendetta/Content/StarterContent/Architecture/Floor_400x400.uasset @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:4c0ecf0ac0702cc2bd355ec050232a61c49e10f102448efbeb735a51824adef6 -size 14948 +oid sha256:c4ecdd1c9e06062da33fac4c12ca5f4011e86800bee678d985f6c95066e281d1 +size 14831 diff --git a/EndlessVendetta/Content/StarterContent/HDRI/HDRI_Epic_Courtyard_Daylight.uasset b/EndlessVendetta/Content/StarterContent/HDRI/HDRI_Epic_Courtyard_Daylight.uasset index caa0814c..0f990580 100644 --- a/EndlessVendetta/Content/StarterContent/HDRI/HDRI_Epic_Courtyard_Daylight.uasset +++ b/EndlessVendetta/Content/StarterContent/HDRI/HDRI_Epic_Courtyard_Daylight.uasset @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:81331a890b185a2c1bc418da80b947c289a8ab67ff91737e9b187c45c71d083d -size 66790690 +oid sha256:bc35eb2d43a47427d30aba0196f9eac90d089dd3abca319528c5d25c83510d0d +size 72364642 From 2c299728102b1f3d1ee53ed036e73477adae0b73 Mon Sep 17 00:00:00 2001 From: Marcel Hara Date: Fri, 6 Oct 2023 16:11:28 +0100 Subject: [PATCH 066/112] Added Basic weapon scope in functionality --- EndlessVendetta/Config/DefaultEditor.ini | 5 ++- .../FPWeapon/Mesh/SK_FPGun_Skeleton.uasset | 4 +- .../Blueprints/BP_FirstPersonCharacter.uasset | 4 +- .../BaseWeapons/BP_BaseWeapon.uasset | 4 +- .../Input/Actions/IA_GunAimIn.uasset | 3 ++ .../FirstPerson/Input/IMC_Default.uasset | 4 +- .../Animations/FirstPerson_AnimBP.uasset | 4 +- .../0/3Z/SNIBJQL2L6YHSC7MTTK1C2.uasset | 3 -- .../EndlessVendettaCharacter.cpp | 40 ++++++++++++++++++- .../EndlessVendettaCharacter.h | 11 ++++- .../WeaponSystem/BaseWeaponClass.cpp | 17 +++++--- .../WeaponSystem/BaseWeaponClass.h | 3 +- 12 files changed, 78 insertions(+), 24 deletions(-) create mode 100644 EndlessVendetta/Content/FirstPerson/Input/Actions/IA_GunAimIn.uasset delete mode 100644 EndlessVendetta/Content/__ExternalActors__/FirstPerson/Maps/GunMechanicTester/0/3Z/SNIBJQL2L6YHSC7MTTK1C2.uasset diff --git a/EndlessVendetta/Config/DefaultEditor.ini b/EndlessVendetta/Config/DefaultEditor.ini index 58552fae..e7314343 100644 --- a/EndlessVendetta/Config/DefaultEditor.ini +++ b/EndlessVendetta/Config/DefaultEditor.ini @@ -5,4 +5,7 @@ SimpleMapName=/Game/FirstPerson/Maps/FirstPersonExampleMap bAllowClassAndBlueprintPinMatching=true bReplaceBlueprintWithClass= true bDontLoadBlueprintOutsideEditor= true -bBlueprintIsNotBlueprintType= true \ No newline at end of file +bBlueprintIsNotBlueprintType= true + +[/Script/AdvancedPreviewScene.SharedProfiles] + diff --git a/EndlessVendetta/Content/FPWeapon/Mesh/SK_FPGun_Skeleton.uasset b/EndlessVendetta/Content/FPWeapon/Mesh/SK_FPGun_Skeleton.uasset index 69ba91c0..c6396a47 100644 --- a/EndlessVendetta/Content/FPWeapon/Mesh/SK_FPGun_Skeleton.uasset +++ b/EndlessVendetta/Content/FPWeapon/Mesh/SK_FPGun_Skeleton.uasset @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:eec8c05a75e7932e3834cbc1cd1b112f29171212b871fa1552f458ceb1b65948 -size 8000 +oid sha256:f9c7063e48c0b3c23194a6a2fc3625da96d20bbd92fece19210001cf0cac8964 +size 8568 diff --git a/EndlessVendetta/Content/FirstPerson/Blueprints/BP_FirstPersonCharacter.uasset b/EndlessVendetta/Content/FirstPerson/Blueprints/BP_FirstPersonCharacter.uasset index 0e677a52..441dabb0 100644 --- a/EndlessVendetta/Content/FirstPerson/Blueprints/BP_FirstPersonCharacter.uasset +++ b/EndlessVendetta/Content/FirstPerson/Blueprints/BP_FirstPersonCharacter.uasset @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:a64df34489d5d5452a5b7310e944fd0cb2ea1a2a52eacf2c7bcf9a8d03aadb2c -size 40999 +oid sha256:ff90caf01f6ea20dccd612ea5629215ce5c5a4a63e4da2ec242cabf9000bd6c6 +size 42353 diff --git a/EndlessVendetta/Content/FirstPerson/Blueprints/BaseWeapons/BP_BaseWeapon.uasset b/EndlessVendetta/Content/FirstPerson/Blueprints/BaseWeapons/BP_BaseWeapon.uasset index eb786d5b..dc2d119d 100644 --- a/EndlessVendetta/Content/FirstPerson/Blueprints/BaseWeapons/BP_BaseWeapon.uasset +++ b/EndlessVendetta/Content/FirstPerson/Blueprints/BaseWeapons/BP_BaseWeapon.uasset @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:c12dd919c67095a4cdc8439b9a0e8c25d5d65566abbd657d7b43bcdf6dac24b8 -size 29704 +oid sha256:af36276c4e513a207e06ec1eaa8f5c4273ab5634330a999db47ac9128e7d02ec +size 29776 diff --git a/EndlessVendetta/Content/FirstPerson/Input/Actions/IA_GunAimIn.uasset b/EndlessVendetta/Content/FirstPerson/Input/Actions/IA_GunAimIn.uasset new file mode 100644 index 00000000..59590b50 --- /dev/null +++ b/EndlessVendetta/Content/FirstPerson/Input/Actions/IA_GunAimIn.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:75503df8d15af2a4661c6cd18bc8f690d50f79cafe5ea8e2b3665db0b882cc24 +size 1370 diff --git a/EndlessVendetta/Content/FirstPerson/Input/IMC_Default.uasset b/EndlessVendetta/Content/FirstPerson/Input/IMC_Default.uasset index 6c703775..bb4e7fab 100644 --- a/EndlessVendetta/Content/FirstPerson/Input/IMC_Default.uasset +++ b/EndlessVendetta/Content/FirstPerson/Input/IMC_Default.uasset @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:639f363d6702f2597b9140becc6854a1a5e5872978e79c4a83b062ccec7c1966 -size 15739 +oid sha256:6a0af94b654f58c85c8b4453fa211608ecc7bc67b9c82e2e3768814e906babcd +size 16334 diff --git a/EndlessVendetta/Content/FirstPersonArms/Animations/FirstPerson_AnimBP.uasset b/EndlessVendetta/Content/FirstPersonArms/Animations/FirstPerson_AnimBP.uasset index c514eab5..20a95d4b 100644 --- a/EndlessVendetta/Content/FirstPersonArms/Animations/FirstPerson_AnimBP.uasset +++ b/EndlessVendetta/Content/FirstPersonArms/Animations/FirstPerson_AnimBP.uasset @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:175427d440d7f510cbbfa4630c82a677a83348f3b3b5cc555e09a7b03cf2e4ee -size 473991 +oid sha256:bc9b39a1c54d40b77f7893a00f72fc8e3feedec1d19fbdfa2db4f64d47e63bc3 +size 478510 diff --git a/EndlessVendetta/Content/__ExternalActors__/FirstPerson/Maps/GunMechanicTester/0/3Z/SNIBJQL2L6YHSC7MTTK1C2.uasset b/EndlessVendetta/Content/__ExternalActors__/FirstPerson/Maps/GunMechanicTester/0/3Z/SNIBJQL2L6YHSC7MTTK1C2.uasset deleted file mode 100644 index 82931fab..00000000 --- a/EndlessVendetta/Content/__ExternalActors__/FirstPerson/Maps/GunMechanicTester/0/3Z/SNIBJQL2L6YHSC7MTTK1C2.uasset +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:1beca35b5b67f492442adf27a1933f51133cce10ed01c3ae69b21a371efe6c4e -size 5061 diff --git a/EndlessVendetta/Source/EndlessVendetta/EndlessVendettaCharacter.cpp b/EndlessVendetta/Source/EndlessVendetta/EndlessVendettaCharacter.cpp index 38f6b3b4..d7a13fac 100644 --- a/EndlessVendetta/Source/EndlessVendetta/EndlessVendettaCharacter.cpp +++ b/EndlessVendetta/Source/EndlessVendetta/EndlessVendettaCharacter.cpp @@ -89,6 +89,8 @@ void AEndlessVendettaCharacter::SetupPlayerInputComponent(class UInputComponent* //Weapon Shooting EnhancedInputComponent->BindAction(TapShootAction, ETriggerEvent::Triggered, this, &AEndlessVendettaCharacter::FireCaller); + EnhancedInputComponent->BindAction(GunAimInAction, ETriggerEvent::Triggered, this, &AEndlessVendettaCharacter::GunRightClick); + EnhancedInputComponent->BindAction(GunAimInAction, ETriggerEvent::Completed, this, &AEndlessVendettaCharacter::StopGunRightClick); } } @@ -188,8 +190,6 @@ void AEndlessVendettaCharacter::EquipSecondary() AActor* SecondaryWeaponActor = GetWorld()->SpawnActor(SecondaryWeaponClass, spawnParams); SecondaryWeaponActor->AttachToComponent(Mesh1P, AttachmentRules, FName("GripPoint")); SecondaryWeapon = Cast(SecondaryWeaponActor); - - } //Calls the fire function in the baseWeaponClass @@ -206,6 +206,42 @@ void AEndlessVendettaCharacter::FireCaller() } } +void AEndlessVendettaCharacter::GunRightClick() +{ + if (IsValid(PrimaryWeapon)) + { + for (UActorComponent* actorComp : this->GetComponentsByTag(UArrowComponent::StaticClass(), FName("ScopedLocationArrow"))) + { + ScopedLocationArrow = Cast(actorComp); + break; + } + if (!IsValid(ScopedLocationArrow)) return; + PrimaryWeapon->SetActorLocation(ScopedLocationArrow->GetComponentLocation()); + PrimaryWeapon->WeaponScopedFire(); + this->GetFirstPersonCameraComponent()->SetFieldOfView(50); //change this number to a number you can change in editor eventually + } + if (IsValid(SecondaryWeapon)) + { + SecondaryWeapon->WeaponScopedFire(); + SecondaryWeapon->SetActorLocation(ScopedLocationArrow->GetComponentLocation()); + this->GetFirstPersonCameraComponent()->SetFieldOfView(50); //change this number to a number you can change in editor eventually + } +} + +void AEndlessVendettaCharacter::StopGunRightClick() +{ + if (IsValid(PrimaryWeapon)) + { + PrimaryWeapon->SetActorRelativeLocation(FVector(0,0,0)); + this->GetFirstPersonCameraComponent()->SetFieldOfView(90); + } + if (IsValid(SecondaryWeapon)) + { + SecondaryWeapon->SetActorRelativeLocation(FVector(0,0,0)); + this->GetFirstPersonCameraComponent()->SetFieldOfView(90); + } +} + void AEndlessVendettaCharacter::Move(const FInputActionValue& Value) { diff --git a/EndlessVendetta/Source/EndlessVendetta/EndlessVendettaCharacter.h b/EndlessVendetta/Source/EndlessVendetta/EndlessVendettaCharacter.h index 259737a7..597364e8 100644 --- a/EndlessVendetta/Source/EndlessVendetta/EndlessVendettaCharacter.h +++ b/EndlessVendetta/Source/EndlessVendetta/EndlessVendettaCharacter.h @@ -58,9 +58,9 @@ class AEndlessVendettaCharacter : public ACharacter UPROPERTY(EditAnywhere, BlueprintReadOnly, Category=Input, meta=(AllowPrivateAccess = "true")) class UInputAction* TapShootAction; - + UPROPERTY(EditAnywhere, BlueprintReadOnly, Category=Input, meta=(AllowPrivateAccess = "true")) - class UInputAction* HoldShootAction; + class UInputAction* GunAimInAction; public: AEndlessVendettaCharacter(); @@ -103,6 +103,13 @@ public: UFUNCTION(BlueprintCallable, Category = "Weapons") void FireCaller(); + UFUNCTION(BlueprintCallable, Category = "Weapons") + void GunRightClick(); + + UFUNCTION(BlueprintCallable, Category = "Weapons") + void StopGunRightClick(); + + UArrowComponent* ScopedLocationArrow; protected: /** Called for movement input */ diff --git a/EndlessVendetta/Source/EndlessVendetta/WeaponSystem/BaseWeaponClass.cpp b/EndlessVendetta/Source/EndlessVendetta/WeaponSystem/BaseWeaponClass.cpp index 170ad5ab..1e914665 100644 --- a/EndlessVendetta/Source/EndlessVendetta/WeaponSystem/BaseWeaponClass.cpp +++ b/EndlessVendetta/Source/EndlessVendetta/WeaponSystem/BaseWeaponClass.cpp @@ -52,9 +52,7 @@ void ABaseWeaponClass::Tick(float DeltaTime) } - - -// Recoil Handling // +// Recoil Handling //////////////////////////////////////////////////////////////////////////////////////////////////////////// void ABaseWeaponClass::GenerateRecoilVector() { float angle = FMath::RandRange(recoilMaxAngleLeft, -recoilMaxAngleRight); //randomg recoil vector angle between left and right @@ -117,8 +115,7 @@ void ABaseWeaponClass::UpdateSamples(float Amp, float Time) recoilCurvet = Time; } - -// Fire handling // +// Fire handling ////////////////////////////////////////////////////////////////////////////////////////////////////////// void ABaseWeaponClass::ClickDetectionTimer() { GetWorldTimerManager().SetTimer(timerHandle, this, &ABaseWeaponClass::Fire, 1 / FireRate, false); @@ -155,4 +152,14 @@ void ABaseWeaponClass::Fire() UE_LOG(LogTemp, Display, TEXT("hit item: %s"), *outHit.GetActor()->GetName()); } } + +void ABaseWeaponClass::WeaponScopedFire() +{ + UE_LOG(LogTemp, Display, TEXT("Activated WeaponScopedFire function in BaseWeaponClass")); + recoilMagnitude -= 0.2f; + recoilMaxAngleLeft /= 2.f; + recoilMaxAngleRight /= 2.f; + recoilMinMultiplier -= 2.f; +} + diff --git a/EndlessVendetta/Source/EndlessVendetta/WeaponSystem/BaseWeaponClass.h b/EndlessVendetta/Source/EndlessVendetta/WeaponSystem/BaseWeaponClass.h index b7e3b654..4e3e498a 100644 --- a/EndlessVendetta/Source/EndlessVendetta/WeaponSystem/BaseWeaponClass.h +++ b/EndlessVendetta/Source/EndlessVendetta/WeaponSystem/BaseWeaponClass.h @@ -106,7 +106,8 @@ public: UFUNCTION(BlueprintCallable, Category = "Recoil") void UpdateSamples(float Amp, float Time); - + UFUNCTION(BlueprintCallable, Category = "Weapons") + void WeaponScopedFire(); private: From 13a3900e6d9075576c266927f972d763740261d0 Mon Sep 17 00:00:00 2001 From: Marcel Hara Date: Fri, 6 Oct 2023 17:21:17 +0100 Subject: [PATCH 067/112] Added Aim In Functionality for weapons --- EndlessVendetta/Config/DefaultEngine.ini | 3 ++ .../AssaultRifles/BP_BaseAssaultRifle.uasset | 4 +- .../Input/Actions/IA_GunAimIn.uasset | 2 +- .../Animations/FirstPerson_AnimBP.uasset | 2 +- .../EndlessVendettaCharacter.cpp | 18 ++++++++- .../EndlessVendettaCharacter.h | 3 ++ .../WeaponSystem/BaseWeaponClass.cpp | 40 +++++++++++++------ .../WeaponSystem/BaseWeaponClass.h | 12 ++++-- 8 files changed, 63 insertions(+), 21 deletions(-) diff --git a/EndlessVendetta/Config/DefaultEngine.ini b/EndlessVendetta/Config/DefaultEngine.ini index f61108f4..8a52ed56 100644 --- a/EndlessVendetta/Config/DefaultEngine.ini +++ b/EndlessVendetta/Config/DefaultEngine.ini @@ -87,3 +87,6 @@ ConnectionType=USBOnly bUseManualIPAddress=False ManualIPAddress= + +[CoreRedirects] ++PropertyRedirects=(OldName="/Script/EndlessVendetta.BaseWeaponClass.player",NewName="/Script/EndlessVendetta.BaseWeaponClass.playerInWorld") \ No newline at end of file diff --git a/EndlessVendetta/Content/FirstPerson/Blueprints/BaseWeapons/AssaultRifles/BP_BaseAssaultRifle.uasset b/EndlessVendetta/Content/FirstPerson/Blueprints/BaseWeapons/AssaultRifles/BP_BaseAssaultRifle.uasset index ef248e2a..075055c8 100644 --- a/EndlessVendetta/Content/FirstPerson/Blueprints/BaseWeapons/AssaultRifles/BP_BaseAssaultRifle.uasset +++ b/EndlessVendetta/Content/FirstPerson/Blueprints/BaseWeapons/AssaultRifles/BP_BaseAssaultRifle.uasset @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:cff6a88ce5641de43b7168dbe156dc6c743108fd4fe22dd89647224cdc5249fc -size 37804 +oid sha256:4473a9d8bdd893373d3b489bc1ccb878bc568d94b9b495b1e2be83880bac0959 +size 37793 diff --git a/EndlessVendetta/Content/FirstPerson/Input/Actions/IA_GunAimIn.uasset b/EndlessVendetta/Content/FirstPerson/Input/Actions/IA_GunAimIn.uasset index 59590b50..e3118a9f 100644 --- a/EndlessVendetta/Content/FirstPerson/Input/Actions/IA_GunAimIn.uasset +++ b/EndlessVendetta/Content/FirstPerson/Input/Actions/IA_GunAimIn.uasset @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:75503df8d15af2a4661c6cd18bc8f690d50f79cafe5ea8e2b3665db0b882cc24 +oid sha256:8b9f2db74a440d4cbe20066719467311b6d43de3676027ec2162fc39a2c7ac85 size 1370 diff --git a/EndlessVendetta/Content/FirstPersonArms/Animations/FirstPerson_AnimBP.uasset b/EndlessVendetta/Content/FirstPersonArms/Animations/FirstPerson_AnimBP.uasset index 20a95d4b..44d21afa 100644 --- a/EndlessVendetta/Content/FirstPersonArms/Animations/FirstPerson_AnimBP.uasset +++ b/EndlessVendetta/Content/FirstPersonArms/Animations/FirstPerson_AnimBP.uasset @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:bc9b39a1c54d40b77f7893a00f72fc8e3feedec1d19fbdfa2db4f64d47e63bc3 +oid sha256:bd95413d072ec5535444d09946cfb0ec3f4f6392ff5712e60fa521c845b23cdc size 478510 diff --git a/EndlessVendetta/Source/EndlessVendetta/EndlessVendettaCharacter.cpp b/EndlessVendetta/Source/EndlessVendetta/EndlessVendettaCharacter.cpp index d7a13fac..93a21cd9 100644 --- a/EndlessVendetta/Source/EndlessVendetta/EndlessVendettaCharacter.cpp +++ b/EndlessVendetta/Source/EndlessVendetta/EndlessVendettaCharacter.cpp @@ -141,6 +141,7 @@ void AEndlessVendettaCharacter::EquipPrimary() if (IsValid(PrimaryWeapon)) { PrimaryWeapon->Destroy(); + this->GetFirstPersonCameraComponent()->SetFieldOfView(90); PrimaryWeapon = nullptr; bHasRifle = false; return; @@ -171,6 +172,7 @@ void AEndlessVendettaCharacter::EquipSecondary() if (IsValid(SecondaryWeapon)) { SecondaryWeapon->Destroy(); + this->GetFirstPersonCameraComponent()->SetFieldOfView(90); SecondaryWeapon = nullptr; bHasRifle = false; return; @@ -208,7 +210,7 @@ void AEndlessVendettaCharacter::FireCaller() void AEndlessVendettaCharacter::GunRightClick() { - if (IsValid(PrimaryWeapon)) + if (IsValid(PrimaryWeapon) && !bIsScoped) { for (UActorComponent* actorComp : this->GetComponentsByTag(UArrowComponent::StaticClass(), FName("ScopedLocationArrow"))) { @@ -217,11 +219,19 @@ void AEndlessVendettaCharacter::GunRightClick() } if (!IsValid(ScopedLocationArrow)) return; PrimaryWeapon->SetActorLocation(ScopedLocationArrow->GetComponentLocation()); + bIsScoped = true; PrimaryWeapon->WeaponScopedFire(); this->GetFirstPersonCameraComponent()->SetFieldOfView(50); //change this number to a number you can change in editor eventually } - if (IsValid(SecondaryWeapon)) + if (IsValid(SecondaryWeapon) && !bIsScoped) { + for (UActorComponent* actorComp : this->GetComponentsByTag(UArrowComponent::StaticClass(), FName("ScopedLocationArrow"))) + { + ScopedLocationArrow = Cast(actorComp); + break; + } + if (!IsValid(ScopedLocationArrow)) return; + bIsScoped = true; SecondaryWeapon->WeaponScopedFire(); SecondaryWeapon->SetActorLocation(ScopedLocationArrow->GetComponentLocation()); this->GetFirstPersonCameraComponent()->SetFieldOfView(50); //change this number to a number you can change in editor eventually @@ -232,11 +242,15 @@ void AEndlessVendettaCharacter::StopGunRightClick() { if (IsValid(PrimaryWeapon)) { + bIsScoped = false; + PrimaryWeapon->WeaponScopedFire(); PrimaryWeapon->SetActorRelativeLocation(FVector(0,0,0)); this->GetFirstPersonCameraComponent()->SetFieldOfView(90); } if (IsValid(SecondaryWeapon)) { + bIsScoped = false; + SecondaryWeapon->WeaponScopedFire(); SecondaryWeapon->SetActorRelativeLocation(FVector(0,0,0)); this->GetFirstPersonCameraComponent()->SetFieldOfView(90); } diff --git a/EndlessVendetta/Source/EndlessVendetta/EndlessVendettaCharacter.h b/EndlessVendetta/Source/EndlessVendetta/EndlessVendettaCharacter.h index 597364e8..8762426a 100644 --- a/EndlessVendetta/Source/EndlessVendetta/EndlessVendettaCharacter.h +++ b/EndlessVendetta/Source/EndlessVendetta/EndlessVendettaCharacter.h @@ -111,6 +111,9 @@ public: UArrowComponent* ScopedLocationArrow; + UPROPERTY(EditAnywhere, Category = "Dont Touch") + bool bIsScoped; + protected: /** Called for movement input */ void Move(const FInputActionValue& Value); diff --git a/EndlessVendetta/Source/EndlessVendetta/WeaponSystem/BaseWeaponClass.cpp b/EndlessVendetta/Source/EndlessVendetta/WeaponSystem/BaseWeaponClass.cpp index 1e914665..b0ff8a20 100644 --- a/EndlessVendetta/Source/EndlessVendetta/WeaponSystem/BaseWeaponClass.cpp +++ b/EndlessVendetta/Source/EndlessVendetta/WeaponSystem/BaseWeaponClass.cpp @@ -25,9 +25,11 @@ void ABaseWeaponClass::BeginPlay() // Attempt to find the player character APlayerController* PlayerController = UGameplayStatics::GetPlayerController(this, 0); - player = Cast(PlayerController->GetCharacter()); + playerInWorld = Cast(PlayerController->GetCharacter()); + + endlessVendettaChar = Cast(playerInWorld); - for (UActorComponent* actorComp : player->GetComponentsByTag(UArrowComponent::StaticClass(), FName("GunStart"))) + for (UActorComponent* actorComp : playerInWorld->GetComponentsByTag(UArrowComponent::StaticClass(), FName("GunStart"))) { GunStartArrow = Cast(actorComp); break; @@ -37,7 +39,11 @@ void ABaseWeaponClass::BeginPlay() { playerControllerRef = UGameplayStatics::GetPlayerController(GetWorld(), 0); } - + + originalMagnitude = recoilMagnitude; + originalMaxAngleLeft = recoilMaxAngleLeft; + originalMaxAngleRight = recoilMaxAngleRight; + originalMinMultiplier = recoilMinMultiplier; } // Called every frame @@ -45,7 +51,7 @@ void ABaseWeaponClass::Tick(float DeltaTime) { Super::Tick(DeltaTime); - if (player) + if (playerInWorld) { ApplyRecoil(DeltaTime); } @@ -76,8 +82,8 @@ void ABaseWeaponClass::ApplyRecoil(float DeltaTime) { float amplitude = RecoilCurve->GetFloatValue(recoilTime); //get current value of curve in time recoilTime += DeltaTime; - player->AddControllerPitchInput(GetRecoilPitch(amplitude, recoilTime)); - player->AddControllerYawInput(GetRecoilYaw(amplitude, recoilTime)); + playerInWorld->AddControllerPitchInput(GetRecoilPitch(amplitude, recoilTime)); + playerInWorld->AddControllerYawInput(GetRecoilYaw(amplitude, recoilTime)); UpdateSamples(amplitude, recoilTime); } } @@ -135,7 +141,7 @@ void ABaseWeaponClass::Fire() traceStart = GunStartArrow->GetComponentLocation(); traceEnd = traceStart + (GunStartArrow->GetForwardVector() * BulletDistance); FCollisionQueryParams collisionParams; - collisionParams.AddIgnoredActor(player); + collisionParams.AddIgnoredActor(playerInWorld); collisionParams.AddIgnoredActor(this); if (GetWorldTimerManager().IsTimerActive(timerHandle)) { @@ -155,11 +161,21 @@ void ABaseWeaponClass::Fire() void ABaseWeaponClass::WeaponScopedFire() { - UE_LOG(LogTemp, Display, TEXT("Activated WeaponScopedFire function in BaseWeaponClass")); - recoilMagnitude -= 0.2f; - recoilMaxAngleLeft /= 2.f; - recoilMaxAngleRight /= 2.f; - recoilMinMultiplier -= 2.f; + if (endlessVendettaChar->bIsScoped) + { + recoilMagnitude -= 0.2f; + recoilMaxAngleLeft /= 2.f; + recoilMaxAngleRight /= 2.f; + recoilMinMultiplier -= 0.2f; + + } + else + { + recoilMagnitude = originalMagnitude; + recoilMaxAngleLeft = originalMaxAngleLeft; + recoilMaxAngleRight = originalMaxAngleRight; + recoilMinMultiplier = originalMinMultiplier; + } } diff --git a/EndlessVendetta/Source/EndlessVendetta/WeaponSystem/BaseWeaponClass.h b/EndlessVendetta/Source/EndlessVendetta/WeaponSystem/BaseWeaponClass.h index 4e3e498a..8eb2d617 100644 --- a/EndlessVendetta/Source/EndlessVendetta/WeaponSystem/BaseWeaponClass.h +++ b/EndlessVendetta/Source/EndlessVendetta/WeaponSystem/BaseWeaponClass.h @@ -69,9 +69,10 @@ public: void CancelFire(); UPROPERTY(VisibleAnywhere) - ACharacter* player; - - UPROPERTY() + ACharacter* playerInWorld; + + AEndlessVendettaCharacter* endlessVendettaChar; + APlayerController* playerControllerRef; FTimerHandle timerHandle; @@ -115,5 +116,10 @@ private: UPROPERTY(EditAnywhere) float BulletDistance; + + float originalMagnitude; + float originalMaxAngleLeft; + float originalMaxAngleRight; + float originalMinMultiplier; }; From c025d84a907af5ab6c9a4ee5f11d41a748a87bb9 Mon Sep 17 00:00:00 2001 From: Marcel Hara Date: Fri, 6 Oct 2023 17:29:55 +0100 Subject: [PATCH 068/112] Changed weapon values --- .../BaseWeapons/AssaultRifles/BP_BaseAssaultRifle.uasset | 4 ++-- .../BaseWeapons/WeaonRecoil/AssaultRecoilPattern.uasset | 4 ++-- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/EndlessVendetta/Content/FirstPerson/Blueprints/BaseWeapons/AssaultRifles/BP_BaseAssaultRifle.uasset b/EndlessVendetta/Content/FirstPerson/Blueprints/BaseWeapons/AssaultRifles/BP_BaseAssaultRifle.uasset index 075055c8..bda0660d 100644 --- a/EndlessVendetta/Content/FirstPerson/Blueprints/BaseWeapons/AssaultRifles/BP_BaseAssaultRifle.uasset +++ b/EndlessVendetta/Content/FirstPerson/Blueprints/BaseWeapons/AssaultRifles/BP_BaseAssaultRifle.uasset @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:4473a9d8bdd893373d3b489bc1ccb878bc568d94b9b495b1e2be83880bac0959 -size 37793 +oid sha256:4b3aee8c3c553b35b2e127ddd7dd44974fda5563ad4eb9bc18a34efceee4d004 +size 37850 diff --git a/EndlessVendetta/Content/FirstPerson/Blueprints/BaseWeapons/WeaonRecoil/AssaultRecoilPattern.uasset b/EndlessVendetta/Content/FirstPerson/Blueprints/BaseWeapons/WeaonRecoil/AssaultRecoilPattern.uasset index 6fa60a25..423c7283 100644 --- a/EndlessVendetta/Content/FirstPerson/Blueprints/BaseWeapons/WeaonRecoil/AssaultRecoilPattern.uasset +++ b/EndlessVendetta/Content/FirstPerson/Blueprints/BaseWeapons/WeaonRecoil/AssaultRecoilPattern.uasset @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:5f4479a0f7cd596b9f9d263ba4898b07487d8e065ec43bd14dd4ea87d239695d -size 2006 +oid sha256:b63c754fc78a67f950a91e30dd31a6778bac31a485191b9cc14560515d5012a5 +size 2033 From 0f5c983e755e400596719db30446f8a01c621f3e Mon Sep 17 00:00:00 2001 From: Rafal Swierczek <34179rs@gmail.com> Date: Fri, 6 Oct 2023 18:27:33 +0100 Subject: [PATCH 069/112] Implemented AOverloadModule and its Activation Functions --- .../OverloadModule/CG_OverloadModule.uasset | 3 + .../Content/Levels/GadgetSystemTestLevel.umap | 4 +- .../Architecture/Floor_400x400.uasset | 4 +- .../Props/MaterialSphere.uasset | 4 +- .../Combat/OverloadModule/OverloadModule.cpp | 122 ++++++++++++++++++ .../Combat/OverloadModule/OverloadModule.h | 64 +++++++++ 6 files changed, 195 insertions(+), 6 deletions(-) create mode 100644 EndlessVendetta/Content/Gadgets/CombatGadgets/OverloadModule/CG_OverloadModule.uasset create mode 100644 EndlessVendetta/Source/EndlessVendetta/GadgetSystem/GadgetClasses/Combat/OverloadModule/OverloadModule.cpp create mode 100644 EndlessVendetta/Source/EndlessVendetta/GadgetSystem/GadgetClasses/Combat/OverloadModule/OverloadModule.h diff --git a/EndlessVendetta/Content/Gadgets/CombatGadgets/OverloadModule/CG_OverloadModule.uasset b/EndlessVendetta/Content/Gadgets/CombatGadgets/OverloadModule/CG_OverloadModule.uasset new file mode 100644 index 00000000..4d8790c5 --- /dev/null +++ b/EndlessVendetta/Content/Gadgets/CombatGadgets/OverloadModule/CG_OverloadModule.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:7d61bb4d0a3f7c25b8901699a8047059fb83a255d89990a5b366410f51d23792 +size 23259 diff --git a/EndlessVendetta/Content/Levels/GadgetSystemTestLevel.umap b/EndlessVendetta/Content/Levels/GadgetSystemTestLevel.umap index 80f122b6..62d689b2 100644 --- a/EndlessVendetta/Content/Levels/GadgetSystemTestLevel.umap +++ b/EndlessVendetta/Content/Levels/GadgetSystemTestLevel.umap @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:d2231f4d2a4b46f8a7daa258e14487b5ee0c0d6ed602fa256de0ef9cdd04f188 -size 106160 +oid sha256:f27623f7de4cd3ffafc332f52d32f9d58031dad0ba48c3954472553188926618 +size 106253 diff --git a/EndlessVendetta/Content/StarterContent/Architecture/Floor_400x400.uasset b/EndlessVendetta/Content/StarterContent/Architecture/Floor_400x400.uasset index 699c604a..c2a34afc 100644 --- a/EndlessVendetta/Content/StarterContent/Architecture/Floor_400x400.uasset +++ b/EndlessVendetta/Content/StarterContent/Architecture/Floor_400x400.uasset @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:c4ecdd1c9e06062da33fac4c12ca5f4011e86800bee678d985f6c95066e281d1 -size 14831 +oid sha256:4c0ecf0ac0702cc2bd355ec050232a61c49e10f102448efbeb735a51824adef6 +size 14948 diff --git a/EndlessVendetta/Content/StarterContent/Props/MaterialSphere.uasset b/EndlessVendetta/Content/StarterContent/Props/MaterialSphere.uasset index 56bddfc9..7759cc15 100644 --- a/EndlessVendetta/Content/StarterContent/Props/MaterialSphere.uasset +++ b/EndlessVendetta/Content/StarterContent/Props/MaterialSphere.uasset @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:3a8777c01491888bba9f40eda9d2bed76a611f0e80f75917501ce69c1a321342 -size 47333 +oid sha256:a34dc965cab9faa793895f1015563f0440389135257bb3e9682863c87e3cdae1 +size 47710 diff --git a/EndlessVendetta/Source/EndlessVendetta/GadgetSystem/GadgetClasses/Combat/OverloadModule/OverloadModule.cpp b/EndlessVendetta/Source/EndlessVendetta/GadgetSystem/GadgetClasses/Combat/OverloadModule/OverloadModule.cpp new file mode 100644 index 00000000..1ad9fad0 --- /dev/null +++ b/EndlessVendetta/Source/EndlessVendetta/GadgetSystem/GadgetClasses/Combat/OverloadModule/OverloadModule.cpp @@ -0,0 +1,122 @@ +// Fill out your copyright notice in the Description page of Project Settings. + + +#include "OverloadModule.h" + +#include "BehaviorTree/BTCompositeNode.h" +#include "Components/SphereComponent.h" +#include "GameFramework/Character.h" + +void AOverloadModule::BeginPlay() +{ + Super::BeginPlay(); + + this->SetActorTickInterval(0.2); + PlayerChar = GetWorld()->GetFirstPlayerController()->GetCharacter(); + PlayerCam = Cast(PlayerChar->GetComponentByClass(UCameraComponent::StaticClass())); +} + + +void AOverloadModule::Tick(float DeltaSeconds) +{ + Super::Tick(DeltaSeconds); + + CheckForPotentialHackTarget(); +} + +void AOverloadModule::CheckForPotentialHackTarget() +{ + FHitResult OutHit; + FVector LT_Start = PlayerCam->GetComponentLocation(); + FVector LT_End = PlayerCam->GetComponentLocation() + (PlayerCam->GetForwardVector() * DeadBodyCheckDistance); + + DrawDebugLine(GetWorld(), LT_Start, LT_End, FColor::Red, false, 0.2, 0, 1); + + if (!GetWorld()->LineTraceSingleByChannel(OutHit, LT_Start, LT_End, ECC_Camera) || !(OutHit.GetActor()->ActorHasTag(FName("Enemy")) && OutHit.GetActor()->ActorHasTag(FName("Dead")))) + { + PotentialHackTarget = nullptr; + DisplayNeedADeadEnemy(); + return; + } + + if (HackedEnemies.Contains(OutHit.GetActor()->GetUniqueID())) + { + PotentialHackTarget = nullptr; + DisplayAlreadyHacked(); + } + + DrawDebugLine(GetWorld(), LT_Start, OutHit.ImpactPoint, FColor::Green, false, 0.2, 0, 1); + PotentialHackTarget = OutHit.GetActor(); + DisplayFoundPotentialTarget(); +} + + +void AOverloadModule::Activate() +{ + if (GadgetCantBeUsed() || !IsValid(PotentialHackTarget)) return; + + Super::Activate(); + HackedEnemies.Add(PotentialHackTarget->GetUniqueID()); + ExplodeClosestAliveEnemy(); +} + +void AOverloadModule::FinishedUsing() +{ + Super::FinishedUsing(); +} + +void AOverloadModule::ExplodeClosestAliveEnemy() +{ + FActorSpawnParameters SpawnParams; + SpawnParams.SpawnCollisionHandlingOverride = ESpawnActorCollisionHandlingMethod::AlwaysSpawn; + AActor* SphereCollisionActor = GetWorld()->SpawnActor(USphereComponent::StaticClass(), PlayerChar->GetActorLocation(), PlayerChar->GetActorRotation(), SpawnParams); + USphereComponent* SphereCollision = Cast(SphereCollisionActor); + + SphereCollision->SetHiddenInGame(false); + SphereCollision->SetSphereRadius(AreaOfEffectInMeters * 100, true); + + TArray OverlappingActors; + TArray EnemiesInRadius; + + // Find all living enemies within the radius + SphereCollision->GetOverlappingActors(OverlappingActors, ACharacter::StaticClass()); + for (AActor* OverlappingActor : OverlappingActors) + { + if (OverlappingActor->ActorHasTag(FName("Enemy")) && !OverlappingActor->ActorHasTag(FName("Dead"))) EnemiesInRadius.Add(OverlappingActor); + } + + if (EnemiesInRadius.IsEmpty()) + { + DisplayFailedToFindTarget(); + return; + } + + // Find the closest Enemy in radius + AActor* ClosestEnemy = EnemiesInRadius[0]; + float Dist = FVector::Distance(PlayerChar->GetActorLocation(), ClosestEnemy->GetActorLocation()); + UE_LOG(LogTemp, Warning, TEXT("Distacne To first Considered Enemy = %f"), Dist); + if (EnemiesInRadius.Num() < 2) + { + SpawnExplosiveOnActor(ClosestEnemy, SpawnParams); + return; + } + + for (int i = 1; i < EnemiesInRadius.Num(); i++) + { + float ConsideredDist = FVector::Distance(PlayerChar->GetActorLocation(), EnemiesInRadius[i]->GetActorLocation()); + if (ConsideredDist <= Dist) + { + ClosestEnemy = EnemiesInRadius[i]; + Dist = ConsideredDist; + } + } + + SpawnExplosiveOnActor(ClosestEnemy, SpawnParams); + +} + +void AOverloadModule::SpawnExplosiveOnActor(AActor* ActortoExplode, FActorSpawnParameters SpawnParams) +{ + GetWorld()->SpawnActor(Explosive, ActortoExplode->GetActorLocation(), ActortoExplode->GetActorRotation(), SpawnParams); +} + diff --git a/EndlessVendetta/Source/EndlessVendetta/GadgetSystem/GadgetClasses/Combat/OverloadModule/OverloadModule.h b/EndlessVendetta/Source/EndlessVendetta/GadgetSystem/GadgetClasses/Combat/OverloadModule/OverloadModule.h new file mode 100644 index 00000000..7dbfcb41 --- /dev/null +++ b/EndlessVendetta/Source/EndlessVendetta/GadgetSystem/GadgetClasses/Combat/OverloadModule/OverloadModule.h @@ -0,0 +1,64 @@ +// Fill out your copyright notice in the Description page of Project Settings. + +#pragma once + +#include "CoreMinimal.h" +#include "Camera/CameraComponent.h" +#include "EndlessVendetta/GadgetSystem/CombatGadget.h" +#include "EndlessVendetta/GadgetSystem/GadgetClasses/Combat/Explosive.h" +#include "OverloadModule.generated.h" + +/** + * + */ +UCLASS() +class ENDLESSVENDETTA_API AOverloadModule : public ACombatGadget +{ + GENERATED_BODY() + + ACharacter* PlayerChar; + + UCameraComponent* PlayerCam; + + AActor* PotentialHackTarget; + + // An Array of previously hacked enemies, stops player from hacking the same Dead Enemy + TArray HackedEnemies; + + virtual void BeginPlay() override; + + virtual void Tick(float DeltaSeconds) override; + + virtual void Activate() override; + + virtual void FinishedUsing() override; + + void CheckForPotentialHackTarget(); + + void ExplodeClosestAliveEnemy(); + + void SpawnExplosiveOnActor(AActor* ActortoExplode, FActorSpawnParameters SpawnParams); + +protected: + UPROPERTY(EditDefaultsOnly, Category = "Overload Module") + float AreaOfEffectInMeters = 15; + + UPROPERTY(EditDefaultsOnly, Category = "Overload Module") + float DeadBodyCheckDistance = 300; + + UPROPERTY(EditDefaultsOnly, Category = "Overload Module") + TSubclassOf Explosive; + +// --------------- Display Functions --------------- + UFUNCTION(BlueprintImplementableEvent, Category = "Overload Module") + void DisplayAlreadyHacked(); + + UFUNCTION(BlueprintImplementableEvent, Category = "Overload Module") + void DisplayNeedADeadEnemy(); + + UFUNCTION(BlueprintImplementableEvent, Category = "Overload Module") + void DisplayFoundPotentialTarget(); + + UFUNCTION(BlueprintImplementableEvent, Category = "Overload Module") + void DisplayFailedToFindTarget(); +}; From 588b2e5a91c4991e97dfacb0bb4ca8b3b8c6a6f8 Mon Sep 17 00:00:00 2001 From: Rafal Swierczek <34179rs@gmail.com> Date: Fri, 6 Oct 2023 18:27:57 +0100 Subject: [PATCH 070/112] Implemented a Generic Explosive Class --- .../Content/Gadgets/BP_Explosive.uasset | 3 ++ .../GadgetClasses/Combat/Explosive.cpp | 29 +++++++++++++++++++ .../GadgetClasses/Combat/Explosive.h | 26 +++++++++++++++++ 3 files changed, 58 insertions(+) create mode 100644 EndlessVendetta/Content/Gadgets/BP_Explosive.uasset create mode 100644 EndlessVendetta/Source/EndlessVendetta/GadgetSystem/GadgetClasses/Combat/Explosive.cpp create mode 100644 EndlessVendetta/Source/EndlessVendetta/GadgetSystem/GadgetClasses/Combat/Explosive.h diff --git a/EndlessVendetta/Content/Gadgets/BP_Explosive.uasset b/EndlessVendetta/Content/Gadgets/BP_Explosive.uasset new file mode 100644 index 00000000..e4a28dde --- /dev/null +++ b/EndlessVendetta/Content/Gadgets/BP_Explosive.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:c546719195bfec717a1ea448ffd23e7eea15b3997b28a7bec6582c82fd6e0889 +size 16032 diff --git a/EndlessVendetta/Source/EndlessVendetta/GadgetSystem/GadgetClasses/Combat/Explosive.cpp b/EndlessVendetta/Source/EndlessVendetta/GadgetSystem/GadgetClasses/Combat/Explosive.cpp new file mode 100644 index 00000000..5f36be4b --- /dev/null +++ b/EndlessVendetta/Source/EndlessVendetta/GadgetSystem/GadgetClasses/Combat/Explosive.cpp @@ -0,0 +1,29 @@ +// Fill out your copyright notice in the Description page of Project Settings. + + +#include "Explosive.h" + +// Sets default values +AExplosive::AExplosive() +{ + // Set this actor to call Tick() every frame. You can turn this off to improve performance if you don't need it. + PrimaryActorTick.bCanEverTick = true; + +} + +// Called when the game starts or when spawned +void AExplosive::BeginPlay() +{ + Super::BeginPlay(); + + UE_LOG(LogTemp, Warning, TEXT("An explosive has Spawned in ;)")); + +} + +// Called every frame +void AExplosive::Tick(float DeltaTime) +{ + Super::Tick(DeltaTime); + +} + diff --git a/EndlessVendetta/Source/EndlessVendetta/GadgetSystem/GadgetClasses/Combat/Explosive.h b/EndlessVendetta/Source/EndlessVendetta/GadgetSystem/GadgetClasses/Combat/Explosive.h new file mode 100644 index 00000000..b2c9f019 --- /dev/null +++ b/EndlessVendetta/Source/EndlessVendetta/GadgetSystem/GadgetClasses/Combat/Explosive.h @@ -0,0 +1,26 @@ +// Fill out your copyright notice in the Description page of Project Settings. + +#pragma once + +#include "CoreMinimal.h" +#include "GameFramework/Actor.h" +#include "Explosive.generated.h" + +UCLASS() +class ENDLESSVENDETTA_API AExplosive : public AActor +{ + GENERATED_BODY() + +public: + // Sets default values for this actor's properties + AExplosive(); + +protected: + // Called when the game starts or when spawned + virtual void BeginPlay() override; + +public: + // Called every frame + virtual void Tick(float DeltaTime) override; + +}; From 6bcc703974f0f748ecbdf16e07edeefc8dd8254b Mon Sep 17 00:00:00 2001 From: Rafal Swierczek <34179rs@gmail.com> Date: Fri, 6 Oct 2023 19:58:51 +0100 Subject: [PATCH 071/112] Started Working on UI for Overload Module --- .../Content/Gadgets/BP_DeadEnemy.uasset | 4 +-- .../Content/Gadgets/BP_Explosive.uasset | 4 +-- .../OverloadModule/CG_OverloadModule.uasset | 4 +-- .../OverloadModule/WBP_OM_ScreenWidget.uasset | 3 ++ .../Content/Gadgets/GM_GadgetManager.uasset | 4 +-- .../Content/Levels/GadgetSystemTestLevel.umap | 2 +- .../Blueprints/Blueprint_CeilingLight.uasset | 4 +-- .../Props/MaterialSphere.uasset | 4 +-- .../Combat/OverloadModule/OverloadModule.cpp | 28 +++++++++++-------- .../Combat/OverloadModule/OverloadModule.h | 9 ++++-- 10 files changed, 38 insertions(+), 28 deletions(-) create mode 100644 EndlessVendetta/Content/Gadgets/CombatGadgets/OverloadModule/WBP_OM_ScreenWidget.uasset diff --git a/EndlessVendetta/Content/Gadgets/BP_DeadEnemy.uasset b/EndlessVendetta/Content/Gadgets/BP_DeadEnemy.uasset index bbf47748..934ef0f7 100644 --- a/EndlessVendetta/Content/Gadgets/BP_DeadEnemy.uasset +++ b/EndlessVendetta/Content/Gadgets/BP_DeadEnemy.uasset @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:4f28b60c8b026af2e9c599996f99ccc333e23e38bac7fcaf83d345bb48703edf -size 28631 +oid sha256:45e0a403f0bfb807fb6b6b3fe987c02e2f1f79af908507e8071a0c6259d64ed1 +size 28624 diff --git a/EndlessVendetta/Content/Gadgets/BP_Explosive.uasset b/EndlessVendetta/Content/Gadgets/BP_Explosive.uasset index e4a28dde..7589b28e 100644 --- a/EndlessVendetta/Content/Gadgets/BP_Explosive.uasset +++ b/EndlessVendetta/Content/Gadgets/BP_Explosive.uasset @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:c546719195bfec717a1ea448ffd23e7eea15b3997b28a7bec6582c82fd6e0889 -size 16032 +oid sha256:f28aca2e17c3afa2dd55c79b5f66c1ea851dd8067e0712fbc9677ca614f8c927 +size 16005 diff --git a/EndlessVendetta/Content/Gadgets/CombatGadgets/OverloadModule/CG_OverloadModule.uasset b/EndlessVendetta/Content/Gadgets/CombatGadgets/OverloadModule/CG_OverloadModule.uasset index 4d8790c5..1093b52a 100644 --- a/EndlessVendetta/Content/Gadgets/CombatGadgets/OverloadModule/CG_OverloadModule.uasset +++ b/EndlessVendetta/Content/Gadgets/CombatGadgets/OverloadModule/CG_OverloadModule.uasset @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:7d61bb4d0a3f7c25b8901699a8047059fb83a255d89990a5b366410f51d23792 -size 23259 +oid sha256:599c54946bc53ff3d3ee06fc5c1e8322aa69d8a54380df1e8a63a41c5aefed46 +size 22249 diff --git a/EndlessVendetta/Content/Gadgets/CombatGadgets/OverloadModule/WBP_OM_ScreenWidget.uasset b/EndlessVendetta/Content/Gadgets/CombatGadgets/OverloadModule/WBP_OM_ScreenWidget.uasset new file mode 100644 index 00000000..042d528a --- /dev/null +++ b/EndlessVendetta/Content/Gadgets/CombatGadgets/OverloadModule/WBP_OM_ScreenWidget.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:1fa538706ad1bf961d40e82afa4e2ff2937e4377d353f0db4b46cd1599609d19 +size 25427 diff --git a/EndlessVendetta/Content/Gadgets/GM_GadgetManager.uasset b/EndlessVendetta/Content/Gadgets/GM_GadgetManager.uasset index 3f170b83..b227979b 100644 --- a/EndlessVendetta/Content/Gadgets/GM_GadgetManager.uasset +++ b/EndlessVendetta/Content/Gadgets/GM_GadgetManager.uasset @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:654adc50d788c8fb0546796c4a290967958f12c156d3a135034339350831dba6 -size 22655 +oid sha256:5aba529a9880bd712825883152d7ea40ba2c5e309dbd8d783942cdcb1e1879bf +size 22674 diff --git a/EndlessVendetta/Content/Levels/GadgetSystemTestLevel.umap b/EndlessVendetta/Content/Levels/GadgetSystemTestLevel.umap index 62d689b2..83fabf6e 100644 --- a/EndlessVendetta/Content/Levels/GadgetSystemTestLevel.umap +++ b/EndlessVendetta/Content/Levels/GadgetSystemTestLevel.umap @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:f27623f7de4cd3ffafc332f52d32f9d58031dad0ba48c3954472553188926618 +oid sha256:35b4a02d71c80d38b36dd3e41dcc099477704b99bd7e2785129503a80a20e67e size 106253 diff --git a/EndlessVendetta/Content/StarterContent/Blueprints/Blueprint_CeilingLight.uasset b/EndlessVendetta/Content/StarterContent/Blueprints/Blueprint_CeilingLight.uasset index c5c3b84e..d5c9196d 100644 --- a/EndlessVendetta/Content/StarterContent/Blueprints/Blueprint_CeilingLight.uasset +++ b/EndlessVendetta/Content/StarterContent/Blueprints/Blueprint_CeilingLight.uasset @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:4a60a29ad596546d481e43dfb8698842a78cc07f4a4b1000fa397cfba4e72331 -size 158206 +oid sha256:b6a5543ffe1a37190e943bef495c0b5c55b3170e3609ac120b2b0197825e858d +size 43745 diff --git a/EndlessVendetta/Content/StarterContent/Props/MaterialSphere.uasset b/EndlessVendetta/Content/StarterContent/Props/MaterialSphere.uasset index 7759cc15..56bddfc9 100644 --- a/EndlessVendetta/Content/StarterContent/Props/MaterialSphere.uasset +++ b/EndlessVendetta/Content/StarterContent/Props/MaterialSphere.uasset @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:a34dc965cab9faa793895f1015563f0440389135257bb3e9682863c87e3cdae1 -size 47710 +oid sha256:3a8777c01491888bba9f40eda9d2bed76a611f0e80f75917501ce69c1a321342 +size 47333 diff --git a/EndlessVendetta/Source/EndlessVendetta/GadgetSystem/GadgetClasses/Combat/OverloadModule/OverloadModule.cpp b/EndlessVendetta/Source/EndlessVendetta/GadgetSystem/GadgetClasses/Combat/OverloadModule/OverloadModule.cpp index 1ad9fad0..5e29360d 100644 --- a/EndlessVendetta/Source/EndlessVendetta/GadgetSystem/GadgetClasses/Combat/OverloadModule/OverloadModule.cpp +++ b/EndlessVendetta/Source/EndlessVendetta/GadgetSystem/GadgetClasses/Combat/OverloadModule/OverloadModule.cpp @@ -30,9 +30,11 @@ void AOverloadModule::CheckForPotentialHackTarget() FVector LT_Start = PlayerCam->GetComponentLocation(); FVector LT_End = PlayerCam->GetComponentLocation() + (PlayerCam->GetForwardVector() * DeadBodyCheckDistance); - DrawDebugLine(GetWorld(), LT_Start, LT_End, FColor::Red, false, 0.2, 0, 1); - - if (!GetWorld()->LineTraceSingleByChannel(OutHit, LT_Start, LT_End, ECC_Camera) || !(OutHit.GetActor()->ActorHasTag(FName("Enemy")) && OutHit.GetActor()->ActorHasTag(FName("Dead")))) + //DrawDebugLine(GetWorld(), LT_Start, LT_End, FColor::Red, false, 0.2, 0, 1); + + FCollisionQueryParams QueryParams = FCollisionQueryParams::DefaultQueryParam; + QueryParams.AddIgnoredActor(PlayerChar); + if (!GetWorld()->LineTraceSingleByChannel(OutHit, LT_Start, LT_End, ECC_Camera, QueryParams) || !(OutHit.GetActor()->ActorHasTag(FName("Enemy")) && OutHit.GetActor()->ActorHasTag(FName("Dead")))) { PotentialHackTarget = nullptr; DisplayNeedADeadEnemy(); @@ -41,11 +43,13 @@ void AOverloadModule::CheckForPotentialHackTarget() if (HackedEnemies.Contains(OutHit.GetActor()->GetUniqueID())) { + UE_LOG(LogTemp, Warning, TEXT("Enemy has already been hacked!")); PotentialHackTarget = nullptr; DisplayAlreadyHacked(); + return; } - DrawDebugLine(GetWorld(), LT_Start, OutHit.ImpactPoint, FColor::Green, false, 0.2, 0, 1); + //DrawDebugLine(GetWorld(), LT_Start, OutHit.ImpactPoint, FColor::Green, false, 0.2, 0, 1); PotentialHackTarget = OutHit.GetActor(); DisplayFoundPotentialTarget(); } @@ -58,6 +62,7 @@ void AOverloadModule::Activate() Super::Activate(); HackedEnemies.Add(PotentialHackTarget->GetUniqueID()); ExplodeClosestAliveEnemy(); + PlayHackingAnim(GadgetMaxUptime); } void AOverloadModule::FinishedUsing() @@ -67,10 +72,8 @@ void AOverloadModule::FinishedUsing() void AOverloadModule::ExplodeClosestAliveEnemy() { - FActorSpawnParameters SpawnParams; - SpawnParams.SpawnCollisionHandlingOverride = ESpawnActorCollisionHandlingMethod::AlwaysSpawn; - AActor* SphereCollisionActor = GetWorld()->SpawnActor(USphereComponent::StaticClass(), PlayerChar->GetActorLocation(), PlayerChar->GetActorRotation(), SpawnParams); - USphereComponent* SphereCollision = Cast(SphereCollisionActor); + FTransform EmptyTransform; + USphereComponent* SphereCollision = Cast(AddComponentByClass(USphereComponent::StaticClass(), false, EmptyTransform, false)); SphereCollision->SetHiddenInGame(false); SphereCollision->SetSphereRadius(AreaOfEffectInMeters * 100, true); @@ -94,10 +97,9 @@ void AOverloadModule::ExplodeClosestAliveEnemy() // Find the closest Enemy in radius AActor* ClosestEnemy = EnemiesInRadius[0]; float Dist = FVector::Distance(PlayerChar->GetActorLocation(), ClosestEnemy->GetActorLocation()); - UE_LOG(LogTemp, Warning, TEXT("Distacne To first Considered Enemy = %f"), Dist); if (EnemiesInRadius.Num() < 2) { - SpawnExplosiveOnActor(ClosestEnemy, SpawnParams); + SpawnExplosiveOnActor(ClosestEnemy); return; } @@ -111,12 +113,14 @@ void AOverloadModule::ExplodeClosestAliveEnemy() } } - SpawnExplosiveOnActor(ClosestEnemy, SpawnParams); + SpawnExplosiveOnActor(ClosestEnemy); } -void AOverloadModule::SpawnExplosiveOnActor(AActor* ActortoExplode, FActorSpawnParameters SpawnParams) +void AOverloadModule::SpawnExplosiveOnActor(AActor* ActortoExplode) { + FActorSpawnParameters SpawnParams; + SpawnParams.SpawnCollisionHandlingOverride = ESpawnActorCollisionHandlingMethod::AlwaysSpawn; GetWorld()->SpawnActor(Explosive, ActortoExplode->GetActorLocation(), ActortoExplode->GetActorRotation(), SpawnParams); } diff --git a/EndlessVendetta/Source/EndlessVendetta/GadgetSystem/GadgetClasses/Combat/OverloadModule/OverloadModule.h b/EndlessVendetta/Source/EndlessVendetta/GadgetSystem/GadgetClasses/Combat/OverloadModule/OverloadModule.h index 7dbfcb41..63e5d40f 100644 --- a/EndlessVendetta/Source/EndlessVendetta/GadgetSystem/GadgetClasses/Combat/OverloadModule/OverloadModule.h +++ b/EndlessVendetta/Source/EndlessVendetta/GadgetSystem/GadgetClasses/Combat/OverloadModule/OverloadModule.h @@ -37,14 +37,14 @@ class ENDLESSVENDETTA_API AOverloadModule : public ACombatGadget void ExplodeClosestAliveEnemy(); - void SpawnExplosiveOnActor(AActor* ActortoExplode, FActorSpawnParameters SpawnParams); + void SpawnExplosiveOnActor(AActor* ActortoExplode); protected: UPROPERTY(EditDefaultsOnly, Category = "Overload Module") - float AreaOfEffectInMeters = 15; + float AreaOfEffectInMeters = 20; UPROPERTY(EditDefaultsOnly, Category = "Overload Module") - float DeadBodyCheckDistance = 300; + float DeadBodyCheckDistance = 250; UPROPERTY(EditDefaultsOnly, Category = "Overload Module") TSubclassOf Explosive; @@ -61,4 +61,7 @@ protected: UFUNCTION(BlueprintImplementableEvent, Category = "Overload Module") void DisplayFailedToFindTarget(); + + UFUNCTION(BlueprintImplementableEvent, Category = "Overload Module") + void PlayHackingAnim(float Loadingtime); }; From 8ef1ecf488068bb956a285e7365b84472c08fe18 Mon Sep 17 00:00:00 2001 From: PHILIP WHITE Date: Sat, 7 Oct 2023 00:30:37 +0100 Subject: [PATCH 072/112] Updated PlayerCharacter to Crouch --- .../Blueprints/BP_FirstPersonCharacter.uasset | 4 +- .../Input/Actions/IA_Crouch.uasset | 3 + .../FirstPerson/Input/IMC_Default.uasset | 4 +- .../VisionLink/Ping/PingImage.uasset | 4 +- .../EndlessVendettaCharacter.cpp | 90 +++++++++++-------- .../EndlessVendettaCharacter.h | 47 +++++----- 6 files changed, 87 insertions(+), 65 deletions(-) create mode 100644 EndlessVendetta/Content/FirstPerson/Input/Actions/IA_Crouch.uasset diff --git a/EndlessVendetta/Content/FirstPerson/Blueprints/BP_FirstPersonCharacter.uasset b/EndlessVendetta/Content/FirstPerson/Blueprints/BP_FirstPersonCharacter.uasset index 68a7823a..c68329b2 100644 --- a/EndlessVendetta/Content/FirstPerson/Blueprints/BP_FirstPersonCharacter.uasset +++ b/EndlessVendetta/Content/FirstPerson/Blueprints/BP_FirstPersonCharacter.uasset @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:072d87c768407249e6e50f7b87ab9a88392c17cf82c72934e3c947e2943210bb -size 26284 +oid sha256:dfda56ad26d2c6bcc0fec5a9baf228eeba7cf6c4728566886d051ea933c3e3f2 +size 26540 diff --git a/EndlessVendetta/Content/FirstPerson/Input/Actions/IA_Crouch.uasset b/EndlessVendetta/Content/FirstPerson/Input/Actions/IA_Crouch.uasset new file mode 100644 index 00000000..9572838e --- /dev/null +++ b/EndlessVendetta/Content/FirstPerson/Input/Actions/IA_Crouch.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:89e10b0349f4813e2c47bd905ee012e34d04b54d8e793ab70c6f813652b06cc9 +size 1360 diff --git a/EndlessVendetta/Content/FirstPerson/Input/IMC_Default.uasset b/EndlessVendetta/Content/FirstPerson/Input/IMC_Default.uasset index 55abcd6c..aea937a7 100644 --- a/EndlessVendetta/Content/FirstPerson/Input/IMC_Default.uasset +++ b/EndlessVendetta/Content/FirstPerson/Input/IMC_Default.uasset @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:3af06cb5478091fcf55d1069e28395f32708276bd53cc5dce82faa2a2d1f822b -size 16317 +oid sha256:16c8e5300c4e8a4ec385de79af752132edd42ddda7a67010daca5a560dc82ac4 +size 16903 diff --git a/EndlessVendetta/Content/Gadgets/ReconGadgets/VisionLink/Ping/PingImage.uasset b/EndlessVendetta/Content/Gadgets/ReconGadgets/VisionLink/Ping/PingImage.uasset index 9f97a970..60b1fbff 100644 --- a/EndlessVendetta/Content/Gadgets/ReconGadgets/VisionLink/Ping/PingImage.uasset +++ b/EndlessVendetta/Content/Gadgets/ReconGadgets/VisionLink/Ping/PingImage.uasset @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:d64b09bc01c01afde43af7565f5c136c6dff1330b0db17d871964513366fc5ad -size 74632 +oid sha256:71d15ce6872f9185621eabe6eb24774f8014dfddbc4e89e6c6961f662d269445 +size 74727 diff --git a/EndlessVendetta/Source/EndlessVendetta/EndlessVendettaCharacter.cpp b/EndlessVendetta/Source/EndlessVendetta/EndlessVendettaCharacter.cpp index 448d805c..2c982762 100644 --- a/EndlessVendetta/Source/EndlessVendetta/EndlessVendettaCharacter.cpp +++ b/EndlessVendetta/Source/EndlessVendetta/EndlessVendettaCharacter.cpp @@ -6,6 +6,7 @@ #include "Components/CapsuleComponent.h" #include "EnhancedInputComponent.h" #include "EnhancedInputSubsystems.h" +#include "GameFramework/CharacterMovementComponent.h" ////////////////////////////////////////////////////////////////////////// @@ -16,6 +17,8 @@ AEndlessVendettaCharacter::AEndlessVendettaCharacter() // Character doesnt have a rifle at start bHasRifle = false; + //Enable Crouching + GetCharacterMovement()->GetNavAgentPropertiesRef().bCanCrouch = true; // Set size for collision capsule GetCapsuleComponent()->InitCapsuleSize(55.f, 96.0f); @@ -33,7 +36,6 @@ AEndlessVendettaCharacter::AEndlessVendettaCharacter() Mesh1P->CastShadow = false; //Mesh1P->SetRelativeRotation(FRotator(0.9f, -19.19f, 5.2f)); Mesh1P->SetRelativeLocation(FVector(-30.f, 0.f, -150.f)); - } void AEndlessVendettaCharacter::BeginPlay() @@ -59,7 +61,6 @@ void AEndlessVendettaCharacter::BeginPlay() GadgetManager->SpawnGadgets(Cast(PlayersCamera)); break; } - } //////////////////////////////////////////////////////////////////////////// Input @@ -82,16 +83,32 @@ void AEndlessVendettaCharacter::SetupPlayerInputComponent(class UInputComponent* // Gadget Toggling EnhancedInputComponent->BindAction(ReconAction, ETriggerEvent::Started, this, &AEndlessVendettaCharacter::ToggleRecon); EnhancedInputComponent->BindAction(CombatAction, ETriggerEvent::Started, this, &AEndlessVendettaCharacter::ToggleCombat); - + //Weapon Switching EnhancedInputComponent->BindAction(EquipPrimaryWeapon, ETriggerEvent::Triggered, this, &AEndlessVendettaCharacter::EquipPrimary); EnhancedInputComponent->BindAction(EquipSecondaryWeapon, ETriggerEvent::Triggered, this, &AEndlessVendettaCharacter::EquipSecondary); //Weapon Shooting EnhancedInputComponent->BindAction(TapShootAction, ETriggerEvent::Triggered, this, &AEndlessVendettaCharacter::TapFireCaller); + + //Crouching + EnhancedInputComponent->BindAction(CrouchAction, ETriggerEvent::Started, this, &AEndlessVendettaCharacter::SetCrouch); + EnhancedInputComponent->BindAction(CrouchAction, ETriggerEvent::Completed, this, &AEndlessVendettaCharacter::SetUnCrouch); } } +void AEndlessVendettaCharacter::SetCrouch() +{ + Crouch(); + GLog->Log("Crouching"); +} + +void AEndlessVendettaCharacter::SetUnCrouch() +{ + UnCrouch(); + GLog->Log("UnCrouching"); +} + void AEndlessVendettaCharacter::ToggleRecon() { if (IsValid(PrimaryWeapon)) EquipPrimary(); @@ -145,11 +162,11 @@ void AEndlessVendettaCharacter::EquipPrimary() } if (IsValid(SecondaryWeapon)) EquipSecondary(); - + // Marcel I respect you, like you and what not, please for the love of god don't touch these two guard clauses ///////////////////////////////////////////////////////////////////////////////////////////////////////////// - if (GadgetManager->IsReconEquipped() && !GadgetManager->TryToUnequipRecon()) return;///////////////////////// - if (GadgetManager->IsCombatEquipped() && !GadgetManager->TryToUnequipCombat()) return;/////////////////////// + if (GadgetManager->IsReconEquipped() && !GadgetManager->TryToUnequipRecon()) return; ///////////////////////// + if (GadgetManager->IsCombatEquipped() && !GadgetManager->TryToUnequipCombat()) return; /////////////////////// ///////////////////////////////////////////////////////////////////////////////////////////////////////////// FActorSpawnParameters spawnParams; @@ -163,28 +180,28 @@ void AEndlessVendettaCharacter::EquipPrimary() //Changing PrimaryWeaponActor to ABaseWeaponClass type instead of actor and storing it into PrimaryWeapon which is a ABaseClass Object //We do this because we need to check if PrimaryWeapon is equipped and we want primaryweapon to be ABaseWeapon type and not a generic AActor PrimaryWeapon = Cast(PrimaryWeaponActor); - + //If primary weapon is not there but secondary weapon is it will call equipSecondary. //EquipSecondary checks and sees that secondary is there so it will call to destroy itself //Code goes back and sees primary weapon is not there anymore and spawns it in. //Same thing for the EquipSecondary() - + // if (!IsValid(PrimaryWeapon)) // { // if (IsValid(SecondaryWeapon)) EquipSecondary(); // // UE_LOG(LogTemp, Display, TEXT("Primary equipped")); - // bHasRifle = true; - // FActorSpawnParameters spawnParams; - // spawnParams.SpawnCollisionHandlingOverride = ESpawnActorCollisionHandlingMethod::AlwaysSpawn; - // FAttachmentTransformRules AttachmentRules(EAttachmentRule::SnapToTarget, true); - // //Creating a new actor object called PrimaryWeapon that is based off primaryweaponClass - // AActor* PrimaryWeaponActor = GetWorld()->SpawnActor(PrimaryWeaponClass, spawnParams); - // PrimaryWeaponActor->AttachToComponent(Mesh1P, AttachmentRules, FName("GripPoint")); - // //Changing PrimaryWeaponActor to ABaseWeaponClass type instead of actor and storing it into PrimaryWeapon which is a ABaseClass Object - // //We do this because we need to check if PrimaryWeapon is equipped and we want primaryweapon to be ABaseWeapon type and not a generic AActor - // PrimaryWeapon = Cast(PrimaryWeaponActor); + // bHasRifle = true; + // FActorSpawnParameters spawnParams; + // spawnParams.SpawnCollisionHandlingOverride = ESpawnActorCollisionHandlingMethod::AlwaysSpawn; + // FAttachmentTransformRules AttachmentRules(EAttachmentRule::SnapToTarget, true); + // //Creating a new actor object called PrimaryWeapon that is based off primaryweaponClass + // AActor* PrimaryWeaponActor = GetWorld()->SpawnActor(PrimaryWeaponClass, spawnParams); + // PrimaryWeaponActor->AttachToComponent(Mesh1P, AttachmentRules, FName("GripPoint")); + // //Changing PrimaryWeaponActor to ABaseWeaponClass type instead of actor and storing it into PrimaryWeapon which is a ABaseClass Object + // //We do this because we need to check if PrimaryWeapon is equipped and we want primaryweapon to be ABaseWeapon type and not a generic AActor + // PrimaryWeapon = Cast(PrimaryWeaponActor); // // } // else if (IsValid(PrimaryWeapon)) @@ -197,49 +214,48 @@ void AEndlessVendettaCharacter::EquipPrimary() void AEndlessVendettaCharacter::EquipSecondary() { if (IsValid(SecondaryWeapon)) - { - SecondaryWeapon->Destroy(); + { + SecondaryWeapon->Destroy(); SecondaryWeapon = nullptr; - bHasRifle = false; - return; - } + bHasRifle = false; + return; + } if (IsValid(PrimaryWeapon)) EquipPrimary(); - + // Marcel I respect you, like you and what not, please for the love of god don't touch these two guard clauses ///////////////////////////////////////////////////////////////////////////////////////////////////////////// - if (GadgetManager->IsReconEquipped() && !GadgetManager->TryToUnequipRecon()) return;///////////////////////// - if (GadgetManager->IsCombatEquipped() && !GadgetManager->TryToUnequipCombat()) return;/////////////////////// + if (GadgetManager->IsReconEquipped() && !GadgetManager->TryToUnequipRecon()) return; ///////////////////////// + if (GadgetManager->IsCombatEquipped() && !GadgetManager->TryToUnequipCombat()) return; /////////////////////// ///////////////////////////////////////////////////////////////////////////////////////////////////////////// FActorSpawnParameters spawnParams; spawnParams.SpawnCollisionHandlingOverride = ESpawnActorCollisionHandlingMethod::AlwaysSpawn; FAttachmentTransformRules AttachmentRules(EAttachmentRule::SnapToTarget, true); - + bHasRifle = true; AActor* SecondaryWeaponActor = GetWorld()->SpawnActor(SecondaryWeaponClass, spawnParams); SecondaryWeaponActor->AttachToComponent(Mesh1P, AttachmentRules, FName("GripPoint")); SecondaryWeapon = Cast(SecondaryWeaponActor); - + // if (!IsValid(SecondaryWeapon)) // { // if (IsValid(PrimaryWeapon)) EquipPrimary(); // // UE_LOG(LogTemp, Display, TEXT("Secondary equipped")); - // bHasRifle = true; - // FActorSpawnParameters spawnParams; - // spawnParams.SpawnCollisionHandlingOverride = ESpawnActorCollisionHandlingMethod::AlwaysSpawn; - // FAttachmentTransformRules AttachmentRules(EAttachmentRule::SnapToTarget, true); - // AActor* SecondaryWeaponActor = GetWorld()->SpawnActor(SecondaryWeaponClass, spawnParams); - // SecondaryWeaponActor->AttachToComponent(Mesh1P, AttachmentRules, FName("GripPoint")); - // SecondaryWeapon = Cast(SecondaryWeaponActor); + // bHasRifle = true; + // FActorSpawnParameters spawnParams; + // spawnParams.SpawnCollisionHandlingOverride = ESpawnActorCollisionHandlingMethod::AlwaysSpawn; + // FAttachmentTransformRules AttachmentRules(EAttachmentRule::SnapToTarget, true); + // AActor* SecondaryWeaponActor = GetWorld()->SpawnActor(SecondaryWeaponClass, spawnParams); + // SecondaryWeaponActor->AttachToComponent(Mesh1P, AttachmentRules, FName("GripPoint")); + // SecondaryWeapon = Cast(SecondaryWeaponActor); // } // else if (IsValid(SecondaryWeapon)) // { // SecondaryWeapon->Destroy(); // bHasRifle = false; // } - } //Calls the fire function in the baseWeaponClass @@ -325,4 +341,4 @@ void AEndlessVendettaCharacter::SetHasRifle(bool bNewHasRifle) bool AEndlessVendettaCharacter::GetHasRifle() { return bHasRifle; -} \ No newline at end of file +} diff --git a/EndlessVendetta/Source/EndlessVendetta/EndlessVendettaCharacter.h b/EndlessVendetta/Source/EndlessVendetta/EndlessVendettaCharacter.h index cf41bef6..00f93ad3 100644 --- a/EndlessVendetta/Source/EndlessVendetta/EndlessVendettaCharacter.h +++ b/EndlessVendetta/Source/EndlessVendetta/EndlessVendettaCharacter.h @@ -33,35 +33,38 @@ class AEndlessVendettaCharacter : public ACharacter /** MappingContext */ UPROPERTY(EditAnywhere, BlueprintReadOnly, Category=Input, meta=(AllowPrivateAccess = "true")) - class UInputMappingContext* DefaultMappingContext; + UInputMappingContext* DefaultMappingContext; /** Jump Input Action */ UPROPERTY(EditAnywhere, BlueprintReadOnly, Category=Input, meta=(AllowPrivateAccess = "true")) - class UInputAction* JumpAction; + UInputAction* JumpAction; /** Move Input Action */ UPROPERTY(EditAnywhere, BlueprintReadOnly, Category=Input, meta=(AllowPrivateAccess = "true")) - class UInputAction* MoveAction; + UInputAction* MoveAction; // Gadget Actions UPROPERTY(EditAnywhere, BlueprintReadOnly, Category=Input, meta=(AllowPrivateAccess = "true")) UInputAction* ReconAction; UPROPERTY(EditAnywhere, BlueprintReadOnly, Category=Input, meta=(AllowPrivateAccess = "true")) UInputAction* CombatAction; - + /** Weapon Equip Action */ UPROPERTY(EditAnywhere, BlueprintReadOnly, Category=Input, meta=(AllowPrivateAccess = "true")) - class UInputAction* EquipPrimaryWeapon; + UInputAction* EquipPrimaryWeapon; UPROPERTY(EditAnywhere, BlueprintReadOnly, Category=Input, meta=(AllowPrivateAccess = "true")) - class UInputAction* EquipSecondaryWeapon; + UInputAction* EquipSecondaryWeapon; UPROPERTY(EditAnywhere, BlueprintReadOnly, Category=Input, meta=(AllowPrivateAccess = "true")) - class UInputAction* TapShootAction; + UInputAction* TapShootAction; UPROPERTY(EditAnywhere, BlueprintReadOnly, Category=Input, meta=(AllowPrivateAccess = "true")) - class UInputAction* HoldShootAction; - + UInputAction* HoldShootAction; + + UPROPERTY(EditAnywhere, BlueprintReadOnly, Category = Input, meta = ( AllowPrivateAccess = "true" )) + UInputAction* CrouchAction; + public: AEndlessVendettaCharacter(); @@ -73,7 +76,6 @@ protected: AGadgetManager* GadgetManager; public: - /** Look Input Action */ UPROPERTY(EditAnywhere, BlueprintReadOnly, Category = Input, meta = (AllowPrivateAccess = "true")) class UInputAction* LookAction; @@ -103,7 +105,6 @@ public: UFUNCTION(BlueprintCallable, Category = "Weapons") void TapFireCaller(); - protected: /** Called for movement input */ void Move(const FInputActionValue& Value); @@ -114,25 +115,27 @@ protected: void ToggleRecon(); void ToggleCombat(); - + void EquipPrimary(); - + void EquipSecondary(); //Called from Player BluePrints //UFUNCTION(BlueprintCallable, Category = "Weapons") //void WeaponPickUpSystem(AActor* PickedUpWeapon); - -protected: + // APawn interface virtual void SetupPlayerInputComponent(UInputComponent* InputComponent) override; // End of APawn interface -public: - /** Returns Mesh1P subobject **/ - USkeletalMeshComponent* GetMesh1P() const { return Mesh1P; } - /** Returns FirstPersonCameraComponent subobject **/ - UCameraComponent* GetFirstPersonCameraComponent() const { return FirstPersonCameraComponent; } - -}; + UFUNCTION(BlueprintCallable, Category = "Stealth") + void SetCrouch(); + UFUNCTION(BlueprintCallable, Category = "Stealth") + void SetUnCrouch(); +public: + /** Returns Mesh1P Sub-object **/ + USkeletalMeshComponent* GetMesh1P() const { return Mesh1P; } + /** Returns FirstPersonCameraComponent Sub-object **/ + UCameraComponent* GetFirstPersonCameraComponent() const { return FirstPersonCameraComponent; } +}; From d4b7c4b2d6b63ec2a171183c19726496bb53f87b Mon Sep 17 00:00:00 2001 From: PHILIP WHITE Date: Sat, 7 Oct 2023 00:52:40 +0100 Subject: [PATCH 073/112] Update Characters to Implement Damage Control --- .../EndlessVendetta/AI/CompanionCharacter.cpp | 14 ++++++++++++++ .../Source/EndlessVendetta/AI/CompanionCharacter.h | 10 ++++++++++ .../Source/EndlessVendetta/AI/EnemyCharacter.cpp | 14 ++++++++++++++ .../Source/EndlessVendetta/AI/EnemyCharacter.h | 11 +++++++++++ .../EndlessVendetta/EndlessVendettaCharacter.cpp | 12 ++++++++++-- .../EndlessVendetta/EndlessVendettaCharacter.h | 13 ++++++++++--- 6 files changed, 69 insertions(+), 5 deletions(-) diff --git a/EndlessVendetta/Source/EndlessVendetta/AI/CompanionCharacter.cpp b/EndlessVendetta/Source/EndlessVendetta/AI/CompanionCharacter.cpp index 5475ee04..a21f7ebd 100644 --- a/EndlessVendetta/Source/EndlessVendetta/AI/CompanionCharacter.cpp +++ b/EndlessVendetta/Source/EndlessVendetta/AI/CompanionCharacter.cpp @@ -3,6 +3,7 @@ #include "CompanionCharacter.h" +#include "AI_CompanionController.h" #include "Perception/AIPerceptionStimuliSourceComponent.h" #include "Perception/AISense_Sight.h" @@ -38,6 +39,19 @@ UBehaviorTree* ACompanionCharacter::GetBehaviorTree() const return BehaviorTree; } +void ACompanionCharacter::TakeDamage(float DamageAmount) +{ + CurrentHealth -= DamageAmount; + if (CurrentHealth <= 0) + { + CurrentHealth = 0; + UE_LOG(LogTemp, Warning, TEXT("Companion is dead")); + + const AAI_CompanionController* AIController = Cast(GetController()); + AIController->GetBrainComponent()->StopLogic("Companion is dead"); + } +} + void ACompanionCharacter::SetupStimuliSourceComponent() { StimuliSourceComponent = CreateDefaultSubobject(TEXT("Stimuli Source Component")); diff --git a/EndlessVendetta/Source/EndlessVendetta/AI/CompanionCharacter.h b/EndlessVendetta/Source/EndlessVendetta/AI/CompanionCharacter.h index 0a484bbc..cc6fccce 100644 --- a/EndlessVendetta/Source/EndlessVendetta/AI/CompanionCharacter.h +++ b/EndlessVendetta/Source/EndlessVendetta/AI/CompanionCharacter.h @@ -16,6 +16,13 @@ public: // Sets default values for this character's properties ACompanionCharacter(); + UPROPERTY(EditDefaultsOnly, Category = "Stats") + float CurrentHealth = 100.0f; + UPROPERTY(EditDefaultsOnly, Category = "Stats") + float MaxHealth = 100.0f; + UPROPERTY(EditDefaultsOnly, Category = "Stats") + float DefaultHealth = 100.0f; + protected: // Called when the game starts or when spawned virtual void BeginPlay() override; @@ -32,6 +39,9 @@ public: UFUNCTION(BlueprintCallable, Category = "AI") UBehaviorTree* GetBehaviorTree() const; + UFUNCTION(BlueprintCallable, Category = "Damage Control") + void TakeDamage(float DamageAmount); + private: class UAIPerceptionStimuliSourceComponent* StimuliSourceComponent; void SetupStimuliSourceComponent(); diff --git a/EndlessVendetta/Source/EndlessVendetta/AI/EnemyCharacter.cpp b/EndlessVendetta/Source/EndlessVendetta/AI/EnemyCharacter.cpp index 14827c11..feda4730 100644 --- a/EndlessVendetta/Source/EndlessVendetta/AI/EnemyCharacter.cpp +++ b/EndlessVendetta/Source/EndlessVendetta/AI/EnemyCharacter.cpp @@ -3,6 +3,7 @@ #include "EnemyCharacter.h" +#include "AI_EnemyController.h" #include "Perception/AIPerceptionStimuliSourceComponent.h" #include "Perception/AISense_Sight.h" @@ -40,6 +41,19 @@ UBehaviorTree* AEnemyCharacter::GetBehaviorTree() const return BehaviorTree; } +void AEnemyCharacter::TakeDamage(float DamageAmount) +{ + CurrentHealth -= DamageAmount; + if (CurrentHealth <= 0) + { + CurrentHealth = 0; + UE_LOG(LogTemp, Warning, TEXT("Enemy is dead")); + + const AAI_EnemyController* AIController = Cast(GetController()); + AIController->GetBrainComponent()->StopLogic("Enemy is dead"); + } +} + void AEnemyCharacter::SetupStimuliSourceComponent() { StimuliSourceComponent = CreateDefaultSubobject(TEXT("Stimuli Source Component")); diff --git a/EndlessVendetta/Source/EndlessVendetta/AI/EnemyCharacter.h b/EndlessVendetta/Source/EndlessVendetta/AI/EnemyCharacter.h index 23e7e3be..0344fa15 100644 --- a/EndlessVendetta/Source/EndlessVendetta/AI/EnemyCharacter.h +++ b/EndlessVendetta/Source/EndlessVendetta/AI/EnemyCharacter.h @@ -16,12 +16,20 @@ public: // Sets default values for this character's properties AEnemyCharacter(); + UPROPERTY(EditDefaultsOnly, Category = "Stats") + float CurrentHealth = 100.0f; + UPROPERTY(EditDefaultsOnly, Category = "Stats") + float MaxHealth = 100.0f; + UPROPERTY(EditDefaultsOnly, Category = "Stats") + float DefaultHealth = 100.0f; + protected: // Called when the game starts or when spawned virtual void BeginPlay() override; UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "AI") UBehaviorTree* BehaviorTree; + public: // Called every frame virtual void Tick(float DeltaTime) override; @@ -32,6 +40,9 @@ public: UFUNCTION(BlueprintCallable, Category = "AI") UBehaviorTree* GetBehaviorTree() const; + UFUNCTION(BlueprintCallable, Category = "Damage Control") + void TakeDamage(float DamageAmount); + private: class UAIPerceptionStimuliSourceComponent* StimuliSourceComponent; void SetupStimuliSourceComponent(); diff --git a/EndlessVendetta/Source/EndlessVendetta/EndlessVendettaCharacter.cpp b/EndlessVendetta/Source/EndlessVendetta/EndlessVendettaCharacter.cpp index 2c982762..17beee4a 100644 --- a/EndlessVendetta/Source/EndlessVendetta/EndlessVendettaCharacter.cpp +++ b/EndlessVendetta/Source/EndlessVendetta/EndlessVendettaCharacter.cpp @@ -100,13 +100,21 @@ void AEndlessVendettaCharacter::SetupPlayerInputComponent(class UInputComponent* void AEndlessVendettaCharacter::SetCrouch() { Crouch(); - GLog->Log("Crouching"); } void AEndlessVendettaCharacter::SetUnCrouch() { UnCrouch(); - GLog->Log("UnCrouching"); +} + +void AEndlessVendettaCharacter::TakeDamage(float DamageAmount) +{ + CurrentHealth -= DamageAmount; + if (CurrentHealth <= 0) + { + CurrentHealth = 0; + UE_LOG(LogTemp, Warning, TEXT("Player is dead")); + } } void AEndlessVendettaCharacter::ToggleRecon() diff --git a/EndlessVendetta/Source/EndlessVendetta/EndlessVendettaCharacter.h b/EndlessVendetta/Source/EndlessVendetta/EndlessVendettaCharacter.h index 00f93ad3..8b690da9 100644 --- a/EndlessVendetta/Source/EndlessVendetta/EndlessVendettaCharacter.h +++ b/EndlessVendetta/Source/EndlessVendetta/EndlessVendettaCharacter.h @@ -68,6 +68,13 @@ class AEndlessVendettaCharacter : public ACharacter public: AEndlessVendettaCharacter(); + UPROPERTY(EditDefaultsOnly, Category = "Stats") + float CurrentHealth = 100.0f; + UPROPERTY(EditDefaultsOnly, Category = "Stats") + float MaxHealth = 100.0f; + UPROPERTY(EditDefaultsOnly, Category = "Stats") + float DefaultHealth = 100.0f; + protected: virtual void BeginPlay(); @@ -99,7 +106,6 @@ public: TSubclassOf SecondaryWeaponClass; ABaseWeaponClass* PrimaryWeapon; - ABaseWeaponClass* SecondaryWeapon; UFUNCTION(BlueprintCallable, Category = "Weapons") @@ -113,11 +119,9 @@ protected: void Look(const FInputActionValue& Value); void ToggleRecon(); - void ToggleCombat(); void EquipPrimary(); - void EquipSecondary(); //Called from Player BluePrints @@ -138,4 +142,7 @@ public: USkeletalMeshComponent* GetMesh1P() const { return Mesh1P; } /** Returns FirstPersonCameraComponent Sub-object **/ UCameraComponent* GetFirstPersonCameraComponent() const { return FirstPersonCameraComponent; } + + UFUNCTION(BlueprintCallable, Category = "Damage Control") + void TakeDamage(float DamageAmount); }; From 8a8421c03f2a21615e75296bbc0512c5fe7c03c1 Mon Sep 17 00:00:00 2001 From: PHILIP WHITE Date: Sat, 7 Oct 2023 01:05:17 +0100 Subject: [PATCH 074/112] Update AI Characters for Ragdoll on Death --- .../EndlessVendetta/AI/CompanionCharacter.cpp | 29 +++++++++++++++++-- .../EndlessVendetta/AI/EnemyCharacter.cpp | 29 +++++++++++++++++-- .../EndlessVendettaCharacter.cpp | 4 ++- .../EndlessVendettaCharacter.h | 2 +- 4 files changed, 56 insertions(+), 8 deletions(-) diff --git a/EndlessVendetta/Source/EndlessVendetta/AI/CompanionCharacter.cpp b/EndlessVendetta/Source/EndlessVendetta/AI/CompanionCharacter.cpp index a21f7ebd..73ceb453 100644 --- a/EndlessVendetta/Source/EndlessVendetta/AI/CompanionCharacter.cpp +++ b/EndlessVendetta/Source/EndlessVendetta/AI/CompanionCharacter.cpp @@ -4,6 +4,8 @@ #include "CompanionCharacter.h" #include "AI_CompanionController.h" +#include "Components/CapsuleComponent.h" +#include "GameFramework/CharacterMovementComponent.h" #include "Perception/AIPerceptionStimuliSourceComponent.h" #include "Perception/AISense_Sight.h" @@ -19,7 +21,6 @@ ACompanionCharacter::ACompanionCharacter() void ACompanionCharacter::BeginPlay() { Super::BeginPlay(); - } // Called every frame @@ -39,7 +40,7 @@ UBehaviorTree* ACompanionCharacter::GetBehaviorTree() const return BehaviorTree; } -void ACompanionCharacter::TakeDamage(float DamageAmount) +void ACompanionCharacter::TakeDamage(const float DamageAmount) { CurrentHealth -= DamageAmount; if (CurrentHealth <= 0) @@ -49,6 +50,29 @@ void ACompanionCharacter::TakeDamage(float DamageAmount) const AAI_CompanionController* AIController = Cast(GetController()); AIController->GetBrainComponent()->StopLogic("Companion is dead"); + + //Ragdoll + DetachFromControllerPendingDestroy(); + UCapsuleComponent* CapsuleComp = GetCapsuleComponent(); + CapsuleComp->SetCollisionEnabled(ECollisionEnabled::NoCollision); + CapsuleComp->SetCollisionResponseToAllChannels(ECR_Ignore); + + GetMesh()->SetCollisionProfileName(TEXT("Ragdoll")); + SetActorEnableCollision(true); + + GetMesh()->SetAllBodiesSimulatePhysics(true); + GetMesh()->SetSimulatePhysics(true); + GetMesh()->WakeAllRigidBodies(); + GetMesh()->bBlendPhysics = true; + + if (UCharacterMovementComponent* CharacterComp = Cast(GetMovementComponent())) + { + CharacterComp->StopMovementImmediately(); + CharacterComp->DisableMovement(); + CharacterComp->SetComponentTickEnabled(false); + } + + SetLifeSpan(30.0f); } } @@ -61,4 +85,3 @@ void ACompanionCharacter::SetupStimuliSourceComponent() StimuliSourceComponent->RegisterWithPerceptionSystem(); } } - diff --git a/EndlessVendetta/Source/EndlessVendetta/AI/EnemyCharacter.cpp b/EndlessVendetta/Source/EndlessVendetta/AI/EnemyCharacter.cpp index feda4730..fa286bc9 100644 --- a/EndlessVendetta/Source/EndlessVendetta/AI/EnemyCharacter.cpp +++ b/EndlessVendetta/Source/EndlessVendetta/AI/EnemyCharacter.cpp @@ -4,6 +4,8 @@ #include "EnemyCharacter.h" #include "AI_EnemyController.h" +#include "Components/CapsuleComponent.h" +#include "GameFramework/CharacterMovementComponent.h" #include "Perception/AIPerceptionStimuliSourceComponent.h" #include "Perception/AISense_Sight.h" @@ -21,7 +23,6 @@ AEnemyCharacter::AEnemyCharacter() void AEnemyCharacter::BeginPlay() { Super::BeginPlay(); - } // Called every frame @@ -41,7 +42,7 @@ UBehaviorTree* AEnemyCharacter::GetBehaviorTree() const return BehaviorTree; } -void AEnemyCharacter::TakeDamage(float DamageAmount) +void AEnemyCharacter::TakeDamage(const float DamageAmount) { CurrentHealth -= DamageAmount; if (CurrentHealth <= 0) @@ -51,6 +52,29 @@ void AEnemyCharacter::TakeDamage(float DamageAmount) const AAI_EnemyController* AIController = Cast(GetController()); AIController->GetBrainComponent()->StopLogic("Enemy is dead"); + + //Ragdoll + DetachFromControllerPendingDestroy(); + UCapsuleComponent* CapsuleComp = GetCapsuleComponent(); + CapsuleComp->SetCollisionEnabled(ECollisionEnabled::NoCollision); + CapsuleComp->SetCollisionResponseToAllChannels(ECR_Ignore); + + GetMesh()->SetCollisionProfileName(TEXT("Ragdoll")); + SetActorEnableCollision(true); + + GetMesh()->SetAllBodiesSimulatePhysics(true); + GetMesh()->SetSimulatePhysics(true); + GetMesh()->WakeAllRigidBodies(); + GetMesh()->bBlendPhysics = true; + + if (UCharacterMovementComponent* CharacterComp = Cast(GetMovementComponent())) + { + CharacterComp->StopMovementImmediately(); + CharacterComp->DisableMovement(); + CharacterComp->SetComponentTickEnabled(false); + } + + SetLifeSpan(30.0f); } } @@ -63,4 +87,3 @@ void AEnemyCharacter::SetupStimuliSourceComponent() StimuliSourceComponent->RegisterWithPerceptionSystem(); } } - diff --git a/EndlessVendetta/Source/EndlessVendetta/EndlessVendettaCharacter.cpp b/EndlessVendetta/Source/EndlessVendetta/EndlessVendettaCharacter.cpp index 17beee4a..736a065c 100644 --- a/EndlessVendetta/Source/EndlessVendetta/EndlessVendettaCharacter.cpp +++ b/EndlessVendetta/Source/EndlessVendetta/EndlessVendettaCharacter.cpp @@ -6,7 +6,9 @@ #include "Components/CapsuleComponent.h" #include "EnhancedInputComponent.h" #include "EnhancedInputSubsystems.h" +#include "AI/EnemyCharacter.h" #include "GameFramework/CharacterMovementComponent.h" +#include "Kismet/GameplayStatics.h" ////////////////////////////////////////////////////////////////////////// @@ -107,7 +109,7 @@ void AEndlessVendettaCharacter::SetUnCrouch() UnCrouch(); } -void AEndlessVendettaCharacter::TakeDamage(float DamageAmount) +void AEndlessVendettaCharacter::TakeDamage(const float DamageAmount) { CurrentHealth -= DamageAmount; if (CurrentHealth <= 0) diff --git a/EndlessVendetta/Source/EndlessVendetta/EndlessVendettaCharacter.h b/EndlessVendetta/Source/EndlessVendetta/EndlessVendettaCharacter.h index 8b690da9..758d92c2 100644 --- a/EndlessVendetta/Source/EndlessVendetta/EndlessVendettaCharacter.h +++ b/EndlessVendetta/Source/EndlessVendetta/EndlessVendettaCharacter.h @@ -76,7 +76,7 @@ public: float DefaultHealth = 100.0f; protected: - virtual void BeginPlay(); + virtual void BeginPlay() override; UPROPERTY(EditDefaultsOnly, Category = "Gadget") TSubclassOf GadgetManagerClass; From 56df964103b3d863c6cbfef0b9e7d3e24be68daf Mon Sep 17 00:00:00 2001 From: Rafal Swierczek <34179rs@gmail.com> Date: Sat, 7 Oct 2023 13:21:35 +0100 Subject: [PATCH 075/112] Fixed Sphere Component not Despawning After Using OM --- .../StarterContent/Blueprints/Blueprint_CeilingLight.uasset | 2 +- .../GadgetClasses/Combat/OverloadModule/OverloadModule.cpp | 3 +++ 2 files changed, 4 insertions(+), 1 deletion(-) diff --git a/EndlessVendetta/Content/StarterContent/Blueprints/Blueprint_CeilingLight.uasset b/EndlessVendetta/Content/StarterContent/Blueprints/Blueprint_CeilingLight.uasset index d5c9196d..ed6b3cec 100644 --- a/EndlessVendetta/Content/StarterContent/Blueprints/Blueprint_CeilingLight.uasset +++ b/EndlessVendetta/Content/StarterContent/Blueprints/Blueprint_CeilingLight.uasset @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:b6a5543ffe1a37190e943bef495c0b5c55b3170e3609ac120b2b0197825e858d +oid sha256:5af4fcb65090d7e479af3da106bf123a1282a271ff955a9c739e901b15550f74 size 43745 diff --git a/EndlessVendetta/Source/EndlessVendetta/GadgetSystem/GadgetClasses/Combat/OverloadModule/OverloadModule.cpp b/EndlessVendetta/Source/EndlessVendetta/GadgetSystem/GadgetClasses/Combat/OverloadModule/OverloadModule.cpp index 5e29360d..c2a7e14a 100644 --- a/EndlessVendetta/Source/EndlessVendetta/GadgetSystem/GadgetClasses/Combat/OverloadModule/OverloadModule.cpp +++ b/EndlessVendetta/Source/EndlessVendetta/GadgetSystem/GadgetClasses/Combat/OverloadModule/OverloadModule.cpp @@ -91,6 +91,7 @@ void AOverloadModule::ExplodeClosestAliveEnemy() if (EnemiesInRadius.IsEmpty()) { DisplayFailedToFindTarget(); + SphereCollision->DestroyComponent(); return; } @@ -100,6 +101,7 @@ void AOverloadModule::ExplodeClosestAliveEnemy() if (EnemiesInRadius.Num() < 2) { SpawnExplosiveOnActor(ClosestEnemy); + SphereCollision->DestroyComponent(); return; } @@ -114,6 +116,7 @@ void AOverloadModule::ExplodeClosestAliveEnemy() } SpawnExplosiveOnActor(ClosestEnemy); + SphereCollision->DestroyComponent(); } From 8b903255028fe4e08f4b547cff67675f3594c303 Mon Sep 17 00:00:00 2001 From: Rafal Swierczek <34179rs@gmail.com> Date: Sat, 7 Oct 2023 16:40:58 +0100 Subject: [PATCH 076/112] Implemented Overload Modules UI --- .../OverloadModule/CG_OverloadModule.uasset | 4 ++-- .../OverloadModule/WBP_OM_ScreenWidget.uasset | 4 ++-- .../Content/Levels/GadgetSystemTestLevel.umap | 4 ++-- .../Blueprints/Blueprint_CeilingLight.uasset | 4 ++-- .../Particles/P_Ambient_Dust.uasset | 4 ++-- .../Combat/OverloadModule/OverloadModule.cpp | 14 ++++++++------ .../Combat/OverloadModule/OverloadModule.h | 16 ++++++++++++---- 7 files changed, 30 insertions(+), 20 deletions(-) diff --git a/EndlessVendetta/Content/Gadgets/CombatGadgets/OverloadModule/CG_OverloadModule.uasset b/EndlessVendetta/Content/Gadgets/CombatGadgets/OverloadModule/CG_OverloadModule.uasset index 1093b52a..d42d8a1b 100644 --- a/EndlessVendetta/Content/Gadgets/CombatGadgets/OverloadModule/CG_OverloadModule.uasset +++ b/EndlessVendetta/Content/Gadgets/CombatGadgets/OverloadModule/CG_OverloadModule.uasset @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:599c54946bc53ff3d3ee06fc5c1e8322aa69d8a54380df1e8a63a41c5aefed46 -size 22249 +oid sha256:9fccd918d154abe44f38ff143101e53cd24b3e942af805172cf6ffe84b7e7cb3 +size 109934 diff --git a/EndlessVendetta/Content/Gadgets/CombatGadgets/OverloadModule/WBP_OM_ScreenWidget.uasset b/EndlessVendetta/Content/Gadgets/CombatGadgets/OverloadModule/WBP_OM_ScreenWidget.uasset index 042d528a..f48c5af0 100644 --- a/EndlessVendetta/Content/Gadgets/CombatGadgets/OverloadModule/WBP_OM_ScreenWidget.uasset +++ b/EndlessVendetta/Content/Gadgets/CombatGadgets/OverloadModule/WBP_OM_ScreenWidget.uasset @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:1fa538706ad1bf961d40e82afa4e2ff2937e4377d353f0db4b46cd1599609d19 -size 25427 +oid sha256:2ca74a9a4b471019294bae3731c5b9d96eedd3ef09a2c877a7b0966457437f6c +size 260939 diff --git a/EndlessVendetta/Content/Levels/GadgetSystemTestLevel.umap b/EndlessVendetta/Content/Levels/GadgetSystemTestLevel.umap index 83fabf6e..13687f71 100644 --- a/EndlessVendetta/Content/Levels/GadgetSystemTestLevel.umap +++ b/EndlessVendetta/Content/Levels/GadgetSystemTestLevel.umap @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:35b4a02d71c80d38b36dd3e41dcc099477704b99bd7e2785129503a80a20e67e -size 106253 +oid sha256:04bfe587aa943c22a21e10962ddfb29aa185a165a9b1862aebbb012c532e5b8f +size 108254 diff --git a/EndlessVendetta/Content/StarterContent/Blueprints/Blueprint_CeilingLight.uasset b/EndlessVendetta/Content/StarterContent/Blueprints/Blueprint_CeilingLight.uasset index ed6b3cec..c5c3b84e 100644 --- a/EndlessVendetta/Content/StarterContent/Blueprints/Blueprint_CeilingLight.uasset +++ b/EndlessVendetta/Content/StarterContent/Blueprints/Blueprint_CeilingLight.uasset @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:5af4fcb65090d7e479af3da106bf123a1282a271ff955a9c739e901b15550f74 -size 43745 +oid sha256:4a60a29ad596546d481e43dfb8698842a78cc07f4a4b1000fa397cfba4e72331 +size 158206 diff --git a/EndlessVendetta/Content/StarterContent/Particles/P_Ambient_Dust.uasset b/EndlessVendetta/Content/StarterContent/Particles/P_Ambient_Dust.uasset index bf2e4391..83fc36f9 100644 --- a/EndlessVendetta/Content/StarterContent/Particles/P_Ambient_Dust.uasset +++ b/EndlessVendetta/Content/StarterContent/Particles/P_Ambient_Dust.uasset @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:01ef616c7a8bd90cd1b7a13efb18a56f33346efbae51efa31f09804478b7621d -size 43456 +oid sha256:2e1b3cefe3e87cb6c0a3e14276cb1104cde7923ebc7cf5b6c77d028d3d08bf5a +size 53268 diff --git a/EndlessVendetta/Source/EndlessVendetta/GadgetSystem/GadgetClasses/Combat/OverloadModule/OverloadModule.cpp b/EndlessVendetta/Source/EndlessVendetta/GadgetSystem/GadgetClasses/Combat/OverloadModule/OverloadModule.cpp index c2a7e14a..acadde39 100644 --- a/EndlessVendetta/Source/EndlessVendetta/GadgetSystem/GadgetClasses/Combat/OverloadModule/OverloadModule.cpp +++ b/EndlessVendetta/Source/EndlessVendetta/GadgetSystem/GadgetClasses/Combat/OverloadModule/OverloadModule.cpp @@ -3,7 +3,6 @@ #include "OverloadModule.h" -#include "BehaviorTree/BTCompositeNode.h" #include "Components/SphereComponent.h" #include "GameFramework/Character.h" @@ -21,6 +20,7 @@ void AOverloadModule::Tick(float DeltaSeconds) { Super::Tick(DeltaSeconds); + if (GadgetCantBeUsed()) return; CheckForPotentialHackTarget(); } @@ -67,7 +67,10 @@ void AOverloadModule::Activate() void AOverloadModule::FinishedUsing() { + IsValid(ClosestEnemy) ? DisplayHackingSuccess() : DisplayHackingFailure(); + SpawnExplosiveOnActor(ClosestEnemy); Super::FinishedUsing(); + PlayRechargingAnim(CooldownTime); } void AOverloadModule::ExplodeClosestAliveEnemy() @@ -90,17 +93,16 @@ void AOverloadModule::ExplodeClosestAliveEnemy() if (EnemiesInRadius.IsEmpty()) { - DisplayFailedToFindTarget(); + ClosestEnemy = nullptr; SphereCollision->DestroyComponent(); return; } // Find the closest Enemy in radius - AActor* ClosestEnemy = EnemiesInRadius[0]; + ClosestEnemy = EnemiesInRadius[0]; float Dist = FVector::Distance(PlayerChar->GetActorLocation(), ClosestEnemy->GetActorLocation()); if (EnemiesInRadius.Num() < 2) { - SpawnExplosiveOnActor(ClosestEnemy); SphereCollision->DestroyComponent(); return; } @@ -114,14 +116,14 @@ void AOverloadModule::ExplodeClosestAliveEnemy() Dist = ConsideredDist; } } - - SpawnExplosiveOnActor(ClosestEnemy); + SphereCollision->DestroyComponent(); } void AOverloadModule::SpawnExplosiveOnActor(AActor* ActortoExplode) { + if (!IsValid(ActortoExplode)) return; FActorSpawnParameters SpawnParams; SpawnParams.SpawnCollisionHandlingOverride = ESpawnActorCollisionHandlingMethod::AlwaysSpawn; GetWorld()->SpawnActor(Explosive, ActortoExplode->GetActorLocation(), ActortoExplode->GetActorRotation(), SpawnParams); diff --git a/EndlessVendetta/Source/EndlessVendetta/GadgetSystem/GadgetClasses/Combat/OverloadModule/OverloadModule.h b/EndlessVendetta/Source/EndlessVendetta/GadgetSystem/GadgetClasses/Combat/OverloadModule/OverloadModule.h index 63e5d40f..59ffdd3a 100644 --- a/EndlessVendetta/Source/EndlessVendetta/GadgetSystem/GadgetClasses/Combat/OverloadModule/OverloadModule.h +++ b/EndlessVendetta/Source/EndlessVendetta/GadgetSystem/GadgetClasses/Combat/OverloadModule/OverloadModule.h @@ -22,6 +22,8 @@ class ENDLESSVENDETTA_API AOverloadModule : public ACombatGadget AActor* PotentialHackTarget; + AActor* ClosestEnemy; + // An Array of previously hacked enemies, stops player from hacking the same Dead Enemy TArray HackedEnemies; @@ -58,10 +60,16 @@ protected: UFUNCTION(BlueprintImplementableEvent, Category = "Overload Module") void DisplayFoundPotentialTarget(); - - UFUNCTION(BlueprintImplementableEvent, Category = "Overload Module") - void DisplayFailedToFindTarget(); - + UFUNCTION(BlueprintImplementableEvent, Category = "Overload Module") void PlayHackingAnim(float Loadingtime); + + UFUNCTION(BlueprintImplementableEvent, Category = "Overload Module") + void DisplayHackingFailure(); + + UFUNCTION(BlueprintImplementableEvent, Category = "Overload Module") + void DisplayHackingSuccess(); + + UFUNCTION(BlueprintImplementableEvent, Category = "Overload Module") + void PlayRechargingAnim(float RechargingTime); }; From 3c75d16e4b6571eafa7e4252be895c354009e727 Mon Sep 17 00:00:00 2001 From: MH261677 Date: Sun, 8 Oct 2023 14:51:11 +0100 Subject: [PATCH 077/112] Added working ammo count to all weapons --- .../AssaultRifles/BP_BaseAssaultRifle.uasset | 4 +- .../HDRI/HDRI_Epic_Courtyard_Daylight.uasset | 2 +- .../WeaponSystem/BaseWeaponClass.cpp | 48 +++++++++++-------- 3 files changed, 32 insertions(+), 22 deletions(-) diff --git a/EndlessVendetta/Content/FirstPerson/Blueprints/BaseWeapons/AssaultRifles/BP_BaseAssaultRifle.uasset b/EndlessVendetta/Content/FirstPerson/Blueprints/BaseWeapons/AssaultRifles/BP_BaseAssaultRifle.uasset index bda0660d..f0a16367 100644 --- a/EndlessVendetta/Content/FirstPerson/Blueprints/BaseWeapons/AssaultRifles/BP_BaseAssaultRifle.uasset +++ b/EndlessVendetta/Content/FirstPerson/Blueprints/BaseWeapons/AssaultRifles/BP_BaseAssaultRifle.uasset @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:4b3aee8c3c553b35b2e127ddd7dd44974fda5563ad4eb9bc18a34efceee4d004 -size 37850 +oid sha256:99fdc6f5e7c67d7a44ca185fad64f6c99ad6142011c9de4566761ec07bdd68d0 +size 37860 diff --git a/EndlessVendetta/Content/StarterContent/HDRI/HDRI_Epic_Courtyard_Daylight.uasset b/EndlessVendetta/Content/StarterContent/HDRI/HDRI_Epic_Courtyard_Daylight.uasset index 48901753..a76d9a83 100644 --- a/EndlessVendetta/Content/StarterContent/HDRI/HDRI_Epic_Courtyard_Daylight.uasset +++ b/EndlessVendetta/Content/StarterContent/HDRI/HDRI_Epic_Courtyard_Daylight.uasset @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:2f245999e23fa99035343927a6662fb51718dfc13fbb549ffb43d3f94b47e375 +oid sha256:35965626ed27917622aa4630a23b7a047248cb9b9b0e66e1843969c4b1e0aadb size 66790690 diff --git a/EndlessVendetta/Source/EndlessVendetta/WeaponSystem/BaseWeaponClass.cpp b/EndlessVendetta/Source/EndlessVendetta/WeaponSystem/BaseWeaponClass.cpp index b0ff8a20..5a282ae0 100644 --- a/EndlessVendetta/Source/EndlessVendetta/WeaponSystem/BaseWeaponClass.cpp +++ b/EndlessVendetta/Source/EndlessVendetta/WeaponSystem/BaseWeaponClass.cpp @@ -134,29 +134,39 @@ void ABaseWeaponClass::CancelFire() void ABaseWeaponClass::Fire() { - //do damage fallof based off distance - FHitResult outHit; - FVector traceStart; - FVector traceEnd; - traceStart = GunStartArrow->GetComponentLocation(); - traceEnd = traceStart + (GunStartArrow->GetForwardVector() * BulletDistance); - FCollisionQueryParams collisionParams; - collisionParams.AddIgnoredActor(playerInWorld); - collisionParams.AddIgnoredActor(this); - if (GetWorldTimerManager().IsTimerActive(timerHandle)) + if(MagazineSize > 0) { - return; + //do damage fallof based off distance + FHitResult outHit; + FVector traceStart; + FVector traceEnd; + traceStart = GunStartArrow->GetComponentLocation(); + traceEnd = traceStart + (GunStartArrow->GetForwardVector() * BulletDistance); + FCollisionQueryParams collisionParams; + collisionParams.AddIgnoredActor(playerInWorld); + collisionParams.AddIgnoredActor(this); + if (GetWorldTimerManager().IsTimerActive(timerHandle)) + { + return; + } + GetWorld()->LineTraceSingleByChannel(outHit, traceStart, traceEnd, ECC_Visibility, collisionParams); + //Debug line to see where the trace hit + DrawDebugLine(this->GetWorld(), traceStart, traceEnd, FColor::Red, false, 5.0f, 0U, 2.5f); + playerControllerRef->PlayerCameraManager->StartCameraShake(CameraShakeClass, 1); + MagazineSize -= 1; + UE_LOG(LogTemp, Display, TEXT("Ammo Count: %d"), MagazineSize); + GenerateRecoilVector(); + ClickDetectionTimer(); + if (outHit.bBlockingHit) + { + UE_LOG(LogTemp, Display, TEXT("hit item: %s"), *outHit.GetActor()->GetName()); + } } - GetWorld()->LineTraceSingleByChannel(outHit, traceStart, traceEnd, ECC_Visibility, collisionParams); - //Debug line to see where the trace hit - DrawDebugLine(this->GetWorld(), traceStart, traceEnd, FColor::Red, false, 5.0f, 0U, 2.5f); - playerControllerRef->PlayerCameraManager->StartCameraShake(CameraShakeClass, 1); - GenerateRecoilVector(); - ClickDetectionTimer(); - if (outHit.bBlockingHit) + else if(MagazineSize <= 0) { - UE_LOG(LogTemp, Display, TEXT("hit item: %s"), *outHit.GetActor()->GetName()); + UE_LOG(LogTemp, Display, TEXT("No ammo, Ammo count: %d"), MagazineSize); } + } void ABaseWeaponClass::WeaponScopedFire() From 0e401a6f62531b713ec50bb7eafa4f7856e44c07 Mon Sep 17 00:00:00 2001 From: MH261677 Date: Sun, 8 Oct 2023 15:06:31 +0100 Subject: [PATCH 078/112] Added reload functionality for all current and future weapons --- .../Blueprints/BP_FirstPersonCharacter.uasset | 4 ++-- .../Input/Actions/IA_Reload.uasset | 3 +++ .../FirstPerson/Input/IMC_Default.uasset | 4 ++-- .../EndlessVendettaCharacter.cpp | 15 ++++++++++++ .../EndlessVendettaCharacter.h | 6 +++++ .../WeaponSystem/BaseWeaponClass.cpp | 23 +++++++++++++++---- .../WeaponSystem/BaseWeaponClass.h | 5 ++++ 7 files changed, 51 insertions(+), 9 deletions(-) create mode 100644 EndlessVendetta/Content/FirstPerson/Input/Actions/IA_Reload.uasset diff --git a/EndlessVendetta/Content/FirstPerson/Blueprints/BP_FirstPersonCharacter.uasset b/EndlessVendetta/Content/FirstPerson/Blueprints/BP_FirstPersonCharacter.uasset index 441dabb0..18599c44 100644 --- a/EndlessVendetta/Content/FirstPerson/Blueprints/BP_FirstPersonCharacter.uasset +++ b/EndlessVendetta/Content/FirstPerson/Blueprints/BP_FirstPersonCharacter.uasset @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:ff90caf01f6ea20dccd612ea5629215ce5c5a4a63e4da2ec242cabf9000bd6c6 -size 42353 +oid sha256:a408fa1c344f5612f1ed59bfeefbd99f2fc986c49f66bf42e849db73e65fdc2e +size 42307 diff --git a/EndlessVendetta/Content/FirstPerson/Input/Actions/IA_Reload.uasset b/EndlessVendetta/Content/FirstPerson/Input/Actions/IA_Reload.uasset new file mode 100644 index 00000000..5ed3f2f9 --- /dev/null +++ b/EndlessVendetta/Content/FirstPerson/Input/Actions/IA_Reload.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:85ff514d76166f7c202ee64b678abe6314dcc24d3d662883b53edb7608ea2bfe +size 1647 diff --git a/EndlessVendetta/Content/FirstPerson/Input/IMC_Default.uasset b/EndlessVendetta/Content/FirstPerson/Input/IMC_Default.uasset index bb4e7fab..4cea87c6 100644 --- a/EndlessVendetta/Content/FirstPerson/Input/IMC_Default.uasset +++ b/EndlessVendetta/Content/FirstPerson/Input/IMC_Default.uasset @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:6a0af94b654f58c85c8b4453fa211608ecc7bc67b9c82e2e3768814e906babcd -size 16334 +oid sha256:ff3f732c27d0c0064f659482af85f116bc5eb967b29d3ca42bdc2324c3662cd8 +size 16910 diff --git a/EndlessVendetta/Source/EndlessVendetta/EndlessVendettaCharacter.cpp b/EndlessVendetta/Source/EndlessVendetta/EndlessVendettaCharacter.cpp index 93a21cd9..fa579aa4 100644 --- a/EndlessVendetta/Source/EndlessVendetta/EndlessVendettaCharacter.cpp +++ b/EndlessVendetta/Source/EndlessVendetta/EndlessVendettaCharacter.cpp @@ -91,6 +91,9 @@ void AEndlessVendettaCharacter::SetupPlayerInputComponent(class UInputComponent* EnhancedInputComponent->BindAction(TapShootAction, ETriggerEvent::Triggered, this, &AEndlessVendettaCharacter::FireCaller); EnhancedInputComponent->BindAction(GunAimInAction, ETriggerEvent::Triggered, this, &AEndlessVendettaCharacter::GunRightClick); EnhancedInputComponent->BindAction(GunAimInAction, ETriggerEvent::Completed, this, &AEndlessVendettaCharacter::StopGunRightClick); + + //Weapon Reloading + EnhancedInputComponent->BindAction(GunReloadAction, ETriggerEvent::Triggered, this, &AEndlessVendettaCharacter::GunReload); } } @@ -256,6 +259,18 @@ void AEndlessVendettaCharacter::StopGunRightClick() } } +void AEndlessVendettaCharacter::GunReload() +{ + if (IsValid(PrimaryWeapon)) + { + PrimaryWeapon->WeaponReload(); + } + if (IsValid(SecondaryWeapon)) + { + SecondaryWeapon->WeaponReload(); + } +} + void AEndlessVendettaCharacter::Move(const FInputActionValue& Value) { diff --git a/EndlessVendetta/Source/EndlessVendetta/EndlessVendettaCharacter.h b/EndlessVendetta/Source/EndlessVendetta/EndlessVendettaCharacter.h index 8762426a..fdd1718f 100644 --- a/EndlessVendetta/Source/EndlessVendetta/EndlessVendettaCharacter.h +++ b/EndlessVendetta/Source/EndlessVendetta/EndlessVendettaCharacter.h @@ -61,6 +61,9 @@ class AEndlessVendettaCharacter : public ACharacter UPROPERTY(EditAnywhere, BlueprintReadOnly, Category=Input, meta=(AllowPrivateAccess = "true")) class UInputAction* GunAimInAction; + + UPROPERTY(EditAnywhere, BlueprintReadOnly, Category=Input, meta=(AllowPrivateAccess = "true")) + class UInputAction* GunReloadAction; public: AEndlessVendettaCharacter(); @@ -109,6 +112,9 @@ public: UFUNCTION(BlueprintCallable, Category = "Weapons") void StopGunRightClick(); + UFUNCTION(BlueprintCallable, Category = "Weapons") + void GunReload(); + UArrowComponent* ScopedLocationArrow; UPROPERTY(EditAnywhere, Category = "Dont Touch") diff --git a/EndlessVendetta/Source/EndlessVendetta/WeaponSystem/BaseWeaponClass.cpp b/EndlessVendetta/Source/EndlessVendetta/WeaponSystem/BaseWeaponClass.cpp index 5a282ae0..65dcbc96 100644 --- a/EndlessVendetta/Source/EndlessVendetta/WeaponSystem/BaseWeaponClass.cpp +++ b/EndlessVendetta/Source/EndlessVendetta/WeaponSystem/BaseWeaponClass.cpp @@ -44,6 +44,10 @@ void ABaseWeaponClass::BeginPlay() originalMaxAngleLeft = recoilMaxAngleLeft; originalMaxAngleRight = recoilMaxAngleRight; originalMinMultiplier = recoilMinMultiplier; + + currentAmmoCount = MagazineSize; + + UE_LOG(LogTemp, Display, TEXT("crnnt ammo: %d"), MagazineSize); } // Called every frame @@ -134,7 +138,7 @@ void ABaseWeaponClass::CancelFire() void ABaseWeaponClass::Fire() { - if(MagazineSize > 0) + if(currentAmmoCount > 0) { //do damage fallof based off distance FHitResult outHit; @@ -153,8 +157,8 @@ void ABaseWeaponClass::Fire() //Debug line to see where the trace hit DrawDebugLine(this->GetWorld(), traceStart, traceEnd, FColor::Red, false, 5.0f, 0U, 2.5f); playerControllerRef->PlayerCameraManager->StartCameraShake(CameraShakeClass, 1); - MagazineSize -= 1; - UE_LOG(LogTemp, Display, TEXT("Ammo Count: %d"), MagazineSize); + currentAmmoCount -= 1; + UE_LOG(LogTemp, Display, TEXT("Ammo Count: %d"), currentAmmoCount); GenerateRecoilVector(); ClickDetectionTimer(); if (outHit.bBlockingHit) @@ -162,9 +166,9 @@ void ABaseWeaponClass::Fire() UE_LOG(LogTemp, Display, TEXT("hit item: %s"), *outHit.GetActor()->GetName()); } } - else if(MagazineSize <= 0) + else if(currentAmmoCount <= 0) { - UE_LOG(LogTemp, Display, TEXT("No ammo, Ammo count: %d"), MagazineSize); + UE_LOG(LogTemp, Display, TEXT("No ammo, Ammo count: %d"), currentAmmoCount); } } @@ -188,4 +192,13 @@ void ABaseWeaponClass::WeaponScopedFire() } } +void ABaseWeaponClass::WeaponReload() +{ + if(MagazineSize > currentAmmoCount) + { + UE_LOG(LogTemp, Display, TEXT("Weapon Reloading: mag size: %d"), MagazineSize); + currentAmmoCount = MagazineSize; + } +} + diff --git a/EndlessVendetta/Source/EndlessVendetta/WeaponSystem/BaseWeaponClass.h b/EndlessVendetta/Source/EndlessVendetta/WeaponSystem/BaseWeaponClass.h index 8eb2d617..1d07fb65 100644 --- a/EndlessVendetta/Source/EndlessVendetta/WeaponSystem/BaseWeaponClass.h +++ b/EndlessVendetta/Source/EndlessVendetta/WeaponSystem/BaseWeaponClass.h @@ -110,6 +110,9 @@ public: UFUNCTION(BlueprintCallable, Category = "Weapons") void WeaponScopedFire(); + UFUNCTION(BlueprintCallable, Category = "Weapons") + void WeaponReload(); + private: UArrowComponent* GunStartArrow; @@ -121,5 +124,7 @@ private: float originalMaxAngleLeft; float originalMaxAngleRight; float originalMinMultiplier; + + int currentAmmoCount; }; From 877f485fa48b601b740f2f574180068fa05f3848 Mon Sep 17 00:00:00 2001 From: Rafal Swierczek <34179rs@gmail.com> Date: Sun, 8 Oct 2023 12:02:54 +0100 Subject: [PATCH 079/112] Added Starter Pack Explosion Effect to Explosion BP --- EndlessVendetta/Content/Gadgets/BP_Explosive.uasset | 4 ++-- .../StarterContent/Blueprints/Blueprint_CeilingLight.uasset | 4 ++-- .../Content/StarterContent/Particles/P_Ambient_Dust.uasset | 4 ++-- EndlessVendetta/Content/UI/UI_Material_SeeThroughWalls.uasset | 4 ++-- 4 files changed, 8 insertions(+), 8 deletions(-) diff --git a/EndlessVendetta/Content/Gadgets/BP_Explosive.uasset b/EndlessVendetta/Content/Gadgets/BP_Explosive.uasset index 7589b28e..6bac451c 100644 --- a/EndlessVendetta/Content/Gadgets/BP_Explosive.uasset +++ b/EndlessVendetta/Content/Gadgets/BP_Explosive.uasset @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:f28aca2e17c3afa2dd55c79b5f66c1ea851dd8067e0712fbc9677ca614f8c927 -size 16005 +oid sha256:f5563c101f81066dbb41a0b754402e01042647fdcf549bbdeeec92f0439b3230 +size 31653 diff --git a/EndlessVendetta/Content/StarterContent/Blueprints/Blueprint_CeilingLight.uasset b/EndlessVendetta/Content/StarterContent/Blueprints/Blueprint_CeilingLight.uasset index c5c3b84e..0241ee15 100644 --- a/EndlessVendetta/Content/StarterContent/Blueprints/Blueprint_CeilingLight.uasset +++ b/EndlessVendetta/Content/StarterContent/Blueprints/Blueprint_CeilingLight.uasset @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:4a60a29ad596546d481e43dfb8698842a78cc07f4a4b1000fa397cfba4e72331 -size 158206 +oid sha256:085d78ef65ab97ec078a500205fb10f2b817ac92df05022c1c3c6e921dea9bb8 +size 43745 diff --git a/EndlessVendetta/Content/StarterContent/Particles/P_Ambient_Dust.uasset b/EndlessVendetta/Content/StarterContent/Particles/P_Ambient_Dust.uasset index 83fc36f9..bf2e4391 100644 --- a/EndlessVendetta/Content/StarterContent/Particles/P_Ambient_Dust.uasset +++ b/EndlessVendetta/Content/StarterContent/Particles/P_Ambient_Dust.uasset @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:2e1b3cefe3e87cb6c0a3e14276cb1104cde7923ebc7cf5b6c77d028d3d08bf5a -size 53268 +oid sha256:01ef616c7a8bd90cd1b7a13efb18a56f33346efbae51efa31f09804478b7621d +size 43456 diff --git a/EndlessVendetta/Content/UI/UI_Material_SeeThroughWalls.uasset b/EndlessVendetta/Content/UI/UI_Material_SeeThroughWalls.uasset index c3067fb0..06d1c788 100644 --- a/EndlessVendetta/Content/UI/UI_Material_SeeThroughWalls.uasset +++ b/EndlessVendetta/Content/UI/UI_Material_SeeThroughWalls.uasset @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:8a38d567de25b3df88bbe21626983ee66de938d460d4c22aabc81f9790376222 -size 14569 +oid sha256:3439980aab6831afe77137df063f00b63258da0e3ba5c3c8b84a00e86c48bbf9 +size 15025 From 9d36fa784695522893876f22a6f1530d64422ddd Mon Sep 17 00:00:00 2001 From: Rafal Swierczek <34179rs@gmail.com> Date: Sun, 8 Oct 2023 16:19:26 +0100 Subject: [PATCH 080/112] Implemented Explosive Functionality Needs to be linked with AI TakeDamage when everything is merged --- .../Content/Gadgets/BP_Explosive.uasset | 3 - .../Content/Gadgets/BP_Grenade.uasset | 3 + .../OverloadModule/BP_OM_Explosive.uasset | 3 + .../OverloadModule/CG_OverloadModule.uasset | 4 +- .../Content/Levels/GadgetSystemTestLevel.umap | 2 +- .../Architecture/Floor_400x400.uasset | 4 +- .../Blueprints/Blueprint_CeilingLight.uasset | 4 +- .../GadgetClasses/Combat/Explosive.cpp | 62 ++++++++++++++++++- .../GadgetClasses/Combat/Explosive.h | 47 ++++++++++++-- 9 files changed, 115 insertions(+), 17 deletions(-) delete mode 100644 EndlessVendetta/Content/Gadgets/BP_Explosive.uasset create mode 100644 EndlessVendetta/Content/Gadgets/BP_Grenade.uasset create mode 100644 EndlessVendetta/Content/Gadgets/CombatGadgets/OverloadModule/BP_OM_Explosive.uasset diff --git a/EndlessVendetta/Content/Gadgets/BP_Explosive.uasset b/EndlessVendetta/Content/Gadgets/BP_Explosive.uasset deleted file mode 100644 index 6bac451c..00000000 --- a/EndlessVendetta/Content/Gadgets/BP_Explosive.uasset +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:f5563c101f81066dbb41a0b754402e01042647fdcf549bbdeeec92f0439b3230 -size 31653 diff --git a/EndlessVendetta/Content/Gadgets/BP_Grenade.uasset b/EndlessVendetta/Content/Gadgets/BP_Grenade.uasset new file mode 100644 index 00000000..addf3533 --- /dev/null +++ b/EndlessVendetta/Content/Gadgets/BP_Grenade.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:8ff5fde4fbfe047c25915d65585f2437dba30915a42f654972b362d236ccf6f4 +size 42440 diff --git a/EndlessVendetta/Content/Gadgets/CombatGadgets/OverloadModule/BP_OM_Explosive.uasset b/EndlessVendetta/Content/Gadgets/CombatGadgets/OverloadModule/BP_OM_Explosive.uasset new file mode 100644 index 00000000..1365a543 --- /dev/null +++ b/EndlessVendetta/Content/Gadgets/CombatGadgets/OverloadModule/BP_OM_Explosive.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:133db5845b20abcf5ffcb9bc6717757183a2440744b01ad1f038760335a5bea7 +size 40521 diff --git a/EndlessVendetta/Content/Gadgets/CombatGadgets/OverloadModule/CG_OverloadModule.uasset b/EndlessVendetta/Content/Gadgets/CombatGadgets/OverloadModule/CG_OverloadModule.uasset index d42d8a1b..92c1b889 100644 --- a/EndlessVendetta/Content/Gadgets/CombatGadgets/OverloadModule/CG_OverloadModule.uasset +++ b/EndlessVendetta/Content/Gadgets/CombatGadgets/OverloadModule/CG_OverloadModule.uasset @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:9fccd918d154abe44f38ff143101e53cd24b3e942af805172cf6ffe84b7e7cb3 -size 109934 +oid sha256:7deabddf98ca24dc431c4e0f2c25ba9b0d9edf03e2637c6a3dc37a1ccf7e8068 +size 109849 diff --git a/EndlessVendetta/Content/Levels/GadgetSystemTestLevel.umap b/EndlessVendetta/Content/Levels/GadgetSystemTestLevel.umap index 13687f71..f0cfe02e 100644 --- a/EndlessVendetta/Content/Levels/GadgetSystemTestLevel.umap +++ b/EndlessVendetta/Content/Levels/GadgetSystemTestLevel.umap @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:04bfe587aa943c22a21e10962ddfb29aa185a165a9b1862aebbb012c532e5b8f +oid sha256:2bc44125551b89f13cdffde72a42c09685d26b6bbaa3ce8d28858ab14d83c0dc size 108254 diff --git a/EndlessVendetta/Content/StarterContent/Architecture/Floor_400x400.uasset b/EndlessVendetta/Content/StarterContent/Architecture/Floor_400x400.uasset index c2a34afc..5f70301d 100644 --- a/EndlessVendetta/Content/StarterContent/Architecture/Floor_400x400.uasset +++ b/EndlessVendetta/Content/StarterContent/Architecture/Floor_400x400.uasset @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:4c0ecf0ac0702cc2bd355ec050232a61c49e10f102448efbeb735a51824adef6 -size 14948 +oid sha256:4f19f519f4b4bc1050bc5b9bf94607306785bb5773b00ddafc385746c3885373 +size 14831 diff --git a/EndlessVendetta/Content/StarterContent/Blueprints/Blueprint_CeilingLight.uasset b/EndlessVendetta/Content/StarterContent/Blueprints/Blueprint_CeilingLight.uasset index 0241ee15..c5c3b84e 100644 --- a/EndlessVendetta/Content/StarterContent/Blueprints/Blueprint_CeilingLight.uasset +++ b/EndlessVendetta/Content/StarterContent/Blueprints/Blueprint_CeilingLight.uasset @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:085d78ef65ab97ec078a500205fb10f2b817ac92df05022c1c3c6e921dea9bb8 -size 43745 +oid sha256:4a60a29ad596546d481e43dfb8698842a78cc07f4a4b1000fa397cfba4e72331 +size 158206 diff --git a/EndlessVendetta/Source/EndlessVendetta/GadgetSystem/GadgetClasses/Combat/Explosive.cpp b/EndlessVendetta/Source/EndlessVendetta/GadgetSystem/GadgetClasses/Combat/Explosive.cpp index 5f36be4b..4476d8d4 100644 --- a/EndlessVendetta/Source/EndlessVendetta/GadgetSystem/GadgetClasses/Combat/Explosive.cpp +++ b/EndlessVendetta/Source/EndlessVendetta/GadgetSystem/GadgetClasses/Combat/Explosive.cpp @@ -3,6 +3,9 @@ #include "Explosive.h" +#include "CollisionDebugDrawingPublic.h" +#include "Kismet/KismetMathLibrary.h" + // Sets default values AExplosive::AExplosive() { @@ -16,8 +19,14 @@ void AExplosive::BeginPlay() { Super::BeginPlay(); - UE_LOG(LogTemp, Warning, TEXT("An explosive has Spawned in ;)")); - + if (ExplosionDelayInSeconds <= 0) + { + Explosion(); + return; + } + + FTimerHandle ExplosionHandle; + GetWorld()->GetTimerManager().SetTimer(ExplosionHandle, this, &AExplosive::Explosion, ExplosionDelayInSeconds); } // Called every frame @@ -27,3 +36,52 @@ void AExplosive::Tick(float DeltaTime) } +void AExplosive::Explosion() +{ + float PitchAngleIncrement = 180.f / ShrapnelPitchDensity; + float YawAngleIncrement = 360.f / ShrapnelYawDensity; + + FHitResult OutHit; + FCollisionQueryParams QueryParams = FCollisionQueryParams::DefaultQueryParam; + QueryParams.bTraceComplex = false; + QueryParams.AddIgnoredActor(this); + FVector LT_Start = GetActorLocation(); + + for(int y = 1; y <= ShrapnelPitchDensity; y++) + { + for (int x = 1; x <= ShrapnelYawDensity; x++) + { + FRotator ShrapnelRotation = FRotator(-90.f + (y * PitchAngleIncrement), x * YawAngleIncrement, 0.f); + FVector LT_End = LT_Start + (UKismetMathLibrary::GetForwardVector(ShrapnelRotation) * ShrapnelTravelDistance); + bool HitSomething = GetWorld()->LineTraceSingleByChannel(OutHit, LT_Start, LT_End, ECC_Camera, QueryParams); + + if (DrawDebugLines) DrawShrapnelDebugLines(HitSomething, LT_Start, LT_End, OutHit.ImpactPoint); + if (!HitSomething || !OutHit.GetActor()->ActorHasTag(FName("Enemy")) || OutHit.GetActor()->ActorHasTag(FName("Dead"))) continue; + + float HitDistance = FVector::Distance(LT_Start, OutHit.ImpactPoint); + float DamageToApply = ShrapnelDamage; + if (HitDistance > ShrapnelDamageFalloffDistance) + { + // Damage linearly decrease from falloff distance to maximum travel distance, using straight line equation y = mx + c + float Magnitude = ShrapnelDamage / (ShrapnelDamageFalloffDistance - ShrapnelTravelDistance); + float DMG_Intercept = ShrapnelDamage - (Magnitude * ShrapnelDamageFalloffDistance); + DamageToApply = (Magnitude * HitDistance) + DMG_Intercept; + } + // When merged, call philips take damage function here + UE_LOG(LogTemp, Warning, TEXT("A shrapnel piece hit %s, dealing %f damage"), *OutHit.GetActor()->GetName(), DamageToApply); + } + } + PlayExplosionEffects(); +} + +void AExplosive::DrawShrapnelDebugLines(bool HitSomething, FVector StartVector, FVector EndVector, FVector ImpactPoint) +{ + if (!HitSomething) + { + DrawDebugLine(GetWorld(), StartVector, EndVector, FColor::Green, false, 5, 0, 2); + return; + } + DrawDebugLine(GetWorld(), ImpactPoint, EndVector, FColor::Red, false, 5, 0, 2); + DrawDebugLine(GetWorld(), StartVector, ImpactPoint, FColor::Green, false, 5, 0, 2); +} + diff --git a/EndlessVendetta/Source/EndlessVendetta/GadgetSystem/GadgetClasses/Combat/Explosive.h b/EndlessVendetta/Source/EndlessVendetta/GadgetSystem/GadgetClasses/Combat/Explosive.h index b2c9f019..4ffb2806 100644 --- a/EndlessVendetta/Source/EndlessVendetta/GadgetSystem/GadgetClasses/Combat/Explosive.h +++ b/EndlessVendetta/Source/EndlessVendetta/GadgetSystem/GadgetClasses/Combat/Explosive.h @@ -10,16 +10,53 @@ UCLASS() class ENDLESSVENDETTA_API AExplosive : public AActor { GENERATED_BODY() - -public: - // Sets default values for this actor's properties - AExplosive(); + + void DrawShrapnelDebugLines(bool HitSomething, FVector StartVector, FVector EndVector, FVector ImpactPoint); protected: + // Maximum amount of damage dealt by an individual piece of shrapnel + UPROPERTY(EditDefaultsOnly, Category = "Explosion") + float ShrapnelDamage = 10; + + // Number of shrapnel pieces uniformly spread around the Y axis + UPROPERTY(EditDefaultsOnly, Category = "Explosion") + int ShrapnelPitchDensity = 40; + + // Number of shrapnel pieces uniformly spread around the Z axis + UPROPERTY(EditDefaultsOnly, Category = "Explosion") + int ShrapnelYawDensity = 40; + + // How far shrapnel should travel from origin point, given its not obstructed along its path + UPROPERTY(EditDefaultsOnly, Category = "Explosion") + float ShrapnelTravelDistance = 600; + + // After what distance travelled should shrapnel damage start to decrease + UPROPERTY(EditDefaultsOnly, Category = "Explosion") + float ShrapnelDamageFalloffDistance = 200; + + // Delay from spawning in before explosion happens + UPROPERTY(EditDefaultsOnly, Category = "Explosion") + float ExplosionDelayInSeconds = 0; + + /** + * Should debug lines be drawn to show planned travel trajectory of each + * shrapnel piece in red, and actual travelled shrapnel trajectory in green + */ + UPROPERTY(EditAnywhere, Category = "Explosion") + bool DrawDebugLines = false; + + UFUNCTION(BlueprintImplementableEvent, Category = "Explosion") + void PlayExplosionEffects(); + + void Explosion(); + // Called when the game starts or when spawned virtual void BeginPlay() override; -public: +public: + // Sets default values for this actor's properties + AExplosive(); + // Called every frame virtual void Tick(float DeltaTime) override; From 2a9e30108dac66687cd408a8f54907500abddb4c Mon Sep 17 00:00:00 2001 From: Rafal Swierczek <34179rs@gmail.com> Date: Sun, 8 Oct 2023 19:35:08 +0100 Subject: [PATCH 081/112] Implemented Ring Module Class Functionality --- .../OverloadModule/CG_OverloadModule.uasset | 4 +- .../Content/Levels/GadgetSystemTestLevel.umap | 2 +- .../Architecture/Floor_400x400.uasset | 4 +- .../Particles/P_Ambient_Dust.uasset | 4 +- .../Combat/OverloadModule/OverloadModule.cpp | 4 +- .../Recon/RingModule/RingModule.cpp | 99 +++++++++++++++++++ .../Recon/RingModule/RingModule.h | 68 +++++++++++++ 7 files changed, 175 insertions(+), 10 deletions(-) create mode 100644 EndlessVendetta/Source/EndlessVendetta/GadgetSystem/GadgetClasses/Recon/RingModule/RingModule.cpp create mode 100644 EndlessVendetta/Source/EndlessVendetta/GadgetSystem/GadgetClasses/Recon/RingModule/RingModule.h diff --git a/EndlessVendetta/Content/Gadgets/CombatGadgets/OverloadModule/CG_OverloadModule.uasset b/EndlessVendetta/Content/Gadgets/CombatGadgets/OverloadModule/CG_OverloadModule.uasset index 92c1b889..918f8800 100644 --- a/EndlessVendetta/Content/Gadgets/CombatGadgets/OverloadModule/CG_OverloadModule.uasset +++ b/EndlessVendetta/Content/Gadgets/CombatGadgets/OverloadModule/CG_OverloadModule.uasset @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:7deabddf98ca24dc431c4e0f2c25ba9b0d9edf03e2637c6a3dc37a1ccf7e8068 -size 109849 +oid sha256:54c29d51176ad4d6f3709487c680854c3f65197fd77c3fdf909aacebf0012925 +size 109955 diff --git a/EndlessVendetta/Content/Levels/GadgetSystemTestLevel.umap b/EndlessVendetta/Content/Levels/GadgetSystemTestLevel.umap index f0cfe02e..91a8ae16 100644 --- a/EndlessVendetta/Content/Levels/GadgetSystemTestLevel.umap +++ b/EndlessVendetta/Content/Levels/GadgetSystemTestLevel.umap @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:2bc44125551b89f13cdffde72a42c09685d26b6bbaa3ce8d28858ab14d83c0dc +oid sha256:77cadba64fcbb3018eab09695343339696bd1a1fbcfb39ee13aca7d57c7b4bab size 108254 diff --git a/EndlessVendetta/Content/StarterContent/Architecture/Floor_400x400.uasset b/EndlessVendetta/Content/StarterContent/Architecture/Floor_400x400.uasset index 5f70301d..c2a34afc 100644 --- a/EndlessVendetta/Content/StarterContent/Architecture/Floor_400x400.uasset +++ b/EndlessVendetta/Content/StarterContent/Architecture/Floor_400x400.uasset @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:4f19f519f4b4bc1050bc5b9bf94607306785bb5773b00ddafc385746c3885373 -size 14831 +oid sha256:4c0ecf0ac0702cc2bd355ec050232a61c49e10f102448efbeb735a51824adef6 +size 14948 diff --git a/EndlessVendetta/Content/StarterContent/Particles/P_Ambient_Dust.uasset b/EndlessVendetta/Content/StarterContent/Particles/P_Ambient_Dust.uasset index bf2e4391..fd1980eb 100644 --- a/EndlessVendetta/Content/StarterContent/Particles/P_Ambient_Dust.uasset +++ b/EndlessVendetta/Content/StarterContent/Particles/P_Ambient_Dust.uasset @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:01ef616c7a8bd90cd1b7a13efb18a56f33346efbae51efa31f09804478b7621d -size 43456 +oid sha256:6606ee0e9ddf200d7b115f4bece31c3d00626e6eca88de44c836d32074510c65 +size 53268 diff --git a/EndlessVendetta/Source/EndlessVendetta/GadgetSystem/GadgetClasses/Combat/OverloadModule/OverloadModule.cpp b/EndlessVendetta/Source/EndlessVendetta/GadgetSystem/GadgetClasses/Combat/OverloadModule/OverloadModule.cpp index acadde39..c89568ee 100644 --- a/EndlessVendetta/Source/EndlessVendetta/GadgetSystem/GadgetClasses/Combat/OverloadModule/OverloadModule.cpp +++ b/EndlessVendetta/Source/EndlessVendetta/GadgetSystem/GadgetClasses/Combat/OverloadModule/OverloadModule.cpp @@ -43,7 +43,6 @@ void AOverloadModule::CheckForPotentialHackTarget() if (HackedEnemies.Contains(OutHit.GetActor()->GetUniqueID())) { - UE_LOG(LogTemp, Warning, TEXT("Enemy has already been hacked!")); PotentialHackTarget = nullptr; DisplayAlreadyHacked(); return; @@ -77,8 +76,7 @@ void AOverloadModule::ExplodeClosestAliveEnemy() { FTransform EmptyTransform; USphereComponent* SphereCollision = Cast(AddComponentByClass(USphereComponent::StaticClass(), false, EmptyTransform, false)); - - SphereCollision->SetHiddenInGame(false); + SphereCollision->SetSphereRadius(AreaOfEffectInMeters * 100, true); TArray OverlappingActors; diff --git a/EndlessVendetta/Source/EndlessVendetta/GadgetSystem/GadgetClasses/Recon/RingModule/RingModule.cpp b/EndlessVendetta/Source/EndlessVendetta/GadgetSystem/GadgetClasses/Recon/RingModule/RingModule.cpp new file mode 100644 index 00000000..941a7be1 --- /dev/null +++ b/EndlessVendetta/Source/EndlessVendetta/GadgetSystem/GadgetClasses/Recon/RingModule/RingModule.cpp @@ -0,0 +1,99 @@ +// Fill out your copyright notice in the Description page of Project Settings. + + +#include "RingModule.h" + +#include "Components/SphereComponent.h" +#include "GameFramework/Character.h" + +void ARingModule::BeginPlay() +{ + Super::BeginPlay(); + + this->SetActorTickInterval(0.2); + PlayerChar = GetWorld()->GetFirstPlayerController()->GetCharacter(); + PlayerCam = Cast(PlayerChar->GetComponentByClass(UCameraComponent::StaticClass())); +} + +void ARingModule::Tick(float DeltaSeconds) +{ + Super::Tick(DeltaSeconds); + + if (GadgetCantBeUsed()) return; + CheckForPotentialHackTarget(); +} + +void ARingModule::CheckForPotentialHackTarget() +{ + FHitResult OutHit; + FVector LT_Start = PlayerCam->GetComponentLocation(); + FVector LT_End = PlayerCam->GetComponentLocation() + (PlayerCam->GetForwardVector() * DeadBodyCheckDistance); + + //DrawDebugLine(GetWorld(), LT_Start, LT_End, FColor::Red, false, 0.2, 0, 1); + + FCollisionQueryParams QueryParams = FCollisionQueryParams::DefaultQueryParam; + QueryParams.AddIgnoredActor(PlayerChar); + if (!GetWorld()->LineTraceSingleByChannel(OutHit, LT_Start, LT_End, ECC_Camera, QueryParams) || !(OutHit.GetActor()->ActorHasTag(FName("Enemy")) && OutHit.GetActor()->ActorHasTag(FName("Dead")))) + { + PotentialHackTarget = nullptr; + DisplayNeedADeadEnemy(); + return; + } + + if (HackedEnemies.Contains(OutHit.GetActor()->GetUniqueID())) + { + PotentialHackTarget = nullptr; + DisplayAlreadyHacked(); + return; + } + + //DrawDebugLine(GetWorld(), LT_Start, OutHit.ImpactPoint, FColor::Green, false, 0.2, 0, 1); + PotentialHackTarget = OutHit.GetActor(); + DisplayFoundPotentialTarget(); +} + + +void ARingModule::Activate() +{ + if (GadgetCantBeUsed() || !IsValid(PotentialHackTarget)) return; + + Super::Activate(); + HackedEnemies.Add(PotentialHackTarget->GetUniqueID()); + PlayHackingAnim(GadgetMaxUptime); +} + +void ARingModule::FinishedUsing() +{ + SpawnRingingPhoneForAllNearbyEnemies() ? DisplayHackingSuccess() : DisplayHackingFailure(); + Super::FinishedUsing(); + PlayRechargingAnim(CooldownTime); +} + +bool ARingModule::SpawnRingingPhoneForAllNearbyEnemies() +{ + FTransform EmptyTransform; + USphereComponent* SphereCollision = Cast(AddComponentByClass(USphereComponent::StaticClass(), false, EmptyTransform, false)); + SphereCollision->SetSphereRadius(AreaOfEffectInMeters * 100, true); + + TArray OverlappingActors; + TArray EnemiesInRadius; + + SphereCollision->GetOverlappingActors(OverlappingActors, ACharacter::StaticClass()); + for (AActor* OverlappingActor : OverlappingActors) + { + if (OverlappingActor->ActorHasTag(FName("Enemy")) && !OverlappingActor->ActorHasTag(FName("Dead"))) EnemiesInRadius.Add(OverlappingActor); + } + + if (EnemiesInRadius.IsEmpty()) + { + SphereCollision->DestroyComponent(); + return false; + } + + for (AActor* Enemy : EnemiesInRadius) + { + //Dont Forget to spawn in phone ringing + UE_LOG(LogTemp, Warning, TEXT("%s's phone is ringing!!!"), *Enemy->GetName()); + } + return true; +} diff --git a/EndlessVendetta/Source/EndlessVendetta/GadgetSystem/GadgetClasses/Recon/RingModule/RingModule.h b/EndlessVendetta/Source/EndlessVendetta/GadgetSystem/GadgetClasses/Recon/RingModule/RingModule.h new file mode 100644 index 00000000..70b53f1d --- /dev/null +++ b/EndlessVendetta/Source/EndlessVendetta/GadgetSystem/GadgetClasses/Recon/RingModule/RingModule.h @@ -0,0 +1,68 @@ +// Fill out your copyright notice in the Description page of Project Settings. + +#pragma once + +#include "CoreMinimal.h" +#include "EndlessVendetta/GadgetSystem/ReconGadget.h" +#include "Camera/CameraComponent.h" +#include "RingModule.generated.h" + +/** + * + */ +UCLASS() +class ENDLESSVENDETTA_API ARingModule : public AReconGadget +{ + GENERATED_BODY() + + ACharacter* PlayerChar; + + UCameraComponent* PlayerCam; + + AActor* PotentialHackTarget; + + // An Array of previously hacked enemies, stops player from hacking the same Dead Enemy + TArray HackedEnemies; + + virtual void BeginPlay() override; + + virtual void Tick(float DeltaSeconds) override; + + virtual void Activate() override; + + virtual void FinishedUsing() override; + + void CheckForPotentialHackTarget(); + + // Returns false if there are no nearby enemies + bool SpawnRingingPhoneForAllNearbyEnemies(); + +protected: + UPROPERTY(EditDefaultsOnly, Category = "Overload Module") + float AreaOfEffectInMeters = 20; + + UPROPERTY(EditDefaultsOnly, Category = "Overload Module") + float DeadBodyCheckDistance = 250; + + // --------------- Display Functions --------------- + UFUNCTION(BlueprintImplementableEvent, Category = "Overload Module") + void DisplayAlreadyHacked(); + + UFUNCTION(BlueprintImplementableEvent, Category = "Overload Module") + void DisplayNeedADeadEnemy(); + + UFUNCTION(BlueprintImplementableEvent, Category = "Overload Module") + void DisplayFoundPotentialTarget(); + + UFUNCTION(BlueprintImplementableEvent, Category = "Overload Module") + void PlayHackingAnim(float Loadingtime); + + UFUNCTION(BlueprintImplementableEvent, Category = "Overload Module") + void DisplayHackingFailure(); + + UFUNCTION(BlueprintImplementableEvent, Category = "Overload Module") + void DisplayHackingSuccess(); + + UFUNCTION(BlueprintImplementableEvent, Category = "Overload Module") + void PlayRechargingAnim(float RechargingTime); +}; From c58c400d435e796b36e8ef70f475a4186d662540 Mon Sep 17 00:00:00 2001 From: PHILIP WHITE Date: Sun, 8 Oct 2023 20:09:31 +0100 Subject: [PATCH 082/112] Update Characters to Use Built-in TakeDamage Function --- .../Source/EndlessVendetta/AI/AICharacter.cpp | 92 +++++++++++++++++++ .../Source/EndlessVendetta/AI/AICharacter.h | 52 +++++++++++ .../EndlessVendetta/AI/CompanionCharacter.cpp | 64 +------------ .../EndlessVendetta/AI/CompanionCharacter.h | 25 +---- .../EndlessVendetta/AI/EnemyCharacter.cpp | 65 +------------ .../EndlessVendetta/AI/EnemyCharacter.h | 26 +----- .../EndlessVendettaCharacter.cpp | 4 +- .../EndlessVendettaCharacter.h | 4 +- 8 files changed, 155 insertions(+), 177 deletions(-) create mode 100644 EndlessVendetta/Source/EndlessVendetta/AI/AICharacter.cpp create mode 100644 EndlessVendetta/Source/EndlessVendetta/AI/AICharacter.h diff --git a/EndlessVendetta/Source/EndlessVendetta/AI/AICharacter.cpp b/EndlessVendetta/Source/EndlessVendetta/AI/AICharacter.cpp new file mode 100644 index 00000000..e6b4e22d --- /dev/null +++ b/EndlessVendetta/Source/EndlessVendetta/AI/AICharacter.cpp @@ -0,0 +1,92 @@ +// Fill out your copyright notice in the Description page of Project Settings. + + +#include "AICharacter.h" + +#include "AI_CompanionController.h" +#include "Components/CapsuleComponent.h" +#include "Engine/DamageEvents.h" +#include "GameFramework/CharacterMovementComponent.h" +#include "Perception/AIPerceptionStimuliSourceComponent.h" +#include "Perception/AISense_Sight.h" + + +// Sets default values +AAICharacter::AAICharacter() +{ + // Set this character to call Tick() every frame. You can turn this off to improve performance if you don't need it. + PrimaryActorTick.bCanEverTick = true; + SetupStimuliSourceComponent(); +} + +// Called when the game starts or when spawned +void AAICharacter::BeginPlay() +{ + Super::BeginPlay(); + +} + +// Called every frame +void AAICharacter::Tick(float DeltaTime) +{ + Super::Tick(DeltaTime); +} + +// Called to bind functionality to input +void AAICharacter::SetupPlayerInputComponent(UInputComponent* PlayerInputComponent) +{ + Super::SetupPlayerInputComponent(PlayerInputComponent); +} + +UBehaviorTree* AAICharacter::GetBehaviorTree() const +{ + return BehaviorTree; +} + +float AAICharacter::TakeDamage(const float DamageAmount, FDamageEvent const& DamageEvent, AController* EventInstigator, AActor* DamageCauser) +{ + CurrentHealth -= DamageAmount; + if (CurrentHealth <= 0) + { + CurrentHealth = 0; + UE_LOG(LogTemp, Display, TEXT("%s is dead"), *CharacterName.ToString()); + + const AAI_CompanionController* AIController = Cast(GetController()); + AIController->GetBrainComponent()->StopLogic(*CharacterName.ToString() + FString(" is dead")); + + //Ragdoll + DetachFromControllerPendingDestroy(); + UCapsuleComponent* CapsuleComp = GetCapsuleComponent(); + CapsuleComp->SetCollisionEnabled(ECollisionEnabled::NoCollision); + CapsuleComp->SetCollisionResponseToAllChannels(ECR_Ignore); + + GetMesh()->SetCollisionProfileName(TEXT("Ragdoll")); + SetActorEnableCollision(true); + + GetMesh()->SetAllBodiesSimulatePhysics(true); + GetMesh()->SetSimulatePhysics(true); + GetMesh()->WakeAllRigidBodies(); + GetMesh()->bBlendPhysics = true; + + if (UCharacterMovementComponent* CharacterComp = Cast(GetMovementComponent())) + { + CharacterComp->StopMovementImmediately(); + CharacterComp->DisableMovement(); + CharacterComp->SetComponentTickEnabled(false); + } + + SetLifeSpan(30.0f); + } + return Super::TakeDamage(DamageAmount, DamageEvent, EventInstigator, DamageCauser); +} + +void AAICharacter::SetupStimuliSourceComponent() +{ + StimuliSourceComponent = CreateDefaultSubobject(TEXT("Stimuli Source Component")); + if (IsValid(StimuliSourceComponent)) + { + StimuliSourceComponent->RegisterForSense(TSubclassOf()); + StimuliSourceComponent->RegisterWithPerceptionSystem(); + } +} + diff --git a/EndlessVendetta/Source/EndlessVendetta/AI/AICharacter.h b/EndlessVendetta/Source/EndlessVendetta/AI/AICharacter.h new file mode 100644 index 00000000..9431cbce --- /dev/null +++ b/EndlessVendetta/Source/EndlessVendetta/AI/AICharacter.h @@ -0,0 +1,52 @@ +// Fill out your copyright notice in the Description page of Project Settings. + +#pragma once + +#include "CoreMinimal.h" +#include "BehaviorTree/BehaviorTree.h" +#include "GameFramework/Character.h" +#include "AICharacter.generated.h" + +UCLASS() +class ENDLESSVENDETTA_API AAICharacter : public ACharacter +{ + GENERATED_BODY() + +public: + // Sets default values for this character's properties + AAICharacter(); + + UPROPERTY(EditDefaultsOnly, Category = "Stats") + float CurrentHealth = 100.0f; + UPROPERTY(EditDefaultsOnly, Category = "Stats") + float MaxHealth = 100.0f; + UPROPERTY(EditDefaultsOnly, Category = "Stats") + float DefaultHealth = 100.0f; + + UPROPERTY(EditDefaultsOnly, Category = "Profile") + FName CharacterName = "AI Character"; + +protected: + // Called when the game starts or when spawned + virtual void BeginPlay() override; + + UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "AI") + UBehaviorTree* BehaviorTree; + + UPROPERTY() + class UAIPerceptionStimuliSourceComponent* StimuliSourceComponent; + void SetupStimuliSourceComponent(); + +public: + // Called every frame + virtual void Tick(float DeltaTime) override; + + // Called to bind functionality to input + virtual void SetupPlayerInputComponent(class UInputComponent* PlayerInputComponent) override; + + UFUNCTION(BlueprintCallable, Category = "AI") + UBehaviorTree* GetBehaviorTree() const; + + UFUNCTION(BlueprintCallable, Category = "Damage Control") + virtual float TakeDamage(float DamageAmount, FDamageEvent const& DamageEvent, AController* EventInstigator, AActor* DamageCauser) override; +}; diff --git a/EndlessVendetta/Source/EndlessVendetta/AI/CompanionCharacter.cpp b/EndlessVendetta/Source/EndlessVendetta/AI/CompanionCharacter.cpp index 73ceb453..197ba5d5 100644 --- a/EndlessVendetta/Source/EndlessVendetta/AI/CompanionCharacter.cpp +++ b/EndlessVendetta/Source/EndlessVendetta/AI/CompanionCharacter.cpp @@ -3,12 +3,6 @@ #include "CompanionCharacter.h" -#include "AI_CompanionController.h" -#include "Components/CapsuleComponent.h" -#include "GameFramework/CharacterMovementComponent.h" -#include "Perception/AIPerceptionStimuliSourceComponent.h" -#include "Perception/AISense_Sight.h" - // Sets default values ACompanionCharacter::ACompanionCharacter() @@ -21,6 +15,7 @@ ACompanionCharacter::ACompanionCharacter() void ACompanionCharacter::BeginPlay() { Super::BeginPlay(); + CharacterName = "Companion"; } // Called every frame @@ -28,60 +23,3 @@ void ACompanionCharacter::Tick(float DeltaTime) { Super::Tick(DeltaTime); } - -// Called to bind functionality to input -void ACompanionCharacter::SetupPlayerInputComponent(UInputComponent* PlayerInputComponent) -{ - Super::SetupPlayerInputComponent(PlayerInputComponent); -} - -UBehaviorTree* ACompanionCharacter::GetBehaviorTree() const -{ - return BehaviorTree; -} - -void ACompanionCharacter::TakeDamage(const float DamageAmount) -{ - CurrentHealth -= DamageAmount; - if (CurrentHealth <= 0) - { - CurrentHealth = 0; - UE_LOG(LogTemp, Warning, TEXT("Companion is dead")); - - const AAI_CompanionController* AIController = Cast(GetController()); - AIController->GetBrainComponent()->StopLogic("Companion is dead"); - - //Ragdoll - DetachFromControllerPendingDestroy(); - UCapsuleComponent* CapsuleComp = GetCapsuleComponent(); - CapsuleComp->SetCollisionEnabled(ECollisionEnabled::NoCollision); - CapsuleComp->SetCollisionResponseToAllChannels(ECR_Ignore); - - GetMesh()->SetCollisionProfileName(TEXT("Ragdoll")); - SetActorEnableCollision(true); - - GetMesh()->SetAllBodiesSimulatePhysics(true); - GetMesh()->SetSimulatePhysics(true); - GetMesh()->WakeAllRigidBodies(); - GetMesh()->bBlendPhysics = true; - - if (UCharacterMovementComponent* CharacterComp = Cast(GetMovementComponent())) - { - CharacterComp->StopMovementImmediately(); - CharacterComp->DisableMovement(); - CharacterComp->SetComponentTickEnabled(false); - } - - SetLifeSpan(30.0f); - } -} - -void ACompanionCharacter::SetupStimuliSourceComponent() -{ - StimuliSourceComponent = CreateDefaultSubobject(TEXT("Stimuli Source Component")); - if (IsValid(StimuliSourceComponent)) - { - StimuliSourceComponent->RegisterForSense(TSubclassOf()); - StimuliSourceComponent->RegisterWithPerceptionSystem(); - } -} diff --git a/EndlessVendetta/Source/EndlessVendetta/AI/CompanionCharacter.h b/EndlessVendetta/Source/EndlessVendetta/AI/CompanionCharacter.h index cc6fccce..a9c0aa23 100644 --- a/EndlessVendetta/Source/EndlessVendetta/AI/CompanionCharacter.h +++ b/EndlessVendetta/Source/EndlessVendetta/AI/CompanionCharacter.h @@ -3,12 +3,13 @@ #pragma once #include "CoreMinimal.h" +#include "AICharacter.h" #include "BehaviorTree/BehaviorTree.h" #include "GameFramework/Character.h" #include "CompanionCharacter.generated.h" UCLASS() -class ENDLESSVENDETTA_API ACompanionCharacter : public ACharacter +class ENDLESSVENDETTA_API ACompanionCharacter : public AAICharacter { GENERATED_BODY() @@ -16,33 +17,11 @@ public: // Sets default values for this character's properties ACompanionCharacter(); - UPROPERTY(EditDefaultsOnly, Category = "Stats") - float CurrentHealth = 100.0f; - UPROPERTY(EditDefaultsOnly, Category = "Stats") - float MaxHealth = 100.0f; - UPROPERTY(EditDefaultsOnly, Category = "Stats") - float DefaultHealth = 100.0f; - protected: // Called when the game starts or when spawned virtual void BeginPlay() override; - UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "AI") - UBehaviorTree* BehaviorTree; public: // Called every frame virtual void Tick(float DeltaTime) override; - - // Called to bind functionality to input - virtual void SetupPlayerInputComponent(class UInputComponent* PlayerInputComponent) override; - - UFUNCTION(BlueprintCallable, Category = "AI") - UBehaviorTree* GetBehaviorTree() const; - - UFUNCTION(BlueprintCallable, Category = "Damage Control") - void TakeDamage(float DamageAmount); - -private: - class UAIPerceptionStimuliSourceComponent* StimuliSourceComponent; - void SetupStimuliSourceComponent(); }; diff --git a/EndlessVendetta/Source/EndlessVendetta/AI/EnemyCharacter.cpp b/EndlessVendetta/Source/EndlessVendetta/AI/EnemyCharacter.cpp index fa286bc9..72f9fabb 100644 --- a/EndlessVendetta/Source/EndlessVendetta/AI/EnemyCharacter.cpp +++ b/EndlessVendetta/Source/EndlessVendetta/AI/EnemyCharacter.cpp @@ -3,12 +3,6 @@ #include "EnemyCharacter.h" -#include "AI_EnemyController.h" -#include "Components/CapsuleComponent.h" -#include "GameFramework/CharacterMovementComponent.h" -#include "Perception/AIPerceptionStimuliSourceComponent.h" -#include "Perception/AISense_Sight.h" - class UAISense_Sight; // Sets default values @@ -16,13 +10,13 @@ AEnemyCharacter::AEnemyCharacter() { // Set this character to call Tick() every frame. You can turn this off to improve performance if you don't need it. PrimaryActorTick.bCanEverTick = true; - SetupStimuliSourceComponent(); } // Called when the game starts or when spawned void AEnemyCharacter::BeginPlay() { Super::BeginPlay(); + CharacterName = "Enemy"; } // Called every frame @@ -30,60 +24,3 @@ void AEnemyCharacter::Tick(float DeltaTime) { Super::Tick(DeltaTime); } - -// Called to bind functionality to input -void AEnemyCharacter::SetupPlayerInputComponent(UInputComponent* PlayerInputComponent) -{ - Super::SetupPlayerInputComponent(PlayerInputComponent); -} - -UBehaviorTree* AEnemyCharacter::GetBehaviorTree() const -{ - return BehaviorTree; -} - -void AEnemyCharacter::TakeDamage(const float DamageAmount) -{ - CurrentHealth -= DamageAmount; - if (CurrentHealth <= 0) - { - CurrentHealth = 0; - UE_LOG(LogTemp, Warning, TEXT("Enemy is dead")); - - const AAI_EnemyController* AIController = Cast(GetController()); - AIController->GetBrainComponent()->StopLogic("Enemy is dead"); - - //Ragdoll - DetachFromControllerPendingDestroy(); - UCapsuleComponent* CapsuleComp = GetCapsuleComponent(); - CapsuleComp->SetCollisionEnabled(ECollisionEnabled::NoCollision); - CapsuleComp->SetCollisionResponseToAllChannels(ECR_Ignore); - - GetMesh()->SetCollisionProfileName(TEXT("Ragdoll")); - SetActorEnableCollision(true); - - GetMesh()->SetAllBodiesSimulatePhysics(true); - GetMesh()->SetSimulatePhysics(true); - GetMesh()->WakeAllRigidBodies(); - GetMesh()->bBlendPhysics = true; - - if (UCharacterMovementComponent* CharacterComp = Cast(GetMovementComponent())) - { - CharacterComp->StopMovementImmediately(); - CharacterComp->DisableMovement(); - CharacterComp->SetComponentTickEnabled(false); - } - - SetLifeSpan(30.0f); - } -} - -void AEnemyCharacter::SetupStimuliSourceComponent() -{ - StimuliSourceComponent = CreateDefaultSubobject(TEXT("Stimuli Source Component")); - if (IsValid(StimuliSourceComponent)) - { - StimuliSourceComponent->RegisterForSense(TSubclassOf()); - StimuliSourceComponent->RegisterWithPerceptionSystem(); - } -} diff --git a/EndlessVendetta/Source/EndlessVendetta/AI/EnemyCharacter.h b/EndlessVendetta/Source/EndlessVendetta/AI/EnemyCharacter.h index 0344fa15..6c6cfebe 100644 --- a/EndlessVendetta/Source/EndlessVendetta/AI/EnemyCharacter.h +++ b/EndlessVendetta/Source/EndlessVendetta/AI/EnemyCharacter.h @@ -3,12 +3,13 @@ #pragma once #include "CoreMinimal.h" +#include "AICharacter.h" #include "BehaviorTree/BehaviorTree.h" #include "GameFramework/Character.h" #include "EnemyCharacter.generated.h" UCLASS() -class ENDLESSVENDETTA_API AEnemyCharacter : public ACharacter +class ENDLESSVENDETTA_API AEnemyCharacter : public AAICharacter { GENERATED_BODY() @@ -16,34 +17,11 @@ public: // Sets default values for this character's properties AEnemyCharacter(); - UPROPERTY(EditDefaultsOnly, Category = "Stats") - float CurrentHealth = 100.0f; - UPROPERTY(EditDefaultsOnly, Category = "Stats") - float MaxHealth = 100.0f; - UPROPERTY(EditDefaultsOnly, Category = "Stats") - float DefaultHealth = 100.0f; - protected: // Called when the game starts or when spawned virtual void BeginPlay() override; - UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "AI") - UBehaviorTree* BehaviorTree; - public: // Called every frame virtual void Tick(float DeltaTime) override; - - // Called to bind functionality to input - virtual void SetupPlayerInputComponent(class UInputComponent* PlayerInputComponent) override; - - UFUNCTION(BlueprintCallable, Category = "AI") - UBehaviorTree* GetBehaviorTree() const; - - UFUNCTION(BlueprintCallable, Category = "Damage Control") - void TakeDamage(float DamageAmount); - -private: - class UAIPerceptionStimuliSourceComponent* StimuliSourceComponent; - void SetupStimuliSourceComponent(); }; diff --git a/EndlessVendetta/Source/EndlessVendetta/EndlessVendettaCharacter.cpp b/EndlessVendetta/Source/EndlessVendetta/EndlessVendettaCharacter.cpp index 736a065c..0fd3afde 100644 --- a/EndlessVendetta/Source/EndlessVendetta/EndlessVendettaCharacter.cpp +++ b/EndlessVendetta/Source/EndlessVendetta/EndlessVendettaCharacter.cpp @@ -109,7 +109,7 @@ void AEndlessVendettaCharacter::SetUnCrouch() UnCrouch(); } -void AEndlessVendettaCharacter::TakeDamage(const float DamageAmount) +float AEndlessVendettaCharacter::TakeDamage(const float DamageAmount, FDamageEvent const& DamageEvent, AController* EventInstigator, AActor* DamageCauser) { CurrentHealth -= DamageAmount; if (CurrentHealth <= 0) @@ -117,6 +117,8 @@ void AEndlessVendettaCharacter::TakeDamage(const float DamageAmount) CurrentHealth = 0; UE_LOG(LogTemp, Warning, TEXT("Player is dead")); } + + return Super::TakeDamage(DamageAmount, DamageEvent, EventInstigator, DamageCauser); } void AEndlessVendettaCharacter::ToggleRecon() diff --git a/EndlessVendetta/Source/EndlessVendetta/EndlessVendettaCharacter.h b/EndlessVendetta/Source/EndlessVendetta/EndlessVendettaCharacter.h index 758d92c2..e1a503a7 100644 --- a/EndlessVendetta/Source/EndlessVendetta/EndlessVendettaCharacter.h +++ b/EndlessVendetta/Source/EndlessVendetta/EndlessVendettaCharacter.h @@ -74,7 +74,7 @@ public: float MaxHealth = 100.0f; UPROPERTY(EditDefaultsOnly, Category = "Stats") float DefaultHealth = 100.0f; - + protected: virtual void BeginPlay() override; @@ -144,5 +144,5 @@ public: UCameraComponent* GetFirstPersonCameraComponent() const { return FirstPersonCameraComponent; } UFUNCTION(BlueprintCallable, Category = "Damage Control") - void TakeDamage(float DamageAmount); + virtual float TakeDamage(float DamageAmount, FDamageEvent const& DamageEvent, AController* EventInstigator, AActor* DamageCauser) override; }; From 9be0b373cf8b1fffa65eca8f60638ba772e3378e Mon Sep 17 00:00:00 2001 From: Rafal Swierczek <34179rs@gmail.com> Date: Sun, 8 Oct 2023 20:11:07 +0100 Subject: [PATCH 083/112] Implemented Ring Module UI --- .../Content/Gadgets/GM_GadgetManager.uasset | 2 +- .../RingModule/BP_RingingPhone.uasset | 3 +++ .../RingModule/RG_RingModule.uasset | 3 +++ .../RingModule/WBP_RM_ScreenWidget.uasset | 3 +++ .../Content/Levels/GadgetSystemTestLevel.umap | 2 +- .../Particles/P_Ambient_Dust.uasset | 2 +- .../Recon/RingModule/PhoneRinging.cpp | 27 +++++++++++++++++++ .../Recon/RingModule/PhoneRinging.h | 26 ++++++++++++++++++ .../Recon/RingModule/RingModule.cpp | 7 +++-- .../Recon/RingModule/RingModule.h | 22 ++++++++------- 10 files changed, 83 insertions(+), 14 deletions(-) create mode 100644 EndlessVendetta/Content/Gadgets/ReconGadgets/RingModule/BP_RingingPhone.uasset create mode 100644 EndlessVendetta/Content/Gadgets/ReconGadgets/RingModule/RG_RingModule.uasset create mode 100644 EndlessVendetta/Content/Gadgets/ReconGadgets/RingModule/WBP_RM_ScreenWidget.uasset create mode 100644 EndlessVendetta/Source/EndlessVendetta/GadgetSystem/GadgetClasses/Recon/RingModule/PhoneRinging.cpp create mode 100644 EndlessVendetta/Source/EndlessVendetta/GadgetSystem/GadgetClasses/Recon/RingModule/PhoneRinging.h diff --git a/EndlessVendetta/Content/Gadgets/GM_GadgetManager.uasset b/EndlessVendetta/Content/Gadgets/GM_GadgetManager.uasset index b227979b..659e6cc8 100644 --- a/EndlessVendetta/Content/Gadgets/GM_GadgetManager.uasset +++ b/EndlessVendetta/Content/Gadgets/GM_GadgetManager.uasset @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:5aba529a9880bd712825883152d7ea40ba2c5e309dbd8d783942cdcb1e1879bf +oid sha256:101873288135db576b1a0060f9872880d1b4aaa7eca4c80cb4aa05925c67e275 size 22674 diff --git a/EndlessVendetta/Content/Gadgets/ReconGadgets/RingModule/BP_RingingPhone.uasset b/EndlessVendetta/Content/Gadgets/ReconGadgets/RingModule/BP_RingingPhone.uasset new file mode 100644 index 00000000..7cb176c8 --- /dev/null +++ b/EndlessVendetta/Content/Gadgets/ReconGadgets/RingModule/BP_RingingPhone.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:3ce42b2de8dc042e66a21fbb40c537d3d9b77bf9aba08bad33b7fa9de1b684a7 +size 39014 diff --git a/EndlessVendetta/Content/Gadgets/ReconGadgets/RingModule/RG_RingModule.uasset b/EndlessVendetta/Content/Gadgets/ReconGadgets/RingModule/RG_RingModule.uasset new file mode 100644 index 00000000..09120a7b --- /dev/null +++ b/EndlessVendetta/Content/Gadgets/ReconGadgets/RingModule/RG_RingModule.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:3b2a5cc7e22ed47e7380506b6873eb520643402f4f229340f00de2bac9e53e58 +size 108531 diff --git a/EndlessVendetta/Content/Gadgets/ReconGadgets/RingModule/WBP_RM_ScreenWidget.uasset b/EndlessVendetta/Content/Gadgets/ReconGadgets/RingModule/WBP_RM_ScreenWidget.uasset new file mode 100644 index 00000000..747ddfc3 --- /dev/null +++ b/EndlessVendetta/Content/Gadgets/ReconGadgets/RingModule/WBP_RM_ScreenWidget.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ffd72773986cdacf62029cebebc6b25f8a581d0270358c303b8a968c6bfd23da +size 254397 diff --git a/EndlessVendetta/Content/Levels/GadgetSystemTestLevel.umap b/EndlessVendetta/Content/Levels/GadgetSystemTestLevel.umap index 91a8ae16..a43859c1 100644 --- a/EndlessVendetta/Content/Levels/GadgetSystemTestLevel.umap +++ b/EndlessVendetta/Content/Levels/GadgetSystemTestLevel.umap @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:77cadba64fcbb3018eab09695343339696bd1a1fbcfb39ee13aca7d57c7b4bab +oid sha256:253bd27498f52b503e5f65dbcad3810691d5d96581785cd5926f369155cef907 size 108254 diff --git a/EndlessVendetta/Content/StarterContent/Particles/P_Ambient_Dust.uasset b/EndlessVendetta/Content/StarterContent/Particles/P_Ambient_Dust.uasset index fd1980eb..2d4167b3 100644 --- a/EndlessVendetta/Content/StarterContent/Particles/P_Ambient_Dust.uasset +++ b/EndlessVendetta/Content/StarterContent/Particles/P_Ambient_Dust.uasset @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:6606ee0e9ddf200d7b115f4bece31c3d00626e6eca88de44c836d32074510c65 +oid sha256:4d30ed0b3dca3879d9dd3b4c282293f326fc8a3b237e554c97025497362ac08c size 53268 diff --git a/EndlessVendetta/Source/EndlessVendetta/GadgetSystem/GadgetClasses/Recon/RingModule/PhoneRinging.cpp b/EndlessVendetta/Source/EndlessVendetta/GadgetSystem/GadgetClasses/Recon/RingModule/PhoneRinging.cpp new file mode 100644 index 00000000..c3117259 --- /dev/null +++ b/EndlessVendetta/Source/EndlessVendetta/GadgetSystem/GadgetClasses/Recon/RingModule/PhoneRinging.cpp @@ -0,0 +1,27 @@ +// Fill out your copyright notice in the Description page of Project Settings. + + +#include "PhoneRinging.h" + +// Sets default values +APhoneRinging::APhoneRinging() +{ + // Set this actor to call Tick() every frame. You can turn this off to improve performance if you don't need it. + PrimaryActorTick.bCanEverTick = true; + +} + +// Called when the game starts or when spawned +void APhoneRinging::BeginPlay() +{ + Super::BeginPlay(); + +} + +// Called every frame +void APhoneRinging::Tick(float DeltaTime) +{ + Super::Tick(DeltaTime); + +} + diff --git a/EndlessVendetta/Source/EndlessVendetta/GadgetSystem/GadgetClasses/Recon/RingModule/PhoneRinging.h b/EndlessVendetta/Source/EndlessVendetta/GadgetSystem/GadgetClasses/Recon/RingModule/PhoneRinging.h new file mode 100644 index 00000000..dd9f8cdc --- /dev/null +++ b/EndlessVendetta/Source/EndlessVendetta/GadgetSystem/GadgetClasses/Recon/RingModule/PhoneRinging.h @@ -0,0 +1,26 @@ +// Fill out your copyright notice in the Description page of Project Settings. + +#pragma once + +#include "CoreMinimal.h" +#include "GameFramework/Actor.h" +#include "PhoneRinging.generated.h" + +UCLASS() +class ENDLESSVENDETTA_API APhoneRinging : public AActor +{ + GENERATED_BODY() + +public: + // Sets default values for this actor's properties + APhoneRinging(); + +protected: + // Called when the game starts or when spawned + virtual void BeginPlay() override; + +public: + // Called every frame + virtual void Tick(float DeltaTime) override; + +}; diff --git a/EndlessVendetta/Source/EndlessVendetta/GadgetSystem/GadgetClasses/Recon/RingModule/RingModule.cpp b/EndlessVendetta/Source/EndlessVendetta/GadgetSystem/GadgetClasses/Recon/RingModule/RingModule.cpp index 941a7be1..d282dd8a 100644 --- a/EndlessVendetta/Source/EndlessVendetta/GadgetSystem/GadgetClasses/Recon/RingModule/RingModule.cpp +++ b/EndlessVendetta/Source/EndlessVendetta/GadgetSystem/GadgetClasses/Recon/RingModule/RingModule.cpp @@ -90,10 +90,13 @@ bool ARingModule::SpawnRingingPhoneForAllNearbyEnemies() return false; } + FActorSpawnParameters SpawnParams; + SpawnParams.SpawnCollisionHandlingOverride = ESpawnActorCollisionHandlingMethod::AlwaysSpawn; + FAttachmentTransformRules AttachmentRules(EAttachmentRule::SnapToTarget, true); for (AActor* Enemy : EnemiesInRadius) { - //Dont Forget to spawn in phone ringing - UE_LOG(LogTemp, Warning, TEXT("%s's phone is ringing!!!"), *Enemy->GetName()); + AActor* SpawnedPhone = GetWorld()->SpawnActor(PhoneRingingClass, Enemy->GetActorLocation(), Enemy->GetActorRotation(), SpawnParams); + SpawnedPhone->AttachToComponent(Enemy->GetRootComponent(), AttachmentRules); } return true; } diff --git a/EndlessVendetta/Source/EndlessVendetta/GadgetSystem/GadgetClasses/Recon/RingModule/RingModule.h b/EndlessVendetta/Source/EndlessVendetta/GadgetSystem/GadgetClasses/Recon/RingModule/RingModule.h index 70b53f1d..68dfb294 100644 --- a/EndlessVendetta/Source/EndlessVendetta/GadgetSystem/GadgetClasses/Recon/RingModule/RingModule.h +++ b/EndlessVendetta/Source/EndlessVendetta/GadgetSystem/GadgetClasses/Recon/RingModule/RingModule.h @@ -3,6 +3,7 @@ #pragma once #include "CoreMinimal.h" +#include "PhoneRinging.h" #include "EndlessVendetta/GadgetSystem/ReconGadget.h" #include "Camera/CameraComponent.h" #include "RingModule.generated.h" @@ -38,31 +39,34 @@ class ENDLESSVENDETTA_API ARingModule : public AReconGadget bool SpawnRingingPhoneForAllNearbyEnemies(); protected: - UPROPERTY(EditDefaultsOnly, Category = "Overload Module") + UPROPERTY(EditDefaultsOnly, Category = "Ring Module") float AreaOfEffectInMeters = 20; - UPROPERTY(EditDefaultsOnly, Category = "Overload Module") + UPROPERTY(EditDefaultsOnly, Category = "Ring Module") float DeadBodyCheckDistance = 250; + + UPROPERTY(EditDefaultsOnly, Category = "Ring Module") + TSubclassOf PhoneRingingClass; // --------------- Display Functions --------------- - UFUNCTION(BlueprintImplementableEvent, Category = "Overload Module") + UFUNCTION(BlueprintImplementableEvent, Category = "Ring Module") void DisplayAlreadyHacked(); - UFUNCTION(BlueprintImplementableEvent, Category = "Overload Module") + UFUNCTION(BlueprintImplementableEvent, Category = "Ring Module") void DisplayNeedADeadEnemy(); - UFUNCTION(BlueprintImplementableEvent, Category = "Overload Module") + UFUNCTION(BlueprintImplementableEvent, Category = "Ring Module") void DisplayFoundPotentialTarget(); - UFUNCTION(BlueprintImplementableEvent, Category = "Overload Module") + UFUNCTION(BlueprintImplementableEvent, Category = "Ring Module") void PlayHackingAnim(float Loadingtime); - UFUNCTION(BlueprintImplementableEvent, Category = "Overload Module") + UFUNCTION(BlueprintImplementableEvent, Category = "Ring Module") void DisplayHackingFailure(); - UFUNCTION(BlueprintImplementableEvent, Category = "Overload Module") + UFUNCTION(BlueprintImplementableEvent, Category = "Ring Module") void DisplayHackingSuccess(); - UFUNCTION(BlueprintImplementableEvent, Category = "Overload Module") + UFUNCTION(BlueprintImplementableEvent, Category = "Ring Module") void PlayRechargingAnim(float RechargingTime); }; From 4ac12b8794e90c8f809d1f8fd1fbd11054184e72 Mon Sep 17 00:00:00 2001 From: Rafal Swierczek <34179rs@gmail.com> Date: Sun, 8 Oct 2023 21:12:23 +0100 Subject: [PATCH 084/112] Implemented Explosive Sound Cue to Explosions --- EndlessVendetta/Content/Gadgets/BP_Grenade.uasset | 4 ++-- .../CombatGadgets/OverloadModule/BP_OM_Explosive.uasset | 4 ++-- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/EndlessVendetta/Content/Gadgets/BP_Grenade.uasset b/EndlessVendetta/Content/Gadgets/BP_Grenade.uasset index addf3533..92db3563 100644 --- a/EndlessVendetta/Content/Gadgets/BP_Grenade.uasset +++ b/EndlessVendetta/Content/Gadgets/BP_Grenade.uasset @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:8ff5fde4fbfe047c25915d65585f2437dba30915a42f654972b362d236ccf6f4 -size 42440 +oid sha256:3b5b0aa3f0b0da4c979843a761e655ef147058bb43079f24e4ef358532a7d5cf +size 49595 diff --git a/EndlessVendetta/Content/Gadgets/CombatGadgets/OverloadModule/BP_OM_Explosive.uasset b/EndlessVendetta/Content/Gadgets/CombatGadgets/OverloadModule/BP_OM_Explosive.uasset index 1365a543..7a2cb36f 100644 --- a/EndlessVendetta/Content/Gadgets/CombatGadgets/OverloadModule/BP_OM_Explosive.uasset +++ b/EndlessVendetta/Content/Gadgets/CombatGadgets/OverloadModule/BP_OM_Explosive.uasset @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:133db5845b20abcf5ffcb9bc6717757183a2440744b01ad1f038760335a5bea7 -size 40521 +oid sha256:0294c0bf210acc1dbff59e7259400d9dd1c0f2a6674c2a130a5a24dd7e8d6c9d +size 49878 From 7e02028ce807b6cb22b62827e3f075fad704b6d7 Mon Sep 17 00:00:00 2001 From: Rafal Swierczek <34179rs@gmail.com> Date: Sun, 8 Oct 2023 21:28:47 +0100 Subject: [PATCH 085/112] Added Random Temp Rigntones for Hacked Enemies --- .../Gadgets/ReconGadgets/RingModule/BP_RingingPhone.uasset | 4 ++-- .../Gadgets/ReconGadgets/RingModule/RG_RingModule.uasset | 4 ++-- .../ReconGadgets/RingModule/Ringtones/TempRingTone_1.uasset | 3 +++ .../ReconGadgets/RingModule/Ringtones/TempRingTone_2.uasset | 3 +++ .../ReconGadgets/RingModule/Ringtones/TempRingTone_4.uasset | 3 +++ .../RingModule/Ringtones/TempRingTone_Cue_1.uasset | 3 +++ .../RingModule/Ringtones/TempRingTone_Cue_2.uasset | 3 +++ .../RingModule/Ringtones/TempRingTone_Cue_4.uasset | 3 +++ .../ReconGadgets/RingModule/Ringtones/TempRingtone_3.uasset | 3 +++ .../RingModule/Ringtones/TempRingtone_Cue_3.uasset | 3 +++ EndlessVendetta/Content/Levels/GadgetSystemTestLevel.umap | 2 +- .../Content/StarterContent/Particles/P_Ambient_Dust.uasset | 4 ++-- .../Content/StarterContent/Props/MaterialSphere.uasset | 4 ++-- 13 files changed, 33 insertions(+), 9 deletions(-) create mode 100644 EndlessVendetta/Content/Gadgets/ReconGadgets/RingModule/Ringtones/TempRingTone_1.uasset create mode 100644 EndlessVendetta/Content/Gadgets/ReconGadgets/RingModule/Ringtones/TempRingTone_2.uasset create mode 100644 EndlessVendetta/Content/Gadgets/ReconGadgets/RingModule/Ringtones/TempRingTone_4.uasset create mode 100644 EndlessVendetta/Content/Gadgets/ReconGadgets/RingModule/Ringtones/TempRingTone_Cue_1.uasset create mode 100644 EndlessVendetta/Content/Gadgets/ReconGadgets/RingModule/Ringtones/TempRingTone_Cue_2.uasset create mode 100644 EndlessVendetta/Content/Gadgets/ReconGadgets/RingModule/Ringtones/TempRingTone_Cue_4.uasset create mode 100644 EndlessVendetta/Content/Gadgets/ReconGadgets/RingModule/Ringtones/TempRingtone_3.uasset create mode 100644 EndlessVendetta/Content/Gadgets/ReconGadgets/RingModule/Ringtones/TempRingtone_Cue_3.uasset diff --git a/EndlessVendetta/Content/Gadgets/ReconGadgets/RingModule/BP_RingingPhone.uasset b/EndlessVendetta/Content/Gadgets/ReconGadgets/RingModule/BP_RingingPhone.uasset index 7cb176c8..c2168845 100644 --- a/EndlessVendetta/Content/Gadgets/ReconGadgets/RingModule/BP_RingingPhone.uasset +++ b/EndlessVendetta/Content/Gadgets/ReconGadgets/RingModule/BP_RingingPhone.uasset @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:3ce42b2de8dc042e66a21fbb40c537d3d9b77bf9aba08bad33b7fa9de1b684a7 -size 39014 +oid sha256:7b98c1ddcdd17636cb29a010217910419c7674894cef53127e723f4298fb714d +size 47866 diff --git a/EndlessVendetta/Content/Gadgets/ReconGadgets/RingModule/RG_RingModule.uasset b/EndlessVendetta/Content/Gadgets/ReconGadgets/RingModule/RG_RingModule.uasset index 09120a7b..0ed980f6 100644 --- a/EndlessVendetta/Content/Gadgets/ReconGadgets/RingModule/RG_RingModule.uasset +++ b/EndlessVendetta/Content/Gadgets/ReconGadgets/RingModule/RG_RingModule.uasset @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:3b2a5cc7e22ed47e7380506b6873eb520643402f4f229340f00de2bac9e53e58 -size 108531 +oid sha256:5d874ac6c73fe2ee1d7f1024877b2f448df3daf631d5dafbf4e23804549fa652 +size 108456 diff --git a/EndlessVendetta/Content/Gadgets/ReconGadgets/RingModule/Ringtones/TempRingTone_1.uasset b/EndlessVendetta/Content/Gadgets/ReconGadgets/RingModule/Ringtones/TempRingTone_1.uasset new file mode 100644 index 00000000..e6ba3ca4 --- /dev/null +++ b/EndlessVendetta/Content/Gadgets/ReconGadgets/RingModule/Ringtones/TempRingTone_1.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d35033628bd5db17cb99027efbab8c2dd473e5388fb32d34558e11e7f338c73d +size 3852614 diff --git a/EndlessVendetta/Content/Gadgets/ReconGadgets/RingModule/Ringtones/TempRingTone_2.uasset b/EndlessVendetta/Content/Gadgets/ReconGadgets/RingModule/Ringtones/TempRingTone_2.uasset new file mode 100644 index 00000000..ec55125b --- /dev/null +++ b/EndlessVendetta/Content/Gadgets/ReconGadgets/RingModule/Ringtones/TempRingTone_2.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:0ea010e84dc996169f39e921770477b79303bccf4bb40972f258106064245e6e +size 3386251 diff --git a/EndlessVendetta/Content/Gadgets/ReconGadgets/RingModule/Ringtones/TempRingTone_4.uasset b/EndlessVendetta/Content/Gadgets/ReconGadgets/RingModule/Ringtones/TempRingTone_4.uasset new file mode 100644 index 00000000..93fcaa59 --- /dev/null +++ b/EndlessVendetta/Content/Gadgets/ReconGadgets/RingModule/Ringtones/TempRingTone_4.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:8386a474ed43859781c4a531ccb1236ba402a03b4f1927ed7b5d5079f1980661 +size 3390670 diff --git a/EndlessVendetta/Content/Gadgets/ReconGadgets/RingModule/Ringtones/TempRingTone_Cue_1.uasset b/EndlessVendetta/Content/Gadgets/ReconGadgets/RingModule/Ringtones/TempRingTone_Cue_1.uasset new file mode 100644 index 00000000..d69e0e6a --- /dev/null +++ b/EndlessVendetta/Content/Gadgets/ReconGadgets/RingModule/Ringtones/TempRingTone_Cue_1.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:00265bc01e803ae78c9486a50cdb2fe60b93de0d265a599dec052b079cc724c8 +size 4272 diff --git a/EndlessVendetta/Content/Gadgets/ReconGadgets/RingModule/Ringtones/TempRingTone_Cue_2.uasset b/EndlessVendetta/Content/Gadgets/ReconGadgets/RingModule/Ringtones/TempRingTone_Cue_2.uasset new file mode 100644 index 00000000..a81042d9 --- /dev/null +++ b/EndlessVendetta/Content/Gadgets/ReconGadgets/RingModule/Ringtones/TempRingTone_Cue_2.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d8b96750f088380206ae1d2efbe770b4257e226e91e25931200a75e0816087dc +size 4272 diff --git a/EndlessVendetta/Content/Gadgets/ReconGadgets/RingModule/Ringtones/TempRingTone_Cue_4.uasset b/EndlessVendetta/Content/Gadgets/ReconGadgets/RingModule/Ringtones/TempRingTone_Cue_4.uasset new file mode 100644 index 00000000..526aa997 --- /dev/null +++ b/EndlessVendetta/Content/Gadgets/ReconGadgets/RingModule/Ringtones/TempRingTone_Cue_4.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:324f88c110dc7f51d064e81abab62461b423fa3fd69926a9e5c7a03d34e143e3 +size 4272 diff --git a/EndlessVendetta/Content/Gadgets/ReconGadgets/RingModule/Ringtones/TempRingtone_3.uasset b/EndlessVendetta/Content/Gadgets/ReconGadgets/RingModule/Ringtones/TempRingtone_3.uasset new file mode 100644 index 00000000..50d48159 --- /dev/null +++ b/EndlessVendetta/Content/Gadgets/ReconGadgets/RingModule/Ringtones/TempRingtone_3.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:81979a2046a7663ac4f084d2824198b887b891f2dfb2d497ba58ebf5bf89d166 +size 4030169 diff --git a/EndlessVendetta/Content/Gadgets/ReconGadgets/RingModule/Ringtones/TempRingtone_Cue_3.uasset b/EndlessVendetta/Content/Gadgets/ReconGadgets/RingModule/Ringtones/TempRingtone_Cue_3.uasset new file mode 100644 index 00000000..6d4ddfdd --- /dev/null +++ b/EndlessVendetta/Content/Gadgets/ReconGadgets/RingModule/Ringtones/TempRingtone_Cue_3.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:7858b2bb4d57c53a0fa054ba19bda0f09e8c7b6bb797785be5c0e91a3ab9cb41 +size 4272 diff --git a/EndlessVendetta/Content/Levels/GadgetSystemTestLevel.umap b/EndlessVendetta/Content/Levels/GadgetSystemTestLevel.umap index a43859c1..ee781591 100644 --- a/EndlessVendetta/Content/Levels/GadgetSystemTestLevel.umap +++ b/EndlessVendetta/Content/Levels/GadgetSystemTestLevel.umap @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:253bd27498f52b503e5f65dbcad3810691d5d96581785cd5926f369155cef907 +oid sha256:38cb9c3d251f43819b4908c0a95aff93c8c3185de87ef7051cf426b33797f636 size 108254 diff --git a/EndlessVendetta/Content/StarterContent/Particles/P_Ambient_Dust.uasset b/EndlessVendetta/Content/StarterContent/Particles/P_Ambient_Dust.uasset index 2d4167b3..bf2e4391 100644 --- a/EndlessVendetta/Content/StarterContent/Particles/P_Ambient_Dust.uasset +++ b/EndlessVendetta/Content/StarterContent/Particles/P_Ambient_Dust.uasset @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:4d30ed0b3dca3879d9dd3b4c282293f326fc8a3b237e554c97025497362ac08c -size 53268 +oid sha256:01ef616c7a8bd90cd1b7a13efb18a56f33346efbae51efa31f09804478b7621d +size 43456 diff --git a/EndlessVendetta/Content/StarterContent/Props/MaterialSphere.uasset b/EndlessVendetta/Content/StarterContent/Props/MaterialSphere.uasset index 56bddfc9..413bf4e9 100644 --- a/EndlessVendetta/Content/StarterContent/Props/MaterialSphere.uasset +++ b/EndlessVendetta/Content/StarterContent/Props/MaterialSphere.uasset @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:3a8777c01491888bba9f40eda9d2bed76a611f0e80f75917501ce69c1a321342 -size 47333 +oid sha256:000a98212651fd0d1c6804c7636e5e4614f710bd1a19a87b394f13dda3bcbc17 +size 47710 From df7ca8b0db9a03d742e35060d0643fc7782a4557 Mon Sep 17 00:00:00 2001 From: PHILIP WHITE Date: Mon, 9 Oct 2023 01:31:01 +0100 Subject: [PATCH 086/112] Update Enemy AI for Patrol Pathing --- .../.idea/indexLayout.xml | 4 +- .../.idea.EndlessVendetta.dir/.idea/vcs.xml | 6 --- .../Generic/CompanionCharacter.uasset | 4 +- .../AI/Enemy/Basic/BB_BasicEnemy.uasset | 4 +- .../Enemy/Basic/BP_BasicEnemyCharacter.uasset | 4 +- .../AI/Enemy/Basic/BP_PatrolPath.uasset | 3 ++ .../AI/Enemy/Basic/BT_BasicEnemy.uasset | 4 +- .../6/3L/ZL9NLFPHO4RXCMXRLPZ3ST.uasset | 3 ++ .../A/UU/P4XZ4FDZKD5IXIWK3JDDDK.uasset | 4 +- .../B/AZ/GX8EY01G00J28SE17R0FJV.uasset | 4 +- .../E/PJ/BY6E8JXZSRNMAW3DFHRHRJ.uasset | 3 -- .../Source/EndlessVendetta/AI/AICharacter.cpp | 5 ++ .../Source/EndlessVendetta/AI/AICharacter.h | 14 ++++-- .../Source/EndlessVendetta/AI/PatrolPath.cpp | 22 +++++++++ .../Source/EndlessVendetta/AI/PatrolPath.h | 24 ++++++++++ .../AI/{ => Tasks}/BTTask_AttackPlayer.cpp | 2 +- .../AI/{ => Tasks}/BTTask_AttackPlayer.h | 0 .../AI/{ => Tasks}/BTTask_FindCover.cpp | 0 .../AI/{ => Tasks}/BTTask_FindCover.h | 0 .../AI/Tasks/BTTask_FindPathPoint.cpp | 34 ++++++++++++++ .../AI/Tasks/BTTask_FindPathPoint.h | 24 ++++++++++ .../{ => Tasks}/BTTask_FindPlayerLocation.cpp | 0 .../{ => Tasks}/BTTask_FindPlayerLocation.h | 0 .../{ => Tasks}/BTTask_FindRandomLocation.cpp | 2 +- .../{ => Tasks}/BTTask_FindRandomLocation.h | 0 .../AI/Tasks/BTTask_IncrementPathIndex.cpp | 47 +++++++++++++++++++ .../AI/Tasks/BTTask_IncrementPathIndex.h | 32 +++++++++++++ 27 files changed, 220 insertions(+), 29 deletions(-) delete mode 100644 EndlessVendetta/.idea/.idea.EndlessVendetta.dir/.idea/vcs.xml create mode 100644 EndlessVendetta/Content/AI/Enemy/Basic/BP_PatrolPath.uasset create mode 100644 EndlessVendetta/Content/__ExternalActors__/Levels/EnemyAITest/6/3L/ZL9NLFPHO4RXCMXRLPZ3ST.uasset delete mode 100644 EndlessVendetta/Content/__ExternalActors__/Levels/EnemyAITest/E/PJ/BY6E8JXZSRNMAW3DFHRHRJ.uasset create mode 100644 EndlessVendetta/Source/EndlessVendetta/AI/PatrolPath.cpp create mode 100644 EndlessVendetta/Source/EndlessVendetta/AI/PatrolPath.h rename EndlessVendetta/Source/EndlessVendetta/AI/{ => Tasks}/BTTask_AttackPlayer.cpp (94%) rename EndlessVendetta/Source/EndlessVendetta/AI/{ => Tasks}/BTTask_AttackPlayer.h (100%) rename EndlessVendetta/Source/EndlessVendetta/AI/{ => Tasks}/BTTask_FindCover.cpp (100%) rename EndlessVendetta/Source/EndlessVendetta/AI/{ => Tasks}/BTTask_FindCover.h (100%) create mode 100644 EndlessVendetta/Source/EndlessVendetta/AI/Tasks/BTTask_FindPathPoint.cpp create mode 100644 EndlessVendetta/Source/EndlessVendetta/AI/Tasks/BTTask_FindPathPoint.h rename EndlessVendetta/Source/EndlessVendetta/AI/{ => Tasks}/BTTask_FindPlayerLocation.cpp (100%) rename EndlessVendetta/Source/EndlessVendetta/AI/{ => Tasks}/BTTask_FindPlayerLocation.h (100%) rename EndlessVendetta/Source/EndlessVendetta/AI/{ => Tasks}/BTTask_FindRandomLocation.cpp (95%) rename EndlessVendetta/Source/EndlessVendetta/AI/{ => Tasks}/BTTask_FindRandomLocation.h (100%) create mode 100644 EndlessVendetta/Source/EndlessVendetta/AI/Tasks/BTTask_IncrementPathIndex.cpp create mode 100644 EndlessVendetta/Source/EndlessVendetta/AI/Tasks/BTTask_IncrementPathIndex.h diff --git a/EndlessVendetta/.idea/.idea.EndlessVendetta.dir/.idea/indexLayout.xml b/EndlessVendetta/.idea/.idea.EndlessVendetta.dir/.idea/indexLayout.xml index 5c30a127..7b08163c 100644 --- a/EndlessVendetta/.idea/.idea.EndlessVendetta.dir/.idea/indexLayout.xml +++ b/EndlessVendetta/.idea/.idea.EndlessVendetta.dir/.idea/indexLayout.xml @@ -1,9 +1,7 @@ - - ../../Endless-Vendetta - + diff --git a/EndlessVendetta/.idea/.idea.EndlessVendetta.dir/.idea/vcs.xml b/EndlessVendetta/.idea/.idea.EndlessVendetta.dir/.idea/vcs.xml deleted file mode 100644 index 6c0b8635..00000000 --- a/EndlessVendetta/.idea/.idea.EndlessVendetta.dir/.idea/vcs.xml +++ /dev/null @@ -1,6 +0,0 @@ - - - - - - \ No newline at end of file diff --git a/EndlessVendetta/Content/AI/Companion/Generic/CompanionCharacter.uasset b/EndlessVendetta/Content/AI/Companion/Generic/CompanionCharacter.uasset index 1d6453bf..756cb54f 100644 --- a/EndlessVendetta/Content/AI/Companion/Generic/CompanionCharacter.uasset +++ b/EndlessVendetta/Content/AI/Companion/Generic/CompanionCharacter.uasset @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:e98da72016a1ef89567571563bb8ddcb251370a7ae7f39b5a0ef17741de9154d -size 32421 +oid sha256:81819e2798f36f0fba8aa19cc63f66025941404eef5b0bab1cce20b9fc9bc63e +size 33153 diff --git a/EndlessVendetta/Content/AI/Enemy/Basic/BB_BasicEnemy.uasset b/EndlessVendetta/Content/AI/Enemy/Basic/BB_BasicEnemy.uasset index 56819b9d..10435623 100644 --- a/EndlessVendetta/Content/AI/Enemy/Basic/BB_BasicEnemy.uasset +++ b/EndlessVendetta/Content/AI/Enemy/Basic/BB_BasicEnemy.uasset @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:d175544d93e03c9c35e6fa9e17caa58f91fa9c2227be1f62ddc9234b095e8d46 -size 4420 +oid sha256:d0a3db5cfec43d17f9da7040dd28af3f31ff5cb2d00756125f57bda2281fb3b6 +size 5092 diff --git a/EndlessVendetta/Content/AI/Enemy/Basic/BP_BasicEnemyCharacter.uasset b/EndlessVendetta/Content/AI/Enemy/Basic/BP_BasicEnemyCharacter.uasset index 894c9059..dfd8779e 100644 --- a/EndlessVendetta/Content/AI/Enemy/Basic/BP_BasicEnemyCharacter.uasset +++ b/EndlessVendetta/Content/AI/Enemy/Basic/BP_BasicEnemyCharacter.uasset @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:0cce34a40f6aed425749f0c271aa6ba31b8bfea2ffafb3446559e374f0676b4b -size 32990 +oid sha256:d3303248d6f8042f7821695c75f275128c8198ff1229097ad439b09fb12d423d +size 33443 diff --git a/EndlessVendetta/Content/AI/Enemy/Basic/BP_PatrolPath.uasset b/EndlessVendetta/Content/AI/Enemy/Basic/BP_PatrolPath.uasset new file mode 100644 index 00000000..6f508524 --- /dev/null +++ b/EndlessVendetta/Content/AI/Enemy/Basic/BP_PatrolPath.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:29562c22635b352e858f43519d92020839358b09afd4a5138f4eba660bd10143 +size 23184 diff --git a/EndlessVendetta/Content/AI/Enemy/Basic/BT_BasicEnemy.uasset b/EndlessVendetta/Content/AI/Enemy/Basic/BT_BasicEnemy.uasset index 63d6a5f9..c09bdac3 100644 --- a/EndlessVendetta/Content/AI/Enemy/Basic/BT_BasicEnemy.uasset +++ b/EndlessVendetta/Content/AI/Enemy/Basic/BT_BasicEnemy.uasset @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:7edfafa0555092e33fe013a8130878ffa4cc97c34d1cd617bc71bb03bd5d194c -size 19535 +oid sha256:b3a4bb63ecee2b90ddaf61c85f3d7bc03086141eac00a6c366858a827f5c16fe +size 24774 diff --git a/EndlessVendetta/Content/__ExternalActors__/Levels/EnemyAITest/6/3L/ZL9NLFPHO4RXCMXRLPZ3ST.uasset b/EndlessVendetta/Content/__ExternalActors__/Levels/EnemyAITest/6/3L/ZL9NLFPHO4RXCMXRLPZ3ST.uasset new file mode 100644 index 00000000..a0e4b6ce --- /dev/null +++ b/EndlessVendetta/Content/__ExternalActors__/Levels/EnemyAITest/6/3L/ZL9NLFPHO4RXCMXRLPZ3ST.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:54b0926e4be9c9b5f0c3b7857ac67678a44681551b4769b33fe7ec6e4c535261 +size 3787 diff --git a/EndlessVendetta/Content/__ExternalActors__/Levels/EnemyAITest/A/UU/P4XZ4FDZKD5IXIWK3JDDDK.uasset b/EndlessVendetta/Content/__ExternalActors__/Levels/EnemyAITest/A/UU/P4XZ4FDZKD5IXIWK3JDDDK.uasset index c31f9729..b279c76a 100644 --- a/EndlessVendetta/Content/__ExternalActors__/Levels/EnemyAITest/A/UU/P4XZ4FDZKD5IXIWK3JDDDK.uasset +++ b/EndlessVendetta/Content/__ExternalActors__/Levels/EnemyAITest/A/UU/P4XZ4FDZKD5IXIWK3JDDDK.uasset @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:cf054aae033d323e2dc383293f32913ba2abc9f97ae89368159c2b9eb8c7e8bd -size 5073 +oid sha256:0825e2d72278674564a97acf017751f5d2ae310ad8c3a0786060fe2c538f37bd +size 5597 diff --git a/EndlessVendetta/Content/__ExternalActors__/Levels/EnemyAITest/B/AZ/GX8EY01G00J28SE17R0FJV.uasset b/EndlessVendetta/Content/__ExternalActors__/Levels/EnemyAITest/B/AZ/GX8EY01G00J28SE17R0FJV.uasset index b1ec8842..b60728b0 100644 --- a/EndlessVendetta/Content/__ExternalActors__/Levels/EnemyAITest/B/AZ/GX8EY01G00J28SE17R0FJV.uasset +++ b/EndlessVendetta/Content/__ExternalActors__/Levels/EnemyAITest/B/AZ/GX8EY01G00J28SE17R0FJV.uasset @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:b846a25931a6e0277f004c0f41c52eb17b7ea951697783592186c6cb01904bfc -size 5216 +oid sha256:21099d36885bd35d8fc3ced5641695e285425bc2a8bd916912c9a35daa30b5a9 +size 6064 diff --git a/EndlessVendetta/Content/__ExternalActors__/Levels/EnemyAITest/E/PJ/BY6E8JXZSRNMAW3DFHRHRJ.uasset b/EndlessVendetta/Content/__ExternalActors__/Levels/EnemyAITest/E/PJ/BY6E8JXZSRNMAW3DFHRHRJ.uasset deleted file mode 100644 index 4abdf431..00000000 --- a/EndlessVendetta/Content/__ExternalActors__/Levels/EnemyAITest/E/PJ/BY6E8JXZSRNMAW3DFHRHRJ.uasset +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:cfb0f1718ab71a979c83b7884652cb8b9a757abf7c2e17c1d3b356f1ef4228f7 -size 5313 diff --git a/EndlessVendetta/Source/EndlessVendetta/AI/AICharacter.cpp b/EndlessVendetta/Source/EndlessVendetta/AI/AICharacter.cpp index e6b4e22d..9135da93 100644 --- a/EndlessVendetta/Source/EndlessVendetta/AI/AICharacter.cpp +++ b/EndlessVendetta/Source/EndlessVendetta/AI/AICharacter.cpp @@ -80,6 +80,11 @@ float AAICharacter::TakeDamage(const float DamageAmount, FDamageEvent const& Dam return Super::TakeDamage(DamageAmount, DamageEvent, EventInstigator, DamageCauser); } +APatrolPath* AAICharacter::GetPatrolPath() const +{ + return PatrolPath; +} + void AAICharacter::SetupStimuliSourceComponent() { StimuliSourceComponent = CreateDefaultSubobject(TEXT("Stimuli Source Component")); diff --git a/EndlessVendetta/Source/EndlessVendetta/AI/AICharacter.h b/EndlessVendetta/Source/EndlessVendetta/AI/AICharacter.h index 9431cbce..44bbd309 100644 --- a/EndlessVendetta/Source/EndlessVendetta/AI/AICharacter.h +++ b/EndlessVendetta/Source/EndlessVendetta/AI/AICharacter.h @@ -3,6 +3,7 @@ #pragma once #include "CoreMinimal.h" +#include "PatrolPath.h" #include "BehaviorTree/BehaviorTree.h" #include "GameFramework/Character.h" #include "AICharacter.generated.h" @@ -30,9 +31,6 @@ protected: // Called when the game starts or when spawned virtual void BeginPlay() override; - UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "AI") - UBehaviorTree* BehaviorTree; - UPROPERTY() class UAIPerceptionStimuliSourceComponent* StimuliSourceComponent; void SetupStimuliSourceComponent(); @@ -49,4 +47,14 @@ public: UFUNCTION(BlueprintCallable, Category = "Damage Control") virtual float TakeDamage(float DamageAmount, FDamageEvent const& DamageEvent, AController* EventInstigator, AActor* DamageCauser) override; + + UFUNCTION() + APatrolPath* GetPatrolPath() const; + +private: + UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "AI", meta = (AllowPrivateAccess = "true")) + UBehaviorTree* BehaviorTree; + + UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "AI", meta = (AllowPrivateAccess = "true")) + APatrolPath* PatrolPath; }; diff --git a/EndlessVendetta/Source/EndlessVendetta/AI/PatrolPath.cpp b/EndlessVendetta/Source/EndlessVendetta/AI/PatrolPath.cpp new file mode 100644 index 00000000..18c7f07a --- /dev/null +++ b/EndlessVendetta/Source/EndlessVendetta/AI/PatrolPath.cpp @@ -0,0 +1,22 @@ +// Fill out your copyright notice in the Description page of Project Settings. + + +#include "PatrolPath.h" + + +// Sets default values +APatrolPath::APatrolPath() +{ + // Set this actor to call Tick() every frame. You can turn this off to improve performance if you don't need it. + PrimaryActorTick.bCanEverTick = false; +} + +FVector APatrolPath::GetPatrolPoint(int const Index) const +{ + return PatrolPoint[Index]; +} + +int APatrolPath::Num() const +{ + return PatrolPoint.Num(); +} diff --git a/EndlessVendetta/Source/EndlessVendetta/AI/PatrolPath.h b/EndlessVendetta/Source/EndlessVendetta/AI/PatrolPath.h new file mode 100644 index 00000000..f9236526 --- /dev/null +++ b/EndlessVendetta/Source/EndlessVendetta/AI/PatrolPath.h @@ -0,0 +1,24 @@ +// Fill out your copyright notice in the Description page of Project Settings. + +#pragma once + +#include "CoreMinimal.h" +#include "GameFramework/Actor.h" +#include "PatrolPath.generated.h" + +UCLASS() +class ENDLESSVENDETTA_API APatrolPath : public AActor +{ + GENERATED_BODY() + +public: + // Sets default values for this actor's properties + APatrolPath(); + + FVector GetPatrolPoint(int const Index) const; + int Num() const; + +private: + UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "AI", meta = (MakeEditWidget = "true", AllowPrivateAccess = "true")) + TArray PatrolPoint; +}; diff --git a/EndlessVendetta/Source/EndlessVendetta/AI/BTTask_AttackPlayer.cpp b/EndlessVendetta/Source/EndlessVendetta/AI/Tasks/BTTask_AttackPlayer.cpp similarity index 94% rename from EndlessVendetta/Source/EndlessVendetta/AI/BTTask_AttackPlayer.cpp rename to EndlessVendetta/Source/EndlessVendetta/AI/Tasks/BTTask_AttackPlayer.cpp index 74b01095..ce49ec2d 100644 --- a/EndlessVendetta/Source/EndlessVendetta/AI/BTTask_AttackPlayer.cpp +++ b/EndlessVendetta/Source/EndlessVendetta/AI/Tasks/BTTask_AttackPlayer.cpp @@ -3,7 +3,7 @@ #include "BTTask_AttackPlayer.h" -#include "AI_EnemyController.h" +#include "EndlessVendetta/AI/AI_EnemyController.h" #include "BehaviorTree/BlackboardComponent.h" UBTTask_AttackPlayer::UBTTask_AttackPlayer(FObjectInitializer const& ObjectInitializer) diff --git a/EndlessVendetta/Source/EndlessVendetta/AI/BTTask_AttackPlayer.h b/EndlessVendetta/Source/EndlessVendetta/AI/Tasks/BTTask_AttackPlayer.h similarity index 100% rename from EndlessVendetta/Source/EndlessVendetta/AI/BTTask_AttackPlayer.h rename to EndlessVendetta/Source/EndlessVendetta/AI/Tasks/BTTask_AttackPlayer.h diff --git a/EndlessVendetta/Source/EndlessVendetta/AI/BTTask_FindCover.cpp b/EndlessVendetta/Source/EndlessVendetta/AI/Tasks/BTTask_FindCover.cpp similarity index 100% rename from EndlessVendetta/Source/EndlessVendetta/AI/BTTask_FindCover.cpp rename to EndlessVendetta/Source/EndlessVendetta/AI/Tasks/BTTask_FindCover.cpp diff --git a/EndlessVendetta/Source/EndlessVendetta/AI/BTTask_FindCover.h b/EndlessVendetta/Source/EndlessVendetta/AI/Tasks/BTTask_FindCover.h similarity index 100% rename from EndlessVendetta/Source/EndlessVendetta/AI/BTTask_FindCover.h rename to EndlessVendetta/Source/EndlessVendetta/AI/Tasks/BTTask_FindCover.h diff --git a/EndlessVendetta/Source/EndlessVendetta/AI/Tasks/BTTask_FindPathPoint.cpp b/EndlessVendetta/Source/EndlessVendetta/AI/Tasks/BTTask_FindPathPoint.cpp new file mode 100644 index 00000000..1643c153 --- /dev/null +++ b/EndlessVendetta/Source/EndlessVendetta/AI/Tasks/BTTask_FindPathPoint.cpp @@ -0,0 +1,34 @@ +// Fill out your copyright notice in the Description page of Project Settings. + + +#include "BTTask_FindPathPoint.h" + +#include "BehaviorTree/BlackboardComponent.h" +#include "EndlessVendetta/AI/AI_EnemyController.h" +#include "EndlessVendetta/AI/EnemyCharacter.h" + +UBTTask_FindPathPoint::UBTTask_FindPathPoint(FObjectInitializer const& ObjectInitializer) +{ + NodeName = TEXT("Find Path Point"); +} + +EBTNodeResult::Type UBTTask_FindPathPoint::ExecuteTask(UBehaviorTreeComponent& OwnerComp, uint8* NodeMemory) +{ + if (const AAI_EnemyController* const AIEnemyController = Cast(OwnerComp.GetAIOwner())) + { + if (UBlackboardComponent* const BlackboardComponent = OwnerComp.GetBlackboardComponent()) + { + int const Index = BlackboardComponent->GetValueAsInt(GetSelectedBlackboardKey()); + if (const AEnemyCharacter* const EnemyCharacter = Cast(AIEnemyController->GetPawn())) + { + FVector const RelativePatrolPoint = EnemyCharacter->GetPatrolPath()->GetPatrolPoint(Index); + FVector const GlobalPointLocation = EnemyCharacter->GetPatrolPath()->GetActorTransform().TransformPosition(RelativePatrolPoint); + BlackboardComponent->SetValueAsVector(PatrolPathVectorKey.SelectedKeyName, GlobalPointLocation); + + FinishLatentTask(OwnerComp, EBTNodeResult::Succeeded); + return EBTNodeResult::Succeeded; + } + } + } + return EBTNodeResult::Failed; +} diff --git a/EndlessVendetta/Source/EndlessVendetta/AI/Tasks/BTTask_FindPathPoint.h b/EndlessVendetta/Source/EndlessVendetta/AI/Tasks/BTTask_FindPathPoint.h new file mode 100644 index 00000000..e329006a --- /dev/null +++ b/EndlessVendetta/Source/EndlessVendetta/AI/Tasks/BTTask_FindPathPoint.h @@ -0,0 +1,24 @@ +// Fill out your copyright notice in the Description page of Project Settings. + +#pragma once + +#include "CoreMinimal.h" +#include "BehaviorTree/Tasks/BTTask_BlackboardBase.h" +#include "BTTask_FindPathPoint.generated.h" + +/** + * + */ +UCLASS() +class ENDLESSVENDETTA_API UBTTask_FindPathPoint : public UBTTask_BlackboardBase +{ + GENERATED_BODY() + +public: + explicit UBTTask_FindPathPoint(FObjectInitializer const& ObjectInitializer); + virtual EBTNodeResult::Type ExecuteTask(UBehaviorTreeComponent& OwnerComp, uint8* NodeMemory) override; + +private: + UPROPERTY(EditAnywhere, Category = "Blackboard", meta=(AllowPrivateAccess = "true")) + FBlackboardKeySelector PatrolPathVectorKey; +}; diff --git a/EndlessVendetta/Source/EndlessVendetta/AI/BTTask_FindPlayerLocation.cpp b/EndlessVendetta/Source/EndlessVendetta/AI/Tasks/BTTask_FindPlayerLocation.cpp similarity index 100% rename from EndlessVendetta/Source/EndlessVendetta/AI/BTTask_FindPlayerLocation.cpp rename to EndlessVendetta/Source/EndlessVendetta/AI/Tasks/BTTask_FindPlayerLocation.cpp diff --git a/EndlessVendetta/Source/EndlessVendetta/AI/BTTask_FindPlayerLocation.h b/EndlessVendetta/Source/EndlessVendetta/AI/Tasks/BTTask_FindPlayerLocation.h similarity index 100% rename from EndlessVendetta/Source/EndlessVendetta/AI/BTTask_FindPlayerLocation.h rename to EndlessVendetta/Source/EndlessVendetta/AI/Tasks/BTTask_FindPlayerLocation.h diff --git a/EndlessVendetta/Source/EndlessVendetta/AI/BTTask_FindRandomLocation.cpp b/EndlessVendetta/Source/EndlessVendetta/AI/Tasks/BTTask_FindRandomLocation.cpp similarity index 95% rename from EndlessVendetta/Source/EndlessVendetta/AI/BTTask_FindRandomLocation.cpp rename to EndlessVendetta/Source/EndlessVendetta/AI/Tasks/BTTask_FindRandomLocation.cpp index 62a3d9b8..af11c428 100644 --- a/EndlessVendetta/Source/EndlessVendetta/AI/BTTask_FindRandomLocation.cpp +++ b/EndlessVendetta/Source/EndlessVendetta/AI/Tasks/BTTask_FindRandomLocation.cpp @@ -3,7 +3,7 @@ #include "BTTask_FindRandomLocation.h" -#include "AI_EnemyController.h" +#include "EndlessVendetta/AI/AI_EnemyController.h" #include "NavigationSystem.h" #include "BehaviorTree/BlackboardComponent.h" diff --git a/EndlessVendetta/Source/EndlessVendetta/AI/BTTask_FindRandomLocation.h b/EndlessVendetta/Source/EndlessVendetta/AI/Tasks/BTTask_FindRandomLocation.h similarity index 100% rename from EndlessVendetta/Source/EndlessVendetta/AI/BTTask_FindRandomLocation.h rename to EndlessVendetta/Source/EndlessVendetta/AI/Tasks/BTTask_FindRandomLocation.h diff --git a/EndlessVendetta/Source/EndlessVendetta/AI/Tasks/BTTask_IncrementPathIndex.cpp b/EndlessVendetta/Source/EndlessVendetta/AI/Tasks/BTTask_IncrementPathIndex.cpp new file mode 100644 index 00000000..cfc7b788 --- /dev/null +++ b/EndlessVendetta/Source/EndlessVendetta/AI/Tasks/BTTask_IncrementPathIndex.cpp @@ -0,0 +1,47 @@ +// Fill out your copyright notice in the Description page of Project Settings. + + +#include "BTTask_IncrementPathIndex.h" + +#include "BehaviorTree/BlackboardComponent.h" +#include "EndlessVendetta/AI/AI_EnemyController.h" +#include "EndlessVendetta/AI/EnemyCharacter.h" + +UBTTask_IncrementPathIndex::UBTTask_IncrementPathIndex(FObjectInitializer const& ObjectInitializer) +{ + NodeName = TEXT("Increment Path Index"); +} + +EBTNodeResult::Type UBTTask_IncrementPathIndex::ExecuteTask(UBehaviorTreeComponent& OwnerComp, uint8* NodeMemory) +{ + if (AAI_EnemyController* const EnemyController = Cast(OwnerComp.GetOwner())) + { + if (AEnemyCharacter* const EnemyCharacter = Cast(EnemyController->GetPawn())) + { + if (UBlackboardComponent* const BlackboardComponent = OwnerComp.GetBlackboardComponent()) + { + int const NumberOfPoints = EnemyCharacter->GetPatrolPath()->Num(); + int const MinIndex = 0; + int const MaxIndex = NumberOfPoints - 1; + int CurrentIndex = BlackboardComponent->GetValueAsInt(GetSelectedBlackboardKey()); + + if (bBiDirectional) + { + if (CurrentIndex >= MaxIndex && DirectionType == Forward) + { + DirectionType = Backward; + } + else if (CurrentIndex == MinIndex && DirectionType == Backward) + { + DirectionType = Forward; + } + } + BlackboardComponent->SetValueAsInt(GetSelectedBlackboardKey(), (DirectionType == Forward ? ++CurrentIndex : --CurrentIndex) % NumberOfPoints); + + FinishLatentTask(OwnerComp, EBTNodeResult::Succeeded); + return EBTNodeResult::Succeeded; + } + } + } + return EBTNodeResult::Failed; +} diff --git a/EndlessVendetta/Source/EndlessVendetta/AI/Tasks/BTTask_IncrementPathIndex.h b/EndlessVendetta/Source/EndlessVendetta/AI/Tasks/BTTask_IncrementPathIndex.h new file mode 100644 index 00000000..0f9c3442 --- /dev/null +++ b/EndlessVendetta/Source/EndlessVendetta/AI/Tasks/BTTask_IncrementPathIndex.h @@ -0,0 +1,32 @@ +// Fill out your copyright notice in the Description page of Project Settings. + +#pragma once + +#include "CoreMinimal.h" +#include "BehaviorTree/Tasks/BTTask_BlackboardBase.h" +#include "BTTask_IncrementPathIndex.generated.h" + +/** + * + */ +UCLASS() +class ENDLESSVENDETTA_API UBTTask_IncrementPathIndex : public UBTTask_BlackboardBase +{ + GENERATED_BODY() + +public: + explicit UBTTask_IncrementPathIndex(FObjectInitializer const& ObjectInitializer); + virtual EBTNodeResult::Type ExecuteTask(UBehaviorTreeComponent& OwnerComp, uint8* NodeMemory) override; + +private: + enum EPathFollowType + { + Forward, + Backward + }; + + EPathFollowType DirectionType = Forward; + + UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "AI", meta = (AllowPrivateAccess = "true")) + bool bBiDirectional = false; +}; From b6fd4e0d7558bb5cf2dad2c573240c0c42a4dbf8 Mon Sep 17 00:00:00 2001 From: PHILIP WHITE Date: Mon, 9 Oct 2023 01:48:01 +0100 Subject: [PATCH 087/112] Add AI Service for Variable Speed Changes --- .../Enemy/Basic/BP_BasicEnemyCharacter.uasset | 4 +-- .../AI/Enemy/Basic/BT_BasicEnemy.uasset | 4 +-- .../B/AZ/GX8EY01G00J28SE17R0FJV.uasset | 2 +- .../AI/Services/BTService_ChangeSpeed.cpp | 26 +++++++++++++++++++ .../AI/Services/BTService_ChangeSpeed.h | 23 ++++++++++++++++ .../AI/Tasks/BTTask_AttackPlayer.cpp | 1 + 6 files changed, 55 insertions(+), 5 deletions(-) create mode 100644 EndlessVendetta/Source/EndlessVendetta/AI/Services/BTService_ChangeSpeed.cpp create mode 100644 EndlessVendetta/Source/EndlessVendetta/AI/Services/BTService_ChangeSpeed.h diff --git a/EndlessVendetta/Content/AI/Enemy/Basic/BP_BasicEnemyCharacter.uasset b/EndlessVendetta/Content/AI/Enemy/Basic/BP_BasicEnemyCharacter.uasset index dfd8779e..4ef4dffe 100644 --- a/EndlessVendetta/Content/AI/Enemy/Basic/BP_BasicEnemyCharacter.uasset +++ b/EndlessVendetta/Content/AI/Enemy/Basic/BP_BasicEnemyCharacter.uasset @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:d3303248d6f8042f7821695c75f275128c8198ff1229097ad439b09fb12d423d -size 33443 +oid sha256:43f411636e7605c44c59066cacff070b330cc2e9853e487e55fa176b49e3ab6d +size 33434 diff --git a/EndlessVendetta/Content/AI/Enemy/Basic/BT_BasicEnemy.uasset b/EndlessVendetta/Content/AI/Enemy/Basic/BT_BasicEnemy.uasset index c09bdac3..fb2bdba6 100644 --- a/EndlessVendetta/Content/AI/Enemy/Basic/BT_BasicEnemy.uasset +++ b/EndlessVendetta/Content/AI/Enemy/Basic/BT_BasicEnemy.uasset @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:b3a4bb63ecee2b90ddaf61c85f3d7bc03086141eac00a6c366858a827f5c16fe -size 24774 +oid sha256:c34f4b7820dd26e2577649567ec2d734d0d8b0df38e081f45a21b3fbe7ed1e5a +size 22715 diff --git a/EndlessVendetta/Content/__ExternalActors__/Levels/EnemyAITest/B/AZ/GX8EY01G00J28SE17R0FJV.uasset b/EndlessVendetta/Content/__ExternalActors__/Levels/EnemyAITest/B/AZ/GX8EY01G00J28SE17R0FJV.uasset index b60728b0..70351202 100644 --- a/EndlessVendetta/Content/__ExternalActors__/Levels/EnemyAITest/B/AZ/GX8EY01G00J28SE17R0FJV.uasset +++ b/EndlessVendetta/Content/__ExternalActors__/Levels/EnemyAITest/B/AZ/GX8EY01G00J28SE17R0FJV.uasset @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:21099d36885bd35d8fc3ced5641695e285425bc2a8bd916912c9a35daa30b5a9 +oid sha256:d2c317194967f57a876bdccccaac78ebf287ae236df1595de335c27d12540f94 size 6064 diff --git a/EndlessVendetta/Source/EndlessVendetta/AI/Services/BTService_ChangeSpeed.cpp b/EndlessVendetta/Source/EndlessVendetta/AI/Services/BTService_ChangeSpeed.cpp new file mode 100644 index 00000000..1ae661ba --- /dev/null +++ b/EndlessVendetta/Source/EndlessVendetta/AI/Services/BTService_ChangeSpeed.cpp @@ -0,0 +1,26 @@ +// Fill out your copyright notice in the Description page of Project Settings. + + +#include "BTService_ChangeSpeed.h" + +#include "EndlessVendetta/AI/AI_EnemyController.h" +#include "EndlessVendetta/AI/EnemyCharacter.h" +#include "GameFramework/CharacterMovementComponent.h" + +UBTService_ChangeSpeed::UBTService_ChangeSpeed() +{ + bNotifyBecomeRelevant = true; + NodeName = TEXT("Change Speed"); +} + +void UBTService_ChangeSpeed::OnBecomeRelevant(UBehaviorTreeComponent& OwnerComp, uint8* NodeMemory) +{ + Super::OnBecomeRelevant(OwnerComp, NodeMemory); + if (const AAI_EnemyController* const EnemyController = Cast(OwnerComp.GetAIOwner())) + { + if (const AEnemyCharacter* const EnemyCharacter = Cast(EnemyController->GetPawn())) + { + EnemyCharacter->GetCharacterMovement()->MaxWalkSpeed = Speed; + } + } +} diff --git a/EndlessVendetta/Source/EndlessVendetta/AI/Services/BTService_ChangeSpeed.h b/EndlessVendetta/Source/EndlessVendetta/AI/Services/BTService_ChangeSpeed.h new file mode 100644 index 00000000..9d8fff7e --- /dev/null +++ b/EndlessVendetta/Source/EndlessVendetta/AI/Services/BTService_ChangeSpeed.h @@ -0,0 +1,23 @@ +// Fill out your copyright notice in the Description page of Project Settings. + +#pragma once + +#include "CoreMinimal.h" +#include "BehaviorTree/Services/BTService_BlackboardBase.h" +#include "BTService_ChangeSpeed.generated.h" + +/** + * + */ +UCLASS() +class ENDLESSVENDETTA_API UBTService_ChangeSpeed : public UBTService_BlackboardBase +{ + GENERATED_BODY() + + UBTService_ChangeSpeed(); + virtual void OnBecomeRelevant(UBehaviorTreeComponent& OwnerComp, uint8* NodeMemory) override; + +private: + UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "AI", meta = (AllowPrivateAccess = "true")) + float Speed = 600.0f; +}; diff --git a/EndlessVendetta/Source/EndlessVendetta/AI/Tasks/BTTask_AttackPlayer.cpp b/EndlessVendetta/Source/EndlessVendetta/AI/Tasks/BTTask_AttackPlayer.cpp index ce49ec2d..d7371066 100644 --- a/EndlessVendetta/Source/EndlessVendetta/AI/Tasks/BTTask_AttackPlayer.cpp +++ b/EndlessVendetta/Source/EndlessVendetta/AI/Tasks/BTTask_AttackPlayer.cpp @@ -8,6 +8,7 @@ UBTTask_AttackPlayer::UBTTask_AttackPlayer(FObjectInitializer const& ObjectInitializer) { + NodeName = TEXT("Attack Player"); } EBTNodeResult::Type UBTTask_AttackPlayer::ExecuteTask(UBehaviorTreeComponent& OwnerComp, uint8* NodeMemory) From a86eb14b35e112ff2b94d15e757f7c40b442a307 Mon Sep 17 00:00:00 2001 From: PHILIP WHITE Date: Mon, 9 Oct 2023 03:01:41 +0100 Subject: [PATCH 088/112] Update Enemy AI for Hearing Perception --- .../AI/Enemy/Basic/BB_BasicEnemy.uasset | 4 +- .../AI/Enemy/Basic/BT_BasicEnemy.uasset | 4 +- .../Blueprints/BP_FirstPersonCharacter.uasset | 4 +- .../EndlessVendetta/AI/AI_EnemyController.cpp | 50 ++++++++++++------- .../EndlessVendetta/AI/AI_EnemyController.h | 1 + .../AI/Tasks/BTTask_StopInvestigating.cpp | 27 ++++++++++ .../AI/Tasks/BTTask_StopInvestigating.h | 20 ++++++++ 7 files changed, 87 insertions(+), 23 deletions(-) create mode 100644 EndlessVendetta/Source/EndlessVendetta/AI/Tasks/BTTask_StopInvestigating.cpp create mode 100644 EndlessVendetta/Source/EndlessVendetta/AI/Tasks/BTTask_StopInvestigating.h diff --git a/EndlessVendetta/Content/AI/Enemy/Basic/BB_BasicEnemy.uasset b/EndlessVendetta/Content/AI/Enemy/Basic/BB_BasicEnemy.uasset index 10435623..86c597c3 100644 --- a/EndlessVendetta/Content/AI/Enemy/Basic/BB_BasicEnemy.uasset +++ b/EndlessVendetta/Content/AI/Enemy/Basic/BB_BasicEnemy.uasset @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:d0a3db5cfec43d17f9da7040dd28af3f31ff5cb2d00756125f57bda2281fb3b6 -size 5092 +oid sha256:4fb06286211ec1dc9e6245e12bb63c2b2cdc6afa6bb179de76eb1352d50a3358 +size 5694 diff --git a/EndlessVendetta/Content/AI/Enemy/Basic/BT_BasicEnemy.uasset b/EndlessVendetta/Content/AI/Enemy/Basic/BT_BasicEnemy.uasset index fb2bdba6..e3fc9299 100644 --- a/EndlessVendetta/Content/AI/Enemy/Basic/BT_BasicEnemy.uasset +++ b/EndlessVendetta/Content/AI/Enemy/Basic/BT_BasicEnemy.uasset @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:c34f4b7820dd26e2577649567ec2d734d0d8b0df38e081f45a21b3fbe7ed1e5a -size 22715 +oid sha256:c9173e7ac91148e35778b0d3cd1bbc818b793426a87c14a27ab1b205bacddfc2 +size 30952 diff --git a/EndlessVendetta/Content/FirstPerson/Blueprints/BP_FirstPersonCharacter.uasset b/EndlessVendetta/Content/FirstPerson/Blueprints/BP_FirstPersonCharacter.uasset index c68329b2..6f9ddff6 100644 --- a/EndlessVendetta/Content/FirstPerson/Blueprints/BP_FirstPersonCharacter.uasset +++ b/EndlessVendetta/Content/FirstPerson/Blueprints/BP_FirstPersonCharacter.uasset @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:dfda56ad26d2c6bcc0fec5a9baf228eeba7cf6c4728566886d051ea933c3e3f2 -size 26540 +oid sha256:228cb8be1c293a528c0116b78bac09d6dd2a180ca322029dbe245df30e35c126 +size 49329 diff --git a/EndlessVendetta/Source/EndlessVendetta/AI/AI_EnemyController.cpp b/EndlessVendetta/Source/EndlessVendetta/AI/AI_EnemyController.cpp index f29f3d4a..864586e4 100644 --- a/EndlessVendetta/Source/EndlessVendetta/AI/AI_EnemyController.cpp +++ b/EndlessVendetta/Source/EndlessVendetta/AI/AI_EnemyController.cpp @@ -7,6 +7,7 @@ #include "BehaviorTree/BlackboardComponent.h" #include "EndlessVendetta/EndlessVendettaCharacter.h" #include "Perception/AIPerceptionComponent.h" +#include "Perception/AISenseConfig_Hearing.h" #include "Perception/AISenseConfig_Sight.h" @@ -53,38 +54,53 @@ void AAI_EnemyController::Tick(float DeltaTime) void AAI_EnemyController::SetupPerceptionSystem() { SightConfig = CreateDefaultSubobject(TEXT("Sight Config")); - if (IsValid(SightConfig)) - { - SetPerceptionComponent(*CreateDefaultSubobject(TEXT("Perception Component"))); - SightConfig->SightRadius = 2000.0f; - SightConfig->LoseSightRadius = 2100.0f; - SightConfig->PeripheralVisionAngleDegrees = 70.0f; - SightConfig->SetMaxAge(20.0f); - SightConfig->AutoSuccessRangeFromLastSeenLocation = 520.0f; - SightConfig->DetectionByAffiliation.bDetectEnemies = true; - SightConfig->DetectionByAffiliation.bDetectFriendlies = true; - SightConfig->DetectionByAffiliation.bDetectNeutrals = true; - GetPerceptionComponent()->SetDominantSense(*SightConfig->GetSenseImplementation()); - GetPerceptionComponent()->OnTargetPerceptionUpdated.AddDynamic(this, &AAI_EnemyController::OnTargetPerceptionUpdated); - GetPerceptionComponent()->ConfigureSense(*SightConfig); - } + SightConfig->SightRadius = 2000.0f; + SightConfig->LoseSightRadius = 2100.0f; + SightConfig->PeripheralVisionAngleDegrees = 70.0f; + SightConfig->SetMaxAge(20.0f); + SightConfig->AutoSuccessRangeFromLastSeenLocation = 520.0f; + SightConfig->DetectionByAffiliation.bDetectEnemies = true; + SightConfig->DetectionByAffiliation.bDetectFriendlies = true; + SightConfig->DetectionByAffiliation.bDetectNeutrals = true; + + HearingConfig = CreateDefaultSubobject(TEXT("Hearing Config")); + HearingConfig->HearingRange = 2000.0f; + HearingConfig->DetectionByAffiliation.bDetectEnemies = true; + HearingConfig->DetectionByAffiliation.bDetectFriendlies = true; + HearingConfig->DetectionByAffiliation.bDetectNeutrals = true; + + if (!IsValid(SightConfig)) return; + if (!IsValid(HearingConfig)) return; + + SetPerceptionComponent(*CreateDefaultSubobject(TEXT("Perception Component"))); + GetPerceptionComponent()->SetDominantSense(*SightConfig->GetSenseImplementation()); + GetPerceptionComponent()->OnTargetPerceptionUpdated.AddDynamic(this, &AAI_EnemyController::OnTargetPerceptionUpdated); + GetPerceptionComponent()->ConfigureSense(*SightConfig); + GetPerceptionComponent()->ConfigureSense(*HearingConfig); } void AAI_EnemyController::OnTargetPerceptionUpdated(AActor* Actor, FAIStimulus const Stimulus) { if (AEndlessVendettaCharacter* const PlayerCharacter = Cast(Actor)) { - if (Stimulus.WasSuccessfullySensed()) + if (Stimulus.WasSuccessfullySensed() && Stimulus.Type == SightConfig->GetSenseID()) { GetBlackboardComponent()->SetValueAsObject("TargetPlayer", Actor); GetBlackboardComponent()->SetValueAsVector("TargetLocation", Stimulus.StimulusLocation); GetBlackboardComponent()->SetValueAsBool("CanSeePlayer", true); } - else + else if (!Stimulus.WasSuccessfullySensed() && Stimulus.Type == SightConfig->GetSenseID()) { GetBlackboardComponent()->ClearValue("TargetActor"); GetBlackboardComponent()->ClearValue("TargetLocation"); GetBlackboardComponent()->SetValueAsBool("CanSeePlayer", false); } + + if (Stimulus.WasSuccessfullySensed() && Stimulus.Type == HearingConfig->GetSenseID()) + { + GetBlackboardComponent()->SetValueAsObject("TargetPlayer", Actor); + GetBlackboardComponent()->SetValueAsVector("InvestigationLocation", Stimulus.StimulusLocation); + GetBlackboardComponent()->SetValueAsBool("IsInvestigating", true); + } } } diff --git a/EndlessVendetta/Source/EndlessVendetta/AI/AI_EnemyController.h b/EndlessVendetta/Source/EndlessVendetta/AI/AI_EnemyController.h index 786bb0c3..c17469a2 100644 --- a/EndlessVendetta/Source/EndlessVendetta/AI/AI_EnemyController.h +++ b/EndlessVendetta/Source/EndlessVendetta/AI/AI_EnemyController.h @@ -27,6 +27,7 @@ public: private: class UAISenseConfig_Sight* SightConfig; + class UAISenseConfig_Hearing* HearingConfig; void SetupPerceptionSystem(); UFUNCTION() diff --git a/EndlessVendetta/Source/EndlessVendetta/AI/Tasks/BTTask_StopInvestigating.cpp b/EndlessVendetta/Source/EndlessVendetta/AI/Tasks/BTTask_StopInvestigating.cpp new file mode 100644 index 00000000..8e5cd367 --- /dev/null +++ b/EndlessVendetta/Source/EndlessVendetta/AI/Tasks/BTTask_StopInvestigating.cpp @@ -0,0 +1,27 @@ +// Fill out your copyright notice in the Description page of Project Settings. + + +#include "BTTask_StopInvestigating.h" + +#include "BehaviorTree/BlackboardComponent.h" +#include "EndlessVendetta/AI/AI_EnemyController.h" +#include "EndlessVendetta/AI/EnemyCharacter.h" + +UBTTask_StopInvestigating::UBTTask_StopInvestigating() +{ + NodeName = TEXT("Stop Investigating"); +} + +EBTNodeResult::Type UBTTask_StopInvestigating::ExecuteTask(UBehaviorTreeComponent& OwnerComp, uint8* NodeMemory) +{ + if (AAI_EnemyController* const EnemyController = Cast(OwnerComp.GetOwner())) + { + if (UBlackboardComponent* const BlackboardComponent = OwnerComp.GetBlackboardComponent()) + { + BlackboardComponent->ClearValue(GetSelectedBlackboardKey()); + FinishLatentTask(OwnerComp, EBTNodeResult::Succeeded); + return EBTNodeResult::Succeeded; + } + } + return EBTNodeResult::Failed; +} diff --git a/EndlessVendetta/Source/EndlessVendetta/AI/Tasks/BTTask_StopInvestigating.h b/EndlessVendetta/Source/EndlessVendetta/AI/Tasks/BTTask_StopInvestigating.h new file mode 100644 index 00000000..ff6f37d6 --- /dev/null +++ b/EndlessVendetta/Source/EndlessVendetta/AI/Tasks/BTTask_StopInvestigating.h @@ -0,0 +1,20 @@ +// Fill out your copyright notice in the Description page of Project Settings. + +#pragma once + +#include "CoreMinimal.h" +#include "BehaviorTree/Tasks/BTTask_BlackboardBase.h" +#include "BTTask_StopInvestigating.generated.h" + +/** + * + */ +UCLASS() +class ENDLESSVENDETTA_API UBTTask_StopInvestigating : public UBTTask_BlackboardBase +{ + GENERATED_BODY() + +public: + UBTTask_StopInvestigating(); + virtual EBTNodeResult::Type ExecuteTask(UBehaviorTreeComponent& OwnerComp, uint8* NodeMemory) override; +}; From 13e86b5288637db72779f5475c36b0310568d520 Mon Sep 17 00:00:00 2001 From: PHILIP WHITE Date: Mon, 9 Oct 2023 03:35:42 +0100 Subject: [PATCH 089/112] Add AIControlHub for AI Alert Level Synchronisation --- .../AI/Enemy/Basic/BP_AIControlHub.uasset | 3 + .../EndlessVendetta/AI/AIControlHub.cpp | 59 +++++++++++++++++++ .../Source/EndlessVendetta/AI/AIControlHub.h | 41 +++++++++++++ .../EndlessVendetta/AI/AI_EnemyController.h | 3 +- .../EndlessVendetta/AI/EnemyCharacter.cpp | 14 +++++ .../EndlessVendetta/AI/EnemyCharacter.h | 5 ++ 6 files changed, 124 insertions(+), 1 deletion(-) create mode 100644 EndlessVendetta/Content/AI/Enemy/Basic/BP_AIControlHub.uasset create mode 100644 EndlessVendetta/Source/EndlessVendetta/AI/AIControlHub.cpp create mode 100644 EndlessVendetta/Source/EndlessVendetta/AI/AIControlHub.h diff --git a/EndlessVendetta/Content/AI/Enemy/Basic/BP_AIControlHub.uasset b/EndlessVendetta/Content/AI/Enemy/Basic/BP_AIControlHub.uasset new file mode 100644 index 00000000..22898b43 --- /dev/null +++ b/EndlessVendetta/Content/AI/Enemy/Basic/BP_AIControlHub.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ef50faf065f81655d520a752397bdbba2865e4c96e537947d4cdd3c78508f1e6 +size 21271 diff --git a/EndlessVendetta/Source/EndlessVendetta/AI/AIControlHub.cpp b/EndlessVendetta/Source/EndlessVendetta/AI/AIControlHub.cpp new file mode 100644 index 00000000..688ede79 --- /dev/null +++ b/EndlessVendetta/Source/EndlessVendetta/AI/AIControlHub.cpp @@ -0,0 +1,59 @@ +// Fill out your copyright notice in the Description page of Project Settings. + + +#include "AIControlHub.h" + +#include "EnemyCharacter.h" + + +// Sets default values +AAIControlHub::AAIControlHub() +{ + // Set this actor to call Tick() every frame. You can turn this off to improve performance if you don't need it. + PrimaryActorTick.bCanEverTick = true; +} + +// Called when the game starts or when spawned +void AAIControlHub::BeginPlay() +{ + Super::BeginPlay(); + + for (AEnemyCharacter* EnemyActor : EnemyActors) + { + EnemyActor->SubscribeToAlertLevelEvent(this); + } +} + +// Called every frame +void AAIControlHub::Tick(float DeltaTime) +{ + Super::Tick(DeltaTime); +} + +void AAIControlHub::IncreaseAlertLevel() +{ + AlertLevel = FMath::Clamp(AlertLevel + 1, 0, 3); + OnAlertLevelChanged(); +} + +void AAIControlHub::DecreaseAlertLevel() +{ + AlertLevel = FMath::Clamp(AlertLevel - 1, 0, 3); + OnAlertLevelChanged(); +} + +void AAIControlHub::SetAlertLevel(int NewAlertLevel) +{ + AlertLevel = FMath::Clamp(NewAlertLevel, 0, 3); + OnAlertLevelChanged(); +} + +int AAIControlHub::GetAlertLevel() const +{ + return AlertLevel; +} + +void AAIControlHub::OnAlertLevelChanged() const +{ + AlertLevelEvent.Broadcast(AlertLevel); +} diff --git a/EndlessVendetta/Source/EndlessVendetta/AI/AIControlHub.h b/EndlessVendetta/Source/EndlessVendetta/AI/AIControlHub.h new file mode 100644 index 00000000..95a84534 --- /dev/null +++ b/EndlessVendetta/Source/EndlessVendetta/AI/AIControlHub.h @@ -0,0 +1,41 @@ +// Fill out your copyright notice in the Description page of Project Settings. + +#pragma once + +#include "CoreMinimal.h" +#include "EnemyCharacter.h" +#include "GameFramework/Actor.h" +#include "AIControlHub.generated.h" + +UCLASS() +class ENDLESSVENDETTA_API AAIControlHub : public AActor +{ + GENERATED_BODY() + +public: + // Sets default values for this actor's properties + AAIControlHub(); + + DECLARE_EVENT_OneParam(AAI_EnemyController, FAlertLevelEvent, int); + FAlertLevelEvent AlertLevelEvent; + +protected: + // Called when the game starts or when spawned + virtual void BeginPlay() override; + +public: + // Called every frame + virtual void Tick(float DeltaTime) override; + + void IncreaseAlertLevel(); + void DecreaseAlertLevel(); + void SetAlertLevel(int NewAlertLevel); + int GetAlertLevel() const; + void OnAlertLevelChanged() const; + +private: + int AlertLevel = 0; + + UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "AI", meta = (AllowPrivateAccess = "true")) + TArray EnemyActors; +}; diff --git a/EndlessVendetta/Source/EndlessVendetta/AI/AI_EnemyController.h b/EndlessVendetta/Source/EndlessVendetta/AI/AI_EnemyController.h index c17469a2..ae91c3f4 100644 --- a/EndlessVendetta/Source/EndlessVendetta/AI/AI_EnemyController.h +++ b/EndlessVendetta/Source/EndlessVendetta/AI/AI_EnemyController.h @@ -26,11 +26,12 @@ public: virtual void Tick(float DeltaTime) override; private: + UPROPERTY() class UAISenseConfig_Sight* SightConfig; + UPROPERTY() class UAISenseConfig_Hearing* HearingConfig; void SetupPerceptionSystem(); UFUNCTION() void OnTargetPerceptionUpdated(AActor* Actor, FAIStimulus const Stimulus); - }; diff --git a/EndlessVendetta/Source/EndlessVendetta/AI/EnemyCharacter.cpp b/EndlessVendetta/Source/EndlessVendetta/AI/EnemyCharacter.cpp index 72f9fabb..e971fab8 100644 --- a/EndlessVendetta/Source/EndlessVendetta/AI/EnemyCharacter.cpp +++ b/EndlessVendetta/Source/EndlessVendetta/AI/EnemyCharacter.cpp @@ -3,6 +3,10 @@ #include "EnemyCharacter.h" +#include "AIControlHub.h" +#include "AIController.h" +#include "BehaviorTree/BlackboardComponent.h" + class UAISense_Sight; // Sets default values @@ -24,3 +28,13 @@ void AEnemyCharacter::Tick(float DeltaTime) { Super::Tick(DeltaTime); } + +void AEnemyCharacter::SubscribeToAlertLevelEvent(AAIControlHub* ControlHub) +{ + AlertLevelDelegateHandle = ControlHub->AlertLevelEvent.AddUObject(this, &AEnemyCharacter::SetAlertLevel); +} + +void AEnemyCharacter::SetAlertLevel(const int NewAlertLevel) const +{ + Cast(GetController())->GetBlackboardComponent()->SetValueAsInt("AlertLevel", NewAlertLevel); +} diff --git a/EndlessVendetta/Source/EndlessVendetta/AI/EnemyCharacter.h b/EndlessVendetta/Source/EndlessVendetta/AI/EnemyCharacter.h index 6c6cfebe..7a0278e6 100644 --- a/EndlessVendetta/Source/EndlessVendetta/AI/EnemyCharacter.h +++ b/EndlessVendetta/Source/EndlessVendetta/AI/EnemyCharacter.h @@ -24,4 +24,9 @@ protected: public: // Called every frame virtual void Tick(float DeltaTime) override; + void SubscribeToAlertLevelEvent(class AAIControlHub* ControlHub); + +private: + FDelegateHandle AlertLevelDelegateHandle; + void SetAlertLevel(int NewAlertLevel) const; }; From b75bc0768c2734afe79d71452e5b15c3f756e762 Mon Sep 17 00:00:00 2001 From: Louis Horne Date: Mon, 9 Oct 2023 12:10:49 +0100 Subject: [PATCH 090/112] Add second floor to the tutorial blockout I finished the second floor and lit the inside of the first floor --- .../Content/LevelPrototyping/Scenes/TutorialHit.umap | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/EndlessVendetta/Content/LevelPrototyping/Scenes/TutorialHit.umap b/EndlessVendetta/Content/LevelPrototyping/Scenes/TutorialHit.umap index 7227b585..71396726 100644 --- a/EndlessVendetta/Content/LevelPrototyping/Scenes/TutorialHit.umap +++ b/EndlessVendetta/Content/LevelPrototyping/Scenes/TutorialHit.umap @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:d1c1c6bbcd436113a83a234d11ea9ffdcd3519ae2c184849d31d77d5866ed7a8 -size 132947 +oid sha256:8e5e538c953b65e8521c292129e2afa8bb4698ded846f4e66187af3aa07da3f9 +size 250175 From e3b1d215efbd3aa53f0f63952ff8be9829375f2f Mon Sep 17 00:00:00 2001 From: Rafal Swierczek Date: Mon, 9 Oct 2023 13:36:49 +0100 Subject: [PATCH 091/112] Bugfix Enemy Behaviour Tree for Random Patroling --- EndlessVendetta/Content/AI/Enemy/Basic/BB_BasicEnemy.uasset | 4 ++-- EndlessVendetta/Content/AI/Enemy/Basic/BT_BasicEnemy.uasset | 4 ++-- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/EndlessVendetta/Content/AI/Enemy/Basic/BB_BasicEnemy.uasset b/EndlessVendetta/Content/AI/Enemy/Basic/BB_BasicEnemy.uasset index 86c597c3..9b2d8e60 100644 --- a/EndlessVendetta/Content/AI/Enemy/Basic/BB_BasicEnemy.uasset +++ b/EndlessVendetta/Content/AI/Enemy/Basic/BB_BasicEnemy.uasset @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:4fb06286211ec1dc9e6245e12bb63c2b2cdc6afa6bb179de76eb1352d50a3358 -size 5694 +oid sha256:6030578986ba57b3d604b31bedc71a3abf0cb4de5dc6658d58c37679ba4c440a +size 5988 diff --git a/EndlessVendetta/Content/AI/Enemy/Basic/BT_BasicEnemy.uasset b/EndlessVendetta/Content/AI/Enemy/Basic/BT_BasicEnemy.uasset index e3fc9299..014a302f 100644 --- a/EndlessVendetta/Content/AI/Enemy/Basic/BT_BasicEnemy.uasset +++ b/EndlessVendetta/Content/AI/Enemy/Basic/BT_BasicEnemy.uasset @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:c9173e7ac91148e35778b0d3cd1bbc818b793426a87c14a27ab1b205bacddfc2 -size 30952 +oid sha256:9d20759902d270772c9aad0fa9521dfd3e343b82eb5818e82a39b1b11280ec96 +size 37942 From 33b9593f941ea013a0b1c78be6a0d5372ad6899f Mon Sep 17 00:00:00 2001 From: Rafal Swierczek Date: Mon, 9 Oct 2023 13:37:42 +0100 Subject: [PATCH 092/112] Update Explosive & AI for Damage Implementation --- EndlessVendetta/Content/Gadgets/BP_Grenade.uasset | 4 ++-- .../HDRI/HDRI_Epic_Courtyard_Daylight.uasset | 2 +- .../StarterContent/Props/MaterialSphere.uasset | 4 ++-- .../EnemyAITest/D/CU/5S9SRVGAJUGQ0XXVI4GUXL.uasset | 3 +++ .../Source/EndlessVendetta/AI/AICharacter.cpp | 11 +++++++---- .../Source/EndlessVendetta/AI/AI_EnemyController.cpp | 8 ++++++++ .../GadgetSystem/GadgetClasses/Combat/Explosive.cpp | 3 +++ 7 files changed, 26 insertions(+), 9 deletions(-) create mode 100644 EndlessVendetta/Content/__ExternalActors__/Levels/EnemyAITest/D/CU/5S9SRVGAJUGQ0XXVI4GUXL.uasset diff --git a/EndlessVendetta/Content/Gadgets/BP_Grenade.uasset b/EndlessVendetta/Content/Gadgets/BP_Grenade.uasset index 92db3563..b1f7c397 100644 --- a/EndlessVendetta/Content/Gadgets/BP_Grenade.uasset +++ b/EndlessVendetta/Content/Gadgets/BP_Grenade.uasset @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:3b5b0aa3f0b0da4c979843a761e655ef147058bb43079f24e4ef358532a7d5cf -size 49595 +oid sha256:0973ba2e3915d82c77975bb8899e2edebcca3eac00001b2d43dc28e63c7070a0 +size 48239 diff --git a/EndlessVendetta/Content/StarterContent/HDRI/HDRI_Epic_Courtyard_Daylight.uasset b/EndlessVendetta/Content/StarterContent/HDRI/HDRI_Epic_Courtyard_Daylight.uasset index a76d9a83..61bd566f 100644 --- a/EndlessVendetta/Content/StarterContent/HDRI/HDRI_Epic_Courtyard_Daylight.uasset +++ b/EndlessVendetta/Content/StarterContent/HDRI/HDRI_Epic_Courtyard_Daylight.uasset @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:35965626ed27917622aa4630a23b7a047248cb9b9b0e66e1843969c4b1e0aadb +oid sha256:dfac21de443880cedc47810366aca5797b08fd32f183ad2f0494feef24f7147b size 66790690 diff --git a/EndlessVendetta/Content/StarterContent/Props/MaterialSphere.uasset b/EndlessVendetta/Content/StarterContent/Props/MaterialSphere.uasset index 413bf4e9..56bddfc9 100644 --- a/EndlessVendetta/Content/StarterContent/Props/MaterialSphere.uasset +++ b/EndlessVendetta/Content/StarterContent/Props/MaterialSphere.uasset @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:000a98212651fd0d1c6804c7636e5e4614f710bd1a19a87b394f13dda3bcbc17 -size 47710 +oid sha256:3a8777c01491888bba9f40eda9d2bed76a611f0e80f75917501ce69c1a321342 +size 47333 diff --git a/EndlessVendetta/Content/__ExternalActors__/Levels/EnemyAITest/D/CU/5S9SRVGAJUGQ0XXVI4GUXL.uasset b/EndlessVendetta/Content/__ExternalActors__/Levels/EnemyAITest/D/CU/5S9SRVGAJUGQ0XXVI4GUXL.uasset new file mode 100644 index 00000000..34744f75 --- /dev/null +++ b/EndlessVendetta/Content/__ExternalActors__/Levels/EnemyAITest/D/CU/5S9SRVGAJUGQ0XXVI4GUXL.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:69dcd1314353f09d4f12cc1a2a2ced8540f035585740d097a179bb332d850779 +size 4545 diff --git a/EndlessVendetta/Source/EndlessVendetta/AI/AICharacter.cpp b/EndlessVendetta/Source/EndlessVendetta/AI/AICharacter.cpp index 9135da93..8e976d0a 100644 --- a/EndlessVendetta/Source/EndlessVendetta/AI/AICharacter.cpp +++ b/EndlessVendetta/Source/EndlessVendetta/AI/AICharacter.cpp @@ -3,12 +3,14 @@ #include "AICharacter.h" -#include "AI_CompanionController.h" +#include "AI_EnemyController.h" #include "Components/CapsuleComponent.h" #include "Engine/DamageEvents.h" #include "GameFramework/CharacterMovementComponent.h" #include "Perception/AIPerceptionStimuliSourceComponent.h" #include "Perception/AISense_Sight.h" +#include "BehaviorTree/BlackboardComponent.h" +#include "Blueprint/AIBlueprintHelperLibrary.h" // Sets default values @@ -48,12 +50,13 @@ float AAICharacter::TakeDamage(const float DamageAmount, FDamageEvent const& Dam CurrentHealth -= DamageAmount; if (CurrentHealth <= 0) { + if (!IsValid(this)) return 0.0f; CurrentHealth = 0; UE_LOG(LogTemp, Display, TEXT("%s is dead"), *CharacterName.ToString()); - const AAI_CompanionController* AIController = Cast(GetController()); - AIController->GetBrainComponent()->StopLogic(*CharacterName.ToString() + FString(" is dead")); - + /*const AAI_EnemyController* AIController = Cast(GetController()); + AIController->GetBrainComponent()->StopLogic(" is dead");*/ + this->Tags.Add(FName("Dead")); //Ragdoll DetachFromControllerPendingDestroy(); UCapsuleComponent* CapsuleComp = GetCapsuleComponent(); diff --git a/EndlessVendetta/Source/EndlessVendetta/AI/AI_EnemyController.cpp b/EndlessVendetta/Source/EndlessVendetta/AI/AI_EnemyController.cpp index 864586e4..3f343fa2 100644 --- a/EndlessVendetta/Source/EndlessVendetta/AI/AI_EnemyController.cpp +++ b/EndlessVendetta/Source/EndlessVendetta/AI/AI_EnemyController.cpp @@ -36,6 +36,14 @@ void AAI_EnemyController::OnPossess(APawn* InPawn) UBlackboardComponent* TempBlackboardPtr; UseBlackboard(BehaviorTree->BlackboardAsset, TempBlackboardPtr); Blackboard = TempBlackboardPtr; + if (IsValid(EnemyCharacter->GetPatrolPath())) + { + Blackboard->SetValueAsBool("IsPatroling", true); + } + else + { + Blackboard->SetValueAsBool("IsPatroling", false); + } RunBehaviorTree(BehaviorTree); } } diff --git a/EndlessVendetta/Source/EndlessVendetta/GadgetSystem/GadgetClasses/Combat/Explosive.cpp b/EndlessVendetta/Source/EndlessVendetta/GadgetSystem/GadgetClasses/Combat/Explosive.cpp index 4476d8d4..71262298 100644 --- a/EndlessVendetta/Source/EndlessVendetta/GadgetSystem/GadgetClasses/Combat/Explosive.cpp +++ b/EndlessVendetta/Source/EndlessVendetta/GadgetSystem/GadgetClasses/Combat/Explosive.cpp @@ -5,6 +5,8 @@ #include "CollisionDebugDrawingPublic.h" #include "Kismet/KismetMathLibrary.h" +#include "Engine/DamageEvents.h" +#include "EndlessVendetta/AI/AICharacter.h" // Sets default values AExplosive::AExplosive() @@ -69,6 +71,7 @@ void AExplosive::Explosion() } // When merged, call philips take damage function here UE_LOG(LogTemp, Warning, TEXT("A shrapnel piece hit %s, dealing %f damage"), *OutHit.GetActor()->GetName(), DamageToApply); + Cast(OutHit.GetActor())->TakeDamage(DamageToApply, FPointDamageEvent(), GetWorld()->GetFirstPlayerController(), this); } } PlayExplosionEffects(); From 8f71d77945ea9131181fe798801189ca59e967a5 Mon Sep 17 00:00:00 2001 From: MH261677 Date: Mon, 9 Oct 2023 13:50:54 +0100 Subject: [PATCH 093/112] Started to modify recoil camera for more realistic weapon fire --- .../BaseWeapons/AssaultRifles/BP_BaseAssaultRifle.uasset | 4 ++-- .../StarterContent/HDRI/HDRI_Epic_Courtyard_Daylight.uasset | 2 +- .../Content/StarterContent/Props/MaterialSphere.uasset | 4 ++-- 3 files changed, 5 insertions(+), 5 deletions(-) diff --git a/EndlessVendetta/Content/FirstPerson/Blueprints/BaseWeapons/AssaultRifles/BP_BaseAssaultRifle.uasset b/EndlessVendetta/Content/FirstPerson/Blueprints/BaseWeapons/AssaultRifles/BP_BaseAssaultRifle.uasset index f0a16367..7a6aaf5e 100644 --- a/EndlessVendetta/Content/FirstPerson/Blueprints/BaseWeapons/AssaultRifles/BP_BaseAssaultRifle.uasset +++ b/EndlessVendetta/Content/FirstPerson/Blueprints/BaseWeapons/AssaultRifles/BP_BaseAssaultRifle.uasset @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:99fdc6f5e7c67d7a44ca185fad64f6c99ad6142011c9de4566761ec07bdd68d0 -size 37860 +oid sha256:687cf147ebf43e160b9c018f570186e7fd789493317c6c28e6bba9c92095f005 +size 37868 diff --git a/EndlessVendetta/Content/StarterContent/HDRI/HDRI_Epic_Courtyard_Daylight.uasset b/EndlessVendetta/Content/StarterContent/HDRI/HDRI_Epic_Courtyard_Daylight.uasset index a76d9a83..cb276826 100644 --- a/EndlessVendetta/Content/StarterContent/HDRI/HDRI_Epic_Courtyard_Daylight.uasset +++ b/EndlessVendetta/Content/StarterContent/HDRI/HDRI_Epic_Courtyard_Daylight.uasset @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:35965626ed27917622aa4630a23b7a047248cb9b9b0e66e1843969c4b1e0aadb +oid sha256:3127ce3824cf23b96f87ddd954959e3bbbc4348342ba07ca1ef8a6797b0258d9 size 66790690 diff --git a/EndlessVendetta/Content/StarterContent/Props/MaterialSphere.uasset b/EndlessVendetta/Content/StarterContent/Props/MaterialSphere.uasset index 413bf4e9..56bddfc9 100644 --- a/EndlessVendetta/Content/StarterContent/Props/MaterialSphere.uasset +++ b/EndlessVendetta/Content/StarterContent/Props/MaterialSphere.uasset @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:000a98212651fd0d1c6804c7636e5e4614f710bd1a19a87b394f13dda3bcbc17 -size 47710 +oid sha256:3a8777c01491888bba9f40eda9d2bed76a611f0e80f75917501ce69c1a321342 +size 47333 From be4ea78ab402745608fb37ef332834649f83f93d Mon Sep 17 00:00:00 2001 From: MH261677 Date: Mon, 9 Oct 2023 13:51:21 +0100 Subject: [PATCH 094/112] Modified recoil limits --- .../Blueprints/BP_FirstPersonCharacter.uasset | 4 +-- .../EndlessVendettaCharacter.cpp | 14 ++++++++++- .../EndlessVendettaCharacter.h | 3 +++ .../WeaponSystem/BaseWeaponClass.cpp | 25 +++++++++++++++---- .../WeaponSystem/BaseWeaponClass.h | 10 ++++++++ 5 files changed, 48 insertions(+), 8 deletions(-) diff --git a/EndlessVendetta/Content/FirstPerson/Blueprints/BP_FirstPersonCharacter.uasset b/EndlessVendetta/Content/FirstPerson/Blueprints/BP_FirstPersonCharacter.uasset index 1cd92c0a..e7dcb857 100644 --- a/EndlessVendetta/Content/FirstPerson/Blueprints/BP_FirstPersonCharacter.uasset +++ b/EndlessVendetta/Content/FirstPerson/Blueprints/BP_FirstPersonCharacter.uasset @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:5431985cf2ef161d75bd2da6d55c3513b80f5c5f13010f132c47f57f2e5b84dc -size 42521 +oid sha256:65d9f1286e3e2a0afeb00fd61e2a4ad5d105f8c4ea61cf146761901c810ea4bb +size 42451 diff --git a/EndlessVendetta/Source/EndlessVendetta/EndlessVendettaCharacter.cpp b/EndlessVendetta/Source/EndlessVendetta/EndlessVendettaCharacter.cpp index 26f9566f..d27bdc42 100644 --- a/EndlessVendetta/Source/EndlessVendetta/EndlessVendettaCharacter.cpp +++ b/EndlessVendetta/Source/EndlessVendetta/EndlessVendettaCharacter.cpp @@ -92,6 +92,7 @@ void AEndlessVendettaCharacter::SetupPlayerInputComponent(class UInputComponent* //Weapon Shooting EnhancedInputComponent->BindAction(TapShootAction, ETriggerEvent::Triggered, this, &AEndlessVendettaCharacter::FireCaller); + EnhancedInputComponent->BindAction(TapShootAction, ETriggerEvent::Completed, this, &AEndlessVendettaCharacter::StopFire); EnhancedInputComponent->BindAction(GunAimInAction, ETriggerEvent::Triggered, this, &AEndlessVendettaCharacter::GunRightClick); EnhancedInputComponent->BindAction(GunAimInAction, ETriggerEvent::Completed, this, &AEndlessVendettaCharacter::StopGunRightClick); @@ -229,7 +230,6 @@ void AEndlessVendettaCharacter::EquipSecondary() //Calls the fire function in the baseWeaponClass void AEndlessVendettaCharacter::FireCaller() { - UE_LOG(LogTemp, Warning, TEXT("Tap Fire")); if (IsValid(PrimaryWeapon)) { PrimaryWeapon->Fire(); @@ -240,6 +240,18 @@ void AEndlessVendettaCharacter::FireCaller() } } +void AEndlessVendettaCharacter::StopFire() +{ + if (IsValid(PrimaryWeapon)) + { + PrimaryWeapon->CancelFire(); + } + if (IsValid(SecondaryWeapon)) + { + SecondaryWeapon->CancelFire(); + } +} + void AEndlessVendettaCharacter::GunRightClick() { if (IsValid(PrimaryWeapon) && !bIsScoped) diff --git a/EndlessVendetta/Source/EndlessVendetta/EndlessVendettaCharacter.h b/EndlessVendetta/Source/EndlessVendetta/EndlessVendettaCharacter.h index 4f8b754d..3fb99716 100644 --- a/EndlessVendetta/Source/EndlessVendetta/EndlessVendettaCharacter.h +++ b/EndlessVendetta/Source/EndlessVendetta/EndlessVendettaCharacter.h @@ -123,6 +123,9 @@ public: UFUNCTION(BlueprintCallable, Category = "Weapons") void GunReload(); + UFUNCTION(BlueprintCallable, Category = "Weapons") + void StopFire(); + UArrowComponent* ScopedLocationArrow; UPROPERTY(EditAnywhere, Category = "Dont Touch") diff --git a/EndlessVendetta/Source/EndlessVendetta/WeaponSystem/BaseWeaponClass.cpp b/EndlessVendetta/Source/EndlessVendetta/WeaponSystem/BaseWeaponClass.cpp index dd57b613..c80e5bbd 100644 --- a/EndlessVendetta/Source/EndlessVendetta/WeaponSystem/BaseWeaponClass.cpp +++ b/EndlessVendetta/Source/EndlessVendetta/WeaponSystem/BaseWeaponClass.cpp @@ -85,12 +85,26 @@ void ABaseWeaponClass::ApplyRecoil(float DeltaTime) { float amplitude = RecoilCurve->GetFloatValue(recoilTime); //get current value of curve in time recoilTime += DeltaTime; - playerInWorld->AddControllerPitchInput(GetRecoilPitch(amplitude, recoilTime)); + if (bulletCountShoot <= 3) playerInWorld->AddControllerPitchInput(GetRecoilPitch(amplitude, recoilTime)); + traceEnd = traceStart + (UKismetMathLibrary::GetForwardVector(playerInWorld->GetControlRotation() * GetRecoilPitch(amplitude, recoilTime))); + //UE_LOG(LogTemp, Warning, TEXT("Controller pitch: Pitch: %f Yaw: %f, Roll: %f"), playerInWorld->GetControlRotation().Pitch, playerInWorld->GetControlRotation().Yaw, playerInWorld->GetControlRotation().Roll); playerInWorld->AddControllerYawInput(GetRecoilYaw(amplitude, recoilTime)); + UE_LOG(LogTemp, Warning, TEXT("recoilTime: %f"), recoilTime); UpdateSamples(amplitude, recoilTime); } } + +//void ABaseWeaponClass::RecoilVerticalLimit(FHitResult Outhit) +//{ +// double currentCameraRot = playerInWorld->GetControlRotation().Pitch; +// if (bulletCountShoot >= 3) +// { +// +// } +//} + + void ABaseWeaponClass::nullSamples() { recoilCurvet = 0; @@ -133,6 +147,8 @@ void ABaseWeaponClass::ClickDetectionTimer() void ABaseWeaponClass::CancelFire() { GetWorldTimerManager().ClearTimer(timerHandle); + UE_LOG(LogTemp, Display, TEXT("FireCancelled")); + bulletCountShoot = 0; } void ABaseWeaponClass::Fire() @@ -140,14 +156,12 @@ void ABaseWeaponClass::Fire() if(currentAmmoCount > 0) { //do damage fallof based off distance - FHitResult outHit; - FVector traceStart; - FVector traceEnd; traceStart = GunStartArrow->GetComponentLocation(); traceEnd = traceStart + (GunStartArrow->GetForwardVector() * BulletDistance); FCollisionQueryParams collisionParams; collisionParams.AddIgnoredActor(playerInWorld); collisionParams.AddIgnoredActor(this); + /*RecoilVerticalLimit(outHit);*/ if (GetWorldTimerManager().IsTimerActive(timerHandle)) { return; @@ -160,9 +174,10 @@ void ABaseWeaponClass::Fire() UE_LOG(LogTemp, Display, TEXT("Ammo Count: %d"), currentAmmoCount); GenerateRecoilVector(); ClickDetectionTimer(); + bulletCountShoot += 1; if (outHit.bBlockingHit) { - UE_LOG(LogTemp, Display, TEXT("hit item: %s"), *outHit.GetActor()->GetName()); + //UE_LOG(LogTemp, Display, TEXT("hit item: %s"), *outHit.GetActor()->GetName()); } } else if(currentAmmoCount <= 0) diff --git a/EndlessVendetta/Source/EndlessVendetta/WeaponSystem/BaseWeaponClass.h b/EndlessVendetta/Source/EndlessVendetta/WeaponSystem/BaseWeaponClass.h index 1d07fb65..0edef8f6 100644 --- a/EndlessVendetta/Source/EndlessVendetta/WeaponSystem/BaseWeaponClass.h +++ b/EndlessVendetta/Source/EndlessVendetta/WeaponSystem/BaseWeaponClass.h @@ -113,6 +113,16 @@ public: UFUNCTION(BlueprintCallable, Category = "Weapons") void WeaponReload(); + FHitResult outHit; + FVector traceStart; + FVector traceEnd; + + //UFUNCTION(BlueprintCallable, Category = "Weapons") + //void RecoilVerticalLimit(FHitResult Outhit); + + UPROPERTY(EditAnywhere) + int bulletCountShoot; //Gets how many bullets shot per + private: UArrowComponent* GunStartArrow; From e03c19e421270a4b1f20d5a100d72b4e661a4fc7 Mon Sep 17 00:00:00 2001 From: MH261677 Date: Mon, 9 Oct 2023 14:27:40 +0100 Subject: [PATCH 095/112] Update Enemy Character for Damage Implementation --- .../Content/AI/Enemy/Basic/BP_BasicEnemyCharacter.uasset | 4 ++-- .../Source/EndlessVendetta/WeaponSystem/BaseWeaponClass.cpp | 4 +++- 2 files changed, 5 insertions(+), 3 deletions(-) diff --git a/EndlessVendetta/Content/AI/Enemy/Basic/BP_BasicEnemyCharacter.uasset b/EndlessVendetta/Content/AI/Enemy/Basic/BP_BasicEnemyCharacter.uasset index 1274a0a0..5e571245 100644 --- a/EndlessVendetta/Content/AI/Enemy/Basic/BP_BasicEnemyCharacter.uasset +++ b/EndlessVendetta/Content/AI/Enemy/Basic/BP_BasicEnemyCharacter.uasset @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:ebb90a9b178b2eda1dd206095562e9b4cbaa8a913ddf15003b87fa3c664e8dab -size 33587 +oid sha256:150f775d1dd9676edfff3ca936843a20b46032df429d2b91cc31b30768fdcc69 +size 34269 diff --git a/EndlessVendetta/Source/EndlessVendetta/WeaponSystem/BaseWeaponClass.cpp b/EndlessVendetta/Source/EndlessVendetta/WeaponSystem/BaseWeaponClass.cpp index 71d39712..caa70988 100644 --- a/EndlessVendetta/Source/EndlessVendetta/WeaponSystem/BaseWeaponClass.cpp +++ b/EndlessVendetta/Source/EndlessVendetta/WeaponSystem/BaseWeaponClass.cpp @@ -91,7 +91,7 @@ void ABaseWeaponClass::ApplyRecoil(float DeltaTime) traceEnd = traceStart + (UKismetMathLibrary::GetForwardVector(playerInWorld->GetControlRotation() * GetRecoilPitch(amplitude, recoilTime))); //UE_LOG(LogTemp, Warning, TEXT("Controller pitch: Pitch: %f Yaw: %f, Roll: %f"), playerInWorld->GetControlRotation().Pitch, playerInWorld->GetControlRotation().Yaw, playerInWorld->GetControlRotation().Roll); playerInWorld->AddControllerYawInput(GetRecoilYaw(amplitude, recoilTime)); - UE_LOG(LogTemp, Warning, TEXT("recoilTime: %f"), recoilTime); + //UE_LOG(LogTemp, Warning, TEXT("recoilTime: %f"), recoilTime); UpdateSamples(amplitude, recoilTime); } } @@ -169,6 +169,8 @@ void ABaseWeaponClass::Fire() bulletCountShoot += 1; if (outHit.bBlockingHit) { + UE_LOG(LogTemp, Display, TEXT("Ammo Count: %s"), *outHit.GetActor()->GetName()); + if (!Cast(outHit.GetActor())) return; Cast(outHit.GetActor())->TakeDamage(WeaponDamage, FPointDamageEvent(), GetWorld()->GetFirstPlayerController(), this); } } From 7bf1f7b59dc2949fbd1d7ed520a84d1568ee719f Mon Sep 17 00:00:00 2001 From: Rafal Swierczek Date: Mon, 9 Oct 2023 14:45:01 +0100 Subject: [PATCH 096/112] Prepared AI Test Level for Showcase --- .../Levels/EnemyAITest/A/48/9EYCQL9YALBI37JNE2ATIF.uasset | 3 +++ .../Levels/EnemyAITest/D/CU/5S9SRVGAJUGQ0XXVI4GUXL.uasset | 3 --- 2 files changed, 3 insertions(+), 3 deletions(-) create mode 100644 EndlessVendetta/Content/__ExternalActors__/Levels/EnemyAITest/A/48/9EYCQL9YALBI37JNE2ATIF.uasset delete mode 100644 EndlessVendetta/Content/__ExternalActors__/Levels/EnemyAITest/D/CU/5S9SRVGAJUGQ0XXVI4GUXL.uasset diff --git a/EndlessVendetta/Content/__ExternalActors__/Levels/EnemyAITest/A/48/9EYCQL9YALBI37JNE2ATIF.uasset b/EndlessVendetta/Content/__ExternalActors__/Levels/EnemyAITest/A/48/9EYCQL9YALBI37JNE2ATIF.uasset new file mode 100644 index 00000000..4a8c8d12 --- /dev/null +++ b/EndlessVendetta/Content/__ExternalActors__/Levels/EnemyAITest/A/48/9EYCQL9YALBI37JNE2ATIF.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a625758ead64715c1bc75534494747eaf4a13a980336cdefd6f5599307f8c37d +size 5528 diff --git a/EndlessVendetta/Content/__ExternalActors__/Levels/EnemyAITest/D/CU/5S9SRVGAJUGQ0XXVI4GUXL.uasset b/EndlessVendetta/Content/__ExternalActors__/Levels/EnemyAITest/D/CU/5S9SRVGAJUGQ0XXVI4GUXL.uasset deleted file mode 100644 index 34744f75..00000000 --- a/EndlessVendetta/Content/__ExternalActors__/Levels/EnemyAITest/D/CU/5S9SRVGAJUGQ0XXVI4GUXL.uasset +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:69dcd1314353f09d4f12cc1a2a2ced8540f035585740d097a179bb332d850779 -size 4545 From f427b07bb9e28b1bd58c4f94c504ffeba4abd799 Mon Sep 17 00:00:00 2001 From: MH261677 Date: Mon, 9 Oct 2023 14:51:50 +0100 Subject: [PATCH 097/112] Attempted Change to Recoil Timing for Weapons --- .../AssaultRifles/BP_BaseAssaultRifle.uasset | 4 ++-- .../WeaponSystem/BaseWeaponClass.cpp | 13 +++++++------ .../EndlessVendetta/WeaponSystem/BaseWeaponClass.h | 2 ++ 3 files changed, 11 insertions(+), 8 deletions(-) diff --git a/EndlessVendetta/Content/FirstPerson/Blueprints/BaseWeapons/AssaultRifles/BP_BaseAssaultRifle.uasset b/EndlessVendetta/Content/FirstPerson/Blueprints/BaseWeapons/AssaultRifles/BP_BaseAssaultRifle.uasset index 7a6aaf5e..b5a6daba 100644 --- a/EndlessVendetta/Content/FirstPerson/Blueprints/BaseWeapons/AssaultRifles/BP_BaseAssaultRifle.uasset +++ b/EndlessVendetta/Content/FirstPerson/Blueprints/BaseWeapons/AssaultRifles/BP_BaseAssaultRifle.uasset @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:687cf147ebf43e160b9c018f570186e7fd789493317c6c28e6bba9c92095f005 -size 37868 +oid sha256:b6a0ba4e4f4c638a319c76ccdd1a71c53a5f6a04822a0f6a18861e5f44d2eb51 +size 37876 diff --git a/EndlessVendetta/Source/EndlessVendetta/WeaponSystem/BaseWeaponClass.cpp b/EndlessVendetta/Source/EndlessVendetta/WeaponSystem/BaseWeaponClass.cpp index caa70988..96a6656e 100644 --- a/EndlessVendetta/Source/EndlessVendetta/WeaponSystem/BaseWeaponClass.cpp +++ b/EndlessVendetta/Source/EndlessVendetta/WeaponSystem/BaseWeaponClass.cpp @@ -23,6 +23,9 @@ ABaseWeaponClass::ABaseWeaponClass() void ABaseWeaponClass::BeginPlay() { Super::BeginPlay(); + + collisionParams.AddIgnoredActor(playerInWorld); + collisionParams.AddIgnoredActor(this); // Attempt to find the player character APlayerController* PlayerController = UGameplayStatics::GetPlayerController(this, 0); @@ -88,8 +91,9 @@ void ABaseWeaponClass::ApplyRecoil(float DeltaTime) float amplitude = RecoilCurve->GetFloatValue(recoilTime); //get current value of curve in time recoilTime += DeltaTime; if (bulletCountShoot <= 3) playerInWorld->AddControllerPitchInput(GetRecoilPitch(amplitude, recoilTime)); - traceEnd = traceStart + (UKismetMathLibrary::GetForwardVector(playerInWorld->GetControlRotation() * GetRecoilPitch(amplitude, recoilTime))); - //UE_LOG(LogTemp, Warning, TEXT("Controller pitch: Pitch: %f Yaw: %f, Roll: %f"), playerInWorld->GetControlRotation().Pitch, playerInWorld->GetControlRotation().Yaw, playerInWorld->GetControlRotation().Roll); + newTraceEnd = traceStart + (UKismetMathLibrary::GetForwardVector(playerInWorld->GetControlRotation() * GetRecoilPitch(amplitude, recoilTime))); + GetWorld()->LineTraceSingleByChannel(outHit, traceStart, newTraceEnd, ECC_Visibility, collisionParams); + UE_LOG(LogTemp, Warning, TEXT("traceEnd: %s"), *traceEnd.ToString()); playerInWorld->AddControllerYawInput(GetRecoilYaw(amplitude, recoilTime)); //UE_LOG(LogTemp, Warning, TEXT("recoilTime: %f"), recoilTime); UpdateSamples(amplitude, recoilTime); @@ -150,15 +154,12 @@ void ABaseWeaponClass::Fire() //do damage fallof based off distance traceStart = GunStartArrow->GetComponentLocation(); traceEnd = traceStart + (GunStartArrow->GetForwardVector() * BulletDistance); - FCollisionQueryParams collisionParams; - collisionParams.AddIgnoredActor(playerInWorld); - collisionParams.AddIgnoredActor(this); /*RecoilVerticalLimit(outHit);*/ if (GetWorldTimerManager().IsTimerActive(timerHandle)) { return; } - GetWorld()->LineTraceSingleByChannel(outHit, traceStart, traceEnd, ECC_Visibility, collisionParams); + if (bulletCountShoot <= 3) GetWorld()->LineTraceSingleByChannel(outHit, traceStart, traceEnd, ECC_Visibility, collisionParams); //Debug line to see where the trace hit DrawDebugLine(this->GetWorld(), traceStart, traceEnd, FColor::Red, false, 5.0f, 0U, 2.5f); playerControllerRef->PlayerCameraManager->StartCameraShake(CameraShakeClass, 1); diff --git a/EndlessVendetta/Source/EndlessVendetta/WeaponSystem/BaseWeaponClass.h b/EndlessVendetta/Source/EndlessVendetta/WeaponSystem/BaseWeaponClass.h index 0edef8f6..933b5a2c 100644 --- a/EndlessVendetta/Source/EndlessVendetta/WeaponSystem/BaseWeaponClass.h +++ b/EndlessVendetta/Source/EndlessVendetta/WeaponSystem/BaseWeaponClass.h @@ -116,6 +116,8 @@ public: FHitResult outHit; FVector traceStart; FVector traceEnd; + FVector newTraceEnd; + FCollisionQueryParams collisionParams; //UFUNCTION(BlueprintCallable, Category = "Weapons") //void RecoilVerticalLimit(FHitResult Outhit); From cd38898a589a93dea79f31c9be3cd036598508c7 Mon Sep 17 00:00:00 2001 From: MH261677 Date: Mon, 9 Oct 2023 23:52:08 +0100 Subject: [PATCH 098/112] Updated Weapon Recoil to KeepFiring but Remove Pitch --- .../.idea.EndlessVendetta.dir/.idea/vcs.xml | 6 ++++++ .../Blueprints/BP_FirstPersonCharacter.uasset | 4 ++-- .../AssaultRifles/BP_BaseAssaultRifle.uasset | 4 ++-- .../WeaonRecoil/AssaultRecoilPattern.uasset | 2 +- .../Blueprints/WBP_Crosshair.uasset | 4 ++-- .../WeaponSystem/BaseWeaponClass.cpp | 20 ++++++++++--------- .../WeaponSystem/BaseWeaponClass.h | 2 ++ 7 files changed, 26 insertions(+), 16 deletions(-) create mode 100644 EndlessVendetta/.idea/.idea.EndlessVendetta.dir/.idea/vcs.xml diff --git a/EndlessVendetta/.idea/.idea.EndlessVendetta.dir/.idea/vcs.xml b/EndlessVendetta/.idea/.idea.EndlessVendetta.dir/.idea/vcs.xml new file mode 100644 index 00000000..6c0b8635 --- /dev/null +++ b/EndlessVendetta/.idea/.idea.EndlessVendetta.dir/.idea/vcs.xml @@ -0,0 +1,6 @@ + + + + + + \ No newline at end of file diff --git a/EndlessVendetta/Content/FirstPerson/Blueprints/BP_FirstPersonCharacter.uasset b/EndlessVendetta/Content/FirstPerson/Blueprints/BP_FirstPersonCharacter.uasset index e7dcb857..cc246418 100644 --- a/EndlessVendetta/Content/FirstPerson/Blueprints/BP_FirstPersonCharacter.uasset +++ b/EndlessVendetta/Content/FirstPerson/Blueprints/BP_FirstPersonCharacter.uasset @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:65d9f1286e3e2a0afeb00fd61e2a4ad5d105f8c4ea61cf146761901c810ea4bb -size 42451 +oid sha256:946f8f62bbea4cb4f5d279e9da49d29291bacb30f803de7fd8503ed608295287 +size 42585 diff --git a/EndlessVendetta/Content/FirstPerson/Blueprints/BaseWeapons/AssaultRifles/BP_BaseAssaultRifle.uasset b/EndlessVendetta/Content/FirstPerson/Blueprints/BaseWeapons/AssaultRifles/BP_BaseAssaultRifle.uasset index b5a6daba..4e3a7b0b 100644 --- a/EndlessVendetta/Content/FirstPerson/Blueprints/BaseWeapons/AssaultRifles/BP_BaseAssaultRifle.uasset +++ b/EndlessVendetta/Content/FirstPerson/Blueprints/BaseWeapons/AssaultRifles/BP_BaseAssaultRifle.uasset @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:b6a0ba4e4f4c638a319c76ccdd1a71c53a5f6a04822a0f6a18861e5f44d2eb51 -size 37876 +oid sha256:3194a5d00e86f1294c85008ba95e40c7d09358e3df2d8360945f78a20dc0a78d +size 37917 diff --git a/EndlessVendetta/Content/FirstPerson/Blueprints/BaseWeapons/WeaonRecoil/AssaultRecoilPattern.uasset b/EndlessVendetta/Content/FirstPerson/Blueprints/BaseWeapons/WeaonRecoil/AssaultRecoilPattern.uasset index 423c7283..e0afe7ed 100644 --- a/EndlessVendetta/Content/FirstPerson/Blueprints/BaseWeapons/WeaonRecoil/AssaultRecoilPattern.uasset +++ b/EndlessVendetta/Content/FirstPerson/Blueprints/BaseWeapons/WeaonRecoil/AssaultRecoilPattern.uasset @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:b63c754fc78a67f950a91e30dd31a6778bac31a485191b9cc14560515d5012a5 +oid sha256:136afa1f1b4d7d302c0824edcbaeff1061de8ca41532af1ff390294a8baeda7a size 2033 diff --git a/EndlessVendetta/Content/FirstPerson/Blueprints/WBP_Crosshair.uasset b/EndlessVendetta/Content/FirstPerson/Blueprints/WBP_Crosshair.uasset index bdd28701..b36651a3 100644 --- a/EndlessVendetta/Content/FirstPerson/Blueprints/WBP_Crosshair.uasset +++ b/EndlessVendetta/Content/FirstPerson/Blueprints/WBP_Crosshair.uasset @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:a3c0a70c5b68ec66372ae8e29abcb76deb385319f24202e43395c9061b3d0f8a -size 24854 +oid sha256:f29a879021fde175da0f45dcffaa1e4b4765574bb429977dc552cd51b2ad899a +size 24819 diff --git a/EndlessVendetta/Source/EndlessVendetta/WeaponSystem/BaseWeaponClass.cpp b/EndlessVendetta/Source/EndlessVendetta/WeaponSystem/BaseWeaponClass.cpp index 96a6656e..a8f66c9c 100644 --- a/EndlessVendetta/Source/EndlessVendetta/WeaponSystem/BaseWeaponClass.cpp +++ b/EndlessVendetta/Source/EndlessVendetta/WeaponSystem/BaseWeaponClass.cpp @@ -91,9 +91,8 @@ void ABaseWeaponClass::ApplyRecoil(float DeltaTime) float amplitude = RecoilCurve->GetFloatValue(recoilTime); //get current value of curve in time recoilTime += DeltaTime; if (bulletCountShoot <= 3) playerInWorld->AddControllerPitchInput(GetRecoilPitch(amplitude, recoilTime)); - newTraceEnd = traceStart + (UKismetMathLibrary::GetForwardVector(playerInWorld->GetControlRotation() * GetRecoilPitch(amplitude, recoilTime))); - GetWorld()->LineTraceSingleByChannel(outHit, traceStart, newTraceEnd, ECC_Visibility, collisionParams); - UE_LOG(LogTemp, Warning, TEXT("traceEnd: %s"), *traceEnd.ToString()); + GunStartArrow->AddRelativeRotation(FRotator(-GetRecoilPitch(amplitude, recoilTime), 0, 0)); + //traceEnd = GunStartArrow->GetComponentLocation() + (GunStartArrow->GetComponentRotation().Pitch * GetRecoilPitch(amplitude, recoilTime)); playerInWorld->AddControllerYawInput(GetRecoilYaw(amplitude, recoilTime)); //UE_LOG(LogTemp, Warning, TEXT("recoilTime: %f"), recoilTime); UpdateSamples(amplitude, recoilTime); @@ -145,6 +144,8 @@ void ABaseWeaponClass::CancelFire() GetWorldTimerManager().ClearTimer(timerHandle); UE_LOG(LogTemp, Display, TEXT("FireCancelled")); bulletCountShoot = 0; + GunStartArrow->SetRelativeRotation(FRotator(0,0,0)); + playerControllerRef->SetControlRotation(ogPlayerRotation); } void ABaseWeaponClass::Fire() @@ -155,12 +156,8 @@ void ABaseWeaponClass::Fire() traceStart = GunStartArrow->GetComponentLocation(); traceEnd = traceStart + (GunStartArrow->GetForwardVector() * BulletDistance); /*RecoilVerticalLimit(outHit);*/ - if (GetWorldTimerManager().IsTimerActive(timerHandle)) - { - return; - } - if (bulletCountShoot <= 3) GetWorld()->LineTraceSingleByChannel(outHit, traceStart, traceEnd, ECC_Visibility, collisionParams); - //Debug line to see where the trace hit + if (GetWorldTimerManager().IsTimerActive(timerHandle)) return; + GetWorld()->LineTraceSingleByChannel(outHit, traceStart, traceEnd, ECC_Visibility, collisionParams); DrawDebugLine(this->GetWorld(), traceStart, traceEnd, FColor::Red, false, 5.0f, 0U, 2.5f); playerControllerRef->PlayerCameraManager->StartCameraShake(CameraShakeClass, 1); currentAmmoCount -= 1; @@ -168,6 +165,11 @@ void ABaseWeaponClass::Fire() GenerateRecoilVector(); ClickDetectionTimer(); bulletCountShoot += 1; + if (bulletCountShoot <= 1) + { + ogPlayerRotation = FRotator(playerControllerRef->GetControlRotation()); + UE_LOG(LogTemp, Display, TEXT("FIRST BULLET FIRED: %s"), *ogPlayerRotation.ToString()); + } if (outHit.bBlockingHit) { UE_LOG(LogTemp, Display, TEXT("Ammo Count: %s"), *outHit.GetActor()->GetName()); diff --git a/EndlessVendetta/Source/EndlessVendetta/WeaponSystem/BaseWeaponClass.h b/EndlessVendetta/Source/EndlessVendetta/WeaponSystem/BaseWeaponClass.h index 933b5a2c..19175cef 100644 --- a/EndlessVendetta/Source/EndlessVendetta/WeaponSystem/BaseWeaponClass.h +++ b/EndlessVendetta/Source/EndlessVendetta/WeaponSystem/BaseWeaponClass.h @@ -119,6 +119,8 @@ public: FVector newTraceEnd; FCollisionQueryParams collisionParams; + FRotator ogPlayerRotation; + //UFUNCTION(BlueprintCallable, Category = "Weapons") //void RecoilVerticalLimit(FHitResult Outhit); From 13d96ad67c5fec10c34c7bf012e6df933c223e47 Mon Sep 17 00:00:00 2001 From: MH261677 Date: Tue, 10 Oct 2023 12:58:45 +0100 Subject: [PATCH 099/112] Tweaked AR Recoil Vals and Added Moving Error to all weapons --- .../AssaultRifles/BP_BaseAssaultRifle.uasset | 4 ++-- .../BaseWeapons/BP_BaseWeapon.uasset | 4 ++-- .../BaseWeapons/BP_GunCameraShake.uasset | 2 +- .../WeaponSystem/BaseWeaponClass.cpp | 22 +++++++++---------- .../WeaponSystem/BaseWeaponClass.h | 22 ++++++++++++++++--- 5 files changed, 34 insertions(+), 20 deletions(-) diff --git a/EndlessVendetta/Content/FirstPerson/Blueprints/BaseWeapons/AssaultRifles/BP_BaseAssaultRifle.uasset b/EndlessVendetta/Content/FirstPerson/Blueprints/BaseWeapons/AssaultRifles/BP_BaseAssaultRifle.uasset index 4e3a7b0b..2e239e7c 100644 --- a/EndlessVendetta/Content/FirstPerson/Blueprints/BaseWeapons/AssaultRifles/BP_BaseAssaultRifle.uasset +++ b/EndlessVendetta/Content/FirstPerson/Blueprints/BaseWeapons/AssaultRifles/BP_BaseAssaultRifle.uasset @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:3194a5d00e86f1294c85008ba95e40c7d09358e3df2d8360945f78a20dc0a78d -size 37917 +oid sha256:d4914d01f2581bf5c3edc200811e9990ccc825755171a4fc83bfb0ef12bcb145 +size 38083 diff --git a/EndlessVendetta/Content/FirstPerson/Blueprints/BaseWeapons/BP_BaseWeapon.uasset b/EndlessVendetta/Content/FirstPerson/Blueprints/BaseWeapons/BP_BaseWeapon.uasset index dc2d119d..47d586c9 100644 --- a/EndlessVendetta/Content/FirstPerson/Blueprints/BaseWeapons/BP_BaseWeapon.uasset +++ b/EndlessVendetta/Content/FirstPerson/Blueprints/BaseWeapons/BP_BaseWeapon.uasset @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:af36276c4e513a207e06ec1eaa8f5c4273ab5634330a999db47ac9128e7d02ec -size 29776 +oid sha256:4febec5729a36774fbc7932a6fec983a74cc9cfac901f131fcbdafe3da17205c +size 29846 diff --git a/EndlessVendetta/Content/FirstPerson/Blueprints/BaseWeapons/BP_GunCameraShake.uasset b/EndlessVendetta/Content/FirstPerson/Blueprints/BaseWeapons/BP_GunCameraShake.uasset index a24df98a..cc04228d 100644 --- a/EndlessVendetta/Content/FirstPerson/Blueprints/BaseWeapons/BP_GunCameraShake.uasset +++ b/EndlessVendetta/Content/FirstPerson/Blueprints/BaseWeapons/BP_GunCameraShake.uasset @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:5b5bc4f06eaeb74c61b627c02ff6e49dedeebfe047bc79fbfa8941b25c4674ef +oid sha256:4358c8520e164b973fae2ae1a18307f0eb691ecfd94b433cbda1052b8b2751fa size 7209 diff --git a/EndlessVendetta/Source/EndlessVendetta/WeaponSystem/BaseWeaponClass.cpp b/EndlessVendetta/Source/EndlessVendetta/WeaponSystem/BaseWeaponClass.cpp index a8f66c9c..8e61ac7b 100644 --- a/EndlessVendetta/Source/EndlessVendetta/WeaponSystem/BaseWeaponClass.cpp +++ b/EndlessVendetta/Source/EndlessVendetta/WeaponSystem/BaseWeaponClass.cpp @@ -75,7 +75,11 @@ void ABaseWeaponClass::GenerateRecoilVector() recoilResultYaw = FMath::Sin(FMath::DegreesToRadians(angle)); recoilResultPitch = FMath::Cos(FMath::DegreesToRadians(angle)); - + + if (bulletCountShoot >= howMnyShotsTillRclStop) + { + recoilResultPitch = 0; + } //scaling direction to magnitude recoilResultPitch *= -tempMag; recoilResultYaw *= tempMag; @@ -92,9 +96,7 @@ void ABaseWeaponClass::ApplyRecoil(float DeltaTime) recoilTime += DeltaTime; if (bulletCountShoot <= 3) playerInWorld->AddControllerPitchInput(GetRecoilPitch(amplitude, recoilTime)); GunStartArrow->AddRelativeRotation(FRotator(-GetRecoilPitch(amplitude, recoilTime), 0, 0)); - //traceEnd = GunStartArrow->GetComponentLocation() + (GunStartArrow->GetComponentRotation().Pitch * GetRecoilPitch(amplitude, recoilTime)); playerInWorld->AddControllerYawInput(GetRecoilYaw(amplitude, recoilTime)); - //UE_LOG(LogTemp, Warning, TEXT("recoilTime: %f"), recoilTime); UpdateSamples(amplitude, recoilTime); } } @@ -155,24 +157,20 @@ void ABaseWeaponClass::Fire() //do damage fallof based off distance traceStart = GunStartArrow->GetComponentLocation(); traceEnd = traceStart + (GunStartArrow->GetForwardVector() * BulletDistance); - /*RecoilVerticalLimit(outHit);*/ if (GetWorldTimerManager().IsTimerActive(timerHandle)) return; GetWorld()->LineTraceSingleByChannel(outHit, traceStart, traceEnd, ECC_Visibility, collisionParams); - DrawDebugLine(this->GetWorld(), traceStart, traceEnd, FColor::Red, false, 5.0f, 0U, 2.5f); + DrawDebugLine(this->GetWorld(), traceStart, traceEnd, FColor::Red, false, 5.0f, 0U, 1.5f); playerControllerRef->PlayerCameraManager->StartCameraShake(CameraShakeClass, 1); currentAmmoCount -= 1; - UE_LOG(LogTemp, Display, TEXT("Ammo Count: %d"), currentAmmoCount); GenerateRecoilVector(); ClickDetectionTimer(); bulletCountShoot += 1; if (bulletCountShoot <= 1) { ogPlayerRotation = FRotator(playerControllerRef->GetControlRotation()); - UE_LOG(LogTemp, Display, TEXT("FIRST BULLET FIRED: %s"), *ogPlayerRotation.ToString()); } if (outHit.bBlockingHit) { - UE_LOG(LogTemp, Display, TEXT("Ammo Count: %s"), *outHit.GetActor()->GetName()); if (!Cast(outHit.GetActor())) return; Cast(outHit.GetActor())->TakeDamage(WeaponDamage, FPointDamageEvent(), GetWorld()->GetFirstPlayerController(), this); } @@ -188,10 +186,10 @@ void ABaseWeaponClass::WeaponScopedFire() { if (endlessVendettaChar->bIsScoped) { - recoilMagnitude -= 0.2f; - recoilMaxAngleLeft /= 2.f; - recoilMaxAngleRight /= 2.f; - recoilMinMultiplier -= 0.2f; + recoilMagnitude = scopedRecoilMag; + recoilMaxAngleLeft = scopedMaxAngleLeft; + recoilMaxAngleRight = scopedMaxAngleRight; + recoilMinMultiplier = scopedMinMultiplier; } else diff --git a/EndlessVendetta/Source/EndlessVendetta/WeaponSystem/BaseWeaponClass.h b/EndlessVendetta/Source/EndlessVendetta/WeaponSystem/BaseWeaponClass.h index 19175cef..4deb8c6c 100644 --- a/EndlessVendetta/Source/EndlessVendetta/WeaponSystem/BaseWeaponClass.h +++ b/EndlessVendetta/Source/EndlessVendetta/WeaponSystem/BaseWeaponClass.h @@ -24,9 +24,9 @@ protected: // Called when the game starts or when spawned virtual void BeginPlay() override; - void GenerateRecoilVector(); - void ApplyRecoil(float DeltaTime); + + void GenerateRecoilVector(); void nullSamples(); @@ -44,7 +44,7 @@ protected: public: // Called every frame virtual void Tick(float DeltaTime) override; - + UPROPERTY(EditAnywhere) FName WeaponName; @@ -57,9 +57,25 @@ public: UPROPERTY(EditAnywhere) int MagazineSize; + //how many bullets until the recoil stops going up + UPROPERTY(EditAnywhere) + int howMnyShotsTillRclStop; + UPROPERTY(EditAnywhere) UTexture2D* WeaponImage; + UPROPERTY(EditAnywhere, Category = "ScopedFire") + float scopedRecoilMag; + + UPROPERTY(EditAnywhere, Category = "ScopedFire") + float scopedMaxAngleLeft; + + UPROPERTY(EditAnywhere, Category = "ScopedFire") + float scopedMaxAngleRight; + + UPROPERTY(EditAnywhere, Category = "ScopedFire") + float scopedMinMultiplier; + UFUNCTION(BlueprintCallable, Category = "Weapons") virtual void Fire(); From caf7254f106fa5c0d243f275df492eaf92a2b507 Mon Sep 17 00:00:00 2001 From: MH261677 Date: Tue, 10 Oct 2023 13:13:53 +0100 Subject: [PATCH 100/112] Updated FireRate for Base Pistol Weapon --- .../Blueprints/BaseWeapons/Pistols/BP_BasePistolWeapon.uasset | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/EndlessVendetta/Content/FirstPerson/Blueprints/BaseWeapons/Pistols/BP_BasePistolWeapon.uasset b/EndlessVendetta/Content/FirstPerson/Blueprints/BaseWeapons/Pistols/BP_BasePistolWeapon.uasset index ea240160..2ec11a0f 100644 --- a/EndlessVendetta/Content/FirstPerson/Blueprints/BaseWeapons/Pistols/BP_BasePistolWeapon.uasset +++ b/EndlessVendetta/Content/FirstPerson/Blueprints/BaseWeapons/Pistols/BP_BasePistolWeapon.uasset @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:71b1463641785fe268bbea7f26c1e1d12cb0703f47b2ec1c50afd19ed3f061ed -size 30046 +oid sha256:b3bf71e2c6645280bb24b5e8ed7e526df8cb074b7daedabb10fc36e49c04a6dd +size 29979 From 79ef9a3de1e40739632377f1508e064bd12fcea1 Mon Sep 17 00:00:00 2001 From: MH261677 Date: Tue, 10 Oct 2023 13:14:09 +0100 Subject: [PATCH 101/112] Fixed Crosshair Not returning to proper Position --- .../Source/EndlessVendetta/WeaponSystem/BaseWeaponClass.cpp | 6 +----- .../Source/EndlessVendetta/WeaponSystem/BaseWeaponClass.h | 2 -- 2 files changed, 1 insertion(+), 7 deletions(-) diff --git a/EndlessVendetta/Source/EndlessVendetta/WeaponSystem/BaseWeaponClass.cpp b/EndlessVendetta/Source/EndlessVendetta/WeaponSystem/BaseWeaponClass.cpp index 8e61ac7b..271d8234 100644 --- a/EndlessVendetta/Source/EndlessVendetta/WeaponSystem/BaseWeaponClass.cpp +++ b/EndlessVendetta/Source/EndlessVendetta/WeaponSystem/BaseWeaponClass.cpp @@ -147,7 +147,7 @@ void ABaseWeaponClass::CancelFire() UE_LOG(LogTemp, Display, TEXT("FireCancelled")); bulletCountShoot = 0; GunStartArrow->SetRelativeRotation(FRotator(0,0,0)); - playerControllerRef->SetControlRotation(ogPlayerRotation); + playerControllerRef->SetControlRotation(FRotator(0,0,0)); } void ABaseWeaponClass::Fire() @@ -165,10 +165,6 @@ void ABaseWeaponClass::Fire() GenerateRecoilVector(); ClickDetectionTimer(); bulletCountShoot += 1; - if (bulletCountShoot <= 1) - { - ogPlayerRotation = FRotator(playerControllerRef->GetControlRotation()); - } if (outHit.bBlockingHit) { if (!Cast(outHit.GetActor())) return; diff --git a/EndlessVendetta/Source/EndlessVendetta/WeaponSystem/BaseWeaponClass.h b/EndlessVendetta/Source/EndlessVendetta/WeaponSystem/BaseWeaponClass.h index 4deb8c6c..98557014 100644 --- a/EndlessVendetta/Source/EndlessVendetta/WeaponSystem/BaseWeaponClass.h +++ b/EndlessVendetta/Source/EndlessVendetta/WeaponSystem/BaseWeaponClass.h @@ -135,8 +135,6 @@ public: FVector newTraceEnd; FCollisionQueryParams collisionParams; - FRotator ogPlayerRotation; - //UFUNCTION(BlueprintCallable, Category = "Weapons") //void RecoilVerticalLimit(FHitResult Outhit); From 9e09c569db58f4e3fbc239dcec4293dc930e5436 Mon Sep 17 00:00:00 2001 From: MH261677 Date: Tue, 10 Oct 2023 14:23:03 +0100 Subject: [PATCH 102/112] Fixed camera returning to correct position --- .../WeaponSystem/BaseWeaponClass.cpp | 21 ++++++++++++++++--- .../WeaponSystem/BaseWeaponClass.h | 4 +++- 2 files changed, 21 insertions(+), 4 deletions(-) diff --git a/EndlessVendetta/Source/EndlessVendetta/WeaponSystem/BaseWeaponClass.cpp b/EndlessVendetta/Source/EndlessVendetta/WeaponSystem/BaseWeaponClass.cpp index 271d8234..e348490a 100644 --- a/EndlessVendetta/Source/EndlessVendetta/WeaponSystem/BaseWeaponClass.cpp +++ b/EndlessVendetta/Source/EndlessVendetta/WeaponSystem/BaseWeaponClass.cpp @@ -63,6 +63,13 @@ void ABaseWeaponClass::Tick(float DeltaTime) { ApplyRecoil(DeltaTime); } + UE_LOG(LogTemp, Display, TEXT("currnt pitch: %f"), currentPitch); + if (currentPitch < 0 && bStopShooting) + { + float increment = currentPitch * DeltaTime * 8; + currentPitch -= increment; + playerInWorld->AddControllerPitchInput(-increment); + } } @@ -94,7 +101,11 @@ void ABaseWeaponClass::ApplyRecoil(float DeltaTime) { float amplitude = RecoilCurve->GetFloatValue(recoilTime); //get current value of curve in time recoilTime += DeltaTime; - if (bulletCountShoot <= 3) playerInWorld->AddControllerPitchInput(GetRecoilPitch(amplitude, recoilTime)); + if (bulletCountShoot <= 3) + { + playerInWorld->AddControllerPitchInput(GetRecoilPitch(amplitude, recoilTime)); + currentPitch += GetRecoilPitch(amplitude,recoilTime); + } GunStartArrow->AddRelativeRotation(FRotator(-GetRecoilPitch(amplitude, recoilTime), 0, 0)); playerInWorld->AddControllerYawInput(GetRecoilYaw(amplitude, recoilTime)); UpdateSamples(amplitude, recoilTime); @@ -144,10 +155,13 @@ void ABaseWeaponClass::ClickDetectionTimer() void ABaseWeaponClass::CancelFire() { GetWorldTimerManager().ClearTimer(timerHandle); + if (bulletCountShoot <= 0) return; UE_LOG(LogTemp, Display, TEXT("FireCancelled")); bulletCountShoot = 0; - GunStartArrow->SetRelativeRotation(FRotator(0,0,0)); - playerControllerRef->SetControlRotation(FRotator(0,0,0)); + GunStartArrow->SetRelativeRotation(FRotator(0)); + //playerInWorld->GetController()->SetControlRotation(FRotator(0, playerInWorld->GetActorRotation().Yaw, playerInWorld->GetActorRotation().Roll)); + bStopShooting = true; + nullSamples(); } void ABaseWeaponClass::Fire() @@ -165,6 +179,7 @@ void ABaseWeaponClass::Fire() GenerateRecoilVector(); ClickDetectionTimer(); bulletCountShoot += 1; + bStopShooting = false; if (outHit.bBlockingHit) { if (!Cast(outHit.GetActor())) return; diff --git a/EndlessVendetta/Source/EndlessVendetta/WeaponSystem/BaseWeaponClass.h b/EndlessVendetta/Source/EndlessVendetta/WeaponSystem/BaseWeaponClass.h index 98557014..6647f0d6 100644 --- a/EndlessVendetta/Source/EndlessVendetta/WeaponSystem/BaseWeaponClass.h +++ b/EndlessVendetta/Source/EndlessVendetta/WeaponSystem/BaseWeaponClass.h @@ -154,5 +154,7 @@ private: float originalMinMultiplier; int currentAmmoCount; - + + float currentPitch; + bool bStopShooting = false; }; From 4be68e91a51b290f938a77ac49a59ce27c0e8b76 Mon Sep 17 00:00:00 2001 From: MH261677 Date: Wed, 11 Oct 2023 18:53:57 +0100 Subject: [PATCH 103/112] Started adding basic UI on weapons --- .../Blueprints/BaseWeapons/BP_BaseWeapon.uasset | 4 ++-- .../Blueprints/BaseWeapons/WBP_AmmoCount.uasset | 3 +++ .../EndlessVendetta/WeaponSystem/BaseWeaponClass.h | 9 +++++---- 3 files changed, 10 insertions(+), 6 deletions(-) create mode 100644 EndlessVendetta/Content/FirstPerson/Blueprints/BaseWeapons/WBP_AmmoCount.uasset diff --git a/EndlessVendetta/Content/FirstPerson/Blueprints/BaseWeapons/BP_BaseWeapon.uasset b/EndlessVendetta/Content/FirstPerson/Blueprints/BaseWeapons/BP_BaseWeapon.uasset index 47d586c9..fd641fe7 100644 --- a/EndlessVendetta/Content/FirstPerson/Blueprints/BaseWeapons/BP_BaseWeapon.uasset +++ b/EndlessVendetta/Content/FirstPerson/Blueprints/BaseWeapons/BP_BaseWeapon.uasset @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:4febec5729a36774fbc7932a6fec983a74cc9cfac901f131fcbdafe3da17205c -size 29846 +oid sha256:a0da36d309ab31edb443cdd04c208688f52f31579e51532a942a226e3a043a41 +size 31530 diff --git a/EndlessVendetta/Content/FirstPerson/Blueprints/BaseWeapons/WBP_AmmoCount.uasset b/EndlessVendetta/Content/FirstPerson/Blueprints/BaseWeapons/WBP_AmmoCount.uasset new file mode 100644 index 00000000..ffa789a6 --- /dev/null +++ b/EndlessVendetta/Content/FirstPerson/Blueprints/BaseWeapons/WBP_AmmoCount.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:40e8a310391b4641f53daf2e8608e0597638df604749d0db465d4917b0cba8f3 +size 50441 diff --git a/EndlessVendetta/Source/EndlessVendetta/WeaponSystem/BaseWeaponClass.h b/EndlessVendetta/Source/EndlessVendetta/WeaponSystem/BaseWeaponClass.h index 6647f0d6..2ea5b812 100644 --- a/EndlessVendetta/Source/EndlessVendetta/WeaponSystem/BaseWeaponClass.h +++ b/EndlessVendetta/Source/EndlessVendetta/WeaponSystem/BaseWeaponClass.h @@ -54,14 +54,17 @@ public: UPROPERTY(EditAnywhere) float FireRate; - UPROPERTY(EditAnywhere) + UPROPERTY(EditAnywhere, BlueprintReadWrite) int MagazineSize; //how many bullets until the recoil stops going up UPROPERTY(EditAnywhere) int howMnyShotsTillRclStop; - UPROPERTY(EditAnywhere) + UPROPERTY(BlueprintReadWrite) + int currentAmmoCount; + + UPROPERTY(EditAnywhere, BlueprintReadWrite) UTexture2D* WeaponImage; UPROPERTY(EditAnywhere, Category = "ScopedFire") @@ -153,8 +156,6 @@ private: float originalMaxAngleRight; float originalMinMultiplier; - int currentAmmoCount; - float currentPitch; bool bStopShooting = false; }; From 9b6f3c6f282e22757c3dcddf5f6cd9bf0ceb382b Mon Sep 17 00:00:00 2001 From: Louis Horne Date: Thu, 12 Oct 2023 11:18:53 +0100 Subject: [PATCH 104/112] Add Concrete texture to tutorial hit floor Its lowkey trash but can be worked on and made better --- .../Content/LevelPrototyping/Materials/M_Concrete.uasset | 3 +++ .../Materials/Panel_Concrete_BaseColor.uasset | 3 +++ .../LevelPrototyping/Materials/Panel_Concrete_Normal.uasset | 3 +++ .../Panel_Concrete_OcclusionRoughnessMetallic.uasset | 3 +++ .../Content/LevelPrototyping/Scenes/TutorialHit.umap | 4 ++-- .../Content/StarterContent/Architecture/Floor_400x400.uasset | 4 ++-- .../StarterContent/HDRI/HDRI_Epic_Courtyard_Daylight.uasset | 4 ++-- 7 files changed, 18 insertions(+), 6 deletions(-) create mode 100644 EndlessVendetta/Content/LevelPrototyping/Materials/M_Concrete.uasset create mode 100644 EndlessVendetta/Content/LevelPrototyping/Materials/Panel_Concrete_BaseColor.uasset create mode 100644 EndlessVendetta/Content/LevelPrototyping/Materials/Panel_Concrete_Normal.uasset create mode 100644 EndlessVendetta/Content/LevelPrototyping/Materials/Panel_Concrete_OcclusionRoughnessMetallic.uasset diff --git a/EndlessVendetta/Content/LevelPrototyping/Materials/M_Concrete.uasset b/EndlessVendetta/Content/LevelPrototyping/Materials/M_Concrete.uasset new file mode 100644 index 00000000..20612d71 --- /dev/null +++ b/EndlessVendetta/Content/LevelPrototyping/Materials/M_Concrete.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f229b163290b8a6981b8cc09dd3e1ab594b5cf5dcb73c549bb6480d094f893fa +size 13874 diff --git a/EndlessVendetta/Content/LevelPrototyping/Materials/Panel_Concrete_BaseColor.uasset b/EndlessVendetta/Content/LevelPrototyping/Materials/Panel_Concrete_BaseColor.uasset new file mode 100644 index 00000000..6f13c266 --- /dev/null +++ b/EndlessVendetta/Content/LevelPrototyping/Materials/Panel_Concrete_BaseColor.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:155948427b3e16c2deef2d5c88c461b37b3ab9b046d5c85cf07a76ab99604444 +size 5030894 diff --git a/EndlessVendetta/Content/LevelPrototyping/Materials/Panel_Concrete_Normal.uasset b/EndlessVendetta/Content/LevelPrototyping/Materials/Panel_Concrete_Normal.uasset new file mode 100644 index 00000000..f27c1fd1 --- /dev/null +++ b/EndlessVendetta/Content/LevelPrototyping/Materials/Panel_Concrete_Normal.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:cbec944bbe7edf2fa9ccc095e66f68cc6b5f9f903ba0ed1d0f22e253de3bba9f +size 9567803 diff --git a/EndlessVendetta/Content/LevelPrototyping/Materials/Panel_Concrete_OcclusionRoughnessMetallic.uasset b/EndlessVendetta/Content/LevelPrototyping/Materials/Panel_Concrete_OcclusionRoughnessMetallic.uasset new file mode 100644 index 00000000..c5cc8616 --- /dev/null +++ b/EndlessVendetta/Content/LevelPrototyping/Materials/Panel_Concrete_OcclusionRoughnessMetallic.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f80a56edd87e453b6255a75e973cbd8c3fea561bda90be7b7405a4564cb84e77 +size 1217878 diff --git a/EndlessVendetta/Content/LevelPrototyping/Scenes/TutorialHit.umap b/EndlessVendetta/Content/LevelPrototyping/Scenes/TutorialHit.umap index 71396726..5054dd42 100644 --- a/EndlessVendetta/Content/LevelPrototyping/Scenes/TutorialHit.umap +++ b/EndlessVendetta/Content/LevelPrototyping/Scenes/TutorialHit.umap @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:8e5e538c953b65e8521c292129e2afa8bb4698ded846f4e66187af3aa07da3f9 -size 250175 +oid sha256:6803883c719b379495a997464dc8de768c0d39bdc4b88309709d1b0e61a8d294 +size 264200 diff --git a/EndlessVendetta/Content/StarterContent/Architecture/Floor_400x400.uasset b/EndlessVendetta/Content/StarterContent/Architecture/Floor_400x400.uasset index c2a34afc..7857a318 100644 --- a/EndlessVendetta/Content/StarterContent/Architecture/Floor_400x400.uasset +++ b/EndlessVendetta/Content/StarterContent/Architecture/Floor_400x400.uasset @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:4c0ecf0ac0702cc2bd355ec050232a61c49e10f102448efbeb735a51824adef6 -size 14948 +oid sha256:9f30117b76896d48b443b9e2ec86efcc94f33e53645c91797601c5ea38040c69 +size 14831 diff --git a/EndlessVendetta/Content/StarterContent/HDRI/HDRI_Epic_Courtyard_Daylight.uasset b/EndlessVendetta/Content/StarterContent/HDRI/HDRI_Epic_Courtyard_Daylight.uasset index 1ba35309..0f990580 100644 --- a/EndlessVendetta/Content/StarterContent/HDRI/HDRI_Epic_Courtyard_Daylight.uasset +++ b/EndlessVendetta/Content/StarterContent/HDRI/HDRI_Epic_Courtyard_Daylight.uasset @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:dda4b9b170b4163ec9781daf3302b88539cf260efdacb29df1a4a10813400f5c -size 66790688 +oid sha256:bc35eb2d43a47427d30aba0196f9eac90d089dd3abca319528c5d25c83510d0d +size 72364642 From 32a5e64d00be468eeedba5d761511e69aa9d757e Mon Sep 17 00:00:00 2001 From: PHILIP WHITE Date: Thu, 12 Oct 2023 11:21:17 +0100 Subject: [PATCH 105/112] Add Console Commands for AI Killing & Alert Level --- EndlessVendetta/EndlessVendetta.uproject | 3 +- .../EndlessVendettaGameMode.cpp | 30 +++++++++++++++++-- .../EndlessVendetta/EndlessVendettaGameMode.h | 9 ++++-- 3 files changed, 36 insertions(+), 6 deletions(-) diff --git a/EndlessVendetta/EndlessVendetta.uproject b/EndlessVendetta/EndlessVendetta.uproject index 4717d351..8aea7a6c 100644 --- a/EndlessVendetta/EndlessVendetta.uproject +++ b/EndlessVendetta/EndlessVendetta.uproject @@ -9,7 +9,8 @@ "Type": "Runtime", "LoadingPhase": "Default", "AdditionalDependencies": [ - "Engine" + "Engine", + "AIModule" ] } ], diff --git a/EndlessVendetta/Source/EndlessVendetta/EndlessVendettaGameMode.cpp b/EndlessVendetta/Source/EndlessVendetta/EndlessVendettaGameMode.cpp index c6255c57..bbba7bcd 100644 --- a/EndlessVendetta/Source/EndlessVendetta/EndlessVendettaGameMode.cpp +++ b/EndlessVendetta/Source/EndlessVendetta/EndlessVendettaGameMode.cpp @@ -3,12 +3,38 @@ #include "EndlessVendettaGameMode.h" #include "EndlessVendettaCharacter.h" #include "UObject/ConstructorHelpers.h" +#include "EndlessVendetta/AI/EnemyCharacter.h" +#include "EndlessVendetta/AI/AIControlHub.h" +#include "Kismet/GameplayStatics.h" +#include "Engine/DamageEvents.h" -AEndlessVendettaGameMode::AEndlessVendettaGameMode() - : Super() +AEndlessVendettaGameMode::AEndlessVendettaGameMode() : Super() { // set default pawn class to our Blueprinted character static ConstructorHelpers::FClassFinder PlayerPawnClassFinder(TEXT("/Game/FirstPerson/Blueprints/BP_FirstPersonCharacter")); DefaultPawnClass = PlayerPawnClassFinder.Class; } + +void AEndlessVendettaGameMode::KillAllEnemies() +{ + TArray EnemyCharacters; + UGameplayStatics::GetAllActorsOfClass(GetWorld(), AEnemyCharacter::StaticClass(), EnemyCharacters); + for (AActor* EnemyActor : EnemyCharacters) + { + AEnemyCharacter* EnemyCharacter = Cast(EnemyActor); + EnemyCharacter->TakeDamage(EnemyCharacter->MaxHealth, FDamageEvent(), GetWorld()->GetFirstPlayerController(), GetWorld()->GetFirstPlayerController()->GetOwner()); + } +} + +void AEndlessVendettaGameMode::SetLocalAIAlertLevel(int NewAlertLevel) +{ + TArray AIControlHubActors; + UGameplayStatics::GetAllActorsOfClass(GetWorld(), AAIControlHub::StaticClass(), AIControlHubActors); + for (AActor* AIControlHubActor : AIControlHubActors) + { + AAIControlHub* AIControlHub = Cast(AIControlHubActor); + AIControlHub->SetPlayerLastKnownLocation(); + AIControlHub->SetAlertLevel(NewAlertLevel); + } +} diff --git a/EndlessVendetta/Source/EndlessVendetta/EndlessVendettaGameMode.h b/EndlessVendetta/Source/EndlessVendetta/EndlessVendettaGameMode.h index 97d6b063..420ab589 100644 --- a/EndlessVendetta/Source/EndlessVendetta/EndlessVendettaGameMode.h +++ b/EndlessVendetta/Source/EndlessVendetta/EndlessVendettaGameMode.h @@ -13,7 +13,10 @@ class AEndlessVendettaGameMode : public AGameModeBase public: AEndlessVendettaGameMode(); + + UFUNCTION(Exec, Category = ExecFunctions) + void KillAllEnemies(); + + UFUNCTION(Exec, Category = ExecFunctions) + void SetLocalAIAlertLevel(int NewAlertLevel); }; - - - From 280644da7867eae5cb5959bb21be3b9656c2482d Mon Sep 17 00:00:00 2001 From: PHILIP WHITE Date: Thu, 12 Oct 2023 11:35:12 +0100 Subject: [PATCH 106/112] Update Enemy AI for Alert Level 2 - Hunt Player --- .../AI/Enemy/Basic/BB_BasicEnemy.uasset | 4 +-- .../AI/Enemy/Basic/BT_BasicEnemy.uasset | 4 +-- .../6/VW/F67BYXWE15N6HDB8XL4DCA.uasset | 3 +++ .../EndlessVendetta/AI/AIControlHub.cpp | 21 +++++++++++++-- .../Source/EndlessVendetta/AI/AIControlHub.h | 12 ++++++--- .../EndlessVendetta/AI/EnemyCharacter.cpp | 16 +++++++++++- .../EndlessVendetta/AI/EnemyCharacter.h | 6 ++++- .../AI/Tasks/BTTask_SetLocalAlertLevel.cpp | 26 +++++++++++++++++++ .../AI/Tasks/BTTask_SetLocalAlertLevel.h | 24 +++++++++++++++++ 9 files changed, 105 insertions(+), 11 deletions(-) create mode 100644 EndlessVendetta/Content/__ExternalActors__/Levels/EnemyAITest/6/VW/F67BYXWE15N6HDB8XL4DCA.uasset create mode 100644 EndlessVendetta/Source/EndlessVendetta/AI/Tasks/BTTask_SetLocalAlertLevel.cpp create mode 100644 EndlessVendetta/Source/EndlessVendetta/AI/Tasks/BTTask_SetLocalAlertLevel.h diff --git a/EndlessVendetta/Content/AI/Enemy/Basic/BB_BasicEnemy.uasset b/EndlessVendetta/Content/AI/Enemy/Basic/BB_BasicEnemy.uasset index 9b2d8e60..6d6bc456 100644 --- a/EndlessVendetta/Content/AI/Enemy/Basic/BB_BasicEnemy.uasset +++ b/EndlessVendetta/Content/AI/Enemy/Basic/BB_BasicEnemy.uasset @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:6030578986ba57b3d604b31bedc71a3abf0cb4de5dc6658d58c37679ba4c440a -size 5988 +oid sha256:1aff4919ba640ff5f41aabd18e3f45977e9d63d434f7e93cdab5d84b3b7df8f6 +size 6288 diff --git a/EndlessVendetta/Content/AI/Enemy/Basic/BT_BasicEnemy.uasset b/EndlessVendetta/Content/AI/Enemy/Basic/BT_BasicEnemy.uasset index 014a302f..45c0d2a1 100644 --- a/EndlessVendetta/Content/AI/Enemy/Basic/BT_BasicEnemy.uasset +++ b/EndlessVendetta/Content/AI/Enemy/Basic/BT_BasicEnemy.uasset @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:9d20759902d270772c9aad0fa9521dfd3e343b82eb5818e82a39b1b11280ec96 -size 37942 +oid sha256:b818b3645e40ca126811ffdc0a3d59b41fec38fc50f493cf9a7f9b78aa41554e +size 60604 diff --git a/EndlessVendetta/Content/__ExternalActors__/Levels/EnemyAITest/6/VW/F67BYXWE15N6HDB8XL4DCA.uasset b/EndlessVendetta/Content/__ExternalActors__/Levels/EnemyAITest/6/VW/F67BYXWE15N6HDB8XL4DCA.uasset new file mode 100644 index 00000000..09906e45 --- /dev/null +++ b/EndlessVendetta/Content/__ExternalActors__/Levels/EnemyAITest/6/VW/F67BYXWE15N6HDB8XL4DCA.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:904e9dbfb5067e107d30cced28a7a621781ffdf8644f45aceba52a9d78264b47 +size 4413 diff --git a/EndlessVendetta/Source/EndlessVendetta/AI/AIControlHub.cpp b/EndlessVendetta/Source/EndlessVendetta/AI/AIControlHub.cpp index 688ede79..75f4a7f1 100644 --- a/EndlessVendetta/Source/EndlessVendetta/AI/AIControlHub.cpp +++ b/EndlessVendetta/Source/EndlessVendetta/AI/AIControlHub.cpp @@ -20,7 +20,7 @@ void AAIControlHub::BeginPlay() for (AEnemyCharacter* EnemyActor : EnemyActors) { - EnemyActor->SubscribeToAlertLevelEvent(this); + EnemyActor->SubscribeToGroupAIEvents(this); } } @@ -53,7 +53,24 @@ int AAIControlHub::GetAlertLevel() const return AlertLevel; } -void AAIControlHub::OnAlertLevelChanged() const +void AAIControlHub::OnAlertLevelChanged() { AlertLevelEvent.Broadcast(AlertLevel); + if (AlertLevel == 2) + { + SetPlayerLastKnownLocation(); + HuntPlayerEvent.Broadcast(PlayerLastKnownLocation); + } +} + +void AAIControlHub::SetPlayerLastKnownLocation(FVector Location) +{ + if (Location == FVector(0, 0, 0)) + { + PlayerLastKnownLocation = GetWorld()->GetFirstPlayerController()->GetPawn()->GetActorLocation(); + } + else + { + PlayerLastKnownLocation = Location; + } } diff --git a/EndlessVendetta/Source/EndlessVendetta/AI/AIControlHub.h b/EndlessVendetta/Source/EndlessVendetta/AI/AIControlHub.h index 95a84534..d75b7fd6 100644 --- a/EndlessVendetta/Source/EndlessVendetta/AI/AIControlHub.h +++ b/EndlessVendetta/Source/EndlessVendetta/AI/AIControlHub.h @@ -16,8 +16,10 @@ public: // Sets default values for this actor's properties AAIControlHub(); - DECLARE_EVENT_OneParam(AAI_EnemyController, FAlertLevelEvent, int); + DECLARE_EVENT_OneParam(AAIControlHub, FAlertLevelEvent, int); FAlertLevelEvent AlertLevelEvent; + DECLARE_EVENT_OneParam(AAIControlHub, FHuntPlayer, FVector); + FHuntPlayer HuntPlayerEvent; protected: // Called when the game starts or when spawned @@ -31,11 +33,15 @@ public: void DecreaseAlertLevel(); void SetAlertLevel(int NewAlertLevel); int GetAlertLevel() const; - void OnAlertLevelChanged() const; + void OnAlertLevelChanged(); + void SetPlayerLastKnownLocation(FVector Location = FVector(0, 0, 0)); private: int AlertLevel = 0; - + UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "AI", meta = (AllowPrivateAccess = "true")) TArray EnemyActors; + + UPROPERTY() + FVector PlayerLastKnownLocation; }; diff --git a/EndlessVendetta/Source/EndlessVendetta/AI/EnemyCharacter.cpp b/EndlessVendetta/Source/EndlessVendetta/AI/EnemyCharacter.cpp index e971fab8..aa84cb9b 100644 --- a/EndlessVendetta/Source/EndlessVendetta/AI/EnemyCharacter.cpp +++ b/EndlessVendetta/Source/EndlessVendetta/AI/EnemyCharacter.cpp @@ -29,12 +29,26 @@ void AEnemyCharacter::Tick(float DeltaTime) Super::Tick(DeltaTime); } -void AEnemyCharacter::SubscribeToAlertLevelEvent(AAIControlHub* ControlHub) +void AEnemyCharacter::SubscribeToGroupAIEvents(AAIControlHub* ControlHub) { + DelegatedControlHub = ControlHub; AlertLevelDelegateHandle = ControlHub->AlertLevelEvent.AddUObject(this, &AEnemyCharacter::SetAlertLevel); + HuntPlayerDelegateHandle = ControlHub->HuntPlayerEvent.AddUObject(this, &AEnemyCharacter::HuntPlayer); } void AEnemyCharacter::SetAlertLevel(const int NewAlertLevel) const { Cast(GetController())->GetBlackboardComponent()->SetValueAsInt("AlertLevel", NewAlertLevel); } + +void AEnemyCharacter::SetLocalAlertLevel(int NewAlertLevel) const +{ + if (!IsValid(DelegatedControlHub)) return; + DelegatedControlHub->SetAlertLevel(NewAlertLevel); +} + +void AEnemyCharacter::HuntPlayer(FVector PlayerLastKnownLocation) +{ + SetAlertLevel(2); + Cast(GetController())->GetBlackboardComponent()->SetValueAsVector("LastKnownLocation", PlayerLastKnownLocation); +} diff --git a/EndlessVendetta/Source/EndlessVendetta/AI/EnemyCharacter.h b/EndlessVendetta/Source/EndlessVendetta/AI/EnemyCharacter.h index 7a0278e6..6d3deab7 100644 --- a/EndlessVendetta/Source/EndlessVendetta/AI/EnemyCharacter.h +++ b/EndlessVendetta/Source/EndlessVendetta/AI/EnemyCharacter.h @@ -20,13 +20,17 @@ public: protected: // Called when the game starts or when spawned virtual void BeginPlay() override; + class AAIControlHub* DelegatedControlHub; public: // Called every frame virtual void Tick(float DeltaTime) override; - void SubscribeToAlertLevelEvent(class AAIControlHub* ControlHub); + void SubscribeToGroupAIEvents(class AAIControlHub* ControlHub); + void SetLocalAlertLevel(int NewAlertLevel) const; private: FDelegateHandle AlertLevelDelegateHandle; + FDelegateHandle HuntPlayerDelegateHandle; void SetAlertLevel(int NewAlertLevel) const; + void HuntPlayer(FVector PlayerLastKnowLocation); }; diff --git a/EndlessVendetta/Source/EndlessVendetta/AI/Tasks/BTTask_SetLocalAlertLevel.cpp b/EndlessVendetta/Source/EndlessVendetta/AI/Tasks/BTTask_SetLocalAlertLevel.cpp new file mode 100644 index 00000000..3cd9990b --- /dev/null +++ b/EndlessVendetta/Source/EndlessVendetta/AI/Tasks/BTTask_SetLocalAlertLevel.cpp @@ -0,0 +1,26 @@ +// Fill out your copyright notice in the Description page of Project Settings. + + +#include "BTTask_SetLocalAlertLevel.h" +#include "EndlessVendetta/AI/AI_EnemyController.h" +#include "EndlessVendetta/AI/EnemyCharacter.h" + +UBTTask_SetLocalAlertLevel::UBTTask_SetLocalAlertLevel() +{ + NodeName = "Set Local Alert Level"; +} + +EBTNodeResult::Type UBTTask_SetLocalAlertLevel::ExecuteTask(UBehaviorTreeComponent& OwnerComp, uint8* NodeMemory) +{ + if (const AAI_EnemyController* const AIEnemyController = Cast(OwnerComp.GetAIOwner())) + { + if (const AEnemyCharacter* const EnemyCharacter = Cast(AIEnemyController->GetPawn())) + { + EnemyCharacter->SetLocalAlertLevel(AlertLevel); + + FinishLatentTask(OwnerComp, EBTNodeResult::Succeeded); + return EBTNodeResult::Succeeded; + } + } + return EBTNodeResult::Failed; +} diff --git a/EndlessVendetta/Source/EndlessVendetta/AI/Tasks/BTTask_SetLocalAlertLevel.h b/EndlessVendetta/Source/EndlessVendetta/AI/Tasks/BTTask_SetLocalAlertLevel.h new file mode 100644 index 00000000..770472ed --- /dev/null +++ b/EndlessVendetta/Source/EndlessVendetta/AI/Tasks/BTTask_SetLocalAlertLevel.h @@ -0,0 +1,24 @@ +// Fill out your copyright notice in the Description page of Project Settings. + +#pragma once + +#include "CoreMinimal.h" +#include "BehaviorTree/Tasks/BTTask_BlackboardBase.h" +#include "BTTask_SetLocalAlertLevel.generated.h" + +/** + * + */ +UCLASS() +class ENDLESSVENDETTA_API UBTTask_SetLocalAlertLevel : public UBTTask_BlackboardBase +{ + GENERATED_BODY() + +public: + UBTTask_SetLocalAlertLevel(); + virtual EBTNodeResult::Type ExecuteTask(UBehaviorTreeComponent& OwnerComp, uint8* NodeMemory) override; + +private: + UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "AI", meta = (AllowPrivateAccess = "true")) + int AlertLevel = 0; +}; From 72ef4989c559bb77915759d97a2bb0e1186c09de Mon Sep 17 00:00:00 2001 From: Rafal Swierczek <34179rs@gmail.com> Date: Fri, 13 Oct 2023 15:27:17 +0100 Subject: [PATCH 107/112] Prepared Scene for Peer Review Backup Build --- EndlessVendetta/Config/DefaultEngine.ini | 7 ++++++- .../Content/AI/Enemy/Basic/BP_BasicEnemyCharacter.uasset | 4 ++-- .../FirstPerson/Blueprints/BP_FirstPersonCharacter.uasset | 4 ++-- EndlessVendetta/Content/Gadgets/GM_GadgetManager.uasset | 2 +- .../Content/LevelPrototyping/Scenes/TutorialHit.umap | 4 ++-- .../StarterContent/Architecture/Floor_400x400.uasset | 2 +- .../HDRI/HDRI_Epic_Courtyard_Daylight.uasset | 4 ++-- .../EndlessVendetta/WeaponSystem/BaseWeaponClass.cpp | 2 +- 8 files changed, 17 insertions(+), 12 deletions(-) diff --git a/EndlessVendetta/Config/DefaultEngine.ini b/EndlessVendetta/Config/DefaultEngine.ini index 126166fe..4413b669 100644 --- a/EndlessVendetta/Config/DefaultEngine.ini +++ b/EndlessVendetta/Config/DefaultEngine.ini @@ -87,4 +87,9 @@ ManualIPAddress= [CoreRedirects] -+PropertyRedirects=(OldName="/Script/EndlessVendetta.BaseWeaponClass.player",NewName="/Script/EndlessVendetta.BaseWeaponClass.playerInWorld") \ No newline at end of file ++PropertyRedirects=(OldName="/Script/EndlessVendetta.BaseWeaponClass.player",NewName="/Script/EndlessVendetta.BaseWeaponClass.playerInWorld") + +[/Script/NavigationSystem.RecastNavMesh] +AgentMaxStepHeight=73.434059 +AgentMaxSlope=64.648003 + diff --git a/EndlessVendetta/Content/AI/Enemy/Basic/BP_BasicEnemyCharacter.uasset b/EndlessVendetta/Content/AI/Enemy/Basic/BP_BasicEnemyCharacter.uasset index 5e571245..88e46b73 100644 --- a/EndlessVendetta/Content/AI/Enemy/Basic/BP_BasicEnemyCharacter.uasset +++ b/EndlessVendetta/Content/AI/Enemy/Basic/BP_BasicEnemyCharacter.uasset @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:150f775d1dd9676edfff3ca936843a20b46032df429d2b91cc31b30768fdcc69 -size 34269 +oid sha256:b2b2bbd7cc7db7f928c1490a0409ceb2240b78bfb1374d0ef5483f941bd4301b +size 34405 diff --git a/EndlessVendetta/Content/FirstPerson/Blueprints/BP_FirstPersonCharacter.uasset b/EndlessVendetta/Content/FirstPerson/Blueprints/BP_FirstPersonCharacter.uasset index e7dcb857..bbee618c 100644 --- a/EndlessVendetta/Content/FirstPerson/Blueprints/BP_FirstPersonCharacter.uasset +++ b/EndlessVendetta/Content/FirstPerson/Blueprints/BP_FirstPersonCharacter.uasset @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:65d9f1286e3e2a0afeb00fd61e2a4ad5d105f8c4ea61cf146761901c810ea4bb -size 42451 +oid sha256:30855616c4941635f2b4e9f78ebe1f4d7b43f219e4ae180257f666326433e4c6 +size 42742 diff --git a/EndlessVendetta/Content/Gadgets/GM_GadgetManager.uasset b/EndlessVendetta/Content/Gadgets/GM_GadgetManager.uasset index 659e6cc8..53e55580 100644 --- a/EndlessVendetta/Content/Gadgets/GM_GadgetManager.uasset +++ b/EndlessVendetta/Content/Gadgets/GM_GadgetManager.uasset @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:101873288135db576b1a0060f9872880d1b4aaa7eca4c80cb4aa05925c67e275 +oid sha256:f89312e222f9d5b588d790390162f6293435c25439f77609ac1ecb532f103499 size 22674 diff --git a/EndlessVendetta/Content/LevelPrototyping/Scenes/TutorialHit.umap b/EndlessVendetta/Content/LevelPrototyping/Scenes/TutorialHit.umap index 5054dd42..41507ce3 100644 --- a/EndlessVendetta/Content/LevelPrototyping/Scenes/TutorialHit.umap +++ b/EndlessVendetta/Content/LevelPrototyping/Scenes/TutorialHit.umap @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:6803883c719b379495a997464dc8de768c0d39bdc4b88309709d1b0e61a8d294 -size 264200 +oid sha256:e0a0089064acc8fe731cf17574d83fcef31a1de8e948ba6ac7402ccb0e22ae26 +size 393527 diff --git a/EndlessVendetta/Content/StarterContent/Architecture/Floor_400x400.uasset b/EndlessVendetta/Content/StarterContent/Architecture/Floor_400x400.uasset index 7857a318..55042f05 100644 --- a/EndlessVendetta/Content/StarterContent/Architecture/Floor_400x400.uasset +++ b/EndlessVendetta/Content/StarterContent/Architecture/Floor_400x400.uasset @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:9f30117b76896d48b443b9e2ec86efcc94f33e53645c91797601c5ea38040c69 +oid sha256:6ea1d452feec1c72f3d7b285c4c9950418a1174f858b54d89c8afb2c8b5ef80f size 14831 diff --git a/EndlessVendetta/Content/StarterContent/HDRI/HDRI_Epic_Courtyard_Daylight.uasset b/EndlessVendetta/Content/StarterContent/HDRI/HDRI_Epic_Courtyard_Daylight.uasset index f281fcf6..0f990580 100644 --- a/EndlessVendetta/Content/StarterContent/HDRI/HDRI_Epic_Courtyard_Daylight.uasset +++ b/EndlessVendetta/Content/StarterContent/HDRI/HDRI_Epic_Courtyard_Daylight.uasset @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:999086617d1b45a70b6fc5db1c639bfff0ec0bba5952340e163a1d5d8c21a206 -size 249 +oid sha256:bc35eb2d43a47427d30aba0196f9eac90d089dd3abca319528c5d25c83510d0d +size 72364642 diff --git a/EndlessVendetta/Source/EndlessVendetta/WeaponSystem/BaseWeaponClass.cpp b/EndlessVendetta/Source/EndlessVendetta/WeaponSystem/BaseWeaponClass.cpp index caa70988..b820ef3d 100644 --- a/EndlessVendetta/Source/EndlessVendetta/WeaponSystem/BaseWeaponClass.cpp +++ b/EndlessVendetta/Source/EndlessVendetta/WeaponSystem/BaseWeaponClass.cpp @@ -160,7 +160,7 @@ void ABaseWeaponClass::Fire() } GetWorld()->LineTraceSingleByChannel(outHit, traceStart, traceEnd, ECC_Visibility, collisionParams); //Debug line to see where the trace hit - DrawDebugLine(this->GetWorld(), traceStart, traceEnd, FColor::Red, false, 5.0f, 0U, 2.5f); + DrawDebugLine(this->GetWorld(), traceStart, traceEnd, FColor::Red, false, 0.2f, 0U, 1); playerControllerRef->PlayerCameraManager->StartCameraShake(CameraShakeClass, 1); currentAmmoCount -= 1; UE_LOG(LogTemp, Display, TEXT("Ammo Count: %d"), currentAmmoCount); From 73fa607cfb2cd667df11bcf93b02a93b13c556bf Mon Sep 17 00:00:00 2001 From: MH261677 Date: Sat, 14 Oct 2023 15:48:59 +0100 Subject: [PATCH 108/112] Fixed and Added Ammo UI for Both Pistol and AR --- .../FirstPerson/Blueprints/BP_FirstPersonCharacter.uasset | 4 ++-- .../BaseWeapons/AssaultRifles/BP_BaseAssaultRifle.uasset | 4 ++-- .../FirstPerson/Blueprints/BaseWeapons/BP_BaseWeapon.uasset | 4 ++-- .../Blueprints/BaseWeapons/Pistols/BP_BasePistolWeapon.uasset | 4 ++-- .../FirstPerson/Blueprints/BaseWeapons/WBP_AmmoCount.uasset | 4 ++-- 5 files changed, 10 insertions(+), 10 deletions(-) diff --git a/EndlessVendetta/Content/FirstPerson/Blueprints/BP_FirstPersonCharacter.uasset b/EndlessVendetta/Content/FirstPerson/Blueprints/BP_FirstPersonCharacter.uasset index cc246418..802959cb 100644 --- a/EndlessVendetta/Content/FirstPerson/Blueprints/BP_FirstPersonCharacter.uasset +++ b/EndlessVendetta/Content/FirstPerson/Blueprints/BP_FirstPersonCharacter.uasset @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:946f8f62bbea4cb4f5d279e9da49d29291bacb30f803de7fd8503ed608295287 -size 42585 +oid sha256:dd6b7d124efa1086acb80f4b16e1d8a0db25e05e081f914d61cfce0bbb4191e9 +size 42329 diff --git a/EndlessVendetta/Content/FirstPerson/Blueprints/BaseWeapons/AssaultRifles/BP_BaseAssaultRifle.uasset b/EndlessVendetta/Content/FirstPerson/Blueprints/BaseWeapons/AssaultRifles/BP_BaseAssaultRifle.uasset index 2e239e7c..534c1e9e 100644 --- a/EndlessVendetta/Content/FirstPerson/Blueprints/BaseWeapons/AssaultRifles/BP_BaseAssaultRifle.uasset +++ b/EndlessVendetta/Content/FirstPerson/Blueprints/BaseWeapons/AssaultRifles/BP_BaseAssaultRifle.uasset @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:d4914d01f2581bf5c3edc200811e9990ccc825755171a4fc83bfb0ef12bcb145 -size 38083 +oid sha256:215d949e3ea1df83d937e0387115975c9c3e14077a879a6f834831241c154f18 +size 39178 diff --git a/EndlessVendetta/Content/FirstPerson/Blueprints/BaseWeapons/BP_BaseWeapon.uasset b/EndlessVendetta/Content/FirstPerson/Blueprints/BaseWeapons/BP_BaseWeapon.uasset index fd641fe7..e3885a88 100644 --- a/EndlessVendetta/Content/FirstPerson/Blueprints/BaseWeapons/BP_BaseWeapon.uasset +++ b/EndlessVendetta/Content/FirstPerson/Blueprints/BaseWeapons/BP_BaseWeapon.uasset @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:a0da36d309ab31edb443cdd04c208688f52f31579e51532a942a226e3a043a41 -size 31530 +oid sha256:1de9565906296c664bb7dd6b3f700d135fa5244e1f625f9f792eba15a9880ae8 +size 48226 diff --git a/EndlessVendetta/Content/FirstPerson/Blueprints/BaseWeapons/Pistols/BP_BasePistolWeapon.uasset b/EndlessVendetta/Content/FirstPerson/Blueprints/BaseWeapons/Pistols/BP_BasePistolWeapon.uasset index 2ec11a0f..75a10fe3 100644 --- a/EndlessVendetta/Content/FirstPerson/Blueprints/BaseWeapons/Pistols/BP_BasePistolWeapon.uasset +++ b/EndlessVendetta/Content/FirstPerson/Blueprints/BaseWeapons/Pistols/BP_BasePistolWeapon.uasset @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:b3bf71e2c6645280bb24b5e8ed7e526df8cb074b7daedabb10fc36e49c04a6dd -size 29979 +oid sha256:246a8220f9708873776922ca6683ec085b4447eecd1efd89fd0572c94b9d5956 +size 49471 diff --git a/EndlessVendetta/Content/FirstPerson/Blueprints/BaseWeapons/WBP_AmmoCount.uasset b/EndlessVendetta/Content/FirstPerson/Blueprints/BaseWeapons/WBP_AmmoCount.uasset index ffa789a6..42f932a9 100644 --- a/EndlessVendetta/Content/FirstPerson/Blueprints/BaseWeapons/WBP_AmmoCount.uasset +++ b/EndlessVendetta/Content/FirstPerson/Blueprints/BaseWeapons/WBP_AmmoCount.uasset @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:40e8a310391b4641f53daf2e8608e0597638df604749d0db465d4917b0cba8f3 -size 50441 +oid sha256:652402df45503ab3169e329879f397101d9b5bf17551404301cca7b5b292eb68 +size 62076 From e62345d6903ee1d1ce219c7c79e07c7956b2eb43 Mon Sep 17 00:00:00 2001 From: MARCEL HARA Date: Mon, 16 Oct 2023 11:40:53 +0100 Subject: [PATCH 109/112] Updated Recoil Pitch to Stop Being Perfect for Guns --- .../Source/EndlessVendetta/WeaponSystem/BaseWeaponClass.cpp | 1 + 1 file changed, 1 insertion(+) diff --git a/EndlessVendetta/Source/EndlessVendetta/WeaponSystem/BaseWeaponClass.cpp b/EndlessVendetta/Source/EndlessVendetta/WeaponSystem/BaseWeaponClass.cpp index e348490a..53f2de68 100644 --- a/EndlessVendetta/Source/EndlessVendetta/WeaponSystem/BaseWeaponClass.cpp +++ b/EndlessVendetta/Source/EndlessVendetta/WeaponSystem/BaseWeaponClass.cpp @@ -106,6 +106,7 @@ void ABaseWeaponClass::ApplyRecoil(float DeltaTime) playerInWorld->AddControllerPitchInput(GetRecoilPitch(amplitude, recoilTime)); currentPitch += GetRecoilPitch(amplitude,recoilTime); } + playerInWorld->AddControllerPitchInput(FMath::RandRange(-5 * DeltaTime, 5* DeltaTime)); GunStartArrow->AddRelativeRotation(FRotator(-GetRecoilPitch(amplitude, recoilTime), 0, 0)); playerInWorld->AddControllerYawInput(GetRecoilYaw(amplitude, recoilTime)); UpdateSamples(amplitude, recoilTime); From fad7da57f885ec03bf64b179aaa5b969e5fbe059 Mon Sep 17 00:00:00 2001 From: MARCEL HARA Date: Mon, 16 Oct 2023 13:18:39 +0100 Subject: [PATCH 110/112] Fixed Tap Fire Rate On All Pistols --- .../Blueprints/BaseWeapons/WBP_AmmoCount.uasset | 4 ++-- .../WeaponSystem/BaseWeaponClass.h | 11 +++++++---- .../EndlessVendetta/WeaponSystem/PistolClass.cpp | 16 ++++++++++++++++ .../EndlessVendetta/WeaponSystem/PistolClass.h | 2 ++ 4 files changed, 27 insertions(+), 6 deletions(-) diff --git a/EndlessVendetta/Content/FirstPerson/Blueprints/BaseWeapons/WBP_AmmoCount.uasset b/EndlessVendetta/Content/FirstPerson/Blueprints/BaseWeapons/WBP_AmmoCount.uasset index 42f932a9..6e0e13d4 100644 --- a/EndlessVendetta/Content/FirstPerson/Blueprints/BaseWeapons/WBP_AmmoCount.uasset +++ b/EndlessVendetta/Content/FirstPerson/Blueprints/BaseWeapons/WBP_AmmoCount.uasset @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:652402df45503ab3169e329879f397101d9b5bf17551404301cca7b5b292eb68 -size 62076 +oid sha256:d593d68d5b9a9fc58b1b7ecc44936b84e361aaa1762ab04c5924e36bfd45bee9 +size 61494 diff --git a/EndlessVendetta/Source/EndlessVendetta/WeaponSystem/BaseWeaponClass.h b/EndlessVendetta/Source/EndlessVendetta/WeaponSystem/BaseWeaponClass.h index 2ea5b812..00541047 100644 --- a/EndlessVendetta/Source/EndlessVendetta/WeaponSystem/BaseWeaponClass.h +++ b/EndlessVendetta/Source/EndlessVendetta/WeaponSystem/BaseWeaponClass.h @@ -83,9 +83,9 @@ public: virtual void Fire(); UFUNCTION(BlueprintCallable, Category = "Weapons") - void ClickDetectionTimer(); + virtual void ClickDetectionTimer(); - void CancelFire(); + virtual void CancelFire(); UPROPERTY(VisibleAnywhere) ACharacter* playerInWorld; @@ -144,9 +144,12 @@ public: UPROPERTY(EditAnywhere) int bulletCountShoot; //Gets how many bullets shot per -private: +protected: UArrowComponent* GunStartArrow; + bool bStopShooting = false; + +private: UPROPERTY(EditAnywhere) float BulletDistance; @@ -157,5 +160,5 @@ private: float originalMinMultiplier; float currentPitch; - bool bStopShooting = false; + }; diff --git a/EndlessVendetta/Source/EndlessVendetta/WeaponSystem/PistolClass.cpp b/EndlessVendetta/Source/EndlessVendetta/WeaponSystem/PistolClass.cpp index 2b7dc95a..0e91083a 100644 --- a/EndlessVendetta/Source/EndlessVendetta/WeaponSystem/PistolClass.cpp +++ b/EndlessVendetta/Source/EndlessVendetta/WeaponSystem/PistolClass.cpp @@ -30,3 +30,19 @@ void APistolClass::Fire() UE_LOG(LogTemp, Display, TEXT("Testing overrides: Pistol has been fired")); } +void APistolClass::ClickDetectionTimer() +{ + Super::ClickDetectionTimer(); +} + +void APistolClass::CancelFire() +{ + if (bulletCountShoot <= 0) return; + UE_LOG(LogTemp, Display, TEXT("FireCancelled")); + bulletCountShoot = 0; + GunStartArrow->SetRelativeRotation(FRotator(0)); + //playerInWorld->GetController()->SetControlRotation(FRotator(0, playerInWorld->GetActorRotation().Yaw, playerInWorld->GetActorRotation().Roll)); + bStopShooting = true; + nullSamples(); +} + diff --git a/EndlessVendetta/Source/EndlessVendetta/WeaponSystem/PistolClass.h b/EndlessVendetta/Source/EndlessVendetta/WeaponSystem/PistolClass.h index ca85b67e..0ddb7290 100644 --- a/EndlessVendetta/Source/EndlessVendetta/WeaponSystem/PistolClass.h +++ b/EndlessVendetta/Source/EndlessVendetta/WeaponSystem/PistolClass.h @@ -24,4 +24,6 @@ public: virtual void Tick(float DeltaTime) override; virtual void Fire() override; + virtual void ClickDetectionTimer() override; + virtual void CancelFire() override; }; From e5cc2ad9f7ad60e8ec412cf6be18b55a8cfb52df Mon Sep 17 00:00:00 2001 From: MARCEL HARA Date: Mon, 16 Oct 2023 13:23:03 +0100 Subject: [PATCH 111/112] Changed DebugLine to Grey and Lowered Timer To Create Bullet Trail --- .../Source/EndlessVendetta/WeaponSystem/BaseWeaponClass.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/EndlessVendetta/Source/EndlessVendetta/WeaponSystem/BaseWeaponClass.cpp b/EndlessVendetta/Source/EndlessVendetta/WeaponSystem/BaseWeaponClass.cpp index 53f2de68..d20c1ae8 100644 --- a/EndlessVendetta/Source/EndlessVendetta/WeaponSystem/BaseWeaponClass.cpp +++ b/EndlessVendetta/Source/EndlessVendetta/WeaponSystem/BaseWeaponClass.cpp @@ -174,7 +174,7 @@ void ABaseWeaponClass::Fire() traceEnd = traceStart + (GunStartArrow->GetForwardVector() * BulletDistance); if (GetWorldTimerManager().IsTimerActive(timerHandle)) return; GetWorld()->LineTraceSingleByChannel(outHit, traceStart, traceEnd, ECC_Visibility, collisionParams); - DrawDebugLine(this->GetWorld(), traceStart, traceEnd, FColor::Red, false, 5.0f, 0U, 1.5f); + DrawDebugLine(this->GetWorld(), traceStart, traceEnd, FColor::Black , false, 0.2f, 0U, 0.2f); playerControllerRef->PlayerCameraManager->StartCameraShake(CameraShakeClass, 1); currentAmmoCount -= 1; GenerateRecoilVector(); From e741b3c17a39a4e731f6c40073c9ced7335e3361 Mon Sep 17 00:00:00 2001 From: Rafal Swierczek Date: Mon, 16 Oct 2023 13:31:10 +0100 Subject: [PATCH 112/112] Preppared Build --- EndlessVendetta/Config/DefaultEngine.ini | 1 + .../FirstPerson/Blueprints/BP_FirstPersonCharacter.uasset | 4 ++-- .../Content/LevelPrototyping/Materials/M_Concrete.uasset | 4 ++-- .../Content/LevelPrototyping/Scenes/TutorialHit.umap | 4 ++-- 4 files changed, 7 insertions(+), 6 deletions(-) diff --git a/EndlessVendetta/Config/DefaultEngine.ini b/EndlessVendetta/Config/DefaultEngine.ini index 4413b669..280d5d43 100644 --- a/EndlessVendetta/Config/DefaultEngine.ini +++ b/EndlessVendetta/Config/DefaultEngine.ini @@ -26,6 +26,7 @@ r.Mobile.EnableNoPrecomputedLightingCSMShader=1 r.DefaultFeature.AutoExposure.ExtendDefaultLuminanceRange=True r.DefaultFeature.AutoExposure.ExtendDefaultLuminanceRange=true r.Shadow.Virtual.Enable=1 +r.DefaultFeature.AutoExposure=False [/Script/WindowsTargetPlatform.WindowsTargetSettings] DefaultGraphicsRHI=DefaultGraphicsRHI_DX12 diff --git a/EndlessVendetta/Content/FirstPerson/Blueprints/BP_FirstPersonCharacter.uasset b/EndlessVendetta/Content/FirstPerson/Blueprints/BP_FirstPersonCharacter.uasset index 802959cb..9b6693d3 100644 --- a/EndlessVendetta/Content/FirstPerson/Blueprints/BP_FirstPersonCharacter.uasset +++ b/EndlessVendetta/Content/FirstPerson/Blueprints/BP_FirstPersonCharacter.uasset @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:dd6b7d124efa1086acb80f4b16e1d8a0db25e05e081f914d61cfce0bbb4191e9 -size 42329 +oid sha256:fe0a5a1725c7cd65051a510027a14301f6b776fe1a1935d0fb55558f829ee90b +size 42620 diff --git a/EndlessVendetta/Content/LevelPrototyping/Materials/M_Concrete.uasset b/EndlessVendetta/Content/LevelPrototyping/Materials/M_Concrete.uasset index 20612d71..a6d654fd 100644 --- a/EndlessVendetta/Content/LevelPrototyping/Materials/M_Concrete.uasset +++ b/EndlessVendetta/Content/LevelPrototyping/Materials/M_Concrete.uasset @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:f229b163290b8a6981b8cc09dd3e1ab594b5cf5dcb73c549bb6480d094f893fa -size 13874 +oid sha256:a26f6c91b028ea155cc5336c7c3101d8601f9d6b335fb1c46760022ab78c68cd +size 13930 diff --git a/EndlessVendetta/Content/LevelPrototyping/Scenes/TutorialHit.umap b/EndlessVendetta/Content/LevelPrototyping/Scenes/TutorialHit.umap index 41507ce3..7e581a43 100644 --- a/EndlessVendetta/Content/LevelPrototyping/Scenes/TutorialHit.umap +++ b/EndlessVendetta/Content/LevelPrototyping/Scenes/TutorialHit.umap @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:e0a0089064acc8fe731cf17574d83fcef31a1de8e948ba6ac7402ccb0e22ae26 -size 393527 +oid sha256:3ffb6c31ffcde26ae8a0f677a27ced553a7f10e9a7a41786f4c7a319f02205bc +size 411380