- Added monster_ai&256. When set, a monster will pick a random starting position to begin checking versus it's skills, otherwise, it will always begin checking from the beginning.

- Added NPC_CHANGEUNDEAD to the skill_cast_db, fixes it apparently doing "nothing".


git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@8778 54d463be-8e91-2dee-dedb-b68131a5f0ec
This commit is contained in:
skotlex 2006-09-16 23:41:07 +00:00
parent e31d762f33
commit fd7c6a36a2
5 changed files with 13 additions and 2 deletions

View File

@ -4,6 +4,9 @@ AS OF SVN REV. 5091, WE ARE NOW USING TRUNK. ALL UNTESTED BUGFIXES/FEATURES GO
IF YOU HAVE A WORKING AND TESTED BUGFIX PUT IT INTO STABLE AS WELL AS TRUNK.
2006/09/16
* Added monster_ai&256. When set, a monster will pick a random starting
position to begin checking versus it's skills, otherwise, it will always
begin checking from the beginning. [Skotlex]
* Fixed the status change duration reduction equation was was totally
wrong, thanks to k3dt [Skotlex]
2006/09/15

View File

@ -57,6 +57,8 @@ monster_max_aspd: 199
// players and will go after the closest target instead of always picking
// the homunculus
//
//256: When set, a mob will pick a random skill from it's list and start from that instead of checking skills
// in orders (when unset, if a mob has too many skills, the ones near the end will rarely get selected)
monster_ai: 0
// Should mobs be able to be warped (add as needed)?

View File

@ -19,6 +19,10 @@
-----
=========================
09/16
* Added NPC_CHANGEUNDEAD to the skill_cast_db, fixes it apparently doing
"nothing". [Skotlex]
09/15
* Added the remaining drop changes which I missed before [Playtester]
09/14

View File

@ -536,6 +536,8 @@
339,2000,1500,900,900,10000:11000:12000:13000:14000:15000:16000:17000:18000:19000
//-- NPC_STOP
342,0,0,0,10000,0
//-- NPC_CHANGEUNDEAD
348,0,0,0,1800000,0
//-- NPC_POWERUP
349,0,0,0,60000:120000:180000:240000:300000,0
//-- NPC_AGIUP

View File

@ -2619,8 +2619,8 @@ int mobskill_use(struct mob_data *md, unsigned int tick, int event)
if (event < 0 && DIFF_TICK(md->ud.canact_tick, tick) > 0)
return 0; //Skill act delay only affects non-event skills.
//Pick a random starting position and loop from that.
i = rand()%md->db->maxskill;
//Pick a starting position and loop from that.
i = battle_config.mob_ai&256?rand()%md->db->maxskill:0;
for (n = 0; n < md->db->maxskill; i++, n++) {
int c2, flag = 0;