@@ -42,6 +42,15 @@ public void tick() {
4242 && level .getTile (this .getX () >> 3 , this .getY () >> 3 ).getId () != 12 ) {
4343 isMagma = false ;
4444 }
45+
46+ if (level .getTile (this .getX () >> 3 , this .getY () >> 3 ).getId () == 14 ){
47+ isMuddy = true ;
48+ }
49+
50+ if (isMuddy
51+ && level .getTile (this .getX () >> 3 , this .getY () >> 3 ).getId () != 14 ){
52+ isMuddy = false ;
53+ }
4554
4655 tickCount ++;
4756
@@ -112,12 +121,36 @@ public void render(Screen screen) {
112121 screen .render (xOffset + 8 , yOffset + 3 , 31 + 31 * 32 , waterColour ,
113122 0x01 , 1 );
114123 }
124+
125+ if (isMuddy ) {
126+ int waterColour = 0 ;
127+ yOffset += 4 ;
128+
129+ colour = Colours .get (-1 , 111 , -1 , 310 );
130+
131+ if (tickCount % 60 < 15 ) {
132+ waterColour = Colours .get (-1 , -1 , 422 , -1 );
133+ } else if (15 <= tickCount % 60 && tickCount % 60 < 30 ) {
134+ yOffset --;
135+ waterColour = Colours .get (-1 , 410 , 321 , -1 );
136+ } else if (30 <= tickCount % 60 && tickCount % 60 < 45 ) {
137+ waterColour = Colours .get (-1 , 321 , -1 , 410 );
138+ } else {
139+ yOffset --;
140+ waterColour = Colours .get (-1 , -1 , 410 , 321 );
141+ }
142+
143+ screen .render (xOffset , yOffset + 3 , 31 + 31 * 32 , waterColour ,
144+ 0x00 , 1 );
145+ screen .render (xOffset + 8 , yOffset + 3 , 31 + 31 * 32 , waterColour ,
146+ 0x01 , 1 );
147+ }
115148
116149 screen .render ((xOffset + (modifier * flipTop )), yOffset ,
117150 (xTile + yTile * 32 ), colour , flipTop , scale );
118151 screen .render ((xOffset + modifier - (modifier * flipTop )), yOffset ,
119152 ((xTile + 1 ) + yTile * 32 ), colour , flipTop , scale );
120- if (!isSwimming && !isMagma ) {
153+ if (!isSwimming && !isMagma && ! isMuddy ) {
121154 screen .render ((xOffset + (modifier * flipBottom )),
122155 (yOffset + modifier ), (xTile + (yTile + 1 ) * 32 ), colour ,
123156 flipBottom , scale );
0 commit comments