mirror of
https://github.com/acemod/ACE3.git
synced 2024-08-30 18:23:18 +00:00
Artillery Tables - Support for ammo that has native airFriction
(#10059)
* Artillery Tables - Support for ammo that has native `airFriction` * fix comment Co-authored-by: johnb432 <58661205+johnb432@users.noreply.github.com> * Update addons/artillerytables/functions/fnc_rangeTableOpen.sqf Co-authored-by: johnb432 <58661205+johnb432@users.noreply.github.com> * replace if block with select const Co-authored-by: johnb432 <58661205+johnb432@users.noreply.github.com> --------- Co-authored-by: Grim <69561145+LinkIsGrim@users.noreply.github.com> Co-authored-by: johnb432 <58661205+johnb432@users.noreply.github.com>
This commit is contained in:
parent
05d6327e5e
commit
aed2222b81
@ -35,7 +35,7 @@ if (isNumber (configFile >> "CfgMagazines" >> _magazine >> QGVAR(airFriction)))
|
||||
_airFriction = getNumber (configFile >> "CfgMagazines" >> _magazine >> QGVAR(airFriction));
|
||||
};
|
||||
TRACE_1("",_airFriction);
|
||||
if (_airFriction >= 0) exitWith {}; // 0 disables everything, >0 makes no sense
|
||||
if (_airFriction == 0) exitWith {}; // 0 disables everything
|
||||
|
||||
BEGIN_COUNTER(adjustmentsCalc);
|
||||
|
||||
@ -60,6 +60,7 @@ if (_newMuzzleVelocityCoefficent != 1) then {
|
||||
_projectile setVelocity _bulletVelocity;
|
||||
};
|
||||
|
||||
if (_airFriction > 0) exitWith {}; // positive value indicates it has vanilla airFriction, so we can just exit
|
||||
|
||||
[{
|
||||
params ["_projectile", "_kFactor", "_time"];
|
||||
|
@ -41,8 +41,15 @@ _mags = _mags apply {
|
||||
private _initSpeed = getNumber (_magCfg >> _x >> "initSpeed");
|
||||
_magParamsArray pushBackUnique _initSpeed;
|
||||
private _airFriction = 0;
|
||||
private _magAirFriction = getNumber (_magCfg >> _x >> QGVAR(airFriction));
|
||||
if (_magAirFriction <= 0) then {
|
||||
if (_advCorrection) then {
|
||||
_airFriction = if (isNumber (_magCfg >> _x >> QGVAR(airFriction))) then { getNumber (_magCfg >> _x >> QGVAR(airFriction)) } else { DEFAULT_AIR_FRICTION };
|
||||
_airFriction = [DEFAULT_AIR_FRICTION, _magAirFriction] select (isNumber (_magCfg >> _x >> QGVAR(airFriction)));
|
||||
};
|
||||
} else {
|
||||
// positive value, use ammo's airFriction (regardless of setting)
|
||||
private _ammo = getText (_magCfg >> _x >> "ammo");
|
||||
_airFriction = getNumber (configFile >> "CfgAmmo" >> _ammo >> "airFriction");
|
||||
};
|
||||
_magParamsArray pushBackUnique _airFriction;
|
||||
[getText (_magCfg >> _x >> "displayNameShort"), getText (_magCfg >> _x >> "displayName"), _initSpeed, _airFriction]
|
||||
|
38
docs/wiki/framework/artillery-tables-framework.md
Normal file
38
docs/wiki/framework/artillery-tables-framework.md
Normal file
@ -0,0 +1,38 @@
|
||||
---
|
||||
layout: wiki
|
||||
title: Artillery Tables
|
||||
description: Explains the configs for artillery tables.
|
||||
group: framework
|
||||
parent: wiki
|
||||
mod: ace
|
||||
version:
|
||||
major: 3
|
||||
minor: 13
|
||||
patch: 0
|
||||
---
|
||||
|
||||
## 1. Magazine Configs
|
||||
|
||||
```cpp
|
||||
class CfgMagazines {
|
||||
class yourMag {
|
||||
ace_artillerytables_airFriction = -0.00006; // default value
|
||||
// drag coefficent (when Air Resistance setting is enabled)
|
||||
// can set to 0 to disable all muzzle effects and airFriction
|
||||
// can set to +1 to use the ammo's native airFriction (not common, as most artillery ammo will have none)
|
||||
```
|
||||
|
||||
## 2. Vehicle Configs
|
||||
|
||||
```cpp
|
||||
class CfgVehicles {
|
||||
class yourVic {
|
||||
ace_artillerytables_showRangetable = 1; // [0 disabled, 1 enabled] falls back to artilleryScanner
|
||||
// Show rangetable for this vehicle
|
||||
|
||||
ace_artillerytables_showGunLaying = 1; // [0 disabled, 1 enabled, 2 enabled w/ alt elevationMode] falls back to artilleryScanner
|
||||
// Shows gun laying info (elev/azimuth)
|
||||
|
||||
ace_artillerytables_applyCorrections = 1; // [0 disabled, 1 enabled] falls back to artilleryScanner
|
||||
// Apply advanced corrections (when setting enabled)
|
||||
```
|
Loading…
Reference in New Issue
Block a user