You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
This version introduces significant changes to Dragonfly, making world access happen through
6
6
synchronised transactions.
@@ -17,17 +17,36 @@ Dragonfly v0.10.0 requires **Go 1.23** at the least.
17
17
- Added resin blocks.
18
18
- Added end rods.
19
19
- Added pink petals.
20
+
- Added vines.
20
21
- Leaves now have a chance to drop sticks when breaking.
21
22
- Crops now drop their respective seeds/items when "popping off" as a result of low light levels.
22
23
- Fixed door placement consuming 3 door items.
23
24
- Sugar canes now also break without water nearby on `(SugarCane).RandomTick`.
25
+
- Explosions now correctly calculate exposure for entities behind blocks with non-full bounding boxes. (https://github.com/df-mc/dragonfly/issues/709)
26
+
- Explosions from TNT now drop 100% of drops. (https://github.com/df-mc/dragonfly/issues/969)
27
+
- Fixed fire created by lava or lightning not updating. (https://github.com/df-mc/dragonfly/issues/977)
28
+
- Fixed note blocks retaining their last note when dropped. (https://github.com/df-mc/dragonfly/issues/854)
29
+
- Fixed dead bushes not being placeable on grass/mud.
30
+
31
+
### **chat**
32
+
- Added a new `Translate` function used for (client-side) translations. Passing a `TranslationString` to `Translate`
33
+
returns a `Translation`. `Translation`s may require arguments that can be passed in `(Translation).F`.
34
+
- Added a new `Translator` interface for `Subscriber`s that can translate messages.
35
+
- Added a new `(*Chat).Messaget` function to broadcast a translation that is localised for each subscriber that also
36
+
implements `Translator`.
24
37
25
38
### **cmd**
26
39
- Command names and aliases now must be lowercase. (https://github.com/df-mc/dragonfly/issues/946)
40
+
- Target selectors (`[]Target`) now only yields players from the same world. This is a consequence of the world
41
+
transactions and is likely to be reverted in a future Dragonfly version.
42
+
- The `*world.Tx` in which a command is run is now passed to `(Runnable).Run`.
27
43
28
44
### **creative**
29
45
- Fixed several items, such as banners and skulls, not showing up correctly in the creative inventory. ()
30
46
47
+
### **cube**
48
+
-`Rotation` has a new `Neg` method that returns the negative of both `Rotation` values, used for projectiles.
49
+
31
50
### **dialogue**
32
51
dialogue is a new package for sending entity dialogues to players. These are UI windows with text, buttons and an
33
52
entity. The entity may be rotated. Dialogues may be created using `New` and can be sent to players using
@@ -39,48 +58,54 @@ entity. The entity may be rotated. Dialogues may be created using `New` and can
39
58
- Changed effect types to variables. `Poison{}` is now `Poison`.
40
59
- Potency fields were removed from `InstantHealth` and `InstantDamage`, instead having been added to a new
41
60
`NewInstantWithPotency` function.
61
+
- Fixed effect colours not matching the latest Minecraft version. (https://github.com/df-mc/dragonfly/issues/746)
62
+
63
+
### **enchantment**
64
+
- Changed enchantment types to variables. `Sharpness{}` is now `Sharpness`.
65
+
66
+
### **entity**
67
+
- Fixed splash/lingering potions and bottles o' enchanting throwing velocity not matching vanilla. (https://github.com/df-mc/dragonfly/issues/746)
68
+
- Fixed projectile knockback to reflect projectile velocity rather than collision position.
42
69
43
70
### **item**
44
71
- Added `NightVisionTorchflowerStew`, `BlindnessEyeblossomStew` and `NauseaStew` suspicious stew types.
45
72
- Added resin item.
73
+
- Added new `(Stack).WithItem` method to return an identical `Stack` with a different `world.Item` type.
46
74
- Removed armour trims from `Stack`. To replace it, a `Trim` field has been added to `Helmet`, `Chestplate`,
47
75
`Leggings` and `Boots`.
48
76
- Changed maximum stack count of written books to 16.
49
77
- Fixed bottles not being filled up with water when using them on a water source. (https://github.com/df-mc/dragonfly/issues/945)
50
78
- Removed `DisplayName` function.
51
79
52
-
### **world**
53
-
- Added a new `(*World).Exec` method that is used to open a transaction on the world. Many methods on `*World`, such
54
-
as `(*World).Block`, have now been moved to `(*Tx).Block` instead. More information may be found at the
55
-
[wiki page for world transactions](https://github.com/df-mc/dragonfly/wiki/World-Transactions).
56
-
- Added a new `*EntityHandle` type that uniquely identifies an entity. `Entity` implementations are only valid in the
57
-
context of a transaction now.
58
-
- Added a `EntityAnimation` type that allows for complex entity animations to be played.
59
-
- Added a new `HandleLeavesDecay` method to `Handler`, called when leaves blocks decay.
60
-
- Added a new `SaveInterval` field to `Config` that specifies how often worlds should auto-save.
61
-
- Scheduled block updates are now tied to the specific block type that they are called for.
62
-
- Scheduled block updates are now saved and loaded to/from disk.
63
-
- Entities are now stored on disk using the new format. (https://github.com/df-mc/dragonfly/issues/516)
64
-
- Worlds with a void generator no longer panic when being loaded. (https://github.com/df-mc/dragonfly/issues/481)
65
-
- Fixed panic when closing a world immediately after opening it. (https://github.com/df-mc/dragonfly/issues/801)
66
-
67
-
### **enchantment**
68
-
- Changed enchantment types to variables. `Sharpness{}` is now `Sharpness`.
69
-
70
80
### **player**
71
81
- Added `HandleHeldSlotChange` method to `Handler`, called when a player changes held slot. Additionally, a new
72
82
`(*Player).SetHeldSlot` method was added.
73
83
- Added `HandleItemRelease` method to `Handler`, called when a player releases and item such as a bow.
84
+
- Added a new `Messaget` method to send a `chat.Translation`.
74
85
-`Data` has been refactored in a more easily usable `Config` that can be used to create a player entity.
75
86
- Attack immunity was changed to match vanilla. If `(*Player).Hurt` is called twice in the same tick, damage is still
76
87
dealt if the second damage was higher than the first. Additionally, attack immunity now extends to all damage sources. (https://github.com/df-mc/dragonfly/issues/950)
77
88
- Saturation and food tick are now reset when `(Handler).HandleFoodLoss` is cancelled.
78
89
- Releasable items such as bows no longer fire when switching held slots. (https://github.com/df-mc/dragonfly/issues/676)
79
-
80
-
### **cube**
81
-
-`Rotation` has a new `Neg` method that returns the negative of both `Rotation` values, used for projectiles.
90
+
- Fixed an issue where `(*Player).HideEntity` would leak entities. (https://github.com/df-mc/dragonfly/issues/978)
91
+
- Fixed `(*Player).ReleaseItem` not using items in the left hand as projectiles.
82
92
83
93
### **server**
84
94
-`(*Server).Accept` now returns an `iter.Seq` of joining players that can be iterated over.
85
95
- Disconnecting players returned by `(*Server).Accept` no longer deadlocks the server. (https://github.com/df-mc/dragonfly/issues/527)
86
-
- Added `StatusProvider` field to `Config` for custom MOTD/player count values.
96
+
- Added `StatusProvider` field to `Config` for custom MOTD/player count values.
97
+
98
+
### **world**
99
+
- Added a new `(*World).Exec` method that is used to open a transaction on the world. Many methods on `*World`, such
100
+
as `(*World).Block`, have now been moved to `(*Tx).Block` instead. More information may be found at the
101
+
[wiki page for world transactions](https://github.com/df-mc/dragonfly/wiki/World-Transactions).
102
+
- Added a new `*EntityHandle` type that uniquely identifies an entity. `Entity` implementations are only valid in the
103
+
context of a transaction now.
104
+
- Added a `EntityAnimation` type that allows for complex entity animations to be played.
105
+
- Added a new `HandleLeavesDecay` method to `Handler`, called when leaves blocks decay.
106
+
- Added a new `SaveInterval` field to `Config` that specifies how often worlds should auto-save.
107
+
- Scheduled block updates are now tied to the specific block type that they are called for.
108
+
- Scheduled block updates are now saved and loaded to/from disk.
109
+
- Entities are now stored on disk using the new format. (https://github.com/df-mc/dragonfly/issues/516)
110
+
- Worlds with a void generator no longer panic when being loaded. (https://github.com/df-mc/dragonfly/issues/481)
111
+
- Fixed panic when closing a world immediately after opening it. (https://github.com/df-mc/dragonfly/issues/801)
0 commit comments