Log In
Sign Up
Go Gold
Home
Forum
Mail
Downloads
Game Search
Macro Editor
Notes
Membership
weapon_tools.pl - Quest File
General Info
Quest File
#Usage: plugin::RandomWeapons(MinModelNum, MaxModelNum, MyChance, MinShieldNum, MaxShieldNum, NoDualWield?, IgnoreClass? ); #Example: plugin::RandomWeapons(1, 11169, 50, 200, 230, 0, 0); #MinModelNum - Minimum Model Number to use for selecting Primary/Offhand Weapons #MaxModelNum - Maximum Model Number to use for selecting Primary/Offhand Weapons #MyChance - The percent chance that the NPC will wield any weapons (1 - 100) #MinShieldNum - Minimum Model Number to use for selecting Shields #MaxShieldNum - Maximum Model Number to use for selecting Shields #NoDualWield? - 1 = NPCs won't dual wield or use shield, 0 = They have a chance to dual wield / shield #IgnoreClass? - 1 = Weapon selection will choose any random model number within the range given, 0 = Smart weapon selection based on NPC class sub RandomWeapons { my $npc = plugin::val('$npc'); my $MinModelNum = $_[0]; my $MaxModelNum = $_[1]; my $MyChance = $_[2]; my $MinShieldNum = $_[3]; my $MaxShieldNum = $_[4]; my $NoDualWield = $_[5]; my $IgnoreClass = $_[6]; %WeaponModels = ( #BEGIN Classic Weapon Models 1 => "1HS", 2 => "2HS", 3 => "1HS", 4 => "BOW", 5 => "1HP", 6 => "CASTER", 7 => "1HB", 8 => "2HB", 9 => "1HS", 10 => "OTHER", #Arrow 11 => "1HS", #SOE Fanfair Reward 12 => "STAFF", #SOE Fanfair Reward 13 => "STAFF", #SOE Fanfair Reward 14 => "1HB", 15 => "BARD", 16 => "1HP", 17 => "1HP", 18 => "1HB", 19 => "1HB", 20 => "1HP", 21 => "BARD", 22 => "1HS", 23 => "2HS", 24 => "2HB", 25 => "2HS", 26 => "1HS", 27 => "CASTER", 28 => "CASTER", 29 => "STAFF", 30 => "2HP", 31 => "1HB", 32 => "OTHER", #Broom 33 => "1HB", 34 => "1HS", 35 => "1HB", 36 => "OTHER", #Torch 37 => "1HB", 38 => "OTHER", #Fishing Pole 39 => "2HS", 40 => "1HS", 41 => "1HS", 42 => "1HS", 43 => "1HB", 44 => "1HS", 45 => "STAFF", 46 => "CASTER", 47 => "CASTER", 48 => "OTHER", #Lantern 49 => "1HB", 50 => "1HP", 51 => "1HB", 52 => "OTHER", #Shovel 53 => "2HS", 54 => "OTHER", #Cigar 55 => "OTHER", #Pipe 56 => "OTHER", #Mug 57 => "1HS", 58 => "1HS", 59 => "1HB", 60 => "1HS", 61 => "1HS", 62 => "1HS", #SoulFire 63 => "OTHER", #Small Bag 64 => "OTHER", #Large Bag 65 => "OTHER", #Scroll 66 => "TRADESKILL", #Forge 67 => "CASTER", #Voodoo Doll 68 => "H2H", 69 => "TRADESKILL", #Oven 70 => "TRADESKILL", #Brew Barrel 71 => "H2H", 72 => "CASTER", 73 => "TRADESKILL", #Kiln 74 => "TRADESKILL", #Pottery Wheel 75 => "STAFF", 76 => "2HS", #Luclin Weapn Model 78 => "OTHER", #Fire 79 => "2HP", 80 => "2HS", 81 => "1HS", 82 => "1HS", 83 => "2HS", 84 => "2HS", 85 => "1HS", 86 => "2HS", 87 => "1HS", #END Classic Weapon Models #BEGIN Kunark Weapon Models 88 => "2HS", 89 => "1HS", 90 => "1HS", 91 => "H2H", 92 => "2HP", 93 => "2HS", 94 => "H2H", 95 => "2HS", 96 => "CASTER", #Added for special quest later 97 => "1HS", #GM Sword 98 => "H2H", 99 => "1HS", 100 => "1HS", 101 => "2HB", 102 => "1HB", 103 => "2HP", 104 => "1HS", 105 => "1HS", 106 => "2HS", 107 => "1HS", 108 => "1HS", 109 => "1HS", 110 => "2HS", 111 => "2HB", 112 => "1HB", 113 => "1HS", 115 => "1HB", 117 => "2HB", 118 => "1HP", 119 => "1HP", 120 => "1HS", 121 => "1HS", 122 => "STAFF", 123 => "STAFF", 124 => "2HB", 125 => "STAFF", 126 => "STAFF", 127 => "STAFF", 128 => "TRADESKILL", #Loom 129 => "STAFF", 130 => "1HB", 131 => "1HS", 132 => "2HP", 133 => "CASTER", 134 => "CASTER", 135 => "H2H", 136 => "H2H", 137 => "BARD", 138 => "BARD", 139 => "1HP", #BEGIN Epic 1.0s 140 => "1HP", 141 => "1HS", 142 => "1HS", 145 => "2HS", 146 => "2HS", 148 => "1HS", 149 => "1HS", 150 => "1HS", 151 => "CASTER", 153 => "STAFF", 154 => "2HP", 155 => "CASTER", 156 => "1HB", 157 => "CASTER", 160 => "2HS", #END Epic 1.0s #END Kunark Weapon Models #BEGIN Velious Weapon Models 161 => "1HS", 162 => "1HS", 163 => "1HS", 164 => "1HS", 165 => "1HS", 166 => "2HS", 167 => "1HP", 168 => "1HS", 169 => "2HB", 170 => "1HS", 171 => "1HS", 172 => "2HP", 173 => "2HS", 174 => "1HS", 175 => "1HS", 176 => "2HS", 177 => "1HB", 178 => "2HB", 179 => "1HB", 180 => "1HB", 181 => "1HS", 182 => "1HS", 183 => "1HS", 184 => "1HS", 185 => "1HB", 186 => "STAFF", 187 => "2HP", 188 => "1HS", 189 => "1HB", 190 => "2HS", 191 => "1HS", 192 => "1HS", 193 => "1HB", 194 => "1HP", 195 => "1HP", 196 => "1HS", 197 => "2HP", 198 => "BOW", 199 => "BOW", 200 => "SHIELD", 201 => "SHIELD", 202 => "SHIELD", 203 => "SHIELD", 204 => "SHIELD", 205 => "SHIELD", 206 => "SHIELD", 207 => "SHIELD", 208 => "SHIELD", 209 => "SHIELD", 210 => "SHIELD", 211 => "SHIELD", 212 => "SHIELD", 213 => "SHIELD", 214 => "SHIELD", 215 => "SHIELD", 216 => "SHIELD", 217 => "SHIELD", 218 => "SHIELD", 219 => "SHIELD", 220 => "SHIELD", 221 => "SHIELD", 222 => "SHIELD", 223 => "SHIELD", 224 => "SHIELD", 225 => "SHIELD", 226 => "SHIELD", 227 => "SHIELD", 228 => "SHIELD", 250 => "OTHER", #Lollipop 300 => "2HS", 301 => "1HS", 308 => "STAFF", #END Velious Weapon Models #BEGIN Luclin Weapon Models 10000 => "1HS", 10001 => "2HB", 10002 => "1HS", 10003 => "1HB", 10004 => "2HS", 10005 => "1HS", 10006 => "1HP", 10007 => "1HB", 10008 => "1HB", 10009 => "1HP", 10010 => "1HS", 10011 => "2HS", 10012 => "1HB", 10013 => "2HB", 10014 => "1HS", 10015 => "H2H", #EPIC 10016 => "1HP", 10017 => "1HS", 10018 => "1HS", 10019 => "1HS", 10020 => "1HB", 10021 => "1HB", 10022 => "1HS", 10023 => "1HS", 10024 => "1HS", 10025 => "2HS", 10026 => "1HS", 10027 => "1HS", 10028 => "2HP", 10029 => "H2H", #EPIC 10100 => "2HP", 10101 => "2HP", 10103 => "1HP", 10104 => "1HP", 10105 => "1HP", 10106 => "2HP", 10107 => "1HP", 10108 => "2HP", 10109 => "1HP", 10200 => "STAFF", 10201 => "STAFF", 10202 => "STAFF", 10203 => "STAFF", 10300 => "BOW", 10301 => "BARD", #END Luclin Weapon Models #BEGIN PoP Weapon Models #BEGIN PoP Gods Weapons 10400 => "1HB", 10401 => "2HS", 10402 => "2HP", 10403 => "STAFF", 10404 => "1HS", 10405 => "2HS", 10406 => "STAFF", 10407 => "STAFF", 10408 => "2HB", 10409 => "1HB", 10410 => "STAFF", #END PoP Gods Weapons 10411 => "1HS", 10412 => "BOW", 10413 => "2HS", 10501 => "1HB", 10502 => "CASTER", 10503 => "CASTER", 10504 => "CASTER", 10505 => "STAFF", 10506 => "STAFF", 10507 => "STAFF", 10508 => "2HP", 10509 => "H2H", 10510 => "H2H", 10511 => "H2H", 10512 => "H2H", 10513 => "1HS", 10514 => "1HP", 10515 => "1HS", 10516 => "H2H", 10517 => "1HB", 10518 => "1HB", 10519 => "1HB", 10520 => "STAFF", 10521 => "STAFF", 10522 => "1HB", 10523 => "STAFF", 10524 => "1HB", 10525 => "CASTER", 10526 => "1HP", 10527 => "1HP", 10528 => "1HP", 10545 => "1HS", 10600 => "BARD", 10601 => "BARD", 10602 => "BARD", 10603 => "BARD", 10604 => "1HB", 10605 => "1HB", 10606 => "1HB", 10607 => "1HB", 10608 => "1HB", 10609 => "1HB", 10610 => "1HP", 10611 => "OTHER", #Snowball 10612 => "2HP", 10613 => "2HP", 10614 => "BOW", 10615 => "2HS", 10616 => "1HS", 10617 => "1HS", 10618 => "1HP", 10619 => "1HS", 10620 => "1HS", 10621 => "1HP", 10622 => "2HS", 10623 => "1HS", 10624 => "1HP", 10625 => "2HS", 10626 => "1HS", 10627 => "1HP", 10628 => "2HS", 10629 => "1HS", 10630 => "1HP", 10631 => "2HS", 10632 => "1HS", 10633 => "1HP", 10634 => "2HB", 10635 => "1HB", 10636 => "2HB", 10637 => "1HB", 10638 => "2HB", 10639 => "2HB", 10640 => "2HS", 10641 => "BOW", 10642 => "CASTER", 10643 => "STAFF", 10644 => "2HP", 10645 => "CASTER", 10646 => "CASTER", 10647 => "1HB", 10648 => "1HS", 10649 => "1HS", 10650 => "1HP", 10651 => "2HS", 10652 => "1HS", 10653 => "1HP", 10654 => "2HS", 10655 => "1HS", 10656 => "1HP", 10657 => "2HS", 10658 => "1HS", 10659 => "1HP", 10660 => "2HS", 10661 => "1HS", 10662 => "1HS", 10663 => "CASTER", #END PoP Weapon Models #BEGIN LoY Weapon Models 10664 => "SHIELD", 10665 => "SHIELD", 10666 => "SHIELD", 10667 => "SHIELD", 10668 => "SHIELD", 10669 => "SHIELD", 10670 => "SHIELD", 10671 => "SHIELD", 10672 => "1HB", 10673 => "1HS", 10674 => "1HS", 10675 => "2HB", 10676 => "2HS", 10677 => "STAFF", 10678 => "1HS", 10679 => "1HP", 10680 => "1HP", 10681 => "1HB", 10682 => "1HS", 10683 => "STAFF", 10685 => "2HS", 10686 => "1HS", 10687 => "1HP", 10688 => "1HB", 10689 => "1HP", 10690 => "1HP", 10691 => "SHIELD", 10692 => "1HP", 10693 => "1HP", 10694 => "1HS", 10695 => "CASTER", 10696 => "1HS", 10697 => "CASTER", #END LoY Weapon Models #BEGIN LDoN Weapon Models 10700 => "1HS", 10701 => "1HP", 10702 => "1HS", 10703 => "1HB", 10704 => "1HS", 10705 => "1HS", 10706 => "1HB", 10707 => "1HB", 10708 => "1HS", 10709 => "1HP", 10710 => "1HS", 10711 => "1HP", 10712 => "1HP", #END LDoN Weapon Models #BEGIN GoD Weapon Models 10713 => "1HB", 10714 => "TRADESKILL", #Augment Pool 10715 => "1HS", 10716 => "1HB", 10717 => "BOW", 10718 => "1HB", 10719 => "1HS", 10720 => "2HS", 10722 => "1HP", 10723 => "STAFF", 10724 => "OTHER", #Small Rock 10725 => "OTHER", #Chinese Star 10726 => "1HS", 10727 => "2HS", #Epic 1.5 10728 => "1HS", 10729 => "SHIELD", 10730 => "SHIELD", 10731 => "1HB", 10732 => "1HP", 10733 => "CASTER", #BEGIN Epic 2.0s 10735 => "1HS", 10736 => "1HB", 10737 => "2HS", 10738 => "SHIELD", 10739 => "STAFF", 10740 => "STAFF", 10741 => "STAFF", 10742 => "H2H", 10743 => "STAFF", 10744 => "2HS", 10745 => "1HS", 10746 => "1HP", 10747 => "2HS", 10748 => "1HB", 10749 => "1HS", 10750 => "STAFF", #END Epic 2.0s #BEGIN Epic 1.5s 10751 => "1HS", 10752 => "1HB", 10753 => "2HS", 10754 => "SHIELD", 10755 => "STAFF", 10756 => "STAFF", 10757 => "STAFF", 10758 => "H2H", 10759 => "STAFF", 10760 => "2HS", 10761 => "1HS", 10762 => "1HP", 10763 => "2HS", 10764 => "1HB", 10765 => "1HS", 10766 => "STAFF", #END Epic 1.5s #BEGIN OOW+ Weapon Models 10767 => "CASTER", 10768 => "1HB", 10769 => "1HP", 10770 => "1HS", 10771 => "1HS", 10772 => "SHIELD", 10773 => "2HS", 10774 => "STAFF", 10775 => "SHIELD", 10776 => "2HS", 10777 => "1HB", 10778 => "1HS", 10779 => "1HS", 10780 => "1HS", 10781 => "SHIELD", 10782 => "2HP", 10783 => "H2H", 10784 => "1HS", 10785 => "1HS", 10786 => "2HS", 10787 => "1HS", 10788 => "CASTER", 10789 => "BOW", 10790 => "SHIELD", 10791 => "1HS", 10792 => "2HS", 10793 => "1HP", 10794 => "STAFF", 10795 => "1HB", 10796 => "2HB", 10797 => "2HS", 10798 => "1HP", 10799 => "1HP", 10806 => "CASTER", 10807 => "CASTER", 10808 => "CASTER", 10810 => "2HS", 10811 => "1HS", 10812 => "2HS", 10813 => "1HP", 10814 => "1HP", 10815 => "1HP", 10816 => "1HP", 10817 => "1HB", 10818 => "2HB", 10819 => "CASTER", 10820 => "STAFF", 10821 => "1HS", 10822 => "CASTER", 10823 => "STAFF", 10824 => "1HP", 10825 => "1HS", 10826 => "SHIELD", 10827 => "SHIELD", 10828 => "STAFF", 10829 => "1HB", 10830 => "2HB", 10831 => "1HP", 10832 => "SHIELD", 10833 => "SHIELD", 10834 => "1HS", 10835 => "2HS", 10836 => "CASTER", 10837 => "CASTER", 10838 => "1HB", 10839 => "2HB", 10840 => "1HS", 10841 => "2HS", 10842 => "H2H", #END TITANIUM Weapon Models #BEGIN SoF Weapon Models 10843 => "OTHER", #Broom 10844 => "1HP", 10845 => "2HB", 10846 => "1HB", 10847 => "2HB", 10848 => "1HS", 10849 => "SHIELD", 10850 => "SHIELD", 10851 => "OTHER", #Shovel 10852 => "STAFF", 10853 => "STAFF", 10854 => "CASTER", 10855 => "1HS", 10856 => "2HS", 10857 => "SHIELD", 10858 => "SHIELD", 10859 => "1HB", 10860 => "1HS", 10861 => "OTHER", #Beer Mug 10862 => "STAFF", 10866 => "1HP", 10867 => "1HS", 10868 => "1HP", 10869 => "2HS", 10870 => "1HP", 10871 => "2HS", 10872 => "1HS", 10873 => "2HS", 10874 => "1HS", 10875 => "2HS", 10876 => "1HS", 10877 => "2HS", 10878 => "1HS", 10879 => "2HS", 10880 => "1HS", 10881 => "2HS", 10882 => "1HP", 10883 => "1HS", 10884 => "2HS", 10885 => "1HS", 10886 => "2HS", 10887 => "1HS", 10888 => "2HS", 10889 => "1HS", 10890 => "2HS", 10891 => "1HS", 10892 => "2HS", 10893 => "1HS", 10894 => "2HS", 10895 => "1HS", 10896 => "2HS", 10897 => "1HS", 10898 => "2HS", 10899 => "1HS", 10900 => "2HS", 10901 => "1HS", 10902 => "2HS", 10903 => "1HP", 10904 => "1HS", 10905 => "2HS", 10906 => "1HS", 10907 => "2HS", 10908 => "1HS", 10909 => "2HS", 10910 => "1HP", 10911 => "1HP", 10912 => "1HP", 10913 => "1HP", 10914 => "1HP", 10915 => "1HP", 10916 => "1HP", 10917 => "1HP", 10918 => "1HP", 10919 => "1HP", 10920 => "1HS", 10921 => "2HS", 10922 => "1HS", 10923 => "2HS", 10924 => "1HB", 10925 => "2HB", 10926 => "1HB", 10927 => "2HB", 10928 => "1HB", 10929 => "2HB", 10930 => "1HB", 10931 => "2HB", 10932 => "1HB", 10933 => "2HB", 10934 => "1HB", 10935 => "2HB", 10936 => "1HB", 10937 => "2HB", 10938 => "STAFF", 10939 => "CASTER", 10940 => "STAFF", 10941 => "STAFF", 10942 => "STAFF", 10943 => "1HB", 10944 => "STAFF", 10945 => "1HB", 10946 => "1HB", 10947 => "2HB", 10948 => "1HB", 10949 => "2HB", 10950 => "2HP", 10951 => "2HP", 10952 => "2HP", 10953 => "2HP", 10954 => "2HP", 10955 => "2HP", 10956 => "2HP", 10957 => "2HP", 10958 => "1HP", 10959 => "STAFF", 10960 => "SHIELD", 10961 => "SHIELD", 10962 => "SHIELD", 10963 => "SHIELD", 10964 => "SHIELD", 10965 => "SHIELD", 10966 => "SHIELD", 10967 => "SHIELD", 10968 => "SHIELD", 10969 => "SHIELD", 10970 => "SHIELD", 10971 => "SHIELD", 10972 => "SHIELD", 10973 => "SHIELD", 10974 => "SHIELD", 10975 => "SHIELD", 10976 => "SHIELD", 10977 => "SHIELD", 10978 => "SHIELD", 10979 => "SHIELD", 10980 => "SHIELD", 10981 => "SHIELD", 10982 => "SHIELD", 10983 => "SHIELD", 10984 => "SHIELD", 10985 => "SHIELD", 10986 => "SHIELD", 10987 => "SHIELD", 10988 => "SHIELD", 10989 => "SHIELD", 10990 => "SHIELD", 10991 => "SHIELD", 10992 => "SHIELD", 10993 => "SHIELD", 10994 => "SHIELD", 10995 => "SHIELD", 10996 => "SHIELD", 10997 => "BOW", 10998 => "BOW", 10999 => "1HB", 11001 => "SHIELD", 11002 => "SHIELD", 11003 => "SHIELD", 11013 => "SHIELD", 11017 => "SHIELD", 11018 => "SHIELD", 11019 => "SHIELD", 11020 => "SHIELD", 11031 => "OTHER", #Torch 11032 => "STAFF", 11033 => "OTHER", #Hoe 11034 => "OTHER", #Rake 11035 => "OTHER", #Pitch Fork 11036 => "OTHER", #Bucket full of Dirt 11037 => "OTHER", #Bucket full of Apples 11038 => "OTHER", #Bucket full of Rocks 11039 => "OTHER", #Bucket full of Gems 11040 => "OTHER", #Bucket full of Ash? 11041 => "1HP", 11042 => "1HS", 11043 => "2HS", 11044 => "1HB", 11045 => "2HB", 11046 => "1HS", 11047 => "2HS", 11048 => "SHIELD", 11049 => "SHIELD", 11050 => "H2H", 11051 => "H2H", 11052 => "1HB", 11053 => "1HS", 11054 => "OTHER", #Box 11055 => "OTHER", #Rock 11056 => "OTHER", #Bush 11057 => "OTHER", #Rock 11058 => "OTHER", #3 Bones 11059 => "OTHER", #3 Large Books 11060 => "OTHER", #Green Leaf 11061 => "OTHER", #Mushroom 11062 => "OTHER", #Box 11063 => "OTHER", #Box 11064 => "OTHER", #Rock 11065 => "OTHER", #Rock 11066 => "OTHER", #Bush 11067 => "OTHER", #Bush 11068 => "OTHER", #Rock 11069 => "OTHER", #Red Apple 11070 => "OTHER", #Green Apple 11071 => "OTHER", #Pumpkin 11072 => "OTHER", #3 Bones 11073 => "OTHER", #3 Large Books 11074 => "OTHER", #White Branch 11075 => "OTHER", #Palm Tree Leaf 11076 => "OTHER", #Bamboo 11077 => "OTHER", #Brown Branch 11078 => "OTHER", #Dead Branch 11079 => "OTHER", #Brown Leaf 11080 => "OTHER", #Red Maple Leaf 11081 => "OTHER", #Yellow Mushroom 11082 => "OTHER", #Green Mushroom 11083 => "OTHER", #Brown Mushroom 11084 => "OTHER", #Green Branch 11085 => "SHIELD", 11086 => "SHIELD", 11087 => "CASTER", 11088 => "1HS", 11089 => "1HS", 11090 => "1HS", 11091 => "1HP", 11092 => "2HP", 11093 => "1HP", 11094 => "1HS", 11095 => "1HP", 11096 => "OTHER", #Rolling Pin 11097 => "STAFF", 11098 => "CASTER", 11099 => "H2H", 11100 => "2HS", 11101 => "1HP", 11102 => "SHIELD", 11103 => "SHIELD", 11104 => "STAFF", 11105 => "1HS", 11106 => "1HB", 11107 => "2HB", 11108 => "1HS", 11109 => "2HS", 11110 => "SHIELD", 11111 => "SHIELD", 11112 => "1HP", 11113 => "1HS", 11114 => "1HP", 11115 => "1HS", 11116 => "1HS", 11117 => "STAFF", 11118 => "OTHER", #Fish 11119 => "2HP", 11120 => "H2H", 11121 => "OTHER", #Gold Coin 11122 => "OTHER", #Silver Coin 11123 => "OTHER", #Crystal 11124 => "OTHER", #Crystal 11129 => "1HS", 11130 => "2HB", 11131 => "1HP", 11132 => "2HS", 11133 => "2HB", 11139 => "H2H", 11140 => "SHIELD", 11144 => "SHIELD", 11154 => "OTHER", #Large Crystal 11155 => "OTHER", #Large Crystal 11156 => "OTHER", #Large Crystal 11157 => "OTHER", #Large Crystal 11158 => "OTHER", #Large Crystal 11159 => "OTHER", #Large Crystal 11160 => "OTHER", #Large Crystal 11161 => "OTHER", #Large Crystal 11162 => "OTHER", #Small Crystal 11163 => "OTHER", #Small Crystal 11164 => "OTHER", #Small Crystal 11165 => "OTHER", #Small Crystal 11166 => "OTHER", #Small Crystal 11167 => "OTHER", #Small Crystal 11168 => "OTHER", #Small Crystal 11169 => "OTHER" #Small Crystal #END SoF Weapon Models ); %ClassPrimaryTypes = ( 1 => [ "1HS", "2HS", "1HB", "2HB", "1HP", "2HP" ], #Warrior 2 => [ "1HB", "2HB", "STAFF", "CASTER" ], #Cleric 3 => [ "1HS", "2HS", "1HB", "2HB", "1HP", "2HP" ], #Paladin 4 => [ "1HS", "2HS", "1HB", "2HB", "1HP", "2HP" ], #Ranger 5 => [ "1HS", "2HS", "1HB", "2HB", "1HP", "2HP" ], #Shadow Knight 6 => [ "1HS", "1HB", "2HB", "STAFF", "CASTER" ], #Druid 7 => [ "1HB", "2HB", "H2H", "STAFF" ], #Monk 8 => [ "1HS", "1HB", "1HP", "BARD" ], #Bard 9 => [ "1HS", "1HB", "1HP" ], #Rogue 10 => [ "1HB", "2HB", "1HP", "STAFF", "CASTER" ], #Shaman 11 => [ "1HB", "2HB", "1HP", "STAFF", "CASTER" ], #Necromancer 12 => [ "1HB", "2HB", "1HP", "STAFF", "CASTER" ], #Wizard 13 => [ "1HB", "2HB", "1HP", "STAFF", "CASTER" ], #Mage 14 => [ "1HB", "2HB", "1HP", "STAFF", "CASTER" ], #Enchanter 15 => [ "1HB", "2HB", "1HP", "H2H", "STAFF" ], #Beastlord 16 => [ "2HS", "2HB", "2HP" ] #Berserker ); %ClassSecondaryTypes = ( 1 => [ "1HS", "1HB", "1HP", "SHIELD" ], #Warrior 2 => [ "CASTER", "SHIELD" ], #Cleric 3 => [ "SHIELD" ], #Paladin 4 => [ "1HS", "1HB", "1HP" ], #Ranger 5 => [ "SHIELD" ], #Shadow Knight 6 => [ "CASTER", "SHIELD" ], #Druid 7 => [ "1HB", "2HB", "H2H", "STAFF" ], #Monk 8 => [ "1HS", "1HB", "1HP" ], #Bard 9 => [ "1HS", "1HB", "1HP" ], #Rogue 10 => [ "CASTER", "SHIELD" ], #Shaman 11 => [ "CASTER", "SHIELD" ], #Necromancer 12 => [ "CASTER", "SHIELD" ], #Wizard 13 => [ "CASTER", "SHIELD" ], #Mage 14 => [ "CASTER", "SHIELD" ], #Enchanter 15 => [ "1HB", "1HP", "H2H" ], #Beastlord 16 => [ "NONE" ] #Berserker ); %AttackTypes = ( "1HS" => 1, "2HS" => 3, "1HB" => 0, "2HB" => 2, "1HP" => 36, "2HP" => 36, "ARCHERY" => 7, "THROWING" => 51, "H2H" => 28, "CASTER" => 28, "SHIELD" => 28, "BARD" => 28 ); my $RandChance = plugin::RandomRange(1, 100); if($RandChance <= $MyChance || $MyChance == 0) { if(!$IgnoreClass) { my $NPCClass = $npc->GetClass(); my $PrimMax = $#{$ClassPrimaryTypes{$NPCClass}}; my $PrimTypeNum = plugin::RandomRange(0, $PrimMax + 1); my $PrimType = $ClassPrimaryTypes{$NPCClass}[$PrimTypeNum]; my $SecMax = $#{$ClassSecondaryTypes{$NPCClass}}; my $SecTypeNum = plugin::RandomRange(0, $SecMax + 1); my $SecType = $ClassSecondaryTypes{$NPCClass}[$SecTypeNum]; my @AvailPrims = (); #clear out the array of Available Primary Weapon Models my @AvailSecs = (); #clear out the array of Available Secondary Weapon Models foreach $k (keys (%WeaponModels)) { if($k >= $MinModelNum && $k <= $MaxModelNum) { if($WeaponModels{$k} eq $PrimType){ push(@AvailPrims, $k); } } if($ClassSecondaryTypes{$NPCClass}[$SecType] eq "SHIELD" && $MinShieldNum && $MaxShieldNum) { if($k >= $MinShieldNum && $k <= $MaxShieldNum) { if($WeaponModels{$k} eq $SecType){ push(@AvailSecs, $k); } } } else { if($k >= $MinModelNum && $k <= $MaxModelNum) { if($WeaponModels{$k} eq $SecType){ push(@AvailSecs, $k); } } } } my $TotalAvailPrims = @AvailPrims; my $TotalAvailSecs = @AvailSecs; if($TotalAvailPrims) { my $PrimSelect = plugin::RandomRange(0, $TotalAvailPrims); quest::wearchange(7, $AvailPrims[$PrimSelect]); my $PrimSkill = $AttackTypes{$PrimType}; $npc->SetPrimSkill($PrimSkill); my $chance = quest::ChooseRandom(1,2); if(!$NoDualWield == 1 && $chance == 2 && $PrimType ne "2HS" && $PrimType ne "2HB" && $PrimType ne "2HP" && $PrimType ne "STAFF" && $PrimType ne "BARD" && $NPCClass != 16) { my $SecSelect = plugin::RandomRange(0, $TotalAvailSecs); quest::wearchange(8, $AvailSecs[$SecSelect]); my $SecSkill = $AttackTypes{$SecType}; $npc->SetSecSkill($SecSkill); } } } else { if ($MinModelNum && $MaxModelNum) { my $PrimSelect = plugin::RandomRange($MinModelNum, $MaxModelNum); quest::wearchange(7, $PrimSelect); if(!$NoDualWield) { my $chance2 = quest::ChooseRandom(1,2,3); if ($chance2 == 1) { # if True, then choose a secondary weapon to use my $SecSelect = plugin::RandomRange($MinModelNum, $MaxModelNum); quest::wearchange(8, $SecSelect); } elsif ($chance2 == 2 && $MinShieldNum && $MaxShieldNum) { # if True, then choose a shield to use my $SecSelect = plugin::RandomRange($MinShieldNum, $MaxShieldNum); quest::wearchange(8, $SecSelect); } } } } } } #Usage: plugin::SetWeapons(PrimaryModel, SecondaryModel, EnableRemoving? ); #Example: plugin::SetWeapons(11, 200); sub SetWeapons { my $npc = plugin::val('$npc'); my $PrimaryModel = $_[0]; my $SecondaryModel = $_[1]; my $EnableRemoving = $_[2]; %WeaponModels = ( #BEGIN Classic Weapon Models 1 => "1HS", 2 => "2HS", 3 => "1HS", 4 => "BOW", 5 => "1HP", 6 => "CASTER", 7 => "1HB", 8 => "2HB", 9 => "1HS", 10 => "OTHER", #Arrow 11 => "1HS", #SOE Fanfair Reward 12 => "STAFF", #SOE Fanfair Reward 13 => "STAFF", #SOE Fanfair Reward 14 => "1HB", 15 => "BARD", 16 => "1HP", 17 => "1HP", 18 => "1HB", 19 => "1HB", 20 => "1HP", 21 => "BARD", 22 => "1HS", 23 => "2HS", 24 => "2HB", 25 => "2HS", 26 => "1HS", 27 => "CASTER", 28 => "CASTER", 29 => "STAFF", 30 => "2HP", 31 => "1HB", 32 => "OTHER", #Broom 33 => "1HB", 34 => "1HS", 35 => "1HB", 36 => "OTHER", #Torch 37 => "1HB", 38 => "OTHER", #Fishing Pole 39 => "2HS", 40 => "1HS", 41 => "1HS", 42 => "1HS", 43 => "1HB", 44 => "1HS", 45 => "STAFF", 46 => "CASTER", 47 => "CASTER", 48 => "OTHER", #Lantern 49 => "1HB", 50 => "1HP", 51 => "1HB", 52 => "OTHER", #Shovel 53 => "2HS", 54 => "OTHER", #Cigar 55 => "OTHER", #Pipe 56 => "OTHER", #Mug 57 => "1HS", 58 => "1HS", 59 => "1HB", 60 => "1HS", 61 => "1HS", 62 => "1HS", #SoulFire 63 => "OTHER", #Small Bag 64 => "OTHER", #Large Bag 65 => "OTHER", #Scroll 66 => "TRADESKILL", #Forge 67 => "CASTER", #Voodoo Doll 68 => "H2H", 69 => "TRADESKILL", #Oven 70 => "TRADESKILL", #Brew Barrel 71 => "H2H", 72 => "CASTER", 73 => "TRADESKILL", #Kiln 74 => "TRADESKILL", #Pottery Wheel 75 => "STAFF", 76 => "2HS", #Luclin Weapn Model 78 => "OTHER", #Fire 79 => "2HP", 80 => "2HS", 81 => "1HS", 82 => "1HS", 83 => "2HS", 84 => "2HS", 85 => "1HS", 86 => "2HS", 87 => "1HS", #END Classic Weapon Models #BEGIN Kunark Weapon Models 88 => "2HS", 89 => "1HS", 90 => "1HS", 91 => "H2H", 92 => "2HP", 93 => "2HS", 94 => "H2H", 95 => "2HS", 96 => "CASTER", #Added for special quest later 97 => "1HS", #GM Sword 98 => "H2H", 99 => "1HS", 100 => "1HS", 101 => "2HB", 102 => "1HB", 103 => "2HP", 104 => "1HS", 105 => "1HS", 106 => "2HS", 107 => "1HS", 108 => "1HS", 109 => "1HS", 110 => "2HS", 111 => "2HB", 112 => "1HB", 113 => "1HS", 115 => "1HB", 117 => "2HB", 118 => "1HP", 119 => "1HP", 120 => "1HS", 121 => "1HS", 122 => "STAFF", 123 => "STAFF", 124 => "2HB", 125 => "STAFF", 126 => "STAFF", 127 => "STAFF", 128 => "TRADESKILL", #Loom 129 => "STAFF", 130 => "1HB", 131 => "1HS", 132 => "2HP", 133 => "CASTER", 134 => "CASTER", 135 => "H2H", 136 => "H2H", 137 => "BARD", 138 => "BARD", 139 => "1HP", #BEGIN Epic 1.0s 140 => "1HP", 141 => "1HS", 142 => "1HS", 145 => "2HS", 146 => "2HS", 148 => "1HS", 149 => "1HS", 150 => "1HS", 151 => "CASTER", 153 => "STAFF", 154 => "2HP", 155 => "CASTER", 156 => "1HB", 157 => "CASTER", 160 => "2HS", #END Epic 1.0s #END Kunark Weapon Models #BEGIN Velious Weapon Models 161 => "1HS", 162 => "1HS", 163 => "1HS", 164 => "1HS", 165 => "1HS", 166 => "2HS", 167 => "1HP", 168 => "1HS", 169 => "2HB", 170 => "1HS", 171 => "1HS", 172 => "2HP", 173 => "2HS", 174 => "1HS", 175 => "1HS", 176 => "2HS", 177 => "1HB", 178 => "2HB", 179 => "1HB", 180 => "1HB", 181 => "1HS", 182 => "1HS", 183 => "1HS", 184 => "1HS", 185 => "1HB", 186 => "STAFF", 187 => "2HP", 188 => "1HS", 189 => "1HB", 190 => "2HS", 191 => "1HS", 192 => "1HS", 193 => "1HB", 194 => "1HP", 195 => "1HP", 196 => "1HS", 197 => "2HP", 198 => "BOW", 199 => "BOW", 200 => "SHIELD", 201 => "SHIELD", 202 => "SHIELD", 203 => "SHIELD", 204 => "SHIELD", 205 => "SHIELD", 206 => "SHIELD", 207 => "SHIELD", 208 => "SHIELD", 209 => "SHIELD", 210 => "SHIELD", 211 => "SHIELD", 212 => "SHIELD", 213 => "SHIELD", 214 => "SHIELD", 215 => "SHIELD", 216 => "SHIELD", 217 => "SHIELD", 218 => "SHIELD", 219 => "SHIELD", 220 => "SHIELD", 221 => "SHIELD", 222 => "SHIELD", 223 => "SHIELD", 224 => "SHIELD", 225 => "SHIELD", 226 => "SHIELD", 227 => "SHIELD", 228 => "SHIELD", 250 => "OTHER", #Lollipop 300 => "2HS", 301 => "1HS", 308 => "STAFF", #END Velious Weapon Models #BEGIN Luclin Weapon Models 10000 => "1HS", 10001 => "2HB", 10002 => "1HS", 10003 => "1HB", 10004 => "2HS", 10005 => "1HS", 10006 => "1HP", 10007 => "1HB", 10008 => "1HB", 10009 => "1HP", 10010 => "1HS", 10011 => "2HS", 10012 => "1HB", 10013 => "2HB", 10014 => "1HS", 10015 => "H2H", #EPIC 10016 => "1HP", 10017 => "1HS", 10018 => "1HS", 10019 => "1HS", 10020 => "1HB", 10021 => "1HB", 10022 => "1HS", 10023 => "1HS", 10024 => "1HS", 10025 => "2HS", 10026 => "1HS", 10027 => "1HS", 10028 => "2HP", 10029 => "H2H", #EPIC 10100 => "2HP", 10101 => "2HP", 10103 => "1HP", 10104 => "1HP", 10105 => "1HP", 10106 => "2HP", 10107 => "1HP", 10108 => "2HP", 10109 => "1HP", 10200 => "STAFF", 10201 => "STAFF", 10202 => "STAFF", 10203 => "STAFF", 10300 => "BOW", 10301 => "BARD", #END Luclin Weapon Models #BEGIN PoP Weapon Models #BEGIN PoP Gods Weapons 10400 => "1HB", 10401 => "2HS", 10402 => "2HP", 10403 => "STAFF", 10404 => "1HS", 10405 => "2HS", 10406 => "STAFF", 10407 => "STAFF", 10408 => "2HB", 10409 => "1HB", 10410 => "STAFF", #END PoP Gods Weapons 10411 => "1HS", 10412 => "BOW", 10413 => "2HS", 10501 => "1HB", 10502 => "CASTER", 10503 => "CASTER", 10504 => "CASTER", 10505 => "STAFF", 10506 => "STAFF", 10507 => "STAFF", 10508 => "2HP", 10509 => "H2H", 10510 => "H2H", 10511 => "H2H", 10512 => "H2H", 10513 => "1HS", 10514 => "1HP", 10515 => "1HS", 10516 => "H2H", 10517 => "1HB", 10518 => "1HB", 10519 => "1HB", 10520 => "STAFF", 10521 => "STAFF", 10522 => "1HB", 10523 => "STAFF", 10524 => "1HB", 10525 => "CASTER", 10526 => "1HP", 10527 => "1HP", 10528 => "1HP", 10545 => "1HS", 10600 => "BARD", 10601 => "BARD", 10602 => "BARD", 10603 => "BARD", 10604 => "1HB", 10605 => "1HB", 10606 => "1HB", 10607 => "1HB", 10608 => "1HB", 10609 => "1HB", 10610 => "1HP", 10611 => "OTHER", #Snowball 10612 => "2HP", 10613 => "2HP", 10614 => "BOW", 10615 => "2HS", 10616 => "1HS", 10617 => "1HS", 10618 => "1HP", 10619 => "1HS", 10620 => "1HS", 10621 => "1HP", 10622 => "2HS", 10623 => "1HS", 10624 => "1HP", 10625 => "2HS", 10626 => "1HS", 10627 => "1HP", 10628 => "2HS", 10629 => "1HS", 10630 => "1HP", 10631 => "2HS", 10632 => "1HS", 10633 => "1HP", 10634 => "2HB", 10635 => "1HB", 10636 => "2HB", 10637 => "1HB", 10638 => "2HB", 10639 => "2HB", 10640 => "2HS", 10641 => "BOW", 10642 => "CASTER", 10643 => "STAFF", 10644 => "2HP", 10645 => "CASTER", 10646 => "CASTER", 10647 => "1HB", 10648 => "1HS", 10649 => "1HS", 10650 => "1HP", 10651 => "2HS", 10652 => "1HS", 10653 => "1HP", 10654 => "2HS", 10655 => "1HS", 10656 => "1HP", 10657 => "2HS", 10658 => "1HS", 10659 => "1HP", 10660 => "2HS", 10661 => "1HS", 10662 => "1HS", 10663 => "CASTER", #END PoP Weapon Models #BEGIN LoY Weapon Models 10664 => "SHIELD", 10665 => "SHIELD", 10666 => "SHIELD", 10667 => "SHIELD", 10668 => "SHIELD", 10669 => "SHIELD", 10670 => "SHIELD", 10671 => "SHIELD", 10672 => "1HB", 10673 => "1HS", 10674 => "1HS", 10675 => "2HB", 10676 => "2HS", 10677 => "STAFF", 10678 => "1HS", 10679 => "1HP", 10680 => "1HP", 10681 => "1HB", 10682 => "1HS", 10683 => "STAFF", 10685 => "2HS", 10686 => "1HS", 10687 => "1HP", 10688 => "1HB", 10689 => "1HP", 10690 => "1HP", 10691 => "SHIELD", 10692 => "1HP", 10693 => "1HP", 10694 => "1HS", 10695 => "CASTER", 10696 => "1HS", 10697 => "CASTER", #END LoY Weapon Models #BEGIN LDoN Weapon Models 10700 => "1HS", 10701 => "1HP", 10702 => "1HS", 10703 => "1HB", 10704 => "1HS", 10705 => "1HS", 10706 => "1HB", 10707 => "1HB", 10708 => "1HS", 10709 => "1HP", 10710 => "1HS", 10711 => "1HP", 10712 => "1HP", #END LDoN Weapon Models #BEGIN GoD Weapon Models 10713 => "1HB", 10714 => "TRADESKILL", #Augment Pool 10715 => "1HS", 10716 => "1HB", 10717 => "BOW", 10718 => "1HB", 10719 => "1HS", 10720 => "2HS", 10722 => "1HP", 10723 => "STAFF", 10724 => "OTHER", #Small Rock 10725 => "OTHER", #Chinese Star 10726 => "1HS", 10727 => "2HS", #Epic 1.5 10728 => "1HS", 10729 => "SHIELD", 10730 => "SHIELD", 10731 => "1HB", 10732 => "1HP", 10733 => "CASTER", #BEGIN Epic 2.0s 10735 => "1HS", 10736 => "1HB", 10737 => "2HS", 10738 => "SHIELD", 10739 => "STAFF", 10740 => "STAFF", 10741 => "STAFF", 10742 => "H2H", 10743 => "STAFF", 10744 => "2HS", 10745 => "1HS", 10746 => "1HP", 10747 => "2HS", 10748 => "1HB", 10749 => "1HS", 10750 => "STAFF", #END Epic 2.0s #BEGIN Epic 1.5s 10751 => "1HS", 10752 => "1HB", 10753 => "2HS", 10754 => "SHIELD", 10755 => "STAFF", 10756 => "STAFF", 10757 => "STAFF", 10758 => "H2H", 10759 => "STAFF", 10760 => "2HS", 10761 => "1HS", 10762 => "1HP", 10763 => "2HS", 10764 => "1HB", 10765 => "1HS", 10766 => "STAFF", #END Epic 1.5s #BEGIN OOW+ Weapon Models 10767 => "CASTER", 10768 => "1HB", 10769 => "1HP", 10770 => "1HS", 10771 => "1HS", 10772 => "SHIELD", 10773 => "2HS", 10774 => "STAFF", 10775 => "SHIELD", 10776 => "2HS", 10777 => "1HB", 10778 => "1HS", 10779 => "1HS", 10780 => "1HS", 10781 => "SHIELD", 10782 => "2HP", 10783 => "H2H", 10784 => "1HS", 10785 => "1HS", 10786 => "2HS", 10787 => "1HS", 10788 => "CASTER", 10789 => "BOW", 10790 => "SHIELD", 10791 => "1HS", 10792 => "2HS", 10793 => "1HP", 10794 => "STAFF", 10795 => "1HB", 10796 => "2HB", 10797 => "2HS", 10798 => "1HP", 10799 => "1HP", 10806 => "CASTER", 10807 => "CASTER", 10808 => "CASTER", 10810 => "2HS", 10811 => "1HS", 10812 => "2HS", 10813 => "1HP", 10814 => "1HP", 10815 => "1HP", 10816 => "1HP", 10817 => "1HB", 10818 => "2HB", 10819 => "CASTER", 10820 => "STAFF", 10821 => "1HS", 10822 => "CASTER", 10823 => "STAFF", 10824 => "1HP", 10825 => "1HS", 10826 => "SHIELD", 10827 => "SHIELD", 10828 => "STAFF", 10829 => "1HB", 10830 => "2HB", 10831 => "1HP", 10832 => "SHIELD", 10833 => "SHIELD", 10834 => "1HS", 10835 => "2HS", 10836 => "CASTER", 10837 => "CASTER", 10838 => "1HB", 10839 => "2HB", 10840 => "1HS", 10841 => "2HS", 10842 => "H2H", #END TITANIUM Weapon Models #BEGIN SoF Weapon Models 10843 => "OTHER", #Broom 10844 => "1HP", 10845 => "2HB", 10846 => "1HB", 10847 => "2HB", 10848 => "1HS", 10849 => "SHIELD", 10850 => "SHIELD", 10851 => "OTHER", #Shovel 10852 => "STAFF", 10853 => "STAFF", 10854 => "CASTER", 10855 => "1HS", 10856 => "2HS", 10857 => "SHIELD", 10858 => "SHIELD", 10859 => "1HB", 10860 => "1HS", 10861 => "OTHER", #Beer Mug 10862 => "STAFF", 10866 => "1HP", 10867 => "1HS", 10868 => "1HP", 10869 => "2HS", 10870 => "1HP", 10871 => "2HS", 10872 => "1HS", 10873 => "2HS", 10874 => "1HS", 10875 => "2HS", 10876 => "1HS", 10877 => "2HS", 10878 => "1HS", 10879 => "2HS", 10880 => "1HS", 10881 => "2HS", 10882 => "1HP", 10883 => "1HS", 10884 => "2HS", 10885 => "1HS", 10886 => "2HS", 10887 => "1HS", 10888 => "2HS", 10889 => "1HS", 10890 => "2HS", 10891 => "1HS", 10892 => "2HS", 10893 => "1HS", 10894 => "2HS", 10895 => "1HS", 10896 => "2HS", 10897 => "1HS", 10898 => "2HS", 10899 => "1HS", 10900 => "2HS", 10901 => "1HS", 10902 => "2HS", 10903 => "1HP", 10904 => "1HS", 10905 => "2HS", 10906 => "1HS", 10907 => "2HS", 10908 => "1HS", 10909 => "2HS", 10910 => "1HP", 10911 => "1HP", 10912 => "1HP", 10913 => "1HP", 10914 => "1HP", 10915 => "1HP", 10916 => "1HP", 10917 => "1HP", 10918 => "1HP", 10919 => "1HP", 10920 => "1HS", 10921 => "2HS", 10922 => "1HS", 10923 => "2HS", 10924 => "1HB", 10925 => "2HB", 10926 => "1HB", 10927 => "2HB", 10928 => "1HB", 10929 => "2HB", 10930 => "1HB", 10931 => "2HB", 10932 => "1HB", 10933 => "2HB", 10934 => "1HB", 10935 => "2HB", 10936 => "1HB", 10937 => "2HB", 10938 => "STAFF", 10939 => "CASTER", 10940 => "STAFF", 10941 => "STAFF", 10942 => "STAFF", 10943 => "1HB", 10944 => "STAFF", 10945 => "1HB", 10946 => "1HB", 10947 => "2HB", 10948 => "1HB", 10949 => "2HB", 10950 => "2HP", 10951 => "2HP", 10952 => "2HP", 10953 => "2HP", 10954 => "2HP", 10955 => "2HP", 10956 => "2HP", 10957 => "2HP", 10958 => "1HP", 10959 => "STAFF", 10960 => "SHIELD", 10961 => "SHIELD", 10962 => "SHIELD", 10963 => "SHIELD", 10964 => "SHIELD", 10965 => "SHIELD", 10966 => "SHIELD", 10967 => "SHIELD", 10968 => "SHIELD", 10969 => "SHIELD", 10970 => "SHIELD", 10971 => "SHIELD", 10972 => "SHIELD", 10973 => "SHIELD", 10974 => "SHIELD", 10975 => "SHIELD", 10976 => "SHIELD", 10977 => "SHIELD", 10978 => "SHIELD", 10979 => "SHIELD", 10980 => "SHIELD", 10981 => "SHIELD", 10982 => "SHIELD", 10983 => "SHIELD", 10984 => "SHIELD", 10985 => "SHIELD", 10986 => "SHIELD", 10987 => "SHIELD", 10988 => "SHIELD", 10989 => "SHIELD", 10990 => "SHIELD", 10991 => "SHIELD", 10992 => "SHIELD", 10993 => "SHIELD", 10994 => "SHIELD", 10995 => "SHIELD", 10996 => "SHIELD", 10997 => "BOW", 10998 => "BOW", 10999 => "1HB", 11001 => "SHIELD", 11002 => "SHIELD", 11003 => "SHIELD", 11013 => "SHIELD", 11017 => "SHIELD", 11018 => "SHIELD", 11019 => "SHIELD", 11020 => "SHIELD", 11031 => "OTHER", #Torch 11032 => "STAFF", 11033 => "OTHER", #Hoe 11034 => "OTHER", #Rake 11035 => "OTHER", #Pitch Fork 11036 => "OTHER", #Bucket full of Dirt 11037 => "OTHER", #Bucket full of Apples 11038 => "OTHER", #Bucket full of Rocks 11039 => "OTHER", #Bucket full of Gems 11040 => "OTHER", #Bucket full of Ash? 11041 => "1HP", 11042 => "1HS", 11043 => "2HS", 11044 => "1HB", 11045 => "2HB", 11046 => "1HS", 11047 => "2HS", 11048 => "SHIELD", 11049 => "SHIELD", 11050 => "H2H", 11051 => "H2H", 11052 => "1HB", 11053 => "1HS", 11054 => "OTHER", #Box 11055 => "OTHER", #Rock 11056 => "OTHER", #Bush 11057 => "OTHER", #Rock 11058 => "OTHER", #3 Bones 11059 => "OTHER", #3 Large Books 11060 => "OTHER", #Green Leaf 11061 => "OTHER", #Mushroom 11062 => "OTHER", #Box 11063 => "OTHER", #Box 11064 => "OTHER", #Rock 11065 => "OTHER", #Rock 11066 => "OTHER", #Bush 11067 => "OTHER", #Bush 11068 => "OTHER", #Rock 11069 => "OTHER", #Red Apple 11070 => "OTHER", #Green Apple 11071 => "OTHER", #Pumpkin 11072 => "OTHER", #3 Bones 11073 => "OTHER", #3 Large Books 11074 => "OTHER", #White Branch 11075 => "OTHER", #Palm Tree Leaf 11076 => "OTHER", #Bamboo 11077 => "OTHER", #Brown Branch 11078 => "OTHER", #Dead Branch 11079 => "OTHER", #Brown Leaf 11080 => "OTHER", #Red Maple Leaf 11081 => "OTHER", #Yellow Mushroom 11082 => "OTHER", #Green Mushroom 11083 => "OTHER", #Brown Mushroom 11084 => "OTHER", #Green Branch 11085 => "SHIELD", 11086 => "SHIELD", 11087 => "CASTER", 11088 => "1HS", 11089 => "1HS", 11090 => "1HS", 11091 => "1HP", 11092 => "2HP", 11093 => "1HP", 11094 => "1HS", 11095 => "1HP", 11096 => "OTHER", #Rolling Pin 11097 => "STAFF", 11098 => "CASTER", 11099 => "H2H", 11100 => "2HS", 11101 => "1HP", 11102 => "SHIELD", 11103 => "SHIELD", 11104 => "STAFF", 11105 => "1HS", 11106 => "1HB", 11107 => "2HB", 11108 => "1HS", 11109 => "2HS", 11110 => "SHIELD", 11111 => "SHIELD", 11112 => "1HP", 11113 => "1HS", 11114 => "1HP", 11115 => "1HS", 11116 => "1HS", 11117 => "STAFF", 11118 => "OTHER", #Fish 11119 => "2HP", 11120 => "H2H", 11121 => "OTHER", #Gold Coin 11122 => "OTHER", #Silver Coin 11123 => "OTHER", #Crystal 11124 => "OTHER", #Crystal 11129 => "1HS", 11130 => "2HB", 11131 => "1HP", 11132 => "2HS", 11133 => "2HB", 11139 => "H2H", 11140 => "SHIELD", 11144 => "SHIELD", 11154 => "OTHER", #Large Crystal 11155 => "OTHER", #Large Crystal 11156 => "OTHER", #Large Crystal 11157 => "OTHER", #Large Crystal 11158 => "OTHER", #Large Crystal 11159 => "OTHER", #Large Crystal 11160 => "OTHER", #Large Crystal 11161 => "OTHER", #Large Crystal 11162 => "OTHER", #Small Crystal 11163 => "OTHER", #Small Crystal 11164 => "OTHER", #Small Crystal 11165 => "OTHER", #Small Crystal 11166 => "OTHER", #Small Crystal 11167 => "OTHER", #Small Crystal 11168 => "OTHER", #Small Crystal 11169 => "OTHER" #Small Crystal #END SoF Weapon Models ); %AttackTypes = ( "1HS" => 1, "2HS" => 3, "1HB" => 0, "2HB" => 2, "1HP" => 36, "2HP" => 36, "STAFF" => 2, "ARCHERY" => 7, "BOW" => 7, "THROWING" => 51, "H2H" => 28, "CASTER" => 28, "SHIELD" => 28, "BARD" => 28, "OTHER" => 28 ); if($EnableRemoving) { quest::wearchange(7, $PrimaryModel); quest::wearchange(8, $SecondaryModel); if ($PrimaryModel) { my $PrimSkill = $AttackTypes{$WeaponModels{$PrimaryModel}}; $npc->SetPrimSkill($PrimSkill); } else { $npc->SetPrimSkill(28); } if($SecondaryModel) { my $SecSkill = $AttackTypes{$WeaponModels{$SecondaryModel}}; $npc->SetSecSkill($SecSkill); } else { $npc->SetSecSkill(28); } } else { if ($PrimaryModel) { quest::wearchange(7, $PrimaryModel); my $PrimSkill = $AttackTypes{$WeaponModels{$PrimaryModel}}; $npc->SetPrimSkill($PrimSkill); } if ($SecondaryModel) { quest::wearchange(8, $SecondaryModel); my $SecSkill = $AttackTypes{$WeaponModels{$SecondaryModel}}; $npc->SetSecSkill($SecSkill); } } } return 1; #Added because all other plugins have this, but it may not actually be required.
Source: 17 Jan 2022
Quest Source: 28 May 2022