added default Earthman 108-card tarot deck, 78-card Minchiate Fiorentine deck, admin tests for each; DeckVariant model governs deck toggle; ran new migrations for apps.epic, apps.lyric; seeded DeckVariant migration to ensure Earthman is default deck; added min. tarot url; most new FTs passing

This commit is contained in:
Disco DeDisco
2026-03-24 21:07:01 -04:00
parent 11c85d56d1
commit 588358a20f
12 changed files with 1005 additions and 3 deletions

View File

@@ -0,0 +1,20 @@
# Generated by Django 6.0 on 2026-03-25 00:48
import django.db.models.deletion
from django.db import migrations, models
class Migration(migrations.Migration):
dependencies = [
('epic', '0009_deckvariant_alter_tarotcard_options_and_more'),
('lyric', '0013_alter_token_slots_claimed'),
]
operations = [
migrations.AddField(
model_name='user',
name='equipped_deck',
field=models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.SET_NULL, related_name='+', to='epic.deckvariant'),
),
]

View File

@@ -37,6 +37,10 @@ class User(AbstractBaseUser):
"Token", null=True, blank=True,
on_delete=models.SET_NULL, related_name="+",
)
equipped_deck = models.ForeignKey(
"epic.DeckVariant", null=True, blank=True,
on_delete=models.SET_NULL, related_name="+",
)
is_staff = models.BooleanField(default=False)
is_superuser = models.BooleanField(default=False)
@@ -155,6 +159,7 @@ class PaymentMethod(models.Model):
def create_wallet_and_tokens(sender, instance, created, **kwargs):
if not created:
return
from apps.epic.models import DeckVariant
Wallet.objects.create(user=instance, writs=144)
coin = Token.objects.create(user=instance, token_type=Token.COIN)
Token.objects.create(
@@ -167,4 +172,6 @@ def create_wallet_and_tokens(sender, instance, created, **kwargs):
instance.equipped_trinket = pass_token
else:
instance.equipped_trinket = coin
instance.save(update_fields=['equipped_trinket'])
earthman = DeckVariant.objects.filter(slug="earthman").first()
instance.equipped_deck = earthman
instance.save(update_fields=['equipped_trinket', 'equipped_deck'])