public override void SetDefaultData(Map.Object obj) { obj.NewDefaultExtraData(); xfer = obj.GetExtraData <TriggerXfer>(); if (ThingDb.Things[obj.Name].ExtentType != "BOX") { xfer.BackColor = Color.Black; xfer.EdgeColor = Color.Black; } }
private void nameBox_SelectedIndexChanged(object sender, System.EventArgs e) { objPs = ((ThingDb.Thing)ThingDb.Things[nameBox.Text]); if (nameBox.Text != obj.Name) { obj.Name = nameBox.Text; obj.NewDefaultExtraData(); } xtraBox.Checked = (obj.Terminator > 0); }
private void nameBox_SelectedIndexChanged(object sender, System.EventArgs e) { objPs = ThingDb.Things[nameBox.Text]; if (nameBox.Text != obj.Name) { obj.Name = nameBox.Text; XferEditor editor = XferEditors.GetEditorForXfer(ThingDb.Things[nameBox.Text].Xfer); if (editor != null) { editor.SetDefaultData(obj); } else { obj.NewDefaultExtraData(); } } xtraBox.Checked = (obj.Terminator > 0); }
void ButtonMonsterPropsClick(object sender, EventArgs e) { int index = monstersListBox.SelectedIndex; if (index >= 0) { Map.Object virtualObj; MonsterEdit monsterEditor = new MonsterEdit(); if (Xfer.MonsterData[index] == null) { // valid monster? if (currentMonsterName.SelectedIndex < 0) { return; } // new monster slot virtualObj = new Map.Object(currentMonsterName.Text, PointF.Empty); virtualObj.ReadRule1 = 0x40; // default data virtualObj.NewDefaultExtraData(); virtualObj.GetExtraData <MonsterXfer>().InitForMonsterName(currentMonsterName.Text); monsterEditor.SetObject(virtualObj); } else { // modify existing one virtualObj = new Map.Object(currentMonsterName.Text, PointF.Empty); BinaryReader br = new BinaryReader(new MemoryStream(Xfer.MonsterData[index])); virtualObj.ReadRule1 = br.ReadInt16(); br.BaseStream.Seek(19, SeekOrigin.Current); virtualObj.GetExtraData <MonsterXfer>().FromStream(br.BaseStream, virtualObj.ReadRule1, ThingDb.Things[virtualObj.Name]); monsterEditor.SetObject(virtualObj); } if (monsterEditor.ShowDialog() == DialogResult.OK) { virtualObj = monsterEditor.GetObject(); GenerateMonsterData(virtualObj); } } }
/* * private void RenderPostTiles(Graphics g) * { * if (MapInterface.CurrentMode == EditMode.FLOOR_PLACE && MapEditorSettings.DrawTextured) * { * Point point = MapView.GetNearestTilePoint(mapView.mouseLocation); * // Render the tile being created * if (!Map.Tiles.ContainsKey(point)) * { * Map.Tile tile = mapView.TileMakeNewCtrl.GetTile(point,true); * DrawTexturedTile(g, tile, true); * } * } * } */ private void RenderPostObjects(Graphics g) { if (MapInterface.CurrentMode == EditMode.OBJECT_PLACE && !mapView.picking) { string obj = mapView.cboObjCreate.Text; if (ThingDb.Things.ContainsKey(obj)) { Point pt = mapView.mouseLocation; Point ptAligned = pt; if (EditorSettings.Default.Edit_SnapGrid || ThingDb.Things[obj].Xfer == "DoorXfer") { ptAligned = new Point((int)Math.Round((decimal)(pt.X / squareSize)) * squareSize, (int)Math.Round((decimal)(pt.Y / squareSize)) * squareSize); } if (EditorSettings.Default.Edit_SnapHalfGrid) { ptAligned = new Point((int)Math.Round((decimal)((pt.X / (squareSize)) * squareSize) + squareSize / 2), (int)Math.Round((decimal)((pt.Y / (squareSize)) * squareSize) + squareSize / 2)); } if (EditorSettings.Default.Edit_SnapCustom) { int snap = (int)mapView.customSnapValue.Value; ptAligned = new Point((int)Math.Round((decimal)(pt.X / snap)) * snap, (int)Math.Round((decimal)(pt.Y / snap)) * snap); } Map.Object result = new Map.Object(); result.Name = obj; result.Location = ptAligned; if (ThingDb.Things[obj].Xfer == "DoorXfer") { //XferEditor editor = XferEditors.GetEditorForXfer(ThingDb.Things[obj].Xfer); //if (editor != null) editor.SetDefaultData(result); //else result.NewDefaultExtraData(); result.NewDefaultExtraData(); NoxShared.ObjDataXfer.DoorXfer door = result.GetExtraData <NoxShared.ObjDataXfer.DoorXfer>(); int delta = (int)mapView.delta; door.Direction = (NoxShared.ObjDataXfer.DoorXfer.DOORS_DIR)delta; } else if (ThingDb.Things[obj].Xfer == "MonsterXfer") { result.NewDefaultExtraData(); NoxShared.ObjDataXfer.MonsterXfer monster = result.GetExtraData <NoxShared.ObjDataXfer.MonsterXfer>(); int delta = (int)mapView.delta; monster.DirectionId = (byte)delta; } else if (ThingDb.Things[obj].Xfer == "NPCXfer") { result.NewDefaultExtraData(); NoxShared.ObjDataXfer.NPCXfer npc = result.GetExtraData <NoxShared.ObjDataXfer.NPCXfer>(); int delta = (int)mapView.delta; npc.DirectionId = (byte)delta; } else if (ThingDb.Things[obj].Xfer == "SentryXfer") { result.NewDefaultExtraData(); NoxShared.ObjDataXfer.SentryXfer s = result.GetExtraData <NoxShared.ObjDataXfer.SentryXfer>(); float delta = mapView.delta; s.BasePosRadian = (float)delta; } List <Map.Object> listone = new List <Map.Object>(); listone.Add(result); objectRenderer.TheHell(g, listone); } } }
public virtual void SetDefaultData(Map.Object obj) { obj.NewDefaultExtraData(); }