源战役客户端
Du kan inte välja fler än 25 ämnen Ämnen måste starta med en bokstav eller siffra, kan innehålla bindestreck ('-') och vara max 35 tecken långa.

316 rader
11 KiB

4 veckor sedan
  1. using UnityEngine;
  2. using System;
  3. using System.Collections.Generic;
  4. using LuaInterface;
  5. using LuaFramework;
  6. using System.IO;
  7. using BindType = ToLuaMenu.BindType;
  8. using UnityEngine.UI;
  9. using System.Reflection;
  10. using UnityEngine.SceneManagement;
  11. public static class CustomSettings
  12. {
  13. public static string FrameworkPath = AppConst.FrameworkRoot;
  14. public static string saveDir = FrameworkPath + "/ToLua/Source/Generate/";//"../SyEngine/Assets/LuaFramework/ToLua/Source/Generate/";
  15. public static string luaDir = AppConst.AppDataPath + "/Lua/";
  16. public static string toluaBaseType = FrameworkPath + "/ToLua/BaseType/";
  17. //public static string toluaLuaDir = FrameworkPath + "/ToLua/Lua";
  18. //导出时强制做为静态类的类型(注意customTypeList 还要添加这个类型才能导出)
  19. //unity 有些类作为sealed class, 其实完全等价于静态类
  20. public static List<Type> staticClassTypes = new List<Type>
  21. {
  22. typeof(UnityEngine.Application),
  23. typeof(UnityEngine.Time),
  24. typeof(UnityEngine.Screen),
  25. typeof(UnityEngine.SleepTimeout),
  26. typeof(UnityEngine.Input),
  27. typeof(UnityEngine.Resources),
  28. typeof(UnityEngine.Physics),
  29. typeof(UnityEngine.RenderSettings),
  30. typeof(UnityEngine.QualitySettings),
  31. typeof(UnityEngine.GL),
  32. };
  33. //附加导出委托类型(在导出委托时, customTypeList 中牵扯的委托类型都会导出, 无需写在这里)
  34. public static DelegateType[] customDelegateList =
  35. {
  36. _DT(typeof(Action)),
  37. _DT(typeof(UnityEngine.Events.UnityAction)),
  38. };
  39. //在这里添加你要导出注册到lua的类型列表
  40. public static BindType[] customTypeList =
  41. {
  42. //------------------------为例子导出--------------------------------
  43. //_GT(typeof(TestEventListener)),
  44. //_GT(typeof(TestAccount)),
  45. //_GT(typeof(Dictionary<int, TestAccount>)).SetLibName("AccountMap"),
  46. //_GT(typeof(KeyValuePair<int, TestAccount>)),
  47. //_GT(typeof(TestExport)),
  48. //_GT(typeof(TestExport.Space)),
  49. //-------------------------------------------------------------------
  50. _GT(typeof(Debugger)).SetNameSpace(null),
  51. #if USING_DOTWEENING
  52. _GT(typeof(DG.Tweening.DOTween)),
  53. _GT(typeof(DG.Tweening.Tween)).SetBaseType(typeof(System.Object)).AddExtendType(typeof(DG.Tweening.TweenExtensions)),
  54. _GT(typeof(DG.Tweening.Sequence)).AddExtendType(typeof(DG.Tweening.TweenSettingsExtensions)),
  55. _GT(typeof(DG.Tweening.Tweener)).AddExtendType(typeof(DG.Tweening.TweenSettingsExtensions)),
  56. _GT(typeof(DG.Tweening.LoopType)),
  57. _GT(typeof(DG.Tweening.PathMode)),
  58. _GT(typeof(DG.Tweening.PathType)),
  59. _GT(typeof(DG.Tweening.RotateMode)),
  60. _GT(typeof(Component)).AddExtendType(typeof(DG.Tweening.ShortcutExtensions)),
  61. _GT(typeof(Transform)).AddExtendType(typeof(DG.Tweening.ShortcutExtensions)),
  62. _GT(typeof(Light)).AddExtendType(typeof(DG.Tweening.ShortcutExtensions)),
  63. _GT(typeof(Material)).AddExtendType(typeof(DG.Tweening.ShortcutExtensions)),
  64. _GT(typeof(Rigidbody)).AddExtendType(typeof(DG.Tweening.ShortcutExtensions)),
  65. _GT(typeof(Camera)).AddExtendType(typeof(DG.Tweening.ShortcutExtensions)),
  66. _GT(typeof(AudioSource)).AddExtendType(typeof(DG.Tweening.ShortcutExtensions)),
  67. //_GT(typeof(LineRenderer)).AddExtendType(typeof(DG.Tweening.ShortcutExtensions)),
  68. //_GT(typeof(TrailRenderer)).AddExtendType(typeof(DG.Tweening.ShortcutExtensions)),
  69. #else
  70. _GT(typeof(Component)),
  71. _GT(typeof(Transform)),
  72. _GT(typeof(Material)),
  73. // _GT(typeof(Light)),
  74. _GT(typeof(Rigidbody)),
  75. _GT(typeof(Rigidbody2D)),
  76. _GT(typeof(Camera)),
  77. _GT(typeof(AudioSource)),
  78. _GT(typeof(Canvas)),
  79. _GT(typeof(CanvasGroup)),
  80. _GT(typeof(LineRenderer)),
  81. #endif
  82. _GT(typeof(TrailRenderer)),
  83. _GT(typeof(Behaviour)),
  84. _GT(typeof(MonoBehaviour)),
  85. _GT(typeof(GameObject)),
  86. _GT(typeof(TrackedReference)),
  87. _GT(typeof(Application)),
  88. _GT(typeof(Physics)),
  89. _GT(typeof(Collider)),
  90. _GT(typeof(Time)),
  91. _GT(typeof(Resources)),
  92. _GT(typeof(Texture)),
  93. _GT(typeof(Texture2D)),
  94. _GT(typeof(TextSpacing)),
  95. _GT(typeof(Shader)),
  96. _GT(typeof(Renderer)),
  97. _GT(typeof(WWW)),
  98. _GT(typeof(Screen)),
  99. _GT(typeof(CameraClearFlags)),
  100. _GT(typeof(AudioClip)),
  101. _GT(typeof(AssetBundle)),
  102. _GT(typeof(ParticleSystem)),
  103. _GT(typeof(AsyncOperation)).SetBaseType(typeof(System.Object)),
  104. _GT(typeof(LightType)),
  105. _GT(typeof(SleepTimeout)),
  106. _GT(typeof(Animator)),
  107. _GT(typeof(Input)),
  108. _GT(typeof(KeyCode)),
  109. _GT(typeof(SkinnedMeshRenderer)),
  110. _GT(typeof(SpriteRenderer)),
  111. _GT(typeof(TextMesh)),
  112. _GT(typeof(TextAsset)),
  113. _GT(typeof(Space)),
  114. _GT(typeof(UIDepth)),
  115. _GT(typeof(RuntimePlatform)),
  116. _GT(typeof(TextAnchor)),
  117. _GT(typeof(MeshRenderer)),
  118. //_GT(typeof(ParticleEmitter)),
  119. //_GT(typeof(ParticleRenderer)),
  120. //_GT(typeof(ParticleAnimator)),
  121. //_GT(typeof(MB3_MeshBaker)),
  122. _GT(typeof(Mesh)),
  123. _GT(typeof(MeshFilter)),
  124. _GT(typeof(BoxCollider)),
  125. _GT(typeof(MeshCollider)),
  126. _GT(typeof(SphereCollider)),
  127. _GT(typeof(CharacterController)),
  128. _GT(typeof(CapsuleCollider)),
  129. _GT(typeof(Animation)),
  130. _GT(typeof(AnimationClip)).SetBaseType(typeof(UnityEngine.Object)),
  131. _GT(typeof(AnimatorClipInfo)),
  132. _GT(typeof(AnimationState)),
  133. _GT(typeof(AnimatorCullingMode)),
  134. _GT(typeof(AnimatorStateInfo)),
  135. _GT(typeof(AnimationBlendMode)),
  136. _GT(typeof(QueueMode)),
  137. _GT(typeof(PlayMode)),
  138. _GT(typeof(WrapMode)),
  139. _GT(typeof(QualitySettings)),
  140. _GT(typeof(RenderSettings)),
  141. _GT(typeof(BlendWeights)),
  142. _GT(typeof(RenderTexture)),
  143. //for LuaFramework
  144. _GT(typeof(InlieText)),
  145. _GT(typeof(InlineSpriteManager)),
  146. _GT(typeof(RectTransform)),
  147. _GT(typeof(Text)),
  148. _GT(typeof(Outline)),
  149. _GT(typeof(InputField)),
  150. _GT(typeof(Font)),
  151. _GT(typeof(Button)),
  152. _GT(typeof(Toggle)),
  153. _GT(typeof(Slider)),
  154. _GT(typeof(Image)),
  155. _GT(typeof(Image.Type)),
  156. _GT(typeof(Image.FillMethod)),
  157. _GT(typeof(ImageExtend)),
  158. _GT(typeof(RawImageExtend)),
  159. _GT(typeof(Sprite)),
  160. _GT(typeof(RawImage)),
  161. _GT(typeof(Util)),
  162. _GT(typeof(AppConst)),
  163. _GT(typeof(EnglineVersion)),
  164. _GT(typeof(LuaHelper)),
  165. _GT(typeof(FileTools)),
  166. _GT(typeof(ByteBuffer)),
  167. _GT(typeof(LuaBehaviour)),
  168. _GT(typeof(LuaEventListener)),
  169. _GT(typeof(LuaClickListener)),
  170. _GT(typeof(LuaDragListener)),
  171. _GT(typeof(LuaDragExtendListener)),
  172. _GT(typeof(ScrollRect)),
  173. // _GT(typeof(GameManager)),
  174. _GT(typeof(DBParserManager)),
  175. _GT(typeof(AfterImageManager)),
  176. _GT(typeof(LuaManager)),
  177. _GT(typeof(PanelManager)),
  178. _GT(typeof(SoundManager)),
  179. _GT(typeof(TimerManager)),
  180. _GT(typeof(DownLoadResManager)),
  181. _GT(typeof(NetworkManager)),
  182. _GT(typeof(SocketClient)),
  183. _GT(typeof(ResourceManager)),
  184. _GT(typeof(OutsideResourceManager)),
  185. _GT(typeof(OutSideFileType)),
  186. _GT(typeof(ParticleManager)),
  187. _GT(typeof(ParticleSystemRenderer)),
  188. _GT(typeof(MapManager)),
  189. _GT(typeof(CookiesManager)),
  190. _GT(typeof(Map)),
  191. _GT(typeof(GameStateMachine)),
  192. _GT(typeof(GameMachineManager)),
  193. _GT(typeof(GameState)),
  194. _GT(typeof(LogManager)),
  195. _GT(typeof(DBParser)),
  196. _GT(typeof(HTTPRequest)),
  197. _GT(typeof(HTTPResponse)),
  198. _GT(typeof(HTTPManager)),
  199. _GT(typeof(LogType)),
  200. _GT(typeof(ParticleSystemScalingMode)),
  201. _GT(typeof(TextureWrapMode)),
  202. _GT(typeof(Rect)),
  203. _GT(typeof(Graphics)),
  204. _GT(typeof(LayoutElement)),
  205. _GT(typeof(Mask)),
  206. _GT(typeof(SDKManager)),
  207. _GT(typeof(EmptyRaycast)),
  208. _GT(typeof(ScrollRect.ScrollRectEvent)),
  209. _GT(typeof(Toggle.ToggleEvent)),
  210. _GT(typeof(InputField.SubmitEvent)),
  211. _GT(typeof(GameConfig)),
  212. _GT(typeof(NetworkReachability)),
  213. _GT(typeof(CompressHelper)),
  214. _GT(typeof(SystemInfo)),
  215. _GT(typeof(EffectMask)),
  216. _GT(typeof(Debug)),
  217. _GT(typeof(Resolution)),
  218. _GT(typeof(LayoutGroup)),
  219. _GT(typeof(GridLayoutGroup)),
  220. _GT(typeof(InputField.OnChangeEvent)),
  221. _GT(typeof(LuaOverClickListener)),
  222. _GT(typeof(VHScrollRect)),
  223. _GT(typeof(ToggleGroup)),
  224. _GT(typeof(SceneManager)),
  225. _GT(typeof(Terrain)),
  226. _GT(typeof(Slider.SliderEvent)),
  227. _GT(typeof(Matrix4x4)),
  228. _GT(typeof(ParticleSystem.MainModule)),
  229. _GT(typeof(Spine.Unity.SkeletonAnimation)),
  230. _GT(typeof(ScreenCapture)),
  231. _GT(typeof(UnityEngine.Video.VideoPlayer)),
  232. _GT(typeof(UnityEngine.Video.VideoRenderMode)),
  233. _GT(typeof(System.DateTime)),
  234. _GT(typeof(Optimizer)),
  235. _GT(typeof(UnityEngine.VerticalWrapMode)),
  236. _GT(typeof(UnityEngine.HorizontalWrapMode)),
  237. _GT(typeof(UnityEngine.MaterialPropertyBlock)),
  238. _GT(typeof(ScreenEffect)),
  239. _GT(typeof(PartBloom)),
  240. _GT(typeof(RenderBloomTexture)),
  241. _GT(typeof(RoleCameraBloom)),
  242. _GT(typeof(ChangeShaderRender)),
  243. _GT(typeof(AdaptiveText)),
  244. _GT(typeof(Radar)),//雷达图
  245. _GT(typeof(FXAAEffect)),//FXAA
  246. _GT(typeof(PostEffect)),//后处理整合
  247. // _GT(typeof(LuaPerfect.ObjectRef)),
  248. // _GT(typeof(LuaPerfect.ObjectItem)),
  249. // _GT(typeof(LuaPerfect.ObjectFormater)),
  250. _GT(typeof(RecordManager)),
  251. _GT(typeof(UnityStandardAssets.ImageEffects.BloomOptimized)),
  252. _GT(typeof(GL)),
  253. _GT(typeof(TMPro.TextMeshProUGUI)),
  254. _GT(typeof(TMPro.TMP_InputField)),
  255. _GT(typeof(RenderTextureFormat)),
  256. _GT(typeof(ParticleCollide)),
  257. _GT(typeof(ButtonExtend)),
  258. _GT(typeof(EmptyRaycastExtend)),
  259. _GT(typeof(ExtendButtonScale)),
  260. _GT(typeof(EraseHandler)),
  261. _GT(typeof(RadiusBlur)),
  262. };
  263. public static List<Type> dynamicList = new List<Type>()
  264. {
  265. /*typeof(MeshRenderer),
  266. typeof(ParticleEmitter),
  267. typeof(ParticleRenderer),
  268. typeof(ParticleAnimator),
  269. typeof(BoxCollider),
  270. typeof(MeshCollider),
  271. typeof(SphereCollider),
  272. typeof(CharacterController),
  273. typeof(CapsuleCollider),
  274. typeof(Animation),
  275. typeof(AnimationClip),
  276. typeof(AnimationState),
  277. typeof(BlendWeights),
  278. typeof(RenderTexture),
  279. typeof(Rigidbody),*/
  280. };
  281. //重载函数,相同参数个数,相同位置out参数匹配出问题时, 需要强制匹配解决
  282. //使用方法参见例子14
  283. public static List<Type> outList = new List<Type>()
  284. {
  285. };
  286. static BindType _GT(Type t)
  287. {
  288. return new BindType(t);
  289. }
  290. static DelegateType _DT(Type t)
  291. {
  292. return new DelegateType(t);
  293. }
  294. }