mirror of
https://github.com/TorqueGameEngines/Torque3D.git
synced 2026-01-19 20:24:49 +00:00
ai test classes
protoplayer protocar
This commit is contained in:
parent
78a553a74f
commit
c2b347af7c
|
|
@ -4,3 +4,58 @@ datablock ItemData(PrototypeItemData)
|
|||
ShapeAsset = "Prototyping:TorusPrimitive_shape";
|
||||
cameraMaxDist = "0.75";
|
||||
};
|
||||
|
||||
datablock PlayerData( ProtoPlayer ) {
|
||||
// Third person shape
|
||||
ShapeAsset = "Prototyping:Playerbot_shape";
|
||||
controlMap = "playerKeyMap";
|
||||
AIControllerData = "aiPlayerControl";
|
||||
};
|
||||
|
||||
datablock WheeledVehicleTire(ProtoCarTire)
|
||||
{
|
||||
// Tires act as springs and generate lateral and longitudinal
|
||||
// forces to move the vehicle. These distortion/spring forces
|
||||
// are what convert wheel angular velocity into forces that
|
||||
// act on the rigid body.
|
||||
shapeAsset = "Prototyping:carwheel_shape";
|
||||
|
||||
staticFriction = 1;
|
||||
kineticFriction = 4.2;
|
||||
|
||||
// Spring that generates lateral tire forces
|
||||
lateralForce = 150000;
|
||||
lateralDamping = 30000;
|
||||
lateralRelaxation = 0.1;
|
||||
|
||||
// Spring that generates longitudinal tire forces
|
||||
longitudinalForce = 600;
|
||||
longitudinalDamping = 1600;
|
||||
longitudinalRelaxation = 0.1;
|
||||
};
|
||||
|
||||
datablock WheeledVehicleSpring(ProtoCarSpring)
|
||||
{
|
||||
// Wheel suspension properties
|
||||
length = "0.6"; // Suspension travel
|
||||
force = 3600; // Spring force
|
||||
damping = 2800; // Spring damping
|
||||
antiSwayForce = 300; // Lateral anti-sway force
|
||||
};
|
||||
|
||||
datablock WheeledVehicleData(ProtoCar)
|
||||
{
|
||||
category = "Vehicles";
|
||||
shapeAsset = "Prototyping:car_shape";
|
||||
|
||||
collisionMul = 0;
|
||||
impactMul = 0;
|
||||
controlMap = "vehicleKeyMap";
|
||||
AIControllerData = "aiCarControl";
|
||||
cameraMaxDist = "2.81993";
|
||||
ShapeFile = "data/Prototyping/shapes/Vehicles/car.dae";
|
||||
mass = "1000";
|
||||
originalAssetName = "ProtoCar";
|
||||
massCenter = "0 0.75 0";
|
||||
dragForce = "0.1";
|
||||
};
|
||||
|
|
|
|||
|
|
@ -0,0 +1,47 @@
|
|||
//-----------------------------------------------------------------------------
|
||||
// Copyright (c) 2012 GarageGames, LLC
|
||||
//
|
||||
// Permission is hereby granted, free of charge, to any person obtaining a copy
|
||||
// of this software and associated documentation files (the "Software"), to
|
||||
// deal in the Software without restriction, including without limitation the
|
||||
// rights to use, copy, modify, merge, publish, distribute, sublicense, and/or
|
||||
// sell copies of the Software, and to permit persons to whom the Software is
|
||||
// furnished to do so, subject to the following conditions:
|
||||
//
|
||||
// The above copyright notice and this permission notice shall be included in
|
||||
// all copies or substantial portions of the Software.
|
||||
//
|
||||
// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
||||
// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
||||
// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
||||
// AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
||||
// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
|
||||
// FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS
|
||||
// IN THE SOFTWARE.
|
||||
//-----------------------------------------------------------------------------
|
||||
|
||||
// This file contains script methods unique to the WheeledVehicle class. All
|
||||
// other necessary methods are contained in "../server/scripts/vehicle.cs" in
|
||||
// which the "generic" Vehicle class methods that are shared by all vehicles,
|
||||
// (flying, hover, and wheeled) can be found.
|
||||
|
||||
function ProtoCar::onAdd(%this, %obj)
|
||||
{
|
||||
Parent::onAdd(%this, %obj);
|
||||
|
||||
// Setup the car with some tires & springs
|
||||
for (%i = %obj.getWheelCount() - 1; %i >= 0; %i--)
|
||||
{
|
||||
%obj.setWheelTire(%i, ProtoCarTire);
|
||||
%obj.setWheelSpring(%i, ProtoCarSpring);
|
||||
%obj.setWheelPowered(%i, false);
|
||||
}
|
||||
|
||||
// Steer with the front tires
|
||||
%obj.setWheelSteering(0, 1);
|
||||
%obj.setWheelSteering(1, 1);
|
||||
|
||||
// Only power the two rear wheels... assuming there are only 4 wheels.
|
||||
%obj.setWheelPowered(2, true);
|
||||
%obj.setWheelPowered(3, true);
|
||||
}
|
||||
Loading…
Reference in a new issue