Browse Source

ObjectBuilderGui augs
1) adds a buildAIPlayer entry so we can tag it as a bot while still using the normal playerdata datablock
2) adds a "contol?" tickbox for player, and the 3 vehicle types when spawning one that will put the editor directly into control on creation

AzaezelX 1 year ago
parent
commit
fb6ec7bb6e

+ 43 - 0
Templates/BaseGame/game/tools/worldEditor/gui/objectBuilderGui.ed.gui

@@ -969,6 +969,10 @@ function ObjectBuilderGui::processNewObject(%this, %obj)
    if ( !isObject( %obj ) )
       return;
       
+   %controlMask = $TypeMasks::PlayerObjectType | $TypeMasks::VehicleObjectType;
+   if (%obj.control)
+    localClientConnection.setControlobject(%obj);
+    
    // Add the object to the group.
    if( %this.objectGroup !$= "" )
       %this.objectGroup.add( %obj );
@@ -1459,6 +1463,45 @@ function ObjectBuilderGui::buildPlayerDropPoint(%this)
    %this.process();
 }
 
+function ObjectBuilderGui::buildPlayer(%this)
+{
+   %this.objectClassName = "Player";
+   %this.addField("dataBlock",    "TypeDataBlock", "dataBlock",   "PlayerData");
+   %this.addField("control", "TypeBool", "control?", "false");
+   %this.process();
+}
+
+function ObjectBuilderGui::buildAIPlayer(%this)
+{
+   %this.objectClassName = "AIPlayer";
+   %this.addField("dataBlock",    "TypeDataBlock", "dataBlock",   "PlayerData");
+   %this.process();
+}
+
+function ObjectBuilderGui::buildWheeledVehicle(%this)
+{
+   %this.objectClassName = "Player";
+   %this.addField("dataBlock",    "TypeDataBlock", "dataBlock",   "WheeledVehicleData");
+   %this.addField("control", "TypeBool", "control?", "false");
+   %this.process();
+}
+
+function ObjectBuilderGui::buildHoverVehicle(%this)
+{
+   %this.objectClassName = "Player";
+   %this.addField("dataBlock",    "TypeDataBlock", "dataBlock",   "HoverVehicleData");
+   %this.addField("control", "TypeBool", "control?", "false");
+   %this.process();
+}
+
+function ObjectBuilderGui::buildFlyingVehicle(%this)
+{
+   %this.objectClassName = "Player";
+   %this.addField("dataBlock",    "TypeDataBlock", "dataBlock",   "FlyingVehicleData");
+   %this.addField("control", "TypeBool", "control?", "false");
+   %this.process();
+}
+
 function ObjectBuilderGui::buildObserverDropPoint(%this)
 {
    %this.objectClassName = "SpawnSphere";