Go Back   RunUO - Ultima Online Emulation > RunUO > New Join Forum

New Join Forum So your new to RunUO and looking to work with people that are new, this is the place.

Reply
 
Thread Tools Display Modes
Old 05-28-2005, 07:52 AM   #1 (permalink)
Forum Expert
 
Join Date: Feb 2005
Location: Fife,Scotland
Age: 40
Posts: 258
Default explosion potion help

i have a custom script for mana potions i had a problem where explosion potions came up as un baked fruit pie
i thought i had sorted it with help from here but nope it not fixed, i ahave made these potions craftable i think this is where the problem comes from
in script below i ahve blue text can some one tell me what these numbers are becuase script uses words rather than numbers is this maybe the problem
at the moment a lesser explosion pot is called a explosion potion a explos pot is a greater and a greaterexpo pot is called unbaked fruit pie
it seems all the names have shifted by 1
please a nod in the right direction please im pulling my hair out

DefAlchemy.cs
Code:
// Explosion Potion
index = AddCraft( typeof( LesserExplosionPotion ), 1044537, 1044555, 5.0, 55.0, typeof( SulfurousAsh 
), 1044359, 3, 1044367 );
AddRes( index, typeof ( Bottle ), 1044529, 1, 500315 );
index = AddCraft( typeof( ExplosionPotion ), 1044537, 1044556, 35.0, 85.0, typeof( SulfurousAsh ), 
1044359, 5, 1044367 );
AddRes( index, typeof ( Bottle ), 1044529, 1, 500315 );
index = AddCraft( typeof( GreaterExplosionPotion ), 1044537, 1044557, 65.0, 115.0, typeof( 
SulfurousAsh ), 1044359, 10, 1044367 );
AddRes( index, typeof ( Bottle ), 1044529, 1, 500315 );
// Mana Potion
index = AddCraft( typeof( LesserManaPotion ), "Mana", "Lesser Mana Potion", -5, 45.0,typeof( 
Nightshade ), "Nightshade", 1, "You need more Nightshade" );
AddRes( index, typeof ( Bottle ), 1044529, 1, 500315 );
index = AddCraft( typeof( ManaPotion ), "Mana", "Mana Potion", 25, 65.0,typeof( Nightshade ), 
"Nightshade", 1, "You need more Nightshade" );
AddRes( index, typeof ( Bottle ), 1044529, 1, 500315 );
index = AddCraft( typeof( GreaterManaPotion ), "Mana", "Greater Mana Potion", 65.5, 105.0,typeof( 
Nightshade ), "Nightshade", 1, "You need more Nightshade" );
AddRes( index, typeof ( Bottle ), 1044529, 1, 500315 );
could the mix of numbers and labels be the problem?
just incaase here is what i changed in basepotion.cs

BasePotion.cs
Code:
using System; 
using Server; 
namespace Server.Items 
{ 
	public enum PotionEffect 
	{ 
		Nightsight, 
		CureLesser, 
		Cure, 
		CureGreater, 
		Agility, 
		AgilityGreater, 
		Strength, 
		StrengthGreater, 
		PoisonLesser, 
		Poison, 
		PoisonGreater, 
		PoisonDeadly, 
		Refresh, 
		RefreshTotal, 
		HealLesser, 
		Heal, 
		HealGreater, 
		HealSuper,
		ExplosionLesser, 
		Explosion, 
		ExplosionGreater,
		ManaLesser, 
		Mana, 
		ManaGreater
text in red is what i added

any help much appreciated
orgis is offline   Reply With Quote
Old 05-28-2005, 08:56 AM   #2 (permalink)
 
a_dead_lois's Avatar
 
Join Date: Sep 2004
Age: 27
Posts: 43
Default

Did you make any other modification to other scripts? From what you have posted I don't really see why it would be doing that.
a_dead_lois is offline   Reply With Quote
Old 05-28-2005, 09:29 AM   #3 (permalink)
Forum Expert
 
Join Date: Feb 2005
Location: Fife,Scotland
Age: 40
Posts: 258
Default

Quote:
Originally Posted by a_dead_lois
Did you make any other modification to other scripts? From what you have posted I don't really see why it would be doing that.
no i only added the extra potions
here is the full scripts

DefAlchemy:
Code:
using System;
using Server.Items;
namespace Server.Engines.Craft
{
 public class DefAlchemy : CraftSystem
 {
  public override SkillName MainSkill
  {
   get { return SkillName.Alchemy; }
  }
  public override int GumpTitleNumber
  {
   get { return 1044001; } // <CENTER>ALCHEMY MENU</CENTER>
  }
  private static CraftSystem m_CraftSystem;
  public static CraftSystem CraftSystem
  {
   get
   {
	if ( m_CraftSystem == null )
	 m_CraftSystem = new DefAlchemy();
	return m_CraftSystem;
   }
  }
  public override double GetChanceAtMin( CraftItem item )
  {
   return 0.0; // 0%
  }
  private DefAlchemy() : base( 1, 1, 1.25 )// base( 1, 1, 3.1 )
  {
  }
  public override int CanCraft( Mobile from, BaseTool tool, Type itemType )
  {
   if ( tool.Deleted || tool.UsesRemaining < 0 )
	return 1044038; // You have worn out your tool!
   else if ( !BaseTool.CheckAccessible( tool, from ) )
	return 1044263; // The tool must be on your person to use.
   return 0;
  }
  public override void PlayCraftEffect( Mobile from )
  {
   from.PlaySound( 0x242 );
  }
  public override int PlayEndingEffect( Mobile from, bool failed, bool lostMaterial, bool toolBroken, int quality, bool makersMark, CraftItem item )
  {
   if ( toolBroken )
	from.SendLocalizedMessage( 1044038 ); // You have worn out your tool
   if ( failed )
   {
	from.AddToBackpack( new Bottle() );
	return 500287; // You fail to create a useful potion.
   }
   else
   {
	from.PlaySound( 0x240 ); // Sound of a filling bottle
	if ( quality == -1 )
	 return 1048136; // You create the potion and pour it into a keg.
	else
	 return 500279; // You pour the potion into a bottle...
   }
  }
  public override void InitCraftList()
  {
   int index = -1;
   // Refresh Potion
   index = AddCraft( typeof( RefreshPotion ), 1044530, 1044538, -25, 25.0, typeof( BlackPearl ), 1044353, 1, 1044361 );
   AddRes( index, typeof ( Bottle ), 1044529, 1, 500315 );
   index = AddCraft( typeof( TotalRefreshPotion ), 1044530, 1044539, 25.0, 75.0, typeof( BlackPearl ), 1044353, 5, 1044361 );
   AddRes( index, typeof ( Bottle ), 1044529, 1, 500315 );
   // Agility Potion
   index = AddCraft( typeof( AgilityPotion ), 1044531, 1044540, 15.0, 65.0, typeof( Bloodmoss ), 1044354, 1, 1044362 );
   AddRes( index, typeof ( Bottle ), 1044529, 1, 500315 );
   index = AddCraft( typeof( GreaterAgilityPotion ), 1044531, 1044541, 35.0, 85.0, typeof( Bloodmoss ), 1044354, 3, 1044362 );
   AddRes( index, typeof ( Bottle ), 1044529, 1, 500315 );
   // Nightsight Potion
   index = AddCraft( typeof( NightSightPotion ), 1044532, 1044542, -25.0, 25.0, typeof( SpidersSilk ), 1044360, 1, 1044368 );
   AddRes( index, typeof ( Bottle ), 1044529, 1, 500315 );
   // Heal Potion
   index = AddCraft( typeof( LesserHealPotion ), 1044533, 1044543, -25.0, 25.0, typeof( Ginseng ), 1044356, 1, 1044364 );
   AddRes( index, typeof ( Bottle ), 1044529, 1, 500315 );
   index = AddCraft( typeof( HealPotion ), 1044533, 1044544, 15.0, 65.0, typeof( Ginseng ), 1044356, 3, 1044364 );
   AddRes( index, typeof ( Bottle ), 1044529, 1, 500315 );
   index = AddCraft( typeof( GreaterHealPotion ), 1044533, 1044545, 55.0, 105.0, typeof( Ginseng ), 1044356, 7, 1044364 );
   AddRes( index, typeof ( Bottle ), 1044529, 1, 500315 );
   // Strength Potion
   index = AddCraft( typeof( StrengthPotion ), 1044534, 1044546, 25.0, 75.0, typeof( MandrakeRoot ), 1044357, 2, 1044365 );
   AddRes( index, typeof ( Bottle ), 1044529, 1, 500315 );
   index = AddCraft( typeof( GreaterStrengthPotion ), 1044534, 1044547, 45.0, 95.0, typeof( MandrakeRoot ), 1044357, 5, 1044365 );
   AddRes( index, typeof ( Bottle ), 1044529, 1, 500315 );
   // Poison Potion
   index = AddCraft( typeof( LesserPoisonPotion ), 1044535, 1044548, -5.0, 45.0, typeof( Nightshade ), 1044358, 1, 1044366 );
   AddRes( index, typeof ( Bottle ), 1044529, 1, 500315 );
   index = AddCraft( typeof( PoisonPotion ), 1044535, 1044549, 15.0, 65.0, typeof( Nightshade ), 1044358, 2, 1044366 );
   AddRes( index, typeof ( Bottle ), 1044529, 1, 500315 );
   index = AddCraft( typeof( GreaterPoisonPotion ), 1044535, 1044550, 55.0, 105.0, typeof( Nightshade ), 1044358, 4, 1044366 );
   AddRes( index, typeof ( Bottle ), 1044529, 1, 500315 );
   index = AddCraft( typeof( DeadlyPoisonPotion ), 1044535, 1044551, 90.0, 140.0, typeof( Nightshade ), 1044358, 8, 1044366 );
   AddRes( index, typeof ( Bottle ), 1044529, 1, 500315 );
   // Cure Potion
   index = AddCraft( typeof( LesserCurePotion ), 1044536, 1044552, -10.0, 40.0, typeof( Garlic ), 1044355, 1, 1044363 );
   AddRes( index, typeof ( Bottle ), 1044529, 1, 500315 );
   index = AddCraft( typeof( CurePotion ), 1044536, 1044553, 25.0, 75.0, typeof( Garlic ), 1044355, 3, 1044363 );
   AddRes( index, typeof ( Bottle ), 1044529, 1, 500315 );
   index = AddCraft( typeof( GreaterCurePotion ), 1044536, 1044554, 65.0, 115.0, typeof( Garlic ), 1044355, 6, 1044363 );
   AddRes( index, typeof ( Bottle ), 1044529, 1, 500315 );
   // Explosion Potion
   index = AddCraft( typeof( LesserExplosionPotion ), 1044537, 1044555, 5.0, 55.0, typeof( SulfurousAsh ), 1044359, 3, 1044367 );
   AddRes( index, typeof ( Bottle ), 1044529, 1, 500315 );
   index = AddCraft( typeof( ExplosionPotion ), 1044537, 1044556, 35.0, 85.0, typeof( SulfurousAsh ), 1044359, 5, 1044367 );
   AddRes( index, typeof ( Bottle ), 1044529, 1, 500315 );
   index = AddCraft( typeof( GreaterExplosionPotion ), 1044537, 1044557, 65.0, 115.0, typeof( SulfurousAsh ), 1044359, 10, 1044367 );
   AddRes( index, typeof ( Bottle ), 1044529, 1, 500315 );
   // Mana Potion
   index = AddCraft( typeof( LesserManaPotion ), "Mana", "Lesser Mana Potion", -5, 45.0,typeof( Nightshade ), "Nightshade", 1, "You need more Nightshade" );
   AddRes( index, typeof ( Bottle ), 1044529, 1, 500315 );
   index = AddCraft( typeof( ManaPotion ), "Mana", "Mana Potion", 25, 65.0,typeof( Nightshade ), "Nightshade", 1, "You need more Nightshade" );
   AddRes( index, typeof ( Bottle ), 1044529, 1, 500315 );
   index = AddCraft( typeof( GreaterManaPotion ), "Mana", "Greater Mana Potion", 65.5, 105.0,typeof( Nightshade ), "Nightshade", 1, "You need more Nightshade" );
   AddRes( index, typeof ( Bottle ), 1044529, 1, 500315 );

   
   if( Core.SE )
   {
	/* Need Eggbomb & The SE tag
	index = AddCraft( typeof( EggBomb ), 1044537, 1030248, 90.0, 140.0, typeof( Eggs ), 1044477, 1, 1044253 );
	AddRes( index, typeof ( Ginseng ), 1044356, 3, 1044364 );
	*/
   }
  }
 }
}
BasePotion:
Code:
// Created by Noid for Quero Des Lucis UO-shard 
using System; 
using Server; 
namespace Server.Items 
{ 
	public enum PotionEffect 
	{ 
		Nightsight, 
		CureLesser, 
		Cure, 
		CureGreater, 
		Agility, 
		AgilityGreater, 
		Strength, 
		StrengthGreater, 
		PoisonLesser, 
		Poison, 
		PoisonGreater, 
		PoisonDeadly, 
		Refresh, 
		RefreshTotal, 
		HealLesser, 
		Heal, 
		HealGreater, 
		HealSuper,
		ExplosionLesser, 
		Explosion, 
		ExplosionGreater,
	    ManaLesser, 
		Mana, 
		ManaGreater
 
	} 
	public abstract class BasePotion : Item 
	{ 
		private PotionEffect m_PotionEffect; 
		public PotionEffect PotionEffect 
		{ 
			get 
			{ 
				return m_PotionEffect; 
			} 
			set 
			{ 
				m_PotionEffect = value; 
				InvalidateProperties(); 
			} 
		} 
		public override int LabelNumber{ get{ return 1041314 + (int)m_PotionEffect; } } 
		public BasePotion( int itemID, PotionEffect effect ) : base( itemID ) 
		{ 
			m_PotionEffect = effect; 
			Stackable = false; 
			Weight = 1.0; 
		} 
		public BasePotion( Serial serial ) : base( serial ) 
		{ 
		} 
		public virtual bool RequireFreeHand{ get{ return true; } } 
		public static bool HasFreeHand( Mobile m ) 
		{ 
			Item handOne = m.FindItemOnLayer( Layer.OneHanded ); 
			Item handTwo = m.FindItemOnLayer( Layer.TwoHanded ); 
			if ( handTwo is BaseWeapon ) 
				handOne = handTwo; 
			return ( handOne == null || handTwo == null ); 
		} 
		public override void OnDoubleClick( Mobile from ) 
		{ 
			if ( !Movable ) 
				return; 
			if ( from.InRange( this.GetWorldLocation(), 1 ) ) 
			{ 
				if ( !RequireFreeHand || HasFreeHand( from ) ) 
					Drink( from ); 
				else 
					from.SendLocalizedMessage( 502172 ); // You must have a free hand to drink a potion. 
			} 
			else 
			{ 
				from.SendLocalizedMessage( 502138 ); // That is too far away for you to use 
			} 
		} 
		public override void Serialize( GenericWriter writer ) 
		{ 
			base.Serialize( writer ); 
			writer.Write( (int) 0 ); // version 
			writer.Write( (int) m_PotionEffect ); 
		} 
		public override void Deserialize( GenericReader reader ) 
		{ 
			base.Deserialize( reader ); 
			int version = reader.ReadInt(); 
			switch ( version ) 
			{ 
				case 0: 
				{ 
					m_PotionEffect = (PotionEffect)reader.ReadInt(); 
					break; 
				} 
			} 
		} 
		public abstract void Drink( Mobile from ); 
		public static void PlayDrinkEffect( Mobile m ) 
		{ 
			m.RevealingAction(); 
			m.PlaySound( 0x2D6 ); 
			m.AddToBackpack( new Bottle() ); 
			if ( m.Body.IsHuman /*&& !m.Mounted*/ ) 
				m.Animate( 34, 5, 1, true, false, 0 ); 
		} 
		public static TimeSpan Scale( Mobile m, TimeSpan v ) 
		{ 
			if ( !Core.AOS ) 
				return v; 
			double scalar = 1.0 + (0.01 * AosAttributes.GetValue( m, AosAttribute.EnhancePotions )); 
			return TimeSpan.FromSeconds( v.TotalSeconds * scalar ); 
		} 
		public static double Scale( Mobile m, double v ) 
		{ 
			if ( !Core.AOS ) 
				return v; 
			double scalar = 1.0 + (0.01 * AosAttributes.GetValue( m, AosAttribute.EnhancePotions )); 
			return v * scalar; 
		} 
		public static int Scale( Mobile m, int v ) 
		{ 
			if ( !Core.AOS ) 
				return v; 
			return AOS.Scale( v, 100 + AosAttributes.GetValue( m, AosAttribute.EnhancePotions ) ); 
		} 
	} 
}
any other scripts need just let me know
im stumped
orgis is offline   Reply With Quote
Old 05-28-2005, 10:03 AM   #4 (permalink)
Forum Novice
 
Randall's Avatar
 
Join Date: Dec 2004
Location: Earth
Posts: 127
Default

Check your other post in this forum,I believe Khaz knows his stuff and has figured it out.
It appears you have a HealSuper potion in basepotion but not in defalchemy look at that as well.
As for using a mix of labels and numbers,I did that exact thing and it works fine.
Randall is offline   Reply With Quote
Old 05-28-2005, 03:51 PM   #5 (permalink)
Forum Expert
 
Join Date: Feb 2005
Location: Fife,Scotland
Age: 40
Posts: 258
Default

Quote:
Originally Posted by Randall
Check your other post in this forum,I believe Khaz knows his stuff and has figured it out.
It appears you have a HealSuper potion in basepotion but not in defalchemy look at that as well.
As for using a mix of labels and numbers,I did that exact thing and it works fine.
thanks mate
im dumb i forgot i already posted

as far as i know there shouldn't be a "superheal Potion" i did have a "supermana potion" but removed it totally to see what happened
and what happened was that all the names shifted to what they are now; i think i will totally remove all my mana pots and see what happens cos i have the "shrink" potion stuff and want to make that craftable too
thanks mate
orgis is offline   Reply With Quote
Old 06-16-2005, 05:41 PM   #6 (permalink)
Forum Expert
 
Join Date: Feb 2005
Location: Fife,Scotland
Age: 40
Posts: 258
Default

Quote:
Originally Posted by Randall
Check your other post in this forum,I believe Khaz knows his stuff and has figured it out.
It appears you have a HealSuper potion in basepotion but not in defalchemy look at that as well.
As for using a mix of labels and numbers,I did that exact thing and it works fine.
that was the problem mate the heal super , i dont even have that potion not sure yet how it got there
orgis is offline   Reply With Quote
Reply

Bookmarks


Currently Active Users Viewing This Thread: 1 (0 members and 1 guests)
 
Thread Tools
Display Modes

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off
Trackbacks are Off
Pingbacks are Off
Refbacks are Off



Powered by vBulletin® Version 3.7.0
Copyright ©2000 - 2008, Jelsoft Enterprises Ltd.
SEO by vBSEO 3.2.0 RC5