@@ -80,6 +80,15 @@ public void tick() {
8080 && level .getTile (this .getX () >> 3 , this .getY () >> 3 ).getId () != 12 ) {
8181 isMagma = false ;
8282 }
83+
84+ if (level .getTile (this .getX () >> 3 , this .getY () >> 3 ).getId () == 14 ){
85+ isMuddy = true ;
86+ }
87+
88+ if (isMuddy
89+ && level .getTile (this .getX () >> 3 , this .getY () >> 3 ).getId () != 14 ){
90+ isMuddy = false ;
91+ }
8392
8493 tickCount ++;
8594 }
@@ -153,12 +162,36 @@ public void render(Screen screen) {
153162 screen .render (xOffset + 8 , yOffset + 3 , 31 + 31 * 32 , waterColour ,
154163 0x01 , 1 );
155164 }
165+
166+ if (isMuddy ) {
167+ int waterColour = 0 ;
168+ yOffset += 4 ;
169+
170+ colour = Colours .get (-1 , 111 , -1 , 310 );
171+
172+ if (tickCount % 60 < 15 ) {
173+ waterColour = Colours .get (-1 , -1 , 422 , -1 );
174+ } else if (15 <= tickCount % 60 && tickCount % 60 < 30 ) {
175+ yOffset --;
176+ waterColour = Colours .get (-1 , 410 , 321 , -1 );
177+ } else if (30 <= tickCount % 60 && tickCount % 60 < 45 ) {
178+ waterColour = Colours .get (-1 , 321 , -1 , 410 );
179+ } else {
180+ yOffset --;
181+ waterColour = Colours .get (-1 , -1 , 410 , 321 );
182+ }
183+
184+ screen .render (xOffset , yOffset + 3 , 31 + 31 * 32 , waterColour ,
185+ 0x00 , 1 );
186+ screen .render (xOffset + 8 , yOffset + 3 , 31 + 31 * 32 , waterColour ,
187+ 0x01 , 1 );
188+ }
156189
157190 screen .render ((xOffset + (modifier * flipTop )), yOffset ,
158191 (xTile + yTile * 32 ), colour , flipTop , scale );
159192 screen .render ((xOffset + modifier - (modifier * flipTop )), yOffset ,
160193 ((xTile + 1 ) + yTile * 32 ), colour , flipTop , scale );
161- if (!isSwimming && !isMagma ) {
194+ if (!isSwimming && !isMagma && ! isMuddy ) {
162195 screen .render ((xOffset + (modifier * flipBottom )),
163196 (yOffset + modifier ), (xTile + (yTile + 1 ) * 32 ), colour ,
164197 flipBottom , scale );
0 commit comments