Amulets & Armor
v1.02
Open Source Game
Main Page
Modules
Data Structures
Files
File List
Globals
All
Data Structures
Files
Functions
Variables
Typedefs
Enumerations
Enumerator
Macros
Groups
Include
3D_COLLI.H
Go to the documentation of this file.
1
/****************************************************************************/
2
/* FILE: 3D_COLLI.H */
3
/****************************************************************************/
4
#ifndef _3D_COLLI_H_
5
#define _3D_COLLI_H_
6
7
#include "
GENERAL.H
"
8
#include "
VIEWFILE.H
"
9
10
#define WALL_LIST_ITEM_UPPER 0x01
/* ---- ---1 */
11
#define WALL_LIST_ITEM_LOWER 0x02
/* ---- --1- */
12
#define WALL_LIST_ITEM_MAIN 0x04
/* ---- -1-- */
13
14
typedef
struct
{
15
T_byte8
itemType
;
16
T_word16
lineNumber
;
17
}
T_wallListItem
;
18
19
extern
T_word16
G_numHits
;
20
21
T_sword16
View3dMoveToXY
(
22
T_sword32
*oldX,
23
T_sword32
*oldY,
24
T_sword32
newx,
25
T_sword32
newy,
26
T_sword32
radius,
27
T_sword32
foot,
28
T_sword32
head,
29
T_sword16
height,
30
T_3dObject
*p_obj) ;
31
32
E_Boolean
View3dObjectHitFast
(
33
T_sword16
x,
34
T_sword16
y,
35
T_word16
radius,
36
T_sword16
lastX,
37
T_sword16
lastY,
38
T_sword16
zBottom,
39
T_sword16
zTop,
40
T_sword16
height,
41
T_3dObject
*p_movingObject) ;
42
43
T_sword16
View3dMoveTo
(
44
T_sword32
*oldX,
45
T_sword32
*oldY,
46
T_word16
angle,
47
T_sword32
step,
48
T_sword32
radius,
49
T_sword32
foot,
50
T_sword32
head,
51
T_sword16
height,
52
T_3dObject
*p_obj) ;
53
54
T_sword16
View3dMoveToFast
(
55
T_sword32
*oldX,
56
T_sword32
*oldY,
57
T_word16
angle,
58
T_sword32
step,
59
T_sword32
radius,
60
T_sword32
foot,
61
T_sword32
head,
62
T_sword32
height,
63
T_3dObject
*p_obj) ;
64
65
T_void
View3dGetFloorAndCeilingHeight
(
T_sword16
*floor,
T_sword16
*ceiling) ;
66
67
T_void
View3dGetFloorAbove
(
T_word16
*above) ;
68
69
T_void
View3dGetCeilingBelow
(
T_word16
*below) ;
70
71
T_void
View3dSetExceptObject
(
T_word16
exceptObject) ;
72
73
T_void
View3dSetExceptObjectByPtr
(
T_objMoveStruct
*p_object) ;
74
75
E_Boolean
View3dObjectHit
(
T_sword16
x,
T_sword16
y,
T_word16
radius) ;
76
77
T_word16
*
View3dGetSurroundingSectors
(
T_word16
*numSectors) ;
78
79
T_void
View3dSetMoveAccuracy
(
T_word16
accuracy) ;
80
81
T_word16
View3dGetMoveAccuracy
(
T_void
) ;
82
83
T_word16
View3dFindLineHits
(
84
T_sword16
x1,
85
T_sword16
y1,
86
T_sword16
x2,
87
T_sword16
y2,
88
T_word16
maxHits,
89
T_sword16
*lines) ;
90
91
T_void
View3dDisallowDip
(
T_void
) ;
92
93
T_void
View3dAllowDip
(
T_void
) ;
94
95
T_word16
Collide3dGetWallsInBox
(
96
T_sword32
x,
97
T_sword32
y,
98
T_word16
radius,
99
T_word16
maxWalls,
100
T_word16
*p_walls) ;
101
102
E_Boolean
Collide3dGetSectorsInBox
(
103
T_sword32
x,
104
T_sword32
y,
105
T_word16
radius,
106
T_word16
maxSectors,
107
T_word16
*p_sectors,
108
T_word16
*p_numSectors) ;
109
110
E_Boolean
Collide3dMoveToXYZ
(
111
T_3dObject
*p_obj,
112
T_sword32
newX,
113
T_sword32
newY,
114
T_sword32
newZ) ;
115
116
T_sword16
Collide3dCheckSegmentHitsSegment
(
117
T_sword16
x1,
118
T_sword16
y1,
119
T_sword16
x2,
120
T_sword16
y2,
121
T_word16
lineNum) ;
122
123
T_byte8
Collide3dPointOnRight
(
124
T_sword32
lineX1,
125
T_sword32
lineY1,
126
T_sword32
lineX2,
127
T_sword32
lineY2,
128
T_sword32
pointX,
129
T_sword32
pointY) ;
130
131
E_Boolean
Collide3dCheckLineOfSight
(
132
T_sword16
sightStartX,
133
T_sword16
sightStartY,
134
T_sword16
sightEndX,
135
T_sword16
sightEndY) ;
136
137
T_word16
Collide3dFindWallList
(
138
T_sword16
x1,
139
T_sword16
y1,
140
T_sword16
x2,
141
T_sword16
y2,
142
T_sword16
z,
143
T_word16
maxWalls,
144
T_wallListItem
*p_list,
145
T_byte8
wallTypes) ;
146
147
E_Boolean
View3dIsAllowDip
(
T_void
) ;
148
149
T_void
Collide3dSetWallDefinition
(
T_word16
lineFlags) ;
150
151
T_sword16
Collide3dCheckSegmentHitBox
(
152
T_word16
lineNum,
153
T_sword16
x1,
154
T_sword16
y1,
155
T_sword16
x2,
156
T_sword16
y2) ;
157
158
E_Boolean
Collide3dObjectToObjectCheckLineOfSight
(
159
T_3dObject
*p_from,
160
T_3dObject
*p_to) ;
161
162
typedef
struct
{
163
T_sword16
x,
y
;
164
T_word16
sector
;
165
}
T_lineOfSightLast
;
166
167
T_void
Collide3dUpdateLineOfSightLast
(
168
T_lineOfSightLast
*p_lastSight,
169
T_3dObject
*p_target) ;
170
171
E_Boolean
Collide3dObjectToXYCheckLineOfSight
(
172
T_3dObject
*p_from,
173
T_lineOfSightLast
*p_lastSight,
174
T_sword16
x,
175
T_sword16
y) ;
176
177
E_Boolean
Collide3dObjectToXYCheckLineOfSightWithZ
(
178
T_3dObject
*p_from,
179
T_sword16
x,
180
T_sword16
y,
181
T_sword16
z) ;
182
183
#endif
184
185
/****************************************************************************/
186
/* END OF FILE: 3D_COLLI.H */
187
/****************************************************************************/
Generated on Sun Aug 4 2013 15:35:47 for Amulets & Armor by
1.8.4