Skip to content

Commit 653cce9

Browse files
Merge pull request #5 from AnvilloyDevStudio/plus-pr-543
Add ability to horizontally scroll entries
2 parents 07fa1d9 + 631510c commit 653cce9

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

43 files changed

+841
-298
lines changed

src/client/java/minicraft/core/Renderer.java

+29-29
Original file line numberDiff line numberDiff line change
@@ -203,7 +203,7 @@ private static void renderLevel() {
203203
for (int y = 0; y < 28; y++)
204204
for (int x = 0; x < 48; x++) {
205205
// Creates the background for the sky (and dungeon) level:
206-
screen.render(x * 8 - ((xScroll / 4) & 7), y * 8 - ((yScroll / 4) & 7), 0, 0, 0, cloud);
206+
screen.render(null, x * 8 - ((xScroll / 4) & 7), y * 8 - ((yScroll / 4) & 7), 0, 0, 0, cloud);
207207
}
208208
}
209209

@@ -227,7 +227,7 @@ private static void renderGui() {
227227
// This draws the black square where the selected item would be if you were holding it
228228
if (!isMode("minicraft.settings.mode.creative") || player.activeItem != null) {
229229
for (int x = 10; x < 26; x++) {
230-
screen.render(x * 8, Screen.h - 8, 5, 2, 0, hudSheet);
230+
screen.render(null, x * 8, Screen.h - 8, 5, 2, 0, hudSheet);
231231
}
232232
}
233233

@@ -243,11 +243,11 @@ private static void renderGui() {
243243
int ac = player.getInventory().count(Items.arrowItem);
244244
// "^" is an infinite symbol.
245245
if (isMode("minicraft.settings.mode.creative") || ac >= 10000)
246-
Font.drawBackground(" x" + "^", screen, 84, Screen.h - 16);
246+
Font.drawBackground(null, " x" + "^", screen, 84, Screen.h - 16);
247247
else
248-
Font.drawBackground(" x" + ac, screen, 84, Screen.h - 16);
248+
Font.drawBackground(null, " x" + ac, screen, 84, Screen.h - 16);
249249
// Displays the arrow icon
250-
screen.render(10 * 8 + 4, Screen.h - 16, 4, 1, 0, hudSheet);
250+
screen.render(null, 10 * 8 + 4, Screen.h - 16, 4, 1, 0, hudSheet);
251251
}
252252
}
253253

@@ -365,47 +365,47 @@ private static void renderGui() {
365365
for (int i = 1; i <= 30; i++) {
366366
// Renders your current red default hearts, golden hearts for 20 HP, obsidian hearts for 30 HP, or black hearts for damaged health.
367367
if (i < 11) {
368-
screen.render((i - 1) * 8, Screen.h - 16, 0, 1, 0, hudSheet); // Empty Hearts
368+
screen.render(null, (i - 1) * 8, Screen.h - 16, 0, 1, 0, hudSheet); // Empty Hearts
369369
}
370370
if (i < player.health + 1 && i < 11) {
371-
screen.render((i - 1) * 8, Screen.h - 16, 0, 0, 0, hudSheet); // Red Hearts
371+
screen.render(null, (i - 1) * 8, Screen.h - 16, 0, 0, 0, hudSheet); // Red Hearts
372372
}
373373
if (i < player.health + 1 && i < 21 && i >= 11) {
374-
screen.render((i - 11) * 8, Screen.h - 16, 0, 2, 0, hudSheet); // Yellow Hearts
374+
screen.render(null, (i - 11) * 8, Screen.h - 16, 0, 2, 0, hudSheet); // Yellow Hearts
375375
}
376376
if (i < player.health + 1 && i >= 21) {
377-
screen.render((i - 21) * 8, Screen.h - 16, 0, 3, 0, hudSheet); // Obsidian Hearts
377+
screen.render(null, (i - 21) * 8, Screen.h - 16, 0, 3, 0, hudSheet); // Obsidian Hearts
378378
}
379379
}
380380
for (int i = 0; i < Player.maxStat; i++) {
381381

382382
// Renders armor
383383
int armor = player.armor * Player.maxStat / Player.maxArmor;
384384
if (i <= armor && player.curArmor != null) {
385-
screen.render(i * 8, Screen.h - 24, player.curArmor.sprite);
385+
screen.render(null, i * 8, Screen.h - 24, player.curArmor.sprite);
386386
}
387387

388388
if (player.staminaRechargeDelay > 0) {
389389
// Creates the white/gray blinking effect when you run out of stamina.
390390
if (player.staminaRechargeDelay / 4 % 2 == 0) {
391-
screen.render(i * 8, Screen.h - 8, 1, 2, 0, hudSheet);
391+
screen.render(null, i * 8, Screen.h - 8, 1, 2, 0, hudSheet);
392392
} else {
393-
screen.render(i * 8, Screen.h - 8, 1, 1, 0, hudSheet);
393+
screen.render(null, i * 8, Screen.h - 8, 1, 1, 0, hudSheet);
394394
}
395395
} else {
396396
// Renders your current stamina, and uncharged gray stamina.
397397
if (i < player.stamina) {
398-
screen.render(i * 8, Screen.h - 8, 1, 0, 0, hudSheet);
398+
screen.render(null, i * 8, Screen.h - 8, 1, 0, 0, hudSheet);
399399
} else {
400-
screen.render(i * 8, Screen.h - 8, 1, 1, 0, hudSheet);
400+
screen.render(null, i * 8, Screen.h - 8, 1, 1, 0, hudSheet);
401401
}
402402
}
403403

404404
// Renders hunger
405405
if (i < player.hunger) {
406-
screen.render(i * 8 + (Screen.w - 80), Screen.h - 16, 2, 0, 0, hudSheet);
406+
screen.render(null, i * 8 + (Screen.w - 80), Screen.h - 16, 2, 0, 0, hudSheet);
407407
} else {
408-
screen.render(i * 8 + (Screen.w - 80), Screen.h - 16, 2, 1, 0, hudSheet);
408+
screen.render(null, i * 8 + (Screen.w - 80), Screen.h - 16, 2, 1, 0, hudSheet);
409409
}
410410
}
411411
}
@@ -440,20 +440,20 @@ public static void renderBossbar(int length, String title) {
440440

441441
MinicraftImage hudSheet = getHudSheet();
442442

443-
screen.render(x + (max_bar_length * 2), y, 0, INACTIVE_BOSSBAR, 1, hudSheet); // left corner
443+
screen.render(null, x + (max_bar_length * 2), y, 0, INACTIVE_BOSSBAR, 1, hudSheet); // left corner
444444

445445
// The middle
446446
for (int bx = 0; bx < max_bar_length; bx++) {
447447
for (int by = 0; by < 1; by++) {
448-
screen.render(x + bx * 2, y + by * 8, 3, INACTIVE_BOSSBAR, 0, hudSheet);
448+
screen.render(null, x + bx * 2, y + by * 8, 3, INACTIVE_BOSSBAR, 0, hudSheet);
449449
}
450450
}
451451

452-
screen.render(x - 5, y, 0, ACTIVE_BOSSBAR, 0, hudSheet); // right corner
452+
screen.render(null, x - 5, y, 0, ACTIVE_BOSSBAR, 0, hudSheet); // right corner
453453

454454
for (int bx = 0; bx < bar_length; bx++) {
455455
for (int by = 0; by < 1; by++) {
456-
screen.render(x + bx * 2, y + by * 8, 3, ACTIVE_BOSSBAR, 0, hudSheet);
456+
screen.render(null, x + bx * 2, y + by * 8, 3, ACTIVE_BOSSBAR, 0, hudSheet);
457457
}
458458
}
459459

@@ -556,24 +556,24 @@ private static void renderFocusNagger() {
556556
MinicraftImage hudSheet = getHudSheet();
557557

558558
// Renders the four corners of the box
559-
screen.render(xx - 8, yy - 8, 0, 6, 0, hudSheet);
560-
screen.render(xx + w * 8, yy - 8, 0, 6, 1, hudSheet);
561-
screen.render(xx - 8, yy + 8, 0, 6, 2, hudSheet);
562-
screen.render(xx + w * 8, yy + 8, 0, 6, 3, hudSheet);
559+
screen.render(null, xx - 8, yy - 8, 0, 6, 0, hudSheet);
560+
screen.render(null, xx + w * 8, yy - 8, 0, 6, 1, hudSheet);
561+
screen.render(null, xx - 8, yy + 8, 0, 6, 2, hudSheet);
562+
screen.render(null, xx + w * 8, yy + 8, 0, 6, 3, hudSheet);
563563

564564
// Renders each part of the box...
565565
for (int x = 0; x < w; x++) {
566-
screen.render(xx + x * 8, yy - 8, 1, 6, 0, hudSheet); // ...Top part
567-
screen.render(xx + x * 8, yy + 8, 1, 6, 2, hudSheet); // ...Bottom part
566+
screen.render(null, xx + x * 8, yy - 8, 1, 6, 0, hudSheet); // ...Top part
567+
screen.render(null, xx + x * 8, yy + 8, 1, 6, 2, hudSheet); // ...Bottom part
568568
}
569569
for (int y = 0; y < h; y++) {
570-
screen.render(xx - 8, yy + y * 8, 2, 6, 0, hudSheet); // ...Left part
571-
screen.render(xx + w * 8, yy + y * 8, 2, 6, 1, hudSheet); // ...Right part
570+
screen.render(null, xx - 8, yy + y * 8, 2, 6, 0, hudSheet); // ...Left part
571+
screen.render(null, xx + w * 8, yy + y * 8, 2, 6, 1, hudSheet); // ...Right part
572572
}
573573

574574
// The middle
575575
for (int x = 0; x < w; x++) {
576-
screen.render(xx + x * 8, yy, 3, 6, 0, hudSheet);
576+
screen.render(null, xx + x * 8, yy, 3, 6, 0, hudSheet);
577577
}
578578

579579
// Renders the focus nagger text with a flash effect...

src/client/java/minicraft/entity/Arrow.java

+1-1
Original file line numberDiff line numberDiff line change
@@ -131,6 +131,6 @@ public boolean hurt(DamageSource source, Direction attackDir, int damage) {
131131

132132
@Override
133133
public void render(Screen screen) {
134-
screen.render(x - 4, y - 4, sprite);
134+
screen.render(null, x - 4, y - 4, sprite);
135135
}
136136
}

src/client/java/minicraft/entity/FireSpark.java

+2-2
Original file line numberDiff line numberDiff line change
@@ -134,8 +134,8 @@ public void render(Screen screen) {
134134
int xt = 8;
135135
int yt = 13;
136136

137-
screen.render(x - 4, y - 4 + 2, sprite.getSprite(), randmirror, false, Color.BLACK); // renders the shadow on the ground
138-
screen.render(x - 4, y - 4 - 2, sprite.getSprite(), randmirror, false, Color.RED); // Renders the spark
137+
screen.render(null, x - 4, y - 4 + 2, sprite.getSprite(), randmirror, false, Color.BLACK); // renders the shadow on the ground
138+
screen.render(null, x - 4, y - 4 - 2, sprite.getSprite(), randmirror, false, Color.RED); // Renders the spark
139139
}
140140

141141
/**

src/client/java/minicraft/entity/ItemEntity.java

+2-2
Original file line numberDiff line numberDiff line change
@@ -132,8 +132,8 @@ public void render(Screen screen) {
132132
if (time / 6 % 2 == 0) return;
133133
}
134134

135-
screen.render(x - 4, y - 4, item.sprite.getSprite(), 0, false, Color.get(0, 31)); // Item shadow
136-
screen.render(x - 4, y - 4 - (int) zz, item.sprite); // Item
135+
screen.render(null, x - 4, y - 4, item.sprite.getSprite(), 0, false, Color.get(0, 31)); // Item shadow
136+
screen.render(null, x - 4, y - 4 - (int) zz, item.sprite); // Item
137137
}
138138

139139
@Override

src/client/java/minicraft/entity/Spark.java

+2-2
Original file line numberDiff line numberDiff line change
@@ -106,8 +106,8 @@ public void render(Screen screen) {
106106
randmirror = random.nextInt(4);
107107
}
108108

109-
screen.render(x - 4, y - 4 + 2, sprite.getSprite(), 0, false, Color.BLACK); // renders the shadow on the ground
110-
screen.render(x - 4, y - 4 - 2, sprite.getSprite(), randmirror, false); // Renders the spark
109+
screen.render(null, x - 4, y - 4 + 2, sprite.getSprite(), 0, false, Color.BLACK); // renders the shadow on the ground
110+
screen.render(null, x - 4, y - 4 - 2, sprite.getSprite(), randmirror, false); // Renders the spark
111111
}
112112

113113
/**

src/client/java/minicraft/entity/furniture/Furniture.java

+1-1
Original file line numberDiff line numberDiff line change
@@ -75,7 +75,7 @@ public void tick() {
7575
* Draws the furniture on the screen.
7676
*/
7777
public void render(Screen screen) {
78-
screen.render(x - 8, y - 8, sprite);
78+
screen.render(null, x - 8, y - 8, sprite);
7979
}
8080

8181
@Override

src/client/java/minicraft/entity/mob/MobAi.java

+2-2
Original file line numberDiff line numberDiff line change
@@ -135,9 +135,9 @@ public void render(Screen screen) {
135135

136136
SpriteLink curSprite = sprites[dir.getDir()][(walkDist >> 3) % sprites[dir.getDir()].length];
137137
if (hurtTime > 0) {
138-
screen.render(xo, yo, curSprite.getSprite(), true);
138+
screen.render(null, xo, yo, curSprite.getSprite(), true);
139139
} else {
140-
screen.render(xo, yo, curSprite.getSprite());
140+
screen.render(null, xo, yo, curSprite.getSprite());
141141
}
142142
}
143143

src/client/java/minicraft/entity/mob/Player.java

+32-32
Original file line numberDiff line numberDiff line change
@@ -812,32 +812,32 @@ public void render(Screen screen) {
812812

813813
// animation effect
814814
if (tickTime / 8 % 2 == 0) {
815-
screen.render(xo + 0, yo + 3, 5, 0, 0, hudSheet.get()); // Render the water graphic
816-
screen.render(xo + 8, yo + 3, 5, 0, 1, hudSheet.get()); // Render the mirrored water graphic to the right.
815+
screen.render(null, xo + 0, yo + 3, 5, 0, 0, hudSheet.get()); // Render the water graphic
816+
screen.render(null, xo + 8, yo + 3, 5, 0, 1, hudSheet.get()); // Render the mirrored water graphic to the right.
817817
} else {
818-
screen.render(xo + 0, yo + 3, 5, 1, 0, hudSheet.get());
819-
screen.render(xo + 8, yo + 3, 5, 1, 1, hudSheet.get());
818+
screen.render(null, xo + 0, yo + 3, 5, 1, 0, hudSheet.get());
819+
screen.render(null, xo + 8, yo + 3, 5, 1, 1, hudSheet.get());
820820
}
821821

822822
} else if (level.getTile(x >> 4, y >> 4) == Tiles.get("lava")) {
823823

824824
if (tickTime / 8 % 2 == 0) {
825-
screen.render(xo + 0, yo + 3, 6, 0, 1, hudSheet.get()); // Render the lava graphic
826-
screen.render(xo + 8, yo + 3, 6, 0, 0, hudSheet.get()); // Render the mirrored lava graphic to the right.
825+
screen.render(null, xo + 0, yo + 3, 6, 0, 1, hudSheet.get()); // Render the lava graphic
826+
screen.render(null, xo + 8, yo + 3, 6, 0, 0, hudSheet.get()); // Render the mirrored lava graphic to the right.
827827
} else {
828-
screen.render(xo + 0, yo + 3, 6, 1, 1, hudSheet.get());
829-
screen.render(xo + 8, yo + 3, 6, 1, 0, hudSheet.get());
828+
screen.render(null, xo + 0, yo + 3, 6, 1, 1, hudSheet.get());
829+
screen.render(null, xo + 8, yo + 3, 6, 1, 0, hudSheet.get());
830830
}
831831
}
832832
}
833833

834834
// Renders indicator for what tile the item will be placed on
835835
if (activeItem instanceof TileItem && !isSwimming()) {
836836
Point t = getInteractionTile();
837-
screen.render(t.x * 16, t.y * 16, 3, 2, 0, hudSheet.get());
838-
screen.render(t.x * 16 + 8, t.y * 16, 3, 2, 1, hudSheet.get());
839-
screen.render(t.x * 16, t.y * 16 + 8, 3, 2, 2, hudSheet.get());
840-
screen.render(t.x * 16 + 8, t.y * 16 + 8, 3, 2, 3, hudSheet.get());
837+
screen.render(null, t.x * 16, t.y * 16, 3, 2, 0, hudSheet.get());
838+
screen.render(null, t.x * 16 + 8, t.y * 16, 3, 2, 1, hudSheet.get());
839+
screen.render(null, t.x * 16, t.y * 16 + 8, 3, 2, 2, hudSheet.get());
840+
screen.render(null, t.x * 16 + 8, t.y * 16 + 8, 3, 2, 3, hudSheet.get());
841841
}
842842

843843
// Makes the player white if they have just gotten hurt
@@ -853,48 +853,48 @@ public void render(Screen screen) {
853853
// This makes falling look really cool.
854854
int spriteToUse = Math.round(onFallDelay / 2f) % carrySprites.length;
855855
curSprite = carrySprites[spriteToUse][(walkDist >> 3) & 1];
856-
screen.render(xo, yo - 4 * onFallDelay, curSprite.setColor(shirtColor));
856+
screen.render(null, xo, yo - 4 * onFallDelay, curSprite.setColor(shirtColor));
857857
} else {
858858
curSprite = spriteSet[dir.getDir()][(walkDist >> 3) & 1]; // Gets the correct sprite to render.
859859
// Render each corner of the sprite
860860
if (isSwimming()) {
861861
Sprite sprite = curSprite.getSprite();
862-
screen.render(xo, yo, sprite.spritePixels[0][0], shirtColor);
863-
screen.render(xo + 8, yo, sprite.spritePixels[0][1], shirtColor);
862+
screen.render(null, xo, yo, sprite.spritePixels[0][0], shirtColor);
863+
screen.render(null, xo + 8, yo, sprite.spritePixels[0][1], shirtColor);
864864
} else { // Don't render the bottom half if swimming.
865-
screen.render(xo, yo - 4 * onFallDelay, curSprite.setColor(shirtColor));
865+
screen.render(null, xo, yo - 4 * onFallDelay, curSprite.setColor(shirtColor));
866866
}
867867
}
868868

869869
// Renders slashes:
870870
if (attackTime > 0) {
871871
switch (dir) {
872872
case UP: // If currently attacking upwards...
873-
screen.render(xo + 0, yo - 4, 3, 0, 0, hudSheet.get()); // Render left half-slash
874-
screen.render(xo + 8, yo - 4, 3, 0, 1, hudSheet.get()); // Render right half-slash (mirror of left).
873+
screen.render(null, xo + 0, yo - 4, 3, 0, 0, hudSheet.get()); // Render left half-slash
874+
screen.render(null, xo + 8, yo - 4, 3, 0, 1, hudSheet.get()); // Render right half-slash (mirror of left).
875875
if (activeItem != null) { // If the player had an item when they last attacked...
876-
screen.render(xo + 4, yo - 4, activeItem.sprite.getSprite(), 1, false); // Then render the icon of the item, mirrored
876+
screen.render(null, xo + 4, yo - 4, activeItem.sprite.getSprite(), 1, false); // Then render the icon of the item, mirrored
877877
}
878878
break;
879879
case LEFT: // Attacking to the left... (Same as above)
880-
screen.render(xo - 4, yo, 4, 0, 1, hudSheet.get());
881-
screen.render(xo - 4, yo + 8, 4, 0, 3, hudSheet.get());
880+
screen.render(null, xo - 4, yo, 4, 0, 1, hudSheet.get());
881+
screen.render(null, xo - 4, yo + 8, 4, 0, 3, hudSheet.get());
882882
if (activeItem != null) {
883-
screen.render(xo - 4, yo + 4, activeItem.sprite.getSprite(), 1, false);
883+
screen.render(null, xo - 4, yo + 4, activeItem.sprite.getSprite(), 1, false);
884884
}
885885
break;
886886
case RIGHT: // Attacking to the right (Same as above)
887-
screen.render(xo + 8 + 4, yo, 4, 0, 0, hudSheet.get());
888-
screen.render(xo + 8 + 4, yo + 8, 4, 0, 2, hudSheet.get());
887+
screen.render(null, xo + 8 + 4, yo, 4, 0, 0, hudSheet.get());
888+
screen.render(null, xo + 8 + 4, yo + 8, 4, 0, 2, hudSheet.get());
889889
if (activeItem != null) {
890-
screen.render(xo + 8 + 4, yo + 4, activeItem.sprite.getSprite());
890+
screen.render(null, xo + 8 + 4, yo + 4, activeItem.sprite.getSprite());
891891
}
892892
break;
893893
case DOWN: // Attacking downwards (Same as above)
894-
screen.render(xo + 0, yo + 8 + 4, 3, 0, 2, hudSheet.get());
895-
screen.render(xo + 8, yo + 8 + 4, 3, 0, 3, hudSheet.get());
894+
screen.render(null, xo + 0, yo + 8 + 4, 3, 0, 2, hudSheet.get());
895+
screen.render(null, xo + 8, yo + 8 + 4, 3, 0, 3, hudSheet.get());
896896
if (activeItem != null) {
897-
screen.render(xo + 4, yo + 8 + 4, activeItem.sprite.getSprite());
897+
screen.render(null, xo + 4, yo + 8 + 4, activeItem.sprite.getSprite());
898898
}
899899
break;
900900
case NONE:
@@ -906,16 +906,16 @@ public void render(Screen screen) {
906906
if (isFishing && activeItem != null) {
907907
switch (dir) {
908908
case UP:
909-
screen.render(xo + 4, yo - 4, activeItem.sprite.getSprite(), 1, false);
909+
screen.render(null, xo + 4, yo - 4, activeItem.sprite.getSprite(), 1, false);
910910
break;
911911
case LEFT:
912-
screen.render(xo - 4, yo + 4, activeItem.sprite.getSprite(), 1, false);
912+
screen.render(null, xo - 4, yo + 4, activeItem.sprite.getSprite(), 1, false);
913913
break;
914914
case RIGHT:
915-
screen.render(xo + 8 + 4, yo + 4, activeItem.sprite.getSprite());
915+
screen.render(null, xo + 8 + 4, yo + 4, activeItem.sprite.getSprite());
916916
break;
917917
case DOWN:
918-
screen.render(xo + 4, yo + 8 + 4, activeItem.sprite.getSprite());
918+
screen.render(null, xo + 4, yo + 8 + 4, activeItem.sprite.getSprite());
919919
break;
920920
case NONE:
921921
break;

src/client/java/minicraft/entity/mob/Sheep.java

+2-2
Original file line numberDiff line numberDiff line change
@@ -62,9 +62,9 @@ public void render(Screen screen) {
6262

6363
SpriteLink curSprite = curAnim[dir.getDir()][(walkDist >> 3) % curAnim[dir.getDir()].length];
6464
if (hurtTime > 0) {
65-
screen.render(xo, yo, curSprite.getSprite(), true);
65+
screen.render(null, xo, yo, curSprite.getSprite(), true);
6666
} else {
67-
screen.render(xo, yo, curSprite);
67+
screen.render(null, xo, yo, curSprite);
6868
}
6969
}
7070

src/client/java/minicraft/entity/particle/Particle.java

+1-1
Original file line numberDiff line numberDiff line change
@@ -57,7 +57,7 @@ public void tick() {
5757

5858
@Override
5959
public void render(Screen screen) {
60-
screen.render(x, y, sprite);
60+
screen.render(null, x, y, sprite);
6161
}
6262

6363
@Override

0 commit comments

Comments
 (0)