X-Git-Url: https://git.jsancho.org/?a=blobdiff_plain;f=Source%2FObjects%2FObject.cpp;h=06665de39c645f74bddf07ff155b0a594e4a6121;hb=de9ba9db05eccf77c3efebe4cd3bf7636b899064;hp=1189f365243c75a0fdb33193a35f599313c5213b;hpb=bdf3ebaf05ce8dc8d59e321a07c66598db181eb7;p=lugaru.git diff --git a/Source/Objects/Object.cpp b/Source/Objects/Object.cpp index 1189f36..06665de 100644 --- a/Source/Objects/Object.cpp +++ b/Source/Objects/Object.cpp @@ -49,7 +49,7 @@ Texture Object::rocktextureptr; Object::Object() : position(), - type(0), + type(boxtype), yaw(0), pitch(0), rotx(0), @@ -70,7 +70,7 @@ Object::Object() : { } -Object::Object(int _type, XYZ _position, float _yaw, float _pitch, float _scale) : Object() +Object::Object(object_type _type, XYZ _position, float _yaw, float _pitch, float _scale) : Object() { scale = _scale; type = _type; @@ -80,35 +80,35 @@ Object::Object(int _type, XYZ _position, float _yaw, float _pitch, float _scale) switch(type) { case boxtype: - model.loaddecal("Models/Box.solid", 0); + model.loaddecal("Models/Box.solid"); friction = 1.5; break; case cooltype: - model.loaddecal("Models/Cool.solid", 0); + model.loaddecal("Models/Cool.solid"); friction = 1.5; break; case walltype: - model.loaddecal("Models/Wall.solid", 0); + model.loaddecal("Models/Wall.solid"); friction = 1.5; break; case tunneltype: - model.loaddecal("Models/Tunnel.solid", 0); + model.loaddecal("Models/Tunnel.solid"); friction = 1.5; break; case chimneytype: - model.loaddecal("Models/Chimney.solid", 0); + model.loaddecal("Models/Chimney.solid"); friction = 1.5; break; case spiketype: - model.load("Models/Spike.solid", 0); + model.load("Models/Spike.solid"); friction = .4; break; case weirdtype: - model.loaddecal("Models/Weird.solid", 0); + model.loaddecal("Models/Weird.solid"); friction = 1.5; break; case rocktype: - model.loaddecal("Models/Rock.solid", 0); + model.loaddecal("Models/Rock.solid"); if (scale > .5) { friction = 1.5; } else { @@ -116,20 +116,20 @@ Object::Object(int _type, XYZ _position, float _yaw, float _pitch, float _scale) } break; case treetrunktype: - model.load("Models/TreeTrunk.solid", 0); + model.load("Models/TreeTrunk.solid"); friction = .4; break; case treeleavestype: scale += fabs((float)(Random() % 100) / 900) * scale; - model.load("Models/Leaves.solid", 0); + model.load("Models/Leaves.solid"); friction = 0; break; case bushtype: position.y = terrain.getHeight(position.x, position.z) - .3; - model.load("Models/Bush.solid", 0); + model.load("Models/Bush.solid"); break; case platformtype: - model.loaddecal("Models/Platform.solid", 0); + model.loaddecal("Models/Platform.solid"); model.Rotate(90, 0, 0); friction = 1.5; break; @@ -689,7 +689,7 @@ void Object::ComputeRadius() { float maxdistance = 0; float tempdist; - for (int i = 0; i < objects.size(); i++) { + for (unsigned int i = 0; i < objects.size(); i++) { tempdist = distsq(¢er, &objects[i]->position); if (tempdist > maxdistance) { maxdistance = tempdist; @@ -714,7 +714,7 @@ void Object::LoadObjectsFromFile(FILE* tfile, bool skip) if (type == treeleavestype) { scale = lastscale; } - objects.emplace_back(new Object(type, position, yaw, pitch, scale)); + objects.emplace_back(new Object(object_type(type), position, yaw, pitch, scale)); lastscale = scale; } } @@ -788,7 +788,7 @@ void Object::MakeObject(int atype, XYZ where, float ayaw, float apitch, float as { if ((atype != treeleavestype && atype != bushtype) || foliage == 1) { unsigned nextid = objects.size(); - objects.emplace_back(new Object(atype, where, ayaw, apitch, ascale)); + objects.emplace_back(new Object(object_type(atype), where, ayaw, apitch, ascale)); objects.back()->addToTerrain(nextid); } } @@ -825,9 +825,9 @@ int Object::checkcollide(XYZ startpoint, XYZ endpoint) maxy = max(startpoint.y, endpoint.y) + 1; maxz = max(startpoint.z, endpoint.z) + 1; - for (int i = 0; i < objects.size(); i++) { + for (unsigned int i = 0; i < objects.size(); i++) { if (checkcollide(startpoint, endpoint, i, minx, miny, minz, maxx, maxy, maxz) != -1) { - return i; + return (int) i; } }