BehaviorMining.lua 1.1 KB

1234567891011121314151617181920212223242526272829303132333435
  1. local Behavior = require("bt/Behavior")
  2. local BehaviorMining = class("BehaviorMining", Behavior)
  3. local facade = global.Facade
  4. local BehaviorConfig = global.BehaviorConfig
  5. function BehaviorMining:ctor(data)
  6. BehaviorMining.super.ctor(self, data)
  7. end
  8. function BehaviorMining:getType()
  9. return BehaviorConfig.BehaviorType.BehaviorMining
  10. end
  11. function BehaviorMining:update(player, actCompleted)
  12. local inputProxy = facade:retrieveProxy(global.ProxyTable.PlayerInputProxy)
  13. local dir = inputProxy:GetMiningDir()
  14. local dest = inputProxy:GetMiningDest()
  15. if not dir or not dest then
  16. return BehaviorConfig.BTSTATUS_Failure
  17. end
  18. global.Facade:sendNotification(global.NoticeTable.RequestLaunchSkill, {skillID = global.MMO.SKILL_INDEX_DIG, dest = dest, dir = dir, priority = global.MMO.LAUNCH_PRIORITY_USER})
  19. global.Facade:sendNotification(global.NoticeTable.Audio_Play, {type=global.MMO.SND_TYPE_SKILL_ATTACK})
  20. inputProxy:ClearMining()
  21. return BehaviorConfig.BTSTATUS_Running
  22. end
  23. return BehaviorMining