1
+ package barch .mc_extended .render .entity .model ;
2
+
3
+ import net .minecraft .client .model .*;
4
+ import net .minecraft .client .render .entity .model .SinglePartEntityModel ;
5
+ import net .minecraft .entity .Entity ;
6
+ import net .minecraft .util .math .MathHelper ;
7
+
8
+ public class TroutFishEntityModel <T extends Entity > extends SinglePartEntityModel <T > {
9
+ private static final String BODY_FRONT = "body_front" ;
10
+ private static final String BODY_BACK = "body_back" ;
11
+ private final ModelPart root ;
12
+ private final ModelPart tail ;
13
+
14
+ public TroutFishEntityModel (ModelPart root ) {
15
+ this .root = root ;
16
+ this .tail = root .getChild ("body_back" );
17
+ }
18
+
19
+ public static TexturedModelData getTexturedModelData () {
20
+ ModelData modelData = new ModelData ();
21
+ ModelPartData modelPartData = modelData .getRoot ();
22
+ boolean i = true ;
23
+ ModelPartData modelPartData2 = modelPartData .addChild ("body_front" , ModelPartBuilder .create ().uv (0 , 0 ).cuboid (-1.5F , -2.5F , 0.0F , 3.0F , 5.0F , 8.0F ), ModelTransform .pivot (0.0F , 20.0F , 0.0F ));
24
+ ModelPartData modelPartData3 = modelPartData .addChild ("body_back" , ModelPartBuilder .create ().uv (0 , 13 ).cuboid (-1.5F , -2.5F , 0.0F , 3.0F , 5.0F , 8.0F ), ModelTransform .pivot (0.0F , 20.0F , 8.0F ));
25
+ modelPartData .addChild ("head" , ModelPartBuilder .create ().uv (22 , 0 ).cuboid (-1.0F , -2.0F , -3.0F , 2.0F , 4.0F , 3.0F ), ModelTransform .pivot (0.0F , 20.0F , 0.0F ));
26
+ modelPartData3 .addChild ("back_fin" , ModelPartBuilder .create ().uv (20 , 10 ).cuboid (0.0F , -2.5F , 0.0F , 0.0F , 5.0F , 6.0F ), ModelTransform .pivot (0.0F , 0.0F , 8.0F ));
27
+ modelPartData2 .addChild ("top_front_fin" , ModelPartBuilder .create ().uv (2 , 1 ).cuboid (0.0F , 0.0F , 0.0F , 0.0F , 2.0F , 3.0F ), ModelTransform .pivot (0.0F , -4.5F , 5.0F ));
28
+ modelPartData3 .addChild ("top_back_fin" , ModelPartBuilder .create ().uv (0 , 2 ).cuboid (0.0F , 0.0F , 0.0F , 0.0F , 2.0F , 4.0F ), ModelTransform .pivot (0.0F , -4.5F , -1.0F ));
29
+ modelPartData .addChild ("right_fin" , ModelPartBuilder .create ().uv (-4 , 0 ).cuboid (-2.0F , 0.0F , 0.0F , 2.0F , 0.0F , 2.0F ), ModelTransform .of (-1.5F , 21.5F , 0.0F , 0.0F , 0.0F , -0.7853982F ));
30
+ modelPartData .addChild ("left_fin" , ModelPartBuilder .create ().uv (0 , 0 ).cuboid (0.0F , 0.0F , 0.0F , 2.0F , 0.0F , 2.0F ), ModelTransform .of (1.5F , 21.5F , 0.0F , 0.0F , 0.0F , 0.7853982F ));
31
+ return TexturedModelData .of (modelData , 32 , 32 );
32
+ }
33
+
34
+ public ModelPart getPart () {
35
+ return this .root ;
36
+ }
37
+
38
+ public void setAngles (T entity , float limbAngle , float limbDistance , float animationProgress , float headYaw , float headPitch ) {
39
+ float f = 1.0F ;
40
+ float g = 1.0F ;
41
+ if (!entity .isTouchingWater ()) {
42
+ f = 1.3F ;
43
+ g = 1.7F ;
44
+ }
45
+
46
+ this .tail .yaw = -f * 0.25F * MathHelper .sin (g * 0.6F * animationProgress );
47
+ }
48
+ }
0 commit comments