Example #1
0
 private EncounterDetail[] CreateEncounterPool()
 {
     EncounterDetail[] tempEncounterPool = new EncounterDetail[46];
     tempEncounterPool[(int)Encounter.None] = new EncounterDetail("None", "NON");
     tempEncounterPool[(int)Encounter.Ambush1] = new EncounterDetail("Ambush", "AMB");
     tempEncounterPool[(int)Encounter.Ambush2] = new EncounterDetail("Ambush", "AMB");
     tempEncounterPool[(int)Encounter.Ambush3] = new EncounterDetail("Ambush", "AMB");
     tempEncounterPool[(int)Encounter.Assasin] = new EncounterDetail("Assasin", "ASS");
     tempEncounterPool[(int)Encounter.Bats1] = new EncounterDetail("Bats", "BAT");
     tempEncounterPool[(int)Encounter.Bats2] = new EncounterDetail("Bats", "BAT");
     tempEncounterPool[(int)Encounter.Bats3] = new EncounterDetail("Bats", "BAT");
     tempEncounterPool[(int)Encounter.DesecratedSoil1] = new EncounterDetail("Desecrated Soil", "DES");
     tempEncounterPool[(int)Encounter.DesecratedSoil2] = new EncounterDetail("Desecrated Soil", "DES");
     tempEncounterPool[(int)Encounter.DesecratedSoil3] = new EncounterDetail("Desecrated Soil", "DES");
     tempEncounterPool[(int)Encounter.Fog1] = new EncounterDetail("Fog", "FOG");
     tempEncounterPool[(int)Encounter.Fog2] = new EncounterDetail("Fog", "FOG");
     tempEncounterPool[(int)Encounter.Fog3] = new EncounterDetail("Fog", "FOG");
     tempEncounterPool[(int)Encounter.Fog4] = new EncounterDetail("Fog", "FOG");
     tempEncounterPool[(int)Encounter.MinionwithKnife1] = new EncounterDetail("Minion with Knife", "MIK");
     tempEncounterPool[(int)Encounter.MinionwithKnife2] = new EncounterDetail("Minion with Knife", "MIK");
     tempEncounterPool[(int)Encounter.MinionwithKnife3] = new EncounterDetail("Minion with Knife", "MIK");
     tempEncounterPool[(int)Encounter.MinionwithKnifeandPistol1] = new EncounterDetail("Minion with Knife and Pistol", "MIP");
     tempEncounterPool[(int)Encounter.MinionwithKnifeandPistol2] = new EncounterDetail("Minion with Knife and Pistol", "MIP");
     tempEncounterPool[(int)Encounter.MinionwithKnifeandRifle1] = new EncounterDetail("Minion with Knife and Rifle", "MIR");
     tempEncounterPool[(int)Encounter.MinionwithKnifeandRifle2] = new EncounterDetail("Minion with Knife and Rifle", "MIR");
     tempEncounterPool[(int)Encounter.Hoax1] = new EncounterDetail("Hoax", "HOA");
     tempEncounterPool[(int)Encounter.Hoax2] = new EncounterDetail("Hoax", "HOA");
     tempEncounterPool[(int)Encounter.Lightning1] = new EncounterDetail("Lightning", "LIG");
     tempEncounterPool[(int)Encounter.Lightning2] = new EncounterDetail("Lightning", "LIG");
     tempEncounterPool[(int)Encounter.Peasants1] = new EncounterDetail("Peasants", "PEA");
     tempEncounterPool[(int)Encounter.Peasants2] = new EncounterDetail("Peasants", "PEA");
     tempEncounterPool[(int)Encounter.Plague] = new EncounterDetail("Plague", "PLA");
     tempEncounterPool[(int)Encounter.Rats1] = new EncounterDetail("Rats", "RAT");
     tempEncounterPool[(int)Encounter.Rats2] = new EncounterDetail("Rats", "RAT");
     tempEncounterPool[(int)Encounter.Saboteur1] = new EncounterDetail("Saboteur", "SAB");
     tempEncounterPool[(int)Encounter.Saboteur2] = new EncounterDetail("Saboteur", "SAB");
     tempEncounterPool[(int)Encounter.Spy1] = new EncounterDetail("Spy", "SPY");
     tempEncounterPool[(int)Encounter.Spy2] = new EncounterDetail("Spy", "SPY");
     tempEncounterPool[(int)Encounter.Thief1] = new EncounterDetail("Thief", "THI");
     tempEncounterPool[(int)Encounter.Thief2] = new EncounterDetail("Thief", "THI");
     tempEncounterPool[(int)Encounter.NewVampire1] = new EncounterDetail("New Vampire", "VAM");
     tempEncounterPool[(int)Encounter.NewVampire2] = new EncounterDetail("New Vampire", "VAM");
     tempEncounterPool[(int)Encounter.NewVampire3] = new EncounterDetail("New Vampire", "VAM");
     tempEncounterPool[(int)Encounter.NewVampire4] = new EncounterDetail("New Vampire", "VAM");
     tempEncounterPool[(int)Encounter.NewVampire5] = new EncounterDetail("New Vampire", "VAM");
     tempEncounterPool[(int)Encounter.NewVampire6] = new EncounterDetail("New Vampire", "VAM");
     tempEncounterPool[(int)Encounter.Wolves1] = new EncounterDetail("Wolves", "WOL");
     tempEncounterPool[(int)Encounter.Wolves2] = new EncounterDetail("Wolves", "WOL");
     tempEncounterPool[(int)Encounter.Wolves3] = new EncounterDetail("Wolves", "WOL");
     return tempEncounterPool;
 }
Example #2
0
 // remove
 internal void AddEncounterToEncounterPool(EncounterDetail encounterToDiscard)
 {
     EncounterPool.Add(encounterToDiscard);
 }
Example #3
0
        private bool ResolveEncounter(EncounterDetail enc, Hunter hunter, out bool discard, UserInterface ui)
        {
            bool resolveNextEncounter = true;
            discard = true;

            List<Hunter> huntersInvolved = new List<Hunter>();
            foreach (int ind in hunter.HuntersInGroup)
            {
                huntersInvolved.Add(Hunters[ind]);
            }

            switch (enc.name)
            {
                case "Ambush":
                    resolveNextEncounter = ResolveAmbush(huntersInvolved, ui);
                    break;
                case "Assasin":
                    resolveNextEncounter = ResolveAssassin(huntersInvolved, ui);
                    break;
                case "Bats":
                    resolveNextEncounter = ResolveBats(huntersInvolved, ui);
                    discard = false;
                    break;
                case "Desecrated Soil":
                    resolveNextEncounter = ResolveDesecratedSoil(huntersInvolved, ui);
                    break;
                case "Fog":
                    resolveNextEncounter = ResolveFog(huntersInvolved, ui);
                    discard = false;
                    break;
                case "Minion with Knife":
                    resolveNextEncounter = ResolveMinionWithKnife(huntersInvolved, ui);
                    break;
                case "Minion with Knife and Pistol":
                    resolveNextEncounter = ResolveMinionWithKnifeAndPistol(huntersInvolved, ui);
                    break;
                case "Minion with Knife and Rifle":
                    resolveNextEncounter = ResolveMinionWithKnifeAndRifle(huntersInvolved, ui);
                    break;
                case "Hoax":
                    resolveNextEncounter = ResolveHoax(huntersInvolved, ui);
                    break;
                case "Lightning":
                    resolveNextEncounter = ResolveLightning(huntersInvolved, ui);
                    break;
                case "Peasants":
                    resolveNextEncounter = ResolvePeasants(huntersInvolved, ui);
                    break;
                case "Plague":
                    resolveNextEncounter = ResolvePlague(huntersInvolved, ui);
                    break;
                case "Rats":
                    resolveNextEncounter = ResolveRats(huntersInvolved, ui);
                    break;
                case "Saboteur":
                    resolveNextEncounter = ResolveSaboteur(huntersInvolved, ui);
                    break;
                case "Spy":
                    resolveNextEncounter = ResolveSpy(huntersInvolved, ui);
                    break;
                case "Thief":
                    resolveNextEncounter = ResolveThief(huntersInvolved, ui);
                    break;
                case "New Vampire":
                    bool discardVampire = true;
                    resolveNextEncounter = ResolveNewVampire(huntersInvolved, out discardVampire, ui);
                    discard = discardVampire;
                    break;
                case "Wolves":
                    resolveNextEncounter = ResolveWolves(huntersInvolved, ui);
                    break;

            }
            return resolveNextEncounter;
        }
Example #4
0
 // remove
 internal void RemoveEncounterFromEncounterPool(EncounterDetail tempEncounter)
 {
     EncounterPool.Remove(tempEncounter);
 }