summaryrefslogtreecommitdiff
path: root/src/map/script.c
AgeCommit message (Collapse)AuthorFilesLines
2013-09-25Renamed more forgotten variables during interface conversionsHaru1-30/+21
(related: b9c8f57) Most renames are trivial (just to avoid shadowing global variables, even if they currently did no harm), but there were some cases of partly renamed variables that caused some NULL checks to always pass and who knows what could have been happened when they were too subtle to make the application crash. Also corrected some potentially unsafe macro definitions Signed-off-by: Haru <haru@dotalux.com>
2013-09-21Corrected invalid values assigned to enum homun_type variablesHaru1-3/+3
- Fixes a warning in clang-5.0.0 (and a potentially incorrect/undefined behavior of the related code) Signed-off-by: Haru <haru@dotalux.com>
2013-09-17Merge branch 'master' of https://github.com/HerculesWS/Herculesshennetsind1-4/+4
2013-09-17HPM: Battleground.c Interfaceshennetsind1-18/+18
Fully Integrated. Closes #97 Signed-off-by: shennetsind <ind@henn.et>
2013-09-17HPM: Itemdb.c Interfaceshennetsind1-10/+10
Fully Integrated. Closes #110 Signed-off-by: shennetsind <ind@henn.et>
2013-09-17Fixed bugreport:7710Haru1-4/+4
Follow-up to eb10f35. Thanks to bgamez23 http://hercules.ws/board/tracker/issue-7710-bc-blue-announce-bug/ Signed-off-by: Haru <haru@dotalux.com>
2013-09-16HPM: Quest.c Interfaceshennetsind1-5/+5
Fully Integrated Signed-off-by: shennetsind <ind@henn.et>
2013-09-16HPM: Pet.c Interfaceshennetsind1-20/+20
Fully Integrated. Signed-off-by: shennetsind <ind@henn.et>
2013-09-16HPM: Mapreg_sql.c Interfaceshennetsind1-19/+19
Fully Integrated Signed-off-by: shennetsind <ind@henn.et>
2013-09-16HPM: Npc.c Interfaceshennetsind1-58/+58
Fully Interfaced. Special Thanks to Haruna Signed-off-by: shennetsind <ind@henn.et>
2013-09-16HPM: Unit.c Interfaceshennetsind1-22/+22
Fully Interfaced Signed-off-by: shennetsind <ind@henn.et>
2013-09-16HPM: Mob.c Interfaceshennetsind1-53/+53
Fully Interfaced Signed-off-by: shennetsind <ind@henn.et>
2013-09-14Merge branch 'master' of https://github.com/HerculesWS/Herculesshennetsind1-18/+17
2013-09-14Hello World.shennetsind1-0/+1
nevermind, testing something. Signed-off-by: shennetsind <ind@henn.et>
2013-09-11Fixed announce script command support for bc_blue and bc_woeHaru1-18/+17
- Fixes an issue where it wasn't possible to use bc_blue or bc_woe at the same time as bc_map, bc_area or bc_self. (this partly works around bugreport:7693 - http://hercules.ws/board/tracker/issue-7693-character-with-name ) - Replaced bc_* related values from various places through the sources with constants. Signed-off-by: Haru <haru@dotalux.com>
2013-09-06Fixing script constants with 'shennetsind1-1/+1
made possible thanks to Haruna Signed-off-by: shennetsind <ind@henn.et>
2013-08-28Fixed an error with the '+=' operator on string variablesHaru1-1/+2
When attempting to concatenate and assign to a previously empty string with +=, it'd throw a memory manager error. Follow-up to 22d2718. Signed-off-by: Haru <haru@dotalux.com>
2013-08-27Silenced a MSVC warning about int64->int32 conversionHaru1-1/+1
Follow-up to 8351881. Thanks to Takkun for the report Signed-off-by: Haru <haru@dotalux.com>
2013-08-26Added support for non-fatal error messages from the script parserHaru1-15/+46
- Changed overflow errors to be non-fatal. The value will now be capped to INT_MAX or INT_MIN. - Follow-up to 8351881 Signed-off-by: Haru <haru@dotalux.com>
2013-08-26Added an integer overflow check on literal values in the script parserHaru1-2/+9
- When attempting to use a value greater than INT_MAX or smaller than INT_MIN (about +/- 2 billions), an error message will be shown and script execution will be aborted. - Corrected some scripts that were attempting to use such values. - Fixed some possible issues when using literal negative values in scripts. Thanks to Ind for his help on this issue (figuring it out and fixing it) Signed-off-by: Haru <haru@dotalux.com>
2013-08-26Fixed Bug#7584malufett1-1/+1
-Where HW_SOULDRAIN should work only in single target. Fixed Bug#7670 -Where PA_GOSPEL is not working properly. Fixed Bug#7668 -Bonus 'bLongAtkRate' is not working properly. Fixed Bug#7512 -Bonus 'bCritAtkRate' is not working properly. Fixed Bug#7515 -Fixed MO_EXTREMITYFIST animation. -Fixed RE armor/weapon storage tab positioning. -Fixed HW_MAGICPOWER cast time. -Fixed '/item' '/monster' aegis command where it not working properly in some item names or monsters. -Added NC_DISJOINT cast time hidden modifier. -Updated RE ATK for post damage modifier. Signed-off-by: malufett <malufett.eat.my.binaries@gmail.com>
2013-08-14Fixed Bug #7646shennetsind1-4/+4
Fixed changing map zones/flag of a instance map crashing, also added IOT_ (Instance Owner Type) constants to db/const.txt Special Thanks to purityz for all the help and test scenarios. http://hercules.ws/board/tracker/issue-7646-bg-mapflag-instance-reloadscript-mapserver-crash/ Signed-off-by: shennetsind <ind@henn.et>
2013-08-07Fixed Bug #7633shennetsind1-2/+20
unitskillusepos/unitskilluseid script commands werent functioning because the npc's status weren't properly measured. Special Thanks to purityz http://hercules.ws/board/tracker/issue-7633-unitskillusepos-unitskilluseid/ Signed-off-by: shennetsind <ind@henn.et>
2013-07-31New 'close2' warningshennetsind1-1/+7
When attempting to use this command without a prior dialog window it now will throw a warning and skip halting the script. Special Thanks to j-tkay, Gepard. Signed-off-by: shennetsind <ind@henn.et>
2013-07-31Merge pull request #71 from HerculesWS/permission-cache-fixPiotr Hałaczkiewicz1-16/+14
Permission cache overhaul * Reworked group permission caching in session data (follow-up to cd45c30ab2dcc44bfbfac283d15bb09b3d4644bc) * Removed duplicated information from session data in favor of direct pointer to group settings. * Added getters for all group data required to process permissions and related stuff. * Added new functions to PC interface and updated calls everywhere. * Extracted function to set new group for a player (used at login, group config reload, manual adjustment of group). * Moved command permission config parsing to atcommand module. * Improved dummy map session handling. * Since it's required for all map sessions to have a valid group, dummy sessions are now created by a designated function. * Updated related code that uses dummy sessions (console `gm use` and script `atcommand`, `useatcmd`). * Various minor improvements and cleanups. * Eliminated some global variables related to loading atcommand permissions for group by passing them directly to function. * Moved definition of global array holding PC permission names from header file to source file. * Streamlined destuction of atcommands database to use DBApply helper function instead of DBIterator. * Replaced hardcoded position of console dummy session with defines from mapindex.h (thx Haruna for pointing it out). * Removed fixed length restriction on group names.
2013-07-29BG Queue Fixesshennetsind1-41/+48
Cleared 3 out of 5, #69 Support for the cancel button, for pre-game position to return afterwards and fix to the queue position problem after first game. Signed-off-by: shennetsind <ind@henn.et>
2013-07-29Permission cache overhaulPiotr Hałaczkiewicz1-16/+14
* Reworked group permission caching in session data (follow-up to cd45c30ab2dcc44bfbfac283d15bb09b3d4644bc) * Removed duplicated information from session data in favor of direct pointer to group settings. * Added getters for all group data required to process permissions and related stuff. * Added new functions to PC interface and updated calls everywhere. * Extracted function to set new group for a player (used at login, group config reload, manual adjustment of group). * Moved command permission config parsing to atcommand module. * Improved dummy map session handling. * Since it's required for all map sessions to have a valid group, dummy sessions are now created by a designated function. * Updated related code that uses dummy sessions (console `gm use` and script `atcommand`, `useatcmd`). * Various minor improvements and cleanups. * Eliminated some global variables related to loading atcommand permissions for group by passing them directly to function. * Moved definition of global array holding PC permission names from header file to source file. * Streamlined destuction of atcommands database to use DBApply helper function instead of DBIterator. * Replaced hardcoded position of console dummy session with defines from mapindex.h (thx Haruna for pointing it out). * Removed fixed length restriction on group names.
2013-07-29Fixed Bug #7597 / Follow up b7171479a47490ff80bf04849f763158d6d96facshennetsind1-2/+2
http://hercules.ws/board/tracker/issue-7597-server-crash/ Signed-off-by: shennetsind <ind@henn.et>
2013-07-29Added mercenary interfaceSusu1-6/+6
2013-07-29Added intif interfaceSusu1-8/+8
2013-07-29Added chat interfaceSusu1-5/+5
2013-07-26Fixed Bug #7588shennetsind1-1/+1
param mismatching compiler warning http://hercules.ws/board/tracker/issue-7588-srcmapscript/ Signed-off-by: shennetsind <ind@henn.et>
2013-07-25Expanding script.c interfaceshennetsind1-276/+292
Hercules Renewal Phase One. Signed-off-by: shennetsind <ind@henn.et>
2013-07-21Fixed various unit* script commands to work with NPCs (issue #7548)Haru1-34/+25
http://hercules.ws/board/tracker/issue-7548-unitwalk-do-not-work/ Follow-up to 20bdc01. Thanks to Ind for his support and suggestions. Signed-off-by: Haru <haru@dotalux.com>
2013-07-21Fixed Bug #7547shennetsind1-0/+1
str_data[].val was uninitialised and thus using garbage memory on compilers that don't automatically initialize http://hercules.ws/board/tracker/issue-7547-notice-conflicting-itemscript-var/ Also updated guild aura sc_config options (special thanks to kyeme!) Signed-off-by: shennetsind <ind@henn.et>
2013-07-18Fixed Bug #7525shennetsind1-2/+27
Item name constants conflicting with script var names will now result in a map server warning/notice and in the background map server will prioritise the script variable over the item name constant. http://hercules.ws/board/tracker/issue-7525-set-variable-is-not-recognized-causing-freezing/ --- Also followup 586c0f7983f81e97ca70c57712e25d4d51453d6b sc_config.txt update Signed-off-by: shennetsind <ind@henn.et>
2013-07-17Added missing initialization of some functions in the homunculus interfaceHaru1-3/+2
- Fixes issue #7536 (thanks to jTynne for the report) http://hercules.ws/board/tracker/issue-7536-map-crash-july-15th/ - Minor corrections to the other interfaces as well (reordered initialization to follow the definitions, removed duplicate entry in the skill interface initialization, commented out some unused entries) Signed-off-by: Haru <haru@dotalux.com>
2013-07-14Removed the now unused optional 3rd parameter from removemapflagHaru1-5/+2
- The parameter was only used in combination with MF_RESTRICTED, now superseded by MF_ZONE - Follow-up b08910e8, 90f117f6 Signed-off-by: Haru <haru@dotalux.com>
2013-07-09Travis Report Fixesshennetsind1-4/+4
warn_unused_result shielding, dropped unused variables and fixed battle_calc_return_damage delay behavior (pointer was unchaged; resulting in the var afterwards always as 0) Special Thanks to Xgear. Signed-off-by: shennetsind <ind@henn.et>
2013-07-09Fixed missing map id boundary checkingshennetsind1-24/+62
Signed-off-by: shennetsind <ind@henn.et>
2013-07-08Fixed Bug #7485shennetsind1-13/+13
Special Thanks to Igniz http://hercules.ws/board/tracker/issue-7485-crash-on-reloadscript/ Signed-off-by: shennetsind <ind@henn.et>
2013-07-05HCache | Item Packages Updateshennetsind1-2/+4
http://hercules.ws/board/topic/1389-hcache-item-packages-update/ Signed-off-by: shennetsind <ind@henn.et>
2013-07-04Implemented sitting set of script commands: sit(), stand(), issit() as per ↵Matheus Macabu1-0/+59
suggested in topic #1204. See documentation for more information on these commands. Also fixed leftover from db_use_sql split. Signed-off-by: Matheus Macabu <mkbu95@gmail.com>
2013-07-04- Added interface iStatus (needed to renamed it because A LOT of variables ↵Susu1-32/+32
are already called 'status')
2013-07-01Fixed Bug #7216shennetsind1-0/+2
Special Thanks to Shikazu, wouldn't have been able to identify this issue without his help! http://hercules.ws/board/index.php?app=tracker&showissue=7216 Signed-off-by: shennetsind <ind@henn.et>
2013-06-30Fixed script timer problemshennetsind1-20/+40
Special Thanks to Igniz for bringing it to my attention, ALSO: over 10% script parsing speed boost!<3. Signed-off-by: shennetsind <ind@henn.et>
2013-06-28BG Queue Testingshennetsind1-8/+101
http://hercules.ws/board/topic/1302-bg-queue-debug/ Signed-off-by: shennetsind <ind@henn.et>
2013-06-28Fixed Bug #7448shennetsind1-7/+13
Queue Iterators now keep a copy of the queue they'll iterate, so the iterator won't break items are removed or added during iteration. Special Thanks to Wend~! http://hercules.ws/board/tracker/issue-7448-queue-memory-leak/ Signed-off-by: shennetsind <ind@henn.et>
2013-06-27Fixed Bug #7439shennetsind1-3/+4
Special Thanks to Wend. http://hercules.ws/board/tracker/issue-7439-queue-system-error/ Signed-off-by: shennetsind <ind@henn.et>
2013-06-27Merge branch 'master' of https://github.com/HerculesWS/Herculesshennetsind1-2/+6