use and delete items
This commit is contained in:
Binary file not shown.
@@ -99,7 +99,8 @@ func main() {
|
||||
e.GET("login", badreq)
|
||||
e.GET("player", player_data)
|
||||
e.GET("player/inv", inv_get)
|
||||
e.GET("player/inv/:id", inv_del)
|
||||
e.GET("player/inv/del/:id", inv_del)
|
||||
e.GET("player/inv/use/:id", inv_use)
|
||||
e.POST("player/update", player_updateInputs)
|
||||
e.PATCH("player/:atb/:updown", player_update)
|
||||
|
||||
|
||||
@@ -399,3 +399,37 @@ func inv_del(c echo.Context) error {
|
||||
|
||||
return jsonSuccess(c, "você item deletado")
|
||||
}
|
||||
|
||||
func inv_use(c echo.Context) error {
|
||||
session, err := requireSession(c)
|
||||
if err != nil {
|
||||
return nil
|
||||
}
|
||||
if session["playerName"] == "" {
|
||||
return jsonError(c, http.StatusUnauthorized, "você precisa estar logado para usar algum item")
|
||||
}
|
||||
itemID := c.Param("id")
|
||||
var durabilidade bool
|
||||
var quantidade, menos int
|
||||
var item_name string
|
||||
err = db.QueryRow(fmt.Sprintf("SELECT item_durabilit, quantidade, item_nome FROM inv_%s WHERE id=?;", session["playerName"]), itemID).Scan(&durabilidade, &quantidade, &item_name)
|
||||
if err != nil {
|
||||
return jsonError(c, http.StatusInternalServerError, "item não foi encontrado")
|
||||
}
|
||||
if durabilidade == false {
|
||||
return jsonSuccess(c, "você usou um item sem durabilidade")
|
||||
}
|
||||
menos = quantidade - 1
|
||||
if menos > 1 {
|
||||
err = updateField(fmt.Sprintf("UPDATE inv_%s SET quantidade=? WHERE id=?;", session["playerName"]), menos, itemID)
|
||||
if err != nil {
|
||||
return jsonError(c, http.StatusInternalServerError, "algo deu errado ao usar seu item")
|
||||
}
|
||||
return jsonSuccess(c, fmt.Sprintf("você uso 1 %s", item_name))
|
||||
}
|
||||
err = updateField(fmt.Sprintf("DELETE FROM inv_%s WHERE id=?", session["playerName"]), itemID)
|
||||
if err != nil {
|
||||
return jsonError(c, http.StatusInternalServerError, "item não foi apagado, algo deu errado")
|
||||
}
|
||||
return jsonSuccess(c, fmt.Sprintf("você gastou seu ultimo %s", item_name))
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user