2018-11-05 07:28:01 +00:00
|
|
|
// "Build Engine & Tools" Copyright (c) 1993-1997 Ken Silverman
|
|
|
|
// Ken Silverman's official web site: "http://www.advsys.net/ken"
|
|
|
|
// See the included license file "BUILDLIC.TXT" for license info.
|
|
|
|
//
|
|
|
|
// This file has been modified from Ken Silverman's original release
|
|
|
|
// by Jonathon Fowler (jf@jonof.id.au)
|
|
|
|
// by the EDuke32 team (development@voidpoint.com)
|
|
|
|
|
2016-06-21 00:33:30 +00:00
|
|
|
#pragma once
|
|
|
|
|
|
|
|
#ifndef clip_h_
|
|
|
|
#define clip_h_
|
|
|
|
|
2019-04-10 09:30:52 +00:00
|
|
|
#define MAXCLIPSECTORS 512
|
2019-03-30 19:36:03 +00:00
|
|
|
#define MAXCLIPNUM 2048
|
2019-08-01 06:49:47 +00:00
|
|
|
#define CLIPCURBHEIGHT (1<<8)
|
2016-06-21 00:33:30 +00:00
|
|
|
typedef struct
|
|
|
|
{
|
|
|
|
int32_t x1, y1, x2, y2;
|
|
|
|
} linetype;
|
|
|
|
|
2019-04-10 09:31:01 +00:00
|
|
|
extern int16_t clipsectorlist[MAXCLIPSECTORS];
|
2016-06-21 00:33:30 +00:00
|
|
|
|
2016-08-27 01:41:33 +00:00
|
|
|
int clipinsidebox(vec2_t *vect, int wallnum, int walldist);
|
2020-05-10 07:08:02 +00:00
|
|
|
inline int clipinsidebox(int x, int y, int wall, int dist)
|
|
|
|
{
|
|
|
|
vec2_t v = { x, y };
|
|
|
|
return clipinsidebox(&v, wall, dist);
|
|
|
|
}
|
2016-08-27 01:41:33 +00:00
|
|
|
int clipinsideboxline(int x, int y, int x1, int y1, int x2, int y2, int walldist);
|
2016-06-21 00:33:30 +00:00
|
|
|
|
|
|
|
|
2021-11-07 17:20:41 +00:00
|
|
|
int32_t clipmove(vec3_t *const pos, int *const sectnum, int32_t xvect, int32_t yvect, int32_t const walldist, int32_t const ceildist,
|
2021-11-07 19:00:22 +00:00
|
|
|
int32_t const flordist, uint32_t const cliptype, int clipmoveboxtracenum = 3) ATTRIBUTE((nonnull(1, 2)));
|
2020-05-06 07:15:15 +00:00
|
|
|
|
2021-11-07 18:21:46 +00:00
|
|
|
int pushmove(vec3_t *const vect, int *const sectnum, int32_t const walldist, int32_t const ceildist, int32_t const flordist,
|
2019-07-24 01:37:47 +00:00
|
|
|
uint32_t const cliptype, bool clear = true) ATTRIBUTE((nonnull(1, 2)));
|
2016-06-21 00:33:30 +00:00
|
|
|
|
2016-12-26 06:02:01 +00:00
|
|
|
#endif
|