* Fixed a forgotten "return 0;" that stopped the parsing of the file after the first "script" of the file is parsed sucessfully (caused by r11502).
* Applied the same parsing and restrictions of npc names to warps, duplicates and shops (other code expects unique names for them too).
git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@11508 54d463be-8e91-2dee-dedb-b68131a5f0ec
* configure script using svn:eol-style LF and require mysql/pcre when --with-mysql/pcre is used.
Added a forgotten file from r11311. (script_commands.txt)
Note: charid's are globally unique, id's are equal for characters in the same account.
git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@11312 54d463be-8e91-2dee-dedb-b68131a5f0ec
- Corrected and simplified the skill_magic_reflect function. Fixed damage reflection being based on the caster rather than the target.
- Potions are now usable inside Gospel by the casting Paladin (as per Aegis tests done by AuronX)
- The unequip script command now takes a position from 1 to 10 rather than 0 to 9 (to make it consistant with all the other equip position related script commands)
- Added the EQI_* constants to db/const.txt in a format usable by the equip-position related script commands.
- Updated some items to use the new EQI constants.
- Also updated doc/script_commands.txt to refer to the EQI list.
git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@11230 54d463be-8e91-2dee-dedb-b68131a5f0ec
- Corrected getpetinfo so it actually returns "null" when there's no pet and you request the name (the docs state it so).
- Also cleaned up a bit getpetinfo
- Added gethominfo (which behaves in the same way as getpetinfo).
- The 'maxcount' skill_db field now can store independant values per skill-level, required for Kamaitachi since it uses different range values per level.
- Corrected bonus3 bAutoSpell(WhenHit) to select target enemy (rather than self) for skills with inf self and inf2 'don't target self' (aka: auto-select target skills).
- Corrected map_foreachinpath to do a wall check for targets beyond the initially selected tile.
- Corrected Kamaitachi's range to be 9, and the path range to be 4+SkillLv
git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@11169 54d463be-8e91-2dee-dedb-b68131a5f0ec
- Expanded isloggedin script command to support an optional argument (char id)
- Expanded warpparty command to accept target "Leader", this will warp the party to the leader.
- Added a summon structure to handle non-dead-branch mob-groups since the current implementation totally fails for mob groups that don't have MANY integrants
- Fixed mobs not attempting an IDLE skill right before unlocking a target.
- Removed a useless variable in the pet_data structure
git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@10961 54d463be-8e91-2dee-dedb-b68131a5f0ec
* Script command getarg supports an extra argument with a default value that is returned if the requested argument doesn't exist.
git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@10773 54d463be-8e91-2dee-dedb-b68131a5f0ec
* menu/select/prompt script functions support grouped and empty options.
The selected option number is consistent with them.
* More work on ticket #41.
git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@10316 54d463be-8e91-2dee-dedb-b68131a5f0ec
- dll, library, header
- cleaned the only existing example and moved it to /samples
- changed its interface a bit, now it uses $@ instead of $ to store the parsed result
- /!\ adjust your scripts if you are using npc regexp parsing /!\
git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@10170 54d463be-8e91-2dee-dedb-b68131a5f0ec
- Autoloot will now only work on items dropped a certain distance from the player. The distance is defined by AUTOLOOT_DISTANCE in atcommand.h and defaults to AREA_SIZE.
git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@10039 54d463be-8e91-2dee-dedb-b68131a5f0ec
- Updated scripts_command to add info on OnTimerQuit
- Corrected the double login check in pc_authok
git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@9926 54d463be-8e91-2dee-dedb-b68131a5f0ec
- Adjusted menu-based skills so you can't reuse the same skill until you've dealt with the menu.
- Adjust autospells so that removing an autospell works when the script of the card that removes the autospell is triggered before the script that adds the spell.
- The "requested name of gm-hidden char" warning will not be displayed when the object in question is an NPC (since you can use Intravision to do this).
- Corrected the header format for invisible npcs.
- Venom Knife no longer takes into accounts cards or EDP.
git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@9905 54d463be-8e91-2dee-dedb-b68131a5f0ec
- Updated script commands startnpctimer, stopnpctimer, initnpctimer so you can attach a player to them, this is done because the attach/detach functions can't be used to attach to a different script than the one currently running.
- Some script code cleaning
- Updated the script_command reference with the new flag values of [start/stop/init]npctimer.
git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@9872 54d463be-8e91-2dee-dedb-b68131a5f0ec
- Corrected Spider Web casting around caster instead of target's position
- Corrected a possible crash during login due to checking for the incorrect variable (lets pc_calc_status be invoked when it shouldn't)
- Reenabled the base status aspd calculation for homunc (status_calc_bl calculates battle_status, status_calc_homunculus calculates base_status, they are not the same!)
- Corrected the meaning of "skill_display_fail&2", made 2 the default setting.
- Added bounds checking to map_foreachincell
- Opt2 values (poison, blind, and so on) are now resent on warp/map-change
- Corrected description of isloggedin script command.
git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@9853 54d463be-8e91-2dee-dedb-b68131a5f0ec
I'd also like feedback of the new version, to either me, Trancid or Dj-Yhn, to see what should be changed or what is incorrect / missing.
~erKURITA.
git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@9831 54d463be-8e91-2dee-dedb-b68131a5f0ec
Also fixed it so that it doesn't throw a 'args of aFree is not valid pointer' error (although I'm not at all sure that the fix is correct).
git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@9787 54d463be-8e91-2dee-dedb-b68131a5f0ec
- Added script command npcshopattach to enable attaching/detaching your script from any npc shop.
- Updated doc/script_commands.txt with entries for npcshopitem, npcshopadditem, npcshopdelitem and npcshopattach
git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@9769 54d463be-8e91-2dee-dedb-b68131a5f0ec
* functions checking if a player is attached as soon as possible.
* functions that required a player attached and would crash if none was
there terminate the script now. (others keep the current behaviour to
maintain full backward compatibility)
* removed the unused flag argument in guildskill.
* bonus,bonus2,bonus3,bonus4 use the same function now (remains the same
script-wise)
* added an optional parameter to setcart,setfalcon,setriding so it's
possible to remove the cart/falcon/mount or select a specific cart
* other cleanups
git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@9636 54d463be-8e91-2dee-dedb-b68131a5f0ec
- Fixed getitem trying to get <character ID> from the wrong argument.
- Now getitem can be run on scripts without a player attached if <character ID> is specified.
- Now the two last arguments of guardian are optional and independant of each other ("<event label>" and <guardian index>). This way the previous implementation and script_commands definition are still valid code.
- Now buildin function names and argument definitions are checked for validity before adding the function to the script engine.
Argument definitions follow the pattern:
(v|s|i|l)*\?*\*?
v - value (string or int)
s - string
i - int
l - label
? - one optional parameter
* - unknown number of optional parameters
git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@9599 54d463be-8e91-2dee-dedb-b68131a5f0ec
- Some cleaning of npc_final
- Made speed_add_rate a linearly stacking increase.
- Corrected a possible overflow when using show_mob_info to display the mob's up as a percent.
- Corrected the documentation for checkoption/checkoption1/checkoption2
git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@8792 54d463be-8e91-2dee-dedb-b68131a5f0ec
- Fixed the mob-id check during pet_db loading, it will also now print when a pet is not loaded due to having an invalid mob class specified.
git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@8587 54d463be-8e91-2dee-dedb-b68131a5f0ec