Beispiel #1
0
    public GameData(PlayerInventory inventory, PlayerHealth energy, MapSaveSystem map, float[] pos, string sectorName)
    {
        actualSector = sectorName;
        var limitedAmmo = inventory.limitedAmmo;

        for (int i = 0; i < limitedAmmo.Count; i++)
        {
            if (limitedAmmo[i].maxAmmo > 0)
            {
                ammoMunition.Add(limitedAmmo[i].iD, limitedAmmo[i].maxAmmo);
            }
        }

        time[0] = TimeCounter.hours;
        time[1] = TimeCounter.minutes;
        time[2] = TimeCounter.seconds;
        time[3] = TimeCounter.miliseconds;
        scene   = SceneManager.GetActiveScene().buildIndex;
        reserve = new List <int>(inventory.reserve);
        items   = new List <int>(inventory.items);
        SelectItemsData(inventory);
        position        = new float[2];
        bossesDefeated  = new List <int>(Boss.defeateds);
        tanks           = energy.Tanks;
        position[0]     = pos[0];
        position[1]     = pos[1];
        mappers         = new List <int>(map.mappers);
        tilesX          = new Dictionary <string, List <int> > (map.tilesX);
        tilesY          = new Dictionary <string, List <int> > (map.tilesY);
        tilesRegistered = new Dictionary <float, float>(MapSaveSystem.tilesRegistered);
        miniMapItem     = map.miniMapItem;
    }
Beispiel #2
0
    public static void SavePlayerSlot(PlayerInventory inventory, PlayerHealth energy,
                                      MapSaveSystem map, float[] pos, string sectorName, int slotIndex)
    {
        string          slotPath  = GetSlotPath(slotIndex);
        BinaryFormatter formatter = new BinaryFormatter();
        string          path      = Application.persistentDataPath + slotPath;
        FileStream      stream    = new FileStream(path, FileMode.Create);
        GameData        data      = new GameData(inventory, energy, map, pos, sectorName);

        formatter.Serialize(stream, data);
        stream.Close();
    }
Beispiel #3
0
 /// <summary>保存</summary>
 public MapSaveFileData save()
 {
     return(MapSaveSystem.save(this));
 }