1305 Commits

Author SHA1 Message Date
aleos89
bd36b294ad Merge branch 'master' into cleanup/storages_optimization 2016-08-30 19:40:36 -04:00
Cydh Ramdh
47276e94a6 Clean up party invitation reply. (#1471)
* Clean up party invitation reply.
* Added reply result as enum.
* Added official party restriction.
* Added configuration in party.conf

Signed-off-by: Cydh Ramdh <cydh@pservero.com>
2016-08-31 01:07:55 +02:00
Cydh Ramdh
d84d6ba1e5 Initial release: Map X Job restriction (#1526)
* Listed job with matched map zone is restricted to enter the map.
* Added db file `job_noenter_map.txt` with format: `JobID,FlagZone,GroupLevelBypass`.
* Reserved usage for WOE:TE implementation.
* Typo correction, thanks @aleos89 @Lemongrass3110
2016-08-30 22:09:02 +07:00
aleos89
b3b2bab7c5 Follow up to cd5dbe2
* Forgot to adjust npctalk's definition.
2016-08-29 12:24:02 -04:00
aleos89
cd5dbe28e4 Adjusted the npctalk script command
* Now has an optional parameter of NPC name.
- If supplied, it will display over that NPC's head, else it will use the attached NPC.
2016-08-29 11:56:19 -04:00
Cydh Ramdh
8805e7e1d8 Merge branch 'master' into woe_te-restrictions 2016-08-27 07:04:41 +07:00
Jittapan Pluemsumran
021bed5f5d
Implemented status reduction potion support
* New script command `needed_status_point` added.
* The items are not yet implemented.
2016-08-21 14:30:17 +07:00
Cydh Ramdh
8da71a126d * Fixed memory leaks from item random options, follow up f296409ada211a0aa89863db4d9603054845cf65
* Clean up doc and array index check for `getequiprandomoption`, `setrandomoption`, follow up 8deabb157ae9e58db86d0383c34dba7211780b6a
* Exported CARD0_FORGE, CARD0_FORGE, and CARD0_PET for `getequipcardid` result.
* Add `SCSTART_` references in `sc_start` doc.

Signed-off-by: Cydh Ramdh <cydh@pservero.com>
2016-08-16 11:14:33 +07:00
Jittapan Pluemsumran
8deabb157a
Implemented basic script commands to apply options to equipped item. 2016-08-15 17:04:06 +07:00
Jittapan Pluemsumran
f296409ada
Initial Release of Random Option System
* Added basic support for random option system
* Don't forget to import upgrade_20160814.sql and upgrade_20160814_log.sql to make your existing rAthena installation functional!
2016-08-14 22:21:07 +07:00
Lemongrass3110
ede39b1730 Refurbished hat effects
Follow up to 5da49b8
Thanks to @cydh for the good base in #1465.

Renamed the function from itemeffect to hateffect.
The effects now get sent to other players as well.
You can enable or disable one effect at a time with the script command now.
2016-08-13 21:56:58 +02:00
aleos89
842e30ed8a Corrected progress bar behavior (fixes #1425)
* Skills/Items, that have pop-up menus, or active NPC send a work in progress message if players try to do anything else.
* If a progress bar is active the first attempt to walk cancels the progress bar while the second walk attempt moves the player.
* Applies to renewal mode only.
2016-08-02 17:25:25 -04:00
Lemongrass3110
5da49b87b5 Added hat effect packet and script support 2016-07-29 19:15:46 +02:00
aleos89
9f68f7817c Corrected an issue with script command set
* Follow up to fd48238.
* Added a few checks so the optional value for script command setr doesn't conflict with the optional character ID value.
2016-07-01 17:46:59 -04:00
aleos89
fd482381f6 Script engine fixes/additions (fixes #1212)
* Follow up to c3193f3.
* Resolved some issues with += and -= operators.
* Cleaned up post ++ and -- operators.
* Implemented pre ++ and -- operators.
Thanks to Hercules!
2016-07-01 17:13:50 -04:00
aleos89
604e805c03 Corrected some MAX_SEARCH results (fixes #1345)
* The count was already being capped by itemdb_searchname_array() so the check was never hit.
* Adjusted the return message to match the corrected result.
2016-06-16 13:46:15 -04:00
Aleos
0d43d26fb9 Follow up to 98fdf31
* Fixes an uninitialized variable.
2016-06-07 17:26:46 -04:00
Jittapan Pluemsumran
98fdf31fb3 Implemented recalculatestat command (#1348)
This command will force a stat recalculation for the attached player.
2016-06-07 23:50:34 +07:00
aleos89
eeccb70050 Merge branch 'master' into cleanup/storages_optimization
Conflicts:
	doc/script_commands.txt
	src/map/pc.c
	src/map/script.c
2016-06-01 13:24:27 -04:00
aleos89
161a4c01c9 Small adjustments for the instance system
* Follow up to 32c829d.
* Added a missing break on guild type instance creation.
- Thanks to @Canoe!
* Added instance name back to script command instance_enter.
- This will present the proper error message when trying to enter another instance.
2016-05-26 09:06:49 -04:00
Aleos
32c829debe Merge pull request #1264 from rathena/feature/instance_expansion
Expanded the instance system to support new modes
* New modes include: No player attached, single player, and guild.
* Modified the instance_db to allow instance idle time to be adjustable.
* Removed Map1 from the instance_db as the EnterMap is always the same value.
* Adjusted the stored maps of instances to dynamic arrays to conserve memory.
- Max amount of possible maps increased to 255.
* Instances will now be destroyed even if the owner cannot be found.
* Corrected the return value when entering an instance when a character, party, or guild does not have an instance.
* Expanded script command instance_create to take in an owner ID and an optional mode.
* Added a new script command instance_check_guild (works the same as instance_check_party).
* Corrected a few script commands to properly stop the script engine on failures for instance script commands.
* Removed the instance name lookup for when entering an instance as instance_id is now passed.
- Adjusted script command instance_enter to no longer require the instance name.
* Cleaned up script command instance_warpall.
* Adjusted script command instance_announce to check when instance ID is 0 rather than -1 since instance IDs are stored as unsigned now.
* Refactored all instance_id to unsigned short.
* Updated documentation to reflect changes.
2016-05-25 14:55:50 -04:00
aleos89
6babca3689 Corrected a few minor issues
* Follow up to 2cfb844.
* Adjusted the instance_db documentation.
* Adjusted script command instance_announce to check when instance ID is 0 rather than -1 since instance IDs are stored as unsigned now.
* Added a couple of checks when sending instance information to the client.
* Fixed a compile warning.
2016-05-24 09:22:03 -04:00
aleos89
2cfb844429 Refactored a bit of the instance modes
* Follow up to c97be60.
* Added some safety measures when sending the instance name to the client.
* Adjusted the stored maps of instances to dynamic arrays to conserve memory.
- Max amount of possible maps increased to 255.
* Removed Map1 from the instance_db as the EnterMap is always the same value.
* Instances will now be destroyed even if the owner cannot be found.
* Corrected the return value when entering an instance when a character, party, or guild does not have an instance.
* Corrected a few script commands to properly stop the script engine on failures for instance script commands.
* Removed the instance name lookup for when entering an instance as instance_id is now passed.
- Adjusted script command instance_enter to no longer require the instance name.
* Adjusted script command instance_create to keep backwards compatibility.
* Cleaned up script command instance_warpall.
* Updated script documentation to reflect changes.
* Updated instance_db to reflect changes.
2016-05-23 14:12:34 -04:00
aleos89
fe4eefb787 Implemented script command active_transform (fixes #1006)
* Works the same as script command transform and can be stacked with it as well.
* active_transform has display priority if transform is active.
Thanks to Ziu and @Darkelfen!
2016-05-16 14:15:22 -04:00
aleos89
c97be60bbf Expanded the instance system to support new modes
* New modes include: No player attached, single player, and guild.
* Expanded script command instance_create to take in an owner ID and an optional mode.
* Added a new script command instance_check_guild (works the same as instance_check_party).
* Refactored all instance_id to unsigned short.
2016-05-14 11:57:54 -04:00
aleos89
af8524aa7d Follow up to 10bac96
* Adjusted the directional check for script command pushpc.
2016-05-11 08:42:11 -04:00
Lemongrass3110
2b61f45a94 Fixed readparam behaviour for variables
Readparam now works correctly with variables.
This is a follow up to e112fc1 which addressed #647.

Fixes #1213, thanks to @Everade.
2016-05-06 01:14:12 +02:00
aleos89
10bac969ee Added DIR_* to script constants
* Adjusted a few location in source to use the constants.
Thanks to @Lemongrass3110!
2016-04-22 23:12:47 -04:00
aleos89
a1777407f9 Resolved final GCC compile warnings
* Fully fixes #1171.
* Follow up to ee3cf98.
2016-04-15 10:02:51 -04:00
aleos89
67e26c885d Added a new script command unitexists
* Small follow up to 4f16d82.
* Checks to see if a unit exists or not.
2016-04-13 09:34:43 -04:00
Lemongrass3110
2bf64c9773 Refactored the EQI constants
The EQI constants of the constants database did not match the ones used in the source up to now.
For whatever reason long long ago an array was created which mapped the const_db EQI constants to the source's EQP constant(aegis bitmasks).
With this commit we now use the already existing array from pc.h(which was moved from pc.c to be accessible).

This merges and closes #1147 due to follow up changes with 1cd3741.
2016-04-13 11:11:42 +02:00
aleos89
4f16d82540 Added return values for unit script commands (fixes #1143)
* Script commands getunitdata and setunitdata will return -1 when the given GID is not found.
* Script commands getunitname and setunitname will return Unknown when the given GID is not found.
2016-04-12 10:16:58 -04:00
aleos89
ee3cf98daa Fixed a possible item ID overflow for script command makeitem (fixes #1160)
* Fixed a possible overflow with script command getareadropitem.
* Adjusted item count variables to match item ID variable type as well.
2016-04-12 09:52:06 -04:00
Aleos
1cd3741055 Merge pull request #1120 from secretdataz/feature/geteqweaponlv
Made a new argument for script command getequipweaponlv
* Added -1 which will return the weapon level that the item is compounded on.
Thanks to @secretdataz!
2016-04-09 10:08:15 -04:00
aleos89
5766fc6209 Corrected the return value for script command query_sql
* Should return 0 on an empty query and -1 on a query failure.
* Updated script command documentation.
2016-04-08 09:27:14 -04:00
Atemo
3a558ff83b Rename canParticipateSiegeTE into getpermissionwoete 2016-04-04 20:35:58 +02:00
Atemo
b3d150c3a5 Merge branch 'master' into woe_te-restrictions 2016-04-04 20:22:25 +02:00
aleos89
8d43623a2b Resolved several compile warnings
* Miscellaneous compile warning fixes.
2016-04-04 13:27:43 -04:00
Jittapan Pluemsumran
2a29ac0037 Follow up to ffd16c2
Thanks to @aleos89 for advices
2016-03-31 02:08:10 +07:00
Jittapan Pluemsumran
5e9489bbf2 Make arguments in getequipweaponlv command optional 2016-03-31 01:25:07 +07:00
Lemongrass3110
cdd3fdfb6d Implemented min and max
These functions are based on the pull request #1091 from @jezznar.
They now are combined in one internal function using function pointers and alias names.
It is also supported to mix normal integer values and arrays now.
2016-03-30 16:04:47 +02:00
Atemo
a63604d92a Merge pull request #978 from rathena/command_update
Removed the displayed name in from of the message displayed by npctal…
2016-03-30 00:37:11 +02:00
aleos89
d88a6aca45 Optimized Inventory, Cart Inventory, and Storage usage
* These storage types now mimic Guild Storage and can be loaded/saved whenever needed.
* Relieves mmo_charstatus from having to send storage types and lets the char-server handle it.
* All storage types now have an increased max amount.
* Fixes #441 - Players will no longer be required to log out to resync cart item data before opening a Vending Store.
* Refactored player weight and cart weight calculations into their own functions.
* Added script commands guildstoragecountitem[2] and guildstoragedelitem[2].
* Refactored several function return types as well as documentation.
Thanks to @lighta and @cydh for their help with it!
2016-03-29 13:30:27 -04:00
Playtester
084fbc8251 Fixed some Linux compiler warnings (fixes #1105) 2016-03-27 09:46:30 +02:00
Cydh Ramdh
cbfa9c9ea1 Merge branch 'feature/exp-giving-script'
Merge pull request #1032 from rathena/feature/exp-giving-script

Signed-off-by: Cydh Ramdh <cydh@pservero.com>
2016-03-26 01:45:36 +07:00
Cydh Ramdh
09b2ea06ee * Refactor pc_setparam for SP_BASEEXP and SP_JOBEXP.
* Added script command `getexp2` for safety usage of `set BaseExp,n;` and `set JobExp,n` usages.
* Cleanup exp lost functionto `pc_lostexp`.

Signed-off-by: Cydh Ramdh <cydh@pservero.com>
2016-03-20 12:31:44 +07:00
aleos89
daa9e018f4 Release of Doram Race!
* Requires client 2015-10-01 and newer.
* All skills are usable from from the base list to all 3 branch types.
-- Some skills still need their official activation chance and durations.
* Adjusted the char-server start point and start item split functions to be more dynamic.
Thanks to Rytech and @NovaRagnarok for their information!
2016-03-19 14:09:30 -04:00
Playtester
b5de854b90 Snap, Ganbantein, Gravitational Field, Flying Kick (fixes #1052)
* Snap now has a server-sided range of 14
* Snap, Ganbantein and Gravitational Field will no longer cause you to move if you target a cell out of range
* Snap and Flying Kick will now check for obstacles on a linear path rather than on the normal walkpath
* Range specified in skill_db is now equal to the client-sided range
* Some range code cleanup
2016-03-13 16:42:46 +01:00
Atemo
6f34c14c0e Fix a mistake in npctalk 2016-03-12 16:03:16 +01:00
aleos89
0f5b6db813 Implemented new adoption methods
* Implemented atcommand adopt.
* Implemented script command adopt.
* Circumvents adoption issues with 2013-08+ clients (Related to #768).
* Suggested from https://rathena.org/board/topic/104014-suggestion-add-adopt-or-etc/
2016-03-11 13:45:17 -05:00