Commit Graph

70 Commits

Author SHA1 Message Date
ebaydayz
e02f8ba8ff Use BIS_fnc_numberText for SC number displays again
Missed some @ndavalos
https://github.com/EpochModTeam/DayZ-Epoch/issues/1712#issuecomment-239647854
2016-08-16 16:44:56 -04:00
ebaydayz
3f3f1a32ed Use BIS_fnc_numberText for SC number displays
See:

https://github.com/EpochModTeam/DayZ-Epoch/issues/1712#issuecomment-239647854

That should be all of them @ndavalos let me know if I missed any.
2016-08-16 16:28:06 -04:00
ebaydayz
c62e3147c8 Do not send purchased vehicle marker arrow over network
Only the player buying the vehicle needs to see the arrow.

Also fixed CfgMagazines error from:
2c4c75c67c (diff-fcf3df9a25b3d05402ab4e4809673194R6)
@icomrade
2016-08-09 14:52:15 -04:00
ebaydayz
950ef04855 Properly separate allowed toolbelt and binocular count
It should no longer be possible to overflow your toolbelt or binocular
slots now.
2016-08-06 11:08:01 -04:00
ebaydayz
c51fd11511 Use better method to find player's vehicle in Advanced Trading #1725 2016-08-05 13:43:58 -04:00
ebaydayz
f6e10dd71c Add gear icons to trader menu vehicle cargo space display
- Added gear icons to vehicle cargo space display instead of
Weps/Mags/Bags text

- Decreased info text to 0.7 all around. Can be reverted to 0.8 if
preferred, but 0.7 or smaller is needed for vehicle info class, display
name and weapons list to avoid cutting off the dialog on normal and
larger interface sizes.

#1724
2016-08-04 20:36:36 -04:00
ebaydayz
60e6b85c4d Don't show fuelCapactiy for bicycles in Advanced Trading 2016-08-04 17:37:53 -04:00
ebaydayz
c52187220c Fix message when buying multiple backpacks into empty gear 2016-08-04 16:16:13 -04:00
ebaydayz
d91bde9e53 Fix return change overflow check
Thanks @oiad

- Added compensation for money which will be removed from gear and
backpack
- Improved readability
2016-08-04 14:22:33 -04:00
ebaydayz
5a55bcb9b0 Forbid buying >1 of any tool into gear
Previous duplicate check only checked player's current tools and the
buying array types for >1 of the same tool (not buying array amounts).

Also added prevention of binocular slot overflow.
2016-08-03 18:56:42 -04:00
ebaydayz
376befd613 Minor Advanced Trading string semantics changes
#1724
2016-08-03 13:38:09 -04:00
ebaydayz
382f3bc451 Add buying to and selling from dayz_onBack
Also:
- Fixed typo Z_fill(e)TradeTitle
- Fixed "not enough slots to accept change" message shows when "not
enough money" should show instead
2016-08-02 14:19:59 -04:00
ebaydayz
a95925aac5 Make free slots display for gear more logical
- Don't show tool slots as available weapon slots in gear. Player is
informed of tool slots count in systemChat.
- Don't show pistol mag slots as available item slots in gear. Player is
informed of pistol mag slots count in systemChat. Only pistol ammo and
bandages can be purchased into them.
- Removed "Stand still to complete trade" message since the medic
animation loop is no longer used
- Added back backpack mags count message and avoided redundant "Backpack
space exceeded message" @oiad
ee3eb845a3 (commitcomment-18483149)
2016-08-02 11:55:50 -04:00
ebaydayz
ee3eb845a3 Remove selling backpacks from vehicles
I don't think we should allow selling backpacks from vehicles because we
can not get backpack contents.

We can only remove all backpacks with clearBackpackCargo and then add
back new empty backpacks for ones that weren't sold.

This means players may unintentionally wipe all contents of all other
backpacks in their vehicle when they only want to sell one.

Thanks @AirwavesMan for catching this.

Also made changes discussed in #1718 @oiad
2016-08-01 17:14:42 -04:00
ebaydayz
a5be49c546 Add handling of magazine overflow in AdvTrade and free slot icons
- Added proper handling of pistol mags and regular mags in gear to
prevent magazine overflow
- Added pre-check if return change will overflow gear + backpack free
space. If change will not fit in gear + backpack free space then buy is
prevented with a message notifying the player. In the case of a sale it
proceeds anyway, but notifies player if overflow occurs (see comments in
returnChange)
- Consolidated duplicate code for calculating free space and returning
cargo of an object into new calcFreeSpace
- Old calculateFreeSpace renamed to displayFreeSpace
- Added Weps/Mags/Bags icons to free slot numbers display
2016-07-31 18:38:53 -04:00
ebaydayz
cc129cf403 Fix buyItems error from #1716 @oiad 2016-07-30 12:28:33 -04:00
oiad
7c4d25ef1a Advanced trading tidying, spelling fixes, private fixes and string fixes (#1716)
* Advanced trading tidying, spelling fixes, private fixes and string fixes.

Fixes snap building issue with metal floors
Fixed spelling mistakes in various scripts
Fixed formatting uglyness in various scripts
Fixed invalid private lines in various scripts
Changed Advanced trading so buying worked more like selling, You can't
select backpack if you don't have a pack nor can you select a vehicle if
you don't have a vehicle.
Removed some redundant strings from Advanced trading and changed a few
of the strings to be more englishy
Removed the ability to buy a backpack into your backpack (You cant do
this anyway)
Fixed a bug where if you had nothing in your backpack it would break the
checkArrayInConfig script so the titlebar would not refresh correctly
Removed slot counts on no backpack and no vehicle (No need for it, just
clutter)
Moved backpack/vehicle checking to z_at_getContainer.sqf

* Last part of tidyness fixes

Last part of tidyness fixes

* Actual backpack fix

Lets actually fix the buying backpack into backpack or backpack when you
already have one.

* Missing from commit

Missing from commit
2016-07-30 10:03:00 -04:00
ebaydayz
1d2fc3b266 Fix item count being overwritten in AdvTrade right list title
When switching back to category view the item count was overwritten
from:

12a9e9f83e

It is no longer needed to set it in changeBuySell since calcPrice runs
every time changeBuySell does. The one exception is when switching back
to category view, but in that case it stays in buy mode anyway.

You forgot to add it for single currency as well @oiad
2016-07-29 16:36:36 -04:00
ebaydayz
fd2eb14c5e Give inTraderCity a default value
There is no point in setting inTraderCity = "Any"; since you can use the
isInTraderCity variable to check if a player is in any trader city. Also
"Any" will return false for isNil, so the only time "Unknown Trader
City" was being used was when the player had not entered any city yet.
If they left a known trader and went to an unknown one the RPT message
would say "bought x at Any". Now it will correctly say "Unknown Trader"
anytime a purchase is made without inTraderCity being set.
2016-07-29 15:48:51 -04:00
ebaydayz
b1ae6c4a60 Fix unknown entity RPT error for Padlock and Frank&Beans
Vanilla development commit:

955c7a263c
2016-07-29 14:34:45 -04:00
ebaydayz
c9efb9e9df Fix some undefined variables in Adv Trade systemChat messages
Fixes "Cannot sell any, tires are too damaged." and empty string in
success message.
2016-07-29 11:41:44 -04:00
ebaydayz
b408e76c55 Fix extra spaces in Advanced Trading RPT log
Also fixed missing space in systemChat message.
2016-07-29 11:09:42 -04:00
ebaydayz
ba3677f13d Remove redundant "Gear" text next to portrait in Adv Trade
The menu already says "Buying in" or "Selling from" Gear in the top left
so having it again in the top right is redundant. It was my mistake
adding it there originally.
2016-07-29 10:22:13 -04:00
icomrade
bdf0870f3e Fix keys not deleting
Should work fine, but more validation is always good, I tested selling
from all inventories with DZE_SaleRequiresKey true and false.
2016-07-29 00:55:20 -04:00
oiad
12a9e9f83e Advanced trading tidyness
Optimizes the code for the buyitems item listing (What was I thinking!)
Adds item count to buy/sell list (Useful for checking against
backpack/vehicle storage space constraints when buying multiple items)
Small logging fix.
2016-07-28 23:08:11 +12:00
ebaydayz
f84140c555 Don't clear buying list on category switch + AdvTrade fixes
The buying list now acts like a shopping cart. It is no longer cleared
when switching between categories or containers. Closing the dialog or
switching to sell mode still clears it.

Also fixed:
- Filter button in sell mode
- Bug where filtering sellable list readded items already moved to
selling list
- Visual price display not clearing when remove all button is used on
buying list
- Gear container picture showing rank instead of portrait in buy mode
- Dialog is no longer closed when trying to sell zero items
- LbCurSel is now reset when the buyable list is cleared
- Category is no longer opened onLbSelChanged. Instead you need to
double click or use the "View" button, so the arrow keys can be used for
selecting too.
2016-07-27 18:40:03 -04:00
ebaydayz
f76b8493fd Fix category list alignment in advanced trade
Since we changed the alignment back to default the ctrlSetPosition I
added is no longer needed. #1709. With the alignment changed it would
actually run off the background if the category list was too long.
Thanks @oiad
2016-07-23 14:24:54 -04:00
oiad
9efc671abb Advanced trading changes
This changes a few things in Advanced trading, mainly cosmetically.

> Removes all the commented out lines that were the same in defines.sqf,
let me know if these are there for a reason?
> fixes the buying list to have localization support and has a total
item count that works properly.
> cosmetic change displaying backpack info on trader to bring it in line
with the other menus
> adds total item count to the selling list and added localization for
that
2016-07-23 23:30:05 +12:00
icomrade
9c4e30ea08 Fix Advanced Trading Selling + new Var
New variable to configure whether or not the player will need to key to
sell a vehicle. DZE_SaleRequiresKey = false;
2016-07-23 01:16:37 -04:00
icomrade
0414c67284 No longer require key to sell a vehicle
Still requires the vehicle to be local, meaning you were the last person
to be in the driver seat.
2016-07-21 17:42:25 -04:00
oiad
801145d664 Advanced trading fixes/modifications (#1698)
* Advanced trading fixes/modifcations

This adds combine currency option to the Advanced trading screen since
@Airwaves man noticed it didn't have a way of doing it.

Updated stringtables with correct "paid" spelling and differing text for
buying/selling.

This also addds proper currency checking/reporting for the log system
that has been introduced, it's untidy but it works, instead of getting
"user bought x for 1000 currency" in a non coins server, it will convert
it to the proper 1 brief 5 10oz gold etc system (uses a new function
z_calcDefaultCurrencyNoImg)

This also adds a check to see if the buy list is empty (as per the
selling list) and returns text to the user informing them.

Re-arranged buy and sell so buy is on top of sell, it's a bit easier to
read then.

* Advanced trading logging change

This was missing from my previous commit, this changes the
server_tradeobject to check if it's being passed a number (single
currency) or text (my logging currency changes)

* Advanced trading rework

Fixes all problems @ebaydayz
2016-06-21 20:18:41 -04:00
ebaydayz
bd85693af7 Add categories view to Advanced Trading buy mode 2016-05-12 14:09:05 -04:00
ebaydayz
e60175b30c Fix wrong price when adding multiples of same item to buy list
Modifying _temp was also modifying Z_BuyableArray. An independent copy
of the array was needed.
2016-05-11 15:07:58 -04:00
ebaydayz
6ef59a0237 Add server RPT logging to Advanced Trading 2016-05-11 12:41:59 -04:00
ebaydayz
5ca182dffe Fix can't sell satchels with Adv. Trade
Some items (like PipeBomb) are a class in both CfgMagazines and
CfgWeapons. BIS_fnc_invRemove uses weapon first, so that is why the
magazine was not being removed. Using config instead of string avoids
this problem.
2016-05-09 14:10:20 -04:00
ebaydayz
c0cb702534 Add swap for classicBloodBagSystem in Adv. Trade 2016-05-08 17:31:23 -04:00
ebaydayz
5120d8a488 Fix incorrect backpack space calculation
Fixes not being able to purchase into a half full backpack and free slot
counts text incorrect when buying into backpack.
2016-05-08 16:21:24 -04:00
ebaydayz
84e64be47e Don't show debug message when paying with exact amount 2016-05-08 13:30:26 -04:00
ebaydayz
c477304571 Forbid buying duplicate tools into gear 2016-05-08 11:59:25 -04:00
ebaydayz
41e653136f Add attachments compatibility list to trader
Also reduced item info size a bit to better fit normal and large
interface sizes.
2016-05-07 19:29:00 -04:00
ebaydayz
03e3293795 Add extra vehicle info in Adv. Trading
Translations are from Arma2OA languagecore.pbo
2016-05-06 18:57:53 -04:00
ebaydayz
00cb76a496 Fix Adv. Trading pistol detection
The secondaryWeapon command does not detect pistols. It returns the
unit's launcher.
https://community.bistudio.com/wiki/secondaryWeapon

This fixes the menu always showing your pistol slot as open, even when
you already have one.
2016-05-05 17:25:47 -04:00
ebaydayz
7bc5d7f7f5 Fix full toolbelt showing -2 tool slots in Adv. Trade
Correctly shows zero available tool slots when toolbelt, binocular and
NVG slots are full now.
2016-05-05 16:50:09 -04:00
ebaydayz
fe54b78bdb Add backpack selling to Advanced Trading
It was not possible to sell a backpack from your gear or vehicle.

Added option to sell from gear. Sell backpack from vehicle is still not
possible currently due to Arma limitations.
2016-05-05 14:55:50 -04:00
ebaydayz
2c6ef2ced3 Don't show selected vehicleX message on Adv Trade startup
Only show Selected vehicleX systemChat message when clicking the buy
in/sell from vehicle button. Previously it was showing every time the
menu opened.

Also added better logging to RPT. Shows "Trader Menu: %1 x %2 added" and
"Trader Menu: %1 added"
2016-05-05 12:37:10 -04:00
ebaydayz
ef2c910bfc Fix open gear backpack slots always showing zero
IsNil returns true as long as the variable is defined. In this case it
is defined as objNull when you have no backpack.
2016-05-04 19:09:10 -04:00
ebaydayz
cb381c5ce3 Fix another transportMaxBackpacks typo
This was responsible for vehicles showing zero and negative numbers of
available backpack slots.
2016-05-04 18:42:20 -04:00
ebaydayz
349e0a103d Fix trade title showing "Buying in vehicleX" when in sell mode
Tested and confirmed working as intended now.
2016-05-04 16:46:35 -04:00
ebaydayz
85869b32f1 Fix Adv. Trade secondary vehicle check
Forgot this one. See:

f503e53097
2016-05-04 15:53:25 -04:00
ebaydayz
f503e53097 Fix Adv. Trade nearby vehicle check detecting animals
Was getting "Buying in Rabbit" when one was nearby.

No need to check "AllVehicles", this is faster and will get all drivable
vehicle types.
2016-05-04 15:47:47 -04:00