public void initializePlayerDeck() { aPlayerDeck.Clear(); List <GameObject> CityMap = GameObject.Find("CityHub").GetComponent <CityHub> ().CityNodeList; for (int i = 0; i < CityMap.Count; i++) { aPlayerDeck.Add(CityCard.get(CityMap [i])); } //TODO Add EventCards //Shuffling for (int i = 0; i < aPlayerDeck.Count; i++) { GameObject temp = aPlayerDeck[i]; int randomIndex = Random.Range(i, aPlayerDeck.Count); aPlayerDeck[i] = aPlayerDeck[randomIndex]; aPlayerDeck[randomIndex] = temp; } //Add Epidemic Card int x = aPlayerDeck.Count / EpidemicCard.numberOfEC(); for (int i = 0; i < EpidemicCard.numberOfEC(); i++) { int y = Random.Range(i * x, (i + 1) * x); aPlayerDeck.Insert(y + i, EpidemicCard.get(i)); } }
public GameData(Game game) { challenge = game.getChallenge(); currentGamePhase = game.getCurrentPhase(); currentPlayerRoleKind = game.getCurrentPlayer().getRoleKind(); infectionRateIndex = game.getInfectionIndex(); outBreakRate = game.getOutbreakRate(); remainingResearch = game.getRemainingResearch(); seed = game.seed; BioTerroristVolunteer = game.BioTerroristVolunteer; currentPlayerIndex = game.currentPlayerIndex; difficulity = game.nEpidemicCard; playerCardDeck = game.getPlayerCardDeckString(); playerDiscardPile = game.getPlayerDiscardPileString(); infectionCardDeck = game.getInfectionDeckString(); infectionDiscardPile = game.getInfectionDiscardPileString(); allHandCards = game.getAllHandCards(); EpidemicCardIntList = EpidemicCard.getEpidemicCard().getIntList(); foreach (City city in game.getCities()) { CityInfo cityInfo = new CityInfo(city); CityInfoList.Add(cityInfo); } foreach (KeyValuePair <Color, Disease> entry in game.getDiseases()) { diseaseInfoList.Add(new DiseaseInfo(entry.Value)); } foreach (Player player in game.getPlayers()) { PlayerCardList playerHand = new PlayerCardList(); mobileHospitalActivated.Add(player.getMobileHospitalActivated()); if (player.getRoleKind() == RoleKind.ContingencyPlanner && player.getEventCardOnTopOfRoleCard() != null) { eventCardOnTopOfRoleCard = player.getEventCardOnTopOfRoleCard().getName(); } if (player.getRoleKind() == RoleKind.FieldOperative) { FOcubes = player.getAllCubes(); } hasCommercialTravelBanInfrontOfPlayer.Add(player.hasEventCardInFront()); //CommercialTravelBanTurn.Add (player.getCommercialTravelBanTurn()); roleKindList.Add(player.getRoleKind()); foreach (PlayerCard pc in player.getHand()) { if (pc.getType().Equals(CardType.CityCard)) { CityCard cityCard = (CityCard)pc; playerHand.playerHand.Add(cityCard.getName()); //Debug.Log ("City Card: " + cityCard.getName()); } else if (pc.getType().Equals(CardType.EventCard)) { EventCard eventCard = (EventCard)pc; playerHand.playerHand.Add(eventCard.getName()); //Debug.Log ("Event Card: " + eventCard.getEventKind()); } else { InfectionCard infectionCard = (InfectionCard)pc; playerHand.playerHand.Add((infectionCard.getName())); //Debug.Log ("Event Card: " + infectionCard.getName()); } } playerCardList.Add(playerHand); } }
public void dummyInitialize() { CityCard.initialize(CityNodeList); InfectionCard.initialize(CityNodeList); EpidemicCard.initialize(3); }