private void AddSecondaryFunctions(IConfigSource source, IRegistryCore registry) { m_rpc = new DustRPCHandler(this, source, registry); if (!m_doRemoteCalls) { m_options = new StarDustConfig(source.Configs["StarDustCurrency"]); IConfig handlerConfig = source.Configs["Handlers"]; string password = handlerConfig.GetString("WireduxHandlerPassword", handlerConfig.GetString("WebUIHandlerPassword", string.Empty)); IHttpServer httpServer = registry.RequestModuleInterface <ISimulationBase>().GetHttpServer( handlerConfig.GetUInt("WireduxHandlerPort", handlerConfig.GetUInt("WebUIHTTPPort", 8002))); if (password != "") { httpServer.AddStreamHandler(new StarDustCurrencyPostHandlerWebUI("/StarDustWebUI", this, m_registry, password, m_options)); } if ((m_options.ATMGridURL != "") && (m_options.ATMPassword != "")) { httpServer.AddStreamHandler(new StarDustCurrencyPostHandlerATM("/StardustATM_" + m_options.ATMGridURL, this, m_registry, m_options)); } if ((m_options.GiveStipends) && (m_options.Stipend > 0)) { m_stupends = new GiveStipends(m_options, m_registry, this); } } }
public void RegionLoaded(IScene scene) { if (m_connector == null) { return; } m_options = m_connector.GetConfig(); }
public StarDustCurrencyPostHandlerWebUI(string url, DustCurrencyService service, IRegistryCore registry, string password, StarDustConfig options) : base("POST", url) { m_options = options; m_starDustCurrencyService = service; m_registry = registry; m_password = Util.Md5Hash(password); }
public StarDustConfig GetConfig() { if ((m_options == null) && (m_doRemoteCalls)) { m_options = (StarDustConfig)DoRemote(); if (m_options != null) { m_moneyModule.Options = m_options; } } return(m_options); }
public StarDustCurrencyPostHandlerATM(string url, DustCurrencyService service, IRegistryCore registry, StarDustConfig options) : base("POST", url) { m_options = options; m_starDustCurrencyService = service; m_registry = registry; m_password = Util.Md5Hash(m_options.ATMPassword); BanIPs = m_options.ATMIPBan.Split(';').ToList(); AllowedIPs = m_options.ATMIPAllow.Split(';').ToList(); taskTimer.Interval = (120 * 60) * 60; // every 120 min taskTimer.Elapsed += taskTimer_Elapsed; }
public void Initialize(IGenericData gd, IConfigSource source, IRegistryCore registry, string defaultConnectionString) { if (source.Configs["AuroraConnectors"].GetString("CurrencyConnector", "LocalConnector") != "LocalConnector") { return; } m_gd = gd; m_registry = registry; if (source.Configs["Currency"].GetString("Module", "") != "StarDust") { return; } IConfig economyConfig = source.Configs["StarDustCurrency"]; m_enabled = ((economyConfig != null) && (economyConfig.GetString("CurrencyModule", "Dust") == "Dust") && (economyConfig.GetString("CurrencyConnector", "Local") == "Local")); if (!m_enabled) { return; } if (source.Configs[Name] != null) { defaultConnectionString = source.Configs[Name].GetString("ConnectionString", defaultConnectionString); } gd.ConnectToDatabase(defaultConnectionString, "Currency", true); DataManager.RegisterPlugin(Name, this); m_options = new StarDustConfig(economyConfig); MainConsole.Instance.Commands.AddCommand("money add", "money add", "Adds money to a user's account.", AddMoney); MainConsole.Instance.Commands.AddCommand("money set", "money set", "Sets the amount of money a user has.", AddMoney); MainConsole.Instance.Commands.AddCommand("money get", "money get", "Gets the amount of money a user has.", AddMoney); }
private void EconomyDataRequestHandler(IClientAPI remoteClient) { bool wasnull = (m_options == null); if (wasnull) { m_options = new StarDustConfig(); } remoteClient.SendEconomyData(0, m_objectCapacity, remoteClient.Scene.RegionInfo.ObjectCapacity, m_options.PriceEnergyUnit, m_options.PriceGroupCreate, m_options.PriceObjectClaim, m_options.PriceObjectRent, m_options.PriceObjectScaleFactor, m_options.PriceParcelClaim, m_options.PriceParcelClaimFactor, m_options.PriceParcelRent, m_options.PricePublicObjectDecay, m_options.PricePublicObjectDelete, m_options.PriceRentLight, m_options.PriceUpload, m_options.TeleportMinPrice, m_options.TeleportPriceExponent); if (wasnull) { m_options = null; } }
public GiveStipends(StarDustConfig options, IRegistryCore registry, DustCurrencyService dustCurrencyService) { m_enabled = options.GiveStipends; if (!m_enabled) { return; } m_dustCurrencyService = dustCurrencyService; m_options = options; m_registry = registry; taskTimer.Interval = 360000; taskTimer.Elapsed += TimerElasped; m_scheduler = registry.RequestModuleInterface <IScheduleService>(); m_scheduler.Register("StipendsPayout", StupendsPayOutEvent); if (m_options.StipendsLoadOldUsers) { taskTimer.Enabled = true; } registry.RequestModuleInterface <ISimulationBase>().EventManager.RegisterEventHandler("DeleteUserInformation", DeleteUserInformation); registry.RequestModuleInterface <ISimulationBase>().EventManager.RegisterEventHandler("CreateUserInformation", CreateUserInformation); registry.RequestModuleInterface <ISimulationBase>().EventManager.RegisterEventHandler("UpdateUserInformation", CreateUserInformation); }