Ejemplo n.º 1
0
    public static void ReplaceObject(WorldObjectContainer worldObjects, int x, int z, int y, Tile.ID id)
    {
        // TODO: Check ID of object to see if it is the same, if so, do nothing.

        DestroyObject(worldObjects, x, z, y);
        InstantiateObject(x, z, y, id, worldObjects);
    }
Ejemplo n.º 2
0
    public void Init()
    {
        worldData    = WorldDataGenerator.GenerateEmptyWorld(worldWidth, worldLength, worldHeight);
        worldObjects = new WorldObjectContainer(worldWidth, worldLength, worldHeight, this.transform, worldData);

        WorldObjectManager.InstantiateAllObjects(worldData, worldObjects);
    }
Ejemplo n.º 3
0
 public void Init(WorldObjectContainer worldObjectContainer, Tile.ID id, int x, int z, int y)
 {
     this.worldObjectContainer = worldObjectContainer;
     this.id = id;
     this.x  = x;
     this.z  = z;
     this.y  = y;
 }
Ejemplo n.º 4
0
 public static void DestroyAllObjects(WorldObjectContainer worldObjects)
 {
     for (int y = 0; y < worldObjects.GetHeight(); y++)
     {
         for (int x = 0; x < worldObjects.GetWidth(); x++)
         {
             for (int z = 0; z < worldObjects.GetLength(); z++)
             {
                 DestroyObject(worldObjects, x, z, y);
             }
         }
     }
 }
Ejemplo n.º 5
0
 public static void InstantiateAllObjects(WorldDataContainer worldData, WorldObjectContainer worldObjects)
 {
     // Instantiate all objects based on IDs contained in worldData into worldObjects container
     for (int y = 0; y < worldData.GetHeight(); y++)
     {
         for (int x = 0; x < worldData.GetWidth(); x++)
         {
             for (int z = 0; z < worldData.GetLength(); z++)
             {
                 InstantiateObject(x, z, y, worldData.GetData(x, z, y), worldObjects);
             }
         }
     }
 }
Ejemplo n.º 6
0
    public static void InstantiateObject(int x, int z, int y, Tile.ID id, WorldObjectContainer worldObjects)
    {
        GameObject obj = WorldObjectFactory.Instantiate(x, z, y, id);

        if (obj == null)
        {
            return;
        }

        ObjectData objData = obj.AddComponent <ObjectData>();

        objData.Init(worldObjects, id, x, z, y);
        worldObjects.SetObject(x, z, y, obj);
        obj.transform.SetParent(worldObjects.GetParent());
    }
Ejemplo n.º 7
0
 public static void DestroyObject(WorldObjectContainer worldObjects, int x, int z, int y)
 {
     GameObject.Destroy(worldObjects.GetObject(x, z, y));
 }