put AIPlayer support back, and it as the default class to spawn

This commit is contained in:
AzaezelX 2025-04-20 15:29:26 -05:00
parent 185acd23e0
commit 32d95d3b8b
5 changed files with 56 additions and 23 deletions

View file

@ -172,10 +172,10 @@ datablock LightAnimData( SpinLightAnim )
datablock AIPlayerControllerData( aiPlayerControl )
{
moveTolerance = 0.25; followTolerance = 1.0; mAttackRadius = 2;
};
datablock AIWheeledVehicleControllerData( aiCarControl )
{
};
moveTolerance = 1.0; followTolerance = 2.0; mAttackRadius = 5.0;
};

View file

@ -485,7 +485,7 @@ $guiContent = new GuiNavEditorCtrl(NavEditorGui, EditorGuiGroup) {
VertSizing = "bottom";
Extent = "90 18";
text = "Stop";
command = "NavEditorGui.getPlayer().stop();";
command = "NavEditorGui.stop();";
};
};
};

View file

@ -87,7 +87,7 @@ function NavEditorPlugin::onWorldEditorStartup(%this)
// Add ourselves to the Editor Settings window.
exec("./NavEditorSettingsTab.gui");
//ESettingsWindow.addTabPage(ENavEditorSettingsPage);
ESettingsWindow.addTabPage(ENavEditorSettingsPage);
ENavEditorSettingsPage.init();
// Add items to World Editor Creator
@ -241,7 +241,7 @@ function NavEditorPlugin::initSettings(%this)
{
EditorSettings.beginGroup("NavEditor", true);
EditorSettings.setDefaultValue("SpawnClass", "Player");
EditorSettings.setDefaultValue("SpawnClass", "AIPlayer");
EditorSettings.setDefaultValue("SpawnDatablock", "DefaultPlayerData");
EditorSettings.endGroup();

View file

@ -459,13 +459,13 @@ function NavEditorGui::onLinkSelected(%this, %flags)
function NavEditorGui::onPlayerSelected(%this, %flags)
{
if (!isObject(%this.getPlayer().aiController))
if (!isObject(%this.getPlayer().aiController) && (!(%this.getPlayer().isMemberOfClass("AIPlayer"))))
{
%this.getPlayer().aiController = new AIController(){ ControllerData = aiPlayerControl; };
%this.getPlayer().setAIController(%this.getPlayer().aiController);
NavMeshIgnore(%this.getPlayer(), true);
%this.getPlayer().setDamageState("Enabled");
}
NavMeshIgnore(%this.getPlayer(), true);
%this.getPlayer().setDamageState("Enabled");
updateLinkData(NavEditorOptionsWindow-->TestProperties, %flags);
}
@ -559,6 +559,15 @@ function NavEditorGui::followObject(%this)
}
}
function NavEditorGui::stop(%this)
{
if (isObject(%this.getPlayer().aiController))
%this.getPlayer().aiController.stop();
else
{
NavEditorGui.getPlayer().stop();
}
}
function NavInspector::inspect(%this, %obj)
{
%name = "";