Age | Commit message (Collapse) | Author | Files | Lines |
|
This removes a lot of duplicated code, especially related to people not using the arrays dirx and diry.
Assertions for whenever these arrays are used have been added as well, to ensure valid index range.
Some trailing white space has been removed as well.
|
|
Change NPC ID validation in npc_scriptcont()
|
|
|
|
* Added new message 1517 (Script could not be unloaded.)
* Applied code style to several functions I touched.
* Added some minor improments to the function where I applied code style.
|
|
(non-permanent monster spawns) [Issue #2530]
Mobs spawned by NPC will be removed on @reloadnpc, @unloadnpc, and @unloadnpcfile.
Additionally OnNPCUnload NPC label was added, to revert other changes made by NPC. For example set/removed mapflags or added mob drops.
|
|
|
|
|
|
|
|
npc_scriptcont() will now validate the NPC ID
- if SECURE_NPCTIMEOUT is _not_ defined or
- if SECURE_NPCTIMEOUT is defined and the charcters idle timer is still running.
|
|
Signed-off-by: Haru <haru@dotalux.com>
|
|
Signed-off-by: Haru <haru@dotalux.com>
|
|
tombstone
Signed-off-by: Haru <haru@dotalux.com>
|
|
Also add enum for result field in packet ZC_NPC_MARKET_PURCHASE_RESULT
|
|
Suppress ShowWarning for certain mapflags when @reloadscript
|
|
Mapflag nostorage and nogstorage
|
|
this will fix the issue where having multiple `questinfo()` blocks wont work properly
|
|
|
|
|
|
|
|
Also allow add duplicated item id to barter shops if price is different.
|
|
|
|
|
|
|
|
|
|
nostorage 1 -- blocks only @storage
nostorage 2 -- blocks only openstorage();
nostorage 3 -- blocks @storage and openstorage()
nogstorage 1 -- blocks only @gstorage
nogstorage 2 -- blocks only guildopenstorage();
nogstorage 3 -- blocks @gstorage and guildopenstorage()
|
|
|
|
always set the type to C_NAME when adding variables through script->add_str
|
|
add atcommand_setzone, and fix #2133
|
|
Signed-off-by: Haru <haru@dotalux.com>
|
|
|
|
|
|
|
|
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>
|
|
This fixes issues with plugins defining symbols with the same names
Signed-off-by: Haru <haru@dotalux.com>
|
|
|
|
Fix the name of monsters summoned through SA_SUMMONMONSTER
|
|
|
|
- Use `DEFAULT_MOB_NAME` instead of a literal "--en--"
- Use `DEFAULT_MOB_JNAME` instead of a literal "--ja--"
Signed-off-by: Haru <haru@dotalux.com>
|
|
All official features work including the autokick for inactive members
And the system is completely customizable.
|
|
Use the correct view data (INVISIBLE_CLASS) when initializing new NPCs.
The issue was introduced in #1893
Fixes #1916
Signed-off-by: Haru <haru@dotalux.com>
|
|
Fixes #1531 (and other similar issues)
Signed-off-by: Haru <haru@dotalux.com>
|
|
|
|
Allow npc to use player classes (for older than 20170726 npc visible as players).
View_data structure can be copied from predefined view_data lists created new if npc using player type.
|
|
also fix boss_monster flag for works as mvp and not like mini boss.
unhide boss flag if hp bar disabled.
|
|
- Enable server to disable autoloot settings for certain maps.
|
|
|
|
|
|
Fixes #1772
|
|
Allows the infusing of equipments with bonus item options.
This feature is constrained to clients of packet versions greater than or equal to `20150226`.
Item Options and their effects are defined server-side in `db/item_options.conf` and client side in `data/luafiles514/lua files/datainfo/addrandomoptionnametable.lub`
The ID of the option must tally with the correct index of the description provided in the client side lua file to avoid bugs.
IT_OPT_* keys and MAX_ITEM_OPTIONS macro are also exported from the source as constants.
An additional flag `disable_options` has been added to sql, and as `DisableOptions: true/false (boolean, defaults to false !!for equipments only!!)` to item_db.conf files.
Script commands documentation is also included.
SQL file updates are included.
Credits: [Smokexyz](https://github.com/Smokexyz)
Style and Script Fixes by [Asheraf](https://github.com/Asheraf)
Initial design Idea by [secretdataz](https://github.com/secretdataz)
|
|
`struct status_data::class_` was platform dependent since
c30bb75ec50624429bff7b4106db4be0fda366d6 in order to silence some
compile warnings (uint32 on 64 bit builds and uint16 on 32 bit builds).
It's now been changed to the correct type, int32, on all platforms.
Since the change has potential to silently break third party code, the
variable was renamed to `class`.
Signed-off-by: Haru <haru@dotalux.com>
|