gameActorStatePlayerYLB.lua 2.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657
  1. local gameActorState = require( "actor/gameActorState")
  2. local gameActorStatePlayerYLB = class('gameActorStatePlayerYLB', gameActorState)
  3. function gameActorStatePlayerYLB:ctor()
  4. gameActorStatePlayerYLB.super.ctor(self)
  5. end
  6. function gameActorStatePlayerYLB:GetStateID()
  7. return global.MMO.ACTION_XLFH
  8. end
  9. -----------------------------------------------------------------------------
  10. function gameActorStatePlayerYLB:Tick(dt, player)
  11. player.mCurrentActT = player.mCurrentActT - dt
  12. if 0 >= player.mCurrentActT and player.mIsConfirmed then
  13. if player.mActionHandler then
  14. player.mActionHandler:handleActionCompleted( player, global.MMO.ACTION_XLFH )
  15. end
  16. end
  17. -- confirmed timeout
  18. if player.mCurrentActT <= -5.0 then
  19. player:SetConfirmed(true)
  20. end
  21. end
  22. -----------------------------------------------------------------------------
  23. function gameActorStatePlayerYLB:OnEnter(player)
  24. if player.mActionHandler then
  25. player.mActionHandler:handleActionBegin( player, global.MMO.ACTION_XLFH, player.mOrient, 0 )
  26. end
  27. local animTime = global.MMO.DEFAULT_XLFH_TIME / player:GetMagicSpeed()
  28. player.mAnimTime = animTime
  29. player.mCurrentActT = animTime
  30. player:SetConfirmed(true)
  31. -- reset some data
  32. player:SetAnimPrepare( 0.0 )
  33. player:dirtyAnimFlag()
  34. end
  35. -----------------------------------------------------------------------------
  36. function gameActorStatePlayerYLB:OnExit(player)
  37. -- reset prepare time
  38. player:SetAnimPrepare(3)
  39. --
  40. player:SetAnimAct(global.MMO.ANIM_READY)
  41. player:dirtyAnimFlag()
  42. end
  43. -----------------------------------------------------------------------------
  44. function gameActorStatePlayerYLB:ChangeState(newState, player, isTerminate)
  45. player.mCurrentState = newState
  46. return true
  47. end
  48. return gameActorStatePlayerYLB
  49. -----------------------------------------------------------------------------