Support per-floor variable maze sizes

Add configuration to vary floor sizes: FloorSizeMode enum, varyFloorSize, floorSizeMode and manualFloorSizes in MazeReworkConfig. MazeReworkGenerator now accepts explicit width/depth via an overload, threads width/depth through generation, and adds optional endBounds to placement logic; dead-end/furthest searches respect bounds. MazeReworkManager computes per-floor seeds and dynamic sizes (manual or randomized), instantiates per-floor generators, and passes end bounds between floors for both animated and instantaneous generation. Also includes minor IDE workspace.xml metadata formatting changes.
This commit is contained in:
2026-07-04 16:39:29 +07:00
parent 0745556ae6
commit 315c14c651
4 changed files with 157 additions and 40 deletions

View File

@@ -12,7 +12,9 @@
<component name="ChangeListManager">
<list default="true" id="d308d1cb-09fc-4331-ba20-00f7b43d1576" name="Changes" comment="">
<change beforePath="$PROJECT_DIR$/.idea/.idea.BABA_YAGA/.idea/workspace.xml" beforeDir="false" afterPath="$PROJECT_DIR$/.idea/.idea.BABA_YAGA/.idea/workspace.xml" afterDir="false" />
<change beforePath="$PROJECT_DIR$/Assets/Scripts/Baba_yaga/GameSetup/MazeRework/MazeReworkSpawner.cs" beforeDir="false" afterPath="$PROJECT_DIR$/Assets/Scripts/Baba_yaga/GameSetup/MazeRework/MazeReworkSpawner.cs" afterDir="false" />
<change beforePath="$PROJECT_DIR$/Assets/Scripts/Baba_yaga/GameSetup/MazeRework/MazeReworkConfig.cs" beforeDir="false" afterPath="$PROJECT_DIR$/Assets/Scripts/Baba_yaga/GameSetup/MazeRework/MazeReworkConfig.cs" afterDir="false" />
<change beforePath="$PROJECT_DIR$/Assets/Scripts/Baba_yaga/GameSetup/MazeRework/MazeReworkGenerator.cs" beforeDir="false" afterPath="$PROJECT_DIR$/Assets/Scripts/Baba_yaga/GameSetup/MazeRework/MazeReworkGenerator.cs" afterDir="false" />
<change beforePath="$PROJECT_DIR$/Assets/Scripts/Baba_yaga/GameSetup/MazeRework/MazeReworkManager.cs" beforeDir="false" afterPath="$PROJECT_DIR$/Assets/Scripts/Baba_yaga/GameSetup/MazeRework/MazeReworkManager.cs" afterDir="false" />
</list>
<option name="SHOW_DIALOG" value="false" />
<option name="HIGHLIGHT_CONFLICTS" value="true" />
@@ -36,10 +38,10 @@
<setting file="file://$PROJECT_DIR$/Library/PackageCache/com.wooshii.foldericons@201a18f355d3/FolderIcons/Editor/FolderIcons.cs" root0="SKIP_HIGHLIGHTING" />
<setting file="file://$PROJECT_DIR$/Library/PackageCache/com.wooshii.foldericons@201a18f355d3/FolderIcons/Editor/FolderIconsEditor.asmdef" root0="SKIP_HIGHLIGHTING" />
</component>
<component name="KubernetesApiPersistence"><![CDATA[{}]]></component>
<component name="KubernetesApiProvider"><![CDATA[{
"isMigrated": true
}]]></component>
<component name="KubernetesApiPersistence">{}</component>
<component name="KubernetesApiProvider">{
&quot;isMigrated&quot;: true
}</component>
<component name="McpProjectServerCommands">
<commands />
<urls />
@@ -146,6 +148,8 @@
<workItem from="1781765548760" duration="8210000" />
<workItem from="1782445122703" duration="1948000" />
<workItem from="1782825955934" duration="1783000" />
<workItem from="1783149945807" duration="606000" />
<workItem from="1783156047890" duration="1863000" />
</task>
<servers />
</component>