backend: frontend: added new fields to model structs and frontend form
This commit is contained in:
parent
eda80cf0f0
commit
d50f5dab03
3 changed files with 488 additions and 249 deletions
|
|
@ -63,7 +63,7 @@ func AddMonster(Monsters *[]model.Monster) http.HandlerFunc {
|
||||||
Perception: r.FormValue("perception"),
|
Perception: r.FormValue("perception"),
|
||||||
Stealth: r.FormValue("stealth"),
|
Stealth: r.FormValue("stealth"),
|
||||||
},
|
},
|
||||||
DamageRes: []string{r.FormValue("damageRes")},
|
Resist: []string{r.FormValue("resist")},
|
||||||
Senses: []string{r.FormValue("senses")},
|
Senses: []string{r.FormValue("senses")},
|
||||||
Languages: []string{r.FormValue("languages")},
|
Languages: []string{r.FormValue("languages")},
|
||||||
CR: r.FormValue("cr"),
|
CR: r.FormValue("cr"),
|
||||||
|
|
|
||||||
|
|
@ -9,28 +9,31 @@ import (
|
||||||
|
|
||||||
// Monster struct für die Daten des Monsters
|
// Monster struct für die Daten des Monsters
|
||||||
type Monster struct {
|
type Monster struct {
|
||||||
Save Save `json:"save"`
|
Save Save `json:"save"`
|
||||||
Skill Skill `json:"skill"`
|
Skill Skill `json:"skill"`
|
||||||
HP HP `json:"hp"`
|
HP HP `json:"hp"`
|
||||||
Source string `json:"source"`
|
Source string `json:"source"`
|
||||||
CR string `json:"cr"`
|
CR string `json:"cr"`
|
||||||
Type string `json:"type"`
|
Type string `json:"type"`
|
||||||
Name string `json:"name"`
|
Name string `json:"name"`
|
||||||
DamageRes []string `json:"damageResistances"`
|
Vulnerable []string `json:"vulnerable"`
|
||||||
Traits []Trait `json:"trait"`
|
ConditionImmnue []string `json:"conditionImmune"`
|
||||||
AC []AC `json:"ac"`
|
Resist []string `json:"resist"`
|
||||||
Alignment []string `json:"alignment"`
|
Immune []string `json:"immune"`
|
||||||
Senses []string `json:"senses"`
|
Traits []Trait `json:"trait"`
|
||||||
Languages []string `json:"languages"`
|
AC []AC `json:"ac"`
|
||||||
Size []string `json:"size"`
|
Alignment []string `json:"alignment"`
|
||||||
Actions []Action `json:"action"`
|
Senses []string `json:"senses"`
|
||||||
Speed Speed `json:"speed"`
|
Languages []string `json:"languages"`
|
||||||
Str int `json:"str"`
|
Size []string `json:"size"`
|
||||||
Dex int `json:"dex"`
|
Actions []Action `json:"action"`
|
||||||
Con int `json:"con"`
|
Speed Speed `json:"speed"`
|
||||||
Int int `json:"int"`
|
Str int `json:"str"`
|
||||||
Wis int `json:"wis"`
|
Dex int `json:"dex"`
|
||||||
Cha int `json:"cha"`
|
Con int `json:"con"`
|
||||||
|
Int int `json:"int"`
|
||||||
|
Wis int `json:"wis"`
|
||||||
|
Cha int `json:"cha"`
|
||||||
}
|
}
|
||||||
|
|
||||||
type AC struct {
|
type AC struct {
|
||||||
|
|
@ -44,18 +47,41 @@ type HP struct {
|
||||||
}
|
}
|
||||||
|
|
||||||
type Speed struct {
|
type Speed struct {
|
||||||
Walk int `json:"walk"`
|
Walk int `json:"walk"`
|
||||||
|
burrow int `json:"burrow"`
|
||||||
|
climb int `json:"climb"`
|
||||||
|
fly int `json:"fly"`
|
||||||
|
swim int `json:"swim"`
|
||||||
}
|
}
|
||||||
|
|
||||||
type Save struct {
|
type Save struct {
|
||||||
Dex string `json:"dex"`
|
Dex string `json:"dex"`
|
||||||
Con string `json:"con"`
|
Con string `json:"con"`
|
||||||
Wis string `json:"wis"`
|
Wis string `json:"wis"`
|
||||||
|
Cha string `json:"cha"`
|
||||||
|
Str string `json:"str"`
|
||||||
|
Int string `json:"int"`
|
||||||
}
|
}
|
||||||
|
|
||||||
type Skill struct {
|
type Skill struct {
|
||||||
Perception string `json:"perception"`
|
Stealth string `json:"stealth"`
|
||||||
Stealth string `json:"stealth"`
|
Acrobatics string `json:"acrobatics"`
|
||||||
|
AnimalHandling string `json:"animalHandling"`
|
||||||
|
Arcana string `json:"arcana"`
|
||||||
|
Athletics string `json:"athletics"`
|
||||||
|
Deception string `json:"deception"`
|
||||||
|
History string `json:"history"`
|
||||||
|
Insight string `json:"insight"`
|
||||||
|
Intimidation string `json:"intimidation"`
|
||||||
|
Investigation string `json:"investigation"`
|
||||||
|
Medicine string `json:"medicine"`
|
||||||
|
Nature string `json:"nature"`
|
||||||
|
Perception string `json:"perception"`
|
||||||
|
Performance string `json:"performance"`
|
||||||
|
Persuation string `json:"persuation"`
|
||||||
|
SleightOfHand string `json:"sleightOfHand"`
|
||||||
|
Survival string `json:"survival"`
|
||||||
|
Religion string `json:"religion"`
|
||||||
}
|
}
|
||||||
|
|
||||||
type Trait struct {
|
type Trait struct {
|
||||||
|
|
|
||||||
|
|
@ -1,266 +1,479 @@
|
||||||
{{ define "monsterform" }}
|
{{ define "monsterform" }}
|
||||||
<div class="tile is-ancestor">
|
<div class="tile is-ancestor">
|
||||||
<div class="tile is-parent">
|
<div class="tile is-parent">
|
||||||
<div class="tile is-child field">
|
<div class="tile is-child field">
|
||||||
<label for="name">Monster Name:</label>
|
<label for="name">Monster Name:</label>
|
||||||
<div class="control">
|
<div class="control">
|
||||||
<input type="text" name="name" required placeholder="Type here" class="input input-bordered w-full max-w-xs">
|
<input type="text" name="name" required placeholder="Type here"
|
||||||
</div>
|
class="input input-bordered w-full max-w-xs">
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
<div class="tile is-parent">
|
||||||
<div class="tile is-parent">
|
<div class="tile is-child field">
|
||||||
<div class="tile is-child field">
|
<label for="source">Monster Source:</label>
|
||||||
<label for="source">Monster Source:</label>
|
<div class="control">
|
||||||
<div class="control">
|
<input type="text" name="source" required class="input input-bordered w-full max-w-xs">
|
||||||
<input type="text" name="source" required class="input input-bordered w-full max-w-xs">
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
<div class="tile is-parent">
|
||||||
<div class="tile is-parent">
|
<div class="tile is-child field">
|
||||||
<div class="tile is-child field">
|
<label for="size">Size:</label>
|
||||||
<label for="size">Size:</label>
|
<div class="control">
|
||||||
<div class="control">
|
<div class="select">
|
||||||
<input type="text" name="size" required class="input input-bordered w-full max-w-xs">
|
<select>
|
||||||
</div>
|
<option>H</option>
|
||||||
|
<option>T</option>
|
||||||
|
<option>S</option>
|
||||||
|
<option>L</option>
|
||||||
|
<option>G</option>
|
||||||
|
</select>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
<div class="tile is-parent">
|
||||||
<div class="tile is-parent">
|
<div class="tile is-child field">
|
||||||
<div class="tile is-child field">
|
<label for="type">Type:</label>
|
||||||
<label for="type">Type:</label>
|
<div class="control">
|
||||||
<div class="control">
|
<input type="text" name="type" required class="input input-bordered w-full max-w-xs">
|
||||||
<input type="text" name="type" required class="input input-bordered w-full max-w-xs">
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
|
||||||
</div>
|
</div>
|
||||||
<div class="tile is-vertical is-ancestor">
|
<div class="tile is-vertical is-ancestor">
|
||||||
<div class="tile is-parent">
|
<div class="tile is-parent">
|
||||||
<div class="tile is-child field">
|
<div class="tile is-child field">
|
||||||
<label for="alignment">Alignment:</label>
|
<label for="alignment">Alignment:</label>
|
||||||
<div class="control">
|
<div class="control">
|
||||||
<input type="text" name="alignment" required class="input input-bordered w-full max-w-xs">
|
<input type="text" name="alignment" required class="input input-bordered w-full max-w-xs">
|
||||||
</div>
|
</div>
|
||||||
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
|
||||||
</div>
|
</div>
|
||||||
<div class="tile is-ancestor">
|
<div class="tile is-ancestor">
|
||||||
<div class="tile is-parent">
|
<div class="tile is-parent">
|
||||||
<div class="tile is-child field">
|
<div class="tile is-child field">
|
||||||
<label for="ac">AC:</label>
|
<label for="ac">AC:</label>
|
||||||
<div class="control">
|
<div class="control">
|
||||||
<input type="number" name="ac" required class="input input-bordered w-full max-w-xs">
|
<input type="number" name="ac" required class="input input-bordered w-full max-w-xs">
|
||||||
</div>
|
</div>
|
||||||
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
<div class="tile is-parent">
|
||||||
<div class="tile is-parent">
|
<div class="tile is-child field">
|
||||||
<div class="tile is-child field">
|
<label for="acFrom">AC From:</label>
|
||||||
<label for="acFrom">AC From:</label>
|
<div class="control">
|
||||||
<div class="control">
|
<input type="text" name="acFrom" required class="input input-bordered w-full max-w-xs">
|
||||||
<input type="text" name="acFrom" required class="input input-bordered w-full max-w-xs">
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
|
||||||
</div>
|
</div>
|
||||||
<div class="tile is-ancestor">
|
<div class="tile is-ancestor">
|
||||||
<div class="tile is-parent">
|
<div class="tile is-parent">
|
||||||
<div class="tile is-child field">
|
<div class="tile is-child field">
|
||||||
<label for="hpAverage">HP Average:</label>
|
<label for="hpAverage">HP Average:</label>
|
||||||
<div class="control">
|
<div class="control">
|
||||||
<input type="number" name="hpAverage" required class="input input-bordered w-full max-w-xs">
|
<input type="number" name="hpAverage" required class="input input-bordered w-full max-w-xs">
|
||||||
</div>
|
</div>
|
||||||
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
<div class="tile is-parent">
|
||||||
<div class="tile is-parent">
|
<div class="tile is-child field">
|
||||||
<div class="tile is-child field">
|
<label for="hpFormula">HP Formula:</label>
|
||||||
<label for="hpFormula">HP Formula:</label>
|
<div class="control">
|
||||||
<div class="control">
|
<input type="text" name="hpFormula" required class="input input-bordered w-full max-w-xs">
|
||||||
<input type="text" name="hpFormula" required class="input input-bordered w-full max-w-xs">
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div class="card tile is-ancestor is-vertical">
|
||||||
|
<header class="card-header">
|
||||||
|
<p class="card-header-title">
|
||||||
|
Speed
|
||||||
|
</p>
|
||||||
|
</header>
|
||||||
|
<div class="card-content">
|
||||||
|
<div class="content">
|
||||||
|
<div class="tile is-ancestor">
|
||||||
|
<div class="tile is-parent">
|
||||||
|
<div class="tile is-child field">
|
||||||
|
<label for="walk">Walk:</label>
|
||||||
|
<div class="control">
|
||||||
|
<input type="number" name="walk" required class="input input-bordered w-full max-w-xs">
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div class="tile is-parent">
|
||||||
|
<div class="tile is-child field">
|
||||||
|
<label for="burrow">burrow:</label>
|
||||||
|
<div class="control">
|
||||||
|
<input type="number" name="burrow" required class="input input-bordered w-full max-w-xs">
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div class="tile is-parent">
|
||||||
|
<div class="tile is-child field">
|
||||||
|
<label for="climb">Climb:</label>
|
||||||
|
<div class="control">
|
||||||
|
<input type="number" name="climb" required class="input input-bordered w-full max-w-xs">
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div class="tile is-ancestor">
|
||||||
|
<div class="tile is-parent">
|
||||||
|
<div class="tile is-child field">
|
||||||
|
<label for="fly">Fly:</label>
|
||||||
|
<div class="control">
|
||||||
|
<input type="number" name="fly" required class="input input-bordered w-full max-w-xs">
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div class="tile is-parent">
|
||||||
|
<div class="tile is-child field">
|
||||||
|
<label for="swim">Swim:</label>
|
||||||
|
<div class="control">
|
||||||
|
<input type="number" name="swim" required class="input input-bordered w-full max-w-xs">
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
|
||||||
</div>
|
</div>
|
||||||
<div class="tile is-ancestor">
|
<div class="tile is-ancestor">
|
||||||
<div class="tile is-parent">
|
<div class="tile is-parent">
|
||||||
<div class="tile is-child field">
|
<div class="tile is-child field">
|
||||||
<label for="speed">Speed:</label>
|
<label for="str">Str:</label>
|
||||||
<div class="control">
|
<div class="control">
|
||||||
<input type="number" name="speed" required class="input input-bordered w-full max-w-xs">
|
<input type="number" name="str" required class="input input-bordered w-full max-w-xs">
|
||||||
</div>
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div class="tile is-parent">
|
||||||
|
<div class="tile is-child field">
|
||||||
|
<label for="dex">Dex:</label>
|
||||||
|
<div class="control">
|
||||||
|
<input type="number" name="dex" required class="input input-bordered w-full max-w-xs">
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div class="tile is-parent">
|
||||||
|
<div class="tile is-child field">
|
||||||
|
<label for="con">Con:</label>
|
||||||
|
<div class="control">
|
||||||
|
<input type="number" name="con" required class="input input-bordered w-full max-w-xs">
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div class="tile is-parent">
|
||||||
|
<div class="tile is-child field">
|
||||||
|
<label for="cr">CR:</label>
|
||||||
|
<div class="control">
|
||||||
|
<input type="text" name="cr" required class="input input-bordered w-full max-w-xs">
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
|
||||||
</div>
|
</div>
|
||||||
<div class="tile is-ancestor">
|
<div class="tile is-ancestor">
|
||||||
<div class="tile is-parent">
|
<div class="tile is-parent">
|
||||||
<div class="tile is-child field">
|
<div class="tile is-child field">
|
||||||
<label for="str">Str:</label>
|
<label for="int">Int:</label>
|
||||||
<div class="control">
|
<div class="control">
|
||||||
<input type="number" name="str" required class="input input-bordered w-full max-w-xs">
|
<input type="number" name="int" required class="input input-bordered w-full max-w-xs">
|
||||||
</div>
|
</div>
|
||||||
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
<div class="tile is-parent">
|
||||||
<div class="tile is-parent">
|
<div class="tile is-child field">
|
||||||
<div class="tile is-child field">
|
<label for="wis">Wis:</label>
|
||||||
<label for="dex">Dex:</label>
|
<div class="control">
|
||||||
<div class="control">
|
<input type="number" name="wis" required class="input input-bordered w-full max-w-xs">
|
||||||
<input type="number" name="dex" required class="input input-bordered w-full max-w-xs">
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
<div class="tile is-parent">
|
||||||
<div class="tile is-parent">
|
<div class="tile is-child field">
|
||||||
<div class="tile is-child field">
|
<label for="cha">Cha:</label>
|
||||||
<label for="con">Con:</label>
|
<div class="control">
|
||||||
<div class="control">
|
<input type="number" name="cha" required class="input input-bordered w-full max-w-xs">
|
||||||
<input type="number" name="con" required class="input input-bordered w-full max-w-xs">
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
</div>
|
||||||
|
<div class="tile is-parent">
|
||||||
|
<div class="tile is-child field">
|
||||||
|
<label for="passive">Passive:</label>
|
||||||
|
<div class="control">
|
||||||
|
<input type="number" name="passive" required class="input input-bordered w-full max-w-xs">
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div class="card tile is-ancestor is-vertical">
|
||||||
|
<header class="card-header">
|
||||||
|
<p class="card-header-title">
|
||||||
|
Save
|
||||||
|
</p>
|
||||||
|
</header>
|
||||||
|
<div class="card-content">
|
||||||
|
<div class="content">
|
||||||
|
<div class="tile is-ancestor">
|
||||||
|
<div class="tile is-parent gap">
|
||||||
|
<div class="tile is-child field">
|
||||||
|
<label for="saveDex">Dex:</label>
|
||||||
|
<div class="control">
|
||||||
|
<input type="text" name="saveDex" required class="input input-bordered w-full max-w-xs">
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div class="tile is-parent gap">
|
||||||
|
<div class="tile is-child field">
|
||||||
|
<label for="saveCon">Con:</label>
|
||||||
|
<div class="control">
|
||||||
|
<input type="text" name="saveCon" required class="input input-bordered w-full max-w-xs">
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div class="tile is-parent gap">
|
||||||
|
<div class="tile is-child field">
|
||||||
|
<label for="saveWis">Wis:</label>
|
||||||
|
<div class="control">
|
||||||
|
<input type="text" name="saveWis" required class="input input-bordered w-full max-w-xs">
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div class="tile is-ancestor">
|
||||||
|
<div class="tile is-parent gap">
|
||||||
|
<div class="tile is-child field">
|
||||||
|
<label for="saveCha">Cha:</label>
|
||||||
|
<div class="control">
|
||||||
|
<input type="text" name="saveCha" required class="input input-bordered w-full max-w-xs">
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div class="tile is-parent gap">
|
||||||
|
<div class="tile is-child field">
|
||||||
|
<label for="saveInt">Int:</label>
|
||||||
|
<div class="control">
|
||||||
|
<input type="text" name="saveInt" required class="input input-bordered w-full max-w-xs">
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div class="tile is-parent gap">
|
||||||
|
<div class="tile is-child field">
|
||||||
|
<label for="saveStr">Str:</label>
|
||||||
|
<div class="control">
|
||||||
|
<input type="text" name="saveStr" required class="input input-bordered w-full max-w-xs">
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div class="card tile is-ancestor is-vertical">
|
||||||
|
<header class="card-header">
|
||||||
|
<p class="card-header-title">
|
||||||
|
Skill
|
||||||
|
</p>
|
||||||
|
</header>
|
||||||
|
<div class="card-content">
|
||||||
|
<div class="content">
|
||||||
|
<div class="tile is-ancestor">
|
||||||
|
<div class="tile is-parent">
|
||||||
|
<div class="tile is-child field">
|
||||||
|
<label for="acrobatics">Acrobatics:</label>
|
||||||
|
<div class="control">
|
||||||
|
<input type="text" name="acrobatics" required class="input input-bordered w-full max-w-xs">
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div class="tile is-parent">
|
||||||
|
<div class="tile is-child field">
|
||||||
|
<label for="animalHandling">Animal Handling:</label>
|
||||||
|
<div class="control">
|
||||||
|
<input type="text" name="animalHandling" required
|
||||||
|
class="input input-bordered w-full max-w-xs">
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div class="tile is-parent">
|
||||||
|
<div class="tile is-child field">
|
||||||
|
<label for="arcana">Arcana:</label>
|
||||||
|
<div class="control">
|
||||||
|
<input type="text" name="arcana" required class="input input-bordered w-full max-w-xs">
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div class="tile is-ancestor">
|
||||||
|
<div class="tile is-parent">
|
||||||
|
<div class="tile is-child field">
|
||||||
|
<label for="athletics">Athletics:</label>
|
||||||
|
<div class="control">
|
||||||
|
<input type="text" name="athletics" required class="input input-bordered w-full max-w-xs">
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div class="tile is-parent">
|
||||||
|
<div class="tile is-child field">
|
||||||
|
<label for="deception">Deception:</label>
|
||||||
|
<div class="control">
|
||||||
|
<input type="text" name="deception" required class="input input-bordered w-full max-w-xs">
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div class="tile is-parent">
|
||||||
|
<div class="tile is-child field">
|
||||||
|
<label for="history">History:</label>
|
||||||
|
<div class="control">
|
||||||
|
<input type="text" name="history" required class="input input-bordered w-full max-w-xs">
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div class="tile is-ancestor">
|
||||||
|
<div class="tile is-parent">
|
||||||
|
<div class="tile is-child field">
|
||||||
|
<label for="insight">Insight:</label>
|
||||||
|
<div class="control">
|
||||||
|
<input type="text" name="insight" required class="input input-bordered w-full max-w-xs">
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div class="tile is-parent">
|
||||||
|
<div class="tile is-child field">
|
||||||
|
<label for="intimidation">Intimidation:</label>
|
||||||
|
<div class="control">
|
||||||
|
<input type="text" name="intimidation" required
|
||||||
|
class="input input-bordered w-full max-w-xs">
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div class="tile is-parent">
|
||||||
|
<div class="tile is-child field">
|
||||||
|
<label for="investigation">Investigation:</label>
|
||||||
|
<div class="control">
|
||||||
|
<input type="text" name="investigation" required
|
||||||
|
class="input input-bordered w-full max-w-xs">
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div class="tile is-ancestor">
|
||||||
|
<div class="tile is-parent">
|
||||||
|
<div class="tile is-child field">
|
||||||
|
<label for="medicine">Medicine:</label>
|
||||||
|
<div class="control">
|
||||||
|
<input type="text" name="medicine" required class="input input-bordered w-full max-w-xs">
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div class="tile is-parent">
|
||||||
|
<div class="tile is-child field">
|
||||||
|
<label for="nature">Nature:</label>
|
||||||
|
<div class="control">
|
||||||
|
<input type="text" name="nature" required class="input input-bordered w-full max-w-xs">
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div class="tile is-parent">
|
||||||
|
<div class="tile is-child field">
|
||||||
|
<label for="performance">Performance:</label>
|
||||||
|
<div class="control">
|
||||||
|
<input type="text" name="performance" required class="input input-bordered w-full max-w-xs">
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div class="tile is-ancestor">
|
||||||
|
<div class="tile is-parent">
|
||||||
|
<div class="tile is-child field">
|
||||||
|
<label for="perception">Perception:</label>
|
||||||
|
<div class="control">
|
||||||
|
<input type="text" name="perception" required class="input input-bordered w-full max-w-xs">
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div class="tile is-parent">
|
||||||
|
<div class="tile is-child field">
|
||||||
|
<label for="stealth">Stealth:</label>
|
||||||
|
<div class="control">
|
||||||
|
<input type="text" name="stealth" required class="input input-bordered w-full max-w-xs">
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
|
||||||
</div>
|
</div>
|
||||||
<div class="tile is-ancestor">
|
<div class="tile is-ancestor">
|
||||||
<div class="tile is-parent">
|
<div class="tile is-parent">
|
||||||
<div class="tile is-child field">
|
<div class="tile is-child field">
|
||||||
<label for="int">Int:</label>
|
<label for="resist">Damage Resistances:</label>
|
||||||
<div class="control">
|
<div class="control">
|
||||||
<input type="number" name="int" required class="input input-bordered w-full max-w-xs">
|
<input type="text" name="resist" required class="input input-bordered w-full max-w-xs">
|
||||||
</div>
|
</div>
|
||||||
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
|
||||||
<div class="tile is-parent">
|
|
||||||
<div class="tile is-child field">
|
|
||||||
<label for="wis">Wis:</label>
|
|
||||||
<div class="control">
|
|
||||||
<input type="number" name="wis" required class="input input-bordered w-full max-w-xs">
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
<div class="tile is-parent">
|
|
||||||
<div class="tile is-child field">
|
|
||||||
<label for="cha">Cha:</label>
|
|
||||||
<div class="control">
|
|
||||||
<input type="number" name="cha" required class="input input-bordered w-full max-w-xs">
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</div>
|
</div>
|
||||||
<div class="tile is-ancestor">
|
<div class="tile is-ancestor">
|
||||||
<div class="tile is-parent gap">
|
<div class="tile is-parent">
|
||||||
<div class="tile is-child field">
|
<div class="tile is-child field">
|
||||||
<label for="saveDex">Save Dex:</label>
|
<label for="senses">Senses:</label>
|
||||||
<div class="control">
|
<div class="control">
|
||||||
<input type="text" name="saveDex" required class="input input-bordered w-full max-w-xs">
|
<input type="text" name="senses" required class="input input-bordered w-full max-w-xs">
|
||||||
</div>
|
</div>
|
||||||
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
|
||||||
<div class="tile is-parent gap">
|
|
||||||
<div class="tile is-child field">
|
|
||||||
<label for="saveCon">Save Con:</label>
|
|
||||||
<div class="control">
|
|
||||||
<input type="text" name="saveCon" required class="input input-bordered w-full max-w-xs">
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
<div class="tile is-parent gap">
|
|
||||||
<div class="tile is-child field">
|
|
||||||
<label for="saveWis">Save Wis:</label>
|
|
||||||
<div class="control">
|
|
||||||
<input type="text" name="saveWis" required class="input input-bordered w-full max-w-xs">
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</div>
|
</div>
|
||||||
<div class="tile is-ancestor">
|
<div class="tile is-ancestor">
|
||||||
<div class="tile is-parent">
|
<div class="tile is-parent">
|
||||||
<div class="tile is-child field">
|
<div class="tile is-child field">
|
||||||
<label for="perception">Perception:</label>
|
<label for="languages">Languages:</label>
|
||||||
<div class="control">
|
<div class="control">
|
||||||
<input type="text" name="perception" required class="input input-bordered w-full max-w-xs">
|
<input type="text" name="languages" required class="input input-bordered w-full max-w-xs">
|
||||||
</div>
|
</div>
|
||||||
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
|
||||||
</div>
|
</div>
|
||||||
<div class="tile is-ancestor">
|
<div class="tile is-ancestor">
|
||||||
<div class="tile is-parent">
|
<div class="tile is-parent">
|
||||||
<div class="tile is-child field">
|
<div class="tile is-child field">
|
||||||
<label for="stealth">Stealth:</label>
|
<label for="traitName">Trait Name:</label>
|
||||||
<div class="control">
|
<div class="control">
|
||||||
<input type="text" name="stealth" required class="input input-bordered w-full max-w-xs">
|
<input type="text" name="traitName" required class="input input-bordered w-full max-w-xs">
|
||||||
</div>
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div class="tile is-parent">
|
||||||
|
<div class="tile is-child field">
|
||||||
|
<label for="traitEntry">Trait Entry:</label>
|
||||||
|
<div class="control">
|
||||||
|
<input type="text" name="traitEntry" required class="input input-bordered w-full max-w-xs">
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
|
||||||
</div>
|
</div>
|
||||||
<div class="tile is-ancestor">
|
<div class="tile is-ancestor">
|
||||||
<div class="tile is-parent">
|
<div class="tile is-parent">
|
||||||
<div class="tile is-child field">
|
<div class="tile is-child field">
|
||||||
<label for="damageRes">Damage Resistances:</label>
|
<label for="actionName">Action Name:</label>
|
||||||
<div class="control">
|
<div class="control">
|
||||||
<input type="text" name="damageRes" required class="input input-bordered w-full max-w-xs">
|
<input type="text" name="actionName" required class="input input-bordered w-full max-w-xs">
|
||||||
</div>
|
</div>
|
||||||
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
<div class="tile is-parent">
|
||||||
</div>
|
<div class="tile is-child field">
|
||||||
<div class="tile is-ancestor">
|
<label for="actionEntry">Action Entry:</label>
|
||||||
<div class="tile is-parent">
|
<div class="control">
|
||||||
<div class="tile is-child field">
|
<input type="text" name="actionEntry" required class="input input-bordered w-full max-w-xs">
|
||||||
<label for="senses">Senses:</label>
|
</div>
|
||||||
<div class="control">
|
</div>
|
||||||
<input type="text" name="senses" required class="input input-bordered w-full max-w-xs">
|
|
||||||
</div>
|
|
||||||
</div>
|
</div>
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
<div class="tile is-ancestor">
|
|
||||||
<div class="tile is-parent">
|
|
||||||
<div class="tile is-child field">
|
|
||||||
<label for="languages">Languages:</label>
|
|
||||||
<div class="control">
|
|
||||||
<input type="text" name="languages" required class="input input-bordered w-full max-w-xs">
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
<div class="tile is-ancestor">
|
|
||||||
<div class="tile is-parent">
|
|
||||||
<div class="tile is-child field">
|
|
||||||
<label for="cr">CR:</label>
|
|
||||||
<div class="control">
|
|
||||||
<input type="text" name="cr" required class="input input-bordered w-full max-w-xs">
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
<div class="tile is-ancestor">
|
|
||||||
<div class="tile is-parent">
|
|
||||||
<div class="tile is-child field">
|
|
||||||
<label for="traitName">Trait Name:</label>
|
|
||||||
<div class="control">
|
|
||||||
<input type="text" name="traitName" required class="input input-bordered w-full max-w-xs">
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
<div class="tile is-parent">
|
|
||||||
<div class="tile is-child field">
|
|
||||||
<label for="traitEntry">Trait Entry:</label>
|
|
||||||
<div class="control">
|
|
||||||
<input type="text" name="traitEntry" required class="input input-bordered w-full max-w-xs">
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
<div class="tile is-ancestor">
|
|
||||||
<div class="tile is-parent">
|
|
||||||
<div class="tile is-child field">
|
|
||||||
<label for="actionName">Action Name:</label>
|
|
||||||
<div class="control">
|
|
||||||
<input type="text" name="actionName" required class="input input-bordered w-full max-w-xs">
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
<div class="tile is-parent">
|
|
||||||
<div class="tile is-child field">
|
|
||||||
<label for="actionEntry">Action Entry:</label>
|
|
||||||
<div class="control">
|
|
||||||
<input type="text" name="actionEntry" required class="input input-bordered w-full max-w-xs">
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</div>
|
</div>
|
||||||
{{end}}
|
{{end}}
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue