Organize files a bit and removed non source pbo's

This commit is contained in:
vbawol
2013-06-24 06:26:15 -05:00
parent b4cee9175b
commit 483279c126
1607 changed files with 0 additions and 0 deletions

View File

@@ -0,0 +1,504 @@
/*
FUNCTION COMPILES
*/
//Player only
if (!isDedicated) then {
_config = configFile >> "CfgLoot";
_config1 = configFile >> "CfgMagazines" >> "FoodEdible";
_config2 = configFile >> "CfgWeapons" >> "Loot";
"filmic" setToneMappingParams [0.07, 0.31, 0.23, 0.37, 0.011, 3.750, 6, 4]; setToneMapping "Filmic";
BIS_Effects_Burn = compile preprocessFile "\ca\Data\ParticleEffects\SCRIPTS\destruction\burn.sqf";
player_zombieCheck = compile preprocessFileLineNumbers "\z\addons\dayz_code\compile\player_zombieCheck.sqf"; //Run on a players computer, checks if the player is near a zombie
player_zombieAttack = compile preprocessFileLineNumbers "\z\addons\dayz_code\compile\player_zombieAttack.sqf"; //Run on a players computer, causes a nearby zombie to attack them
fnc_usec_damageActions = compile preprocessFileLineNumbers "\z\addons\dayz_code\compile\fn_damageActions.sqf"; //Checks which actions for nearby casualty
fnc_inAngleSector = compile preprocessFileLineNumbers "\z\addons\dayz_code\compile\fn_inAngleSector.sqf"; //Checks which actions for nearby casualty
fnc_usec_selfActions = compile preprocessFileLineNumbers "\z\addons\dayz_code\compile\fn_selfActions.sqf"; //Checks which actions for self
fnc_usec_unconscious = compile preprocessFileLineNumbers "\z\addons\dayz_code\compile\fn_unconscious.sqf";
player_temp_calculation = compile preprocessFileLineNumbers "\z\addons\dayz_code\compile\fn_temperatur.sqf"; //Temperatur System //TeeChange
player_weaponFiredNear = compile preprocessFileLineNumbers "\z\addons\dayz_code\compile\player_weaponFiredNear.sqf";
player_animalCheck = compile preprocessFileLineNumbers "\z\addons\dayz_code\compile\player_animalCheck.sqf";
player_spawnCheck = compile preprocessFileLineNumbers "\z\addons\dayz_code\compile\player_spawnCheck.sqf";
player_dumpBackpack = compile preprocessFileLineNumbers "\z\addons\dayz_code\compile\player_dumpBackpack.sqf";
// player_spawnLootCheck = compile preprocessFileLineNumbers "\z\addons\dayz_code\compile\player_spawnlootCheck.sqf";
// player_spawnZedCheck = compile preprocessFileLineNumbers "\z\addons\dayz_code\compile\player_spawnzedCheck.sqf";
building_spawnLoot = compile preprocessFileLineNumbers "\z\addons\dayz_code\compile\building_spawnLoot.sqf";
// player_taskHint = compile preprocessFileLineNumbers "\z\addons\dayz_code\compile\player_taskHint.sqf";
building_spawnZombies = compile preprocessFileLineNumbers "\z\addons\dayz_code\compile\building_spawnZombies.sqf";
//animal_monitor = compile preprocessFileLineNumbers "\z\addons\dayz_code\system\animal_monitor.sqf";
// building_monitor = compile preprocessFileLineNumbers "\z\addons\dayz_code\system\building_monitor.sqf";
player_fired = compile preprocessFileLineNumbers "\z\addons\dayz_code\compile\player_fired.sqf"; //Runs when player fires. Alerts nearby Zeds depending on calibre and audial rating
player_packTent = compile preprocessFileLineNumbers "\z\addons\dayz_code\compile\player_packTent.sqf";
player_packVault = compile preprocessFileLineNumbers "\z\addons\dayz_code\compile\player_packVault.sqf";
player_unlockVault = compile preprocessFileLineNumbers "\z\addons\dayz_code\compile\player_unlockVault.sqf";
player_lockVault = compile preprocessFileLineNumbers "\z\addons\dayz_code\compile\player_lockVault.sqf";
// control_zombieAgent = compile preprocessFileLineNumbers "\z\addons\dayz_code\compile\control_zombieAgent.sqf";
player_updateGui = compile preprocessFileLineNumbers "\z\addons\dayz_code\compile\player_updateGui.sqf";
player_crossbowBolt = compile preprocessFileLineNumbers "\z\addons\dayz_code\compile\player_crossbowBolt.sqf";
spawn_flies = compile preprocessFileLineNumbers "\z\addons\dayz_code\compile\spawn_flies.sqf";
// stream_locationFill = compile preprocessFileLineNumbers "\z\addons\dayz_code\compile\stream_locationFill.sqf";
// stream_locationDel = compile preprocessFileLineNumbers "\z\addons\dayz_code\compile\stream_locationDel.sqf";
// stream_locationCheck = compile preprocessFileLineNumbers "\z\addons\dayz_code\compile\stream_locationCheck.sqf";
player_music = compile preprocessFileLineNumbers "\z\addons\dayz_code\compile\player_music.sqf"; //Used to generate ambient music
player_login = compile preprocessFileLineNumbers "\z\addons\dayz_code\compile\player_login.sqf"; //Used to generate ambient music
player_death = compile preprocessFileLineNumbers "\z\addons\dayz_code\compile\player_death.sqf";
player_switchModel = compile preprocessFileLineNumbers "\z\addons\dayz_code\compile\player_switchModel.sqf";
player_checkStealth = compile preprocessFileLineNumbers "\z\addons\dayz_code\compile\player_checkStealth.sqf";
world_sunRise = compile preprocessFileLineNumbers "\z\addons\dayz_code\compile\fn_sunRise.sqf";
world_surfaceNoise = compile preprocessFileLineNumbers "\z\addons\dayz_code\compile\fn_surfaceNoise.sqf";
player_humanityMorph = compile preprocessFileLineNumbers "\z\addons\dayz_code\compile\player_humanityMorph.sqf";
player_throwObject = compile preprocessFileLineNumbers "\z\addons\dayz_code\compile\player_throwObject.sqf";
player_alertZombies = compile preprocessFileLineNumbers "\z\addons\dayz_code\compile\player_alertZombies.sqf";
player_fireMonitor = compile preprocessFileLineNumbers "\z\addons\dayz_code\system\fire_monitor.sqf";
player_friendliesCheck = compile preprocessFileLineNumbers "\z\addons\dayz_code\compile\player_friendliesCheck.sqf";
//Objects
object_roadFlare = compile preprocessFileLineNumbers "\z\addons\dayz_code\compile\object_roadFlare.sqf";
object_setpitchbank = compile preprocessFileLineNumbers "\z\addons\dayz_code\compile\fn_setpitchbank.sqf";
object_monitorGear = compile preprocessFileLineNumbers "\z\addons\dayz_code\compile\object_monitorGear.sqf";
//Zombies
zombie_findTargetAgent = compile preprocessFileLineNumbers "\z\addons\dayz_code\compile\zombie_findTargetAgent.sqf";
zombie_loiter = compile preprocessFileLineNumbers "\z\addons\dayz_code\compile\zombie_loiter.sqf"; //Server compile, used for loiter behaviour
zombie_generate = compile preprocessFileLineNumbers "\z\addons\dayz_code\compile\zombie_generate.sqf"; //Server compile, used for loiter behaviour
wild_spawnZombies = compile preprocessFileLineNumbers "\z\addons\dayz_code\compile\wild_spawnZombies.sqf"; //Server compile, used for loiter behaviour
//
dog_findTargetAgent = compile preprocessFileLineNumbers "\z\addons\dayz_code\compile\dog_findTargetAgent.sqf";
// Vehicle damage fix
vehicle_handleDamage = compile preprocessFileLineNumbers "\z\addons\dayz_code\compile\vehicle_handleDamage.sqf";
vehicle_handleKilled = compile preprocessFileLineNumbers "\z\addons\dayz_code\compile\vehicle_handleKilled.sqf";
//actions
player_countmagazines = compile preprocessFileLineNumbers "\z\addons\dayz_code\actions\player_countmagazines.sqf";
player_addToolbelt = compile preprocessFileLineNumbers "\z\addons\dayz_code\actions\player_addToolbelt.sqf";
player_copyKey = compile preprocessFileLineNumbers "\z\addons\dayz_code\actions\player_copyKey.sqf";
player_reloadMag = compile preprocessFileLineNumbers "\z\addons\dayz_code\actions\player_reloadMags.sqf";
player_loadCrate = compile preprocessFileLineNumbers "\z\addons\dayz_code\actions\player_loadCrate.sqf";
player_craftItem = compile preprocessFileLineNumbers "\z\addons\dayz_code\actions\player_craftItem.sqf";
player_craftItem1 = compile preprocessFileLineNumbers "\z\addons\dayz_code\actions\player_craftItem1.sqf";
player_craftItem2 = compile preprocessFileLineNumbers "\z\addons\dayz_code\actions\player_craftItem2.sqf";
player_craftItem3 = compile preprocessFileLineNumbers "\z\addons\dayz_code\actions\player_craftItem3.sqf";
player_craftItem4 = compile preprocessFileLineNumbers "\z\addons\dayz_code\actions\player_craftItem4.sqf";
player_tentPitch = compile preprocessFileLineNumbers "\z\addons\dayz_code\actions\tent_pitch.sqf";
player_vaultPitch = compile preprocessFileLineNumbers "\z\addons\dayz_code\actions\vault_pitch.sqf";
player_drink = compile preprocessFileLineNumbers "\z\addons\dayz_code\actions\player_drink.sqf";
player_eat = compile preprocessFileLineNumbers "\z\addons\dayz_code\actions\player_eat.sqf";
player_useMeds = compile preprocessFileLineNumbers "\z\addons\dayz_code\actions\player_useMeds.sqf";
player_fillWater = compile preprocessFileLineNumbers "\z\addons\dayz_code\actions\water_fill.sqf";
player_makeFire = compile preprocessFileLineNumbers "\z\addons\dayz_code\actions\player_makefire.sqf";
player_chopWood = compile preprocessFileLineNumbers "\z\addons\dayz_code\actions\player_chopWood.sqf";
player_goFishing = compile preprocessFileLineNumbers "\z\addons\dayz_code\actions\player_goFishing.sqf";
player_build = compile preprocessFileLineNumbers "\z\addons\dayz_code\actions\player_build.sqf";
player_wearClothes = compile preprocessFileLineNumbers "\z\addons\dayz_code\actions\player_wearClothes.sqf";
player_dropWeapon = compile preprocessFileLineNumbers "\z\addons\dayz_code\actions\player_dropWeapon.sqf";
player_setTrap = compile preprocessFileLineNumbers "\z\addons\dayz_code\actions\player_setTrap.sqf";
object_pickup = compile preprocessFileLineNumbers "\z\addons\dayz_code\actions\object_pickup.sqf";
player_flipvehicle = compile preprocessFileLineNumbers "\z\addons\dayz_code\actions\player_flipvehicle.sqf";
player_sleep = compile preprocessFileLineNumbers "\z\addons\dayz_code\actions\player_sleep.sqf";
//ui
player_selectSlot = compile preprocessFileLineNumbers "\z\addons\dayz_code\compile\ui_selectSlot.sqf";
player_gearSync = compile preprocessFileLineNumbers "\z\addons\dayz_code\compile\player_gearSync.sqf";
player_gearSet = compile preprocessFileLineNumbers "\z\addons\dayz_code\compile\player_gearSet.sqf";
ui_changeDisplay = compile preprocessFileLineNumbers "\z\addons\dayz_code\compile\ui_changeDisplay.sqf";
//System
player_monitor = compile preprocessFileLineNumbers "\z\addons\dayz_code\system\player_monitor.sqf";
player_spawn_1 = compile preprocessFileLineNumbers "\z\addons\dayz_code\system\player_spawn_1.sqf";
player_spawn_2 = compile preprocessFileLineNumbers "\z\addons\dayz_code\system\player_spawn_2.sqf";
onPreloadStarted "dayz_preloadFinished = false;";
onPreloadFinished "dayz_preloadFinished = true;";
// TODO: need move it in player_monitor.fsm
// allow player disconnect from server, if loading hang, kicked by BE etc.
[] spawn {
private["_timeOut","_display","_control1","_control2"];
disableSerialization;
_timeOut = 0;
dayz_loadScreenMsg = "";
diag_log "DEBUG: loadscreen guard started.";
_display = uiNameSpace getVariable "BIS_loadingScreen";
_control1 = _display displayctrl 8400;
_control2 = _display displayctrl 102;
// 120 sec timeout
while { _timeOut < 500 && !dayz_clientPreload && !dayz_authed } do {
if ( isNull _display ) then {
waitUntil { !dialog; };
startLoadingScreen ["","RscDisplayLoadCustom"];
_display = uiNameSpace getVariable "BIS_loadingScreen";
_control1 = _display displayctrl 8400;
_control2 = _display displayctrl 102;
};
if ( dayz_loadScreenMsg != "" ) then {
_control1 ctrlSetText dayz_loadScreenMsg;
dayz_loadScreenMsg = "";
};
_control2 ctrlSetText format["%1",round(_timeOut*0.1)];
_timeOut = _timeOut + 1;
sleep 0.1;
};
endLoadingScreen;
/*
if ( !dayz_clientPreload && !dayz_authed ) then {
diag_log "DEBUG: loadscreen guard ended with timeout.";
disableUserInput false;
1 cutText ["Disconnected!", "PLAIN"];
player enableSimulation false;
} else { diag_log "DEBUG: loadscreen guard ended."; };
*/
};
dayz_losChance = {
private["_agent","_maxDis","_dis","_val","_maxExp","_myExp"];
_agent = _this select 0;
_dis = _this select 1;
_maxDis = _this select 2;
// diag_log ("VAL: " + str(_this));
_val = (_maxDis - _dis) max 0;
_maxExp = ((exp 2) * _maxDis);
_myExp = ((exp 2) * (_val)) / _maxExp;
_myExp = _myExp * 0.7;
_myExp
};
ui_initDisplay = {
private["_control","_ctrlBleed","_display","_ctrlFracture","_ctrlDogFood","_ctrlDogWater","_ctrlDogWaterBorder", "_ctrlDogFoodBorder"];
disableSerialization;
_display = uiNamespace getVariable 'DAYZ_GUI_display';
_control = _display displayCtrl 1204;
_control ctrlShow false;
if (!r_player_injured) then {
_ctrlBleed = _display displayCtrl 1303;
_ctrlBleed ctrlShow false;
};
if (!r_fracture_legs and !r_fracture_arms) then {
_ctrlFracture = _display displayCtrl 1203;
_ctrlFracture ctrlShow false;
};
_ctrlDogFoodBorder = _display displayCtrl 1501;
_ctrlDogFoodBorder ctrlShow false;
_ctrlDogFood = _display displayCtrl 1701;
_ctrlDogFood ctrlShow false;
_ctrlDogWaterBorder = _display displayCtrl 1502;
_ctrlDogWaterBorder ctrlShow false;
_ctrlDogWater = _display displayCtrl 1702;
_ctrlDogWater ctrlShow false
};
dayz_losCheck = {
private["_target","_agent","_cantSee"];
_target = _this select 0;
_agent = _this select 1;
_cantSee = true;
if (!isNull _target) then {
_tPos = eyePos _target; //(getPosASL _target);
_zPos = eyePos _agent; //(getPosASL _agent);
if ((count _tPos > 0) and (count _zPos > 0)) then {
_cantSee = terrainIntersectASL [_tPos, _zPos];
//diag_log ("terrainIntersectASL: " + str(_cantSee));
if (!_cantSee) then {
_cantSee = lineIntersects [_tPos, _zPos];
//diag_log ("lineIntersects: " + str(_cantSee));
};
};
};
_cantSee
};
eh_zombieInit = {
private["_unit","_pos"];
//_unit = _this select 0;
//_pos = getPosATL _unit;
//_id = [_pos,_unit] execFSM "\z\AddOns\dayz_code\system\zombie_agent.fsm";
};
dayz_equipCheck = {
private ["_empty", "_needed","_diff","_success"];
_config = _this;
_empty = [player] call BIS_fnc_invSlotsEmpty;
_needed = [_config] call BIS_fnc_invSlotType;
_diff = [_empty,_needed] call BIS_fnc_vectorDiff;
_success = true;
{
if (_x > 0) then {_success = false};
} forEach _diff;
hint format["Config: %5\nEmpty: %1\nNeeded: %2\nDiff: %3\nSuccess: %4",_empty,_needed,_diff,_success,_config];
_success
};
vehicle_gear_count = {
private["_counter"];
_counter = 0;
{
_counter = _counter + _x;
} forEach _this;
_counter
};
dayz_spaceInterrupt = {
private ["_dikCode", "_handled"];
_dikCode = _this select 1;
_handled = false;
if (_dikCode in (actionKeys "GetOver")) then {
if (player isKindOf "PZombie_VB") exitWith {
player switchAction "walkf";
};
if (!r_fracture_legs and (time - dayz_lastCheckBit > 4)) then {
_inBuilding = [player] call fnc_isInsideBuilding;
_nearbyObjects = nearestObjects[getPosATL player, dayz_disallowedVault, 8];
if (!_inBuilding and (count _nearbyObjects == 0)) then {
dayz_lastCheckBit = time;
call player_CombatRoll;
};
};
};
//if (_dikCode == 57) then {_handled = true}; // space
//if (_dikCode in actionKeys 'MoveForward' or _dikCode in actionKeys 'MoveBack') then {r_interrupt = true};
if (_dikCode == 210) then //SCROLL LOCK
{
_nill = execvm "\z\addons\dayz_code\actions\playerstats.sqf";
};
if (_dikCode in actionKeys "MoveLeft") then {r_interrupt = true};
if (_dikCode in actionKeys "MoveRight") then {r_interrupt = true};
if (_dikCode in actionKeys "MoveForward") then {r_interrupt = true};
if (_dikCode in actionKeys "MoveBack") then {r_interrupt = true};
if (_dikCode in actionKeys "ForceCommandingMode") then {_handled = true};
if (_dikCode in actionKeys "PushToTalk" and (time - dayz_lastCheckBit > 10)) then {
dayz_lastCheckBit = time;
[player,50,true,(getPosATL player)] spawn player_alertZombies;
};
if (_dikCode in actionKeys "VoiceOverNet" and (time - dayz_lastCheckBit > 10)) then {
dayz_lastCheckBit = time;
[player,50,true,(getPosATL player)] spawn player_alertZombies;
};
if (_dikCode in actionKeys "PushToTalkDirect" and (time - dayz_lastCheckBit > 10)) then {
dayz_lastCheckBit = time;
[player,15,false,(getPosATL player)] spawn player_alertZombies;
};
if (_dikCode in actionKeys "Chat" and (time - dayz_lastCheckBit > 10)) then {
dayz_lastCheckBit = time;
[player,15,false,(getPosATL player)] spawn player_alertZombies;
};
if (_dikCode in actionKeys "User20" and (time - dayz_lastCheckBit > 5)) then {
dayz_lastCheckBit = time;
_nill = execvm "\z\addons\dayz_code\actions\playerstats.sqf";
};
if ((_dikCode == 0x3E or _dikCode == 0x0F or _dikCode == 0xD3) and (time - dayz_lastCheckBit > 10)) then {
dayz_lastCheckBit = time;
call dayz_forceSave;
};
/*
if (_dikCode in actionKeys "IngamePause") then {
_idOnPause = [] spawn dayz_onPause;
};
*/
_handled
};
player_CombatRoll = {
DoRE = ({isPlayer _x} count (player nearEntities ["AllVehicles",100]) > 1);
if (canRoll && animationState player in ["amovpercmrunslowwrfldf","amovpercmrunsraswrfldf","amovpercmevaslowwrfldf","amovpercmevasraswrfldf"]) then {
canRoll = false;
null = [] spawn {
if (DoRE) then {
[nil, player, rSWITCHMOVE, "ActsPercMrunSlowWrflDf_FlipFlopPara"] call RE;
} else {
player switchMove "ActsPercMrunSlowWrflDf_FlipFlopPara";
};
sleep 0.3;
player setVelocity [(velocity player select 0) + 1.5 * sin direction player, (velocity player select 1) + 1.5 * cos direction player, (velocity player select 2) + 4];
sleep 1;
canRoll = true;
};
_handled = true;
};
};
player_serverModelChange = {
private["_object","_model"];
_object = _this select 0;
_model = _this select 1;
if (_object == player) then {
_model call player_switchModel;
};
};
player_guiControlFlash = {
private["_control"];
_control = _this;
if (ctrlShown _control) then {
_control ctrlShow false;
} else {
_control ctrlShow true;
};
};
gear_ui_offMenu = {
private["_control","_parent","_menu"];
disableSerialization;
_control = _this select 0;
_parent = findDisplay 106;
if (!(_this select 3)) then {
for "_i" from 0 to 9 do {
_menu = _parent displayCtrl (1600 + _i);
_menu ctrlShow false;
};
_grpPos = ctrlPosition _control;
_grpPos set [3,0];
_control ctrlSetPosition _grpPos;
_control ctrlShow false;
_control ctrlCommit 0;
};
};
gear_ui_init = {
private["_control","_parent","_menu","_dspl","_grpPos"];
disableSerialization;
_parent = findDisplay 106;
_control = _parent displayCtrl 6902;
for "_i" from 0 to 9 do {
_menu = _parent displayCtrl (1600 + _i);
_menu ctrlShow false;
};
_grpPos = ctrlPosition _control;
_grpPos set [3,0];
_control ctrlSetPosition _grpPos;
_control ctrlShow false;
_control ctrlCommit 0;
};
dayz_eyeDir = {
private["_vval","_vdir"];
_vval = (eyeDirection _this);
_vdir = (_vval select 0) atan2 (_vval select 1);
if (_vdir < 0) then {_vdir = 360 + _vdir};
_vdir
};
dayz_lowHumanity = {
private["_unit","_humanity","_delay"];
_unit = _this;
if ((_unit distance player) < 15) then {
_humanity = _unit getVariable["humanity",0];
dayz_heartBeat = true;
if (_humanity < -3000) then {
_delay = ((10000 + _humanity) / 5500) + 0.3;
playSound "heartbeat_1";
sleep _delay;
};
dayz_heartBeat = false;
};
};
/*
dayz_meleeMagazineCheck = {
private["_meleeNum","_magType","_wpnType"];
_wpnType = _this;
_magType = ([] + getArray (configFile >> "CfgWeapons" >> _wpnType >> "magazines")) select 0;
_meleeNum = ({_x == _magType} count magazines player);
if (_meleeNum > 1) then {
if (player hasWeapon _wpnType) then {
_meleeNum = _meleeNum - 1;
};
for "_i" from 1 to _meleeNum do {
player removeMagazine _magType;
};
};
};
*/
dayz_originalPlayer = player;
};
progressLoadingScreen 0.8;
//Both
BIS_fnc_selectRandom = compile preprocessFileLineNumbers "\z\addons\dayz_code\compile\fn_selectRandom.sqf"; //Checks which actions for nearby casualty
fnc_buildWeightedArray = compile preprocessFileLineNumbers "\z\addons\dayz_code\compile\fn_buildWeightedArray.sqf"; //Checks which actions for nearby casualty
fnc_usec_damageVehicle = compile preprocessFileLineNumbers "\z\addons\dayz_code\compile\fn_damageHandlerVehicle.sqf"; //Event handler run on damage
zombie_initialize = compile preprocessFileLineNumbers "\z\addons\dayz_code\init\zombie_init.sqf";
// object_vehicleKilled = compile preprocessFileLineNumbers "\z\addons\dayz_code\compile\object_vehicleKilled.sqf"; //Event handler run on damage
object_setHitServer = compile preprocessFileLineNumbers "\z\addons\dayz_code\compile\object_setHitServer.sqf"; //process the hit as a NORMAL damage (useful for persistent vehicles)
object_setFixServer = compile preprocessFileLineNumbers "\z\addons\dayz_code\compile\object_setFixServer.sqf"; //process the hit as a NORMAL damage (useful for persistent vehicles)
object_getHit = compile preprocessFileLineNumbers "\z\addons\dayz_code\compile\object_getHit.sqf"; //gets the hit value for a HitPoint (i.e. HitLegs) against the selection (i.e. "legs"), returns the value
object_setHit = compile preprocessFileLineNumbers "\z\addons\dayz_code\compile\object_setHit.sqf"; //process the hit as a NORMAL damage (useful for persistent vehicles)
object_processHit = compile preprocessFileLineNumbers "\z\addons\dayz_code\compile\object_processHit.sqf"; //process the hit in the REVO damage system (records and sets hit)
object_delLocal = compile preprocessFileLineNumbers "\z\addons\dayz_code\compile\object_delLocal.sqf";
// object_cargoCheck = compile preprocessFileLineNumbers "\z\addons\dayz_code\compile\object_cargoCheck.sqf"; //Run by the player or server to monitor changes in cargo contents
fnc_usec_damageHandler = compile preprocessFileLineNumbers "\z\addons\dayz_code\compile\fn_damageHandler.sqf"; //Event handler run on damage
// Vehicle damage fix
vehicle_handleDamage = compile preprocessFileLineNumbers "\z\addons\dayz_code\compile\vehicle_handleDamage.sqf";
vehicle_handleKilled = compile preprocessFileLineNumbers "\z\addons\dayz_code\compile\vehicle_handleKilled.sqf";
fnc_vehicleEventHandler = compile preprocessFileLineNumbers "\z\addons\dayz_code\init\vehicle_init.sqf"; //Initialize vehicle
fnc_inString = compile preprocessFileLineNumbers "\z\addons\dayz_code\compile\fn_inString.sqf";
fnc_isInsideBuilding = compile preprocessFileLineNumbers "\z\addons\dayz_code\compile\fn_isInsideBuilding.sqf"; //_isInside = [_unit,_building] call fnc_isInsideBuilding;
fnc_isInsideBuilding2 = compile preprocessFileLineNumbers "\z\addons\dayz_code\compile\fn_isInsideBuilding2.sqf"; //_isInside = [_unit,_building] call fnc_isInsideBuilding;
dayz_zombieSpeak = compile preprocessFileLineNumbers "\z\addons\dayz_code\compile\object_speak.sqf"; //Used to generate random speech for a unit
vehicle_getHitpoints = compile preprocessFileLineNumbers "\z\addons\dayz_code\compile\vehicle_getHitpoints.sqf";
local_gutObject = compile preprocessFileLineNumbers "\z\addons\dayz_code\compile\local_gutObject.sqf"; //Generated on the server (or local to unit) when gutting an object
local_lockUnlock = compile preprocessFileLineNumbers "\z\addons\dayz_code\compile\local_lockUnlock.sqf"; //When vehicle is local to unit perform locking vehicle
local_gutObjectZ = compile preprocessFileLineNumbers "\z\addons\dayz_code\compile\local_gutObjectZ.sqf"; //Generated on the server (or local to unit) when gutting an object
local_zombieDamage = compile preprocessFileLineNumbers "\z\addons\dayz_code\compile\fn_damageHandlerZ.sqf"; //Generated by the client who created a zombie to track damage
local_setFuel = compile preprocessFileLineNumbers "\z\addons\dayz_code\compile\local_setFuel.sqf"; //Generated when someone refuels a vehicle
local_eventKill = compile preprocessFileLineNumbers "\z\addons\dayz_code\compile\local_eventKill.sqf"; //Generated when something is killed
//player_weaponCheck = compile preprocessFileLineNumbers "\z\addons\dayz_code\compile\player_weaponCheck.sqf"; //Run by the player or server to monitor whether they have picked up a new weapon
curTimeStr = compile preprocessFileLineNumbers "\z\addons\dayz_code\compile\fn_curTimeStr.sqf";
player_medBandage = compile preprocessFileLineNumbers "\z\addons\dayz_code\medical\publicEH\medBandaged.sqf";
player_medInject = compile preprocessFileLineNumbers "\z\addons\dayz_code\medical\publicEH\medInject.sqf";
player_medEpi = compile preprocessFileLineNumbers "\z\addons\dayz_code\medical\publicEH\medEpi.sqf";
player_medTransfuse = compile preprocessFileLineNumbers "\z\addons\dayz_code\medical\publicEH\medTransfuse.sqf";
player_medMorphine = compile preprocessFileLineNumbers "\z\addons\dayz_code\medical\publicEH\medMorphine.sqf";
player_breaklegs = compile preprocessFileLineNumbers "\z\addons\dayz_code\medical\publicEH\medBreakLegs.sqf";
player_medPainkiller = compile preprocessFileLineNumbers "\z\addons\dayz_code\medical\publicEH\medPainkiller.sqf";
world_isDay = {if ((daytime < (24 - dayz_sunRise)) and (daytime > dayz_sunRise)) then {true} else {false}};
player_humanityChange = compile preprocessFileLineNumbers "\z\addons\dayz_code\compile\player_humanityChange.sqf";
spawn_loot = compile preprocessFileLineNumbers "\z\addons\dayz_code\compile\spawn_loot.sqf";
// player_projectileNear = compile preprocessFileLineNumbers "\z\addons\dayz_code\compile\player_projectileNear.sqf";
player_sumMedical = {
private["_character","_wounds","_legs","_arms","_medical"];
_character = _this;
_wounds = [];
if (_character getVariable["USEC_injured",false]) then {
{
if (_character getVariable[_x,false]) then {
_wounds set [count _wounds,_x];
};
} forEach USEC_typeOfWounds;
};
_legs = _character getVariable ["hit_legs",0];
_arms = _character getVariable ["hit_arms",0];
_medical = [
_character getVariable["USEC_isDead",false],
_character getVariable["NORRN_unconscious", false],
_character getVariable["USEC_infected",false],
_character getVariable["USEC_injured",false],
_character getVariable["USEC_inPain",false],
_character getVariable["USEC_isCardiac",false],
_character getVariable["USEC_lowBlood",false],
_character getVariable["USEC_BloodQty",12000],
_wounds,
[_legs,_arms],
_character getVariable["unconsciousTime",0],
_character getVariable["messing",[0,0]]
];
_medical
};
//Server Only
if (isServer) then {
call compile preprocessFileLineNumbers "\z\addons\dayz_server\init\server_functions.sqf";
} else {
eh_localCleanup = {};
};
//Start Dynamic Weather
execVM "\z\addons\dayz_code\external\DynamicWeatherEffects.sqf";
initialized = true;

View File

@@ -0,0 +1,65 @@
private["_cfgCount","_config","_i","_itemChances","_itemCount","_weighted","_j","_weight","_l","_k","_type","_canZombie","_canLoot"];
dayz_CBLChances = [];
dayz_CBLBase = [];
_config = configFile >> "CfgBuildingLoot";
for "_i" from 0 to ((count _config) - 1) do {
_classname = toLower(configName (_config select _i));
_itemChances = [] + getArray (_config >> _classname >> "ItemChance");
_itemCount = count _itemChances;
if (_itemCount > 0) then {
if (dayz_CBLBase find _classname < 0) then {
_weighted = [];
_j = 0;
for "_l" from 0 to ((count _itemChances) - 1) do {
_weight = round ((_itemChances select _l) * 100);
for "_k" from 0 to _weight - 1 do {
_weighted set [_j + _k, _l];
};
_j = _j + _weight;
};
dayz_CBLChances set [count dayz_CBLChances, _weighted];
dayz_CBLBase set [count dayz_CBLBase, _classname];
};
} else {
dayz_CBLChances set [count dayz_CBLChances, [0]];
dayz_CBLBase set [count dayz_CBLBase, _classname];
};
};
dayz_CLChances = [];
dayz_CLBase = [];
_config = configFile >> "cfgLoot";
for "_i" from 0 to ((count (_config)) - 1) do {
_itemChances = (getArray (_config select _i)) select 1;
_weighted = [];
_j = 0;
for "_l" from 0 to ((count _itemChances) - 1) do {
_weight = round ((_itemChances select _l) * 100);
for "_k" from 0 to _weight - 1 do {
_weighted set [_j + _k, _l];
};
_j = _j + _weight;
};
dayz_CLBase set [count dayz_CLBase, configName (_config select _i)];
dayz_CLChances set [count dayz_CLChances, _weighted];
};
private["_i","_type","_config","_canZombie","_canLoot"];
dayz_ZombieBuildings = [];
dayz_LootBuildings = [];
for "_i" from 0 to (count (configFile >> "CfgBuildingLoot") - 1) do {
_type = (configFile >> "CfgBuildingLoot") select _i;
_canZombie = getNumber (_type >> "zombieChance") > 0;
_canLoot = getNumber (_type >> "lootChance") > 0;
if(_canZombie) then {
if(!((configName _type) in dayz_ZombieBuildings)) then {
dayz_ZombieBuildings set [count dayz_ZombieBuildings, configName _type];
};
};
if(_canLoot) then {
if(!((configName _type) in dayz_LootBuildings)) then {
dayz_LootBuildings set [count dayz_LootBuildings, configName _type];
};
};
};

View File

@@ -0,0 +1,7 @@
private["_holder","_type","_classname","_name"];
_holder = _this select 0;
_type = _this select 1;
_classname = _this select 2;
_name = getText (configFile >> _type >> _classname >> "displayName");
null = _holder addAction [format[(localize "STR_DAYZ_CODE_1"),_name], "\z\addons\dayz_code\actions\object_pickup.sqf",[_type,_classname,_holder], 20, true, true];
player reveal _holder;

View File

@@ -0,0 +1,62 @@
private["_holder","_type","_classname","_name"];
_holder = _this select 0;
_type = _this select 1;
_classname = _this select 2;
_name = getText (configFile >> _type >> _classname >> "displayName");
// Exit if player zombie
if(player isKindOf "PZombie_VB") exitWith {};
actionMonitor = {
private["_holder","_type","_classname","_name","_action","_distance","_run","_timeout"];
_holder = _this select 0;
_type = _this select 1;
_classname = _this select 2;
_name = _this select 3;
_action = -1;
_distance = player distance _holder;
_run = true;
_timeout = 2;
while { _run } do {
if (alive _holder) then {
_distance = player distance _holder;
// Add action to player
if ((_distance < 1.75) and (_action == -1)) then {
_action = player addAction [format[(localize "STR_DAYZ_CODE_1"),_name], "\z\addons\dayz_code\actions\object_pickup.sqf",[_type,_classname,_holder], 20, true, true];
player reveal _holder;
_timeout = 0.3;
};
// Remove action from player
if ((_distance >= 1.75) and (_action != -1)) then {
player removeAction _action;
_action = -1;
_timeout = 2;
};
// Stop the loop and fall back to old code
if (_distance > 100) then {
null = _holder addAction [format[(localize "STR_DAYZ_CODE_1"),_name], "\z\addons\dayz_code\actions\object_pickup.sqf",[_type,_classname,_holder], 20, true, true];
player reveal _holder;
_run = false;
_timeout = 0;
};
} else {
if (_action != -1) then {
player removeAction _action;
_action = -1;
};
_timeout = 0;
_run = false;
};
sleep _timeout;
};
};
if (_classname == "WoodenArrow") then {
[_holder,_type,_classname,_name] spawn actionMonitor;
} else {
null = _holder addAction [format[(localize "STR_DAYZ_CODE_1"),_name], "\z\addons\dayz_code\actions\object_pickup.sqf",[_type,_classname,_holder], 20, true, true];
player reveal _holder;
};

View File

@@ -0,0 +1,69 @@
//Medical Event Handlers
"norrnRaLW" addPublicVariableEventHandler {[_this select 1] execVM "\z\addons\dayz_code\medical\publicEH\load_wounded.sqf"};
"norrnRLact" addPublicVariableEventHandler {[_this select 1] execVM "\z\addons\dayz_code\medical\load\load_wounded.sqf"};
"norrnRDead" addPublicVariableEventHandler {[_this select 1] execVM "\z\addons\dayz_code\medical\publicEH\deadState.sqf"};
"usecBleed" addPublicVariableEventHandler {_id = (_this select 1) spawn fnc_usec_damageBleed};
"usecBandage" addPublicVariableEventHandler {(_this select 1) call player_medBandage};
"usecInject" addPublicVariableEventHandler {(_this select 1) call player_medInject};
"usecEpi" addPublicVariableEventHandler {(_this select 1) call player_medEpi};
"usecTransfuse" addPublicVariableEventHandler {(_this select 1) call player_medTransfuse};
"usecMorphine" addPublicVariableEventHandler {(_this select 1) call player_medMorphine};
"usecPainK" addPublicVariableEventHandler {(_this select 1) call player_medPainkiller};
"dayzHit" addPublicVariableEventHandler {(_this select 1) call fnc_usec_damageHandler};
"dayzHitV" addPublicVariableEventHandler {(_this select 1) call fnc_usec_damageVehicle};
"dayzHideBody" addPublicVariableEventHandler {hideBody (_this select 1)};
"dayzHideObject" addPublicVariableEventHandler {hideObject (_this select 1)};
"dayzLockVehicle" addPublicVariableEventHandler {(_this select 1) spawn local_lockUnlock};
"dayzGutBody" addPublicVariableEventHandler {(_this select 1) spawn local_gutObject};
"dayzGutBodyZ" addPublicVariableEventHandler {(_this select 1) spawn local_gutObjectZ};
"dayzDelLocal" addPublicVariableEventHandler {(_this select 1) call object_delLocal};
"dayzVehicleInit" addPublicVariableEventHandler {(_this select 1) call fnc_vehicleEventHandler};
"dayzHumanity" addPublicVariableEventHandler {(_this select 1) spawn player_humanityChange};
"dayz_serverObjectMonitor" addPublicVariableEventHandler {dayz_serverObjectMonitor = dayz_safety};
"usecBreakLegs" addPublicVariableEventHandler {(_this select 1) call player_breaklegs};
"dayzSetFuel" addPublicVariableEventHandler {(_this select 1) spawn local_setFuel};
"dayzSetFix" addPublicVariableEventHandler {(_this select 1) call object_setFixServer};
//Both
//Server only
if (isServer) then {
"dayzDeath" addPublicVariableEventHandler {_id = (_this select 1) spawn server_playerDied};
"dayzDiscoAdd" addPublicVariableEventHandler {dayz_disco set [count dayz_disco,(_this select 1)];};
"dayzDiscoRem" addPublicVariableEventHandler {dayz_disco = dayz_disco - [(_this select 1)];};
"dayzPlayerSave" addPublicVariableEventHandler {_id = (_this select 1) spawn server_playerSync;};
"dayzPublishObj" addPublicVariableEventHandler {(_this select 1) call server_publishObj};
"dayzUpdateVehicle" addPublicVariableEventHandler {_id = (_this select 1) spawn server_updateObject};
"dayzLogin" addPublicVariableEventHandler {_id = (_this select 1) spawn server_playerLogin};
"dayzLogin2" addPublicVariableEventHandler {(_this select 1) call server_playerSetup};
"dayzPlayerMorph" addPublicVariableEventHandler {(_this select 1) call server_playerMorph};
"dayzUpdate" addPublicVariableEventHandler {_id = (_this select 1) spawn dayz_processUpdate};
"dayzLoginRecord" addPublicVariableEventHandler {_id = (_this select 1) spawn dayz_recordLogin};
"dayzCharSave" addPublicVariableEventHandler {_id = (_this select 1) spawn server_playerSync};
//Checking
"dayzDeleteObj" addPublicVariableEventHandler {(_this select 1) spawn server_deleteObj};
"atp" addPublicVariableEventHandler { _array = _this select 1; diag_log format["TELEPORT REVERT: %1 (%2) from %3 to %4 now at %5", _array select 0, _array select 1, _array select 2, _array select 3, _array select 4];};
// disable zombies server side
"dayzSpawnZed" addPublicVariableEventHandler {(_this select 1) spawn server_handleZedSpawn};
// Dayz epoch custom
"dayzPublishVeh" addPublicVariableEventHandler {(_this select 1) spawn server_publishVeh};
"dayzPublishVeh2" addPublicVariableEventHandler {(_this select 1) spawn server_publishVeh2};
"dayzTradeObject" addPublicVariableEventHandler {(_this select 1) spawn server_tradeObj};
"dayzTraderMenu" addPublicVariableEventHandler {(_this select 1) spawn server_traders};
"dayzPlayerDeaths" addPublicVariableEventHandler {(_this select 1) spawn server_deaths};
};
//Client only
if (!isDedicated) then {
"dayzSetDate" addPublicVariableEventHandler {setDate (_this select 1)};
//"dayzFlies" addPublicVariableEventHandler {(_this select 1) call spawn_flies};
"dayzRoadFlare" addPublicVariableEventHandler {(_this select 1) spawn object_roadFlare};
"norrnRaDrag" addPublicVariableEventHandler {[_this select 1] execVM "\z\addons\dayz_code\medical\publicEH\animDrag.sqf"};
"norrnRnoAnim" addPublicVariableEventHandler {[_this select 1] execVM "\z\addons\dayz_code\medical\publicEH\noAnim.sqf"};
"changeCharacter" addPublicVariableEventHandler {(_this select 1) call player_serverModelChange};
"dayzSwitch" addPublicVariableEventHandler {(_this select 1) call server_switchPlayer};
"dayzFire" addPublicVariableEventHandler {nul=(_this select 1) spawn BIS_Effects_Burn};
};

View File

@@ -0,0 +1,567 @@
disableSerialization;
//Model Variables
Bandit1_DZ = "Bandit1_DZ";
Bandit2_DZ = "Bandit2_DZ";
BanditW1_DZ = "BanditW1_DZ";
BanditW2_DZ = "BanditW2_DZ";
Survivor1_DZ = "Survivor2_DZ";
Survivor2_DZ = "Survivor2_DZ";
SurvivorW2_DZ = "SurvivorW2_DZ";
SurvivorW3_DZ = "SurvivorW2_DZ";
Sniper1_DZ = "Sniper1_DZ";
Camo1_DZ = "Camo1_DZ";
Soldier1_DZ = "Soldier1_DZ";
Rocket_DZ = "Rocket_DZ";
AllPlayers = ["Survivor2_DZ","SurvivorWcombat_DZ","SurvivorWdesert_DZ","SurvivorWurban_DZ","SurvivorWsequishaD_DZ","SurvivorWsequisha_DZ","SurvivorWpink_DZ","SurvivorW3_DZ","SurvivorW2_DZ","Bandit1_DZ","Bandit2_DZ","BanditW1_DZ","BanditW2_DZ","Soldier_Crew_PMC","Sniper1_DZ","Camo1_DZ","Soldier1_DZ","Rocket_DZ","Rocker1_DZ","Rocker2_DZ","Rocker3_DZ","Rocker4_DZ","Priest_DZ","Functionary1_EP1_DZ","GUE_Commander_DZ","Ins_Soldier_GL_DZ","Haris_Press_EP1_DZ","Pilot_EP1_DZ","RU_Policeman_DZ","pz_policeman","pz_suit1","pz_suit2","pz_worker1","pz_worker2","pz_worker3","pz_doctor","pz_teacher","pz_hunter","pz_villager1","pz_villager2","pz_villager3","pz_priest","Soldier_TL_PMC_DZ","Soldier_Sniper_PMC_DZ","Soldier_Bodyguard_AA12_PMC_DZ","Drake_Light_DZ","CZ_Special_Forces_GL_DES_EP1_DZ","TK_INS_Soldier_EP1_DZ","TK_INS_Warlord_EP1_DZ","FR_OHara_DZ","FR_Rodriguez_DZ","CZ_Soldier_Sniper_EP1_DZ","Graves_Light_DZ","GUE_Soldier_MG_DZ","GUE_Soldier_Sniper_DZ","GUE_Soldier_Crew_DZ","GUE_Soldier_CO_DZ","GUE_Soldier_2_DZ"];
// AllPlayersVehicles = ["AllVehicles"]+AllPlayers;
//Cooking
meatraw = [
"FoodSteakRaw",
"FoodmeatRaw",
"FoodbeefRaw",
"FoodmuttonRaw",
"FoodchickenRaw",
"FoodrabbitRaw",
"FoodbaconRaw",
"ItemTrout",
"ItemSeaBass",
"ItemTuna"
];
exceptionsraw = ["ItemTuna"];
meatcooked = [
"FoodSteakCooked",
"FoodmeatCooked",
"FoodbeefCooked",
"FoodmuttonCooked",
"FoodchickenCooked",
"FoodrabbitCooked",
"FoodbaconCooked",
"ItemTroutCooked",
"ItemSeaBassCooked",
"ItemTunaCooked"
];
//Eating
no_output_food = ["FoodMRE", "FoodPistachio", "FoodNutmix","FoodBioMeat"]+meatcooked+meatraw;
// Food with increased chance for infection.
badfood = ["FoodBioMeat","FoodCanUnlabeled"];
food_with_output=[
"FoodCanBakedBeans",
"FoodCanSardines",
"FoodCanFrankBeans",
"FoodCanPasta",
"FoodCanGriff",
"FoodCanBadguy",
"FoodCanBoneboy",
"FoodCanCorn",
"FoodCanCurgon",
"FoodCanDemon",
"FoodCanFraggleos",
"FoodCanHerpy",
"FoodCanOrlok",
"FoodCanPowell",
"FoodCanTylers",
"FoodCanUnlabeled"
];
food_output = [
"TrashTinCan",
"TrashTinCan",
"TrashTinCan",
"TrashTinCan",
"FoodCanGriffEmpty",
"FoodCanBadguyEmpty",
"FoodCanBoneboyEmpty",
"FoodCanCornEmpty",
"FoodCanCurgonEmpty",
"FoodCanDemonEmpty",
"FoodCanFraggleosEmpty",
"FoodCanHerpyEmpty",
"FoodCanOrlokEmpty",
"FoodCanPowellEmpty",
"FoodCanTylersEmpty",
"FoodCanUnlabeledEmpty"
];
//Drinking
no_output_drink = ["ItemWaterbottle", "ItemWaterbottleBoiled"];
drink_with_output = [
"ItemSoda", //just to define item for ItemSodaEmpty
"ItemSodaRbull",
"ItemSodaOrageSherbet",
"ItemSodaCoke",
"ItemSodaPepsi",
"ItemSodaMdew",
"ItemSodaMtngreen",
"ItemSodaR4z0r",
"ItemSodaClays",
"ItemSodaSmasht",
"ItemSodaDrwaste",
"ItemSodaLemonade",
"ItemSodaLvg",
"ItemSodaMzly",
"ItemSodaRabbit"
];
drink_output = [
"ItemSodaEmpty",
"ItemSodaEmpty",
"ItemSodaEmpty",
"ItemSodaCokeEmpty",
"ItemSodaPepsiEmpty",
"ItemSodaMdewEmpty",
"ItemSodaMtngreenEmpty",
"ItemSodaR4z0rEmpty",
"ItemSodaClaysEmpty",
"ItemSodaSmashtEmpty",
"ItemSodaDrwasteEmpty",
"ItemSodaLemonadeEmpty",
"ItemSodaLvgEmpty",
"ItemSodaMzlyEmpty",
"ItemSodaRabbitEmpty"
];
boil_tin_cans = [
"TrashTinCan",
"FoodCanGriffEmpty",
"FoodCanBadguyEmpty",
"FoodCanBoneboyEmpty",
"FoodCanCornEmpty",
"FoodCanCurgonEmpty",
"FoodCanDemonEmpty",
"FoodCanFraggleosEmpty",
"FoodCanHerpyEmpty",
"FoodCanOrlokEmpty",
"FoodCanPowellEmpty",
"FoodCanTylersEmpty",
"FoodCanUnlabeledEmpty",
"ItemSodaEmpty",
"ItemSodaCokeEmpty",
"ItemSodaPepsiEmpty",
"ItemSodaMdewEmpty",
"ItemSodaMtngreenEmpty",
"ItemSodaR4z0rEmpty",
"ItemSodaClaysEmpty",
"ItemSodaSmashtEmpty",
"ItemSodaDrwasteEmpty",
"ItemSodaLemonadeEmpty",
"ItemSodaLvgEmpty",
"ItemSodaMzlyEmpty",
"ItemSodaRabbitEmpty"
];
dayz_combination = "";
dayz_combatLog = "";
canRoll = true;
canbuild = true;
//Hunting Variables
dayZ_partClasses = [
"PartFueltank",
"PartWheel",
//"PartGeneric", //No need to add, it is default for everything
"PartEngine"
];
dayZ_explosiveParts = [
"palivo",
"motor"
];
//Survival Variables
SleepFood = 2160; //minutes (48 hours)
SleepWater = 1440; //minutes (24 hours)
SleepTemperatur = 90 / 100; //Firs Value = Minutes untill Player reaches the coldest Point at night (without other effects! night factor expected to be -1) //TeeChange
//Server Variables
allowConnection = false;
isSinglePlayer = false;
dayz_serverObjectMonitor = [];
PlayerDeaths = [];
//Streaming Variables (player only)
dayz_Locations = [];
dayz_locationsActive = [];
//GUI
Dayz_GUI_R = 0.38; // 0.7
Dayz_GUI_G = 0.63; // -0.63
Dayz_GUI_B = 0.26; // -0.26
//Player self-action handles
dayz_resetSelfActions = {
s_player_fire = -1;
s_player_cook = -1;
s_player_boil = -1;
s_player_fireout = -1;
s_player_butcher = -1;
s_player_packtent = -1;
s_player_packvault = -1;
s_player_lockvault = -1;
s_player_unlockvault = -1;
s_player_fillwater = -1;
s_player_fillwater2 = -1;
s_player_fillfuel = -1;
s_player_grabflare = -1;
s_player_callzombies = -1;
s_player_debuglootpos = -1;
s_player_pzombiesattack = -1;
s_player_pzombiesvision = -1;
s_player_pzombiesfeed = -1;
s_player_removeflare = -1;
s_player_painkiller = -1;
s_player_studybody = -1;
s_player_madsci_crtl = -1;
s_player_parts_crtl = -1;
s_build_Sandbag1_DZ = -1;
s_build_Hedgehog_DZ = -1;
s_build_Wire_cat1 = -1;
s_player_deleteBuild = -1;
s_player_forceSave = -1;
s_player_checkGear = -1;
s_player_flipveh = -1;
s_player_stats = -1;
s_player_sleep = -1;
s_player_movedog = -1;
s_player_speeddog = -1;
s_player_calldog = -1;
s_player_feeddog = -1;
s_player_waterdog = -1;
s_player_staydog = -1;
s_player_trackdog = -1;
s_player_barkdog = -1;
s_player_warndog = -1;
s_player_followdog = -1;
s_player_repair_crtl = -1;
s_player_information = -1;
s_player_fuelauto = -1;
s_player_fillgen = -1;
};
call dayz_resetSelfActions;
//Engineering variables
s_player_lastTarget = objNull;
s_player_repairActions = [];
// Custom
s_player_madsci = [];
s_player_parts = [];
s_player_combi = [];
//Initialize Medical Variables
r_interrupt = false;
r_doLoop = false;
r_self = false;
r_self_actions = [];
r_drag_sqf = false;
r_action = false;
r_action_unload = false;
r_player_handler = false;
r_player_handler1 = false;
r_player_dead = false;
r_player_unconscious = false;
r_player_infected = false;
r_player_injured = false;
r_player_inpain = false;
r_player_loaded = false;
r_player_cardiac = false;
r_fracture_legs = false;
r_fracture_arms = false;
r_player_vehicle = player;
r_player_blood = 12000;
r_player_lowblood = false;
r_player_timeout = 0;
r_player_bloodTotal = r_player_blood;
r_public_blood = r_player_blood;
r_player_bloodDanger = r_player_bloodTotal * 0.2;
r_player_actions = [];
r_handlerCount = 0;
r_action_repair = false;
r_action_targets = [];
r_pitchWhine = false;
r_isBandit = false;
//ammo routine
r_player_actions2 = [];
r_action2 = false;
r_player_lastVehicle = objNull;
r_player_lastSeat = [];
r_player_removeActions2 = {
if (!isNull r_player_lastVehicle) then {
{
r_player_lastVehicle removeAction _x;
} forEach r_player_actions2;
r_player_actions2 = [];
r_action2 = false;
};
};
USEC_woundHit = [
"",
"body",
"hands",
"legs",
"head_hit"
];
DAYZ_woundHit = [
[
"body",
"hands",
"legs",
"head_hit"
],
[ 0,0,0,0,0,0,0,0,0,1,1,1,1,1,1,1,1,2,2,3]
];
DAYZ_woundHit_ok = [
[
"body",
"hands",
"legs"
],
[0,0,0,0,0,1,1,1,2,2]
];
DAYZ_woundHit_dog = [
[
"body",
"hands",
"legs"
],
[0,0,1,1,1,1,1,1,1,1,1,2,2,2,2,2,2,2]
];
USEC_MinorWounds = [
"hands",
"legs"
];
USEC_woundPoint = [
["Pelvis","aimpoint"],
["aimpoint"], //,"RightShoulder","LeftShoulder"
["lelbow","relbow"],
["RightFoot","LeftFoot"],
["neck","pilot"]
];
USEC_typeOfWounds = [
"Pelvis",
"aimpoint",
"lelbow","relbow",
"RightFoot","LeftFoot",
"neck","pilot"
];
DZE_vehicleZwounds = [
"sklo predni L",
"sklo predni P",
"sklo zadni",
"sklo zadni L",
"sklo zadni P",
"sklo P",
"Glass1",
"Glass2",
"Glass3",
"Glass4",
"Glass5",
"Glass6"
];
//Initialize Zombie Variables
dayz_zombieTargetList = [
["SoldierWB",50],
["Air",500],
["LandVehicle",200]
];
dayzHit = [];
dayzPublishObj = []; //used for eventhandler to spawn a mirror of players tent
dayzHideBody = objNull;
dayz_selectedVault = objNull;
dayzPublishVeh = []; // for vehicle traders
dayzTradeObject = []; // For all traders increment qty
dayzTraderMenu = []; // For all traders
dayzPlayerDeaths = [];
//DayZ settings
dayz_dawn = 6;
dayz_dusk = 18;
if(isNil "dayz_maxAnimals") then {
dayz_maxAnimals = 8;
};
DAYZ_agentnumber = 0;
dayz_animalDistance = 800;
dayz_zSpawnDistance = 1000;
if(isNil "dayz_maxLocalZombies") then {
dayz_maxLocalZombies = 30;
};
if(isNil "dayz_maxGlobalZombiesInit") then {
dayz_maxGlobalZombiesInit = 30;
};
if(isNil "dayz_maxGlobalZombiesIncrease") then {
dayz_maxGlobalZombiesIncrease = 10;
};
if(isNil "dayz_maxZeds") then {
dayz_maxZeds = 500;
};
if(isNil "DZEdebug") then {
DZEdebug = false;
};
if(isNil "DZE_TRADER_SPAWNMODE") then {
DZE_TRADER_SPAWNMODE = false;
};
if(isNil "dayz_tameDogs") then {
dayz_tameDogs = false;
};
if(isNil "dayz_sellDistance") then {
dayz_sellDistance = 20;
};
if(isNil "dayz_paraSpawn") then {
dayz_paraSpawn = false;
};
if(isNil "dayz_minpos") then {
dayz_minpos = -20000;
};
if(isNil "dayz_maxpos") then {
dayz_maxpos = 20000;
};
/*
if(isNil "dayz_canBuildInCity") then {
dayz_canBuildInCity = false;
};
*/
if(isNil "dayz_zedSpawnVehCount") then {
dayz_zedSpawnVehCount = dayz_maxLocalZombies / 2;
};
if(isNil "dayz_spawnAirCount") then {
dayz_spawnAirCount = 0;
};
if(isNil "dayz_zedsAttackVehicles") then {
dayz_zedsAttackVehicles = true;
};
// update objects
dayz_updateObjects = ["Car", "Helicopter", "Motorcycle", "Ship", "TentStorage", "VaultStorage","M240Nest_DZ","OutHouse_DZ","Wooden_shed_DZ","WoodShack_DZ","StorageShed_DZ"];
dayz_disallowedVault = ["TentStorage", "BuiltItems"];
dayz_reveal = ["AllVehicles","WeaponHolder","TentStorage","VaultStorage","VaultStorageLocked","BuiltItems"];
dayz_allowedObjects = ["TentStorage","TentStorageDomed","TentStorageDomed2", "VaultStorageLocked", "Hedgehog_DZ", "Sandbag1_DZ","TrapBear","Fort_RazorWire","WoodGate_DZ","Land_HBarrier1_DZ","Fence_corrugated_DZ","M240Nest_DZ","CanvasHut_DZ","ParkBench_DZ","MetalGate_DZ","OutHouse_DZ","Wooden_shed_DZ","WoodShack_DZ","StorageShed_DZ","Plastic_Pole_EP1_DZ","Generator_DZ","StickFence_DZ","LightPole_DZ","FuelPump_DZ","DesertCamoNet_DZ","ForestCamoNet_DZ","DesertLargeCamoNet_DZ","ForestLargeCamoNet_DZ","SandNest_DZ"];
// These work with just a running generator
dayz_fuelpumparray = ["FuelPump_DZ","Land_A_FuelStation_Feed","Land_Ind_FuelStation_Feed_EP1","Land_FuelStation_Feed_PMC","FuelStation","Land_ibr_FuelStation_Feed","Land_fuelstation_army","Land_fuelstation","land_fuelstation_w","Land_benzina_schnell"];
// Standard Fuel sources
dayz_fuelsources = ["Land_Ind_TankSmall","Land_fuel_tank_big","Land_fuel_tank_stairs","Land_fuel_tank_stairs_ep1","Land_wagon_tanker","Land_fuelstation","Land_fuelstation_army","land_fuelstation_w","Land_benzina_schnell"];
dayz_spawnPos = getPosATL player;
//init global arrays for Loot Chances
call compile preprocessFileLineNumbers "\z\addons\dayz_code\init\loot_init.sqf";
if(isServer) then {
dayz_players = [];
dead_bodyCleanup = [];
needUpdate_objects = [];
if(isNil "dayz_fullMoonNights") then {
dayz_fullMoonNights = false;
};
if(isNil "EpochEvents") then {
EpochEvents = [];
};
};
if(!isDedicated) then {
//Establish Location Streaming
_funcGetLocation =
{
for "_i" from 0 to ((count _this) - 1) do
{
private ["_location","_config","_locHdr","_position","_size","_type"];
//Get Location Data from config
_config = (_this select _i);
_locHdr = configName _config;
_position = getArray (_config >> "position");
_size = getNumber (_config >> "size");
_type = getText (_config >> "type");
//Find the Location
_location = nearestLocation [_position, _type];
//Record details
dayz_Locations set [count dayz_Locations, [_location,_locHdr,_size]];
};
};
//_cfgLocation = configFile >> "CfgTownGenerator";
//_cfgLocation call _funcGetLocation;
dayz_buildingMonitor = []; //Buildings to check
dayz_bodyMonitor = [];
dayz_flyMonitor = []; //used for monitor flies
dayz_baseTypes = getArray (configFile >> "CfgBuildingLoot" >> "Default" >> "zombieClass");
//temperature variables
dayz_temperatur = 36; //TeeChange
dayz_temperaturnormal = 36; //TeeChange
dayz_temperaturmax = 42; //TeeChange
dayz_temperaturmin = 27; //TeeChange
//player special variables
dayZ_lastPlayerUpdate = 0;
dayZ_everyonesTents = [];
dayz_hunger = 0;
dayz_thirst = 0;
dayz_combat = 0;
dayz_preloadFinished = false;
dayz_statusArray = [1,1];
dayz_disAudial = 0;
dayz_disVisual = 0;
dayz_firedCooldown = 0;
dayz_DeathActioned = false;
dayz_canDisconnect = true;
dayz_damageCounter = time;
dayz_lastSave = time;
dayz_isSwimming = true;
dayz_isKneeling = false;
dayz_isCrawling = false;
dayz_PreviousTown = "Wilderness";
dayz_currentDay = 0;
dayz_hasLight = false;
dayz_surfaceNoise = 0;
dayz_surfaceType = "None";
dayz_noPenalty = [];
dayz_heavenCooldown = 0;
deathHandled = false;
dayz_lastHumanity = 0;
dayz_guiHumanity = -90000;
dayz_firstGroup = group player;
dayz_originalPlayer = player;
dayz_playerName = "Unknown";
dayz_sourceBleeding = objNull;
dayz_clientPreload = false;
dayz_authed = false;
dayz_panicCooldown = 0;
dayz_areaAffect = 2;
dayz_heartBeat = false;
dayzClickTime = 0;
dayz_spawnDelay = 120;
dayz_spawnWait = -120;
dayz_lootDelay = 3;
dayz_lootWait = -300;
dayz_spawnZombies = 0;
//used to count global zeds around players
dayz_CurrentZombies = 0;
//Used to limit overall zed counts
dayz_maxCurrentZeds = 0;
dayz_inVehicle = false;
dayz_Magazines = [];
dayzGearSave = false;
dayz_unsaved = false;
TradeInprogress = false;
dayz_scaleLight = 0;
dayzDebug = false;
dayzState = -1;
//uiNamespace setVariable ['DAYZ_GUI_display',displayNull];
//if (uiNamespace getVariable ['DZ_displayUI', 0] == 2) then {
// dayzDebug = true;
//};
};

View File

@@ -0,0 +1,22 @@
/***********************************************************
ASSIGN DAMAGE HANDLER TO A UNIT
- Function set_EH
- unit call set_EH;
************************************************************/
private["_unit","_eh1","_eh2","_dir","_location"];
_unit = _this;
_dir = getdir _this;
_location = getPosATL _this;
//Assign event handlers
_eh1 = _unit addeventhandler ["HandleDamage",{ _this call vehicle_handleDamage } ];
_eh2 = _unit addeventhandler ["Killed",{ _this call vehicle_handleKilled } ];
//diag_log format ["set EH %1 for vehicle:%2", _eh1, typeOf _unit ];
if (isServer) then {
_eh3 = _unit addEventHandler ["GetOut", {[(_this select 0),"all"] call server_updateObject;}];
_eh4 = _unit addEventHandler ["GetIn", {[(_this select 0),"all"] call server_updateObject;}];
_eh5 = _unit addEventHandler ["Killed",{ _this call vehicle_handleKilled } ];
_eh6 = _unit addeventhandler ["HandleDamage",{ _this call vehicle_handleDamage } ];
};

View File

@@ -0,0 +1,4 @@
private["_unit"];
_unit = _this select 0;
_id = _unit addeventhandler ["HandleDamage",{_this call local_zombieDamage}];
_id = _unit addeventhandler ["Killed",{[_this,"zombieKills"] call local_eventKill}];