protected override void OnTarget( Mobile from, object targeted ) { if ( m_System is Mining && targeted is StaticTarget ) { int itemID = ((StaticTarget)targeted).ItemID; // grave if ( itemID == 0xED3 || itemID == 0xEDF || itemID == 0xEE0 || itemID == 0xEE1 || itemID == 0xEE2 || itemID == 0xEE8 ) { PlayerMobile player = from as PlayerMobile; if ( player != null ) { QuestSystem qs = player.Quest; if ( qs is WitchApprenticeQuest ) { FindIngredientObjective obj = qs.FindObjective( typeof( FindIngredientObjective ) ) as FindIngredientObjective; if ( obj != null && !obj.Completed && obj.Ingredient == Ingredient.Bones ) { player.SendLocalizedMessage( 1055037 ); // You finish your grim work, finding some of the specific bones listed in the Hag's recipe. obj.Complete(); return; } } } } } if ( m_System is Lumberjacking && targeted is IChopable ) ((IChopable)targeted).OnChop( from ); else if ( m_System is Lumberjacking && targeted is IAxe && m_Tool is BaseAxe ) { IAxe obj = (IAxe)targeted; Item item = (Item)targeted; if ( !item.IsChildOf( from.Backpack ) ) from.SendLocalizedMessage( 1062334 ); // This item must be in your backpack to be used. else if ( obj.Axe( from, (BaseAxe)m_Tool ) ) from.PlaySound( 0x13E ); } else if ( m_System is Lumberjacking && targeted is ICarvable ) ((ICarvable)targeted).Carve( from, (Item)m_Tool ); else if ( m_System is Lumberjacking && FurnitureAttribute.Check( targeted as Item ) ) DestroyFurniture( from, (Item)targeted ); else if ( m_System is Mining && targeted is TreasureMap ) ((TreasureMap)targeted).OnBeginDig( from ); else m_System.StartHarvesting( from, m_Tool, targeted ); }
protected override void OnTarget(Mobile from, object targeted) { if (m_System is Lumberjacking && targeted is IChopable) { ((IChopable)targeted).OnChop(from); } else if (m_System is Lumberjacking && targeted is IAxe && m_Tool is BaseAxe) { IAxe obj = (IAxe)targeted; Item item = (Item)targeted; if (!item.IsChildOf(from.Backpack) && !item.IsChildOf(from.BankBox)) { from.SendMessage("This item must be in your backpack or bankbox to be used."); } else if (obj.Axe(from, (BaseAxe)m_Tool)) { from.PlaySound(0x13E); } } else if (m_System is Lumberjacking && targeted is ICarvable) { ((ICarvable)targeted).Carve(from, (Item)m_Tool); } else if (m_System is Lumberjacking && FurnitureAttribute.Check(targeted as Item)) { DestroyFurniture(from, (Item)targeted); } else if (m_System is Mining && targeted is TreasureMap) { ((TreasureMap)targeted).OnBeginDig(from); } else if (targeted == from) { m_System.StartHarvesting(from, m_Tool, targeted, true); } else { m_System.StartHarvesting(from, m_Tool, targeted, false); } }
protected override void OnTarget(Mobile from, object targeted) { if (this.m_System is Lumberjacking && targeted is IChopable) { ((IChopable)targeted).OnChop(from); } else if (this.m_System is Lumberjacking && targeted is IAxe && this.m_Tool is BaseAxe) { IAxe obj = (IAxe)targeted; Item item = (Item)targeted; if (!item.IsChildOf(from.Backpack)) { from.SendLocalizedMessage(1062334); // This item must be in your backpack to be used. } else if (obj.Axe(from, (BaseAxe)this.m_Tool)) { from.PlaySound(0x13E); } } else if (this.m_System is Lumberjacking && targeted is ICarvable) { ((ICarvable)targeted).Carve(from, (Item)this.m_Tool); } else if (this.m_System is Lumberjacking && FurnitureAttribute.Check(targeted as Item)) { this.DestroyFurniture(from, (Item)targeted); } else if (this.m_System is Mining && targeted is TreasureMap) { ((TreasureMap)targeted).OnBeginDig(from); } else { // If we got here and we're lumberjacking then we didn't target something that cna be done from the pack if (m_System is Lumberjacking && m_Tool.Parent != from) { from.SendLocalizedMessage(500487); // The axe must be equipped for any serious wood chopping. return; } this.m_System.StartHarvesting(from, this.m_Tool, targeted); } }
protected override void OnTarget( Mobile from, object targeted ) { if ( m_System is Lumberjacking && targeted is IChopable ) ((IChopable)targeted).OnChop( from ); else if ( m_System is Lumberjacking && targeted is IAxe && m_Tool is BaseAxe ) { IAxe obj = (IAxe)targeted; Item item = (Item)targeted; if ( !item.IsChildOf( from.Backpack ) ) from.SendLocalizedMessage( 1062334 ); // This item must be in your backpack to be used. else if ( obj.Axe( from, (BaseAxe)m_Tool ) ) from.PlaySound( 0x13E ); } else if ( m_System is Lumberjacking && targeted is ICarvable ) ((ICarvable)targeted).Carve( from, (Item)m_Tool ); else if ( m_System is Lumberjacking && FurnitureAttribute.Check( targeted as Item ) ) DestroyFurniture( from, (Item)targeted ); else if ( m_System is Mining && targeted is TreasureMap ) ((TreasureMap)targeted).OnBeginDig( from ); else m_System.StartHarvesting( from, m_Tool, targeted ); }
public View(Scene scene, ICanvas canvas, Quality quality) { BoundingBox3d sceneBounds = scene.Graph.Bounds; _viewpoint = (Coord3d)DEFAULT_VIEW.Clone(); _center = (Coord3d)sceneBounds.getCenter(); _scaling = (Coord3d)Coord3d.IDENTITY.Clone(); _viewmode = ViewPositionMode.FREE; _boundmode = ViewBoundMode.AUTO_FIT; _cameraMode = CameraMode.ORTHOGONAL; _axe = (IAxe)AxeFactory.getInstance(sceneBounds, this); _cam = CameraFactory.getInstance(_center); _scene = scene; _canvas = canvas; _quality = quality; _renderers = new List <IRenderer2D>(); //_tooltips = New List(Of ITooltipRenderer) _bgViewport = new ImageViewport(); _viewOnTopListeners = new List <IViewIsVerticalEventListener>(); _viewPointChangedListeners = new List <IViewPointChangedListener>(); _wasOnTopAtLastRendering = false; //_overlay = New Overlay View.Current = this; }
protected override void OnTarget(Mobile from, object targeted) { if (this.m_System is Mining && targeted is StaticTarget) { int itemID = ((StaticTarget)targeted).ItemID; // grave if (itemID == 0xED3 || itemID == 0xEDF || itemID == 0xEE0 || itemID == 0xEE1 || itemID == 0xEE2 || itemID == 0xEE8) { PlayerMobile player = from as PlayerMobile; if (player != null) { QuestSystem qs = player.Quest; if (qs is WitchApprenticeQuest) { FindIngredientObjective obj = qs.FindObjective(typeof(FindIngredientObjective)) as FindIngredientObjective; if (obj != null && !obj.Completed && obj.Ingredient == Ingredient.Bones) { player.SendLocalizedMessage(1055037); // You finish your grim work, finding some of the specific bones listed in the Hag's recipe. obj.Complete(); return; } } } } } if (this.m_System is Lumberjacking && targeted is IChopable) { ((IChopable)targeted).OnChop(from); } else if (this.m_System is Lumberjacking && targeted is IAxe && this.m_Tool is BaseAxe) { IAxe obj = (IAxe)targeted; Item item = (Item)targeted; if (!item.IsChildOf(from.Backpack)) { from.SendLocalizedMessage(1062334); // This item must be in your backpack to be used. } else if (obj.Axe(from, (BaseAxe)this.m_Tool)) { from.PlaySound(0x13E); } } else if (this.m_System is Lumberjacking && targeted is ICarvable) { ((ICarvable)targeted).Carve(from, (Item)this.m_Tool); } else if (this.m_System is Lumberjacking && FurnitureAttribute.Check(targeted as Item)) { this.DestroyFurniture(from, (Item)targeted); } else if (this.m_System is Mining && targeted is TreasureMap) { ((TreasureMap)targeted).OnBeginDig(from); } #region High Seas else if (m_System is Mining && targeted is NiterDeposit) { ((NiterDeposit)targeted).OnMine(from, m_Tool); } else if (m_System is Lumberjacking && targeted is CrackedLavaRockEast) { ((CrackedLavaRockEast)targeted).OnCrack(from); } else if (m_System is Lumberjacking && targeted is CrackedLavaRockSouth) { ((CrackedLavaRockSouth)targeted).OnCrack(from); } #endregion else { // If we got here and we're lumberjacking then we didn't target something that cna be done from the pack if (m_System is Lumberjacking && m_Tool.Parent != from) { from.SendLocalizedMessage(500487); // The axe must be equipped for any serious wood chopping. return; } this.m_System.StartHarvesting(from, this.m_Tool, targeted); } }
protected override void OnTarget(Mobile from, object targeted) { // true if return override encountered in script IEntity targetedEntity = targeted as IEntity; if (XmlScript.HasTrigger(targetedEntity, TriggerName.onTargeted) && UberScriptTriggers.Trigger(targetedEntity, from, TriggerName.onTargeted, m_Tool)) { return; } CustomRegion customRegion = from.Region as CustomRegion; if (customRegion != null && customRegion.Controller != null) { SkillName skill = SkillName.Spellweaving; // placeholder if (m_System is Mining) { skill = SkillName.Mining; } else if (m_System is Fishing) { skill = SkillName.Fishing; } else if (m_System is Lumberjacking) { skill = SkillName.Lumberjacking; } if (customRegion.Controller.IsRestrictedSkill((int)skill)) { from.SendMessage("You cannot use that skill here."); return; } } //conquest skill check Skill tskill = null; if (m_System is Mining) { tskill = from.Skills[SkillName.Mining]; } else if (m_System is Lumberjacking) { tskill = from.Skills[SkillName.Lumberjacking]; } else if (m_System is Fishing) { tskill = from.Skills[SkillName.Fishing]; } if (tskill != null) { Conquests.Conquests.CheckProgress <SkillConquest>(from as PlayerMobile, tskill); } if (m_System is Mining && targeted is StaticTarget) { int itemID = ((StaticTarget)targeted).ItemID; // grave if (itemID == 0xED3 || itemID == 0xEDF || itemID == 0xEE0 || itemID == 0xEE1 || itemID == 0xEE2 || itemID == 0xEE8) { PlayerMobile player = from as PlayerMobile; if (player != null) { QuestSystem qs = player.Quest; if (qs is WitchApprenticeQuest) { FindIngredientObjective obj = qs.FindObjective(typeof(FindIngredientObjective)) as FindIngredientObjective; if (obj != null && !obj.Completed && obj.Ingredient == Ingredient.Bones) { player.SendLocalizedMessage(1055037); // You finish your grim work, finding some of the specific bones listed in the Hag's recipe. obj.Complete(); return; } } } } } if (m_System is Lumberjacking && targeted is IChopable) { if (targeted is Item) { if (((Item)targeted).Breakable) { ((IChopable)targeted).OnChop(from); } else { from.SendMessage("That is unbreakable!"); } } else { ((IChopable)targeted).OnChop(from); } } else if (m_System is Lumberjacking && targeted is IAxe && m_Tool is BaseAxe) { IAxe obj = (IAxe)targeted; Item item = (Item)targeted; if (!item.IsChildOf(from.Backpack)) { from.SendLocalizedMessage(1062334); // This item must be in your backpack to be used. } else if (obj.Axe(from, (BaseAxe)m_Tool)) { from.PlaySound(0x13E); } } else if (m_System is Lumberjacking && targeted is ICarvable) { ((ICarvable)targeted).Carve(from, (Item)m_Tool); } else if (m_System is Lumberjacking && FurnitureAttribute.Check(targeted as Item)) { if (((Item)targeted).Breakable) { DestroyFurniture(from, (Item)targeted); } else { from.SendMessage("That is unbreakable!"); } } else if (m_System is Mining && targeted is TreasureMap) { ((TreasureMap)targeted).OnBeginDig(from); } else { m_System.StartHarvesting(from, m_Tool, targeted); } }