|
87 | 87 | #define DEFAULT_AIRCRAFT_MAXHEIGHT 800 |
88 | 88 | #define DEFAULT_AIRCRAFT_MAXVELOCITY 1.5f |
89 | 89 | #define DEFAULT_MINUTE_DURATION 1000 |
| 90 | +#define NUM_CLIENT_EVENT_ERROR_GAP 1000 |
90 | 91 |
|
91 | 92 | #ifndef WIN32 |
92 | 93 | #include <limits.h> |
@@ -2673,15 +2674,22 @@ void CGame::Packet_LuaEvent(CLuaEventPacket& Packet) |
2673 | 2674 | } |
2674 | 2675 |
|
2675 | 2676 | } |
2676 | | - else |
| 2677 | + else |
| 2678 | + { |
| 2679 | + // Limit this error to prevent debug / log files being flooded. |
| 2680 | + static std::uint64_t s_lastClientEventErrorLog = 0; |
| 2681 | + auto now = GetTickCount64_(); |
| 2682 | + if (now - s_lastClientEventErrorLog > NUM_CLIENT_EVENT_ERROR_GAP) |
2677 | 2683 | { |
2678 | 2684 | CLuaArguments arguments; |
2679 | 2685 | arguments.PushString(szName); |
2680 | 2686 | arguments.PushBoolean(false); |
2681 | 2687 | arguments.PushBoolean(false); |
2682 | 2688 | pCaller->CallEvent("onPlayerTriggerInvalidEvent", arguments); |
2683 | 2689 | m_pScriptDebugging->LogError(NULL, "Client (%s) triggered serverside event %s, but event is not added serverside", pCaller->GetNick(), szName); |
| 2690 | + s_lastClientEventErrorLog = now; |
2684 | 2691 | } |
| 2692 | + } |
2685 | 2693 |
|
2686 | 2694 | RegisterClientTriggeredEventUsage(pCaller, szName); |
2687 | 2695 | } |
|
0 commit comments