SphereCommunity
Change DISPID when an object is moved - Printable Version

+- SphereCommunity (https://forum.spherecommunity.net)
+-- Forum: Sphere 0.56d (/Forum-Sphere-0-56d)
+--- Forum: Script Help (/Forum-Script-Help)
+--- Thread: Change DISPID when an object is moved (/Thread-Change-DISPID-when-an-object-is-moved)



Change DISPID when an object is moved - Gil Amarth - 06-01-2012 11:04 PM

I have write the next function for my containers:

Code:
[FUNCTION F_CHANGE_DISPID]

DISPID = <ARGV[0]>
NAME = <SERV.ITEMDEF.<ARGV[0]>.NAME>
TYPE = <SERV.ITEMDEF.<ARGV[0]>.TYPE>
CONT <SRC.FINDLAYER(29).UID>
SRC.BOUNCE <UID>

I change the DISPID of the object, and then I send it to the bankbox, and to the backpack again to refresh the client graphics.

All works wonderful, the problem is when I drop the object to the floor, or moved to other location.

I suppouse the DISPID is not a variable that the item stores, but I´m not entirely sure.
I tried to convert a pitcher_empty to a pitcher_water without creating and removing objects, but seems more troublesome I thought. xD


RE: Change DISPID when an object is moved - Shaklaban - 06-01-2012 11:58 PM

well, if the object flipped its dispid will turn into original. disable flipping all items from the sphere.ini

PHP Code:
// Flip dropped items
FlipDroppedItems=

and set FLIP=0 in item definition.

if you need to use that option as 1, try to use softcoded thing like;

PHP Code:
on=@itemdropon_Ground
if (<act.tag0.noflip> = 0//you can also try to use if (<flip> = 0)
    
act.flip
endif