diff options
| author | Nguyễn Gia Phong <cnx@loang.net> | 2023-08-25 04:06:49 +0900 |
|---|---|---|
| committer | Nguyễn Gia Phong <cnx@loang.net> | 2023-08-25 04:11:13 +0900 |
| commit | 371906f5fb958691a8bfce85c28eb4dfaf63559c (patch) | |
| tree | c5c2d42600045cc080a18eb6488992974dbc5313 /src/Models.cpp | |
| parent | d08aaf50515cf3fcf03e6523976258b02f6b2e95 (diff) | |
| download | blackshades-371906f5fb958691a8bfce85c28eb4dfaf63559c.tar.gz | |
Hide laser sight in psychic visions
Fixes: 2c44d2e60bb8 ("Make laser always and only availble in 3rd person")
Diffstat (limited to 'src/Models.cpp')
| -rw-r--r-- | src/Models.cpp | 24 |
1 files changed, 7 insertions, 17 deletions
diff --git a/src/Models.cpp b/src/Models.cpp index 0e558e2..63cf26a 100644 --- a/src/Models.cpp +++ b/src/Models.cpp @@ -4,6 +4,8 @@ #include "Models.h" #include "misc.h" +extern bool visions; + void Model::CalculateNormals() { for (int i = 0; i < TriangleNum; ++i) @@ -80,40 +82,28 @@ void Model::load(const char* path) CalculateNormals(); } -extern int nocolors; void Model::draw() { - if(!nocolors){ glEnableClientState(GL_VERTEX_ARRAY); glEnableClientState(GL_NORMAL_ARRAY); glEnableClientState(GL_COLOR_ARRAY); glVertexPointer(3, GL_FLOAT, 9*sizeof(GLfloat),&vArray[0]); glNormalPointer(GL_FLOAT, 9*sizeof(GLfloat),&vArray[3]); - glColorPointer(3,GL_FLOAT, 9*sizeof(GLfloat),&vArray[6]); + if (visions) + glColor4f(0.0f, 0.0f, 0.0f, 1.0f); + else + glColorPointer(3, GL_FLOAT, 9*sizeof(GLfloat), &vArray[6]); glDrawArrays(GL_TRIANGLES, 0, TriangleNum*3); - } - if(nocolors){ - glColor4f(0,0,0,1); - glEnableClientState(GL_VERTEX_ARRAY); - glEnableClientState(GL_NORMAL_ARRAY); - glDisableClientState(GL_COLOR_ARRAY); - glVertexPointer(3, GL_FLOAT, 9*sizeof(GLfloat),&vArray[0]); - glNormalPointer(GL_FLOAT, 9*sizeof(GLfloat),&vArray[3]); - glDrawArrays(GL_TRIANGLES, 0, TriangleNum*3); - } } void Model::draw(float r, float g, float b) { - if(!nocolors)glColor4f(r,g,b,1); - if(nocolors==1)glColor4f(0,0,0,1); - if(nocolors==2)glColor4f(1,0,0,1); - if(nocolors==3)glColor4f(0,0,1,1); glEnableClientState(GL_VERTEX_ARRAY); glEnableClientState(GL_NORMAL_ARRAY); glDisableClientState(GL_COLOR_ARRAY); glVertexPointer(3, GL_FLOAT, 9*sizeof(GLfloat),&vArray[0]); glNormalPointer(GL_FLOAT, 9*sizeof(GLfloat),&vArray[3]); + glColor4f(r, g, b, 1.0f); glDrawArrays(GL_TRIANGLES, 0, TriangleNum*3); } |
