ID:2244827
 
(See the best response by Kidpaddle45.)
Code:


Problem description:
So my map size in the interface is pretty big and in order to fit everything in, I have to use a certain view 40x29 i believe. But now my base and everything looks too small so i implemented the zoom feature but now everything stretched including my onscreen huds and etc (basically my interface. Is there a var to set or something on certain objs so they won't be zoomed in to? Or any other way to go about my issue?

And if theres no fix, I guess this would be a very cool feature request.
Best response
Depends on how you implemented that zoom feature. In my case, I scale a plane_master with animate().
If this is what you're doing you can use the new BYOND appearance flag: PIXEL_SCALE. Will help you!


X.appearance_flags = PIXEL_SCALE
Really depends on how you're zooming, are you editing map.zoom/icon-size or using a transform on the client itself?
I haven't even taken heed to the new PIXEL_SCALE feature since the past couple of updates. Not entirely sure how it works. I'll message you on skype Kid so we can talk.
I am using map.zoom.
Icon size is set to 32 but my base is 96x96. But I'm using a pixel movement system.
In the case of map.zoom, there's not much you can do as it's literally zooming the map control in, which will zoom everything. You'll want to investigate using transform on a master plane as mentioned above, in combination with either PIXEL_SCALE (to make the scaling smoother), or NO_TRANSFORM to disable it entirely for that object on its appearance_flags.
Wait so what would actually be using the PIXEL_SCALE on? Im quite confused tbh, just woke up too lol.
The HUD objects, or whatever you want to apply the flags to.
Kidpaddle has shown me an example. So we actually applied the transform to a new obj/Map_Zoom and the appearance flag to PLANE_MASTER and put that new obj on top o the players. In my head it works as some sort of mirrio or magnifying glass placed on the top of the screen. But thank you i believe i understad the concept a bit more but need to become more familiar with the newer feature of BYOND 511
Do you mean like this? a Basic screen size changer.

mob/verb/Screen_Size()
set category="Other"
screenx=input("Enter the width of the screen, limits are 30, for now.") as num
screeny=input("Enter the height of the screen.") as num
if(screenx<1) screenx=1
if(screeny<1) screeny=1
if(screenx>30) screenx=30
if(screeny>30) screeny=30
client.view="[screenx]x[screeny]