

internal class Anvil : Command
{
public Anvil()
: base("anvil")
{
}
protected override bool Process(Player player, RealmTime time, string[] args)
{
if (args.Length == 2)
{
int num2 = int.Parse(args[1]) + 3;
int num1 = int.Parse(args[0]) + 3;
if (num1 < 12 && num2 < 12 && num1 != num2)
{
var Slot1 = player.Inventory[num1];
var Slot2 = player.Inventory[num2];
int item1 = 0;
int item2 = 0;
Item Agate = player.Manager.GameData.Items[0xa8a]; //Agate dagger
Item Astral = player.Manager.GameData.Items[0xaa2]; //Astral Staff
Item BloodBow = player.Manager.GameData.Items[0xa8d]; //Blood Bow
Item AncientWarning = player.Manager.GameData.Items[0xa8d]; //Ancient Warning Wand
Item Acclaim = player.Manager.GameData.Items[0xc50]; //Sword of Acclaim
Item Masamune = player.Manager.GameData.Items[0xb0b]; //Masamune Katana
if (Slot1 == Agate) { item1 = 1; }
if (Slot1 == Astral) { item1 = 2; }
if (Slot2 == BloodBow) { item2 = 1; }
if (Slot2 == AncientWarning) { item2 = 2; }
if (item1 == item2)
{
if (item1 == 1) //Agate + Blood Bow = Sword of Acclaim
{
Slot2 = null;
Slot1 = Acclaim;
player.UpdateCount++;
player.SaveToCharacter();
player.SendInfo("Congrats...enjoy your sword :*");
return true;
}
else if (item1 == 2) //Astral Staff + Ancient Warning = Masamune
{
Slot2 = null;
Slot1 = Masamune;
player.UpdateCount++;
player.SaveToCharacter();
player.SendInfo("Congrats...enjoy your katana :*");
return true;
}
else { player.SendInfo("Type /Anvillist to view the crafting recipies"); return false; }
}
else { player.SendInfo("Type /Anvillist to view the crafting recipies"); return false; }
}
else { player.SendError("Slots: 1, 2, 3, 4, 5, 6, 7, 8"); return false; }
}
else
{
player.SendHelp("Usage: /anvil <Slot1> <Slot2>");
player.SendHelp("Slots: 1, 2, 3, 4, 5, 6, 7, 8");
return false;
}
}
}
if (!client.Account.NameChosen)
{
client.SendPacket(new FailurePacket
{
ErrorId = 0,
ErrorDescription = "Please choose a name"
});
client.Disconnect();
return;
}

string[] names = {
"ass",
"tits",
"fuck",
"shit",
"hell",
"jesus",
"crist",
"anus",
"arse",
"arsehole",
"ass",
"assbag",
"assbandit",
"assbite",
"assclown",
"asscock",
"asscracker",
"asses",
"assface",
"assfuck",
"assgoblin",
"anal",
"anus",
"arse",
"ass",
"ballsack",
"balls",
"bastard",
"bitch",
"biatch",
"bloody",
"blowjob",
"bollock",
"bollok",
"boner",
"boob",
"bugger",
"bum",
"butt",
"buttplug",
"clitoris",
"cock",
"coon",
"crap",
"cunt",
"damn",
"dick",
"dildo",
"dyke",
"fag",
"feck",
"fellate",
"fellatio",
"felching",
"fuck",
"fudgepacker",
"flange",
"Goddamn",
"hell",
"homo",
"jerk",
"jizz",
"knobend",
"labia",
"lmao",
"lmfao",
"muff",
"******",
"nigga",
"omg",
"penis",
"piss",
"poop",
"prick",
"pube",
"pussy",
"queer",
"scrotum",
"sex",
"shit",
"sh1t",
"slut",
"smegma",
"spunk",
"tit",
"tosser",
"turd",
"twat",
"vagina",
"wank",
"whore",
"wtf",
};
foreach (string bannedname in names)
if (client.Account.Name.ToLower() == bannedname.ToLower())
{
client.SendPacket(new FailurePacket
{
ErrorId = 0,
ErrorDescription = "Name is obscene"
});
client.Disconnect();
return;
}
}





if (client.Account.Banned)
{
if (client.Account.Rank < 3)
{
client.SendPacket(new FailurePacket
{
ErrorId = 0,
ErrorDescription = "You are banned"
});
client.Disconnect();
return;
}
}




int reserved = Manager.MaxClients - 3;
if (Manager.Clients.Count >= reserved)
{
if (client.Account.Rank < 3)
{
client.SendPacket(new FailurePacket
{
ErrorId = 0,
ErrorDescription = "Server Full"
});
client.Disconnect();
return;
}
}
















later...but right now my computer is going through a fucking 2 hour update :/ someone pls halp XD
i got 1 error on my pvp thing which is the health bar when i do /max i got all the stats expect for hp i get 7/8 stats il show u screenshots take a look :P pwease