Commit Graph

105 Commits

Author SHA1 Message Date
Elias Åström
a6c5c8a72a Call update_groupcaps from load_enchantments
This avoids the need to call the function from on_enchant for unbreaking
and efficiency.
2022-02-12 19:43:01 +01:00
Elias Åström
d898b02c8b Fix #1922 2022-02-12 19:43:01 +01:00
Elias Fleckenstein
ec7e245b9d
Various fixes to the enchanting and loot system
- enchanted loot generated by mapgen now uses PseudoRandom for randomness
- prevent fishing loot from generating loot 32767 times (!!!) when only 1 is needed
- bows and fishing rods obtained from the treasure section of fishing loot are now enchanted
- there is now a function to uniform enchant items other than books
2021-12-07 17:57:18 +01:00
Elias Fleckenstein
b3958a956d
Refactor random enchantment selection code 2021-12-07 16:16:07 +01:00
Elias Fleckenstein
882db9f873
Remove unused and completely unlogical enchantment_level paramenter from get_possible_enchantments 2021-12-07 15:49:12 +01:00
Elias Fleckenstein
261faafb7c
Fix get_possible_enchantments to not return incompatible enchantments, even if treasure enchantments are allowed 2021-12-07 15:47:23 +01:00
Elias Fleckenstein
a7bc460fae
Fix boat and enchanting book texture glitches / warnings 2021-11-09 17:39:39 +01:00
Elias Fleckenstein
a4e73886d5
Rework XP API 2021-11-03 19:36:57 +01:00
Elias Fleckenstein
30f7c638f3
mcl_enchanting: Add spanish translations and update template
Credit to: todoporlalibertad <todoporlalibertad@riseup.net>
Reviewed by j45
2021-10-25 22:55:48 +02:00
epCode
1c458a2e72 Add crossbows 2021-10-15 12:00:37 -07:00
AFCMS
e9437e9e1e fix crash then using function in _mcl_armor_[texture, preview] tool field 2021-09-29 21:06:51 +02:00
AFCMS
16d79c38ce fix typo in mcl_enchanting french translation 2021-06-26 23:48:59 +02:00
Marcin Serwin
0132d0569f Update polish translation of several files 2021-06-02 13:21:19 +02:00
marcin-serwin
cbe8583cef Merge branch 'master' into polish-translation 2021-06-02 10:14:25 +00:00
AFCMS
cd33d406b2 fix many codestyle issues (functions, strings, modpaths) 2021-05-29 16:12:33 +02:00
AFCMS
388ab6d8df fix some codestyle issues 2021-05-25 10:56:06 +02:00
AFCMS
bbde3b551f [mcl_enchanting] fix warnings 2021-05-23 00:01:30 +02:00
Elias Fleckenstein
c6e80b5882 Add Real Maps 2021-05-01 16:52:16 +02:00
jordan4ibanez
cf46f0d8b8 Fix crashing if null itemstack enchant when player is hacking 2021-04-29 01:32:57 -04:00
Elias Fleckenstein
a41aace9d7 Merge branch 'master' into damage 2021-04-27 18:33:35 +02:00
Elias Fleckenstein
b43f59332a Update mcl_enchanting translations to new template 2021-04-26 11:03:53 +02:00
Elias Fleckenstein
05be20fcb8 Update mcl_enchanting translations 2021-04-26 11:00:53 +02:00
Elias Fleckenstein
302175691a Integrate death messages 2021-04-25 16:42:38 +02:00
Elias Fleckenstein
58d67aace6 Merge branch 'master' into damage 2021-04-25 13:29:07 +02:00
Elias Åström
7f3e5bda7e Duplicate groupcaps before applying unbreaking 2021-04-23 15:49:37 +02:00
Elias Fleckenstein
ca74f23094 Merge branch 'master' into damage 2021-04-19 18:58:00 +02:00
Elias Fleckenstein
d8d4cb5def Revert color changes to GUI.
The Minecraft colorset (net.minecraft.util.text.TextFormatting) is only used for chat and tooltips.
This partically reverts 84819bf9f5.
2021-04-19 14:44:20 +02:00
Elias Fleckenstein
52a49e640e Merge branch 'master' into damage 2021-04-19 09:57:56 +02:00
jordan4ibanez
44a25de12f Fix crashing with unknown slot description when enchanting 2021-04-18 23:18:18 -04:00
Elias Fleckenstein
f0d7715080 Merge branch 'master' into damage 2021-04-18 14:51:45 +02:00
Elias Åström
573b1dc44b Do not include unnecessary tool_capabilities
This commit makes enchanted tools which have no use for
tool_capabilities to not include it in their metadata.  It does this by
not including tool_capabilities in the metadata of an enchanted tool if
at least one of two cases is true:

(1) The tool is not enchanted with unbreaking or efficiency
(2) The tool does not have tool_capabilities defined in its definition

The first case covers situations like having a pickaxe only being
enchanted with silk_touch.  The second case covers situations like a
piece of armor being enchanted with unbreaking.
2021-04-18 11:40:43 +02:00
Elias Åström
dd69dcfd9f Fix efficiency and unbreaking not working together
This commit fixes an issue were tools enchanted with both efficiency and
unbreaking would loose the effect of one of the enchantments in some
conditions.
2021-04-18 11:40:13 +02:00
Elias Fleckenstein
5d5ed91519 Merge branch 'master' into damage 2021-04-16 12:20:53 +02:00
Benjamin Schötz
e4c8ba795a Fixes typos, grammar errors, and some translation flaws in several german translation files. 2021-04-14 22:03:36 +02:00
Elias Fleckenstein
ce0148d9a8 Rewrite armor; new damage system 2021-04-14 15:46:52 +02:00
Marcin Serwin
9472f86025 Fix spellchecking errors 2021-04-12 17:58:04 +02:00
Marcin Serwin
1be74d21d3 Add polish translation of mcl_enchanting 2021-04-12 14:26:29 +02:00
AFCMS
84819bf9f5 MAKE EVERY SINGLE MOD USE PROPER COLORS!!! 2021-03-30 00:01:29 +02:00
Elias Fleckenstein
43a60e0c57 Fix #1357 2021-03-24 09:00:31 +01:00
Elias Åström
0d7c2c4988 Fix #1358 for real 2021-03-23 12:02:00 +01:00
Elias Åström
b0c7941b3a Fix #1358 2021-03-21 12:18:24 +01:00
Elias Åström
bfe51316ee Merge branch 'mcl_autogroups' 2021-03-18 13:43:58 +01:00
Elias Åström
8f9650abe4 Update the groupcaps of all enchanted tools
Not just those enchanted with efficiency.
2021-03-18 11:35:40 +01:00
Elias Åström
6458565bf9 Move mcl_util.hash to a local function
It is probably unlikely it will be useful at other places in Mineclone2.
2021-03-18 11:35:40 +01:00
Elias Åström
2e9b3c2259 Move efficiency code to its own file 2021-03-18 11:35:40 +01:00
Elias Åström
922bdbc601 Use hashing for more efficient groupcaps updating
This adds the metadata field "groupcaps_hash" to tools enchanted with
efficiency.  This value contains a hash of the groupcaps field in
tool_capabilities.  This value gets compared to the expected hash value
to determine if the tools tool_capabilities should be updated according
to commit af31f8189e8e5c2b.

This commit makes efficiency more efficient.
2021-03-18 11:35:40 +01:00
Elias Åström
3241dbbec5 Update enchanted tools with outdated digging times
Because of the way digging times is implemented in Mineclone2, it is
possible for the digging times of efficiency enchanted tools to become
outdated.

This fixes that by automatically updating the tools tool_capabilities
after each time the tool is used.
2021-03-18 11:35:40 +01:00
Elias Åström
f0528b11d7 Make mcl_enchanting use the new mcl_autogroups
The function mcl_autogroups.get_groupcaps is used by mods to get the
groupcaps for tools with efficiency enchantments.  This function is used
by mcl_enchanting when enchanting tools with efficiency.
2021-03-18 11:34:26 +01:00
AFCMS
8f30e223e2 I hate reverting something xD 2021-03-16 17:39:06 +01:00
Elias Fleckenstein
88372778c9 Fix another anvil weirdness and dupe glitch 2021-03-12 15:50:05 +01:00