public EconomyManagerController(EconomySettings settings)
 {
     Settings = settings;
     //BuildPlayerState.OnElementBuildingFinished += UseEssenceToBuild;
     //PlaceObeliskPlayerState.OnBuildSpotCreated += UseEssenceForBuildSpot;
     Essence = settings.StartingEssence;
     //essencePerEnemy = settings.EssencePerWave / waveManager.WaveSettings.EnemiesPerWave;
 }
        public void SetUp()
        {
            var treasury        = new Treasury(100);
            var economySettings = new EconomySettings {
                BaseFarmCost = Cost, BaseMarketplaceCost = Cost, BaseKnightCost = Cost, BaseArcherCost = Cost
            };
            var economy = new Economy(economySettings);

            mockEndTurnCalculator = new Mock <IEndTurnCalculator>();
            kingdom = new Kingdom(treasury, mockEndTurnCalculator.Object, economy);
        }
Exemple #3
0
        public void SetUp()
        {
            var costCalculatorSettings = new EconomySettings
            {
                BaseFarmCost        = BaseFarmCost,
                BaseKnightCost      = BaseKnightCost,
                BaseArcherCost      = BaseArcherCost,
                BaseMarketplaceCost = BaseMarketplaceCost
            };

            economy = new Economy(costCalculatorSettings);
        }
Exemple #4
0
        public override void LoadDefaults()
        {
            Locale = "en";

            PrivateMessageFormat  = "(From {0}): {1}";
            PrivateMessageFormat2 = "(To {0}): {1}";

            UnfreezeOnDeath = true;
            UnfreezeOnQuit  = true;

            AdminBypassWarpCooldown = true;
            PerWarpPermission       = true;
            WarpCooldown            = 5;

            EnableJoinLeaveMessage = true;
            EnableUnknownMessage   = true;
            EnableTextCommands     = true;
            EnableDeathMessages    = true;

            EnablePollRunningMessage   = true;
            PollRunningMessageCooldown = 20;
            ServerFrameRate            = -1;  // http://docs.unity3d.com/ScriptReference/Application-targetFrameRate.html

            AutoAnnouncer = new AutoAnnouncer();
            AutoAnnouncer.LoadDefaults();

            AutoCommands = new AutoCommands();
            AutoCommands.LoadDefaults();

            AntiSpam = new AntiSpamSettings {
                Enabled  = true,
                Interval = 3
            };

            Updater = new UpdaterSettings {
                CheckUpdates   = true,
                DownloadLatest = true,
                AlertOnJoin    = true
            };

            HomeCommand = new HomeCommandSettings {
                Cooldown       = 30, Delay = 5,
                CancelWhenMove = true
            };

            WebKits = new WebKitsSettings {
                Enabled = false, Url = ""
            };

            WebConfig = new WebConfigSettings {
                Enabled = false, Url = ""
            };

            Kit = new KitSettings {
                ShowCost   = true, ShowCostIfZero = false,
                CostFormat = "{0}({1}{2})", GlobalCooldown = 0,
                ResetGlobalCooldownWhenDie = false
            };

            Tpa = new TpaSettings {
                ExpireDelay = 10, TeleportDelay = 5
            };

            Economy = new EconomySettings {
                UseXp      = false, UconomyCurrency = "$",
                XpCurrency = "Xp"
            };

            GiveItemBlacklist = new List <ushort>();
            VehicleBlacklist  = new List <ushort>();
            DisabledCommands  = new List <string>();
            EnabledSystems    = new List <string> {
                "kits", "warps"
            };

            ItemSpawnLimit = 10;
        }
        public override void LoadDefaults()
        {
            Locale = "en";

            BackDelay = 10;

            UnfreezeOnDeath = true;
            UnfreezeOnQuit  = true;

            EnableJoinLeaveMessage       = true;
            EnableTextCommands           = true;
            EnableDeathMessages          = true;
            ShowPermissionOnErrorMessage = true;
            SaveCommandCooldowns         = false;

            EnablePollRunningMessage   = true;
            PollRunningMessageCooldown = 20;
            ServerFrameRate            = -1; // http://docs.unity3d.com/ScriptReference/Application-targetFrameRate.html

            AutoAnnouncer = new AutoAnnouncer();
            AutoAnnouncer.LoadDefaults();

            AutoCommands = new AutoCommands();
            AutoCommands.LoadDefaults();

            PrivateMessage = new PrivateMessageSettings {
                FormatFrom         = "(From {0}): {1}",
                FormatTo           = "(To {0}): {1}",
                FormatSpy          = "<gray>Spy: {0} -> {1}: {2}",
                ConsoleDisplayName = "*console*"
            };

            AntiSpam = new AntiSpamSettings {
                Enabled  = true,
                Interval = 3
            };

            Updater = new UpdaterSettings {
                CheckUpdates   = true,
                DownloadLatest = true,
                AlertOnJoin    = true
            };

            Home = new HomeCommandSettings {
                TeleportDelay          = 5,
                CancelTeleportWhenMove = true
            };

            Warp = new WarpCommandSettings {
                TeleportDelay          = 5,
                PerWarpPermission      = true,
                CancelTeleportWhenMove = false
            };

            Kit = new KitSettings {
                ShowCost                   = true,
                ShowCostIfZero             = false,
                CostFormat                 = "{0}({1}{2})",
                GlobalCooldown             = 0,
                ResetGlobalCooldownWhenDie = false
            };

            Tpa = new TpaSettings {
                ExpireDelay            = 10,
                TeleportDelay          = 5,
                CancelTeleportWhenMove = true
            };

            Economy = new EconomySettings {
                UseXp           = false,
                UconomyCurrency = "$",
                XpCurrency      = "Xp"
            };

            VehicleFeatures = new VehicleFeaturesSettings {
                RefuelPercentage = 20,
                RepairPercentage = 70
            };

            ItemFeatures = new ItemFeaturesSettings {
                ReloadPercentage = 80,
                RepairPercentage = 80
            };

            GiveItemBlacklist  = new HashSet <ushort>();
            VehicleBlacklist   = new HashSet <ushort>();
            DisabledCommands   = new List <string>();
            CommandsToOverride = new HashSet <string>(StringComparer.InvariantCultureIgnoreCase);
            EnabledSystems     = new HashSet <string>(StringComparer.InvariantCultureIgnoreCase)
            {
                "kits", "warps"
            };

            ItemSpawnLimit = 10;
        }
Exemple #6
0
 public Economy(EconomySettings settings)
 {
     this.settings = settings;
     SetInitialValues();
 }
Exemple #7
0
        public static void Initialize()
        {
            if (File.Exists(Directory))
            {
                string file = File.ReadAllText(Directory);

                try {
                    JObject jObj = JObject.Parse(file);
                    instance = new GunGameConfig();

                    bool hasDefaulted = false;

                    //All basic assignments
                    Assign(jObj, "MinimumPlayers", ref instance.minPlayers, Default.minPlayers, ref hasDefaulted);
                    Assign(jObj, "RoundTime", ref instance.maxRoundTime, Default.maxRoundTime, ref hasDefaulted);
                    Assign(jObj, "BroadcastKills", ref instance.broadcastKills, Default.broadcastKills, ref hasDefaulted);
                    Assign(jObj, "MaxSkills", ref instance.maxSkills, Default.maxSkills, ref hasDefaulted);
                    Assign(jObj, "MuteGlobalChat", ref instance.mutePlayers, Default.mutePlayers, ref hasDefaulted);
                    Assign(jObj, "ForceNoGroups", ref instance.forceNoGroup, Default.forceNoGroup, ref hasDefaulted);
                    Assign(jObj, "DisableCosmetics", ref instance.disableCosmetics, Default.disableCosmetics, ref hasDefaulted);

                    //Assign(jObj, "Lobby", ref instance.safezone, Default.safezone, ref hasDefaulted);
                    //Assign(jObj, "SpawnPositions", ref instance.positions, Default.positions);

                    JObject lobby = (JObject)jObj["Safezone"];

                    if (lobby != null)
                    {
                        instance.safezone = new SpawnPosition();
                        ref SpawnPosition lobbySettings = ref instance.safezone;

                        Assign(lobby, "x", ref lobbySettings.x, 0f, ref hasDefaulted);
                        Assign(lobby, "y", ref lobbySettings.y, 0f, ref hasDefaulted);
                        Assign(lobby, "z", ref lobbySettings.z, 0f, ref hasDefaulted);
                        Assign(lobby, "rot", ref lobbySettings.rot, 0f, ref hasDefaulted);
                    }
                    else
                    {
                        instance.safezone = Default.safezone;
                        hasDefaulted      = true;
                    }

                    JObject econ = (JObject)jObj["EconomySettings"];

                    if (econ != null)
                    {
                        instance.econSettings = new EconomySettings();
                        ref EconomySettings econSettings = ref instance.econSettings;

                        Assign(econ, "Enabled", ref econSettings.enabled, false, ref hasDefaulted);

                        JArray rewards = (JArray)econ["Rewards"];

                        if (rewards != null)
                        {
                            ref Reward[] rewardsSettings = ref econSettings.rewards;
                            rewardsSettings = new Reward[rewards.Count];

                            for (int i = 0; i < rewards.Count; i++)
                            {
                                Reward  temp    = new Reward();
                                JObject tempObj = (JObject)rewards[i];

                                Assign(tempObj, "Place", ref temp.place, (byte)0, ref hasDefaulted);
                                Assign(tempObj, "OrdinalIndicator", ref temp.ordinal, string.Empty, ref hasDefaulted);
                                Assign(tempObj, "Reward", ref temp.reward, 0, ref hasDefaulted);

                                rewardsSettings[i] = temp;
                            }
                        }