Initial commit: Unity WordConnect project

This commit is contained in:
2025-08-01 19:12:05 +08:00
commit f14db75802
3503 changed files with 448337 additions and 0 deletions

View File

@ -0,0 +1,192 @@
/* Crossword Grid Window Styles */
.grid-cell {
width: 40px;
height: 40px;
border-width: 1px;
border-color: rgb(96, 96, 96);
background-color: rgb(230, 230, 242);
align-items: center;
justify-content: center;
}
.grid-cell-empty {
border-width: 1px;
border-color: rgb(102, 102, 115);
background-color: rgb(64, 64, 77);
}
.grid-cell-letter {
font-size: 18px;
-unity-font-style: bold;
color: rgb(0, 0, 0);
-unity-text-align: middle-center;
}
.grid-cell-number {
font-size: 10px;
color: rgb(0, 0, 204);
position: absolute;
top: 2px;
left: 2px;
}
.grid-cell-icon {
font-size: 8px;
color: rgb(0, 0, 0);
position: absolute;
top: 2px;
left: 2px;
}
.letterButtonsContainer {
flex-direction: row;
flex-wrap: wrap;
justify-content: center;
align-items: flex-start;
align-self: center;
margin-left: 70px;
margin-top: 20px;
width: 470px;
}
.letter-button {
width: 35px;
height: 35px;
margin-right: 2px;
margin-bottom: 5px;
font-size: 16px;
background-color: rgb(255, 255, 255);
color: rgba(16, 16, 16, 1);
}
.unity-text-element{
min-width: 0px;
}
.search-container{
flex-direction: column;
align-items: flex-start;
border-width: 5px;
}
.letter-button-selected {
background-color: rgba(0, 123, 255, 0.8);
color: rgb(255, 255, 255);
}
/* Special item button styling */
.item-button {
background-color: rgb(255, 255, 255);
color: rgb(128, 128, 128);
}
/* Selected item button styling */
.item-button.letter-button-selected {
background-color: rgba(0, 123, 255, 0.8);
color: rgb(255, 255, 255);
}
.arrow-button {
width: 10px;
height: 10px;
align-self: center;
font-size: 12px;
margin-bottom: 2px;
background-color: rgb(95, 95, 95);
border-width: 1px;
border-color: rgb(128, 128, 128);
border-radius: 2px;
color: rgb(220, 220, 220);
}
.arrow-button:hover {
background-color: rgb(80, 80, 80);
border-color: rgb(160, 160, 160);
}
.arrow-button:active {
background-color: rgb(96, 96, 96);
}
.status-bar {
flex-direction: row;
padding-bottom: 5px;
padding-left: 10px;
padding-right: 10px;
border-top-width: 1px;
border-top-color: rgb(102, 102, 102);
}
.instructions-label {
font-size: 12px;
color: rgb(179, 179, 179);
padding-bottom: 5px;
}
.combined-control-panel-x{
flex-direction: column;
min-height: 300px;
}
.letter-palette {
flex-direction: column;
padding-top: 10px;
padding-bottom: 10px;
padding-left: 10px;
padding-right: 10px;
background-color: rgb(64, 64, 64);
}
.grid-container {
align-items: center;
justify-content: center;
min-height: 300px;
margin-top: 50px;
}
.grid-background {
background-color: rgb(51, 51, 64);
padding-top: 10px;
padding-bottom: 10px;
padding-left: 10px;
padding-right: 10px;
}
/* Common style for control panel buttons (Clear, Refresh, Apply) */
.control-panel-button {
flex-grow: 1;
height: 35px;
width: 80px;
margin-left: 5px;
background-color: rgb(95, 95, 95);
border-width: 1px;
border-color: rgb(128, 128, 128);
border-radius: 3px;
color: rgb(220, 220, 220);
font-size: 12px;
}
.control-panel-button:hover {
background-color: rgb(80, 80, 80);
border-color: rgb(160, 160, 160);
}
.control-panel-button:active {
background-color: rgb(96, 96, 96);
}
/* Grid scroll view specific styling */
.grid-scroll-view {
flex-grow: 0;
}
.grid-scroll-view .unity-scroll-view__content-and-vertical-scroll-container,
.grid-scroll-view .unity-scroll-view__content-viewport,
.grid-scroll-view .unity-scroll-view__content-container {
align-items: flex-start;
padding-left: 10px;
}
.grid-scroll-view .unity-scroller{
flex-grow: 1;
}

View File

@ -0,0 +1,11 @@
fileFormatVersion: 2
guid: ea21b1d69212d442ebbf6c502684165d
ScriptedImporter:
internalIDToNameTable: []
externalObjects: {}
serializedVersion: 2
userData:
assetBundleName:
assetBundleVariant:
script: {fileID: 12385, guid: 0000000000000000e000000000000000, type: 0}
disableValidation: 0

View File

@ -0,0 +1,104 @@
.container{
padding: 10px;
}
/*!* Letter Palette Styles *!*/
/*.letter-palette {*/
/* flex-shrink: 0;*/
/* flex-grow: 0;*/
/* padding-top: 10px;*/
/* padding-bottom: 10px;*/
/* padding-left: 10px;*/
/* padding-right: 10px;*/
/*}*/
/*!* Header Row Styles *!*/
/*.header-row {*/
/* flex-direction: row;*/
/* align-items: center;*/
/* margin-bottom: 10px;*/
/* flex-shrink: 0;*/
/* height: 35px;*/
/*}*/
/*.letters-field {*/
/* width: 150px;*/
/* min-width: 60px;*/
/*}*/
/*.letters-length {*/
/* width: 40px;*/
/* margin-left: 5px;*/
/*}*/
/*.generate-button {*/
/* background-color: rgb(0, 0, 204);*/
/* width: 80px;*/
/* height: 30px;*/
/* -unity-font-style: bold;*/
/* margin-left: 10px;*/
/*}*/
/*.spacer {*/
/* width: 20px;*/
/*}*/
/*.grid-size-label {*/
/* min-width: 60px;*/
/* margin-left: 20px;*/
/*}*/
/*.grid-size-field {*/
/* width: 40px;*/
/* margin-left: 5px;*/
/*}*/
/*.x-label {*/
/* width: 10px;*/
/* margin-left: 5px;*/
/* margin-right: 5px;*/
/* -unity-text-align: middle-center;*/
/*}*/
/*!* Property Row Styles *!*/
/*.property-row {*/
/* flex-direction: row;*/
/* align-items: center;*/
/* margin-bottom: 5px;*/
/* padding-left: 5px;*/
/* padding-right: 5px;*/
/* min-height: 25px;*/
/*}*/
/*.property-field {*/
/* flex-grow: 1;*/
/*}*/
/*!* Test Level Button Styles *!*/
/*.test-level-button {*/
/* background-color: rgb(70, 122, 102);*/
/* width: 100px;*/
/* height: 25px;*/
/* -unity-font-style: bold;*/
/*}*/
/*!* Generate Button Hover Effects *!*/
/*.generate-button:hover {*/
/* background-color: rgb(0, 0, 255);*/
/*}*/
/*.test-level-button:hover {*/
/* background-color: rgb(80, 132, 112);*/
/*}*/
/*!* Additional styling for better UI layout *!*/
/*.letters-field .unity-text-field__label {*/
/* min-width: 60px;*/
/*}*/
/*.grid-size-field .unity-integer-field__input {*/
/* -unity-text-align: middle-center;*/
/*}*/
/*.letters-length .unity-integer-field__input {*/
/* -unity-text-align: middle-center;*/
/*}*/

View File

@ -0,0 +1,11 @@
fileFormatVersion: 2
guid: 2372dc25d35454022a42521a1f8e354b
ScriptedImporter:
internalIDToNameTable: []
externalObjects: {}
serializedVersion: 2
userData:
assetBundleName:
assetBundleVariant:
script: {fileID: 12385, guid: 0000000000000000e000000000000000, type: 0}
disableValidation: 0

View File

@ -0,0 +1,38 @@
<ui:UXML xmlns:ui="UnityEngine.UIElements" xmlns:uie="UnityEditor.UIElements" xsi="http://www.w3.org/2001/XMLSchema-instance" engine="UnityEngine.UIElements" editor="UnityEditor.UIElements" noNamespaceSchemaLocation="../../../../../UIElementsSchema/UIElements.xsd" editor-extension-mode="True">
<Style src="project://database/Assets/WordConnectGameToolkit/UIBuilder/CrosswordLetterPalette.uss?fileID=7433441132597879392&amp;guid=2372dc25d35454022a42521a1f8e354b&amp;type=3#CrosswordLetterPalette" />
<ui:VisualElement name="letter-palette" class="letter-palette" style="flex-direction: row; justify-content: space-between; align-items: auto; align-self: stretch; background-color: rgb(72, 72, 72); flex-grow: 0; margin-left: 0; padding-left: 0; padding-right: 0; height: auto; padding-bottom: 0; padding-top: 0; max-height: 100px; min-height: 100px;">
<ui:VisualElement name="Container1" class="container" style="flex-grow: 1; justify-content: space-around; width: 219px; align-items: stretch; align-self: stretch;">
<ui:VisualElement style="flex-grow: 0; flex-direction: row; flex-shrink: 0; flex-wrap: nowrap; height: 20px;">
<ui:TextField name="letters-field" label="Letters:" is-delayed="false" class="letters-field" style="display: flex; flex-grow: 1; flex-shrink: 1; flex-direction: row;" />
<ui:TextField name="letters-length" class="letters-length" />
</ui:VisualElement>
<ui:VisualElement name="test-level-row" class="property-row" style="display: flex; flex-grow: 1; flex-direction: column; flex-shrink: 1; max-width: 100%; max-height: 100%; padding-top: 0; padding-right: 0; padding-bottom: 0; padding-left: 0; margin-top: 10px;">
<ui:Button name="test-level-button" text="Test Level" tooltip="Test the current level" class="test-level-button" style="flex-shrink: 1; flex-grow: 1; background-color: rgb(70, 122, 102); padding-top: 0; padding-right: 0; padding-bottom: 0; padding-left: 0; margin-top: 0; margin-right: 0; margin-bottom: 0; margin-left: 0;" />
</ui:VisualElement>
</ui:VisualElement>
<ui:VisualElement name="Container2" class="container" style="flex-grow: 1; align-self: stretch; justify-content: space-between; align-items: stretch; flex-wrap: nowrap; flex-direction: column;">
<ui:Button name="generate-button" text="Generate" tooltip="Generate random letters and words for this language" class="generate-button" style="display: flex; flex-grow: 1; flex-shrink: 1; background-color: rgb(39, 97, 156); margin-top: 0; margin-right: 0; margin-bottom: 0; margin-left: 0; padding-top: 0; padding-right: 0; padding-bottom: 0; padding-left: 0; min-height: 30px;" />
<ui:VisualElement name="hard-level-row" class="property-row" style="flex-grow: 1; flex-shrink: 1; flex-direction: column; align-self: flex-end; padding-top: 10px; padding-right: 0; padding-bottom: 0; padding-left: 0;">
<ui:Toggle name="hard-level-field" label="Hard Level" tooltip="Warns user the level is difficult" binding-path="isHardLevel" class="property-field" />
</ui:VisualElement>
<ui:VisualElement name="enable-timer-row" class="property-row" style="align-self: stretch; padding-top: 10px; flex-direction: row; flex-grow: 0; flex-shrink: 1; justify-content: flex-end;">
<ui:Toggle name="enable-timer-field" label="Timer" tooltip="Check to enable a timer for this level" binding-path="enableTimer" class="property-field" style="margin-top: 0; margin-right: 0; margin-bottom: 0; margin-left: 0;" />
<ui:FloatField value="0" name="Duration" readonly="false" binding-path="timerDuration" style="margin-top: 0; margin-right: 0; margin-bottom: 0; margin-left: 5px;" />
</ui:VisualElement>
</ui:VisualElement>
<ui:VisualElement name="Container3" class="container" style="flex-grow: 1; justify-content: space-between;">
<ui:VisualElement style="flex-grow: 1; flex-direction: row; justify-content: space-around;">
<ui:Label name="grid-size-label" text="Grid Size:" class="grid-size-label" style="display: flex; flex-grow: 0; flex-shrink: 0; padding-top: 0; padding-right: 0; padding-bottom: 0; padding-left: 0; margin-top: 0; margin-right: 20px; margin-bottom: 0; margin-left: 0;" />
<ui:TextField name="columns-field" tooltip="Grid columns" class="grid-size-field" style="flex-grow: 1; margin-top: 0; margin-right: 0; margin-bottom: 0; margin-left: 0; max-width: 50px;" />
<ui:Label name="x-label" text="×" class="x-label" style="margin-top: 0; margin-right: 0; margin-bottom: 0; margin-left: 0; padding-top: 0; padding-right: 0; padding-bottom: 0; padding-left: 0;" />
<ui:TextField name="rows-field" tooltip="Grid rows" class="grid-size-field" style="flex-grow: 1; margin-top: 0; margin-right: 0; margin-bottom: 0; margin-left: 0; max-width: 50px;" />
</ui:VisualElement>
<ui:VisualElement name="background-row" class="property-row" style="flex-grow: 1; padding-top: 10px;">
<uie:ObjectField name="background-field" label="Background:" binding-path="background" class="property-field" />
</ui:VisualElement>
<ui:VisualElement name="colors-tile-row" class="property-row" style="flex-grow: 1; min-height: 10px; display: flex; padding-top: 10px;">
<uie:PropertyField name="colors-tile-field" label="Colors Tile:" binding-path="colorsTile" class="property-field" style="flex-grow: 0; display: flex; flex-shrink: 0;" />
</ui:VisualElement>
</ui:VisualElement>
</ui:VisualElement>
</ui:UXML>

View File

@ -0,0 +1,10 @@
fileFormatVersion: 2
guid: 16eeaafbb6eec4050b3487eb6e5c64d1
ScriptedImporter:
internalIDToNameTable: []
externalObjects: {}
serializedVersion: 2
userData:
assetBundleName:
assetBundleVariant:
script: {fileID: 13804, guid: 0000000000000000e000000000000000, type: 0}

View File

@ -0,0 +1,140 @@
.localized-text-item {
margin-bottom: 12px;
padding: 8px;
border-width: 1px;
border-color: rgba(128, 128, 128, 0.5);
border-radius: 4px;
background-color: rgba(0, 0, 0, 0.1);
flex-shrink: 0;
flex-grow: 0;
min-height: auto;
}
.localized-text-item:hover {
background-color: rgba(0, 0, 0, 0.2);
}
.localized-text-content {
flex-direction: row;
flex-grow: 1;
align-items: stretch;
min-height: auto;
}
.localized-text-fields {
flex-grow: 1;
margin-right: 8px;
flex-direction: column;
justify-content: flex-start;
}
.language-dropdown {
flex-direction: row;
align-items: center;
margin-bottom: 4px;
min-height: 28px;
}
.language-dropdown > Label {
min-width: 60px;
margin-right: 8px;
}
.language-dropdown .unity-dropdown-field {
max-width: 170px;
min-width: 80px;
flex-grow: 0;
flex-shrink: 0;
}
.language-dropdown-field {
max-width: 180px;
min-width: 80px;
flex-grow: 0;
flex-shrink: 0;
}
.text-field-label {
margin-bottom: 2px;
margin-top: 4px;
-unity-font-style: normal;
font-size: 11px;
}
.title-field {
margin-bottom: 4px;
min-height: 20px;
padding-bottom: 2px;
}
.text-area {
min-height: 60px;
max-height: 200px;
width: 120%;
white-space: normal;
flex-grow: 1;
}
.remove-button {
width: 70px;
height: 35px;
align-self: flex-start;
margin-top: 4px;
}
.separator {
height: 1px;
background-color: rgba(128, 128, 128, 0.3);
margin-top: 8px;
margin-bottom: 8px;
}
.no-languages-message {
font-style: italic;
color: rgba(255, 255, 255, 0.7);
margin: 8px;
text-align: center;
}
.preview-container {
align-items: center;
justify-content: center;
}
.background-preview {
border-width: 1px;
border-color: rgba(128, 128, 128, 0.5);
background-size: contain;
background-repeat: no-repeat;
background-position: center;
}
#localized-texts-scroll {
flex-shrink: 1;
height: 100%;
max-height: auto;
}
#localized-texts-list {
min-height: auto;
}
/* Colors tile property field styling */
#colors-tile-field {
flex-direction: row;
align-items: center;
justify-content: space-between;
min-width: 200px;
}
#colors-tile-field > Label {
flex-grow: 0;
flex-shrink: 0;
min-width: 80px;
margin-right: 16px;
}
#colors-tile-field .unity-object-field {
flex-grow: 1;
min-width: 120px;
}

View File

@ -0,0 +1,11 @@
fileFormatVersion: 2
guid: 004923c02d2fe47ebba9f113d957710c
ScriptedImporter:
internalIDToNameTable: []
externalObjects: {}
serializedVersion: 2
userData:
assetBundleName:
assetBundleVariant:
script: {fileID: 12385, guid: 0000000000000000e000000000000000, type: 0}
disableValidation: 0

View File

@ -0,0 +1,24 @@
<ui:UXML xmlns:ui="UnityEngine.UIElements" xmlns:uie="UnityEditor.UIElements" xsi="http://www.w3.org/2001/XMLSchema-instance" engine="UnityEngine.UIElements" editor="UnityEditor.UIElements" noNamespaceSchemaLocation="../../../../../UIElementsSchema/UIElements.xsd" editor-extension-mode="True">
<Style src="project://database/Assets/WordConnectGameToolkit/UIBuilder/LevelGroupEditor.uss?fileID=7433441132597879392&amp;guid=004923c02d2fe47ebba9f113d957710c&amp;type=3#LevelGroupEditor" />
<ui:VisualElement name="root-container" style="flex-grow: 1; padding-left: 4px; padding-right: 4px; padding-top: 4px; padding-bottom: 4px;">
<ui:VisualElement name="header-container" style="flex-direction: row; margin-bottom: 8px; align-items: flex-start;">
<ui:VisualElement name="fields-container" style="flex-grow: 1; margin-right: 8px;">
<uie:PropertyField name="group-name-field" binding-path="groupName" />
<uie:PropertyField name="background-field" binding-path="background" />
<uie:PropertyField name="colors-tile-field" binding-path="colorsTile" />
</ui:VisualElement>
<ui:VisualElement name="preview-container" class="preview-container" style="width: 64px; height: 64px; border-left-color: rgb(128, 128, 128); border-right-color: rgb(128, 128, 128); border-top-color: rgb(128, 128, 128); border-bottom-color: rgb(128, 128, 128); border-left-width: 1px; border-right-width: 1px; border-top-width: 1px; border-bottom-width: 1px; align-items: center; justify-content: center;">
<ui:VisualElement name="background-preview" class="background-preview" style="width: 60px; height: 60px; background-color: rgb(50, 50, 50);" />
</ui:VisualElement>
</ui:VisualElement>
<ui:VisualElement name="localized-texts-container" style="margin-top: 16px; flex-grow: 1;">
<ui:Label text="Interesting facts" display-tooltip-when-elided="true" style="-unity-font-style: bold; margin-bottom: 8px;" />
<ui:ScrollView name="localized-texts-scroll" style="border-left-color: rgb(128, 128, 128); border-right-color: rgb(128, 128, 128); border-top-color: rgb(128, 128, 128); border-bottom-color: rgb(128, 128, 128); border-left-width: 1px; border-right-width: 1px; border-top-width: 1px; border-bottom-width: 1px; margin-bottom: 8px; background-color: rgb(64, 64, 64);">
<ui:VisualElement name="localized-texts-list" style="padding-left: 8px; padding-right: 8px; padding-top: 8px; padding-bottom: 8px;">
<ui:Label name="no-languages-message" text="No language-specific texts added. Click &apos;Add New Language&apos; to add one." style="color: rgb(200, 200, 200); display: none;" />
</ui:VisualElement>
</ui:ScrollView>
<ui:Button text="Add New Language" display-tooltip-when-elided="true" name="add-language-button" style="height: 30px;" />
</ui:VisualElement>
</ui:VisualElement>
</ui:UXML>

View File

@ -0,0 +1,10 @@
fileFormatVersion: 2
guid: 6177b87c6eedb40bc9b587fe32311ef9
ScriptedImporter:
internalIDToNameTable: []
externalObjects: {}
serializedVersion: 2
userData:
assetBundleName:
assetBundleVariant:
script: {fileID: 13804, guid: 0000000000000000e000000000000000, type: 0}

View File

@ -0,0 +1,176 @@
.left-panel {
border-right-width: 1px;
border-color: rgba(0, 0, 0, 0.2);
min-width: 100px;
width: 150px;
}
.right-panel {
flex-grow: 1;
padding-left: 10px;
}
.header-label {
font-size: 18px;
-unity-font-style: bold;
padding-bottom: 5px;
border-bottom-width: 1px;
border-color: rgba(0, 0, 0, 0.2);
}
.separator {
height: 1px;
background-color: rgba(0, 0, 0, 0.2);
margin-top: 10px;
margin-bottom: 10px;
}
.inspector-container {
flex-grow: 1;
}
.center-message {
align-self: center;
-unity-text-align: middle-center;
margin-top: 20px;
color: rgba(0, 0, 0, 0.6);
}
.action-buttons-container {
margin-top: 0px;
margin-bottom: 0px;
}
.button-row {
flex-direction: row;
justify-content: flex-start;
}
.action-button {
margin-right: 8px;
margin-top: 5px;
padding-left: 10px;
padding-right: 10px;
min-width: 100px;
height: 30px;
}
.stats-container {
margin-top: 10px;
padding: 10px;
background-color: rgba(0, 0, 0, 0.05);
border-radius: 4px;
}
.folder-path {
margin-bottom: 10px;
-unity-font-style: italic;
color: rgba(0, 0, 0, 0.6);
}
.unity-list-view {
flex-grow: 1;
min-height: 100px;
}
.unity-list-view__item {
padding: 2px;
}
.unity-list-view__item--selected {
background-color: #2196F3;
}
.delete-button {
background-color: rgba(200, 50, 50, 0.15);
border-color: rgba(200, 50, 50, 0.3);
}
.delete-button:hover {
background-color: rgba(200, 50, 50, 0.3);
}
/* Control panel styles */
.header-panel {
background-color: rgba(0, 0, 0, 0.05);
border-radius: 4px;
padding-top: 10px;
margin-bottom: 1px;
}
.nav-button {
width: 20px;
height: 20px;
font-size: 14px;
-unity-font-style: bold;
margin-left: 4px;
margin-right: 4px;
padding: 0;
border-radius: 3px;
border-width: 1px;
border-color: rgba(0, 0, 0, 0.2);
background-color: rgba(200, 200, 200, 0.1);
}
.nav-button:hover {
background-color: rgba(200, 200, 200, 0.3);
}
/* Control panel language selector */
.language-selector {
margin-top: 8px;
margin-bottom: 8px;
padding: 6px;
background-color: rgba(0, 0, 0, 0.03);
border-radius: 3px;
border-width: 1px;
border-color: rgba(0, 0, 0, 0.1);
}
.language-dropdown {
min-width: 150px;
margin-top: 4px;
}
.language-label {
-unity-font-style: bold;
margin-bottom: 4px;
color: rgba(0, 0, 0, 0.7);
}
/* Toolbar styles */
.toolbar {
height: 25px;
padding: 4px;
background-color: rgba(0, 0, 0, 0.05);
}
.toolbar-button {
width: 100px;
min-width: 80px;
-unity-text-align: middle-center;
margin-left: 2px;
margin-right: 2px;
background-color: rgb(51, 51, 51);
color: white;
padding-left: 10px;
padding-right: 10px;
padding-top: 5px;
padding-bottom: 5px;
border-width: 0;
}
.toolbar-button:hover {
background-color: rgb(77, 77, 77);
}
.toolbar-menu {
width: 100px;
min-width: 80px;
flex-grow: 1;
color: white;
}
.toolbar-menu:hover {
background-color: rgb(77, 77, 77);
}

View File

@ -0,0 +1,11 @@
fileFormatVersion: 2
guid: 41c3e866f17564093a36ac4860a0c4ac
ScriptedImporter:
internalIDToNameTable: []
externalObjects: {}
serializedVersion: 2
userData:
assetBundleName:
assetBundleVariant:
script: {fileID: 12385, guid: 0000000000000000e000000000000000, type: 0}
disableValidation: 0

View File

@ -0,0 +1,16 @@
<ui:UXML xmlns:ui="UnityEngine.UIElements" xmlns:uie="UnityEditor.UIElements" editor="UnityEditor.UIElements" editor-extension-mode="True">
<Style src="project://database/Assets/BlockPuzzle/UIBuilder/RootStyle.uss?fileID=7433441132597879392&amp;guid=98e15f087cce422ca0b92be25dc59b2e&amp;type=3#RootStyle" />
<ui:VisualElement style="flex-grow: 1; justify-content: center; align-self: stretch; align-items: stretch; padding-right: 0;">
<ui:VisualElement name="VisualElement" style="flex-grow: 0; background-color: rgba(0, 0, 0, 0); flex-direction: row; align-items: flex-start; justify-content: center; flex-wrap: nowrap; flex-basis: auto;">
<ui:Button text="Play level" display-tooltip-when-elided="true" name="PlayButton" enable-rich-text="true" style="flex-grow: 1; width: 65px;" />
<ui:Button text="Save" parse-escape-sequences="true" display-tooltip-when-elided="true" name="Save" style="padding-left: 23px;" />
</ui:VisualElement>
<ui:VisualElement style="flex-grow: 0; flex-direction: row; align-items: stretch; justify-content: flex-start; align-self: auto;">
<ui:Button text="&lt;&lt;" display-tooltip-when-elided="true" name="PrevLevel" style="flex-grow: 1;" />
<ui:IntegerField value="1" name="LevelNum" style="flex-grow: 1;" />
<ui:Button text="&gt;&gt;" display-tooltip-when-elided="true" name="NextLevel" style="flex-grow: 1;" />
<ui:Button text="+" display-tooltip-when-elided="true" name="NewLevel" style="flex-grow: 0; font-size: 10px;" />
<ui:Button text="-" display-tooltip-when-elided="true" name="DelLevel" style="flex-grow: 0; font-size: 10px;" />
</ui:VisualElement>
</ui:VisualElement>
</ui:UXML>

View File

@ -0,0 +1,10 @@
fileFormatVersion: 2
guid: 2843d5a1b7b249c1a82e504d9ea206b5
ScriptedImporter:
internalIDToNameTable: []
externalObjects: {}
serializedVersion: 2
userData:
assetBundleName:
assetBundleVariant:
script: {fileID: 13804, guid: 0000000000000000e000000000000000, type: 0}

View File

@ -0,0 +1,3 @@
fileFormatVersion: 2
guid: 98e15f087cce422ca0b92be25dc59b2e
timeCreated: 1727347721

View File

@ -0,0 +1,76 @@
.grid-row {
flex-direction: row;
margin-bottom: 2px; /* Adjust this value to change vertical spacing */
}
.grid-cell {
width: 60px;
height: 60px;
margin-right: 2px; /* Horizontal spacing */
padding: 0;
border-width: 0;
border-radius: 0;
background-color: rgb(93, 93, 93);
}
.grid-cell.active {
background-color: rgb(150, 150, 150);
}
#title {
font-size: 18px;
margin-bottom: 10px;
}
#nav-container {
flex-direction: row;
margin-bottom: 10px;
width: 320px;
}
#index-field {
width: 30px;
}
#action-container {
flex-direction: row;
margin-bottom: 10px;
width: 320px;
}
#grid-container {
width: 320px;
}
Button {
background-color: rgb(51, 51, 51);
color: white;
padding-left: 10px;
padding-right: 10px;
padding-top: 5px;
padding-bottom: 5px;
border-width: 0;
}
Button:hover {
background-color: rgb(77, 77, 77);
}
.classic-mode-box {
border: 1px solid #ccc;
padding: 10px;
margin: 10px 0;
border-radius: 5px;
background-color: #2d2d2d;
width: 325px;
}
.classic-mode-title {
font-size: 14px;
font-weight: bold;
margin-bottom: 5px;
}
.classic-mode-field {
margin-top: 5px;
}

View File

@ -0,0 +1,3 @@
fileFormatVersion: 2
guid: 120cffbb3ad24b9cb80fdc7e83e734e0
timeCreated: 1727348630

View File

@ -0,0 +1,34 @@
.tutorial-fields-container {
flex-direction: row;
align-items: center;
width: 100%;
padding: 0;
}
.property-label {
width: 36%;
}
.fields-container {
flex-direction: row;
flex-grow: 1;
flex-shrink: 1;
}
.unity-enum-field {
min-width: 80px;
flex-shrink: 1;
}
.unity-integer-field {
min-width: 40px;
flex-shrink: 1;
}
.unity-base-field__label {
display: none;
}
.unity-base-field__input {
margin: 0;
}

View File

@ -0,0 +1,11 @@
fileFormatVersion: 2
guid: bb8223e5df7fd414a810ea99b3510d7d
ScriptedImporter:
internalIDToNameTable: []
externalObjects: {}
serializedVersion: 2
userData:
assetBundleName:
assetBundleVariant:
script: {fileID: 12385, guid: 0000000000000000e000000000000000, type: 0}
disableValidation: 0