Jump to content

[Alpha Release] Single Currency 3.0 & Storage DEFAULT HIVE ( No global banking).


Recommended Posts

22 minutes ago, JohnnyLube said:

I have one in my "custom\player_switchmodel.sqf" and one in the "zsc\compiles\player_switchmodel.sqf" Could it be conflicting or being called incorrectly?

When ever I deal with plotmanagement I combine the two "player_switchmodel.sqf" , so I only have one.  In  ZSC\gold\ZSCconfig.sqf I set this to ZSC_Overwrite_SwitchModel = false; so that the only one its looking at is in plotmanagement.

Link to comment
Share on other sites

20 hours ago, JohnnyLube said:

Hi Juan oops...

Thanks for taking an interest. I have done as Salival suggested with no effect. I have changed ALL the intentory to inventory within server_monitor. Are you suggesting I change it all back?

This major issue is I can have either plotmanagement working or single currency but not it would seem both.. Could there be an issue with the player_switchmodel.sqf? I have one in my "custom\player_switchmodel.sqf" and one in the "zsc\compiles\player_switchmodel.sqf" Could it be conflicting or being called incorrectly?

 

Regards

no,no do not change in back... all words must be INVENTORY!

i just say take a look again in server_monitor.sqf cuz in plotmanagement install guide.. zupa say you change again by intentory.. and this is a bad idea if ure running ZSC see :

plotmanagement step 8:

8 B
Find

if (count _intentory > 0) then {

Replace that with

if ((count _intentory > 0) && !(typeOf( _object) == "Plastic_Pole_EP1_DZ")) then {

so this must be:

8 B
Find

if (count _inventory > 0) then {

Replace that with

if ((count _inventory > 0) && !(typeOf( _object) == "Plastic_Pole_EP1_DZ")) then {

 

 

and yes.. the ZSC overwrite files somethimes can work bad.. i remember my 1.0.5.1 server.. i had to disallow the overwrite for fn_selfactions.sqf and merge the ZSC fn_selfactions with my custom.

Link to comment
Share on other sites

3 hours ago, JohnnyLube said:

Sounds like its going to be an arseache :-) What we need is someone to combine all these superb mods into 1 downloadable package we could call it Epoch 1.5.2 or even go up a whole number and call it 1.06..........

take a look here:

Others Servers Packages: (already installed).

 

 

Link to comment
Share on other sites

On 12/29/2016 at 6:26 PM, JohnnyLube said:

Sounds like its going to be an arseache :-) What we need is someone to combine all these superb mods into 1 downloadable package we could call it Epoch 1.5.2 or even go up a whole number and call it 1.06..........

WHich is done; just without Single Currency.

TBH, It's not that hard to just implement this one into the new 1.06 as far i can remember.

Just abit of mindset and goodwill ^^ 

Link to comment
Share on other sites

4 minutes ago, DAKA said:

I have checked all around to find a way to add Coins to zombies. I have found a great thread, but both options that they say to use, don't work. Is there another way to add coins to zombies that you kill?

NVM, I got it to work. Stupid me had an extra ) in there.

Link to comment
Share on other sites

On 14-11-2014 at 2:02 PM, Zupa said:

Single Currency 3.0 & Storage DEFAULT HIVE ( No global banking).

 

AKA: ZSC 

 

 

RELEASE 1: INDEPENDENT RELEASE ( No converting script yet to convert old SC money to this version).

 

 

 

        REQUEST: If someone is good with MYSQL can he complete the qyuery on the bottom of this post? ^^ limited time here ^^.

 

 

What is it?

 

This script replaces gold,silver,tin,copper,briefcases by 1 virtual currency with a configurable name. You can buy,sell, give, receive, take (from dead bodies) and STORE this money like it was a normal inventory item. ( It will work with a different dialog then your gear dialog.) 

 

No more smelting gold into silver or anything related to that. Everything is in one currency ( For example "ZupasticiumCoins"). 

 

Features.

 

  • Store Money in storage objects and vehicles ( max money in 1 storage depends on the size). 
  • No global access to your money.
  • Anyone can take the money out ( for vault/lockbox it must be open of course).
  • Trade with this currency for cars/items.
  • Give money to other players.
  • NO inventory issues with gold!  

 

Whats the difference with your other single currency scripts?

 

  • You can use the default hive!
  • No global bank! Back to normal epoch danger to lose cash! 
  • Cleaned up code
  • Very low changes to default saving system. (DB friendly)
  • NO database changes needed.
  • NO ATMs, Safezones, atms in trader whatsoever...
  • Store money in vehicles.

 

Technical data:

  • Storage money is saved in the gear section of the object in the Database
  • Player Money is added to gear section of the player in the Database ( Again thanks to maca for pointing this out for me).

 

Extra

 

  • This build will have all of the fixes on errors out there ( Build on peterbeers all in on packages with the bugfixes).
  • Reworked the  transfering money between players to be sure trade goes to the right object/player.
  • Store money in vehicles

Credits

 

  • Maca - Original private single currency.
  • Peterbeer -  for putting all fixes together in 1 pack.
  • Soul - Hives modifications and code changes for it. ( not applied on this script, jsut credited for hard work).
  • Rocu - Great help on forums and fixes.
  • DraftKid - Testing and screenshots

 

 

Please report bugs so I can solve them!

 

 

The config located IN


ZSC/gold/ZSCconfig.sqf

/* Single Currency 3.0 uses storages to store money which can be accessed by anyone if open of course (safe,lockbox). Each storage has his own money, so no global access. */

// Name of your currency
CurrencyName = "Coins"; 

// Objects that can hold money. Vehicles are added automaticly. Size of  money capacity is depended on ammount of magazines the object can hold.
ZSC_MoneyStorage = ["VaultStorage","LockboxStorage","StorageShed_DZ","OutHouse_DZ","Wooden_shed_DZ","WoodShack_DZ","GunRack_DZ","WoodCrate_DZ","TentStorage","TentStorageDomed","TentStorageDomed2"];

// Multiplier how much money an object can hold. This number X ammount of magazines it can hold. ( so URAL -> 500 items * 1000 = 5 MIL cash).
ZSC_MaxMoneyInStorageMultiplier = 1000;

// (True = No Animation / False = Animation)
InstantTrading = false; 

// If TRUE: overwrite yours player_switchmodel with mine. | IF False: Change content yourself @ step D
ZSC_Overwrite_SwitchModel = true; 

 // if TRUE: Overwrites yours fn_selfactions with default 1 + edits. | IF False: Change content yourself @ step D
ZSC_Overwrite_SelfActions = true;

 // if TRUE: Overwrites yours fn_selfactions with default 1 + edits. | IF False: Change content yourself @ step D
ZSC_Overwrite_UnLockVault = true;

 // if TRUE: Overwrites yours fn_selfactions with default 1 + edits. | IF False: Change content yourself @ step D
ZSC_Overwrite_LockVault = true;

/* IF YOU USE different mods like P4L it's recommended to do changes yourself or it wont work */

There are pbo's provided for cherno 11. Or follow the installation instructions

 

https://github.com/EpochSC/SingleCurrencyStorage

 

Installation instructions. ( TRIED TO KEEP IT NOOB FRIENDLY ^^)

 

 

If u are going to use the full pbo?!

 

The missions.sqm is build for OVERPOCH. Delete the overwatch addons if you are just using it for Epoch. 

 

 

 

MISSION PBO

 

A ) In your init.sqf:

 

A 1) You must have 


/*ZSC*/
DZE_ConfigTrader = true;
/*ZSC*/

in the top section ( for example right above "EpochEvents"); Place if you do not have it yet. ZSC requires Config traders, It will also help your server reduce lag!

 

A 2) PLACE


/*ZSC*/	
call compile preprocessFileLineNumbers "ZSC\gold\ZSCinit.sqf";
/*ZSC*/			

ABOVE


progressLoadingScreen 0.5;

A 3) PLACE


execVM "ZSC\compiles\playerHud.sqf";

RIGHT UNDER


_playerMonitor = 	[] execVM "\z\addons\dayz_code\system\player_monitor.sqf";	

A 4 )

 

Change


call compile preprocessFileLineNumbers "server_traders.sqf";	

to


call compile preprocessFileLineNumbers "server_traders_cherno_11.sqf";	

ON THE BOTTOM OF THIS TOPIC THERE WILL BE AN EXPLANATION FOR OTHER MAPS / INSTANCES.

 

A 5 ) MAKE SURE 


_serverMonitor = 	[] execVM "\z\addons\dayz_server\system\server_monitor.sqf";

this line is custom and doesnt have dayz_code in it. It should point at dayz_server or if u use another script to where ever that places it.

 

B ) In your description.ext

 

B 1) Place 


#include "ZSC\config\cfgServerTrader.hpp"

on the complete top.

 

B 2 ) Add if you do not have a RscTitles yet!


class RscTitles
{
#include "ZSC\config\ZSChud.hpp"
};

at the bottom.

 

IF U ALREADY HAVE IT just add


#include "ZSC\config\ZSChud.hpp"

behind whatever is in there.

 

B 3 ) JUST ADD AT THE COMPLETE BOTTOM


#include "ZSC\config\ZSCdefines.hpp"
#include "ZSC\config\ZSCdialogs.hpp"

B 4 ) If you come from another currency, u can remove the shit that was extra added in that one  :).

 

C )  COPY FILES

 

C 1 ) Place the ZSC folder in your mission pbo ( take it out of the github's missions pbo).

C 2 ) Place server_traders_cherno_11.sqf in your missions pbo. ( If other map/instance check bottom of the topic.).

 

D ) fn_selfactions ( IF you use my overwrite, u do not have to to this step.

 

D 1 )PLACE


	if(_typeOfCursorTarget in ZSC_MoneyStorage && (player distance _cursorTarget < 5)) then {
		if (s_bank_dialog < 0) then {
				s_bank_dialog = player addAction ["Money Storage", "ZSC\actions\bank_dialog.sqf",_cursorTarget, 3, true, true, "", ""];	
		};
	} else {
     	player removeAction s_bank_dialog;
		s_bank_dialog = -1;
	};

	// cars 
	if( _isVehicle && !_isMan &&_isAlive && !_isMan && !locked _cursorTarget && !(_cursorTarget isKindOf "Bicycle") && (player distance _cursorTarget < 5)) then {		
		if (s_bank_dialog2 < 0) then {
			s_bank_dialog2 = player addAction ["Money Storage", "ZSC\actions\bank_dialog.sqf",_cursorTarget, 3, true, true, "", ""];
		};			
	} else {		
		player removeAction s_bank_dialog2;
		s_bank_dialog2 = -1;
	};

 

AFTER


} else {
	{player removeAction _x} count s_player_combi;s_player_combi = [];
	s_player_unlockvault = -1;
};

D 2 )


if (_isMan and _isAlive and !_isZombie and !_isAnimal and !(_traderType in serverTraders)) then {
	if (s_givemoney_dialog < 0) then {
		s_givemoney_dialog = player addAction [format["Give Money to %1", (name _cursorTarget)], "ZSC\actions\give_player_dialog.sqf",_cursorTarget, 3, true, true, "", ""];
	};
} else {
	player removeAction s_givemoney_dialog;
	s_givemoney_dialog = -1;
};

ABOVE


if(_typeOfCursorTarget in dayz_fuelpumparray) then {
	

D 3 ) CHANGE


if (_player_studybody) then {
		if (s_player_studybody < 0) then {
			s_player_studybody = player addAction [localize "str_action_studybody", "\z\addons\dayz_code\actions\study_body.sqf",_cursorTarget, 0, false, true, "",""];
		};
	} else {
		player removeAction s_player_studybody;
		s_player_studybody = -1;
	};

INTO


if (_player_studybody) then {
	if (s_player_studybody < 0) then {
		s_player_studybody = player addAction [("<t color=""#FF0000"">"+("Check Wallet") + "</t>"), "ZSC\actions\check_wallet.sqf",_cursorTarget, 0, false, true, "",""];
	};
} else {
	player removeAction s_player_studybody;
	s_player_studybody = -1;
};

D 4 ) 

 

ADD 


player removeAction s_givemoney_dialog;
s_givemoney_dialog = -1;
player removeAction s_bank_dialog;
s_bank_dialog = -1;
player removeAction s_bank_dialog2;
s_bank_dialog2 = -1;

BEHIND


	player removeAction s_player_towing;
	s_player_towing = -1;
	player removeAction s_player_fuelauto;
	s_player_fuelauto = -1;
	player removeAction s_player_fuelauto2;
	s_player_fuelauto2 = -1;

D 5 )  TO remove the client side errors u getting add in your VARIABLES.SQF


s_givemoney_dialog = -1;
s_bank_dialog = -1;
s_bank_dialog2 = -1;

TO


dayz_resetSelfActions = {

E ) player_switchModel.sqf again, if u overwriten with mine in first step, u can skip.

 

E 1 ) add 


_cashMoney = player getVariable["cashMoney",0];

behind


_weapons = weapons player;
_countMags = call player_countMagazines; 
_magazines = _countMags select 0;

E 2 ) Add


player setVariable ["cashMoney",_cashMoney,true];

on the BOTTOM

 

E 3 ) CHANGE


//Create New Character
_group 		= createGroup west;
_newUnit 	= _group createUnit [_class,dayz_spawnPos,[],0,"NONE"];

_newUnit 	setPosATL _position;
_newUnit 	setDir _dir;

into


_group = createGroup west;
_newUnit = _group createUnit [_class,dayz_spawnPos,[],0,"NONE"];
[_newUnit] joinSilent createGroup WEST;
_newUnit setPosATL _position;
_newUnit setDir _dir;
_newUnit setVariable ["cashMoney",_cashMoney,true];

F) You can use my unclockVault in ZSCinit, If u got a custom one, do the following changes:

 

F1)

 

place 


_objMoney	= _obj getVariable["bankMoney",0];

behind


_dir = direction _obj;
_pos	= _obj getVariable["OEMPos",(getposATL _obj)];
_objectID 	= _obj getVariable["ObjectID","0"];
_objectUID	= _obj getVariable["ObjectUID","0"];
	

F 2)

place


_holder setVariable ["bankMoney", _objMoney, true];

behind


_holder setVariable["CharacterID",_ownerID,true];
_holder setVariable["ObjectID",_objectID,true];
_holder setVariable["ObjectUID",_objectUID,true];
_holder setVariable ["OEMPos", _pos, true];

E) in LockVault.sqf if u got a custom one, otherwise use mine and set true in config:

 

E1 ) place) 


_objMoney	= _obj getVariable["bankMoney",0];

behind


_ownerID = _obj getVariable["CharacterID","0"];
_objectID 	= _obj getVariable["ObjectID","0"];
_objectUID	= _obj getVariable["ObjectUID","0"];

E2 ) 

 

place


_holder setVariable ["bankMoney", _objMoney, true];

behind


	_holder setVariable["CharacterID",_ownerID,true];
	_holder setVariable["ObjectID",_objectID,true];
	_holder setVariable["ObjectUID",_objectUID,true];
	_holder setVariable ["OEMPos", _pos, true];

SERVER PBO

 

A ) REPLACE your "compiles/server_tradeObject.sqf"  With my one ( not other script uses that anyways).

 

B )  IN compiles/server_updateObject.sqf

 

Change 


		_inventory = [
			getWeaponCargo _object,
			getMagazineCargo _object,
			getBackpackCargo _object
		];

into


		_inventory = [
			getWeaponCargo _object,
			getMagazineCargo _object,
			getBackpackCargo _object
			/*ZSC*/
			, _object getVariable["bankMoney",0]
			/*ZSC*/
		];

C ) In your server_monitor.sqf ( NOTE: the " _intentory' variable can be called "_inventory" at your files, so change my code to that, if it's the case).

 

Add


/*ZSC*/
       if( count (_intentory) > 3)then{
		_object setVariable ["bankMoney", _intentory select 3, true];
	}else{
	        _object setVariable ["bankMoney", 0, true];
	};
/*ZSC*/

ABOVE


if (_type in DZE_LockedStorage) then {
// Fill variables with loot
_object setVariable ["WeaponCargo", (_intentory select 0),true];
_object setVariable ["MagazineCargo", (_intentory select 1),true];
_object setVariable ["BackpackCargo", (_intentory select 2),true];
} else {

D) in compiles/server_playerSync.sqf

 

Change


_playerGear = [weapons _character,_magazines]; 

into


_playerGear = [weapons _character,_magazines, _character getVariable["cashMoney",0]]; 

NOTE:

 

in the gold init i use a custom gearSet.sqf

If u would have a custom one, it's defined in the ZSCinit.sqf. Only differnecy will be the top where it checks for the money in your gear sections.

 

 

FAQ!

 

 

I use a different instance/map to play one! What do i do?

 

The only things that difference between maps where u need to worrie about is the server_traders.sqf. I included them for 4 maps, if your map is NOT in there u will have to change your original one.

FAIR SIMPLE:

 

1) Take your original server_traders

 

2) Open one of mine

 

3) Copy my categories with the correct numbes to your traders. You can choose also which traders sells what then ^^.

 

4) Share your file to me so i can put it in the list

 

 

Does it work with Overpoch(ins).

 

Simple: Yes, Everything with epoch as base.

 

Overwatch items or included in traders, remove the categories if you do not use them.

 

 

Can i convert from the older system?

 

You will have to revert your database to the default structure and maybe transfer money. Banks added to the players cash is the best solution.

 

How do i see my money and bank?

 

1 - Bank will not be visible cus their is none. You store money in storages like other items ( but in a different dialog). So the money can be accessed by anyone that has access to that storage.

2- Money is visisble with a money icon on the right side of the screen. Feel free to add it to other places aswell.

 

This will return your money:


player getVariable["cashMoney",0];

Can I use it with database traders?

 

No, this build is made for config traders. No support (Yet).

 

 

Screenshots

 

 

rBVpE6C.jpg

yPqjeR5.jpg

zdSqCOq.jpg

 

 

 

 

 

 

I probably will code this inthe default epoch code and send a merge request to Epoch Devs with an option to do 


DZE_SingleCurrency = true/false;

And if they accept it , it might be in 1.6 ^^

is it compateble with 1.0.6 i assume it is ??

Link to comment
Share on other sites

On 14-11-2014 at 2:02 PM, Zupa said:

Single Currency 3.0 & Storage DEFAULT HIVE ( No global banking).

 

AKA: ZSC 

 

 

RELEASE 1: INDEPENDENT RELEASE ( No converting script yet to convert old SC money to this version).

 

 

 

        REQUEST: If someone is good with MYSQL can he complete the qyuery on the bottom of this post? ^^ limited time here ^^.

 

 

What is it?

 

This script replaces gold,silver,tin,copper,briefcases by 1 virtual currency with a configurable name. You can buy,sell, give, receive, take (from dead bodies) and STORE this money like it was a normal inventory item. ( It will work with a different dialog then your gear dialog.) 

 

No more smelting gold into silver or anything related to that. Everything is in one currency ( For example "ZupasticiumCoins"). 

 

Features.

 

  • Store Money in storage objects and vehicles ( max money in 1 storage depends on the size). 
  • No global access to your money.
  • Anyone can take the money out ( for vault/lockbox it must be open of course).
  • Trade with this currency for cars/items.
  • Give money to other players.
  • NO inventory issues with gold!  

 

Whats the difference with your other single currency scripts?

 

  • You can use the default hive!
  • No global bank! Back to normal epoch danger to lose cash! 
  • Cleaned up code
  • Very low changes to default saving system. (DB friendly)
  • NO database changes needed.
  • NO ATMs, Safezones, atms in trader whatsoever...
  • Store money in vehicles.

 

Technical data:

  • Storage money is saved in the gear section of the object in the Database
  • Player Money is added to gear section of the player in the Database ( Again thanks to maca for pointing this out for me).

 

Extra

 

  • This build will have all of the fixes on errors out there ( Build on peterbeers all in on packages with the bugfixes).
  • Reworked the  transfering money between players to be sure trade goes to the right object/player.
  • Store money in vehicles

Credits

 

  • Maca - Original private single currency.
  • Peterbeer -  for putting all fixes together in 1 pack.
  • Soul - Hives modifications and code changes for it. ( not applied on this script, jsut credited for hard work).
  • Rocu - Great help on forums and fixes.
  • DraftKid - Testing and screenshots

 

 

Please report bugs so I can solve them!

 

 

The config located IN


ZSC/gold/ZSCconfig.sqf

/* Single Currency 3.0 uses storages to store money which can be accessed by anyone if open of course (safe,lockbox). Each storage has his own money, so no global access. */

// Name of your currency
CurrencyName = "Coins"; 

// Objects that can hold money. Vehicles are added automaticly. Size of  money capacity is depended on ammount of magazines the object can hold.
ZSC_MoneyStorage = ["VaultStorage","LockboxStorage","StorageShed_DZ","OutHouse_DZ","Wooden_shed_DZ","WoodShack_DZ","GunRack_DZ","WoodCrate_DZ","TentStorage","TentStorageDomed","TentStorageDomed2"];

// Multiplier how much money an object can hold. This number X ammount of magazines it can hold. ( so URAL -> 500 items * 1000 = 5 MIL cash).
ZSC_MaxMoneyInStorageMultiplier = 1000;

// (True = No Animation / False = Animation)
InstantTrading = false; 

// If TRUE: overwrite yours player_switchmodel with mine. | IF False: Change content yourself @ step D
ZSC_Overwrite_SwitchModel = true; 

 // if TRUE: Overwrites yours fn_selfactions with default 1 + edits. | IF False: Change content yourself @ step D
ZSC_Overwrite_SelfActions = true;

 // if TRUE: Overwrites yours fn_selfactions with default 1 + edits. | IF False: Change content yourself @ step D
ZSC_Overwrite_UnLockVault = true;

 // if TRUE: Overwrites yours fn_selfactions with default 1 + edits. | IF False: Change content yourself @ step D
ZSC_Overwrite_LockVault = true;

/* IF YOU USE different mods like P4L it's recommended to do changes yourself or it wont work */

There are pbo's provided for cherno 11. Or follow the installation instructions

 

https://github.com/EpochSC/SingleCurrencyStorage

 

Installation instructions. ( TRIED TO KEEP IT NOOB FRIENDLY ^^)

 

 

If u are going to use the full pbo?!

 

The missions.sqm is build for OVERPOCH. Delete the overwatch addons if you are just using it for Epoch. 

 

 

 

MISSION PBO

 

A ) In your init.sqf:

 

A 1) You must have 


/*ZSC*/
DZE_ConfigTrader = true;
/*ZSC*/

in the top section ( for example right above "EpochEvents"); Place if you do not have it yet. ZSC requires Config traders, It will also help your server reduce lag!

 

A 2) PLACE


/*ZSC*/	
call compile preprocessFileLineNumbers "ZSC\gold\ZSCinit.sqf";
/*ZSC*/			

ABOVE


progressLoadingScreen 0.5;

A 3) PLACE


execVM "ZSC\compiles\playerHud.sqf";

RIGHT UNDER


_playerMonitor = 	[] execVM "\z\addons\dayz_code\system\player_monitor.sqf";	

A 4 )

 

Change


call compile preprocessFileLineNumbers "server_traders.sqf";	

to


call compile preprocessFileLineNumbers "server_traders_cherno_11.sqf";	

ON THE BOTTOM OF THIS TOPIC THERE WILL BE AN EXPLANATION FOR OTHER MAPS / INSTANCES.

 

A 5 ) MAKE SURE 


_serverMonitor = 	[] execVM "\z\addons\dayz_server\system\server_monitor.sqf";

this line is custom and doesnt have dayz_code in it. It should point at dayz_server or if u use another script to where ever that places it.

 

B ) In your description.ext

 

B 1) Place 


#include "ZSC\config\cfgServerTrader.hpp"

on the complete top.

 

B 2 ) Add if you do not have a RscTitles yet!


class RscTitles
{
#include "ZSC\config\ZSChud.hpp"
};

at the bottom.

 

IF U ALREADY HAVE IT just add


#include "ZSC\config\ZSChud.hpp"

behind whatever is in there.

 

B 3 ) JUST ADD AT THE COMPLETE BOTTOM


#include "ZSC\config\ZSCdefines.hpp"
#include "ZSC\config\ZSCdialogs.hpp"

B 4 ) If you come from another currency, u can remove the shit that was extra added in that one  :).

 

C )  COPY FILES

 

C 1 ) Place the ZSC folder in your mission pbo ( take it out of the github's missions pbo).

C 2 ) Place server_traders_cherno_11.sqf in your missions pbo. ( If other map/instance check bottom of the topic.).

 

D ) fn_selfactions ( IF you use my overwrite, u do not have to to this step.

 

D 1 )PLACE


	if(_typeOfCursorTarget in ZSC_MoneyStorage && (player distance _cursorTarget < 5)) then {
		if (s_bank_dialog < 0) then {
				s_bank_dialog = player addAction ["Money Storage", "ZSC\actions\bank_dialog.sqf",_cursorTarget, 3, true, true, "", ""];	
		};
	} else {
     	player removeAction s_bank_dialog;
		s_bank_dialog = -1;
	};

	// cars 
	if( _isVehicle && !_isMan &&_isAlive && !_isMan && !locked _cursorTarget && !(_cursorTarget isKindOf "Bicycle") && (player distance _cursorTarget < 5)) then {		
		if (s_bank_dialog2 < 0) then {
			s_bank_dialog2 = player addAction ["Money Storage", "ZSC\actions\bank_dialog.sqf",_cursorTarget, 3, true, true, "", ""];
		};			
	} else {		
		player removeAction s_bank_dialog2;
		s_bank_dialog2 = -1;
	};

 

AFTER


} else {
	{player removeAction _x} count s_player_combi;s_player_combi = [];
	s_player_unlockvault = -1;
};

D 2 )


if (_isMan and _isAlive and !_isZombie and !_isAnimal and !(_traderType in serverTraders)) then {
	if (s_givemoney_dialog < 0) then {
		s_givemoney_dialog = player addAction [format["Give Money to %1", (name _cursorTarget)], "ZSC\actions\give_player_dialog.sqf",_cursorTarget, 3, true, true, "", ""];
	};
} else {
	player removeAction s_givemoney_dialog;
	s_givemoney_dialog = -1;
};

ABOVE


if(_typeOfCursorTarget in dayz_fuelpumparray) then {
	

D 3 ) CHANGE


if (_player_studybody) then {
		if (s_player_studybody < 0) then {
			s_player_studybody = player addAction [localize "str_action_studybody", "\z\addons\dayz_code\actions\study_body.sqf",_cursorTarget, 0, false, true, "",""];
		};
	} else {
		player removeAction s_player_studybody;
		s_player_studybody = -1;
	};

INTO


if (_player_studybody) then {
	if (s_player_studybody < 0) then {
		s_player_studybody = player addAction [("<t color=""#FF0000"">"+("Check Wallet") + "</t>"), "ZSC\actions\check_wallet.sqf",_cursorTarget, 0, false, true, "",""];
	};
} else {
	player removeAction s_player_studybody;
	s_player_studybody = -1;
};

D 4 ) 

 

ADD 


player removeAction s_givemoney_dialog;
s_givemoney_dialog = -1;
player removeAction s_bank_dialog;
s_bank_dialog = -1;
player removeAction s_bank_dialog2;
s_bank_dialog2 = -1;

BEHIND


	player removeAction s_player_towing;
	s_player_towing = -1;
	player removeAction s_player_fuelauto;
	s_player_fuelauto = -1;
	player removeAction s_player_fuelauto2;
	s_player_fuelauto2 = -1;

D 5 )  TO remove the client side errors u getting add in your VARIABLES.SQF


s_givemoney_dialog = -1;
s_bank_dialog = -1;
s_bank_dialog2 = -1;

TO


dayz_resetSelfActions = {

E ) player_switchModel.sqf again, if u overwriten with mine in first step, u can skip.

 

E 1 ) add 


_cashMoney = player getVariable["cashMoney",0];

behind


_weapons = weapons player;
_countMags = call player_countMagazines; 
_magazines = _countMags select 0;

E 2 ) Add


player setVariable ["cashMoney",_cashMoney,true];

on the BOTTOM

 

E 3 ) CHANGE


//Create New Character
_group 		= createGroup west;
_newUnit 	= _group createUnit [_class,dayz_spawnPos,[],0,"NONE"];

_newUnit 	setPosATL _position;
_newUnit 	setDir _dir;

into


_group = createGroup west;
_newUnit = _group createUnit [_class,dayz_spawnPos,[],0,"NONE"];
[_newUnit] joinSilent createGroup WEST;
_newUnit setPosATL _position;
_newUnit setDir _dir;
_newUnit setVariable ["cashMoney",_cashMoney,true];

F) You can use my unclockVault in ZSCinit, If u got a custom one, do the following changes:

 

F1)

 

place 


_objMoney	= _obj getVariable["bankMoney",0];

behind


_dir = direction _obj;
_pos	= _obj getVariable["OEMPos",(getposATL _obj)];
_objectID 	= _obj getVariable["ObjectID","0"];
_objectUID	= _obj getVariable["ObjectUID","0"];
	

F 2)

place


_holder setVariable ["bankMoney", _objMoney, true];

behind


_holder setVariable["CharacterID",_ownerID,true];
_holder setVariable["ObjectID",_objectID,true];
_holder setVariable["ObjectUID",_objectUID,true];
_holder setVariable ["OEMPos", _pos, true];

E) in LockVault.sqf if u got a custom one, otherwise use mine and set true in config:

 

E1 ) place) 


_objMoney	= _obj getVariable["bankMoney",0];

behind


_ownerID = _obj getVariable["CharacterID","0"];
_objectID 	= _obj getVariable["ObjectID","0"];
_objectUID	= _obj getVariable["ObjectUID","0"];

E2 ) 

 

place


_holder setVariable ["bankMoney", _objMoney, true];

behind


	_holder setVariable["CharacterID",_ownerID,true];
	_holder setVariable["ObjectID",_objectID,true];
	_holder setVariable["ObjectUID",_objectUID,true];
	_holder setVariable ["OEMPos", _pos, true];

SERVER PBO

 

A ) REPLACE your "compiles/server_tradeObject.sqf"  With my one ( not other script uses that anyways).

 

B )  IN compiles/server_updateObject.sqf

 

Change 


		_inventory = [
			getWeaponCargo _object,
			getMagazineCargo _object,
			getBackpackCargo _object
		];

into


		_inventory = [
			getWeaponCargo _object,
			getMagazineCargo _object,
			getBackpackCargo _object
			/*ZSC*/
			, _object getVariable["bankMoney",0]
			/*ZSC*/
		];

C ) In your server_monitor.sqf ( NOTE: the " _intentory' variable can be called "_inventory" at your files, so change my code to that, if it's the case).

 

Add


/*ZSC*/
       if( count (_intentory) > 3)then{
		_object setVariable ["bankMoney", _intentory select 3, true];
	}else{
	        _object setVariable ["bankMoney", 0, true];
	};
/*ZSC*/

ABOVE


if (_type in DZE_LockedStorage) then {
// Fill variables with loot
_object setVariable ["WeaponCargo", (_intentory select 0),true];
_object setVariable ["MagazineCargo", (_intentory select 1),true];
_object setVariable ["BackpackCargo", (_intentory select 2),true];
} else {

D) in compiles/server_playerSync.sqf

 

Change


_playerGear = [weapons _character,_magazines]; 

into


_playerGear = [weapons _character,_magazines, _character getVariable["cashMoney",0]]; 

NOTE:

 

in the gold init i use a custom gearSet.sqf

If u would have a custom one, it's defined in the ZSCinit.sqf. Only differnecy will be the top where it checks for the money in your gear sections.

 

 

FAQ!

 

 

I use a different instance/map to play one! What do i do?

 

The only things that difference between maps where u need to worrie about is the server_traders.sqf. I included them for 4 maps, if your map is NOT in there u will have to change your original one.

FAIR SIMPLE:

 

1) Take your original server_traders

 

2) Open one of mine

 

3) Copy my categories with the correct numbes to your traders. You can choose also which traders sells what then ^^.

 

4) Share your file to me so i can put it in the list

 

 

Does it work with Overpoch(ins).

 

Simple: Yes, Everything with epoch as base.

 

Overwatch items or included in traders, remove the categories if you do not use them.

 

 

Can i convert from the older system?

 

You will have to revert your database to the default structure and maybe transfer money. Banks added to the players cash is the best solution.

 

How do i see my money and bank?

 

1 - Bank will not be visible cus their is none. You store money in storages like other items ( but in a different dialog). So the money can be accessed by anyone that has access to that storage.

2- Money is visisble with a money icon on the right side of the screen. Feel free to add it to other places aswell.

 

This will return your money:


player getVariable["cashMoney",0];

Can I use it with database traders?

 

No, this build is made for config traders. No support (Yet).

 

 

Screenshots

 

 

rBVpE6C.jpg

yPqjeR5.jpg

zdSqCOq.jpg

 

 

 

 

 

 

I probably will code this inthe default epoch code and send a merge request to Epoch Devs with an option to do 


DZE_SingleCurrency = true/false;

And if they accept it , it might be in 1.6 ^^

it isnt :D

Link to comment
Share on other sites

  • 2 weeks later...
  • 4 weeks later...
  • 10 months later...
Guest
This topic is now closed to further replies.
×
×
  • Create New...