font
This commit is contained in:
parent
2eab826979
commit
a06795c694
7 changed files with 21 additions and 18 deletions
1
.htaccess
Normal file
1
.htaccess
Normal file
|
|
@ -0,0 +1 @@
|
||||||
|
AddType font/ttf .ttf
|
||||||
|
|
@ -63,7 +63,6 @@ Open `index.html` in a modern browser. No build step or third-party dependency i
|
||||||
- Dynamic sprites now pause intermittently instead of walking continuously.
|
- Dynamic sprites now pause intermittently instead of walking continuously.
|
||||||
- Night rendering is darker.
|
- Night rendering is darker.
|
||||||
- Object picking now uses sprite-sized, per-opaque-pixel hit testing, so transparent pixels are not clickable.
|
- Object picking now uses sprite-sized, per-opaque-pixel hit testing, so transparent pixels are not clickable.
|
||||||
- The CSS font stack now tries `3x5 MT Pixel Font` first. The font file itself is not bundled.
|
|
||||||
|
|
||||||
## Phase 5 changes
|
## Phase 5 changes
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -446,7 +446,7 @@ window.addEventListener('load', () => {
|
||||||
});
|
});
|
||||||
</script>
|
</script>
|
||||||
<style>
|
<style>
|
||||||
body{font-family:system-ui,sans-serif;margin:24px;background:#f7f4ea;color:#2b2b2b}h1{margin-bottom:4px}.grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(380px,1fr));gap:12px}.card{background:#fff;border:1px solid #ddd;border-radius:10px;padding:14px;margin:10px 0}.media{display:flex;gap:14px;align-items:flex-start}.muted{color:#666;font-size:13px}.error{background:#fff1f1;border:1px solid #e3aaaa;padding:12px;border-radius:8px}code{background:#eee;padding:1px 4px;border-radius:4px}input{max-width:210px;padding:6px;margin:2px 4px 2px 0}button{margin:2px 4px 2px 0;padding:6px 9px;border:1px solid #bbb;border-radius:6px;background:#f5f5f5}.danger{background:#b92323;color:white;border:0}.ok{background:#267a3e;color:white;border:0}.warn{background:#8b5b00;color:white;border:0}.pill{display:inline-block;padding:2px 7px;border-radius:999px;background:#eee;font-size:12px}.nav a{margin-right:10px}.thumb{position:relative;flex:0 0 auto;width:128px;height:128px;background:#f2eadb;border:1px solid #ddd;image-rendering:pixelated;overflow:hidden}.thumb i{position:absolute;transform:scale(1.02);transform-origin:0 0}.thumb.empty:after{content:'no image';position:absolute;inset:0;display:grid;place-items:center;color:#777;font-size:11px}@media(max-width:520px){.grid{grid-template-columns:1fr}.media{flex-direction:column}.thumb{width:112px;height:112px}}
|
@font-face{font-family:PixelIslandServiceFont;src:url("../assets/fonts/PixelMplus10-Regular.ttf?v=20260605-2") format("truetype");font-weight:100 900;font-style:normal;font-display:swap}body{font-family:PixelIslandServiceFont,sans-serif;margin:24px;background:#f7f4ea;color:#2b2b2b}h1{margin-bottom:4px}.grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(380px,1fr));gap:12px}.card{background:#fff;border:1px solid #ddd;border-radius:10px;padding:14px;margin:10px 0}.media{display:flex;gap:14px;align-items:flex-start}.muted{color:#666;font-size:13px}.error{background:#fff1f1;border:1px solid #e3aaaa;padding:12px;border-radius:8px}code{background:#eee;padding:1px 4px;border-radius:4px}input{max-width:210px;padding:6px;margin:2px 4px 2px 0}button{margin:2px 4px 2px 0;padding:6px 9px;border:1px solid #bbb;border-radius:6px;background:#f5f5f5}.danger{background:#b92323;color:white;border:0}.ok{background:#267a3e;color:white;border:0}.warn{background:#8b5b00;color:white;border:0}.pill{display:inline-block;padding:2px 7px;border-radius:999px;background:#eee;font-size:12px}.nav a{margin-right:10px}.thumb{position:relative;flex:0 0 auto;width:128px;height:128px;background:#f2eadb;border:1px solid #ddd;image-rendering:pixelated;overflow:hidden}.thumb i{position:absolute;transform:scale(1.02);transform-origin:0 0}.thumb.empty:after{content:'no image';position:absolute;inset:0;display:grid;place-items:center;color:#777;font-size:11px}@media(max-width:520px){.grid{grid-template-columns:1fr}.media{flex-direction:column}.thumb{width:112px;height:112px}}
|
||||||
</style>
|
</style>
|
||||||
<h1>Pixel Island Admin</h1>
|
<h1>Pixel Island Admin</h1>
|
||||||
<p class="muted">Store: <?=h($storeLabel)?> / Users: <?=count($accounts)?> / Pictures: <?=count($assets)?> / Reports: <?=count($reports)?></p>
|
<p class="muted">Store: <?=h($storeLabel)?> / Users: <?=count($accounts)?> / Pictures: <?=count($assets)?> / Reports: <?=count($reports)?></p>
|
||||||
|
|
|
||||||
BIN
assets/fonts/PixelMplus10-Regular.ttf
Normal file
BIN
assets/fonts/PixelMplus10-Regular.ttf
Normal file
Binary file not shown.
|
|
@ -4,7 +4,7 @@
|
||||||
<meta charset="utf-8" />
|
<meta charset="utf-8" />
|
||||||
<meta name="viewport" content="width=device-width, initial-scale=1" />
|
<meta name="viewport" content="width=device-width, initial-scale=1" />
|
||||||
<title>Pixel Island</title>
|
<title>Pixel Island</title>
|
||||||
<link rel="stylesheet" href="./styles.css" />
|
<link rel="stylesheet" href="./styles.css?v=20260605-2" />
|
||||||
</head>
|
</head>
|
||||||
<body>
|
<body>
|
||||||
<div class="app">
|
<div class="app">
|
||||||
|
|
|
||||||
24
styles.css
24
styles.css
|
|
@ -1,3 +1,11 @@
|
||||||
|
@font-face {
|
||||||
|
font-family: "PixelIslandServiceFont";
|
||||||
|
src: url("./assets/fonts/PixelMplus10-Regular.ttf?v=20260605-2") format("truetype");
|
||||||
|
font-weight: 100 900;
|
||||||
|
font-style: normal;
|
||||||
|
font-display: swap;
|
||||||
|
}
|
||||||
|
|
||||||
:root {
|
:root {
|
||||||
--ink: #243044;
|
--ink: #243044;
|
||||||
--muted: #6f7b91;
|
--muted: #6f7b91;
|
||||||
|
|
@ -25,7 +33,7 @@ body {
|
||||||
margin: 0;
|
margin: 0;
|
||||||
color: var(--ink);
|
color: var(--ink);
|
||||||
background: #92d8ff;
|
background: #92d8ff;
|
||||||
font-family: "3x5 MT Pixel Font", "Press Start 2P", "PixelMplus10", "DotGothic16", "Courier New", "Monaco", "Lucida Console", ui-monospace, monospace;
|
font-family: "PixelIslandServiceFont", sans-serif;
|
||||||
overflow: hidden;
|
overflow: hidden;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
@ -742,7 +750,6 @@ button:disabled, .tool:disabled { opacity: .45; cursor: not-allowed; transform:
|
||||||
.heroEditor .hint { line-height: 1.35; }
|
.heroEditor .hint { line-height: 1.35; }
|
||||||
|
|
||||||
.compactEditorTop { margin-bottom: 4px; min-height: 0; }
|
.compactEditorTop { margin-bottom: 4px; min-height: 0; }
|
||||||
body, button, input, select, textarea { font-smooth: never; -webkit-font-smoothing: none; }
|
|
||||||
|
|
||||||
.studioDrawer { width: min(600px, calc(100vw - 24px)); }
|
.studioDrawer { width: min(600px, calc(100vw - 24px)); }
|
||||||
.paintLayout {
|
.paintLayout {
|
||||||
|
|
@ -858,10 +865,6 @@ body, button, input, select, textarea { font-smooth: never; -webkit-font-smoothi
|
||||||
background: var(--sun);
|
background: var(--sun);
|
||||||
}
|
}
|
||||||
|
|
||||||
body, button, input, select, textarea {
|
|
||||||
font-family: "Courier New", "Lucida Console", Monaco, monospace;
|
|
||||||
letter-spacing: .02em;
|
|
||||||
}
|
|
||||||
button, .tab, .tool, .iconButton, .cardTitle, .logo {
|
button, .tab, .tool, .iconButton, .cardTitle, .logo {
|
||||||
text-transform: uppercase;
|
text-transform: uppercase;
|
||||||
font-weight: 900;
|
font-weight: 900;
|
||||||
|
|
@ -900,12 +903,6 @@ button, .tab, .tool, .iconButton, .cardTitle, .logo {
|
||||||
color: var(--muted);
|
color: var(--muted);
|
||||||
}
|
}
|
||||||
|
|
||||||
body, button, input, select, textarea {
|
|
||||||
font-family: "MS Gothic", "Osaka-Mono", "DotumChe", "Courier New", ui-monospace, monospace;
|
|
||||||
letter-spacing: .02em;
|
|
||||||
-webkit-font-smoothing: none;
|
|
||||||
text-rendering: geometricPrecision;
|
|
||||||
}
|
|
||||||
.toolRow { grid-template-columns: repeat(6, minmax(0, 1fr)); }
|
.toolRow { grid-template-columns: repeat(6, minmax(0, 1fr)); }
|
||||||
.editorHistoryRow { grid-template-columns: repeat(2, minmax(0, 1fr)); }
|
.editorHistoryRow { grid-template-columns: repeat(2, minmax(0, 1fr)); }
|
||||||
.advancedRow {
|
.advancedRow {
|
||||||
|
|
@ -994,9 +991,6 @@ body, button, input, select, textarea {
|
||||||
grid-column: span 2;
|
grid-column: span 2;
|
||||||
}
|
}
|
||||||
|
|
||||||
body, button, input, select, textarea {
|
|
||||||
font-family: "3x5 MT Pixel Font", "Press Start 2P", "PixelMplus10", "DotGothic16", "MS Gothic", "Osaka-Mono", "Courier New", ui-monospace, monospace;
|
|
||||||
}
|
|
||||||
.hiddenSectionTitle {
|
.hiddenSectionTitle {
|
||||||
margin: 8px 0 6px;
|
margin: 8px 0 6px;
|
||||||
padding: 5px 7px;
|
padding: 5px 7px;
|
||||||
|
|
|
||||||
9
web.config
Normal file
9
web.config
Normal file
|
|
@ -0,0 +1,9 @@
|
||||||
|
<?xml version="1.0" encoding="UTF-8"?>
|
||||||
|
<configuration>
|
||||||
|
<system.webServer>
|
||||||
|
<staticContent>
|
||||||
|
<remove fileExtension=".ttf" />
|
||||||
|
<mimeMap fileExtension=".ttf" mimeType="font/ttf" />
|
||||||
|
</staticContent>
|
||||||
|
</system.webServer>
|
||||||
|
</configuration>
|
||||||
Loading…
Add table
Add a link
Reference in a new issue