mirror of
https://github.com/TorqueGameEngines/Torque3D.git
synced 2026-07-14 16:14:38 +00:00
cleanup
Clean out the link vars and functions from guinaveditorctrl its now handled by the tool offmeshcontool: Add ability to continue to draw from the last links end point holding shift
This commit is contained in:
parent
2df2cb5c15
commit
a0b4b8627f
3 changed files with 12 additions and 57 deletions
|
|
@ -61,8 +61,6 @@ GuiNavEditorCtrl::GuiNavEditorCtrl()
|
||||||
mMesh = NULL;
|
mMesh = NULL;
|
||||||
mPlayer = mCurPlayer = NULL;
|
mPlayer = mCurPlayer = NULL;
|
||||||
mSpawnClass = mSpawnDatablock = "";
|
mSpawnClass = mSpawnDatablock = "";
|
||||||
mLinkStart = Point3F::Max;
|
|
||||||
mLink = mCurLink = -1;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
GuiNavEditorCtrl::~GuiNavEditorCtrl()
|
GuiNavEditorCtrl::~GuiNavEditorCtrl()
|
||||||
|
|
@ -118,6 +116,9 @@ void GuiNavEditorCtrl::selectMesh(NavMesh *mesh)
|
||||||
{
|
{
|
||||||
mesh->setSelected(true);
|
mesh->setSelected(true);
|
||||||
mMesh = mesh;
|
mMesh = mesh;
|
||||||
|
|
||||||
|
if (mTool)
|
||||||
|
mTool->setActiveNavMesh(mMesh);
|
||||||
}
|
}
|
||||||
|
|
||||||
DefineEngineMethod(GuiNavEditorCtrl, selectMesh, void, (S32 id),,
|
DefineEngineMethod(GuiNavEditorCtrl, selectMesh, void, (S32 id),,
|
||||||
|
|
@ -156,8 +157,6 @@ void GuiNavEditorCtrl::deselect()
|
||||||
mMesh->setSelected(false);
|
mMesh->setSelected(false);
|
||||||
mMesh = NULL;
|
mMesh = NULL;
|
||||||
mPlayer = mCurPlayer = NULL;
|
mPlayer = mCurPlayer = NULL;
|
||||||
mLinkStart = Point3F::Max;
|
|
||||||
mLink = mCurLink = -1;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
DefineEngineMethod(GuiNavEditorCtrl, deselect, void, (),,
|
DefineEngineMethod(GuiNavEditorCtrl, deselect, void, (),,
|
||||||
|
|
@ -166,37 +165,6 @@ DefineEngineMethod(GuiNavEditorCtrl, deselect, void, (),,
|
||||||
object->deselect();
|
object->deselect();
|
||||||
}
|
}
|
||||||
|
|
||||||
void GuiNavEditorCtrl::deleteLink()
|
|
||||||
{
|
|
||||||
if(!mMesh.isNull() && mLink != -1)
|
|
||||||
{
|
|
||||||
mMesh->selectLink(mLink, false);
|
|
||||||
mMesh->deleteLink(mLink);
|
|
||||||
mLink = -1;
|
|
||||||
Con::executef(this, "onLinkDeselected");
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
DefineEngineMethod(GuiNavEditorCtrl, deleteLink, void, (),,
|
|
||||||
"@brief Delete the currently selected link.")
|
|
||||||
{
|
|
||||||
object->deleteLink();
|
|
||||||
}
|
|
||||||
|
|
||||||
void GuiNavEditorCtrl::setLinkFlags(const LinkData &d)
|
|
||||||
{
|
|
||||||
if(mMode == mLinkMode && !mMesh.isNull() && mLink != -1)
|
|
||||||
{
|
|
||||||
mMesh->setLinkFlags(mLink, d);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
DefineEngineMethod(GuiNavEditorCtrl, setLinkFlags, void, (U32 flags),,
|
|
||||||
"@Brief Set jump and drop properties of the selected link.")
|
|
||||||
{
|
|
||||||
object->setLinkFlags(LinkData(flags));
|
|
||||||
}
|
|
||||||
|
|
||||||
void GuiNavEditorCtrl::spawnPlayer(const Point3F &pos)
|
void GuiNavEditorCtrl::spawnPlayer(const Point3F &pos)
|
||||||
{
|
{
|
||||||
SceneObject *obj = (SceneObject*)Sim::spawnObject(mSpawnClass, mSpawnDatablock);
|
SceneObject *obj = (SceneObject*)Sim::spawnObject(mSpawnClass, mSpawnDatablock);
|
||||||
|
|
@ -511,20 +479,6 @@ void GuiNavEditorCtrl::renderScene(const RectI & updateRect)
|
||||||
if (mTool)
|
if (mTool)
|
||||||
mTool->onRender3D();
|
mTool->onRender3D();
|
||||||
|
|
||||||
if(mMode == mLinkMode)
|
|
||||||
{
|
|
||||||
if(mLinkStart != Point3F::Max)
|
|
||||||
{
|
|
||||||
GFXStateBlockDesc desc;
|
|
||||||
desc.setBlend(false);
|
|
||||||
desc.setZReadWrite(true ,true);
|
|
||||||
MatrixF linkMat(true);
|
|
||||||
linkMat.setPosition(mLinkStart);
|
|
||||||
Point3F scale(0.8f, 0.8f, 0.8f);
|
|
||||||
GFX->getDrawUtil()->drawTransform(desc, linkMat, &scale);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
if(mMode == mTestMode)
|
if(mMode == mTestMode)
|
||||||
{
|
{
|
||||||
if(!mCurPlayer.isNull())
|
if(!mCurPlayer.isNull())
|
||||||
|
|
|
||||||
|
|
@ -139,13 +139,6 @@ protected:
|
||||||
/// The active tool in used by the editor.
|
/// The active tool in used by the editor.
|
||||||
SimObjectPtr<NavMeshTool> mTool;
|
SimObjectPtr<NavMeshTool> mTool;
|
||||||
|
|
||||||
/// @name Link mode
|
|
||||||
/// @{
|
|
||||||
|
|
||||||
Point3F mLinkStart;
|
|
||||||
S32 mCurLink;
|
|
||||||
S32 mLink;
|
|
||||||
|
|
||||||
/// @}
|
/// @}
|
||||||
|
|
||||||
/// @name Tile mode
|
/// @name Tile mode
|
||||||
|
|
|
||||||
|
|
@ -67,7 +67,12 @@ void OffMeshConnectionTool::on3DMouseDown(const Gui3DMouseEvent& evt)
|
||||||
{
|
{
|
||||||
mLink = mNavMesh->addLink(mLinkStart, ri.point, mBiDir);
|
mLink = mNavMesh->addLink(mLinkStart, ri.point, mBiDir);
|
||||||
mNavMesh->selectLink(mLink, true, false);
|
mNavMesh->selectLink(mLink, true, false);
|
||||||
mLinkStart = Point3F::Max;
|
|
||||||
|
if (shift)
|
||||||
|
mLinkStart = ri.point;
|
||||||
|
else
|
||||||
|
mLinkStart = Point3F::Max;
|
||||||
|
|
||||||
Con::executef(this, "onLinkSelected", Con::getIntArg(mLinkCache.getFlags()), Con::getBoolArg(mBiDir));
|
Con::executef(this, "onLinkSelected", Con::getIntArg(mLinkCache.getFlags()), Con::getBoolArg(mBiDir));
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
|
|
@ -156,6 +161,9 @@ bool OffMeshConnectionTool::updateGuiInfo()
|
||||||
String text;
|
String text;
|
||||||
text = "LMB To Select Link. CTRL+LMB To Delete Link";
|
text = "LMB To Select Link. CTRL+LMB To Delete Link";
|
||||||
|
|
||||||
|
if (mLinkStart != Point3F::Max)
|
||||||
|
text = "LinkStarted: LMB To place End Point. Hold Left Shift to start a new Link from the end point.";
|
||||||
|
|
||||||
if (statusbar)
|
if (statusbar)
|
||||||
Con::executef(statusbar, "setInfo", text.c_str());
|
Con::executef(statusbar, "setInfo", text.c_str());
|
||||||
|
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue