| 967 | |
| 968 | |
| 969 | void draw3rdPersonTarget(SceneRenderer* /*renderer*/) { |
| 970 | LocalPlayer* myTank = LocalPlayer::getMyTank(); |
| 971 | |
| 972 | if (!myTank || !thirdPersonVars.b3rdPerson) { |
| 973 | return; |
| 974 | } |
| 975 | |
| 976 | const float* myTankPos = myTank->getPosition(); |
| 977 | const float* myTankDir = myTank->getForward(); |
| 978 | const float muzzleHeight = myTank->getMuzzleHeight(); |
| 979 | |
| 980 | const float radCon = 57.295779513082320876798154814105f; |
| 981 | |
| 982 | glPushMatrix(); |
| 983 | float distance = thirdPersonVars.nearTargetDistance; |
| 984 | glTranslatef(myTankPos[0] + (myTankDir[0] * distance), |
| 985 | myTankPos[1] + (myTankDir[1] * distance), |
| 986 | myTankPos[2] + muzzleHeight); |
| 987 | glRotatef(myTank->getAngle() * radCon, 0.0f, 0.0f, 1.0f); |
| 988 | |
| 989 | float size = thirdPersonVars.nearTargetSize; |
| 990 | glDisable(GL_TEXTURE_2D); |
| 991 | glDisable(GL_LIGHTING); |
| 992 | |
| 993 | glColor4f(1.0f, 1.0f, 1.0f, 0.5f); |
| 994 | glBegin(GL_LINES); |
| 995 | glVertex3f(0.0f, 0.0f, 1.00f * size); |
| 996 | glVertex3f(0.0f, 0.0f, 0.25f * size); |
| 997 | glVertex3f(0.0f, 0.0f, -1.00f * size); |
| 998 | glVertex3f(0.0f, 0.0f, -0.25f * size); |
| 999 | glVertex3f(0.0f, 1.00f * size, 0.0f); |
| 1000 | glVertex3f(0.0f, 0.25f * size, 0.0f); |
| 1001 | glVertex3f(0.0f, -1.00f * size, 0.0f); |
| 1002 | glVertex3f(0.0f, -0.25f * size, 0.0f); |
| 1003 | |
| 1004 | glEnd(); |
| 1005 | glPopMatrix(); |
| 1006 | |
| 1007 | glPushMatrix(); |
| 1008 | distance = thirdPersonVars.farTargetDistance; |
| 1009 | glTranslatef(myTankPos[0] + (myTankDir[0] * distance), |
| 1010 | myTankPos[1] + (myTankDir[1] * distance), |
| 1011 | myTankPos[2] + muzzleHeight); |
| 1012 | glRotatef(myTank->getAngle() * radCon, 0.0f, 0.0f, 1.0f); |
| 1013 | size = thirdPersonVars.farTargetSize; |
| 1014 | glColor4f(0.5f, 0.5f, 0.5f, 0.25f); |
| 1015 | glBegin(GL_LINES); |
| 1016 | glVertex3f(0.0f, 0.0f, 1.00f * size); |
| 1017 | glVertex3f(0.0f, 0.0f, 0.25f * size); |
| 1018 | glVertex3f(0.0f, 0.0f, -1.00f * size); |
| 1019 | glVertex3f(0.0f, 0.0f, -0.25f * size); |
| 1020 | glVertex3f(0.0f, 1.00f * size, 0.0f); |
| 1021 | glVertex3f(0.0f, 0.25f * size, 0.0f); |
| 1022 | glVertex3f(0.0f, -1.00f * size, 0.0f); |
| 1023 | glVertex3f(0.0f, -0.25f * size, 0.0f); |
| 1024 | glEnd(); |
| 1025 | |
| 1026 | glEnable(GL_TEXTURE_2D); |
no test coverage detected