fix lexicon card.admin

This commit is contained in:
2026-01-28 18:02:55 +09:00
parent d79c71d5e2
commit 8b9ca0d470
3 changed files with 64 additions and 26 deletions

View File

@@ -6,24 +6,55 @@
"main": { "main": {
"type": "record", "type": "record",
"key": "literal:self", "key": "literal:self",
"description": "Card game configuration (admin only)", "description": "Card game configuration and master data (admin only)",
"record": { "record": {
"type": "object", "type": "object",
"required": ["card", "rate", "createdAt", "updatedAt"], "required": ["gacha", "card", "createdAt", "updatedAt"],
"properties": { "properties": {
"card": { "gacha": {
"type": "object", "type": "object",
"required": ["pickup"], "required": ["pickup", "rate"],
"properties": { "properties": {
"pickup": { "type": "integer", "description": "Pickup card ID" } "pickup": { "type": "integer", "description": "Pickup card ID" },
"rate": {
"type": "object",
"required": ["pickup", "rare"],
"properties": {
"pickup": { "type": "integer", "description": "1/n for pickup rate (100 = 1%)" },
"rare": { "type": "integer", "description": "1/n for rare:1 rate (10 = 10%), rare:2 = 1/(n*10), rare:3 = 1/(n*100)" }
}
}
} }
}, },
"rate": { "card": {
"type": "object", "type": "array",
"required": ["pickup", "rare"], "description": "Card master data",
"properties": { "items": {
"pickup": { "type": "integer", "description": "1/n for pickup rate (100 = 1%)" }, "type": "object",
"rare": { "type": "integer", "description": "1/n for rare:1 rate (10 = 10%), rare:2 = 1/(n*10), rare:3 = 1/(n*100)" } "required": ["id", "character", "name", "text", "cp", "effect"],
"properties": {
"id": { "type": "integer", "description": "Card ID" },
"character": { "type": "integer", "description": "Associated character ID" },
"name": {
"type": "object",
"required": ["ja", "en"],
"properties": {
"ja": { "type": "string" },
"en": { "type": "string" }
}
},
"text": {
"type": "object",
"required": ["ja", "en"],
"properties": {
"ja": { "type": "string" },
"en": { "type": "string" }
}
},
"cp": { "type": "string", "description": "CP type (status, time, damage)" },
"effect": { "type": "string", "description": "Effect type (status, fly, mode, damage)" },
"key": { "type": "string", "description": "Key binding (R1, L1, Y, X, etc.)" }
}
} }
}, },
"createdAt": { "type": "string", "format": "datetime" }, "createdAt": { "type": "string", "format": "datetime" },

View File

@@ -18,8 +18,10 @@
{ "id": 13, "character": 0, "name": { "ja": "創造", "en": "create" }, "text": { "ja": "アイは、自身の周囲に真空を作り出し、物理と属性の範囲ダメージを与える。的に与える属性ダメージは、このカードのcpを基準にアップする。", "en": "This card's CP is referenced for elemental damage" }, "cp": "damage", "effect": "damage", "key": "X" }, { "id": 13, "character": 0, "name": { "ja": "創造", "en": "create" }, "text": { "ja": "アイは、自身の周囲に真空を作り出し、物理と属性の範囲ダメージを与える。的に与える属性ダメージは、このカードのcpを基準にアップする。", "en": "This card's CP is referenced for elemental damage" }, "cp": "damage", "effect": "damage", "key": "X" },
{ "id": 100, "character": 1, "name": { "ja": "世界", "en": "world" }, "text": { "ja": "このカードのcpはキャラクターの基礎ステータスに参照される", "en": "This card's CP is referenced for the character's base status" }, "cp": "status", "effect": "status", "key": null }, { "id": 100, "character": 1, "name": { "ja": "世界", "en": "world" }, "text": { "ja": "このカードのcpはキャラクターの基礎ステータスに参照される", "en": "This card's CP is referenced for the character's base status" }, "cp": "status", "effect": "status", "key": null },
{ "id": 200, "character": 2, "name": { "ja": "d", "en": "d" }, "text": { "ja": "このカードのcpはキャラクターの基礎ステータスに参照される", "en": "This card's CP is referenced for the character's base status" }, "cp": "status", "effect": "status", "key": null }, { "id": 200, "character": 2, "name": { "ja": "d", "en": "d" }, "text": { "ja": "このカードのcpはキャラクターの基礎ステータスに参照される", "en": "This card's CP is referenced for the character's base status" }, "cp": "status", "effect": "status", "key": null },
{ "id": 201, "character": 2, "name": { "ja": "ドラゴン", "en": "dragon" }, "text": { "ja": "", "en": "" }, "cp": "skill", "effect": "skill", "key": null },
{ "id": 300, "character": 3, "name": { "ja": "r", "en": "r" }, "text": { "ja": "このカードのcpはキャラクターの基礎ステータスに参照される", "en": "This card's CP is referenced for the character's base status" }, "cp": "status", "effect": "status", "key": null }, { "id": 300, "character": 3, "name": { "ja": "r", "en": "r" }, "text": { "ja": "このカードのcpはキャラクターの基礎ステータスに参照される", "en": "This card's CP is referenced for the character's base status" }, "cp": "status", "effect": "status", "key": null },
{ "id": 400, "character": 4, "name": { "ja": "c", "en": "c" }, "text": { "ja": "このカードのcpはキャラクターの基礎ステータスに参照される", "en": "This card's CP is referenced for the character's base status" }, "cp": "status", "effect": "status", "key": null } { "id": 301, "character": 3, "name": { "ja": "ロボット", "en": "robot" }, "text": { "ja": "", "en": "" }, "cp": "skill", "effect": "skill", "key": null },
{ "id": 400, "character": 4, "name": { "ja": "c", "en": "c" }, "text": { "ja": "", "en": "This card's CP is referenced for the character's base status" }, "cp": "status", "effect": "status", "key": null }
], ],
"createdAt": "2026-01-25T09:02:20.000Z", "createdAt": "2026-01-25T09:02:20.000Z",
"updatedAt": "2026-01-25T09:02:20.000Z" "updatedAt": "2026-01-25T09:02:20.000Z"

View File

@@ -554,24 +554,33 @@
max-width: 250px; max-width: 250px;
} }
/* RSE card grid (smaller cards below character) */ /* RSE card grid (cards below character) */
.rse-card-grid { .rse-card-grid {
display: grid; display: grid;
grid-template-columns: repeat(auto-fill, minmax(140px, 1fr)); grid-template-columns: repeat(3, 1fr);
gap: 16px; gap: 20px;
width: 100%; width: 100%;
max-width: 500px; max-width: 600px;
padding: 16px; padding: 20px;
background: rgba(128, 128, 128, 0.08); background: rgba(128, 128, 128, 0.08);
border-radius: 12px; border-radius: 12px;
} }
.rse-card-grid .card-item { .rse-card-grid .card-wrapper {
max-width: 140px; max-width: 180px;
} }
.rse-card-grid .card-wrapper { .rse-card-grid .card-info-name {
max-width: 140px; font-size: 11px;
}
.rse-card-grid .card-info-text {
font-size: 10px;
}
.rse-card-grid .card-key-btn {
font-size: 9px;
padding: 2px 8px;
} }
/* Card info (below card) */ /* Card info (below card) */
@@ -607,11 +616,7 @@
.card-info-text { .card-info-text {
font-size: 11px; font-size: 11px;
color: var(--text-secondary, #666); color: var(--text-secondary, #666);
line-height: 1.4; line-height: 1.5;
display: -webkit-box;
-webkit-line-clamp: 2;
-webkit-box-orient: vertical;
overflow: hidden;
} }
.card-key-btn { .card-key-btn {