internal static GameObjectDescription CreateBall(float scalefactor) { var gobj = new GameObjectDescription() { AssetName = "ballblue", CurrentPosition = new Vector2(200 * scalefactor, 100 * scalefactor), Width = 30 * scalefactor, Height = 30 * scalefactor, ObjectOrientation = ObjectOrientation.Vertical, Stability = 100, GameObjectType = GameObjectType.BALL }; return(gobj); }
protected static void OnSimMouseUp(WindowBase sender, UIMouseEventArgs eventArgs) { try { Window window = sender as Window; if ((window != null) && (window.Parent != null)) { if (eventArgs.MouseKey == MouseKeys.kMouseLeft) { if ((eventArgs.Modifiers & Modifiers.kModifierMaskControl) == Modifiers.kModifierMaskControl) { Sim activeActor = Sim.ActiveActor; if (window.Parent.Tag is SimDescription) { Relationship relation = Relationship.Get((window.Parent.Tag as SimDescription), activeActor.SimDescription, false); if (relation != null) { Relationship.RemoveRelationship(relation); } } else { MiniSimDescriptionProxy proxy = window.Parent.Tag as MiniSimDescriptionProxy; if ((proxy != null) && (proxy.mSim is GameObjectDescription)) { GameObjectDescription choice = proxy.mSim as GameObjectDescription; for (int i = activeActor.SimDescription.GameObjectRelationships.Count - 1; i >= 0; i--) { GameObjectRelationship relation = activeActor.SimDescription.GameObjectRelationships[i]; if (relation.GameObjectDescription.GameObject == choice.GameObject) { activeActor.SimDescription.GameObjectRelationships.RemoveAt(i); } } } else { IMiniSimDescription miniSim = window.Parent.Tag as IMiniSimDescription; RemoveMiniRelationship(miniSim.SimDescriptionId, activeActor.SimDescription.SimDescriptionId); RemoveMiniRelationship(activeActor.SimDescription.SimDescriptionId, miniSim.SimDescriptionId); } } RelationshipsPanel.Instance.Repopulate(RelationshipsPanel.Instance.mHudModel.CurrentRelationships); } else if (window.Parent.Tag is SimDescription) { SimDescriptionEx.OnPickFromPanel(window.Parent.Tag as SimDescription, eventArgs, new GameObjectHit(GameObjectHitType.Object)); } else if (window.Parent.Tag is MiniSimDescriptionProxy) { MiniSimDescriptionProxy proxy = window.Parent.Tag as MiniSimDescriptionProxy; if (proxy.mSim is GameObjectDescription) { (proxy.mSim as GameObjectDescription).OnPickFromPanel(eventArgs, new GameObjectHit(GameObjectHitType.Object)); } else { MiniSimDescriptionEx.OnPickFromPanel(proxy.mSim as MiniSimDescription, eventArgs, new GameObjectHit(GameObjectHitType.Object)); } } else { (window.Parent.Tag as IMiniSimDescription).OnPickFromPanel(eventArgs, new GameObjectHit(GameObjectHitType.Object)); } } else if (eventArgs.MouseKey == MouseKeys.kMouseRight) { ObjectGuid objectGuid = (window.Tag == null) ? ObjectGuid.InvalidObjectGuid : ((ObjectGuid)window.Tag); if (objectGuid != ObjectGuid.InvalidObjectGuid) { RelationshipsPanel.Instance.mHudModel.MoveCameraToSim(objectGuid); } } } } catch (Exception exception) { Common.Exception("OnSimMouseUp", exception); } }
public static void Add(GameObjectDescription template) { var got = new GameObjectTemplate { Id = (uint)template.Id, Type = (GameObjectType)template.Type, DisplayId = (uint)template.Model, Name = template.Name, Field0 = template.GetField(0), Field1 = template.GetField(1), Field2 = template.GetField(2), Field3 = template.GetField(3), Field4 = template.GetField(4), Field5 = template.GetField(5), Field6 = template.GetField(6), Field7 = template.GetField(7), Field8 = template.GetField(8), Field9 = template.GetField(9), Field10 = template.GetField(10), Field11 = template.GetField(11), Field12 = template.GetField(12), Field13 = template.GetField(13), Field14 = template.GetField(14), Field15 = template.GetField(15), Field16 = template.GetField(16), Field17 = template.GetField(17), Field18 = template.GetField(18), Field19 = template.GetField(19), Field20 = template.GetField(20), Field21 = template.GetField(21), Field22 = template.GetField(22), Field23 = template.GetField(23), ScaleX = template.Size, }; _all.Add(template.Id, got); }