diff --git a/src/main/resources/colors.txt b/colorschemes/default.txt similarity index 97% rename from src/main/resources/colors.txt rename to colorschemes/default.txt index bc39be7d..dce3a714 100644 --- a/src/main/resources/colors.txt +++ b/colorschemes/default.txt @@ -1,175 +1,175 @@ -Stone -1 120 120 120 255 96 96 96 255 60 60 60 255 48 48 48 255 -Grass -2 117 176 73 255 93 140 58 255 58 88 36 255 46 70 29 255 -Dirt -3 134 96 67 255 107 76 53 255 67 48 33 255 53 38 26 255 -Cobblestone -4 115 115 115 255 92 92 92 255 57 57 57 255 46 46 46 255 -Wooden Plank -5 157 128 79 255 125 102 63 255 78 64 39 255 62 51 31 255 -Sappling -6 120 120 120 0 96 96 96 0 60 60 60 0 48 48 48 0 -Bedrock -7 84 84 84 255 67 67 67 255 42 42 42 255 33 33 33 255 -Water -8 38 92 255 51 30 73 204 51 19 46 127 51 15 36 102 51 -Stationary Water -9 38 92 255 51 30 73 204 51 19 46 127 51 15 36 102 51 -Lava -10 255 90 0 255 204 72 0 255 127 45 0 255 102 36 0 255 -Stationary Lava -11 255 90 0 255 204 72 0 255 127 45 0 255 102 36 0 255 -Sand -12 218 210 158 255 174 168 126 255 109 105 79 255 87 84 63 255 -Gravel -13 136 126 126 255 108 100 100 255 68 63 63 255 54 50 50 255 -Gold Ore -14 143 140 125 255 114 112 100 255 71 70 62 255 57 56 50 255 -Iron Ore -15 136 130 127 255 108 104 101 255 68 65 63 255 54 52 50 255 -Coal Ore -16 115 115 115 255 92 92 92 255 57 57 57 255 46 46 46 255 -Wood -17 102 81 51 255 81 64 40 255 51 40 25 255 40 32 20 255 -Leaves -18 60 192 41 100 48 153 32 100 30 96 20 100 24 76 16 100 -Sponge -19 193 193 65 255 174 174 47 255 97 97 5 255 76 76 20 255 -Glass -20 255 255 255 64 204 204 204 64 127 127 127 64 102 102 102 64 -Lapis Lazuli Ore -21 23 68 196 255 18 56 158 255 14 43 122 255 14 43 78 255 -Lapis Lazuli Block -22 23 68 196 255 18 56 158 255 14 43 122 255 14 43 78 255 -Dispenser -23 96 96 96 255 76 76 76 255 48 48 48 255 38 38 38 255 -Sandstone -24 218 210 158 255 174 168 126 255 109 105 79 255 87 84 63 255 -Note Block -25 125 91 38 255 100 72 30 255 62 45 19 255 50 36 15 255 -Aqua Green Cloth -26 43 192 117 255 38 168 101 255 34 150 90 255 29 130 78 255 -Cyan Cloth -27 43 192 192 255 36 185 185 255 29 130 130 255 22 99 99 255 -Blue Cloth -28 0 0 255 255 0 0 204 255 0 0 127 255 0 0 102 255 -Purple Cloth -29 101 101 188 255 95 95 175 255 86 86 160 255 78 78 145 255 -Indigo Cloth -30 113 41 186 255 99 38 165 255 85 32 142 255 72 27 119 255 -Violet Cloth -31 156 65 198 255 132 55 168 255 112 47 142 255 84 35 107 255 -Magenta Cloth -32 187 42 187 255 160 36 160 255 135 31 135 255 112 25 112 255 -Pink Cloth -33 192 43 117 255 168 38 103 255 142 32 87 255 127 29 78 255 -Black Cloth -34 0 0 0 255 0 0 0 255 0 0 0 255 0 0 0 255 -Wool -35 222 222 222 255 177 177 177 255 111 111 111 255 88 88 88 255 -Gray Cloth -36 125 125 125 255 114 114 114 255 104 104 104 255 86 86 86 255 -Yellow Flower -37 255 255 0 255 204 204 0 255 127 127 0 255 102 102 0 255 -Red Rose -38 255 0 0 255 204 0 0 255 127 0 0 255 102 0 0 255 -Brown Mushroom -39 204 153 120 32 145 109 85 32 114 86 67 32 73 64 58 32 -Red Mushroom -40 255 43 43 32 196 29 38 32 186 105 109 32 124 64 64 32 -Gold Block -41 232 245 46 255 185 196 36 255 116 122 23 255 92 98 18 255 -Iron Block -42 191 191 191 255 152 152 152 255 95 95 95 255 76 76 76 255 -Double Stone Slab -43 200 200 200 255 160 160 160 255 100 100 100 255 80 80 80 255 -Stone Slab -44 200 200 200 255 160 160 160 255 100 100 100 255 80 80 80 255 -Brick -45 170 86 62 255 136 68 49 255 85 43 31 255 68 34 24 255 -TNT -46 160 83 65 255 128 66 52 255 80 41 32 255 64 33 26 255 -Bookshelf -54 125 91 38 192 100 72 30 192 62 45 19 192 50 36 15 192 -Moss Stone -48 115 115 115 255 92 92 92 255 57 57 57 255 46 46 46 255 -Obsidian -49 26 11 43 255 20 8 34 255 13 5 21 255 10 4 17 255 -Torch -50 159 127 80 255 98 88 20 0 245 220 50 255 196 176 40 0 -Fire -51 255 170 30 200 204 136 24 200 127 85 15 200 102 68 12 200 -Monster Spawner -52 0 150 110 196 0 150 130 196 0 150 110 196 0 150 130 196 -Wooden Stair -53 157 128 79 255 125 102 63 255 78 64 39 255 62 51 31 255 -Chest -54 125 91 38 255 100 72 30 255 62 45 19 255 50 36 15 255 - -Diamond Ore -56 129 140 143 255 103 112 114 255 64 70 71 255 51 56 57 255 -Diamond Block -57 45 166 152 255 36 132 121 255 22 83 76 255 18 66 60 255 -Workbench -58 114 88 56 255 91 70 44 255 57 44 28 255 45 35 22 255 -Crops -59 146 192 0 255 116 153 0 255 73 96 0 255 58 76 0 255 -Farmland -60 95 58 30 255 76 46 24 255 47 29 15 255 38 23 12 255 -Furnace -61 96 96 96 255 76 76 76 255 48 48 48 255 38 38 38 255 -Burning Furnace -62 96 96 96 255 76 76 76 255 48 48 48 255 38 38 38 255 -Sign Post -63 111 91 54 255 88 72 43 255 55 45 27 255 44 36 21 255 -Wooden Door -64 136 109 67 255 108 87 53 255 68 54 33 255 54 43 26 255 -Ladder -65 181 140 64 32 144 112 51 32 90 70 32 32 72 56 25 32 -Minecart Tracks -66 150 134 102 180 120 107 81 180 75 67 51 180 60 53 40 180 -Cobblestone Stairs -67 115 115 115 255 92 92 92 255 57 57 57 255 46 46 46 255 - -Iron Door -71 191 191 191 255 152 152 152 255 95 95 95 255 76 76 76 255 - -Redstone Ore -73 131 107 107 255 104 85 85 255 65 53 53 255 52 42 42 255 -Glowing Redstone Ore -74 131 107 107 255 104 85 85 255 65 53 53 255 52 42 42 255 -Redstone Torch off -75 159 127 80 255 72 56 25 0 181 140 64 255 144 112 51 0 -Redstone Torch on -76 159 127 80 255 102 0 0 0 255 0 0 255 204 0 0 0 -Snow -78 255 255 255 255 204 204 204 255 127 127 127 255 102 102 102 255 -Ice -79 83 113 163 51 66 90 130 51 41 56 81 51 33 45 65 51 -Snow Block -80 250 250 250 255 200 200 200 255 125 125 125 255 100 100 100 255 -Cactus -81 25 120 25 255 20 96 20 255 12 60 12 255 10 48 10 255 -Clay -82 151 157 169 255 120 125 135 255 75 78 84 255 60 62 67 255 -Sugar Cane -83 193 234 150 255 154 187 120 255 96 117 75 255 77 93 60 255 -Jukebox -84 125 91 38 255 100 72 30 255 62 45 19 255 50 36 15 255 -Fence -85 127 98 49 96 95 72 33 96 48 34 9 96 32 21 21 96 -Pumpkin -86 255 115 0 200 204 92 0 200 126 57 0 200 102 46 0 200 -Netherrack -87 166 89 89 255 141 80 62 255 135 15 15 255 96 6 6 255 -Soulsand -88 133 109 94 255 121 97 82 255 90 70 57 255 79 59 46 255 -Glowstone -89 249 212 156 255 255 188 94 255 192 143 70 255 122 91 44 255 -Portal -90 140 0 196 128 120 0 196 128 140 0 196 128 120 0 196 128 -Jack-o-lantern -91 255 115 0 255 204 92 0 255 126 57 0 255 102 46 0 255 -Cake Block -92 234 234 234 255 210 210 210 255 203 203 203 255 190 190 190 255 +Stone +1 120 120 120 255 96 96 96 255 60 60 60 255 48 48 48 255 +Grass +2 117 176 73 255 93 140 58 255 58 88 36 255 46 70 29 255 +Dirt +3 134 96 67 255 107 76 53 255 67 48 33 255 53 38 26 255 +Cobblestone +4 115 115 115 255 92 92 92 255 57 57 57 255 46 46 46 255 +Wooden Plank +5 157 128 79 255 125 102 63 255 78 64 39 255 62 51 31 255 +Sappling +6 120 120 120 0 96 96 96 0 60 60 60 0 48 48 48 0 +Bedrock +7 84 84 84 255 67 67 67 255 42 42 42 255 33 33 33 255 +Water +8 38 92 255 51 30 73 204 51 19 46 127 51 15 36 102 51 +Stationary Water +9 38 92 255 51 30 73 204 51 19 46 127 51 15 36 102 51 +Lava +10 255 90 0 255 204 72 0 255 127 45 0 255 102 36 0 255 +Stationary Lava +11 255 90 0 255 204 72 0 255 127 45 0 255 102 36 0 255 +Sand +12 218 210 158 255 174 168 126 255 109 105 79 255 87 84 63 255 +Gravel +13 136 126 126 255 108 100 100 255 68 63 63 255 54 50 50 255 +Gold Ore +14 143 140 125 255 114 112 100 255 71 70 62 255 57 56 50 255 +Iron Ore +15 136 130 127 255 108 104 101 255 68 65 63 255 54 52 50 255 +Coal Ore +16 115 115 115 255 92 92 92 255 57 57 57 255 46 46 46 255 +Wood +17 102 81 51 255 81 64 40 255 51 40 25 255 40 32 20 255 +Leaves +18 60 192 41 100 48 153 32 100 30 96 20 100 24 76 16 100 +Sponge +19 193 193 65 255 174 174 47 255 97 97 5 255 76 76 20 255 +Glass +20 255 255 255 64 204 204 204 64 127 127 127 64 102 102 102 64 +Lapis Lazuli Ore +21 23 68 196 255 18 56 158 255 14 43 122 255 14 43 78 255 +Lapis Lazuli Block +22 23 68 196 255 18 56 158 255 14 43 122 255 14 43 78 255 +Dispenser +23 96 96 96 255 76 76 76 255 48 48 48 255 38 38 38 255 +Sandstone +24 218 210 158 255 174 168 126 255 109 105 79 255 87 84 63 255 +Note Block +25 125 91 38 255 100 72 30 255 62 45 19 255 50 36 15 255 +Aqua Green Cloth +26 43 192 117 255 38 168 101 255 34 150 90 255 29 130 78 255 +Cyan Cloth +27 43 192 192 255 36 185 185 255 29 130 130 255 22 99 99 255 +Blue Cloth +28 0 0 255 255 0 0 204 255 0 0 127 255 0 0 102 255 +Purple Cloth +29 101 101 188 255 95 95 175 255 86 86 160 255 78 78 145 255 +Indigo Cloth +30 113 41 186 255 99 38 165 255 85 32 142 255 72 27 119 255 +Violet Cloth +31 156 65 198 255 132 55 168 255 112 47 142 255 84 35 107 255 +Magenta Cloth +32 187 42 187 255 160 36 160 255 135 31 135 255 112 25 112 255 +Pink Cloth +33 192 43 117 255 168 38 103 255 142 32 87 255 127 29 78 255 +Black Cloth +34 0 0 0 255 0 0 0 255 0 0 0 255 0 0 0 255 +Wool +35 222 222 222 255 177 177 177 255 111 111 111 255 88 88 88 255 +Gray Cloth +36 125 125 125 255 114 114 114 255 104 104 104 255 86 86 86 255 +Yellow Flower +37 255 255 0 255 204 204 0 255 127 127 0 255 102 102 0 255 +Red Rose +38 255 0 0 255 204 0 0 255 127 0 0 255 102 0 0 255 +Brown Mushroom +39 204 153 120 32 145 109 85 32 114 86 67 32 73 64 58 32 +Red Mushroom +40 255 43 43 32 196 29 38 32 186 105 109 32 124 64 64 32 +Gold Block +41 232 245 46 255 185 196 36 255 116 122 23 255 92 98 18 255 +Iron Block +42 191 191 191 255 152 152 152 255 95 95 95 255 76 76 76 255 +Double Stone Slab +43 200 200 200 255 160 160 160 255 100 100 100 255 80 80 80 255 +Stone Slab +44 200 200 200 255 160 160 160 255 100 100 100 255 80 80 80 255 +Brick +45 170 86 62 255 136 68 49 255 85 43 31 255 68 34 24 255 +TNT +46 160 83 65 255 128 66 52 255 80 41 32 255 64 33 26 255 +Bookshelf +54 125 91 38 192 100 72 30 192 62 45 19 192 50 36 15 192 +Moss Stone +48 115 115 115 255 92 92 92 255 57 57 57 255 46 46 46 255 +Obsidian +49 26 11 43 255 20 8 34 255 13 5 21 255 10 4 17 255 +Torch +50 159 127 80 255 98 88 20 0 245 220 50 255 196 176 40 0 +Fire +51 255 170 30 200 204 136 24 200 127 85 15 200 102 68 12 200 +Monster Spawner +52 0 150 110 196 0 150 130 196 0 150 110 196 0 150 130 196 +Wooden Stair +53 157 128 79 255 125 102 63 255 78 64 39 255 62 51 31 255 +Chest +54 125 91 38 255 100 72 30 255 62 45 19 255 50 36 15 255 + +Diamond Ore +56 129 140 143 255 103 112 114 255 64 70 71 255 51 56 57 255 +Diamond Block +57 45 166 152 255 36 132 121 255 22 83 76 255 18 66 60 255 +Workbench +58 114 88 56 255 91 70 44 255 57 44 28 255 45 35 22 255 +Crops +59 146 192 0 255 116 153 0 255 73 96 0 255 58 76 0 255 +Farmland +60 95 58 30 255 76 46 24 255 47 29 15 255 38 23 12 255 +Furnace +61 96 96 96 255 76 76 76 255 48 48 48 255 38 38 38 255 +Burning Furnace +62 96 96 96 255 76 76 76 255 48 48 48 255 38 38 38 255 +Sign Post +63 111 91 54 255 88 72 43 255 55 45 27 255 44 36 21 255 +Wooden Door +64 136 109 67 255 108 87 53 255 68 54 33 255 54 43 26 255 +Ladder +65 181 140 64 32 144 112 51 32 90 70 32 32 72 56 25 32 +Minecart Tracks +66 150 134 102 180 120 107 81 180 75 67 51 180 60 53 40 180 +Cobblestone Stairs +67 115 115 115 255 92 92 92 255 57 57 57 255 46 46 46 255 + +Iron Door +71 191 191 191 255 152 152 152 255 95 95 95 255 76 76 76 255 + +Redstone Ore +73 131 107 107 255 104 85 85 255 65 53 53 255 52 42 42 255 +Glowing Redstone Ore +74 131 107 107 255 104 85 85 255 65 53 53 255 52 42 42 255 +Redstone Torch off +75 159 127 80 255 72 56 25 0 181 140 64 255 144 112 51 0 +Redstone Torch on +76 159 127 80 255 102 0 0 0 255 0 0 255 204 0 0 0 +Snow +78 255 255 255 255 204 204 204 255 127 127 127 255 102 102 102 255 +Ice +79 83 113 163 51 66 90 130 51 41 56 81 51 33 45 65 51 +Snow Block +80 250 250 250 255 200 200 200 255 125 125 125 255 100 100 100 255 +Cactus +81 25 120 25 255 20 96 20 255 12 60 12 255 10 48 10 255 +Clay +82 151 157 169 255 120 125 135 255 75 78 84 255 60 62 67 255 +Sugar Cane +83 193 234 150 255 154 187 120 255 96 117 75 255 77 93 60 255 +Jukebox +84 125 91 38 255 100 72 30 255 62 45 19 255 50 36 15 255 +Fence +85 127 98 49 96 95 72 33 96 48 34 9 96 32 21 21 96 +Pumpkin +86 255 115 0 200 204 92 0 200 126 57 0 200 102 46 0 200 +Netherrack +87 166 89 89 255 141 80 62 255 135 15 15 255 96 6 6 255 +Soulsand +88 133 109 94 255 121 97 82 255 90 70 57 255 79 59 46 255 +Glowstone +89 249 212 156 255 255 188 94 255 192 143 70 255 122 91 44 255 +Portal +90 140 0 196 128 120 0 196 128 140 0 196 128 120 0 196 128 +Jack-o-lantern +91 255 115 0 255 204 92 0 255 126 57 0 255 102 46 0 255 +Cake Block +92 234 234 234 255 210 210 210 255 203 203 203 255 190 190 190 255 diff --git a/colorschemes/ovocean.txt b/colorschemes/ovocean.txt new file mode 100644 index 00000000..dc32ee04 --- /dev/null +++ b/colorschemes/ovocean.txt @@ -0,0 +1,175 @@ +Stone +1 119 104 84 255 104 95 80 255 96 87 72 255 77 68 53 255 +Grass +2 75 156 43 255 56 117 32 255 35 104 10 255 32 82 0 255 +Dirt +3 134 96 67 255 107 76 53 255 67 48 33 255 68 49 33 255 +Cobblestone +4 115 115 115 255 92 92 92 255 57 57 57 255 46 46 46 255 +Wooden Plank +5 157 128 79 255 125 102 63 255 78 64 39 255 62 51 31 255 +Sappling +6 120 120 120 0 96 96 96 0 60 60 60 0 48 48 48 0 +Bedrock +7 84 84 84 255 67 67 67 255 42 42 42 255 33 33 33 255 +Water +8 21 88 125 80 7 70 117 80 6 68 115 80 5 53 90 80 +Stationary Water +9 21 88 125 80 7 70 117 80 6 68 115 80 5 53 90 80 +Lava +10 255 90 0 255 204 72 0 255 127 45 0 255 102 36 0 255 +Stationary Lava +11 255 90 0 255 204 72 0 255 127 45 0 255 102 36 0 255 +Sand +12 214 182 111 255 203 171 100 255 186 154 83 255 173 141 70 255 +Gravel +13 136 126 126 255 108 100 100 255 68 63 63 255 54 50 50 255 +Gold Ore +14 143 140 125 255 114 112 100 255 71 70 62 255 57 56 50 255 +Iron Ore +15 136 130 127 255 108 104 101 255 68 65 63 255 54 52 50 255 +Coal Ore +16 115 115 115 255 92 92 92 255 57 57 57 255 46 46 46 255 +Wood +17 102 81 51 255 81 64 40 255 51 40 25 255 40 32 20 255 +Leaves +18 23 68 6 100 12 56 0 100 6 52 0 100 0 42 0 100 +Sponge +19 193 193 65 255 174 174 47 255 97 97 5 255 76 76 20 255 +Glass +20 255 255 255 64 204 204 204 64 127 127 127 64 102 102 102 64 +Lapis Lazuli Ore +21 23 68 196 255 18 56 158 255 14 43 122 255 14 43 78 255 +Lapis Lazuli Block +22 23 68 196 255 18 56 158 255 14 43 122 255 14 43 78 255 +Dispenser +23 96 96 96 255 76 76 76 255 48 48 48 255 38 38 38 255 +Sandstone +24 214 182 111 255 203 171 100 255 186 154 83 255 173 141 70 255 +Note Block +25 125 91 38 255 100 72 30 255 62 45 19 255 50 36 15 255 +Aqua Green Cloth +26 43 192 117 255 38 168 101 255 34 150 90 255 29 130 78 255 +Cyan Cloth +27 43 192 192 255 36 185 185 255 29 130 130 255 22 99 99 255 +Blue Cloth +28 0 0 255 255 0 0 204 255 0 0 127 255 0 0 102 255 +Purple Cloth +29 101 101 188 255 95 95 175 255 86 86 160 255 78 78 145 255 +Indigo Cloth +30 113 41 186 255 99 38 165 255 85 32 142 255 72 27 119 255 +Violet Cloth +31 156 65 198 255 132 55 168 255 112 47 142 255 84 35 107 255 +Magenta Cloth +32 187 42 187 255 160 36 160 255 135 31 135 255 112 25 112 255 +Pink Cloth +33 192 43 117 255 168 38 103 255 142 32 87 255 127 29 78 255 +Black Cloth +34 0 0 0 255 0 0 0 255 0 0 0 255 0 0 0 255 +Wool +35 222 222 222 255 177 177 177 255 111 111 111 255 88 88 88 255 +Gray Cloth +36 125 125 125 255 114 114 114 255 104 104 104 255 86 86 86 255 +Yellow Flower +37 255 255 0 255 204 204 0 255 127 127 0 255 102 102 0 255 +Red Rose +38 255 0 0 255 204 0 0 255 127 0 0 255 102 0 0 255 +Brown Mushroom +39 204 153 120 32 145 109 85 32 114 86 67 32 73 64 58 32 +Red Mushroom +40 255 43 43 32 196 29 38 32 186 105 109 32 124 64 64 32 +Gold Block +41 232 245 46 255 185 196 36 255 116 122 23 255 92 98 18 255 +Iron Block +42 191 191 191 255 152 152 152 255 95 95 95 255 76 76 76 255 +Double Stone Slab +43 200 200 200 255 160 160 160 255 100 100 100 255 80 80 80 255 +Stone Slab +44 200 200 200 255 160 160 160 255 100 100 100 255 80 80 80 255 +Brick +45 170 86 62 255 136 68 49 255 85 43 31 255 68 34 24 255 +TNT +46 160 83 65 255 128 66 52 255 80 41 32 255 64 33 26 255 +Bookshelf +54 125 91 38 192 100 72 30 192 62 45 19 192 50 36 15 192 +Moss Stone +48 115 115 115 255 92 92 92 255 57 57 57 255 46 46 46 255 +Obsidian +49 26 11 43 255 20 8 34 255 13 5 21 255 10 4 17 255 +Torch +50 159 127 80 255 98 88 20 0 245 220 50 255 196 176 40 0 +Fire +51 255 170 30 200 204 136 24 200 127 85 15 200 102 68 12 200 +Monster Spawner +52 0 150 110 196 0 150 130 196 0 150 110 196 0 150 130 196 +Wooden Stair +53 157 128 79 255 125 102 63 255 78 64 39 255 62 51 31 255 +Chest +54 125 91 38 255 100 72 30 255 62 45 19 255 50 36 15 255 + +Diamond Ore +56 129 140 143 255 103 112 114 255 64 70 71 255 51 56 57 255 +Diamond Block +57 45 166 152 255 36 132 121 255 22 83 76 255 18 66 60 255 +Workbench +58 114 88 56 255 91 70 44 255 57 44 28 255 45 35 22 255 +Crops +59 146 192 0 255 116 153 0 255 73 96 0 255 58 76 0 255 +Farmland +60 95 58 30 255 76 46 24 255 47 29 15 255 38 23 12 255 +Furnace +61 96 96 96 255 76 76 76 255 48 48 48 255 38 38 38 255 +Burning Furnace +62 96 96 96 255 76 76 76 255 48 48 48 255 38 38 38 255 +Sign Post +63 111 91 54 255 88 72 43 255 55 45 27 255 44 36 21 255 +Wooden Door +64 136 109 67 255 108 87 53 255 68 54 33 255 54 43 26 255 +Ladder +65 181 140 64 32 144 112 51 32 90 70 32 32 72 56 25 32 +Minecart Tracks +66 150 134 102 180 120 107 81 180 75 67 51 180 60 53 40 180 +Cobblestone Stairs +67 115 115 115 255 92 92 92 255 57 57 57 255 46 46 46 255 + +Iron Door +71 191 191 191 255 152 152 152 255 95 95 95 255 76 76 76 255 + +Redstone Ore +73 131 107 107 255 104 85 85 255 65 53 53 255 52 42 42 255 +Glowing Redstone Ore +74 131 107 107 255 104 85 85 255 65 53 53 255 52 42 42 255 +Redstone Torch off +75 159 127 80 255 72 56 25 0 181 140 64 255 144 112 51 0 +Redstone Torch on +76 159 127 80 255 102 0 0 0 255 0 0 255 204 0 0 0 +Snow +78 255 255 255 255 204 204 204 255 127 127 127 255 102 102 102 255 +Ice +79 83 113 163 51 66 90 130 51 41 56 81 51 33 45 65 51 +Snow Block +80 250 250 250 255 200 200 200 255 125 125 125 255 100 100 100 255 +Cactus +81 25 120 25 255 20 96 20 255 12 60 12 255 10 48 10 255 +Clay +82 151 157 169 255 120 125 135 255 75 78 84 255 60 62 67 255 +Sugar Cane +83 193 234 150 255 154 187 120 255 96 117 75 255 77 93 60 255 +Jukebox +84 125 91 38 255 100 72 30 255 62 45 19 255 50 36 15 255 +Fence +85 127 98 49 96 95 72 33 96 48 34 9 96 32 21 21 96 +Pumpkin +86 255 115 0 200 204 92 0 200 126 57 0 200 102 46 0 200 +Netherrack +87 166 89 89 255 141 80 62 255 135 15 15 255 96 6 6 255 +Soulsand +88 133 109 94 255 121 97 82 255 90 70 57 255 79 59 46 255 +Glowstone +89 249 212 156 255 255 188 94 255 192 143 70 255 122 91 44 255 +Portal +90 140 0 196 128 120 0 196 128 140 0 196 128 120 0 196 128 +Jack-o-lantern +91 255 115 0 255 204 92 0 255 126 57 0 255 102 46 0 255 +Cake Block +92 234 234 234 255 210 210 210 255 203 203 203 255 190 190 190 255 diff --git a/configuration.txt b/configuration.txt index d9421ebc..99891db5 100755 --- a/configuration.txt +++ b/configuration.txt @@ -43,6 +43,7 @@ worlds: - class: org.dynmap.kzedmap.DefaultTileRenderer prefix: t maximumheight: 127 + colorscheme: default - class: org.dynmap.kzedmap.CaveTileRenderer prefix: ct maximumheight: 127 @@ -54,6 +55,7 @@ worlds: - class: org.dynmap.kzedmap.DefaultTileRenderer prefix: nt maximumheight: 64 + colorscheme: default web: # Handles the clientside updates differently only enable if using jsonfile diff --git a/src/main/assembly/package.xml b/src/main/assembly/package.xml index 6beca938..d27afbf9 100644 --- a/src/main/assembly/package.xml +++ b/src/main/assembly/package.xml @@ -20,6 +20,10 @@ ${project.basedir}/web /dynmap/web + + ${project.basedir}/colorschemes + /dynmap/colorschemes + ${project.basedir} /dynmap/ diff --git a/src/main/java/org/dynmap/ColorScheme.java b/src/main/java/org/dynmap/ColorScheme.java new file mode 100644 index 00000000..49ba68da --- /dev/null +++ b/src/main/java/org/dynmap/ColorScheme.java @@ -0,0 +1,85 @@ +package org.dynmap; + +import java.awt.Color; +import java.io.File; +import java.io.FileInputStream; +import java.io.FileNotFoundException; +import java.io.InputStream; +import java.util.HashMap; +import java.util.Scanner; +import java.util.logging.Level; +import java.util.logging.Logger; + +import org.dynmap.debug.Debug; + +public class ColorScheme { + protected static final Logger log = Logger.getLogger("Minecraft"); + private static final HashMap cache = new HashMap(); + + public String name; + public java.util.Map colors; + + public ColorScheme(String name, java.util.Map colors) { + this.name = name; + this.colors = colors; + } + + private static File getColorSchemeDirectory() { + return new File(DynmapPlugin.dataDirectory, "colorschemes"); + } + + public static ColorScheme getScheme(String name) { + if (name == null) + name = "default"; + ColorScheme scheme = cache.get(name); + if (scheme == null) { + scheme = loadScheme(name); + cache.put(name, scheme); + } + return scheme; + } + + public static ColorScheme loadScheme(String name) { + File colorSchemeFile = new File(getColorSchemeDirectory(), name + ".txt"); + java.util.Map colors = new HashMap(); + InputStream stream; + try { + Debug.debug("Loading colors from '" + colorSchemeFile + "'..."); + stream = new FileInputStream(colorSchemeFile); + + Scanner scanner = new Scanner(stream); + int nc = 0; + while (scanner.hasNextLine()) { + String line = scanner.nextLine(); + if (line.startsWith("#") || line.equals("")) { + continue; + } + + String[] split = line.split("\t"); + if (split.length < 17) { + continue; + } + + Integer id = new Integer(split[0]); + + Color[] c = new Color[4]; + + /* store colors by raycast sequence number */ + c[0] = new Color(Integer.parseInt(split[1]), Integer.parseInt(split[2]), Integer.parseInt(split[3]), Integer.parseInt(split[4])); + c[3] = new Color(Integer.parseInt(split[5]), Integer.parseInt(split[6]), Integer.parseInt(split[7]), Integer.parseInt(split[8])); + c[1] = new Color(Integer.parseInt(split[9]), Integer.parseInt(split[10]), Integer.parseInt(split[11]), Integer.parseInt(split[12])); + c[2] = new Color(Integer.parseInt(split[13]), Integer.parseInt(split[14]), Integer.parseInt(split[15]), Integer.parseInt(split[16])); + + colors.put(id, c); + nc += 1; + } + scanner.close(); + } catch (RuntimeException e) { + log.log(Level.SEVERE, "Could not load colors '" + name + "' ('" + colorSchemeFile + "').", e); + return null; + } catch (FileNotFoundException e) { + log.log(Level.SEVERE, "Could not load colors '" + name + "' ('" + colorSchemeFile + "'): File not found.", e); + } + return new ColorScheme(name, colors); + } +} diff --git a/src/main/java/org/dynmap/DynmapPlugin.java b/src/main/java/org/dynmap/DynmapPlugin.java index f790dedd..7a7ae53c 100644 --- a/src/main/java/org/dynmap/DynmapPlugin.java +++ b/src/main/java/org/dynmap/DynmapPlugin.java @@ -58,6 +58,7 @@ public class DynmapPlugin extends JavaPlugin { public Timer timer; + public static File dataDirectory; public static File tilesDirectory; public World getWorld() { @@ -73,11 +74,13 @@ public class DynmapPlugin extends JavaPlugin { } public void onEnable() { + dataDirectory = this.getDataFolder(); + configuration = new Configuration(new File(this.getDataFolder(), "configuration.txt")); configuration.load(); loadDebuggers(); - + tilesDirectory = getFile(configuration.getString("tilespath", "web/tiles")); if (!tilesDirectory.isDirectory() && !tilesDirectory.mkdirs()) { log.warning("Could not create directory for tiles ('" + tilesDirectory + "')."); diff --git a/src/main/java/org/dynmap/flat/FlatMap.java b/src/main/java/org/dynmap/flat/FlatMap.java index 40ae11dd..6ef57d90 100644 --- a/src/main/java/org/dynmap/flat/FlatMap.java +++ b/src/main/java/org/dynmap/flat/FlatMap.java @@ -11,15 +11,17 @@ import javax.imageio.ImageIO; import org.bukkit.Location; import org.bukkit.World; +import org.dynmap.ColorScheme; import org.dynmap.DynmapChunk; import org.dynmap.MapTile; import org.dynmap.MapType; import org.dynmap.debug.Debug; -import org.dynmap.kzedmap.KzedMap; public class FlatMap extends MapType { + private ColorScheme colorScheme; public FlatMap(Map configuration) { + colorScheme = ColorScheme.getScheme((String)configuration.get("colorscheme")); } @Override @@ -73,7 +75,7 @@ public class FlatMap extends MapType { int mz = y + t.y * t.size; int my = w.getHighestBlockYAt(mx, mz) - 1; int blockType = w.getBlockTypeIdAt(mx, my, mz); - Color[] colors = KzedMap.colors.get(blockType); + Color[] colors = colorScheme.colors.get(blockType); if (colors == null) continue; Color c = colors[0]; diff --git a/src/main/java/org/dynmap/kzedmap/DefaultTileRenderer.java b/src/main/java/org/dynmap/kzedmap/DefaultTileRenderer.java index 18ac5ad9..f24dbbce 100644 --- a/src/main/java/org/dynmap/kzedmap/DefaultTileRenderer.java +++ b/src/main/java/org/dynmap/kzedmap/DefaultTileRenderer.java @@ -10,12 +10,14 @@ import java.util.Map; import javax.imageio.ImageIO; import org.bukkit.World; +import org.dynmap.ColorScheme; import org.dynmap.debug.Debug; public class DefaultTileRenderer implements MapTileRenderer { protected static Color translucent = new Color(0, 0, 0, 0); private String name; protected int maximumHeight = 127; + private ColorScheme colorScheme; @Override public String getName() { @@ -30,6 +32,7 @@ public class DefaultTileRenderer implements MapTileRenderer { if (maximumHeight > 127) maximumHeight = 127; } + colorScheme = ColorScheme.getScheme((String)configuration.get("colorscheme")); } public boolean render(KzedMapTile tile, File outputFile) { @@ -132,7 +135,7 @@ public class DefaultTileRenderer implements MapTileRenderer { seq = (seq + 1) & 3; if (id != 0) { - Color[] colors = KzedMap.colors.get(id); + Color[] colors = colorScheme.colors.get(id); if (colors != null) { Color c = colors[seq]; if (c.getAlpha() > 0) { diff --git a/src/main/java/org/dynmap/kzedmap/KzedMap.java b/src/main/java/org/dynmap/kzedmap/KzedMap.java index 05a00430..a32e589f 100644 --- a/src/main/java/org/dynmap/kzedmap/KzedMap.java +++ b/src/main/java/org/dynmap/kzedmap/KzedMap.java @@ -1,17 +1,10 @@ package org.dynmap.kzedmap; -import java.awt.Color; import java.io.File; -import java.io.FileInputStream; -import java.io.FileNotFoundException; -import java.io.InputStream; import java.lang.reflect.Constructor; import java.util.ArrayList; -import java.util.HashMap; import java.util.List; import java.util.Map; -import java.util.Scanner; -import java.util.logging.Level; import java.util.logging.Logger; import org.bukkit.Location; @@ -40,15 +33,10 @@ public class KzedMap extends MapType { public static final int anchory = 127; public static final int anchorz = 0; - public static java.util.Map colors; MapTileRenderer[] renderers; ZoomedTileRenderer zoomrenderer; public KzedMap(Map configuration) { - if (colors == null) { - colors = loadColorSet("colors.txt"); - } - renderers = loadRenderers(configuration); zoomrenderer = new ZoomedTileRenderer(configuration); } @@ -225,56 +213,4 @@ public class KzedMap extends MapType { else return y - (y % zTileHeight); } - - public java.util.Map loadColorSet(String colorsetpath) { - java.util.Map colors = new HashMap(); - - InputStream stream; - - try { - /* load colorset */ - File cfile = new File(colorsetpath); - if (cfile.isFile()) { - Debug.debug("Loading colors from '" + colorsetpath + "'..."); - stream = new FileInputStream(cfile); - } else { - Debug.debug("Loading colors from jar..."); - stream = KzedMap.class.getResourceAsStream("/colors.txt"); - } - - Scanner scanner = new Scanner(stream); - int nc = 0; - while (scanner.hasNextLine()) { - String line = scanner.nextLine(); - if (line.startsWith("#") || line.equals("")) { - continue; - } - - String[] split = line.split("\t"); - if (split.length < 17) { - continue; - } - - Integer id = new Integer(split[0]); - - Color[] c = new Color[4]; - - /* store colors by raycast sequence number */ - c[0] = new Color(Integer.parseInt(split[1]), Integer.parseInt(split[2]), Integer.parseInt(split[3]), Integer.parseInt(split[4])); - c[3] = new Color(Integer.parseInt(split[5]), Integer.parseInt(split[6]), Integer.parseInt(split[7]), Integer.parseInt(split[8])); - c[1] = new Color(Integer.parseInt(split[9]), Integer.parseInt(split[10]), Integer.parseInt(split[11]), Integer.parseInt(split[12])); - c[2] = new Color(Integer.parseInt(split[13]), Integer.parseInt(split[14]), Integer.parseInt(split[15]), Integer.parseInt(split[16])); - - colors.put(id, c); - nc += 1; - } - scanner.close(); - } catch (RuntimeException e) { - log.log(Level.SEVERE, "Could not load colors", e); - return null; - } catch (FileNotFoundException e) { - log.log(Level.SEVERE, "Could not load colors: file not found", e); - } - return colors; - } }