Jump to content
Search In
  • More options...
Find results that contain...
Find results in...
  • Please do not post a message for the purpose of insulting, incitement to hatred, sexual remarks and any other which does not respect our terms of use !
Sign in to follow this  
ßRÂИÐØИ

 plusemu Anti Publicité ~ Plus Emu

Recommended Posts

Vétéran

Yo tout le monde, Aujourd'hui je vient vous partager mon anti-pub que j'avais fait pour mon PlusEmu :) 
L'anti pub est constituer de : 
Avertissement / Chances restante
Et bannissement si 0 chances atteinte.

Commençons, rendez-vous ici : PlusEnvironment.cs
Après :

public static bool RemoveFromCache(int Id, out Habbo Data)
        {
            return _usersCached.TryRemove(Id, out Data);
        }

ajouter ceci :

Please login or register to see this link.



Rendez-vous ici : Communication / Packets / Incomming / Rooms / Chat / ChatEvent.cs 
Après :

            if (!Session.GetHabbo().GetPermissions().HasRight("mod_tool"))
            {
                int MuteTime;
                if (User.IncrementAndCheckFlood(out MuteTime))
                {
                    Session.SendMessage(new FloodControlComposer(MuteTime));
                    return;
                }
            }

Ajouter ceci : 

Please login or register to see this link.



On passe au filtre des murmures :
Rendez-vous ici : Communication / Packets / Incomming / Rooms / Chat / WhisperEvent.cs 
Après ceci : 

 

            if (!Session.GetHabbo().GetPermissions().HasRight("mod_tool"))
            {
                int MuteTime;
                if (User.IncrementAndCheckFlood(out MuteTime))
                {
                    Session.SendMessage(new FloodControlComposer(MuteTime));
                    return;
                }
            }

Ajouter ceci : 

Please login or register to see this link.



On passe au filtre des MAJ : 
Rendez-vous ici : Communication / Packets / Incomming / Rooms / Chat / ShoutEvent.cs 
Après ceci : 

            if (!Session.GetHabbo().GetPermissions().HasRight("mod_tool"))
            {
                int MuteTime;
                if (User.IncrementAndCheckFlood(out MuteTime))
                {
                    Session.SendMessage(new FloodControlComposer(MuteTime));
                    return;
                }
            }

Ajouter ceci : 

Please login or register to see this link.



Passons au filtre des message Privée : 
Rendez-vous ici : HabboHotel / Users / Messenger / HabboMessenger.cs

Après ceci : 

if (String.IsNullOrEmpty(Message))
                return;

Ajoutez ceci : 

Please login or register to see this link.



Ajoutez ceci à votre base de donnée : 
 

ALTER TABLE users ADD antipub_points int(11) NOT NULL DEFAULT '4';


Il vous reste à filtrer les mots dans worldfilter de votre base de donnée ! (Penser à bien débug l'émulateur !)

Je ne certifie pas l'adaptation à vos émulateurs.

Bonne chance pour vos rétros !

Share this post


Link to post
Share on other sites
Admin
Admin

Merci du partage, c'était celui sur NanoEMU nop ? 

Share this post


Link to post
Share on other sites
Vétéran
Il y a 2 heures, Jason a dit :

Merci du partage, c'était celui sur NanoEMU nop ? 

Oui sauf que nano a pas les messages privé ect 

il y a une heure, DvX a dit :

Merci du partage

De rien :)

Il y a 2 heures, Harda a dit :

Gros partage, merci

Pas de souci derien !

Share this post


Link to post
Share on other sites
Vétéran
Il y a 2 heures, Luxury.Dev a dit :

merci ^^

De rien

Share this post


Link to post
Share on other sites
Premium

Tu peux l'améliorer en remplaçant les caractères spéciaux en utilisant le regex ! ;)

Sinon bravo à toi et merci du partage :)

Share this post


Link to post
Share on other sites

J'aime :D merci a toi !

en tous cas y'a j'ai eu quelque erreur sur PlusEmulateur:

 

Pour ceux qui ont un problème avec des erreur remplacer tous cette partie ou vous avez mis partout:

 

 if (PlusEnvironment.Antipub(Message))
            {
                using (IQueryAdapter dbClient = PlusEnvironment.GetDatabaseManager().GetQueryReactor())
                {

                    DataTable Table = null;
                    dbClient.SetQuery("SELECT * FROM users WHERE id = '" + Session.GetHabbo().Id + "' LIMIT 1");
                    Table = dbClient.getTable();
                    foreach (DataRow dRow in Table.Rows)
                    {
                        if (Convert.ToInt32(dRow["antipub_points"]) == 4)
                        {
                            dbClient.RunQuery("UPDATE `users` SET `antipub_points` = 3 WHERE `id` = '" + Session.GetHabbo().Id + "' LIMIT 1");
                        }
                        if (Convert.ToInt32(dRow["antipub_points"]) == 3)
                        {
                            dbClient.RunQuery("UPDATE `users` SET `antipub_points` = 2 WHERE `id` = '" + Session.GetHabbo().Id + "' LIMIT 1");
                        }
                        if (Convert.ToInt32(dRow["antipub_points"]) == 2)
                        {
                            dbClient.RunQuery("UPDATE `users` SET `antipub_points` = 1 WHERE `id` = '" + Session.GetHabbo().Id + "' LIMIT 1");
                        }
                        if (Convert.ToInt32(dRow["antipub_points"]) == 1)
                        {
                            dbClient.RunQuery("UPDATE `users` SET `antipub_points` = 0 WHERE `id` = '" + Session.GetHabbo().Id + "' LIMIT 1");
                        }

                        int nopub = Convert.ToInt32(dRow["antipub_points"]);
                        if (Convert.ToInt32(dRow["antipub_points"]) < 1)
                        {
                            Double Expire = PlusEnvironment.GetUnixTimestamp() + 78892200;
                            Session.SendWhisper("Ton compte est banni !", 34);
                            PlusEnvironment.GetGame().GetModerationManager().BanUser("#ANTIPUB", HabboHotel.Moderation.ModerationBanType.IP, Convert.ToString(dRow["ip_last"]), "Publicité.", Expire);
                            Session.Disconnect();
                        }
                        if (nopub > 1)
                        {
                            Session.SendMessage(new RoomNotificationComposer("Robot Antipub",
                                 "<b>Attention " + Session.GetHabbo().Username + " !</b>\n" +
                                 "Notre robot viens de detecté une publicité dans votre message. </b>.\n<b><font color='red'>Il vous reste " + nopub + " chances avant de vous sanctionnez!</font></b>\r" +
                                 "\n\n", "pub", "J'ai compris.", "event:close"));
                            Console.ForegroundColor = ConsoleColor.Red;
                            Console.WriteLine("[ANTIPUB] Mot filtré de (" + Session.GetHabbo().Username + ")");
                        }
                        else
                        {
                            Session.SendMessage(new RoomNotificationComposer("Robot Antipub",
                                 "<b>Attention " + Session.GetHabbo().Username + " !</b>\n" +
                                 "Notre robot viens de detecté une publicité dans votre message. </b>.\n<b><font color='red'>Il vous reste " + nopub + " chances avant de vous sanctionnez!</font></b>\r" +
                                 "\n\n", "pub", "J'ai compris.", "event:close"));
                            Console.ForegroundColor = ConsoleColor.Red;
                            Console.WriteLine("[ANTIPUB] Mot filtré de (" + Session.GetHabbo().Username + ")");
                        }
                        Message = "# Filtré par l'antipub #";
                    }
                }
            }

 

par celui la:

 

 if (PlusEnvironment.Antipub(Message))
            {
                using (Plus.Database.Interfaces.IQueryAdapter dbClient = PlusEnvironment.GetDatabaseManager().GetQueryReactor())
                {

                    System.Data.DataTable Table = null;
                    dbClient.SetQuery("SELECT * FROM users WHERE id = '" + Session.GetHabbo().Id + "' LIMIT 1");
                    Table = dbClient.getTable();
                    foreach (System.Data.DataRow dRow in Table.Rows)
                    {
                        if (Convert.ToInt32(dRow["antipub_points"]) == 4)
                        {
                            dbClient.RunQuery("UPDATE `users` SET `antipub_points` = 3 WHERE `id` = '" + Session.GetHabbo().Id + "' LIMIT 1");
                        }
                        if (Convert.ToInt32(dRow["antipub_points"]) == 3)
                        {
                            dbClient.RunQuery("UPDATE `users` SET `antipub_points` = 2 WHERE `id` = '" + Session.GetHabbo().Id + "' LIMIT 1");
                        }
                        if (Convert.ToInt32(dRow["antipub_points"]) == 2)
                        {
                            dbClient.RunQuery("UPDATE `users` SET `antipub_points` = 1 WHERE `id` = '" + Session.GetHabbo().Id + "' LIMIT 1");
                        }
                        if (Convert.ToInt32(dRow["antipub_points"]) == 1)
                        {
                            dbClient.RunQuery("UPDATE `users` SET `antipub_points` = 0 WHERE `id` = '" + Session.GetHabbo().Id + "' LIMIT 1");
                        }

                        int nopub = Convert.ToInt32(dRow["antipub_points"]);
                        if (Convert.ToInt32(dRow["antipub_points"]) < 1)
                        {
                            Double Expire = PlusEnvironment.GetUnixTimestamp() + 78892200;
                            Session.SendWhisper("Ton compte est banni !", 34);
                            PlusEnvironment.GetGame().GetModerationManager().BanUser("#ANTIPUB", HabboHotel.Moderation.ModerationBanType.IP, Convert.ToString(dRow["ip_last"]), "Publicité.", Expire);
                            Session.Disconnect();
                        }
                        if (nopub > 1)
                        {
                            Session.SendMessage(new Plus.Communication.Packets.Outgoing.Rooms.Notifications.RoomNotificationComposer("Robot Antipub",
                                 "<b>Attention " + Session.GetHabbo().Username + " !</b>\n" +
                                 "Notre robot viens de detecté une publicité dans votre message. </b>.\n<b><font color='red'>Il vous reste " + nopub + " chances avant de vous sanctionnez!</font></b>\r" +
                                 "\n\n", "pub", "J'ai compris.", "event:close"));
                            Console.ForegroundColor = ConsoleColor.Red;
                            Console.WriteLine("[ANTIPUB] Mot filtré de (" + Session.GetHabbo().Username + ")");
                        }
                        else
                        {
                            Session.SendMessage(new Plus.Communication.Packets.Outgoing.Rooms.Notifications.RoomNotificationComposer("Robot Antipub",
                                 "<b>Attention " + Session.GetHabbo().Username + " !</b>\n" +
                                 "Notre robot viens de detecté une publicité dans votre message. </b>.\n<b><font color='red'>Il vous reste " + nopub + " chances avant de vous sanctionnez!</font></b>\r" +
                                 "\n\n", "pub", "J'ai compris.", "event:close"));
                            Console.ForegroundColor = ConsoleColor.Red;
                            Console.WriteLine("[ANTIPUB] Mot filtré de (" + Session.GetHabbo().Username + ")");
                        }
                        Message = "# Filtré par l'antipub #";
                    }
                }
            }

 

Maintenant, vous aurez aucune erreur.

pour ceux basé de PlusEmulateur

 

Pour ceux qui ne savent par le résultat final:

 

95d419fad550924fe0fd78b1a68a824e.png

Edited by Kurumi.Dev

Share this post


Link to post
Share on other sites
Admin
Admin

Bien joué tchio, et merci du partage ;) 

Share this post


Link to post
Share on other sites
Premium
Il y a 3 heures, Kurumi.Dev a dit :

J'aime :D merci a toi !

en tous cas y'a j'ai eu quelque erreur sur PlusEmulateur:

 

Pour ceux qui ont un problème avec des erreur remplacer tous cette partie ou vous avez mis partout:

 

 if (PlusEnvironment.Antipub(Message))
            {
                using (IQueryAdapter dbClient = PlusEnvironment.GetDatabaseManager().GetQueryReactor())
                {

                    DataTable Table = null;
                    dbClient.SetQuery("SELECT * FROM users WHERE id = '" + Session.GetHabbo().Id + "' LIMIT 1");
                    Table = dbClient.getTable();
                    foreach (DataRow dRow in Table.Rows)
                    {
                        if (Convert.ToInt32(dRow["antipub_points"]) == 4)
                        {
                            dbClient.RunQuery("UPDATE `users` SET `antipub_points` = 3 WHERE `id` = '" + Session.GetHabbo().Id + "' LIMIT 1");
                        }
                        if (Convert.ToInt32(dRow["antipub_points"]) == 3)
                        {
                            dbClient.RunQuery("UPDATE `users` SET `antipub_points` = 2 WHERE `id` = '" + Session.GetHabbo().Id + "' LIMIT 1");
                        }
                        if (Convert.ToInt32(dRow["antipub_points"]) == 2)
                        {
                            dbClient.RunQuery("UPDATE `users` SET `antipub_points` = 1 WHERE `id` = '" + Session.GetHabbo().Id + "' LIMIT 1");
                        }
                        if (Convert.ToInt32(dRow["antipub_points"]) == 1)
                        {
                            dbClient.RunQuery("UPDATE `users` SET `antipub_points` = 0 WHERE `id` = '" + Session.GetHabbo().Id + "' LIMIT 1");
                        }

                        int nopub = Convert.ToInt32(dRow["antipub_points"]);
                        if (Convert.ToInt32(dRow["antipub_points"]) < 1)
                        {
                            Double Expire = PlusEnvironment.GetUnixTimestamp() + 78892200;
                            Session.SendWhisper("Ton compte est banni !", 34);
                            PlusEnvironment.GetGame().GetModerationManager().BanUser("#ANTIPUB", HabboHotel.Moderation.ModerationBanType.IP, Convert.ToString(dRow["ip_last"]), "Publicité.", Expire);
                            Session.Disconnect();
                        }
                        if (nopub > 1)
                        {
                            Session.SendMessage(new RoomNotificationComposer("Robot Antipub",
                                 "<b>Attention " + Session.GetHabbo().Username + " !</b>\n" +
                                 "Notre robot viens de detecté une publicité dans votre message. </b>.\n<b><font color='red'>Il vous reste " + nopub + " chances avant de vous sanctionnez!</font></b>\r" +
                                 "\n\n", "pub", "J'ai compris.", "event:close"));
                            Console.ForegroundColor = ConsoleColor.Red;
                            Console.WriteLine("[ANTIPUB] Mot filtré de (" + Session.GetHabbo().Username + ")");
                        }
                        else
                        {
                            Session.SendMessage(new RoomNotificationComposer("Robot Antipub",
                                 "<b>Attention " + Session.GetHabbo().Username + " !</b>\n" +
                                 "Notre robot viens de detecté une publicité dans votre message. </b>.\n<b><font color='red'>Il vous reste " + nopub + " chances avant de vous sanctionnez!</font></b>\r" +
                                 "\n\n", "pub", "J'ai compris.", "event:close"));
                            Console.ForegroundColor = ConsoleColor.Red;
                            Console.WriteLine("[ANTIPUB] Mot filtré de (" + Session.GetHabbo().Username + ")");
                        }
                        Message = "# Filtré par l'antipub #";
                    }
                }
            }

 

par celui la:

 

 if (PlusEnvironment.Antipub(Message))
            {
                using (Plus.Database.Interfaces.IQueryAdapter dbClient = PlusEnvironment.GetDatabaseManager().GetQueryReactor())
                {

                    System.Data.DataTable Table = null;
                    dbClient.SetQuery("SELECT * FROM users WHERE id = '" + Session.GetHabbo().Id + "' LIMIT 1");
                    Table = dbClient.getTable();
                    foreach (System.Data.DataRow dRow in Table.Rows)
                    {
                        if (Convert.ToInt32(dRow["antipub_points"]) == 4)
                        {
                            dbClient.RunQuery("UPDATE `users` SET `antipub_points` = 3 WHERE `id` = '" + Session.GetHabbo().Id + "' LIMIT 1");
                        }
                        if (Convert.ToInt32(dRow["antipub_points"]) == 3)
                        {
                            dbClient.RunQuery("UPDATE `users` SET `antipub_points` = 2 WHERE `id` = '" + Session.GetHabbo().Id + "' LIMIT 1");
                        }
                        if (Convert.ToInt32(dRow["antipub_points"]) == 2)
                        {
                            dbClient.RunQuery("UPDATE `users` SET `antipub_points` = 1 WHERE `id` = '" + Session.GetHabbo().Id + "' LIMIT 1");
                        }
                        if (Convert.ToInt32(dRow["antipub_points"]) == 1)
                        {
                            dbClient.RunQuery("UPDATE `users` SET `antipub_points` = 0 WHERE `id` = '" + Session.GetHabbo().Id + "' LIMIT 1");
                        }

                        int nopub = Convert.ToInt32(dRow["antipub_points"]);
                        if (Convert.ToInt32(dRow["antipub_points"]) < 1)
                        {
                            Double Expire = PlusEnvironment.GetUnixTimestamp() + 78892200;
                            Session.SendWhisper("Ton compte est banni !", 34);
                            PlusEnvironment.GetGame().GetModerationManager().BanUser("#ANTIPUB", HabboHotel.Moderation.ModerationBanType.IP, Convert.ToString(dRow["ip_last"]), "Publicité.", Expire);
                            Session.Disconnect();
                        }
                        if (nopub > 1)
                        {
                            Session.SendMessage(new Plus.Communication.Packets.Outgoing.Rooms.Notifications.RoomNotificationComposer("Robot Antipub",
                                 "<b>Attention " + Session.GetHabbo().Username + " !</b>\n" +
                                 "Notre robot viens de detecté une publicité dans votre message. </b>.\n<b><font color='red'>Il vous reste " + nopub + " chances avant de vous sanctionnez!</font></b>\r" +
                                 "\n\n", "pub", "J'ai compris.", "event:close"));
                            Console.ForegroundColor = ConsoleColor.Red;
                            Console.WriteLine("[ANTIPUB] Mot filtré de (" + Session.GetHabbo().Username + ")");
                        }
                        else
                        {
                            Session.SendMessage(new Plus.Communication.Packets.Outgoing.Rooms.Notifications.RoomNotificationComposer("Robot Antipub",
                                 "<b>Attention " + Session.GetHabbo().Username + " !</b>\n" +
                                 "Notre robot viens de detecté une publicité dans votre message. </b>.\n<b><font color='red'>Il vous reste " + nopub + " chances avant de vous sanctionnez!</font></b>\r" +
                                 "\n\n", "pub", "J'ai compris.", "event:close"));
                            Console.ForegroundColor = ConsoleColor.Red;
                            Console.WriteLine("[ANTIPUB] Mot filtré de (" + Session.GetHabbo().Username + ")");
                        }
                        Message = "# Filtré par l'antipub #";
                    }
                }
            }

 

Maintenant, vous aurez aucune erreur.

pour ceux basé de PlusEmulateur

 

Pour ceux qui ne savent par le résultat final:

 

Please login or register to see this link.


Attention, utiliser des requêtes SQL pour une vérification d'envois de message n'est pas la meilleur des solutions (surtout des selects sur la table users ouille)!
Je te conseil d'optimiser ton code.

Share this post


Link to post
Share on other sites
il y a une heure, BxB a dit :


Attention, utiliser des requêtes SQL pour une vérification d'envois de message n'est pas la meilleur des solutions (surtout des selects sur la table users ouille)!
Je te conseil d'optimiser ton code.

^^ j'ai pas modifier sa,

j'ai modifier,  pour les émulateur PlusEmu de base marche sans erreur avec le code:

 

Session.SendMessage(new RoomNotificationComposer("Robot Antipub",   
par -> 
Session.SendMessage(new Plus.Communication.Packets.Outgoing.Rooms.Notifications.RoomNotificationComposer("Robot Antipub",

 

using (IQueryAdapter dbClient 
par ->
using (Plus.Database.Interfaces.IQueryAdapter
Edited by Kurumi.Dev

Share this post


Link to post
Share on other sites
Premium
Il y a 5 heures, Kurumi.Dev a dit :

^^ j'ai pas modifier sa,

j'ai modifier,  pour les émulateur PlusEmu de base marche sans erreur avec le code:

 

Session.SendMessage(new RoomNotificationComposer("Robot Antipub",   
par -> 
Session.SendMessage(new Plus.Communication.Packets.Outgoing.Rooms.Notifications.RoomNotificationComposer("Robot Antipub",

 

using (IQueryAdapter dbClient 
par ->
using (Plus.Database.Interfaces.IQueryAdapter

autant, faire clique droit, puis: Action rapides et refactorisations puis tu clique sur le premier. using Plus.Database.Interfaces;

Share this post


Link to post
Share on other sites
il y a une heure, iSync a dit :

autant, faire clique droit, puis: Action rapides et refactorisations puis tu clique sur le premier. using Plus.Database.Interfaces;

J'aurais bien voulue, mais mon visual studio ne marche pas en clique droit ^^

Share this post


Link to post
Share on other sites
Vétéran
Il y a 19 heures, BxB a dit :


Attention, utiliser des requêtes SQL pour une vérification d'envois de message n'est pas la meilleur des solutions (surtout des selects sur la table users ouille)!
Je te conseil d'optimiser ton code.

Oui, il vaut mieux déjà partir sur ce genre de code 

dbClient.SetQuery("SELECT * FROM users WHERE id = @id LIMIT 1");
dbClient.AddParameter("id", Session.GetHabbo().Id);
dbClient.RunQuery();

 

Share this post


Link to post
Share on other sites
VIP

Faire des requêtes SQL pour ça je trouve vraiment pas ça utile, pourquoi ne pas tout simplement utiliser un objet sur le session.GetHabbo() ? Je veux dire si l'utilisateur déco et remet le compteur à 0 c'est pas la mort et ça évite une partie des faux positifs

Share this post


Link to post
Share on other sites
Vétéran
il y a 10 minutes, Shin a dit :

Faire des requêtes SQL pour ça je trouve vraiment pas ça utile, pourquoi ne pas tout simplement utiliser un objet sur le session.GetHabbo() ? Je veux dire si l'utilisateur déco et remet le compteur à 0 c'est pas la mort et ça évite une partie des faux positifs

La flemme d'ajouter la table dans l'émulateur (même si c'est assez rapide et simple) 
Après chacun est libre de le modifier à sa guise ;) 

Share this post


Link to post
Share on other sites
VIP
il y a 6 minutes, Brandon a dit :

La flemme d'ajouter la table dans l'émulateur (même si c'est assez rapide et simple) 
Après chacun est libre de le modifier à sa guise ;) 

C'est pas une question de créer un table, une variable ça prend une seconde à créer et question rapidité d’exécution/mémoire c'est déjà beaucoup plus sympa

Share this post


Link to post
Share on other sites
Vétéran
il y a 5 minutes, Shin a dit :

C'est pas une question de créer un table, une variable ça prend une seconde à créer et question rapidité d’exécution/mémoire c'est déjà beaucoup plus sympa

Certes

Share this post


Link to post
Share on other sites
Vétéran
il y a 54 minutes, Kurumi.Dev a dit :

Moi je dit, perso, si i partage libre de le faire vous même ;) 

c'est deja sympas qui partage un anti pub :D 

donc voilà , faite vous même les chose aussi ^^ 

 

après c'est ce que je pense biensûr

Ne t'inquiète pas c'est ceux qui donne le moins qui parle le plus :) 

Share this post


Link to post
Share on other sites
Vétéran

Merci à toi ! J'essais ça au plus vite !

Share this post


Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Sign in to follow this  

×
×
  • Create New...