Example #1
0
    /**
     * load map star prefabs
     */
    void LoadMapStars()
    {
        mapStarPrefabs = new Dictionary <StarColor, MapStar>();
        var objects = Resources.LoadAll("Stars/Map", typeof(GameObject));

        foreach (GameObject obj in objects)
        {
            MapStar star = obj.GetComponent <MapStar>();
            if (star != null)
            {
                StarColor color = (StarColor)star.GetType().GetField("color").GetRawConstantValue();
                mapStarPrefabs.Add(color, star);
                continue;
            }
        }
    }
Example #2
0
    override protected Constellation Construct(ConstellationManifest conMf)
    {
        Constellation con;

        if (constellations.TryGetValue(conMf.position, out con))
        {
            return(con);
        }
        con          = Instantiate(constellationPrefab) as MapConstellation;
        con.Manifest = conMf;
        con.transform.localPosition = conMf.position;

        // stars
        foreach (var starMf in conMf.stars)
        {
            MapStar starPf = game.GetMapStarPrefab(starMf.color);
            MapStar star   = Instantiate(starPf) as MapStar;
            star.manifest      = starMf;
            star.constellation = con;
            con.Stars.Add(star);
//			universeBounds.Encapsulate(con.transform.position + starMf.position);
        }

        // Fleet
        foreach (var shipMf in conMf.fleet)
        {
            FleetShip shipPf = game.GetFleetShipPrefab(shipMf);
            FleetShip ship   = Instantiate(shipPf) as FleetShip;
            ship.transform.parent        = con.transform;
            ship.transform.localPosition = shipMf.position;
            ship.transform.localScale    = new Vector3(3f, 3f, 3f);
            ship.manifest = shipMf;
            con.Fleet.Add(ship);
        }

        constellations.Add(con.Manifest.position, con);
        return(con);
    }