Hey Towners!
Hiermit "release" ich mein Autoban System! Da es sogesagt ein "Tutorial" ist, wie man es einfügt usw. ist es einfach in der Kategorie Habbo Tutorials!
Also fangen wir an. Ihr könnt eine beliebige Phoenix Source verwenden (am besten die hier ).
Zuerst öffnet ihr die Source / Projketmappe mit C# oder Visual Studio (oder eine andere beliebige Source). Dort sucht ihr die Datei Class33.cs und öffnet diese.
Fügt vor
ein.
Sucht dann nach
Spoiler anzeigen
ZitatAlles anzeigenusing (DatabaseClient @class = Phoenix.GetDatabase().GetClient())
{
@class.AddParamWithValue("message", object_);
@class.ExecuteQuery(string.Concat(new object[]
{
"INSERT INTO chatlogs (user_id,room_id,hour,minute,timestamp,message,user_name,full_date) VALUES ('",
class16_0.GetHabbo().Id,
"','",
this.method_17().Id,
"','",
DateTime.Now.Hour,
"','",
DateTime.Now.Minute,
"',UNIX_TIMESTAMP(),@message,'",
class16_0.GetHabbo().Username,
"','",
DateTime.Now.ToLongDateString(),
"')"
}));
}
Und fügt unter diesem Code
Zitat/* Autoban System made by Dario for RetroTown.ws! */
if (chatcontainsautobanwords(object_) == true)
{
string unnoetig2 = autoban(class16_0, object_, class16_0.GetHabbo().Id);
}
/* End Autoban System made by Dario for RetroTown.ws*/
ein.
Scrollt dann zu den letzten zwei } und fügt über den zwei } Folgenden Code ein :
Spoiler anzeigen
ZitatAlles anzeigen/* Autoban System made by Dario for Retrotown.ws */
public bool chatcontainsautobanwords(string t)
{
bool returned = false;
using (DatabaseClient @class = Phoenix.GetDatabase().GetClient())
{
DataTable dataTable = @class.ReadDataTable("SELECT word FROM autoban_words");
foreach (DataRow dataRow in dataTable.Rows)
{
if (t.Contains((string)dataRow["word"]))
{
returned = true;
}
else
{
returned = false;
}
}
}
return returned;
}
public string autoban(GameClient class16_0, string t, uint userid)
{
using (DatabaseClient @class = Phoenix.GetDatabase().GetClient())
{
DataTable dataTable = @class.ReadDataTable("SELECT * FROM autoban_words");
string reason = "Banned.";
double banlength = 23004;
foreach (DataRow dataRow in dataTable.Rows)
{
if (t.Contains((string)dataRow["word"]))
{
banlength = Convert.ToDouble((string)dataRow["banlength"]);
reason = (string)dataRow["reason"];
}}
@class.AddParamWithValue("var", class16_0.GetHabbo().Username);
@class.AddParamWithValue("reason", reason);
@class.AddParamWithValue("length", Phoenix.GetUnixTimestamp() + banlength);
@class.ExecuteQuery(string.Concat(new object[] {
"INSERT INTO bans (bantype,value,reason,expire,added_by,added_date,appeal_state) VALUES ('user',@var,@reason,@length,'Dario','",
DateTime.Now.ToLongDateString(),
"', '1')"
}));
@class.ExecuteQuery("UPDATE user_info SET bans = bans + 1 WHERE user_id = '" + userid + "' LIMIT 1");
class16_0.method_7(reason + " Bansystem made by Dario");
class16_0.method_12();
}
return "Banned Successfull";
}
/* End Autoban System made by Dario for RetroTown.ws */
Das war der Teil, der in den Emulator gehört. Debugt die Source danach!
Nun öffnet ihr phpmyadmin / Navicat und lässt diese Query laufen :
DROP TABLE IF EXISTS `autoban_words`;
CREATE TABLE `autoban_words` (
`word` varchar(255) NOT NULL DEFAULT 'Habbo.de',
`banlength` varchar(255) NOT NULL DEFAULT '601',
`reason` varchar(255) NOT NULL DEFAULT 'Werber'
) ENGINE=InnoDB DEFAULT CHARSET=latin1;
Nun könnt ihr Wörter eintragen, bei denen einen Autoban ausgelöst wird. Wichtig : Bei banlength kommt die Dauer des Bans in Sekunden hin.
Bitte beachtet, dass das Wort nicht mit dem Wortfilter gefiltert wird. Ansonsten wird KEIN Autoban ausgelöst.
Das war das Tutorial. Ich poste keinen fertigen Emulator mit dem Autoban System drin. Bitte Autoban System nicht als eigenes ausgeben. Code ist unsauber ich weiss. Blablabla
Lasst ein Feedback & ein Thanks da (likegeil :D)