Added weapon pictures. Modified layout to scale better

This commit is contained in:
Empathic Qubit 2021-05-17 12:02:10 -04:00
parent 5dc0c5fb9e
commit 0c59a353f6
391 changed files with 1940 additions and 59 deletions

View file

@ -3,7 +3,7 @@
<Import Project="$(MSBuildExtensionsPath)\$(MSBuildToolsVersion)\Microsoft.Common.props" Condition="Exists('$(MSBuildExtensionsPath)\$(MSBuildToolsVersion)\Microsoft.Common.props')" /> <Import Project="$(MSBuildExtensionsPath)\$(MSBuildToolsVersion)\Microsoft.Common.props" Condition="Exists('$(MSBuildExtensionsPath)\$(MSBuildToolsVersion)\Microsoft.Common.props')" />
<PropertyGroup> <PropertyGroup>
<DragonBornModPath>SkyrimVR\Data\Plugins\Sumwunn</DragonBornModPath> <DragonBornModPath>SkyrimVR\Data\Plugins\Sumwunn</DragonBornModPath>
<DragonBornUrl>https://github.com/YihaoPeng/DragonbornSpeaksNaturally/releases/download/v0.21.0-beta/DSN-0.21.0-win64.zip</DragonBornUrl> <DragonBornUrl>https://github.com/YihaoPeng/DragonbornSpeaksNaturally/releases/download/v0.21.0-beta/DSN-0.21.0-win64.zip</DragonBornUrl>
</PropertyGroup> </PropertyGroup>
<PropertyGroup> <PropertyGroup>
<Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration> <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
@ -85,16 +85,13 @@
<ItemGroup> <ItemGroup>
<None Include="App.config" /> <None Include="App.config" />
<None Include="packages.config" /> <None Include="packages.config" />
<None Include="weapon_map.json">
<CopyToOutputDirectory>Always</CopyToOutputDirectory>
</None>
</ItemGroup> </ItemGroup>
<ItemGroup> <ItemGroup>
<Content Include="FodyWeavers.xml" /> <Content Include="FodyWeavers.xml" />
<Content Include="static\index.css"> <Content Include="static\**\*.*">
<CopyToOutputDirectory>Always</CopyToOutputDirectory>
</Content>
<Content Include="static\index.html">
<CopyToOutputDirectory>Always</CopyToOutputDirectory>
</Content>
<Content Include="static\index.js">
<CopyToOutputDirectory>Always</CopyToOutputDirectory> <CopyToOutputDirectory>Always</CopyToOutputDirectory>
</Content> </Content>
</ItemGroup> </ItemGroup>
@ -104,47 +101,43 @@
<FoMod Include="fomod\info.xml" /> <FoMod Include="fomod\info.xml" />
<FoMod Include="fomod\ModuleConfig.xml" /> <FoMod Include="fomod\ModuleConfig.xml" />
</ItemGroup> </ItemGroup>
<ItemGroup>
<IniFile Include="DragonbornSpeaksNaturally.SAMPLE.ini" />
</ItemGroup>
<Target Name="ConcatIniFile">
<!-- List all the files you want to concatenate. -->
<ItemGroup>
<ConcatFiles Include="
$(ProjectDir)\$(OutputPath)\..\DragonbornSpeaksNaturally.SAMPLE.ini;
$(ProjectDir)\DragonbornSpeaksNaturally.SAMPLE.ini"/>
</ItemGroup>
<!-- Read the contents of the files (preserving tabs/spaces). -->
<ItemGroup>
<FileContents Include="$([System.IO.File]::ReadAllText(%(ConcatFiles.Identity)))"/>
</ItemGroup>
<!-- Write the result to a single file. -->
<WriteLinesToFile File="$(ProjectDir)\$(OutputPath)\..\DragonbornSpeaksNaturally.SAMPLE.ini" Lines="@(FileContents)" Overwrite="true" />
</Target>
<Target Name="CopyDragonbornNaturallySpeakingOriginal" AfterTargets="Build">
<ItemGroup> <ItemGroup>
<DragonBornOutputs Include="$(ProjectDir)\$(OutputPath)\**\*.*" Visible="false" /> <IniFile Include="DragonbornSpeaksNaturally.SAMPLE.ini" />
</ItemGroup> </ItemGroup>
<PropertyGroup> <Target Name="ConcatIniFile">
<DragonBornShimGen><![CDATA[ <!-- List all the files you want to concatenate. -->
<ItemGroup>
<ConcatFiles Include="&#xD;&#xA; $(ProjectDir)\$(OutputPath)\..\DragonbornSpeaksNaturally.SAMPLE.ini;&#xD;&#xA; $(ProjectDir)\DragonbornSpeaksNaturally.SAMPLE.ini" />
</ItemGroup>
<!-- Read the contents of the files (preserving tabs/spaces). -->
<ItemGroup>
<FileContents Include="$([System.IO.File]::ReadAllText(%(ConcatFiles.Identity)))" />
</ItemGroup>
<!-- Write the result to a single file. -->
<WriteLinesToFile File="$(ProjectDir)\$(OutputPath)\..\DragonbornSpeaksNaturally.SAMPLE.ini" Lines="@(FileContents)" Overwrite="true" />
</Target>
<Target Name="CopyDragonbornNaturallySpeakingOriginal" AfterTargets="Build">
<ItemGroup>
<DragonBornOutputs Include="$(ProjectDir)\$(OutputPath)\**\*.*" Visible="false" />
</ItemGroup>
<PropertyGroup>
<DragonBornShimGen><![CDATA[
"$(SolutionDir)\packages\chocolatey.0.10.14\tools\chocolateyInstall\tools\shimgen.exe" --output="$(ProjectDir)\$(OutputPath)\..\DragonbornSpeaksNaturally.exe" -p="$(AssemblyName)\$(AssemblyName).exe" "$(SolutionDir)\packages\chocolatey.0.10.14\tools\chocolateyInstall\tools\shimgen.exe" --output="$(ProjectDir)\$(OutputPath)\..\DragonbornSpeaksNaturally.exe" -p="$(AssemblyName)\$(AssemblyName).exe"
]]></DragonBornShimGen> ]]></DragonBornShimGen>
<DragonBornPluginRoot>$(ProjectDir)\$(OutputPath)\..\..\..\..\..</DragonBornPluginRoot> <DragonBornPluginRoot>$(ProjectDir)\$(OutputPath)\..\..\..\..\..</DragonBornPluginRoot>
<DragonBornSEOutputPath>$(DragonBornPluginRoot)\SkyrimSE\Data\Plugins\Sumwunn\$(AssemblyName)</DragonBornSEOutputPath> <DragonBornSEOutputPath>$(DragonBornPluginRoot)\SkyrimSE\Data\Plugins\Sumwunn\$(AssemblyName)</DragonBornSEOutputPath>
</PropertyGroup> </PropertyGroup>
<DownloadFile SourceUrl="$(DragonBornUrl)" DestinationFolder="$(IntermediateOutputPath)" DestinationFileName="dsn.zip" /> <DownloadFile SourceUrl="$(DragonBornUrl)" DestinationFolder="$(IntermediateOutputPath)" DestinationFileName="dsn.zip" />
<Unzip SourceFiles="$(IntermediateOutputPath)\dsn.zip" DestinationFolder="$(ProjectDir)\$(OutputPath)\..\..\..\..\.." /> <Unzip SourceFiles="$(IntermediateOutputPath)\dsn.zip" DestinationFolder="$(ProjectDir)\$(OutputPath)\..\..\..\..\.." />
<Move SourceFiles="$(ProjectDir)\$(OutputPath)\..\DragonbornSpeaksNaturally.exe" DestinationFiles="$(ProjectDir)\$(OutputPath)\..\DragonbornSpeaksNaturally.Original.exe" /> <Move SourceFiles="$(ProjectDir)\$(OutputPath)\..\DragonbornSpeaksNaturally.exe" DestinationFiles="$(ProjectDir)\$(OutputPath)\..\DragonbornSpeaksNaturally.Original.exe" />
<Exec Command="$(DragonBornShimGen)" /> <Exec Command="$(DragonBornShimGen)" />
<CallTarget Targets="ConcatIniFile" /> <CallTarget Targets="ConcatIniFile" />
<Copy SkipUnchangedFiles="true" SourceFiles="@(DragonBornOutputs)" DestinationFolder="$(DragonBornSEOutputPath)" />
<Copy SkipUnchangedFiles="true" SourceFiles="$(ProjectDir)\$(OutputPath)\..\DragonbornSpeaksNaturally.exe" DestinationFolder="$(DragonBornSEOutputPath)\.." /> <Copy SkipUnchangedFiles="true" SourceFiles="$(ProjectDir)\$(OutputPath)\..\DragonbornSpeaksNaturally.exe" DestinationFolder="$(DragonBornSEOutputPath)\.." />
<Copy SkipUnchangedFiles="true" SourceFiles="$(ProjectDir)\$(OutputPath)\..\DragonbornSpeaksNaturally.Original.exe" DestinationFolder="$(DragonBornSEOutputPath)\.." /> <Copy SkipUnchangedFiles="true" SourceFiles="$(ProjectDir)\$(OutputPath)\..\DragonbornSpeaksNaturally.Original.exe" DestinationFolder="$(DragonBornSEOutputPath)\.." />
<Copy SkipUnchangedFiles="true" SourceFiles="$(ProjectDir)\$(OutputPath)\..\DragonbornSpeaksNaturally.SAMPLE.ini" DestinationFolder="$(DragonBornSEOutputPath)\.." /> <Copy SkipUnchangedFiles="true" SourceFiles="$(ProjectDir)\$(OutputPath)\..\DragonbornSpeaksNaturally.SAMPLE.ini" DestinationFolder="$(DragonBornSEOutputPath)\.." />
<Copy SkipUnchangedFiles="true" SourceFiles="@(FoMod)" DestinationFolder="$(DragonBornPluginRoot)\fomod" /> <Copy SkipUnchangedFiles="true" SourceFiles="@(FoMod)" DestinationFolder="$(DragonBornPluginRoot)\fomod" />
<ZipDirectory SourceDirectory="$(DragonBornPluginRoot)" DestinationFile="$(DragonBornPluginRoot)\..\DragonbornSpeaksNaturallyApi.$(Configuration).zip" /> <Delete ContinueOnError="true" Files="$(DragonBornPluginRoot)\..\DragonbornSpeaksNaturallyApi.$(Configuration).zip" />
<ZipDirectory SourceDirectory="$(DragonBornPluginRoot)" DestinationFile="$(DragonBornPluginRoot)\..\DragonbornSpeaksNaturallyApi.$(Configuration).zip" />
</Target> </Target>
<Target Name="EnsureNuGetPackageBuildImports" BeforeTargets="PrepareForBuild"> <Target Name="EnsureNuGetPackageBuildImports" BeforeTargets="PrepareForBuild">
<PropertyGroup> <PropertyGroup>

View file

@ -27,7 +27,7 @@ namespace EmpathicQbt.ConsoleServer {
{ {
ItemId = 666, ItemId = 666,
TypeId = 999, TypeId = 999,
FormId = 222, FormId = 0x00013985,
IsSingleHanded = true, IsSingleHanded = true,
ItemName = "Wabbajack", ItemName = "Wabbajack",
}, },
@ -35,7 +35,7 @@ namespace EmpathicQbt.ConsoleServer {
{ {
ItemId = 666, ItemId = 666,
TypeId = 999, TypeId = 999,
FormId = 222, FormId = 0x99999999,
IsSingleHanded = true, IsSingleHanded = true,
ItemName = "Wabbajack2", ItemName = "Wabbajack2",
}, },
@ -43,7 +43,7 @@ namespace EmpathicQbt.ConsoleServer {
{ {
ItemId = 666, ItemId = 666,
TypeId = 999, TypeId = 999,
FormId = 222, FormId = 0x00013985,
IsSingleHanded = true, IsSingleHanded = true,
ItemName = "Wabbajack3", ItemName = "Wabbajack3",
}, },
@ -51,7 +51,7 @@ namespace EmpathicQbt.ConsoleServer {
{ {
ItemId = 666, ItemId = 666,
TypeId = 999, TypeId = 999,
FormId = 222, FormId = 0x00013985,
IsSingleHanded = true, IsSingleHanded = true,
ItemName = "Wabbajack4", ItemName = "Wabbajack4",
}, },
@ -59,7 +59,7 @@ namespace EmpathicQbt.ConsoleServer {
{ {
ItemId = 666, ItemId = 666,
TypeId = 999, TypeId = 999,
FormId = 222, FormId = 0x00013985,
IsSingleHanded = true, IsSingleHanded = true,
ItemName = "Wabbajack5", ItemName = "Wabbajack5",
}, },
@ -67,7 +67,7 @@ namespace EmpathicQbt.ConsoleServer {
{ {
ItemId = 666, ItemId = 666,
TypeId = 999, TypeId = 999,
FormId = 222, FormId = 0x00013985,
IsSingleHanded = true, IsSingleHanded = true,
ItemName = "Wabbajack6", ItemName = "Wabbajack6",
}, },
@ -75,7 +75,7 @@ namespace EmpathicQbt.ConsoleServer {
{ {
ItemId = 666, ItemId = 666,
TypeId = 999, TypeId = 999,
FormId = 222, FormId = 0x00013985,
IsSingleHanded = true, IsSingleHanded = true,
ItemName = "Wabbajack7", ItemName = "Wabbajack7",
}, },
@ -83,7 +83,7 @@ namespace EmpathicQbt.ConsoleServer {
{ {
ItemId = 666, ItemId = 666,
TypeId = 999, TypeId = 999,
FormId = 222, FormId = 0x00013985,
IsSingleHanded = true, IsSingleHanded = true,
ItemName = "Wabbajack8", ItemName = "Wabbajack8",
}, },

View file

@ -3,6 +3,7 @@ using IniParser.Model;
using Nancy; using Nancy;
using Nancy.ModelBinding; using Nancy.ModelBinding;
using Nancy.Responses; using Nancy.Responses;
using Newtonsoft.Json;
using System; using System;
using System.Collections.Generic; using System.Collections.Generic;
using System.Diagnostics; using System.Diagnostics;
@ -19,18 +20,48 @@ namespace EmpathicQbt.ConsoleServer {
} }
public class ServerModule : NancyModule { public class ServerModule : NancyModule {
private string[] weaponImages;
private SkyrimInterop skyrimInterop; private SkyrimInterop skyrimInterop;
private IDictionary<string, string> weaponMap;
public ServerModule(SkyrimInterop skyrimInterop) public ServerModule(SkyrimInterop skyrimInterop, IRootPathProvider pathy)
{ {
this.weaponImages = Directory.GetFiles(pathy.GetRootPath() + "/static/weapons");
this.weaponMap = JsonConvert.DeserializeObject<IDictionary<string, string>>(File.ReadAllText(pathy.GetRootPath() + "/weapon_map.json"));
this.skyrimInterop = skyrimInterop; this.skyrimInterop = skyrimInterop;
Get("/api/ping", _ => DateTimeOffset.UtcNow.ToUnixTimeMilliseconds().ToString()); Get("/api/ping", _ => DateTimeOffset.UtcNow.ToUnixTimeMilliseconds().ToString());
Get("/api/favorites", GetFavorites); Get("/api/favorites", GetFavorites);
Post("/api/command", PostCommand); Post("/api/command", PostCommand);
Get("/", _ => Response.AsFile("static/index.html")); Get("/", _ => Response.AsFile("static/index.html"));
Get("/weapons/{filename}.png", GetImage);
Get("/{filename}", _ => Response.AsFile("static/" + (string)_.filename)); Get("/{filename}", _ => Response.AsFile("static/" + (string)_.filename));
} }
public object GetImage(dynamic x) {
string filename = x.filename;
foreach(var kvp in weaponMap)
{
if(filename.EndsWith(kvp.Key))
{
return Response.AsFile($"static/weapons/{kvp.Value}.png");
}
}
foreach (var weaponImage in weaponImages)
{
var weaponName = Path.GetFileNameWithoutExtension(weaponImage);
if (filename.EndsWith(weaponName))
{
return Response.AsFile(weaponImage);
}
}
Trace.TraceWarning("Item image missing: " + filename);
return Response.AsJson(new { status = "error" }, HttpStatusCode.NotFound);
}
public object PostCommand(dynamic x) { public object PostCommand(dynamic x) {
var cmd = this.Bind<CommandRequest>(); var cmd = this.Bind<CommandRequest>();
skyrimInterop.SubmitCommand("COMMAND|" + cmd.Command); skyrimInterop.SubmitCommand("COMMAND|" + cmd.Command);

View file

@ -48,6 +48,7 @@ You cannot install the loader via any MOD manager (But DSN can be installed via
You can find the loader here: https://www.nexusmods.com/skyrimspecialedition/mods/3619]]></description> You can find the loader here: https://www.nexusmods.com/skyrimspecialedition/mods/3619]]></description>
<files> <files>
<folder source="SkyrimSE\Data" destination="" priority="0"/> <folder source="SkyrimSE\Data" destination="" priority="0"/>
<folder source="SkyrimVR\Data\Plugins\Sumwunn\EmpathicQbt.ConsoleServer" destination="Plugins\Sumwunn\EmpathicQbt.ConsoleServer" priority="0"/>
<file source="fomod/DSN-installed.md" destination="SKSE/DSN/DSN-for-SkyrimSE-installed.md" priority="0"/> <file source="fomod/DSN-installed.md" destination="SKSE/DSN/DSN-for-SkyrimSE-installed.md" priority="0"/>
</files> </files>
<typeDescriptor> <typeDescriptor>

View file

@ -1,7 +1,7 @@
* { * {
box-sizing: border-box; box-sizing: border-box;
font-family: sans-serif; font-family: sans-serif;
font-size: 4.3vh; font-size: 3.8vh;
font-weight: 700; font-weight: 700;
color: #fff; color: #fff;
margin: 0; margin: 0;
@ -11,11 +11,12 @@
html, body { html, body {
background-color: #0f0; background-color: #0f0;
min-height: 99vh;
} }
h1 { h1 {
font-size: 1.2em; font-size: 1.2em;
margin: .5em 0; margin: 1vh;
} }
#content { #content {
@ -23,16 +24,16 @@ h1 {
} }
.favorites { .favorites {
padding: 1em; padding: 0;
width: 100%;
} }
.favorites li { .favorites li {
display: block;
list-style-type: none; list-style-type: none;
display: block;
} }
.favorites ul { .favorites ul {
width: 18.1em;
flex-wrap: wrap; flex-wrap: wrap;
display: flex; display: flex;
margin: 0; margin: 0;
@ -42,17 +43,25 @@ h1 {
.favorites h1 { .favorites h1 {
text-align: center; text-align: center;
vertical-align: middle; vertical-align: middle;
height: 8vh;
} }
.favorites button { .favorites button {
word-wrap: break-word; word-wrap: break-word;
width: 5.5em; width: 15vw;
height: 5.5em; height: 15vw;
margin: .25em; margin: .3vw;
border: .15em solid black; border: .15em solid black;
border-radius: .25em; border-radius: .25em;
opacity: 0.8; opacity: 0.8;
overflow: hidden; overflow: hidden;
display: block;
}
.favorites button img {
width: 100%;
padding: .3em 1.5em .1em 1.5em;
min-height: 0;
} }
.favorites__left ul { .favorites__left ul {

View file

@ -89,7 +89,10 @@ const render = async () => {
e('h1', null, 'Left Hand'), e('h1', null, 'Left Hand'),
e('ul', null, state.favorites.map(item => e('ul', null, state.favorites.map(item =>
e('li', null, e('li', null,
e('button', { onclick: () => equip(item, 'left') }, item.itemName), e('button', { onclick: () => equip(item, 'left') }, [
e('img', { src: `/weapons/${item.formId.toString(16).padStart(8, '0')}.png` }),
item.itemName,
]),
), ),
)), )),
]), ]),
@ -97,7 +100,10 @@ const render = async () => {
e('h1', null, 'Right Hand'), e('h1', null, 'Right Hand'),
e('ul', null, state.favorites.map(item => e('ul', null, state.favorites.map(item =>
e('li', null, e('li', null,
e('button', { onclick: () => equip(item, 'right') }, item.itemName), e('button', { onclick: () => equip(item, 'right') }, [
e('img', { src: `/weapons/${item.formId.toString(16).padStart(8, '0')}.png` }),
item.itemName,
]),
), ),
)), )),
]), ]),

Binary file not shown.

After

Width:  |  Height:  |  Size: 227 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 189 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 211 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 644 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 53 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 80 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 64 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 70 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 82 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 72 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 161 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 213 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 226 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 141 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 418 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 152 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 207 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 128 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 304 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 117 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 137 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 128 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 282 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 224 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 287 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 206 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 142 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 348 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 176 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 217 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 185 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 117 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 222 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 212 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 412 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 185 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 505 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 223 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 106 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 342 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 139 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 289 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 218 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 131 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 530 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 188 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 209 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 152 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 77 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 148 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 225 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 178 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 122 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 112 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 182 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 125 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 106 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 232 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 260 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 309 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 195 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 240 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 182 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 154 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 207 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 212 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 144 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 210 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 60 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 44 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 58 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 81 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 74 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 72 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 92 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 106 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 72 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 77 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 70 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 66 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 68 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 88 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 67 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 69 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 56 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 62 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 65 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 62 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 61 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 111 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 126 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 98 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 72 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 113 KiB

Some files were not shown because too many files have changed in this diff Show more