介绍:此插件是我整理的主要针对2D游戏的工具,包含几乎涵盖所有2D游戏都通用的脚本,以及一些可商用的字体,非常感谢大家的下载,后续会继续更新,主要针对新人,防止重复造轮子
注意:要想在代码中调用需要using AoyouzheStudio;具体还要看CommonTools.dll内的xml注释
AsyncLoadScene.cs
然后
属性列表
属性名 |
含义 |
text_loadProgress |
进度条的文字组件,必须存在 |
rectTransform_progressBar |
进度条的rectTransform组件 |
screenWidth |
屏幕宽度,可以看做当加载100%时的宽度 |
使用方法
要把脚本挂载在进度条根对象上,每次使用进度条实例化对象,请看如下:
把该有的组件拖拽到属性面板该有的位置
![](https://img2020.cnblogs.com/blog/2413946/202107/2413946-20210724115930431-1716107471.png)
public GameObject LoadPanelPre;
public void LoadScene(){
AsyncLoadScene.NEXTSCENENAME = "NextSceneName";
AsyncLoadScene asyncLoad = Instantiate(LoadPanelPre).GetComponent<AsyncLoadScene>();
}
方法
方法名 |
含义 |
LoadData |
加载二进制数据bin文件 |
SaveData |
保存二进制数据 |
使用方法
[System.Serializable]
public class Person{
public int age = 16;
public string name = "ShadowStudio";
}
BinaryFormatterUtility.SaveData<Person>(new Person(), Application.streamingAssetsPath + "/BinaryFile.bin");
Debug.Log(BinaryFormatterUtility.LoadData<Person>(Application.streamingAssetsPath + "/BinaryFile.bin").name);
CameraFollow.cs
属性列表
属性名 |
含义 |
target |
摄像机跟随的目标 |
smoothTime |
平滑到目标位置所需要的时间 |
使用方法
把CameraFollow.cs添加到摄像机对象上,并把组件拖拽到相应属性栏中
方法
方法名 |
含义 |
ReadFile |
读取Json文件 |
CreateFile |
创建Json文件 |
Write |
写入Json文件 |
使用方法
[System.Serializable]
public class Person{
public int age = 16;
public string name = "ShadowStudio";
}
JsonTool.Write<Person>(new Person(), Application.streamingAssetsPath + "/JsonFile.json");
Debug.Log(JsonTool.ReadFile<Person>(Application.streamingAssetsPath + "/JsonFile.json").age);
LocalLanguageListener.cs
属性列表
属性名 |
含义 |
TextInfo |
需要被翻译的文字信息 |
使用方法
挂载到含有Text组件的对象上,但是必须要有LocalLanguageManager脚本挂载到空对象且本地配置语言Text有相应的文字翻译才会生效
LocalLanguageManager.cs
属性列表
属性名 |
含义 |
LanguageInfoPath |
语言信息的路径,默认的就好 |
languageChoose |
Toggle顺序为中 英 日 |
使用方法
LocalLanguageManager脚本挂载到空对象
配置文字信息,如下
![](https://img2020.cnblogs.com/blog/2413946/202107/2413946-20210724132414911-1326633397.png)
中英日的翻译信息
![](https://img2020.cnblogs.com/blog/2413946/202107/2413946-20210724132546436-149724716.png)
![](https://img2020.cnblogs.com/blog/2413946/202107/2413946-20210724132652009-991766544.png)
![](https://img2020.cnblogs.com/blog/2413946/202107/2413946-20210724132709575-1817931641.png)
您可在里面添加任何你想要的,根据以上规则
LocalLanguageListener组件中的TextInfo可修改为例如:Start 或Quit,运行时可根据配置的toggle组件变换文字所展示的信息
注意要创建一个空对象然后加上Toggle Group组件,然后分别分配给三个Toggle以免出现同时出现多个Toggle框选而显示错误的情况
Singleton.cs
方法列表
方法名 |
含义 |
GetInstance |
获取静态实例 |
使用方法
public class NewBehaviourScript : Singleton<NewBehaviourScript>
{
public int age = 16;
// Start is called before the first frame update
void Start()
{
Debug.Log(NewBehaviourScript.GetInstance().age);
}
}
Singleton_2.cs
方法列表
方法名 |
含义 |
GetInstance |
获取静态实例 |
使用方法
public class NewBehaviourScript : MonoBehaviour
{
public int age = 16;
// Start is called before the first frame update
void Start()
{
Debug.Log(Singleton_2<NewBehaviourScript>.GetInstance().age);
}
}
SoundManager.cs
属性列表
属性名 |
含义 |
String_soundsField |
是个string[],表示可以播放的音效名称 |
AudioClips |
是个AudioClip[],表示可以播放的音效源 |
注意:上面介绍的两个属性必须完美匹配,也就是说假如有音效click.mp3,那么在String_soundsField里添加click,在AudioClips里添加音频文件
XmlSerializerUtility.cs
方法列表
方法名 |
含义 |
SaveData |
保存xml数据 |
ReadData |
读取xml数据 |
使用方法
[System.Serializable]
public class Player
{
public int age = 16;
public string name = "执著";
}
public class NewBehaviourScript : MonoBehaviour
{
// Start is called before the first frame update
void Start()
{
XmlSerializerUtility.SaveData<Player>(new Player(), Application.persistentDataPath + "/Player.xml");
Debug.Log(XmlSerializerUtility.ReadData<Player>(Application.persistentDataPath + "/Player.xml").name);
}
}