I believe this could be done by using bindatcmd: http://rathena.org/b...__hl__bindatcmd
*bindatcmd "command","<NPC object name>::<event label>"{,<atcommand level>,<charcommand level>};
*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.
Example:
When a user types the command "@test", an angel effect will be shown.
- script atcmd_example -1,{
OnInit:
bindatcmd("test","atcmd_example::OnAtcommand");
end;
OnAtcommand:
specialeffect2 338;
end;
}
and using strcharinfo(3) to make sure that when they do use @die, it'll check if the player is on the specific map.
*strcharinfo(<type>)
This function will return either the name, party name or guild name for the
invoking character. Whatever it returns is determined by type.
0 - Character's name.
1 - The name of the party they're in if any.
2 - The name of the guild they're in if any.
3 - The name of the map the character is in.
If a character is not a member of any party or guild, an empty string will be
returned when requesting that information.
Basically with bindatcmd, you would want to configure it so that when they do use @die, you can use the strcharinfo(3) function to check if they're on the right map and if they are, you can put a NPC message saying "You are not allowed to use @die on this map."
Another alternative way.. is using the nocommands mapflag.. but it blocks all commands.. =/