Mavrodi
Псевдо Хакер
- Сообщения
- 72
- Реакции
- 27
так как Алюкар немного стал быдлом, я вам дам расшифрованный класс Projectile, думаю что кому то это поможет(хоть и немного)
C#:
public class Projectile : BaseMonoBehaviour // TypeDefIndex: 1253
{
// Fields
public const float projectileSpeed = 0.03125f;
public const float maxDistance = 8.0f;
public Vector3 initialVelocity; // 0x20
public float drag; // 0x2C
public float gravityModifier; // 0x30
public float thickness; // 0x34
public float initialDistance; // 0x38
public bool remainInWorld; // 0x3C
[Range(0, 1)]
public float stickProbability; // 0x40
[Range(0, 1)]
public float breakProbability; // 0x44
[Range(0, 1)]
public float conditionLoss; // 0x48
[Range(0, 1)]
public float ricochetChance; // 0x4C
public float penetrationPower; // 0x50
[Range(0, 1)]
public float waterIntegrityLoss; // 0x54
public DamageProperties damageProperties; // 0x58
[Horizontal(2, -1)]
public MinMax damageDistances; // 0x60
[Horizontal(2, -1)]
public MinMax damageMultipliers; // 0x68
public List<DamageTypeEntry> damageTypes; // 0x70
public ScaleRenderer rendererToScale; // 0x78
public ScaleRenderer firstPersonRenderer; // 0x80
public bool createDecals; // 0x88
public bool doDefaultHitEffects; // 0x89
public SoundDefinition flybySound; // 0x90
public float flybySoundDistance; // 0x98
public SoundDefinition closeFlybySound; // 0xA0
public float closeFlybyDistance; // 0xA8
public float tumbleSpeed; // 0xAC
public Vector3 tumbleAxis; // 0xB0
public Vector3 swimScale; // 0xBC
public Vector3 swimSpeed; // 0xC8
public BasePlayer owner; // 0xD8
public AttackEntity sourceEntity; // 0xE0
public Projectile nextProjectile; // 0xE8
public ItemModProjectile modProjectile; // 0xF0
public int ricochetCount; // 0xF8
public int penetrationCount; // 0xFC
public bool isAlive; // 0x100
public bool isInWater; // 0x101
public float timeAlive; // 0x104
public float waterTime; // 0x108
public Projectile.ProjectileState currentState; // 0x10C
public bool hasHitTarget; // 0x11C
public bool hasStopped; // 0x11D
public float lastHitTime; // 0x120
internal Vector3 lastHitPosition; // 0x124
internal Vector3 lastHitNormal; // 0x130
private float distanceTravelled; // 0x13C
private float maxDistanceTravelled; // 0x140
private float hitStartTime; // 0x144
private Vector3 initialPosition; // 0x148
private Vector3 currentPosition; // 0x154
private Vector3 previousPosition; // 0x160
private float timeSinceLastHit; // 0x16C
private bool isPenetrating; // 0x170
private bool isRicocheting; // 0x171
private bool isColliding; // 0x172
private bool isReflected; // 0x173
private bool hasRicocheted; // 0x174
private Plane collisionPlane; // 0x178
private Ray collisionRay; // 0x188
private Action onCollision; // 0x1A0
private Projectile.Trajectory currentTrajectory; // 0x1A8
private float trajectoryTime; // 0x1B0
private static uint nextProjectileId; // 0x0
private static uint maxProjectiles; // 0x4
private static uint activeProjectiles; // 0x8
// Properties
private bool isExpired { get; }
public bool isInUse { get; }
// Methods
// RVA: 0x8113C0 Offset: 0x80FBC0 VA: 0x1808113C0
private bool ComputeTrajectory(ref uint projectileId, Vector3 start, Vector3 end) { }
// RVA: 0x810E50 Offset: 0x80F650 VA: 0x180810E50
private Quaternion GetRotation(ref uint projectileId, float deltaTime) { }
// RVA: 0x80D140 Offset: 0x80B940 VA: 0x18080D140
protected void OnDisable() { }
// RVA: 0x810DC0 Offset: 0x80F5C0 VA: 0x180810DC0
public static bool IsValid(string projectileType) { }
// RVA: 0x80FFE0 Offset: 0x80E7E0 VA: 0x18080FFE0
private void Start() { }
// RVA: 0x811930 Offset: 0x810130 VA: 0x180811930
protected void Update() { }
// RVA: 0x810FB0 Offset: 0x80F7B0 VA: 0x180810FB0
public static uint GetNextProjectileId() { }
// RVA: 0x80FDC0 Offset: 0x80E5C0 VA: 0x18080FDC0
private void Initialize() { }
// RVA: 0x811B20 Offset: 0x810320 VA: 0x180811B20
public void .ctor() { }
// RVA: 0x80D9A0 Offset: 0x80C1A0 VA: 0x18080D9A0
public void SetProperties(ProjectileData data, Projectile.ProjectileState state, float lifetime) { }
// RVA: 0x811830 Offset: 0x810030 VA: 0x180811830
public static bool Raycast(RaycastHit hit) { }
// RVA: 0x80D910 Offset: 0x80C110 VA: 0x18080D910
internal void Stop() { }
// RVA: 0x810D30 Offset: 0x80F530 VA: 0x180810D30
public bool IsPenetrating() { }
// RVA: 0x810F30 Offset: 0x80F730 VA: 0x180810F30
public static uint GetMaxProjectiles() { }
// RVA: 0x80CE40 Offset: 0x80B640 VA: 0x18080CE40
public void AdjustVelocity(Vector3 velocity) { }
// RVA: 0x8109B0 Offset: 0x80F1B0 VA: 0x1808109B0
private void AdjustTrajectory(float deltaTime) { }
// RVA: 0x80D090 Offset: 0x80B890 VA: 0x18080D090
public void InitializeVelocity(Vector3 velocity) { }
// RVA: 0x80D4C0 Offset: 0x80BCC0 VA: 0x18080D4C0
private bool CheckCollision(ref uint projectileId, Vector3 start, Vector3 end, float deltaTime) { }
// RVA: 0x80EBF0 Offset: 0x80D3F0 VA: 0x18080EBF0
private bool HandleCollision(Projectile.Trajectory trajectory, Vector3 start, Vector3 end) { }
// RVA: 0x811030 Offset: 0x80F830 VA: 0x180811030
private void ComputeNextState(float deltaTime) { }
// RVA: 0x80DD60 Offset: 0x80C560 VA: 0x18080DD60
private void ComputeInitialState(float deltaTime) { }
// RVA: 0x810660 Offset: 0x80EE60 VA: 0x180810660
private void ComputeNextState(Vector3 start, Vector3 end, float deltaTime) { }
// RVA: 0x8118F0 Offset: 0x8100F0 VA: 0x1808118F0
private bool GetDamageModifier() { }
// RVA: 0x80DCF0 Offset: 0x80C4F0 VA: 0x18080DCF0 Slot: 6
protected virtual float ComputeTrajectory() { }
// RVA: 0x80D3A0 Offset: 0x80BBA0 VA: 0x18080D3A0
private Vector3 ComputeTrajectory(Vector3 start, Vector3 end, float deltaTime) { }
// RVA: 0x80F640 Offset: 0x80DE40 VA: 0x18080F640
private bool HandlePenetration(Projectile.Trajectory trajectory, Vector3 start, Vector3 end) { }
// RVA: 0x404FD0 Offset: 0x4037D0 VA: 0x180404FD0 Slot: 7
protected virtual void OnCollision(ProjectileData data) { }
}
Последнее редактирование: