Skip to content

Commit 28fc743

Browse files
authored
Version 1.1.0 (#73)
* Fix spear animation in third-person * Bump manifest * Bump version * World Border * Attack Indicators * Preserved displays (WIP) * Remove world border particle files, temporarily remove attack cooldown changes, fix chest row changes * Fix attack cooldown * Remove unused files * Update hotbar cooldown size
1 parent fcc81cd commit 28fc743

File tree

8 files changed

+364
-35
lines changed

8 files changed

+364
-35
lines changed

README.md

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -22,6 +22,8 @@ Bedrock resource pack to extend Geyser functionality. Learn more on its [wiki pa
2222
- 2x2 crafting grid while in creative mode
2323
- Tick-delay and rename fields in the command block menu
2424
- Structure block options that do not exist on Java
25+
- 1, 2, 4 and 5 row chests, removing the need for the filler item
26+
- Proper attack cooldowns
2527

2628
Download: [GeyserIntegratedPack.mcpack](https://download.geysermc.org/v2/projects/geyserintegratedpack/versions/latest/builds/latest/downloads/geyserintegratedpack)
2729

@@ -31,6 +33,11 @@ Download: [GeyserIntegratedPack.mcpack](https://download.geysermc.org/v2/project
3133
2. Run `gradlew run`.
3234
3. When it finishes compiling, it will output the `GeyserIntegratedPack.mcpack`.
3335

36+
### Credits
37+
38+
- [Sweep 'N Slash](https://github.com/AnotherSeawhite/sweepnslash)
39+
- Amazing thanks to Sweep 'N Slash's developers and contributors for giving us explict permission to use their UI files, attack cooldowns wouldn't be possible without them :)
40+
3441
### Legal
3542

3643
This repository is not endorsed nor affiliated with Mojang, Minecraft, or Microsoft.

src/main/resources/integratedpack/animation_controllers/player.animation_controllers.json

Lines changed: 30 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -103,7 +103,7 @@
103103
"sneaking" : "query.is_sneaking && !query.is_sleeping"
104104
},
105105
{
106-
"bob": "!variable.is_holding_spyglass && !(q.is_item_name_any('slot.weapon.offhand', 0, 'minecraft:spyglass') && q.is_emerging)"
106+
"bob": "!variable.is_holding_spyglass && !variable.is_tooting_goat_horn && !variable.is_using_brush !(q.is_item_name_any('slot.weapon.offhand', 0, 'minecraft:spyglass') && q.is_emerging)"
107107
},
108108
{
109109
"damage_nearby_mobs" : "variable.damage_nearby_mobs"
@@ -112,10 +112,22 @@
112112
"swimming" : "variable.swim_amount > 0.0"
113113
},
114114
{
115+
"swimming.no_right_arm": "variable.swim_amount > 0.0 && variable.melee_spear_equipped"
116+
},
117+
{
115118
"swimming.legs" : "variable.swim_amount > 0.0"
116119
},
117120
{
118-
"use_item_progress" : "( variable.use_item_interval_progress > 0.0 ) || ( variable.use_item_startup_progress > 0.0 ) && !variable.is_brandishing_spear && !variable.is_holding_spyglass && !(q.is_item_name_any('slot.weapon.offhand', 0, 'minecraft:spyglass') && q.is_emerging)"
121+
"crawling": "query.is_crawling && !variable.melee_spear_equipped"
122+
},
123+
{
124+
"crawling.no_right_arm": "query.is_crawling && variable.melee_spear_equipped"
125+
},
126+
{
127+
"crawling.legs": "query.is_crawling"
128+
},
129+
{
130+
"use_item_progress" : "( variable.use_item_interval_progress > 0.0 ) || ( variable.use_item_startup_progress > 0.0 ) && !variable.is_brandishing_spear && !variable.is_holding_spyglass && !variable.is_tooting_goat_horn && !variable.is_using_brush && !query.is_item_name_any('slot.weapon.mainhand', 'minecraft:bow') && !(q.is_item_name_any('slot.weapon.offhand', 0, 'minecraft:spyglass') && q.is_emerging)"
119131
},
120132
{
121133
"sleeping" : "query.is_sleeping && query.is_alive"
@@ -137,7 +149,22 @@
137149
},
138150
{
139151
"third_person_bow_equipped" : "query.get_equipped_item_name == 'bow' && (variable.item_use_normalized > 0 && variable.item_use_normalized < 1.0)"
140-
}
152+
},
153+
{
154+
"tooting_goat_horn": "variable.is_tooting_goat_horn"
155+
},
156+
{
157+
"holding_brush": "query.get_equipped_item_name == 'brush'"
158+
},
159+
{
160+
"brushing": "variable.is_using_brush"
161+
},
162+
{
163+
"holding_heavy_core": "query.is_item_name_any('slot.weapon.mainhand', 'minecraft:heavy_core')"
164+
},
165+
{
166+
"third_person_melee_spear_controller": "variable.melee_spear_equipped"
167+
}
141168
],
142169
"transitions" : [
143170
{

src/main/resources/integratedpack/manifest.json

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -4,15 +4,15 @@
44
"description": "Bedrock resource pack to extend Geyser functionality",
55
"name": "GeyserIntegratedPack",
66
"uuid": "2254393d-8430-45b0-838a-bd397828c765",
7-
"version": [1, 0, 3],
7+
"version": [1, 1, 0],
88
"min_engine_version": [ 1, 16, 0 ]
99
},
1010
"modules": [
1111
{
1212
"description": "GeyserIntegratedPack",
1313
"type": "resources",
1414
"uuid": "4d60881b-e4ed-466f-925c-8abc873151ba",
15-
"version": [1, 0, 3]
15+
"version": [1, 1, 0]
1616
}
1717
]
1818
}
Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,3 @@
1+
{
2+
"ui_defs": ["ui/attack_indicator/ui.json"]
3+
}
Lines changed: 182 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,182 @@
1+
// Adapted from https://github.com/AnotherSeawhite/sweepnslash/blob/main/packs/RP/ui/sweepnslash/cooldown.json
2+
3+
{
4+
"namespace": "attack_indicator",
5+
"cooldown_layout": {
6+
"type": "image",
7+
"layer": 2,
8+
"$clip_max": 16.0,
9+
"clips_children": false,
10+
"clip_pixelperfect": true,
11+
"bindings": [
12+
{
13+
"binding_type": "view",
14+
"source_control_name": "data_control",
15+
"resolve_sibling_scope": true,
16+
"source_property_name": "(#preserved_text - $update_string)",
17+
"target_property_name": "#texto"
18+
},
19+
{
20+
"binding_type": "view",
21+
"source_property_name": "(#texto - ('%.4s' * #texto))",
22+
"target_property_name": "#texttonumber"
23+
},
24+
{
25+
"binding_type": "view",
26+
"source_property_name": "(#texttonumber * 1)",
27+
"target_property_name": "#ratio"
28+
},
29+
{
30+
"binding_type": "view",
31+
"source_property_name": "(($clip_max - #ratio) / $clip_max)",
32+
"target_property_name": "#clip_ratio"
33+
},
34+
{
35+
"binding_type": "view",
36+
"source_property_name": "(('%.3s' * #texto) = $prefix_string)",
37+
"target_property_name": "#visible"
38+
}
39+
]
40+
},
41+
// "cooldown_ready": {
42+
// "type": "image",
43+
// "layer": 3,
44+
// "allow_clipping": false,
45+
// "bindings": [
46+
// {
47+
// "binding_type": "view",
48+
// "source_control_name": "data_control",
49+
// "resolve_sibling_scope": true,
50+
// "source_property_name": "(#preserved_text - $update_string)",
51+
// "target_property_name": "#texto"
52+
// },
53+
// {
54+
// "binding_type": "view",
55+
// "source_property_name": "( (('%.1s' * (#texto - ('%.4s' * #texto))) = 't') and (('%.3s' * #texto) = $prefix_string) )",
56+
// "target_property_name": "#visible"
57+
// }
58+
// ]
59+
// },
60+
"cooldown_crosshair": {
61+
"type": "panel",
62+
"size": [
63+
16,
64+
4
65+
],
66+
"anchor_from": "bottom_middle",
67+
"anchor_to": "top_middle",
68+
"$prefix_string": "crs",
69+
"controls": [
70+
{
71+
"data_control@attack_indicator.data_control": {}
72+
},
73+
{
74+
"cooldown_crosshair_layout@attack_indicator.cooldown_layout": {
75+
"texture": "textures/geyser/ui/crosshair_attack_indicator_progress",
76+
"alpha": 0.5,
77+
"clip_direction": "left",
78+
"controls": [
79+
{
80+
"bar_bg": {
81+
"type": "image",
82+
"texture": "textures/geyser/ui/crosshair_attack_indicator_background",
83+
"alpha": 0.5,
84+
"layer": -1
85+
}
86+
}
87+
]
88+
}
89+
}
90+
// {
91+
// "cooldown_ready_crosshair@attack_indicator.cooldown_ready": {
92+
// "texture": "textures/cooldown_crosshair_ready",
93+
// "alpha": 0.6,
94+
// "controls": [
95+
// {
96+
// "full_layout_with_alpha": {
97+
// "type": "image",
98+
// "texture": "textures/cooldown_crosshair_full",
99+
// "alpha": 0.2
100+
// }
101+
// }
102+
// ]
103+
// }
104+
// }
105+
]
106+
},
107+
"cooldown_hotbar": {
108+
"type": "panel",
109+
"size": [
110+
18,
111+
18
112+
],
113+
"offset": [
114+
4,
115+
0
116+
],
117+
"anchor_from": "right_middle",
118+
"anchor_to": "left_middle",
119+
"$prefix_string": "htb",
120+
"controls": [
121+
{
122+
"data_control@attack_indicator.data_control": {}
123+
},
124+
{
125+
"cooldown_hotbar_layout@attack_indicator.cooldown_layout": {
126+
"texture": "textures/geyser/ui/hotbar_attack_indicator_progress",
127+
"clip_direction": "down",
128+
"controls": [
129+
{
130+
"bar_bg": {
131+
"type": "image",
132+
"texture": "textures/geyser/ui/hotbar_attack_indicator_background",
133+
"layer": -1
134+
}
135+
}
136+
]
137+
}
138+
}
139+
// {
140+
// "cooldown_ready_hotbar@attack_indicator.cooldown_ready": {
141+
// "texture": "textures/cooldown_hotbar_full"
142+
// }
143+
// }
144+
]
145+
},
146+
"cooldown_ui": {
147+
"type": "panel",
148+
"$update_string": "geyseropt:cooldown:",
149+
"size": [
150+
"100%",
151+
"100%"
152+
],
153+
"controls": [
154+
{
155+
"cooldown_crosshair@attack_indicator.cooldown_crosshair": {}
156+
}
157+
]
158+
},
159+
"data_control": {
160+
"type": "panel",
161+
"size": [
162+
0,
163+
0
164+
],
165+
"bindings": [
166+
{
167+
"binding_name": "#tip_text",
168+
"binding_condition": "always"
169+
},
170+
{
171+
"binding_name": "#tip_text",
172+
"binding_name_override": "#preserved_text",
173+
"binding_condition": "visibility_changed"
174+
},
175+
{
176+
"binding_type": "view",
177+
"source_property_name": "(not (#tip_text = #preserved_text) and not ((#tip_text - $update_string) = #tip_text))",
178+
"target_property_name": "#visible"
179+
}
180+
]
181+
}
182+
}
Lines changed: 99 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,99 @@
1+
{
2+
"small_chest_grid": {
3+
"grid_dimensions": "$grid_dimensions",
4+
"size": "$size",
5+
6+
"$grid_dimensions|default": [9, 3],
7+
"$size|default": [162, 54],
8+
"$container_title_copy": "$container_title",
9+
10+
"variables": [
11+
{
12+
"requires": "(not (($container_title_copy - '§z§1§r') = $container_title_copy))",
13+
"$grid_dimensions": [9, 1],
14+
"$size": [162, 18]
15+
},
16+
{
17+
"requires": "(not (($container_title_copy - '§z§2§r') = $container_title_copy))",
18+
"$grid_dimensions": [9, 2],
19+
"$size": [162, 36]
20+
},
21+
{
22+
"requires": "(not (($container_title_copy - '§z§3§r') = $container_title_copy))",
23+
"$grid_dimensions": [9, 3],
24+
"$size": [162, 54]
25+
}
26+
]
27+
},
28+
"large_chest_grid": {
29+
"grid_dimensions": "$grid_dimensions",
30+
"size": "$size",
31+
32+
"$grid_dimensions|default": [9, 6],
33+
"$size|default": [162, 108],
34+
"$container_title_copy": "$container_title",
35+
36+
"variables": [
37+
{
38+
"requires": "(not (($container_title_copy - '§z§4§r') = $container_title_copy))",
39+
"$grid_dimensions": [9, 4],
40+
"$size": [162, 72]
41+
},
42+
{
43+
"requires": "(not (($container_title_copy - '§z§5§r') = $container_title_copy))",
44+
"$grid_dimensions": [9, 5],
45+
"$size": [162, 90]
46+
},
47+
{
48+
"requires": "(not (($container_title_copy - '§z§6§r') = $container_title_copy))",
49+
"$grid_dimensions": [9, 6],
50+
"$size": [162, 108]
51+
}
52+
]
53+
},
54+
55+
"small_chest_panel/root_panel": {
56+
"size": "$size",
57+
58+
"$size|default": [176, 166],
59+
"$container_title_copy": "$container_title",
60+
61+
"variables": [
62+
{
63+
"requires": "(not (($container_title_copy - '§z§1§r') = $container_title_copy))",
64+
"$size": [176, 130]
65+
},
66+
{
67+
"requires": "(not (($container_title_copy - '§z§2§r') = $container_title_copy))",
68+
"$size": [176, 148]
69+
},
70+
{
71+
"requires": "(not (($container_title_copy - '§z§3§r') = $container_title_copy))",
72+
"$size": [176, 166]
73+
}
74+
]
75+
},
76+
77+
"large_chest_panel/root_panel": {
78+
"$size|default": [176, 220],
79+
80+
"size": "$size",
81+
82+
"$container_title_copy": "$container_title",
83+
84+
"variables": [
85+
{
86+
"requires": "(not (($container_title_copy - '§z§4§r') = $container_title_copy))",
87+
"$size": [176, 184]
88+
},
89+
{
90+
"requires": "(not (($container_title_copy - '§z§5§r') = $container_title_copy))",
91+
"$size": [176, 202]
92+
},
93+
{
94+
"requires": "(not (($container_title_copy - '§z§6§r') = $container_title_copy))",
95+
"$size": [176, 220]
96+
}
97+
]
98+
}
99+
}

0 commit comments

Comments
 (0)