public void ToggleFullScreen() { m_bFullScreen = !m_bFullScreen; m_parent.SetFullScreen(m_bFullScreen); SetFullScreen(m_bFullScreen); SceneSceneEditor.SetFullScreen(m_bFullScreen ? 1 : 0); }
private void buttonJmpToTree_Click(object sender, EventArgs e) { int entityCount = -1; SceneSceneEditor.GetSelectedEntityCount(ref entityCount); if (entityCount != 1) { MessageBox.Show("不能选择2个或以上的对象来使用此功能。"); return; } int iLogicObjPtr = 0; string objTypeName = string.Empty; m_doc.DocLogical.GetSelectedLogicObjPtr(0, ref iLogicObjPtr, ref objTypeName); switch (objTypeName) { case "LogicalPoly": ToSelectPoly(iLogicObjPtr); break; default: break; } }
/// <summary> /// 将摄像机移动到对象所在的位置 /// </summary> /// <param name="objectInfo">对象信息</param> private void MoveCameraToObject(_AtlObjInfo objectInfo) { // 移动镜头 Hashtable infoTable = Helper.GetInfoTable(objectInfo); string positionStr = infoTable["vPosition"] as string; if (positionStr != null) // 有效的坐标 { string[] positionData = positionStr.Split(new char[] { ',' }); float positionX = float.Parse(positionData[0]); float positionY = float.Parse(positionData[1]); float positionZ = float.Parse(positionData[2]); _AtlVector3 objPos = new _AtlVector3(); objPos.x = positionX; objPos.y = positionY; objPos.z = positionZ; _AtlVector3 oldpos = new _AtlVector3(), oldlookat = new _AtlVector3(); SceneSceneEditor.GetCameraPosLookat(ref oldpos, ref oldlookat); _AtlVector3 delta = new _AtlVector3(); delta.x = oldlookat.x - oldpos.x; delta.y = oldlookat.y - oldpos.y; delta.z = oldlookat.z - oldpos.z; _AtlVector3 newpos = new _AtlVector3(); newpos.x = objPos.x - delta.x; newpos.y = objPos.y - delta.y; newpos.z = objPos.z - delta.z; SceneSceneEditor.SetCameraLocation(newpos.x, newpos.y, newpos.z, objPos.x, objPos.y, objPos.z); } }
private void buttonDel_Click(object sender, EventArgs e) // 删除 { if (this.advTreePoly.SelectedNode == null) { MessageBox.Show("未选中任何结点"); return; } _AtlObjInfo selectedinfo = (_AtlObjInfo)this.advTreePoly.SelectedNode.Tag; if (this.advTreePoly.SelectedNode.Parent.Text == "多边形") { //m_doc.DocLogical.DeleteSelectedPoly(); m_doc.DocLogical.DeleteSelectedObject(); //this.advTreePoly.SelectedNode.Remove(); } else if (this.advTreePoly.SelectedNode.Parent.Text == "笔刷") { int iMask = Convert.ToInt32(selectedinfo.strValues[4]); if (iMask != 0) { SceneSceneEditor.DeleteCurrentCellInfo(); int iID = Convert.ToInt32(selectedinfo.strValues[0]); m_doc.DocLogical.DeleteOneLogicalBrush(iID); this.advTreePoly.Nodes.Remove(this.advTreePoly.SelectedNode); this.advTreePoly.SelectedNode.Remove(); } } }
/// <summary> /// 检查当前选中的对象是否能够旋转 ahpho suntao /// </summary> /// <returns>是否能够旋转</returns> private bool CheckObjectCanRotate() { bool canRotate = true; int entityCount = 0; SceneSceneEditor.GetSelectedEntityCount(ref entityCount); _AtlObjInfo[] objInfoArray = new _AtlObjInfo[entityCount]; for (int i = 0; i < entityCount; i++) { string objectType = objInfoArray[i].strType; if (objectType == "NPC" || objectType == "Doodad") { ; } else { canRotate = false; break; } } return(canRotate); }
private void SetLogicSceneEditorBrushState(_AtlObjInfo atlobj) { SceneSceneEditor.SetEditState(SCENESTATE_CELLLOGICAL); SceneSceneEditor.ClearLogicModifyState(); SceneSceneEditor.SetLogicModifyState(Convert.ToInt32(atlobj.strValues[4]), atlobj.strValues[3]); SceneSceneEditor.SetLogicCurrentColor(stringToColor(atlobj.strValues[1])); SceneSceneEditor.SetCurrentEditBrushIndex(Convert.ToInt32(atlobj.strValues[0])); }
private void buttonOK_Click(object sender, EventArgs e) { if (this.advTreePoly.SelectedNode == null || this.advTreePoly.SelectedNode.Level != 1) { MessageBox.Show("未选中任何多边形/笔刷结点"); return; } _AtlObjInfo selectedinfo = (_AtlObjInfo)this.advTreePoly.SelectedNode.Tag; if (this.advTreePoly.SelectedNode.Parent.Text == "多边形") { selectedinfo.strValues[0] = this.textBoxScript.Text; selectedinfo.strValues[5] = this.textBoxHeight.Text; int iNewMask = 0 + (this.checkBoxBlock.Checked ? LSTATE_BLOCKCHARACTER : 0) + (this.checkBoxPut.Checked ? LSTATE_PUTOBJECT : 0) + (this.checkBoxStall.Checked ? LSTATE_STALL : 0) + (this.checkBoxIndoor.Checked ? LSTATE_INDOOR : 0) + (this.checkBoxRest.Checked ? LSTATE_REST : 0) + (this.checkBoxRideHorse.Checked ? LSTATE_RIDEHORSE : 0); selectedinfo.strValues[3] = iNewMask.ToString(); selectedinfo.strValues[1] = this.textLogicName.Text; selectedinfo.strValues[4] = this.colorPicker.Style.BackColor1.Color.ToArgb().ToString(); SaveLogicInfoUI((_AtlObjInfo)this.advTreePoly.SelectedNode.Tag); } else if (this.advTreePoly.SelectedNode.Parent.Text == "笔刷") { int oldMask = Convert.ToInt32(selectedinfo.strValues[4]); string oldScript = selectedinfo.strValues[3]; selectedinfo.strValues[3] = this.textBoxScript.Text; //selectedinfo.strValues[5] = this.textBoxHeight.Text; int iNewMask = 0 + (this.checkBoxBlock.Checked ? LSTATE_BLOCKCHARACTER : 0) + (this.checkBoxPut.Checked ? LSTATE_PUTOBJECT : 0) + (this.checkBoxStall.Checked ? LSTATE_STALL : 0) + (this.checkBoxIndoor.Checked ? LSTATE_INDOOR : 0) + (this.checkBoxRest.Checked ? LSTATE_REST : 0) + (this.checkBoxRideHorse.Checked ? LSTATE_RIDEHORSE : 0); selectedinfo.strValues[4] = iNewMask.ToString(); selectedinfo.strValues[2] = this.textLogicName.Text; selectedinfo.strValues[1] = this.colorPicker.Style.BackColor1.Color.ToArgb().ToString(); SaveLogicInfoUI((_AtlObjInfo)this.advTreePoly.SelectedNode.Tag); SceneSceneEditor.SetLogicCurrentColor(stringToColor(selectedinfo.strValues[1])); // 中途更新笔刷数据,要把原来刷的也改了,不然会有问题。 SceneSceneEditor.ModifyCurrentCellInfo(SceneSceneEditor.TransToEngineFormat(oldMask), SceneSceneEditor.TransToEngineFormat(iNewMask), oldScript, selectedinfo.strValues[3]); SetLogicSceneEditorBrushState(selectedinfo); } this.advTreePoly.SelectedNode.Text = string.Format("{0}{1}", this.textLogicName.Text, this.textBoxScript.Text.Length > 0 ? " [√]" : string.Empty); this.buttonOK.Enabled = false; }
/// <summary> /// 获取摄像机坐标 ahpho suntao /// </summary> /// <returns>摄像机坐标字符串</returns> private string GetCameraLookAt() { _AtlVector3 cameraLocation = new _AtlVector3(); _AtlVector3 cameraLookAt = new _AtlVector3(); SceneSceneEditor.GetCameraPosLookat(ref cameraLocation, ref cameraLookAt); string cameraLookAtString = string.Format("{0},{1},{2}", (int)cameraLookAt.x, (int)cameraLookAt.y, (int)cameraLookAt.z); return(cameraLookAtString); }
private void buttonBuildPoly_Click(object sender, EventArgs e) // build 多边形 { BuildPolyForm bpf = new BuildPolyForm(); DialogResult dr = bpf.ShowDialog(); if (dr == DialogResult.OK) { SceneSceneEditor.BuildPolyAndSetInHand(bpf.m_nVergeNum, bpf.m_fRadius, bpf.m_fHeight, bpf.m_fDegree); } }
private void MoveCameraToPosition(_AtlVector3 newPos) { _AtlVector3 oldpos = new _AtlVector3(), oldlookat = new _AtlVector3(); SceneSceneEditor.GetCameraPosLookat(ref oldpos, ref oldlookat); _AtlVector3 delta = new _AtlVector3(); delta.x = oldlookat.x - oldpos.x; delta.y = oldlookat.y - oldpos.y; delta.z = oldlookat.z - oldpos.z; _AtlVector3 newpos = new _AtlVector3(); newpos.x = newPos.x - delta.x; newpos.y = newPos.y - delta.y; newpos.z = newPos.z - delta.z; SceneSceneEditor.SetCameraPosLookat(ref newpos, ref newPos); }
private void LogicBrushParamsChanged(object sender, EventArgs e) // 笔刷参数改变 { this.sliderBrushRadius.Text = this.sliderBrushRadius.Value.ToString(); this.sliderDisplayWidth.Text = this.sliderDisplayWidth.Value.ToString(); this.sliderBrushHeight.Text = this.sliderBrushHeight.Value.ToString(); int brushradius = this.sliderBrushRadius.Value; int brushtype = this.radioRect.Checked ? 1 : 0; int displaywidth = this.sliderDisplayWidth.Value; int brushheight = this.sliderBrushHeight.Value; SceneSceneEditor.SetLogicBrushParams(brushradius, brushtype, displaywidth, brushheight); }
private void LogicDisplayParamsChanged(object sender, EventArgs e) // 逻辑显示参数 { if ((sender as DevComponents.DotNetBar.Controls.CheckBoxX) == this.checkShowLogicCell) { this.checkShowTerrainCell.Enabled = this.checkShowItemCell.Enabled = checkShowSelectedCell.Enabled = this.checkShowLogicCell.Checked; } int showcell = this.checkShowLogicCell.Checked ? 1 : 0; int showterrain = this.checkShowTerrainCell.Checked ? 1 : 0; int showitem = this.checkShowItemCell.Checked ? 1 : 0; int showselected = this.checkShowSelectedCell.Checked ? 1 : 0; SceneSceneEditor.GetSetLogicDisplayParams(0, ref showcell, ref showterrain, ref showitem, ref showselected); }
/// <summary> /// 编辑分组 ahpho suntao /// </summary> private void EditGroup() { int entityCount = -1; SceneSceneEditor.GetSelectedEntityCount(ref entityCount); List <_AtlObjInfo> objectInfoList = new List <_AtlObjInfo>(); string objectType = ""; for (int i = 0; i < entityCount; i++) { int iLogicObjPtr = 0; string objTypeName = string.Empty; m_doc.DocLogical.GetSelectedLogicObjPtr(i, ref iLogicObjPtr, ref objTypeName); _AtlObjInfo atlinfo = new _AtlObjInfo(); atlinfo.bChanged = 1; atlinfo.iLogicObjPtr = iLogicObjPtr; //_AtlObjInfo中要储存iLogicObjPtr entityPtr,方便C#对话框保存时 直接exchange去docLogical, //再用iLogicObjPtr之逻辑更新entityPtr指向的表现。 m_doc.DocLogical.GetSetObjInfo(objTypeName, ref atlinfo, iLogicObjPtr, 1); if (objectType == "") { objectType = atlinfo.strType; objectInfoList.Add(atlinfo); } else { if (atlinfo.strType == objectType) { objectInfoList.Add(atlinfo); } } } if (entityCount > 0) { GroupForm gForm = new GroupForm(); gForm.CurrentBaseDoc = m_doc; gForm.ObjectType = objectType; gForm.ObjectInfoList = objectInfoList; gForm.Init(); gForm.ShowDialog(); } else { MessageBox.Show("请先选择要设置分组的对象!", "设置分组", MessageBoxButtons.OK, MessageBoxIcon.Information); } }
/// <summary> /// 旋转选中的部件 /// </summary> private void RotateSelectedObject() { string newRotation = null; SceneSceneEditor.RotateSelectedObject(ref newRotation); if (newRotation != null) // 已经改变朝向 { string[] rotations = newRotation.Split(new char[] { ';' }, StringSplitOptions.RemoveEmptyEntries); int entityCount = -1; SceneSceneEditor.GetSelectedEntityCount(ref entityCount); _AtlObjInfo[] objinfos = new _AtlObjInfo[entityCount]; for (int i = 0; i < entityCount; i++) { int iLogicObjPtr = 0; string objTypeName = string.Empty; m_doc.DocLogical.GetSelectedLogicObjPtr(i, ref iLogicObjPtr, ref objTypeName); _AtlObjInfo atlinfo = new _AtlObjInfo(); atlinfo.bChanged = 1; atlinfo.iLogicObjPtr = iLogicObjPtr; //_AtlObjInfo中要储存iLogicObjPtr entityPtr,方便C#对话框保存时 直接exchange去docLogical, //再用iLogicObjPtr之逻辑更新entityPtr指向的表现。 m_doc.DocLogical.GetSetObjInfo(objTypeName, ref atlinfo, iLogicObjPtr, 1); objinfos[i] = atlinfo; // 写入新的旋转角度信息 for (int j = 0; j < atlinfo.iFieldsCount; j++) { if (atlinfo.strFields[j] == "vRotation") { atlinfo.strValues[j] = newRotation; } else if (atlinfo.strFields[j] == "nFaceDirection") { atlinfo.strValues[j] = ConvertRotationToDirection(rotations[i]); } } // 更新对象数据 m_doc.DocLogical.GetSetObjInfo(atlinfo.strType, ref atlinfo, atlinfo.iLogicObjPtr, 0); m_doc.DocLogical.UpdateObjRepresentByLogicObj(ref atlinfo, atlinfo.iLogicObjPtr); } } }
/// <summary> /// 删除选中的对象 /// </summary> private void DeleteSelectedObject() { int entityCount = -1; SceneSceneEditor.GetSelectedEntityCount(ref entityCount); if (entityCount > 0) { DialogResult dialogResult = MessageBox.Show("确定要删除选中的对象吗?", "删除对象", MessageBoxButtons.OKCancel, MessageBoxIcon.Information); if (dialogResult == DialogResult.OK) { //m_doc.DocLogical.DeleteSelectedObject(); SceneSceneEditor.DeleteSelectedEntity(); RefreshPatrol(); RefreshTraffic(); } } }
private void MoveCameraToRepresentObj(int representObjPtr) { _AtlVector3 objPos = new _AtlVector3(); EngineLayer.ATLBase.GetRepresentObjTranslation(representObjPtr, ref objPos); MoveCameraToPosition(objPos); //_AtlVector3 oldpos = new _AtlVector3(), oldlookat = new _AtlVector3(); //SceneSceneEditor.GetCameraPosLookat(ref oldpos, ref oldlookat); //_AtlVector3 delta = new _AtlVector3(); //delta.x = oldlookat.x - oldpos.x; delta.y = oldlookat.y - oldpos.y; delta.z = oldlookat.z - oldpos.z; //_AtlVector3 newpos = new _AtlVector3(); //newpos.x = objPos.x - delta.x; newpos.y = objPos.y - delta.y; newpos.z = objPos.z - delta.z; //SceneSceneEditor.SetCameraPosLookat(ref newpos, ref objPos); SceneSceneEditor.UpdateSelectableEntityList(5); }
private void PanelView_GotFocus(object sender, System.EventArgs e) { SceneSceneEditor.SetFocus(); SceneSceneEditor.SetCurrentOutputWindow(VIEW.MAINWINDOWID); // if (m_Scene != null && m_nOutputWindowID != -1) // { // EngineLayer.EngineMgr.SetFocusScene(m_Scene); // m_Scene.SetCurrentOutputWindow(m_nOutputWindowID); // // if (EngineLayer.EngineMgr.GetAutoReloadTexture() != 0) // { // AtlIEKG3DTextureTable textureTable = null; // EngineLayer.EngineMgr.GetIEKG3DTextureTable(ref textureTable); // textureTable.AutoReload(); // } // } }
private void ShowProperties() { int entityCount = -1; SceneSceneEditor.GetSelectedEntityCount(ref entityCount); _AtlObjInfo[] objinfos = new _AtlObjInfo[entityCount]; for (int i = 0; i < entityCount; i++) { int iLogicObjPtr = 0; string objTypeName = string.Empty; m_doc.DocLogical.GetSelectedLogicObjPtr(i, ref iLogicObjPtr, ref objTypeName); if (iLogicObjPtr != 0) { _AtlObjInfo atlinfo = new _AtlObjInfo(); atlinfo.bChanged = 1; atlinfo.iLogicObjPtr = iLogicObjPtr; //_AtlObjInfo中要储存iLogicObjPtr entityPtr,方便C#对话框保存时 直接exchange去docLogical, //再用iLogicObjPtr之逻辑更新entityPtr指向的表现。 m_doc.DocLogical.GetSetObjInfo(objTypeName, ref atlinfo, iLogicObjPtr, 1); objinfos[i] = atlinfo; } else { //objinfos[i] = _AtlObjInfo; 自定义valueType如何定义empty } } if (EditSelectedObjectsProperty(objinfos)) { for (int i = 0; i < objinfos.Length; i++) { _AtlObjInfo objinfo = objinfos[i]; //if (objinfo.bChanged != 0) //{ m_doc.DocLogical.GetSetObjInfo(objinfo.strType, ref objinfo, objinfo.iLogicObjPtr, 0); m_doc.DocLogical.UpdateObjRepresentByLogicObj(ref objinfo, objinfo.iLogicObjPtr); //} } } }
/// <summary> /// 设置相机坐标 ahpho suntao /// </summary> /// <param name="x">x坐标</param> /// <param name="y">y坐标</param> /// <param name="z">z坐标</param> public void SetCameraFocus(int x, int y, int z) { _AtlVector3 cameraLocation = new _AtlVector3(); _AtlVector3 cameraLookAt = new _AtlVector3(); _AtlVector3 delta = new _AtlVector3(); SceneSceneEditor.GetCameraPosLookat(ref cameraLocation, ref cameraLookAt); delta.x = cameraLookAt.x - cameraLocation.x; delta.y = cameraLookAt.y - cameraLocation.y; delta.z = cameraLookAt.z - cameraLocation.z; cameraLookAt.x = x; cameraLookAt.y = y; cameraLookAt.z = z; cameraLocation.x = x - delta.x; cameraLocation.y = y - delta.y; cameraLocation.z = z - delta.z; SceneSceneEditor.SetCameraPosLookat(ref cameraLocation, ref cameraLookAt); }
private void checkBoxX1_CheckedChanged(object sender, EventArgs e) // 显示多边形 { SceneSceneEditor.EnableRenderPoly((sender as DevComponents.DotNetBar.Controls.CheckBoxX).Checked ? 1 : 0); }
private void BaseForm_KeyDown(object sender, KeyEventArgs e) { if (e.Shift) { m_shiftPress = true; } if (e.Control) { m_ctrlPress = true; } if (!(this.ActiveControl is PanelDockContainer) && this.ActiveControl != this.PanelView) { return; } if (!e.Alt && !e.Shift && e.Control && e.KeyCode == Keys.Enter) { ToggleFullScreen(); return; } if (!e.Alt && !e.Shift && !e.Control && e.KeyCode == Keys.P) { TogglePMode(); return; } if (!e.Alt && !e.Shift && !e.Control && e.KeyCode == Keys.T) { ToggleTopView(); return; } if (!e.Alt && !e.Shift && !e.Control && e.KeyCode == Keys.X) { SceneSceneEditor.DropSelectedEntity(); } if (!e.Alt && !e.Shift && !e.Control && e.KeyCode == Keys.Z) { SceneSceneEditor.ZoomToObj(); } if (e.Shift && e.KeyCode >= Keys.F1 && e.KeyCode <= Keys.F1 + CAMERA_STORAGE - 1) { int saveindex = e.KeyCode - Keys.F1; m_bPosSaved[saveindex] = true; SceneSceneEditor.GetCameraPosLookat(ref m_SavedCameraPos[saveindex], ref m_SavedCameraLookat[saveindex]); return; } if (!e.Shift && e.KeyCode >= Keys.F1 && e.KeyCode <= Keys.F1 + CAMERA_STORAGE - 1) { int saveindex = e.KeyCode - Keys.F1; if (m_bPosSaved[saveindex]) { SceneSceneEditor.SetCameraPosLookat(ref m_SavedCameraPos[saveindex], ref m_SavedCameraLookat[saveindex]); } return; } if (!e.Shift && !e.Control && e.KeyCode == Keys.Enter) { ShowProperties(); } switch (e.KeyCode) { case Keys.Oemcomma: { NpcPlayNextAction(); return; } case Keys.OemPeriod: { NpcPlayPreviousAction(); return; } case Keys.G: { EditGroup(); return; } case Keys.Oem1: { editMode = EditMode.None; break; } case Keys.W: { cameraLookAtBox.Text = GetCameraLookAt(); break; } case Keys.S: { cameraLookAtBox.Text = GetCameraLookAt(); break; } case Keys.A: { cameraLookAtBox.Text = GetCameraLookAt(); break; } case Keys.D: { cameraLookAtBox.Text = GetCameraLookAt(); break; } case Keys.Delete: { DeleteSelectedObject(); break; } case Keys.Add: goto case Keys.Oemplus; case Keys.Oemplus: { m_parent.m_sliderCameraSpeed.Value++; m_parent.UpdateCameraSpeedToUI(); break; } case Keys.Subtract: goto case Keys.OemMinus; case Keys.OemMinus: { m_parent.m_sliderCameraSpeed.Value--; m_parent.UpdateCameraSpeedToUI(); break; } } EngineLayer.ATLBase.ProcessMessage((uint)WM_KEYDOWN, e.KeyValue, e.KeyValue); }
private void advTreePoly_AfterNodeSelect(object sender, AdvTreeNodeEventArgs e) { Node selectedNode = this.advTreePoly.SelectedNode; if (selectedNode == null) { return; } if (selectedNode.Level == 0) { if (selectedNode.Text == "笔刷") { SceneSceneEditor.SetEditState(SCENESTATE_CELLLOGICAL); } else if (selectedNode.Text == "多边形") { SceneSceneEditor.SetEditState(SCENESTATE_SELECT); } } else if (selectedNode.Level == 1) { if (selectedNode.Parent.Text == "多边形") { //SceneSceneEditor.SetEditState(SCENESTATE_SELECT); _AtlObjInfo atlobj = (_AtlObjInfo)selectedNode.Tag; ShowPolyInfoUI(atlobj); this.buttonOK.Enabled = false; if (atlobj.iRepresentObjPtr != 0) { if (SceneSceneEditor.GetEditState() != SCENESTATE_PLACEOBJ) { MoveCameraToRepresentObj(atlobj.iRepresentObjPtr); } SelectOnlyRepresentObj(atlobj.iRepresentObjPtr); } } else if (selectedNode.Parent.Text == "笔刷") { _AtlObjInfo atlobj = (_AtlObjInfo)selectedNode.Tag; ShowBrushInfoUI(atlobj); this.buttonOK.Enabled = false; //set camera string strPos = atlobj.strValues[5]; if (strPos != "0.000000,0.000000,0.000000") { string[] strPoses = strPos.Split(new char[] { ',' }, StringSplitOptions.RemoveEmptyEntries); float x = 0.0f, y = 0.0f, z = 0.0f; if (Single.TryParse(strPoses[0], out x) && Single.TryParse(strPoses[1], out y) && Single.TryParse(strPoses[2], out z)) { _AtlVector3 brushPos = new _AtlVector3(); brushPos.x = x; brushPos.y = y; brushPos.z = z; MoveCameraToPosition(brushPos); } } SetLogicSceneEditorBrushState(atlobj); } } }
private void SelectOnlyRepresentObj(int representObjPtr) { SceneSceneEditor.ClearSelectedEntityList(); SceneSceneEditor.AddSelectedRepresentObject(representObjPtr, 1); SceneSceneEditor.SetFirstSelectedKing(); }
public void SetCameraDis(float fDis) { SceneSceneEditor.SetCameraDis(fDis); }
/// <summary> /// 选中的Npc播放下一个动作 ahpho suntao /// </summary> private void NpcPlayNextAction() { SceneSceneEditor.NpcPlayNextAction(); }
public void SetRenderRegionEdge(bool bRenderEdge) { SceneSceneEditor.SetRenderBlockEdge(bRenderEdge?1:0); }
/// <summary> /// 选中的Npc播放上一个动作 ahpho suntao /// </summary> private void NpcPlayPreviousAction() { SceneSceneEditor.NpcPlayPreviousAction(); }
/// <summary> /// 设置对象选择掩码 /// </summary> /// <param name="mask">掩码</param> public void SetObjectSelectMask(int nMask) { SceneSceneEditor.SetObjectSelectMask((uint)nMask); }
private void PanelView_Resize(object sender, EventArgs e) { SceneSceneEditor.OnResizeWindow(); }
public void TogglePMode() { SceneSceneEditor.TogglePMode(); }