fix: Fixes ML containers and addons (#804)
* Fixes some ML addons so they are containers * Adds some missing ML artifacts * Fixes carpentry gump crafting entries
This commit is contained in:
parent
b4ab052241
commit
2253a2332c
61 changed files with 678 additions and 630 deletions
|
|
@ -54,10 +54,8 @@ namespace Server.Engines.Craft
|
|||
{
|
||||
var type = item.GetType();
|
||||
|
||||
var isAnvil = type.IsDefined(typeofAnvil, false) || item.ItemID == 4015 || item.ItemID == 4016 ||
|
||||
item.ItemID == 0x2DD5 || item.ItemID == 0x2DD6;
|
||||
var isForge = type.IsDefined(typeofForge, false) || item.ItemID == 4017 ||
|
||||
item.ItemID >= 6522 && item.ItemID <= 6569 || item.ItemID == 0x2DD8;
|
||||
var isAnvil = type.IsDefined(typeofAnvil, false) || item.ItemID is 4015 or 4016 or 11733 or 11734;
|
||||
var isForge = type.IsDefined(typeofForge, false) || item.ItemID is 4017 or >= 6522 and <= 6569 or 11736;
|
||||
|
||||
if (isAnvil || isForge)
|
||||
{
|
||||
|
|
@ -88,8 +86,8 @@ namespace Server.Engines.Craft
|
|||
{
|
||||
var id = tiles[i].ID;
|
||||
|
||||
var isAnvil = id == 4015 || id == 4016 || id == 0x2DD5 || id == 0x2DD6;
|
||||
var isForge = id == 4017 || id >= 6522 && id <= 6569 || id == 0x2DD8;
|
||||
var isAnvil = id is 4015 or 4016 or 11733 or 11734;
|
||||
var isForge = id is 4017 or >= 6522 and <= 6569 or 11736;
|
||||
|
||||
if (isAnvil || isForge)
|
||||
{
|
||||
|
|
|
|||
|
|
@ -104,26 +104,13 @@ namespace Server.Engines.Craft
|
|||
index = AddCraft(typeof(RedHangingLantern), 1044294, 1029412, 65.0, 90.0, typeof(Log), 1044041, 5, 1044351);
|
||||
AddRes(index, typeof(BlankScroll), 1044377, 10, 1044378);
|
||||
SetNeededExpansion(index, Expansion.SE);
|
||||
|
||||
index = AddCraft(
|
||||
typeof(WhiteHangingLantern),
|
||||
1044294,
|
||||
1029416,
|
||||
65.0,
|
||||
90.0,
|
||||
typeof(Log),
|
||||
1044041,
|
||||
5,
|
||||
1044351
|
||||
);
|
||||
index = AddCraft(typeof(WhiteHangingLantern), 1044294, 1029416, 65.0, 90.0, typeof(Log), 1044041, 5, 1044351);
|
||||
AddRes(index, typeof(BlankScroll), 1044377, 10, 1044378);
|
||||
SetNeededExpansion(index, Expansion.SE);
|
||||
|
||||
index = AddCraft(typeof(ShojiScreen), 1044294, 1029423, 80.0, 105.0, typeof(Log), 1044041, 75, 1044351);
|
||||
AddSkill(index, SkillName.Tailoring, 50.0, 55.0);
|
||||
AddRes(index, typeof(Cloth), 1044286, 60, 1044287);
|
||||
SetNeededExpansion(index, Expansion.SE);
|
||||
|
||||
index = AddCraft(typeof(BambooScreen), 1044294, 1029428, 80.0, 105.0, typeof(Log), 1044041, 75, 1044351);
|
||||
AddSkill(index, SkillName.Tailoring, 50.0, 55.0);
|
||||
AddRes(index, typeof(Cloth), 1044286, 60, 1044287);
|
||||
|
|
@ -132,17 +119,7 @@ namespace Server.Engines.Craft
|
|||
|
||||
if (Core.AOS) // Duplicate Entries to preserve ordering depending on era
|
||||
{
|
||||
index = AddCraft(
|
||||
typeof(FishingPole),
|
||||
1044294,
|
||||
1023519,
|
||||
68.4,
|
||||
93.4,
|
||||
typeof(Log),
|
||||
1044041,
|
||||
5,
|
||||
1044351
|
||||
);
|
||||
index = AddCraft(typeof(FishingPole), 1044294, 1023519, 68.4, 93.4, typeof(Log), 1044041, 5, 1044351 );
|
||||
AddSkill(index, SkillName.Tailoring, 40.0, 45.0);
|
||||
AddRes(index, typeof(Cloth), 1044286, 5, 1044287);
|
||||
}
|
||||
|
|
@ -154,78 +131,35 @@ namespace Server.Engines.Craft
|
|||
AddRes(index, typeof(RunedPrism), 1073465, 1, 1053098);
|
||||
AddRes(index, typeof(JeweledFiligree), 1072894, 1, 1053098);
|
||||
SetNeededExpansion(index, Expansion.ML);
|
||||
|
||||
index = AddCraft(
|
||||
typeof(WarriorStatueSouthDeed),
|
||||
1044294,
|
||||
1072887,
|
||||
0.0,
|
||||
35.0,
|
||||
typeof(Log),
|
||||
1044041,
|
||||
250,
|
||||
1044351
|
||||
);
|
||||
index = AddCraft(typeof(ArcanistStatueSouthDeed), 1044294, 1072885, 0.0, 35.0, typeof(Log), 1044041, 250, 1044351);
|
||||
ForceNonExceptional(index);
|
||||
SetNeededExpansion(index, Expansion.ML);
|
||||
index = AddCraft(typeof(ArcanistStatueEastDeed), 1044294, 1072886, 0.0, 35.0, typeof(Log), 1044041, 250, 1044351);
|
||||
ForceNonExceptional(index);
|
||||
SetNeededExpansion(index, Expansion.ML);
|
||||
index = AddCraft(typeof(WarriorStatueSouthDeed), 1044294, 1072887, 0.0, 35.0, typeof(Log), 1044041, 250, 1044351);
|
||||
AddRecipe(index, 300);
|
||||
ForceNonExceptional(index);
|
||||
SetNeededExpansion(index, Expansion.ML);
|
||||
|
||||
index = AddCraft(
|
||||
typeof(WarriorStatueEastDeed),
|
||||
1044294,
|
||||
1072888,
|
||||
0.0,
|
||||
35.0,
|
||||
typeof(Log),
|
||||
1044041,
|
||||
250,
|
||||
1044351
|
||||
);
|
||||
index = AddCraft(typeof(WarriorStatueEastDeed), 1044294, 1072888, 0.0, 35.0, typeof(Log), 1044041, 250, 1044351);
|
||||
AddRecipe(index, 301);
|
||||
ForceNonExceptional(index);
|
||||
SetNeededExpansion(index, Expansion.ML);
|
||||
|
||||
index = AddCraft(
|
||||
typeof(SquirrelStatueSouthDeed),
|
||||
1044294,
|
||||
1072884,
|
||||
0.0,
|
||||
35.0,
|
||||
typeof(Log),
|
||||
1044041,
|
||||
250,
|
||||
1044351
|
||||
);
|
||||
index = AddCraft(typeof(SquirrelStatueSouthDeed), 1044294, 1072884, 0.0, 35.0, typeof(Log), 1044041, 250, 1044351);
|
||||
AddRecipe(index, 302);
|
||||
ForceNonExceptional(index);
|
||||
SetNeededExpansion(index, Expansion.ML);
|
||||
|
||||
index = AddCraft(
|
||||
typeof(SquirrelStatueEastDeed),
|
||||
1044294,
|
||||
1073398,
|
||||
0.0,
|
||||
35.0,
|
||||
typeof(Log),
|
||||
1044041,
|
||||
250,
|
||||
1044351
|
||||
);
|
||||
index = AddCraft(typeof(SquirrelStatueEastDeed), 1044294, 1073398, 0.0, 35.0, typeof(Log), 1044041, 250, 1044351);
|
||||
AddRecipe(index, 303);
|
||||
ForceNonExceptional(index);
|
||||
SetNeededExpansion(index, Expansion.ML);
|
||||
|
||||
index = AddCraft(
|
||||
typeof(AcidProofRope),
|
||||
1044294,
|
||||
1074886,
|
||||
80,
|
||||
130.0,
|
||||
typeof(GreaterStrengthPotion),
|
||||
1073466,
|
||||
2,
|
||||
1044253
|
||||
);
|
||||
index = AddCraft(typeof(GiantReplicaAcorn), 1044294, 1072889, 80.0, 105.0, typeof(Log), 1044041, 35, 1044351);
|
||||
SetNeededExpansion(index, Expansion.ML);
|
||||
index = AddCraft(typeof(MountedDreadHorn), 1044294, 1032632, 90.0, 115.0, typeof(Log), 1044041, 50, 1044351);
|
||||
AddRes(index, typeof(PristineDreadHorn), 1032634, 1, 1053098);
|
||||
ForceNonExceptional(index);
|
||||
SetNeededExpansion(index, Expansion.ML);
|
||||
index = AddCraft(typeof(AcidProofRope), 1044294, 1074886, 80, 130.0, typeof(GreaterStrengthPotion), 1073466, 2, 1044253);
|
||||
AddRes(index, typeof(ProtectionScroll), 1044395, 1, 1053098);
|
||||
AddRes(index, typeof(SwitchItem), 1032127, 1, 1053098);
|
||||
AddRareRecipe(index, 304);
|
||||
|
|
@ -252,16 +186,29 @@ namespace Server.Engines.Craft
|
|||
{
|
||||
index = AddCraft(typeof(ElegantLowTable), 1044291, 1030265, 80.0, 105.0, typeof(Log), 1044041, 35, 1044351);
|
||||
SetNeededExpansion(index, Expansion.SE);
|
||||
|
||||
index = AddCraft(typeof(PlainLowTable), 1044291, 1030266, 80.0, 105.0, typeof(Log), 1044041, 35, 1044351);
|
||||
SetNeededExpansion(index, Expansion.SE);
|
||||
}
|
||||
|
||||
if (Core.ML)
|
||||
{
|
||||
index = AddCraft(typeof(OrnateElvenTableSouthDeed), 1044291, 1072869, 85.0, 110.0, typeof(Log), 1044041, 60, 1044351);
|
||||
SetNeededExpansion(index, Expansion.ML);
|
||||
index = AddCraft(typeof(OrnateElvenTableEastDeed), 1044291, 1073384, 85.0, 110.0, typeof(Log), 1044041, 60, 1044351);
|
||||
SetNeededExpansion(index, Expansion.ML);
|
||||
index = AddCraft(typeof(FancyElvenTableSouthDeed), 1044291, 1073385, 80.0, 105.0, typeof(Log), 1044041, 50, 1044351);
|
||||
SetNeededExpansion(index, Expansion.ML);
|
||||
index = AddCraft(typeof(FancyElvenTableEastDeed), 1044291, 1073386, 80.0, 105.0, typeof(Log), 1044041, 50, 1044351);
|
||||
SetNeededExpansion(index, Expansion.ML);
|
||||
index = AddCraft(typeof(ElvenPodium), 1044291, 1073399, 80.0, 105.0, typeof(Log), 1044041, 20, 1044351);
|
||||
SetNeededExpansion(index, Expansion.ML);
|
||||
index = AddCraft(typeof(OrnateElvenChair), 1044291, 1072870, 80.0, 105.0, typeof(Log), 1044041, 30, 1044351);
|
||||
AddRecipe(index, 305);
|
||||
SetNeededExpansion(index, Expansion.ML);
|
||||
index = AddCraft(typeof(BigElvenChair), 1044291, 1072872, 85.0, 110.0, typeof(Log), 1044041, 40, 1044351);
|
||||
SetNeededExpansion(index, Expansion.ML);
|
||||
index = AddCraft(typeof(ElvenReadingChair), 1044291, 1072873, 80.0, 105.0, typeof(Log), 1044041, 30, 1044351);
|
||||
SetNeededExpansion(index, Expansion.ML);
|
||||
}
|
||||
|
||||
// Containers
|
||||
|
|
@ -278,64 +225,24 @@ namespace Server.Engines.Craft
|
|||
{
|
||||
index = AddCraft(typeof(PlainWoodenChest), 1044292, 1030251, 90.0, 115.0, typeof(Log), 1044041, 30, 1044351);
|
||||
SetNeededExpansion(index, Expansion.SE);
|
||||
|
||||
index = AddCraft(
|
||||
typeof(OrnateWoodenChest),
|
||||
1044292,
|
||||
1030253,
|
||||
90.0,
|
||||
115.0,
|
||||
typeof(Log),
|
||||
1044041,
|
||||
30,
|
||||
1044351
|
||||
);
|
||||
index = AddCraft(typeof(OrnateWoodenChest), 1044292, 1030253, 90.0, 115.0, typeof(Log), 1044041, 30, 1044351);
|
||||
SetNeededExpansion(index, Expansion.SE);
|
||||
|
||||
index = AddCraft(
|
||||
typeof(GildedWoodenChest),
|
||||
1044292,
|
||||
1030255,
|
||||
90.0,
|
||||
115.0,
|
||||
typeof(Log),
|
||||
1044041,
|
||||
30,
|
||||
1044351
|
||||
);
|
||||
index = AddCraft(typeof(GildedWoodenChest), 1044292, 1030255, 90.0, 115.0, typeof(Log), 1044041, 30, 1044351);
|
||||
SetNeededExpansion(index, Expansion.SE);
|
||||
|
||||
index = AddCraft(typeof(WoodenFootLocker), 1044292, 1030257, 90.0, 115.0, typeof(Log), 1044041, 30, 1044351);
|
||||
SetNeededExpansion(index, Expansion.SE);
|
||||
|
||||
index = AddCraft(
|
||||
typeof(FinishedWoodenChest),
|
||||
1044292,
|
||||
1030259,
|
||||
90.0,
|
||||
115.0,
|
||||
typeof(Log),
|
||||
1044041,
|
||||
30,
|
||||
1044351
|
||||
);
|
||||
index = AddCraft(typeof(FinishedWoodenChest), 1044292, 1030259, 90.0, 115.0, typeof(Log), 1044041, 30, 1044351);
|
||||
SetNeededExpansion(index, Expansion.SE);
|
||||
|
||||
index = AddCraft(typeof(TallCabinet), 1044292, 1030261, 90.0, 115.0, typeof(Log), 1044041, 35, 1044351);
|
||||
SetNeededExpansion(index, Expansion.SE);
|
||||
|
||||
index = AddCraft(typeof(ShortCabinet), 1044292, 1030263, 90.0, 115.0, typeof(Log), 1044041, 35, 1044351);
|
||||
SetNeededExpansion(index, Expansion.SE);
|
||||
|
||||
index = AddCraft(typeof(RedArmoire), 1044292, 1030328, 90.0, 115.0, typeof(Log), 1044041, 40, 1044351);
|
||||
SetNeededExpansion(index, Expansion.SE);
|
||||
|
||||
index = AddCraft(typeof(ElegantArmoire), 1044292, 1030330, 90.0, 115.0, typeof(Log), 1044041, 40, 1044351);
|
||||
SetNeededExpansion(index, Expansion.SE);
|
||||
|
||||
index = AddCraft(typeof(MapleArmoire), 1044292, 1030332, 90.0, 115.0, typeof(Log), 1044041, 40, 1044351);
|
||||
SetNeededExpansion(index, Expansion.SE);
|
||||
|
||||
index = AddCraft(typeof(CherryArmoire), 1044292, 1030334, 90.0, 115.0, typeof(Log), 1044041, 40, 1044351);
|
||||
SetNeededExpansion(index, Expansion.SE);
|
||||
}
|
||||
|
|
@ -346,193 +253,77 @@ namespace Server.Engines.Craft
|
|||
|
||||
if (Core.ML)
|
||||
{
|
||||
index = AddCraft(
|
||||
typeof(ArcaneBookshelfSouthDeed),
|
||||
1044292,
|
||||
1072871,
|
||||
94.7,
|
||||
119.7,
|
||||
typeof(Log),
|
||||
1044041,
|
||||
80,
|
||||
1044351
|
||||
);
|
||||
index = AddCraft(typeof(ArcaneBookshelfSouthDeed), 1044292, 1072871, 94.7, 119.7, typeof(Log), 1044041, 80, 1044351);
|
||||
AddRecipe(index, 306);
|
||||
ForceNonExceptional(index);
|
||||
SetNeededExpansion(index, Expansion.ML);
|
||||
|
||||
index = AddCraft(
|
||||
typeof(ArcaneBookshelfEastDeed),
|
||||
1044292,
|
||||
1073371,
|
||||
94.7,
|
||||
119.7,
|
||||
typeof(Log),
|
||||
1044041,
|
||||
80,
|
||||
1044351
|
||||
);
|
||||
index = AddCraft(typeof(ArcaneBookshelfEastDeed), 1044292, 1073371, 94.7, 119.7, typeof(Log), 1044041, 80, 1044351);
|
||||
AddRecipe(index, 307);
|
||||
ForceNonExceptional(index);
|
||||
SetNeededExpansion(index, Expansion.ML);
|
||||
|
||||
/* TODO
|
||||
index = AddCraft( typeof( OrnateElvenChestSouthDeed ), 1044292, 1072862, 94.7, 119.7, typeof( Log ), 1044041, 40, 1044351 );
|
||||
AddRecipe( index, 308 );
|
||||
ForceNonExceptional( index );
|
||||
SetNeededExpansion( index, Expansion.ML );
|
||||
|
||||
index = AddCraft( typeof( OrnateElvenChestEastDeed ), 1044292, 1073383, 94.7, 119.7, typeof( Log ), 1044041, 40, 1044351 );
|
||||
AddRecipe( index, 309 );
|
||||
ForceNonExceptional( index );
|
||||
SetNeededExpansion( index, Expansion.ML );
|
||||
*/
|
||||
|
||||
index = AddCraft(
|
||||
typeof(ElvenDresserSouthDeed),
|
||||
1044292,
|
||||
1072864,
|
||||
75.0,
|
||||
100.0,
|
||||
typeof(Log),
|
||||
1044041,
|
||||
45,
|
||||
1044351
|
||||
);
|
||||
index = AddCraft( typeof(OrnateElvenChestSouthDeed), 1044292, 1072862, 94.7, 119.7, typeof(Log), 1044041, 40, 1044351);
|
||||
AddRecipe(index, 308);
|
||||
ForceNonExceptional(index);
|
||||
SetNeededExpansion(index, Expansion.ML);
|
||||
index = AddCraft( typeof(OrnateElvenChestEastDeed), 1044292, 1073383, 94.7, 119.7, typeof(Log), 1044041, 40, 1044351);
|
||||
AddRecipe(index, 309);
|
||||
ForceNonExceptional(index);
|
||||
SetNeededExpansion(index, Expansion.ML);
|
||||
index = AddCraft(typeof(ElvenWashBasinSouthDeed), 1044292, 1072865, 70.0, 95.0, typeof(Log), 1044041, 40, 1044351);
|
||||
ForceNonExceptional(index);
|
||||
SetNeededExpansion(index, Expansion.ML);
|
||||
index = AddCraft(typeof(ElvenWashBasinEastDeed), 1044292, 1072865, 70.0, 95.0, typeof(Log), 1044041, 40, 1044351);
|
||||
ForceNonExceptional(index);
|
||||
SetNeededExpansion(index, Expansion.ML);
|
||||
index = AddCraft(typeof(ElvenDresserSouthDeed), 1044292, 1072864, 75.0, 100.0, typeof(Log), 1044041, 45, 1044351);
|
||||
AddRecipe(index, 310);
|
||||
ForceNonExceptional(index);
|
||||
SetNeededExpansion(index, Expansion.ML);
|
||||
|
||||
index = AddCraft(
|
||||
typeof(ElvenDresserEastDeed),
|
||||
1044292,
|
||||
1073388,
|
||||
75.0,
|
||||
100.0,
|
||||
typeof(Log),
|
||||
1044041,
|
||||
45,
|
||||
1044351
|
||||
);
|
||||
index = AddCraft(typeof(ElvenDresserEastDeed), 1044292, 1073388, 75.0, 100.0, typeof(Log), 1044041, 45, 1044351);
|
||||
AddRecipe(index, 311);
|
||||
ForceNonExceptional(index);
|
||||
SetNeededExpansion(index, Expansion.ML);
|
||||
|
||||
/* TODO
|
||||
index = AddCraft( typeof( FancyElvenArmoire ), 1044292, 1072866, 80.0, 105.0, typeof( Log ), 1044041, 60, 1044351 );
|
||||
AddRecipe( index, 312 );
|
||||
ForceNonExceptional( index );
|
||||
SetNeededExpansion( index, Expansion.ML );
|
||||
*/
|
||||
index = AddCraft( typeof(FancyElvenArmoire), 1044292, 1072866, 80.0, 105.0, typeof(Log), 1044041, 60, 1044351);
|
||||
AddRecipe(index, 312);
|
||||
ForceNonExceptional(index);
|
||||
SetNeededExpansion(index, Expansion.ML);
|
||||
index = AddCraft(typeof(SimpleElvenArmoire), 1044292, 1073401, 80.0, 105.0, typeof(Log), 1044041, 60, 1044351);
|
||||
SetNeededExpansion(index, Expansion.ML);
|
||||
index = AddCraft(typeof(RarewoodChest), 1044292, 1073402, 80.0, 105.0, typeof(Log), 1044041, 30, 1044351);
|
||||
SetNeededExpansion(index, Expansion.ML);
|
||||
index = AddCraft(typeof(DecorativeBox), 1044292, 1073403, 80.0, 105.0, typeof(Log), 1044041, 25, 1044351);
|
||||
SetNeededExpansion(index, Expansion.ML);
|
||||
index = AddCraft(typeof(FullBookcase), 1044292, 1071213, 60.0, 85.0, typeof(Log), 1044041, 25, 1044351);
|
||||
AddRes(index, typeof(AcademicBooksArtifact), 1071202, 1, 1044253);
|
||||
SetNeededExpansion(index, Expansion.ML);
|
||||
}
|
||||
|
||||
// Staves and Shields
|
||||
AddCraft(
|
||||
typeof(ShepherdsCrook),
|
||||
Core.ML ? 1044566 : 1044295,
|
||||
1023713,
|
||||
78.9,
|
||||
103.9,
|
||||
typeof(Log),
|
||||
1044041,
|
||||
7,
|
||||
1044351
|
||||
);
|
||||
AddCraft(
|
||||
typeof(QuarterStaff),
|
||||
Core.ML ? 1044566 : 1044295,
|
||||
1023721,
|
||||
73.6,
|
||||
98.6,
|
||||
typeof(Log),
|
||||
1044041,
|
||||
6,
|
||||
1044351
|
||||
);
|
||||
AddCraft(
|
||||
typeof(GnarledStaff),
|
||||
Core.ML ? 1044566 : 1044295,
|
||||
1025112,
|
||||
78.9,
|
||||
103.9,
|
||||
typeof(Log),
|
||||
1044041,
|
||||
7,
|
||||
1044351
|
||||
);
|
||||
AddCraft(
|
||||
typeof(WoodenShield),
|
||||
Core.ML ? 1062760 : 1044295,
|
||||
1027034,
|
||||
52.6,
|
||||
77.6,
|
||||
typeof(Log),
|
||||
1044041,
|
||||
9,
|
||||
1044351
|
||||
);
|
||||
AddCraft(typeof(ShepherdsCrook), Core.ML ? 1044566 : 1044295, 1023713, 78.9, 103.9, typeof(Log), 1044041, 7, 1044351);
|
||||
AddCraft(typeof(QuarterStaff), Core.ML ? 1044566 : 1044295, 1023721, 73.6, 98.6, typeof(Log), 1044041, 6, 1044351);
|
||||
AddCraft(typeof(GnarledStaff), Core.ML ? 1044566 : 1044295, 1025112, 78.9, 103.9, typeof(Log), 1044041, 7, 1044351);
|
||||
|
||||
if (!Core.AOS) // Duplicate Entries to preserve ordering depending on era
|
||||
{
|
||||
index = AddCraft(
|
||||
typeof(FishingPole),
|
||||
Core.ML ? 1044294 : 1044295,
|
||||
1023519,
|
||||
68.4,
|
||||
93.4,
|
||||
typeof(Log),
|
||||
1044041,
|
||||
5,
|
||||
1044351
|
||||
);
|
||||
index = AddCraft(typeof(FishingPole), Core.ML ? 1044294 : 1044295, 1023519, 68.4, 93.4, typeof(Log), 1044041, 5, 1044351);
|
||||
AddSkill(index, SkillName.Tailoring, 40.0, 45.0);
|
||||
AddRes(index, typeof(Cloth), 1044286, 5, 1044287);
|
||||
}
|
||||
|
||||
if (Core.SE)
|
||||
{
|
||||
index = AddCraft(
|
||||
typeof(Bokuto),
|
||||
Core.ML ? 1044566 : 1044295,
|
||||
1030227,
|
||||
70.0,
|
||||
95.0,
|
||||
typeof(Log),
|
||||
1044041,
|
||||
6,
|
||||
1044351
|
||||
);
|
||||
index = AddCraft(typeof(Bokuto), Core.ML ? 1044566 : 1044295, 1030227, 70.0, 95.0, typeof(Log), 1044041, 6, 1044351);
|
||||
SetNeededExpansion(index, Expansion.SE);
|
||||
|
||||
index = AddCraft(
|
||||
typeof(Fukiya),
|
||||
Core.ML ? 1044566 : 1044295,
|
||||
1030229,
|
||||
60.0,
|
||||
85.0,
|
||||
typeof(Log),
|
||||
1044041,
|
||||
6,
|
||||
1044351
|
||||
);
|
||||
index = AddCraft(typeof(Fukiya), Core.ML ? 1044566 : 1044295, 1030229, 60.0, 85.0, typeof(Log), 1044041, 6, 1044351);
|
||||
SetNeededExpansion(index, Expansion.SE);
|
||||
|
||||
index = AddCraft(
|
||||
typeof(Tetsubo),
|
||||
Core.ML ? 1044566 : 1044295,
|
||||
1030225,
|
||||
80.0,
|
||||
140.3,
|
||||
typeof(Log),
|
||||
1044041,
|
||||
10,
|
||||
1044351
|
||||
);
|
||||
index = AddCraft(typeof(Tetsubo), Core.ML ? 1044566 : 1044295, 1030225, 80.0, 140.3, typeof(Log), 1044041, 10, 1044351);
|
||||
SetNeededExpansion(index, Expansion.SE);
|
||||
}
|
||||
|
||||
if (Core.ML)
|
||||
{
|
||||
index = AddCraft(typeof(WildStaff), 1044566, 1031557, 63.8, 113.8, typeof(Log), 1044041, 16, 1044351);
|
||||
SetNeededExpansion(index, Expansion.ML);
|
||||
index = AddCraft(typeof(PhantomStaff), 1044566, 1072919, 90.0, 130.0, typeof(Log), 1044041, 16, 1044351);
|
||||
AddRes(index, typeof(DiseasedBark), 1032683, 1, 1053098);
|
||||
AddRes(index, typeof(Putrefication), 1032678, 10, 1053098);
|
||||
|
|
@ -540,51 +331,56 @@ namespace Server.Engines.Craft
|
|||
AddRareRecipe(index, 313);
|
||||
ForceNonExceptional(index);
|
||||
SetNeededExpansion(index, Expansion.ML);
|
||||
|
||||
index = AddCraft(
|
||||
typeof(ArcanistsWildStaff),
|
||||
1044566,
|
||||
1073549,
|
||||
63.8,
|
||||
113.8,
|
||||
typeof(Log),
|
||||
1044041,
|
||||
16,
|
||||
1044351
|
||||
);
|
||||
index = AddCraft(typeof(ArcanistsWildStaff), 1044566, 1073549, 63.8, 113.8, typeof(Log), 1044041, 16, 1044351);
|
||||
AddRes(index, typeof(WhitePearl), 1026253, 1, 1053098);
|
||||
AddRecipe(index, 314);
|
||||
SetNeededExpansion(index, Expansion.ML);
|
||||
|
||||
index = AddCraft(typeof(AncientWildStaff), 1044566, 1073550, 63.8, 113.8, typeof(Log), 1044041, 16, 1044351);
|
||||
AddRes(index, typeof(PerfectEmerald), 1026251, 1, 1053098);
|
||||
AddRecipe(index, 315);
|
||||
SetNeededExpansion(index, Expansion.ML);
|
||||
|
||||
index = AddCraft(typeof(ThornedWildStaff), 1044566, 1073551, 63.8, 113.8, typeof(Log), 1044041, 16, 1044351);
|
||||
AddRes(index, typeof(FireRuby), 1026254, 1, 1053098);
|
||||
AddRecipe(index, 316);
|
||||
SetNeededExpansion(index, Expansion.ML);
|
||||
|
||||
index = AddCraft(
|
||||
typeof(HardenedWildStaff),
|
||||
1044566,
|
||||
1073552,
|
||||
63.8,
|
||||
113.8,
|
||||
typeof(Log),
|
||||
1044041,
|
||||
16,
|
||||
1044351
|
||||
);
|
||||
index = AddCraft(typeof(HardenedWildStaff), 1044566, 1073552, 63.8, 113.8, typeof(Log), 1044041, 16, 1044351);
|
||||
AddRes(index, typeof(Turquoise), 1026250, 1, 1053098);
|
||||
AddRecipe(index, 317);
|
||||
SetNeededExpansion(index, Expansion.ML);
|
||||
}
|
||||
|
||||
// Armor
|
||||
AddCraft(typeof(WoodenShield), Core.ML ? 1062760 : 1044295, 1027034, 52.6, 77.6, typeof(Log), 1044041, 9, 1044351);
|
||||
|
||||
if (Core.ML)
|
||||
{
|
||||
index = AddCraft(typeof(WoodlandChest), 1062760, 1031111, 90.0, 115.0, typeof(Log), 1044041, 20, 1044351);
|
||||
AddRes(index, typeof(BarkFragment), 1032687, 6, 1053098);
|
||||
SetNeededExpansion(index, Expansion.ML);
|
||||
index = AddCraft(typeof(WoodlandArms), 1062760, 1031116, 80.0, 105.0, typeof(Log), 1044041, 15, 1044351);
|
||||
AddRes(index, typeof(BarkFragment), 1032687, 4, 1053098);
|
||||
SetNeededExpansion(index, Expansion.ML);
|
||||
index = AddCraft(typeof(WoodlandGloves), 1062760, 1031114, 85.0, 110.0, typeof(Log), 1044041, 15, 1044351);
|
||||
AddRes(index, typeof(BarkFragment), 1032687, 4, 1053098);
|
||||
SetNeededExpansion(index, Expansion.ML);
|
||||
index = AddCraft(typeof(WoodlandLegs), 1062760, 1031115, 85.0, 110.0, typeof(Log), 1044041, 15, 1044351);
|
||||
AddRes(index, typeof(BarkFragment), 1032687, 4, 1053098);
|
||||
SetNeededExpansion(index, Expansion.ML);
|
||||
index = AddCraft(typeof(WoodlandGorget), 1062760, 1031113, 85.0, 110.0, typeof(Log), 1044041, 15, 1044351);
|
||||
AddRes(index, typeof(BarkFragment), 1032687, 4, 1053098);
|
||||
SetNeededExpansion(index, Expansion.ML);
|
||||
index = AddCraft(typeof(RavenHelm), 1062760, 1031121, 65.0, 115.0, typeof(Log), 1044041, 10, 1044351);
|
||||
AddRes(index, typeof(BarkFragment), 1032687, 4, 1053098);
|
||||
AddRes(index, typeof(Feather), 1027123, 25, 1053098);
|
||||
SetNeededExpansion(index, Expansion.ML);
|
||||
index = AddCraft(typeof(VultureHelm), 1062760, 1031122, 63.9, 113.9, typeof(Log), 1044041, 10, 1044351);
|
||||
AddRes(index, typeof(BarkFragment), 1032687, 4, 1053098);
|
||||
AddRes(index, typeof(Feather), 1027123, 25, 1053098);
|
||||
SetNeededExpansion(index, Expansion.ML);
|
||||
index = AddCraft(typeof(WingedHelm), 1062760, 1031123, 58.4, 108.4, typeof(Log), 1044041, 10, 1044351);
|
||||
AddRes(index, typeof(BarkFragment), 1032687, 4, 1053098);
|
||||
AddRes(index, typeof(Feather), 1027123, 60, 1053098);
|
||||
SetNeededExpansion(index, Expansion.ML);
|
||||
index = AddCraft(typeof(IronwoodCrown), 1062760, 1072924, 85.0, 120.0, typeof(Log), 1044041, 10, 1044351);
|
||||
AddRes(index, typeof(DiseasedBark), 1032683, 1, 1053098);
|
||||
AddRes(index, typeof(Corruption), 1032676, 10, 1053098);
|
||||
|
|
@ -592,7 +388,6 @@ namespace Server.Engines.Craft
|
|||
AddRareRecipe(index, 318);
|
||||
ForceNonExceptional(index);
|
||||
SetNeededExpansion(index, Expansion.ML);
|
||||
|
||||
index = AddCraft(typeof(BrambleCoat), 1062760, 1072925, 85.0, 120.0, typeof(Log), 1044041, 10, 1044351);
|
||||
AddRes(index, typeof(DiseasedBark), 1032683, 1, 1053098);
|
||||
AddRes(index, typeof(Taint), 1032679, 10, 1053098);
|
||||
|
|
@ -606,23 +401,18 @@ namespace Server.Engines.Craft
|
|||
index = AddCraft(typeof(LapHarp), 1044293, 1023762, 63.1, 88.1, typeof(Log), 1044041, 20, 1044351);
|
||||
AddSkill(index, SkillName.Musicianship, 45.0, 50.0);
|
||||
AddRes(index, typeof(Cloth), 1044286, 10, 1044287);
|
||||
|
||||
index = AddCraft(typeof(Harp), 1044293, 1023761, 78.9, 103.9, typeof(Log), 1044041, 35, 1044351);
|
||||
AddSkill(index, SkillName.Musicianship, 45.0, 50.0);
|
||||
AddRes(index, typeof(Cloth), 1044286, 15, 1044287);
|
||||
|
||||
index = AddCraft(typeof(Drums), 1044293, 1023740, 57.8, 82.8, typeof(Log), 1044041, 20, 1044351);
|
||||
AddSkill(index, SkillName.Musicianship, 45.0, 50.0);
|
||||
AddRes(index, typeof(Cloth), 1044286, 10, 1044287);
|
||||
|
||||
index = AddCraft(typeof(Lute), 1044293, 1023763, 68.4, 93.4, typeof(Log), 1044041, 25, 1044351);
|
||||
AddSkill(index, SkillName.Musicianship, 45.0, 50.0);
|
||||
AddRes(index, typeof(Cloth), 1044286, 10, 1044287);
|
||||
|
||||
index = AddCraft(typeof(Tambourine), 1044293, 1023741, 57.8, 82.8, typeof(Log), 1044041, 15, 1044351);
|
||||
AddSkill(index, SkillName.Musicianship, 45.0, 50.0);
|
||||
AddRes(index, typeof(Cloth), 1044286, 10, 1044287);
|
||||
|
||||
index = AddCraft(typeof(TambourineTassel), 1044293, 1044320, 57.8, 82.8, typeof(Log), 1044041, 15, 1044351);
|
||||
AddSkill(index, SkillName.Musicianship, 45.0, 50.0);
|
||||
AddRes(index, typeof(Cloth), 1044286, 15, 1044287);
|
||||
|
|
@ -634,44 +424,58 @@ namespace Server.Engines.Craft
|
|||
SetNeededExpansion(index, Expansion.SE);
|
||||
}
|
||||
|
||||
// Misc
|
||||
if (Core.AOS)
|
||||
{
|
||||
AddCraft(typeof(PlayerBBEast), 1044290, 1062420, 85.0, 110.0, typeof(Log), 1044041, 50, 1044351);
|
||||
AddCraft(typeof(PlayerBBSouth), 1044290, 1062421, 85.0, 110.0, typeof(Log), 1044041, 50, 1044351);
|
||||
}
|
||||
|
||||
if (Core.ML)
|
||||
{
|
||||
index = AddCraft(
|
||||
typeof(TallElvenBedSouthDeed),
|
||||
1044290,
|
||||
1072858,
|
||||
94.7,
|
||||
119.7,
|
||||
typeof(Log),
|
||||
1044041,
|
||||
200,
|
||||
1044351
|
||||
);
|
||||
index = AddCraft(typeof(ParrotPerchDeed), 1044290, 1072617, 50.0, 85.0, typeof(Log), 1044041, 100, 1044351);
|
||||
ForceNonExceptional(index);
|
||||
SetNeededExpansion(index, Expansion.ML);
|
||||
index = AddCraft(typeof(ArcaneCircleDeed), 1044290, 1072703, 94.7, 119.7, typeof(Log), 1044041, 100, 1044351);
|
||||
AddRes(index, typeof(BlueDiamond), 1026255, 2, 1053098);
|
||||
AddRes(index, typeof(PerfectEmerald), 1026251, 2, 1053098);
|
||||
AddRes(index, typeof(FireRuby), 1026254, 2, 1053098);
|
||||
ForceNonExceptional(index);
|
||||
SetNeededExpansion(index, Expansion.ML);
|
||||
index = AddCraft(typeof(TallElvenBedSouthDeed), 1044290, 1072858, 94.7, 119.7, typeof(Log), 1044041, 200, 1044351);
|
||||
AddSkill(index, SkillName.Tailoring, 75.0, 80.0);
|
||||
AddRes(index, typeof(Cloth), 1044286, 100, 1044287);
|
||||
AddRecipe(index, 320);
|
||||
ForceNonExceptional(index);
|
||||
SetNeededExpansion(index, Expansion.ML);
|
||||
|
||||
index = AddCraft(
|
||||
typeof(TallElvenBedEastDeed),
|
||||
1044290,
|
||||
1072859,
|
||||
94.7,
|
||||
119.7,
|
||||
typeof(Log),
|
||||
1044041,
|
||||
200,
|
||||
1044351
|
||||
);
|
||||
index = AddCraft(typeof(TallElvenBedEastDeed), 1044290, 1072859, 94.7, 119.7, typeof(Log), 1044041, 200, 1044351);
|
||||
AddSkill(index, SkillName.Tailoring, 75.0, 80.0);
|
||||
AddRes(index, typeof(Cloth), 1044286, 100, 1044287);
|
||||
AddRecipe(index, 321);
|
||||
ForceNonExceptional(index);
|
||||
SetNeededExpansion(index, Expansion.ML);
|
||||
index = AddCraft(typeof(ElvenBedSouthDeed), 1044290, 1072860, 94.7, 119.7, typeof(Log), 1044041, 100, 1044351);
|
||||
AddRes(index, typeof(Cloth), 1044286, 100, 1044287);
|
||||
ForceNonExceptional(index);
|
||||
SetNeededExpansion(index, Expansion.ML);
|
||||
index = AddCraft(typeof(ElvenBedEastDeed), 1044290, 1072861, 94.7, 119.7, typeof(Log), 1044041, 100, 1044351);
|
||||
AddRes(index, typeof(Cloth), 1044286, 100, 1044287);
|
||||
ForceNonExceptional(index);
|
||||
SetNeededExpansion(index, Expansion.ML);
|
||||
index = AddCraft(typeof(ElvenLoveseatSouthDeed), 1044290, 1072867, 80.0, 105.0, typeof(Log), 1044041, 50, 1044351);
|
||||
ForceNonExceptional(index);
|
||||
SetNeededExpansion(index, Expansion.ML);
|
||||
index = AddCraft(typeof(ElvenLoveseatEastDeed), 1044290, 1073372, 80.0, 105.0, typeof(Log), 1044041, 50, 1044351);
|
||||
ForceNonExceptional(index);
|
||||
SetNeededExpansion(index, Expansion.ML);
|
||||
index = AddCraft(typeof(AlchemistTableSouthDeed), 1044290, 1073396, 85.0, 110.0, typeof(Log), 1044041, 70, 1044351);
|
||||
ForceNonExceptional(index);
|
||||
SetNeededExpansion(index, Expansion.ML);
|
||||
index = AddCraft(typeof(AlchemistTableEastDeed), 1044290, 1073397, 85.0, 110.0, typeof(Log), 1044041, 70, 1044351);
|
||||
ForceNonExceptional(index);
|
||||
SetNeededExpansion(index, Expansion.ML);
|
||||
}
|
||||
|
||||
// Misc
|
||||
index = AddCraft(typeof(SmallBedSouthDeed), 1044290, 1044321, 94.7, 119.8, typeof(Log), 1044041, 100, 1044351);
|
||||
AddSkill(index, SkillName.Tailoring, 75.0, 80.0);
|
||||
AddRes(index, typeof(Cloth), 1044286, 100, 1044287);
|
||||
|
|
@ -694,13 +498,14 @@ namespace Server.Engines.Craft
|
|||
AddSkill(index, SkillName.Magery, 50.0, 55.0);
|
||||
AddRes(index, typeof(IronIngot), 1044036, 40, 1044037);
|
||||
|
||||
if (Core.AOS)
|
||||
// Blacksmithy - This changed to Anvils and Forges (1111809) for SA
|
||||
if (Core.ML)
|
||||
{
|
||||
AddCraft(typeof(PlayerBBEast), 1044290, 1062420, 85.0, 110.0, typeof(Log), 1044041, 50, 1044351);
|
||||
AddCraft(typeof(PlayerBBSouth), 1044290, 1062421, 85.0, 110.0, typeof(Log), 1044041, 50, 1044351);
|
||||
index = AddCraft(typeof(ElvenForgeDeed), 1044296, 1072875, 94.7, 119.7, typeof(Log), 1044041, 200, 1044351);
|
||||
ForceNonExceptional(index);
|
||||
SetNeededExpansion(index, Expansion.ML);
|
||||
}
|
||||
|
||||
// Blacksmithy - This changed to Anvils and Forges (1111809) for SA
|
||||
index = AddCraft(typeof(SmallForgeDeed), 1044296, 1044330, 73.6, 98.6, typeof(Log), 1044041, 5, 1044351);
|
||||
AddSkill(index, SkillName.Blacksmith, 75.0, 80.0);
|
||||
AddRes(index, typeof(IronIngot), 1044036, 75, 1044037);
|
||||
|
|
@ -721,33 +526,13 @@ namespace Server.Engines.Craft
|
|||
index = AddCraft(typeof(TrainingDummyEastDeed), 1044297, 1044335, 68.4, 93.4, typeof(Log), 1044041, 55, 1044351);
|
||||
AddSkill(index, SkillName.Tailoring, 50.0, 55.0);
|
||||
AddRes(index, typeof(Cloth), 1044286, 60, 1044287);
|
||||
index = AddCraft(
|
||||
typeof(TrainingDummySouthDeed),
|
||||
1044297,
|
||||
1044336,
|
||||
68.4,
|
||||
93.4,
|
||||
typeof(Log),
|
||||
1044041,
|
||||
55,
|
||||
1044351
|
||||
);
|
||||
index = AddCraft(typeof(TrainingDummySouthDeed), 1044297, 1044336, 68.4, 93.4, typeof(Log), 1044041, 55, 1044351);
|
||||
AddSkill(index, SkillName.Tailoring, 50.0, 55.0);
|
||||
AddRes(index, typeof(Cloth), 1044286, 60, 1044287);
|
||||
index = AddCraft(typeof(PickpocketDipEastDeed), 1044297, 1044337, 73.6, 98.6, typeof(Log), 1044041, 65, 1044351);
|
||||
AddSkill(index, SkillName.Tailoring, 50.0, 55.0);
|
||||
AddRes(index, typeof(Cloth), 1044286, 60, 1044287);
|
||||
index = AddCraft(
|
||||
typeof(PickpocketDipSouthDeed),
|
||||
1044297,
|
||||
1044338,
|
||||
73.6,
|
||||
98.6,
|
||||
typeof(Log),
|
||||
1044041,
|
||||
65,
|
||||
1044351
|
||||
);
|
||||
index = AddCraft(typeof(PickpocketDipSouthDeed), 1044297, 1044338, 73.6, 98.6, typeof(Log), 1044041, 65, 1044351);
|
||||
AddSkill(index, SkillName.Tailoring, 50.0, 55.0);
|
||||
AddRes(index, typeof(Cloth), 1044286, 60, 1044287);
|
||||
|
||||
|
|
@ -755,20 +540,31 @@ namespace Server.Engines.Craft
|
|||
index = AddCraft(typeof(Dressform), 1044298, 1044339, 63.1, 88.1, typeof(Log), 1044041, 25, 1044351);
|
||||
AddSkill(index, SkillName.Tailoring, 65.0, 70.0);
|
||||
AddRes(index, typeof(Cloth), 1044286, 10, 1044287);
|
||||
index = AddCraft(typeof(SpinningwheelEastDeed), 1044298, 1044341, 73.6, 98.6, typeof(Log), 1044041, 75, 1044351);
|
||||
|
||||
if (Core.ML)
|
||||
{
|
||||
index = AddCraft(typeof(ElvenSpinningWheelEastDeed), 1044298, 1073393, 75.0, 100.0, typeof(Log), 1044041, 60, 1044351);
|
||||
AddSkill(index, SkillName.Tailoring, 65.0, 85.0);
|
||||
AddRes(index, typeof(Cloth), 1044286, 40, 1044287);
|
||||
ForceNonExceptional(index);
|
||||
SetNeededExpansion(index, Expansion.ML);
|
||||
index = AddCraft(typeof(ElvenSpinningWheelSouthDeed), 1044298, 1072878, 75.0, 100.0, typeof(Log), 1044041, 60, 1044351);
|
||||
AddSkill(index, SkillName.Tailoring, 65.0, 85.0);
|
||||
AddRes(index, typeof(Cloth), 1044286, 40, 1044287);
|
||||
ForceNonExceptional(index);
|
||||
SetNeededExpansion(index, Expansion.ML);
|
||||
index = AddCraft(typeof(ElvenStoveSouthDeed), 1044298, 1073394, 85.0, 110.0, typeof(Log), 1044041, 80, 1044351);
|
||||
ForceNonExceptional(index);
|
||||
SetNeededExpansion(index, Expansion.ML);
|
||||
index = AddCraft(typeof(ElvenStoveEastDeed), 1044298, 1073395, 85.0, 110.0, typeof(Log), 1044041, 80, 1044351);
|
||||
ForceNonExceptional(index);
|
||||
SetNeededExpansion(index, Expansion.ML);
|
||||
}
|
||||
|
||||
index = AddCraft(typeof(SpinningWheelEastDeed), 1044298, 1044341, 73.6, 98.6, typeof(Log), 1044041, 75, 1044351);
|
||||
AddSkill(index, SkillName.Tailoring, 65.0, 70.0);
|
||||
AddRes(index, typeof(Cloth), 1044286, 25, 1044287);
|
||||
index = AddCraft(
|
||||
typeof(SpinningwheelSouthDeed),
|
||||
1044298,
|
||||
1044342,
|
||||
73.6,
|
||||
98.6,
|
||||
typeof(Log),
|
||||
1044041,
|
||||
75,
|
||||
1044351
|
||||
);
|
||||
index = AddCraft(typeof(SpinningWheelSouthDeed), 1044298, 1044342, 73.6, 98.6, typeof(Log), 1044041, 75, 1044351);
|
||||
AddSkill(index, SkillName.Tailoring, 65.0, 70.0);
|
||||
AddRes(index, typeof(Cloth), 1044286, 25, 1044287);
|
||||
index = AddCraft(typeof(LoomEastDeed), 1044298, 1044343, 84.2, 109.2, typeof(Log), 1044041, 85, 1044351);
|
||||
|
|
@ -777,82 +573,20 @@ namespace Server.Engines.Craft
|
|||
index = AddCraft(typeof(LoomSouthDeed), 1044298, 1044344, 84.2, 109.2, typeof(Log), 1044041, 85, 1044351);
|
||||
AddSkill(index, SkillName.Tailoring, 65.0, 70.0);
|
||||
AddRes(index, typeof(Cloth), 1044286, 25, 1044287);
|
||||
|
||||
// Cooking
|
||||
index = AddCraft(
|
||||
typeof(StoneOvenEastDeed),
|
||||
Core.ML ? 1044298 : 1044299,
|
||||
1044345,
|
||||
68.4,
|
||||
93.4,
|
||||
typeof(Log),
|
||||
1044041,
|
||||
85,
|
||||
1044351
|
||||
);
|
||||
index = AddCraft(typeof(StoneOvenEastDeed), Core.ML ? 1044298 : 1044299, 1044345, 68.4, 93.4, typeof(Log), 1044041, 85, 1044351);
|
||||
AddSkill(index, SkillName.Tinkering, 50.0, 55.0);
|
||||
AddRes(index, typeof(IronIngot), 1044036, 125, 1044037);
|
||||
index = AddCraft(
|
||||
typeof(StoneOvenSouthDeed),
|
||||
Core.ML ? 1044298 : 1044299,
|
||||
1044346,
|
||||
68.4,
|
||||
93.4,
|
||||
typeof(Log),
|
||||
1044041,
|
||||
85,
|
||||
1044351
|
||||
);
|
||||
index = AddCraft(typeof(StoneOvenSouthDeed), Core.ML ? 1044298 : 1044299, 1044346, 68.4, 93.4, typeof(Log), 1044041, 85, 1044351);
|
||||
AddSkill(index, SkillName.Tinkering, 50.0, 55.0);
|
||||
AddRes(index, typeof(IronIngot), 1044036, 125, 1044037);
|
||||
index = AddCraft(
|
||||
typeof(FlourMillEastDeed),
|
||||
Core.ML ? 1044298 : 1044299,
|
||||
1044347,
|
||||
94.7,
|
||||
119.7,
|
||||
typeof(Log),
|
||||
1044041,
|
||||
100,
|
||||
1044351
|
||||
);
|
||||
index = AddCraft(typeof(FlourMillEastDeed), Core.ML ? 1044298 : 1044299, 1044347, 94.7, 119.7, typeof(Log), 1044041, 100, 1044351);
|
||||
AddSkill(index, SkillName.Tinkering, 50.0, 55.0);
|
||||
AddRes(index, typeof(IronIngot), 1044036, 50, 1044037);
|
||||
index = AddCraft(
|
||||
typeof(FlourMillSouthDeed),
|
||||
Core.ML ? 1044298 : 1044299,
|
||||
1044348,
|
||||
94.7,
|
||||
119.7,
|
||||
typeof(Log),
|
||||
1044041,
|
||||
100,
|
||||
1044351
|
||||
);
|
||||
index = AddCraft(typeof(FlourMillSouthDeed), Core.ML ? 1044298 : 1044299, 1044348, 94.7, 119.7, typeof(Log), 1044041, 100, 1044351);
|
||||
AddSkill(index, SkillName.Tinkering, 50.0, 55.0);
|
||||
AddRes(index, typeof(IronIngot), 1044036, 50, 1044037);
|
||||
AddCraft(
|
||||
typeof(WaterTroughEastDeed),
|
||||
Core.ML ? 1044298 : 1044299,
|
||||
1044349,
|
||||
94.7,
|
||||
119.7,
|
||||
typeof(Log),
|
||||
1044041,
|
||||
150,
|
||||
1044351
|
||||
);
|
||||
AddCraft(
|
||||
typeof(WaterTroughSouthDeed),
|
||||
Core.ML ? 1044298 : 1044299,
|
||||
1044350,
|
||||
94.7,
|
||||
119.7,
|
||||
typeof(Log),
|
||||
1044041,
|
||||
150,
|
||||
1044351
|
||||
);
|
||||
AddCraft(typeof(WaterTroughEastDeed), Core.ML ? 1044298 : 1044299, 1044349, 94.7, 119.7, typeof(Log), 1044041, 150, 1044351);
|
||||
AddCraft(typeof(WaterTroughSouthDeed), Core.ML ? 1044298 : 1044299, 1044350, 94.7, 119.7, typeof(Log), 1044041, 150, 1044351);
|
||||
|
||||
MarkOption = true;
|
||||
Repair = Core.AOS;
|
||||
|
|
|
|||
|
|
@ -783,7 +783,8 @@ namespace Server.Items
|
|||
}
|
||||
}
|
||||
|
||||
[Furniture, Flippable(0x2811, 0x2812)]
|
||||
[Furniture]
|
||||
[Flippable(0x2811, 0x2812)]
|
||||
public class ChestOfHeirlooms : LockableContainer
|
||||
{
|
||||
[Constructible]
|
||||
|
|
|
|||
|
|
@ -1,27 +1,30 @@
|
|||
namespace Server.Items
|
||||
{
|
||||
[Serializable(0)]
|
||||
public partial class ArcaneBookshelfSouthAddon : BaseAddon
|
||||
public partial class ArcaneBookshelfSouthAddon : BaseAddonContainer
|
||||
{
|
||||
[Constructible]
|
||||
public ArcaneBookshelfSouthAddon()
|
||||
public ArcaneBookshelfSouthAddon() : base(0x2DEF)
|
||||
{
|
||||
AddComponent(new AddonComponent(0x3087), 0, 0, 0);
|
||||
AddComponent(new AddonComponent(0x3086), 0, 1, 0);
|
||||
AddComponent(new LocalizedContainerComponent(0x21A4, 1031760), -1, 0, 0);
|
||||
}
|
||||
|
||||
public override BaseAddonDeed Deed => new ArcaneBookshelfSouthDeed();
|
||||
public override BaseAddonContainerDeed Deed => new ArcaneBookshelfSouthDeed();
|
||||
public override bool RetainDeedHue => true;
|
||||
public override int DefaultGumpID => 0x107;
|
||||
public override int DefaultDropSound => 0x42;
|
||||
public override int LabelNumber => 1032420; // arcane bookshelf
|
||||
}
|
||||
|
||||
[Serializable(0)]
|
||||
public partial class ArcaneBookshelfSouthDeed : BaseAddonDeed
|
||||
public partial class ArcaneBookshelfSouthDeed : BaseAddonContainerDeed
|
||||
{
|
||||
[Constructible]
|
||||
public ArcaneBookshelfSouthDeed()
|
||||
{
|
||||
}
|
||||
|
||||
public override BaseAddon Addon => new ArcaneBookshelfSouthAddon();
|
||||
public override BaseAddonContainer Addon => new ArcaneBookshelfSouthAddon();
|
||||
public override int LabelNumber => 1072871; // arcane bookshelf (south)
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -1,27 +1,29 @@
|
|||
namespace Server.Items
|
||||
{
|
||||
[Serializable(0)]
|
||||
public partial class ElvenDresserEastAddon : BaseAddon
|
||||
public partial class ElvenDresserEastAddon : BaseAddonContainer
|
||||
{
|
||||
[Constructible]
|
||||
public ElvenDresserEastAddon()
|
||||
public ElvenDresserEastAddon() : base(0x30E4)
|
||||
{
|
||||
AddComponent(new AddonComponent(0x30E4), 0, 0, 0);
|
||||
AddComponent(new AddonComponent(0x30E3), 0, -1, 0);
|
||||
AddComponent(new AddonContainerComponent(0x30E3), 0, -1, 0);
|
||||
}
|
||||
|
||||
public override BaseAddonDeed Deed => new ElvenDresserEastDeed();
|
||||
public override BaseAddonContainerDeed Deed => new ElvenDresserEastDeed();
|
||||
public override bool RetainDeedHue => true;
|
||||
public override int DefaultGumpID => 0x51;
|
||||
public override int DefaultDropSound => 0x42;
|
||||
}
|
||||
|
||||
[Serializable(0)]
|
||||
public partial class ElvenDresserEastDeed : BaseAddonDeed
|
||||
public partial class ElvenDresserEastDeed : BaseAddonContainerDeed
|
||||
{
|
||||
[Constructible]
|
||||
public ElvenDresserEastDeed()
|
||||
{
|
||||
}
|
||||
|
||||
public override BaseAddon Addon => new ElvenDresserEastAddon();
|
||||
public override BaseAddonContainer Addon => new ElvenDresserEastAddon();
|
||||
public override int LabelNumber => 1073388; // elven dresser (east)
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -1,27 +1,29 @@
|
|||
namespace Server.Items
|
||||
{
|
||||
[Serializable(0)]
|
||||
public partial class ElvenDresserSouthAddon : BaseAddon
|
||||
public partial class ElvenDresserSouthAddon : BaseAddonContainer
|
||||
{
|
||||
[Constructible]
|
||||
public ElvenDresserSouthAddon()
|
||||
public ElvenDresserSouthAddon() : base(0x30E6)
|
||||
{
|
||||
AddComponent(new AddonComponent(0x30E5), 0, 0, 0);
|
||||
AddComponent(new AddonComponent(0x30E6), 1, 0, 0);
|
||||
AddComponent(new AddonContainerComponent(0x30E5), -1, 0, 0);
|
||||
}
|
||||
|
||||
public override BaseAddonDeed Deed => new ElvenDresserSouthDeed();
|
||||
public override BaseAddonContainerDeed Deed => new ElvenDresserSouthDeed();
|
||||
public override bool RetainDeedHue => true;
|
||||
public override int DefaultGumpID => 0x51;
|
||||
public override int DefaultDropSound => 0x42;
|
||||
}
|
||||
|
||||
[Serializable(0)]
|
||||
public partial class ElvenDresserSouthDeed : BaseAddonDeed
|
||||
public partial class ElvenDresserSouthDeed : BaseAddonContainerDeed
|
||||
{
|
||||
[Constructible]
|
||||
public ElvenDresserSouthDeed()
|
||||
{
|
||||
}
|
||||
|
||||
public override BaseAddon Addon => new ElvenDresserSouthAddon();
|
||||
public override BaseAddonContainer Addon => new ElvenDresserSouthAddon();
|
||||
public override int LabelNumber => 1072864; // elven dresser (south)
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -9,6 +9,7 @@ namespace Server.Items
|
|||
AddComponent(new AddonComponent(0x2DD8), 0, 0, 0);
|
||||
}
|
||||
|
||||
public override int LabelNumber => 1072875; // elven forge
|
||||
public override BaseAddonDeed Deed => new ElvenForgeDeed();
|
||||
}
|
||||
|
||||
|
|
@ -21,6 +22,6 @@ namespace Server.Items
|
|||
}
|
||||
|
||||
public override BaseAddon Addon => new ElvenForgeAddon();
|
||||
public override int LabelNumber => 1072875; // squirrel statue (east)
|
||||
public override int LabelNumber => 1072875; // elven forge
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -6,8 +6,8 @@ namespace Server.Items
|
|||
[Constructible]
|
||||
public ElvenLoveseatEastAddon()
|
||||
{
|
||||
AddComponent(new AddonComponent(0x3089), 0, 0, 0);
|
||||
AddComponent(new AddonComponent(0x3088), 1, 0, 0);
|
||||
AddComponent(new AddonComponent(0x308A), 0, 0, 0);
|
||||
AddComponent(new AddonComponent(0x308B), 0, -1, 0);
|
||||
}
|
||||
|
||||
public override BaseAddonDeed Deed => new ElvenLoveseatEastDeed();
|
||||
|
|
|
|||
|
|
@ -6,8 +6,8 @@ namespace Server.Items
|
|||
[Constructible]
|
||||
public ElvenLoveseatSouthAddon()
|
||||
{
|
||||
AddComponent(new AddonComponent(0x308A), 0, 0, 0);
|
||||
AddComponent(new AddonComponent(0x308B), 0, -1, 0);
|
||||
AddComponent(new AddonComponent(0x3088), 0, 0, 0);
|
||||
AddComponent(new AddonComponent(0x3089), -1, 0, 0);
|
||||
}
|
||||
|
||||
public override BaseAddonDeed Deed => new ElvenLoveseatSouthDeed();
|
||||
|
|
|
|||
|
|
@ -2,18 +2,28 @@ using System;
|
|||
|
||||
namespace Server.Items
|
||||
{
|
||||
public delegate void SpinCallback(ISpinningWheel sender, Mobile from, int hue);
|
||||
|
||||
public interface ISpinningWheel
|
||||
{
|
||||
bool Spinning { get; }
|
||||
void BeginSpin(SpinCallback callback, Mobile from, int hue);
|
||||
}
|
||||
|
||||
[Serializable(0)]
|
||||
public partial class ElvenSpinningwheelEastAddon : BaseAddon, ISpinningWheel
|
||||
[TypeAlias("Server.Items.ElvenSpinningwheelEastAddon")]
|
||||
public partial class ElvenSpinningWheelEastAddon : BaseAddon, ISpinningWheel
|
||||
{
|
||||
private Timer m_Timer;
|
||||
|
||||
[Constructible]
|
||||
public ElvenSpinningwheelEastAddon()
|
||||
public ElvenSpinningWheelEastAddon()
|
||||
{
|
||||
AddComponent(new AddonComponent(0x2DD9), 0, 0, 0);
|
||||
AddComponent(new AddonComponent(0x2E3D), 0, 0, 0);
|
||||
}
|
||||
|
||||
public override BaseAddonDeed Deed => new ElvenSpinningwheelEastDeed();
|
||||
public override int LabelNumber => 1031737; // elven spinning wheel
|
||||
public override BaseAddonDeed Deed => new ElvenSpinningWheelEastDeed();
|
||||
|
||||
public bool Spinning => m_Timer != null;
|
||||
|
||||
|
|
@ -26,10 +36,9 @@ namespace Server.Items
|
|||
{
|
||||
switch (c.ItemID)
|
||||
{
|
||||
case 0x2DD9:
|
||||
case 0x101C:
|
||||
case 0x10A4:
|
||||
++c.ItemID;
|
||||
case 0x2E3D:
|
||||
case 0x2E3F:
|
||||
--c.ItemID;
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
|
@ -39,10 +48,9 @@ namespace Server.Items
|
|||
{
|
||||
switch (c.ItemID)
|
||||
{
|
||||
case 0x2E3D:
|
||||
case 0x101D:
|
||||
case 0x10A5:
|
||||
--c.ItemID;
|
||||
case 0x2E3C:
|
||||
case 0x2E3E:
|
||||
++c.ItemID;
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
|
@ -57,11 +65,9 @@ namespace Server.Items
|
|||
{
|
||||
switch (c.ItemID)
|
||||
{
|
||||
case 0x1016:
|
||||
case 0x101A:
|
||||
case 0x101D:
|
||||
case 0x10A5:
|
||||
--c.ItemID;
|
||||
case 0x2E3C:
|
||||
case 0x2E3E:
|
||||
++c.ItemID;
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
|
@ -74,9 +80,9 @@ namespace Server.Items
|
|||
private readonly SpinCallback m_Callback;
|
||||
private readonly Mobile m_From;
|
||||
private readonly int m_Hue;
|
||||
private readonly ElvenSpinningwheelEastAddon m_Wheel;
|
||||
private readonly ElvenSpinningWheelEastAddon m_Wheel;
|
||||
|
||||
public SpinTimer(ElvenSpinningwheelEastAddon wheel, SpinCallback callback, Mobile from, int hue) : base(
|
||||
public SpinTimer(ElvenSpinningWheelEastAddon wheel, SpinCallback callback, Mobile from, int hue) : base(
|
||||
TimeSpan.FromSeconds(3.0)
|
||||
)
|
||||
{
|
||||
|
|
@ -94,14 +100,16 @@ namespace Server.Items
|
|||
}
|
||||
|
||||
[Serializable(0)]
|
||||
public partial class ElvenSpinningwheelEastDeed : BaseAddonDeed
|
||||
[TypeAlias("Server.Items.ElvenSpinningwheelEastDeed")]
|
||||
public partial class ElvenSpinningWheelEastDeed : BaseAddonDeed
|
||||
{
|
||||
[Constructible]
|
||||
public ElvenSpinningwheelEastDeed()
|
||||
public ElvenSpinningWheelEastDeed()
|
||||
{
|
||||
}
|
||||
|
||||
public override BaseAddon Addon => new ElvenSpinningwheelEastAddon();
|
||||
public override BaseAddon Addon => new ElvenSpinningWheelEastAddon();
|
||||
public override int LabelNumber => 1073393; // elven spinning wheel (east)
|
||||
}
|
||||
}
|
||||
|
||||
|
|
@ -3,17 +3,19 @@ using System;
|
|||
namespace Server.Items
|
||||
{
|
||||
[Serializable(0)]
|
||||
public partial class ElvenSpinningwheelSouthAddon : BaseAddon, ISpinningWheel
|
||||
[TypeAlias("Server.Items.ElvenSpinningwheelSouthAddon")]
|
||||
public partial class ElvenSpinningWheelSouthAddon : BaseAddon, ISpinningWheel
|
||||
{
|
||||
private Timer m_Timer;
|
||||
|
||||
[Constructible]
|
||||
public ElvenSpinningwheelSouthAddon()
|
||||
public ElvenSpinningWheelSouthAddon()
|
||||
{
|
||||
AddComponent(new AddonComponent(0x2DDA), 0, 0, 0);
|
||||
AddComponent(new AddonComponent(0x2E3F), 0, 0, 0);
|
||||
}
|
||||
|
||||
public override BaseAddonDeed Deed => new ElvenSpinningwheelSouthDeed();
|
||||
public override int LabelNumber => 1031737; // elven spinning wheel
|
||||
public override BaseAddonDeed Deed => new ElvenSpinningWheelSouthDeed();
|
||||
|
||||
public bool Spinning => m_Timer != null;
|
||||
|
||||
|
|
@ -26,11 +28,9 @@ namespace Server.Items
|
|||
{
|
||||
switch (c.ItemID)
|
||||
{
|
||||
case 0x1015:
|
||||
case 0x1019:
|
||||
case 0x101C:
|
||||
case 0x10A4:
|
||||
++c.ItemID;
|
||||
case 0x2E3D:
|
||||
case 0x2E3F:
|
||||
--c.ItemID;
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
|
@ -40,11 +40,9 @@ namespace Server.Items
|
|||
{
|
||||
switch (c.ItemID)
|
||||
{
|
||||
case 0x1016:
|
||||
case 0x101A:
|
||||
case 0x101D:
|
||||
case 0x10A5:
|
||||
--c.ItemID;
|
||||
case 0x2E3C:
|
||||
case 0x2E3E:
|
||||
++c.ItemID;
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
|
@ -52,18 +50,15 @@ namespace Server.Items
|
|||
public void EndSpin(SpinCallback callback, Mobile from, int hue)
|
||||
{
|
||||
m_Timer?.Stop();
|
||||
|
||||
m_Timer = null;
|
||||
|
||||
foreach (var c in Components)
|
||||
{
|
||||
switch (c.ItemID)
|
||||
{
|
||||
case 0x1016:
|
||||
case 0x101A:
|
||||
case 0x101D:
|
||||
case 0x10A5:
|
||||
--c.ItemID;
|
||||
case 0x2E3C:
|
||||
case 0x2E3E:
|
||||
++c.ItemID;
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
|
@ -76,9 +71,9 @@ namespace Server.Items
|
|||
private readonly SpinCallback m_Callback;
|
||||
private readonly Mobile m_From;
|
||||
private readonly int m_Hue;
|
||||
private readonly ElvenSpinningwheelSouthAddon m_Wheel;
|
||||
private readonly ElvenSpinningWheelSouthAddon m_Wheel;
|
||||
|
||||
public SpinTimer(ElvenSpinningwheelSouthAddon wheel, SpinCallback callback, Mobile from, int hue) : base(
|
||||
public SpinTimer(ElvenSpinningWheelSouthAddon wheel, SpinCallback callback, Mobile from, int hue) : base(
|
||||
TimeSpan.FromSeconds(3.0)
|
||||
)
|
||||
{
|
||||
|
|
@ -96,14 +91,15 @@ namespace Server.Items
|
|||
}
|
||||
|
||||
[Serializable(0)]
|
||||
public partial class ElvenSpinningwheelSouthDeed : BaseAddonDeed
|
||||
[TypeAlias("Server.Items.ElvenSpinningwheelSouthDeed")]
|
||||
public partial class ElvenSpinningWheelSouthDeed : BaseAddonDeed
|
||||
{
|
||||
[Constructible]
|
||||
public ElvenSpinningwheelSouthDeed()
|
||||
public ElvenSpinningWheelSouthDeed()
|
||||
{
|
||||
}
|
||||
|
||||
public override BaseAddon Addon => new ElvenSpinningwheelSouthAddon();
|
||||
public override int LabelNumber => 1072878; // spinning wheel (south)
|
||||
public override BaseAddon Addon => new ElvenSpinningWheelSouthAddon();
|
||||
public override int LabelNumber => 1072878; // elven spinning wheel (south)
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -1,27 +1,29 @@
|
|||
namespace Server.Items
|
||||
{
|
||||
[Serializable(0)]
|
||||
public partial class ElvenWashBasinEastAddon : BaseAddon
|
||||
public partial class ElvenWashBasinEastAddon : BaseAddonContainer
|
||||
{
|
||||
[Constructible]
|
||||
public ElvenWashBasinEastAddon()
|
||||
public ElvenWashBasinEastAddon() : base(0x30E0)
|
||||
{
|
||||
AddComponent(new AddonComponent(0x30DF), 0, 0, 0);
|
||||
AddComponent(new AddonComponent(0x30E0), 0, 1, 0);
|
||||
AddComponent(new AddonContainerComponent(0x30DF), 0, -1, 0);
|
||||
}
|
||||
|
||||
public override BaseAddonDeed Deed => new ElvenWashBasinEastDeed();
|
||||
public override BaseAddonContainerDeed Deed => new ElvenWashBasinEastDeed();
|
||||
public override bool RetainDeedHue => true;
|
||||
public override int DefaultGumpID => 0x0104;
|
||||
public override int DefaultDropSound => 0x0042;
|
||||
}
|
||||
|
||||
[Serializable(0)]
|
||||
public partial class ElvenWashBasinEastDeed : BaseAddonDeed
|
||||
public partial class ElvenWashBasinEastDeed : BaseAddonContainerDeed
|
||||
{
|
||||
[Constructible]
|
||||
public ElvenWashBasinEastDeed()
|
||||
{
|
||||
}
|
||||
|
||||
public override BaseAddon Addon => new ElvenWashBasinEastAddon();
|
||||
public override BaseAddonContainer Addon => new ElvenWashBasinEastAddon();
|
||||
public override int LabelNumber => 1073387; // elven wash basin (east)
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -1,27 +1,29 @@
|
|||
namespace Server.Items
|
||||
{
|
||||
[Serializable(0)]
|
||||
public partial class ElvenWashBasinSouthAddon : BaseAddon
|
||||
public partial class ElvenWashBasinSouthAddon : BaseAddonContainer
|
||||
{
|
||||
[Constructible]
|
||||
public ElvenWashBasinSouthAddon()
|
||||
public ElvenWashBasinSouthAddon() : base(0x30E2)
|
||||
{
|
||||
AddComponent(new AddonComponent(0x30E1), 0, 0, 0);
|
||||
AddComponent(new AddonComponent(0x30E2), 1, 0, 0);
|
||||
AddComponent(new AddonContainerComponent(0x30E1), -1, 0, 0);
|
||||
}
|
||||
|
||||
public override BaseAddonDeed Deed => new ElvenWashBasinSouthDeed();
|
||||
public override BaseAddonContainerDeed Deed => new ElvenWashBasinSouthDeed();
|
||||
public override bool RetainDeedHue => true;
|
||||
public override int DefaultGumpID => 0x0104;
|
||||
public override int DefaultDropSound => 0x0042;
|
||||
}
|
||||
|
||||
[Serializable(0)]
|
||||
public partial class ElvenWashBasinSouthDeed : BaseAddonDeed
|
||||
public partial class ElvenWashBasinSouthDeed : BaseAddonContainerDeed
|
||||
{
|
||||
[Constructible]
|
||||
public ElvenWashBasinSouthDeed()
|
||||
{
|
||||
}
|
||||
|
||||
public override BaseAddon Addon => new ElvenWashBasinSouthAddon();
|
||||
public override BaseAddonContainer Addon => new ElvenWashBasinSouthAddon();
|
||||
public override int LabelNumber => 1072865; // elven wash basin (south)
|
||||
}
|
||||
}
|
||||
|
|
|
|||
29
Projects/UOContent/Items/Addons/OrnateElvenChestEastAddon.cs
Normal file
29
Projects/UOContent/Items/Addons/OrnateElvenChestEastAddon.cs
Normal file
|
|
@ -0,0 +1,29 @@
|
|||
namespace Server.Items
|
||||
{
|
||||
[Serializable(0)]
|
||||
public partial class OrnateElvenChestEastAddon : BaseAddonContainer
|
||||
{
|
||||
[Constructible]
|
||||
public OrnateElvenChestEastAddon() : base(0x309A)
|
||||
{
|
||||
AddComponent(new AddonContainerComponent(0x309B), 0, -1, 0);
|
||||
}
|
||||
|
||||
public override BaseAddonContainerDeed Deed => new OrnateElvenChestEastDeed();
|
||||
public override bool RetainDeedHue => true;
|
||||
public override int DefaultGumpID => 0x10C;
|
||||
public override int DefaultDropSound => 0x42;
|
||||
}
|
||||
|
||||
[Serializable(0)]
|
||||
public partial class OrnateElvenChestEastDeed : BaseAddonContainerDeed
|
||||
{
|
||||
[Constructible]
|
||||
public OrnateElvenChestEastDeed()
|
||||
{
|
||||
}
|
||||
|
||||
public override BaseAddonContainer Addon => new OrnateElvenChestEastAddon();
|
||||
public override int LabelNumber => 1073383; // ornate elven chest (east)
|
||||
}
|
||||
}
|
||||
|
|
@ -0,0 +1,29 @@
|
|||
namespace Server.Items
|
||||
{
|
||||
[Serializable(0)]
|
||||
public partial class OrnateElvenChestSouthAddon : BaseAddonContainer
|
||||
{
|
||||
[Constructible]
|
||||
public OrnateElvenChestSouthAddon() : base(0x3098)
|
||||
{
|
||||
AddComponent(new AddonContainerComponent(0x3099), -1, 0, 0);
|
||||
}
|
||||
|
||||
public override BaseAddonContainerDeed Deed => new OrnateElvenChestSouthDeed();
|
||||
public override bool RetainDeedHue => true;
|
||||
public override int DefaultGumpID => 0x10C;
|
||||
public override int DefaultDropSound => 0x42;
|
||||
}
|
||||
|
||||
[Serializable(0)]
|
||||
public partial class OrnateElvenChestSouthDeed : BaseAddonContainerDeed
|
||||
{
|
||||
[Constructible]
|
||||
public OrnateElvenChestSouthDeed()
|
||||
{
|
||||
}
|
||||
|
||||
public override BaseAddonContainer Addon => new OrnateElvenChestSouthAddon();
|
||||
public override int LabelNumber => 1072862; // ornate elven chest (south)
|
||||
}
|
||||
}
|
||||
|
|
@ -2,26 +2,20 @@ using System;
|
|||
|
||||
namespace Server.Items
|
||||
{
|
||||
public delegate void SpinCallback(ISpinningWheel sender, Mobile from, int hue);
|
||||
|
||||
public interface ISpinningWheel
|
||||
{
|
||||
bool Spinning { get; }
|
||||
void BeginSpin(SpinCallback callback, Mobile from, int hue);
|
||||
}
|
||||
|
||||
[Serializable(0, false)]
|
||||
public partial class SpinningwheelEastAddon : BaseAddon, ISpinningWheel
|
||||
[TypeAlias("Server.Items.SpinningwheelEastAddon")]
|
||||
public partial class SpinningWheelEastAddon : BaseAddon, ISpinningWheel
|
||||
{
|
||||
private Timer m_Timer;
|
||||
|
||||
[Constructible]
|
||||
public SpinningwheelEastAddon()
|
||||
public SpinningWheelEastAddon()
|
||||
{
|
||||
AddComponent(new AddonComponent(0x1019), 0, 0, 0);
|
||||
}
|
||||
|
||||
public override BaseAddonDeed Deed => new SpinningwheelEastDeed();
|
||||
public override int LabelNumber => 1024117; // spinning wheel
|
||||
public override BaseAddonDeed Deed => new SpinningWheelEastDeed();
|
||||
|
||||
public bool Spinning => m_Timer != null;
|
||||
|
||||
|
|
@ -84,9 +78,9 @@ namespace Server.Items
|
|||
private readonly SpinCallback m_Callback;
|
||||
private readonly Mobile m_From;
|
||||
private readonly int m_Hue;
|
||||
private readonly SpinningwheelEastAddon m_Wheel;
|
||||
private readonly SpinningWheelEastAddon m_Wheel;
|
||||
|
||||
public SpinTimer(SpinningwheelEastAddon wheel, SpinCallback callback, Mobile from, int hue) : base(
|
||||
public SpinTimer(SpinningWheelEastAddon wheel, SpinCallback callback, Mobile from, int hue) : base(
|
||||
TimeSpan.FromSeconds(3.0)
|
||||
)
|
||||
{
|
||||
|
|
@ -104,14 +98,15 @@ namespace Server.Items
|
|||
}
|
||||
|
||||
[Serializable(0, false)]
|
||||
public partial class SpinningwheelEastDeed : BaseAddonDeed
|
||||
[TypeAlias("Server.Items.SpinningwheelEastDeed")]
|
||||
public partial class SpinningWheelEastDeed : BaseAddonDeed
|
||||
{
|
||||
[Constructible]
|
||||
public SpinningwheelEastDeed()
|
||||
public SpinningWheelEastDeed()
|
||||
{
|
||||
}
|
||||
|
||||
public override BaseAddon Addon => new SpinningwheelEastAddon();
|
||||
public override int LabelNumber => 1044341; // spining wheel (east)
|
||||
public override BaseAddon Addon => new SpinningWheelEastAddon();
|
||||
public override int LabelNumber => 1044341; // spinning wheel (east)
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -3,17 +3,19 @@ using System;
|
|||
namespace Server.Items
|
||||
{
|
||||
[Serializable(0, false)]
|
||||
public partial class SpinningwheelSouthAddon : BaseAddon, ISpinningWheel
|
||||
[TypeAlias("Server.Items.SpinningwheelSouthAddon")]
|
||||
public partial class SpinningWheelSouthAddon : BaseAddon, ISpinningWheel
|
||||
{
|
||||
private Timer m_Timer;
|
||||
|
||||
[Constructible]
|
||||
public SpinningwheelSouthAddon()
|
||||
public SpinningWheelSouthAddon()
|
||||
{
|
||||
AddComponent(new AddonComponent(0x1015), 0, 0, 0);
|
||||
}
|
||||
|
||||
public override BaseAddonDeed Deed => new SpinningwheelSouthDeed();
|
||||
public override int LabelNumber => 1024117; // spinning wheel
|
||||
public override BaseAddonDeed Deed => new SpinningWheelSouthDeed();
|
||||
|
||||
public bool Spinning => m_Timer != null;
|
||||
|
||||
|
|
@ -76,9 +78,9 @@ namespace Server.Items
|
|||
private readonly SpinCallback m_Callback;
|
||||
private readonly Mobile m_From;
|
||||
private readonly int m_Hue;
|
||||
private readonly SpinningwheelSouthAddon m_Wheel;
|
||||
private readonly SpinningWheelSouthAddon m_Wheel;
|
||||
|
||||
public SpinTimer(SpinningwheelSouthAddon wheel, SpinCallback callback, Mobile from, int hue) : base(
|
||||
public SpinTimer(SpinningWheelSouthAddon wheel, SpinCallback callback, Mobile from, int hue) : base(
|
||||
TimeSpan.FromSeconds(3.0)
|
||||
)
|
||||
{
|
||||
|
|
@ -96,14 +98,15 @@ namespace Server.Items
|
|||
}
|
||||
|
||||
[Serializable(0, false)]
|
||||
public partial class SpinningwheelSouthDeed : BaseAddonDeed
|
||||
[TypeAlias("Server.Items.SpinningwheelSouthDeed")]
|
||||
public partial class SpinningWheelSouthDeed : BaseAddonDeed
|
||||
{
|
||||
[Constructible]
|
||||
public SpinningwheelSouthDeed()
|
||||
public SpinningWheelSouthDeed()
|
||||
{
|
||||
}
|
||||
|
||||
public override BaseAddon Addon => new SpinningwheelSouthAddon();
|
||||
public override int LabelNumber => 1044342; // spining wheel (south)
|
||||
public override BaseAddon Addon => new SpinningWheelSouthAddon();
|
||||
public override int LabelNumber => 1044342; // spinning wheel (south)
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -1,6 +1,7 @@
|
|||
namespace Server.Items
|
||||
{
|
||||
[Furniture, Flippable(0xB2D, 0xB2C)]
|
||||
[Furniture]
|
||||
[Flippable(0xB2D, 0xB2C)]
|
||||
public class WoodenBench : Item
|
||||
{
|
||||
[Constructible]
|
||||
|
|
|
|||
|
|
@ -1,6 +1,7 @@
|
|||
namespace Server.Items
|
||||
{
|
||||
[Furniture, Flippable(0xB4F, 0xB4E, 0xB50, 0xB51)]
|
||||
[Furniture]
|
||||
[Flippable(0xB4F, 0xB4E, 0xB50, 0xB51)]
|
||||
public class FancyWoodenChairCushion : Item
|
||||
{
|
||||
[Constructible]
|
||||
|
|
@ -30,7 +31,8 @@ namespace Server.Items
|
|||
}
|
||||
}
|
||||
|
||||
[Furniture, Flippable(0xB53, 0xB52, 0xB54, 0xB55)]
|
||||
[Furniture]
|
||||
[Flippable(0xB53, 0xB52, 0xB54, 0xB55)]
|
||||
public class WoodenChairCushion : Item
|
||||
{
|
||||
[Constructible]
|
||||
|
|
@ -60,7 +62,8 @@ namespace Server.Items
|
|||
}
|
||||
}
|
||||
|
||||
[Furniture, Flippable(0xB57, 0xB56, 0xB59, 0xB58)]
|
||||
[Furniture]
|
||||
[Flippable(0xB57, 0xB56, 0xB59, 0xB58)]
|
||||
public class WoodenChair : Item
|
||||
{
|
||||
[Constructible]
|
||||
|
|
@ -90,7 +93,8 @@ namespace Server.Items
|
|||
}
|
||||
}
|
||||
|
||||
[Furniture, Flippable(0xB5B, 0xB5A, 0xB5C, 0xB5D)]
|
||||
[Furniture]
|
||||
[Flippable(0xB5B, 0xB5A, 0xB5C, 0xB5D)]
|
||||
public class BambooChair : Item
|
||||
{
|
||||
[Constructible]
|
||||
|
|
|
|||
|
|
@ -1,6 +1,7 @@
|
|||
namespace Server.Items
|
||||
{
|
||||
[Furniture, Flippable(0xB32, 0xB33)]
|
||||
[Furniture]
|
||||
[Flippable(0xB32, 0xB33)]
|
||||
public class Throne : Item
|
||||
{
|
||||
[Constructible]
|
||||
|
|
@ -30,7 +31,8 @@ namespace Server.Items
|
|||
}
|
||||
}
|
||||
|
||||
[Furniture, Flippable(0xB2E, 0xB2F, 0xB31, 0xB30)]
|
||||
[Furniture]
|
||||
[Flippable(0xB2E, 0xB2F, 0xB31, 0xB30)]
|
||||
public class WoodenThrone : Item
|
||||
{
|
||||
[Constructible]
|
||||
|
|
|
|||
|
|
@ -0,0 +1,12 @@
|
|||
namespace Server.Items
|
||||
{
|
||||
[Furniture]
|
||||
[Serializable(0)]
|
||||
public partial class GiantReplicaAcorn : Item
|
||||
{
|
||||
[Constructible]
|
||||
public GiantReplicaAcorn() : base(0x2D4A) => Weight = 1.0;
|
||||
|
||||
public override int LabelNumber => 1072889; // giant replica acorn
|
||||
}
|
||||
}
|
||||
|
|
@ -0,0 +1,12 @@
|
|||
namespace Server.Items
|
||||
{
|
||||
[Flippable(0x3158, 0x3159)]
|
||||
[Serializable(0)]
|
||||
public partial class MountedDreadHorn : Item
|
||||
{
|
||||
[Constructible]
|
||||
public MountedDreadHorn() : base(0x3158) => Weight = 1.0;
|
||||
|
||||
public override int LabelNumber => 1074464; // mounted Dread Horn
|
||||
}
|
||||
}
|
||||
|
|
@ -1,6 +1,7 @@
|
|||
namespace Server.Items
|
||||
{
|
||||
[Furniture, Flippable(0xEBB, 0xEBC)]
|
||||
[Furniture]
|
||||
[Flippable(0xEBB, 0xEBC)]
|
||||
public class TallMusicStand : Item
|
||||
{
|
||||
[Constructible]
|
||||
|
|
@ -30,7 +31,8 @@ namespace Server.Items
|
|||
}
|
||||
}
|
||||
|
||||
[Furniture, Flippable(0xEB6, 0xEB8)]
|
||||
[Furniture]
|
||||
[Flippable(0xEB6, 0xEB8)]
|
||||
public class ShortMusicStand : Item
|
||||
{
|
||||
[Constructible]
|
||||
|
|
|
|||
|
|
@ -1,6 +1,7 @@
|
|||
namespace Server.Items
|
||||
{
|
||||
[Furniture, Flippable(0x24D0, 0x24D1, 0x24D2, 0x24D3, 0x24D4)]
|
||||
[Furniture]
|
||||
[Flippable(0x24D0, 0x24D1, 0x24D2, 0x24D3, 0x24D4)]
|
||||
public class BambooScreen : Item
|
||||
{
|
||||
[Constructible]
|
||||
|
|
@ -25,7 +26,8 @@ namespace Server.Items
|
|||
}
|
||||
}
|
||||
|
||||
[Furniture, Flippable(0x24CB, 0x24CC, 0x24CD, 0x24CE, 0x24CF)]
|
||||
[Furniture]
|
||||
[Flippable(0x24CB, 0x24CC, 0x24CD, 0x24CE, 0x24CF)]
|
||||
public class ShojiScreen : Item
|
||||
{
|
||||
[Constructible]
|
||||
|
|
|
|||
11
Projects/UOContent/Items/Construction/Tables/ElvenPodium.cs
Normal file
11
Projects/UOContent/Items/Construction/Tables/ElvenPodium.cs
Normal file
|
|
@ -0,0 +1,11 @@
|
|||
namespace Server.Items
|
||||
{
|
||||
[Furniture]
|
||||
[Serializable(0)]
|
||||
[Flippable(0x2DDD, 0x2DDE)]
|
||||
public partial class ElvenPodium : Item
|
||||
{
|
||||
[Constructible]
|
||||
public ElvenPodium() : base(0x2DDD) => Weight = 2.0;
|
||||
}
|
||||
}
|
||||
|
|
@ -50,7 +50,8 @@ namespace Server.Items
|
|||
}
|
||||
}
|
||||
|
||||
[Furniture, Flippable(0xB90, 0xB7D)]
|
||||
[Furniture]
|
||||
[Flippable(0xB90, 0xB7D)]
|
||||
public class LargeTable : Item
|
||||
{
|
||||
[Constructible]
|
||||
|
|
@ -80,7 +81,8 @@ namespace Server.Items
|
|||
}
|
||||
}
|
||||
|
||||
[Furniture, Flippable(0xB35, 0xB34)]
|
||||
[Furniture]
|
||||
[Flippable(0xB35, 0xB34)]
|
||||
public class Nightstand : Item
|
||||
{
|
||||
[Constructible]
|
||||
|
|
@ -110,7 +112,8 @@ namespace Server.Items
|
|||
}
|
||||
}
|
||||
|
||||
[Furniture, Flippable(0xB8F, 0xB7C)]
|
||||
[Furniture]
|
||||
[Flippable(0xB8F, 0xB7C)]
|
||||
public class YewWoodTable : Item
|
||||
{
|
||||
[Constructible]
|
||||
|
|
|
|||
|
|
@ -1,6 +1,7 @@
|
|||
namespace Server.Items
|
||||
{
|
||||
[Furniture, Flippable(0xB4A, 0xB49, 0xB4B, 0xB4C)]
|
||||
[Furniture]
|
||||
[Flippable(0xB4A, 0xB49, 0xB4B, 0xB4C)]
|
||||
public class WritingTable : Item
|
||||
{
|
||||
[Constructible]
|
||||
|
|
|
|||
|
|
@ -578,7 +578,8 @@ namespace Server.Items
|
|||
}
|
||||
}
|
||||
|
||||
[Furniture, Flippable(0x9AA, 0xE7D)]
|
||||
[Furniture]
|
||||
[Flippable(0x9AA, 0xE7D)]
|
||||
public class WoodenBox : LockableContainer
|
||||
{
|
||||
[Constructible]
|
||||
|
|
@ -603,7 +604,8 @@ namespace Server.Items
|
|||
}
|
||||
}
|
||||
|
||||
[Furniture, Flippable(0x9A9, 0xE7E)]
|
||||
[Furniture]
|
||||
[Flippable(0x9A9, 0xE7E)]
|
||||
public class SmallCrate : LockableContainer
|
||||
{
|
||||
[Constructible]
|
||||
|
|
@ -633,7 +635,8 @@ namespace Server.Items
|
|||
}
|
||||
}
|
||||
|
||||
[Furniture, Flippable(0xE3F, 0xE3E)]
|
||||
[Furniture]
|
||||
[Flippable(0xE3F, 0xE3E)]
|
||||
public class MediumCrate : LockableContainer
|
||||
{
|
||||
[Constructible]
|
||||
|
|
@ -663,7 +666,8 @@ namespace Server.Items
|
|||
}
|
||||
}
|
||||
|
||||
[Furniture, Flippable(0xE3D, 0xE3C)]
|
||||
[Furniture]
|
||||
[Flippable(0xE3D, 0xE3C)]
|
||||
public class LargeCrate : LockableContainer
|
||||
{
|
||||
[Constructible]
|
||||
|
|
@ -789,7 +793,8 @@ namespace Server.Items
|
|||
}
|
||||
}
|
||||
|
||||
[Furniture, Flippable(0xe43, 0xe42)]
|
||||
[Furniture]
|
||||
[Flippable(0xe43, 0xe42)]
|
||||
public class WoodenChest : LockableContainer
|
||||
{
|
||||
[Constructible]
|
||||
|
|
@ -819,7 +824,8 @@ namespace Server.Items
|
|||
}
|
||||
}
|
||||
|
||||
[Furniture, Flippable(0x280B, 0x280C)]
|
||||
[Furniture]
|
||||
[Flippable(0x280B, 0x280C)]
|
||||
public class PlainWoodenChest : LockableContainer
|
||||
{
|
||||
[Constructible]
|
||||
|
|
@ -851,7 +857,8 @@ namespace Server.Items
|
|||
}
|
||||
}
|
||||
|
||||
[Furniture, Flippable(0x280D, 0x280E)]
|
||||
[Furniture]
|
||||
[Flippable(0x280D, 0x280E)]
|
||||
public class OrnateWoodenChest : LockableContainer
|
||||
{
|
||||
[Constructible]
|
||||
|
|
@ -883,7 +890,8 @@ namespace Server.Items
|
|||
}
|
||||
}
|
||||
|
||||
[Furniture, Flippable(0x280F, 0x2810)]
|
||||
[Furniture]
|
||||
[Flippable(0x280F, 0x2810)]
|
||||
public class GildedWoodenChest : LockableContainer
|
||||
{
|
||||
[Constructible]
|
||||
|
|
@ -915,7 +923,8 @@ namespace Server.Items
|
|||
}
|
||||
}
|
||||
|
||||
[Furniture, Flippable(0x2811, 0x2812)]
|
||||
[Furniture]
|
||||
[Flippable(0x2811, 0x2812)]
|
||||
public class WoodenFootLocker : LockableContainer
|
||||
{
|
||||
[Constructible]
|
||||
|
|
@ -950,7 +959,8 @@ namespace Server.Items
|
|||
}
|
||||
}
|
||||
|
||||
[Furniture, Flippable(0x2813, 0x2814)]
|
||||
[Furniture]
|
||||
[Flippable(0x2813, 0x2814)]
|
||||
public class FinishedWoodenChest : LockableContainer
|
||||
{
|
||||
[Constructible]
|
||||
|
|
@ -981,4 +991,26 @@ namespace Server.Items
|
|||
}
|
||||
}
|
||||
}
|
||||
|
||||
[Furniture]
|
||||
[Serializable(0)]
|
||||
[Flippable(0x2DF1, 0x2DF2)]
|
||||
public partial class RarewoodChest : LockableContainer
|
||||
{
|
||||
[Constructible]
|
||||
public RarewoodChest() : base(0x2DF1)
|
||||
{
|
||||
}
|
||||
}
|
||||
|
||||
[Furniture]
|
||||
[Serializable(0)]
|
||||
[Flippable(0x2DF3, 0x2DF4)]
|
||||
public partial class DecorativeBox : LockableContainer
|
||||
{
|
||||
[Constructible]
|
||||
public DecorativeBox() : base(0x2DF4)
|
||||
{
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -3,7 +3,8 @@ using System.Collections.Generic;
|
|||
|
||||
namespace Server.Items
|
||||
{
|
||||
[Furniture, Flippable(0x2815, 0x2816)]
|
||||
[Furniture]
|
||||
[Flippable(0x2815, 0x2816)]
|
||||
public class TallCabinet : BaseContainer
|
||||
{
|
||||
[Constructible]
|
||||
|
|
@ -26,7 +27,8 @@ namespace Server.Items
|
|||
}
|
||||
}
|
||||
|
||||
[Furniture, Flippable(0x2817, 0x2818)]
|
||||
[Furniture]
|
||||
[Flippable(0x2817, 0x2818)]
|
||||
public class ShortCabinet : BaseContainer
|
||||
{
|
||||
[Constructible]
|
||||
|
|
@ -49,7 +51,8 @@ namespace Server.Items
|
|||
}
|
||||
}
|
||||
|
||||
[Furniture, Flippable(0x2857, 0x2858)]
|
||||
[Furniture]
|
||||
[Flippable(0x2857, 0x2858)]
|
||||
public class RedArmoire : BaseContainer
|
||||
{
|
||||
[Constructible]
|
||||
|
|
@ -72,7 +75,8 @@ namespace Server.Items
|
|||
}
|
||||
}
|
||||
|
||||
[Furniture, Flippable(0x285D, 0x285E)]
|
||||
[Furniture]
|
||||
[Flippable(0x285D, 0x285E)]
|
||||
public class CherryArmoire : BaseContainer
|
||||
{
|
||||
[Constructible]
|
||||
|
|
@ -95,7 +99,8 @@ namespace Server.Items
|
|||
}
|
||||
}
|
||||
|
||||
[Furniture, Flippable(0x285B, 0x285C)]
|
||||
[Furniture]
|
||||
[Flippable(0x285B, 0x285C)]
|
||||
public class MapleArmoire : BaseContainer
|
||||
{
|
||||
[Constructible]
|
||||
|
|
@ -118,7 +123,8 @@ namespace Server.Items
|
|||
}
|
||||
}
|
||||
|
||||
[Furniture, Flippable(0x2859, 0x285A)]
|
||||
[Furniture]
|
||||
[Flippable(0x2859, 0x285A)]
|
||||
public class ElegantArmoire : BaseContainer
|
||||
{
|
||||
[Constructible]
|
||||
|
|
@ -141,7 +147,30 @@ namespace Server.Items
|
|||
}
|
||||
}
|
||||
|
||||
[Furniture, Flippable(0xa97, 0xa99, 0xa98, 0xa9a, 0xa9b, 0xa9c)]
|
||||
[Furniture]
|
||||
[Serializable(0)]
|
||||
[Flippable(0x2D07, 0x2D08)]
|
||||
public partial class FancyElvenArmoire : BaseContainer
|
||||
{
|
||||
[Constructible]
|
||||
public FancyElvenArmoire() : base(0x2D07) => Weight = 1.0;
|
||||
public override int DefaultGumpID => 0x4E;
|
||||
public override int DefaultDropSound => 0x42;
|
||||
}
|
||||
|
||||
[Furniture]
|
||||
[Serializable(0)]
|
||||
[Flippable(0x2D05, 0x2D06)]
|
||||
public partial class SimpleElvenArmoire : BaseContainer
|
||||
{
|
||||
[Constructible]
|
||||
public SimpleElvenArmoire() : base(0x2D05) => Weight = 1.0;
|
||||
public override int DefaultGumpID => 0x4F;
|
||||
public override int DefaultDropSound => 0x42;
|
||||
}
|
||||
|
||||
[Furniture]
|
||||
[Flippable(0xa97, 0xa99, 0xa98, 0xa9a, 0xa9b, 0xa9c)]
|
||||
public class FullBookcase : BaseContainer
|
||||
{
|
||||
[Constructible]
|
||||
|
|
@ -164,7 +193,8 @@ namespace Server.Items
|
|||
}
|
||||
}
|
||||
|
||||
[Furniture, Flippable(0xa9d, 0xa9e)]
|
||||
[Furniture]
|
||||
[Flippable(0xa9d, 0xa9e)]
|
||||
public class EmptyBookcase : BaseContainer
|
||||
{
|
||||
[Constructible]
|
||||
|
|
@ -195,7 +225,8 @@ namespace Server.Items
|
|||
}
|
||||
}
|
||||
|
||||
[Furniture, Flippable(0xa2c, 0xa34)]
|
||||
[Furniture]
|
||||
[Flippable(0xa2c, 0xa34)]
|
||||
public class Drawer : BaseContainer
|
||||
{
|
||||
[Constructible]
|
||||
|
|
@ -218,7 +249,8 @@ namespace Server.Items
|
|||
}
|
||||
}
|
||||
|
||||
[Furniture, Flippable(0xa30, 0xa38)]
|
||||
[Furniture]
|
||||
[Flippable(0xa30, 0xa38)]
|
||||
public class FancyDrawer : BaseContainer
|
||||
{
|
||||
[Constructible]
|
||||
|
|
@ -241,7 +273,8 @@ namespace Server.Items
|
|||
}
|
||||
}
|
||||
|
||||
[Furniture, Flippable(0xa4f, 0xa53)]
|
||||
[Furniture]
|
||||
[Flippable(0xa4f, 0xa53)]
|
||||
public class Armoire : BaseContainer
|
||||
{
|
||||
[Constructible]
|
||||
|
|
@ -274,7 +307,8 @@ namespace Server.Items
|
|||
}
|
||||
}
|
||||
|
||||
[Furniture, Flippable(0xa4d, 0xa51)]
|
||||
[Furniture]
|
||||
[Flippable(0xa4d, 0xa51)]
|
||||
public class FancyArmoire : BaseContainer
|
||||
{
|
||||
[Constructible]
|
||||
|
|
|
|||
|
|
@ -0,0 +1,12 @@
|
|||
namespace Server.Items
|
||||
{
|
||||
[Serializable(0)]
|
||||
public partial class AcademicBooksArtifact : BaseDecorationArtifact
|
||||
{
|
||||
public override int ArtifactRarity => 8;
|
||||
public override int LabelNumber => 1071202; // academic books
|
||||
|
||||
[Constructible]
|
||||
public AcademicBooksArtifact() : base(0x1E25) => Hue = 2413;
|
||||
}
|
||||
}
|
||||
|
|
@ -25,7 +25,7 @@ namespace Server.Items
|
|||
{
|
||||
get
|
||||
{
|
||||
if (_resource >= CraftResource.DullCopper && _resource <= CraftResource.Valorite)
|
||||
if (_resource is >= CraftResource.DullCopper and <= CraftResource.Valorite)
|
||||
{
|
||||
return 1042845 + (_resource - CraftResource.DullCopper);
|
||||
}
|
||||
|
|
@ -161,7 +161,7 @@ namespace Server.Items
|
|||
_ => 0
|
||||
};
|
||||
|
||||
return itemID == 4017 || itemID >= 6522 && itemID <= 6569;
|
||||
return itemID is 4017 or >= 6522 and <= 6569 or 11736;
|
||||
}
|
||||
|
||||
protected override void OnTarget(Mobile from, object targeted)
|
||||
|
|
|
|||
|
|
@ -1,6 +1,7 @@
|
|||
namespace Server.Items
|
||||
{
|
||||
[Furniture, Flippable(0x232A, 0x232B)]
|
||||
[Furniture]
|
||||
[Flippable(0x232A, 0x232B)]
|
||||
public class GiftBox : BaseContainer
|
||||
{
|
||||
[Constructible]
|
||||
|
|
|
|||
|
|
@ -1,6 +1,7 @@
|
|||
namespace Server.Items
|
||||
{
|
||||
[Furniture, Flippable(0x2bd9, 0x2bda)]
|
||||
[Furniture]
|
||||
[Flippable(0x2bd9, 0x2bda)]
|
||||
public class GreenStocking : BaseContainer
|
||||
{
|
||||
[Constructible]
|
||||
|
|
@ -28,7 +29,8 @@ namespace Server.Items
|
|||
}
|
||||
}
|
||||
|
||||
[Furniture, Flippable(0x2bdb, 0x2bdc)]
|
||||
[Furniture]
|
||||
[Flippable(0x2bdb, 0x2bdc)]
|
||||
public class RedStocking : BaseContainer
|
||||
{
|
||||
[Constructible]
|
||||
|
|
|
|||
|
|
@ -0,0 +1,29 @@
|
|||
namespace Server.Items
|
||||
{
|
||||
[Serializable(0)]
|
||||
public partial class FaerieFire : ElvenCompositeLongbow
|
||||
{
|
||||
[Constructible]
|
||||
public FaerieFire()
|
||||
{
|
||||
Hue = 0x489;
|
||||
WeaponAttributes.HitFireball = 25;
|
||||
Balanced = true;
|
||||
Attributes.BonusDex = 3;
|
||||
Attributes.WeaponSpeed = 20;
|
||||
Attributes.WeaponDamage = 60;
|
||||
}
|
||||
|
||||
public override int LabelNumber => 1072908; // Faerie Fire
|
||||
|
||||
public override void GetDamageTypes(
|
||||
Mobile wielder, out int phys, out int fire, out int cold, out int pois,
|
||||
out int nrgy, out int chaos, out int direct
|
||||
)
|
||||
{
|
||||
fire = 100;
|
||||
|
||||
phys = cold = pois = nrgy = chaos = direct = 0;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
@ -0,0 +1,27 @@
|
|||
namespace Server.Items
|
||||
{
|
||||
[Serializable(0)]
|
||||
public partial class MischiefMaker : MagicalShortbow
|
||||
{
|
||||
[Constructible]
|
||||
public MischiefMaker()
|
||||
{
|
||||
Hue = 0x8AB;
|
||||
Slayer = SlayerName.Silver;
|
||||
Balanced = true;
|
||||
Attributes.WeaponSpeed = 35;
|
||||
Attributes.WeaponDamage = 45;
|
||||
}
|
||||
|
||||
public override int LabelNumber => 1072910; // Mischief Maker
|
||||
|
||||
public override void GetDamageTypes(
|
||||
Mobile wielder, out int phys, out int fire, out int cold, out int pois,
|
||||
out int nrgy, out int chaos, out int direct
|
||||
)
|
||||
{
|
||||
phys = fire = pois = nrgy = chaos = direct = 0;
|
||||
cold = 100;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
@ -0,0 +1,4 @@
|
|||
{
|
||||
"version": 0,
|
||||
"type": "Server.Items.AcademicBooksArtifact"
|
||||
}
|
||||
|
|
@ -0,0 +1,4 @@
|
|||
{
|
||||
"version": 0,
|
||||
"type": "Server.Items.DecorativeBox"
|
||||
}
|
||||
|
|
@ -0,0 +1,4 @@
|
|||
{
|
||||
"version": 0,
|
||||
"type": "Server.Items.ElvenPodium"
|
||||
}
|
||||
|
|
@ -0,0 +1,4 @@
|
|||
{
|
||||
"version": 0,
|
||||
"type": "Server.Items.ElvenSpinningWheelEastAddon"
|
||||
}
|
||||
|
|
@ -0,0 +1,4 @@
|
|||
{
|
||||
"version": 0,
|
||||
"type": "Server.Items.ElvenSpinningWheelEastDeed"
|
||||
}
|
||||
|
|
@ -0,0 +1,4 @@
|
|||
{
|
||||
"version": 0,
|
||||
"type": "Server.Items.ElvenSpinningWheelSouthAddon"
|
||||
}
|
||||
|
|
@ -0,0 +1,4 @@
|
|||
{
|
||||
"version": 0,
|
||||
"type": "Server.Items.ElvenSpinningWheelSouthDeed"
|
||||
}
|
||||
|
|
@ -1,4 +0,0 @@
|
|||
{
|
||||
"version": 0,
|
||||
"type": "Server.Items.ElvenSpinningwheelEastAddon"
|
||||
}
|
||||
|
|
@ -1,4 +0,0 @@
|
|||
{
|
||||
"version": 0,
|
||||
"type": "Server.Items.ElvenSpinningwheelEastDeed"
|
||||
}
|
||||
|
|
@ -1,4 +0,0 @@
|
|||
{
|
||||
"version": 0,
|
||||
"type": "Server.Items.ElvenSpinningwheelSouthAddon"
|
||||
}
|
||||
|
|
@ -1,4 +0,0 @@
|
|||
{
|
||||
"version": 0,
|
||||
"type": "Server.Items.ElvenSpinningwheelSouthDeed"
|
||||
}
|
||||
|
|
@ -0,0 +1,4 @@
|
|||
{
|
||||
"version": 0,
|
||||
"type": "Server.Items.FaerieFire"
|
||||
}
|
||||
|
|
@ -0,0 +1,4 @@
|
|||
{
|
||||
"version": 0,
|
||||
"type": "Server.Items.FancyElvenArmoire"
|
||||
}
|
||||
|
|
@ -0,0 +1,4 @@
|
|||
{
|
||||
"version": 0,
|
||||
"type": "Server.Items.GiantReplicaAcorn"
|
||||
}
|
||||
|
|
@ -0,0 +1,4 @@
|
|||
{
|
||||
"version": 0,
|
||||
"type": "Server.Items.MischiefMaker"
|
||||
}
|
||||
|
|
@ -0,0 +1,4 @@
|
|||
{
|
||||
"version": 0,
|
||||
"type": "Server.Items.MountedDreadHorn"
|
||||
}
|
||||
|
|
@ -0,0 +1,4 @@
|
|||
{
|
||||
"version": 0,
|
||||
"type": "Server.Items.OrnateElvenChestEastAddon"
|
||||
}
|
||||
|
|
@ -0,0 +1,4 @@
|
|||
{
|
||||
"version": 0,
|
||||
"type": "Server.Items.OrnateElvenChestEastDeed"
|
||||
}
|
||||
|
|
@ -0,0 +1,4 @@
|
|||
{
|
||||
"version": 0,
|
||||
"type": "Server.Items.OrnateElvenChestSouthAddon"
|
||||
}
|
||||
|
|
@ -0,0 +1,4 @@
|
|||
{
|
||||
"version": 0,
|
||||
"type": "Server.Items.OrnateElvenChestSouthDeed"
|
||||
}
|
||||
|
|
@ -0,0 +1,4 @@
|
|||
{
|
||||
"version": 0,
|
||||
"type": "Server.Items.RarewoodChest"
|
||||
}
|
||||
|
|
@ -0,0 +1,4 @@
|
|||
{
|
||||
"version": 0,
|
||||
"type": "Server.Items.SimpleElvenArmoire"
|
||||
}
|
||||
|
|
@ -1,4 +1,4 @@
|
|||
{
|
||||
"version": 0,
|
||||
"type": "Server.Items.SpinningwheelEastAddon"
|
||||
"type": "Server.Items.SpinningWheelEastAddon"
|
||||
}
|
||||
|
|
@ -1,4 +1,4 @@
|
|||
{
|
||||
"version": 0,
|
||||
"type": "Server.Items.SpinningwheelEastDeed"
|
||||
"type": "Server.Items.SpinningWheelEastDeed"
|
||||
}
|
||||
|
|
@ -1,4 +1,4 @@
|
|||
{
|
||||
"version": 0,
|
||||
"type": "Server.Items.SpinningwheelSouthAddon"
|
||||
"type": "Server.Items.SpinningWheelSouthAddon"
|
||||
}
|
||||
|
|
@ -1,4 +1,4 @@
|
|||
{
|
||||
"version": 0,
|
||||
"type": "Server.Items.SpinningwheelSouthDeed"
|
||||
"type": "Server.Items.SpinningWheelSouthDeed"
|
||||
}
|
||||
Loading…
Add table
Add a link
Reference in a new issue