reloging the char (function)

Tio Akima

New member
Messages
349
Points
0
Age
36
Discord
TioAkima#0636
Github
Tio Akima
Emulator
Hi guys, I realized that when reloging the char, the client reloads the skills, including the status_change_end function ...
Does anyone know which function is responsible for this?
(for reloading the skills tree when reloading the char)

note:
( I created a passive skill ( SC_ANGEL from INFINITE_DURATION )... And i turn this SC_ANGEL off when it is in Condown and I turn on SC_ANGEL_CD .... When the cooldown time is over (cowndown) I enable SC_ANGEL again in status_change_end ....

But if I unplug the char during SC_ANGEL_CD (cowndown), when i relog, automatically enable SC_ANGEL because some function reloads the skill tree including the status_change_end function.

I tried to check if the SC_ANGEL_CD is on (using if )... but there is a lack of sync, and SC_ is not recognized on or found .. it's like it's off. )

 
I still dont understand your issue, but i use a "parking" script for vehicles that gives you a debuff when you relog...

//OnPCLoginEvent:
//sc_start(SC_CAR, 1800000, 0, 10000);
//end;

Code:
		case MR_CAR:
			clif->skill_nodamage(src,bl,skill_id,skill_lv,
			                   sc_start(src,bl,type,100,skill_lv,INVALID_TIMER));
		if(tsc && tsc->data[SC_CAR]){
			clif->changelook(src, LOOK_BASE, sd->vd.class);
			clif->changelook(&sd->bl, LOOK_HEAD_BOTTOM, sd->status.look.head_bottom);
			clif->changelook(&sd->bl, LOOK_HEAD_TOP, sd->status.look.head_top);
			clif->changelook(&sd->bl, LOOK_HEAD_MID, sd->status.look.head_mid);
			clif->changelook(&sd->bl, LOOK_ROBE, sd->status.look.robe);
		}	
			break;
Code:
		case UNT_FLASHER:
				status_change_end(bl, SC_CAR, INVALID_TIMER);
				clif->changelook(bl, LOOK_BASE, 3);
				clif->changelook(bl, LOOK_HEAD_BOTTOM, 0);
				clif->changelook(bl, LOOK_HEAD_TOP, 0);
				clif->changelook(bl, LOOK_HEAD_MID, 1900);
				clif->changelook(bl, LOOK_ROBE, 0);
				sg->unit_id = UNT_USED_TRAPS;
				clif->changetraplook(&src->bl, UNT_USED_TRAPS);
				sg->limit = DIFF_TICK32(tick, sg->tick) + 5000;
			break;

Maybe your just doing it wrong idk otherwise id offer more help

 
Back
Top