mirror of
https://github.com/EpochModTeam/Epoch.git
synced 2024-08-30 18:22:13 +00:00
Merge pull request #694 from EpochModTeam/experimental
released 0.4 b675
This commit is contained in:
commit
ae9d5fd6cd
31
CREDITS.md
31
CREDITS.md
@ -10,25 +10,26 @@ Epoch Server DB extension (DLL / so)
|
||||
Epoch Assets Mod Configs - Custom Units, Vehicles, Weapons, Items and more!
|
||||
|
||||
#### Developers
|
||||
* [Aaron Clark ([VB]AWOL)](http://epochmod.com): Concept, Code, Configs, Textures - [x] Active
|
||||
* [Kenneth Bente (Axle)](www.twitch.tv/axles): Tester, Models - [ ] Active
|
||||
* [Paul Tomany (Sequisha)](https://www.twitch.tv/sequisha): Models, Textures - [ ] Active
|
||||
* [Andrew Gregory (Axeman)](http://thefreezer.co.uk): AI Code - [x] Active
|
||||
* [Raimonds Virtoss (Raymix)](https://www.twitch.tv/raymich): UI Code - [x] Active
|
||||
* [Florian Kinder (Fank)](https://github.com/Fank): Code - [ ] Active
|
||||
* [Denis Erygin (devd)](https://github.com/denisio): Linux Code Support - [ ] Active
|
||||
* [Darren Harrison (Kiory)](https://www.twitch.tv/kiory123): Models, Textures, Configs - [ ] Active
|
||||
* [Paden Sturtevant (SteamPunkGears)](https://www.twitch.tv/steampunkgears): Models, Textures - [ ] Active
|
||||
* [Niklas Wagner (Skaronator)](https://skaronator.com): Code - [ ] Active
|
||||
* [Damian Clark ([VB]GREEN)](http://epochmod.com): Graphics - [ ] Active
|
||||
* [Aaron Clark ([VB]AWOL)](http://epochmod.com): Concept, Code, Configs, Textures
|
||||
* [Kenneth Bente (Axle)](www.twitch.tv/axles): Tester, Models
|
||||
* [Paul Tomany (Sequisha)](https://www.twitch.tv/sequisha): Models, Textures
|
||||
* [Damian Clark ([VB]GREEN)](http://epochmod.com): Graphics
|
||||
* [Andrew Gregory (Axeman)](http://thefreezer.co.uk): AI Code
|
||||
* [Raimonds Virtoss (Raymix)](https://www.twitch.tv/raymich): UI Code
|
||||
* [Darren Harrison (Kiory)](https://www.twitch.tv/kiory123): Models, Textures, Configs
|
||||
* [Niklas Wagner (Skaronator)](https://skaronator.com): Code
|
||||
* [Florian Kinder (Fank)](https://github.com/Fank): Code
|
||||
* [Denis Erygin (devd)](https://github.com/denisio): Linux Code Support
|
||||
* [Paden Sturtevant (SteamPunkGears)](https://www.twitch.tv/steampunkgears): Models, Textures
|
||||
* [Dan Dalsted (OrangeSherbet)](https://www.twitch.tv/OrangeSherbet): Tester, Videos, Wiki Editor
|
||||
|
||||
#### Contributors
|
||||
|
||||
* [Dan (OrangeSherbet)](https://www.twitch.tv/OrangeSherbet): Tester, Videos, Wiki Editor
|
||||
#### Top Contributors
|
||||
* [HeMan](https://github.com/Ignatz-HeMan)
|
||||
* [$p4rkY](https://github.com/SPKcoding)
|
||||
* [82ndab-Bravo17](https://github.com/82ndab-Bravo17) - http://www.the82ndab.net
|
||||
* [Robio](https://github.com/RC-Robio)
|
||||
* [Poulmba](https://www.youtube.com/user/poulmba): Wiki Editor, Tester
|
||||
* Richie: Map Support, Forum Moderator
|
||||
* [Richie](http://uk-gaming-zone.co.uk): Map Support, Forum Moderator
|
||||
* [Tobias Solem](http://whatthepoch.com/): Tester
|
||||
|
||||
#### Special Thanks!
|
||||
|
Binary file not shown.
Binary file not shown.
Binary file not shown.
@ -1,8 +1,8 @@
|
||||
// Anti Hack
|
||||
antihack_Enabled = true; // built-in Anti-Hack
|
||||
antihack_Enabled = "true"; // built-in Anti-Hack
|
||||
antihack_maxTravelDistance = 30; // anti-teleport max travel distance
|
||||
antihack_TPcenterDistance = 30; // anti-teleport distance from start
|
||||
antihack_cfgPatchesCheck = true; // cfgPatches (AddOn Check)
|
||||
antihack_cfgPatchesCheck = "true"; // cfgPatches (AddOn Check)
|
||||
antihack_PVSPrefix = "EPAH_"; // used to help whitelist pveh variables in BE without BEC and watchdog, leave blank to use no prefix.
|
||||
antihack_cfgPatchesMode[] = {2}; // 0 == BAN - 1 = LOG, 2 = KICK
|
||||
antihack_ahInitAuthCfg[] = {0,180}; // 0 == BAN - 1 = LOG, 60 = ban or log if anti hack is not started in 180 seconds
|
||||
@ -24,7 +24,7 @@ antihack_checkFiles[] = { //script check, leave it blank to disable it
|
||||
{"epoch_code\compile\setup\EPOCH_clientRespawn.sqf", "EPOCH_clientRespawn"},
|
||||
{"epoch_code\compile\interface_event_handlers\EPOCH_KeyDown.sqf", "EPOCH_KeyDown"}
|
||||
};
|
||||
antihack_addActionCheck = true; // false to disable addAction checks
|
||||
antihack_addActionCheck = "true"; // false to disable addAction checks
|
||||
adminMenu_Owner[] = {};
|
||||
adminMenu_OwnerSetting[] = {
|
||||
"ESP-PLAYER",
|
||||
|
@ -1,4 +1,4 @@
|
||||
serverRestart = false; // true sends #shutdown command to server after the time specified in ForceRestartTime
|
||||
serverRestart = "false"; // true sends #shutdown command to server after the time specified in ForceRestartTime
|
||||
forceRestartTime = 14400; // 4 hour restarts
|
||||
|
||||
StorageSlotsLimit = 1500; // Max storage slots allowed. Warning! Higher the number lower performance.
|
||||
@ -28,7 +28,7 @@ antagonistChanceLoot = 0.09; //9% chance when player click "SEARCH" on a loot ob
|
||||
cloneCost = 100; // debt incurred on player death
|
||||
|
||||
// vehicles - Max vehicle slots is calculated from per vehicle limits below. Warning! Higher the number lower the performance.
|
||||
simulationHandlerOld = false; // When enabled this feature disables simulation on vehicles that are not nea players. Can help improve client fps at the cost of server fps.
|
||||
simulationHandlerOld = "false"; // When enabled this feature disables simulation on vehicles that are not nea players. Can help improve client fps at the cost of server fps.
|
||||
vehicleLockTime = 1800; // Controls how many seconds it takes to allow another person/group to unlock vehicle.
|
||||
removevehweapons[] = { // remove these Weapons from spawned Vehicles
|
||||
"missiles_DAR","gatling_30mm","gatling_20mm","missiles_DAGR","cannon_30mm_Plane_CAS_02_F","Missile_AA_03_Plane_CAS_02_F","Missile_AGM_01_Plane_CAS_02_F","Rocket_03_HE_Plane_CAS_02_F",
|
||||
@ -41,7 +41,7 @@ removevehmagazinesturret[] = { // Remove these Magazines from the given Turret f
|
||||
};
|
||||
|
||||
// BaseBuilding
|
||||
UseIndestructible = false; // Enable / Disable Indestructible BaseObjects
|
||||
UseIndestructible = "false"; // Enable / Disable Indestructible BaseObjects
|
||||
IndestructibleBaseObjects[] = { // Can be Names or Classes
|
||||
"Constructions_static_F",
|
||||
"Buildable_Storage",
|
||||
@ -60,15 +60,15 @@ ExceptedBaseObjects[] = { // Not Indestructible, also if in a Class of Indestr
|
||||
taxRate = 0.1; // controls the price increase for purchases
|
||||
starterTraderItems[] = { { "ItemSodaBurst", "meatballs_epoch", "MortarBucket", "CinderBlocks", "VehicleRepair", "CircuitParts", "ItemCorrugated", "PartPlankPack", "ItemRock", "ItemRope", "ItemStick" }, { 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5 } }; // Starter Items for fresh spawned trader first array is classnames second is quantity.
|
||||
NPCSlotsLimit = 20; // Max number of traders static or dynamic. Warning! Higher the number lower performance.
|
||||
forceStaticTraders = true; // disables traders moving from work to home
|
||||
forceStaticTraders = "true"; // disables traders moving from work to home
|
||||
|
||||
// Markers
|
||||
showEarthQuakes = true; // show mineral viens caused by earthquakes
|
||||
showShippingContainers = true; // Show location of events based loots (plants, shipping container, Carnival)
|
||||
SHOW_TRADERS = true; // Show locations of traders
|
||||
SHOW_JAMMERS = false; // Shows location of base jammers
|
||||
SHOW_BOATLOOT = true; // Shows the location of shipwreck loot
|
||||
DEBUG_VEH = false; // DEBUG ONLY used to debug spawing of vehicles
|
||||
showEarthQuakes = "true"; // show mineral viens caused by earthquakes
|
||||
showShippingContainers = "true"; // Show location of events based loots (plants, shipping container, Carnival)
|
||||
SHOW_TRADERS = "true"; // Show locations of traders
|
||||
SHOW_JAMMERS = "false"; // Shows location of base jammers
|
||||
SHOW_BOATLOOT = "true"; // Shows the location of shipwreck loot
|
||||
DEBUG_VEH = "false"; // DEBUG ONLY used to debug spawing of vehicles
|
||||
|
||||
// Hive Related
|
||||
expiresBuilding = "604800"; // expiration date in seconds for buildings
|
||||
@ -76,12 +76,12 @@ expiresPlayer = "2592000"; // expiration date in seconds for players
|
||||
expiresBank = "7776000"; // expiration date in seconds for players bank
|
||||
expiresVehicle = "604800"; // expiration date in seconds for vehicles
|
||||
expiresAIdata = "604800"; // expiration date in seconds for NPC Trader inventory
|
||||
hiveAsync = true; // true = asynchronous hive calls (non blocking), false = synchronous hive calls (blocking)
|
||||
hiveAsync = "true"; // true = asynchronous hive calls (non blocking), false = synchronous hive calls (blocking)
|
||||
|
||||
// Admin Features
|
||||
hiveAdminCmdExec = false; // true = enables extra (To Be Released) feature to allow execution of code via hive.
|
||||
hiveAdminSavePlayerList = true; // true = enables saving of playerUID array to hive value PLAYERS:#InstanceID.
|
||||
hiveAdminCmdExec = "false"; // true = enables extra (To Be Released) feature to allow execution of code via hive.
|
||||
hiveAdminSavePlayerList = "true"; // true = enables saving of playerUID array to hive value PLAYERS:#InstanceID.
|
||||
hiveAdminCmdTime = 5; // how many seconds between each command queue call.
|
||||
|
||||
// DEBUG
|
||||
useOldLoadVehicles = false;
|
||||
useOldLoadVehicles = "false";
|
||||
|
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
@ -1 +1 @@
|
||||
5 "" !"B_Parachute" !"B_AssaultPack_(cbr|dgtl|khk|mcamo|ocamo|rgr|sgg|blk)" !"B_Carryall_(cbr|khk|mcamo|ocamo|oli|oucamo)" !"B_FieldPack_(blk|cbr|khk|ocamo|oli|oucamo)" !"B_Kitbag_(cbr|mcamo|rgr|sgg)" !"B_TacticalPack_(blk|mcamo|ocamo|oli|rgr)" !"smallbackpack_(red|green|teal|pink|)_epoch" !"(O|I|B)_UAV_01_backpack_F"
|
||||
5 "" !"B_Parachute" !"B_AssaultPack_(cbr|dgtl|khk|mcamo|ocamo|rgr|sgg|blk)" !"B_Carryall(cbr|khk|mcamo|ocamo|oli|oucamo|hex|ghex)" !"B_FieldPack_(blk|cbr|khk|ocamo|oli|oucamo|ghex_F)" !"B_Kitbag_(cbr|mcamo|rgr|sgg)" !"B_TacticalPack_(blk|mcamo|ocamo|oli|rgr)" !"smallbackpack_(red|green|teal|pink|)_epoch" !"(O|I|B)_UAV_01_backpack_F" !"B_Bergen_(mcamo|dgtl|hex|tna)_F" !"B_Viper(Light|)Harness_(blk|ghex|hex|khk|oli)_F"
|
||||
|
@ -207,7 +207,7 @@ class FSM
|
||||
"};" \n
|
||||
"" \n
|
||||
"_finalPlayerObjectCheck = {" \n
|
||||
" (_mass == (loadAbs _playerObject))" \n
|
||||
" (_mass isEqualTo (loadAbs _playerObject))" \n
|
||||
"};" \n
|
||||
"" \n
|
||||
"EPOCH_loginFSM = _thisFSM;" \n
|
||||
@ -1423,4 +1423,4 @@ class FSM
|
||||
"Reject_without_B",
|
||||
};
|
||||
};
|
||||
/*%FSM</COMPILE>*/
|
||||
/*%FSM</COMPILE>*/
|
||||
|
@ -40,7 +40,7 @@ if (isClass(_config)) then{
|
||||
if (configName(_finalconfig) == _variableName) then{
|
||||
_varData = switch (typeName _defaultData) do {
|
||||
case "SCALAR": {if (isNumber (_finalconfig)) then { getNumber _finalconfig } else {_defaultData} };
|
||||
case "BOOL": {if (isText (_finalconfig)) then { (getText _finalconfig) isEqualTo "true" } else {_defaultData} };
|
||||
case "BOOL": {if (isText (_finalconfig)) then {(getText _finalconfig) isEqualTo "true"} else {if (isNumber (_finalconfig)) then {(getNumber _config) isEqualTo 1} else {_defaultData}}};
|
||||
case "ARRAY": {if (isArray (_finalconfig)) then { getArray _finalconfig } else {_defaultData} };
|
||||
case "STRING": {if (isText (_finalconfig)) then { getText _finalconfig } else {_defaultData} };
|
||||
default {_defaultData};
|
||||
|
@ -18,36 +18,60 @@
|
||||
Parameter(s):
|
||||
_this select 0: OBJECT - player object
|
||||
_this select 1: STRING - personal token
|
||||
_this select 2: NUMBER - loadABS
|
||||
|
||||
Returns:
|
||||
NOTHING
|
||||
*/
|
||||
//[[[cog import generate_private_arrays ]]]
|
||||
private ["_group","_playerObject","_ply"];
|
||||
private ["_prevPlayerObject"];
|
||||
//[[[end]]]
|
||||
_playerObject = _this select 0;
|
||||
params [
|
||||
["_playerObject",objNull,[objNull]],
|
||||
["_personalToken","",[""]],
|
||||
["_loadAbs",0,[0]]
|
||||
];
|
||||
if (isNull _playerObject) exitWith { diag_log "EPOCH-DEBUG: New Player Object was Null cannot revive." };
|
||||
if !(alive player && alive _playerObject && !isPlayer _playerObject) then {
|
||||
_ply = player;
|
||||
_group = group player;
|
||||
selectPlayer _playerObject;
|
||||
deleteVehicle _ply;
|
||||
|
||||
Epoch_canBeRevived = false;
|
||||
Epoch_personalToken = _this select 1;
|
||||
// reveal new player object (to hopefully propagate info faster).
|
||||
player reveal _playerObject;
|
||||
|
||||
[] spawn EPOCH_masterLoop;
|
||||
[5, 100] call EPOCH_niteLight;
|
||||
// spawn a thread to wait for loadAbs to sync before using selectPlayer
|
||||
[_playerObject,_personalToken,_loadAbs] spawn {
|
||||
params ["_playerObject","_personalToken","_loadAbs"];
|
||||
|
||||
closeDialog 0;
|
||||
("BIS_fnc_respawnCounter" call BIS_fnc_rscLayer) cutText ["","PLAIN"];
|
||||
// get current player object
|
||||
_prevPlayerObjectect = player;
|
||||
|
||||
{
|
||||
player removeEventHandler [_x, 0];
|
||||
player addEventHandler [_x,(["CfgEpochClient", _x, ""] call EPOCH_fnc_returnConfigEntryV2)];
|
||||
} forEach (["CfgEpochClient", "addEventHandler", []] call EPOCH_fnc_returnConfigEntryV2);
|
||||
// wait for loadAbs to sync
|
||||
waitUntil {_loadAbs isEqualTo (loadAbs _playerObject)};
|
||||
|
||||
// reset blood Pressure to warning level
|
||||
EPOCH_playerBloodP = 120;
|
||||
// switch to new playerObject
|
||||
selectPlayer _playerObject;
|
||||
|
||||
// delete previous player object
|
||||
deleteVehicle _prevPlayerObject;
|
||||
|
||||
// set token and can revive to false
|
||||
Epoch_canBeRevived = false;
|
||||
Epoch_personalToken = _personalToken;
|
||||
|
||||
// restart masterloop
|
||||
[] spawn EPOCH_masterLoop;
|
||||
[5, 100] call EPOCH_niteLight;
|
||||
|
||||
closeDialog 0;
|
||||
("BIS_fnc_respawnCounter" call BIS_fnc_rscLayer) cutText ["","PLAIN"];
|
||||
|
||||
{
|
||||
player removeEventHandler [_x, 0];
|
||||
player addEventHandler [_x,(["CfgEpochClient", _x, ""] call EPOCH_fnc_returnConfigEntryV2)];
|
||||
} forEach (["CfgEpochClient", "addEventHandler", []] call EPOCH_fnc_returnConfigEntryV2);
|
||||
|
||||
// reset blood Pressure to warning level
|
||||
EPOCH_playerBloodP = 120;
|
||||
};
|
||||
} else {
|
||||
deleteVehicle _playerObject;
|
||||
};
|
||||
|
@ -37,11 +37,11 @@ class CfgEpochClient
|
||||
storageCountPerMember = 5; //ignore if "splitCountLimits=0" & "useGroupCountLimits=0"
|
||||
maxdoors = 8;
|
||||
maxgates = 5;
|
||||
disableRemoteSensors = true;
|
||||
disableRemoteSensors = "true";
|
||||
EPOCH_news[] = {"Word is that Sappers have a new boss.","Dogs will often lure them monsters away.","My dog was blown up. I miss him.."};
|
||||
deathMorphClass[] = {"Epoch_Sapper_F","Epoch_SapperB_F","I_UAV_01_F","Epoch_Cloak_F"};
|
||||
niteLight[] = {1,1.88,22};
|
||||
ryanZombiesEnabled = true;
|
||||
ryanZombiesEnabled = "true";
|
||||
antagonistSpawnIndex[] = {{"Epoch_Cloak_F",1},{"GreatWhite_F",2},{"Epoch_Sapper_F",2},{"Epoch_SapperB_F",1},{"I_UAV_01_F",2},{"PHANTOM",1},{"B_Heli_Transport_01_F",1},{"EPOCH_RyanZombie_1",12}};
|
||||
customVarsDefaults[] = {{"Temp",98.6,{106.7,95,102,105,96,95}},{"Hunger",1500,{5000,0,5001,5001,1250,0}},{"Thirst",750,{2500,0,2501,2501,625,0}},{"AliveTime",0,{-2,0}},{"Energy",0,{2500,0}},{"Wet",0,{100,0,35,55,-1,-1}},{"Soiled",0,{100,0,35,55,-1,-1}},{"Immunity",0,{100,0}},{"Toxicity",0,{100,0,35,55,-1,-1}},{"Stamina",100,{"EPOCH_playerStaminaMax",0}},{"Crypto",0,{250000,0}},{"HitPoints",{0,0,0,0},{1,0,0.5,1,-1,-1}},{"BloodP",100,{190,0,120,140,70,50}},{"SpawnArray",{},{}},{"Karma",0,{50000,-50000}},{"Alcohol",0,{100,0,35,55,-1,-1}},{"Radiation",0,{100,0,35,55,-1,-1}},{"Nuisance",0,{100,0}},{"MissionArray",{},{}}};
|
||||
hudConfigs[] = {{{"BloodP","","",{"getPlayerDamage",">=",0.7}},"topRight","x\addons\a3_epoch_code\Data\UI\bleeding_ca.paa",{"forceUpdate"}},{{"Oxygen","getPlayerOxygenRemaining","",{},{1,0,2,2,1,0.55}},"topRight","x\addons\a3_epoch_code\Data\UI\oxygen_ca.paa"},{"Hunger","topRight","x\addons\a3_epoch_code\Data\UI\hunger_ca.paa",{"forceBloodRise"}},{"Thirst","topRight","x\addons\a3_epoch_code\Data\UI\thirst_ca.paa",{"forceBloodRise"}},{"Temp","topRight",{"x\addons\a3_epoch_code\Data\UI\hot_ca.paa","x\addons\a3_epoch_code\Data\UI\cold_ca.paa"},{"forceFatigue"}},{"Toxicity","topRight","x\addons\a3_epoch_code\Data\UI\hazzard_ca.paa"},{"Alcohol","topRight","x\addons\a3_epoch_code\Data\UI\drunk_ca.paa"},{"Soiled","topRight","x\addons\a3_epoch_code\Data\UI\soiled_ca.paa"},{"Radiation","topRight","x\addons\a3_epoch_code\Data\UI\rads_ca.paa"},{{"HitPoints","getPlayerHitPointDamage","HitLegs"},"topRight","x\addons\a3_epoch_code\Data\UI\broken_ca.paa"}};
|
||||
|
@ -1 +1 @@
|
||||
build=672;
|
||||
build=675;
|
||||
|
@ -26,10 +26,10 @@ onPauseScript = "epoch_code\gui\scripts\Epoch_onPause.sqf";
|
||||
onLoadMission= "Epoch";
|
||||
OnLoadIntro = "Welcome to Epoch Mod";
|
||||
loadScreen = "\x\addons\a3_epoch_assets\pictures\loadScreen_ca.paa";
|
||||
OnLoadIntroTime = False;
|
||||
OnLoadMissionTime = False;
|
||||
OnLoadIntroTime = 0;
|
||||
OnLoadMissionTime = 0;
|
||||
onLoadName = "Epoch Mod";
|
||||
disabledAI = true;
|
||||
disabledAI = 1;
|
||||
scriptedPlayer = 1;
|
||||
disableChannels[]={{0,true,true},{1,false,true},{2,true,true},{6,true,true}}; // allow text only on side chat
|
||||
enableItemsDropping = 0;
|
||||
|
@ -1 +1 @@
|
||||
build=672;
|
||||
build=675;
|
||||
|
@ -265,7 +265,7 @@ if (!local _player) then {
|
||||
};
|
||||
|
||||
// send to player
|
||||
[_newPlyr, _token] remoteExec ['EPOCH_clientRevive',_player];
|
||||
[_newPlyr, _token, loadAbs _newPlyr] remoteExec ['EPOCH_clientRevive',_player];
|
||||
};
|
||||
};
|
||||
};
|
||||
|
@ -206,9 +206,24 @@ for "_i" from 1 to _maxVehicleLimit do {
|
||||
};
|
||||
} forEach _objTypes;
|
||||
} forEach (_arr select 5);
|
||||
// remove and add back magazines works for armed trucks but not helis ATM
|
||||
{_vehicle removeMagazineGlobal _x}count (magazines _vehicle);
|
||||
{_vehicle addMagazine _x}count (_arr select 6);
|
||||
|
||||
// remove and add back magazines
|
||||
if !((_arr select 6) isequalto []) then {
|
||||
if ((_arr select 6 select 0) isequaltype true) then {
|
||||
{
|
||||
_vehicle removeMagazinesTurret [_x select 0, _x select 1];
|
||||
} foreach magazinesAllTurrets _vehicle;
|
||||
{
|
||||
if ((_x select 2) > 0) then {
|
||||
_vehicle addMagazineTurret [_x select 0,_x select 1,_x select 2];
|
||||
};
|
||||
} foreach (_arr select 6 select 1);
|
||||
}
|
||||
else {
|
||||
{_vehicle removeMagazineGlobal _x}count (magazines _vehicle);
|
||||
{_vehicle addMagazine _x}count (_arr select 6);
|
||||
};
|
||||
};
|
||||
|
||||
// set damage and hitpoints
|
||||
_vehicle setDamage _damage;
|
||||
|
@ -225,22 +225,23 @@ for "_i" from 1 to _maxVehicleLimit do {
|
||||
} forEach _objTypes;
|
||||
} forEach (_arr select 5);
|
||||
|
||||
// remove and add back magazines works for armed trucks but not helis ATM
|
||||
{_vehicle removeMagazineGlobal _x}count (magazines _vehicle);
|
||||
{_vehicle addMagazine _x}count (_arr select 6);
|
||||
|
||||
// turrets
|
||||
/*
|
||||
_mags = _vehicle magazinesTurret [0];
|
||||
{
|
||||
_object removeMagazinesTurret [_x, [0]];
|
||||
} forEach _mags;
|
||||
|
||||
_mags = _vehicle magazinesTurret [-1];
|
||||
{
|
||||
_object removeMagazinesTurret [_x, [-1]];
|
||||
} forEach _mags;
|
||||
*/
|
||||
// remove and add back magazines
|
||||
if !((_arr select 6) isequalto []) then {
|
||||
if ((_arr select 6 select 0) isequaltype true) then {
|
||||
{
|
||||
_vehicle removeMagazinesTurret [_x select 0, _x select 1];
|
||||
} foreach magazinesAllTurrets _vehicle;
|
||||
{
|
||||
if ((_x select 2) > 0) then {
|
||||
_vehicle addMagazineTurret [_x select 0,_x select 1,_x select 2];
|
||||
};
|
||||
} foreach (_arr select 6 select 1);
|
||||
}
|
||||
else {
|
||||
{_vehicle removeMagazineGlobal _x}count (magazines _vehicle);
|
||||
{_vehicle addMagazine _x}count (_arr select 6);
|
||||
};
|
||||
};
|
||||
|
||||
if (EPOCH_DEBUG_VEH) then {
|
||||
_marker = createMarker [str(_location) , _location];
|
||||
@ -253,9 +254,6 @@ for "_i" from 1 to _maxVehicleLimit do {
|
||||
if (_simulationHandler) then{
|
||||
_vehicle enableSimulationGlobal false;
|
||||
};
|
||||
|
||||
|
||||
|
||||
};
|
||||
};
|
||||
};
|
||||
|
@ -17,7 +17,7 @@ params [["_vehicle",objNull]];
|
||||
|
||||
if (!isNull _vehicle) then {
|
||||
|
||||
// if (!alive _vehicle) exitWith {diag_log format["DEBUG DEAD VEHICLE SKIPPED SAVE: %1 %2", _vehicle]};
|
||||
if (!alive _vehicle) exitWith {diag_log format["DEBUG DEAD VEHICLE SKIPPED SAVE: %1 %2", _vehicle]};
|
||||
_vehSlot = _vehicle getVariable["VEHICLE_SLOT", "ABORT"];
|
||||
if (_vehSlot != "ABORT") then {
|
||||
|
||||
@ -95,7 +95,7 @@ if (!isNull _vehicle) then {
|
||||
];
|
||||
_colorSlot = _vehicle getVariable ["VEHICLE_TEXTURE",0];
|
||||
|
||||
_VAL = [typeOf _vehicle,[(getposATL _vehicle call EPOCH_precisionPos),vectordir _vehicle,vectorup _vehicle],damage _vehicle,_hitpoints,fuel _vehicle,_inventory,magazinesAmmo _vehicle,_colorSlot];
|
||||
_VAL = [typeOf _vehicle,[(getposATL _vehicle call EPOCH_precisionPos),vectordir _vehicle,vectorup _vehicle],damage _vehicle,_hitpoints,fuel _vehicle,_inventory,[true,magazinesAllTurrets _vehicle],_colorSlot];
|
||||
["Vehicle", _vehHiveKey, EPOCH_expiresVehicle, _VAL] call EPOCH_fnc_server_hiveSETEX;
|
||||
};
|
||||
};
|
||||
|
@ -258,7 +258,7 @@ EPOCH_server_disconnect = compileFinal("
|
||||
");
|
||||
|
||||
EPOCH_server_movePlayer = compileFinal("
|
||||
params [['_playerObj',objNull,[_playerObj]],'_pos'];
|
||||
params [['_playerObj',objNull,[objNull]],['_pos',[],[[]]]];
|
||||
if !(isNull _playerObj) then {
|
||||
"+_skn_antiTeleportPVC+" = true;
|
||||
(owner _playerObj) publicVariableClient '"+_skn_antiTeleportPVC+"';
|
||||
@ -271,7 +271,7 @@ if !(isNull _playerObj) then {
|
||||
");
|
||||
|
||||
EPOCH_server_teleportCheck = compileFinal("
|
||||
params [['_playerObj',objNull,[_playerObj]],'_allow'];
|
||||
params [['_playerObj',objNull,[objNull]],'_allow'];
|
||||
if !(isNull _playerObj) then {
|
||||
"+_skn_antiTeleportPVC+" = _allow;
|
||||
(owner _playerObj) publicVariableClient '"+_skn_antiTeleportPVC+"';
|
||||
|
@ -70,7 +70,7 @@ EPOCH_fnc_returnConfigEntry = {
|
||||
_config = (_this select 0) >> (_this select 1);
|
||||
_varData = switch (typeName _defaultData) do {
|
||||
case "SCALAR": {if (isNumber (_config)) then { getNumber _config } else {_defaultData} };
|
||||
case "BOOL": {if (isText (_config)) then { (getText _config) isEqualTo "true" } else {_defaultData} };
|
||||
case "BOOL": {if (isText (_config)) then {(getText _config) isEqualTo "true"} else {if (isNumber (_config)) then {(getNumber _config) isEqualTo 1} else {_defaultData}}};
|
||||
case "ARRAY": {if (isArray (_config)) then { getArray _config } else {_defaultData} };
|
||||
case "STRING": {if (isText (_config)) then { getText _config } else {_defaultData} };
|
||||
default {_defaultData};
|
||||
|
@ -1 +1 @@
|
||||
build=672;
|
||||
build=675;
|
||||
|
@ -1 +1 @@
|
||||
build=672;
|
||||
build=675;
|
||||
|
@ -14,7 +14,7 @@
|
||||
*/
|
||||
class CfgSecConf
|
||||
{
|
||||
debug = false;
|
||||
debug = "false";
|
||||
|
||||
class remoteExecClient{
|
||||
functions[] = {"bankBalance", "resetGroup", "groupUpdate", "groupUidUpdate", "healPlayer","tradeComplete"};
|
||||
@ -28,7 +28,7 @@ class CfgSecConf
|
||||
};
|
||||
|
||||
class learning {
|
||||
mode = false; // true = only trust uids below, false = trust everyone (use only with a passworded server and trusted players)
|
||||
mode = "false"; // true = only trust uids below, false = trust everyone (use only with a passworded server and trusted players)
|
||||
trustedUsers[] = {};
|
||||
};
|
||||
|
||||
|
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Loading…
Reference in New Issue
Block a user