mirror of
https://github.com/islehorse/HISP.git
synced 2025-04-07 21:55:42 +12:00
Add ability to turn off spam filters
This commit is contained in:
parent
9b32c8edeb
commit
b6997c1cf6
4 changed files with 51 additions and 26 deletions
|
@ -40,9 +40,15 @@ enable_corrections=true
|
||||||
# and FULL CAPS messages.
|
# and FULL CAPS messages.
|
||||||
non_violation=true
|
non_violation=true
|
||||||
|
|
||||||
# Wether or not to consider all users "Subscribers"
|
# Should the server consider all users "Subscribers"
|
||||||
|
# (warning might make ranches be in use forever.)
|
||||||
all_users_subscribed=false
|
all_users_subscribed=false
|
||||||
|
|
||||||
|
# Limits ad and global chat
|
||||||
|
# to just a few messages every minute
|
||||||
|
# by each user
|
||||||
|
enable_spam_filter=true
|
||||||
|
|
||||||
# Equation is: BANK_BALANCE * (1/INTREST_RATE);
|
# Equation is: BANK_BALANCE * (1/INTREST_RATE);
|
||||||
# on All servers except Black its 3333, on black its 1000.
|
# on All servers except Black its 3333, on black its 1000.
|
||||||
# but of course you can make it whatever you want
|
# but of course you can make it whatever you want
|
||||||
|
|
|
@ -21,6 +21,7 @@ namespace HISP.Server
|
||||||
public static string CrossDomainPolicyFile;
|
public static string CrossDomainPolicyFile;
|
||||||
|
|
||||||
public static int LogLevel = 0;
|
public static int LogLevel = 0;
|
||||||
|
public static bool EnableSpamFilter = true;
|
||||||
public static bool AllUsersSubbed = false;
|
public static bool AllUsersSubbed = false;
|
||||||
public static bool BadWords = true;
|
public static bool BadWords = true;
|
||||||
public static bool DoCorrections = true;
|
public static bool DoCorrections = true;
|
||||||
|
@ -103,6 +104,9 @@ namespace HISP.Server
|
||||||
case "non_violation":
|
case "non_violation":
|
||||||
DoNonViolations = data == "true";
|
DoNonViolations = data == "true";
|
||||||
break;
|
break;
|
||||||
|
case "enable_spam_filter":
|
||||||
|
EnableSpamFilter = data == "true";
|
||||||
|
break;
|
||||||
case "enable_word_filter":
|
case "enable_word_filter":
|
||||||
BadWords = data == "true";
|
BadWords = data == "true";
|
||||||
break;
|
break;
|
||||||
|
|
|
@ -189,12 +189,15 @@ namespace HISP.Server
|
||||||
totalMinutesElapsed++;
|
totalMinutesElapsed++;
|
||||||
if (LoggedIn)
|
if (LoggedIn)
|
||||||
{
|
{
|
||||||
|
|
||||||
GameServer.UpdatePlayer(this);
|
GameServer.UpdatePlayer(this);
|
||||||
|
|
||||||
LoggedinUser.CanUseAdsChat = true;
|
LoggedinUser.CanUseAdsChat = true;
|
||||||
LoggedinUser.FreeMinutes -= 1;
|
LoggedinUser.FreeMinutes -= 1;
|
||||||
|
|
||||||
if(totalMinutesElapsed % 2 == 0)
|
GameServer.DoItemPurchases(this);
|
||||||
|
|
||||||
|
if (totalMinutesElapsed % 2 == 0)
|
||||||
{
|
{
|
||||||
LoggedinUser.TotalGlobalChatMessages++;
|
LoggedinUser.TotalGlobalChatMessages++;
|
||||||
}
|
}
|
||||||
|
|
|
@ -3727,17 +3727,9 @@ namespace HISP.Server
|
||||||
if (RiddleEvent != null)
|
if (RiddleEvent != null)
|
||||||
if (RiddleEvent.Active)
|
if (RiddleEvent.Active)
|
||||||
RiddleEvent.ShowStartMessage(sender);
|
RiddleEvent.ShowStartMessage(sender);
|
||||||
|
|
||||||
// Give Queued Itmes
|
// Give Queued Itmes
|
||||||
Item.ItemPurchaseQueueItem[] queueItems = Database.GetItemPurchaseQueue(sender.LoggedinUser.Id);
|
DoItemPurchases(sender);
|
||||||
foreach (Item.ItemPurchaseQueueItem queueItem in queueItems)
|
|
||||||
{
|
|
||||||
for(int i = 0; i < queueItem.ItemCount; i++)
|
|
||||||
{
|
|
||||||
sender.LoggedinUser.Inventory.AddIgnoringFull(new ItemInstance(queueItem.ItemId));
|
|
||||||
}
|
|
||||||
}
|
|
||||||
Database.ClearItemPurchaseQueue(sender.LoggedinUser.Id);
|
|
||||||
|
|
||||||
// Send Queued Messages
|
// Send Queued Messages
|
||||||
string[] queuedMessages = Database.GetMessageQueue(sender.LoggedinUser.Id);
|
string[] queuedMessages = Database.GetMessageQueue(sender.LoggedinUser.Id);
|
||||||
|
@ -5902,29 +5894,33 @@ namespace HISP.Server
|
||||||
}
|
}
|
||||||
|
|
||||||
// Spam filter
|
// Spam filter
|
||||||
if(channel == Chat.ChatChannel.Ads)
|
if(ConfigReader.EnableSpamFilter)
|
||||||
{
|
{
|
||||||
if(!sender.LoggedinUser.CanUseAdsChat && !sender.LoggedinUser.Administrator)
|
if (channel == Chat.ChatChannel.Ads)
|
||||||
{
|
{
|
||||||
byte[] cantSendInAds = PacketBuilder.CreateChat(Messages.AdsOnlyOncePerMinute, PacketBuilder.CHAT_BOTTOM_RIGHT);
|
if (!sender.LoggedinUser.CanUseAdsChat && !sender.LoggedinUser.Administrator)
|
||||||
sender.SendPacket(cantSendInAds);
|
{
|
||||||
|
byte[] cantSendInAds = PacketBuilder.CreateChat(Messages.AdsOnlyOncePerMinute, PacketBuilder.CHAT_BOTTOM_RIGHT);
|
||||||
|
sender.SendPacket(cantSendInAds);
|
||||||
|
|
||||||
return;
|
return;
|
||||||
|
}
|
||||||
|
sender.LoggedinUser.CanUseAdsChat = false;
|
||||||
}
|
}
|
||||||
sender.LoggedinUser.CanUseAdsChat = false;
|
else if (channel == Chat.ChatChannel.All)
|
||||||
}
|
|
||||||
else if(channel == Chat.ChatChannel.All)
|
|
||||||
{
|
|
||||||
if(sender.LoggedinUser.TotalGlobalChatMessages <= 0 && !sender.LoggedinUser.Administrator)
|
|
||||||
{
|
{
|
||||||
byte[] globalLimited = PacketBuilder.CreateChat(Messages.GlobalChatLimited, PacketBuilder.CHAT_BOTTOM_RIGHT);
|
if (sender.LoggedinUser.TotalGlobalChatMessages <= 0 && !sender.LoggedinUser.Administrator)
|
||||||
sender.SendPacket(globalLimited);
|
{
|
||||||
|
byte[] globalLimited = PacketBuilder.CreateChat(Messages.GlobalChatLimited, PacketBuilder.CHAT_BOTTOM_RIGHT);
|
||||||
|
sender.SendPacket(globalLimited);
|
||||||
|
|
||||||
return;
|
return;
|
||||||
|
}
|
||||||
|
sender.LoggedinUser.TotalGlobalChatMessages--;
|
||||||
}
|
}
|
||||||
sender.LoggedinUser.TotalGlobalChatMessages--;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
// Muted user checks
|
// Muted user checks
|
||||||
if(channel == Chat.ChatChannel.Dm)
|
if(channel == Chat.ChatChannel.Dm)
|
||||||
{
|
{
|
||||||
|
@ -8090,6 +8086,22 @@ namespace HISP.Server
|
||||||
if (sender.LoggedinUser.HorseWindowOpen)
|
if (sender.LoggedinUser.HorseWindowOpen)
|
||||||
UpdateArea(sender);
|
UpdateArea(sender);
|
||||||
}
|
}
|
||||||
|
public static void DoItemPurchases(GameClient sender)
|
||||||
|
{
|
||||||
|
if (!sender.LoggedIn)
|
||||||
|
return;
|
||||||
|
|
||||||
|
Item.ItemPurchaseQueueItem[] queueItems = Database.GetItemPurchaseQueue(sender.LoggedinUser.Id);
|
||||||
|
foreach (Item.ItemPurchaseQueueItem queueItem in queueItems)
|
||||||
|
{
|
||||||
|
for (int i = 0; i < queueItem.ItemCount; i++)
|
||||||
|
{
|
||||||
|
sender.LoggedinUser.Inventory.AddIgnoringFull(new ItemInstance(queueItem.ItemId));
|
||||||
|
}
|
||||||
|
}
|
||||||
|
Database.ClearItemPurchaseQueue(sender.LoggedinUser.Id);
|
||||||
|
|
||||||
|
}
|
||||||
public static void StopRidingHorse(GameClient sender)
|
public static void StopRidingHorse(GameClient sender)
|
||||||
{
|
{
|
||||||
sender.LoggedinUser.CurrentlyRidingHorse = null;
|
sender.LoggedinUser.CurrentlyRidingHorse = null;
|
||||||
|
|
Loading…
Add table
Reference in a new issue