• Map Height
    6 replies, posted
How could you get the the dimensions of the map? I atleast need to be able to get the height. I am trying to do a trace to check if a path from the top of the map is clear to a position somewhere on the map, and I don't know where that top of the map is.
Try out random positions and trace upwards until you find one that hits the skybox.
I asked about this the other day in the "What Do You Need Help With" thread, and didn't get a reply, so I figure there are two ways around not being able to get the size of the world, 1. Send a trace up and if it hits something other than skybox, go a little further and send another trace, etc, etc, until it hits sky. Probably do this once on map load or GM:Initialize(). This is probably a bad idea, but if you can't edit the map #2 won't work. 2. If it's your map place an info_landmark at the top of the map and just check it's z position. I used something like this for my meteor gamemode i'm working on. If there is a way to actually get the dimensions of the map via lua I would like to know too.
[lua] sky = {}; local SKY_POSITION; -- Call this to get the position of the sky. function sky.GetPosition() if (!SKY_POSITION) then sky.FindPosition(); end; return SKY_POSITION; end; -- Call this once somewhere to find the position. function sky.FindPosition() if (!SKY_POSITION) then local curPos = Vector(0, 0, 0); while (true) do local traceLine = util.TraceLine( { start = curPos, endpos = curPos + Vector(0, 0, 128) } ); if (!traceLine.HitSky) then curPos = curPos + Vector(0, 0, 128); else curPos = traceLine.HitPos; break; end; end; SKY_POSITION = curPos; end; end; [/lua] ...or something.
Wasn't there a function to get the map bounds? eg Can't you just try to get the model bounds of worldspawn?
[QUOTE=Wizard of Ass;28379459]Wasn't there a function to get the map bounds? eg Can't you just try to get the model bounds of worldspawn?[/QUOTE] Unfortunately you can not, I've tried, OBBMins(), OBBMaxs(), and BoundingRadius() they all return 0's.
I did some testing on this, and it turns out you can get the renderbounds of the map client-side. So just query the first player who joins the server for the map bounds.
Sorry, you need to Log In to post a reply to this thread.