Switched to Direction enum
This commit is contained in:
52
Assets/Test stuff/MazeDefinitionGenerator.asset
Normal file
52
Assets/Test stuff/MazeDefinitionGenerator.asset
Normal file
@@ -0,0 +1,52 @@
|
||||
%YAML 1.1
|
||||
%TAG !u! tag:unity3d.com,2011:
|
||||
--- !u!114 &11400000
|
||||
MonoBehaviour:
|
||||
m_ObjectHideFlags: 0
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
m_GameObject: {fileID: 0}
|
||||
m_Enabled: 1
|
||||
m_EditorHideFlags: 0
|
||||
m_Script: {fileID: 11500000, guid: c333ccfdd0cbdbc4ca30cef2dd6e6b9b, type: 3}
|
||||
m_Name: MazeDefinitionGenerator
|
||||
m_EditorClassIdentifier:
|
||||
serializedUdonProgramAsset: {fileID: 11400000, guid: ea99e044f80fed446bb669640608f521, type: 2}
|
||||
udonAssembly:
|
||||
assemblyError:
|
||||
sourceCsScript: {fileID: 11500000, guid: 30a9bec71a4b36a41a9b6ee899bef38c, type: 3}
|
||||
scriptVersion: 2
|
||||
compiledVersion: 2
|
||||
behaviourSyncMode: 0
|
||||
hasInteractEvent: 0
|
||||
scriptID: 6724330659013342737
|
||||
serializationData:
|
||||
SerializedFormat: 2
|
||||
SerializedBytes:
|
||||
ReferencedUnityObjects: []
|
||||
SerializedBytesString:
|
||||
Prefab: {fileID: 0}
|
||||
PrefabModificationsReferencedUnityObjects: []
|
||||
PrefabModifications: []
|
||||
SerializationNodes:
|
||||
- Name: fieldDefinitions
|
||||
Entry: 7
|
||||
Data: 0|System.Collections.Generic.Dictionary`2[[System.String, mscorlib],[UdonSharp.Compiler.FieldDefinition,
|
||||
UdonSharp.Editor]], mscorlib
|
||||
- Name: comparer
|
||||
Entry: 7
|
||||
Data: 1|System.Collections.Generic.GenericEqualityComparer`1[[System.String,
|
||||
mscorlib]], mscorlib
|
||||
- Name:
|
||||
Entry: 8
|
||||
Data:
|
||||
- Name:
|
||||
Entry: 12
|
||||
Data: 0
|
||||
- Name:
|
||||
Entry: 13
|
||||
Data:
|
||||
- Name:
|
||||
Entry: 8
|
||||
Data:
|
||||
8
Assets/Test stuff/MazeDefinitionGenerator.asset.meta
Normal file
8
Assets/Test stuff/MazeDefinitionGenerator.asset.meta
Normal file
@@ -0,0 +1,8 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 909752e684c57f24093795e3ba5e2c80
|
||||
NativeFormatImporter:
|
||||
externalObjects: {}
|
||||
mainObjectFileID: 11400000
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
113
Assets/Test stuff/MazeDefinitionGenerator.cs
Normal file
113
Assets/Test stuff/MazeDefinitionGenerator.cs
Normal file
@@ -0,0 +1,113 @@
|
||||
|
||||
using Marro.PacManUdon;
|
||||
using UdonSharp;
|
||||
using UnityEngine;
|
||||
using VRC.SDKBase;
|
||||
using VRC.Udon;
|
||||
|
||||
public class MazeDefinitionGenerator : UdonSharpBehaviour
|
||||
{
|
||||
void Start()
|
||||
{
|
||||
GetMazeMap();
|
||||
}
|
||||
|
||||
private void GetMazeMap()
|
||||
{
|
||||
var pellets = GetComponentsInChildren<Pellet>(includeInactive: true);
|
||||
|
||||
var width = 28;
|
||||
var height = 31;
|
||||
int[] map = new int[width * height];
|
||||
int[] pelletLocations = new int[pellets.Length];
|
||||
var collisionMap = GetCollisionMap();
|
||||
|
||||
for (int i = 0; i < map.Length; i++)
|
||||
{
|
||||
if (collisionMap[i])
|
||||
{
|
||||
map[i] = (int)PacManTileType.Wall;
|
||||
}
|
||||
else
|
||||
{
|
||||
map[i] = (int)PacManTileType.Empty;
|
||||
}
|
||||
}
|
||||
|
||||
for (int i = 0; i < pellets.Length; i++)
|
||||
{
|
||||
Pellet pellet = pellets[i];
|
||||
var position = GridMover.PositionToGrid(new Vector2(pellet.transform.localPosition.x, - pellet.transform.localPosition.y));
|
||||
var index = (int)position.x + (int)position.y * width;
|
||||
map[index] = i;
|
||||
pelletLocations[i] = index;
|
||||
}
|
||||
|
||||
var result = "";
|
||||
for (int i = 0; i < map.Length; i++)
|
||||
{
|
||||
if (map[i] < 0)
|
||||
{
|
||||
result += $"{map[i]:00}, ";
|
||||
}
|
||||
else
|
||||
{
|
||||
result += $"{map[i]:000}, ";
|
||||
}
|
||||
|
||||
if (i % width == width - 1)
|
||||
{
|
||||
result += "\n";
|
||||
}
|
||||
}
|
||||
|
||||
Debug.Log(result);
|
||||
|
||||
result = "";
|
||||
for (int i = 0; i < pelletLocations.Length; i++)
|
||||
{
|
||||
result += $"{pelletLocations[i]:000}, ";
|
||||
|
||||
if (i % 16 == 15)
|
||||
{
|
||||
result += "\n";
|
||||
}
|
||||
}
|
||||
|
||||
Debug.Log(result);
|
||||
}
|
||||
|
||||
public static bool[] GetCollisionMap() => new bool[] {
|
||||
true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true ,
|
||||
true, false, false, false, false, false, false, false, false, false, false, false, false, true, true, false, false, false, false, false, false, false, false, false, false, false, false, true ,
|
||||
true, false, true, true, true, true, false, true, true, true, true, true, false, true, true, false, true, true, true, true, true, false, true, true, true, true, false, true ,
|
||||
true, false, true, false, false, true, false, true, false, false, false, true, false, true, true, false, true, false, false, false, true, false, true, false, false, true, false, true ,
|
||||
true, false, true, true, true, true, false, true, true, true, true, true, false, true, true, false, true, true, true, true, true, false, true, true, true, true, false, true ,
|
||||
true, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, true ,
|
||||
true, false, true, true, true, true, false, true, true, false, true, true, true, true, true, true, true, true, false, true, true, false, true, true, true, true, false, true ,
|
||||
true, false, true, true, true, true, false, true, true, false, true, true, true, true, true, true, true, true, false, true, true, false, true, true, true, true, false, true ,
|
||||
true, false, false, false, false, false, false, true, true, false, false, false, false, true, true, false, false, false, false, true, true, false, false, false, false, false, false, true ,
|
||||
true, true, true, true, true, true, false, true, true, true, true, true, false, true, true, false, true, true, true, true, true, false, true, true, true, true, true, true ,
|
||||
false, false, false, false, false, true, false, true, true, true, true, true, false, true, true, false, true, true, true, true, true, false, true, false, false, false, false, false ,
|
||||
false, false, false, false, false, true, false, true, true, false, false, false, false, false, false, false, false, false, false, true, true, false, true, false, false, false, false, false ,
|
||||
false, false, false, false, false, true, false, true, true, false, true, true, true, true, true, true, true, true, false, true, true, false, true, false, false, false, false, false ,
|
||||
true, true, true, true, true, true, false, true, true, false, true, false, false, false, false, false, false, true, false, true, true, false, true, true, true, true, true, true ,
|
||||
false, false, false, false, false, false, false, false, false, false, true, false, false, false, false, false, false, true, false, false, false, false, false, false, false, false, false, false ,
|
||||
true, true, true, true, true, true, false, true, true, false, true, false, false, false, false, false, false, true, false, true, true, false, true, true, true, true, true, true ,
|
||||
false, false, false, false, false, true, false, true, true, false, true, true, true, true, true, true, true, true, false, true, true, false, true, false, false, false, false, false ,
|
||||
false, false, false, false, false, true, false, true, true, false, false, false, false, false, false, false, false, false, false, true, true, false, true, false, false, false, false, false ,
|
||||
false, false, false, false, false, true, false, true, true, false, true, true, true, true, true, true, true, true, false, true, true, false, true, false, false, false, false, false ,
|
||||
true, true, true, true, true, true, false, true, true, false, true, true, true, true, true, true, true, true, false, true, true, false, true, true, true, true, true, true ,
|
||||
true, false, false, false, false, false, false, false, false, false, false, false, false, true, true, false, false, false, false, false, false, false, false, false, false, false, false, true ,
|
||||
true, false, true, true, true, true, false, true, true, true, true, true, false, true, true, false, true, true, true, true, true, false, true, true, true, true, false, true ,
|
||||
true, false, true, true, true, true, false, true, true, true, true, true, false, true, true, false, true, true, true, true, true, false, true, true, true, true, false, true ,
|
||||
true, false, false, false, true, true, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, true, true, false, false, false, true ,
|
||||
true, true, true, false, true, true, false, true, true, false, true, true, true, true, true, true, true, true, false, true, true, false, true, true, false, true, true, true ,
|
||||
true, true, true, false, true, true, false, true, true, false, true, true, true, true, true, true, true, true, false, true, true, false, true, true, false, true, true, true ,
|
||||
true, false, false, false, false, false, false, true, true, false, false, false, false, true, true, false, false, false, false, true, true, false, false, false, false, false, false, true ,
|
||||
true, false, true, true, true, true, true, true, true, true, true, true, false, true, true, false, true, true, true, true, true, true, true, true, true, true, false, true ,
|
||||
true, false, true, true, true, true, true, true, true, true, true, true, false, true, true, false, true, true, true, true, true, true, true, true, true, true, false, true ,
|
||||
true, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, true ,
|
||||
true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true
|
||||
};
|
||||
}
|
||||
11
Assets/Test stuff/MazeDefinitionGenerator.cs.meta
Normal file
11
Assets/Test stuff/MazeDefinitionGenerator.cs.meta
Normal file
@@ -0,0 +1,11 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 30a9bec71a4b36a41a9b6ee899bef38c
|
||||
MonoImporter:
|
||||
externalObjects: {}
|
||||
serializedVersion: 2
|
||||
defaultReferences: []
|
||||
executionOrder: 0
|
||||
icon: {instanceID: 0}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
@@ -6,6 +6,7 @@ using UnityEngine;
|
||||
using UnityEngine.UI;
|
||||
using VRC.SDKBase;
|
||||
using VRC.Udon;
|
||||
using UnityEngine.Tilemaps;
|
||||
|
||||
public class TestBallManager : UdonSharpBehaviour
|
||||
{
|
||||
|
||||
Reference in New Issue
Block a user