Exemplo n.º 1
0
    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);
        }
    }
Exemplo n.º 3
0
 public void dummyInitialize()
 {
     CityCard.initialize(CityNodeList);
     InfectionCard.initialize(CityNodeList);
     EpidemicCard.initialize(3);
 }