chore: lava
This commit is contained in:
parent
f5d2920a9a
commit
ddb8deffe9
@ -14,6 +14,7 @@ public class SpriteLoader {
|
||||
// Blocks
|
||||
AIR,
|
||||
WATER,
|
||||
LAVA,
|
||||
DIRT,
|
||||
GRASS,
|
||||
STONE,
|
||||
@ -142,6 +143,7 @@ public class SpriteLoader {
|
||||
// Block
|
||||
SPRITES_MAP.put(SPRITES.AIR, new Air());
|
||||
SPRITES_MAP.put(SPRITES.WATER, new Water());
|
||||
SPRITES_MAP.put(SPRITES.LAVA, new Lava());
|
||||
SPRITES_MAP.put(SPRITES.DIRT, new SimpleSprite("dirt.ans"));
|
||||
SPRITES_MAP.put(SPRITES.GRASS, new SimpleSprite("grass.ans"));
|
||||
SPRITES_MAP.put(SPRITES.STONE, new SimpleSprite("stone.ans"));
|
||||
|
62
src/main/java/cz/jzitnik/game/sprites/Lava.java
Normal file
62
src/main/java/cz/jzitnik/game/sprites/Lava.java
Normal file
@ -0,0 +1,62 @@
|
||||
package cz.jzitnik.game.sprites;
|
||||
|
||||
import cz.jzitnik.tui.ResourceLoader;
|
||||
import cz.jzitnik.tui.Sprite;
|
||||
|
||||
import java.util.Optional;
|
||||
|
||||
public class Lava extends Sprite {
|
||||
public enum LavaState {
|
||||
FIRST,
|
||||
SECOND,
|
||||
THIRD,
|
||||
FOURTH,
|
||||
FIFTH;
|
||||
|
||||
public static LavaState get(int x) {
|
||||
return switch (x) {
|
||||
case 5 -> FIRST;
|
||||
case 4 -> SECOND;
|
||||
case 3 -> THIRD;
|
||||
case 2 -> FOURTH;
|
||||
case 1 -> FIFTH;
|
||||
default -> throw new IllegalStateException("Unexpected value: " + x);
|
||||
};
|
||||
}
|
||||
}
|
||||
|
||||
public String getSprite() {
|
||||
return getSprite(LavaState.FIRST);
|
||||
}
|
||||
|
||||
public String getSprite(Enum e) {
|
||||
String[] resource = ResourceLoader.loadResource("lava.ans").split("\n");
|
||||
|
||||
int numberFormTop = switch (e) {
|
||||
case LavaState.FIRST -> 0;
|
||||
case LavaState.SECOND -> 5;
|
||||
case LavaState.THIRD -> 10;
|
||||
case LavaState.FOURTH -> 15;
|
||||
case LavaState.FIFTH -> 20;
|
||||
default -> throw new IllegalStateException("Unexpected value: " + e);
|
||||
};
|
||||
|
||||
StringBuilder stringBuilder = new StringBuilder();
|
||||
|
||||
for (int i = 0; i < 25; i++) {
|
||||
if (i < numberFormTop) {
|
||||
stringBuilder.append("\033[49m ".repeat(50));
|
||||
} else {
|
||||
stringBuilder.append(resource[i]);
|
||||
}
|
||||
stringBuilder.append("\n");
|
||||
}
|
||||
|
||||
return stringBuilder.toString();
|
||||
}
|
||||
|
||||
@Override
|
||||
public Optional<Class<LavaState>> getStates() {
|
||||
return Optional.of(LavaState.class);
|
||||
}
|
||||
}
|
25
src/main/resources/textures/lava.ans
Normal file
25
src/main/resources/textures/lava.ans
Normal file
@ -0,0 +1,25 @@
|
||||
[48;2;218;120;35m [48;2;223;118;35m [48;2;206;86;8m [48;2;210;86;9m [48;2;207;85;8m [48;2;226;116;35m [48;2;242;154;65m [48;2;241;158;67m [48;2;235;142;53m [48;2;224;119;34m [48;2;235;118;39m [48;2;208;81;8m [48;2;206;71;3m [48;2;199;61;0m [48;2;209;73;12m [48;2;198;67;2m [48;2;205;82;12m [48;2;207;90;16m [48;2;206;91;14m [48;2;219;104;24m [48;2;224;110;28m [48;2;223;110;25m [48;2;217;106;18m [48;2;227;119;30m [48;2;225;119;32m [m
|
||||
[48;2;214;117;31m [48;2;219;116;32m [48;2;206;91;12m [48;2;207;85;8m [48;2;207;87;9m [48;2;228;115;35m [48;2;245;150;64m [48;2;246;153;66m [48;2;247;147;63m [48;2;229;122;39m [48;2;231;113;37m [48;2;208;83;9m [48;2;205;75;5m [48;2;197;65;0m [48;2;206;76;8m [48;2;195;69;0m [48;2;203;83;10m [48;2;207;90;14m [48;2;212;95;16m [48;2;221;106;27m [48;2;219;108;25m [48;2;220;113;26m [48;2;204;105;14m [48;2;218;121;29m [48;2;218;121;31m [m
|
||||
[48;2;214;119;32m [48;2;220;119;35m [48;2;213;105;23m [48;2;207;92;13m [48;2;211;94;15m [48;2;215;101;21m [48;2;232;122;43m [48;2;233;123;44m [48;2;219;106;31m [48;2;230;115;40m [48;2;232;112;39m [48;2;211;88;16m [48;2;212;87;16m [48;2;211;88;14m [48;2;232;113;37m [48;2;230;112;36m [48;2;245;125;50m [48;2;215;93;18m [48;2;207;85;8m [48;2;213;96;17m [48;2;230;125;40m [48;2;223;131;39m [48;2;229;149;51m [48;2;214;139;39m [48;2;216;138;41m [m
|
||||
[48;2;220;123;37m [48;2;227;126;42m [48;2;225;120;37m [48;2;211;101;20m [48;2;217;103;23m [48;2;204;85;7m [48;2;206;84;9m [48;2;205;82;10m [48;2;192;69;0m [48;2;206;81;12m [48;2;204;79;9m [48;2;214;91;21m [48;2;207;87;13m [48;2;204;87;10m [48;2;224;110;30m [48;2;225;108;29m [48;2;237;117;41m [48;2;210;85;11m [48;2;207;80;5m [48;2;209;90;12m [48;2;235;135;48m [48;2;227;145;49m [48;2;255;216;113m [48;2;237;177;72m [48;2;240;175;74m [m
|
||||
[48;2;224;124;39m [48;2;229;129;44m [48;2;226;121;38m [48;2;212;102;21m [48;2;213;98;19m [48;2;213;91;14m [48;2;212;83;10m [48;2;211;79;10m [48;2;200;65;0m [48;2;216;81;15m [48;2;204;74;6m [48;2;217;92;22m [48;2;207;85;12m [48;2;202;82;7m [48;2;224;107;28m [48;2;226;107;29m [48;2;237;115;40m [48;2;212;88;14m [48;2;211;82;7m [48;2;212;93;15m [48;2;230;135;47m [48;2;223;148;51m [48;2;255;217;113m [48;2;233;177;71m [48;2;238;177;75m [m
|
||||
[48;2;223;121;37m [48;2;225;122;38m [48;2;216;109;27m [48;2;207;94;14m [48;2;209;92;13m [48;2;210;86;9m [48;2;211;79;8m [48;2;212;77;7m [48;2;200;65;0m [48;2;223;91;21m [48;2;216;91;19m [48;2;231;111;38m [48;2;222;107;32m [48;2;215;100;23m [48;2;201;86;9m [48;2;198;81;4m [48;2;194;74;0m [48;2;202;80;5m [48;2;209;83;7m [48;2;214;97;19m [48;2;255;164;75m [48;2;249;174;76m [48;2;246;181;78m [48;2;236;176;71m [48;2;240;177;75m [m
|
||||
[48;2;222;117;34m [48;2;222;115;32m [48;2;205;93;13m [48;2;205;88;9m [48;2;209;88;10m [48;2;210;84;8m [48;2;210;81;6m [48;2;207;80;5m [48;2;208;87;9m [48;2;234;119;39m [48;2;229;121;41m [48;2;241;138;57m [48;2;231;130;50m [48;2;229;126;47m [48;2;214;105;30m [48;2;215;101;28m [48;2;214;97;23m [48;2;207;87;11m [48;2;205;81;5m [48;2;215;101;21m [48;2;245;153;63m [48;2;237;157;61m [48;2;213;136;37m [48;2;223;145;46m [48;2;223;148;51m [m
|
||||
[48;2;220;112;30m [48;2;219;109;28m [48;2;199;82;3m [48;2;208;87;9m [48;2;213;86;10m [48;2;210;84;8m [48;2;206;82;6m [48;2;202;83;5m [48;2;205;94;11m [48;2;232;128;42m [48;2;225;128;40m [48;2;233;137;51m [48;2;227;129;46m [48;2;225;121;44m [48;2;216;107;35m [48;2;211;100;26m [48;2;212;101;25m [48;2;200;85;8m [48;2;208;88;10m [48;2;215;101;19m [48;2;253;156;68m [48;2;245;158;65m [48;2;218;128;35m [48;2;228;139;44m [48;2;229;142;48m [m
|
||||
[48;2;214;107;24m [48;2;214;101;21m [48;2;208;88;10m [48;2;216;92;15m [48;2;216;90;14m [48;2;210;84;8m [48;2;211;89;12m [48;2;199;85;3m [48;2;219;117;28m [48;2;230;136;43m [48;2;235;143;49m [48;2;224;127;37m [48;2;221;113;33m [48;2;211;98;25m [48;2;212;99;24m [48;2;207;97;18m [48;2;235;133;49m [48;2;225;120;37m [48;2;231;117;35m [48;2;204;87;6m [48;2;212;105;20m [48;2;212;110;23m [48;2;209;112;21m [48;2;218;123;32m [48;2;220;123;33m [m
|
||||
[48;2;210;100;19m [48;2;211;99;19m [48;2;210;91;13m [48;2;222;97;21m [48;2;227;103;27m [48;2;224;100;23m [48;2;226;109;30m [48;2;217;107;23m [48;2;244;150;59m [48;2;253;167;71m [48;2;249;162;64m [48;2;218;123;30m [48;2;199;89;10m [48;2;193;75;4m [48;2;221;104;30m [48;2;217;105;26m [48;2;249;149;64m [48;2;230;128;44m [48;2;241;126;46m [48;2;197;78;0m [48;2;219;104;24m [48;2;219;109;28m [48;2;224;119;34m [48;2;218;114;28m [48;2;216;109;25m [m
|
||||
[48;2;213;98;19m [48;2;214;97;19m [48;2;210;91;13m [48;2;218;99;21m [48;2;225;106;28m [48;2;219;102;23m [48;2;223;109;29m [48;2;212;107;24m [48;2;236;148;57m [48;2;245;165;69m [48;2;247;165;65m [48;2;215;123;31m [48;2;199;89;12m [48;2;196;75;7m [48;2;226;103;31m [48;2;221;104;30m [48;2;255;151;71m [48;2;232;127;46m [48;2;244;124;48m [48;2;204;79;5m [48;2;225;106;30m [48;2;223;108;31m [48;2;226;114;36m [48;2;221;108;30m [48;2;217;105;24m [m
|
||||
[48;2;219;104;24m [48;2;215;101;21m [48;2;205;90;10m [48;2;209;95;15m [48;2;205;90;10m [48;2;209;95;15m [48;2;226;114;34m [48;2;225;122;38m [48;2;255;170;81m [48;2;255;176;83m [48;2;255;172;75m [48;2;228;133;44m [48;2;210;95;22m [48;2;205;79;15m [48;2;210;79;12m [48;2;203;78;8m [48;2;223;108;33m [48;2;200;87;11m [48;2;206;83;11m [48;2;191;63;0m [48;2;208;86;13m [48;2;207;87;13m [48;2;201;81;7m [48;2;206;89;14m [48;2;207;90;14m [m
|
||||
[48;2;221;108;28m [48;2;215;106;24m [48;2;234;124;43m [48;2;210;100;19m [48;2;212;102;21m [48;2;200;87;7m [48;2;215;101;21m [48;2;207;100;17m [48;2;237;144;57m [48;2;240;151;63m [48;2;236;146;56m [48;2;221;119;35m [48;2;203;82;14m [48;2;204;70;11m [48;2;203;68;6m [48;2;207;72;8m [48;2;209;81;13m [48;2;206;81;10m [48;2;211;86;14m [48;2;204;77;6m [48;2;203;73;3m [48;2;203;76;5m [48;2;206;83;11m [48;2;216;96;23m [48;2;215;93;18m [m
|
||||
[48;2;222;117;34m [48;2;219;114;31m [48;2;234;131;48m [48;2;218;115;31m [48;2;219;111;29m [48;2;202;90;9m [48;2;206;86;8m [48;2;199;84;5m [48;2;229;126;45m [48;2;234;136;53m [48;2;232;132;48m [48;2;218;107;31m [48;2;204;76;14m [48;2;204;65;9m [48;2;203;62;5m [48;2;205;67;4m [48;2;194;67;0m [48;2;206;89;12m [48;2;204;92;14m [48;2;200;85;8m [48;2;198;69;0m [48;2;202;70;0m [48;2;198;76;1m [48;2;212;93;17m [48;2;210;91;13m [m
|
||||
[48;2;229;134;48m [48;2;228;133;46m [48;2;239;146;59m [48;2;235;140;53m [48;2;246;141;58m [48;2;219;104;24m [48;2;207;80;5m [48;2;197;71;0m [48;2;205;87;13m [48;2;213;97;23m [48;2;212;97;19m [48;2;197;74;4m [48;2;205;66;11m [48;2;204;57;7m [48;2;202;55;2m [48;2;196;63;1m [48;2;195;82;4m [48;2;255;164;78m [48;2;255;178;87m [48;2;255;165;78m [48;2;206;84;7m [48;2;209;77;3m [48;2;206;85;5m [48;2;235;121;39m [48;2;229;120;36m [m
|
||||
[48;2;227;132;45m [48;2;226;130;44m [48;2;235;142;55m [48;2;238;143;57m [48;2;241;138;55m [48;2;216;104;23m [48;2;199;75;0m [48;2;201;74;1m [48;2;212;87;16m [48;2;221;98;28m [48;2;224;99;27m [48;2;210;79;14m [48;2;203;62;7m [48;2;201;54;3m [48;2;197;53;0m [48;2;191;60;0m [48;2;189;83;5m [48;2;255;168;79m [48;2;244;170;77m [48;2;247;164;73m [48;2;207;87;9m [48;2;210;79;5m [48;2;204;82;3m [48;2;235;121;39m [48;2;228;121;36m [m
|
||||
[48;2;239;135;49m [48;2;237;135;49m [48;2;236;136;49m [48;2;255;161;74m [48;2;255;164;78m [48;2;220;113;28m [48;2;202;88;6m [48;2;200;83;5m [48;2;197;77;4m [48;2;188;62;0m [48;2;196;63;0m [48;2;197;59;0m [48;2;198;57;0m [48;2;203;62;5m [48;2;204;66;5m [48;2;197;69;3m [48;2;206;95;21m [48;2;255;185;104m [48;2;255;191;103m [48;2;255;162;78m [48;2;212;89;17m [48;2;211;79;10m [48;2;205;81;7m [48;2;235;115;39m [48;2;228;111;32m [m
|
||||
[48;2;201;87;7m [48;2;201;89;8m [48;2;205;97;15m [48;2;209;102;20m [48;2;210;100;19m [48;2;206;98;16m [48;2;233;128;45m [48;2;238;131;49m [48;2;254;138;63m [48;2;204;81;11m [48;2;210;75;13m [48;2;195;54;0m [48;2;203;65;4m [48;2;209;70;10m [48;2;210;75;9m [48;2;206;78;7m [48;2;195;80;7m [48;2;215;109;33m [48;2;211;112;32m [48;2;205;99;23m [48;2;194;66;0m [48;2;201;66;2m [48;2;206;78;9m [48;2;207;85;10m [48;2;204;81;7m [m
|
||||
[48;2;208;86;11m [48;2;204;81;7m [48;2;212;93;17m [48;2;215;95;19m [48;2;217;97;22m [48;2;211;99;21m [48;2;230;135;51m [48;2;225;132;47m [48;2;247;144;62m [48;2;194;79;4m [48;2;209;76;9m [48;2;198;58;0m [48;2;203;65;2m [48;2;208;73;7m [48;2;211;81;11m [48;2;209;84;10m [48;2;200;78;5m [48;2;222;101;30m [48;2;224;105;36m [48;2;216;90;25m [48;2;202;63;7m [48;2;202;61;4m [48;2;207;77;9m [48;2;205;81;7m [48;2;204;79;5m [m
|
||||
[48;2;208;98;21m [48;2;211;98;23m [48;2;211;93;19m [48;2;201;81;7m [48;2;204;81;9m [48;2;208;93;18m [48;2;246;147;67m [48;2;247;151;69m [48;2;255;166;86m [48;2;204;87;10m [48;2;218;86;17m [48;2;205;68;2m [48;2;207;72;6m [48;2;212;82;12m [48;2;216;91;17m [48;2;216;95;17m [48;2;235;115;39m [48;2;211;88;18m [48;2;208;80;14m [48;2;199;63;4m [48;2;200;58;6m [48;2;200;61;6m [48;2;209;83;14m [48;2;220;103;26m [48;2;217;105;26m [m
|
||||
[48;2;243;168;80m [48;2;251;169;83m [48;2;231;130;50m [48;2;204;91;16m [48;2;208;93;18m [48;2;217;102;27m [48;2;215;102;26m [48;2;216;103;27m [48;2;216;96;21m [48;2;194;67;0m [48;2;202;68;0m [48;2;207;72;6m [48;2;211;84;15m [48;2;213;90;18m [48;2;217;97;22m [48;2;218;101;22m [48;2;237;124;46m [48;2;202;87;12m [48;2;211;83;17m [48;2;210;77;15m [48;2;207;68;13m [48;2;200;69;9m [48;2;209;96;20m [48;2;255;161;74m [48;2;246;161;67m [m
|
||||
[48;2;237;175;80m [48;2;245;173;81m [48;2;227;136;51m [48;2;197;94;12m [48;2;201;95;15m [48;2;214;104;25m [48;2;220;105;28m [48;2;219;100;24m [48;2;221;94;21m [48;2;200;67;0m [48;2;200;63;0m [48;2;205;67;4m [48;2;213;84;18m [48;2;213;90;20m [48;2;217;97;24m [48;2;215;100;23m [48;2;238;127;48m [48;2;203;93;14m [48;2;202;84;10m [48;2;205;80;11m [48;2;199;70;6m [48;2;197;73;6m [48;2;201;93;14m [48;2;255;164;73m [48;2;244;164;66m [m
|
||||
[48;2;254;176;84m [48;2;255;176;85m [48;2;255;170;81m [48;2;218;125;38m [48;2;217;124;37m [48;2;234;137;51m [48;2;207;100;17m [48;2;210;96;16m [48;2;205;80;9m [48;2;196;63;0m [48;2;201;58;0m [48;2;206;63;4m [48;2;210;72;11m [48;2;207;76;13m [48;2;208;82;13m [48;2;203;85;11m [48;2;208;96;15m [48;2;212;105;20m [48;2;209;104;19m [48;2;236;129;46m [48;2;216;101;26m [48;2;214;99;24m [48;2;204;94;11m [48;2;246;142;54m [48;2;235;140;49m [m
|
||||
[48;2;210;120;29m [48;2;212;122;32m [48;2;207;117;27m [48;2;245;153;63m [48;2;236;136;49m [48;2;240;130;49m [48;2;223;103;30m [48;2;214;84;16m [48;2;218;78;18m [48;2;212;68;12m [48;2;208;67;10m [48;2;206;70;9m [48;2;203;75;9m [48;2;199;76;6m [48;2;207;92;15m [48;2;229;122;37m [48;2;226;129;39m [48;2;240;143;53m [48;2;237;132;49m [48;2;239;129;48m [48;2;205;94;11m [48;2;214;102;19m [48;2;206;99;14m [m
|
||||
[48;2;218;121;31m [48;2;219;122;32m [48;2;222;123;33m [48;2;217;120;30m [48;2;212;120;28m [48;2;244;152;60m [48;2;228;133;42m [48;2;233;129;43m [48;2;220;103;26m [48;2;211;84;13m [48;2;216;83;18m [48;2;206;68;8m [48;2;202;66;7m [48;2;205;68;10m [48;2;207;73;11m [48;2;202;76;9m [48;2;207;90;16m [48;2;231;124;42m [48;2;224;127;37m [48;2;240;145;54m [48;2;226;129;41m [48;2;232;128;42m [48;2;207;92;13m [48;2;219;102;23m [48;2;215;101;21m [m
|
Loading…
x
Reference in New Issue
Block a user