Jump to content
  • 0

Can someone help me make this changelook permanent?


HristDead

Question


  • Group:  Members
  • Topic Count:  66
  • Topics Per Day:  0.02
  • Content Count:  167
  • Reputation:   2
  • Joined:  08/01/12
  • Last Seen:  

Hi all. :)

 

I was wondering if someone could help me make this changelook stay permanent?

 

Character should still be able to use and change the headgear with npc though but is it possible to make them keep the same sprite even if they relogs? Its a bit like jTynne's script but with input and not a whole list.

 

Thanks!!

 

new_1-2,17,182,5    script   Disguise Headgear    817,{
    //save current look for later
    set @bottomview, getlook(3);
    set @topview, getlook(4);
    set @midview, getlook(5);
 
    //doesn't actually execute until just before a 'close' statement, or when the char leaves the npc's control
    addtimer 100000, strnpcinfo(3)+"::On_Leave";
 
    mes "[Headgear Disguiser]";
    mes "Hello, I can disguise your Dynamic Headgear that you've gained through voting/donating. I can change into any sprite you desire.";
    next;
    mes "[Headgear Disguiser]";
    mes "As you can see, the Dynamic Costume Headgear is Top Headgear. This means that I can only disguise it in another Top Headgear. If you try a Lower or Middle Headgear, nothing will happen.";
    next;
    mes "Should I do this for you?";
    menu "Yes",-,"No thanks.",L_Naw;
    if(isequipped(20006)){
INTRO:
    mes "Great! Now please input an item ID you would like to preview. (Please be careful with erroring item IDs, not every Headgear on the database websites works)";
 
    input @itemid;
 
    //modifies char's look based on item
    set @equip, getiteminfo(@itemid, 5);
    set @view, getiteminfo(@itemid, 11);
 
if(@equip != -1 && @view > 0) {
            //note: yes...i'm using atcommand here cause for some reason 
            //      'setlook' has permanent effects...last time i checked at least
            if(@equip & 256)
        atcommand "@changelook 1 " + @view;
        }
 
    next;
    mes "Would to like to preview something else?";
    if(select("Yes", "No") == 1) {
        goto INTRO;
    }
        
    //*preview wears off automatically here due to delayed timer*//
 
    close;   
 
L_Naw:
    mes "Ok";
    close;
 
On_Leave:
    atcommand "@changelook 1 " + @topview;
    close;
}
}


Aw... no one? what about with annieruru script? changelook instead of getitem? :(

 

mes "input a headgear item_id";
    next;
    input .@upper_headgear; // try 2220
    if ( !( .@nb = query_sql("select id, name_japanese from item_db where equip_locations & 256 and view = ( select view from item_db where equip_locations & 256 and id = "+ .@upper_headgear +" )", .@item_id, .@item_name$ ) ) ) {
        mes "no headgear was found";
        close;
    }
    mes "these are the items that has same view_id when you input that item_id";
    next;
    for ( .@i = 0; .@i < .@nb; .@i++ )
        .@menu$ = .@menu$ + .@item_name$[.@i] +":";
    .@pick = select( .@menu$ ) -1;
    mes "you chose "+ .@item_name$[ .@pick ];
    getitem .@item_id[ .@pick ], 1;
    close;
}
Link to comment
Share on other sites

1 answer to this question

Recommended Posts


  • Group:  Members
  • Topic Count:  25
  • Topics Per Day:  0.01
  • Content Count:  929
  • Reputation:   170
  • Joined:  04/05/13
  • Last Seen:  

set variable and changelook again at OnPCLoginEvent.

Link to comment
Share on other sites

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.

×
×
  • Create New...