Merge pull request #6 from EpochModTeam/master

update fork
This commit is contained in:
W0LF
2021-03-08 18:02:55 +03:00
committed by GitHub
16 changed files with 364 additions and 28 deletions

View File

@@ -0,0 +1,26 @@
//need to remove the spray, submarine is not a speedboat,
//so create an empty particle effect
class CfgCloudlets
{
class Default;
class subpart: Default
{
interval = 0;
sizeCoef = 0;
colorCoef[] = {1,1,1,1};
animationName = "";
animationSpeedCoef = 0;
lifetime = 0;
position[] = {0,0,0};
};
};
//need to remove the spray, submarine is not a speedboat
class subspray
{
class subspray
{
simulation = "particles";
type = "subpart";
};
};

View File

@@ -8,6 +8,7 @@ class Category_48 {
//Unarmed Boats //Unarmed Boats
class Category_49 { class Category_49 {
class Submarine_DZE {type = "trade_any_boat";buy[] = {2,"ItemBriefcase100oz"};sell[] = {1,"ItemBriefcase100oz"};};
class Smallboat_1_DZE {type = "trade_any_boat";buy[] = {2,"ItemGoldBar10oz"};sell[] = {1,"ItemGoldBar10oz"};}; class Smallboat_1_DZE {type = "trade_any_boat";buy[] = {2,"ItemGoldBar10oz"};sell[] = {1,"ItemGoldBar10oz"};};
class Smallboat_2_DZE {type = "trade_any_boat";buy[] = {2,"ItemGoldBar10oz"};sell[] = {1,"ItemGoldBar10oz"};}; class Smallboat_2_DZE {type = "trade_any_boat";buy[] = {2,"ItemGoldBar10oz"};sell[] = {1,"ItemGoldBar10oz"};};
class Fishing_Boat_DZE {type = "trade_any_boat";buy[] = {4,"ItemGoldBar10oz"};sell[] = {2,"ItemGoldBar10oz"};}; class Fishing_Boat_DZE {type = "trade_any_boat";buy[] = {4,"ItemGoldBar10oz"};sell[] = {2,"ItemGoldBar10oz"};};

View File

@@ -8,6 +8,7 @@ class Category_48 {
//Unarmed Boats //Unarmed Boats
class Category_49 { class Category_49 {
class Submarine_DZE {type = "trade_any_boat";buy[] = {20000,"worth"};sell[] = {10000,"worth"};};
class Smallboat_1_DZE {type = "trade_any_boat";buy[] = {2000,"worth"};sell[] = {1000,"worth"};}; class Smallboat_1_DZE {type = "trade_any_boat";buy[] = {2000,"worth"};sell[] = {1000,"worth"};};
class Smallboat_2_DZE {type = "trade_any_boat";buy[] = {2000,"worth"};sell[] = {1000,"worth"};}; class Smallboat_2_DZE {type = "trade_any_boat";buy[] = {2000,"worth"};sell[] = {1000,"worth"};};
class Fishing_Boat_DZE {type = "trade_any_boat";buy[] = {4000,"worth"};sell[] = {2000,"worth"};}; class Fishing_Boat_DZE {type = "trade_any_boat";buy[] = {4000,"worth"};sell[] = {2000,"worth"};};

View File

@@ -0,0 +1,281 @@
class ship;
class Submarine: ship
{
scope = 0;
class HitPoints;
class ViewPilot;
};
class Submarine_DZE_base: Submarine
{
displayName = "Submarine";
model = "\z\addons\dayz_epoch_v\vehicles\sub\epoch_sub_01.p3d";
picture = "\ca\water\data\ico\pbx_CA.paa";
Icon = "\Ca\water\Data\map_ico\icomap_rubber_CA.paa";
mapSize = 6;
vehicleClass = "DayZ Epoch Vehicles";
//vehicle characteristics
maxSpeed = 125;
brakeDistance = 20;
armor = 20;
damageResistance = 0.00318;
crewVulnerable = 1;
castDriverShadow = 0;
castCargoShadow = 0;
supplyRadius = 5;
hasGunner = 0;
enableManualFire = 0;
weapons[] = {};
magazines[] = {};
precision = 10;
enableGPS = false;
memoryPointsGetInDriver = "pos driver";
memoryPointsGetInDriverDir = "pos driver dir";
memoryPointsGetInCargo = "pos cargo";
memoryPointsGetInCargoDir = "pos cargo dir";
//need to remove the spray, submarine is not a speedboat
leftWaterEffect = "subspray";
rightWaterEffect = "subspray";
leftEngineEffect = "subspray";
rightEngineEffect = "subspray";
destrType = DestructWreck;
class DestructionEffects;
//driverForceOptics = 1;
//driverOpticsModel = "\ca\Tracked\optika_M1A1_commander";
//based on fishing boat
transportMaxMagazines = 500;
transportMaxWeapons = 50;
transportMaxBackpacks = 10;
// unitInfoType = UnitInfoCar; //By default no hud information
//crew
getInAction = GetInLow;
getOutAction = GetOutLow;
transportSoldier = 3;
typicalCargo[] = {RU_Soldier,RU_Soldier_AR,RU_Soldier_AR};
driverAction = PBX_Driver;
cargoAction[] = {Truck_Cargo04,Truck_Cargo01,Truck_Cargo01};
// FB_Cargo01,FB_Cargo02,FB_Cargo03,FB_Cargo03,FB_Cargo03,FB_Cargo03,FB_Cargo04
cargoGetInAction[] = {"GetInLow"};
cargoGetOutAction[] = {"GetOutLow"};
extCameraPosition[] = {0,4.0,-14.0};
//ensure no turrets active
class turrets{};
//anim sources
class AnimationSources
{
class dive
{
AnimPeriod = 12;
source = "user";
InitPhase = 0;
};
class peri_trans
{
AnimPeriod = 3;
source = "user";
InitPhase = 0;
};
class IndicatorSonar
{
AnimPeriod = 1;
source = "user";
InitPhase = 0;
};
};
//in vehicle actions
class UserActions
{
class dive
{
displayName = "Dive";
displayNameDefault = "";
onlyforplayer = true;
position = "zamerny";
radius = 1;
priority = 99;
condition = "(player == (driver this)) && {(surfaceIsWater position this) && {(((getPosATL this) select 2) > 10) && (this animationphase ""dive"" <= 0.5)}}";
statement = "this animate [""dive"", 1]";
};
class surface : dive
{
displayName = "Surface";
condition = "(player == (driver this)) && {(this animationphase ""dive"" > 0.5)}";
statement = "this animate [""dive"", 0];";
};
/*
class periscope_up
{
displayName = "Periscope Up";
displayNameDefault = "";
onlyforplayer = true;
position = "zamerny";
radius = 3;
priority = 99;
condition = "(player == driver this) && (this animationphase ""peri_trans"" < 0.5)";
statement = "this animate [""peri_trans"", 1]";
};
class periscope_down : periscope_up
{
displayName = "Periscope Down";
condition = "(player == driver this) && (this animationphase ""peri_trans"" > 0.5)";
statement = "this animate [""peri_trans"", 0];";
};
*/
};
//damage
class HitPoints: HitPoints
{
class HitHull
{
armor = 0.85;
material = -1;
name = "telo";
visual = "zbytek";
passThrough = 1;
};
class HitEngine
{
armor = 1.2;
material = 60;
name = "motor";
visual = "zbytek";
passThrough = 1;
};
};
class Damage
{
tex[] = {};
mat[] =
{
"z\addons\dayz_epoch_v\vehicles\sub\data\sub_01.rvmat",
"z\addons\dayz_epoch_v\vehicles\sub\data\sub_01_damage.rvmat",
"z\addons\dayz_epoch_v\vehicles\sub\data\sub_01_destruct.rvmat",
"z\addons\dayz_epoch_v\vehicles\sub\data\sub_02.rvmat",
"z\addons\dayz_epoch_v\vehicles\sub\data\sub_02_damage.rvmat",
"z\addons\dayz_epoch_v\vehicles\sub\data\sub_02_destruct.rvmat",
"z\addons\dayz_epoch_v\vehicles\sub\data\sub_03.rvmat",
"z\addons\dayz_epoch_v\vehicles\sub\data\sub_03_damage.rvmat",
"z\addons\dayz_epoch_v\vehicles\sub\data\sub_03_destruct.rvmat",
"z\addons\dayz_epoch_v\vehicles\sub\data\sub_details.rvmat",
"z\addons\dayz_epoch_v\vehicles\sub\data\sub_details_damage.rvmat",
"z\addons\dayz_epoch_v\vehicles\sub\data\sub_details_destruct.rvmat",
"z\addons\dayz_epoch_v\vehicles\sub\data\sub_int.rvmat",
"z\addons\dayz_epoch_v\vehicles\sub\data\sub_int_damage.rvmat",
"z\addons\dayz_epoch_v\vehicles\sub\data\sub_int_destruct.rvmat",
"z\addons\dayz_epoch_v\vehicles\sub\data\sub_shell.rvmat",
"z\addons\dayz_epoch_v\vehicles\sub\data\sub_shell_damage.rvmat",
"z\addons\dayz_epoch_v\vehicles\sub\data\sub_shell_destruct.rvmat"
};
};
//sounds
insideSoundCoef = 1;
soundEngineOnInt[] = {"ca\sounds\vehicles\water\rhib\ext-boat-start-01", db-20, 1.0};
soundEngineOnExt[] = {"ca\sounds\vehicles\water\rhib\ext-boat-start-01", db0, 1.0, 150};
soundEngineOffInt[] = {"ca\sounds\vehicles\water\rhib\ext-boat-stop-01", db-20, 1.0};
soundEngineOffExt[] = {"ca\sounds\vehicles\water\rhib\ext-boat-stop-01", db0, 1.0, 150};
class Sounds
{
class Engine
{
sound[] = {"ca\sounds\vehicles\water\rhib\ext-boat-engine-low-01", db0, 0.9, 300};
frequency = "(randomizer*0.05+0.95)*rpm";
volume = "engineOn*(rpm factor[0.5, 0.1])";
};
class EngineHighOut
{
sound[] = {"ca\sounds\vehicles\water\rhib\ext-boat-engine-high-01", db0, 0.8, 300};
frequency = "(randomizer*0.05+0.95)*rpm";
volume = "engineOn*(rpm factor[0.4, 1.3])";
};
class IdleOut
{
sound[] = {"ca\sounds\vehicles\water\rhib\ext-boat-engine-idle-03", db-5, 1.0, 150};
frequency = "1";
volume = "engineOn*(rpm factor[0.3, 0])";
};
class WaternoiseOutW0
{
sound[] = {"ca\sounds\vehicles\water\water_sfx\ext-water-noise-nospeed", db-8, 1.0, 100};
frequency = "1";
volume = "(speed factor[7, 0])";
};
class WaternoiseOutW1
{
sound[] = {"ca\sounds\vehicles\water\water_sfx\ext-boat-lospd-noise-02", db-8, 1.0, 100};
frequency = "1";
volume = "((speed factor[2, 12]) min (speed factor[12, 2]))";
};
class WaternoiseOutW2
{
sound[] = {"ca\sounds\vehicles\water\water_sfx\ext-boat-hispd-noise-02", db-8, 1.0, 100};
frequency = "1";
volume = "(speed factor[9, 18.7])";
};
};
class ViewPilot: ViewPilot
{
initFov = 0.7;
minFov = 0.25;
maxFov = 1.4;
initAngleX = 0;
minAngleX = -65;
maxAngleX = 85; //Rg
initAngleY = 0;
minAngleY = -150;
maxAngleY = 150; //Rg
};
//searchlight
class Reflectors
{
class main_reflector
{
color[] = {0.8, 0.8, 0.9, 1.0};
ambient[] = {0.1, 0.1, 0.1, 1.0};
position = "light";
direction = "lightEnd";
hitpoint = "light";
selection = "light";
size = 1.0;
brightness = 5.0;
};
};
//blinkers
class MarkerLights
{
class RedStill
{
name = "red_light";
color[] = {1.0, 0.1, 0.1, 1};
ambient[] = {0.1, 0.01, 0.01, 1};
brightness = 0.01;
blinking = false;
};
class GreenStill
{
name = "green_light";
color[] = {0.1, 1.0, 0.1, 1};
ambient[] = {0.01, 0.1, 0.01, 1};
brightness = 0.01;
blinking = false;
};
class WhiteStill
{
name = "white_light";
color[] = {1.0, 1.0, 1.0, 1};
ambient[] = {0.1, 0.1, 0.1, 1};
brightness = 0.01;
blinking = false;
};
};
};
class Submarine_DZE: Submarine_DZE_base
{
scope = 2;
displayName = $STR_VEH_NAME_SUBMARINE;
transportMaxMagazines = 360;
transportMaxWeapons = 80;
transportMaxBackpacks = 20;
};

View File

@@ -707,6 +707,7 @@ class CfgVehicles
#include "Boat\smallboat.hpp" #include "Boat\smallboat.hpp"
#include "Boat\JetSkiYanahui.hpp" #include "Boat\JetSkiYanahui.hpp"
#include "Boat\Seafox.hpp" #include "Boat\Seafox.hpp"
#include "Boat\Submarine.hpp"
//Epoch Parachute //Epoch Parachute
#include "Parachute.hpp" #include "Parachute.hpp"

View File

@@ -32,23 +32,23 @@ if (Z_SingleCurrency) then {
"<img image='%1' size='3' align='center'/><br />" + "<img image='%1' size='3' align='center'/><br />" +
"<t color='#bcbcbc' size='0.7'>%9: </t><t color='#ffffff' size='0.7'>%2</t><br />" + "<t color='#bcbcbc' size='0.7'>%9: </t><t color='#ffffff' size='0.7'>%2</t><br />" +
"<t color='#bcbcbc' size='0.7'>%10: </t><t color='#ffffff' size='0.7'>%3</t><br />" + "<t color='#bcbcbc' size='0.7'>%10: </t><t color='#ffffff' size='0.7'>%3</t><br />" +
"<t color='#bcbcbc' size='0.7'>%12: </t><t color='#ffffff' size='0.7'>%6 %4</t><br />" + "<t color='#bcbcbc' size='0.7'>%12: </t><t color='#ffffff' size='0.7'>%6 %7</t><br />" +
"<t color='#bcbcbc' size='0.7'>%11: </t><t color='#ffffff' size='0.7'>%5 %7</t><br />" + "<t color='#bcbcbc' size='0.7'>%11: </t><t color='#ffffff' size='0.7'>%5 %4</t><br />" +
"<t color='#bcbcbc' size='0.7'>%14: </t><t color='#ffffff' size='0.7'><img image='%13'/> %8</t><br />", "<t color='#bcbcbc' size='0.7'>%14: </t><t color='#ffffff' size='0.7'><img image='%13'/> %8</t><br />",
_picture, _picture,
_display, _display,
_class, _class,
CurrencyName, CurrencyName,
if (_sellPrice >= 0) then {[_sellPrice] call BIS_fnc_numberText;} else {"";}, if (_sellPrice >= 0) then {[_sellPrice] call BIS_fnc_numberText;} else {"";},
if (_buyPrice >= 0) then {[_buyPrice] call BIS_fnc_numberText;} else {"";}, if (_buyPrice >= 0) then {[_buyPrice] call BIS_fnc_numberText;} else {localize "STR_EPOCH_TRADE_UNBUYABLE";},
CurrencyName, if (_buyPrice >= 0) then {CurrencyName} else {""},
_transportMaxMagazines, _transportMaxMagazines,
localize "STR_EPOCH_NAME", localize "STR_EPOCH_NAME",
localize "STR_EPOCH_CLASS", localize "STR_EPOCH_CLASS",
localize "STR_EPOCH_PLAYER_292", localize "STR_EPOCH_PLAYER_292",
localize "STR_EPOCH_PLAYER_291", localize "STR_EPOCH_PLAYER_291",
"\z\addons\dayz_code\gui\gear\gear_ui_slots_items_white.paa", "\z\addons\dayz_code\gui\gear\gear_ui_slots_items_white.paa",
localize "STR_EPOCH_CARGO_SPACE" localize "STR_EPOCH_CARGO_SPACE"
]; ];
} else { } else {
_picSell = ""; _picSell = "";
@@ -60,6 +60,8 @@ if (Z_SingleCurrency) then {
if (_buyPrice >= 0) then { if (_buyPrice >= 0) then {
_picBuy = getText (configFile >> 'CfgMagazines' >> _buyCurrency >> 'picture'); _picBuy = getText (configFile >> 'CfgMagazines' >> _buyCurrency >> 'picture');
_buyCurrency = getText (configFile >> 'CfgMagazines' >> _buyCurrency >> 'displayName'); _buyCurrency = getText (configFile >> 'CfgMagazines' >> _buyCurrency >> 'displayName');
} else {
_buyCurrency = "";
}; };
_formattedText = format [ _formattedText = format [
@@ -74,7 +76,7 @@ if (Z_SingleCurrency) then {
_class, _class,
_buyCurrency, _buyCurrency,
if (_sellPrice >= 0) then {_sellPrice} else {"";}, if (_sellPrice >= 0) then {_sellPrice} else {"";},
if (_buyPrice >= 0) then {_buyPrice} else {"";}, if (_buyPrice >= 0) then {_buyPrice} else {localize "STR_EPOCH_TRADE_UNBUYABLE";},
_sellCurrency, _sellCurrency,
_transportMaxMagazines, _transportMaxMagazines,
localize "STR_EPOCH_NAME", localize "STR_EPOCH_NAME",

View File

@@ -57,19 +57,20 @@ if (Z_SingleCurrency) then {
"<img image='%1' size='3' align='center'/><br />" + "<img image='%1' size='3' align='center'/><br />" +
"<t color='#bcbcbc' size='0.7'>%8: </t><t color='#ffffff' size='0.7'>%2</t><br />" + "<t color='#bcbcbc' size='0.7'>%8: </t><t color='#ffffff' size='0.7'>%2</t><br />" +
"<t color='#bcbcbc' size='0.7'>%9: </t><t color='#ffffff' size='0.7'>%3</t><br />" + "<t color='#bcbcbc' size='0.7'>%9: </t><t color='#ffffff' size='0.7'>%3</t><br />" +
"<t color='#bcbcbc' size='0.7'>%11: </t><t color='#ffffff' size='0.7'>%6 %7</t><br />" + "<t color='#bcbcbc' size='0.7'>%11: </t><t color='#ffffff' size='0.7'>%6 %12</t><br />" +
"<t color='#bcbcbc' size='0.7'>%10: </t><t color='#ffffff' size='0.7'>%5 %7</t><br />", "<t color='#bcbcbc' size='0.7'>%10: </t><t color='#ffffff' size='0.7'>%5 %7</t><br />",
_picture, _picture,
_display, _display,
_class, _class,
'lazy', 'lazy',
if (_sellPrice >= 0) then {[_sellPrice] call BIS_fnc_numberText;} else {"";}, if (_sellPrice >= 0) then {[_sellPrice] call BIS_fnc_numberText;} else {"";},
if (_buyPrice >= 0) then {[_buyPrice] call BIS_fnc_numberText;} else {"";}, if (_buyPrice >= 0) then {[_buyPrice] call BIS_fnc_numberText;} else {localize "STR_EPOCH_TRADE_UNBUYABLE";},
CurrencyName, CurrencyName,
localize "STR_EPOCH_NAME", localize "STR_EPOCH_NAME",
localize "STR_EPOCH_CLASS", localize "STR_EPOCH_CLASS",
localize "STR_EPOCH_PLAYER_292", localize "STR_EPOCH_PLAYER_292",
localize "STR_EPOCH_PLAYER_291" localize "STR_EPOCH_PLAYER_291",
if (_buyPrice >= 0) then {CurrencyName} else {""}
]; ];
} else { } else {
_picSell = ""; _picSell = "";
@@ -81,7 +82,10 @@ if (Z_SingleCurrency) then {
if (_buyPrice >= 0) then { if (_buyPrice >= 0) then {
_picBuy = getText (configFile >> "CfgMagazines" >> _buyCurrency >> "picture"); _picBuy = getText (configFile >> "CfgMagazines" >> _buyCurrency >> "picture");
_buyCurrency = getText (configFile >> "CfgMagazines" >> _buyCurrency >> "displayName"); _buyCurrency = getText (configFile >> "CfgMagazines" >> _buyCurrency >> "displayName");
} else {
_buyCurrency = "";
}; };
_formattedText = format [ _formattedText = format [
"<img image='%1' size='3' align='center'/><br />" + "<img image='%1' size='3' align='center'/><br />" +
"<t color='#bcbcbc' size='0.7'>%11: </t><t color='#ffffff' size='0.7'>%2</t><br />" + "<t color='#bcbcbc' size='0.7'>%11: </t><t color='#ffffff' size='0.7'>%2</t><br />" +
@@ -93,7 +97,7 @@ if (Z_SingleCurrency) then {
_class, _class,
'lazy', 'lazy',
if (_sellPrice >= 0) then {_sellPrice} else {"";}, if (_sellPrice >= 0) then {_sellPrice} else {"";},
if (_buyPrice >= 0) then {_buyPrice} else {"";}, if (_buyPrice >= 0) then {_buyPrice} else {localize "STR_EPOCH_TRADE_UNBUYABLE";},
_sellCurrency, _sellCurrency,
_picSell, _picSell,
_buyCurrency, _buyCurrency,

View File

@@ -117,7 +117,7 @@ if (Z_SingleCurrency) then {
"<img image='%1' size='3' /><br />" + "<img image='%1' size='3' /><br />" +
"<t color='#bcbcbc' size='0.7'>%10: </t><t color='#ffffff' size='0.7'>%2</t><br />" + "<t color='#bcbcbc' size='0.7'>%10: </t><t color='#ffffff' size='0.7'>%2</t><br />" +
"<t color='#bcbcbc' size='0.7'>%11: </t><t color='#ffffff' size='0.7'>%3</t><br />" + "<t color='#bcbcbc' size='0.7'>%11: </t><t color='#ffffff' size='0.7'>%3</t><br />" +
"<t color='#bcbcbc' size='0.7'>%13: </t><t color='#ffffff' size='0.7'>%6 %7</t><br />" + "<t color='#bcbcbc' size='0.7'>%13: </t><t color='#ffffff' size='0.7'>%6 %27</t><br />" +
"<t color='#bcbcbc' size='0.7'>%12: </t><t color='#ffffff' size='0.7'>%5 %7</t><br />" + "<t color='#bcbcbc' size='0.7'>%12: </t><t color='#ffffff' size='0.7'>%5 %7</t><br />" +
"<t color='#bcbcbc' size='0.7'>%14: </t><t color='#ffffff' size='0.7'><img image='%15'/> %8 <img image='%16'/> %9 <img image='%26'/> %4</t><br />" + "<t color='#bcbcbc' size='0.7'>%14: </t><t color='#ffffff' size='0.7'><img image='%15'/> %8 <img image='%16'/> %9 <img image='%26'/> %4</t><br />" +
"<t color='#bcbcbc' size='0.7'>%17: </t><t color='#ffffff' size='0.7'>%18 </t><t color='#bcbcbc' size='0.7'>%24: </t><t color='#ffffff' size='0.7'>%25</t><br />" + // Armor / Seats "<t color='#bcbcbc' size='0.7'>%17: </t><t color='#ffffff' size='0.7'>%18 </t><t color='#bcbcbc' size='0.7'>%24: </t><t color='#ffffff' size='0.7'>%25</t><br />" + // Armor / Seats
@@ -127,7 +127,7 @@ if (Z_SingleCurrency) then {
_class, _class,
_transportmaxBackpacks, _transportmaxBackpacks,
if (_sellPrice >= 0) then {[_sellPrice] call BIS_fnc_numberText;} else {"";}, if (_sellPrice >= 0) then {[_sellPrice] call BIS_fnc_numberText;} else {"";},
if (_buyPrice >= 0) then {[_buyPrice] call BIS_fnc_numberText;} else {"";}, if (_buyPrice >= 0) then {[_buyPrice] call BIS_fnc_numberText;} else {localize "STR_EPOCH_TRADE_UNBUYABLE";},
CurrencyName, CurrencyName,
_transportMaxWeapons, _transportMaxWeapons,
_transportMaxMagazines, _transportMaxMagazines,
@@ -147,7 +147,8 @@ if (Z_SingleCurrency) then {
_maxSpeed, _maxSpeed,
localize "STR_EPOCH_SEATS", localize "STR_EPOCH_SEATS",
_seats, _seats,
"\z\addons\dayz_code\gui\gear\gear_ui_slots_backpacks_white.paa" "\z\addons\dayz_code\gui\gear\gear_ui_slots_backpacks_white.paa",
if (_buyPrice >= 0) then {CurrencyName} else {""}
]; ];
} else { } else {
_picSell = ""; _picSell = "";
@@ -159,6 +160,8 @@ if (Z_SingleCurrency) then {
if (_buyPrice >= 0) then { if (_buyPrice >= 0) then {
_picBuy = getText (configFile >> 'CfgMagazines' >> _buyCurrency >> 'picture'); _picBuy = getText (configFile >> 'CfgMagazines' >> _buyCurrency >> 'picture');
_buyCurrency = getText (configFile >> 'CfgMagazines' >> _buyCurrency >> 'displayName'); _buyCurrency = getText (configFile >> 'CfgMagazines' >> _buyCurrency >> 'displayName');
} else {
_buyCurrency = "";
}; };
_formattedText = format [ _formattedText = format [
@@ -175,7 +178,7 @@ if (Z_SingleCurrency) then {
_class, _class,
_transportmaxBackpacks, _transportmaxBackpacks,
if (_sellPrice >= 0) then {_sellPrice} else {"";}, if (_sellPrice >= 0) then {_sellPrice} else {"";},
if (_buyPrice >= 0) then {_buyPrice} else {"";}, if (_buyPrice >= 0) then {_buyPrice} else {localize "STR_EPOCH_TRADE_UNBUYABLE";},
_buyCurrency, _buyCurrency,
_transportMaxWeapons, _transportMaxWeapons,
_transportMaxMagazines, _transportMaxMagazines,

View File

@@ -66,19 +66,20 @@ if (Z_SingleCurrency) then {
"<img image='%1' size='3' align='center' /><br />" + "<img image='%1' size='3' align='center' /><br />" +
"<t color='#bcbcbc' size='0.7'>%8: </t><t color='#ffffff' size='0.7'>%2</t><br />" + "<t color='#bcbcbc' size='0.7'>%8: </t><t color='#ffffff' size='0.7'>%2</t><br />" +
"<t color='#bcbcbc' size='0.7'>%9: </t><t color='#ffffff' size='0.7'>%3</t><br />" + "<t color='#bcbcbc' size='0.7'>%9: </t><t color='#ffffff' size='0.7'>%3</t><br />" +
"<t color='#bcbcbc' size='0.7'>%11: </t><t color='#ffffff' size='0.7'>%6 %7</t><br />" + "<t color='#bcbcbc' size='0.7'>%11: </t><t color='#ffffff' size='0.7'>%6 %12</t><br />" +
"<t color='#bcbcbc' size='0.7'>%10: </t><t color='#ffffff' size='0.7'>%5 %7</t><br />", "<t color='#bcbcbc' size='0.7'>%10: </t><t color='#ffffff' size='0.7'>%5 %7</t><br />",
_picture, _picture,
_display, _display,
_class, _class,
_magText, _magText,
if (_sellPrice >= 0) then {[_sellPrice] call BIS_fnc_numberText;} else {"";}, if (_sellPrice >= 0) then {[_sellPrice] call BIS_fnc_numberText;} else {"";},
if (_buyPrice >= 0) then {[_buyPrice] call BIS_fnc_numberText;} else {"";}, if (_buyPrice >= 0) then {[_buyPrice] call BIS_fnc_numberText;} else {localize "STR_EPOCH_TRADE_UNBUYABLE";},
CurrencyName, CurrencyName,
localize "STR_EPOCH_NAME", localize "STR_EPOCH_NAME",
localize "STR_EPOCH_CLASS", localize "STR_EPOCH_CLASS",
localize "STR_EPOCH_PLAYER_292", localize "STR_EPOCH_PLAYER_292",
localize "STR_EPOCH_PLAYER_291" localize "STR_EPOCH_PLAYER_291",
if (_buyPrice >= 0) then {CurrencyName} else {""}
]; ];
} else { } else {
_picSell = ""; _picSell = "";
@@ -90,7 +91,10 @@ if (Z_SingleCurrency) then {
if (_buyPrice >= 0) then { if (_buyPrice >= 0) then {
_picBuy = getText (configFile >> 'CfgMagazines' >> _buyCurrency >> 'picture'); _picBuy = getText (configFile >> 'CfgMagazines' >> _buyCurrency >> 'picture');
_buyCurrency = getText (configFile >> 'CfgMagazines' >> _buyCurrency >> 'displayName'); _buyCurrency = getText (configFile >> 'CfgMagazines' >> _buyCurrency >> 'displayName');
} else {
_buyCurrency = "";
}; };
_formattedText = format [ _formattedText = format [
"<img image='%1' size='3' align='center' /><br />" + "<img image='%1' size='3' align='center' /><br />" +
"<t color='#bcbcbc' size='0.7'>%11: </t><t color='#ffffff' size='0.7'>%2</t><br />" + "<t color='#bcbcbc' size='0.7'>%11: </t><t color='#ffffff' size='0.7'>%2</t><br />" +
@@ -102,7 +106,7 @@ if (Z_SingleCurrency) then {
_class, _class,
_magText, _magText,
if (_sellPrice >= 0) then {_sellPrice} else {"";}, if (_sellPrice >= 0) then {_sellPrice} else {"";},
if (_buyPrice >= 0) then {_buyPrice} else {"";}, if (_buyPrice >= 0) then {_buyPrice} else {localize "STR_EPOCH_TRADE_UNBUYABLE";},
_sellCurrency, _sellCurrency,
_buyCurrency, _buyCurrency,
_picSell, _picSell,

View File

@@ -7,10 +7,10 @@ Opens player inventory to save
_magazineArray = [] call player_countMagazines; _magazineArray = [] call player_countMagazines;
if ((count _magazineArray) > 0) then { if ((count _magazineArray) > 0) then {
PVDZ_plr_Save = [player, if (player isKindOf "PZombie_VB") then {nil} else {_magazineArray},dayz_onBack]; PVDZ_plr_Save = [player, if (player isKindOf "PZombie_VB") then {nil} else {_magazineArray},dayz_onBack,weapons player];
publicVariableServer "PVDZ_plr_Save"; publicVariableServer "PVDZ_plr_Save";
}; };
//diag_log format["Player_forceSave with magazines: %1",_magazineArray]; //diag_log format["Player_forceSave with magazines: %1",_magazineArray];
dayz_lastSave = diag_tickTime; dayz_lastSave = diag_tickTime;

View File

@@ -4,7 +4,7 @@
Email: N/A Email: N/A
Creation date: 2020-12-30 17:20:00 Creation date: 2020-12-30 17:20:00
Last modified time: 2020-12-30 17:34:00 Last modified time: 2021-03-08 14:04:00
Description: Description:
Requests a simple save for the player object. Requests a simple save for the player object.
Example: Example:
@@ -13,5 +13,5 @@
Nothing Nothing
*/ */
PVDZ_plr_Save = [player,nil,dayz_onBack]; PVDZ_plr_Save = [player,nil,dayz_onBack,weapons player];
publicVariableServer "PVDZ_plr_Save"; publicVariableServer "PVDZ_plr_Save";

View File

@@ -114,6 +114,7 @@ class DefaultEventhandlers {
#include "Configs\CfgGlasses.hpp" #include "Configs\CfgGlasses.hpp"
#include "Configs\CfgArma.hpp" #include "Configs\CfgArma.hpp"
#include "Configs\CfgRecoils.hpp" #include "Configs\CfgRecoils.hpp"
#include "Configs\CfgParticles.hpp"
//#include "Configs\RadioProtocol.hpp" //#include "Configs\RadioProtocol.hpp"
//#include "gui\padlock\padlock_ui.hpp" //#include "gui\padlock\padlock_ui.hpp"

View File

@@ -13471,6 +13471,11 @@
<German>Motorrad M1030 (Grün)</German> <German>Motorrad M1030 (Grün)</German>
<Russian>Мотоцикл M1030 (Зелёный)</Russian> <Russian>Мотоцикл M1030 (Зелёный)</Russian>
</Key> </Key>
<Key ID="STR_VEH_NAME_SUBMARINE">
<English>Submarine</English>
<German>U-Boot</German>
<Russian>Подводная лодка</Russian>
</Key>
<Key ID="STR_VEH_NAME_RHIB_M2"> <Key ID="STR_VEH_NAME_RHIB_M2">
<English>RHIB (M2)</English> <English>RHIB (M2)</English>
<Russian>НЛЖК (M2)</Russian> <Russian>НЛЖК (M2)</Russian>
@@ -13478,7 +13483,7 @@
<Key ID="STR_VEH_NAME_RHIB_MK19"> <Key ID="STR_VEH_NAME_RHIB_MK19">
<English>RHIB (MK 19)</English> <English>RHIB (MK 19)</English>
<Russian>НЛЖК (MK 19)</Russian> <Russian>НЛЖК (MK 19)</Russian>
</Key> </Key>
<Key ID="STR_VEH_NAME_PBX"> <Key ID="STR_VEH_NAME_PBX">
<English>PBX Rubber Boat</English> <English>PBX Rubber Boat</English>
<Russian>Моторная лодка ПВХ</Russian> <Russian>Моторная лодка ПВХ</Russian>
@@ -28943,6 +28948,11 @@
<German>Etwas Wechselgeld ist in deinem Inventar verborgen. Reduziere die Gegenstände in deinem Inventar, um das Wechselgeld sichtbar zu machen!</German> <German>Etwas Wechselgeld ist in deinem Inventar verborgen. Reduziere die Gegenstände in deinem Inventar, um das Wechselgeld sichtbar zu machen!</German>
<Russian>Некоторые изменения скрыты в вашем инвентаре. Уменьшите количество предметов в инвентаре, чтобы увидеть изменения!</Russian> <Russian>Некоторые изменения скрыты в вашем инвентаре. Уменьшите количество предметов в инвентаре, чтобы увидеть изменения!</Russian>
</Key> </Key>
<Key ID="STR_EPOCH_TRADE_UNBUYABLE">
<English>Unbuyable</English>
<German>Nicht kaufbar</German>
<Russian>Невозможно купить</Russian>
</Key>
<!-- PLOT MANAGEMENT BELOW --> <!-- PLOT MANAGEMENT BELOW -->

View File

@@ -3,6 +3,7 @@
local _character = _this select 0; local _character = _this select 0;
local _magazines = _this select 1; local _magazines = _this select 1;
local _dayz_onBack = _this select 2; local _dayz_onBack = _this select 2;
local _weapons = _this select 3;
local _characterID = _character getVariable ["characterID","0"]; local _characterID = _character getVariable ["characterID","0"];
local _playerUID = getPlayerUID _character; local _playerUID = getPlayerUID _character;
local _charPos = getPosATL _character; local _charPos = getPosATL _character;
@@ -53,7 +54,7 @@ local _charPosLen = count _charPos;
local _magTemp = []; local _magTemp = [];
if (!isNil "_magazines") then { if (!isNil "_magazines") then {
_playerGear = [weapons _character,_magazines,_dayz_onBack]; _playerGear = [_weapons,_magazines,_dayz_onBack];
_character setVariable["ServerMagArray",[_magazines,_dayz_onBack], false]; _character setVariable["ServerMagArray",[_magazines,_dayz_onBack], false];
} else { } else {
//check Magazines everytime they aren't sent by player_forceSave //check Magazines everytime they aren't sent by player_forceSave
@@ -78,7 +79,7 @@ if (!isNil "_magazines") then {
_magazines = _magTemp - ["0"]; _magazines = _magTemp - ["0"];
_magazines = [_magazines, (_lastMagazines select 1)]; _magazines = [_magazines, (_lastMagazines select 1)];
_character setVariable["ServerMagArray",_magazines, false]; _character setVariable["ServerMagArray",_magazines, false];
_playerGear = [weapons _character,_magazines select 0,_magazines select 1]; _playerGear = [_weapons,_magazines select 0,_magazines select 1];
}; };
}; };

View File

@@ -88,8 +88,8 @@ server_obj_dam = {
_array set [count _array,[(_hit select 1),0]]; _array set [count _array,[(_hit select 1),0]];
}; };
} count _hitpoints; } count _hitpoints;
if (_allFixed && {!_totalDmg}) then {_object setDamage 0;}; if (_allFixed && !_totalDmg) then {_object setDamage 0;};
if (_forced) then { if (_forced) then {
if (_object in needUpdate_objects) then {needUpdate_objects = needUpdate_objects - [_object];}; if (_object in needUpdate_objects) then {needUpdate_objects = needUpdate_objects - [_object];};

View File

@@ -216,7 +216,8 @@ if (toLower worldName in ["caribou","chernarus","cmr_ovaron","dayznogova","dingo
["RHIB2Turret_DZE",_Ratio1], ["RHIB2Turret_DZE",_Ratio1],
["Smallboat_1_DZE",_Ratio3], ["Smallboat_1_DZE",_Ratio3],
["Smallboat_2_DZE",_Ratio3], ["Smallboat_2_DZE",_Ratio3],
["Zodiac_DZE",_Ratio3] ["Zodiac_DZE",_Ratio3],
["Submarine_DZE",_Ratio3]
]; ];
}; };