So I'm working on a game at the movement and I've implemented a zoom feature so the player can choose between 8, 16 and 32 for the map's icon-size variable.
The problem is that when they're at 8, a view of 35 is not enough to fit the whole screen which is really annoying and I can't think of a work around. What is going on and how can I fix this? Thank you.
P.S Yes I like to push mechanics to their limits but this is actually well within reason to ask for 50 at least. Or more cool would be to just take off the cap.
ID:260963
![]() Aug 25 2011, 7:15 pm (Edited on Aug 25 2011, 7:21 pm)
|
|
![]() Aug 25 2011, 7:33 pm
|
|
The only work around I can think of, is screen objects. However I'm not sure if their limits allow that much distance.
|
You could add tiles, which are outside range of 35, to client.screen at proper location, it'll look like map. However this is horrible work around for multiplayer game.
|
Well since it already supports view of 35, you'll need to add only things outside that range.
for(var/turf/T in (view(40) - view(35))) // not sure if subtraction works here However, this will NOT work in multiplayer game. If you need this in multiplayer you'll have to copy atoms either create images. (same object cannot have two different screen_loc for different players) |
Turfs don't seem to have screen_loc variable.
Forget all this... It's not only slow, but also has same limit of view(35) =/ mob/verb/test() |
Sorry for double post.
I just remembered there's block() proc: mob/verb/test() However it look like a minute to complete. |
Okay well I tried the code from both posts, just copy pasting and running them as a command from in the game and both caused it to crash.
Thanks for trying to help but it just doesn't work. |
Actually I tried it again and waited for about 20 seconds and it did something, didn't work though. It was like it had copied a chunk of the map and moved it northwest-ward. Bizzare stuff. Just so you know I need this to be constant so the player always sees 50 view. This means it can't have any visible delay.
|