private void trackInteraction(Interactuable with) { switch (with.GetType().ToString()) { case "ActiveAreaMB": Tracker.T.trackedGameObject.Interacted(((ActiveAreaMB)with).aaData.getId(), GameObjectTracker.TrackedGameObject.Npc); break; case "CharacterMB": Tracker.T.trackedGameObject.Interacted(((Representable)with).Element.getId(), GameObjectTracker.TrackedGameObject.Npc); break; case "ObjectMB": Tracker.T.trackedGameObject.Interacted(((Representable)with).Element.getId(), GameObjectTracker.TrackedGameObject.Item); break; } Tracker.T.RequestFlush(); }
public bool Update(Interactuable interactuable) { Milestone.MilestoneType type; switch (interactuable.GetType().ToString()) { case "CharacterMB": type = Milestone.MilestoneType.CHARACTER; break; case "ObjectMB": type = Milestone.MilestoneType.ITEM; break; default: return(false); } if (!reached && type == this.type && id == ((Representable)interactuable).Element.getId()) { reached = true; } return(reached); }