private void SetupScrollbar() { int temp; if (collectionTrueDeckFalse) { temp = collection.UniqueCards.Count; } else { temp = CardPackage.GlobalUniqueCardsInList(partOfDeck).Count; } if (temp > slotsCount) { scrollbar.gameObject.SetActive(true); scrollbar.numberOfSteps = (temp - (slotsCount - 1)); scrollbarLastStep = scrollbar.value; } else { scrollbar.gameObject.SetActive(false); scrollbar.numberOfSteps = 1; scrollbarLastStep = 0; } }
private Card GetTempCard(int iterator, int startingStep) { if (collectionTrueDeckFalse) { if ((iterator + startingStep) < collection.UniqueCards.Count) { return(collection.UniqueCards.ElementAt(iterator + startingStep)); } else { return(null); } } else { //Debug.Log (CardPackage.GlobalUniqueCardsInList (partOfDeck).Count); if ((iterator + startingStep) < CardPackage.GlobalUniqueCardsInList(partOfDeck).Count) { return(CardPackage.GlobalUniqueCardsInList(partOfDeck).ElementAt(iterator + startingStep)); } else { return(null); } } }
public void AddCardsToStack(CardPackage pack) { if (Coins > 0) { Stack.AddPackage(pack); Coins -= 5; } }
private string GetCardCountString(Card card) { if (collectionTrueDeckFalse) { return(collection.CountCopies(card).ToString()); } else { return(CardPackage.GlobalCountCopiesInList(partOfDeck, card).ToString()); } }
/// <summary> /// Registers a new package created by an admin. /// </summary> /// <param name="package">The new package.</param> public async Task <bool> RegisterPackage(Session session, CardPackage package) { if (await GetPlayer(session) is not Player) { return(false); } // Authorization would happen here if it existed await _packages.RegisterPackage(package); return(true); }
private void SetupCardPool() { if (collectionTrueDeckFalse) { collection = player.cardCollection; slotsCount = 8; } else { partOfDeck = player.deck.GetListOfCardsOfTypeInDecklist(relevantIfBoolFalse); slotsCount = 12; } }
public void SetUp() { _pack = new List <Card> { new Wizard("wizgan", "Gandalf", 100, ElementType.Normal), new Orc("orcbur", "Burul", 80, ElementType.Normal), new Elve("elverl", "Erlan Erhice", 50, ElementType.Fire), new Dragon("drabal", "Balrog", 150, ElementType.Water), new WaterSpell("watwat", "Water Whirl", 70) }; _package = new CardPackage(); foreach (var card in _pack) { _package.AddCard(card); } }
public void SetUp() { _arenaServiceMock = new Mock <IArenaService>(); _arenaController = new ArenaController(_arenaServiceMock.Object); _user1 = new User("user1", "supergeheim"); _user2 = new User("user2", "secretsecret"); _arena = new Arena(_user1, _user2); _pack = new List <Card> { new Wizard("wizgan", "Gandalf", 100, ElementType.Normal), new Orc("orcbur", "Burul", 80, ElementType.Normal), new Elve("elverl", "Erlan Erhice", 50, ElementType.Fire), new Dragon("drabal", "Balrog", 150, ElementType.Water), new WaterSpell("watwat", "Water Whirl", 70) }; _package = new CardPackage(); foreach (var card in _pack) { _package.AddCard(card); } }
public string DeletePackage(CardPackage package) { throw new NotImplementedException(); }
public Task AddToPackages(CardPackage package) => Task.CompletedTask;
public override void doResponse(OperationRequest operationRequest, SendParameters sendParameters, MyClientPeer peer) { Dictionary <byte, object> dict = operationRequest.Parameters; Dictionary <byte, object> responseParameter = new Dictionary <byte, object>(); try { //获取参数 string userName = (string)DictionaryUtils.getValue <byte, object>(dict, (byte)ParameterCode.UserName); string packageString = (string)DictionaryUtils.getValue <byte, object>(dict, (byte)ParameterCode.CardPackage); Series series = (Series)DictionaryUtils.getValue <byte, object>(dict, (byte)ParameterCode.Series); Application.logger.Info("====================" + userName + packageString + "========================"); //反序列化 CardPackage package = null; using (StringReader reader = new StringReader(packageString)) { XmlSerializer serializer = new XmlSerializer(typeof(CardPackage)); package = (CardPackage)serializer.Deserialize(reader); } //修改user字典的信息 User user = DictionaryUtils.getValue <String, User>(Application.loginUserDict, userName); int number = DictionaryUtils.getValue <Series, int>(user.MyCardsPackage, series); number--; if (number < 0) { responseParameter.Add((byte)ParameterCode.UseCardPackageResult, 0); goto End; } user.MyCardsPackage.Remove(series); if (number != 0) { user.MyCardsPackage.Add(series, number); } for (int i = 0; i < 5; i++) { if (package.isGolden[i]) { int cardNumber = DictionaryUtils.getValue <String, int>(user.MyCards, package.cards[i]); user.MyCards.Remove(package.cards[i]); user.MyCards.Add(package.cards[i], cardNumber + 1000); } else { int cardNumber = DictionaryUtils.getValue <String, int>(user.MyCards, package.cards[i]); user.MyCards.Remove(package.cards[i]); user.MyCards.Add(package.cards[i], cardNumber + 1); } } Application.loginUserDict.Remove(userName); Application.loginUserDict.Add(userName, user); //修改文件数据库的信息 UserManager.disassembleCardInfo(userName, user.MyCards); UserManager.disassembleCardPackageInfo(userName, user.MyCardsPackage); //响应信息 responseParameter.Add((byte)ParameterCode.UseCardPackageResult, 1); } catch (Exception e) { Application.logger.Info("=====================" + e.ToString() + "=========================="); responseParameter.Add((byte)ParameterCode.UseCardPackageResult, 0); } //响应客户端 End : OperationResponse operationResponse = new OperationResponse((byte)OPCode.UseCardPackage, responseParameter); peer.SendOperationResponse(operationResponse, sendParameters); }
/// <summary> /// Adds a new package to the package store. /// </summary> /// <param name="package">The package.</param> public async Task RegisterPackage(CardPackage package) { await _db.AddToPackages(package); await Update(); }
public string AquirePackage(string usertoken, string packageId) { User user; ClientSingleton.GetInstance.ClientMap.TryGetValue(usertoken, out user); if (user.Coins == 0) { return("POST ERR - No coins"); } using NpgsqlConnection con = new NpgsqlConnection(_cs); try { con.Open(); } catch (PostgresException e) { return("POST ERR - No DB connection"); } List <string> cardIds = null; string sqlAllPackages = "SELECT * FROM packages"; using NpgsqlCommand cmdPackages = new NpgsqlCommand(sqlAllPackages, con); using NpgsqlDataReader reader = cmdPackages.ExecuteReader(); while (reader.Read()) { if (reader.GetString(0) == packageId) { try { cardIds = JsonSerializer.Deserialize <PackageDTO>(reader.GetString(1)).CardIds; } catch (Exception e) { cardIds = null; } } } reader.Close(); if (cardIds == null || cardIds.Count == 0) { return("POST ERR - Invalid PackageID"); } CardPackage pack = new CardPackage(); string sqlAllCards = "SELECT * FROM cards"; using NpgsqlCommand cmdCards = new NpgsqlCommand(sqlAllCards, con); using NpgsqlDataReader readerCards = cmdCards.ExecuteReader(); while (readerCards.Read()) { foreach (var cardId in cardIds) { if (readerCards.GetString(0) == cardId) { CardDTO cardDto = new CardDTO(readerCards.GetString(0), readerCards.GetString(1), readerCards.GetString(2), readerCards.GetString(3), readerCards.GetDouble(4)); Card card = cardDto.ToCard(); pack.AddCard(card); } } } user.AddCardsToStack(pack); readerCards.Close(); _userDataService.PersistUserData(user, usertoken); return("POST OK - Package aquired"); }