-
Notifications
You must be signed in to change notification settings - Fork 3
/
pre-release_changelog.txt
181 lines (171 loc) · 9.21 KB
/
pre-release_changelog.txt
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
Universal Inventory System (UInv) changelog
by HiEv v0.9.7 (pre-release)
A JavaScript inventory "plugin" for Twine 2 / SugarCube 2.
Future home: https://github.com/HiEv/UInv
v0.5.7 - March 29, 2018 - (preview release 1)
- 62 functions written out of 108 planned functions
v0.6.9 - April 6, 2018 - (preview release 2)
- 28 new functions written + 23 new functions planned
- some functions renamed to conform to consistent naming style
v0.7.7 - April 18, 2018 - (preview release 3)
- 32 new functions written + 27 new functions planned
- some functions renamed to conform to consistent naming style
- most previously incomplete functions are now complete
- lots of debugging and additional error checking done
v0.8.6 - April 24, 2018 - (preview release 4)
- 25 new functions written + 13 new functions planned
- some functions renamed to conform to consistent naming style
- work on help file started (very preliminary)
v0.9.1 - May 10, 2018 - (preview release 5)
- 18 new functions written + 11 new functions planned
- added default bags
- major rework of engine to allow deletion of default properties
- some bugs fixed
v0.9.2 - May 23, 2018 - (preview release 6)
- 10 new functions written + 8 new functions planned
- renamed BagCount to GetBagCount for more consistent naming style
- moved data sections to bottom to make updating UInv easier
- some bugs fixed
- Item Builder added to UInv help file
v0.9.4 - July 8, 2018 - (preview release 7)
- 22 new functions written + 19 new functions planned
- some functions renamed to conform to consistent naming style
- centralized more functions for display utilities
- saved a bit more memory/history size
- handled a potential problem with non-static default properties
- improved compatibility with other browsers
- moved utility functions inside UInv namespace
v0.9.5 - July 23, 2018 - (preview release 8)
- 12 new functions written + 12 new functions planned
- revamped error handling to add thrown errors
- added utility functions for engine detection
- saved a bit more memory/history size
- major restructuring of item data
- added handling of variable items and variable bags
v0.9.6 - September 25, 2018 - (preview release 9)
- 31 new functions written + 27 new functions planned
- major bugfix in SwapItems and many "Tag" functions
- all utility function names now start lowercase
- added the ability to cache images for online usage
- the UInv Safe Save Code has been updated (see help)
- added option for sending UInv errors to console
- typing "xyzzy" now toggles console (F12) error log
- began implementation of display elements
* table
* radialMenu
- began implementation of event handlers
"general" events:
* MouseDown
* MouseUp
"bag" events:
* Touched
"table" events:
* Accept
* DragStart
* Drop
* DragStop
"radialMenu" events:
* Open
* WedgeClick
* DisabledWedgeClick
* Cancel
"cacheImages" events:
* Loaded
* Error
- added Font Awesome support: https://fontawesome.com/free
just add the following line to your stylesheet section:
@import url('https://use.fontawesome.com/releases/v5.3.1/css/all.css');
see the "FA_Icons.html" sample for the list of icons
- jQuery UI is now required to support display elements
https://api.jqueryui.com/category/all/
just include and load the jquery-ui.css and jquery-ui.js
files, along with the "images/ui-*.png" images
v0.9.7 - December 29, 2018 - (preview release 10)
- 40 new functions written (including 2 macros) + 38 new functions planned
- added Pocket/Container functions; items can now contain other items
- updated existing functions to work with pockets properly
- updated more functions to support bag name arrays
- added a <<UInvSet>> macro to shorten calls to multiple UInv functions
- added a <<UInvTry>> macro to simplify error handling in TwineScript
- added more ways to add default items to default bags
- default return value on error was standardized to "undefined"
- enforced stricter verification of values for item names (must be lowercase, etc...)
- removed LockUpdates function; use IncrementUpdateLock and DecrementUpdateLock instead
- removed capitalizeFirstLetter function; use SugarCube's .toUpperFirst() instead
- discovered a function I wrote and apparently forgot to document anywhere (LOL)
- renamed the following functions to conform to consistent naming style (aliases added):
* ArrayHasAllBagProperties to BagHasAllProperties
* ArrayHasAllItemProperties to ItemHasAllProperties
* GetBagArrayWithAllProperties to GetBagsArrayWithAllProperties (added an "s")
* GetHighestBagPropertyValue to GetBagWithHighestPropertyValue
* GetHighestItemPropertyValue to GetItemWithHighestPropertyValue
* GetLowestBagPropertyValue to GetBagWithLowestPropertyValue
* GetLowestItemPropertyValue to GetItemWithLowestPropertyValue
* SetItemsPropertyValues to SetItemsPropertyValue (removed an "s")
* UpdateItemProperties to SetItemPropertyValues
- fixes/improvements to valuesAreEqual, arraysAreEqual, and objectsAreEqual
- corrected two minor inefficiencies in memory/history usage
- fixed a few incorrect function names in error messages
- fixed a problem with items changed to variable type still using default properties
- fixed a problem where variable type items might not merge when they should
- fixed GetBagWithHighestPropertyValue and GetBagWithLowestPropertyValue functions
- fixed a bug in BagHasAllProperties
- preliminary work on unit/regression testing tool (37 functions fully tested)
- property values may now be set to "undefined"
- new/updated general help file sections:
* Changelog
* Function Cheat Sheet
* Basic UInv Functions (incomplete)
* Error Handling (incomplete)
* Efficient UInv Coding
* Arrays vs Generic Objects (major improvements; incomplete)
* The UInv Data Structure
- worked on how help file entries should look for UInv functions (see "AddBag")
- modified UInv structure to support internal-use-only functions and variables
* this means you'll need to insert your bag, item, and alias definitions this update
- Over 10,000 non-blank lines of code and comments! Yay for arbitrary milestones!
v0.9.7.1 (bugfix) - September 7, 2019 - (preview release 11)
- 7 new functions written + 5 new functions planned
- added support for Set and Map objects; UInv now supports all of SugarCube's supported types
- added an "Idle" event to the "cacheImages" events.
- fixed a problem the image cache had with some browsers
- fixed a couple of bugs in the event handler code
* note: this required some minor changes to the CSS generated for tables
* Table Builder updated to accomodate CSS changes
- added another bit of sample code to the UInv_Sample_Code.html file
- another update to the "UInv Safe Save Code" in the UInv help file
- numerous help file updates and fixes
v0.9.7.2 - September 9, 2019 - (preview release 12)
- 4 new functions written
- added some missing date, map, and set support
- added missing documentation for new utility functions to help file
If you're upgrading from v0.9.6 to v0.9.7 then, as noted above, you can't simply copy
and paste the bottom chunk of code. You'll need to insert your aliases, default bags,
and default items into the v0.9.7 code. Hopefully this will be the last time you'll
need to do that.
If you're upgrading from v0.9.7 to v0.9.7.1+ then, as noted above, you may need to update
the CSS for any UInv tables you may be using. The Table Builder in the UInv help file has
been updated to output the updated CSS.
Please keep in mind that THIS IS PRE-RELEASE CODE. This means that A) some parts
have had little or no testing, B) there are some known bugs (see below), C) the
documentation and sample code are severely lacking in many places, and also
D) some parts are still subject to change, which means future versions may not
be backwards-compatible with this version. The base code is fairly stable at
this point and will likely not change much. However, compatibility with this
version's display code will almost certainly be broken in future updates (though
hopefully not too badly broken).
In short, all of the code is currently "use at your own risk."
Currently known display bugs:
- Radial menu in wrong location in IE 11.
- Table displayed slightly wrong in iPhone and iPad devices.
- On Android/Chrome the table is displayed behind UI bar and items can't be dragged.
- Laptops with touchscreen won't drag items in Firefox (but it works in Edge).
Also, there are some "file not found" type errors if you look in the console logs.
Those errors are not actually an issue, the code just checks for the files in two
locations, and when it doesn't find one it triggers an error, but it should still
find the other copy of the file. (Though, you'll want to change
"C:/Games/Universal Inventory System/" in the JavaScript and stylesheet sections to
your local UInv directory path if you want it to display properly inside Twine.) I
plan on looking into a way to prevent that later on.
That said, if you spot any other bugs, have any suggestions or requests, or just
have questions, please let me know. Email at: HiEv (5*9-2) at Yahoo dot com