예제 #1
0
        public static void ReloadSubarea(string value, WorldClient client)
        {
            DatabaseManager.GetInstance().Reload <SubareaRecord>();

            foreach (MapRecord map in MapRecord.Maps)
            {
                map.SubArea = SubareaRecord.GetSubarea(map.SubAreaId);
            }

            client.Character.Reply("Reloaded");
        }
예제 #2
0
        public static void ReloadSubareas(string input)
        {
            DatabaseManager.GetInstance().Reload <SubareaRecord>();

            foreach (var map in MapRecord.Maps)
            {
                map.SubArea = SubareaRecord.GetSubarea(map.SubAreaId);
            }

            foreach (var client in WorldServer.Instance.GetOnlineClients())
            {
                client.Character.UpdateServerExperience(client.Character.Map.SubArea.ExperienceRate);
            }
            logger.White("Subareas reloaded!");
        }
예제 #3
0
        private static bool GiftXPModifier(Character character, SubareaRecord subarea, int hours)
        {
            if (character.Map.SubArea.ExperienceRate >= 20)
            {
                character.Reply("L'experience de la zone est déja a son maximum!");

                return(false);
            }

            int    rate = character.Map.SubArea.ExperienceRate;
            string msg  = string.Format("Le multiplicateur d'experience de la zone {0} passe de x{1} a x{2} pendant {3}h !  merci a {4}!", character.Map.SubArea.Name, rate, rate + 1, hours, character.Name);

            WorldServer.Instance.OnClients(x => x.Character.Notification(msg));
            character.Map.SubArea.ExperienceRate += 1;
            character.UpdateServerExperience(character.Map.SubArea.ExperienceRate);

            MapRecord map = character.Map;

            ActionTimer timer = new ActionTimer(3600000 * hours, new Action(() => { map.SubArea.ExperienceRate -= 1; }), false);

            timer.Start();

            return(true);
        }
예제 #4
0
        public static void GetSubarea(string value, WorldClient client)
        {
            SubareaRecord subAreaRecord = client.Character.Map.SubArea;

            client.Character.Reply($"Subarea: {subAreaRecord.Name} ({subAreaRecord.Id}).");
        }