summaryrefslogtreecommitdiff
path: root/assets/minecraft/optifine/cem/pig.jem
diff options
context:
space:
mode:
Diffstat (limited to 'assets/minecraft/optifine/cem/pig.jem')
-rwxr-xr-xassets/minecraft/optifine/cem/pig.jem357
1 files changed, 357 insertions, 0 deletions
diff --git a/assets/minecraft/optifine/cem/pig.jem b/assets/minecraft/optifine/cem/pig.jem
new file mode 100755
index 00000000..da20afff
--- /dev/null
+++ b/assets/minecraft/optifine/cem/pig.jem
@@ -0,0 +1,357 @@
1{
2 "credit": "Made with Blockbench",
3 "texture": "textures/entity/pig/pig.png",
4 "textureSize": [64, 32],
5 "models": [
6 {
7 "part": "body",
8 "id": "body",
9 "invertAxis": "xy",
10 "translate": [0, -13, -8],
11 "submodels": [
12 {
13 "id": "pig",
14 "invertAxis": "xy",
15 "translate": [0, 11, 6],
16 "submodels": [
17 {
18 "id": "leg_4",
19 "invertAxis": "xy",
20 "translate": [-3, -5, -9],
21 "boxes": [
22 {
23 "coordinates": [-2, -6.01659, -1.96381, 4, 6, 4],
24 "uvNorth": [4, 20, 8, 26],
25 "uvEast": [0, 20, 4, 26],
26 "uvSouth": [12, 20, 16, 26],
27 "uvWest": [8, 20, 12, 26],
28 "uvUp": [8, 20, 4, 16],
29 "uvDown": [12, 16, 8, 20]
30 }
31 ]
32 },
33 {
34 "id": "leg_2",
35 "invertAxis": "xy",
36 "translate": [-3, -5, 3],
37 "boxes": [
38 {
39 "coordinates": [-2, -6, -2, 4, 6, 4],
40 "uvNorth": [4, 20, 8, 26],
41 "uvEast": [0, 20, 4, 26],
42 "uvSouth": [12, 20, 16, 26],
43 "uvWest": [8, 20, 12, 26],
44 "uvUp": [8, 20, 4, 16],
45 "uvDown": [12, 16, 8, 20]
46 }
47 ]
48 },
49 {
50 "id": "leg_3",
51 "invertAxis": "xy",
52 "translate": [3, -5, -9],
53 "boxes": [
54 {
55 "coordinates": [-2, -6, -2, 4, 6, 4],
56 "uvNorth": [4, 20, 8, 26],
57 "uvEast": [0, 20, 4, 26],
58 "uvSouth": [12, 20, 16, 26],
59 "uvWest": [8, 20, 12, 26],
60 "uvUp": [8, 20, 4, 16],
61 "uvDown": [12, 16, 8, 20]
62 }
63 ]
64 },
65 {
66 "id": "leg_1",
67 "invertAxis": "xy",
68 "translate": [3, -5, 3],
69 "boxes": [
70 {
71 "coordinates": [-2, -6, -2, 4, 6, 4],
72 "uvNorth": [4, 20, 8, 26],
73 "uvEast": [0, 20, 4, 26],
74 "uvSouth": [12, 20, 16, 26],
75 "uvWest": [8, 20, 12, 26],
76 "uvUp": [8, 20, 4, 16],
77 "uvDown": [12, 16, 8, 20]
78 }
79 ]
80 },
81 {
82 "id": "head2",
83 "invertAxis": "xy",
84 "translate": [0, 1, -10],
85 "boxes": [
86 {
87 "coordinates": [-4, -4, -8, 8, 8, 8],
88 "uvNorth": [8, 8, 16, 16],
89 "uvEast": [0, 8, 8, 16],
90 "uvSouth": [24, 8, 32, 16],
91 "uvWest": [16, 8, 24, 16],
92 "uvUp": [16, 8, 8, 0],
93 "uvDown": [24, 0, 16, 8]
94 }
95 ],
96 "submodels": [
97 {
98 "id": "eyes",
99 "invertAxis": "xy",
100 "translate": [0, 0, 0],
101 "submodels": [
102 {
103 "id": "right",
104 "invertAxis": "xy",
105 "translate": [0, 0, 0],
106 "boxes": [
107 {
108 "coordinates": [-4, -1, -8, 2, 1, 1],
109 "uvNorth": [17, 22, 19, 23],
110 "uvEast": [17, 22, 18, 23],
111 "uvSouth": [17, 22, 19, 23],
112 "uvWest": [17, 22, 18, 23],
113 "uvUp": [17, 22, 19, 23],
114 "uvDown": [17, 22, 19, 23],
115 "sizeAdd": 0.01
116 }
117 ],
118 "submodels": [
119 {
120 "id": "iris_right",
121 "invertAxis": "xy",
122 "translate": [-3.5, -0.5, -7.5],
123 "boxes": [
124 {
125 "coordinates": [-0.5, -0.5, -0.5, 1, 1, 1],
126 "uvNorth": [17, 23, 19, 24],
127 "uvWest": [17, 23, 18, 24],
128 "sizeAdd": 0.02
129 }
130 ]
131 }
132 ]
133 },
134 {
135 "id": "left",
136 "invertAxis": "xy",
137 "translate": [6, 0, 0],
138 "boxes": [
139 {
140 "coordinates": [-4, -1, -8, 2, 1, 1],
141 "uvNorth": [17, 22, 19, 23],
142 "uvEast": [17, 22, 18, 23],
143 "uvWest": [17, 22, 18, 23],
144 "sizeAdd": 0.01
145 }
146 ],
147 "submodels": [
148 {
149 "id": "iris_left",
150 "invertAxis": "xy",
151 "translate": [-2.5, -0.5, -7.5],
152 "boxes": [
153 {
154 "coordinates": [-0.5, -0.5, -0.5, 1, 1, 1],
155 "uvNorth": [17, 23, 19, 24],
156 "uvEast": [17, 23, 18, 24],
157 "sizeAdd": 0.02
158 }
159 ]
160 }
161 ]
162 }
163 ]
164 },
165 {
166 "id": "snout",
167 "invertAxis": "xy",
168 "translate": [0, -1.5, -1.5],
169 "boxes": [
170 {
171 "coordinates": [-2, -1.5, -7.5, 4, 3, 1],
172 "uvNorth": [17, 17, 21, 20],
173 "uvEast": [16, 17, 17, 20],
174 "uvSouth": [22, 17, 26, 20],
175 "uvWest": [21, 17, 22, 20],
176 "uvUp": [21, 17, 17, 16],
177 "uvDown": [25, 16, 21, 17]
178 }
179 ]
180 },
181 {
182 "id": "ear_right",
183 "invertAxis": "xy",
184 "translate": [-4, 2, -5],
185 "rotate": [0, 0, -20],
186 "boxes": [
187 {
188 "coordinates": [-0.5, -3, -2, 1, 3, 4],
189 "uvNorth": [28, 4, 29, 7],
190 "uvEast": [33, 4, 29, 7],
191 "uvSouth": [33, 4, 34, 7],
192 "uvWest": [28, 4, 24, 7],
193 "uvUp": [29, 4, 28, 0],
194 "uvDown": [30, 0, 29, 4]
195 }
196 ]
197 },
198 {
199 "id": "ear_left",
200 "invertAxis": "xy",
201 "translate": [4, 2, -5],
202 "rotate": [0, 0, 20],
203 "boxes": [
204 {
205 "coordinates": [-0.5, -3, -2, 1, 3, 4],
206 "uvNorth": [29, 4, 28, 7],
207 "uvEast": [24, 4, 28, 7],
208 "uvSouth": [34, 4, 33, 7],
209 "uvWest": [29, 4, 33, 7],
210 "uvUp": [28, 4, 29, 0],
211 "uvDown": [29, 0, 30, 4]
212 }
213 ]
214 }
215 ]
216 },
217 {
218 "id": "torso",
219 "invertAxis": "xy",
220 "translate": [0, 2, -2],
221 "submodels": [
222 {
223 "id": "body2",
224 "invertAxis": "xy",
225 "translate": [0, 5, -9],
226 "boxes": [
227 {
228 "coordinates": [-5, -11, 2, 10, 16, 8],
229 "uvNorth": [36, 16, 46, 32],
230 "uvEast": [28, 16, 36, 32],
231 "uvSouth": [54, 16, 64, 32],
232 "uvWest": [46, 16, 54, 32],
233 "uvUp": [46, 16, 36, 8],
234 "uvDown": [56, 8, 46, 16]
235 }
236 ]
237 }
238 ]
239 }
240 ]
241 }
242 ],
243 "animations": [
244 {
245 "var.swim_k": "clamp(if(is_in_water,var.swim_k-0.03,var.swim_k+0.03),torad(-25),0)",
246 "pig.rx": "torad(-90) + var.swim_k",
247 "torso.rx": "torad(90)",
248 "pig.tz": "if(is_in_water,-2,6) - var.lay_k"
249 },
250 {
251 "var.fall": "if(pos_y < var.pos_y,1,0)",
252 "var.time": "(var.time + 1 * limb_speed * 25 * frame_time)",
253 "var.time_s": "(var.time_s + 1 * 25 * frame_time)",
254 "var.time_sky": "(var.time_sky + 1 * 25 * frame_time) * var.sky_k",
255 "var.sky_k": "clamp(if( is_riding || is_in_water || is_on_ground || pos_y >= var.pos_y,0,(var.sky_k+1*frame_time)),0,5)",
256 "var.sky_k2": "if( is_riding || is_on_ground || is_in_water,-1.5,var.sky_k2+30*frame_time*var.sky_k)",
257 "pig.ry": "max(var.sky_k2,0)",
258 "var.still_k": "if(is_on_ground && limb_speed <= 0.1,(var.still_k+0.03),0)",
259 "var.rand_still": "if(var.still_k == 0,random(id*age),var.rand_still)",
260 "var.lay_k": "clamp(if(var.still_k >= var.rand_still*10,var.lay_k+0.2,var.lay_k-0.2),0,5)",
261 "var.sniff_k": "if(var.sniff_k > random(id*age)*400,-0.5,(var.sniff_k+0.03))",
262 "var.sniff_k2": "if(var.sniff_k > 0 ,0,(var.sniff_k2+0.05))",
263 "snout.rx": "if(var.sniff_k < 0 , (-sin(var.sniff_k2*12)-0.5)/15,0)",
264 "var.pos_y": "pos_y"
265 },
266 {
267 "var.hop": 3,
268 "var.clamp_speed": "clamp(limb_speed*10,0,1)",
269 "var.sinrx": "sin(var.time* if(is_child,2,1))*limb_speed",
270 "var.skyrxcos": "cos(var.time_sky* if(is_child,2,1))",
271 "var.cos_base": "if(limb_speed > 0.1,((cos(var.time* if(is_child,2,1))-(var.hop/2)/2)*var.hop + 7),var.cos_base+1)",
272 "var.cos_basen": "if(limb_speed > 0.1,((-cos(var.time* if(is_child,2,1))-(var.hop/2)/2)*var.hop + 7),var.cos_basen+1)",
273 "var.costy": "min(var.cos_base,5)",
274 "var.costyn": "min(var.cos_basen,5)",
275 "var.swsinrx": "clamp(sin(var.time_s* if(is_child,2,1)*0.7)*1.5,torad(-90),torad(90))",
276 "var.wat_jump": "if( !is_on_ground && !is_in_water && var.sky_k2 < 0,-pig.rx +torad(-90),0 )",
277 "leg_1.rx": "if(is_in_water,var.swsinrx,var.sinrx +var.wat_jump)",
278 "leg_1.ty": "if(is_on_ground,if(is_in_water,5,var.costy),5)",
279 "leg_1.rz": "var.sky_k/4 + var.lay_k / 3",
280 "leg_2.rx": "if(is_in_water,-var.swsinrx,-var.sinrx +var.wat_jump)",
281 "leg_2.ty": "if(is_on_ground,if(is_in_water,5,var.costyn),5)",
282 "leg_2.rz": "-var.sky_k/4 - var.lay_k / 3",
283 "leg_3.rx": "if(is_in_water,-var.swsinrx,-var.sinrx +var.wat_jump)",
284 "leg_3.ty": "if(is_on_ground,if(is_in_water,5,var.costyn),5)",
285 "leg_3.rz": "var.sky_k/4 + var.lay_k / 3",
286 "leg_4.rx": "if(is_in_water,var.swsinrx,var.sinrx+var.wat_jump)",
287 "leg_4.ty": "if(is_on_ground,if(is_in_water,5,var.costy),5)",
288 "leg_4.rz": "-var.sky_k/4 - var.lay_k / 3"
289 },
290 {
291 "var.headn": "sin(var.time* if(is_child,2,1))*limb_speed / 6 ",
292 "var.headw": "sin(var.time_s* if(is_child,2,1)*0.7) / 6 ",
293 "var.headyn": "cos(var.time* if(is_child,2,1)/2)*limb_speed / 3 ",
294 "var.headyw": "cos(var.time_s* if(is_child,2,1)*0.7/2) / 3 ",
295 "var.idle_head_rx": "if(is_on_ground && limb_speed<0.1,sin(var.time_s/10)/20,0)",
296 "head2.rx": "head.rx + var.idle_head_rx + ( if(is_in_water,var.headw,var.headn) )- var.sky_k/8 ",
297 "head2.ry": "head.ry + ( if(is_in_water,var.headyw,var.headyn))",
298 "head2.sy": "if(is_child,2,1)",
299 "head2.sx": "if(is_child,2,1)",
300 "head2.sz": "if(is_child,2,1)"
301 },
302 {
303 "var.idle_ear_rx": "if(is_on_ground && limb_speed<0.1,cos(var.time_s/10)/15,0)",
304 "ear_left.rz": "var.idle_ear_rx + (sin(var.time)*limb_speed / 2) + torad(15) + var.sky_k/2 + (var.skyrxcos/2)*var.sky_k/5 ",
305 "ear_right.rz": "-var.idle_ear_rx + (-sin(var.time)*limb_speed / 2) - torad(15)- var.sky_k/2 + (var.skyrxcos/2)*var.sky_k/5 "
306 },
307 {
308 "var.idle_body_rx": "if(is_on_ground && limb_speed<0.1,(cos(var.time_s / 10) / 30) - 0.05,0)",
309 "var.bodyy": "sin(var.time)*limb_speed / 6",
310 "var.bodyy_s": "sin(var.time_s*0.7)/ 6",
311 "var.bodyy_sky": "sin(var.time_sky*0.7)/ 6",
312 "var.bodyx": "cos(var.time)*limb_speed / 6",
313 "var.bodyx_s": "cos(var.time_s*0.7)/ 6",
314 "var.bodyx_sky": "sin(var.time_sky*0.7)/ 6",
315 "body2.rx": "var.idle_body_rx + if(is_in_water,var.bodyx_s,var.bodyx)",
316 "body2.ry": " if(is_in_water,var.bodyy_s,var.bodyy)"
317 },
318 {
319 "var.look_angle": "(torad(-90 + atan2(player_pos_z - pos_z, player_pos_x - pos_x) * 180 / pi)-rot_y)",
320 "var.look_anglex": "torad(-90) + acos((player_pos_y - pos_y) / sqrt(pow(player_pos_x - pos_x, 2) + pow(player_pos_y - pos_y, 2) + pow(player_pos_z - pos_z, 2)))",
321 "iris_right.tx": "clamp(3.5 + if(head2.ry > torad(60),-1,0) + if(var.look_angle-head.ry < 0.2 && var.look_angle-head.ry > -0.2 ,-1,0) , 2.5,3.5 )",
322 "iris_left.tx": " clamp(2.5 + if(head2.ry < torad(-60),1,0) + if(var.look_angle-head.ry < 0.2 && var.look_angle-head.ry > -0.2 , 1,0) , 2.5,3.5 )"
323 }
324 ]
325 },
326 {
327 "part": "head",
328 "id": "head",
329 "invertAxis": "xy",
330 "translate": [0, -12, 6]
331 },
332 {
333 "part": "leg1",
334 "id": "leg1",
335 "invertAxis": "xy",
336 "translate": [-3, -6, -7]
337 },
338 {
339 "part": "leg2",
340 "id": "leg2",
341 "invertAxis": "xy",
342 "translate": [3, -6, -7]
343 },
344 {
345 "part": "leg3",
346 "id": "leg3",
347 "invertAxis": "xy",
348 "translate": [-3, -6, 5]
349 },
350 {
351 "part": "leg4",
352 "id": "leg4",
353 "invertAxis": "xy",
354 "translate": [3, -6, 5]
355 }
356 ]
357} \ No newline at end of file