Too many config variables made this unnecessarily complicated. Most
servers will want the defaults. For those that want to customize further
they can easily overwrite these files.
These seem like the most logical defaults to me. Allow all of these
people to manage and unlock by default:
- door owner
- plot owner
- plot friend
- plot admin
- door friend
- door admin
Door friends should be able to manage by default so they don't have to
wait for the owner to come back online to add someone as a door friend.
Plot friends and plot admins can get around the door by removing it and
building another one anyway, so locking them out is pointless. It is
still useful to have these as separate variables for servers that do not
require plot poles though.
Regular friendlies should not be included by default, since we have the
more fine grained plot friends and door friends lists for that. Regular
friendlies will probably be replaced by groups in the near future
anyway.
Please post a comment if there are any issues with these defaults I'm
forgetting. Thanks.
Only the owner, plot owner, plot friends and plot admins should be able
to see the plot boundary. Randoms just use it for griefing.
Also renamed the targetX variables to the more appropriate doorX in
fn_check_access since they are only used if the target is a door.
Vanilla commit:
https://github.com/DayZMod/DayZ/commit/589791e9f9116e8b230e01d51fabde028298ea7a
This was being falsely triggered before because the distance (3m) was
far too small and it was only counting fast moving vehicles. The player
can be damaged up to 25m away from the vehicle explosion.
The comment was incorrect. It can be easily checked by using the
included diag_log at the top of this file.
Most of the time the source will be local (zombie) or player (physics).
The next most common will be getting shot by a remote player, the least
common will be getting shot by a remote vehicle.
The Epoch dome tents had more cargo space than the default vanilla ones,
so we have to use the level 1 upgraded version to prevent gear falling
out.
Also corrected swap for DesertTent.
All other scripts using findSafePos either set the third parameter or
use a getPosATL/etc. instead before the position is saved to database.
Also partially reverted d6e78b2 since it is not needed.
See my comment on b806043
Veh_setFixServer only runs on the server, so the client does not need to
compile it.
The PVDZ_veh_Save PVEH is only added on the server, so it should never
be sent with regular publicVariable anymore.
If you kill a player zombie you should not lose humanity. Player_death
is now synced with the humanity hit code in the damage handler.
Also the killing blow set variable was moved up because the same
conditions were already checked above.
The only change is a removal of this check and the corresponding
tabs/spacing:
if (_object == player) then {
That returns false if the player is in a vehicle. It is not needed since
PVCDZ_plr_Humanity EH only fires on the intended player now (sent with
PVC instead of PV).
When this function was passed an empty array (like a player with no
magazines) it returned undefined because the inside of the forEach loop
did not execute.
The player who died is colored red and the killer is colored green. The
weapon now points in the direction of the player who died.
Also reverted 66fd5be since it did not help. It is already done globally
in player_death.sqf anyway. I tested again and this actually fixes the
problem.
This prevents "player combat logged" message after a player dies. The
alive check should prevent this in onPlayerDisconect, but it is
apparently unreliable or slow to update.
This fixes incorrect return of "not enough space to accept change" when
purchasing large quantities of magazines into a vehicle.
Thanks @oiad for noticing this.
If there was no helipad available findSafePos was called. If that failed
it spawned the vehicle in the debug zone.
Calling findSafePos is no longer necessary since we are now using
createVehicle "NONE".
I just noticed before 5f0c2fc this was also running if the player was
dead. Now it will run if the player is alive in playerSync otherwise it
will run here if they are dead.
See my comments on ae78fde and a3c3ccc
The object_maintenance function is only for vanilla buildables and is
currently not used. It immediately overwrites with a 306 call.
Moved combat log setVariables to playerSync. Now the player object is no
longer needed for any of the code at the bottom of playerSync or
onPlayerDisconnected.
Update objects is already performed at the bottom of playerSync. There
is no reason to do it again in playerDisconnect since it calls
playerSync.
@icomrade you forgot to change the _playerObj variable to _character
when you moved this.
Also if BIS_fnc_findSafePos was successful on the first attempt the way
you had it would use the original _charPos instead of the successful
return because you never set _charPos = _newPos;
https://github.com/EpochModTeam/DayZ-Epoch/commit/ed3227fa7a3dd879083f43558a402a651afd56ce
I made no changes apart from removing the (_characterID != "0") check
and the corresponding spacing/tabs.
If _characterID == "0" the script would have already exited on line 30.
Removed redundant diag_log since it is already done in dayz_recordLogin.
Removed noatlf4 variable because we use inCombat instead. Noatlf4 is
only set if the player is hit in the damage handler, while inCombat is
set any time the player is in combat.
Consolidated transfusion and transfusion_noBloodTypes to one script.
Selfbloodbag.sqf will never run if DZE_selftransfuse = false; because
the right click action is hidden.
Total blood quantity is now added in 1/4 increments during self bloodbag
as intended instead of all at once.