SanAndreasUnity/Assets/Scripts/Behaviours/PedManager.cs

75 lines
2 KiB
C#

using System.Collections.Generic;
using UnityEngine;
namespace SanAndreasUnity.Behaviours
{
public class PedManager : MonoBehaviour
{
public static PedManager Instance { get; private set; }
public GameObject pedPrefab;
public float pedTurnSpeed = 10f;
public bool showPedSpeedometer = true;
public LayerMask groundFindingIgnoredLayerMask = 0;
[Header("Camera")]
public float cameraDistanceFromPed = 3f;
public float minCameraDistanceFromPed = 2f;
public float maxCameraDistanceFromPed = 30f;
public LayerMask cameraRaycastIgnoredLayerMask = 0;
[Header("Damage")]
public float legAndArmDamageMultiplier = 0.8f;
public float stomachAndChestDamageMultiplier = 1.0f;
public float headDamageMultiplier = 4.0f;
public float inflictedDamageMessageVelocityInScreenPerc = 0.2f;
public float inflictedDamageMessageLifetime = 1.0f;
public Color inflictedDamageMessageColor = Color.green;
[Header("Health bar")]
public bool displayHealthBarAbovePeds = false;
public float healthBarWorldWidth = 0.5f;
public float healthBarWorldHeight = 0.1f;
public float healthBarMaxScreenHeight = 20f;
public float healthBarVerticalOffset = 0.3f;
public Color healthColor = Color.red;
public Color healthBackgroundColor = (Color.red + Color.black) * 0.5f;
[Header("Ped AI")]
public float AIStoppingDistance = 3f;
public float AIVehicleEnterDistance = 1.25f;
public float AIOutOfRangeTimeout = 5f;
public float AIOutOfRangeDistance = 250f;
[Header("Net")]
public float pedSyncRate = 10;
[Header("Ragdoll")]
public float ragdollMass = 100f;
public float ragdollLifetime = 30f;
public float ragdollDrag = 0.05f;
public float ragdollMaxDepenetrationVelocity = 10f;
public float ragdollDamageForce = 4f;
public CollisionDetectionMode ragdollCollisionDetectionMode = CollisionDetectionMode.Discrete;
void Awake ()
{
Instance = this;
}
}
}