コード例 #1
0
 public static Encounter getEncounter(MapModel mm, int x, int y, int selection)
 {
     if (isEvent(mm, x, y))
     {
         MapEventModel me = getEvent(mm, x, y);
         if (me.eventData.type == EventClasses.EventDataType.Combat)
         {
             return(me.eventData.encounter);
         }
         else
         {
             return(getRandomEncounter(mm.name, selection));
         }
     }
     else
     {
         return(getRandomEncounter(mm.name, selection));
     }
 }
コード例 #2
0
 public static void processEvent(MapEventModel currentEvent, PlayerModel player, ref List<ClientMessage> messageQueue)
 {
     switch (currentEvent.rewardType)
     {
         case MapDataClasses.ClientEvent.RewardType.Objective:
             string returnValue = ObjectiveDirector.completeObjective(player, currentEvent.eventData.objective);
             if (returnValue != string.Empty)
             {
                 messageQueue.Add(new ClientMessage()
                 {
                     message = returnValue,
                     type = ClientMessage.ClientMessageType.Message
                 });
                 messageQueue.Add(new ClientMessage()
                 {
                     type = ClientMessage.ClientMessageType.RefreshMap
                 });
             }
             break;
         case MapDataClasses.ClientEvent.RewardType.XP:
             messageQueue.Add(new ClientMessage()
             {
                 message = "All characters have gained " + currentEvent.rewardValue.ToString() + " XP!",
                 type = ClientMessage.ClientMessageType.Message
             });
             messageQueue.Add(new ClientMessage()
             {
                 type = ClientMessage.ClientMessageType.RefreshMap
             });
             List<string> results = PlayerDataManager.givePartyXP(player, currentEvent.rewardValue);
             foreach (string s in results)
             {
                 messageQueue.Add(new ClientMessage()
                 {
                     message = s
                 });
             }
             break;
         case MapDataClasses.ClientEvent.RewardType.CP:
             messageQueue.Add(new ClientMessage()
             {
                 message = "All characters have gained " + currentEvent.rewardValue.ToString() + " CP!",
                 type = ClientMessage.ClientMessageType.Message
             });
             messageQueue.Add(new ClientMessage()
             {
                 type = ClientMessage.ClientMessageType.RefreshMap
             });
             List<string> cpResults = PlayerDataManager.givePartyCP(player, currentEvent.rewardValue);
             foreach (string s in cpResults)
             {
                 messageQueue.Add(new ClientMessage()
                 {
                     message = s
                 });
             }
             break;
         case MapDataClasses.ClientEvent.RewardType.Gold:
             messageQueue.Add(new ClientMessage()
             {
                 message = "You have found " + currentEvent.rewardValue.ToString() + " GP!",
                 type = ClientMessage.ClientMessageType.Message
             });
             messageQueue.Add(new ClientMessage()
             {
                 type = ClientMessage.ClientMessageType.RefreshMap
             });
             PlayerDataManager.givePartyGP(player, currentEvent.rewardValue);
             break;
     }
     player.getActiveParty().location.eventCollection.removeEvent(currentEvent);
     player.getActiveParty().location.activeEvent = null;
 }