예제 #1
0
        static EventHolder()
        {
            List <Enemy> enemies = new List <Enemy>();

            enemies.Add(MapDataManager.getEnemy("Emergence Cavern", "Goblin"));
            enemies.Add(MapDataManager.getEnemy("Emergence Cavern", "Goblin"));
            events.Add(1, EventDataModel.getCombatEvent(new Encounter(isEvent: true)
            {
                enemies = enemies,
                message = "A horde of Goblins attacks!",
            }, ObjectiveType.EmergenceCavernAdditionalAdventurer));

            enemies = new List <Enemy>();
            enemies.Add(MapDataManager.getEnemy("Emergence Cavern", "Blue Slime"));
            enemies.Add(MapDataManager.getEnemy("Emergence Cavern", "Blue Slime"));
            events.Add(2, EventDataModel.getCombatEvent(new Encounter(isEvent: true)
            {
                enemies = enemies,
                message = "Twin Slimes appear!"
            }, ObjectiveType.EmergenceCavernB2));

            enemies = new List <Enemy>();
            enemies.Add(MapDataManager.getEnemy("Emergence Cavern", "Boss Goblin"));
            events.Add(3, EventDataModel.getCombatEvent(new Encounter(isEvent: true)
            {
                enemies = enemies,
                message = "A well dressed Goblin appears!"
            }, ObjectiveType.EmergenceCavernB2));
        }
예제 #2
0
        public static EventDataModel getMultiCombatEvent(List <Encounter> encounters, ObjectiveType objective = ObjectiveType.None)
        {
            EventDataModel edm = new EventDataModel();

            edm.hasMessage = false;
            edm.message    = string.Empty;
            edm.type       = EventDataType.Combat;
            edm.objective  = objective;

            EventDataModel currentEvent = edm;

            foreach (Encounter encounter in encounters)
            {
                currentEvent.encounter = encounter;

                EventDataModel edm2 = new EventDataModel();
                edm2.encounter  = encounter;
                edm2.hasMessage = false;
                edm2.message    = string.Empty;
                edm2.type       = EventDataType.Combat;
                edm2.nextEvent  = null;
                edm2.objective  = objective;

                currentEvent.nextEvent = edm2;
                currentEvent           = edm2;
            }

            return(edm);
        }
예제 #3
0
        public static EventDataModel getTrapEvent(EventDataType eventDataType, string message, ObjectiveType objective = ObjectiveType.None)
        {
            EventDataModel edm = new EventDataModel();

            edm.hasMessage = true;
            edm.message    = message;
            edm.type       = eventDataType;
            edm.nextEvent  = null;
            edm.objective  = objective;

            return(edm);
        }
예제 #4
0
        public static EventDataModel getCombatEvent(Encounter encounter, ObjectiveType objective = ObjectiveType.None)
        {
            EventDataModel edm = new EventDataModel();

            edm.encounter  = encounter;
            edm.hasMessage = false;
            edm.message    = string.Empty;
            edm.type       = EventDataType.Combat;
            edm.nextEvent  = null;
            edm.objective  = objective;

            return(edm);
        }
예제 #5
0
        public static EventDataModel getCombatEvent(Encounter encounter, ObjectiveType objective = ObjectiveType.None)
        {
            EventDataModel edm = new EventDataModel();
            edm.encounter = encounter;
            edm.hasMessage = false;
            edm.message = string.Empty;
            edm.type = EventDataType.Combat;
            edm.nextEvent = null;
            edm.objective = objective;

            return edm;
        }
예제 #6
0
        public static EventDataModel getTrapEvent(EventDataType eventDataType, string message, ObjectiveType objective = ObjectiveType.None)
        {
            EventDataModel edm = new EventDataModel();
            edm.hasMessage = true;
            edm.message = message;
            edm.type = eventDataType;
            edm.nextEvent = null;
            edm.objective = objective;

            return edm;
        }
예제 #7
0
        public static EventDataModel getMultiCombatEvent(List<Encounter> encounters, ObjectiveType objective = ObjectiveType.None)
        {
            EventDataModel edm = new EventDataModel();
            edm.hasMessage = false;
            edm.message = string.Empty;
            edm.type = EventDataType.Combat;
            edm.objective = objective;

            EventDataModel currentEvent = edm;

            foreach (Encounter encounter in encounters)
            {
                currentEvent.encounter = encounter;

                EventDataModel edm2 = new EventDataModel();
                edm2.encounter = encounter;
                edm2.hasMessage = false;
                edm2.message = string.Empty;
                edm2.type = EventDataType.Combat;
                edm2.nextEvent = null;
                edm2.objective = objective;

                currentEvent.nextEvent = edm2;
                currentEvent = edm2;
            }

            return edm;
        }