//////////////////////////////////////////////////////////////////////////////////////////
// Script written by GM Jubal for Ebonspire a player run Shard http://ebonspire.com
// An easy way for players to monitor their hunger without the need for using a gump
// simply displays a message relative to your hunger level using the command [myhunger
//////////////////////////////////////////////////////////////////////////////////////////
// To give hunger and thirst a real meaning modify the following files as outlined below
//
// Modify FoodDecay.cs line 14 TimeSpan.FromMinutes( 5 ) in both places to the time span
// you want to use. A time span of 5 loses 1 point of hunger and thirst per 5 minutes. I
// used a time span of 10 minutes on my shard which means that players don't starve to
// to death if they are at 20 hunger for 3 hours and 20 minutes or 300 minutes. This part
// was not written to cause any real damage to the players, just enough to add some
// realism to the need to eat and drink.
// Added to FoodDecay.cs
// in FoodDecay() add if ( state.Mobile != null && state.Mobile.AccessLevel == AcessLevel.Player ) // Check if player
// In HungerDecay( Mobile m ) add:
// {
// if ( m.Hunger >= 1 )
// {
// m.Hunger -= 1;
// // added to give hunger value a real meaning.
// if ( m.Hunger < 5 )
// m.SendMessage( "You are extremely hungry." );
// else if ( m.Hunger < 10 )
// m.SendMessage( "You are getting very hungry." );
// }
// else
// {
// if ( m.Hits > 5 )
// m.Hits -= 5;
// m.SendMessage( "You are starving to death!" );
// }
// }
//
// In ThirstDecay( Mobile m ) add:
// {
// if ( m.Thirst >= 1 )
// {
// m.Thirst -= 1;
// // added to give thirst value a real meaning.
// if ( m.Thirst < 5 )
// m.SendMessage( "You are extremely thirsty." );
// else if ( m.Thirst < 10 )
// m.SendMessage( "You are getting thirsty." );
// }
// else
// {
// if ( m.Stam > 5 )
// m.Stam -= 5;
// m.SendMessage( "You are exhausted from thirst" );
// }
// }
// }
//
// Added and modified in Beverage.cs
// in Pour_OnTarget( Mobile from, object targ ) add:
// // increase characters thirst value based on type of drink
// if ( from.Thirst < 20 )
// {
// switch ( this.Content )
// {
// case BeverageType.Water: from.Thirst += 5; break;
// case BeverageType.Milk: from.Thirst += 4; break;
// case BeverageType.Ale: from.Thirst += 3; break;
// case BeverageType.Wine: from.Thirst += 2; break;
// case BeverageType.Cider: from.Thirst += 3; break;
// case BeverageType.Liquor: from.Thirst += 1; break;
// }
// // Send message to character about their current thirst value
// int iThirst = from.Thirst;
// if ( iThirst < 5 )
// from.SendMessage( "You take a drink but are still extremely thirsty" );
// else if ( iThirst < 10 )
// from.SendMessage( "You take a drink and feel less thirsty" );
// else if ( iThirst < 15 )
// from.SendMessage( "You take a drink and feel much less thirsty" );
// else
// from.SendMessage( "You take a drink and are no longer thirsty" );
// }
// else
// from.Thirst = 20;
//
// Now if you really want to add something to make hunger and thirst really mean something
// also add the following two files HitsDecay.cs and StamDecay.cs These files are commented
// in themselves to show what they do.
////////////////////////////////////////////////////////////////////////////////////////////