[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [pygame] Loading XBM cursors?
On Tue, 3 Apr 2001, Niki Spahiev wrote:
>Jan Ekholm wrote:
>>
>> Hi all,
>>
>> I tried to load into our game a few custom cursors. They are all in XBM
>> files, so I tried to use:
>>
>> pygame.cursors.load_xbm(file,mask)
>>
>> but the function fails with:
>>
>> File "/usr/local/lib/python2.0/site-packages/pygame/cursors.py", line
>> 174, in load_xbm
>> info = tuple([int(curs[x].split()[-1]) for x in range(4)])
>> ValueError: invalid literal for int(): {
>>
>> I can't say I understand what goes on there... Maybe the funtion assumes
>> another (binary) format that can be decoded with the above function? The
>> XBM file I try to load is composed of the following files (data and mask):
>>
>> #define cursors-map-point-001_width 32
>> #define cursors-map-point-001_height 32
>> static char cursors-map-point-001_bits[] = {
>> 0x0f, 0x00, 0x00, 0x00, 0x1f, 0x00, 0x00, 0x00, 0x3b, 0x00, 0x00, 0x00,
>> 0x73, 0x00, 0x00, 0x00, 0xe3, 0x00, 0x00, 0x00, 0xc3, 0x01, 0x00, 0x00,
>> 0x83, 0x03, 0x00, 0x00, 0x03, 0x07, 0x00, 0x00, 0x03, 0x0e, 0x00, 0x00,
>> 0x03, 0x1c, 0x00, 0x00, 0x03, 0x38, 0x00, 0x00, 0x03, 0x70, 0x00, 0x00,
>> 0x03, 0xe0, 0x00, 0x00, 0x03, 0xc0, 0x01, 0x00, 0x03, 0x80, 0x03, 0x00,
>> 0x0b, 0x00, 0x07, 0x00, 0x03, 0x00, 0x0e, 0x00, 0x03, 0x00, 0x1c, 0x00,
>> 0x13, 0x00, 0x38, 0x00, 0x03, 0x00, 0x30, 0x00, 0x0b, 0x00, 0x30, 0x00,
>> 0x03, 0xc0, 0x3f, 0x00, 0x4b, 0xc0, 0x3f, 0x00, 0x83, 0x01, 0x03, 0x00,
>> 0x8b, 0x01, 0x03, 0x00, 0xa3, 0x01, 0x03, 0x00, 0x83, 0x01, 0x03, 0x00,
>> 0xff, 0x01, 0x03, 0x00, 0xff, 0x01, 0x03, 0x00, 0x80, 0x01, 0x03, 0x00,
>> 0x80, 0xff, 0x03, 0x00, 0x80, 0xff, 0x03, 0x00 };
>>
>> #define cursors-map-point-mask-001_width 32
>> #define cursors-map-point-mask-001_height 32
>> static char cursors-map-point-mask-001_bits[] = {
>> 0x0f, 0x00, 0x00, 0x00, 0x1f, 0x00, 0x00, 0x00, 0x3f, 0x00, 0x00, 0x00,
>> 0x7f, 0x00, 0x00, 0x00, 0xff, 0x00, 0x00, 0x00, 0xff, 0x01, 0x00, 0x00,
>> 0xff, 0x03, 0x00, 0x00, 0xff, 0x07, 0x00, 0x00, 0xff, 0x0f, 0x00, 0x00,
>> 0xff, 0x1f, 0x00, 0x00, 0xff, 0x3f, 0x00, 0x00, 0xff, 0x7f, 0x00, 0x00,
>> 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x01, 0x00, 0xff, 0xff, 0x03, 0x00,
>> 0xff, 0xff, 0x07, 0x00, 0xff, 0xff, 0x0f, 0x00, 0xff, 0xff, 0x1f, 0x00,
>> 0xff, 0xff, 0x3f, 0x00, 0xff, 0xff, 0x3f, 0x00, 0xff, 0xff, 0x3f, 0x00,
>> 0xff, 0xff, 0x3f, 0x00, 0xff, 0xff, 0x3f, 0x00, 0xff, 0xff, 0x03, 0x00,
>> 0xff, 0xff, 0x03, 0x00, 0xff, 0xff, 0x03, 0x00, 0xff, 0xff, 0x03, 0x00,
>> 0xff, 0xff, 0x03, 0x00, 0xff, 0xff, 0x03, 0x00, 0x80, 0xff, 0x03, 0x00,
>> 0x80, 0xff, 0x03, 0x00, 0x80, 0xff, 0x03, 0x00 };
>>
>> Do I assume soemthing wrong about the function, or is this something fixed
>> in 1.0pre? I still use 0.9, with SDL 1.1.8 (although SDL it is not used by
>> the function load_xbm() at all, AFAIK.
>>
>> Any hints? Anyone done this? If it's fixed in 1.0 I'll go download it
>> right away...
>
>For me it looks like all 4 #define should be on top.
It's two separate files. load_xbm() wants two filenames/files, one for the
data and one for the mask.
--------------------+--------------------------------------------------------
Jan 'Chakie' Ekholm | Balrog New Media http://www.balrog.fi/
Linux Inside | I'm the blue screen of death, nobody hears your screams
____________________________________
pygame mailing list
pygame-users@seul.org
http://pygame.seul.org