ControlsTrigger.cpp 1.3 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586
  1. #include "ControlsTrigger.h"
  2. #include "JoystickManager.h"
  3. extern JoystickManager *joystickManager;
  4. ControlsTrigger:: ControlsTrigger()
  5. {
  6. }
  7. ControlsTrigger::~ControlsTrigger()
  8. {
  9. }
  10. bool ControlsTrigger::Create (MOPReader &reader)
  11. {
  12. InitParams(reader);
  13. return true;
  14. }
  15. bool ControlsTrigger::EditMode_Update(MOPReader &reader)
  16. {
  17. InitParams(reader);
  18. return true;
  19. }
  20. void ControlsTrigger::Show(bool isShow)
  21. {
  22. MissionObject::Show(isShow);
  23. //
  24. }
  25. void ControlsTrigger::Activate(bool isActive)
  26. {
  27. MissionObject::Activate(isActive);
  28. if( isActive )
  29. {
  30. if( reset_JoyPad )
  31. {
  32. joystickManager->ResetTable();
  33. LogicDebug("Reset JoyPad table.");
  34. }
  35. }
  36. }
  37. void ControlsTrigger::Command(const char *id, dword numParams, const char **params)
  38. {
  39. if( string::IsEmpty(id))
  40. return;
  41. if( false )
  42. {
  43. }
  44. else
  45. {
  46. LogicDebugError("Unknown command \"%s\".",id);
  47. }
  48. }
  49. void ControlsTrigger::InitParams(MOPReader &reader)
  50. {
  51. reset_JoyPad = reader.Bool();
  52. Activate(reader.Bool());
  53. }
  54. static char desc[] =
  55. "ControlsTrigger\n\n"
  56. " Use to reset controls service";
  57. MOP_BEGINLISTCG(ControlsTrigger, "ControlsTrigger", '1.00', 2000, desc, "Interface")
  58. MOP_GROUPBEG("Reset")
  59. MOP_BOOLC("JoyPad table", true, "Сбросить таблицу джойстиков")
  60. MOP_GROUPEND()
  61. MOP_BOOL("Active", false)
  62. MOP_ENDLIST(ControlsTrigger)