actionpushboat.c 1.0 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546
  1. class CAContinuousRepeatPushBoat : CAContinuousRepeatPushObject
  2. {
  3. override float GetProgressWidgetMultiplier()
  4. {
  5. return 4;
  6. }
  7. }
  8. class ActionPushBoatCB : ActionPushObjectCB
  9. {
  10. override void CreateActionComponent()
  11. {
  12. m_ActionData.m_ActionComponent = new CAContinuousRepeatPushBoat(UATimeSpent.PUSH_BOAT);
  13. }
  14. }
  15. class ActionPushBoat : ActionPushObject
  16. {
  17. void ActionPushBoat()
  18. {
  19. m_CallbackClass = ActionPushBoatCB;
  20. m_CommandUID = DayZPlayerConstants.CMD_ACTIONFB_VEHICLE_PUSH;
  21. m_FullBody = true;
  22. m_StanceMask = DayZPlayerConstants.STANCEMASK_ERECT;
  23. m_Text = "#STR_push_boat";
  24. }
  25. override void OnStartServer(ActionData action_data)
  26. {
  27. super.OnStartServer(action_data);
  28. BoatScript boat = BoatScript.Cast(action_data.m_Target.GetObject());
  29. if (boat)
  30. boat.SyncSoundPushBoat(true);
  31. }
  32. override void OnEndServer(ActionData action_data)
  33. {
  34. super.OnEndServer(action_data);
  35. BoatScript boat = BoatScript.Cast(action_data.m_Target.GetObject());
  36. if (boat)
  37. boat.SyncSoundPushBoat(false);
  38. }
  39. }