using CustomsFramework.Systems.ShrinkSystem;
This one does do bods yes, just not available from animal trainer yet.cant make out that last sentence...but its this one
public override void InitOutfit()
{
base.InitOutfit();
AddItem(Utility.RandomBool() ? new QuarterStaff() : (Item)new ShepherdsCrook());
}
#region FS Taming BOD System
private class TamingBulkOrderInfoEntry : ContextMenuEntry
{
private readonly Mobile m_From;
private readonly AnimalTrainer m_Vendor;
public TamingBulkOrderInfoEntry(Mobile from, AnimalTrainer vendor)
: base(6152)
{
this.m_From = from;
this.m_Vendor = vendor;
}
public override void OnClick()
{
if (this.m_Vendor.SupportsTamingBulkOrders(this.m_From))
{
TimeSpan ts = this.m_Vendor.GetNextBulkOrder(this.m_From);
int totalSeconds = (int)ts.TotalSeconds;
int totalHours = (totalSeconds + 3599) / 3600;
int totalMinutes = (totalSeconds + 59) / 60;
if (((Core.AOS) ? totalMinutes == 0 : totalHours == 0))
{
this.m_From.SendLocalizedMessage(1049038); // You can get an order now.
if (Core.AOS)
{
Item bulkOrder = this.m_Vendor.CreateBulkOrder(this.m_From, true);
if (bulkOrder is LargeMobileBOD)
this.m_From.SendGump(new LargeMobileBODAcceptGump(this.m_From, (LargeMobileBOD)bulkOrder));
else if (bulkOrder is SmallMobileBOD)
this.m_From.SendGump(new SmallMobileBODAcceptGump(this.m_From, (SmallMobileBOD)bulkOrder));
}
}
else
{
int oldSpeechHue = this.m_Vendor.SpeechHue;
this.m_Vendor.SpeechHue = 0x3B2;
if (Core.AOS)
this.m_Vendor.SayTo(this.m_From, 1072058, totalMinutes.ToString()); // An offer may be available in about ~1_minutes~ minutes.
else
this.m_Vendor.SayTo(this.m_From, 1049039, totalHours.ToString()); // An offer may be available in about ~1_hours~ hours.
this.m_Vendor.SpeechHue = oldSpeechHue;
}
}
}
}
public override Item CreateBulkOrder( Mobile from, bool fromContextMenu )
{
AnimalBODModule module = from.GetModule( typeof( AnimalBODModule ) ) as AnimalBODModule ?? new AnimalBODModule(from);
if ( from != null && module.NextTamingBulkOrder == TimeSpan.Zero && (fromContextMenu || 0.2 > Utility.RandomDouble()) )
{
double theirSkill = from.Skills[SkillName.AnimalTaming].Base;
if ( theirSkill >= 100.1 )
module.NextTamingBulkOrder = TimeSpan.FromMinutes( 360.0 );
else if ( theirSkill >= 70.1 )
module.NextTamingBulkOrder = TimeSpan.FromMinutes( 240.0 );
else if ( theirSkill >= 50.1 )
module.NextTamingBulkOrder = TimeSpan.FromMinutes( 120.0 );
else
module.NextTamingBulkOrder = TimeSpan.FromMinutes( 60.0 );
if ( theirSkill >= 100.1 && ((theirSkill - 40.0) / 300.0) > Utility.RandomDouble() )
return new LargeTamingBOD();
return SmallTamingBOD.CreateRandomFor( from );
}
return null;
}
public override bool IsValidBulkOrder( Item item )
{
return ( item is SmallTamingBOD || item is LargeTamingBOD );
}
public virtual bool SupportsTamingBulkOrders( Mobile from )
{
return ( from is PlayerMobile && from.Skills[SkillName.AnimalTaming].Base > 0 );
}
public override TimeSpan GetNextBulkOrder( Mobile from )
{
AnimalBODModule module = from.GetModule( typeof( AnimalBODModule ) ) as AnimalBODModule ?? new AnimalBODModule(from);
return module.NextTamingBulkOrder;
}
public override bool OnDragDrop( Mobile from, Item dropped )
{
if ( dropped is SmallTamingBOD || dropped is LargeTamingBOD )
{
if ( !AnimalBODCore.Core.Enabled )
{
from.SendMessage( "The animal taming BOD system is currently offline. Please contact a game master for details." );
return false;
}
else if ( !IsValidBulkOrder( dropped ) || !SupportsTamingBulkOrders( from ) )
{
SayTo( from, 1045130 ); // That order is for some other shopkeeper.
return false;
}
else if ( (dropped is SmallMobileBOD && !((SmallMobileBOD)dropped).Complete) || (dropped is LargeMobileBOD && !((LargeMobileBOD)dropped).Complete) )
{
SayTo( from, 1045131 ); // You have not completed the order yet.
return false;
}
Item reward;
int gold, fame;
if ( dropped is LargeMobileBOD )
((LargeMobileBOD)dropped).GetRewards( out reward, out gold, out fame );
else
((SmallMobileBOD)dropped).GetRewards( out reward, out gold, out fame );
from.SendSound( 0x3D );
SayTo( from, 1045132 ); // Thank you so much! Here is a reward for your effort.
if ( reward != null )
from.AddToBackpack( reward );
if ( gold > 1000 )
from.AddToBackpack( new BankCheck( gold ) );
else if ( gold > 0 )
from.AddToBackpack( new Gold( gold ) );
Misc.Titles.AwardFame( from, fame, true );
OnSuccessfulBulkOrderReceive( from );
dropped.Delete();
return true;
}
return base.OnDragDrop( from, dropped );
}
public override void OnSuccessfulBulkOrderReceive(Mobile from)
{
}
#endregion
if (!Core.AOS)
{
Add(new AnimalBuyInfo(1, typeof(Eagle), 402, 10, 5, 0));
Add(new AnimalBuyInfo(1, typeof(BrownBear), 855, 10, 167, 0));
Add(new AnimalBuyInfo(1, typeof(GrizzlyBear), 1767, 10, 212, 0));
Add(new AnimalBuyInfo(1, typeof(Panther), 1271, 10, 214, 0));
Add(new AnimalBuyInfo(1, typeof(TimberWolf), 768, 10, 225, 0));
Add(new AnimalBuyInfo(1, typeof(Rat), 107, 10, 238, 0));
}
// FS ATS Edit Start
if ( FSATS.EnableTamingCraft == true )
Add( new AnimalBuyInfo( 1, typeof( Brush ), 72, 10, 0x1373, 0 ) );
if ( FSATS.EnableTamingCraft == false )
{
Add( new AnimalBuyInfo( 1, typeof( PetShrinkPotion ), 16, 10, 0xE26, 0 ) );
Add( new AnimalBuyInfo( 1, typeof( PetLeash ), 1456, 10, 0x1374, 0 ) );
Add( new AnimalBuyInfo( 1, typeof( HitchingPostEastDeed ), 1456, 10, 0x14F0, 0 ) );
Add( new AnimalBuyInfo( 1, typeof( HitchingPostSouthDeed ), 1456, 10, 0x14F0, 0 ) );
}
if ( FSATS.EnableTamingBODs == false && FSATS.EnableBioEngineer == false )
{
Add( new AnimalBuyInfo( 1, typeof( BioTool ), 72, 10, 0x1373, 1175 ) );
Add( new AnimalBuyInfo( 1, typeof( BioEnginerBook ), 10001, 10, 4084, 0 ) );
}
// FS ATS Edit Ends
No those are your base scripts.Oh wow, thank you so much!!! Are these edits to be done in the animaltrainer folder in scripts/customs?
using Server.Engines.BulkOrders;
using CustomsFramework.Systems.AnimalBODSystem;
I want to get this shard pack. but uofreeshards.net seem to down now.I am using them and the system on Pub 57 so it is doable, sadly I can't share as I've made way too many edits to the entire system itself among other things but I'd be happy to help if you wanted to give it a shot yourself.
There is also this but it also has OWLTR and a Level System in it. But both could be removed or it could be used as a base to get started.
ServUO - Pub 57 - OWLTR, FSATS, VNC
Jonathan submitted a new resource: OWLTR, FSATS, VNC - OWLTR, FS:ATS, VitaNexCore Just another upload and updated OWLTR Build, this is version 4.0 with FS:ATS and Vite Nex Core. Two new BoD's have been added. Carpentry & Fletcher Here is a description.. (Borrowed from a much older OWLTR...www.uofreeshards.net
Haven't heard from him in quite a while. Not sure what's going on but I hope he's doing okayI want to get this shard pack. but uofreeshards.net seem to down now.
I think this is offtopicks.
but does anyone its status?
I want to access this site and search other archives ...
No sir its pub54 dl it the other day an tryed how ever fs is runnin on iti'm pretty sure Land of Archon was Pub 57, but i honestly don't recall
Land-of-Archon/Scripts/Mobiles/Normal/BaseCreature.cs at master · tbewley10310/Land-of-Archon
Ultima Online ServUO Server. Contribute to tbewley10310/Land-of-Archon development by creating an account on GitHub.github.com
We use essential cookies to make this site work, and optional cookies to enhance your experience.