- Added a check to prevent Deluge/Volcano/Violent Gale from being placed on top of each other. Reverted the previous 'fix' where atk was being increased based on armor element rather than element of attack.
- Added flag 0x002 (no reiteration) to Deluge/Volcano/Violent Gale (skill_unit_db) - Removed the noreturn mapflag check from script command warp. git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@7858 54d463be-8e91-2dee-dedb-b68131a5f0ec
This commit is contained in:
parent
d42fb96de3
commit
e66ac3dfce
@ -4,6 +4,10 @@ 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.
|
IF YOU HAVE A WORKING AND TESTED BUGFIX PUT IT INTO STABLE AS WELL AS TRUNK.
|
||||||
|
|
||||||
2006/07/24
|
2006/07/24
|
||||||
|
* Added a check to prevent Deluge/Volcano/Violent Gale from being placed on
|
||||||
|
top of each other. Reverted the previous 'fix' where atk was being
|
||||||
|
increased based on armor element rather than element of attack. [Skotlex]
|
||||||
|
* Removed the noreturn mapflag check from script command warp. [Skotlex]
|
||||||
* Homuculus cleanup [DracoRPG]
|
* Homuculus cleanup [DracoRPG]
|
||||||
- Replaced nullpo's in parse functions by silent checks
|
- Replaced nullpo's in parse functions by silent checks
|
||||||
- Removed server-side effect for menu option 0 (view status window...
|
- Removed server-side effect for menu option 0 (view status window...
|
||||||
|
@ -25,6 +25,8 @@
|
|||||||
|
|
||||||
=========================
|
=========================
|
||||||
07/24
|
07/24
|
||||||
|
* Added flag 0x002 (no reiteration) to Deluge/Volcano/Violent Gale
|
||||||
|
(skill_unit_db) [Skotlex]
|
||||||
* Edited Rachel mobs a little and added Beret to Turtle General drops [Playtester]
|
* Edited Rachel mobs a little and added Beret to Turtle General drops [Playtester]
|
||||||
* Changed Land Protector's range back to 3. [Skotlex]
|
* Changed Land Protector's range back to 3. [Skotlex]
|
||||||
07/23
|
07/23
|
||||||
|
@ -52,9 +52,9 @@
|
|||||||
220,0xb0, , 0, 0, -1,all, 0x002 //RG_GRAFFITI
|
220,0xb0, , 0, 0, -1,all, 0x002 //RG_GRAFFITI
|
||||||
229,0xb1, , 0, 1,1000,enemy, 0x006 //AM_DEMONSTRATION
|
229,0xb1, , 0, 1,1000,enemy, 0x006 //AM_DEMONSTRATION
|
||||||
254,0x86, , -1, 0, 400,enemy, 0x000 //CR_GRANDCROSS
|
254,0x86, , -1, 0, 400,enemy, 0x000 //CR_GRANDCROSS
|
||||||
285,0x9a, , 3, 0, -1,all, 0x000 //SA_VOLCANO
|
285,0x9a, , 3, 0, -1,all, 0x002 //SA_VOLCANO
|
||||||
286,0x9b, , 3, 0, -1,all, 0x000 //SA_DELUGE
|
286,0x9b, , 3, 0, -1,all, 0x002 //SA_DELUGE
|
||||||
287,0x9c, , 3, 0, -1,all, 0x000 //SA_VIOLENTGALE
|
287,0x9c, , 3, 0, -1,all, 0x002 //SA_VIOLENTGALE
|
||||||
288,0x9d,,3:3:4:4:5,0, -1,all, 0x000 //SA_LANDPROTECTOR
|
288,0x9d,,3:3:4:4:5,0, -1,all, 0x000 //SA_LANDPROTECTOR
|
||||||
306,0x9e, , 4, 0,6000,all, 0x200 //BD_LULLABY
|
306,0x9e, , 4, 0,6000,all, 0x200 //BD_LULLABY
|
||||||
307,0x9f, , 4, 0, -1,enemy, 0x210 //BD_RICHMANKIM
|
307,0x9f, , 4, 0, -1,enemy, 0x210 //BD_RICHMANKIM
|
||||||
|
@ -198,11 +198,11 @@ int battle_attr_fix(struct block_list *src, struct block_list *target, int damag
|
|||||||
ratio = attr_fix_table[def_lv-1][atk_elem][def_type];
|
ratio = attr_fix_table[def_lv-1][atk_elem][def_type];
|
||||||
if (sc && sc->count)
|
if (sc && sc->count)
|
||||||
{
|
{
|
||||||
if(sc->data[SC_VOLCANO].timer!=-1 && status_get_element(src) == ELE_FIRE)
|
if(sc->data[SC_VOLCANO].timer!=-1 && atk_elem == ELE_FIRE)
|
||||||
ratio += enchant_eff[sc->data[SC_VOLCANO].val1-1];
|
ratio += enchant_eff[sc->data[SC_VOLCANO].val1-1];
|
||||||
if(sc->data[SC_VIOLENTGALE].timer!=-1 && status_get_element(src) == ELE_WIND)
|
if(sc->data[SC_VIOLENTGALE].timer!=-1 && atk_elem == ELE_WIND)
|
||||||
ratio += enchant_eff[sc->data[SC_VIOLENTGALE].val1-1];
|
ratio += enchant_eff[sc->data[SC_VIOLENTGALE].val1-1];
|
||||||
if(sc->data[SC_DELUGE].timer!=-1 && status_get_element(src) == ELE_WATER)
|
if(sc->data[SC_DELUGE].timer!=-1 && atk_elem == ELE_WATER)
|
||||||
ratio += enchant_eff[sc->data[SC_DELUGE].val1-1];
|
ratio += enchant_eff[sc->data[SC_DELUGE].val1-1];
|
||||||
}
|
}
|
||||||
if (tsc && tsc->count)
|
if (tsc && tsc->count)
|
||||||
|
@ -3054,15 +3054,9 @@ int buildin_warp(struct script_state *st)
|
|||||||
if(strcmp(str,"Random")==0)
|
if(strcmp(str,"Random")==0)
|
||||||
pc_randomwarp(sd,3);
|
pc_randomwarp(sd,3);
|
||||||
else if(strcmp(str,"SavePoint")==0){
|
else if(strcmp(str,"SavePoint")==0){
|
||||||
if(map[sd->bl.m].flag.noreturn) // ’±‹ÖŽ~
|
|
||||||
return 0;
|
|
||||||
|
|
||||||
pc_setpos(sd,sd->status.save_point.map,
|
pc_setpos(sd,sd->status.save_point.map,
|
||||||
sd->status.save_point.x,sd->status.save_point.y,3);
|
sd->status.save_point.x,sd->status.save_point.y,3);
|
||||||
}else if(strcmp(str,"Save")==0){
|
}else if(strcmp(str,"Save")==0){
|
||||||
if(map[sd->bl.m].flag.noreturn) // ’±‹ÖŽ~
|
|
||||||
return 0;
|
|
||||||
|
|
||||||
pc_setpos(sd,sd->status.save_point.map,
|
pc_setpos(sd,sd->status.save_point.map,
|
||||||
sd->status.save_point.x,sd->status.save_point.y,3);
|
sd->status.save_point.x,sd->status.save_point.y,3);
|
||||||
}else
|
}else
|
||||||
|
@ -2194,6 +2194,20 @@ static int skill_check_unit_range_sub (struct block_list *bl, va_list ap)
|
|||||||
if(g_skillid != MG_SAFETYWALL && g_skillid != AL_PNEUMA)
|
if(g_skillid != MG_SAFETYWALL && g_skillid != AL_PNEUMA)
|
||||||
return 0;
|
return 0;
|
||||||
break;
|
break;
|
||||||
|
//Cannot stack among themselves.
|
||||||
|
case SA_VOLCANO:
|
||||||
|
case SA_DELUGE:
|
||||||
|
case SA_VIOLENTGALE:
|
||||||
|
switch (g_skillid)
|
||||||
|
{
|
||||||
|
case SA_VOLCANO:
|
||||||
|
case SA_DELUGE:
|
||||||
|
case SA_VIOLENTGALE:
|
||||||
|
break;
|
||||||
|
default:
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
|
break;
|
||||||
case AL_WARP:
|
case AL_WARP:
|
||||||
case HT_SKIDTRAP:
|
case HT_SKIDTRAP:
|
||||||
case HT_LANDMINE:
|
case HT_LANDMINE:
|
||||||
@ -5831,7 +5845,7 @@ int skill_castend_id (int tid, unsigned int tick, int id, int data)
|
|||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
|
||||||
if(sd && !skill_check_condition(sd,ud->skillid, ud->skilllv,1)) /* 使用条件チェック */
|
if(sd && !skill_check_condition(sd,ud->skillid, ud->skilllv,1))
|
||||||
break;
|
break;
|
||||||
|
|
||||||
if(hd && !skill_check_condition_hom(hd,ud->skillid, ud->skilllv,1)) //[orn]
|
if(hd && !skill_check_condition_hom(hd,ud->skillid, ud->skilllv,1)) //[orn]
|
||||||
@ -7683,7 +7697,7 @@ static int skill_check_condition_char_sub (struct block_list *bl, va_list ap)
|
|||||||
if(pc_isdead(tsd))
|
if(pc_isdead(tsd))
|
||||||
return 0;
|
return 0;
|
||||||
|
|
||||||
if (tsd->sc.count && (tsd->sc.data[SC_SILENCE].timer != -1 || tsd->sc.data[SC_STUN].timer != -1))
|
if (tsd->sc.count && (tsd->sc.data[SC_SILENCE].timer != -1 || tsd->sc.opt1))
|
||||||
return 0;
|
return 0;
|
||||||
|
|
||||||
switch(skillid)
|
switch(skillid)
|
||||||
|
Loading…
x
Reference in New Issue
Block a user