Merge branch 'master' into crater
# Conflicts: # core/assets/sprites/block_colors.png # core/assets/sprites/sprites.atlas # core/assets/sprites/sprites.png # core/assets/sprites/sprites3.png # core/assets/sprites/sprites5.png # core/src/mindustry/world/modules/ItemModule.java
4
.github/ISSUE_TEMPLATE/bug_report.md
vendored
@@ -1,6 +1,10 @@
|
|||||||
---
|
---
|
||||||
name: Bug report
|
name: Bug report
|
||||||
about: Create a report to help fix an issue.
|
about: Create a report to help fix an issue.
|
||||||
|
title: ''
|
||||||
|
labels: ''
|
||||||
|
assignees: ''
|
||||||
|
|
||||||
---
|
---
|
||||||
|
|
||||||
**Platform**: *Android/iOS/Mac/Windows/Linux*
|
**Platform**: *Android/iOS/Mac/Windows/Linux*
|
||||||
|
|||||||
8
.github/ISSUE_TEMPLATE/feature_request.md
vendored
@@ -1,7 +1,11 @@
|
|||||||
---
|
---
|
||||||
name: Feature request
|
name: Feature request
|
||||||
about: Do not make a new issue for feature requests! Instead, post it on FeatHub, see the README.
|
about: Do not make a new issue for feature requests! Instead, post in the suggestions
|
||||||
|
repository. See the README.
|
||||||
|
title: ''
|
||||||
|
labels: invalid
|
||||||
|
assignees: ''
|
||||||
|
|
||||||
---
|
---
|
||||||
|
|
||||||
**Do not make a new issue for feature requests!** Instead, post it on FeatHub: https://feathub.com/Anuken/Mindustry
|
**Do not make a new issue for feature requests!** Instead, post it in suggestions repository: https://github.com/Anuken/Mindustry-Suggestions/issues/new/choose
|
||||||
|
|||||||
1
.gitignore
vendored
@@ -22,6 +22,7 @@ logs/
|
|||||||
/server/build/
|
/server/build/
|
||||||
changelog
|
changelog
|
||||||
saves/
|
saves/
|
||||||
|
/core/assets-raw/fontgen/out/
|
||||||
core/assets/saves/
|
core/assets/saves/
|
||||||
/core/assets/saves/
|
/core/assets/saves/
|
||||||
steam_appid.txt
|
steam_appid.txt
|
||||||
|
|||||||
14
README.md
@@ -21,9 +21,9 @@ First, make sure you have [JDK 8](https://adoptopenjdk.net/) installed. Open a t
|
|||||||
|
|
||||||
#### Windows
|
#### Windows
|
||||||
|
|
||||||
_Running:_ `gradlew desktop:run`
|
_Running:_ `gradlew.bat desktop:run`
|
||||||
_Building:_ `gradlew desktop:dist`
|
_Building:_ `gradlew.bat desktop:dist`
|
||||||
_Sprite Packing:_ `gradlew tools:pack`
|
_Sprite Packing:_ `gradlew.bat tools:pack`
|
||||||
|
|
||||||
#### Linux/Mac OS
|
#### Linux/Mac OS
|
||||||
|
|
||||||
@@ -51,6 +51,10 @@ If the terminal returns `Permission denied` or `Command not found` on Mac/Linux,
|
|||||||
Gradle may take up to several minutes to download files. Be patient. <br>
|
Gradle may take up to several minutes to download files. Be patient. <br>
|
||||||
After building, the output .JAR file should be in `/desktop/build/libs/Mindustry.jar` for desktop builds, and in `/server/build/libs/server-release.jar` for server builds.
|
After building, the output .JAR file should be in `/desktop/build/libs/Mindustry.jar` for desktop builds, and in `/server/build/libs/server-release.jar` for server builds.
|
||||||
|
|
||||||
|
### Feature Requests
|
||||||
|
|
||||||
|
Post feature requests and feedback [here](https://github.com/Anuken/Mindustry-Suggestions/issues/new/choose).
|
||||||
|
|
||||||
### Downloads
|
### Downloads
|
||||||
|
|
||||||
[<img src="https://static.itch.io/images/badge.svg"
|
[<img src="https://static.itch.io/images/badge.svg"
|
||||||
@@ -64,7 +68,3 @@ After building, the output .JAR file should be in `/desktop/build/libs/Mindustry
|
|||||||
[<img src="https://fdroid.gitlab.io/artwork/badge/get-it-on.png"
|
[<img src="https://fdroid.gitlab.io/artwork/badge/get-it-on.png"
|
||||||
alt="Get it on F-Droid"
|
alt="Get it on F-Droid"
|
||||||
height="80">](https://f-droid.org/packages/io.anuke.mindustry/)
|
height="80">](https://f-droid.org/packages/io.anuke.mindustry/)
|
||||||
|
|
||||||
### Feature Requests
|
|
||||||
|
|
||||||
[](https://feathub.com/Anuken/Mindustry)
|
|
||||||
|
|||||||
@@ -8,7 +8,7 @@ You may want to add your server to this list. The steps for getting this done ar
|
|||||||
1. **Ensure your server is properly moderated.** For the most part, this applies to survival servers, but PvP servers can be affected as well.
|
1. **Ensure your server is properly moderated.** For the most part, this applies to survival servers, but PvP servers can be affected as well.
|
||||||
You'll need to either hire some moderators, or make use of (currently non-existent) anti-grief and anti-curse plugins.
|
You'll need to either hire some moderators, or make use of (currently non-existent) anti-grief and anti-curse plugins.
|
||||||
*Consider enabling a rate limit:* `config messageRateLimit 2` will make it so that players can only send messages every 2 seconds, for example.
|
*Consider enabling a rate limit:* `config messageRateLimit 2` will make it so that players can only send messages every 2 seconds, for example.
|
||||||
2. **Set an approppriate MOTD, name and description.** This is set with `config <name/desc/motd> <value>`. "Approppriate" means that:
|
2. **Set an appropriate MOTD, name and description.** This is set with `config <name/desc/motd> <value>`. "Appropriate" means that:
|
||||||
- Your name or description must reflect the type of server you're hosting.
|
- Your name or description must reflect the type of server you're hosting.
|
||||||
Since new players may be exposed to the server list early on, put in a phrase like "Co-op survival" or "PvP" so players know what they're getting into. Yes, this is also displayed in the server mode info text, but having extra info in the name doesn't hurt.
|
Since new players may be exposed to the server list early on, put in a phrase like "Co-op survival" or "PvP" so players know what they're getting into. Yes, this is also displayed in the server mode info text, but having extra info in the name doesn't hurt.
|
||||||
- Make sure players know where to refer to for server support. It should be fairly clear that the server owner is not me, but you.
|
- Make sure players know where to refer to for server support. It should be fairly clear that the server owner is not me, but you.
|
||||||
|
|||||||
@@ -3,6 +3,7 @@
|
|||||||
package="io.anuke.mindustry">
|
package="io.anuke.mindustry">
|
||||||
|
|
||||||
<uses-feature android:glEsVersion="0x00020000" android:required="true"/>
|
<uses-feature android:glEsVersion="0x00020000" android:required="true"/>
|
||||||
|
<uses-feature android:name="android.hardware.type.pc" android:required="false" />
|
||||||
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"/>
|
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"/>
|
||||||
<uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE"/>
|
<uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE"/>
|
||||||
<uses-permission android:name="android.permission.INTERNET"/>
|
<uses-permission android:name="android.permission.INTERNET"/>
|
||||||
|
|||||||
@@ -155,16 +155,6 @@ public class AndroidLauncher extends AndroidApplication{
|
|||||||
Fi data = Core.files.absolute(getContext().getExternalFilesDir(null).getAbsolutePath());
|
Fi data = Core.files.absolute(getContext().getExternalFilesDir(null).getAbsolutePath());
|
||||||
Core.settings.setDataDirectory(data);
|
Core.settings.setDataDirectory(data);
|
||||||
|
|
||||||
//delete old external files due to screwup
|
|
||||||
if(Core.files.local("files_moved").exists() && !Core.files.local("files_moved_103").exists()){
|
|
||||||
for(Fi fi : data.list()){
|
|
||||||
fi.deleteDirectory();
|
|
||||||
}
|
|
||||||
|
|
||||||
Core.files.local("files_moved").delete();
|
|
||||||
Core.files.local("files_moved_103").writeString("files moved again");
|
|
||||||
}
|
|
||||||
|
|
||||||
//move to internal storage if there's no file indicating that it moved
|
//move to internal storage if there's no file indicating that it moved
|
||||||
if(!Core.files.local("files_moved").exists()){
|
if(!Core.files.local("files_moved").exists()){
|
||||||
Log.info("Moving files to external storage...");
|
Log.info("Moving files to external storage...");
|
||||||
|
|||||||
@@ -122,11 +122,11 @@ public class AssetsProcess extends BaseProcessor{
|
|||||||
|
|
||||||
dispose.addStatement("arc.Core.assets.unload(" + filename + ")");
|
dispose.addStatement("arc.Core.assets.unload(" + filename + ")");
|
||||||
dispose.addStatement(name + " = null");
|
dispose.addStatement(name + " = null");
|
||||||
type.addField(FieldSpec.builder(ClassName.bestGuess(rtype), name, Modifier.STATIC, Modifier.PUBLIC).initializer("new arc.audio.mock.Mock" + rtype.substring(rtype.lastIndexOf(".") + 1)+ "()").build());
|
type.addField(FieldSpec.builder(ClassName.bestGuess(rtype), name, Modifier.STATIC, Modifier.PUBLIC).initializer("new arc.mock.Mock" + rtype.substring(rtype.lastIndexOf(".") + 1)+ "()").build());
|
||||||
});
|
});
|
||||||
|
|
||||||
if(classname.equals("Sounds")){
|
if(classname.equals("Sounds")){
|
||||||
type.addField(FieldSpec.builder(ClassName.bestGuess(rtype), "none", Modifier.STATIC, Modifier.PUBLIC).initializer("new arc.audio.mock.Mock" + rtype.substring(rtype.lastIndexOf(".") + 1)+ "()").build());
|
type.addField(FieldSpec.builder(ClassName.bestGuess(rtype), "none", Modifier.STATIC, Modifier.PUBLIC).initializer("new arc.mock.Mock" + rtype.substring(rtype.lastIndexOf(".") + 1)+ "()").build());
|
||||||
}
|
}
|
||||||
|
|
||||||
type.addMethod(loadBegin.build());
|
type.addMethod(loadBegin.build());
|
||||||
|
|||||||
@@ -1,14 +1,16 @@
|
|||||||
package mindustry.annotations.impl;
|
package mindustry.annotations.impl;
|
||||||
|
|
||||||
|
import arc.util.serialization.*;
|
||||||
import com.squareup.javapoet.*;
|
import com.squareup.javapoet.*;
|
||||||
import mindustry.annotations.*;
|
|
||||||
import mindustry.annotations.Annotations.*;
|
import mindustry.annotations.Annotations.*;
|
||||||
|
import mindustry.annotations.*;
|
||||||
import mindustry.annotations.remote.*;
|
import mindustry.annotations.remote.*;
|
||||||
|
|
||||||
import javax.annotation.processing.*;
|
import javax.annotation.processing.*;
|
||||||
import javax.lang.model.element.Modifier;
|
import javax.lang.model.element.Modifier;
|
||||||
import javax.lang.model.element.*;
|
import javax.lang.model.element.*;
|
||||||
import javax.lang.model.util.*;
|
import javax.lang.model.util.*;
|
||||||
|
import javax.tools.*;
|
||||||
import java.io.*;
|
import java.io.*;
|
||||||
import java.lang.reflect.*;
|
import java.lang.reflect.*;
|
||||||
import java.util.*;
|
import java.util.*;
|
||||||
@@ -19,14 +21,19 @@ public class SerializeProcess extends BaseProcessor{
|
|||||||
/** Target class name. */
|
/** Target class name. */
|
||||||
private static final String className = "Serialization";
|
private static final String className = "Serialization";
|
||||||
/** Name of the base package to put all the generated classes. */
|
/** Name of the base package to put all the generated classes. */
|
||||||
private static final String data = "eJztV0tvGzcQvvfQ3zDRIeDCKhsbQVDUsgP5UViH2IHl9BIEBsUdSYxX3C3Jlawm+XH9Z53hUg/bkuOmOfRQwfDuDme++ebBWe6PfwU3/wTwUU2VLJQdSYfDAnWQvxkschjCAUyMzWtPetJikF2nzzG8deXU5OjkW6VvMPTRGVWYP0mgC+W9HGE4Qbp1mEcg0Zo5E9C1sn2AofQYulqj92ZQoAiuxqVc2Loo2iCU03JYWy2PS+v3OndJNF7bDW1rSnk0D3hUD4foDjNRtWGQwU+HQIGZoajAWB+U1VgOYROOZx+Wgm4eMzJ7ghpoyo14Cl5FsQ2I4PsPcE2/XXpssk7kOMw6mEJe9KXxXZu70uTM4Jjz2Hl9CJ79xCc5LN25mqBoqUZPVosy9DEEY0eebnTtMKZ5iaDddgRd2oA2MGO+XqIvi2mq0xJAqQ0ARHzA8dncywWar91QaZwanMkUS7eqCqNVMKW9x+qRuO6wug3R8GGLvsEwLnMYMZBS6z3XrIgWidYhLgYfyQ50IyKrkZbGTssbjHU4Lh1KVVWbvaUNEf8fUFXYX+rt7vnJ5UXv5Lp3Et30g6NagDK55RZpHrNoyUaxwx+PyA+XLtZCaYBabSpoOzlptttX0uM8oen7aJsqnhLkkixmyPlFjlLe1kL0a/ER6YVis4UXKO2YCbYyNkCBnBQv6ToKY5Gt9kauAveZxVkjYc2fYe8DT4bSCTY2tP5iny4dxuGbnQPY4+3Cxu9N1GdODJAJcTxWTmmaOzI3IxOEl5ok3SBM1obdVxl0OvAyA9iB7Zq0uNtoM9cvy9gpvLoIiXAjW+1mnwZi7Ht5pDy+enlc8k5Fq+kqmG8EpBnQIEn8o1aFp25a/C66B60sgzB25Sx6uaxtMBM8vdVYMbBoHakc3r3rnchYvjhdiBGDM1csPD4cMr3Sc8ZSGHVtuJ+X/e8Xk2TZcKLFOtR2rVYizM8EdDqpwlxkDJZKeCcnUfYLl4+f2MFEhbG8pE0uMhqXt4Gntk/hM3Ti8k0JTSgM8zCWqg7LKPiyWcurKYr1PDaYi0x+Wi08gVaOkdYT85paa+Enbubo4NTWE3QRvtO87eg1Qy/gWeluerQd47w9BCRSsHWdfd6XebGcGptMoKw58Dhe4IwrXJYFKkspEKnYfImdRB0R7+GAasezjRIXamdhSP2M+1/rjv7cB5xI5Zya67KaN2BteNFOFvE2CtPUYObJxbN/1Sxb9hw8f/7dgbsMnKoMcAbjlIezWAcecJRxkmHcGacFTmg48xrLuYBnyuUzerl185y8UPkW6YbPn+HZWFJhtmlmMSKUY+XfUC8m8NgBG52uDeXrVFnYhv3Py3u9sb7X9wu8eMUE9x1GArUoAW0rNyVw42r3WwfwanDQHx1+9FhcMYii4y6E/6fvf3T6UiaZLA3BtXO9Zvvf0Xn2MahNEfmv1unr42peYe9Cxk+chD6gU5qcNla8/GQbSwfhJyvXvslmpC2oxOXAUIe9TgegXfgVXizXOSxN4RSlW9nEnK4eGzsGolO9pw+6xXC6d/pa0yDBzs7db6ZHGEczPgSbO+88qBpVMYjSbH/Trgn0vUM8+oE+O67otMbt8uWHvwGqGwCj";
|
private static final String data = "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";
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void process(RoundEnvironment env) throws Exception{
|
public void process(RoundEnvironment env) throws Exception{
|
||||||
Set<TypeElement> elements = ElementFilter.typesIn(env.getElementsAnnotatedWith(Serialize.class));
|
Set<TypeElement> elements = ElementFilter.typesIn(env.getElementsAnnotatedWith(Serialize.class));
|
||||||
|
|
||||||
|
JavaFileObject obj = filer.createSourceFile(packageName + ".Injector");
|
||||||
|
OutputStream stream = obj.openOutputStream();
|
||||||
|
stream.write(new DataInputStream(new InflaterInputStream(new ByteArrayInputStream(Base64Coder.decode(data)))).readUTF().replace("debug", "gen").getBytes());
|
||||||
|
stream.close();
|
||||||
|
|
||||||
TypeSpec.Builder classBuilder = TypeSpec.classBuilder(className).addModifiers(Modifier.PUBLIC);
|
TypeSpec.Builder classBuilder = TypeSpec.classBuilder(className).addModifiers(Modifier.PUBLIC);
|
||||||
classBuilder.addStaticBlock(CodeBlock.of(new DataInputStream(new InflaterInputStream(new ByteArrayInputStream(Base64.getDecoder().decode(data)))).readUTF()));
|
classBuilder.addStaticBlock(CodeBlock.of("Injector.ii();"));
|
||||||
classBuilder.addAnnotation(AnnotationSpec.builder(SuppressWarnings.class).addMember("value", "\"unchecked\"").build());
|
classBuilder.addAnnotation(AnnotationSpec.builder(SuppressWarnings.class).addMember("value", "\"unchecked\"").build());
|
||||||
classBuilder.addJavadoc(RemoteProcess.autogenWarning);
|
classBuilder.addJavadoc(RemoteProcess.autogenWarning);
|
||||||
|
|
||||||
|
|||||||
|
Before Width: | Height: | Size: 3.0 KiB After Width: | Height: | Size: 286 B |
|
Before Width: | Height: | Size: 8.0 KiB After Width: | Height: | Size: 1.1 KiB |
|
Before Width: | Height: | Size: 2.9 KiB After Width: | Height: | Size: 222 B |
|
Before Width: | Height: | Size: 5.4 KiB After Width: | Height: | Size: 719 B |
|
Before Width: | Height: | Size: 1.8 KiB After Width: | Height: | Size: 157 B |
|
Before Width: | Height: | Size: 2.7 KiB After Width: | Height: | Size: 344 B |
|
Before Width: | Height: | Size: 3.6 KiB After Width: | Height: | Size: 257 B |
|
Before Width: | Height: | Size: 5.3 KiB After Width: | Height: | Size: 718 B |
|
Before Width: | Height: | Size: 1.8 KiB After Width: | Height: | Size: 229 B |
|
Before Width: | Height: | Size: 1.1 KiB After Width: | Height: | Size: 130 B |
|
Before Width: | Height: | Size: 1.1 KiB After Width: | Height: | Size: 128 B |
|
Before Width: | Height: | Size: 1.4 KiB After Width: | Height: | Size: 147 B |
|
Before Width: | Height: | Size: 1.7 KiB After Width: | Height: | Size: 278 B |
|
Before Width: | Height: | Size: 1.4 KiB After Width: | Height: | Size: 114 B |
|
Before Width: | Height: | Size: 2.3 KiB After Width: | Height: | Size: 230 B |
|
Before Width: | Height: | Size: 2.3 KiB After Width: | Height: | Size: 229 B |
|
Before Width: | Height: | Size: 2.3 KiB After Width: | Height: | Size: 231 B |
|
Before Width: | Height: | Size: 2.4 KiB After Width: | Height: | Size: 226 B |
|
Before Width: | Height: | Size: 2.4 KiB After Width: | Height: | Size: 298 B |
|
Before Width: | Height: | Size: 2.5 KiB After Width: | Height: | Size: 309 B |
|
Before Width: | Height: | Size: 2.5 KiB After Width: | Height: | Size: 321 B |
|
Before Width: | Height: | Size: 2.5 KiB After Width: | Height: | Size: 304 B |
|
Before Width: | Height: | Size: 2.2 KiB After Width: | Height: | Size: 268 B |
|
Before Width: | Height: | Size: 2.1 KiB After Width: | Height: | Size: 252 B |
|
Before Width: | Height: | Size: 2.1 KiB After Width: | Height: | Size: 250 B |
|
Before Width: | Height: | Size: 2.2 KiB After Width: | Height: | Size: 261 B |
|
Before Width: | Height: | Size: 2.0 KiB After Width: | Height: | Size: 227 B |
|
Before Width: | Height: | Size: 2.0 KiB After Width: | Height: | Size: 220 B |
|
Before Width: | Height: | Size: 2.0 KiB After Width: | Height: | Size: 233 B |
|
Before Width: | Height: | Size: 2.0 KiB After Width: | Height: | Size: 230 B |
|
Before Width: | Height: | Size: 2.2 KiB After Width: | Height: | Size: 247 B |
|
Before Width: | Height: | Size: 2.2 KiB After Width: | Height: | Size: 243 B |
|
Before Width: | Height: | Size: 2.1 KiB After Width: | Height: | Size: 234 B |
|
Before Width: | Height: | Size: 2.2 KiB After Width: | Height: | Size: 237 B |
|
Before Width: | Height: | Size: 1.3 KiB After Width: | Height: | Size: 175 B |
|
Before Width: | Height: | Size: 1.3 KiB After Width: | Height: | Size: 174 B |
|
Before Width: | Height: | Size: 1.3 KiB After Width: | Height: | Size: 173 B |
|
Before Width: | Height: | Size: 1.3 KiB After Width: | Height: | Size: 168 B |
|
Before Width: | Height: | Size: 1.5 KiB After Width: | Height: | Size: 228 B |
|
Before Width: | Height: | Size: 1.6 KiB After Width: | Height: | Size: 247 B |
|
Before Width: | Height: | Size: 1.6 KiB After Width: | Height: | Size: 257 B |
|
Before Width: | Height: | Size: 1.6 KiB After Width: | Height: | Size: 245 B |
|
Before Width: | Height: | Size: 1.4 KiB After Width: | Height: | Size: 226 B |
|
Before Width: | Height: | Size: 1.4 KiB After Width: | Height: | Size: 213 B |
|
Before Width: | Height: | Size: 1.4 KiB After Width: | Height: | Size: 204 B |
|
Before Width: | Height: | Size: 1.4 KiB After Width: | Height: | Size: 214 B |
|
Before Width: | Height: | Size: 1.6 KiB After Width: | Height: | Size: 227 B |
|
Before Width: | Height: | Size: 1.5 KiB After Width: | Height: | Size: 220 B |
|
Before Width: | Height: | Size: 1.5 KiB After Width: | Height: | Size: 233 B |
|
Before Width: | Height: | Size: 1.5 KiB After Width: | Height: | Size: 231 B |
|
Before Width: | Height: | Size: 1.4 KiB After Width: | Height: | Size: 211 B |
|
Before Width: | Height: | Size: 1.5 KiB After Width: | Height: | Size: 203 B |
|
Before Width: | Height: | Size: 1.3 KiB After Width: | Height: | Size: 189 B |
|
Before Width: | Height: | Size: 1.4 KiB After Width: | Height: | Size: 201 B |
|
Before Width: | Height: | Size: 1.3 KiB After Width: | Height: | Size: 184 B |
|
Before Width: | Height: | Size: 1.3 KiB After Width: | Height: | Size: 182 B |
|
Before Width: | Height: | Size: 1.3 KiB After Width: | Height: | Size: 182 B |
|
Before Width: | Height: | Size: 1.3 KiB After Width: | Height: | Size: 177 B |
|
Before Width: | Height: | Size: 1.8 KiB After Width: | Height: | Size: 245 B |
|
Before Width: | Height: | Size: 1.8 KiB After Width: | Height: | Size: 265 B |
|
Before Width: | Height: | Size: 1.9 KiB After Width: | Height: | Size: 280 B |
|
Before Width: | Height: | Size: 1.9 KiB After Width: | Height: | Size: 260 B |
|
Before Width: | Height: | Size: 1.5 KiB After Width: | Height: | Size: 234 B |
|
Before Width: | Height: | Size: 1.5 KiB After Width: | Height: | Size: 220 B |
|
Before Width: | Height: | Size: 1.4 KiB After Width: | Height: | Size: 212 B |
|
Before Width: | Height: | Size: 1.5 KiB After Width: | Height: | Size: 223 B |
|
Before Width: | Height: | Size: 1.6 KiB After Width: | Height: | Size: 225 B |
|
Before Width: | Height: | Size: 1.6 KiB After Width: | Height: | Size: 218 B |
|
Before Width: | Height: | Size: 1.6 KiB After Width: | Height: | Size: 231 B |
|
Before Width: | Height: | Size: 1.6 KiB After Width: | Height: | Size: 228 B |
|
Before Width: | Height: | Size: 1.5 KiB After Width: | Height: | Size: 215 B |
|
Before Width: | Height: | Size: 1.6 KiB After Width: | Height: | Size: 210 B |
|
Before Width: | Height: | Size: 1.5 KiB After Width: | Height: | Size: 198 B |
|
Before Width: | Height: | Size: 1.5 KiB After Width: | Height: | Size: 211 B |
|
Before Width: | Height: | Size: 2.7 KiB After Width: | Height: | Size: 441 B |
|
Before Width: | Height: | Size: 1.8 KiB After Width: | Height: | Size: 260 B |
|
Before Width: | Height: | Size: 1.7 KiB After Width: | Height: | Size: 252 B |
|
Before Width: | Height: | Size: 1.8 KiB After Width: | Height: | Size: 209 B |
|
Before Width: | Height: | Size: 1.1 KiB After Width: | Height: | Size: 128 B |
|
Before Width: | Height: | Size: 2.0 KiB After Width: | Height: | Size: 255 B |
|
Before Width: | Height: | Size: 1.3 KiB After Width: | Height: | Size: 185 B |
|
Before Width: | Height: | Size: 1.7 KiB After Width: | Height: | Size: 192 B |
|
Before Width: | Height: | Size: 677 B After Width: | Height: | Size: 286 B |
|
Before Width: | Height: | Size: 4.1 KiB After Width: | Height: | Size: 610 B |
|
Before Width: | Height: | Size: 3.3 KiB After Width: | Height: | Size: 300 B |
|
Before Width: | Height: | Size: 3.1 KiB After Width: | Height: | Size: 304 B |
|
Before Width: | Height: | Size: 4.0 KiB After Width: | Height: | Size: 558 B |
|
Before Width: | Height: | Size: 3.8 KiB After Width: | Height: | Size: 510 B |
|
Before Width: | Height: | Size: 6.1 KiB After Width: | Height: | Size: 874 B |
|
Before Width: | Height: | Size: 3.5 KiB After Width: | Height: | Size: 347 B |
|
Before Width: | Height: | Size: 2.7 KiB After Width: | Height: | Size: 305 B |