User:Westgrass/sandbox

local Sets = {}

local function BoolSetFactory(IDs) local set = { ['default'] = false} for k, v in pairs(IDs) do		set[v] = true end return set end

local function SetFactory(default, IDs) local set = { ['default'] = default} local key = nil for _, v in pairs(IDs) do		if key then set[key] = v			key = nil else key = v		end end return set end

-- bool sets Sets.DontDoHardmodeScaling = BoolSetFactory{ 5, 13, 14, 15, 267, 113, 114, 115, 116, 117, 118, 119, 658, 659, 660, 400 } Sets.IsTownPet = BoolSetFactory{ 637, 638, 656 } Sets.CantTakeLunchMoney = BoolSetFactory{ 394, 393, 392, 492, 491, 662, 384, 478, 658, 659, 660, 128, 131, 129, 130, 139, 267, 247, 248, 246, 249, 245, 397, 396, 401, 400, 440, 68 } Sets.IsDragonfly = BoolSetFactory{ 595, 596, 597, 598, 599, 600, 601 } Sets.BelongsToInvasionOldOnesArmy = BoolSetFactory{ 552, 553, 554, 561, 562, 563, 555, 556, 557, 558, 559, 560, 576, 577, 568, 569, 566, 567, 570, 571, 572, 573, 548, 549, 564, 565, 574, 575, 551, 578 } Sets.TeleportationImmune = BoolSetFactory{ 552, 553, 554, 561, 562, 563, 555, 556, 557, 558, 559, 560, 576, 577, 568, 569, 566, 567, 570, 571, 572, 573, 548, 549, 564, 565, 574, 575, 551, 578 } Sets.UsesNewTargetting = BoolSetFactory{ 547, 552, 553, 554, 561, 562, 563, 555, 556, 557, 558, 559, 560, 576, 577, 568, 569, 566, 567, 570, 571, 572, 573, 564, 565, 574, 575, 551, 578, 210, 211, 620 } Sets.TakesDamageFromHostilesWithoutBeingFriendly = BoolSetFactory{ 46, 55, 74, 148, 149, 230, 297, 298, 299, 303, 355, 356, 358, 359, 360, 361, 362, 363, 364, 365, 366, 367, 377, 357, 374, 442, 443, 444, 445, 446, 448, 538, 539, 337, 540, 484, 485, 486, 487, 592, 593, 595, 596, 597, 598, 599, 600, 601, 602, 603, 604, 605, 606, 607, 608, 609, 611, 612, 613, 614, 615, 616, 617, 625, 626, 627, 639, 640, 641, 642, 643, 644, 645, 646, 647, 648, 649, 650, 651, 652, 653, 654, 655, 583, 584, 585 } Sets.HurtingBees = BoolSetFactory{ 210, 211, 222 } Sets.FighterUsesDD2PortalAppearEffect = BoolSetFactory{ 552, 553, 554, 561, 562, 563, 555, 556, 557, 576, 577, 568, 569, 570, 571, 572, 573, 564, 565 } Sets.NoEarlymodeLootWhenSpawnedFromStatue = BoolSetFactory{ 480, 82, 86, 170, 180, 171 } Sets.NeedsExpertScaling = BoolSetFactory{ 25, 30, 33, 112, 261, 265, 371, 516, 519, 522, 397, 396, 398, 491 } Sets.ProjectileNPC = BoolSetFactory{ 25, 30, 33, 112, 261, 265, 371, 516, 519, 522 } Sets.SavesAndLoads = BoolSetFactory{ 422, 507, 517, 493 } Sets.MPAllowedEnemies = BoolSetFactory{ 4, 13, 50, 126, 125, 134, 127, 128, 131, 129, 130, 222, 245, 266, 370, 657 } Sets.TownCritter = BoolSetFactory{ 46, 148, 149, 230, 299, 300, 303, 337, 361, 362, 364, 366, 367, 443, 445, 447, 538, 539, 540, 583, 584, 585, 592, 593, 602, 607, 608, 610, 616, 617, 625, 626, 627, 639, 640, 641, 642, 643, 644, 645, 646, 647, 648, 649, 650, 651, 652 } Sets.CountsAsCritter = BoolSetFactory{ 46, 303, 337, 540, 443, 74, 297, 298, 442, 611, 377, 446, 612, 613, 356, 444, 595, 596, 597, 598, 599, 600, 601, 604, 605, 357, 448, 374, 484, 355, 358, 606, 359, 360, 485, 486, 487, 148, 149, 55, 230, 592, 593, 299, 538, 539, 300, 447, 361, 445, 362, 363, 364, 365, 367, 366, 583, 584, 585, 602, 603, 607, 608, 609, 610, 616, 617, 625, 626, 627, 615, 639, 640, 641, 642, 643, 644, 645, 646, 647, 648, 649, 650, 651, 652, 653, 654, 655, 661 } Sets.HasNoPartyText = BoolSetFactory{ 441, 453 } Sets.DemonEyes = BoolSetFactory{ 2, 190, 192, 193, 191, 194, 317, 318 } Sets.Zombies = BoolSetFactory{ 3, 132, 186, 187, 188, 189, 200, 223, 161, 254, 255, 52, 53, 536, 319, 320, 321, 332, 436, 431, 432, 433, 434, 435, 331, 430, 590 } Sets.Skeletons = BoolSetFactory{ 77, 449, 450, 451, 452, 481, 201, 202, 203, 21, 324, 110, 323, 293, 291, 322, 292, 197, 167, 44, 635 } Sets.PositiveNPCTypesExcludedFromDeathTally = BoolSetFactory{ 121, 384, 406, 478, 479, 410 } Sets.DangerThatPreventsOtherDangers = BoolSetFactory{ 517, 422, 507, 493, 399 } Sets.MustAlwaysDraw = BoolSetFactory{ 113, 114, 115, 116, 126, 125 } Sets.ShouldNotBeCountedAsBoss = BoolSetSetFactory{ 517, 422, 507, 493, 13 } Sets.GoldCrittersCollection = BoolSetSetFactory{443,442,592,444,601,445,446,605,447,627,613,448,539}

--value set Sets.TrailingMode = SetFactory(-1, { 439, 0, 440, 0, 370, 1, 372, 1, 373, 1, 396, 1, 400, 1, 401, 1, 473, 2, 474, 2, 475, 2, 476, 2, 4, 3, 471, 3, 477, 3, 479, 3, 120, 4, 137, 4, 138, 4, 94, 5, 125, 6, 126, 6, 127, 6, 128, 6, 129, 6, 130, 6, 131, 6, 139, 6, 140, 6, 407, 6, 420, 6, 425, 6, 427, 6, 426, 6, 581, 6, 516, 6, 542, 6, 543, 6, 544, 6, 545, 6, 402, 7, 417, 7, 419, 7, 418, 7, 574, 7, 575, 7, 519, 7, 521, 7, 522, 7, 546, 7, 558, 7, 559, 7, 560, 7, 551, 7, 620, 7, 657, 6, 636, 7 } Sets.TrailCacheLength = SetFactory(10, { 402, 36, 519, 20, 522, 20, 620, 20 } Sets.HatOffsetY = SetFactory(0, { 227, 4, 107, 2, 108, 2, 229, 4, 17, 2, 38, 8, 160, -10, 208, 2, 142, 2, 124, 2, 453, 2, 37, 4, 54, 4, 209, 4, 369, 6, 441, 6, 353, -2, 633, -2, 550, -2, 588, 2, 637, 0, 638, 0, 656, 4 } Sets.FaceEmote = SetFactory(0, { 17, 101, 18, 102, 19, 103, 20, 104, 22, 105, 37, 106, 38, 107, 54, 108, 107, 109, 108, 110, 124, 111, 142, 112, 160, 113, 178, 114, 207, 115, 208, 116, 209, 117, 227, 118, 228, 119, 229, 120, 353, 121, 368, 122, 369, 123, 453, 124, 441, 125, 588, 140, 633, 141 } Sets.ExtraFramesCount = SetFactory(0, { 17, 9, 18, 9, 19, 9, 20, 7, 22, 10, 37, 5, 38, 9, 54, 7, 107, 9, 108, 7, 124, 9, 142, 9, 160, 7, 178, 9, 207, 9, 208, 9, 209, 10, 227, 9, 228, 10, 229, 10, 353, 9, 633, 9, 368, 10, 369, 9, 453, 9, 441, 9, 550, 9, 588, 9, 637, 18, 638, 11, 656, 20 } Sets.AttackFrameCount = SetFactory(0, { 17, 4, 18, 4, 19, 4, 20, 2, 22, 5, 37, 0, 38, 4, 54, 2, 107, 4, 108, 2, 124, 4, 142, 4, 160, 2, 178, 4, 207, 4, 208, 4, 209, 5, 227, 4, 228, 5, 229, 5, 353, 4, 633, 4, 368, 5, 369, 4, 453, 4, 441, 4, 550, 4, 588, 4, 637, 0, 638, 0, 656, 0 } Sets.DangerDetectRange = SetFactory(-1, { 38, 300, 17, 320, 107, 300, 19, 900, 22, 700, 124, 800, 228, 800, 178, 900, 18, 300, 229, 1000, 209, 1000, 54, 700, 108, 700, 160, 700, 20, 1200, 369, 300, 453, 300, 368, 900, 207, 60, 227, 800, 208, 400, 142, 500, 441, 50, 353, 60, 633, 100, 550, 120, 588, 120, 638, 250, 637, 250, 656, 250 } Sets.AttackTime = SetFactory(-1, { 38, 34, 17, 34, 107, 60, 19, 40, 22, 30, 124, 34, 228, 40, 178, 24, 18, 34, 229, 60, 209, 60, 54, 60, 108, 30, 160, 60, 20, 600, 369, 34, 453, 34, 368, 60, 207, 15, 227, 60, 208, 34, 142, 34, 441, 15, 353, 12, 633, 12, 550, 34, 588, 20, 638, -1, 637, -1, 656, -1 } Sets.AttackAverageChance = SetFactory(1, { 38, 40, 17, 30, 107, 60, 19, 30, 22, 30, 124, 30, 228, 50, 178, 50, 18, 60, 229, 40, 209, 30, 54, 30, 108, 30, 160, 60, 20, 60, 369, 50, 453, 30, 368, 40, 207, 1, 227, 30, 208, 50, 142, 50, 441, 1, 353, 1, 633, 1, 550, 40, 588, 20, 638, 1, 637, 1, 656, 1 } Sets.AttackType = SetFactory(-1, { 38, 0, 17, 0, 107, 0, 19, 1, 22, 1, 124, 0, 228, 1, 178, 1, 18, 0, 229, 1, 209, 1, 54, 2, 108, 2, 160, 2, 20, 2, 369, 0, 453, 0, 368, 1, 207, 3, 227, 1, 208, 0, 142, 0, 441, 3, 353, 3, 633, 0, 550, 0, 588, 0, 638, -1, 637, -1, 656, -1 } Sets.PrettySafe = SetFactory(-1, { 19, 300, 22, 200, 124, 200, 228, 300, 178, 300, 229, 300, 209, 300, 54, 100, 108, 100, 160, 100, 20, 200, 368, 200, 227, 200 } Sets.BossHeadTextures = SetFactory(-1, { 4, 0, 13, 2, 344, 3, 370, 4, 246, 5, 249, 5, 345, 6, 50, 7, 396, 8, 395, 9, 325, 10, 262, 11, 327, 13, 222, 14, 125, 15, 126, 20, 346, 17, 127, 18, 35, 19, 68, 19, 113, 22, 266, 23, 439, 24, 440, 24, 134, 25, 491, 26, 517, 27, 422, 28, 507, 29, 493, 30, 549, 35, 564, 32, 565, 32, 576, 33, 577, 33, 551, 34, 548, 36, 636, 37, 657, 38 } Sets.ExtraTextureCount = SetFactory(0, { 38, 1, 17, 1, 107, 0, 19, 0, 22, 0, 124, 1, 228, 0, 178, 1, 18, 1, 229, 1, 209, 1, 54, 1, 108, 1, 160, 0, 20, 0, 369, 1, 453, 1, 368, 1, 207, 1, 227, 1, 208, 0, 142, 1, 441, 1, 353, 1, 633, 1, 550, 0, 588, 1, 633, 2, 638, 0, 637, 0, 656, 0 } Sets.NPCFramingGroup = SetFactory(0, { 18, 1, 20, 1, 208, 1, 178, 1, 124, 1, 353, 1, 633, 1, 369, 2, 160, 3, 637, 4, 638, 5, 656, 6 } Sets.TownNPCsFramingGroups = new int[][] { { 0, 0, 0, -2, -2, -2, 0, 0, 0, 0, -2, -2, -2, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 }, new int[] { 0, 0, 0, -2, -2, -2, 0, 0, 0, -2, -2, -2, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 }, new int[] { 0, 0, 0, -2, -2, -2, 0, 0, -2, -2, -2, -2, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 }, new int[] { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -2, -2, -2, 0, 0, 0, 0, 0, 0, 0, 0, 2, 6 }, new int[] { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2, 2, 4, 6, 4, 2, 2, -2, -4, -6, -4, -2, -4, -4, -6, -6, -6, -4 }, new int[] { 0, 0, 0, 0, 0, 0, 0, 0, -2, -2, -2, 0, 0, -2, -2, 0, 0, 4, 6, 6, 6, 6, 4, 4, 4, 4, 4, 4 }, new int[] { 0, 0, -2, -4, -4, -2, 0, -2, 0, 0, 2, 4, 6, 4, 2, 0, -2, -4, -6, -6, -6, -6, -6, -6, -4, -2 } };

Sets.StatueSpawnedDropRarity = NPCID.Sets.Factory.CreateCustomSet (-1f, new object[] { (short)480, 0.05f, (short)82, 0.05f, (short)86, 0.05f, (short)48, 0.05f, (short)490, 0.05f, (short)489, 0.05f, (short)170, 0.05f, (short)180, 0.05f, (short)171, 0.05f, (short)167, 0.25f, (short)73, 0.01f, (short)24, 0.05f, (short)481, 0.05f, (short)42, 0.05f, (short)6, 0.05f, (short)2, 0.05f, (short)49, 0.2f, (short)3, 0.2f, (short)58, 0.2f, (short)21, 0.2f, (short)65, 0.2f, (short)449, 0.2f, (short)482, 0.2f, (short)103, 0.2f, (short)64, 0.2f, (short)63, 0.2f, (short)85, 0f } Sets.MagicAuraColor = NPCID.Sets.Factory.CreateCustomSet(Color.White, new object[] { (short)54, new Color(100, 4, 227, 127), (short)108, new Color(255, 80, 60, 127), (short)160, new Color(40, 80, 255, 127), (short)20, new Color(40, 255, 80, 127) }

NPCID.Sets.SpecialSpawningRules = new Dictionary {                   { 259, 0 },                    { 260, 0 },                    { 175, 0 },                    { 43, 0 },                    { 56, 0 },                    { 101, 0 }                };

NPCID.Sets.RespawnEnemyID = new Dictionary {                   { 492, 0 },                    { 491, 0 },                    { 394, 0 },                    { 393, 0 },                    { 392, 0 },                    { 13, 0 },                    { 14, 0 },                    { 15, 0 },                    { 412, 0 },                    { 413, 0 },                    { 414, 0 },                    { 134, 0 },                    { 135, 0 },                    { 136, 0 },                    { 454, 0 },                    { 455, 0 },                    { 456, 0 },                    { 457, 0 },                    { 458, 0 },                    { 459, 0 },                    { 8, 7 },                    { 9, 7 },                    { 11, 10 },                    { 12, 10 },                    { 40, 39 },                    { 41, 39 },                    { 96, 95 },                    { 97, 95 },                    { 99, 98 },                    { 100, 98 },                    { 88, 87 },                    { 89, 87 },                    { 90, 87 },                    { 91, 87 },                    { 92, 87 },                    { 118, 117 },                    { 119, 117 },                    { 514, 513 },                    { 515, 513 },                    { 511, 510 },                    { 512, 510 },                    { 622, 621 },                    { 623, 621 }                };            }

-- value sets Sets.ToolTipDamageMultiplier = SetFactory(1, { 162, 2, 801, 2, 163, 2, 220, 2, 389, 2, 1259, 2, 4272, 2, 5011, 2, 5012, 2 }) Sets.KillsToBanner = SetFactory(50, { 3838, 1000, 3845, 200, 3837, 500, 3844, 200, 3843, 50, 3839, 200, 3840, 100, 3842, 200, 3841, 100, 3846, 50, 2971, 200, 2982, 100, 2994, 100 }) Sets.ItemSpawnDecaySpeed = SetFactory(1, { 58, 4, 184, 4, 1867, 4, 1868, 4, 1734, 4, 1735, 4 }) Sets.TextureCopyLoad = SetFactory(-1, { 3665, 48, 3666, 306, 3667, 328, 3668, 625, 3669, 626, 3670, 627, 3671, 680, 3672, 681, 3673, 831, 3674, 838, 3675, 914, 3676, 952, 3677, 1142, 3678, 1298, 3679, 1528, 3680, 1529, 3681, 1530, 3682, 1531, 3683, 1532, 3684, 2230, 3685, 2249, 3686, 2250, 3687, 2526, 3688, 2544, 3689, 2559, 3690, 2574, 3691, 2612, 3692, 2613, 3693, 2614, 3694, 2615, 3695, 2616, 3696, 2617, 3697, 2618, 3698, 2619, 3699, 2620, 3700, 2748, 3701, 2814, 3703, 3125, 3702, 3180, 3704, 3181, 3705, 3665, 3706, 3665, 4713, 4712 }) Sets.ExtractinatorMode = SetFactory(-1, { 424, 0, 1103, 0, 3347, 1 }) Sets.SortingPriorityBossSpawns = SetFactory(-1, { 43, 1, 560, 2, 70, 3, 1331, 3, 361, 4, 1133, 5, 4988, 5, 544, 6, 556, 7, 557, 8, 2495, 9, 2673, 10, 602, 11, 1844, 12, 1958, 13, 1293, 14, 2767, 15, 4271, 15, 3601, 16, 1291, 17, 109, 18, 29, 19, 50, 20, 3199, 20, 3124, 21 }) Sets.SortingPriorityWiring = SetFactory(-1, { 510, 103, 3625, 102, 509, 101, 851, 100, 850, 99, 3612, 98, 849, 97, 4485, 96, 4484, 95, 583, 94, 584, 93, 585, 92, 538, 91, 513, 90, 3545, 90, 853, 89, 541, 88, 529, 88, 1151, 87, 852, 87, 543, 87, 542, 87, 3707, 87, 2492, 86, 530, 85, 581, 84, 582, 84, 1263, 83 }) Sets.SortingPriorityMaterials = SetFactory(-1, { 3467, 100, 3460, 99, 3458, 98, 3456, 97, 3457, 96, 3459, 95, 3261, 94, 1508, 93, 1552, 92, 1006, 91, 947, 90, 1225, 89, 1198, 88, 1106, 87, 391, 86, 366, 85, 1191, 84, 1105, 83, 382, 82, 365, 81, 1184, 80, 1104, 79, 381, 78, 364, 77, 548, 76, 547, 75, 549, 74, 575, 73, 521, 72, 520, 71, 175, 70, 174, 69, 3380, 68, 1329, 67, 1257, 66, 880, 65, 86, 64, 57, 63, 56, 62, 117, 61, 116, 60, 706, 59, 702, 58, 19, 57, 13, 56, 705, 55, 701, 54, 21, 53, 14, 52, 704, 51, 700, 50, 22, 49, 11, 48, 703, 47, 699, 46, 20, 45, 12, 44, 999, 43, 182, 42, 178, 41, 179, 40, 177, 39, 180, 38, 181, 37 }) Sets.SortingPriorityExtractibles = SetFactory(-1, { 997, 4, 3347, 3, 1103, 2, 424, 1 }) Sets.SortingPriorityRopes = SetFactory(-1, { 965, 1, 85, 1, 210, 1, 3077, 1, 3078, 1 }) Sets.SortingPriorityPainting = SetFactory(-1, { 1543, 100, 1544, 99, 1545, 98, 1071, 97, 1072, 96, 1100, 95 }) Sets.SortingPriorityTerraforming = SetFactory(-1, { 779, 100, 780, 99, 783, 98, 781, 97, 782, 96, 784, 95, 422, 94, 423, 93, 3477, 92, 66, 91, 67, 90, 2886, 89 }) Sets.GamepadExtraRange = SetFactory(0, { 2797, 20, 3278, 4, 3285, 6, 3279, 8, 3280, 8, 3281, 9, 3262, 10, 3317, 10, 3282, 10, 3315, 10, 3316, 11, 3283, 12, 3290, 13, 3289, 11, 3284, 13, 3286, 13, 3287, 18, 3288, 18, 3291, 17, 3292, 18, 3389, 21 }) Sets.BonusMeleeSpeedMultiplier = SetFactory(1, { 1827, 0.5, 3013, 0.25, 3106, 0.33 }) Sets.LockOnAimAbove = SetFactory(0, { 1256, 15, 1244, 15, 3014, 15, 3569, 15, 3571, 15 }) -- public BannerEffect(float strength = 1f)            {                this.NormalDamageDealt = 1f + strength * 0.5f;                this.ExpertDamageDealt = 1f + strength;                this.ExpertDamageReceived = 1f / (strength + 1f                this.NormalDamageReceived = 1f - (1f - this.ExpertDamageReceived) * 0.5f;                this.Enabled = strength != 0f;            } -- --Sets.DD2BannerEffect = ItemID.BannerEffect.None;  // ItemID.BannerEffect.None = new ItemID.BannerEffect(0f --ItemID.Sets.BannerStrength = ItemID.Sets.Factory.CreateCustomSet(new ItemID.BannerEffect(1f), new object[] { (short)3838, ItemID.Sets.DD2BannerEffect, (short)3845, ItemID.Sets.DD2BannerEffect, (short)3837, ItemID.Sets.DD2BannerEffect, (short)3844, ItemID.Sets.DD2BannerEffect, (short)3843, ItemID.Sets.DD2BannerEffect, (short)3839, ItemID.Sets.DD2BannerEffect, (short)3840, ItemID.Sets.DD2BannerEffect, (short)3842, ItemID.Sets.DD2BannerEffect, (short)3841, ItemID.Sets.DD2BannerEffect, (short)3846, ItemID.Sets.DD2BannerEffect } Sets.BannerStrength = SetFactory(1, { 3838, 0, 3845, 0, 3837, 0, 3844, 0, 3843, 0, 3839, 0, 3840, 0, 3842, 0, 3841, 0, 3846, 0 })

-- nullable Sets.LockOnAimCompensation = SetFactory(nil, { 1336, 0.2, 157, 0.29, 2590, 0.4, 3821, 0.4, 160, 0.4 }) Sets.CanBeQuickusedOnGamepad = SetFactory(nil, { 50, true, 3199, true, 3124, true, 2350, true, 2351, true, 29, true, 109, true, 1291, true, 4870, true }) Sets.ForcesBreaksSleeping = SetFactory(nil, { 1991, true, 4821, true, 3183, true }) Sets.ForceConsumption = SetFactory(nil, { 2350, false, 4870, false, 2351, false, 2756, false, 4343, true, 4344, true })

-- dyes local dyes = { ['default'] = false } local function LoadBasicColorDyes for itemid = true007,1018 do		dyes[itemid] = true dyes[itemid+12] = true dyes[itemid+31] = true dyes[itemid+44] = true end dyes[2874] = true dyes[2875] = true dyes[2876] = true dyes[2877] = true end local function LoadArmorDyes LoadBasicColorDyes dyes[1050] = true dyes[1037] = true dyes[3558] = true dyes[2871] = true dyes[3559] = true dyes[1031] = true dyes[1032] = true dyes[3550] = true dyes[1063] = true dyes[1035] = true dyes[1036] = true dyes[3552] = true dyes[1065] = true dyes[1033] = true dyes[1034] = true dyes[3551] = true dyes[1064] = true dyes[1068] = true dyes[1069] = true dyes[1070] = true dyes[1066] = true dyes[1067] = true dyes[3556] = true dyes[2869] = true dyes[2870] = true dyes[2873] = true dyes[3026] = true dyes[3027] = true dyes[3553] = true dyes[3554] = true dyes[3555] = true dyes[3190] = true dyes[1969] = true dyes[2864] = true dyes[2872] = true dyes[2878] = true dyes[2879] = true dyes[2885] = true dyes[2884] = true dyes[2883] = true dyes[3025] = true dyes[3039] = true dyes[3040] = true dyes[3041] = true dyes[3042] = true dyes[3560] = true dyes[3561] = true dyes[3562] = true dyes[3024] = true dyes[4663] = true dyes[4662] = true dyes[4778] = true dyes[3534] = true dyes[3028] = true dyes[3557] = true dyes[3978] = true dyes[3038] = true dyes[3600] = true dyes[3597] = true dyes[3598] = true dyes[3599] = true dyes[3533] = true dyes[3535] = true dyes[3526] = true dyes[3527] = true dyes[3528] = true dyes[3529] = true dyes[3530] = true end Sets.dyes = dyes

-- hair dyes local hairDyes = { ['default'] = -1 } hairDyes[1990] = 0 hairDyes[1977] = 1 hairDyes[1978] = 1 hairDyes[1979] = 1 hairDyes[1980] = 1 hairDyes[1981] = 1 hairDyes[1982] = 1 hairDyes[1983] = 1 hairDyes[1984] = 1 hairDyes[1985] = 1 hairDyes[1986] = 1 hairDyes[2863] = 1 hairDyes[3259] = 1 Sets.hairDyes = hairDyes

--?? Sets.IsAMaterial = ItemID.Sets.Factory.CreateBoolSet(new int[0]); see --Sets.StaffMinionSlotsRequired = SetFactory(1, new int[0]); no use. --??? Sets.ColorfulDyeValues = new bool[0]; all dyes not in NonColorfulDyeItems

return Sets