源战役客户端
您最多选择25个主题 主题必须以字母或数字开头,可以包含连字符 (-),并且长度不得超过35个字符
 
 
 
 
 

316 行
11 KiB

using UnityEngine;
using System;
using System.Collections.Generic;
using LuaInterface;
using LuaFramework;
using System.IO;
using BindType = ToLuaMenu.BindType;
using UnityEngine.UI;
using System.Reflection;
using UnityEngine.SceneManagement;
public static class CustomSettings
{
public static string FrameworkPath = AppConst.FrameworkRoot;
public static string saveDir = FrameworkPath + "/ToLua/Source/Generate/";//"../SyEngine/Assets/LuaFramework/ToLua/Source/Generate/";
public static string luaDir = AppConst.AppDataPath + "/Lua/";
public static string toluaBaseType = FrameworkPath + "/ToLua/BaseType/";
//public static string toluaLuaDir = FrameworkPath + "/ToLua/Lua";
//导出时强制做为静态类的类型(注意customTypeList 还要添加这个类型才能导出)
//unity 有些类作为sealed class, 其实完全等价于静态类
public static List<Type> staticClassTypes = new List<Type>
{
typeof(UnityEngine.Application),
typeof(UnityEngine.Time),
typeof(UnityEngine.Screen),
typeof(UnityEngine.SleepTimeout),
typeof(UnityEngine.Input),
typeof(UnityEngine.Resources),
typeof(UnityEngine.Physics),
typeof(UnityEngine.RenderSettings),
typeof(UnityEngine.QualitySettings),
typeof(UnityEngine.GL),
};
//附加导出委托类型(在导出委托时, customTypeList 中牵扯的委托类型都会导出, 无需写在这里)
public static DelegateType[] customDelegateList =
{
_DT(typeof(Action)),
_DT(typeof(UnityEngine.Events.UnityAction)),
};
//在这里添加你要导出注册到lua的类型列表
public static BindType[] customTypeList =
{
//------------------------为例子导出--------------------------------
//_GT(typeof(TestEventListener)),
//_GT(typeof(TestAccount)),
//_GT(typeof(Dictionary<int, TestAccount>)).SetLibName("AccountMap"),
//_GT(typeof(KeyValuePair<int, TestAccount>)),
//_GT(typeof(TestExport)),
//_GT(typeof(TestExport.Space)),
//-------------------------------------------------------------------
_GT(typeof(Debugger)).SetNameSpace(null),
#if USING_DOTWEENING
_GT(typeof(DG.Tweening.DOTween)),
_GT(typeof(DG.Tweening.Tween)).SetBaseType(typeof(System.Object)).AddExtendType(typeof(DG.Tweening.TweenExtensions)),
_GT(typeof(DG.Tweening.Sequence)).AddExtendType(typeof(DG.Tweening.TweenSettingsExtensions)),
_GT(typeof(DG.Tweening.Tweener)).AddExtendType(typeof(DG.Tweening.TweenSettingsExtensions)),
_GT(typeof(DG.Tweening.LoopType)),
_GT(typeof(DG.Tweening.PathMode)),
_GT(typeof(DG.Tweening.PathType)),
_GT(typeof(DG.Tweening.RotateMode)),
_GT(typeof(Component)).AddExtendType(typeof(DG.Tweening.ShortcutExtensions)),
_GT(typeof(Transform)).AddExtendType(typeof(DG.Tweening.ShortcutExtensions)),
_GT(typeof(Light)).AddExtendType(typeof(DG.Tweening.ShortcutExtensions)),
_GT(typeof(Material)).AddExtendType(typeof(DG.Tweening.ShortcutExtensions)),
_GT(typeof(Rigidbody)).AddExtendType(typeof(DG.Tweening.ShortcutExtensions)),
_GT(typeof(Camera)).AddExtendType(typeof(DG.Tweening.ShortcutExtensions)),
_GT(typeof(AudioSource)).AddExtendType(typeof(DG.Tweening.ShortcutExtensions)),
//_GT(typeof(LineRenderer)).AddExtendType(typeof(DG.Tweening.ShortcutExtensions)),
//_GT(typeof(TrailRenderer)).AddExtendType(typeof(DG.Tweening.ShortcutExtensions)),
#else
_GT(typeof(Component)),
_GT(typeof(Transform)),
_GT(typeof(Material)),
// _GT(typeof(Light)),
_GT(typeof(Rigidbody)),
_GT(typeof(Rigidbody2D)),
_GT(typeof(Camera)),
_GT(typeof(AudioSource)),
_GT(typeof(Canvas)),
_GT(typeof(CanvasGroup)),
_GT(typeof(LineRenderer)),
#endif
_GT(typeof(TrailRenderer)),
_GT(typeof(Behaviour)),
_GT(typeof(MonoBehaviour)),
_GT(typeof(GameObject)),
_GT(typeof(TrackedReference)),
_GT(typeof(Application)),
_GT(typeof(Physics)),
_GT(typeof(Collider)),
_GT(typeof(Time)),
_GT(typeof(Resources)),
_GT(typeof(Texture)),
_GT(typeof(Texture2D)),
_GT(typeof(TextSpacing)),
_GT(typeof(Shader)),
_GT(typeof(Renderer)),
_GT(typeof(WWW)),
_GT(typeof(Screen)),
_GT(typeof(CameraClearFlags)),
_GT(typeof(AudioClip)),
_GT(typeof(AssetBundle)),
_GT(typeof(ParticleSystem)),
_GT(typeof(AsyncOperation)).SetBaseType(typeof(System.Object)),
_GT(typeof(LightType)),
_GT(typeof(SleepTimeout)),
_GT(typeof(Animator)),
_GT(typeof(Input)),
_GT(typeof(KeyCode)),
_GT(typeof(SkinnedMeshRenderer)),
_GT(typeof(SpriteRenderer)),
_GT(typeof(TextMesh)),
_GT(typeof(TextAsset)),
_GT(typeof(Space)),
_GT(typeof(UIDepth)),
_GT(typeof(RuntimePlatform)),
_GT(typeof(TextAnchor)),
_GT(typeof(MeshRenderer)),
//_GT(typeof(ParticleEmitter)),
//_GT(typeof(ParticleRenderer)),
//_GT(typeof(ParticleAnimator)),
//_GT(typeof(MB3_MeshBaker)),
_GT(typeof(Mesh)),
_GT(typeof(MeshFilter)),
_GT(typeof(BoxCollider)),
_GT(typeof(MeshCollider)),
_GT(typeof(SphereCollider)),
_GT(typeof(CharacterController)),
_GT(typeof(CapsuleCollider)),
_GT(typeof(Animation)),
_GT(typeof(AnimationClip)).SetBaseType(typeof(UnityEngine.Object)),
_GT(typeof(AnimatorClipInfo)),
_GT(typeof(AnimationState)),
_GT(typeof(AnimatorCullingMode)),
_GT(typeof(AnimatorStateInfo)),
_GT(typeof(AnimationBlendMode)),
_GT(typeof(QueueMode)),
_GT(typeof(PlayMode)),
_GT(typeof(WrapMode)),
_GT(typeof(QualitySettings)),
_GT(typeof(RenderSettings)),
_GT(typeof(BlendWeights)),
_GT(typeof(RenderTexture)),
//for LuaFramework
_GT(typeof(InlieText)),
_GT(typeof(InlineSpriteManager)),
_GT(typeof(RectTransform)),
_GT(typeof(Text)),
_GT(typeof(Outline)),
_GT(typeof(InputField)),
_GT(typeof(Font)),
_GT(typeof(Button)),
_GT(typeof(Toggle)),
_GT(typeof(Slider)),
_GT(typeof(Image)),
_GT(typeof(Image.Type)),
_GT(typeof(Image.FillMethod)),
_GT(typeof(ImageExtend)),
_GT(typeof(RawImageExtend)),
_GT(typeof(Sprite)),
_GT(typeof(RawImage)),
_GT(typeof(Util)),
_GT(typeof(AppConst)),
_GT(typeof(EnglineVersion)),
_GT(typeof(LuaHelper)),
_GT(typeof(FileTools)),
_GT(typeof(ByteBuffer)),
_GT(typeof(LuaBehaviour)),
_GT(typeof(LuaEventListener)),
_GT(typeof(LuaClickListener)),
_GT(typeof(LuaDragListener)),
_GT(typeof(LuaDragExtendListener)),
_GT(typeof(ScrollRect)),
// _GT(typeof(GameManager)),
_GT(typeof(DBParserManager)),
_GT(typeof(AfterImageManager)),
_GT(typeof(LuaManager)),
_GT(typeof(PanelManager)),
_GT(typeof(SoundManager)),
_GT(typeof(TimerManager)),
_GT(typeof(DownLoadResManager)),
_GT(typeof(NetworkManager)),
_GT(typeof(SocketClient)),
_GT(typeof(ResourceManager)),
_GT(typeof(OutsideResourceManager)),
_GT(typeof(OutSideFileType)),
_GT(typeof(ParticleManager)),
_GT(typeof(ParticleSystemRenderer)),
_GT(typeof(MapManager)),
_GT(typeof(CookiesManager)),
_GT(typeof(Map)),
_GT(typeof(GameStateMachine)),
_GT(typeof(GameMachineManager)),
_GT(typeof(GameState)),
_GT(typeof(LogManager)),
_GT(typeof(DBParser)),
_GT(typeof(HTTPRequest)),
_GT(typeof(HTTPResponse)),
_GT(typeof(HTTPManager)),
_GT(typeof(LogType)),
_GT(typeof(ParticleSystemScalingMode)),
_GT(typeof(TextureWrapMode)),
_GT(typeof(Rect)),
_GT(typeof(Graphics)),
_GT(typeof(LayoutElement)),
_GT(typeof(Mask)),
_GT(typeof(SDKManager)),
_GT(typeof(EmptyRaycast)),
_GT(typeof(ScrollRect.ScrollRectEvent)),
_GT(typeof(Toggle.ToggleEvent)),
_GT(typeof(InputField.SubmitEvent)),
_GT(typeof(GameConfig)),
_GT(typeof(NetworkReachability)),
_GT(typeof(CompressHelper)),
_GT(typeof(SystemInfo)),
_GT(typeof(EffectMask)),
_GT(typeof(Debug)),
_GT(typeof(Resolution)),
_GT(typeof(LayoutGroup)),
_GT(typeof(GridLayoutGroup)),
_GT(typeof(InputField.OnChangeEvent)),
_GT(typeof(LuaOverClickListener)),
_GT(typeof(VHScrollRect)),
_GT(typeof(ToggleGroup)),
_GT(typeof(SceneManager)),
_GT(typeof(Terrain)),
_GT(typeof(Slider.SliderEvent)),
_GT(typeof(Matrix4x4)),
_GT(typeof(ParticleSystem.MainModule)),
_GT(typeof(Spine.Unity.SkeletonAnimation)),
_GT(typeof(ScreenCapture)),
_GT(typeof(UnityEngine.Video.VideoPlayer)),
_GT(typeof(UnityEngine.Video.VideoRenderMode)),
_GT(typeof(System.DateTime)),
_GT(typeof(Optimizer)),
_GT(typeof(UnityEngine.VerticalWrapMode)),
_GT(typeof(UnityEngine.HorizontalWrapMode)),
_GT(typeof(UnityEngine.MaterialPropertyBlock)),
_GT(typeof(ScreenEffect)),
_GT(typeof(PartBloom)),
_GT(typeof(RenderBloomTexture)),
_GT(typeof(RoleCameraBloom)),
_GT(typeof(ChangeShaderRender)),
_GT(typeof(AdaptiveText)),
_GT(typeof(Radar)),//雷达图
_GT(typeof(FXAAEffect)),//FXAA
_GT(typeof(PostEffect)),//后处理整合
// _GT(typeof(LuaPerfect.ObjectRef)),
// _GT(typeof(LuaPerfect.ObjectItem)),
// _GT(typeof(LuaPerfect.ObjectFormater)),
_GT(typeof(RecordManager)),
_GT(typeof(UnityStandardAssets.ImageEffects.BloomOptimized)),
_GT(typeof(GL)),
_GT(typeof(TMPro.TextMeshProUGUI)),
_GT(typeof(TMPro.TMP_InputField)),
_GT(typeof(RenderTextureFormat)),
_GT(typeof(ParticleCollide)),
_GT(typeof(ButtonExtend)),
_GT(typeof(EmptyRaycastExtend)),
_GT(typeof(ExtendButtonScale)),
_GT(typeof(EraseHandler)),
_GT(typeof(RadiusBlur)),
};
public static List<Type> dynamicList = new List<Type>()
{
/*typeof(MeshRenderer),
typeof(ParticleEmitter),
typeof(ParticleRenderer),
typeof(ParticleAnimator),
typeof(BoxCollider),
typeof(MeshCollider),
typeof(SphereCollider),
typeof(CharacterController),
typeof(CapsuleCollider),
typeof(Animation),
typeof(AnimationClip),
typeof(AnimationState),
typeof(BlendWeights),
typeof(RenderTexture),
typeof(Rigidbody),*/
};
//重载函数,相同参数个数,相同位置out参数匹配出问题时, 需要强制匹配解决
//使用方法参见例子14
public static List<Type> outList = new List<Type>()
{
};
static BindType _GT(Type t)
{
return new BindType(t);
}
static DelegateType _DT(Type t)
{
return new DelegateType(t);
}
}