| Commit message (Collapse) | Author | Age |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
The ratios between the sizes of form elements, including text, is now
fixed, aside from variations caused by rounding. This makes form layout
almost fully predictable, and particularly independent of player's
screen size. The proportions of non-text elements are the traditional
proportions.
For compatibility, the way in which element positions and sizes are
specified remains unchanged, in all its baroqueness, with one exception.
The exception is that the position of a label[] element is now defined
in terms of the vertically center of the first line of the label,
rather than the bottom of the first line of the label. This change
allows a label to be precisely aligned with button text or an edit box,
which are positioned in a centering manner. Label positioning remains
consistent with the previous system, just more precisely defined.
Make multi-line label[] elements work properly. Previously the code set
a bounding rectangle assuming that there would be only a single line,
and as a result a multi-line label would be cut somewhere in the middle
of the second line. Now multi-line labels not only work, but have
guaranteed line spacing relative to inventory slots, to aid alignment.
Incidentally fix tabheader[] elements which were being constrained to
the wrong width.
Given an unusually large form, in variable-size mode, the form rendering
system now chooses a scale that will fit the entire form on the screen,
if that doesn't make elements too small. Fixed-size forms, including the
main menu, are have their sizes fixed in inch terms. The fixed size for
fixed-size forms and the preferred and minimum sizes for variable-size
forms all scale according to the gui_scaling parameter.
|
| |
|
| |
|
|
|
|
| |
Signed-off-by: Craig Robbins <kde.psych@gmail.com>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Changes:
* Add extra documentation for remove_item.
This isn't as silly as it sounds: iterate a list containing items with
unique metadata each, and remove_item the first one you find, placing
into a different - fine, except the remove will invariably remove the
wrong one, leading to items being duplicated and others destroyed.
Arguably it's a bug, and Inventory::removeItem should actually remove
the item you tell it to. (i.e. if the passed ItemStack has metadata,
match it). But it seems reasonable to just document the behaviour
more clearly.
* Improve string_to_pos documentation.
* Clarify dig_node documentation (return value).
* Better on_step documentation.
* get_nodemeta -> get_meta.
* Other minor fixes.
|
| |
|
| |
|
|
|
|
| |
Signed-off-by: Craig Robbins <kde.psych@gmail.com>
|
| |
|
| |
|
|
|
|
|
| |
This is not optimal as it will cause minor graphical glitches for
Irrlicht 1.7 users, but at least it fixes the build.
|
|
|
|
| |
Signed-off-by: Craig Robbins <kde.psych@gmail.com>
|
|
|
|
|
| |
This should fix #1844. Thanks to oleastre for making the first version
of this commit (#1848).
|
| |
|
|
|
|
| |
Signed-off-by: Craig Robbins <kde.psych@gmail.com>
|
|
|
|
| |
Signed-off-by: Craig Robbins <kde.psych@gmail.com>
|
|
|
|
| |
Signed-off-by: Craig Robbins <kde.psych@gmail.com>
|
| |
|
|
|
|
|
|
|
|
|
|
|
| |
Fix typo in Android Makefile ndk path.
Fix touchscreen parts of game.cpp to work after Zeno's refactor.
Fix isdigit and isspace overload conflict with Android Irrlicht in string.h
Enable sensor landscape rotation in Android Manifiest.
Add mapgen v5 to Android build.
Fix Makefile not checking leveldb.
Signed-off-by: Craig Robbins <kde.psych@gmail.com>
|
|
|
|
|
|
| |
textures correctly
According to doc/lua_api.txt if paramtype2 == "facedir" the two least significant bits of parm2 orient the texture around the axis. For dirs1 (looking at a wall) these would be 0, 1, 2, 3 and for dirs2 (looking at the ceiling) 2, 1, 0, 3
|
| |
|
|
|
|
| |
exist.
|
|
|
|
| |
Mesh rotation helpers.
|
| |
|
| |
|
|
|
|
| |
Signed-off-by: Craig Robbins <kde.psych@gmail.com>
|
|
|
|
|
|
|
|
|
|
|
|
| |
f7d6509 introduces error when no endian.h found in the system.
Since "CHECK_INCLUDE_FILE" returns empty string instead of "0", when
"cmake_config.h" is generated it has "#define CMAKE_HAVE_ENDIAN_H " line.
Later we have "#define HAVE_ENDIAN_H CMAKE_HAVE_ENDIAN_H" in the
"config.h", an thus "HAVE_ENDIAN_H" is also empty sting. Because of
this, "#if HAVE_ENDIAN_H" is incorrect preprocessor directive.
Signed-off-by: Craig Robbins <kde.psych@gmail.com>
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
previous generic method if not (supported for GCC using endian.h, detection done in cmake) write/readARGB8() - just write 32-bit color in one op, instead of 4 1-byte ops cleanup: removed unneeded buffer init for some serialize-out functions use a #define for the fixed point factor in read/writeF1000()
nodemetadata.cpp, nodetimer.cpp
optimzation: simpler deserialize node position method
staticobject.cpp:
cleanup: use util/serialize.h inlines instead of its own de/serialization
serialize.cpp:
minor optimization/cleanup: avoid generation of unneeded string temporary
CMakeLists.txt, cmake_config.h.in: detection of endian.h
config.h: added HAVE_ENDIAN_H
Commits due to feedback squashed
Signed-off-by: Craig Robbins <kde.psych@gmail.com>
|
|
|
|
|
| |
CNodeDefManager::get()
VoxelManipulator::addArea()
|
|
|
|
|
| |
getTileInfo() ~1.5x faster
getSmoothLight ~2.0x faster
|
| |
|
| |
|
| |
|
| |
|
|
|
|
|
|
| |
improvement to readability.
NB: Minor edits to patch made by Zeno- (int to short and minor formatting)
|
| |
|
| |
|
|
|
|
| |
Also fix leaking globals found by it.
|
|
|
|
| |
This adds proper support for nested tables and improves performance a bit.
|
| |
|
|
|
|
| |
Signed-off-by: Craig Robbins <kde.psych@gmail.com>
|
|
|
|
| |
Signed-off-by: Craig Robbins <kde.psych@gmail.com>
|
| |
|
|
|
|
| |
Errors found by @Sokomine.
|
|
|
|
| |
Signed-off-by: Craig Robbins <kde.psych@gmail.com>
|
|
|
|
| |
Thanks @oleastre
|
| |
|
| |
|
| |
|