fulldevilman 0 Posted February 27, 2014 valkyrie armor +7 put in BOX with +7 and use the box +7 Valkyrie armor. thanks Quote Share this post Link to post Share on other sites
0 AnnieRuru 957 Posted February 28, 2014 (edited) then you need to make 12 items 1 to catch the valkyrie in the inventory 11 for the box to open with different refine rates -> 0~10 /*replace into item_db2 ( id, name_english, name_japanese, type, price_buy, price_sell, weight, equip_upper, script ) values( 31000, 'Valkyrie_box_catch', 'Valkyrie_box_catch', 11, 1,1,10, 63, 'callfunc "catch_valkyrie_armor";' ),( 31001, 'Valkyrie_box_open_0', 'Valkyrie_box_open_0', 11, 1,1,10, 63, 'callfunc "get_valkyrie_armor", 31001, 0;' ),( 31002, 'Valkyrie_box_open_1', 'Valkyrie_box_open_1', 11, 1,1,10, 63, 'callfunc "get_valkyrie_armor", 31002, 1;' ),( 31003, 'Valkyrie_box_open_2', 'Valkyrie_box_open_2', 11, 1,1,10, 63, 'callfunc "get_valkyrie_armor", 31003, 2;' ),( 31004, 'Valkyrie_box_open_3', 'Valkyrie_box_open_3', 11, 1,1,10, 63, 'callfunc "get_valkyrie_armor", 31004, 3;' ),( 31005, 'Valkyrie_box_open_4', 'Valkyrie_box_open_4', 11, 1,1,10, 63, 'callfunc "get_valkyrie_armor", 31005, 4;' ),( 31006, 'Valkyrie_box_open_5', 'Valkyrie_box_open_5', 11, 1,1,10, 63, 'callfunc "get_valkyrie_armor", 31006, 5;' ),( 31007, 'Valkyrie_box_open_6', 'Valkyrie_box_open_6', 11, 1,1,10, 63, 'callfunc "get_valkyrie_armor", 31007, 6;' ),( 31008, 'Valkyrie_box_open_7', 'Valkyrie_box_open_7', 11, 1,1,10, 63, 'callfunc "get_valkyrie_armor", 31008, 7;' ),( 31009, 'Valkyrie_box_open_8', 'Valkyrie_box_open_8', 11, 1,1,10, 63, 'callfunc "get_valkyrie_armor", 31009, 8;' ),( 31010, 'Valkyrie_box_open_9', 'Valkyrie_box_open_9', 11, 1,1,10, 63, 'callfunc "get_valkyrie_armor", 31010, 9;' ),( 31011, 'Valkyrie_box_open_10', 'Valkyrie_box_open_10', 11, 1,1,10, 63, 'callfunc "get_valkyrie_armor", 31011, 10;' );*/function script catch_valkyrie_armor { getinventorylist; for ( .@i = 0; .@i < @inventorylist_count; .@i++ ) { if ( @inventorylist_id[.@i] == Valkyrie_Armor ) { delitem2 @inventorylist_id[.@i], 1, @inventorylist_identify[.@i], @inventorylist_refine[.@i], @inventorylist_attribute[.@i], @inventorylist_card1[.@i], @inventorylist_card2[.@i], @inventorylist_card3[.@i], @inventorylist_card4[.@i]; getitem2 31001 + @inventorylist_refine[.@i], 1, 1, 0, 0, @inventorylist_card1[.@i], @inventorylist_card2[.@i], @inventorylist_card3[.@i], @inventorylist_card4[.@i]; delitem Valkyrie_box_catch, 1; end; } } dispbottom "You don't have "+ getitemname(Valkyrie_Armor) +" in your inventory"; end;}function script get_valkyrie_armor { getinventorylist; for ( .@i = 0; .@i < @inventorylist_count; .@i++ ) { if ( @inventorylist_id[.@i] == getarg(0) ) { delitem2 @inventorylist_id[.@i], 1, 1, 0, 0, @inventorylist_card1[.@i], @inventorylist_card2[.@i], @inventorylist_card3[.@i], @inventorylist_card4[.@i]; getitem2 Valkyrie_Armor, 1, 1, getarg(1), 0, @inventorylist_card1[.@i], @inventorylist_card2[.@i], @inventorylist_card3[.@i], @inventorylist_card4[.@i]; end; } } dispbottom "shouldn't reach here ... if reach here, then its bug"; end;}EDITED ... Edited February 28, 2014 by AnnieRuru 1 edwardluciano reacted to this Quote Share this post Link to post Share on other sites
0 AnnieRuru 957 Posted February 27, 2014 make a box with type 18 then in the script field use getitem2 Valkyrie_Armor, 1,1,7,0, 0,0,0,0; Quote Share this post Link to post Share on other sites
0 fulldevilman 0 Posted February 28, 2014 how about +1 or +2 or +3 or +4 or +5 or +6 or +7 or +8 or +9 or +10 Valkyrie armor put in the BOX. Quote Share this post Link to post Share on other sites
0 fulldevilman 0 Posted February 28, 2014 (edited) [cbox]prontera,156,178,5 script Sample 757,{for( .@i = 0; .@i < .item_id_size; .@i++ ){mes .item_amount[.@i]+" x "+getitemname( .item_id[.@i] );if( countitem( .item_id[.@i] ) < .item_amount[.@i] ) .@failed = 1;}if( !.@failed ){mes "Please wait...";progressbar "FFFFFF",10;for( .@i = 0; .@i < .item_id_size; .@i++ )delitem .item_id[.@i],.item_amount[.@i];if( rand( 100 ) < .craft_rate ){mes "Gained 1 items.";getitem .craft_gain,1;}else{mes "Failed";}}close;OnInit:// craft settings.craft_rate = 50;setarray .item_id,30005;setarray .item_amount,10;.item_id_size = getarraysize( .item_id );// item gain.craft_gain = 30004;end;}[/cbox] +7 Valkyrie armor put in the Box using crafting and delete the +7 Valkyrie armor. when get the valkyrie armor box use it you get +7 valkyrie armor. Edited February 28, 2014 by fulldevilman Quote Share this post Link to post Share on other sites
0 evilpuncker 504 Posted February 28, 2014 how about +1 or +2 or +3 or +4 or +5 or +6 or +7 or +8 or +9 or +10 Valkyrie armor put in the BOX. just change the number 7 to the desired number Quote Share this post Link to post Share on other sites
0 fulldevilman 0 Posted February 28, 2014 (edited) if you crafting the +7 valkyrie armor fail the +7 valkyrie armor not lost and the box empty is lost if success the crafting same loss +7 valkyrie armor and box empty and get box of valkyrie [cbox]prontera,142,177,5 script Sample1 757,{for( .@i = 0; .@i < .item_id_size; .@i++ ){mes .item_amount[.@i]+" x "+getitemname( .item_id[.@i] );if( countitem( .item_id[.@i] ) < .item_amount[.@i] ) .@failed = 1;}if( !.@failed ){mes "Please wait...";progressbar "FFFFFF",10;for( .@i = 0; .@i < .item_id_size; .@i++ )delitem .item_id[.@i],.item_amount[.@i];if( rand( 100 ) < .craft_rate ){failedrefitem .@part;mes "Gained 1 items.";getitem .craft_gain,1;}else{mes "Failed";}}close;OnInit:// craft settings.craft_rate = 50;setarray .item_id,box empty;setarray .item_amount,10;.item_id_size = getarraysize( .item_id );// item gain.craft_gain = box of valkyrie;end;}[/cbox] Edited February 28, 2014 by fulldevilman Quote Share this post Link to post Share on other sites
0 rhay18 0 Posted March 4, 2014 i think he means... he want to put the valkyrie armor into box... then when he open the box the valkyrie he get but the box will disappear... i think that is he want to do... Quote Share this post Link to post Share on other sites
0 AnnieRuru 957 Posted March 4, 2014 yeah ... I did that without having to talk to npc ... just double click the item will do ... Quote Share this post Link to post Share on other sites
0 rhay18 0 Posted March 4, 2014 function script catch_valkyrie_armor { getinventorylist; for ( .@i = 0; .@i < @inventorylist_count; .@i++ ) { if ( @inventorylist_id[.@i] == Valkyrie_Armor ) { delitem2 @inventorylist_id[.@i], 1, @inventorylist_identify[.@i], @inventorylist_refine[.@i], @inventorylist_attribute[.@i], @inventorylist_card1[.@i], @inventorylist_card2[.@i], @inventorylist_card3[.@i], @inventorylist_card4[.@i]; getitem2 31001 + @inventorylist_refine[.@i], 1, 1, 0, 0, @inventorylist_card1[.@i], @inventorylist_card2[.@i], @inventorylist_card3[.@i], @inventorylist_card4[.@i]; delitem Valkyrie_box_catch, 1; end; } } dispbottom "You don't have "+ getitemname(Valkyrie_Armor) +" in your inventory"; end;} if you use the valkyrie_box_catch we need 10pcs valkyrie_box_catch if you dont have 10pcs = dispbottom "You don't have "+ getitemname(valkyrie_box_catch 10pcs) +" in your inventory"; like dispbottom "You don't have "+ getitemname(Valkyrie_Armor) +" in your inventory"; if work the valkyrie_box_catch you delitem Valkyrie_box_catch 10pcs. Quote Share this post Link to post Share on other sites
0 AnnieRuru 957 Posted March 4, 2014 well, the reason that I used getinventorylist; is to retain the slotted cards while being store inside the box so its kinda hard to have multiple valkyrie armor in a single box and no .... just 1 piece of item id 31000 and 1 valkyrie_armor will do the trick .. valkyrie_armor +0 will get id 31001 valkyrie_armor +7 will get id 31008 I've tested in my test server of course Quote Share this post Link to post Share on other sites
0 fulldevilman 0 Posted March 5, 2014 thanks i got the script thanks for AnnieRuru for help me. Quote Share this post Link to post Share on other sites
0 fulldevilman 0 Posted March 11, 2014 how to add if you use the valkyrie_box_catch we need 10pcs valkyrie_box_catch if you dont have 10pcs = dispbottom "You don't have "+ getitemname(valkyrie_box_catch 10pcs) +" in your inventory"; like dispbottom "You don't have "+ getitemname(Valkyrie_Armor) +" in your inventory"; if work the valkyrie_box_catch you delitem Valkyrie_box_catch 10pcs. [cbox]function script catch_valkyrie_armor {getinventorylist;for ( .@i = 0; .@i < @inventorylist_count; .@i++ ) {if ( @inventorylist_id[.@i] == 2357 ) {delitem2 @inventorylist_id[.@i], 1, @inventorylist_identify[.@i], @inventorylist_refine[.@i], @inventorylist_attribute[.@i], @inventorylist_card1[.@i], @inventorylist_card2[.@i], @inventorylist_card3[.@i], @inventorylist_card4[.@i];getitem2 30101 + @inventorylist_refine[.@i], 1, 1, 0, 0, @inventorylist_card1[.@i], @inventorylist_card2[.@i], @inventorylist_card3[.@i], @inventorylist_card4[.@i];delitem 30100, 10;end;}}dispbottom "You don't have "+ getitemname(2357) +" in your inventory";end;}function script get_valkyrie_armor {getitem2 2357, 1, 1, getarg(1), 0, @inventorylist_card1[.@i], @inventorylist_card2[.@i], @inventorylist_card3[.@i], @inventorylist_card4[.@i];}[/cbox] Quote Share this post Link to post Share on other sites
valkyrie armor +7 put in BOX with +7 and use the box +7 Valkyrie armor.
thanks
Share this post
Link to post
Share on other sites