Jump to content
  • 0

@ec or @ecall


jigsgfx

Question


  • Group:  Members
  • Topic Count:  20
  • Topics Per Day:  0.00
  • Content Count:  83
  • Reputation:   0
  • Joined:  06/02/12
  • Last Seen:  

Hi, im having problem with my EC sometimes players can use it sometimes they cant but on my GM account i can use it with no problem, so i thought suddenly that is it possible to add a @command for ecall? like @ec or @ecall that players can use during WOE but it has also a delay when using it.. is this possible?

thanks to those who can help with this.. /no1

Link to comment
Share on other sites

22 answers to this question

Recommended Posts


  • Group:  Members
  • Topic Count:  43
  • Topics Per Day:  0.01
  • Content Count:  400
  • Reputation:   5
  • Joined:  12/05/11
  • Last Seen:  

Have you check your skill.conf?

I also having problems with Emergency Call. But after setting it to these :

// Emergency Recall Guild Skill setting (add as appropiate).
// Note that for the skill to be usable at all,
// you need at least one of 1/2 and 4/8
// 1: Skill is usable outside of woe.
// 2: Skill is usable during woe.
// 4: Skill is usable outside of GvG grounds
// 8: Skill is usable on GvG grounds
//16: Disable skill from "nowarpto" maps
//	(it will work on GVG castles even if they are set to nowarpto, though)
emergency_call: 10

// 2: Skill is usable during woe.

// 8: Skill is usable on GvG grounds

My problems fixed..

Edited by uDe
Link to comment
Share on other sites


  • Group:  Members
  • Topic Count:  31
  • Topics Per Day:  0.01
  • Content Count:  666
  • Reputation:   93
  • Joined:  04/27/12
  • Last Seen:  

Yes, it is possible. We can even expand beyond that and make the requirements / benefits even better.

- script at_ecall -1,{
OnInit:
bindatcmd("@ec","at_ecall::OnEcall");
bindatcmd("@ecall","at_ecall::OnEcall");
end;
OnEcall:
if( !getcharid(2) ){dispbottom "You are not apart of a guild."; end;}
if( getguildmasterid( getcharid(2) ) != getcharid(0) ){dispbottom "Can only be used by guild leader."; end;}
if( gettimetick(2) < getd(".guild"+ getcharid(2) +"") ){dispbottom "Command Failed. Still on cooldown."; end;}
progressbar "0x00FF00",5; //5 seconds is how the skill acts.
getmapxy(.@m$,.@x,.@y,0);
warpguild .@m$,.@x,.@y,getcharid(2);
setd ".guild"+ getcharid(2) +"", gettimetick(2) + 300000;
end;
}

*Note - This is the simple way of doing it, so the caster will also be warped upon completion. It can be coded so that, only the caster's guild members will be warped, but, this would require usage of sql, and a loop or 2.*

So, aside from the caster (guild master) getting warped there should be no issues.

Edit: Additionally, i can force them to use in it's existence, but meh. I like this way :D

Edited by GmOcean
Link to comment
Share on other sites


  • Group:  Members
  • Topic Count:  20
  • Topics Per Day:  0.00
  • Content Count:  83
  • Reputation:   0
  • Joined:  06/02/12
  • Last Seen:  

wow great ill try this out.. thanks dude.. btw what command should i type to use it? @ec or @ecall?

Edited by jigsgfx
Link to comment
Share on other sites


  • Group:  Members
  • Topic Count:  76
  • Topics Per Day:  0.02
  • Content Count:  461
  • Reputation:   61
  • Joined:  08/28/12
  • Last Seen:  

Yes, it is possible. We can even expand beyond that and make the requirements / benefits even better.

- script at_ecall -1,{

OnInit:

bindatcmd("@ec","at_ecall::OnEcall");

bindatcmd("@ecall","at_ecall::OnEcall");

So, you can use both. ^-^

Link to comment
Share on other sites


  • Group:  Members
  • Topic Count:  31
  • Topics Per Day:  0.01
  • Content Count:  666
  • Reputation:   93
  • Joined:  04/27/12
  • Last Seen:  

Yes, as White Eagle said, you are able to use both. @ec or @ecall. I don't know if the bindatcmd script command allows me to pass information on, because if it does, then I could also make a GM type one, where they can recall a guild using something like: @ec(all) guild name. But that's only if I can and there isn't already an existing command lol.

Link to comment
Share on other sites


  • Group:  Members
  • Topic Count:  20
  • Topics Per Day:  0.00
  • Content Count:  83
  • Reputation:   0
  • Joined:  06/02/12
  • Last Seen:  

hi, there's an error can anyone check this out..


[Error]:  Loading NPC file: npc/jigs-script/at-ec.txt
script error on npc/jigs-script/at-ec.txt line 3
   parse_line: expect command, missing function name or calling undeclared func                                                 tion
    1 : {
    2 : OnInit:
*    3 : 'b'indatcmd("@ec","at_ecall::OnEcall");
    4 : bindatcmd("@ecall","at_ecall::OnEcall");
    5 : end;
    6 : OnEcall:
    7 : if( !getcharid(2) ){dispbottom "You are not apart of a guild."; end;}
    8 : if( getguildmasterid( getcharid(2) ) != getcharid(0) ){dispbottom "Can only be used by guild leader."; end;}

Link to comment
Share on other sites


  • Group:  Members
  • Topic Count:  31
  • Topics Per Day:  0.01
  • Content Count:  666
  • Reputation:   93
  • Joined:  04/27/12
  • Last Seen:  

Yep, you gotta use rAthena instead of eathena. Since eA does that have it.

Link to comment
Share on other sites


  • Group:  Forum Moderator
  • Topic Count:  93
  • Topics Per Day:  0.02
  • Content Count:  10015
  • Reputation:   2348
  • Joined:  10/28/11
  • Last Seen:  

switch to rAthena or apply the source mod made by ToastOfDoom ( search in old eA forum for the diff files )

Link to comment
Share on other sites


  • Group:  Members
  • Topic Count:  44
  • Topics Per Day:  0.01
  • Content Count:  159
  • Reputation:   1
  • Joined:  12/21/11
  • Last Seen:  

Yes, it is possible. We can even expand beyond that and make the requirements / benefits even better.

- script at_ecall -1,{
OnInit:
bindatcmd("@ec","at_ecall::OnEcall");
bindatcmd("@ecall","at_ecall::OnEcall");
end;
OnEcall:
if( !getcharid(2) ){dispbottom "You are not apart of a guild."; end;}
if( getguildmasterid( getcharid(2) ) != getcharid(0) ){dispbottom "Can only be used by guild leader."; end;}
if( gettimetick(2) < getd(".guild"+ getcharid(2) +"") ){dispbottom "Command Failed. Still on cooldown."; end;}
progressbar "0x00FF00",5; //5 seconds is how the skill acts.
getmapxy(.@m$,.@x,.@y,0);
warpguild .@m$,.@x,.@y,getcharid(2);
setd ".guild"+ getcharid(2) +"", gettimetick(2) + 300000;
end;
}

*Note - This is the simple way of doing it, so the caster will also be warped upon completion. It can be coded so that, only the caster's guild members will be warped, but, this would require usage of sql, and a loop or 2.*

So, aside from the caster (guild master) getting warped there should be no issues.

Edit: Additionally, i can force them to use in it's existence, but meh. I like this way :D

Working I'm using eathena with ToastOfDoom patch.

Link to comment
Share on other sites


  • Group:  Members
  • Topic Count:  31
  • Topics Per Day:  0.01
  • Content Count:  666
  • Reputation:   93
  • Joined:  04/27/12
  • Last Seen:  

Lol, further just proves that Emistry is right.

Link to comment
Share on other sites


  • Group:  Members
  • Topic Count:  20
  • Topics Per Day:  0.00
  • Content Count:  99
  • Reputation:   4
  • Joined:  10/25/12
  • Last Seen:  

Yes, it is possible. We can even expand beyond that and make the requirements / benefits even better.

- script at_ecall -1,{
OnInit:
bindatcmd("@ec","at_ecall::OnEcall");
bindatcmd("@ecall","at_ecall::OnEcall");
end;
OnEcall:
if( !getcharid(2) ){dispbottom "You are not apart of a guild."; end;}
if( getguildmasterid( getcharid(2) ) != getcharid(0) ){dispbottom "Can only be used by guild leader."; end;}
if( gettimetick(2) < getd(".guild"+ getcharid(2) +"") ){dispbottom "Command Failed. Still on cooldown."; end;}
progressbar "0x00FF00",5; //5 seconds is how the skill acts.
getmapxy(.@m$,.@x,.@y,0);
warpguild .@m$,.@x,.@y,getcharid(2);
setd ".guild"+ getcharid(2) +"", gettimetick(2) + 300000;
end;
}

*Note - This is the simple way of doing it, so the caster will also be warped upon completion. It can be coded so that, only the caster's guild members will be warped, but, this would require usage of sql, and a loop or 2.*

So, aside from the caster (guild master) getting warped there should be no issues.

Edit: Additionally, i can force them to use in it's existence, but meh. I like this way :D

how can i turn it as npc for some guild event for leader to call his/her member?

Link to comment
Share on other sites


  • Group:  Members
  • Topic Count:  31
  • Topics Per Day:  0.01
  • Content Count:  666
  • Reputation:   93
  • Joined:  04/27/12
  • Last Seen:  

mapname,x,y,z	script	at_ecall	123,{
goto OnEcall;
end;
OnInit:
bindatcmd("@ec","at_ecall::OnEcall");
bindatcmd("@ecall","at_ecall::OnEcall");
end;
OnEcall:
if( !getcharid(2) ){dispbottom "You are not apart of a guild."; end;}
if( getguildmasterid( getcharid(2) ) != getcharid(0) ){dispbottom "Can only be used by guild leader."; end;}
if( gettimetick(2) < getd(".guild"+ getcharid(2) +"") ){dispbottom "Command Failed. Still on cooldown."; end;}
progressbar "0x00FF00",5; //5 seconds is how the skill acts.
getmapxy(.@m$,.@x,.@y,0);
warpguild .@m$,.@x,.@y,getcharid(2);
setd ".guild"+ getcharid(2) +"", gettimetick(2) + 300000;
end;
}

Edit: You know i just realized that there is an exiting command like this in rAthena, @guildrecall ... so this script is really, just a waste of space if you have the existing command in your svn.

Edited by GmOcean
Link to comment
Share on other sites


  • Group:  Members
  • Topic Count:  20
  • Topics Per Day:  0.00
  • Content Count:  99
  • Reputation:   4
  • Joined:  10/25/12
  • Last Seen:  

Thanks @GmOcean. Actually I want the "@guildrecall" can be use in npc so it wont have skill cooldown but just delay few seconds or minutes to use it again.. I guess for that doesnt need bindatcmd?

Solved. Thanks alot :)

Edited by Shogun
Link to comment
Share on other sites


  • Group:  Members
  • Topic Count:  31
  • Topics Per Day:  0.01
  • Content Count:  666
  • Reputation:   93
  • Joined:  04/27/12
  • Last Seen:  

It doesn't need bindatcmd, but it'd be cleaner to use it.

mapname,x,y,z	script	at_ecall	123,{
OnECall:
if( getguildmasterid( getcharid(2) ) != getcharid(0) )
{dispbottom "This can only be used by a guild leader."; end;}
if( gettimetick(2) < getd( ".guild"+ getcharid(2) +"" ) )
{dispbottom "You can use this command in: "+ ( (getd(".guild"+ getcharid(2) +"") - gettimetick(2) ) / 1000 ) +" more seconds."; end;}
if( select("Recall now :A moment please") == 2 ){close;}
atcommand("@guildrecall");
setd ".guild"+ getcharid(2) +"", gettimetick(2) + 300000;
close;
OnInit:
bindatcmd("guildrecall","at_ecall::OnECall");
end;
}

Edited by GmOcean
  • Upvote 1
Link to comment
Share on other sites


  • Group:  Members
  • Topic Count:  20
  • Topics Per Day:  0.00
  • Content Count:  99
  • Reputation:   4
  • Joined:  10/25/12
  • Last Seen:  

sorry for removing the script that i posted, its too poor im shame.

Thanks alot @GmOcean :) have a good day.

the delay not really working actually. i will try it myself. sorry bothering

Link to comment
Share on other sites


  • Group:  Members
  • Topic Count:  31
  • Topics Per Day:  0.01
  • Content Count:  666
  • Reputation:   93
  • Joined:  04/27/12
  • Last Seen:  

It's not? In that case, try switching these lines around

setd line

WITH

at command line.

If that doesn't work then, there's something else I'm just not seeing atm lol. It is pretty late @.@;

Link to comment
Share on other sites


  • Group:  Members
  • Topic Count:  13
  • Topics Per Day:  0.00
  • Content Count:  66
  • Reputation:   6
  • Joined:  11/13/12
  • Last Seen:  

Quick question, how do I change the delay though?

Link to comment
Share on other sites


  • Group:  Members
  • Topic Count:  91
  • Topics Per Day:  0.02
  • Content Count:  309
  • Reputation:   6
  • Joined:  04/24/12
  • Last Seen:  

How to make this command work only when WOE is active and only on castles?

Link to comment
Share on other sites


  • Group:  Forum Moderator
  • Topic Count:  93
  • Topics Per Day:  0.02
  • Content Count:  10015
  • Reputation:   2348
  • Joined:  10/28/11
  • Last Seen:  


OnECall:

if( !agitcheck() || !compare( strcharinfo(3),"g_cas" ) ) end;

  • Upvote 1
Link to comment
Share on other sites


  • Group:  Members
  • Topic Count:  91
  • Topics Per Day:  0.02
  • Content Count:  309
  • Reputation:   6
  • Joined:  04/24/12
  • Last Seen:  

OnECall:
if( !agitcheck() || !compare( strcharinfo(3),"g_cas" ) ) end;

Thanks Emistry

Link to comment
Share on other sites


  • Group:  Members
  • Topic Count:  30
  • Topics Per Day:  0.01
  • Content Count:  208
  • Reputation:   11
  • Joined:  05/31/12
  • Last Seen:  

Yes, it is possible. We can even expand beyond that and make the requirements / benefits even better.

- script at_ecall -1,{
OnInit:
bindatcmd("@ec","at_ecall::OnEcall");
bindatcmd("@ecall","at_ecall::OnEcall");
end;
OnEcall:
if( !getcharid(2) ){dispbottom "You are not apart of a guild."; end;}
if( getguildmasterid( getcharid(2) ) != getcharid(0) ){dispbottom "Can only be used by guild leader."; end;}
if( gettimetick(2) < getd(".guild"+ getcharid(2) +"") ){dispbottom "Command Failed. Still on cooldown."; end;}
progressbar "0x00FF00",5; //5 seconds is how the skill acts.
getmapxy(.@m$,.@x,.@y,0);
warpguild .@m$,.@x,.@y,getcharid(2);
setd ".guild"+ getcharid(2) +"", gettimetick(2) + 300000;
end;
}
*Note - This is the simple way of doing it, so the caster will also be warped upon completion. It can be coded so that, only the caster's guild members will be warped, but, this would require usage of sql, and a loop or 2.*

So, aside from the caster (guild master) getting warped there should be no issues.

Edit: Additionally, i can force them to use in it's existence, but meh. I like this way :D

 

 

there is something wrong with this script when you login logout the cooldown would be vague

Link to comment
Share on other sites


  • Group:  Members
  • Topic Count:  31
  • Topics Per Day:  0.01
  • Content Count:  666
  • Reputation:   93
  • Joined:  04/27/12
  • Last Seen:  

There's nothing wrong with the script, the only thing is, it doesn't do is tell exactly how long it's on CD. Because logging in and out doesn't reset the CD with this command.

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Answer this question...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Create New...