Add selling for $0 back to the sample economy module. This is disabled by
default but can be enabled in OpenSim.ini. If enabled, things can be sold for $0. Other amounts will cause the buyer to see a message and the transaction will fail.0.6.5-rc1
parent
91bfd25ef8
commit
d7b2beea18
|
@ -64,6 +64,7 @@ namespace OpenSim.Region.ReplaceableModules.MoneyModule
|
||||||
private bool gridmode = false;
|
private bool gridmode = false;
|
||||||
// private ObjectPaid handerOnObjectPaid;
|
// private ObjectPaid handerOnObjectPaid;
|
||||||
private bool m_enabled = true;
|
private bool m_enabled = true;
|
||||||
|
private bool m_sellEnabled = false;
|
||||||
|
|
||||||
private IConfigSource m_gConfig;
|
private IConfigSource m_gConfig;
|
||||||
|
|
||||||
|
@ -244,13 +245,7 @@ namespace OpenSim.Region.ReplaceableModules.MoneyModule
|
||||||
PriceObjectScaleFactor = startupConfig.GetFloat("PriceObjectScaleFactor", 10);
|
PriceObjectScaleFactor = startupConfig.GetFloat("PriceObjectScaleFactor", 10);
|
||||||
PriceParcelRent = startupConfig.GetInt("PriceParcelRent", 1);
|
PriceParcelRent = startupConfig.GetInt("PriceParcelRent", 1);
|
||||||
PriceGroupCreate = startupConfig.GetInt("PriceGroupCreate", -1);
|
PriceGroupCreate = startupConfig.GetInt("PriceGroupCreate", -1);
|
||||||
// string EBA = startupConfig.GetString("EconomyBaseAccount", UUID.Zero.ToString());
|
m_sellEnabled = startupConfig.GetBoolean("SellEnabled", false);
|
||||||
// Helpers.TryParse(EBA, out EconomyBaseAccount);
|
|
||||||
|
|
||||||
// UserLevelPaysFees = startupConfig.GetInt("UserLevelPaysFees", -1);
|
|
||||||
m_stipend = startupConfig.GetInt("UserStipend", 1000);
|
|
||||||
|
|
||||||
// m_LandAddress = startupConfig.GetString("LandServer", String.Empty);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
// Send ObjectCapacity to Scene.. Which sends it to the SimStatsReporter.
|
// Send ObjectCapacity to Scene.. Which sends it to the SimStatsReporter.
|
||||||
|
@ -818,8 +813,27 @@ namespace OpenSim.Region.ReplaceableModules.MoneyModule
|
||||||
public void ObjectBuy(IClientAPI remoteClient, UUID agentID,
|
public void ObjectBuy(IClientAPI remoteClient, UUID agentID,
|
||||||
UUID sessionID, UUID groupID, UUID categoryID,
|
UUID sessionID, UUID groupID, UUID categoryID,
|
||||||
uint localID, byte saleType, int salePrice)
|
uint localID, byte saleType, int salePrice)
|
||||||
|
{
|
||||||
|
if (!m_sellEnabled)
|
||||||
{
|
{
|
||||||
remoteClient.SendBlueBoxMessage(UUID.Zero, "", "Buying is not implemented in this version");
|
remoteClient.SendBlueBoxMessage(UUID.Zero, "", "Buying is not implemented in this version");
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
if (salePrice != 0)
|
||||||
|
{
|
||||||
|
remoteClient.SendBlueBoxMessage(UUID.Zero, "", "Buying anything for a price other than zero is not implemented");
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
Scene s = LocateSceneClientIn(remoteClient.AgentId);
|
||||||
|
SceneObjectPart part = s.GetSceneObjectPart(localID);
|
||||||
|
if (part == null)
|
||||||
|
{
|
||||||
|
remoteClient.SendAgentAlertMessage("Unable to buy now. The object was not found.", false);
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
s.PerformObjectBuy(remoteClient, categoryID, localID, saleType);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -942,13 +942,9 @@
|
||||||
|
|
||||||
[Economy]
|
[Economy]
|
||||||
; These economy values get used in the BetaGridLikeMoneyModule. - This module is for demonstration only -
|
; These economy values get used in the BetaGridLikeMoneyModule. - This module is for demonstration only -
|
||||||
; In grid mode, use this currency XMLRPC server. Leave blank for normal functionality
|
|
||||||
CurrencyServer = ""
|
|
||||||
; "http://192.168.1.127/currency.php"
|
|
||||||
|
|
||||||
; In grid mode, this is the land XMLRPC server. Leave blank for normal functionality
|
; Enables selling things for $0
|
||||||
LandServer = ""
|
SellEnabled = "false"
|
||||||
;"http://192.168.1.127/landtool.php"
|
|
||||||
|
|
||||||
; 45000 is the highest value that the sim could possibly report because of protocol constraints
|
; 45000 is the highest value that the sim could possibly report because of protocol constraints
|
||||||
ObjectCapacity = 45000
|
ObjectCapacity = 45000
|
||||||
|
@ -959,26 +955,6 @@
|
||||||
; Money Unit fee to create groups
|
; Money Unit fee to create groups
|
||||||
PriceGroupCreate = 0
|
PriceGroupCreate = 0
|
||||||
|
|
||||||
; This is the account Money goes to for fees. Remember, economy requires that money circulates somewhere... even if it's an upload fee
|
|
||||||
EconomyBaseAccount = 00000000-0000-0000-0000-000000000000
|
|
||||||
|
|
||||||
; This is the type of user that will pay fees.
|
|
||||||
; Set this to 2 for users, estate managers and Estate Owners
|
|
||||||
; Set this to 1 for Users and Estate Managers
|
|
||||||
; Set this to 0 for Users only.
|
|
||||||
; -1 disables
|
|
||||||
UserLevelPaysFees = -1
|
|
||||||
|
|
||||||
; Amount to give to user as a stipend
|
|
||||||
UserStipend = 1000
|
|
||||||
|
|
||||||
; When a user gets low on money units and logs off, then logs back on, issue a new stipend if they have less money units then this
|
|
||||||
; amount. Be aware that the account money isn't stored anywhere so users will get a stipend if you restart the simulator
|
|
||||||
IssueStipendWhenClientIsBelowAmount = 10
|
|
||||||
|
|
||||||
; If this is true, the simulator will remember account balances until the simulator is shutdown or restarted.
|
|
||||||
KeepMoneyAcrossLogins = true
|
|
||||||
|
|
||||||
; We don't really know what the rest of these values do. These get sent to the client
|
; We don't really know what the rest of these values do. These get sent to the client
|
||||||
; These taken from Agni at a Public Telehub. Change at your own risk.
|
; These taken from Agni at a Public Telehub. Change at your own risk.
|
||||||
ObjectCount = 0
|
ObjectCount = 0
|
||||||
|
|
Loading…
Reference in New Issue