ID:76040
 
Not a bug
Not a bug
BYOND Version:443
Operating System:Windows XP Home
Web Browser:Firefox 3.0.11
Status: Not a bug

This is not a bug. It may be an incorrect use of syntax or a limitation in the software. For further discussion on the matter, please consult the BYOND forums.
Descriptive Problem Summary:Trying to use Scale() to increase the size of an icon.

Numbered Steps to Reproduce Problem:Just make a var/icon and use scale on it.

Code Snippet (if applicable) to Reproduce Problem:
mob
verb
scale()
var/obj/O = new/obj/scale(locate(1,1,1))
var/icon/i = new('scale.dmi')
i.Scale(64,64)
O.icon = i
obj
scale
icon = 'scale.dmi'


Expected Results:Icon changes scale

Actual Results:Icon remains same size

Does the problem occur:
Every time? Or how often?every time
In other games?every game I tested it on
In other user accounts?yes
On other computers?yes

When does the problem NOT occur?it always occurs

Workarounds:to make another icon at the scale you want and change to it making icon.Scale() useless.

This is not a bug. In BYOND's big icon format, the regular icon state is the thumbnail of the fully sized state, and to get the individual 32x32 pieces you need to use icon_state="thing 0,0", icon_state="thing 1,0", etc. After calling Scale() you were sticking with the same icon state as before, which would have applied the 32x32 thumbnail icon to your atom.

A single atom cannot show an icon larger than 32x32 at this time. To show the full 64x64 size you need to use overlays with pixel offsets, or additional objects, and use the individual state names like "0,0". You can save some work by using Shadowdarke's BigAtom library.