3rd Job Suit Problem

eaea

New member
Messages
6
Points
0
Hi,

I made a 3rd job suit using this code:

OnEquipScript: <" { changebase roclass(eaclass()|EAJL_THIRD); } "> OnUnequipScript: <" {changebase Class;} ">

Everything works fine except for the Rune Knight with mount.

I tried to equip it to a Crusader with Peco and when I equip the suit, it changes into a Royal Guard with Gryphon, when I try to do it with a Knight mounted on Peco, it displays the mounted status but the Dragon Mount is not showing.

I also tried to change my job into an actual Rune Knight and tried to mount and the sprites works just fine.

I also tried to use the class_suits v1.2 script using an NPC. Same result.

 Any one have ideas how to fix this? Thank you!

 
Because dragon mount aren't peco mount, it uses diferent parameters (test with the universal rental npc, if you take the rk and select peco, he will mount but without the sprite, if you select dragon, will works fine.)

 
But it works with Royal Guard's Gryphon mount...

Here is the before and after:

8F9MlKW.jpg


Again, if I used an actual RK job, it shows the mount:

l24XA30.jpg


 
Because rg use same skill to mount the gryphon, same skill = same parameter. RK mount use a diferent skill and a diferent script command (setdragon(1))

 
Last edited by a moderator:
May I know how can I fix it? I won't use third jobs anyway. Just their sprites.

 
Code:
 src/map/script.c | 3 +++ 1 file changed, 3 insertions(+)diff --git a/src/map/script.c b/src/map/script.cindex 54d8d33..bac464c 100644--- a/src/map/script.c+++ b/src/map/script.c@@ -11238,6 +11238,9 @@ BUILDIN(changebase) { 			return true; 	} +	if ( vclass == JOB_RUNE_KNIGHT &&  pc->readparam(sd,SP_CLASS) == JOB_KNIGHT && sd->sc.option & OPTION_RIDING )+		sd->sc.option |= OPTION_DRAGON;+ 	if(sd->disguise == -1 && vclass != sd->vd.class_) 		pc->changelook(sd,LOOK_BASE,vclass); //Updated client view. Base, Weapon and Cloth Colors.
patch this, confirm work
 
sry, I gave wrong answer

I noticed we already have script commands to setoption, so there is no need to patch

Code:
-	script	kfsdkfhsf	FAKE_NPC,{OnInit:	setitemscript 1201, "{ if ( Class == Job_Knight && checkmount() ) { setoption Option_Dragon1; } changebase roclass(eaclass()|EAJL_THIRD); }", 1;	setitemscript 1201, "{ changebase Class; } ", 2;	end;}
 
@@AnnieRuru

No worries. Thank you very much for helping me out. I'll try it again as soon as I get home.

EDIT:
 

It's working now! Thank you very much, Annie!
default_smile.png


 
Last edited by a moderator:
why on my server the dragon doesn't appear ?? see my codes

NPC SCRIPT

- script kfsdkfhsf FAKE_NPC,{
OnInit:
setitemscript 32082, "{ if ( Class == Job_Knight && checkmount() ) { setoption Option_Dragon1; } changebase 4060; }", 1;
setitemscript 32082, "{ changebase Class; } ", 2;
end;
}
 
 
ITEM DB
{
Id: 32082
AegisName: "Cotton_Shirt"
Name: "Costume: Rune Knight Suit"
Type: 5
Buy: 10
Weight: 0
Def: 0
Job: 0x00000080
Upper: 63
Loc: 65536
OnEquipScript: <" changebase 4060;  ">
OnUnequipScript: <" changebase Class; ">

},



im having error on my map server please Help me

help me please on this error

123.jpg

 
like this enough

Code:
{	Id: 2301	AegisName: "Cotton_Shirt"	Name: "Cotton Shirt"	Type: 5	Buy: 10	Weight: 100	Def: 10	Job: 0x00000080	Loc: 65536    OnEquipScript: <" if ( checkmount() ) { setoption Option_Dragon1; } changebase Job_Rune_Knight;  ">    OnUnequipScript: <" changebase Class; ">},
since you already have the job: 0x80 field
 
do i need to apply the npc script ?

sry, I gave wrong answer

I noticed we already have script commands to setoption, so there is no need to patch

- script kfsdkfhsf FAKE_NPC,{OnInit: setitemscript 1201, "{ if ( Class == Job_Knight && checkmount() ) { setoption Option_Dragon1; } changebase roclass(eaclass()|EAJL_THIRD); }", 1; setitemscript 1201, "{ changebase Class; } ", 2; end;}
do i need to apply this npc script ?

like this enough

{ Id: 2301 AegisName: "Cotton_Shirt" Name: "Cotton Shirt" Type: 5 Buy: 10 Weight: 100 Def: 10 Job: 0x00000080 Loc: 65536 OnEquipScript: <" if ( checkmount() ) { setoption Option_Dragon1; } changebase Job_Rune_Knight; "> OnUnequipScript: <" changebase Class; ">},since you already have the job: 0x80 field
if i have this ?

annie nothing happen since i input your script in my item db 

esotericragnarokonline said:
do i need to apply the npc script ?

sry, I gave wrong answer

I noticed we already have script commands to setoption, so there is no need to patch

- script kfsdkfhsf FAKE_NPC,{OnInit: setitemscript 1201, "{ if ( Class == Job_Knight && checkmount() ) { setoption Option_Dragon1; } changebase roclass(eaclass()|EAJL_THIRD); }", 1; setitemscript 1201, "{ changebase Class; } ", 2; end;}
do i need to apply this npc script ?

like this enough

{ Id: 2301 AegisName: "Cotton_Shirt" Name: "Cotton Shirt" Type: 5 Buy: 10 Weight: 100 Def: 10 Job: 0x00000080 Loc: 65536 OnEquipScript: <" if ( checkmount() ) { setoption Option_Dragon1; } changebase Job_Rune_Knight; "> OnUnequipScript: <" changebase Class; ">},since you already have the job: 0x80 field
i already input your script but nothing happen to my test character

im having error please check this on my npc script .. 

problem solve thankyou 


npc script 
 

- script kfsdkfhsf FAKE_NPC,{
OnInit:
setitemscript 32082, "{ { setoption Option_Dragon1; } changebase 4060; }", 1;
setitemscript 32082, "{ changebase Class; } ", 2;
end;
}


Item DB

{
Id: 32082
AegisName: "Cotton_Shirt"
Name: "Cotton Shirt"
Type: 5
Buy: 10
Weight: 100
Def: 10
Job: 0x00000080
Loc: 65536
    OnEquipScript: <" if ( checkmount() ) { setoption Option_Dragon1; } changebase 4060;  ">
    OnUnequipScript: <" changebase Class; ">
},


Thank you annie

123.jpg

 
Last edited by a moderator:
Back
Top