PenUltima Online Forum Index Official Core: 096.7
Official Core: 097 2008-02-26
Donate towards the POL web hosting bill!
 POL Home   FAQ   Search    Memberlist   Usergroups    Register    Profile   Log in to check your private messages   Log in
macroing check

 
Post new topic   Reply to topic    PenUltima Online Forum Index -> Scripting Help
Display posts from previous:   

Author Message
testerz



Joined: 04 Mar 2008
Posts: 12

PostPosted: Sun Mar 09, 2008 1:53 pm    Post subject: macroing check Reply with quote

does a script that opens a dialog gump and ask a question
(in order to check wheter player is away or not) exists?

Author Message
ncrsn



Joined: 10 Feb 2006
Posts: 107

PostPosted: Sun Mar 09, 2008 3:30 pm    Post subject: Reply with quote

You need couple of scripts that do communicate with each other.

1. Script that lauches 2. script and calculates time. When (if) time rans out, reacts -> player is probably AFK.
2. Script that creates and sends a macrocheck (whether is it gump or something else, is of course up to you). After player has answered sends information to 1. script.

Basic scripts, don't work as a whole, but should show the idea.

1., timeout.src
Code:

program SendMacroCheck( who )
   
    const PATH_TO_CHECK := "check";
    const ANSWERING_TIME := 120;
   
    var proc := Start_Script(PATH_TO_CHECK, { who, GetPid() } );
   
    var result := Wait_For_Event(ANSWERING_TIME);
   
    if (result == 0)
        // Timeout!
        SysLog(who.name + " is AFK!");
        // Kill's the gump off the player's screen.
        proc.Kill();
    else
        // Answered in time, no reaction.
        return 1;
    endif

endprogram


2., check.src
Code:

// Using yesNo gump (gumps-package) in this test

program check( params )
    var who := params[1];
    var pid := params[2];
    var proc := GetProcess(pid);
   
    // Return value does not matter; only the fact that player clicked.
    YesNo(who, "Are you AFK?");
   
    // Let timer script know that player clicked.
    proc.SendEvent(1);
endprogram


Now, this is in no way a complete solution! There's no error checking, nor do the scripts even compile; but that should give you some ideas.

Author Message
testerz



Joined: 04 Mar 2008
Posts: 12

PostPosted: Sun Mar 09, 2008 3:40 pm    Post subject: Reply with quote

there's not pre-made script yet ?

Author Message
ncrsn



Joined: 10 Feb 2006
Posts: 107

PostPosted: Sun Mar 09, 2008 3:54 pm    Post subject: Reply with quote

Sure there is. I can't just think of any that is released to public.

Though I haven't looked into every single scriptbase out there, so chances are that if you do, you may find one. I wrote the advice above so that should you fail finding a complete solution, you may give a try scripting one.

Author Message
OldnGrey



Joined: 04 Feb 2006
Posts: 500

PostPosted: Sun Mar 09, 2008 8:33 pm    Post subject: Reply with quote

The 097 distro has the targetUtil.inc
In that you can send a gump with a timer on it of any value you like.
If the timer runs out without them clicking the gump then disconnect them or whatever you like.

Post new topic   Reply to topic    PenUltima Online Forum Index -> Scripting Help All times are GMT - 4 Hours
Page 1 of 1

 




Powered by phpBB © 2001, 2005 phpBB Group :: Theme & Graphics by GHS & Scott E. Royalty