NPC spell generation, front end
This commit is contained in:
parent
a683cd9007
commit
b3c8ae7328
@ -55,6 +55,7 @@ def populate_npc_database():
|
||||
spell.arcane = 0
|
||||
if spell.divine == '':
|
||||
spell.divine = 0
|
||||
spell.description = spell.description.strip()
|
||||
db.session.bulk_save_objects(spells)
|
||||
|
||||
db.session.commit()
|
||||
|
@ -1,3 +1,5 @@
|
||||
import base64
|
||||
|
||||
from flask_sqlalchemy import SQLAlchemy
|
||||
from ..models import db, BaseModel
|
||||
|
||||
@ -120,7 +122,7 @@ class Spell(BaseModel):
|
||||
'is_divine': self.is_divine,
|
||||
'arcane': self.arcane,
|
||||
'is_arcane': self.is_arcane,
|
||||
'description': self.description #.replace('"', '\\"').replace("'", "\\'")
|
||||
'description': base64.b64encode(self.description.encode('ascii')).decode('ascii')
|
||||
}
|
||||
return spell_dict
|
||||
|
||||
@ -283,6 +285,13 @@ class CharacterNPC(BaseModel):
|
||||
}
|
||||
}
|
||||
|
||||
if self.guild.is_divine_spellcaster or self.guild.is_arcane_spellcaster:
|
||||
npc_dict['spells'] = []
|
||||
spell_list = self.spell_list()
|
||||
for level in spell_list:
|
||||
for spell in spell_list[level]:
|
||||
npc_dict['spells'].append(spell.roll20_format)
|
||||
|
||||
if self.ranged:
|
||||
npc_dict['ranged'] = {
|
||||
'name': self.ranged.name,
|
||||
|
@ -106,6 +106,9 @@ def select_spell_list(npc, data):
|
||||
level_set.add(choice(overall_spell_list[level]).id)
|
||||
npc_spell_list.extend(level_set)
|
||||
|
||||
# FOR DEBUG XXX NOTE
|
||||
npc_spell_list.append(106)
|
||||
|
||||
return ','.join(str(sid) for sid in npc_spell_list)
|
||||
|
||||
def calc_hp(conmod, hit_die_size, level):
|
||||
|
@ -270,7 +270,7 @@ div.acks-npc-card {
|
||||
|
||||
// Fill in spell details
|
||||
document.querySelector('#spell-modal-title').innerText = modal_spell.name;
|
||||
document.querySelector('#spell-modal-desc').innerText = modal_spell.description;
|
||||
document.querySelector('#spell-modal-desc').innerText = atob(modal_spell.description);
|
||||
|
||||
if(spell.range) {
|
||||
document.querySelector('#spell-modal-range').innerText = modal_spell.range;
|
||||
@ -294,9 +294,9 @@ div.acks-npc-card {
|
||||
|
||||
function showExportModal() {
|
||||
{% if party %}
|
||||
{% for npc in party %}
|
||||
{% for npc in party %}
|
||||
party.push(JSON.parse('{{ npc.roll20_format | tojson }}'));
|
||||
{% endfor %}
|
||||
{% endfor %}
|
||||
{% endif %}
|
||||
|
||||
for(let cb of document.querySelectorAll('#pe_selects > label > input')) {
|
||||
|
Loading…
x
Reference in New Issue
Block a user