Jump to content
  • 0

How to disable @storage on all guild castles?


zmref

Question


  • Group:  Members
  • Topic Count:  148
  • Topics Per Day:  0.03
  • Content Count:  299
  • Reputation:   6
  • Joined:  06/14/12
  • Last Seen:  

how to disable @storage on all guild castles?

Link to comment
Share on other sites

18 answers to this question

Recommended Posts


  • Group:  Members
  • Topic Count:  40
  • Topics Per Day:  0.01
  • Content Count:  587
  • Reputation:   104
  • Joined:  11/19/11
  • Last Seen:  

For me , I prefer to use mapflag

if(getmapflag(strcharnifo(3),mf_gvg)){

complete me a code please, my brain is out of capability

- script Sample -1,{
end;
OnInit:
bindatcmd "storage",strnpcinfo(0)+"::OnAtcommand";
end;
OnAtcommand:
if(getmapflag(strcharinfo(3),mf_gvg)) end;

openstorage;
end;
}

edit: edit typo thanks to Capuche

Edited by QQfoolsorellina
Link to comment
Share on other sites

  • 0

  • Group:  Members
  • Topic Count:  62
  • Topics Per Day:  0.02
  • Content Count:  296
  • Reputation:   4
  • Joined:  02/19/17
  • Last Seen:  

On 1/31/2013 at 12:36 PM, Euphy said:

if (compare(strcharnifo(3),"g_cas")) {
 

 

is this for all guild castle to disable players using @storage command?

Link to comment
Share on other sites


  • Group:  Members
  • Topic Count:  42
  • Topics Per Day:  0.01
  • Content Count:  297
  • Reputation:   15
  • Joined:  11/17/11
  • Last Seen:  

the shortest way is to disable atcommands in all castle maps using the mapflag nocommand

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


  • Group:  Developer
  • Topic Count:  153
  • Topics Per Day:  0.04
  • Content Count:  2285
  • Reputation:   745
  • Joined:  06/16/12
  • Last Seen:  

use bindatmd, check if player using @storage at castle maps, tell them that can't use that command

Link to comment
Share on other sites


  • Group:  Members
  • Topic Count:  148
  • Topics Per Day:  0.03
  • Content Count:  299
  • Reputation:   6
  • Joined:  06/14/12
  • Last Seen:  

use bindatmd, check if player using @storage at castle maps, tell them that can't use that command

how? please tell me I really don't know

Edited by zmref
Link to comment
Share on other sites


  • Group:  Developer
  • Topic Count:  153
  • Topics Per Day:  0.04
  • Content Count:  2285
  • Reputation:   745
  • Joined:  06/16/12
  • Last Seen:  

*bindatcmd "command","<NPC object name>::<event label>"{,<atcommand level>,<charcommand level>};

This command will bind a NPC event label to an atcommand. Upon execution of the

atcommand, the user will invoke the NPC event label. Each atcommand is only allowed

one binding. If you rebind, it will override the original binding.

The following variables are set upon execution:

.@atcmd_command$ = The name of the @command used.

.@atcmd_parameters$[] = Array containing the given parameters, starting from an index of 0.

.@atcmd_numparameters = The number of parameters defined.

Example:

When a user types the command "@test", an angel effect will be shown.

- script atcmd_example -1,{

OnInit:

bindatcmd "test",strnpcinfo(3)+"::OnAtcommand";

end;

OnAtcommand:

specialeffect2 338;

end;

}

full version here : https://rathena.svn.sourceforge.net/svnroot/rathena/trunk/doc/script_commands.txt

Link to comment
Share on other sites


  • Group:  Members
  • Topic Count:  148
  • Topics Per Day:  0.03
  • Content Count:  299
  • Reputation:   6
  • Joined:  06/14/12
  • Last Seen:  

*bindatcmd "command","<NPC object name>::<event label>"{,<atcommand level>,<charcommand level>};

This command will bind a NPC event label to an atcommand. Upon execution of the

atcommand, the user will invoke the NPC event label. Each atcommand is only allowed

one binding. If you rebind, it will override the original binding.

The following variables are set upon execution:

.@atcmd_command$ = The name of the @command used.

.@atcmd_parameters$[] = Array containing the given parameters, starting from an index of 0.

.@atcmd_numparameters = The number of parameters defined.

Example:

When a user types the command "@test", an angel effect will be shown.

- script atcmd_example -1,{

OnInit:

bindatcmd "test",strnpcinfo(3)+"::OnAtcommand";

end;

OnAtcommand:

specialeffect2 338;

end;

}

full version here : https://rathena.svn....pt_commands.txt

oh I see but how do I insert a specific map for this restriction?

Link to comment
Share on other sites


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

if( strcharinfo(3) == "mapname" ) end;

or

http://pastebin.com/raw.php?i=2Wmym6JS

Link to comment
Share on other sites


  • Group:  Members
  • Topic Count:  148
  • Topics Per Day:  0.03
  • Content Count:  299
  • Reputation:   6
  • Joined:  06/14/12
  • Last Seen:  

if( strcharinfo(3) == "mapname" ) end;

or

http://pastebin.com/raw.php?i=2Wmym6JS

thanks it's working. but do I need to make more

if( strcharinfo(3) == "mapname" ) end;

for multiple maps?

Link to comment
Share on other sites


  • Group:  Members
  • Topic Count:  72
  • Topics Per Day:  0.02
  • Content Count:  2997
  • Reputation:   1130
  • Joined:  05/27/12
  • Last Seen:  

if (compare(strcharnifo(3),"g_cas")) {

Link to comment
Share on other sites


  • Group:  Members
  • Topic Count:  148
  • Topics Per Day:  0.03
  • Content Count:  299
  • Reputation:   6
  • Joined:  06/14/12
  • Last Seen:  

how do I put multiple maps?

@euphy should I replace if( strcharinfo(3) == "mapname" ) end; ?

if (compare(strcharnifo(3),"g_cas")) {

- script Sample -1,{
OnInit:
bindatcmd "storage",strnpcinfo(0)+"::OnAtcommand";
end;
OnAtcommand:
if( compare(strcharinfo(3) != "prontera","morocc")){
 openstorage;
}
end;
}

how? not working

Edited by zmref
Link to comment
Share on other sites


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

if( compare( strcharinfo(3),"prontera" ) || compare( strcharinfo(3),"payon" ) || compare( strcharinfo(3),"morocc" ){
   openstorage;
}else{
  dispbottom "You cant use at this map.";
}
end;

the method that Euphy show you is a simplified way for just Guild Castle maps.....

and compare cant support multiple parameters.

Link to comment
Share on other sites


  • Group:  Members
  • Topic Count:  40
  • Topics Per Day:  0.01
  • Content Count:  587
  • Reputation:   104
  • Joined:  11/19/11
  • Last Seen:  

For me , I prefer to use mapflag

if(getmapflag(strcharnifo(3),mf_gvg)){

Edited by QQfoolsorellina
  • Upvote 2
Link to comment
Share on other sites


  • Group:  Members
  • Topic Count:  72
  • Topics Per Day:  0.02
  • Content Count:  2997
  • Reputation:   1130
  • Joined:  05/27/12
  • Last Seen:  

@QQfoolsorellina: That's a much better idea. Note that there's also mf_gvg_castle only for castle maps.

Link to comment
Share on other sites


  • Group:  Members
  • Topic Count:  148
  • Topics Per Day:  0.03
  • Content Count:  299
  • Reputation:   6
  • Joined:  06/14/12
  • Last Seen:  

For me , I prefer to use mapflag

if(getmapflag(strcharnifo(3),mf_gvg)){

complete me a code please, my brain is out of capability

Link to comment
Share on other sites


  • Group:  Developer
  • Topic Count:  10
  • Topics Per Day:  0.00
  • Content Count:  2407
  • Reputation:   613
  • Joined:  07/05/12
  • Last Seen:  

if(getmapflag(strcharnifo(3),mf_gvg)) end;

if(getmapflag(strcharinfo(3),mf_gvg)) end;

3 or 4 posts with the same mistakes lol

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


  • Group:  Members
  • Topic Count:  6
  • Topics Per Day:  0.00
  • Content Count:  17
  • Reputation:   0
  • Joined:  05/03/13
  • Last Seen:  

guys where to paste this?

 

- script Sample -1,{
OnInit:
bindatcmd "storage",strnpcinfo(0)+"::OnAtcommand";
end;
OnAtcommand:
if( compare(strcharinfo(3) != "prontera","morocc")){
openstorage;
}
end;
}


waiting...

Link to comment
Share on other sites


  • Group:  Members
  • Topic Count:  50
  • Topics Per Day:  0.01
  • Content Count:  1702
  • Reputation:   238
  • Joined:  09/05/12
  • Last Seen:  

guys where to paste this?

 

- script Sample -1,{

OnInit:

bindatcmd "storage",strnpcinfo(0)+"::OnAtcommand";

end;

OnAtcommand:

if( compare(strcharinfo(3) != "prontera","morocc")){

openstorage;

}

end;

}

waiting...

http://rathena.org/wiki/Adding_a_Script

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...