From 675c571e86ec354fef604266f49dafd5645f183c Mon Sep 17 00:00:00 2001 From: SoulliesOfficial <77235731+SoulliesOfficial@users.noreply.github.com> Date: Wed, 12 Feb 2025 00:01:23 -0500 Subject: [PATCH] Inspector-2 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 加入Text,以及一些必要注释 --- .../Resources/ES3/ES3GlobalReferences.asset | 30 +- Assets/Prefabs/BasePrefabsCollection.asset | 1 + .../DynamicUI/DynamicUIContainer.prefab | 260 ++++++++++++-- Assets/Prefabs/DynamicUI/Elements.meta | 8 + .../{ => Elements}/InputField.prefab | 140 +++++++- .../{ => Elements}/InputField.prefab.meta | 0 Assets/Prefabs/DynamicUI/Elements/Text.prefab | 330 ++++++++++++++++++ .../DynamicUI/Elements/Text.prefab.meta | 7 + Assets/Scenes/SampleScene.unity | 31 +- .../Base/Manager/BasePrefabsCollection.cs | 1 + .../Scripts/DynamicUI/DynamicUIContainer.cs | 2 + .../DynamicUIElements/DynamicUIElement.cs | 23 +- .../DynamicUIElements/DynamicUIInputField.cs | 9 +- .../DynamicUIElements/DynamicUIText.cs | 27 ++ .../DynamicUIElements/DynamicUIText.cs.meta | 11 + .../DynamicUI/Hierarchy/HierarchyTab.cs | 3 +- .../Scripts/DynamicUI/Inspector/Inspector.cs | 51 ++- Assets/Scripts/GameElements/GameElement.cs | 8 +- 18 files changed, 895 insertions(+), 47 deletions(-) create mode 100644 Assets/Prefabs/DynamicUI/Elements.meta rename Assets/Prefabs/DynamicUI/{ => Elements}/InputField.prefab (80%) rename Assets/Prefabs/DynamicUI/{ => Elements}/InputField.prefab.meta (100%) create mode 100644 Assets/Prefabs/DynamicUI/Elements/Text.prefab create mode 100644 Assets/Prefabs/DynamicUI/Elements/Text.prefab.meta create mode 100644 Assets/Scripts/DynamicUI/DynamicUIElements/DynamicUIText.cs create mode 100644 Assets/Scripts/DynamicUI/DynamicUIElements/DynamicUIText.cs.meta diff --git a/Assets/Plugins/Easy Save 3/Resources/ES3/ES3GlobalReferences.asset b/Assets/Plugins/Easy Save 3/Resources/ES3/ES3GlobalReferences.asset index aa5c2ffe..94edb98a 100644 --- a/Assets/Plugins/Easy Save 3/Resources/ES3/ES3GlobalReferences.asset +++ b/Assets/Plugins/Easy Save 3/Resources/ES3/ES3GlobalReferences.asset @@ -284,10 +284,8 @@ MonoBehaviour: - {fileID: 11500000, guid: 336519de04d43424fa30796507182569, type: 3} - {fileID: 2642348292953561022, guid: 6da1a64e31165409abe1bf53013547e0, type: 3} - {fileID: 2546924885880613247, guid: 6da1a64e31165409abe1bf53013547e0, type: 3} - - {fileID: 1367203413920508703, guid: 6868f1f1eb20a43eea8d90883b83de2c, type: 3} - {fileID: 1751046927372055580, guid: 6868f1f1eb20a43eea8d90883b83de2c, type: 3} - {fileID: 641240999616330488, guid: 6868f1f1eb20a43eea8d90883b83de2c, type: 3} - - {fileID: 2405710526920421598, guid: 6868f1f1eb20a43eea8d90883b83de2c, type: 3} - {fileID: 3882558575301537220, guid: 6868f1f1eb20a43eea8d90883b83de2c, type: 3} - {fileID: 11500000, guid: 07a9bbc07d791482f963a422bfc8ae9b, type: 3} - {fileID: 1058483181577605081, guid: 94ed5dfb5df8c408faa267d2915aaeeb, type: 3} @@ -311,4 +309,30 @@ MonoBehaviour: - {fileID: 9019429101014728339, guid: 94ed5dfb5df8c408faa267d2915aaeeb, type: 3} - {fileID: 948417242699321966, guid: 94ed5dfb5df8c408faa267d2915aaeeb, type: 3} - {fileID: 5213022013272568639, guid: 94ed5dfb5df8c408faa267d2915aaeeb, type: 3} - _Values: 526a8851fe85233e7cc810cd2b8a733faa68e71a62b99912cf2f06228873853005edfb00aa354575a31cc8ad1ac7b966f52afefc8351b636e2b71574be99675b6400dfc3607f0069e96d5112b3681f5fcf550a7f3749f10c2c006f2e23d1db370e64801184e106752a681216ffa3837998b5a5688fe7245230fcd93d5728ea479cf46b8ba7516b16ed2e96b5bbb6e20e0c6272c125d7806f67cd366983232521642549cf9088373b29cf12c86a843666a9d2726c53c784328db49f8d499d2140c6bf413c35ce7d12821326d7a7c36313210e18f42f147d60db1f64f3ada3bb2d6666d31a094491222bbde8f495825a4e2f05ece33b3881253ca117543370bf2531ac8ebf10b7f565a03ac9712b88ca58c516c5a7b6d8f161d84e972e95f1f208f318fcbd24a42f1a1594d13a0cca1e4d0b9a28c0e4238a4cd5432183fe0a3d37c5600352a5affe32a0f1cca64d60c95d6de43a2f1ab3ec2f8dafe7e182ac1c0b579975acc6cca75b9cf61ff356e4ff757ac4f0e2446c5178b3cc3b0938e3500b2c3eb04c15e369388d95cb10d3df8656069a951142fc403ed6b4a90102e5146519f66f6d35134e18b132d9ec6c3ec954f282992fe09c9f2a9752fc7c47b5d52b06e06eab61a6d10e4d7cc274d62caa67eb540f7f4be5844b6a66281ce82d2f664f7483a3a0ebff69576b98633aaa8921a5ddbe04814bd97aac297cdb1235373261c4cec06828ec556592c57c95cb2c5c853ad052230733029b09f8776f245772a3ca0276dcc8b833ca146a1411560f76a926a9289a1bf169092fa58ddf9c3a7517c82635364a7f4df403890f9d1ef144fb812196cd7f0c77286780f491baec2cdaf4fd482fda400ba6f61b9da4000716c29e6ca1845b5768bcaf0ecfc98bbb39185d35a921a8142041153dc39aaa1c286f97b630278db035fff6d32e0ef214326ce60b1f02d1fa3100beb18fe2b7e76ee911c7c76ae00c14c122f29acc03601a51f08a4016e1082f6d7eea356c2d4766a7c4e03aa5e33455a9d65f214d9d8402a2681f2dbdd87b070a985bebf6d6a81097a7bf6f1b653f6d44ca68c07e191e3105186bfcf1e65731b726cef277b7a02e2f4f8ba6de14e73c29b17188403b8622b78df10f42a4017cfff026423332e5732a39eecea4c4101a0158da5ca71f8e0cacf1a805a8b07076b2f15811115bf709cdfeb27a2a54c77a62f3f016365a2b209de610da2415e4793787e44c9401f65bb01b6f5693eb1d01b923a2b5bf5a3f57c537732b4a1ce41e1dd3bc5c8f84196316b39ae5142b724ec80f2101722eba6ec83b11cc7422a66c365139bf2fc07134f6c0358c0bda930f573d9dc4051c541157fd8ac87b1d9952a64ba6e19ca69e2499417fddbe2caa24c1a561f21387762d2def8c67a4f06e2bc76e0cb0d75f9409b22d34593aa82d7ba7ae89207f8b652d5f423bce6076d56121e00caac4b88c2c7dcb083a94c883285aa4d5c6ce0a8162bfdd6753d123843ddced44e075745b023dbb7e5b896e8269c01328054c9b302a1ab4da484855f13539de7736f3892f04d9f6479188c48f2cd00d4fa9d9c99a7201753abb270b443240a506dad2e62f21bcf924dbc733497deec366e53a852b5d6e466fed752cfb7898b19bdc423679483d7065d2ed753932d34255148ed5933b2f9bb6e6a9e268170b63bcea6793c524c3515736dfa68f07f4c3e5cd2819166dba29f321139f0d5a074dc689b94fcb3f83cf281fd236e5292abdda6dc835402586d5d0c1605cee625fb13d2d6d18c0428f254a59f1f69a0ef2e209aa3a5f6e2ef35ef170e07360261e3a3ede074843437e1dfbee809a1671c43e2f82acbcd800430f3a0f274f621bc623782b35791639d9b3d6a7a4a251738a9dcae15d1d2c629ec1dee87cac94318016b3a41242a73e5469a8f9e5305b1a9e52653be5bb871d51da8e739a2dbc794808278eefad6148f68c8cf374337c311ef987ce12cf173b716a0b132fe4277edbdd4e22f732d40ef01d45592e93a97ca93fa95e5a129817e09c00a6478b8824b30bce51819f29142579bf2f14716a04ec784291717a27138999bca5ced2397ca56aa623c557fa0aea6b7c2b2d37d36ecd046c4031e66938e3bac7e8e2834609b33cd57e178eca6b83c7852308adbe3e94d428359a07b5400093c0f470edd76c4e79870e9eaba95c32283d069372be6e79067bb6ab7ca454796a807a3129056bd4516d76698e182e2bcd6bccd4d0d55bd256e985ffc3c546e2bb353081161d28e9f2b17c68842a61ffbca8999ef095525156bae067ce736817b45824c349af41156b1c1de1a70c577fb57abce4d3570d25e2df2a5b3cc1489ae5994cd4f9624895167ccd2c878e56b79ca0e2b6cfb2425d4b4aa628d99c27562c7d03f23f7d7819c328ce578ae1527135e0f7dda3ff6a97dca81f440971457a5478000a8b6376e1d8360c581b142d9608e7a1456bfa07b651858937153a686575e98014203e3e284564acf772d0414ace1d3510e7224a5ade01287e0be64f896976eb354cd453dd6c74b85fa2e828b9d4c8b9fdf7d24683ea1f5d51667f1d5e15238dfce40c6aa371127c5bdaaa470b279155bdd3ad6d9730674a2c76017713a8a6b681a4d32ac75e5c6e094fa25e94676779f8d5da313d6e0934833ec218748a6ab334f3c665ab98e2e4d0e388478e09b6c50e887e177c2785ed64615806e08b1e6b46aa6d77d33232a00d0a9e1f09ae3d730b78d804f67dd0a3864c364a40dbc45b01f48e388ad267be45e0da793a5a1c4adc1a0557652262c47b11fe1e96831e163005de15e0fb03221f68b5285849dde06880275b1fe340dba9ac4b77d44955c8fff1aa3ec7ce951ee81cc70492c6e23b11207815a53ccaebba464132d331f694d66968042f655630447ceb4524f930ad89858d64d39f505d3e46807a1100bbe767782751b8dbae93ee5fc7226db8ffaccc4a55445f1007aba41b4260bcb047a020454d5b3229c26b55bebe32232d20cceb1df107ea74ef6b3011a50761a6801b71d94a7d2c046a22d1333431a1fe74de63babf23a134bf8204e4ed2af4022af362109e2f65d4e8b37283aa7f2bef44313d81ec1a66a47b3c19c878470a55a2690825a356561e72b38fd7ae01ae4a6e96bb747f192505286ef155af188deaeb8cd4eec2232870ac4269fb76048416d70ae562427dd5bc4403fc346500705927a4eb212c63f36e41d3df3e7d298f24eada7da53229579148e75640d90c0cacd20fd3d11862168be888de916169c0e48b27b6757d3627fefc7d6914ba33b8b137cc9492aa430c88f1098dba073930de2672b5b1567fd6f7162a2a64072a451ccf2c5994d52e + - {fileID: 4815310443098260762, guid: 94ed5dfb5df8c408faa267d2915aaeeb, type: 3} + - {fileID: 8863047526699937627, guid: 94ed5dfb5df8c408faa267d2915aaeeb, type: 3} + - {fileID: 2522200636602697985, guid: 94ed5dfb5df8c408faa267d2915aaeeb, type: 3} + - {fileID: 4146383444293307128, guid: 94ed5dfb5df8c408faa267d2915aaeeb, type: 3} + - {fileID: 9196514445407840680, guid: 6868f1f1eb20a43eea8d90883b83de2c, type: 3} + - {fileID: 2155341055219784103, guid: 6868f1f1eb20a43eea8d90883b83de2c, type: 3} + - {fileID: 8315257099010545835, guid: 6868f1f1eb20a43eea8d90883b83de2c, type: 3} + - {fileID: 2695193391143546800, guid: 6868f1f1eb20a43eea8d90883b83de2c, type: 3} + - {fileID: 6615467020619937658, guid: 6868f1f1eb20a43eea8d90883b83de2c, type: 3} + - {fileID: 4055300132851975849, guid: 6868f1f1eb20a43eea8d90883b83de2c, type: 3} + - {fileID: 225916005459818471, guid: 6868f1f1eb20a43eea8d90883b83de2c, type: 3} + - {fileID: 7819072094691725340, guid: 6868f1f1eb20a43eea8d90883b83de2c, type: 3} + - {fileID: 5446580967707006926, guid: 6868f1f1eb20a43eea8d90883b83de2c, type: 3} + - {fileID: 2607937346778766047, guid: 6868f1f1eb20a43eea8d90883b83de2c, type: 3} + - {fileID: 8314584144366428067, guid: 4b0098f7176cb49d6ac968b7d3ca4c51, type: 3} + - {fileID: 1590546503192305588, guid: 4b0098f7176cb49d6ac968b7d3ca4c51, type: 3} + - {fileID: 4146383444293307128, guid: 4b0098f7176cb49d6ac968b7d3ca4c51, type: 3} + - {fileID: 11500000, guid: bd156b66e112a4120a775c14113c0738, type: 3} + - {fileID: 1511802765271541473, guid: 4b0098f7176cb49d6ac968b7d3ca4c51, type: 3} + - {fileID: 4303436613740383453, guid: 4b0098f7176cb49d6ac968b7d3ca4c51, type: 3} + - {fileID: 4815310443098260762, guid: 4b0098f7176cb49d6ac968b7d3ca4c51, type: 3} + - {fileID: 2522200636602697985, guid: 4b0098f7176cb49d6ac968b7d3ca4c51, type: 3} + - {fileID: 8091948658150366110, guid: 4b0098f7176cb49d6ac968b7d3ca4c51, type: 3} + - {fileID: 8863047526699937627, guid: 4b0098f7176cb49d6ac968b7d3ca4c51, type: 3} + - {fileID: 2642348292953561022, guid: 4b0098f7176cb49d6ac968b7d3ca4c51, type: 3} + - {fileID: 2546924885880613247, guid: 4b0098f7176cb49d6ac968b7d3ca4c51, type: 3} + _Values: 526a8851fe85233e7cc810cd2b8a733faa68e71a62b99912cf2f06228873853005edfb00aa354575a31cc8ad1ac7b966f52afefc8351b636e2b71574be99675b6400dfc3607f0069e96d5112b3681f5fcf550a7f3749f10c2c006f2e23d1db370e64801184e106752a681216ffa3837998b5a5688fe7245230fcd93d5728ea479cf46b8ba7516b16ed2e96b5bbb6e20e0c6272c125d7806f67cd366983232521642549cf9088373b29cf12c86a843666a9d2726c53c784328db49f8d499d2140c6bf413c35ce7d12821326d7a7c36313210e18f42f147d60db1f64f3ada3bb2d6666d31a094491222bbde8f495825a4e2f05ece33b3881253ca117543370bf2531ac8ebf10b7f565a03ac9712b88ca58c516c5a7b6d8f161d84e972e95f1f208f318fcbd24a42f1a1594d13a0cca1e4d0b9a28c0e4238a4cd5432183fe0a3d37c5600352a5affe32a0f1cca64d60c95d6de43a2f1ab3ec2f8dafe7e182ac1c0b579975acc6cca75b9cf61ff356e4ff757ac4f0e2446c5178b3cc3b0938e3500b2c3eb04c15e369388d95cb10d3df8656069a951142fc403ed6b4a90102e5146519f66f6d35134e18b132d9ec6c3ec954f282992fe09c9f2a9752fc7c47b5d52b06e06eab61a6d10e4d7cc274d62caa67eb540f7f4be5844b6a66281ce82d2f664f7483a3a0ebff69576b98633aaa8921a5ddbe04814bd97aac297cdb1235373261c4cec06828ec556592c57c95cb2c5c853ad052230733029b09f8776f245772a3ca0276dcc8b833ca146a1411560f76a926a9289a1bf169092fa58ddf9c3a7517c82635364a7f4df403890f9d1ef144fb812196cd7f0c77286780f491baec2cdaf4fd482fda400ba6f61b9da4000716c29e6ca1845b5768bcaf0ecfc98bbb39185d35a921a8142041153dc39aaa1c286f97b630278db035fff6d32e0ef214326ce60b1f02d1fa3100beb18fe2b7e76ee911c7c76ae00c14c122f29acc03601a51f08a4016e1082f6d7eea356c2d4766a7c4e03aa5e33455a9d65f214d9d8402a2681f2dbdd87b070a985bebf6d6a81097a7bf6f1b653f6d44ca68c07e191e3105186bfcf1e65731b726cef277b7a02e2f4f8ba6de14e73c29b17188403b8622b78df10f42a4017cfff026423332e5732a39eecea4c4101a0158da5ca71f8e0cacf1a805a8b07076b2f15811115bf709cdfeb27a2a54c77a62f3f016365a2b209de610da2415e4793787e44c9401f65bb01b6f5693eb1d01b923a2b5bf5a3f57c537732b4a1ce41e1dd3bc5c8f84196316b39ae5142b724ec80f2101722eba6ec83b11cc7422a66c365139bf2fc07134f6c0358c0bda930f573d9dc4051c541157fd8ac87b1d9952a64ba6e19ca69e2499417fddbe2caa24c1a561f21387762d2def8c67a4f06e2bc76e0cb0d75f9409b22d34593aa82d7ba7ae89207f8b652d5f423bce6076d56121e00caac4b88c2c7dcb083a94c883285aa4d5c6ce0a8162bfdd6753d123843ddced44e075745b023dbb7e5b896e8269c01328054c9b302a1ab4da484855f13539de7736f3892f04d9f6479188c48f2cd00d4fa9d9c99a7201753abb270b443240a506dad2e62f21bcf924dbc733497deec366e53a852b5d6e466fed752cfb7898b19bdc423679483d7065d2ed753932d34255148ed5933b2f9bb6e6a9e268170b63bcea6793c524c3515736dfa68f07f4c3e5cd2819166dba29f321139f0d5a074dc689b94fcb3f83cf281fd236e5292abdda6dc835402586d5d0c1605cee625fb13d2d6d18c0428f254a59f1f69a0ef2e209aa3a5f6e2ef35ef170e07360261e3a3ede074843437e1dfbee809a1671c43e2f82acbcd800430f3a0f274f621bc623782b35791639d9b3d6a7a4a251738a9dcae15d1d2c629ec1dee87cac94318016b3a41242a73e5469a8f9e5305b1a9e52653be5bb871d51da8e739a2dbc794808278eefad6148f68c8cf374337c311ef987ce12cf173b716a0b132fe4277edbdd4e22f732d40ef01d45592e93a97ca93fa95e5a129817e09c00a6478b8824b30bce51819f29142579bf2f14716a04ec784291717a27138999bca5ced2397ca56aa623c557fa0aea6b7c2b2d37d36ecd046c4031e66938e3bac7e8e2834609b33cd57e178eca6b83c7852308adbe3e94d428359a07b5400093c0f470edd76c4e79870e9eaba95c32283d069372be6e79067bb6ab7ca454796a807a3129056bd4516d76698e182e2bcd6bccd4d0d55bd256e985ffc3c546e2bb353081161d28e9f2b17c68842a61ffbca8999ef095525156bae067ce736817b45824c349af41156b1c1de1a70c577fb57abce4d3570d25e2df2a5b3cc1489ae5994cd4f9624895167ccd2c878e56b79ca0e2b6cfb2425d4b4aa628d99c27562c7d03f23f7d7819c328ce578ae1527135e0f7dda3ff6a97dca81f440971457a5478000a8b6376e1d8360c581b142d9608e7a1456bfa07b651858937153a686575e98014203e3e284564acf772d0414ace1d3510e7224a5ade01287e0be64f896976eb354cd453dd6c74b85fa2e828b9d4c8b9fdf7d24683ea1f5d51667f1d5e15238dfce40c6aa371127c5bdaaa470b279155bdd3ad6d9730674a2c76017713a8a6b681a4d32ac75e5c6e094fa25e94676779f8d5da313d6e0934833ec218748a6ab334f3c665ab98e2e4d0e388478e09b6c50e887e177c2785ed64615806e08b1e6b46aa6d77d33232a00d0a9e1f09ae3d730b78d804f67dd0a3864c364a40dbc45b01f48e388ad267be45e0da793a5a1c4adc1a0557652262c47b11fe1e96831e163005de15e0fb03221f68b5285849dde06880275b1fe340dba9ac4b77d44955c8fff1aa3ec7ce951ee81cc70492c6e23b11207815a53ccaebba464132d331f694d66968042f655630447ceb4524f930ad89858d64d39f505d3e46807a1100bbe767782751b8dbae93ee5fc7226db8ffaccc4a55445f1007aba41b4260bcb047a020454d5b3229c26b55bebe32232d20cceb1df107ea74ef6b3011a50761a6801b71d94a7d2c046a22d1333431a134bf8204e4ed2af4022af362109e2f2bef44313d81ec1a66a47b3c19c878470a55a2690825a356561e72b38fd7ae01ae4a6e96bb747f192505286ef155af188deaeb8cd4eec2232870ac4269fb76048416d70ae562427dd5bc4403fc346500705927a4eb212c63f36e41d3df3e7d298f24eada7da53229579148e75640d90c0cacd20fd3d11862168be888de916169c0e48b27b6757d3627fefc7d6914ba33b8b137cc9492aa430c88f1098dba073930de2672b5b1567fd6f7162a2a64072a451ccf2c5994d52e5bbfe973432468198e568f78da72731274c4468ee18fc367d4dc573e3c894702f74d106b78d3cd639abd3cfef63523231af4bf491b069c3f6fa51cfe8a26f82a3862d4b8df032e395b7650edaecae8507bfae382678d6e456f60c0820b69a968c953246344f2490055701c155611592b394b9a3c1ee2f55a1bf1f247ccd2d2694ad889b2a6521d6ef8a3102955feb74a8770a5d5a1229266ec4babb2d341af68b75b7f20341902746809447bd2cc041cc65840a4d302386b6bef9ff2fdcf41490c571f4e8127805e731a6c98de179420 diff --git a/Assets/Prefabs/BasePrefabsCollection.asset b/Assets/Prefabs/BasePrefabsCollection.asset index aba3412a..ef8ab748 100644 --- a/Assets/Prefabs/BasePrefabsCollection.asset +++ b/Assets/Prefabs/BasePrefabsCollection.asset @@ -50,3 +50,4 @@ MonoBehaviour: type: 3} inputField: {fileID: 2642348292953561022, guid: 94ed5dfb5df8c408faa267d2915aaeeb, type: 3} + text: {fileID: 2642348292953561022, guid: 4b0098f7176cb49d6ac968b7d3ca4c51, type: 3} diff --git a/Assets/Prefabs/DynamicUI/DynamicUIContainer.prefab b/Assets/Prefabs/DynamicUI/DynamicUIContainer.prefab index 2db3b87c..a123e1ab 100644 --- a/Assets/Prefabs/DynamicUI/DynamicUIContainer.prefab +++ b/Assets/Prefabs/DynamicUI/DynamicUIContainer.prefab @@ -1,5 +1,80 @@ %YAML 1.1 %TAG !u! tag:unity3d.com,2011: +--- !u!1 &225916005459818471 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 6615467020619937658} + - component: {fileID: 7819072094691725340} + - component: {fileID: 4055300132851975849} + m_Layer: 5 + m_Name: DynamicUIContainer + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!224 &6615467020619937658 +RectTransform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 225916005459818471} + m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: [] + m_Father: {fileID: 1751046927372055580} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} + m_AnchorMin: {x: 0, y: 1} + m_AnchorMax: {x: 0, y: 1} + m_AnchoredPosition: {x: 250, y: -45.22} + m_SizeDelta: {x: 500, y: 0} + m_Pivot: {x: 0.5, y: 0.5} +--- !u!114 &7819072094691725340 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 225916005459818471} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 8a8695521f0d02e499659fee002a26c2, type: 3} + m_Name: + m_EditorClassIdentifier: + m_Padding: + m_Left: 5 + m_Right: 5 + m_Top: 5 + m_Bottom: 5 + m_ChildAlignment: 0 + m_StartCorner: 0 + m_StartAxis: 0 + m_CellSize: {x: 240, y: 100} + m_Spacing: {x: 10, y: 0} + m_Constraint: 0 + m_ConstraintCount: 2 +--- !u!114 &4055300132851975849 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 225916005459818471} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 3245ec927659c4140ac4f8d17403cc18, type: 3} + m_Name: + m_EditorClassIdentifier: + m_HorizontalFit: 0 + m_VerticalFit: 2 --- !u!1 &641240999616330488 GameObject: m_ObjectHideFlags: 0 @@ -9,9 +84,9 @@ GameObject: serializedVersion: 6 m_Component: - component: {fileID: 1751046927372055580} - - component: {fileID: 1367203413920508703} - - component: {fileID: 2405710526920421598} - component: {fileID: 3882558575301537220} + - component: {fileID: 5446580967707006926} + - component: {fileID: 2607937346778766047} m_Layer: 5 m_Name: DynamicUIContainer m_TagString: Untagged @@ -30,15 +105,17 @@ RectTransform: m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_ConstrainProportionsScale: 0 - m_Children: [] + m_Children: + - {fileID: 2695193391143546800} + - {fileID: 6615467020619937658} m_Father: {fileID: 0} m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0, y: 1} m_AnchorMax: {x: 0, y: 1} - m_AnchoredPosition: {x: 250, y: -5} + m_AnchoredPosition: {x: 250, y: 0} m_SizeDelta: {x: 500, y: 0} m_Pivot: {x: 0.5, y: 0.5} ---- !u!114 &1367203413920508703 +--- !u!114 &3882558575301537220 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} @@ -47,22 +124,39 @@ MonoBehaviour: m_GameObject: {fileID: 641240999616330488} m_Enabled: 1 m_EditorHideFlags: 0 - m_Script: {fileID: 11500000, guid: 8a8695521f0d02e499659fee002a26c2, type: 3} + m_Script: {fileID: 11500000, guid: 336519de04d43424fa30796507182569, type: 3} + m_Name: + m_EditorClassIdentifier: + title: {fileID: 2155341055219784103} + dynamicUIElements: [] + rect: {fileID: 6615467020619937658} +--- !u!114 &5446580967707006926 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 641240999616330488} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 59f8146938fff824cb5fd77236b75775, type: 3} m_Name: m_EditorClassIdentifier: m_Padding: - m_Left: 5 - m_Right: 5 - m_Top: 5 - m_Bottom: 5 - m_ChildAlignment: 0 - m_StartCorner: 0 - m_StartAxis: 0 - m_CellSize: {x: 240, y: 100} - m_Spacing: {x: 10, y: 0} - m_Constraint: 0 - m_ConstraintCount: 2 ---- !u!114 &2405710526920421598 + m_Left: 0 + m_Right: 0 + m_Top: 0 + m_Bottom: 0 + m_ChildAlignment: 1 + m_Spacing: 0 + m_ChildForceExpandWidth: 0 + m_ChildForceExpandHeight: 0 + m_ChildControlWidth: 0 + m_ChildControlHeight: 1 + m_ChildScaleWidth: 0 + m_ChildScaleHeight: 1 + m_ReverseArrangement: 0 +--- !u!114 &2607937346778766047 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} @@ -76,17 +170,137 @@ MonoBehaviour: m_EditorClassIdentifier: m_HorizontalFit: 0 m_VerticalFit: 2 ---- !u!114 &3882558575301537220 +--- !u!1 &9196514445407840680 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 2695193391143546800} + - component: {fileID: 8315257099010545835} + - component: {fileID: 2155341055219784103} + m_Layer: 5 + m_Name: Title + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!224 &2695193391143546800 +RectTransform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 9196514445407840680} + m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: [] + m_Father: {fileID: 1751046927372055580} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} + m_AnchorMin: {x: 0, y: 0} + m_AnchorMax: {x: 0, y: 0} + m_AnchoredPosition: {x: 0, y: 0} + m_SizeDelta: {x: 450, y: 0} + m_Pivot: {x: 0.5, y: 0.5} +--- !u!222 &8315257099010545835 +CanvasRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 9196514445407840680} + m_CullTransparentMesh: 1 +--- !u!114 &2155341055219784103 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 641240999616330488} + m_GameObject: {fileID: 9196514445407840680} m_Enabled: 1 m_EditorHideFlags: 0 - m_Script: {fileID: 11500000, guid: 336519de04d43424fa30796507182569, type: 3} + m_Script: {fileID: 11500000, guid: f4688fdb7df04437aeb418b961361dc5, type: 3} m_Name: m_EditorClassIdentifier: - dynamicUIElements: [] - rect: {fileID: 1751046927372055580} + m_Material: {fileID: 0} + m_Color: {r: 1, g: 1, b: 1, a: 1} + m_RaycastTarget: 1 + m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0} + m_Maskable: 1 + m_OnCullStateChanged: + m_PersistentCalls: + m_Calls: [] + m_text: Title + m_isRightToLeft: 0 + m_fontAsset: {fileID: 11400000, guid: 8f586378b4e144a9851e7b34d9b748ee, type: 2} + m_sharedMaterial: {fileID: 2180264, guid: 8f586378b4e144a9851e7b34d9b748ee, type: 2} + m_fontSharedMaterials: [] + m_fontMaterial: {fileID: 0} + m_fontMaterials: [] + m_fontColor32: + serializedVersion: 2 + rgba: 4294967295 + m_fontColor: {r: 1, g: 1, b: 1, a: 1} + m_enableVertexGradient: 0 + m_colorMode: 3 + m_fontColorGradient: + topLeft: {r: 1, g: 1, b: 1, a: 1} + topRight: {r: 1, g: 1, b: 1, a: 1} + bottomLeft: {r: 1, g: 1, b: 1, a: 1} + bottomRight: {r: 1, g: 1, b: 1, a: 1} + m_fontColorGradientPreset: {fileID: 0} + m_spriteAsset: {fileID: 0} + m_tintAllSprites: 0 + m_StyleSheet: {fileID: 0} + m_TextStyleHashCode: -1183493901 + m_overrideHtmlColors: 0 + m_faceColor: + serializedVersion: 2 + rgba: 4294967295 + m_fontSize: 36 + m_fontSizeBase: 36 + m_fontWeight: 400 + m_enableAutoSizing: 0 + m_fontSizeMin: 18 + m_fontSizeMax: 72 + m_fontStyle: 0 + m_HorizontalAlignment: 1 + m_VerticalAlignment: 512 + m_textAlignment: 65535 + m_characterSpacing: 0 + m_wordSpacing: 0 + m_lineSpacing: 0 + m_lineSpacingMax: 0 + m_paragraphSpacing: 0 + m_charWidthMaxAdj: 0 + m_enableWordWrapping: 1 + m_wordWrappingRatios: 0.4 + m_overflowMode: 0 + m_linkedTextComponent: {fileID: 0} + parentLinkedComponent: {fileID: 0} + m_enableKerning: 1 + m_enableExtraPadding: 0 + checkPaddingRequired: 0 + m_isRichText: 1 + m_parseCtrlCharacters: 1 + m_isOrthographic: 1 + m_isCullingEnabled: 0 + m_horizontalMapping: 0 + m_verticalMapping: 0 + m_uvLineOffset: 0 + m_geometrySortingOrder: 0 + m_IsTextObjectScaleStatic: 0 + m_VertexBufferAutoSizeReduction: 0 + m_useMaxVisibleDescender: 1 + m_pageToDisplay: 1 + m_margin: {x: 0, y: 0, z: 0, w: 0} + m_isUsingLegacyAnimationComponent: 0 + m_isVolumetricText: 0 + m_hasFontAssetChanged: 0 + m_baseMaterial: {fileID: 0} + m_maskOffset: {x: 0, y: 0, z: 0, w: 0} diff --git a/Assets/Prefabs/DynamicUI/Elements.meta b/Assets/Prefabs/DynamicUI/Elements.meta new file mode 100644 index 00000000..83e182f2 --- /dev/null +++ b/Assets/Prefabs/DynamicUI/Elements.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: e8b6ebae9ce4f4644b0f538312aba66d +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/Prefabs/DynamicUI/InputField.prefab b/Assets/Prefabs/DynamicUI/Elements/InputField.prefab similarity index 80% rename from Assets/Prefabs/DynamicUI/InputField.prefab rename to Assets/Prefabs/DynamicUI/Elements/InputField.prefab index 15db8623..18f94ef2 100644 --- a/Assets/Prefabs/DynamicUI/InputField.prefab +++ b/Assets/Prefabs/DynamicUI/Elements/InputField.prefab @@ -134,6 +134,140 @@ MonoBehaviour: m_hasFontAssetChanged: 0 m_baseMaterial: {fileID: 0} m_maskOffset: {x: 0, y: 0, z: 0, w: 0} +--- !u!1 &2522200636602697985 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 4815310443098260762} + - component: {fileID: 8863047526699937627} + - component: {fileID: 4146383444293307128} + m_Layer: 5 + m_Name: Title + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!224 &4815310443098260762 +RectTransform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 2522200636602697985} + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: [] + m_Father: {fileID: 2546924885880613247} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} + m_AnchorMin: {x: 0.5, y: 0.5} + m_AnchorMax: {x: 0.5, y: 0.5} + m_AnchoredPosition: {x: 0, y: 32.5} + m_SizeDelta: {x: 200, y: 35} + m_Pivot: {x: 0.5, y: 0.5} +--- !u!222 &8863047526699937627 +CanvasRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 2522200636602697985} + m_CullTransparentMesh: 1 +--- !u!114 &4146383444293307128 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 2522200636602697985} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: f4688fdb7df04437aeb418b961361dc5, type: 3} + m_Name: + m_EditorClassIdentifier: + m_Material: {fileID: 0} + m_Color: {r: 1, g: 1, b: 1, a: 1} + m_RaycastTarget: 1 + m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0} + m_Maskable: 1 + m_OnCullStateChanged: + m_PersistentCalls: + m_Calls: [] + m_text: Title + m_isRightToLeft: 0 + m_fontAsset: {fileID: 11400000, guid: 8f586378b4e144a9851e7b34d9b748ee, type: 2} + m_sharedMaterial: {fileID: 2180264, guid: 8f586378b4e144a9851e7b34d9b748ee, type: 2} + m_fontSharedMaterials: [] + m_fontMaterial: {fileID: 0} + m_fontMaterials: [] + m_fontColor32: + serializedVersion: 2 + rgba: 4294967295 + m_fontColor: {r: 1, g: 1, b: 1, a: 1} + m_enableVertexGradient: 0 + m_colorMode: 3 + m_fontColorGradient: + topLeft: {r: 1, g: 1, b: 1, a: 1} + topRight: {r: 1, g: 1, b: 1, a: 1} + bottomLeft: {r: 1, g: 1, b: 1, a: 1} + bottomRight: {r: 1, g: 1, b: 1, a: 1} + m_fontColorGradientPreset: {fileID: 0} + m_spriteAsset: {fileID: 0} + m_tintAllSprites: 0 + m_StyleSheet: {fileID: 0} + m_TextStyleHashCode: -1183493901 + m_overrideHtmlColors: 0 + m_faceColor: + serializedVersion: 2 + rgba: 4294967295 + m_fontSize: 18 + m_fontSizeBase: 18 + m_fontWeight: 400 + m_enableAutoSizing: 0 + m_fontSizeMin: 18 + m_fontSizeMax: 72 + m_fontStyle: 0 + m_HorizontalAlignment: 1 + m_VerticalAlignment: 512 + m_textAlignment: 65535 + m_characterSpacing: 0 + m_wordSpacing: 0 + m_lineSpacing: 0 + m_lineSpacingMax: 0 + m_paragraphSpacing: 0 + m_charWidthMaxAdj: 0 + m_enableWordWrapping: 1 + m_wordWrappingRatios: 0.4 + m_overflowMode: 0 + m_linkedTextComponent: {fileID: 0} + parentLinkedComponent: {fileID: 0} + m_enableKerning: 1 + m_enableExtraPadding: 0 + checkPaddingRequired: 0 + m_isRichText: 1 + m_parseCtrlCharacters: 1 + m_isOrthographic: 1 + m_isCullingEnabled: 0 + m_horizontalMapping: 0 + m_verticalMapping: 0 + m_uvLineOffset: 0 + m_geometrySortingOrder: 0 + m_IsTextObjectScaleStatic: 0 + m_VertexBufferAutoSizeReduction: 0 + m_useMaxVisibleDescender: 1 + m_pageToDisplay: 1 + m_margin: {x: 0, y: 0, z: 0, w: 0} + m_isUsingLegacyAnimationComponent: 0 + m_isVolumetricText: 0 + m_hasFontAssetChanged: 0 + m_baseMaterial: {fileID: 0} + m_maskOffset: {x: 0, y: 0, z: 0, w: 0} --- !u!1 &2642348292953561022 GameObject: m_ObjectHideFlags: 0 @@ -164,6 +298,7 @@ RectTransform: m_ConstrainProportionsScale: 0 m_Children: - {fileID: 948417242699321966} + - {fileID: 4815310443098260762} m_Father: {fileID: 0} m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0, y: 0} @@ -183,6 +318,7 @@ MonoBehaviour: m_Script: {fileID: 11500000, guid: 3c820db94e3df4f9aa6ab10ef435bb5a, type: 3} m_Name: m_EditorClassIdentifier: + title: {fileID: 4146383444293307128} isAlwaysUpdated: 0 parameterName: inputField: {fileID: 8133616667585172139} @@ -274,8 +410,8 @@ RectTransform: m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0.5, y: 0.5} m_AnchorMax: {x: 0.5, y: 0.5} - m_AnchoredPosition: {x: 0, y: 0} - m_SizeDelta: {x: 160, y: 30} + m_AnchoredPosition: {x: 0, y: -10} + m_SizeDelta: {x: 200, y: 50} m_Pivot: {x: 0.5, y: 0.5} --- !u!222 &5213022013272568639 CanvasRenderer: diff --git a/Assets/Prefabs/DynamicUI/InputField.prefab.meta b/Assets/Prefabs/DynamicUI/Elements/InputField.prefab.meta similarity index 100% rename from Assets/Prefabs/DynamicUI/InputField.prefab.meta rename to Assets/Prefabs/DynamicUI/Elements/InputField.prefab.meta diff --git a/Assets/Prefabs/DynamicUI/Elements/Text.prefab b/Assets/Prefabs/DynamicUI/Elements/Text.prefab new file mode 100644 index 00000000..1b10d472 --- /dev/null +++ b/Assets/Prefabs/DynamicUI/Elements/Text.prefab @@ -0,0 +1,330 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!1 &2522200636602697985 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 4815310443098260762} + - component: {fileID: 8863047526699937627} + - component: {fileID: 4146383444293307128} + m_Layer: 5 + m_Name: Title + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!224 &4815310443098260762 +RectTransform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 2522200636602697985} + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: [] + m_Father: {fileID: 2546924885880613247} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} + m_AnchorMin: {x: 0.5, y: 0.5} + m_AnchorMax: {x: 0.5, y: 0.5} + m_AnchoredPosition: {x: 0, y: 32.5} + m_SizeDelta: {x: 200, y: 35} + m_Pivot: {x: 0.5, y: 0.5} +--- !u!222 &8863047526699937627 +CanvasRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 2522200636602697985} + m_CullTransparentMesh: 1 +--- !u!114 &4146383444293307128 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 2522200636602697985} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: f4688fdb7df04437aeb418b961361dc5, type: 3} + m_Name: + m_EditorClassIdentifier: + m_Material: {fileID: 0} + m_Color: {r: 1, g: 1, b: 1, a: 1} + m_RaycastTarget: 1 + m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0} + m_Maskable: 1 + m_OnCullStateChanged: + m_PersistentCalls: + m_Calls: [] + m_text: Title + m_isRightToLeft: 0 + m_fontAsset: {fileID: 11400000, guid: 8f586378b4e144a9851e7b34d9b748ee, type: 2} + m_sharedMaterial: {fileID: 2180264, guid: 8f586378b4e144a9851e7b34d9b748ee, type: 2} + m_fontSharedMaterials: [] + m_fontMaterial: {fileID: 0} + m_fontMaterials: [] + m_fontColor32: + serializedVersion: 2 + rgba: 4294967295 + m_fontColor: {r: 1, g: 1, b: 1, a: 1} + m_enableVertexGradient: 0 + m_colorMode: 3 + m_fontColorGradient: + topLeft: {r: 1, g: 1, b: 1, a: 1} + topRight: {r: 1, g: 1, b: 1, a: 1} + bottomLeft: {r: 1, g: 1, b: 1, a: 1} + bottomRight: {r: 1, g: 1, b: 1, a: 1} + m_fontColorGradientPreset: {fileID: 0} + m_spriteAsset: {fileID: 0} + m_tintAllSprites: 0 + m_StyleSheet: {fileID: 0} + m_TextStyleHashCode: -1183493901 + m_overrideHtmlColors: 0 + m_faceColor: + serializedVersion: 2 + rgba: 4294967295 + m_fontSize: 18 + m_fontSizeBase: 18 + m_fontWeight: 400 + m_enableAutoSizing: 0 + m_fontSizeMin: 18 + m_fontSizeMax: 72 + m_fontStyle: 0 + m_HorizontalAlignment: 1 + m_VerticalAlignment: 512 + m_textAlignment: 65535 + m_characterSpacing: 0 + m_wordSpacing: 0 + m_lineSpacing: 0 + m_lineSpacingMax: 0 + m_paragraphSpacing: 0 + m_charWidthMaxAdj: 0 + m_enableWordWrapping: 1 + m_wordWrappingRatios: 0.4 + m_overflowMode: 0 + m_linkedTextComponent: {fileID: 0} + parentLinkedComponent: {fileID: 0} + m_enableKerning: 1 + m_enableExtraPadding: 0 + checkPaddingRequired: 0 + m_isRichText: 1 + m_parseCtrlCharacters: 1 + m_isOrthographic: 1 + m_isCullingEnabled: 0 + m_horizontalMapping: 0 + m_verticalMapping: 0 + m_uvLineOffset: 0 + m_geometrySortingOrder: 0 + m_IsTextObjectScaleStatic: 0 + m_VertexBufferAutoSizeReduction: 0 + m_useMaxVisibleDescender: 1 + m_pageToDisplay: 1 + m_margin: {x: 0, y: 0, z: 0, w: 0} + m_isUsingLegacyAnimationComponent: 0 + m_isVolumetricText: 0 + m_hasFontAssetChanged: 0 + m_baseMaterial: {fileID: 0} + m_maskOffset: {x: 0, y: 0, z: 0, w: 0} +--- !u!1 &2642348292953561022 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 2546924885880613247} + - component: {fileID: 1590546503192305588} + m_Layer: 5 + m_Name: Text + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!224 &2546924885880613247 +RectTransform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 2642348292953561022} + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: + - {fileID: 4815310443098260762} + - {fileID: 8314584144366428067} + m_Father: {fileID: 0} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} + m_AnchorMin: {x: 0, y: 0} + m_AnchorMax: {x: 0, y: 0} + m_AnchoredPosition: {x: 0, y: 0} + m_SizeDelta: {x: 240, y: 100} + m_Pivot: {x: 0.5, y: 0.5} +--- !u!114 &1590546503192305588 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 2642348292953561022} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: bd156b66e112a4120a775c14113c0738, type: 3} + m_Name: + m_EditorClassIdentifier: + title: {fileID: 4146383444293307128} + parameterName: + isAlwaysUpdated: 0 + text: {fileID: 1511802765271541473} +--- !u!1 &4303436613740383453 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 8314584144366428067} + - component: {fileID: 8091948658150366110} + - component: {fileID: 1511802765271541473} + m_Layer: 5 + m_Name: TextContent + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!224 &8314584144366428067 +RectTransform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 4303436613740383453} + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: [] + m_Father: {fileID: 2546924885880613247} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} + m_AnchorMin: {x: 0.5, y: 0.5} + m_AnchorMax: {x: 0.5, y: 0.5} + m_AnchoredPosition: {x: 0.0000076293945, y: -17.5} + m_SizeDelta: {x: 220, y: 65} + m_Pivot: {x: 0.5, y: 0.5} +--- !u!222 &8091948658150366110 +CanvasRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 4303436613740383453} + m_CullTransparentMesh: 1 +--- !u!114 &1511802765271541473 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 4303436613740383453} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: f4688fdb7df04437aeb418b961361dc5, type: 3} + m_Name: + m_EditorClassIdentifier: + m_Material: {fileID: 0} + m_Color: {r: 1, g: 1, b: 1, a: 1} + m_RaycastTarget: 1 + m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0} + m_Maskable: 1 + m_OnCullStateChanged: + m_PersistentCalls: + m_Calls: [] + m_text: 'Content + + Content + + Content + + Content' + m_isRightToLeft: 0 + m_fontAsset: {fileID: 11400000, guid: 8f586378b4e144a9851e7b34d9b748ee, type: 2} + m_sharedMaterial: {fileID: 2180264, guid: 8f586378b4e144a9851e7b34d9b748ee, type: 2} + m_fontSharedMaterials: [] + m_fontMaterial: {fileID: 0} + m_fontMaterials: [] + m_fontColor32: + serializedVersion: 2 + rgba: 4294967295 + m_fontColor: {r: 1, g: 1, b: 1, a: 1} + m_enableVertexGradient: 0 + m_colorMode: 3 + m_fontColorGradient: + topLeft: {r: 1, g: 1, b: 1, a: 1} + topRight: {r: 1, g: 1, b: 1, a: 1} + bottomLeft: {r: 1, g: 1, b: 1, a: 1} + bottomRight: {r: 1, g: 1, b: 1, a: 1} + m_fontColorGradientPreset: {fileID: 0} + m_spriteAsset: {fileID: 0} + m_tintAllSprites: 0 + m_StyleSheet: {fileID: 0} + m_TextStyleHashCode: -1183493901 + m_overrideHtmlColors: 0 + m_faceColor: + serializedVersion: 2 + rgba: 4294967295 + m_fontSize: 15 + m_fontSizeBase: 15 + m_fontWeight: 400 + m_enableAutoSizing: 0 + m_fontSizeMin: 18 + m_fontSizeMax: 72 + m_fontStyle: 0 + m_HorizontalAlignment: 1 + m_VerticalAlignment: 512 + m_textAlignment: 65535 + m_characterSpacing: 0 + m_wordSpacing: 0 + m_lineSpacing: 0 + m_lineSpacingMax: 0 + m_paragraphSpacing: 0 + m_charWidthMaxAdj: 0 + m_enableWordWrapping: 1 + m_wordWrappingRatios: 0.4 + m_overflowMode: 0 + m_linkedTextComponent: {fileID: 0} + parentLinkedComponent: {fileID: 0} + m_enableKerning: 1 + m_enableExtraPadding: 0 + checkPaddingRequired: 0 + m_isRichText: 1 + m_parseCtrlCharacters: 1 + m_isOrthographic: 1 + m_isCullingEnabled: 0 + m_horizontalMapping: 0 + m_verticalMapping: 0 + m_uvLineOffset: 0 + m_geometrySortingOrder: 0 + m_IsTextObjectScaleStatic: 0 + m_VertexBufferAutoSizeReduction: 0 + m_useMaxVisibleDescender: 1 + m_pageToDisplay: 1 + m_margin: {x: 0, y: 0, z: 0, w: 0} + m_isUsingLegacyAnimationComponent: 0 + m_isVolumetricText: 0 + m_hasFontAssetChanged: 0 + m_baseMaterial: {fileID: 0} + m_maskOffset: {x: 0, y: 0, z: 0, w: 0} diff --git a/Assets/Prefabs/DynamicUI/Elements/Text.prefab.meta b/Assets/Prefabs/DynamicUI/Elements/Text.prefab.meta new file mode 100644 index 00000000..b6932d24 --- /dev/null +++ b/Assets/Prefabs/DynamicUI/Elements/Text.prefab.meta @@ -0,0 +1,7 @@ +fileFormatVersion: 2 +guid: 4b0098f7176cb49d6ac968b7d3ca4c51 +PrefabImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/Scenes/SampleScene.unity b/Assets/Scenes/SampleScene.unity index ed73ef78..ea007493 100644 --- a/Assets/Scenes/SampleScene.unity +++ b/Assets/Scenes/SampleScene.unity @@ -2696,6 +2696,7 @@ MonoBehaviour: m_EditorClassIdentifier: connectedGameElement: {fileID: 0} inspectorRect: {fileID: 1555019811} + containers: [] --- !u!1 &1350209957 GameObject: m_ObjectHideFlags: 0 @@ -3726,7 +3727,7 @@ MonoBehaviour: openPrefabs: 0 prefabs: [] idRef: - _Keys: 526a8851fe85233e7cc810cd2b8a733faa68e71a62b99912cf2f06228873853005edfb00aa354575a31cc8ad1ac7b966f52afefc8351b636e2b71574be99675b6400dfc3607f0069e96d5112b3681f5fcf550a7f3749f10c2c006f2e23d1db370e64801184e106752a681216ffa3837998b5a5688fe724520d14109f10d172186ee5fbb117f224110b067c1b61cb6e75d9b619fa92551a320786221b3b03ec208e22f046f695e21830fcd93d5728ea479cf46b8ba7516b16ed2e96b5bbb6e20e0c6272c125d7806f67cd366983232521642549cf9088373bbcb047a020454d5bb82aa5499ca2e04b4891be89dac6ab0e659c5a08b1215a41b815970146d88b119ec54e97b8c60707cd2b47c307f6a055723ad0f074e03e69319b6e78f521fa20e22f14eb87ebaa2c5d9ec5792568c53e74417380a87c864288e4671d588e1210db981f281d4a325d1a036b29e53abc3829cf12c86a843666a9d2726c53c784328db49f8d499d214074d166a5105c5d3da29f4627a1da7a5e317a2d1042614f5281c64a6625b57e38c6bf413c35ce7d12821326d7a7c36313210e18f42f147d60db1f64f3ada3bb2d6666d31a094491222bbde8f495825a4e2f05ece33b3881253ca117543370bf2531ac8ebf10b7f565a03ac9712b88ca58c516c5a7b6d8f161e8f9dd682d3dee657e0ec3e9f39a3e76118743006e0ffa3a958fe6b6ca98245845d258f66aa26d222a2ff31dc5e16529d84e972e95f1f208f318fcbd24a42f1a1594d13a0cca1e4d0b9a28c0e4238a4cd5432183fe0a3d37c5600352a5affe32a0f1cca64d60c95d6de43a2f1ab3ec2f8dafe7e182ac1c0b579975acc6cca75b9cf61ff356e4ff757ac4f0e2446c5178b3cc3b0938e3500b2c3eb04c15e369388d95cb10d3df8656508d984144c6391548fc5f9307b1937f462b1e94944b8a5d47e5baaa4a0ec664069a951142fc403ed6b4a90102e5146519f66f6d35134e18b132d9ec6c3ec954f282992fe09c9f2a9752fc7c47b5d52b06e06eab61a6d10e4d7cc274d62caa67eb540f7f4be5844b6a66281ce82d2f660704e68bd01df34b4f7483a3a0ebff69576b98633aaa8921a5ddbe04814bd97aac297cdb1235373261c4cec06828ec556592c57c95cb2c5c853ad052230733029b09f8776f245772a3ca0276dcc8b833ca146a1411560f76a926a9289a1bf169092fa58ddf9c3a7517c82635364a7f4df403890f9d1ef144fb812196cd7f0c77286780f491baec2cdaf4fd482fda400ba6f61b9da4000716c29e6ca1845b5768bcaf0ecfc98bbb39185d35a921a8142041153dc39aaa1c286f97b630278db035b399727f338ebd32b154b50236b0376b4d721d6667e4fc106c1a9fcd2a75ee765300a244e46bac30d36f74ee5f1e5e1ecf22e3b47049ce6796831219efef073b663eaf360df286471f4d94f76f0eb074884263b2a75d1863ce0aae615892403e884faa62326ad43eaa2a9522b5d7f75bcc785fcdad451c3b561268034425ee4e712d804046ec580d17a1097cc8f6ad5afff6d32e0ef214326ce60b1f02d1fa31e71c6c1ca8c75d472e9349f4c45f8c4dc0c2013af81c5d6342b3d460e1390a18b2032b19179f0c5109edb220eddd4a554c13b12cb5d56721429066885700c558f421713be1a14442bb774cca3425cb341fcaf3fbd03ccf786c4d5ba70595a869cf6fe72c22325567a5649773f2357847af0759d10313b725cfe3c24772aa470214482b6154a356625d3cfd5f01ca892d756a72e68478521c260cfa05f49dda051e95883b60da9c51a244d0c0efe9d8666defd20837617d7266b7c4b857af913f62f77c9653c48e6531de7737b6edf43c4fb65263c69d520ca31f8267043c187cb4a2308b15597153743145a4f867105aca84b71279cbaf66bfaa5ba7832ffb560a905f13c6ddfc56d95928071c08fb3b1fb5c7c5200b0056ee483116cf9b411d5add2ab42d68210eab747ff3c96d3a504da8889e1b9f6a76e44a45824db5863649a09878ada45b093fff39b97a41162843c42da16cac080e6d98e7aec85f367b53fb8ec0f6007f0600beb18fe2b7e76ee911c7c76ae00c14c122f29acc03601a51f08a4016e1082f6d7eea356c2d4766a7c4e03aa5e33455a9d65f214d9d8402a2681f2dbdd87b070a985bebf6d6a81097a7bf6f1b653f6d44ca68c07e191e3105186bfcf1e65731b726cef277b7a02e2f4f8ba6de14e73c29b17188403b8622b78df10f42a4017cfff026423332e5732a39eecea4c4101a0158da5ca71f8e0cacf1a805a8b07076b2f15811115bf709cdfeb27a2a54c77a62f3f016365a2b209de610da2415e4793787e44c9401f65bb01b6f5693eb1d01b923a2b5bf5a3f57c537732b4a1ce41e1dd3bc5c8f84196316b39ae5142b724ec80f2101722eba6ec83b11cc7422a66c365139bf2fc07134f6c0358c0bda930f573d9dc4051c541157fd8ac87b1d9952a64ba6e19ca69e2499417fddbe2caa24c1a561f21387762d2def8c67a4f06e2bc76e0cb0d75f9409b22d34593aa82d7ba7ae89207f8b652d5f423bce6076d56121e00caac4b88c2c7dcb083a94c883285aa4d5c6ce0a8162bfdd6753d123843ddced44e075745b023dbb7e5b896e8269c01328054c9b302a1ab4da484855f13539de7736f3892f04d9f6479188c48f2cd00d4fa9d9c99a7201753abb270b443240a506dad2e62f21bcf924dbc733497deec366e53a852b5d6e466fed752cfb7898b19bdc423679483d7065d2ed753932d34255148ed5933b2f9bb6e6a9e268170b63bcea6793c524c3515736dfa68f07f4c3e5cd2819166dba29f321139f0d5a074dc689b94fcb3f83cf281fd236e5292abdda6dc835402586d5d0c1605cee625fb13d2d6d18c0428f254a59f1f69a0ef2e209aa3a5f6e2ef35ef170e07360261e3a3ede074843437e1dfbee809a1671c43e2f82acbcd800430f3a0f274f621bc623782b35791639d9b3d6a7a4a251738a9dcae15d1d2c629ec1dee87cac94318016b3a41242a73e5469a8f9e5305b1a9e52653be5bb871d51da8e739a2dbc794808278eefad6148f68c8cf374337c311ef987ce12cf173b716a0b132fe4277edbdd4e22f732d40ef01d45592e93a97ca93fa95e5a129817e09c00a6478b8824b30bce51819f29142579bf2f14716a04ec784291717a27138999bca5ced2397ca56aa623c557fa0aea6b7c2b2d37d36ecd046c4031e66938e3bac7e8e2834609b33cd57e178eca6b83c7852308adbe3e94d428359a07b5400093c0f470edd76c4e79870e9eaba95c32283d069372be6e79067bb6ab7ca454796a807a3129056bd4516d76698e182e2bcd6bccd4d0d55bd256e985ffc3c546e2bb353081161d28e9f2b17c68842a61ffbca8999ef095525156bae067ce736817b45824c349af41156b1c1de1a70c577fb57abce4d3570d25e2df2a5b3cc1489ae5994cd4f9624895167ccd2c878e56b79ca0e2b6cfb2425d4b4aa628d99c27562c7d03f23f7d7819c328ce578ae1527135e0f7dda3ff6a97dca81f440971457a5478000a8b6376e1d8360c581b142d9608e7a1456bfa07b11db9cad86b165ea900c6a33576f6669b6509fca26e78181e3ede275a8dd608e99eab8ab79fb62091b490f2856d9b4217a75c73f0925d24f926913197ec393b9de88cf0bdbdcf010bcbb3426c6c6d7e45accf53ccbe9060865688a783570c0b104493af50b47d63cdef662cf94f80351be43050530347601dddf3f456dd262d70d44b89935d88372e86a8cee0b3492bd7bd8d9f26bbb70cfe339272c1880d54ea6c44dbfb085e779397802554e9bf30d9e0e167af78f92c74a879380f050748667067538e266767fc005c1939ca0c1ea78a5417c0d02940b651858937153a68779e2ac44926202b6575e98014203e3ea29e6086c3ac7102284564acf772d0414ace1d3510e7224a5ade01287e0be64f896976eb354cd453dd6c74b85fa2e828b9d4c8b9fdf7d24683ea1f5d51667f1d5e15238dfce40c6aa371127c5bdaaa470b279155bdd3ad6d9730674a2c76017713a8a6b681a4d32ac75e5c6e094fa25e94676779f8d5da313d6e0934833ec218748a6ab334f3c665ab98e2e4d0e388478e09b6c50e887e177c2785ed64615806e08b1e6b46aa6d77d33232a00d0a9e1f09ae3d730b78d804f67dd0a3864c364a40dbc45b01f48e388ad267be45e0da793a5a1c4adc1a0557652262c47b11fe1e96831e163005de15e0fb03221f68b5285849dde06880275b1fe340dba9ac4b77d44955c8fff1aa3ec7ce951ee81cc70492c6e23b11207815a53ccaebba464132d331f694d66968042f655630447ceb4524f930ad89858d646db8ffaccc4a5544b8dbae93ee5fc7221100bbe767782751d39f505d3e46807a5f1007aba41b426033ea248231afbc4820d464750dae792b485f35f3da671b68c470c6f7a0e967032bfc144474afdf073229c26b55bebe32404fecaaae93c74ce2f2e2b42f0a3340f1adc28705b45160767200e0055d2a29c8d707be4a4cbf309d7b188aeeb4396969bfa396f9cdaa0a5fb2ccc36c18b83e1d0c7c0612f18a3d6df22581ccdb4f3ec869b63bff3fdd6a7eede202e67d624acca95905cebf8377cb9ad6f957d6c17c9c7103fc9e83c122d0ed77dbf077a81090dbb52382496f07e63f079a15d6c254af5f9f58805fe84e95842a43c8a098540f3976cd731b00191ff41e2175a4c759503476afe9fe6e300d9847f88b4d2f7928a47323a00b1f6ca17ac673be392639b47c6c03e9b7c20fcb46da0c63f9a56c2597491a17ebf95a54e25163c4e2ef2b8ff153f745cd9d20997c11191ad330651f32975683415037232d20cceb1df1072bef44313d81ec1a65d4e8b37283aa7ff4022af362109e2f2c046a22d133343118402fce0841ce4eea74ef6b3011a50766a47b3c19c87847a134bf8204e4ed2a61a6801b71d94a7da1fe74de63babf232505286ef155af18ae4a6e96bb747f19561e72b38fd7ae012870ac4269fb76048deaeb8cd4eec2230a55a2690825a3568416d70ae562427dd5bc4403fc346500705927a4eb212c63f36e41d3df3e7d298f24eada7da53229579148e75640d90c0cacd20fd3d11862168be888de916169c0e48b27b6757d3627fefc7d6914ba33b8b137cc9492aa430c88f1098dba073930de2672b5b1567fd6f7162a2a64072a451ccf2c5994d52e + _Keys: 526a8851fe85233e7cc810cd2b8a733faa68e71a62b99912cf2f06228873853005edfb00aa354575a31cc8ad1ac7b966f52afefc8351b636e2b71574be99675b6400dfc3607f0069e96d5112b3681f5fcf550a7f3749f10c2c006f2e23d1db370e64801184e106752a681216ffa3837998b5a5688fe724520d14109f10d172186ee5fbb117f224110b067c1b61cb6e75d9b619fa92551a320786221b3b03ec208e22f046f695e21830fcd93d5728ea479cf46b8ba7516b16ed2e96b5bbb6e20e0c6272c125d7806f67cd366983232521642549cf9088373bbcb047a020454d5bb82aa5499ca2e04b4891be89dac6ab0e659c5a08b1215a41b815970146d88b119ec54e97b8c60707cd2b47c307f6a055723ad0f074e03e69319b6e78f521fa20e22f14eb87ebaa2c5d9ec5792568c53e74417380a87c864288e4671d588e1210db981f281d4a325d1a036b29e53abc3829cf12c86a843666a9d2726c53c784328db49f8d499d214074d166a5105c5d3da29f4627a1da7a5e317a2d1042614f5281c64a6625b57e38c6bf413c35ce7d12821326d7a7c36313210e18f42f147d60db1f64f3ada3bb2d6666d31a094491222bbde8f495825a4e2f05ece33b3881253ca117543370bf2531ac8ebf10b7f565a03ac9712b88ca58c516c5a7b6d8f161e8f9dd682d3dee657e0ec3e9f39a3e76118743006e0ffa3a958fe6b6ca98245845d258f66aa26d222a2ff31dc5e16529d84e972e95f1f208f318fcbd24a42f1a1594d13a0cca1e4d0b9a28c0e4238a4cd5432183fe0a3d37c5600352a5affe32a0f1cca64d60c95d6de43a2f1ab3ec2f8dafe7e182ac1c0b579975acc6cca75b9cf61ff356e4ff757ac4f0e2446c5178b3cc3b0938e3500b2c3eb04c15e369388d95cb10d3df8656508d984144c6391548fc5f9307b1937f462b1e94944b8a5d47e5baaa4a0ec664069a951142fc403ed6b4a90102e5146519f66f6d35134e18b132d9ec6c3ec954f282992fe09c9f2a9752fc7c47b5d52b06e06eab61a6d10e4d7cc274d62caa67eb540f7f4be5844b6a66281ce82d2f660704e68bd01df34b4f7483a3a0ebff69576b98633aaa8921a5ddbe04814bd97aac297cdb1235373261c4cec06828ec556592c57c95cb2c5c853ad052230733029b09f8776f245772a3ca0276dcc8b833ca146a1411560f76a926a9289a1bf169092fa58ddf9c3a7517c82635364a7f4df403890f9d1ef144fb812196cd7f0c77286780f491baec2cdaf4fd482fda400ba6f61b9da4000716c29e6ca1845b5768bcaf0ecfc98bbb39185d35a921a8142041153dc39aaa1c286f97b630278db035b399727f338ebd32b154b50236b0376b4d721d6667e4fc106c1a9fcd2a75ee765300a244e46bac30d36f74ee5f1e5e1ecf22e3b47049ce6796831219efef073b663eaf360df286471f4d94f76f0eb074884263b2a75d1863ce0aae615892403e884faa62326ad43eaa2a9522b5d7f75bcc785fcdad451c3b561268034425ee4e712d804046ec580d17a1097cc8f6ad5afff6d32e0ef214326ce60b1f02d1fa31e71c6c1ca8c75d472e9349f4c45f8c4dc0c2013af81c5d6342b3d460e1390a18b2032b19179f0c5109edb220eddd4a554c13b12cb5d56721429066885700c558f421713be1a14442bb774cca3425cb341fcaf3fbd03ccf786c4d5ba70595a869cf6fe72c22325567a5649773f2357847af0759d10313b725cfe3c24772aa470214482b6154a356625d3cfd5f01ca892d756a72e68478521c260cfa05f49dda051e95883b60da9c51a244d0c0efe9d8666defd20837617d7266b7c4b857af913f62f77c9653c48e6531de7737b6edf43c4fb65263c69d520ca31f8267043c187cb4a2308b15597153743145a4f867105aca84b71279cbaf66bfaa5ba7832ffb560a905f13c6ddfc56d95928071c08fb3b1fb5c7c5200b0056ee483116cf9b411d5add2ab42d68210eab747ff3c96d3a504da8889e1b9f6a76e44a45824db5863649a09878ada45b093fff39b97a41162843c42da16cac080e6d98e7aec85f367b53fb8ec0f6007f0600beb18fe2b7e76ee911c7c76ae00c14c122f29acc03601a51f08a4016e1082f6d7eea356c2d4766a7c4e03aa5e33455a9d65f214d9d8402a2681f2dbdd87b070a985bebf6d6a81097a7bf6f1b653f6d44ca68c07e191e3105186bfcf1e65731b726cef277b7a02e2f4f8ba6de14e73c29b17188403b8622b78df10f42a4017cfff026423332e5732a39eecea4c4101a0158da5ca71f8e0cacf1a805a8b07076b2f15811115bf709cdfeb27a2a54c77a62f3f016365a2b209de610da2415e4793787e44c9401f65bb01b6f5693eb1d01b923a2b5bf5a3f57c537732b4a1ce41e1dd3bc5c8f84196316b39ae5142b724ec80f2101722eba6ec83b11cc7422a66c365139bf2fc07134f6c0358c0bda930f573d9dc4051c541157fd8ac87b1d9952a64ba6e19ca69e2499417fddbe2caa24c1a561f21387762d2def8c67a4f06e2bc76e0cb0d75f9409b22d34593aa82d7ba7ae89207f8b652d5f423bce6076d56121e00caac4b88c2c7dcb083a94c883285aa4d5c6ce0a8162bfdd6753d123843ddced44e075745b023dbb7e5b896e8269c01328054c9b302a1ab4da484855f13539de7736f3892f04d9f6479188c48f2cd00d4fa9d9c99a7201753abb270b443240a506dad2e62f21bcf924dbc733497deec366e53a852b5d6e466fed752cfb7898b19bdc423679483d7065d2ed753932d34255148ed5933b2f9bb6e6a9e268170b63bcea6793c524c3515736dfa68f07f4c3e5cd2819166dba29f321139f0d5a074dc689b94fcb3f83cf281fd236e5292abdda6dc835402586d5d0c1605cee625fb13d2d6d18c0428f254a59f1f69a0ef2e209aa3a5f6e2ef35ef170e07360261e3a3ede074843437e1dfbee809a1671c43e2f82acbcd800430f3a0f274f621bc623782b35791639d9b3d6a7a4a251738a9dcae15d1d2c629ec1dee87cac94318016b3a41242a73e5469a8f9e5305b1a9e52653be5bb871d51da8e739a2dbc794808278eefad6148f68c8cf374337c311ef987ce12cf173b716a0b132fe4277edbdd4e22f732d40ef01d45592e93a97ca93fa95e5a129817e09c00a6478b8824b30bce51819f29142579bf2f14716a04ec784291717a27138999bca5ced2397ca56aa623c557fa0aea6b7c2b2d37d36ecd046c4031e66938e3bac7e8e2834609b33cd57e178eca6b83c7852308adbe3e94d428359a07b5400093c0f470edd76c4e79870e9eaba95c32283d069372be6e79067bb6ab7ca454796a807a3129056bd4516d76698e182e2bcd6bccd4d0d55bd256e985ffc3c546e2bb353081161d28e9f2b17c68842a61ffbca8999ef095525156bae067ce736817b45824c349af41156b1c1de1a70c577fb57abce4d3570d25e2df2a5b3cc1489ae5994cd4f9624895167ccd2c878e56b79ca0e2b6cfb2425d4b4aa628d99c27562c7d03f23f7d7819c328ce578ae1527135e0f7dda3ff6a97dca81f440971457a5478000a8b6376e1d8360c581b142d9608e7a1456bfa07b11db9cad86b165ea900c6a33576f6669b6509fca26e78181e3ede275a8dd608e99eab8ab79fb62091b490f2856d9b4217a75c73f0925d24f926913197ec393b9de88cf0bdbdcf010bcbb3426c6c6d7e45accf53ccbe9060865688a783570c0b104493af50b47d63cdef662cf94f80351be43050530347601dddf3f456dd262d70d44b89935d88372e86a8cee0b3492bd7bd8d9f26bbb70cfe339272c1880d54ea6c44dbfb085e779397802554e9bf30d9e0e167af78f92c74a879380f050748667067538e266767fc005c1939ca0c1ea78a5417c0d02940b651858937153a68779e2ac44926202b6575e98014203e3ea29e6086c3ac7102284564acf772d0414ace1d3510e7224a5ade01287e0be64f896976eb354cd453dd6c74b85fa2e828b9d4c8b9fdf7d24683ea1f5d51667f1d5e15238dfce40c6aa371127c5bdaaa470b279155bdd3ad6d9730674a2c76017713a8a6b681a4d32ac75e5c6e094fa25e94676779f8d5da313d6e0934833ec218748a6ab334f3c665ab98e2e4d0e388478e09b6c50e887e177c2785ed64615806e08b1e6b46aa6d77d33232a00d0a9e1f09ae3d730b78d804f67dd0a3864c364a40dbc45b01f48e388ad267be45e0da793a5a1c4adc1a0557652262c47b11fe1e96831e163005de15e0fb03221f68b5285849dde06880275b1fe340dba9ac4b77d44955c8fff1aa3ec7ce951ee81cc70492c6e23b11207815a53ccaebba464132d331f694d66968042f655630447ceb4524f930ad89858d646db8ffaccc4a5544b8dbae93ee5fc7221100bbe767782751d39f505d3e46807a5f1007aba41b426033ea248231afbc4820d464750dae792b485f35f3da671b68c470c6f7a0e967032bfc144474afdf073229c26b55bebe32404fecaaae93c74ce2f2e2b42f0a3340f1adc28705b45160767200e0055d2a29c8d707be4a4cbf309d7b188aeeb4396969bfa396f9cdaa0a5fb2ccc36c18b83e1d0c7c0612f18a3d6df22581ccdb4f3ec869b63bff3fdd6a7eede202e67d624acca95905cebf8377cb9ad6f957d6c17c9c7103fc9e83c122d0ed77dbf077a81090dbb52382496f07e63f079a15d6c254af5f9f58805fe84e95842a43c8a098540f3976cd731b00191ff41e2175a4c759503476afe9fe6e300d9847f88b4d2f7928a47323a00b1f6ca17ac673be392639b47c6c03e9b7c20fcb46da0c63f9a56c2597491a17ebf95a54e25163c4e2ef2b8ff153f745cd9d20997c11191ad330651f32975683415037232d20cceb1df1072bef44313d81ec1af4022af362109e2f2c046a22d133343118402fce0841ce4eea74ef6b3011a50766a47b3c19c87847a134bf8204e4ed2a61a6801b71d94a7d2505286ef155af18ae4a6e96bb747f19561e72b38fd7ae012870ac4269fb76048deaeb8cd4eec2230a55a2690825a3568416d70ae562427dd5bc4403fc346500705927a4eb212c63f36e41d3df3e7d298f24eada7da53229579148e75640d90c0cacd20fd3d11862168be888de916169c0e48b27b6757d3627fefc7d6914ba33b8b137cc9492aa430c88f1098dba073930de2672b5b1567fd6f7162a2a64072a451ccf2c5994d52e5bbfe973432468198e568f78da72731274c4468ee18fc367d4dc573e3c894702f74d106b78d3cd639abd3cfef63523236f60c0820b69a9687bfae382678d6e451af4bf491b069c3f5b7650edaecae8503862d4b8df032e396fa51cfe8a26f82ac953246344f2490055701c155611592b394b9a3c1ee2f55a1bf1f247ccd2d2694ad889b2a6521d6ef8a3102955feb74a8770a5d5a1229266ec4babb2d341af68b75b7f20341902746809447bd2cc041cc65840a4d302386b6bef9ff2fdcf41490c571f4e8127805e731a6c98de179420 _Values: - {fileID: 11500000, guid: 4e29b1a8efbd4b44bb3f3716e73f07ff, type: 3} - {fileID: 11500000, guid: fe87c0e1cc204ed48ad3b37840f39efc, type: 3} @@ -4161,7 +4162,6 @@ MonoBehaviour: - {fileID: 1350209959} - {fileID: 11500000, guid: 8a8695521f0d02e499659fee002a26c2, type: 3} - {fileID: 3882558575301537220, guid: 6868f1f1eb20a43eea8d90883b83de2c, type: 3} - - {fileID: 2405710526920421598, guid: 6868f1f1eb20a43eea8d90883b83de2c, type: 3} - {fileID: 641240999616330488, guid: 6868f1f1eb20a43eea8d90883b83de2c, type: 3} - {fileID: 2546924885880613247, guid: 6da1a64e31165409abe1bf53013547e0, type: 3} - {fileID: 1295357895} @@ -4169,7 +4169,6 @@ MonoBehaviour: - {fileID: 11500000, guid: 07a9bbc07d791482f963a422bfc8ae9b, type: 3} - {fileID: 1751046927372055580, guid: 6868f1f1eb20a43eea8d90883b83de2c, type: 3} - {fileID: 2642348292953561022, guid: 6da1a64e31165409abe1bf53013547e0, type: 3} - - {fileID: 1367203413920508703, guid: 6868f1f1eb20a43eea8d90883b83de2c, type: 3} - {fileID: 4529119705401455497, guid: 94ed5dfb5df8c408faa267d2915aaeeb, type: 3} - {fileID: 1070278988301002068, guid: 94ed5dfb5df8c408faa267d2915aaeeb, type: 3} - {fileID: 1212126413356896021, guid: 94ed5dfb5df8c408faa267d2915aaeeb, type: 3} @@ -4191,6 +4190,32 @@ MonoBehaviour: - {fileID: 9019429101014728339, guid: 94ed5dfb5df8c408faa267d2915aaeeb, type: 3} - {fileID: 948417242699321966, guid: 94ed5dfb5df8c408faa267d2915aaeeb, type: 3} - {fileID: 5213022013272568639, guid: 94ed5dfb5df8c408faa267d2915aaeeb, type: 3} + - {fileID: 4815310443098260762, guid: 94ed5dfb5df8c408faa267d2915aaeeb, type: 3} + - {fileID: 8863047526699937627, guid: 94ed5dfb5df8c408faa267d2915aaeeb, type: 3} + - {fileID: 2522200636602697985, guid: 94ed5dfb5df8c408faa267d2915aaeeb, type: 3} + - {fileID: 4146383444293307128, guid: 94ed5dfb5df8c408faa267d2915aaeeb, type: 3} + - {fileID: 9196514445407840680, guid: 6868f1f1eb20a43eea8d90883b83de2c, type: 3} + - {fileID: 2155341055219784103, guid: 6868f1f1eb20a43eea8d90883b83de2c, type: 3} + - {fileID: 7819072094691725340, guid: 6868f1f1eb20a43eea8d90883b83de2c, type: 3} + - {fileID: 225916005459818471, guid: 6868f1f1eb20a43eea8d90883b83de2c, type: 3} + - {fileID: 8315257099010545835, guid: 6868f1f1eb20a43eea8d90883b83de2c, type: 3} + - {fileID: 4055300132851975849, guid: 6868f1f1eb20a43eea8d90883b83de2c, type: 3} + - {fileID: 6615467020619937658, guid: 6868f1f1eb20a43eea8d90883b83de2c, type: 3} + - {fileID: 2695193391143546800, guid: 6868f1f1eb20a43eea8d90883b83de2c, type: 3} + - {fileID: 5446580967707006926, guid: 6868f1f1eb20a43eea8d90883b83de2c, type: 3} + - {fileID: 2607937346778766047, guid: 6868f1f1eb20a43eea8d90883b83de2c, type: 3} + - {fileID: 8314584144366428067, guid: 4b0098f7176cb49d6ac968b7d3ca4c51, type: 3} + - {fileID: 1590546503192305588, guid: 4b0098f7176cb49d6ac968b7d3ca4c51, type: 3} + - {fileID: 4146383444293307128, guid: 4b0098f7176cb49d6ac968b7d3ca4c51, type: 3} + - {fileID: 11500000, guid: bd156b66e112a4120a775c14113c0738, type: 3} + - {fileID: 1511802765271541473, guid: 4b0098f7176cb49d6ac968b7d3ca4c51, type: 3} + - {fileID: 4303436613740383453, guid: 4b0098f7176cb49d6ac968b7d3ca4c51, type: 3} + - {fileID: 4815310443098260762, guid: 4b0098f7176cb49d6ac968b7d3ca4c51, type: 3} + - {fileID: 2522200636602697985, guid: 4b0098f7176cb49d6ac968b7d3ca4c51, type: 3} + - {fileID: 8091948658150366110, guid: 4b0098f7176cb49d6ac968b7d3ca4c51, type: 3} + - {fileID: 8863047526699937627, guid: 4b0098f7176cb49d6ac968b7d3ca4c51, type: 3} + - {fileID: 2642348292953561022, guid: 4b0098f7176cb49d6ac968b7d3ca4c51, type: 3} + - {fileID: 2546924885880613247, guid: 4b0098f7176cb49d6ac968b7d3ca4c51, type: 3} --- !u!4 &1926461710 Transform: m_ObjectHideFlags: 0 diff --git a/Assets/Scripts/Base/Manager/BasePrefabsCollection.cs b/Assets/Scripts/Base/Manager/BasePrefabsCollection.cs index 84bb6d98..d2554a31 100644 --- a/Assets/Scripts/Base/Manager/BasePrefabsCollection.cs +++ b/Assets/Scripts/Base/Manager/BasePrefabsCollection.cs @@ -38,4 +38,5 @@ public class BasePrefabsCollection : SerializedScriptableObject [Title("DynamicUI相关")] public GameObject dynamicUIContainer; public GameObject inputField; + public GameObject text; } diff --git a/Assets/Scripts/DynamicUI/DynamicUIContainer.cs b/Assets/Scripts/DynamicUI/DynamicUIContainer.cs index be882842..6cfa7dee 100644 --- a/Assets/Scripts/DynamicUI/DynamicUIContainer.cs +++ b/Assets/Scripts/DynamicUI/DynamicUIContainer.cs @@ -1,5 +1,6 @@ using System.Collections; using System.Collections.Generic; +using TMPro; using UnityEngine; using UnityEngine.Serialization; @@ -7,6 +8,7 @@ namespace Ichni.Editor { public class DynamicUIContainer : MonoBehaviour { + public TMP_Text title; public List dynamicUIElements = new List(); [FormerlySerializedAs("container")] public RectTransform rect; } diff --git a/Assets/Scripts/DynamicUI/DynamicUIElements/DynamicUIElement.cs b/Assets/Scripts/DynamicUI/DynamicUIElements/DynamicUIElement.cs index 678db2b2..100a5b4b 100644 --- a/Assets/Scripts/DynamicUI/DynamicUIElements/DynamicUIElement.cs +++ b/Assets/Scripts/DynamicUI/DynamicUIElements/DynamicUIElement.cs @@ -1,15 +1,32 @@ using System.Collections; using System.Collections.Generic; using Ichni.RhythmGame; +using TMPro; using UnityEngine; namespace Ichni.Editor { public abstract class DynamicUIElement : MonoBehaviour { - public GameElement connectedGameElement => EditorManager.instance.uiManager.inspector.connectedGameElement; - public bool isAlwaysUpdated; - public abstract void Initialize(string parameterName); + public TMP_Text title; + protected GameElement connectedGameElement => EditorManager.instance.uiManager.inspector.connectedGameElement; + + /// + /// 参数名,通过反射获取饿修改对应变量的值 + /// + public string parameterName; + + /// + /// 是否始终更新,如果子类可能用到此变量,则在子类中写Update即可 + /// + public bool isAlwaysUpdated; + + public virtual void Initialize(string title, string parameterName) + { + this.parameterName = parameterName; + this.title.text = title; + } + //public abstract void ApplyParameters(); } } \ No newline at end of file diff --git a/Assets/Scripts/DynamicUI/DynamicUIElements/DynamicUIInputField.cs b/Assets/Scripts/DynamicUI/DynamicUIElements/DynamicUIInputField.cs index e0de7ed0..8d00c309 100644 --- a/Assets/Scripts/DynamicUI/DynamicUIElements/DynamicUIInputField.cs +++ b/Assets/Scripts/DynamicUI/DynamicUIElements/DynamicUIInputField.cs @@ -7,14 +7,13 @@ namespace Ichni.Editor { public class DynamicUIInputField : DynamicUIElement { - public string parameterName; public TMP_InputField inputField; - public override void Initialize(string parameterName) + public override void Initialize(string title, string parameterName) { - this.parameterName = parameterName; - inputField.text = connectedGameElement.GetType().GetField(parameterName).GetValue(connectedGameElement).ToString(); - inputField.onEndEdit.AddListener(ApplyParameters); + base.Initialize(title, parameterName); + inputField.text = connectedGameElement.GetType().GetField(parameterName).GetValue(connectedGameElement).ToString(); //获取对应变量的值 + inputField.onEndEdit.AddListener(ApplyParameters); //输入结束后修改变量 } private void ApplyParameters(string text) diff --git a/Assets/Scripts/DynamicUI/DynamicUIElements/DynamicUIText.cs b/Assets/Scripts/DynamicUI/DynamicUIElements/DynamicUIText.cs new file mode 100644 index 00000000..5f45cda7 --- /dev/null +++ b/Assets/Scripts/DynamicUI/DynamicUIElements/DynamicUIText.cs @@ -0,0 +1,27 @@ +using System; +using System.Collections; +using System.Collections.Generic; +using TMPro; +using UnityEngine; + +namespace Ichni.Editor +{ + public class DynamicUIText : DynamicUIElement + { + public TMP_Text text; + + public override void Initialize(string title, string parameterName) + { + base.Initialize(title, parameterName); + text.text = connectedGameElement.GetType().GetField(parameterName).GetValue(connectedGameElement).ToString(); + } + + private void Update() + { + if (isAlwaysUpdated) + { + text.text = connectedGameElement.GetType().GetField(parameterName).GetValue(connectedGameElement).ToString(); + } + } + } +} \ No newline at end of file diff --git a/Assets/Scripts/DynamicUI/DynamicUIElements/DynamicUIText.cs.meta b/Assets/Scripts/DynamicUI/DynamicUIElements/DynamicUIText.cs.meta new file mode 100644 index 00000000..7c1f9978 --- /dev/null +++ b/Assets/Scripts/DynamicUI/DynamicUIElements/DynamicUIText.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: bd156b66e112a4120a775c14113c0738 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/Scripts/DynamicUI/Hierarchy/HierarchyTab.cs b/Assets/Scripts/DynamicUI/Hierarchy/HierarchyTab.cs index c1b8c367..9ba61562 100644 --- a/Assets/Scripts/DynamicUI/Hierarchy/HierarchyTab.cs +++ b/Assets/Scripts/DynamicUI/Hierarchy/HierarchyTab.cs @@ -93,8 +93,7 @@ namespace Ichni.Editor private void SelectGameElement() { - EditorManager.instance.uiManager.inspector.connectedGameElement = connectedGameElement; - connectedGameElement.SetUpInspector(); + EditorManager.instance.uiManager.inspector.SelectGameElement(connectedGameElement); } private void ExpandOrFold() diff --git a/Assets/Scripts/DynamicUI/Inspector/Inspector.cs b/Assets/Scripts/DynamicUI/Inspector/Inspector.cs index 594dbde6..eec39a5f 100644 --- a/Assets/Scripts/DynamicUI/Inspector/Inspector.cs +++ b/Assets/Scripts/DynamicUI/Inspector/Inspector.cs @@ -5,9 +5,58 @@ using UnityEngine; namespace Ichni.Editor { - public class Inspector : StaticWindow + public partial class Inspector : StaticWindow { public GameElement connectedGameElement; public RectTransform inspectorRect; + public List containers; + + /// + /// 先清空所有的容器,然后为当前的GameElement设置Inspector + /// + /// + public void SelectGameElement(GameElement gameElement) + { + containers.ForEach(container => Destroy(container.gameObject)); + containers.Clear(); + connectedGameElement = gameElement; + connectedGameElement.SetUpInspector(); + } + } + + public partial class Inspector + { + public DynamicUIContainer GenerateContainer(string title) + { + DynamicUIContainer container = Instantiate(EditorManager.instance.basePrefabs.dynamicUIContainer, inspectorRect).GetComponent(); + container.title.text = title; + containers.Add(container); + return container; + } + + public DynamicUIContainer GenerateContainer() + { + DynamicUIContainer container = Instantiate(EditorManager.instance.basePrefabs.dynamicUIContainer, inspectorRect).GetComponent(); + Destroy(container.title.gameObject); + containers.Add(container); + return container; + } + + public DynamicUIInputField GenerateInputField(DynamicUIContainer container, string title, string parameterName) + { + DynamicUIInputField inputField = Instantiate(EditorManager.instance.basePrefabs.inputField, container.rect).GetComponent(); + inputField.Initialize(title, parameterName); + container.dynamicUIElements.Add(inputField); + return inputField; + } + + public DynamicUIText GenerateText(DynamicUIContainer container, string title, string parameterName, bool isAlwaysUpdate = false) + { + DynamicUIText text = Instantiate(EditorManager.instance.basePrefabs.text, container.rect).GetComponent(); + text.Initialize(title, parameterName); + text.isAlwaysUpdated = isAlwaysUpdate; + container.dynamicUIElements.Add(text); + return text; + } } } \ No newline at end of file diff --git a/Assets/Scripts/GameElements/GameElement.cs b/Assets/Scripts/GameElements/GameElement.cs index d7479c0f..8e0af118 100644 --- a/Assets/Scripts/GameElements/GameElement.cs +++ b/Assets/Scripts/GameElements/GameElement.cs @@ -138,11 +138,9 @@ namespace Ichni.RhythmGame { public virtual void SetUpInspector() { - RectTransform rect = EditorManager.instance.uiManager.inspector.inspectorRect; - DynamicUIContainer container = Instantiate(EditorManager.instance.basePrefabs.dynamicUIContainer, rect).GetComponent(); - DynamicUIInputField elementNameInputField = Instantiate(EditorManager.instance.basePrefabs.inputField, container.rect).GetComponent(); - elementNameInputField.Initialize(nameof(elementName)); - container.dynamicUIElements.Add(elementNameInputField); + var container = EditorManager.instance.uiManager.inspector.GenerateContainer("Element Info"); + var nameInputField = EditorManager.instance.uiManager.inspector.GenerateInputField(container, "Element Name", nameof(elementName)); + var guidText = EditorManager.instance.uiManager.inspector.GenerateText(container, "Element GUID", nameof(elementGuid), true); } }