summaryrefslogtreecommitdiff
path: root/src/char/mapif.c
AgeCommit message (Collapse)AuthorFilesLines
2019-04-15Improve get items from rodexAndrei Karas1-0/+13
2019-04-15Improve get zeny from rodexAndrei Karas1-0/+12
2019-04-14Add account id and char id into inter server rodex update packetAndrei Karas1-3/+6
2019-02-11Fix buffer size issue in inter server packetsAndrei Karas1-3/+3
Fixes #2369
2019-02-11Extend class and level field in packet 0x3080Andrei Karas1-7/+7
2019-02-11Extend class field in packet 0x3880Andrei Karas1-5/+5
2019-02-11Extend class field in packet 0x3835Andrei Karas1-3/+3
2019-02-11Extend class field in packet 0x3898Andrei Karas1-4/+4
2019-02-11Change type for class variables from short to intAndrei Karas1-3/+3
2018-07-24Implementation of the official Achievement System.smokexyz1-0/+120
Source: http://ro.gnjoy.com/news/update/View.asp?seq=163&curpage=1 Script Commands - ``` achievement_progress(<ach_id>,<obj_idx>,<progress>,<incremental?>{,<char_id>}); ``` Includes an achievement_db.conf generator that reads from the item_db, mob_db (server side) and achievement_list.lub files to determine valid achievement entries based on item/monster availability. Achievements containing unsupported entries are commented out. This feature, although renewal-only in official servers, is capable of being used in pre-renewal mode on Hercules. Does not include the title system yet. A big thanks to - @MishimaHaruna for constantly reviewing. @4144 for all the support. @Asheraf for a lot of official information. Co-authored-by: "Dastgir" <dastgirp@gmail.com>
2018-07-19Replace item id shorts to int in map server.Andrei Karas1-2/+11
2018-07-06Fix a regression in inter_guild_add_memberHaru1-5/+1
Fixes #2122 Regression introduced in 735e2e8340c9522ee5a9afdcad29d191da29c8d4, #2108 Signed-off-by: Haru <haru@dotalux.com>
2018-07-01Change functions to static where possible (Part 3 - char)Haru1-165/+166
This fixes issues with plugins defining symbols with the same names Signed-off-by: Haru <haru@dotalux.com>
2018-06-30Move mapif functions from inter.c to mapif.cHaru1-15/+299
Signed-off-by: Haru <haru@dotalux.com>
2018-06-30Move some non-mapif functionality from the mapif interface to the inter/char ↵Haru1-3/+0
interfaces Signed-off-by: Haru <haru@dotalux.com>
2018-06-30Move mapif functions from int_storage.c to mapif.cHaru1-10/+208
Signed-off-by: Haru <haru@dotalux.com>
2018-06-30Move some non-mapif functionality from the mapif interface to the ↵Haru1-2/+0
inter_storage interface Signed-off-by: Haru <haru@dotalux.com>
2018-06-30Move mapif functions from int_rodex.c to mapif.c and fix some return typesHaru1-9/+172
Signed-off-by: Haru <haru@dotalux.com>
2018-06-30Move mapif functions from int_quest.c to mapif.cHaru1-4/+75
Signed-off-by: Haru <haru@dotalux.com>
2018-06-30Move some non-mapif functionality from the mapif interface to the ↵Haru1-8/+0
inter_quest interface Signed-off-by: Haru <haru@dotalux.com>
2018-06-30Move mapif functions from int_pet.c to mapif.cHaru1-11/+140
Signed-off-by: Haru <haru@dotalux.com>
2018-06-30Move some non-mapif functionality from the mapif interface to the inter_pet ↵Haru1-5/+0
interface Signed-off-by: Haru <haru@dotalux.com>
2018-06-30Move mapif functions from int_party.c to mapif.cHaru1-18/+228
Signed-off-by: Haru <haru@dotalux.com>
2018-06-30Move mapif functions from int_mercenary.c to mapif.cHaru1-7/+60
Signed-off-by: Haru <haru@dotalux.com>
2018-06-30Move some non-mapif functionality from the mapif interface to the ↵Haru1-8/+0
inter_mercenary interface Signed-off-by: Haru <haru@dotalux.com>
2018-06-30Move mapif functions from int_mail.c to mapif.cHaru1-12/+155
Signed-off-by: Haru <haru@dotalux.com>
2018-06-30Move some non-mapif functionality from the mapif interface to the inter_mail ↵Haru1-2/+0
interface Signed-off-by: Haru <haru@dotalux.com>
2018-06-30Move mapif functions from int_homunculus.c to mapif.cHaru1-10/+93
Signed-off-by: Haru <haru@dotalux.com>
2018-06-30Move some non-mapif functionality from the mapif interface to the ↵Haru1-10/+0
inter_homunculus interface Signed-off-by: Haru <haru@dotalux.com>
2018-06-30Move mapif functions from int_guild.c to mapif.cHaru1-34/+404
Signed-off-by: Haru <haru@dotalux.com>
2018-06-30Move some non-mapif functionality from the mapif interface to the ↵Haru1-2/+0
inter_guild interface Signed-off-by: Haru <haru@dotalux.com>
2018-06-30Move mapif functions from int_elemental.c to mapif.cHaru1-7/+60
Signed-off-by: Haru <haru@dotalux.com>
2018-06-30Move some non-mapif functions from the mapif interface to the ↵Haru1-8/+0
inter_elemental interface Signed-off-by: Haru <haru@dotalux.com>
2018-06-30Move mapif functions from int_clan.c to mapif.cHaru1-2/+26
Signed-off-by: Haru <haru@dotalux.com>
2018-06-30Move mapif functions from int_auction.c to mapif.cHaru1-11/+227
Signed-off-by: Haru <haru@dotalux.com>
2018-06-30Move mapif functions from char.c to mapif.cHaru1-11/+152
Signed-off-by: Haru <haru@dotalux.com>
2018-05-312012-2018 !Maytichai Saowa1-1/+1
2018-03-08Fixed a nullpo error when user tried to do an action in an unloaded mail in ↵Guilherme G. Menaldo1-1/+1
rodex
2018-01-25Implementation of Official Clan SystemMurilo Pereti Tavares1-0/+6
All official features work including the autokick for inactive members And the system is completely customizable.
2017-08-08Fix hpm issues after rodex commit.Andrei Karas1-1/+1
2017-07-30Implementation of RoDEXKirieZ1-0/+21
2017-05-22Add storage_data reception, parsing and sending to/from the map-server.Smokexyz1-0/+8
Remove loading and saving of storage_data through char.c Re-declaration of structure storage_data as a vector. Re-code of portions in the map-server using storage_data. A new approach is taken by saving the loaded storage data from sql into memory for the duration of the session, thereby removing the need of querying the database to re-load all items everytime a storage save routine is issued from the map-server. Saving of storage items is done through a new function that significantly reduces the number of queries compared to char_memitemdata_tosql(), and therefore run-time speed. This method potentially reduces the number of update and delete queries from MAX_STORAGE (which could be >= 600) times to literally 1. Storage items are stored in a dynamically allocated array and handled accordingly. struct mmo_charstatus size reduces by 34,800 bytes. Update pc_checkitem() with masks for item checks. `sd->state.itemcheck` has been changed to `sd->itemcheck` of type `enum pc_checkitem_types` `battle/items.conf` has been updated to reflect configuration changes. Further updates to assert a successful reception of storage data in related functions.
2016-12-03Clarify some Job Class vs MapID confusion (1/2)Haru1-1/+1
This commit ensures that `sd->status.class` and related variables only contain Job Classes (i.e. the client-compatible values, where High Novice 4001) and are never checked against the bitmask-based MapID values. As a rule of thumb, from now on, when a variable is named `class`, it is intended to contain a Job Class ID and not a MapID. The type of such variable shall be a signed `int16` or `int`. To ensure that related third party code is also verified when this commit is merged, the variable `struct mmo_charstatus::class_ (i.e. `sd->status.class_`) is renamed to `class`. Some issues in related lines are also fixed, including: - A wrong check in the char server would prevent the correct detection of babies in code related to the family exp sharing. - Baby Arch Bishops would not be affected by Eucharistica. - A wrong check would cause the `questinfo()` script command not to display its information for most classes (except 1-1 classes). - Map IDs and Job Classes were mixed up in `itemdb_jobid2mapid()` and `itemdb_jobmask2mapid()` for 1-1 classes (causing currently no harm, since they just happen to coincide). - The Baby Sura class would not cause parties to be marked as containing a monk type character (for SLS Team Up purposes). - Baby Geneticists would bypass the cart check when trying to equip ammunitions. - Baby Mechanics would bypass the Mado Gear check when trying to equip ammunitions. - Transcendent Shadow Chasers would lose the Stalkers' ability to clone transcendent skills. Signed-off-by: Haru <haru@dotalux.com>
2016-10-28Fixed copyright year for 2016Lemongrass31101-1/+1
2016-02-24Added const qualifier to several variable/argument pointersHaru1-25/+25
- This is necessary for compatibility with a const RFIFOP. Signed-off-by: Haru <haru@dotalux.com>
2016-02-24Updated inter_pet->tosql() and mapif->save_pet() to work with const dataHaru1-1/+1
Signed-off-by: Haru <haru@dotalux.com>
2016-02-24Split mapif->mercenary_save() into two functions (save and create)Haru1-1/+3
Signed-off-by: Haru <haru@dotalux.com>
2016-02-24Split mapif->homunculus_save() into two functions (save and create)Haru1-1/+3
Signed-off-by: Haru <haru@dotalux.com>
2016-02-24Split mapif->elemental_save() into two functions (save and create)Haru1-1/+3
Signed-off-by: Haru <haru@dotalux.com>
2015-12-15Added GPL-compliant header to all sources and build scriptsHaru1-4/+20
Signed-off-by: Haru <haru@dotalux.com>