Jump to content

  •  

Mikado

Member Since 13 Jul 2013
Offline Last Active Aug 19 2014 12:38 AM
-----

#15355 How to remove Cooldown Asura when Body relo is used?

Posted by Mikado on 22 September 2013 - 04:06 PM

In src/map/skill.c, find:

case MO_BODYRELOCATION:			if (unit->movepos(src, x, y, 1, 1)) {	#if PACKETVER >= 20111005				clif->snap(src, src->x, src->y);	#else				clif->skill_poseffect(src,skill_id,skill_lv,src->x,src->y,tick);	#endif				if (sd)					skill->blockpc_start (sd, MO_EXTREMITYFIST, 2000, false);			}			break;

 

Remove:

				if (sd)					skill->blockpc_start (sd, MO_EXTREMITYFIST, 2000, false);

 

And recompile.




#13661 N > help on status icon

Posted by Mikado on 13 August 2013 - 09:04 PM

Yes it is. Remember:

 

Status.h:

Find and change this

SI_MAX,};

To this

		// Custom property icons	SI_PROPERTY_FIRE = 0,	SI_PROPERTY_WATER = 0,	SI_PROPERTY_EARTH = 0,	SI_PROPERTY_WIND = 0,	SI_MAX,};

Change each one to suit your desired icon ID.

 

status.c

Find and change this

		case SC_ARMORPROPERTY:		case SC_ARMOR_RESIST:			break;

to this

		case SC_ARMORPROPERTY:			// val1 = water | val2 = earth | val3 = fire | val4 = wind			if( sd ) {				if (val1 > 0)					clif->status_change(bl,SI_PROPERTY_WATER,1,tick,0,0,0);				else					clif->sc_end(&sd->bl, sd->bl.id, SELF, SI_PROPERTY_WATER);				if (val2 > 0)					clif->status_change(bl,SI_PROPERTY_EARTH,1,tick,0,0,0);				else					clif->sc_end(&sd->bl, sd->bl.id, SELF, SI_PROPERTY_EARTH);				if (val3 > 0)					clif->status_change(bl,SI_PROPERTY_FIRE,1,tick,0,0,0);				else					clif->sc_end(&sd->bl, sd->bl.id, SELF, SI_PROPERTY_FIRE);				if (val4 > 0)					clif->status_change(bl,SI_PROPERTY_WIND,1,tick,0,0,0);				else					clif->sc_end(&sd->bl, sd->bl.id, SELF, SI_PROPERTY_WIND);			}		case SC_ARMOR_RESIST:			break;

 

Find and change this (I've got to copy this entire block so you don't get lost, remember this is when status icons for SC_ITEMSCRIPT actually ENDS)

case SC_ITEMSCRIPT:		if( sd ) {			switch( sce->val1 ) {				//case 4121://Phree				//case 4047://Ghostring			case 4302://Gunka				clif->sc_end(&sd->bl, sd->bl.id, SELF, SI_MVPCARD_TAOGUNKA);

To this:

case SC_ARMORPROPERTY:		if( sd ) {			if( sce->val1 )				clif->sc_end(&sd->bl, sd->bl.id, SELF, SI_PROPERTY_WATER);			if( sce->val2 )				clif->sc_end(&sd->bl, sd->bl.id, SELF, SI_PROPERTY_EARTH);			if( sce->val3 )				clif->sc_end(&sd->bl, sd->bl.id, SELF, SI_PROPERTY_FIRE);			if( sce->val4 )				clif->sc_end(&sd->bl, sd->bl.id, SELF, SI_PROPERTY_WIND);		}	case SC_ITEMSCRIPT:		if( sd ) {			switch( sce->val1 ) {				//case 4121://Phree				//case 4047://Ghostring			case 4302://Gunka				clif->sc_end(&sd->bl, sd->bl.id, SELF, SI_MVPCARD_TAOGUNKA);

 

And I think that will do the trick.




#13523 About the new MOTD.txt

Posted by Mikado on 11 August 2013 - 11:06 PM

If you use the message command two times, it will display two different lines.

message strcharinfo(0),"First line.";message strcharinfo(0),"Second Line.";

I don't know if it's the finest way of doing it, but works.