Exemplo n.º 1
0
        static public void AcquirePackage(RequestContext request)
        {
            int userstate = UserHandler.AuthUser(request);

            if (userstate == 1 || userstate == 2)     //eingeloggt
            {
                User user = UserHandler.GetUserDataByToken(request);
                if (user.coins < 5)
                {
                    Output.WriteConsole(Output.InsufficientCoins);
                    return;
                }

                try
                {
                    CardsPacksDatabaseHandler.AcquirePackage(user);
                    user.coins -= 5;
                    UserHandler.UpdateCoins(user);
                    Output.WriteConsole(Output.PackageTransactionSuccess);
                }
                catch (Exception e)
                {
                    Output.WriteConsole(e.Message);
                }

                return;
            }
            Output.WriteConsole(Output.AuthError);
        }
Exemplo n.º 2
0
        public static void FriendBattleRequest(RequestContext request)
        {
            int userstate = UserHandler.AuthUser(request);

            if (userstate == 1 || userstate == 2)
            {
                User user   = UserHandler.GetUserDataByToken(request);
                User friend = UserHandler.GetUserDataByUsername(ExtractUsernameFromRessource(request.Ressource));
                if (friend != null && FriendlistHandler.CheckFriends(user, friend))
                {
                    if (user.deck_set && friend.deck_set)
                    {
                        BattleManager battle = new BattleManager(user, friend);
                        battle.PrepareDecks();
                        battle.StartFriendBattle();
                        return;
                    }
                    Output.WriteConsole(Output.FriendMatchDeckNotDefined);
                    return;
                }
                Output.WriteConsole(Output.FriendMatchNotInFl);
                return;
            }
            Output.WriteConsole(Output.AuthError);
        }
Exemplo n.º 3
0
        public static void MatchmadeBattleRequest(RequestContext request)
        {
            int userstate = UserHandler.AuthUser(request);

            if (userstate == 1 || userstate == 2)     //eingeloggt
            {
                User user = UserHandler.GetUserDataByToken(request);
                if (user.deck_set)
                {
                    try
                    {
                        User          opp    = FindOpponent(user);
                        BattleManager battle = new BattleManager(user, opp);
                        battle.PrepareDecks();
                        battle.StartMatchmadeBattle();
                    }
                    catch (Exception e)
                    {
                        Output.WriteConsole(e.Message);
                    }
                    return;
                }
                Output.WriteConsole(Output.RatedMatchDeckNotDefined);
                return;
            }
            Output.WriteConsole(Output.AuthError);
        }
Exemplo n.º 4
0
        static public void Trade(RequestContext request)
        {
            int userstate = UserHandler.AuthUser(request);

            if (userstate == 1 || userstate == 2)
            {
                string tradeId = ExtractIdFromRessource(request.Ressource);
                User   user    = UserHandler.GetUserDataByToken(request);
                if (!TradingDatabaseHandler.CheckDealToUser(tradeId, user))
                {
                    string    offeredCardId = request.Message.Trim('"');
                    DummyCard dummyCard     = CardsUsersDatabaseHandler.GetDummyCard(user, offeredCardId);
                    if (dummyCard != null)
                    {
                        ICard card = DummyCardConverter.Convert(dummyCard);
                        if (TradingDatabaseHandler.Trade(tradeId, user, offeredCardId, card.type, card.damage))
                        {
                            TradingDatabaseHandler.DeleteTradingDeal(tradeId);
                            Output.WriteConsole(Output.TradeSuccess);
                            return;
                        }
                        Output.WriteConsole(Output.TradeConditionsNotMet);
                        return;
                    }
                    Output.WriteConsole(Output.TradeInvalidCard);
                    return;
                }
                Output.WriteConsole(Output.TradeSelfTrade);
                return;
            }
            Output.WriteConsole(Output.AuthError);
        }
Exemplo n.º 5
0
        static public void CreateDeal(RequestContext request)
        {
            int userstate = UserHandler.AuthUser(request);

            if (userstate == 1 || userstate == 2)
            {
                TradeItem item = JsonConvert.DeserializeObject <TradeItem>(request.Message);
                User      user = UserHandler.GetUserDataByToken(request);
                if (UserCardsHandler.CheckValidCardToUser(item.cardToTrade, user))
                {
                    try
                    {
                        TradingDatabaseHandler.CreateTradingDeal(user, item);
                        Output.WriteConsole(Output.TradeCreationSuccess);
                    }
                    catch (Exception e)
                    {
                        Output.WriteConsole(e.Message);
                    }
                    return;
                }
                Output.WriteConsole(Output.TradeCreationInvalidCard);
                return;
            }
            Output.WriteConsole(Output.AuthError);
        }
Exemplo n.º 6
0
        static public string ShowFriendlist(RequestContext request)
        {
            int userstate = UserHandler.AuthUser(request);

            if (userstate == 1 || userstate == 2)
            {
                return(FriendsDatabaseHandler.ShowFriendlist(UserHandler.GetUserDataByToken(request)));
            }
            return(Output.AuthError);
        }
Exemplo n.º 7
0
        static public string ShowStack(RequestContext request)
        {
            int userstate = UserHandler.AuthUser(request);

            if (userstate == 1 || userstate == 2)
            {
                User user = UserHandler.GetUserDataByToken(request);

                return(CardsUsersDatabaseHandler.GetStackByUser(user));
            }
            return(Output.AuthError);
        }
Exemplo n.º 8
0
        static public void ConfigureDeck(RequestContext request)
        {
            int userstate = UserHandler.AuthUser(request);

            if (userstate == 1 || userstate == 2)
            {
                string[] strings = PrepareStrings(request.Message);
                User     user    = UserHandler.GetUserDataByToken(request);

                CardsUsersDatabaseHandler.UpdateDeck(user, strings);
                return;
            }
            Output.WriteConsole(Output.AuthError);
        }
Exemplo n.º 9
0
        static public string DeleteFriend(RequestContext request)
        {
            int userstate = UserHandler.AuthUser(request);

            if (userstate == 1 || userstate == 2)
            {
                string friendName = ExtractUsernameFromRessource(request.Ressource);
                User   user       = UserHandler.GetUserDataByUsername(friendName);
                if (user != null)
                {
                    return(FriendsDatabaseHandler.DeleteFriend(UserHandler.GetUserDataByToken(request), UserHandler.GetUserDataByUsername(friendName)));
                }
                return(Output.UserDoesNotExist);
            }
            return(Output.AuthError);
        }
Exemplo n.º 10
0
        static public string DeleteDeal(RequestContext request)
        {
            int userstate = UserHandler.AuthUser(request);

            if (userstate == 1 || userstate == 2)
            {
                string id = ExtractIdFromRessource(request.Ressource);
                if (TradingDatabaseHandler.CheckDealToUser(id, UserHandler.GetUserDataByToken(request)))
                {
                    TradingDatabaseHandler.DeleteTradingDeal(id);
                    return(Output.TradeDeletionSuccess);
                }
                return(Output.TradeDeletionError);
            }
            return(Output.AuthError);
        }
Exemplo n.º 11
0
        static public void SellCard(RequestContext request)
        {
            int userstate = UserHandler.AuthUser(request);

            if (userstate == 1 || userstate == 2)
            {
                User   user   = UserHandler.GetUserDataByToken(request);
                string cardId = request.Message.Trim('"');
                if (UserCardsHandler.CheckValidCardToUser(cardId, user))
                {
                    UserCardsHandler.SellCard(cardId, user);
                    Output.WriteConsole(Output.CardSoldSuccess);
                    return;
                }
                Output.WriteConsole(Output.CardSoldError);
                return;
            }
            Output.WriteConsole(Output.AuthError);
        }
Exemplo n.º 12
0
        static public void AddFriend(RequestContext request)
        {
            int userstate = UserHandler.AuthUser(request);

            if (userstate == 1 || userstate == 2)
            {
                string friendName = ExtractUsernameFromRessource(request.Ressource);
                User   user       = UserHandler.GetUserDataByUsername(friendName);
                if (user != null)
                {
                    FriendsDatabaseHandler.AddFriend(UserHandler.GetUserDataByToken(request), UserHandler.GetUserDataByUsername(friendName)); //To be implemented
                }
                else
                {
                    Output.WriteConsole(Output.UserDoesNotExist);
                }
                return;
            }
            Output.WriteConsole(Output.AuthError);
        }