示例#1
0
    public async Task <Item> DeleteItem(Guid playerId, Guid itemId)
    {
        PlayerListHolder players = await ReadFile();

        Item itemToRemove = new Item();

        for (int i = 0; i < players.playerList.Count; i++)
        {
            if (players.playerList[i].Id == playerId)
            {
                for (int j = 0; j < players.playerList[i].itemList.Count; j++)
                {
                    if (players.playerList[i].itemList[j].itemId == itemId)
                    {
                        itemToRemove = players.playerList[i].itemList[j];
                        players.playerList[i].itemList.RemoveAt(j);
                        File.WriteAllText("game-dev.txt", JsonConvert.SerializeObject(players));

                        return(itemToRemove);
                    }
                }
            }
        }

        return(null);
    }
示例#2
0
    public async Task <Player> Create(Player player)
    {
        PlayerListHolder players = await ReadFile();

        players.playerList.Add(player);
        File.WriteAllText("game-dev.txt", JsonConvert.SerializeObject(players));
        return(player);
    }
示例#3
0
    public async Task <PlayerListHolder> ReadFile()
    {
        var    players = new PlayerListHolder();
        string json    = await File.ReadAllTextAsync("game-dev.txt");

        if (File.ReadAllText("game-dev.txt").Length != 0)
        {
            return(JsonConvert.DeserializeObject <PlayerListHolder>(json));
        }
        return(players);
    }
示例#4
0
    public async Task <List <Player> > Sorting()
    {
        PlayerListHolder players = await ReadFile();

        // var filters = Builders<Player>.Filter.Gte(players => players.Level, 19) & Builders<Player>.Filter.Lte(players => players.Level, 30);
        // var players = await ReadFile.Find(filter).ToListAsync();



        return(null);
        // return players.ToArray();
    }
示例#5
0
    public async Task <Item[]> GetAllItems(Guid playerId)
    {
        PlayerListHolder players = await ReadFile();

        for (int i = 0; i < players.listOfPlayers.Count; i++)
        {
            if (players.listOfPlayers[i].Id == playerId)
            {
                return(players.listOfPlayers[i].itemList.ToArray());
            }
        }
        return(null);
    }
示例#6
0
    public async Task <Player> Get(Guid id)
    {
        PlayerListHolder players = await ReadFile();

        Player playerToGet = new Player();

        foreach (Player player in players.listOfPlayers)
        {
            if (player.Id == id)
            {
                playerToGet = player;
                return(playerToGet);
            }
        }
        return(null);
    }
示例#7
0
    public async Task <Player> Modify(Guid id, ModifiedPlayer player)
    {
        PlayerListHolder players = await ReadFile();

        Player playerToModify = new Player();

        foreach (Player oldplayer in players.listOfPlayers)
        {
            if (oldplayer.Id == id)
            {
                oldplayer.Score = player.Score;
                playerToModify  = oldplayer;
                File.WriteAllText("game-dev.txt", JsonConvert.SerializeObject(players));
            }
        }
        return(playerToModify);
    }
示例#8
0
    public async Task <Player> Get(Guid id)
    {
        PlayerListHolder players = await ReadFile();

        Player getPlayer = new Player();

        foreach (Player player in players.playerList)
        {
            if (player.Id == id)
            {
                getPlayer = player;

                return(getPlayer);
            }
        }

        return(null);
    }
示例#9
0
    public async Task <Player> Delete(Guid id)
    {
        PlayerListHolder players = await ReadFile();

        Player playerToDelete = new Player();

        for (int i = 0; i < players.listOfPlayers.Count; i++)
        {
            if (players.listOfPlayers[i].Id == id)
            {
                playerToDelete = players.listOfPlayers[i];
                players.listOfPlayers.RemoveAt(i);
                File.WriteAllText("game-dev.txt", JsonConvert.SerializeObject(players));
                return(playerToDelete);
            }
        }

        return(null);
    }
示例#10
0
    public async Task <Item> UpdateItem(Guid playerId, Guid itemId, ModifiedItem item)
    {
        PlayerListHolder players = await ReadFile();

        for (int i = 0; i < players.listOfPlayers.Count; i++)
        {
            if (players.listOfPlayers[i].Id == playerId)
            {
                for (int j = 0; j < players.listOfPlayers[i].itemList.Count; j++)
                {
                    if (players.listOfPlayers[i].itemList[j].itemId == itemId)
                    {
                        players.listOfPlayers[i].itemList[j].level = item.level; // tässä nyt on päätetty että updateitemilla muutetaan itemin leveliä
                        File.WriteAllText("game-dev.txt", JsonConvert.SerializeObject(players));
                        return(players.listOfPlayers[i].itemList[j]);
                    }
                }
            }
        }
        return(null);
    }
示例#11
0
    public async Task <Item> CreateItem(Guid playerId, Item item)
    {
        PlayerListHolder players = await ReadFile();

        Player playerToGetItem = new Player();

        for (int i = 0; i < players.listOfPlayers.Count; i++)
        {
            if (players.listOfPlayers[i].Id == playerId)
            {
                playerToGetItem = players.listOfPlayers[i];
            }
        }
        if (playerToGetItem.itemList == null)
        {
            playerToGetItem.itemList = new List <Item>();
        }
        playerToGetItem.itemList.Add(item);
        File.WriteAllText("game-dev.txt", JsonConvert.SerializeObject(players));
        return(item);
    }
示例#12
0
    public async Task <Item> GetItem(Guid playerId, Guid itemId)
    {
        PlayerListHolder players = await ReadFile();

        Item itemToGet = new Item();

        for (int i = 0; i < players.listOfPlayers.Count; i++)
        {
            if (players.listOfPlayers[i].Id == playerId)
            {
                for (int j = 0; j < players.listOfPlayers[i].itemList.Count; j++)
                {
                    if (players.listOfPlayers[i].itemList[j].itemId == itemId)
                    {
                        itemToGet = players.listOfPlayers[i].itemList[j];
                        return(itemToGet);
                    }
                }
            }
        }
        return(null);
    }
示例#13
0
    public async Task <Item> UpdateItem(Guid playerId, Guid itemId, ModifiedItem item)
    {
        PlayerListHolder players = await ReadFile();

        for (int i = 0; i < players.playerList.Count; i++)
        {
            if (players.playerList[i].Id == playerId)
            {
                for (int j = 0; j < players.playerList[i].itemList.Count; j++)
                {
                    if (players.playerList[i].itemList[j].itemId == itemId)
                    {
                        players.playerList[i].itemList[j].level = item.Level;
                        File.WriteAllText("game-dev.txt", JsonConvert.SerializeObject(players));

                        return(players.playerList[i].itemList[j]);
                    }
                }
            }
        }

        return(null);
    }
示例#14
0
    public async Task <Player> PopAndIncrement(Guid playerId, Guid itemId, int score)
    {
        PlayerListHolder players = await ReadFile();

        return(null);
    }
示例#15
0
    public async Task <List <Player> > SubDoc(ItemType itemType)
    {
        PlayerListHolder players = await ReadFile();

        return(null);
    }
示例#16
0
    public async Task <Player> SelectorMatching(string playerName)
    {
        PlayerListHolder players = await ReadFile();

        return(null);
    }
示例#17
0
    public async Task <List <Player> > Ranges(int points)
    {
        PlayerListHolder players = await ReadFile();

        return(null);
    }
示例#18
0
    public async Task <Player[]> GetAll()
    {
        PlayerListHolder players = await ReadFile();

        return(players.playerList.ToArray());
    }