Skip to content

Commit 19f6f14

Browse files
committed
Added ablility to swim in mud
1 parent 2c8a5fd commit 19f6f14

File tree

2 files changed

+35
-1
lines changed

2 files changed

+35
-1
lines changed

src/com/redomar/game/entities/Mob.java

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -16,6 +16,7 @@ public abstract class Mob extends Entity {
1616
protected int scale = 1;
1717
protected boolean isSwimming = false;
1818
protected boolean isMagma = false;
19+
protected boolean isMuddy = false;
1920
protected boolean changeLevels = false;
2021
protected int ticker;
2122

src/com/redomar/game/entities/Player.java

Lines changed: 34 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -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

Comments
 (0)