Merge pull request #147 from tpxxn/main

refactor AtlasMakerEditor & luban gen code code.lineEnding=crlf &  luban Vector ExternalTypeUtil
This commit is contained in:
ALEX
2025-05-06 17:22:30 +08:00
committed by GitHub
9 changed files with 80 additions and 11 deletions

View File

@@ -0,0 +1,29 @@
using UnityEngine;
public static class ExternalTypeUtil
{
public static Vector2 NewVector2(cfg.vector2 v)
{
return new Vector2(v.X, v.Y);
}
public static Vector3 NewVector3(cfg.vector3 v)
{
return new Vector3(v.X, v.Y, v.Z);
}
public static Vector4 NewVector4(cfg.vector4 v)
{
return new Vector4(v.X, v.Y, v.Z, v.W);
}
public static Vector2Int NewVector2Int(cfg.vector2int v)
{
return new Vector2Int(v.X, v.Y);
}
public static Vector3Int NewVector3Int(cfg.vector3int v)
{
return new Vector3Int(v.X, v.Y, v.Z);
}
}

View File

@@ -1,17 +1,46 @@
<module name=""> <module name="">
<bean name="vector2" valueType="1" sep=","> <bean name="vector2" valueType="1" sep=",">
<var name="x" type="float"/> <var name="x" type="float" />
<var name="y" type="float"/> <var name="y" type="float" />
<mapper target="client" codeTarget="cs-bin,cs-simple-json,cs-newtonsoft-json">
<option name="type" value="UnityEngine.Vector2" />
<option name="constructor" value="ExternalTypeUtil.NewVector2" />
</mapper>
</bean> </bean>
<bean name="vector3" valueType="1" sep=","> <bean name="vector3" valueType="1" sep=",">
<var name="x" type="float"/> <var name="x" type="float" />
<var name="y" type="float"/> <var name="y" type="float" />
<var name="z" type="float"/> <var name="z" type="float" />
<mapper target="client" codeTarget="cs-bin,cs-simple-json,cs-newtonsoft-json">
<option name="type" value="UnityEngine.Vector3" />
<option name="constructor" value="ExternalTypeUtil.NewVector3" />
</mapper>
</bean> </bean>
<bean name="vector4" valueType="1" sep=","> <bean name="vector4" valueType="1" sep=",">
<var name="x" type="float"/> <var name="x" type="float" />
<var name="y" type="float"/> <var name="y" type="float" />
<var name="z" type="float"/> <var name="z" type="float" />
<var name="w" type="float"/> <var name="w" type="float" />
<mapper target="client" codeTarget="cs-bin,cs-simple-json,cs-newtonsoft-json">
<option name="type" value="UnityEngine.Vector4" />
<option name="constructor" value="ExternalTypeUtil.NewVector4" />
</mapper>
</bean>
<bean name="vector2int" valueType="1" sep=",">
<var name="x" type="int" />
<var name="y" type="int" />
<mapper target="client" codeTarget="cs-bin,cs-simple-json,cs-newtonsoft-json">
<option name="type" value="UnityEngine.Vector2Int" />
<option name="constructor" value="ExternalTypeUtil.NewVector2Int" />
</mapper>
</bean>
<bean name="vector3int" valueType="1" sep=",">
<var name="x" type="int" />
<var name="y" type="int" />
<var name="z" type="int" />
<mapper target="client" codeTarget="cs-bin,cs-simple-json,cs-newtonsoft-json">
<option name="type" value="UnityEngine.Vector3" />
<option name="constructor" value="ExternalTypeUtil.NewVector3" />
</mapper>
</bean> </bean>
</module> </module>

View File

@@ -8,12 +8,14 @@ set DATA_OUTPATH=%WORKSPACE%/UnityProject/Assets/AssetRaw/Configs/bytes/
set CODE_OUTPATH=%WORKSPACE%/UnityProject/Assets/GameScripts/HotFix/GameProto/GameConfig/ set CODE_OUTPATH=%WORKSPACE%/UnityProject/Assets/GameScripts/HotFix/GameProto/GameConfig/
xcopy /s /e /i /y "%CONF_ROOT%\CustomTemplate\ConfigSystem.cs" "%WORKSPACE%\UnityProject\Assets\GameScripts\HotFix\GameProto\ConfigSystem.cs" xcopy /s /e /i /y "%CONF_ROOT%\CustomTemplate\ConfigSystem.cs" "%WORKSPACE%\UnityProject\Assets\GameScripts\HotFix\GameProto\ConfigSystem.cs"
xcopy /s /e /i /y "%CONF_ROOT%\CustomTemplate\ExternalTypeUtil.cs" "%WORKSPACE%\UnityProject\Assets\GameScripts\HotFix\GameProto\ExternalTypeUtil.cs"
dotnet %LUBAN_DLL% ^ dotnet %LUBAN_DLL% ^
-t client ^ -t client ^
-c cs-bin ^ -c cs-bin ^
-d bin^ -d bin^
--conf %CONF_ROOT%\luban.conf ^ --conf %CONF_ROOT%\luban.conf ^
-x code.lineEnding=crlf ^
-x outputCodeDir=%CODE_OUTPATH% ^ -x outputCodeDir=%CODE_OUTPATH% ^
-x outputDataDir=%DATA_OUTPATH% -x outputDataDir=%DATA_OUTPATH%
pause pause

View File

@@ -11,12 +11,15 @@ export CODE_OUTPATH="${WORKSPACE}/UnityProject/Assets/GameScripts/HotFix/GamePro
cp -R "${CONF_ROOT}/CustomTemplate/ConfigSystem.cs" \ cp -R "${CONF_ROOT}/CustomTemplate/ConfigSystem.cs" \
"${WORKSPACE}/UnityProject/Assets/GameScripts/HotFix/GameProto/ConfigSystem.cs" "${WORKSPACE}/UnityProject/Assets/GameScripts/HotFix/GameProto/ConfigSystem.cs"
cp -R "${CONF_ROOT}/CustomTemplate/ExternalTypeUtil.cs" \
"${WORKSPACE}/UnityProject/Assets/GameScripts/HotFix/GameProto/ExternalTypeUtil.cs"
dotnet "${LUBAN_DLL}" \ dotnet "${LUBAN_DLL}" \
-t client \ -t client \
-c cs-bin \ -c cs-bin \
-d bin \ -d bin \
--conf "${CONF_ROOT}/luban.conf" \ --conf "${CONF_ROOT}/luban.conf" \
-x code.lineEnding=crlf \
-x outputCodeDir="${CODE_OUTPATH}" \ -x outputCodeDir="${CODE_OUTPATH}" \
-x outputDataDir="${DATA_OUTPATH}" -x outputDataDir="${DATA_OUTPATH}"

View File

@@ -8,6 +8,7 @@ set DATA_OUTPATH=%WORKSPACE%/UnityProject/Assets/AssetRaw/Configs/bytes/
set CODE_OUTPATH=%WORKSPACE%/UnityProject/Assets/GameScripts/HotFix/GameProto/GameConfig/ set CODE_OUTPATH=%WORKSPACE%/UnityProject/Assets/GameScripts/HotFix/GameProto/GameConfig/
xcopy /s /e /i /y "%CONF_ROOT%\CustomTemplate\ConfigSystem.cs" "%WORKSPACE%\UnityProject\Assets\GameScripts\HotFix\GameProto\ConfigSystem.cs" xcopy /s /e /i /y "%CONF_ROOT%\CustomTemplate\ConfigSystem.cs" "%WORKSPACE%\UnityProject\Assets\GameScripts\HotFix\GameProto\ConfigSystem.cs"
xcopy /s /e /i /y "%CONF_ROOT%\CustomTemplate\ExternalTypeUtil.cs" "%WORKSPACE%\UnityProject\Assets\GameScripts\HotFix\GameProto\ExternalTypeUtil.cs"
dotnet %LUBAN_DLL% ^ dotnet %LUBAN_DLL% ^
-t client ^ -t client ^
@@ -15,6 +16,7 @@ dotnet %LUBAN_DLL% ^
-d bin^ -d bin^
--conf %CONF_ROOT%\luban.conf ^ --conf %CONF_ROOT%\luban.conf ^
--customTemplateDir %CONF_ROOT%\CustomTemplate\CustomTemplate_Client_LazyLoad ^ --customTemplateDir %CONF_ROOT%\CustomTemplate\CustomTemplate_Client_LazyLoad ^
-x code.lineEnding=crlf ^
-x outputCodeDir=%CODE_OUTPATH% ^ -x outputCodeDir=%CODE_OUTPATH% ^
-x outputDataDir=%DATA_OUTPATH% -x outputDataDir=%DATA_OUTPATH%
pause pause

View File

@@ -11,6 +11,8 @@ export CODE_OUTPATH="${WORKSPACE}/UnityProject/Assets/GameScripts/HotFix/GamePro
cp -R "${CONF_ROOT}/CustomTemplate/ConfigSystem.cs" \ cp -R "${CONF_ROOT}/CustomTemplate/ConfigSystem.cs" \
"${WORKSPACE}/UnityProject/Assets/GameScripts/HotFix/GameProto/ConfigSystem.cs" "${WORKSPACE}/UnityProject/Assets/GameScripts/HotFix/GameProto/ConfigSystem.cs"
cp -R "${CONF_ROOT}/CustomTemplate/ExternalTypeUtil.cs" \
"${WORKSPACE}/UnityProject/Assets/GameScripts/HotFix/GameProto/ExternalTypeUtil.cs"
dotnet "${LUBAN_DLL}" \ dotnet "${LUBAN_DLL}" \
-t client \ -t client \
@@ -18,6 +20,7 @@ dotnet "${LUBAN_DLL}" \
-d bin \ -d bin \
--conf "${CONF_ROOT}/luban.conf" \ --conf "${CONF_ROOT}/luban.conf" \
--customTemplateDir "${CONF_ROOT}/CustomTemplate/CustomTemplate_Client_LazyLoad" \ --customTemplateDir "${CONF_ROOT}/CustomTemplate/CustomTemplate_Client_LazyLoad" \
-x code.lineEnding=crlf \
-x outputCodeDir="${CODE_OUTPATH}" \ -x outputCodeDir="${CODE_OUTPATH}" \
-x outputDataDir="${DATA_OUTPATH}" -x outputDataDir="${DATA_OUTPATH}"

View File

@@ -12,6 +12,7 @@ dotnet %LUBAN_DLL% ^
-c cs-bin ^ -c cs-bin ^
-d bin^ -d bin^
--conf %CONF_ROOT%\luban.conf ^ --conf %CONF_ROOT%\luban.conf ^
-x code.lineEnding=crlf ^
-x outputCodeDir=%CODE_OUTPATH% ^ -x outputCodeDir=%CODE_OUTPATH% ^
-x outputDataDir=%DATA_OUTPATH% -x outputDataDir=%DATA_OUTPATH%
pause pause

View File

@@ -14,6 +14,7 @@ dotnet "${LUBAN_DLL}" \
-c cs-bin \ -c cs-bin \
-d bin \ -d bin \
--conf "${CONF_ROOT}/luban.conf" \ --conf "${CONF_ROOT}/luban.conf" \
-x code.lineEnding=crlf \
-x outputCodeDir="${CODE_OUTPATH}" \ -x outputCodeDir="${CODE_OUTPATH}" \
-x outputDataDir="${DATA_OUTPATH}" -x outputDataDir="${DATA_OUTPATH}"

View File

@@ -88,9 +88,8 @@
public static void MarkParentAtlasesDirty(string assetPath) public static void MarkParentAtlasesDirty(string assetPath)
{ {
var currentPath = Path.GetDirectoryName(assetPath); var currentPath = Path.GetDirectoryName(assetPath).Replace("\\", "/");
var rootPath = Config.sourceAtlasRoot.Replace("\\", "/").TrimEnd('/'); var rootPath = Config.sourceAtlasRoot.Replace("\\", "/").TrimEnd('/');
currentPath = currentPath.Replace("\\", "/");
while (currentPath != null && currentPath.StartsWith(rootPath)) while (currentPath != null && currentPath.StartsWith(rootPath))
{ {
var parentAtlasName = GetAtlasNameForDirectory(currentPath); var parentAtlasName = GetAtlasNameForDirectory(currentPath);