Taek-Won Mission for Star Gladiator Class

Eternity

New member
Messages
123
Points
0
Hi, i was digging at the source and i coudn't find the exact or i missing it?
I was trying to make the Taek Won Mission Skill works also with Star Gladiator Classes.

Can someone could help me out?

@Naruto
Thank you!

 
case TK_MISSION:
if ((sd->job & MAPID_UPPERMASK) != MAPID_TAEKWON) {
// Cannot be used by Non-Taekwon classes
clif->skill_fail(sd, skill_id, USESKILL_FAIL_LEVEL, 0, 0);
return 0;
}
break;


to

case TK_MISSION:
if ((sd->job & MAPID_UPPERMASK) != MAPID_TAEKWON || MAPID_STAR_GLADIATOR) {
// Cannot be used by Non-Taekwon classes
clif->skill_fail(sd, skill_id, USESKILL_FAIL_LEVEL, 0, 0);
return 0;
}
break;


something like that i dont use it too often 

but != means if not taekwon

so make it if not taekwon OR sg

 
case TK_MISSION:
if ((sd->job & MAPID_UPPERMASK) != MAPID_TAEKWON) {
// Cannot be used by Non-Taekwon classes
clif->skill_fail(sd, skill_id, USESKILL_FAIL_LEVEL, 0, 0);
return 0;
}
break;

case TK_MISSION:
if ((sd->job & MAPID_UPPERMASK) != MAPID_TAEKWON) {
// Cannot be used by Non-Taekwon classes
clif->skill_fail(sd, skill_id, USESKILL_FAIL_LEVEL, 0, 0);
return 0;
}
break;


to

case TK_MISSION:
if ((sd->job & MAPID_UPPERMASK) != MAPID_TAEKWON || MAPID_STAR_GLADIATOR) {
// Cannot be used by Non-Taekwon classes
clif->skill_fail(sd, skill_id, USESKILL_FAIL_LEVEL, 0, 0);
return 0;
}
break;

case TK_MISSION:
if ((sd->job & MAPID_UPPERMASK) != MAPID_TAEKWON || MAPID_STAR_GLADIATOR) {
// Cannot be used by Non-Taekwon classes
clif->skill_fail(sd, skill_id, USESKILL_FAIL_LEVEL, 0, 0);
return 0;
}
break;


something like that i dont use it too often 

but != means if not taekwon

so make it if not taekwon OR sg
I did try but still "skill has failed"...

 
this line of code always will trigger skill error

if ((sd->job & MAPID_UPPERMASK) != MAPID_TAEKWON || MAPID_STAR_GLADIATOR) {


probably change it to this?

Code:
if ((sd->job & MAPID_UPPERMASK) != MAPID_TAEKWON && (sd->job & MAPID_UPPERMASK) != MAPID_STAR_GLADIATOR) {
 
this line of code always will trigger skill error

if ((sd->job & MAPID_UPPERMASK) != MAPID_TAEKWON || MAPID_STAR_GLADIATOR) {

if ((sd->job & MAPID_UPPERMASK) != MAPID_TAEKWON || MAPID_STAR_GLADIATOR) {


probably change it to this?

if ((sd->job & MAPID_UPPERMASK) != MAPID_TAEKWON && (sd->job & MAPID_UPPERMASK) != MAPID_STAR_GLADIATOR) {

if ((sd->job & MAPID_UPPERMASK) != MAPID_TAEKWON && (sd->job & MAPID_UPPERMASK) != MAPID_STAR_GLADIATOR) {

Thank you for the help @4144 However there's an little issue everytime i completed my TKD Mission it won't give any points and proceed to another quest.

 
possibly the same thing here

pc.c

Code:
	if ((sd->job & MAPID_BASEMASK) == MAPID_TAEKWON) {
		// Better check for class rather than skill to prevent "skill resets" from unsetting this
		sd->mission_mobid = pc_readglobalreg(sd,script->add_variable("TK_MISSION_ID"));
		sd->mission_count = pc_readglobalreg(sd,script->add_variable("TK_MISSION_COUNT"));
	}
 
possibly the same thing here

pc.c

if ((sd->job & MAPID_BASEMASK) == MAPID_TAEKWON) { // Better check for class rather than skill to prevent "skill resets" from unsetting this sd->mission_mobid = pc_readglobalreg(sd,script->add_variable("TK_MISSION_ID")); sd->mission_count = pc_readglobalreg(sd,script->add_variable("TK_MISSION_COUNT")); }

if ((sd->job & MAPID_BASEMASK) == MAPID_TAEKWON) {
// Better check for class rather than skill to prevent "skill resets" from unsetting this
sd->mission_mobid = pc_readglobalreg(sd,script->add_variable("TK_MISSION_ID"));
sd->mission_count = pc_readglobalreg(sd,script->add_variable("TK_MISSION_COUNT"));
}

I added that still the same i think there something more need to modified as well?

I realized that it's a lot of modification needs to be done. especially in src/char/ side

 
Last edited by a moderator:
Hey guys, I made some modifications and tested.
Now is working, you just need apply this '.diff' file: View attachment star_gladiator_use_tk_mission.diff

Ranking still working to Taekwon, Star Gladiator only get bonus hp/sp and skills if get max level of base and job.

Star Gladiator don't receive the skill 'Solar, Lunar and Stellar Shadow'(SG_DEVIL).

If have any bug, report to me to try fix.

Good luck. :)

 
Last edited by a moderator:
Back
Top