aboutsummaryrefslogtreecommitdiff
path: root/internal/game/act_steal.go
diff options
context:
space:
mode:
Diffstat (limited to 'internal/game/act_steal.go')
-rw-r--r--internal/game/act_steal.go30
1 files changed, 15 insertions, 15 deletions
diff --git a/internal/game/act_steal.go b/internal/game/act_steal.go
index a64bc96..b5c1210 100644
--- a/internal/game/act_steal.go
+++ b/internal/game/act_steal.go
@@ -102,7 +102,7 @@ func (g *Game) resolveStealTarget(sess *net.Session, p *player.Player, input str
var stealObjs []*object.ObjectDef
for _, st := range roomObjs {
def, err := g.ObjectStore.Load(st.DefID)
- if err != nil || def.StealTable == "" {
+ if err != nil || def.Steal == nil || def.Steal.Table == "" {
continue
}
stealObjs = append(stealObjs, def)
@@ -224,14 +224,14 @@ func (g *Game) startSteal(sess *net.Session, p *player.Player, targetType string
return
}
} else {
- stealTable = objDef.StealTable
- stealLevel = objDef.StealLevel
- stealXP = objDef.StealXP
- stealSpeed = objDef.StealSpeed
+ stealTable = objDef.Steal.Table
+ stealLevel = objDef.Steal.Level
+ stealXP = objDef.Steal.XP
+ stealSpeed = objDef.Steal.Speed
targetName = objDef.Name
targetID = objDef.ID
objDefID = objDef.ID
- guardMob = objDef.GuardMob
+ guardMob = objDef.Steal.GuardMob
if stealTable == "" {
sess.WriteLine(fmt.Sprintf("You can't steal from the %s.", targetName))
@@ -328,15 +328,15 @@ func (g *Game) advanceSteal(sess *net.Session, p *player.Player) {
return
}
objDef, err := g.ObjectStore.Load(objDefID)
- if err == nil {
- d.StealLevel = objDef.StealLevel
- d.StealXP = objDef.StealXP
- d.StealSpeed = objDef.StealSpeed
- stealLevel = objDef.StealLevel
- stealXP = objDef.StealXP
- stealSpeed = objDef.StealSpeed
- d.GuardMob = objDef.GuardMob
- guardMob = objDef.GuardMob
+ if err == nil && objDef.Steal != nil {
+ d.StealLevel = objDef.Steal.Level
+ d.StealXP = objDef.Steal.XP
+ d.StealSpeed = objDef.Steal.Speed
+ stealLevel = objDef.Steal.Level
+ stealXP = objDef.Steal.XP
+ stealSpeed = objDef.Steal.Speed
+ d.GuardMob = objDef.Steal.GuardMob
+ guardMob = objDef.Steal.GuardMob
if guardMob != "" {
guard := g.findGuardInRoom(p.RoomID, guardMob)