summaryrefslogtreecommitdiff
path: root/src/map/script.c
AgeCommit message (Collapse)AuthorFilesLines
2012-04-20Initial support for Genetic, Sorcerer and Elemental Summons. Special Thanks ↵shennetsind1-1/+1
to 3CeAM for the base. Notice this revision onwards requires you to update your char sql table and add the elemental sql table (check sql-files/upgrade_svn15885_log.sql) If you step by any bugs, let us know at http://rathena.org/board/tracker/ Thank you very much. ARRIBA ARRIBA. git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@15885 54d463be-8e91-2dee-dedb-b68131a5f0ec
2012-04-19- Added 22nd argument to 'getmonsterinfo' which returns the mvp_exp of a ↵brianluau1-1/+2
monster. - Changed 'checkvending' to return 2 if player is using @autotrade. - Follow up to r15871: used spaces so everything lines up (people might use different Tab Size in their text editors). git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@15872 54d463be-8e91-2dee-dedb-b68131a5f0ec
2012-04-15Let there be light! GREEN TREE ON ALL DISTROS, I CHOOSE YOU, NOW!shennetsind1-34/+34
All 64-bit warnings should be cleared by this revision. git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@15862 54d463be-8e91-2dee-dedb-b68131a5f0ec
2012-04-04More cleanups for old clients.protimus1-2/+0
git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@15830 54d463be-8e91-2dee-dedb-b68131a5f0ec
2012-04-02Fixed gcc warning on script.c, getnpcidshennetsind1-1/+1
git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@15823 54d463be-8e91-2dee-dedb-b68131a5f0ec
2012-04-02- Fixed grouprandomitem; always produced negative item IDs. (bugreport:5529)epoque111-1/+1
git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@15822 54d463be-8e91-2dee-dedb-b68131a5f0ec
2012-03-31* Merged changes up to eAthena 15085.eathenabot1-7/+18
git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@15819 54d463be-8e91-2dee-dedb-b68131a5f0ec
2012-03-28Fixed bugreport:5497, LK/RG/PD/RG new mounts are now available again to ↵shennetsind1-1/+3
clients prior to november 2011, items with delayed consumption are no longer available to users in new mount state. Updated setoption to consider pc_cant_mount and remove OPTION_MOUNTING from the opt bundle git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@15808 54d463be-8e91-2dee-dedb-b68131a5f0ec
2012-03-23* Merged changes up to eAthena 15083.eathenabot1-0/+20
git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@15773 54d463be-8e91-2dee-dedb-b68131a5f0ec
2012-03-20- Fixed Clown/Gypsy/Minstrel/Wanderer not receiving skill points upon change-sexepoque111-0/+1
- Fixed missing casts from void* to struct online_char_data* in char.c git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@15735 54d463be-8e91-2dee-dedb-b68131a5f0ec
2012-03-19 - Script label db now utilizes `DBMap`'s ability to store integer-type data ↵gepard19841-6/+6
(follow-up to r15682). - Some minor code cleanups. git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@15734 54d463be-8e91-2dee-dedb-b68131a5f0ec
2012-03-19Refine DB updatelordttseven1-1/+1
* DB courtesy of Kenpachi * added support for different stats per refine level for renewal * cleaned up the corresponding code a little * REMODE now displays the atk values on the client correctly git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@15730 54d463be-8e91-2dee-dedb-b68131a5f0ec
2012-03-13Enhanced `DBMap` implementation to allow storing integer type data in ↵gepard19841-3/+7
addition to void pointers. - Added enum for data: `int`, `unsigned int` and `void*` - Replaced generic `void*` data with `DBData` struct to hold `int`, `unsigned int` or `void*` (member of `DBNode`) - Added `db_i2data`, `db_ui2data` and `db_ptr2data` functions to cast from `int`/`uint`/`void*` to `DBData` (used in `DBMap::put()`) - Added `db_data2i`, `db_data2ui` and `db_data2ptr` functions to get `int`/`uint`/`void*` from `DBData` - Enabled statistics for new functions in `db_stats` struct - `DBCreateData` functions (used in `DBMap::ensure()`) now return `DBData` instead of `void*` - `DBApply` functions (used in `DBMap::foreach()` and `DBMap::destroy()`) now take `DBData*` as a parameter instead of `void*` - `DBMatcher` functions (used in `DBMap::getall()`) now take `DBData` as a parameter instead of `void*` - `DBReleaser` functions now take `DBData` as parameter instead of `void*` - Default releasers release data if it is `void*` (`DB_DATA_PTR`) type - `DBIterator` functions: `first()`, `last()`, `next()` and `prev()` now return `DBData*` instead of `void*` - `DBIterator::remove()` now returns `int` (1 if node was found and removed, 0 otherwise) instead of `void*` and takes an extra `DBData*` parameter for the data of removed entry - `DBMap::get()` and `DBMap::ensure()` now return `DBData*` instead of `void*` - `DBMap::remove()` and `DBMap::put()` now return `int` (1 if node already existed, 0 otherwise) instead of `void*` and take an extra `DBData*` parameter for the data of removed entry - `DBMap::put()` now takes `DBData` as parameter instead of `void*` - `DBMap::getall()` now puts data into `DBData**` buffer instead of `void**` buffer - Updated macros: - (`i`/`ui`/`str`)`db_get` and (`i`/`ui`/`str`)`db_ensure` were wrapped with `db_data2ptr` to extract data from `DBData*` that is now returned by `DBMap::get()` - added (`i`/`ui`/`str`)`db_iget` and (`i`/`ui`/`str`)`db_uiget` that get `DBData` from `DBMap` and extract `int`/`unsigned int` from it (with `db_data2i`/`db_data2ui`) - `db_put`, `idb_put`, `uidb_put` and `strdb_put` data params were wrapped with `db_ptr2data` to match new signature of `DBMap::put()` (`DBData` instead of `void*`) - added (`i`/`ui`/`str`)`db_iput` and (`i`/`ui`/`str`)`db_uiput` that put `int`/`unsigned int` into `DBMap` (first wrapping it with `DBData`) - added `NULL` in place of extra parameter for removed data in `db_remove` macros - `dbi_first`, `dbi_last`, `dbi_next` and `dbi_prev` were wrapped with `db_data2ptr` to extract data from `DBData*` that is now returned by these `DBIterator` functions - Updated `DBMap` documentation, and fixed a dozen of typos in it. - Updated rest of rA code to reflect `DBMap` changes (mostly required signature changes of `DBCreateData` and `DBApply` functions). - Fixed a bug where `DBMap::put()` would return data of a deleted entry. - Removed some unnecessary pointer casts. - Increased `showmsg.c` static buffer size to fit entire DBMap stats report. git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@15682 54d463be-8e91-2dee-dedb-b68131a5f0ec
2012-03-05- Guild Castle code cleanup:gepard19841-30/+8
- all changes to guild castle data are now handled first by map-server and only sent to char-server for saving - ensured that changes made to guild castle during char-server disconnection time will be resent on reconnect - actually removed definition of `MAX_GUILDCASTLE` (r15657) git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@15658 54d463be-8e91-2dee-dedb-b68131a5f0ec
2012-03-04- Guild Castle code cleanup:gepard19841-72/+66
- removed `MAX_GUILDCASTLE` limit - char-server now caches guild castles in `DBMap` - improved guild castle SQL queries to support non-default values of `MAX_GUARDIANS` - disallowed declaring guild castles on maps that are on other map-servers - map-server now requests data for all guild castles from char-server on initial connect (bugreport:287) - removed ''guildcastleinfo events'' as they were esentially duplicated ''OnAgitInit'' - optimized castle data load packets (bugreport:287) - updated WoE scripts to reflect source changes (scripts no longer need or should request castle or guild data) - updated related docs - Added `db_size` macro. - Replaced manual counting of castles occupied by a guild with `guild_checkcastles()` calls. git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@15657 54d463be-8e91-2dee-dedb-b68131a5f0ec
2012-03-03* fixed getiteminfo offset being off by one in REMODE (bugreport:5378)lordttseven1-0/+2
git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@15652 54d463be-8e91-2dee-dedb-b68131a5f0ec
2012-03-02Replaced some magic numbers related to castle guardians with `MAX_GUARDIANS`.gepard19841-21/+11
git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@15650 54d463be-8e91-2dee-dedb-b68131a5f0ec
2012-03-01Enabled `DB_OPT_RELEASE_DATA` for several `DBMap`s to simplify data freeing.gepard19841-23/+9
git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@15644 54d463be-8e91-2dee-dedb-b68131a5f0ec
2012-02-15Added `getgroupid()` script command (follow-up to r15572).gepard19841-0/+16
git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@15583 54d463be-8e91-2dee-dedb-b68131a5f0ec
2012-02-14Removed deprecated memory manager macros (follow-up to r14916).gepard19841-13/+13
git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@15581 54d463be-8e91-2dee-dedb-b68131a5f0ec
2012-02-14Fixed `strtolower` and `strtoupper` script functions (bug:5331).gepard19841-27/+14
git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@15580 54d463be-8e91-2dee-dedb-b68131a5f0ec
2012-02-13 - Added `libconfig` (configuration file library: ↵gepard19841-50/+9
http://www.hyperrealm.com/libconfig/): - Updated VS9/10 project files. - Updated `configure` & `Makefile`s. - New GM, Commands & Permissions system: - '''This is a backwards compatibility breaking update''', please read tid:58877 - Replaced GM levels with Player Groups. - Commands permissions & other privileges now depend on group, not GM level. - `@help` command improvements: requires "commandname" param and shows more detailed info about commands. - Modified GM whisper system to deliver messages basing on permissions, not GM level. - Remote trade request is now possible only if player is allowed to use `@trade` command as well. - Added a proper permission to use `/changemaptype` command. - `clif_displaymessage` is now capable of displaying multiline messages. - All `ACMD_FUNC`s are static now, and the only way to invoke them is with `is_atcommand()`; all client commands (starting with `/`) are now translated into corresponding atcommands (with exception of `/kick` used on monster, as there is no atcommand to kill single monster). - Removed nonsense "bot check" triggering when player blocked (`/ex`) Server. - Merged `@monster`, `@monsterbig` and `@monstersmall`. - Improved flow of atcommand execution to avoid revealing info about online players or existing commands to non-privileged players. - Merged `atcommand` and `charcommand` script functions (`charcommand` is aliased to `atcommand`). - Fixed `atcommand` script function reading unknown memory area (possible access violation). git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@15572 54d463be-8e91-2dee-dedb-b68131a5f0ec
2012-01-31Merged `getmapmobs` script function into `mobcount` (bugreport:244). See ↵gepard19841-46/+18
script commands documentation for details. git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@15530 54d463be-8e91-2dee-dedb-b68131a5f0ec
2012-01-30- Removed more trailing tabs.brianluau1-15/+15
git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@15527 54d463be-8e91-2dee-dedb-b68131a5f0ec
2012-01-30- Removed trailing tabs, and fixed some spacing.brianluau1-4/+4
git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@15524 54d463be-8e91-2dee-dedb-b68131a5f0ec
2012-01-22Minor cleanups, mostly reducing scopes.xazax-hun1-3/+5
git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@15504 54d463be-8e91-2dee-dedb-b68131a5f0ec
2012-01-20Merged TXT removal branch back to trunk.gepard19841-24/+2
* TXT save engine is removed and no longer supported. * See also tid:53926, tid:57717. git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@15503 54d463be-8e91-2dee-dedb-b68131a5f0ec
2012-01-18Reorganized picklog functions a bit to reuse some common code.gepard19841-2/+2
git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@15486 54d463be-8e91-2dee-dedb-b68131a5f0ec
2012-01-17Enabled Mersenne Twister MT19937 as random number generator instead of ↵gepard19841-5/+2
standard `rand()` function (follow-up to r14865, r14870). - It fixes issues caused by RAND_MAX being only 32k in Windows system (bugreport:1927, bugreport:86). git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@15483 54d463be-8e91-2dee-dedb-b68131a5f0ec
2012-01-17- Updates to script_commands.txt, and added svn:keywords property.brianluau1-1/+1
git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@15473 54d463be-8e91-2dee-dedb-b68131a5f0ec
2012-01-12ubuntu's gcc 4.6x warning fix, bugreport:5232 credits to gepardshennetsind1-4/+8
git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@15435 54d463be-8e91-2dee-dedb-b68131a5f0ec
2012-01-11Picklog improvements:gepard19841-61/+16
- now it is finally possible to log every item players gain or lose - added 3 log types: `I` for auctioned items, `B` for buying shop transactions and `X` for all other items transactions that don't fall into another category (for detailed explanation on all log types read `conf/log_athena.conf`) - it also fixes items being logged as picked up/gained by player when in fact they were dropped on the ground due to full inventory git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@15420 54d463be-8e91-2dee-dedb-b68131a5f0ec
2012-01-04fixed grouprandomitem to always create unidentified items, bugreport:2802shennetsind1-4/+4
git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@15382 54d463be-8e91-2dee-dedb-b68131a5f0ec
2011-12-31Added 4 new all-handy script functions; special thanks to KeyWorld!shennetsind1-2/+67
* getargcount() -- to be used inside functions/callsub labels, returns quantity of arguments provided * is_function(<function name>) -- checks weather a "user" function exists, returning 1 if function is found and 0 otherwise. * freeloop(<toggle>) -- lets you to enable/disable (1 or 0) the loop infinity protection for that specific npc instance, allowing your script to loop as much as it may need. * get_revision() -- retrieves the current svn revision git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@15340 54d463be-8e91-2dee-dedb-b68131a5f0ec
2011-12-25Fixed setting and removing restricted mapflags. bugreport:4119xazax-hun1-3/+15
git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@15273 54d463be-8e91-2dee-dedb-b68131a5f0ec
2011-12-24* Merged changes up to eAthena 15040.eathenabot1-37/+16
git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@15245 54d463be-8e91-2dee-dedb-b68131a5f0ec
2011-12-23` Fixed MF_BATTLEGROUND by Toshiro, bugreport:5150xantara1-1/+1
git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@15219 54d463be-8e91-2dee-dedb-b68131a5f0ec
2011-12-17- Fixed pet.c not checking log_config.enable_logs setting. [lighta]brianluau1-1/+1
- Updated documentation for 'showevent'. git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@15152 54d463be-8e91-2dee-dedb-b68131a5f0ec
2011-12-17- Replaced log_config.enable_logs constants with LOG_ enums that existed ↵brianluau1-26/+26
since r9599. git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@15150 54d463be-8e91-2dee-dedb-b68131a5f0ec
2011-12-14- Fixed floating shops being accessible from any location through 3rd party ↵epoque111-0/+3
programs - TODO: needs amending for the walking glitch (bugreport:5016) git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@15099 54d463be-8e91-2dee-dedb-b68131a5f0ec
2011-12-13* Merged changes up to eAthena 15033.eathenabot1-1/+2
git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@15098 54d463be-8e91-2dee-dedb-b68131a5f0ec
2011-12-13- Fixed rand() script command not allowing a range of over 32767 on several ↵epoque111-0/+4
systems git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@15090 54d463be-8e91-2dee-dedb-b68131a5f0ec
2011-12-13Added error message if a script tries to access an instance variable while ↵GodLesZ1-1/+4
no instance is attached (bugreport:4962) git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@15089 54d463be-8e91-2dee-dedb-b68131a5f0ec
2011-12-12- Added support for multi-line messages when using mes;epoque111-2/+66
- Added getstatus; script command to retrieve information about a specific, active status effect git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@15072 54d463be-8e91-2dee-dedb-b68131a5f0ec
2011-12-12Fixing the last buildbot warning; should brian be happy, we'll open champagneshennetsind1-1/+1
git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@15068 54d463be-8e91-2dee-dedb-b68131a5f0ec
2011-12-10- Renamed 'RRConfig' folder to 'config'.brianluau1-2/+2
git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@15052 54d463be-8e91-2dee-dedb-b68131a5f0ec
2011-12-09Renewal Mode DEF calc fixed (can go over 127 now), bugreport:5110shennetsind1-5/+5
Fixed Logic Issues with r15039 script command set git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@15051 54d463be-8e91-2dee-dedb-b68131a5f0ec
2011-12-09- Added ToastOfDoom's String Commands Package. (tid:53411, topic:204976)brianluau1-0/+802
git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@15039 54d463be-8e91-2dee-dedb-b68131a5f0ec
2011-12-06getmapflag() fix by Kenpachi (bugreport:5097)shennetsind1-109/+114
git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@15011 54d463be-8e91-2dee-dedb-b68131a5f0ec
2011-12-05Merging RREmu into rAthena -- quite a few stuff yet to be renamed, but we'll ↵shennetsind1-9/+173
get it sorted. Some of the stuff included in RREmu that is now part of rAthena: - RE Drop Rate Modifier - RE Experience Rate Modifier - RE Weapon MATK - RE Shield ASPD job-specific penalty - RE Cast Time - Renewal-specific item DEF - 3.1 classes. - All-New Mounts - Official Magical Reflection - And other perks, such as fully-functional @mapflag also merged eAthena 15006 into rAthena. For Bugs, Comments and Suggestions: http://rathena.org/board/tracker/ git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@15009 54d463be-8e91-2dee-dedb-b68131a5f0ec