Fix server position sync after knockout

All DayZ Mod Development commits since 1.8.7 release (Jan. 24) have now
been applied.
This commit is contained in:
ebaydayz
2016-04-12 14:51:22 -04:00
parent 4a07b7cc7a
commit 27d57283a0
18 changed files with 36 additions and 25 deletions

View File

@@ -1,15 +1,15 @@
ZombieCivilian[] =
{
{Loot_GROUP, 10, Consumable},
{Loot_GROUP, 2, AmmoCivilian},
{Loot_GROUP, 6, Consumable},
{Loot_GROUP, 1, AmmoCivilian},
{Loot_MAGAZINE, 3, ItemBandage},
{Loot_MAGAZINE, 3, ItemPainkiller},
{Loot_MAGAZINE, 3, ItemAntibacterialWipe},
{Loot_MAGAZINE, 2, ItemPainkiller},
{Loot_MAGAZINE, 2, ItemAntibacterialWipe},
{Loot_MAGAZINE, 3, ItemDocument}
};
ZombieCivilianViral[] =
{
{Loot_GROUP, 10, ZombieCivilian},
{Loot_MAGAZINE, 2, ItemAntibiotic1}
{Loot_MAGAZINE, 1, ItemAntibiotic1}
};

View File

@@ -13,5 +13,5 @@ ZombieHunter[] =
ZombieHunterViral[] =
{
{Loot_GROUP, 10, ZombieHunter},
{Loot_MAGAZINE, 2, ItemAntibiotic1}
{Loot_MAGAZINE, 1, ItemAntibiotic1}
};

View File

@@ -11,5 +11,5 @@ ZombieMilitary[] =
ZombieMilitaryViral[] =
{
{Loot_GROUP, 10, ZombieMilitary},
{Loot_MAGAZINE, 3, ItemAntibiotic1}
{Loot_MAGAZINE, 1, ItemAntibiotic1}
};

View File

@@ -13,5 +13,5 @@ ZombiePolice[] =
ZombiePoliceViral[] =
{
{Loot_GROUP, 10, ZombiePolice},
{Loot_MAGAZINE, 2, ItemAntibiotic1}
{Loot_MAGAZINE, 1, ItemAntibiotic1}
};

View File

@@ -3,8 +3,8 @@ ZombieWorker[] =
{Loot_GROUP, 10, Consumable},
{Loot_GROUP, 2, AmmoCivilian},
{Loot_MAGAZINE, 3, ItemBandage},
{Loot_MAGAZINE, 3, ItemPainkiller},
{Loot_MAGAZINE, 3, ItemAntibacterialWipe},
{Loot_MAGAZINE, 2, ItemPainkiller},
{Loot_MAGAZINE, 2, ItemAntibacterialWipe},
{Loot_MAGAZINE, 2, ItemDocument},
{Loot_MAGAZINE, 2, ItemWire},
{Loot_MAGAZINE, 3, ItemTankTrap},
@@ -15,5 +15,5 @@ ZombieWorker[] =
ZombieWorkerViral[] =
{
{Loot_GROUP, 10, ZombieCivilian},
{Loot_MAGAZINE, 2, ItemAntibiotic1}
{Loot_MAGAZINE, 1, ItemAntibiotic1}
};

View File

@@ -16,7 +16,7 @@ class ItemAntibiotic : ItemAntibiotic_base
class medical
{
chance = 0.50;
chance = 1.10; //100%
amount = -1;
qtyRemaining = "ItemAntibiotic6";
};

View File

@@ -134,7 +134,7 @@ if (_woodCutting) then {
};
_isOk = false;
_proceed = true;
uisleep 1;
uiSleep 1;
};
cutText [format [localize "str_player_24_progress", _counter,_countOut], "PLAIN DOWN"];
};

View File

@@ -9,6 +9,10 @@ _sleepArray = ["aidlppnemstpsnonwnondnon_sleepc_laydown","aidlppnemstpsnonwnondn
//_playArray = _sleepArray call BIS_fnc_selectRandom;
player playmove "AidlPpneMstpSnonWnonDnon_SleepC_sleep";
if (r_action) exitwith {};
r_action = true;
r_interrupt = false;
_animState = animationState player;
r_doLoop = true;
@@ -96,6 +100,8 @@ if (r_interrupt) then {
player playActionNow "stop";
};
r_action = false;
//Removed due to player sync returning []
//PVDZ_plr_Save = [player,nil,true,dayz_playerAchievements];
//publicVariableServer "PVDZ_plr_Save";

View File

@@ -18,6 +18,8 @@ _str_left_text = "
_1 = name player;
dayz_currentGlobalZombies = count entities "zZombie_Base";
/*
if (player hasWeapon "ItemWatch") then
{
@@ -280,7 +282,7 @@ _disabledTemperature = switch (dayz_temperature_override) do {
(_spawnselection),
(round(dayz_temperatur)),
(player getVariable['humanity', 0]),
({alive _x} count entities "zZombie_Base"),
(dayz_currentGlobalZombies),
(dayz_Survived),
(_survivors),
(round diag_fps),

View File

@@ -25,7 +25,7 @@ if (_inVehicle) then {
};
if (!r_player_unconscious && !r_action2) then {
r_player_lastSeat = _assignedRole;
if ((_vehicle isKindOf "helicopter") || (_inVehicle && ({(isPlayer _x) && (alive _x)} count (crew _vehicle) > 1))) then {
if (_vehicle isKindOf "helicopter" || (_inVehicle && ({(isPlayer _x) && (alive _x)} count (crew _vehicle) > 1))) then {
//allow switch to pilot
if (((_assignedRole select 0) != "driver") && ((!alive _driver) or ((_vehicle emptyPositions "Driver") > 0))) then {
if (_vehicle isKindOf "helicopter") then {

View File

@@ -992,6 +992,8 @@ if (!isNull _cursorTarget && !_inVehicle && !_isPZombie && (player distance _cur
player removeAction s_player_repair_crtl;
s_player_repair_crtl = -1;
dayz_myCursorTarget = objNull;
//player removeAction s_player_forceSave;
//s_player_forceSave = -1;
player removeAction s_player_flipveh;
s_player_flipveh = -1;
player removeAction s_player_sleep;

View File

@@ -77,6 +77,8 @@ r_player_unconsciousInputDisabled = false;
[nil, player, rSWITCHMOVE, "AinjPpneMstpSnonWnonDnon"] call RE;
player SWITCHMOVE "AinjPpneMstpSnonWnonDnon";
PVDZ_plr_SwitchMove = [player,"AinjPpneMstpSnonWnonDnon"];
publicVariableServer "PVDZ_plr_SwitchMove"; //Needed to execute switchMove on server machine. rSwitchMove only executes on other clients
player playMoveNow "AmovPpneMstpSnonWnonDnon_healed";

View File

@@ -140,6 +140,7 @@ if (!isDedicated) then {
//Crafting
fn_updateCraftUI = compile preprocessFileLineNumbers "\z\addons\dayz_code\compile\fn_updateCraftUI.sqf";
player_craftItem = compile preprocessFileLineNumbers "\z\addons\dayz_code\actions\player_craftItem.sqf";
player_craftItemVanilla = compile preprocessFileLineNumbers "\z\addons\dayz_code\actions\player_craftItemVanilla.sqf";
player_craftItemGUI = compile preprocessFileLineNumbers "\z\addons\dayz_code\actions\player_craftItemGUI.sqf";
player_checkRecipe = compile preprocessFileLineNumbers "\z\addons\dayz_code\actions\player_checkRecipe.sqf";
@@ -160,7 +161,6 @@ if (!isDedicated) then {
player_changeCombo = compile preprocessFileLineNumbers "\z\addons\dayz_code\compile\player_changeCombo.sqf";
player_checkItems = compile preprocessFileLineNumbers "\z\addons\dayz_code\compile\fn_checkItems.sqf";
player_copyKey = compile preprocessFileLineNumbers "\z\addons\dayz_code\actions\player_copyKey.sqf";
player_craftItem = compile preprocessFileLineNumbers "\z\addons\dayz_code\actions\player_craftItem.sqf";
player_deathBoard = compile preprocessFileLineNumbers "\z\addons\dayz_code\actions\list_playerDeathsAlt.sqf";
player_harvest = compile preprocessFileLineNumbers "\z\addons\dayz_code\compile\player_harvest.sqf";
player_harvestPlant = compile preprocessFileLineNumbers "\z\addons\dayz_code\actions\player_harvestPlant.sqf";

View File

@@ -73,6 +73,7 @@
if (isServer) then {
"PVDZ_plr_Death" addPublicVariableEventHandler {_id = (_this select 1) spawn server_playerDied};
"PVDZ_plr_Save" addPublicVariableEventHandler {_id = (_this select 1) call server_playerSync;};
"PVDZ_plr_SwitchMove" addPublicVariableEventHandler {((_this select 1) select 0) switchMove ((_this select 1) select 1);}; //Needed to execute switchMove on server machine. rSwitchMove only executes on other clients
"PVDZ_obj_Publish" addPublicVariableEventHandler {(_this select 1) call server_publishObj}; //Used by built items (Epoch and Vanilla)
"PVDZ_veh_Save" addPublicVariableEventHandler {(_this select 1) call server_updateObject};
"PVDZ_plr_Login1" addPublicVariableEventHandler {_id = (_this select 1) call server_playerLogin};

View File

@@ -38,7 +38,7 @@ MeleeMagazines = ["Hatchet_Swing","Crowbar_Swing","Machete_Swing","Bat_Swing","B
Dayz_fishingItems = ["MeleeFishingPole"];
Dayz_plants = ["Dayz_Plant1","Dayz_Plant2","Dayz_Plant3"];
Dayz_attachment_array = ["Attachment_ACG","Attachment_AIM"];
//DayZ_Tents = ["TentStorage","TentStorage0","TentStorage1","TentStorage2","TentStorage3","TentStorage4","DomeTentStorage","DomeTentStorage0","DomeTentStorage1","DomeTentStorage2","DomeTentStorag3","DomeTentStorage4"]
//DayZ_Tents = ["TentStorage","TentStorage0","TentStorage1","TentStorage2","TentStorage3","TentStorage4","DomeTentStorage","DomeTentStorage0","DomeTentStorage1","DomeTentStorage2","DomeTentStorage3","DomeTentStorage4"]
//DayZ_Stashs = ["StashSmall","StashSmall1","StashSmall2","StashSmall3","StashSmall4","StashMedium","StashMedium1","StashMedium2","StashMedium3","StashMedium4"]
//DayZ_cutter = ["Wire_cat1","Sandbag1_DZ","Fence_DZ","Generator_DZ","Hedgehog_DZ","CamoNet_DZ"]
DayZ_Backpacks = ["DZ_Patrol_Pack_EP1","DZ_Assault_Pack_EP1","DZ_Czech_Vest_Puch","DZ_ALICE_Pack_EP1","DZ_TK_Assault_Pack_EP1","DZ_British_ACU","DZ_CivilBackpack_EP1","DZ_Backpack_EP1","DZ_TerminalPack_EP1","DZ_CompactPack_EP1","DZ_GunBag_EP1","DZ_LargeGunBag_EP1"];

View File

@@ -1107,7 +1107,7 @@ class FSM
"//Player control loop" \n
"dayz_monitor1 = [] spawn {" \n
" while {1 == 1} do { " \n
" //sleep (if (call player_zombieCheck) then {dayz_monitorPeriod/3} else {dayz_monitorPeriod});" \n
" //uiSleep (if (call player_zombieCheck) then {dayz_monitorPeriod/3} else {dayz_monitorPeriod});" \n
" call player_zombieCheck;" \n
" uiSleep 1;" \n
" };" \n

View File

@@ -114,11 +114,6 @@ while {1 == 1} do {
};
if ((diag_tickTime - _timer) > 300) then {
//Other Counters
dayz_currentGlobalAnimals = count entities "CAAnimalBase";
dayz_currentGlobalZombies = count entities "zZombie_Base";
//Animals
//[] call player_animalCheck;
@@ -423,6 +418,9 @@ while {1 == 1} do {
if ((diag_tickTime - _timer1) > 10) then {
_position = getPosATL player;
//Other Counters
dayz_currentGlobalAnimals = count entities "CAAnimalBase";
dayz_currentGlobalZombies = count entities "zZombie_Base";
_zeds = _position nearEntities ["zZombie_Base",200];
dayz_spawnZombies = 0;
dayz_CurrentNearByZombies = 0;