MCPcopy Create free account
hub / github.com/assaultcube/AC / testvisible

Function testvisible

source/src/bot/botmanager.cpp:1147–1215  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

1145COMMAND(telebot, "");
1146
1147void testvisible(int iDir)
1148{
1149
1150 vec angles, end, forward, right, up;
1151 traceresult_s tr;
1152 int Dir;
1153
1154 switch(iDir)
1155 {
1156 case 0: default: Dir = FORWARD; break;
1157 case 1: Dir = BACKWARD; break;
1158 case 2: Dir = LEFT; break;
1159 case 3: Dir = RIGHT; break;
1160 case 4: Dir = UP; break;
1161 case 5: Dir = DOWN; break;
1162 }
1163
1164 vec from = player1->o;
1165 from.z -= (player1->eyeheight - 1.25f);
1166 end = from;
1167 makevec(&angles, player1->pitch, player1->yaw, player1->roll);
1168 angles.x=0;
1169
1170 if (Dir & UP)
1171 angles.x = WrapXAngle(angles.x + 45.0f);
1172 else if (Dir & DOWN)
1173 angles.x = WrapXAngle(angles.x - 45.0f);
1174
1175 if ((Dir & FORWARD) || (Dir & BACKWARD))
1176 {
1177 if (Dir & BACKWARD)
1178 angles.y = WrapYZAngle(angles.y + 180.0f);
1179
1180 if (Dir & LEFT)
1181 {
1182 if (Dir & FORWARD)
1183 angles.y = WrapYZAngle(angles.y - 45.0f);
1184 else
1185 angles.y = WrapYZAngle(angles.y + 45.0f);
1186 }
1187 else if (Dir & RIGHT)
1188 {
1189 if (Dir & FORWARD)
1190 angles.y = WrapYZAngle(angles.y + 45.0f);
1191 else
1192 angles.y = WrapYZAngle(angles.y - 45.0f);
1193 }
1194 }
1195 else if (Dir & LEFT)
1196 angles.y = WrapYZAngle(angles.y - 90.0f);
1197 else if (Dir & RIGHT)
1198 angles.y = WrapYZAngle(angles.y + 90.0f);
1199 else if (Dir & UP)
1200 angles.x = WrapXAngle(angles.x + 90.0f);
1201 else if (Dir & DOWN)
1202 angles.x = WrapXAngle(angles.x - 90.0f);
1203
1204 AnglesToVectors(angles, forward, right, up);

Callers 1

botmanager.cppFile · 0.85

Calls 9

makevecFunction · 0.85
WrapXAngleFunction · 0.85
WrapYZAngleFunction · 0.85
AnglesToVectorsFunction · 0.85
TraceLineFunction · 0.85
GetDistanceFunction · 0.85
condebugFunction · 0.85
mulMethod · 0.80
addMethod · 0.45

Tested by

no test coverage detected