OpenRCT2/test/testpaint/SideTunnelCall.hpp

38 lines
1.1 KiB
C++
Raw Normal View History

2016-10-17 11:57:41 +02:00
/*****************************************************************************
* Copyright (c) 2014-2018 OpenRCT2 developers
2016-10-17 11:57:41 +02:00
*
* For a complete list of all authors, please refer to contributors.md
* Interested in contributing? Visit https://github.com/OpenRCT2/OpenRCT2
2016-10-17 11:57:41 +02:00
*
* OpenRCT2 is licensed under the GNU General Public License version 3.
2016-10-17 11:57:41 +02:00
*****************************************************************************/
#pragma once
2016-12-28 14:16:15 +01:00
#include <openrct2/common.h>
2017-12-14 10:34:12 +01:00
#include <openrct2/paint/Paint.h>
2016-10-17 11:57:41 +02:00
2018-06-22 22:29:03 +02:00
enum
{
2016-10-17 11:57:41 +02:00
TUNNELCALL_SKIPPED,
TUNNELCALL_NONE,
TUNNELCALL_CALL,
};
2018-06-22 22:29:03 +02:00
struct TunnelCall
{
uint8_t call;
int16_t offset;
uint8_t type;
2016-10-17 11:57:41 +02:00
};
2018-06-22 22:29:03 +02:00
namespace SideTunnelCall
{
int16_t GetTunnelOffset(uint32_t baseHeight, tunnel_entry calls[3]);
2018-06-22 22:29:03 +02:00
TunnelCall ExtractTunnelCalls(tunnel_entry* list, uint8_t count, uint16_t baseHeight, bool* error);
2016-10-17 11:57:41 +02:00
bool TunnelPatternsMatch(TunnelCall expected[4], TunnelCall actual[4]);
void GetTunnelCallReferencePattern(TunnelCall tunnelCalls[4][4], TunnelCall (*out)[4]);
bool TunnelCallsLineUp(TunnelCall tunnelCalls[4][4]);
2018-06-22 22:29:03 +02:00
}; // namespace SideTunnelCall