+ hp goes now down
This commit is contained in:
@@ -1,6 +1,10 @@
|
|||||||
package handler
|
package handler
|
||||||
|
|
||||||
import (
|
import (
|
||||||
|
"fmt"
|
||||||
|
"math"
|
||||||
|
"strconv"
|
||||||
|
|
||||||
"github.com/gofiber/fiber/v2"
|
"github.com/gofiber/fiber/v2"
|
||||||
"github.com/gofiber/fiber/v2/log"
|
"github.com/gofiber/fiber/v2/log"
|
||||||
"github.com/itsig0/tallytome/view/hptracker"
|
"github.com/itsig0/tallytome/view/hptracker"
|
||||||
@@ -26,23 +30,19 @@ func Tracker(c *fiber.Ctx) error {
|
|||||||
|
|
||||||
func TrackerUpdate(c *fiber.Ctx) error {
|
func TrackerUpdate(c *fiber.Ctx) error {
|
||||||
|
|
||||||
_, err := store.Get(c)
|
sess, err := store.Get(c)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
return err
|
return err
|
||||||
}
|
}
|
||||||
|
|
||||||
// Parse the form data
|
|
||||||
formdata := c.Context().PostArgs()
|
|
||||||
|
|
||||||
// Create an instance of TrackerData
|
|
||||||
data := hptracker.TrackerData{
|
data := hptracker.TrackerData{
|
||||||
HP: string(formdata.Peek("hp")),
|
HP: c.FormValue("hp"),
|
||||||
HPBase: string(formdata.Peek("hp")),
|
HPBase: c.FormValue("hp"),
|
||||||
HPStartPercentage: "0",
|
HPStartPercentage: "0",
|
||||||
HPPercentage: "100",
|
HPPercentage: "100",
|
||||||
Mana: string(formdata.Peek("mana")),
|
Mana: c.FormValue("mana"),
|
||||||
ManaBase: string(formdata.Peek("mana")),
|
ManaBase: c.FormValue("mana"),
|
||||||
ManaRegen: string(formdata.Peek("manaregen")),
|
ManaRegen: c.FormValue("manaregen"),
|
||||||
ManaStartPercentage: "0",
|
ManaStartPercentage: "0",
|
||||||
ManaPercentage: "100",
|
ManaPercentage: "100",
|
||||||
}
|
}
|
||||||
@@ -55,33 +55,72 @@ func TrackerUpdate(c *fiber.Ctx) error {
|
|||||||
// sess.Set(prefix+types.Field(i).Name, values.Field(i))
|
// sess.Set(prefix+types.Field(i).Name, values.Field(i))
|
||||||
// log.Info("test")
|
// log.Info("test")
|
||||||
// }
|
// }
|
||||||
// pre := "tracker_"
|
pre := "tracker_"
|
||||||
// sess.Set(pre+"HP", data.HP)
|
sess.Set(pre+"HP", data.HP)
|
||||||
// sess.Set(pre+"HPBase", data.HPBase)
|
sess.Set(pre+"HPBase", data.HPBase)
|
||||||
// sess.Set(pre+"HPStartPercentage", data.HPStartPercentage)
|
sess.Set(pre+"HPPercentage", data.HPPercentage)
|
||||||
// sess.Set(pre+"HPStartPercentage", data.HPStartPercentage)
|
sess.Set(pre+"HPStartPercentage", data.HPStartPercentage)
|
||||||
|
|
||||||
// sess.Set(pre+"Mana", data.Mana)
|
sess.Set(pre+"Mana", data.Mana)
|
||||||
// sess.Set(pre+"ManaBase", data.ManaBase)
|
sess.Set(pre+"ManaBase", data.ManaBase)
|
||||||
// sess.Set(pre+"ManaRegen", data.ManaRegen)
|
sess.Set(pre+"ManaRegen", data.ManaRegen)
|
||||||
// sess.Set(pre+"ManaStartPercentage", data.ManaStartPercentage)
|
sess.Set(pre+"ManaStartPercentage", data.ManaStartPercentage)
|
||||||
// sess.Set(pre+"ManaPercentage", data.ManaPercentage)
|
sess.Set(pre+"ManaPercentage", data.ManaPercentage)
|
||||||
|
|
||||||
// sess.Save()
|
sess.Save()
|
||||||
|
|
||||||
return render(c, hptracker.TrackerColumn(data))
|
return render(c, hptracker.TrackerColumn(data))
|
||||||
}
|
}
|
||||||
|
|
||||||
func TrackerDamage(c *fiber.Ctx) error {
|
func TrackerDamage(c *fiber.Ctx) error {
|
||||||
|
|
||||||
// formdata := c.Context().PostArgs()
|
sess, err := store.Get(c)
|
||||||
|
if err != nil {
|
||||||
data := hptracker.TrackerData{
|
return err
|
||||||
HPStartPercentage: "100",
|
|
||||||
HPPercentage: "66",
|
|
||||||
}
|
}
|
||||||
|
|
||||||
// log.Info(data)
|
damage, err := strconv.Atoi(c.FormValue("damageInput"))
|
||||||
|
if err != nil {
|
||||||
|
c.SendStatus(418)
|
||||||
|
return err
|
||||||
|
} else if damage == 0 {
|
||||||
|
c.SendStatus(418)
|
||||||
|
return c.SendString("HP NOT NULL")
|
||||||
|
}
|
||||||
|
|
||||||
|
currentHP, err := strconv.Atoi(fmt.Sprint(sess.Get("tracker_HP")))
|
||||||
|
if err != nil {
|
||||||
|
c.SendStatus(418)
|
||||||
|
return err
|
||||||
|
}
|
||||||
|
|
||||||
|
baseHP, err := strconv.Atoi(fmt.Sprint(sess.Get("tracker_HPBase")))
|
||||||
|
if err != nil {
|
||||||
|
c.SendStatus(418)
|
||||||
|
return err
|
||||||
|
}
|
||||||
|
|
||||||
|
savingThrow := string(c.FormValue("savingthrow"))
|
||||||
|
if savingThrow == "on" {
|
||||||
|
damageFloat := float64(damage) * 0.33333
|
||||||
|
damage -= int(math.Round(damageFloat))
|
||||||
|
}
|
||||||
|
|
||||||
|
newHP := currentHP - damage
|
||||||
|
|
||||||
|
newPercentage := (newHP * 100) / baseHP
|
||||||
|
|
||||||
|
data := hptracker.TrackerData{
|
||||||
|
HP: fmt.Sprint(newHP),
|
||||||
|
HPBase: fmt.Sprint(sess.Get("tracker_HPBase")),
|
||||||
|
HPStartPercentage: fmt.Sprint(sess.Get("tracker_HPPercentage")),
|
||||||
|
HPPercentage: fmt.Sprint(newPercentage),
|
||||||
|
}
|
||||||
|
|
||||||
|
sess.Set("tracker_HP", newHP)
|
||||||
|
sess.Set("tracker_HPPercentage", newPercentage)
|
||||||
|
|
||||||
|
sess.Save()
|
||||||
|
|
||||||
return render(c, hptracker.HPTracker(data))
|
return render(c, hptracker.HPTracker(data))
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -70,12 +70,12 @@ templ TrackerColumn(td TrackerData){
|
|||||||
}
|
}
|
||||||
|
|
||||||
templ HPTracker(td TrackerData){
|
templ HPTracker(td TrackerData){
|
||||||
<span class="progress-label">TP: {td.HP}/{td.HP} </span>
|
<span class="progress-label">TP: {td.HP}/{td.HPBase} </span>
|
||||||
<div class={"hp", hpAnimation(td.HPStartPercentage, td.HPPercentage)} ></div>
|
<div class={"hp", hpAnimation(td.HPStartPercentage, td.HPPercentage)} ></div>
|
||||||
}
|
}
|
||||||
|
|
||||||
templ ManaTracker(td TrackerData){
|
templ ManaTracker(td TrackerData){
|
||||||
<span class="progress-label">Mana: {td.Mana}/{td.Mana} </span>
|
<span class="progress-label">Mana: {td.Mana}/{td.ManaBase} </span>
|
||||||
<div class={"mana", manaAnimation(td.ManaStartPercentage, td.ManaPercentage)}></div>
|
<div class={"mana", manaAnimation(td.ManaStartPercentage, td.ManaPercentage)}></div>
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -171,9 +171,9 @@ func HPTracker(td TrackerData) templ.Component {
|
|||||||
return templ_7745c5c3_Err
|
return templ_7745c5c3_Err
|
||||||
}
|
}
|
||||||
var templ_7745c5c3_Var6 string
|
var templ_7745c5c3_Var6 string
|
||||||
templ_7745c5c3_Var6, templ_7745c5c3_Err = templ.JoinStringErrs(td.HP)
|
templ_7745c5c3_Var6, templ_7745c5c3_Err = templ.JoinStringErrs(td.HPBase)
|
||||||
if templ_7745c5c3_Err != nil {
|
if templ_7745c5c3_Err != nil {
|
||||||
return templ.Error{Err: templ_7745c5c3_Err, FileName: `view/hptracker/tracker.templ`, Line: 72, Col: 51}
|
return templ.Error{Err: templ_7745c5c3_Err, FileName: `view/hptracker/tracker.templ`, Line: 72, Col: 55}
|
||||||
}
|
}
|
||||||
_, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var6))
|
_, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var6))
|
||||||
if templ_7745c5c3_Err != nil {
|
if templ_7745c5c3_Err != nil {
|
||||||
@@ -238,9 +238,9 @@ func ManaTracker(td TrackerData) templ.Component {
|
|||||||
return templ_7745c5c3_Err
|
return templ_7745c5c3_Err
|
||||||
}
|
}
|
||||||
var templ_7745c5c3_Var10 string
|
var templ_7745c5c3_Var10 string
|
||||||
templ_7745c5c3_Var10, templ_7745c5c3_Err = templ.JoinStringErrs(td.Mana)
|
templ_7745c5c3_Var10, templ_7745c5c3_Err = templ.JoinStringErrs(td.ManaBase)
|
||||||
if templ_7745c5c3_Err != nil {
|
if templ_7745c5c3_Err != nil {
|
||||||
return templ.Error{Err: templ_7745c5c3_Err, FileName: `view/hptracker/tracker.templ`, Line: 77, Col: 57}
|
return templ.Error{Err: templ_7745c5c3_Err, FileName: `view/hptracker/tracker.templ`, Line: 77, Col: 61}
|
||||||
}
|
}
|
||||||
_, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var10))
|
_, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var10))
|
||||||
if templ_7745c5c3_Err != nil {
|
if templ_7745c5c3_Err != nil {
|
||||||
|
|||||||
Reference in New Issue
Block a user