Weapons. Migrations.
This commit is contained in:
Binary file not shown.
34
app/migrations/0009_auto_20200411_1301.py
Normal file
34
app/migrations/0009_auto_20200411_1301.py
Normal file
@@ -0,0 +1,34 @@
|
||||
# Generated by Django 3.0.5 on 2020-04-11 13:01
|
||||
|
||||
import app.models
|
||||
from django.db import migrations
|
||||
|
||||
|
||||
class Migration(migrations.Migration):
|
||||
|
||||
dependencies = [
|
||||
('app', '0008_auto_20200411_1255'),
|
||||
]
|
||||
|
||||
operations = [
|
||||
migrations.AddField(
|
||||
model_name='itemweaponmelee',
|
||||
name='category',
|
||||
field=app.models.SingleChoiceField(blank=True, choices=[('L', 'Light'), ('M', 'Medium'), ('H', 'Heavy')], max_length=100, verbose_name='Category'),
|
||||
),
|
||||
migrations.AddField(
|
||||
model_name='itemweaponmelee',
|
||||
name='tags',
|
||||
field=app.models.MultiChoiceField(blank=True, choices=[('General', (('ONE HANDED', 'One Handed'), ('TWO HANDED', 'Two Handed'), ('BASHING', 'Bashing'), ('CONCEALABLE', 'Concealable'), ('LETHAL', 'Lethal'), ('MOUNTED', 'Mounted'), ('PIERCING', 'Piercing'), ('SPECIAL', 'Special'))), ('Melee', (('MELEE', 'Melee'), ('BALANCED', 'Balanced'), ('BRAWL', 'Brawl'), ('CHOPPING', 'Chopping'), ('DISARMING', 'Disarming'), ('FLEXIBLE', 'Flexible'), ('IMPROVISED', 'Improvised'), ('GRAPPLING', 'Grappling'), ('MARTIAL ARTS', 'Martial Arts'), ('NATURAL', 'Natural'), ('REACHING', 'Reaching'), ('SHIELD', 'Shield'), ('SMASHING', 'Smashing'), ('WORN', 'Worn'))), ('Thrown', (('THROWN', 'Occult'), ('CUTTING', 'Cutting'), ('POISONABLE', 'Poisonable'), ('SUBTLE', 'Subtle'))), ('Archery', (('ARCHERY', 'Archery'), ('CROSSBOW', 'Crossbow'), ('FLAME', 'Flame'), ('POWERFUL', 'Powerful'), ('SLOW', 'Slow')))], max_length=100, verbose_name='Tags'),
|
||||
),
|
||||
migrations.AddField(
|
||||
model_name='itemweaponranged',
|
||||
name='category',
|
||||
field=app.models.SingleChoiceField(blank=True, choices=[('L', 'Light'), ('M', 'Medium'), ('H', 'Heavy')], max_length=100, verbose_name='Category'),
|
||||
),
|
||||
migrations.AddField(
|
||||
model_name='itemweaponranged',
|
||||
name='tags',
|
||||
field=app.models.MultiChoiceField(blank=True, choices=[('General', (('ONE HANDED', 'One Handed'), ('TWO HANDED', 'Two Handed'), ('BASHING', 'Bashing'), ('CONCEALABLE', 'Concealable'), ('LETHAL', 'Lethal'), ('MOUNTED', 'Mounted'), ('PIERCING', 'Piercing'), ('SPECIAL', 'Special'))), ('Melee', (('MELEE', 'Melee'), ('BALANCED', 'Balanced'), ('BRAWL', 'Brawl'), ('CHOPPING', 'Chopping'), ('DISARMING', 'Disarming'), ('FLEXIBLE', 'Flexible'), ('IMPROVISED', 'Improvised'), ('GRAPPLING', 'Grappling'), ('MARTIAL ARTS', 'Martial Arts'), ('NATURAL', 'Natural'), ('REACHING', 'Reaching'), ('SHIELD', 'Shield'), ('SMASHING', 'Smashing'), ('WORN', 'Worn'))), ('Thrown', (('THROWN', 'Occult'), ('CUTTING', 'Cutting'), ('POISONABLE', 'Poisonable'), ('SUBTLE', 'Subtle'))), ('Archery', (('ARCHERY', 'Archery'), ('CROSSBOW', 'Crossbow'), ('FLAME', 'Flame'), ('POWERFUL', 'Powerful'), ('SLOW', 'Slow')))], max_length=100, verbose_name='Tags'),
|
||||
),
|
||||
]
|
||||
Binary file not shown.
@@ -1,4 +1,5 @@
|
||||
from django.db import models
|
||||
import multiselectfield
|
||||
|
||||
#==============================================================================#
|
||||
#-------------------------------- OPTION LISTS --------------------------------#
|
||||
@@ -87,7 +88,7 @@ CATEGORIES = [
|
||||
("H", "Heavy"),
|
||||
]
|
||||
|
||||
TAGS_WEAPON = [
|
||||
TAGS_WEAPONS = [
|
||||
(
|
||||
"General", (
|
||||
("ONE HANDED", "One Handed"),
|
||||
@@ -181,6 +182,14 @@ class SingleChoiceField(models.CharField):
|
||||
kwargs['max_length'] = 100
|
||||
super().__init__(*args, **kwargs)
|
||||
|
||||
class MultiChoiceField(multiselectfield.MultiSelectField):
|
||||
def __init__(self, verbose_name, choices, *args, **kwargs):
|
||||
kwargs['verbose_name'] = verbose_name
|
||||
kwargs['choices'] = choices
|
||||
kwargs['blank'] = True
|
||||
kwargs['max_length'] = 100
|
||||
super().__init__(*args, **kwargs)
|
||||
|
||||
class NamedIntegerField(models.IntegerField):
|
||||
def __init__(self, verbose_name, desc=None, *args, **kwargs):
|
||||
kwargs['verbose_name'] = verbose_name
|
||||
@@ -196,6 +205,7 @@ class NamedCharField(models.CharField):
|
||||
kwargs['max_length'] = 100
|
||||
super().__init__(*args, **kwargs)
|
||||
|
||||
|
||||
#==============================================================================#
|
||||
#--------------------------------- MODIFIERS ----------------------------------#
|
||||
#==============================================================================#
|
||||
@@ -233,8 +243,8 @@ class itemWeaponBase(itemBase):
|
||||
class Meta:
|
||||
abstract = True
|
||||
|
||||
# category
|
||||
# tags
|
||||
category = SingleChoiceField("Category", CATEGORIES)
|
||||
tags = MultiChoiceField("Tags", TAGS_WEAPONS)
|
||||
accuracy = NamedIntegerField("Accuracy")
|
||||
damage = NamedIntegerField("Damage")
|
||||
defense = NamedIntegerField("Defense")
|
||||
|
||||
Reference in New Issue
Block a user