Jump to content
  • 0

Is this possible regarding Howling of Mandragora?


Question

Posted (edited)

I know that rathena doesn't have the Genetic Skills like this in their SVN..

And 3ceam is already dead, so I just want to ask here if anyone knows.. ;)

How to make Howling of Mandragora affect the casting time even though Renewal's Fixed casting time is not enabled?

Is this possible?.. /omg

Here's the source of Howling of Mandragora..

case GN_MANDRAGORA:
 if( flag&1 )
 {
  if ( clif_skill_nodamage(bl, src, skillid, skilllv,
sc_start(bl, type, 35 + 10 * skilllv, skilllv, skill_get_time(skillid, skilllv))) )
status_zap(bl, 0, status_get_max_sp(bl) / 100 * 25 + 5 * skilllv);
 }
 else
  map_foreachinrange(skill_area_sub, bl, skill_get_splash(skillid, skilllv), BL_CHAR,
src, skillid, skilllv, tick, flag|BCT_ENEMY|1, skill_castend_nodamage_id);
 break;

Thanks in advance!.. :)

Edited by wakoko321

9 answers to this question

Recommended Posts

Posted

yes its possible and FYI 3ceam is still alive and Rytech recently updated 3ceam SVN and i think he is merging 3ceam with rathena. if your using 3ceam try updating to find out. :)

Posted (edited)

Ohh really?.. LOL.. Didn't know that.. hahaha.. Thanks for telling me.. :)

The updates are about mechanic skills.. ;)

@Topic

Oh forgot to add this source related to Howling of Mandragora...

/*iRO wiki said all affected by Howling of Mandragora will have increased fixed cast time for 2
seconds and those skills that are instant cast will have a cast time.
NOTE: Value of fixed time will be update soon if there is other info. [Jobbie]*/
if( sc && sc->data[sC_MANDRAGORA] && ( skill_id >= SM_BASH && skill_id <= RETURN_TO_ELDICASTES ) )
 fixed_time += 2000; //FIXME: Where on earth should we apply this? Before all modifiers? [inkfish]

@Myrmiddon

I don't know how to do it.. /omg

Edited by wakoko321
Posted (edited)

src/map/skill.c

in

int skill_castfix(struct block_list *bl, int skill_id, int skill_lv)

+	   if( sc && sc->data[sC_MANDRAGORA])
+		    final_time=final_time+3000;
	// config cast time multiplier
	if( battle_config.cast_rate != 100 )
			final_time = final_time * battle_config.cast_rate / 100;

	// return final cast time
	return (final_time > 0) ? final_time : 0;

Edited by QQfoolsorellina
Posted (edited)

Ohh I will try it.. :) Thanks QQfoolsorellina.. ;)

Hmm.. Its working if the cast rate of the character is not yet 100%.. /lv

But if the char obtained for example 180 dex, it's not affecting anymore../omg

Is it possible to affect also the no cast thing?.. :)

Edited by wakoko321
Posted (edited)

in same fuction skill_castfix

find

		if( scale > 0 )	// not instant cast
			variable_time = variable_time * (int)scale / rate;
		else return 0;	// instant cast

change to

		if( scale > 0 )	// not instant cast
			variable_time = variable_time * (int)scale / rate;
		else return ( sc && sc->data[sC_MANDRAGORA] ? 2000 : 0 );	// instant cast

Edited by QQfoolsorellina

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Answer this question...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...