aboutsummaryrefslogtreecommitdiff
path: root/internal/game/act_farm.go
diff options
context:
space:
mode:
Diffstat (limited to 'internal/game/act_farm.go')
-rw-r--r--internal/game/act_farm.go80
1 files changed, 40 insertions, 40 deletions
diff --git a/internal/game/act_farm.go b/internal/game/act_farm.go
index 62e08fd..a4d96b4 100644
--- a/internal/game/act_farm.go
+++ b/internal/game/act_farm.go
@@ -41,13 +41,13 @@ func farmFlagPrefix(defID string, index int) string {
func (g *Game) ensureFarmState(p *player.Player, prefix string) {
p.EnsureFlags()
if _, exists := p.Flags[prefix+"_seed"]; !exists {
- p.Flags[prefix+"_weeds"] = true
- p.Flags[prefix+"_seed"] = ""
- p.Flags[prefix+"_stage"] = 0
- p.Flags[prefix+"_watered"] = false
- p.Flags[prefix+"_diseased"] = false
- p.Flags[prefix+"_dead"] = false
- p.Flags[prefix+"_ready"] = false
+ g.setPlayerFlag(p, prefix+"_weeds", true)
+ g.setPlayerFlag(p, prefix+"_seed", "")
+ g.setPlayerFlag(p, prefix+"_stage", 0)
+ g.setPlayerFlag(p, prefix+"_watered", false)
+ g.setPlayerFlag(p, prefix+"_diseased", false)
+ g.setPlayerFlag(p, prefix+"_dead", false)
+ g.setPlayerFlag(p, prefix+"_ready", false)
}
}
@@ -111,8 +111,8 @@ func (g *Game) advanceFarmGrowth(sess *net.Session, p *player.Player) {
}
if diseased {
- p.Flags[prefix+"_dead"] = true
- p.Flags[prefix+"_diseased"] = false
+ g.setPlayerFlag(p, prefix+"_dead", true)
+ g.setPlayerFlag(p, prefix+"_diseased", false)
sess.WriteLine(g.colorize(sess, "farm_disease",
fmt.Sprintf("\nYour %s has died from disease!", g.seedDisplayName(sess, seedID))))
g.AccountStore.SaveCharacter(p)
@@ -135,23 +135,23 @@ func (g *Game) advanceFarmGrowth(sess *net.Session, p *player.Player) {
stage++
if stage >= maxStages {
- p.Flags[prefix+"_stage"] = stage
- p.Flags[prefix+"_ready"] = true
- p.Flags[prefix+"_watered"] = false
+ g.setPlayerFlag(p, prefix+"_stage", stage)
+ g.setPlayerFlag(p, prefix+"_ready", true)
+ g.setPlayerFlag(p, prefix+"_watered", false)
sess.WriteLine(g.colorize(sess, "farm_grow",
fmt.Sprintf("\nYour %s is fully grown and ready to harvest!",
g.seedDisplayName(sess, seedID))))
} else {
if !watered && rand.Float64() < 0.10 {
- p.Flags[prefix+"_stage"] = stage
- p.Flags[prefix+"_diseased"] = true
- p.Flags[prefix+"_watered"] = false
+ g.setPlayerFlag(p, prefix+"_stage", stage)
+ g.setPlayerFlag(p, prefix+"_diseased", true)
+ g.setPlayerFlag(p, prefix+"_watered", false)
sess.WriteLine(g.colorize(sess, "farm_disease",
fmt.Sprintf("\nYour %s has become diseased!",
g.seedDisplayName(sess, seedID))))
} else {
- p.Flags[prefix+"_stage"] = stage
- p.Flags[prefix+"_watered"] = false
+ g.setPlayerFlag(p, prefix+"_stage", stage)
+ g.setPlayerFlag(p, prefix+"_watered", false)
sess.WriteLine(g.colorize(sess, "farm_grow",
fmt.Sprintf("\nYour %s has grown to stage %d/%d.",
g.seedDisplayName(sess, seedID), stage, maxStages)))
@@ -182,13 +182,13 @@ func (g *Game) advancePlant(sess *net.Session, p *player.Player) {
g.ensureFarmState(p, prefix)
- p.Flags[prefix+"_weeds"] = false
- p.Flags[prefix+"_seed"] = seedID
- p.Flags[prefix+"_stage"] = 0
- p.Flags[prefix+"_watered"] = false
- p.Flags[prefix+"_diseased"] = false
- p.Flags[prefix+"_dead"] = false
- p.Flags[prefix+"_ready"] = false
+ g.setPlayerFlag(p, prefix+"_weeds", false)
+ g.setPlayerFlag(p, prefix+"_seed", seedID)
+ g.setPlayerFlag(p, prefix+"_stage", 0)
+ g.setPlayerFlag(p, prefix+"_watered", false)
+ g.setPlayerFlag(p, prefix+"_diseased", false)
+ g.setPlayerFlag(p, prefix+"_dead", false)
+ g.setPlayerFlag(p, prefix+"_ready", false)
if intXP := int(xp); intXP > 0 {
g.awardSkillXP(sess, p, player.Farming, intXP)
@@ -280,13 +280,13 @@ func (g *Game) advanceHarvest(sess *net.Session, p *player.Player) {
}
g.ensureFarmState(p, prefix)
- p.Flags[prefix+"_seed"] = ""
- p.Flags[prefix+"_stage"] = 0
- p.Flags[prefix+"_ready"] = false
- p.Flags[prefix+"_watered"] = false
- p.Flags[prefix+"_weeds"] = true
- p.Flags[prefix+"_diseased"] = false
- p.Flags[prefix+"_dead"] = false
+ g.setPlayerFlag(p, prefix+"_seed", "")
+ g.setPlayerFlag(p, prefix+"_stage", 0)
+ g.setPlayerFlag(p, prefix+"_ready", false)
+ g.setPlayerFlag(p, prefix+"_watered", false)
+ g.setPlayerFlag(p, prefix+"_weeds", true)
+ g.setPlayerFlag(p, prefix+"_diseased", false)
+ g.setPlayerFlag(p, prefix+"_dead", false)
g.AccountStore.SaveCharacter(p)
@@ -314,13 +314,13 @@ func (g *Game) advanceRake(sess *net.Session, p *player.Player) {
}
prefix := data.Prefix
- p.Flags[prefix+"_weeds"] = false
- p.Flags[prefix+"_dead"] = false
- p.Flags[prefix+"_seed"] = ""
- p.Flags[prefix+"_stage"] = 0
- p.Flags[prefix+"_ready"] = false
- p.Flags[prefix+"_diseased"] = false
- p.Flags[prefix+"_watered"] = false
+ g.setPlayerFlag(p, prefix+"_weeds", false)
+ g.setPlayerFlag(p, prefix+"_dead", false)
+ g.setPlayerFlag(p, prefix+"_seed", "")
+ g.setPlayerFlag(p, prefix+"_stage", 0)
+ g.setPlayerFlag(p, prefix+"_ready", false)
+ g.setPlayerFlag(p, prefix+"_diseased", false)
+ g.setPlayerFlag(p, prefix+"_watered", false)
g.AccountStore.SaveCharacter(p)
@@ -340,7 +340,7 @@ func (g *Game) advanceWater(sess *net.Session, p *player.Player) {
}
prefix := data.Prefix
- p.Flags[prefix+"_watered"] = true
+ g.setPlayerFlag(p, prefix+"_watered", true)
g.AccountStore.SaveCharacter(p)
@@ -361,7 +361,7 @@ func (g *Game) advanceCure(sess *net.Session, p *player.Player) {
prefix := data.Prefix
p.RemoveItem("plant_cure", 1)
- p.Flags[prefix+"_diseased"] = false
+ g.setPlayerFlag(p, prefix+"_diseased", false)
g.AccountStore.SaveCharacter(p)