github.com/df-mc/dragonfly@v0.9.13/server/item/enchantment/depth_strider.go (about) 1 package enchantment 2 3 import ( 4 "github.com/df-mc/dragonfly/server/item" 5 "github.com/df-mc/dragonfly/server/world" 6 ) 7 8 // DepthStrider is a boot enchantment that increases underwater movement speed. 9 type DepthStrider struct{} 10 11 // Name ... 12 func (DepthStrider) Name() string { 13 return "Depth Strider" 14 } 15 16 // MaxLevel ... 17 func (DepthStrider) MaxLevel() int { 18 return 3 19 } 20 21 // Cost ... 22 func (DepthStrider) Cost(level int) (int, int) { 23 min := level * 10 24 return min, min + 15 25 } 26 27 // Rarity ... 28 func (DepthStrider) Rarity() item.EnchantmentRarity { 29 return item.EnchantmentRarityRare 30 } 31 32 // CompatibleWithEnchantment ... 33 func (DepthStrider) CompatibleWithEnchantment(item.EnchantmentType) bool { 34 // TODO: Frost Walker 35 return true 36 } 37 38 // CompatibleWithItem ... 39 func (DepthStrider) CompatibleWithItem(i world.Item) bool { 40 b, ok := i.(item.BootsType) 41 return ok && b.Boots() 42 }