Skip to content

Instantly share code, notes, and snippets.

@wmiller
wmiller / MapBuilder.cs
Created February 3, 2014 04:56
XML Database Example1 InitHeights()
private void InitHeights()
{
HeightField = new int[Width * Height];
for (int y = 0; y < Height; ++y)
{
for (int x = 0; x < Width; ++x)
{
// Compute a position in noise space
float noiseX = (float)x / Width * NoiseFrequency;
@wmiller
wmiller / MapBuilder1.cs
Last active August 29, 2015 13:55
XML Database Example1 MapBuilder1
using UnityEngine;
using System.Collections;
public class MapBuilder1 : MapBuilder
{
public int FeatureChance = 30;
public string[] TileLoadStrings;
public string[] FeatureLoadStrings;
protected override void InitMapObjects()
@wmiller
wmiller / Infos.cs
Created February 3, 2014 05:03
XML Database Example2 Infos
using UnityEngine;
using System.Collections;
using System.Xml;
using System.Xml.Serialization;
[XmlRoot]
public sealed class TileInfo : DatabaseEntry
{
[XmlElement]
public int Height { get; private set; }
@wmiller
wmiller / Infos.xml
Last active August 29, 2015 13:55
XML Database Infos XML
<Database>
<!-- Tile Infos -->
<TileInfo ID="TILE_WATER">
<Height>0</Height>
<FeatureChance>0</FeatureChance>
<PrefabPath>Tiles/TileWater</PrefabPath>
</TileInfo>
<TileInfo ID="TILE_GRASS">
<Height>1</Height>
@wmiller
wmiller / MapBuilder2.cs
Created February 3, 2014 05:06
XML Database MapBuilder2
using UnityEngine;
using System.Collections;
using System.Collections.Generic;
using System.Linq;
public class MapBuilder2 : MapBuilder
{
protected override void InitMapObjects()
{
for (int y = 0; y < Height; ++y)
@wmiller
wmiller / MapBuilder2.cs
Created February 3, 2014 05:07
XML Database Info Loading Example
// Get all tiles in the database that match the height
TileInfo[] tileInfos = Database.Instance.GetEntries<TileInfo>().Where((info) => info.Height == height).ToArray();
@wmiller
wmiller / Database.cs
Last active August 29, 2015 13:55
XML Databse Database.cs
using UnityEngine;
using System.Collections;
using System.Collections.Generic;
using System.IO;
using System.Text;
using System.Xml;
using System.Xml.Serialization;
using System.Runtime;
using System.Runtime.Serialization;
using System.Linq;
@wmiller
wmiller / DatabaseFactory.cs
Created February 3, 2014 05:13
XML Database DatabaseFactory.cs
using UnityEngine;
using System.Collections;
using System.Collections.Generic;
using System.IO;
using System.Text;
using System.Xml;
using System.Xml.Serialization;
using System.Reflection;
public delegate DatabaseEntry DatabaseEntryFactoryDelegate (XmlReader reader);
@wmiller
wmiller / ID.cs
Created February 3, 2014 05:14
XML Database ID.cs
using UnityEngine;
using System.Collections;
using System.Collections.Generic;
using System.IO;
using System.Xml;
using System.Xml.Schema;
using System.Xml.Serialization;
public class ID
{
@wmiller
wmiller / AssetBundleInfo.cs
Created February 3, 2014 21:11
XML Database AssetBundleInfo.cs
using UnityEngine;
using System.Collections;
using System.IO;
using System.Text;
using System.Xml;
using System.Xml.Serialization;
[XmlRoot("AssetBundleInfo")]
public sealed class AssetBundleInfo : DatabaseEntry
{