SphereCommunity
Let pets trigger @petdesert - Printable Version

+- SphereCommunity (https://forum.spherecommunity.net)
+-- Forum: Sphere 0.56d (/Forum-Sphere-0-56d)
+--- Forum: Script Help (/Forum-Script-Help)
+--- Thread: Let pets trigger @petdesert (/Thread-Let-pets-trigger-petdesert)



Let pets trigger @petdesert - Rizz - 02-21-2013 11:59 AM

I need to let my pet triggers @petdesert, i've tried in this way:

PHP Code:
// ARGN1 stores the pet UID
// REF1 stores the pet's owner UID

IF (<serv.uid.<ARGN1>.ischar> == 1)
        IF (<
serv.uid.<ARGN1>.owner> == <REF1>) 
            IF (<
serv.uid.<ARGN1>.distance <REF1>> > )
                
serv.uid.<ARGN1>.TRIGGER @PETDESERT
            
ELSE
                
REF1.sysmessage blablabla
            
ENDIF
        ELSE
            
REF1.sysmessage blablabla
        
ENDIF
    ELSE
        
REF1.sysmessage blablabla
    
ENDIF 

It doesn't work.
Any suggestion?


RE: Let pets trigger @petdesert - BladeCraft - 02-21-2013 12:28 PM

Yea, add serv.b messages after every line and find out where it is not working how you think it should. Then you know where the problem is Smile.

serv.b Start Test 1
IF (<serv.uid.<ARGN1>.ischar> == 1)
serv.b Test 2 (<serv.uid.<ARGN1>.ischar> == 1)
IF (<serv.uid.<ARGN1>.owner> == <REF1>)
serv.b Test 3 (<serv.uid.<ARGN1>.owner> == <REF1>)
IF (<serv.uid.<ARGN1>.distance <REF1>> > 3 )
serv.uid.<ARGN1>.TRIGGER @PETDESERT
serv.b Test 4 (<serv.uid.<ARGN1>.distance <REF1>> > 3 )
ELSE
REF1.sysmessage blablabla
serv.b Test 5
ENDIF
ELSE
REF1.sysmessage blablabla
serv.b Test 6
ENDIF
ELSE
REF1.sysmessage blablabla
serv.b Test 7
ENDIF

That is the best suggestion we can give because your problem could be a number of things including where you set argn1 and REF1 which is not provided.


RE: Let pets trigger @petdesert - darksun84 - 02-21-2013 07:24 PM

Weird, did you define the trigger @PetDesert ?


RE: Let pets trigger @petdesert - Rizz - 02-21-2013 08:57 PM

(02-21-2013 12:28 PM)BladeCraft Wrote:  Yea, add serv.b messages after every line and find out where it is not working how you think it should. Then you know where the problem is Smile.

serv.b Start Test 1
IF (<serv.uid.<ARGN1>.ischar> == 1)
serv.b Test 2 (<serv.uid.<ARGN1>.ischar> == 1)
IF (<serv.uid.<ARGN1>.owner> == <REF1>)
serv.b Test 3 (<serv.uid.<ARGN1>.owner> == <REF1>)
IF (<serv.uid.<ARGN1>.distance <REF1>> > 3 )
serv.uid.<ARGN1>.TRIGGER @PETDESERT
serv.b Test 4 (<serv.uid.<ARGN1>.distance <REF1>> > 3 )
ELSE
REF1.sysmessage blablabla
serv.b Test 5
ENDIF
ELSE
REF1.sysmessage blablabla
serv.b Test 6
ENDIF
ELSE
REF1.sysmessage blablabla
serv.b Test 7
ENDIF

That is the best suggestion we can give because your problem could be a number of things including where you set argn1 and REF1 which is not provided.

But everything works except

serv.uid.<ARGN1>.TRIGGER @PETDESERT

But i will try to check out again.

ps. ARGN1 comes from a function like:

.cav <argn1>

(02-21-2013 07:24 PM)darksun84 Wrote:  Weird, did you define the trigger @PetDesert ?

What do you mean?
That trigger is a standard trigger and i use in the taming script


RE: Let pets trigger @petdesert - darksun84 - 02-21-2013 09:41 PM

Yes, i mean if the creature that calls TRIGGER has installed the event that contains @PetDesert