Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- import re
- from dataclasses import dataclass
- from typing import List
- @dataclass
- class RecipesConfig:
- CL_GRENADE_U1: int = 1
- CL_GRENADE_U2A: int = 2
- CL_GRENADE_U2B: int = 3
- MORTAR_U1: int = 4
- MORTAR_U2A: int = 5
- MORTAR_U2B: int = 6
- SHURIKEN_U1: int = 7
- SHURIKEN_U2A: int = 8
- SHURIKEN_U2B: int = 9
- STICKY_BOMB_U1: int = 10
- STICKY_BOMB_U2A: int = 11
- STICKY_BOMB_U2B: int = 12
- SNIPER_RIFLE_U1: int = 13
- SHOTGUN_U1: int = 14
- SHOTGUN_U2A: int = 15
- SHOTGUN_U2B: int = 16
- MINIGUN_U1: int = 17
- MINIGUN_U2A: int = 18
- MINIGUN_U2B: int = 19
- BAZOOKA_U1: int = 20
- BAZOOKA_U2: int = 21
- GRENADE_U1: int = 22
- GRENADE_U2: int = 23
- RIFLE_U1: int = 24
- HOMING_U1: int = 25
- HOMING_U2: int = 26
- HARPOON_U1: int = 27
- HARPOON_U2A: int = 28
- HARPOON_U2B: int = 29
- BLOW_TORCH_U1: int = 30
- BLOW_TORCH_U2: int = 31
- MINE_U1: int = 32
- MINE_U2: int = 33
- UZI_U1: int = 34
- BARRIER_U1: int = 35
- HOLY_GRENADE_U1: int = 36
- SPIDER_U1: int = 37
- DYNAMITE_U1A: int = 38
- DYNAMITE_U1B: int = 39
- CANNON_U1: int = 40
- CANNON_U2: int = 41
- SHOCKER_U1: int = 42
- CARPET_BAZOOKA_U1: int = 43
- CARPET_BAZOOKA_U2A: int = 44
- CARPET_BAZOOKA_U2B: int = 45
- GIRDER_U1: int = 46
- SHEEP_U1A: int = 47
- SHEEP_U1B: int = 48
- EMERGENCY_TELEPORT_U1: int = 49
- EMERGENCY_TELEPORT_U2: int = 50
- BOOMERANG_U1: int = 51
- BOOMERANG_U2: int = 52
- TELE_THROWER_U1: int = 53
- ANTIFREEZE_U1: int = 54
- ANTIFREEZE_U2A: int = 55
- ANTIFREEZE_U2B: int = 56
- PNEUMATIC_DRILL_U1: int = 57
- PARASITE_U1: int = 58
- RIFLE_U2: int = 59
- SNIPER_RIFLE_U2A: int = 60
- SNIPER_RIFLE_U2B: int = 61
- AIR_STRIKE_U1: int = 62
- BLOCKER_U1: int = 63
- BLOCKER_U2A: int = 64
- BLOCKER_U2B: int = 65
- THUNDERBOLT_U1: int = 66
- GAS_GRENADE_U1: int = 67
- SHOCKER_U2: int = 68
- BUNKER_BUSTER_U1: int = 69
- METEOR_U1: int = 70
- TELEPORT_U1A: int = 71
- MOLOTOV_U1: int = 72
- AK_47_U1: int = 73
- CARPET_STRIKE_U1: int = 74
- LASER_GUN_U1: int = 75
- LASER_GUN_U2A: int = 76
- LASER_GUN_U2B: int = 77
- NAPALM_STRIKE_U1: int = 78
- ROPE_U1: int = 79
- GRAVITY_GUN_U1: int = 80
- UFO_U1: int = 81
- UFO_U2: int = 82
- SUPER_SHEEP_U1: int = 83
- SUPER_SHEEP_U2: int = 84
- AK_47_U2: int = 85
- PNEUMATIC_DRILL_U2: int = 86
- BARRIER_U2: int = 87
- BUNKER_BUSTER_U2: int = 88
- HOLY_GRENADE_U2: int = 89
- GRAVITY_GUN_U2: int = 90
- FREEZER_U1: int = 91
- PUSHING_MINE_U1: int = 92
- SLEDGEHAMMER_U1: int = 93
- BAT_U1: int = 94
- WATERMELON_U1: int = 95
- EMERGENCY_TELEPORT_U3: int = 96
- GIRDER_U2: int = 97
- ROPE_U2: int = 98
- SLEDGEHAMMER_U1B: int = 99
- SUPER_SHEEP_U2B: int = 100
- SNOWFLAKE_STRIKE_U1: int = 101
- SNOWFLAKE_STRIKE_U2A: int = 102
- SNOWFLAKE_STRIKE_U2B: int = 103
- TELEPORT_ANCHOR_U1: int = 104
- TELEPORT_ANCHOR_U2: int = 105
- GIRDER_GUN_U1: int = 106
- FIRE_THROWER_U1: int = 107
- DRILL_U1: int = 108
- DRILL_U2: int = 109
- PARASITE_U2: int = 110
- BOULDER_U1: int = 111
- TELEPORT_U1B: int = 112
- GUARDING_BOT_U1A: int = 113
- AIR_BLOCKER_U1: int = 114
- GUARDING_BOT_U1B: int = 115
- BOULDER_U2: int = 116
- FREEZER_U2A: int = 117
- FREEZER_U1B: int = 118
- FREEZER_U2B: int = 119
- GAS_GRENADE_U1B: int = 120
- SPIDER_U1B: int = 121
- HOLY_GRENADE_U2B: int = 122
- AIR_BLOCKER_U1B: int = 123
- SOUL_GUN_U1: int = 124
- SOUL_GUN_U2A: int = 125
- SOUL_GUN_U2B: int = 126
- BAT_U2A: int = 127
- BAT_U2B: int = 128
- AK_47_U1B: int = 129
- AK_47_U2B: int = 130
- GRAVITY_GUN_U3: int = 131
- EMERGENCY_TELEPORT_U3B: int = 132
- GROUND_BREAKER_U1: int = 133
- BOULDER_U3: int = 134
- ENERGY_RIFLE_U1: int = 135
- ENERGY_RIFLE_U2: int = 136
- ENERGY_RIFLE_U3: int = 137
- SNIPER_RIFLE_U3A: int = 138
- SNIPER_RIFLE_U3B: int = 139
- GAS_GRENADE_U2A: int = 140
- GAS_GRENADE_U2B: int = 141
- FIREWORK_U1: int = 142
- FIREWORK_U2: int = 143
- PUPPET_U1: int = 144
- PUPPET_U2A: int = 145
- PUPPET_U2B: int = 146
- THEIF_ATTACK_U1: int = 147
- THEIF_ATTACK_U2A: int = 148
- THEIF_ATTACK_U2B: int = 149
- CIRCUS_CANNON_U1: int = 150
- DISC_LAUNCHER_U1: int = 151
- HELICOPTER_U1: int = 152
- HELICOPTER_U2: int = 153
- VACUUM_GRENADE_U1: int = 154
- CANNON_U3A: int = 155
- CANNON_U3B: int = 156
- ELECTRO_BUOY_CRAFT: int = 901
- POISON_BOBBER_CRAFT: int = 902
- @dataclass
- class ReagentsConfig:
- BATTERY: int = 0
- GEAR: int = 1
- WOOD: int = 2
- STONE: int = 3
- METAL_PLATE: int = 4
- COAL: int = 6
- PIPE: int = 9
- SPRING: int = 10
- UMBRELLA: int = 20
- ACCUMULATOR: int = 21
- HAMMER: int = 22
- GUNPOWDER: int = 23
- STEEL_BAR: int = 24
- WRENCH: int = 26
- CRYSTAL: int = 40
- GENERATOR: int = 41
- MICROCHIP: int = 42
- SNIPER_SCOPE: int = 43
- TITAN_BAR: int = 44
- BADGE: int = 50
- CRATE_KEY: int = 51
- MUTAGEN: int = 52
- SAND: int = 5
- SCREW_BOLT: int = 7
- SCREW_NUT: int = 8
- SCREWDRIVER: int = 25
- @dataclass
- class QuantitativeItemStructure:
- p_id: int | str
- p_quantity: int
- def main():
- RECIPES = [
- RecipesConfig.CL_GRENADE_U1,
- RecipesConfig.CL_GRENADE_U2A,
- RecipesConfig.CL_GRENADE_U2B,
- RecipesConfig.MORTAR_U1,
- RecipesConfig.MORTAR_U2A,
- RecipesConfig.MORTAR_U2B,
- RecipesConfig.SHURIKEN_U1,
- RecipesConfig.SHURIKEN_U2A,
- RecipesConfig.SHURIKEN_U2B,
- RecipesConfig.STICKY_BOMB_U1,
- RecipesConfig.STICKY_BOMB_U2A,
- RecipesConfig.STICKY_BOMB_U2B,
- RecipesConfig.SNIPER_RIFLE_U1,
- RecipesConfig.SHOTGUN_U1,
- RecipesConfig.SHOTGUN_U2A,
- RecipesConfig.SHOTGUN_U2B,
- RecipesConfig.MINIGUN_U1,
- RecipesConfig.MINIGUN_U2A,
- RecipesConfig.MINIGUN_U2B,
- RecipesConfig.BAZOOKA_U1,
- RecipesConfig.BAZOOKA_U2,
- RecipesConfig.GRENADE_U1,
- RecipesConfig.GRENADE_U2,
- RecipesConfig.RIFLE_U1,
- RecipesConfig.HOMING_U1,
- RecipesConfig.HOMING_U2,
- RecipesConfig.HARPOON_U1,
- RecipesConfig.HARPOON_U2A,
- RecipesConfig.HARPOON_U2B,
- RecipesConfig.BLOW_TORCH_U1,
- RecipesConfig.BLOW_TORCH_U2,
- RecipesConfig.MINE_U1,
- RecipesConfig.MINE_U2,
- RecipesConfig.UZI_U1,
- RecipesConfig.BARRIER_U1,
- RecipesConfig.HOLY_GRENADE_U1,
- RecipesConfig.SPIDER_U1,
- RecipesConfig.DYNAMITE_U1A,
- RecipesConfig.DYNAMITE_U1B,
- RecipesConfig.CANNON_U1,
- RecipesConfig.CANNON_U2,
- RecipesConfig.SHOCKER_U1,
- RecipesConfig.CARPET_BAZOOKA_U1,
- RecipesConfig.CARPET_BAZOOKA_U2A,
- RecipesConfig.CARPET_BAZOOKA_U2B,
- RecipesConfig.GIRDER_U1,
- RecipesConfig.SHEEP_U1A,
- RecipesConfig.SHEEP_U1B,
- RecipesConfig.EMERGENCY_TELEPORT_U1,
- RecipesConfig.EMERGENCY_TELEPORT_U2,
- RecipesConfig.BOOMERANG_U1,
- RecipesConfig.BOOMERANG_U2,
- RecipesConfig.TELE_THROWER_U1,
- RecipesConfig.ANTIFREEZE_U1,
- RecipesConfig.ANTIFREEZE_U2A,
- RecipesConfig.ANTIFREEZE_U2B,
- RecipesConfig.PNEUMATIC_DRILL_U1,
- RecipesConfig.PARASITE_U1,
- RecipesConfig.RIFLE_U2,
- RecipesConfig.SNIPER_RIFLE_U2A,
- RecipesConfig.SNIPER_RIFLE_U2B,
- RecipesConfig.AIR_STRIKE_U1,
- RecipesConfig.BLOCKER_U1,
- RecipesConfig.BLOCKER_U2A,
- RecipesConfig.BLOCKER_U2B,
- RecipesConfig.THUNDERBOLT_U1,
- RecipesConfig.GAS_GRENADE_U1,
- RecipesConfig.SHOCKER_U2,
- RecipesConfig.BUNKER_BUSTER_U1,
- RecipesConfig.METEOR_U1,
- RecipesConfig.TELEPORT_U1A,
- RecipesConfig.MOLOTOV_U1,
- RecipesConfig.AK_47_U1,
- RecipesConfig.CARPET_STRIKE_U1,
- RecipesConfig.LASER_GUN_U1,
- RecipesConfig.LASER_GUN_U2A,
- RecipesConfig.LASER_GUN_U2B,
- RecipesConfig.NAPALM_STRIKE_U1,
- RecipesConfig.ROPE_U1,
- RecipesConfig.GRAVITY_GUN_U1,
- RecipesConfig.UFO_U1,
- RecipesConfig.UFO_U2,
- RecipesConfig.SUPER_SHEEP_U1,
- RecipesConfig.SUPER_SHEEP_U2,
- RecipesConfig.AK_47_U2,
- RecipesConfig.PNEUMATIC_DRILL_U2,
- RecipesConfig.BARRIER_U2,
- RecipesConfig.BUNKER_BUSTER_U2,
- RecipesConfig.HOLY_GRENADE_U2,
- RecipesConfig.GRAVITY_GUN_U2,
- RecipesConfig.FREEZER_U1,
- RecipesConfig.PUSHING_MINE_U1,
- RecipesConfig.SLEDGEHAMMER_U1,
- RecipesConfig.BAT_U1,
- RecipesConfig.WATERMELON_U1,
- RecipesConfig.EMERGENCY_TELEPORT_U3,
- RecipesConfig.GIRDER_U2,
- RecipesConfig.ROPE_U2,
- RecipesConfig.SLEDGEHAMMER_U1B,
- RecipesConfig.SUPER_SHEEP_U2B,
- RecipesConfig.SNOWFLAKE_STRIKE_U1,
- RecipesConfig.SNOWFLAKE_STRIKE_U2A,
- RecipesConfig.SNOWFLAKE_STRIKE_U2B,
- RecipesConfig.TELEPORT_ANCHOR_U1,
- RecipesConfig.TELEPORT_ANCHOR_U2,
- RecipesConfig.GIRDER_GUN_U1,
- RecipesConfig.FIRE_THROWER_U1,
- RecipesConfig.DRILL_U1,
- RecipesConfig.DRILL_U2,
- RecipesConfig.PARASITE_U2,
- RecipesConfig.BOULDER_U1,
- RecipesConfig.TELEPORT_U1B,
- RecipesConfig.GUARDING_BOT_U1A,
- RecipesConfig.AIR_BLOCKER_U1,
- RecipesConfig.GUARDING_BOT_U1B,
- RecipesConfig.BOULDER_U2,
- RecipesConfig.FREEZER_U2A,
- RecipesConfig.FREEZER_U1B,
- RecipesConfig.FREEZER_U2B,
- RecipesConfig.GAS_GRENADE_U1B,
- RecipesConfig.SPIDER_U1B,
- RecipesConfig.HOLY_GRENADE_U2B,
- RecipesConfig.AIR_BLOCKER_U1B,
- RecipesConfig.SOUL_GUN_U1,
- RecipesConfig.SOUL_GUN_U2A,
- RecipesConfig.SOUL_GUN_U2B,
- RecipesConfig.BAT_U2A,
- RecipesConfig.BAT_U2B,
- RecipesConfig.AK_47_U1B,
- RecipesConfig.AK_47_U2B,
- RecipesConfig.GRAVITY_GUN_U3,
- RecipesConfig.EMERGENCY_TELEPORT_U3B,
- RecipesConfig.GROUND_BREAKER_U1,
- RecipesConfig.BOULDER_U3,
- RecipesConfig.ENERGY_RIFLE_U1,
- RecipesConfig.ENERGY_RIFLE_U2,
- RecipesConfig.ENERGY_RIFLE_U3,
- RecipesConfig.SNIPER_RIFLE_U3A,
- RecipesConfig.SNIPER_RIFLE_U3B,
- RecipesConfig.GAS_GRENADE_U2A,
- RecipesConfig.GAS_GRENADE_U2B,
- RecipesConfig.FIREWORK_U1,
- RecipesConfig.FIREWORK_U2,
- RecipesConfig.PUPPET_U1,
- RecipesConfig.PUPPET_U2A,
- RecipesConfig.PUPPET_U2B,
- RecipesConfig.THEIF_ATTACK_U1,
- RecipesConfig.THEIF_ATTACK_U2A,
- RecipesConfig.THEIF_ATTACK_U2B,
- RecipesConfig.CIRCUS_CANNON_U1,
- RecipesConfig.DISC_LAUNCHER_U1,
- RecipesConfig.HELICOPTER_U1,
- RecipesConfig.HELICOPTER_U2,
- RecipesConfig.VACUUM_GRENADE_U1,
- RecipesConfig.CANNON_U3A,
- RecipesConfig.CANNON_U3B,
- RecipesConfig.ELECTRO_BUOY_CRAFT,
- RecipesConfig.POISON_BOBBER_CRAFT
- ]
- REAGENTS = [
- ReagentsConfig.BATTERY,
- ReagentsConfig.GEAR,
- ReagentsConfig.WOOD,
- ReagentsConfig.STONE,
- ReagentsConfig.METAL_PLATE,
- ReagentsConfig.COAL,
- ReagentsConfig.PIPE,
- ReagentsConfig.SPRING,
- ReagentsConfig.UMBRELLA,
- ReagentsConfig.ACCUMULATOR,
- ReagentsConfig.HAMMER,
- ReagentsConfig.GUNPOWDER,
- ReagentsConfig.STEEL_BAR,
- ReagentsConfig.WRENCH,
- ReagentsConfig.CRYSTAL,
- ReagentsConfig.GENERATOR,
- ReagentsConfig.MICROCHIP,
- ReagentsConfig.SNIPER_SCOPE,
- ReagentsConfig.TITAN_BAR,
- ReagentsConfig.BADGE,
- ReagentsConfig.CRATE_KEY,
- ReagentsConfig.MUTAGEN,
- ReagentsConfig.SAND,
- ReagentsConfig.SCREW_BOLT,
- ReagentsConfig.SCREW_NUT,
- ReagentsConfig.SCREWDRIVER
- ]
- text = """
- {
- this.recipes = [{
- "id":1,
- "description":"CL_GRENADE.DISTINCT.U1",
- "prevUpgradeId":Weapons.CLUSTER_BOMB,
- "upgradeId":Weapons.CLUSTER_BOMB_UPG_1,
- "reagents":new <QuantitativeItem>[new QuantitativeItem(4,15),new QuantitativeItem(3,25),new QuantitativeItem(26,10)],
- "requiredLevel":10,
- "level":1
- },{
- "id":2,
- "description":"CL_GRENADE.DISTINCT.U2A",
- "prevUpgradeId":Weapons.CLUSTER_BOMB_UPG_1,
- "upgradeId":Weapons.CLUSTER_BOMB_UPG_2A,
- "reagents":new <QuantitativeItem>[new QuantitativeItem(10,30),new QuantitativeItem(23,20),new QuantitativeItem(42,10)],
- "requiredLevel":16,
- "level":2
- },{
- "id":3,
- "description":"CL_GRENADE.DISTINCT.U2B",
- "prevUpgradeId":Weapons.CLUSTER_BOMB_UPG_1,
- "upgradeId":Weapons.CLUSTER_BOMB_UPG_2B,
- "reagents":new <QuantitativeItem>[new QuantitativeItem(0,40),new QuantitativeItem(21,15),new QuantitativeItem(41,12)],
- "requiredLevel":16,
- "level":2
- },{
- "id":4,
- "description":"MORTAR.DISTINCT.U1",
- "prevUpgradeId":Weapons.MORTAR,
- "upgradeId":Weapons.MORTAR_UPG_1,
- "reagents":new <QuantitativeItem>[new QuantitativeItem(3,15),new QuantitativeItem(6,15),new QuantitativeItem(20,12)],
- "requiredLevel":8,
- "level":1
- },{
- "id":5,
- "description":"MORTAR.DISTINCT.U2A",
- "prevUpgradeId":Weapons.MORTAR_UPG_1,
- "upgradeId":Weapons.MORTAR_UPG2A_RADIUS,
- "reagents":new <QuantitativeItem>[new QuantitativeItem(1,20),new QuantitativeItem(22,20),new QuantitativeItem(41,10)],
- "requiredLevel":12,
- "level":2
- },{
- "id":6,
- "description":"MORTAR.DISTINCT.U2B",
- "prevUpgradeId":Weapons.MORTAR_UPG_1,
- "upgradeId":Weapons.MORTAR_UPG2B_DOUBLE_SHOT,
- "reagents":new <QuantitativeItem>[new QuantitativeItem(3,40),new QuantitativeItem(21,10),new QuantitativeItem(44,10)],
- "requiredLevel":12,
- "level":2
- },{
- "id":7,
- "description":"SHURIKEN.DISTINCT.U1",
- "prevUpgradeId":Weapons.SHURIKEN,
- "upgradeId":Weapons.SHURIKEN_UPG_1,
- "reagents":new <QuantitativeItem>[new QuantitativeItem(4,25),new QuantitativeItem(6,18),new QuantitativeItem(22,10)],
- "requiredLevel":8,
- "level":1
- },{
- "id":8,
- "description":"SHURIKEN.DISTINCT.U2A",
- "prevUpgradeId":Weapons.SHURIKEN_UPG_1,
- "upgradeId":Weapons.SHURIKEN_U2A_TRAJECTORY,
- "reagents":new <QuantitativeItem>[new QuantitativeItem(10,35),new QuantitativeItem(24,15),new QuantitativeItem(40,10)],
- "requiredLevel":16,
- "level":2
- },{
- "id":9,
- "description":"SHURIKEN.DISTINCT.U2B",
- "prevUpgradeId":Weapons.SHURIKEN_UPG_1,
- "upgradeId":Weapons.SHURIKEN_U2B_SAW,
- "reagents":new <QuantitativeItem>[new QuantitativeItem(0,25),new QuantitativeItem(20,15),new QuantitativeItem(44,15)],
- "requiredLevel":16,
- "level":2
- },{
- "id":10,
- "description":"STICKY_BOMB.DISTINCT.U1",
- "prevUpgradeId":Weapons.STICKY_GRENADE,
- "upgradeId":Weapons.STICKY_GRENADE_UPG_1,
- "reagents":new <QuantitativeItem>[new QuantitativeItem(0,25),new QuantitativeItem(2,15),new QuantitativeItem(21,10)],
- "requiredLevel":10,
- "level":1
- },{
- "id":11,
- "description":"STICKY_BOMB.DISTINCT.U2A",
- "prevUpgradeId":Weapons.STICKY_GRENADE_UPG_1,
- "upgradeId":Weapons.STICKY_GRENADE_UPG_2A,
- "reagents":new <QuantitativeItem>[new QuantitativeItem(2,40),new QuantitativeItem(23,12),new QuantitativeItem(40,10)],
- "requiredLevel":18,
- "level":2
- },{
- "id":12,
- "description":"STICKY_BOMB.DISTINCT.U2B",
- "prevUpgradeId":Weapons.STICKY_GRENADE_UPG_1,
- "upgradeId":Weapons.STICKY_GRENADE_UPG_2B,
- "reagents":new <QuantitativeItem>[new QuantitativeItem(9,35),new QuantitativeItem(26,20),new QuantitativeItem(42,10)],
- "requiredLevel":18,
- "level":2
- },{
- "id":13,
- "description":"SNIPER_RIFLE.DISTINCT.U1",
- "prevUpgradeId":Weapons.SNIPER_RIFLE,
- "upgradeId":Weapons.SNIPER_RIFLE_UPG_1,
- "reagents":new <QuantitativeItem>[new QuantitativeItem(2,10),new QuantitativeItem(24,18),new QuantitativeItem(43,10)],
- "requiredLevel":10,
- "level":1
- },{
- "id":14,
- "description":"SHOTGUN.DISTINCT.U1",
- "prevUpgradeId":Weapons.SHOTGUN,
- "upgradeId":Weapons.SHOTGUN_UPG_1,
- "reagents":new <QuantitativeItem>[new QuantitativeItem(2,25),new QuantitativeItem(10,20),new QuantitativeItem(23,10)],
- "requiredLevel":10,
- "level":1
- },{
- "id":15,
- "description":"SHOTGUN.DISTINCT.U2A",
- "prevUpgradeId":Weapons.SHOTGUN_UPG_1,
- "upgradeId":Weapons.SHOTGUN_U2A_SLOWING,
- "reagents":new <QuantitativeItem>[new QuantitativeItem(4,40),new QuantitativeItem(22,15),new QuantitativeItem(40,12)],
- "requiredLevel":18,
- "level":2
- },{
- "id":16,
- "description":"SHOTGUN.DISTINCT.U2B",
- "prevUpgradeId":Weapons.SHOTGUN_UPG_1,
- "upgradeId":Weapons.SHOTGUN_U2B_DOUBLE_SHOT,
- "reagents":new <QuantitativeItem>[new QuantitativeItem(6,45),new QuantitativeItem(26,15),new QuantitativeItem(44,10)],
- "requiredLevel":18,
- "level":2
- },{
- "id":17,
- "description":"MINIGUN.DISTINCT.U1",
- "prevUpgradeId":Weapons.MINIGUN,
- "upgradeId":Weapons.MINIGUN_UPG_1,
- "reagents":new <QuantitativeItem>[new QuantitativeItem(1,25),new QuantitativeItem(9,20),new QuantitativeItem(24,15)],
- "requiredLevel":10,
- "level":1
- },{
- "id":18,
- "description":"MINIGUN.DISTINCT.U2A",
- "prevUpgradeId":Weapons.MINIGUN_UPG_1,
- "upgradeId":Weapons.MINIGUN_U2A_REDUCE_ARMOR,
- "reagents":new <QuantitativeItem>[new QuantitativeItem(9,35),new QuantitativeItem(20,15),new QuantitativeItem(41,15)],
- "requiredLevel":16,
- "level":2
- },{
- "id":19,
- "description":"MINIGUN.DISTINCT.U2B",
- "prevUpgradeId":Weapons.MINIGUN_UPG_1,
- "upgradeId":Weapons.MINIGUN_U2B_ROCKET,
- "reagents":new <QuantitativeItem>[new QuantitativeItem(1,35),new QuantitativeItem(21,15),new QuantitativeItem(42,12)],
- "requiredLevel":16,
- "level":2
- },{
- "id":20,
- "description":"BAZOOKA.DISTINCT.U1",
- "prevUpgradeId":Weapons.BAZOOKA,
- "upgradeId":Weapons.BAZOOKA_UPG_1,
- "reagents":new <QuantitativeItem>[new QuantitativeItem(4,4),new QuantitativeItem(3,4),new QuantitativeItem(6,2)],
- "requiredLevel":4,
- "level":1
- },{
- "id":21,
- "description":"BAZOOKA.DISTINCT.U2",
- "prevUpgradeId":Weapons.BAZOOKA_UPG_1,
- "upgradeId":Weapons.BAZOOKA_UPG_2_CUMULATIVE,
- "reagents":new <QuantitativeItem>[new QuantitativeItem(1,20),new QuantitativeItem(6,20),new QuantitativeItem(22,10)],
- "requiredLevel":12,
- "level":2
- },{
- "id":22,
- "description":"GRENADE.DISTINCT.U1",
- "prevUpgradeId":Weapons.GRENADE,
- "upgradeId":Weapons.GRENADE_UPG_1_STUFFED_BOUNCING,
- "reagents":new <QuantitativeItem>[new QuantitativeItem(0,4),new QuantitativeItem(1,4),new QuantitativeItem(10,2)],
- "requiredLevel":4,
- "level":1
- },{
- "id":23,
- "description":"GRENADE.DISTINCT.U2",
- "prevUpgradeId":Weapons.GRENADE_UPG_1_STUFFED_BOUNCING,
- "upgradeId":Weapons.GRENADE_UPG_2,
- "reagents":new <QuantitativeItem>[new QuantitativeItem(0,20),new QuantitativeItem(3,15),new QuantitativeItem(23,12)],
- "requiredLevel":12,
- "level":2
- },{
- "id":24,
- "description":"RIFLE.DISTINCT.U1",
- "prevUpgradeId":Weapons.RIFLE,
- "upgradeId":Weapons.RIFLE_UPG_1,
- "reagents":new <QuantitativeItem>[new QuantitativeItem(2,4),new QuantitativeItem(9,6)],
- "requiredLevel":4,
- "level":1
- },{
- "id":25,
- "description":"HOMING.DISTINCT.U1",
- "prevUpgradeId":Weapons.HOMING_BAZOOKA,
- "upgradeId":Weapons.HOMING_BAZOOKA_UPG_1,
- "reagents":new <QuantitativeItem>[new QuantitativeItem(0,15),new QuantitativeItem(4,15),new QuantitativeItem(20,12)],
- "requiredLevel":8,
- "level":1
- },{
- "id":26,
- "description":"HOMING.DISTINCT.U2",
- "prevUpgradeId":Weapons.HOMING_BAZOOKA_UPG_1,
- "upgradeId":Weapons.HOMING_BAZOOKA_UPG_2,
- "reagents":new <QuantitativeItem>[new QuantitativeItem(10,20),new QuantitativeItem(26,10),new QuantitativeItem(43,10)],
- "requiredLevel":14,
- "level":2
- },{
- "id":27,
- "description":"HARPOON.DISTINCT.U1",
- "prevUpgradeId":Weapons.HARPOON,
- "upgradeId":Weapons.ELECTRIC_HARPOON_UPG_1,
- "reagents":new <QuantitativeItem>[new QuantitativeItem(2,25),new QuantitativeItem(9,15),new QuantitativeItem(43,8)],
- "requiredLevel":10,
- "level":1
- },{
- "id":28,
- "description":"HARPOON.DISTINCT.U2A",
- "prevUpgradeId":Weapons.ELECTRIC_HARPOON_UPG_1,
- "upgradeId":Weapons.ELECTRIC_HARPOON_UPG_2A,
- "reagents":new <QuantitativeItem>[new QuantitativeItem(10,25),new QuantitativeItem(22,20),new QuantitativeItem(44,12)],
- "requiredLevel":20,
- "level":2
- },{
- "id":29,
- "description":"HARPOON.DISTINCT.U2B",
- "prevUpgradeId":Weapons.ELECTRIC_HARPOON_UPG_1,
- "upgradeId":Weapons.ELECTRIC_HARPOON_UPG_2B,
- "reagents":new <QuantitativeItem>[new QuantitativeItem(2,40),new QuantitativeItem(22,30),new QuantitativeItem(42,20)],
- "requiredLevel":30,
- "level":2
- },{
- "id":30,
- "description":"BLOW_TORCH.DISTINCT.U1",
- "prevUpgradeId":Weapons.BLOW_TORCH,
- "upgradeId":Weapons.BLOW_TORCH_UPG_1,
- "reagents":new <QuantitativeItem>[new QuantitativeItem(1,6),new QuantitativeItem(6,2),new QuantitativeItem(9,2)],
- "requiredLevel":4,
- "level":1
- },{
- "id":31,
- "description":"BLOW_TORCH.DISTINCT.U2",
- "prevUpgradeId":Weapons.BLOW_TORCH_UPG_1,
- "upgradeId":Weapons.BLOW_TORCH_UPG_2,
- "reagents":new <QuantitativeItem>[new QuantitativeItem(4,10),new QuantitativeItem(23,10),new QuantitativeItem(26,8)],
- "requiredLevel":12,
- "level":2
- },{
- "id":32,
- "description":"MINE.DISTINCT.U1",
- "prevUpgradeId":Weapons.MINE,
- "upgradeId":Weapons.MINE_UPG_1,
- "reagents":new <QuantitativeItem>[new QuantitativeItem(0,4),new QuantitativeItem(3,4),new QuantitativeItem(10,6)],
- "requiredLevel":6,
- "level":1
- },{
- "id":33,
- "description":"MINE.DISTINCT.U2",
- "prevUpgradeId":Weapons.MINE_UPG_1,
- "upgradeId":Weapons.MINE_UPG_2,
- "reagents":new <QuantitativeItem>[new QuantitativeItem(3,25),new QuantitativeItem(6,20),new QuantitativeItem(26,10)],
- "requiredLevel":18,
- "level":2
- },{
- "id":34,
- "description":"UZI.DISTINCT.U1",
- "prevUpgradeId":Weapons.UZI,
- "upgradeId":Weapons.UZI_UPG_1,
- "reagents":new <QuantitativeItem>[new QuantitativeItem(2,4),new QuantitativeItem(4,4),new QuantitativeItem(6,6)],
- "requiredLevel":6,
- "level":1
- },{
- "id":35,
- "description":"BARRIER.DISTINCT.U1",
- "prevUpgradeId":Weapons.LASER_BARRIER,
- "upgradeId":Weapons.LASER_BARRIER_UPG_1,
- "reagents":new <QuantitativeItem>[new QuantitativeItem(3,15),new QuantitativeItem(20,8),new QuantitativeItem(41,8)],
- "requiredLevel":16,
- "level":1
- },{
- "id":36,
- "description":"HOLY_GRENADE.DISTINCT.U1",
- "prevUpgradeId":Weapons.HOLY_GRENADE,
- "upgradeId":Weapons.HOLY_GRENADE_UPG_1,
- "reagents":new <QuantitativeItem>[new QuantitativeItem(2,20),new QuantitativeItem(24,10),new QuantitativeItem(40,10)],
- "requiredLevel":18,
- "level":1
- },{
- "id":37,
- "description":"SPIDER.DISTINCT.U1",
- "prevUpgradeId":Weapons.SPIDER,
- "upgradeId":Weapons.SPIDER_UPG_1,
- "reagents":new <QuantitativeItem>[new QuantitativeItem(1,20),new QuantitativeItem(4,20),new QuantitativeItem(24,12)],
- "requiredLevel":26,
- "level":1
- },{
- "id":38,
- "description":"DYNAMITE.DISTINCT.U1A",
- "prevUpgradeId":Weapons.DYNAMITE,
- "upgradeId":Weapons.DYNAMITE_U1A_BUNCH,
- "reagents":new <QuantitativeItem>[new QuantitativeItem(3,15),new QuantitativeItem(6,15),new QuantitativeItem(23,12)],
- "requiredLevel":8,
- "level":1
- },{
- "id":39,
- "description":"DYNAMITE.DISTINCT.U1B",
- "prevUpgradeId":Weapons.DYNAMITE,
- "upgradeId":Weapons.DYNAMITE_U1B_KAMIKAZE,
- "reagents":new <QuantitativeItem>[new QuantitativeItem(4,20),new QuantitativeItem(10,20),new QuantitativeItem(21,15)],
- "requiredLevel":14,
- "level":1
- },{
- "id":40,
- "description":"CANNON.DISTINCT.U1",
- "prevUpgradeId":Weapons.CANNON,
- "upgradeId":Weapons.CANNON_UPG_1,
- "reagents":new <QuantitativeItem>[new QuantitativeItem(6,20),new QuantitativeItem(22,12),new QuantitativeItem(40,8)],
- "requiredLevel":16,
- "level":1
- },{
- "id":41,
- "description":"CANNON.DISTINCT.U2",
- "prevUpgradeId":Weapons.CANNON_UPG_1,
- "upgradeId":Weapons.CANNON_UPG_2,
- "reagents":new <QuantitativeItem>[new QuantitativeItem(20,15),new QuantitativeItem(43,12),new QuantitativeItem(44,5)],
- "requiredLevel":22,
- "level":2
- },{
- "id":42,
- "description":"SHOCKER.DISTINCT.U1",
- "prevUpgradeId":Weapons.SHOCKER,
- "upgradeId":Weapons.SHOCKER_UPG_1,
- "reagents":new <QuantitativeItem>[new QuantitativeItem(0,15),new QuantitativeItem(10,10),new QuantitativeItem(26,12)],
- "requiredLevel":6,
- "level":1
- },{
- "id":43,
- "description":"CARPET_BAZOOKA.DISTINCT.U1",
- "prevUpgradeId":Weapons.CARPET_BAZOOKA,
- "upgradeId":Weapons.CARPET_BAZOOKA_UPG_1,
- "reagents":new <QuantitativeItem>[new QuantitativeItem(2,15),new QuantitativeItem(9,15),new QuantitativeItem(20,12)],
- "requiredLevel":8,
- "level":1
- },{
- "id":44,
- "description":"CARPET_BAZOOKA.DISTINCT.U2A",
- "prevUpgradeId":Weapons.CARPET_BAZOOKA_UPG_1,
- "upgradeId":Weapons.CARPET_BAZOOKA_UPG_2A,
- "reagents":new <QuantitativeItem>[new QuantitativeItem(0,20),new QuantitativeItem(24,15),new QuantitativeItem(42,10)],
- "requiredLevel":12,
- "level":2
- },{
- "id":45,
- "description":"CARPET_BAZOOKA.DISTINCT.U2B",
- "prevUpgradeId":Weapons.CARPET_BAZOOKA_UPG_1,
- "upgradeId":Weapons.CARPET_BAZOOKA_UPG_2B,
- "reagents":new <QuantitativeItem>[new QuantitativeItem(4,20),new QuantitativeItem(23,15),new QuantitativeItem(41,10)],
- "requiredLevel":12,
- "level":2
- },{
- "id":46,
- "description":"GIRDER.DISTINCT.U1",
- "prevUpgradeId":Weapons.GIRDER,
- "upgradeId":Weapons.GIRDER_U1_ELASTIC,
- "reagents":new <QuantitativeItem>[new QuantitativeItem(1,20),new QuantitativeItem(24,15),new QuantitativeItem(44,5)],
- "requiredLevel":12,
- "level":1
- },{
- "id":47,
- "description":"SHEEP.DISTINCT.U1A",
- "prevUpgradeId":Weapons.SHEEP,
- "upgradeId":Weapons.SHEEP_U1A_CONTROLLED,
- "reagents":new <QuantitativeItem>[new QuantitativeItem(1,15),new QuantitativeItem(26,15),new QuantitativeItem(41,8)],
- "requiredLevel":22,
- "level":1
- },{
- "id":48,
- "description":"SHEEP.DISTINCT.U1B",
- "prevUpgradeId":Weapons.SHEEP,
- "upgradeId":Weapons.SHEEP_U1B_BURNING,
- "reagents":new <QuantitativeItem>[new QuantitativeItem(6,20),new QuantitativeItem(21,20),new QuantitativeItem(40,12)],
- "requiredLevel":22,
- "level":1
- },{
- "id":49,
- "description":"EMERGENCY_TELEPORT.DISTINCT.U1",
- "prevUpgradeId":Weapons.EMERGENCY_TELEPORT,
- "upgradeId":Weapons.EMERGENCY_TELEPORT_UPG_1,
- "reagents":new <QuantitativeItem>[new QuantitativeItem(9,10),new QuantitativeItem(21,8),new QuantitativeItem(22,8)],
- "requiredLevel":16,
- "level":1
- },{
- "id":50,
- "description":"EMERGENCY_TELEPORT.DISTINCT.U2",
- "prevUpgradeId":Weapons.EMERGENCY_TELEPORT_UPG_1,
- "upgradeId":Weapons.EMERGENCY_TELEPORT_UPG_2,
- "reagents":new <QuantitativeItem>[new QuantitativeItem(4,10),new QuantitativeItem(26,15),new QuantitativeItem(43,10)],
- "requiredLevel":18,
- "level":2
- },{
- "id":51,
- "description":"BOOMERANG.DISTINCT.U1",
- "prevUpgradeId":Weapons.BOOMERANG,
- "upgradeId":Weapons.BOOMERANG_UPG_1,
- "reagents":new <QuantitativeItem>[new QuantitativeItem(2,20),new QuantitativeItem(24,8),new QuantitativeItem(26,8)],
- "requiredLevel":10,
- "level":1
- },{
- "id":52,
- "description":"BOOMERANG.DISTINCT.U2",
- "prevUpgradeId":Weapons.BOOMERANG_UPG_1,
- "upgradeId":Weapons.BOOMERANG_UPG_2,
- "reagents":new <QuantitativeItem>[new QuantitativeItem(20,10),new QuantitativeItem(22,30),new QuantitativeItem(24,15)],
- "requiredLevel":14,
- "level":2
- },{
- "id":53,
- "description":"TELE_THROWER.DISTINCT.U1",
- "prevUpgradeId":Weapons.TELEPORT_THROWER,
- "upgradeId":Weapons.TELEPORT_THROWER_UPG_1,
- "reagents":new <QuantitativeItem>[new QuantitativeItem(20,20),new QuantitativeItem(41,8),new QuantitativeItem(42,12)],
- "requiredLevel":14,
- "level":1
- },{
- "id":54,
- "description":"ANTIFREEZE.DISTINCT.U1",
- "prevUpgradeId":Weapons.ANTIFREEZE,
- "upgradeId":Weapons.ANTIFREEZE_U1_POISON_CURE,
- "reagents":new <QuantitativeItem>[new QuantitativeItem(0,12),new QuantitativeItem(9,12),new QuantitativeItem(23,12)],
- "requiredLevel":12,
- "level":1
- },{
- "id":55,
- "description":"ANTIFREEZE.DISTINCT.U2A",
- "prevUpgradeId":Weapons.ANTIFREEZE_U1_POISON_CURE,
- "upgradeId":Weapons.ANTIFREEZE_U2A_ATTACK,
- "reagents":new <QuantitativeItem>[new QuantitativeItem(10,15),new QuantitativeItem(23,12),new QuantitativeItem(40,10)],
- "requiredLevel":22,
- "level":2
- },{
- "id":56,
- "description":"ANTIFREEZE.DISTINCT.U2B",
- "prevUpgradeId":Weapons.ANTIFREEZE_U1_POISON_CURE,
- "upgradeId":Weapons.ANTIFREEZE_U2B_ARMOR,
- "reagents":new <QuantitativeItem>[new QuantitativeItem(3,15),new QuantitativeItem(21,12),new QuantitativeItem(44,10)],
- "requiredLevel":22,
- "level":2
- },{
- "id":57,
- "description":"PNEUMATIC_DRILL.DISTINCT.U1",
- "prevUpgradeId":Weapons.DRILL,
- "upgradeId":Weapons.DRILL_UPG_1,
- "reagents":new <QuantitativeItem>[new QuantitativeItem(1,2),new QuantitativeItem(4,2),new QuantitativeItem(6,6)],
- "requiredLevel":6,
- "level":1
- },{
- "id":58,
- "description":"PARASITE.DISTINCT.U1",
- "prevUpgradeId":Weapons.PARASITE,
- "upgradeId":Weapons.PARASITE_UPG_1,
- "reagents":new <QuantitativeItem>[new QuantitativeItem(22,18),new QuantitativeItem(40,6),new QuantitativeItem(42,8)],
- "requiredLevel":14,
- "level":1
- },{
- "id":59,
- "description":"RIFLE.DISTINCT.U2",
- "prevUpgradeId":Weapons.RIFLE_UPG_1,
- "upgradeId":Weapons.RIFLE_UPG_2,
- "reagents":new <QuantitativeItem>[new QuantitativeItem(4,20),new QuantitativeItem(23,10),new QuantitativeItem(26,10)],
- "requiredLevel":12,
- "level":2
- },{
- "id":60,
- "description":"SNIPER_RIFLE.DISTINCT.U2A",
- "prevUpgradeId":Weapons.SNIPER_RIFLE_UPG_1,
- "upgradeId":Weapons.SNIPER_RIFLE_UPG_2A,
- "reagents":new <QuantitativeItem>[new QuantitativeItem(23,15),new QuantitativeItem(24,20),new QuantitativeItem(43,10)],
- "requiredLevel":18,
- "level":2
- },{
- "id":61,
- "description":"SNIPER_RIFLE.DISTINCT.U2B",
- "prevUpgradeId":Weapons.SNIPER_RIFLE_UPG_1,
- "upgradeId":Weapons.SNIPER_RIFLE_UPG_2B,
- "reagents":new <QuantitativeItem>[new QuantitativeItem(20,20),new QuantitativeItem(21,18),new QuantitativeItem(43,8)],
- "requiredLevel":14,
- "level":2
- },{
- "id":62,
- "description":"AIR_STRIKE.DISTINCT.U1",
- "prevUpgradeId":Weapons.AIR_STRIKE,
- "upgradeId":Weapons.AIR_STRIKE_UPG_1,
- "reagents":new <QuantitativeItem>[new QuantitativeItem(20,20),new QuantitativeItem(23,15),new QuantitativeItem(43,8)],
- "requiredLevel":24,
- "level":1
- },{
- "id":63,
- "description":"NEGATOR.DISTINCT.U1",
- "prevUpgradeId":Weapons.BLOCKER,
- "upgradeId":Weapons.BLOCKER_UPG_1,
- "reagents":new <QuantitativeItem>[new QuantitativeItem(9,20),new QuantitativeItem(26,18),new QuantitativeItem(44,8)],
- "requiredLevel":22,
- "level":1
- },{
- "id":64,
- "description":"NEGATOR.DISTINCT.U2A",
- "prevUpgradeId":Weapons.BLOCKER_UPG_1,
- "upgradeId":Weapons.BLOCKER_UPG_2A_DARK,
- "reagents":new <QuantitativeItem>[new QuantitativeItem(3,25),new QuantitativeItem(22,25),new QuantitativeItem(42,8)],
- "requiredLevel":30,
- "level":2
- },{
- "id":65,
- "description":"NEGATOR.DISTINCT.U2B",
- "prevUpgradeId":Weapons.BLOCKER_UPG_1,
- "upgradeId":Weapons.BLOCKER_UPG_2B_LIGHT,
- "reagents":new <QuantitativeItem>[new QuantitativeItem(24,20),new QuantitativeItem(26,18),new QuantitativeItem(44,10)],
- "requiredLevel":30,
- "level":2
- },{
- "id":66,
- "description":"THUNDERBOLT.DISTINCT.U1",
- "prevUpgradeId":Weapons.THUNDERBOLT,
- "upgradeId":Weapons.THUNDERBOLT_UPG_1,
- "reagents":new <QuantitativeItem>[new QuantitativeItem(21,20),new QuantitativeItem(40,18),new QuantitativeItem(41,10)],
- "requiredLevel":16,
- "level":1
- },{
- "id":67,
- "description":"GAS_GRENADE.DISTINCT.U1",
- "prevUpgradeId":Weapons.GAS_GRENADE,
- "upgradeId":Weapons.GAS_GRENADE_UPG_1,
- "reagents":new <QuantitativeItem>[new QuantitativeItem(2,25),new QuantitativeItem(23,15),new QuantitativeItem(40,10)],
- "requiredLevel":20,
- "level":1
- },{
- "id":68,
- "description":"SHOCKER.DISTINCT.U2",
- "prevUpgradeId":Weapons.SHOCKER_UPG_1,
- "upgradeId":Weapons.SHOCKER_UPG_2,
- "reagents":new <QuantitativeItem>[new QuantitativeItem(4,20),new QuantitativeItem(9,20),new QuantitativeItem(41,8)],
- "requiredLevel":12,
- "level":2
- },{
- "id":69,
- "description":"BUNKER_BUSTER.DISTINCT.U1",
- "prevUpgradeId":Weapons.BUNKER_BUSTER,
- "upgradeId":Weapons.BUNKER_BUSTER_UPG_1,
- "reagents":new <QuantitativeItem>[new QuantitativeItem(1,20),new QuantitativeItem(24,20),new QuantitativeItem(44,10)],
- "requiredLevel":16,
- "level":1
- },{
- "id":70,
- "description":"METEOR.DISTINCT.U1",
- "prevUpgradeId":Weapons.METEOR,
- "upgradeId":Weapons.METEOR_UPG_1,
- "reagents":new <QuantitativeItem>[new QuantitativeItem(3,20),new QuantitativeItem(20,25),new QuantitativeItem(23,25)],
- "requiredLevel":24,
- "level":1
- },{
- "id":71,
- "description":"TELEPORT.DISTINCT.U1A",
- "prevUpgradeId":Weapons.TELEPORT,
- "upgradeId":Weapons.TELEPORT_UPG_1A,
- "reagents":new <QuantitativeItem>[new QuantitativeItem(0,15),new QuantitativeItem(10,15),new QuantitativeItem(21,10)],
- "requiredLevel":26,
- "level":1
- },{
- "id":72,
- "description":"MOLOTOV.DISTINCT.U1",
- "prevUpgradeId":Weapons.MOLOTOV,
- "upgradeId":Weapons.MOLOTOV_UPG_1,
- "reagents":new <QuantitativeItem>[new QuantitativeItem(6,30),new QuantitativeItem(23,15),new QuantitativeItem(42,8)],
- "requiredLevel":14,
- "level":1
- },{
- "id":73,
- "description":"AK_47.DISTINCT.U1",
- "prevUpgradeId":Weapons.AK_47,
- "upgradeId":Weapons.AK_47_UPG_1,
- "reagents":new <QuantitativeItem>[new QuantitativeItem(2,30),new QuantitativeItem(10,30),new QuantitativeItem(24,12)],
- "requiredLevel":14,
- "level":1
- },{
- "id":74,
- "description":"CARPET_STRIKE.DISTINCT.U1",
- "prevUpgradeId":Weapons.CARPET_STRIKE,
- "upgradeId":Weapons.CARPET_STRIKE_UPG_1,
- "reagents":new <QuantitativeItem>[new QuantitativeItem(3,40),new QuantitativeItem(22,20),new QuantitativeItem(42,15)],
- "requiredLevel":26,
- "level":1
- },{
- "id":75,
- "description":"LASER_GUN.DISTINCT.U1",
- "prevUpgradeId":Weapons.LASER_GUN,
- "upgradeId":Weapons.LASER_GUN_UPG_1,
- "reagents":new <QuantitativeItem>[new QuantitativeItem(0,35),new QuantitativeItem(21,15),new QuantitativeItem(43,10)],
- "requiredLevel":22,
- "level":1
- },{
- "id":76,
- "description":"LASER_GUN.DISTINCT.U2A",
- "prevUpgradeId":Weapons.LASER_GUN_UPG_1,
- "upgradeId":Weapons.LASER_GUN_UPG_2A,
- "reagents":new <QuantitativeItem>[new QuantitativeItem(9,35),new QuantitativeItem(26,20),new QuantitativeItem(40,15)],
- "requiredLevel":24,
- "level":2
- },{
- "id":77,
- "description":"LASER_GUN.DISTINCT.U2B",
- "prevUpgradeId":Weapons.LASER_GUN_UPG_1,
- "upgradeId":Weapons.LASER_GUN_UPG_2B,
- "reagents":new <QuantitativeItem>[new QuantitativeItem(4,45),new QuantitativeItem(41,15),new QuantitativeItem(44,10)],
- "requiredLevel":24,
- "level":2
- },{
- "id":78,
- "description":"NAPALM_STRIKE.DISTINCT.U1",
- "prevUpgradeId":Weapons.NAPALM_STRIKE,
- "upgradeId":Weapons.NAPALM_STRIKE_UPG_1,
- "reagents":new <QuantitativeItem>[new QuantitativeItem(6,25),new QuantitativeItem(26,18),new QuantitativeItem(41,8)],
- "requiredLevel":22,
- "level":1
- },{
- "id":79,
- "description":"ROPE.DISTINCT.U1",
- "prevUpgradeId":Weapons.ROPE,
- "upgradeId":Weapons.ROPE_UPG_1,
- "reagents":new <QuantitativeItem>[new QuantitativeItem(1,25),new QuantitativeItem(10,10),new QuantitativeItem(24,15)],
- "requiredLevel":14,
- "level":1
- },{
- "id":80,
- "description":"GRAVITY_GUN.DISTINCT.U1",
- "prevUpgradeId":Weapons.GRAVITY_GUN,
- "upgradeId":Weapons.GRAVITY_GUN_UPG_1,
- "reagents":new <QuantitativeItem>[new QuantitativeItem(0,20),new QuantitativeItem(1,25),new QuantitativeItem(21,10)],
- "requiredLevel":12,
- "level":1
- },{
- "id":81,
- "description":"UFO.DISTINCT.U1",
- "prevUpgradeId":Weapons.UFO,
- "upgradeId":Weapons.UFO_UPG_1,
- "reagents":new <QuantitativeItem>[new QuantitativeItem(0,20),new QuantitativeItem(1,20),new QuantitativeItem(20,20)],
- "requiredLevel":16,
- "level":1
- },{
- "id":82,
- "description":"UFO.DISTINCT.U2",
- "prevUpgradeId":Weapons.UFO_UPG_1,
- "upgradeId":Weapons.UFO_UPG_2,
- "reagents":new <QuantitativeItem>[new QuantitativeItem(22,25),new QuantitativeItem(24,20),new QuantitativeItem(42,15)],
- "requiredLevel":26,
- "level":2
- },{
- "id":83,
- "description":"SUPER_SHEEP.DISTINCT.U1",
- "prevUpgradeId":Weapons.SUPER_SHEEP,
- "upgradeId":Weapons.SUPER_SHEEP_UPG_1,
- "reagents":new <QuantitativeItem>[new QuantitativeItem(6,25),new QuantitativeItem(23,15),new QuantitativeItem(41,5)],
- "requiredLevel":18,
- "level":1
- },{
- "id":84,
- "description":"SUPER_SHEEP.DISTINCT.U2",
- "prevUpgradeId":Weapons.SUPER_SHEEP_UPG_1,
- "upgradeId":Weapons.SUPER_SHEEP_UPG_2,
- "reagents":new <QuantitativeItem>[new QuantitativeItem(10,35),new QuantitativeItem(21,20),new QuantitativeItem(40,10)],
- "requiredLevel":22,
- "level":2
- },{
- "id":85,
- "description":"AK_47.DISTINCT.U2",
- "prevUpgradeId":Weapons.AK_47_UPG_1,
- "upgradeId":Weapons.AK_47_UPG_2,
- "reagents":new <QuantitativeItem>[new QuantitativeItem(2,40),new QuantitativeItem(26,20),new QuantitativeItem(44,8)],
- "requiredLevel":22,
- "level":2
- },{
- "id":86,
- "description":"PNEUMATIC_DRILL.DISTINCT.U2",
- "prevUpgradeId":Weapons.DRILL_UPG_1,
- "upgradeId":Weapons.DRILL_UPG_2,
- "reagents":new <QuantitativeItem>[new QuantitativeItem(1,20),new QuantitativeItem(6,15),new QuantitativeItem(26,10)],
- "requiredLevel":20,
- "level":2
- },{
- "id":87,
- "description":"BARRIER.DISTINCT.U2",
- "prevUpgradeId":Weapons.LASER_BARRIER_UPG_1,
- "upgradeId":Weapons.LASER_BARRIER_UPG_2,
- "reagents":new <QuantitativeItem>[new QuantitativeItem(20,15),new QuantitativeItem(21,15),new QuantitativeItem(42,8)],
- "requiredLevel":28,
- "level":2
- },{
- "id":88,
- "description":"BUNKER_BUSTER.DISTINCT.U2",
- "prevUpgradeId":Weapons.BUNKER_BUSTER_UPG_1,
- "upgradeId":Weapons.BUNKER_BUSTER_UPG_2,
- "reagents":new <QuantitativeItem>[new QuantitativeItem(3,25),new QuantitativeItem(22,20),new QuantitativeItem(44,12)],
- "requiredLevel":24,
- "level":2
- },{
- "id":89,
- "description":"HOLY_GRENADE.DISTINCT.U2",
- "prevUpgradeId":Weapons.HOLY_GRENADE_UPG_1,
- "upgradeId":Weapons.HOLY_GRENADE_UPG_2,
- "reagents":new <QuantitativeItem>[new QuantitativeItem(9,30),new QuantitativeItem(23,20),new QuantitativeItem(41,10)],
- "requiredLevel":24,
- "level":2
- },{
- "id":90,
- "description":"GRAVITY_GUN.DISTINCT.U2",
- "prevUpgradeId":Weapons.GRAVITY_GUN_UPG_1,
- "upgradeId":Weapons.GRAVITY_GUN_UPG_2,
- "reagents":new <QuantitativeItem>[new QuantitativeItem(22,20),new QuantitativeItem(26,20),new QuantitativeItem(41,10)],
- "requiredLevel":18,
- "level":2
- },{
- "id":91,
- "description":"FREEZER.DISTINCT.U1",
- "prevUpgradeId":Weapons.FREEZING_BAZOOKA,
- "upgradeId":Weapons.FREEZING_BAZOOKA_UPG1A,
- "reagents":new <QuantitativeItem>[new QuantitativeItem(4,25),new QuantitativeItem(20,15),new QuantitativeItem(40,10)],
- "requiredLevel":14,
- "level":1
- },{
- "id":92,
- "description":"PUSHING_MINE.DISTINCT.U1",
- "prevUpgradeId":Weapons.PUSHING_MINE,
- "upgradeId":Weapons.PUSHING_MINE_UPG_1,
- "reagents":new <QuantitativeItem>[new QuantitativeItem(0,30),new QuantitativeItem(21,20),new QuantitativeItem(41,8)],
- "requiredLevel":24,
- "level":1
- },{
- "id":93,
- "description":"SLEDGEHAMMER.DISTINCT.U1",
- "prevUpgradeId":Weapons.SLEDGEHAMMER,
- "upgradeId":Weapons.SLEDGEHAMMER_UPG_1,
- "reagents":new <QuantitativeItem>[new QuantitativeItem(20,20),new QuantitativeItem(40,8),new QuantitativeItem(44,8)],
- "requiredLevel":26,
- "level":1
- },{
- "id":94,
- "description":"BAT.DISTINCT.U1",
- "prevUpgradeId":Weapons.BAT,
- "upgradeId":Weapons.BAT_UPG_1,
- "reagents":new <QuantitativeItem>[new QuantitativeItem(2,30),new QuantitativeItem(24,15),new QuantitativeItem(44,8)],
- "requiredLevel":18,
- "level":1
- },{
- "id":95,
- "description":"WATERMELON.DISTINCT.U1",
- "prevUpgradeId":Weapons.WATERMELON,
- "upgradeId":Weapons.WATERMELON_UPG_1,
- "reagents":new <QuantitativeItem>[new QuantitativeItem(1,30),new QuantitativeItem(10,30),new QuantitativeItem(42,12)],
- "requiredLevel":20,
- "level":1
- },{
- "id":96,
- "description":"EMERGENCY_TELEPORT.DISTINCT.U3",
- "prevUpgradeId":Weapons.EMERGENCY_TELEPORT_UPG_2,
- "upgradeId":Weapons.EMERGENCY_TELEPORT_UPG_3,
- "reagents":new <QuantitativeItem>[new QuantitativeItem(20,15),new QuantitativeItem(24,15),new QuantitativeItem(43,10)],
- "requiredLevel":22,
- "level":3
- },{
- "id":97,
- "description":"GIRDER.DISTINCT.U2",
- "prevUpgradeId":Weapons.GIRDER_U1_ELASTIC,
- "upgradeId":Weapons.GIRDER_U2_TACTIC,
- "reagents":new <QuantitativeItem>[new QuantitativeItem(4,25),new QuantitativeItem(26,15),new QuantitativeItem(44,5)],
- "requiredLevel":18,
- "level":2
- },{
- "id":98,
- "description":"ROPE.DISTINCT.U2",
- "prevUpgradeId":Weapons.ROPE_UPG_1,
- "upgradeId":Weapons.ROPE_UPG_2,
- "reagents":new <QuantitativeItem>[new QuantitativeItem(2,20),new QuantitativeItem(9,20),new QuantitativeItem(43,10)],
- "requiredLevel":20,
- "level":2
- },{
- "id":99,
- "description":"SLEDGEHAMMER.DISTINCT.U1B",
- "prevUpgradeId":Weapons.SLEDGEHAMMER,
- "upgradeId":Weapons.SLEDGEHAMMER_UPG_1B,
- "reagents":new <QuantitativeItem>[new QuantitativeItem(2,25),new QuantitativeItem(22,25),new QuantitativeItem(24,25)],
- "requiredLevel":26,
- "level":1
- },{
- "id":100,
- "description":"SUPER_SHEEP.DISTINCT.U2B",
- "prevUpgradeId":Weapons.SUPER_SHEEP_UPG_1,
- "upgradeId":Weapons.SUPER_SHEEP_UPG_2B,
- "reagents":new <QuantitativeItem>[new QuantitativeItem(6,10),new QuantitativeItem(23,25),new QuantitativeItem(43,15)],
- "requiredLevel":22,
- "level":2
- },{
- "id":101,
- "description":"SNOWFLAKE_STRIKE.DISTINCT.U1",
- "prevUpgradeId":Weapons.SNOWFLAKE_STRIKE,
- "upgradeId":Weapons.SNOWFLAKE_STRIKE_UPG_1,
- "reagents":new <QuantitativeItem>[new QuantitativeItem(20,15),new QuantitativeItem(21,15),new QuantitativeItem(41,15)],
- "requiredLevel":18,
- "level":1
- },{
- "id":102,
- "description":"SNOWFLAKE_STRIKE.DISTINCT.U2A",
- "prevUpgradeId":Weapons.SNOWFLAKE_STRIKE_UPG_1,
- "upgradeId":Weapons.SNOWFLAKE_STRIKE_UPG_2A,
- "reagents":new <QuantitativeItem>[new QuantitativeItem(3,40),new QuantitativeItem(6,40),new QuantitativeItem(23,30)],
- "requiredLevel":24,
- "level":2
- },{
- "id":103,
- "description":"SNOWFLAKE_STRIKE.DISTINCT.U2B",
- "prevUpgradeId":Weapons.SNOWFLAKE_STRIKE_UPG_1,
- "upgradeId":Weapons.SNOWFLAKE_STRIKE_UPG_2B,
- "reagents":new <QuantitativeItem>[new QuantitativeItem(20,20),new QuantitativeItem(21,20),new QuantitativeItem(40,12)],
- "requiredLevel":24,
- "level":2
- },{
- "id":104,
- "description":"TELEPORT_ANCHOR.DISTINCT.U1",
- "prevUpgradeId":Weapons.TELEPORT_ANCHOR,
- "upgradeId":Weapons.TELEPORT_ANCHOR_UPG_1,
- "reagents":new <QuantitativeItem>[new QuantitativeItem(9,15),new QuantitativeItem(20,10),new QuantitativeItem(42,10)],
- "requiredLevel":24,
- "level":1
- },{
- "id":105,
- "description":"TELEPORT_ANCHOR.DISTINCT.U2",
- "prevUpgradeId":Weapons.TELEPORT_ANCHOR_UPG_1,
- "upgradeId":Weapons.TELEPORT_ANCHOR_UPG_2,
- "reagents":new <QuantitativeItem>[new QuantitativeItem(1,20),new QuantitativeItem(21,20),new QuantitativeItem(42,10)],
- "requiredLevel":28,
- "level":2
- },{
- "id":106,
- "description":"GIRDER_GUN.DISTINCT.U1",
- "prevUpgradeId":Weapons.GIRDER_GUN,
- "upgradeId":Weapons.GIRDER_GUN_UPG_1,
- "reagents":new <QuantitativeItem>[new QuantitativeItem(2,15),new QuantitativeItem(22,15),new QuantitativeItem(26,15)],
- "requiredLevel":22,
- "level":1
- },{
- "id":107,
- "description":"FIRE_THROWER.DISTINCT.U1",
- "prevUpgradeId":Weapons.FIRETHROWER,
- "upgradeId":Weapons.FIRETHROWER_UPG_1,
- "reagents":new <QuantitativeItem>[new QuantitativeItem(6,20),new QuantitativeItem(23,15),new QuantitativeItem(43,10)],
- "requiredLevel":20,
- "level":1
- },{
- "id":108,
- "description":"DRILL.DISTINCT.U1",
- "prevUpgradeId":Weapons.DRILL_GUN,
- "upgradeId":Weapons.DRILL_GUN_UPG_1,
- "reagents":new <QuantitativeItem>[new QuantitativeItem(1,10),new QuantitativeItem(26,15),new QuantitativeItem(44,5)],
- "requiredLevel":10,
- "level":1
- },{
- "id":109,
- "description":"DRILL.DISTINCT.U2",
- "prevUpgradeId":Weapons.DRILL_GUN_UPG_1,
- "upgradeId":Weapons.DRILL_GUN_UPG_2,
- "reagents":new <QuantitativeItem>[new QuantitativeItem(4,15),new QuantitativeItem(26,15),new QuantitativeItem(43,8)],
- "requiredLevel":14,
- "level":2
- },{
- "id":110,
- "description":"PARASITE.DISTINCT.U2",
- "prevUpgradeId":Weapons.PARASITE_UPG_1,
- "upgradeId":Weapons.PARASITE_UPG_2,
- "reagents":new <QuantitativeItem>[new QuantitativeItem(0,30),new QuantitativeItem(9,30),new QuantitativeItem(41,12)],
- "requiredLevel":28,
- "level":2
- },{
- "id":111,
- "description":"BOULDER.DISTINCT.U1",
- "prevUpgradeId":Weapons.BOULDER,
- "upgradeId":Weapons.BOULDER_UPG_1,
- "reagents":new <QuantitativeItem>[new QuantitativeItem(3,30),new QuantitativeItem(10,20),new QuantitativeItem(44,10)],
- "requiredLevel":20,
- "level":1
- },{
- "id":112,
- "description":"TELEPORT.DISTINCT.U1B",
- "prevUpgradeId":Weapons.TELEPORT,
- "upgradeId":Weapons.TELEPORT_UPG_1B,
- "reagents":new <QuantitativeItem>[new QuantitativeItem(0,15),new QuantitativeItem(20,10),new QuantitativeItem(40,8)],
- "requiredLevel":26,
- "level":1
- },{
- "id":113,
- "description":"GUARDING_BOT.DISTINCT.U1A",
- "prevUpgradeId":Weapons.GUARDING_BOT,
- "upgradeId":Weapons.GUARDING_BOT_UPG_1A,
- "reagents":new <QuantitativeItem>[new QuantitativeItem(4,20),new QuantitativeItem(24,20),new QuantitativeItem(42,12)],
- "requiredLevel":28,
- "level":1
- },{
- "id":114,
- "description":"AIR_BLOCKER.DISTINCT.U1",
- "prevUpgradeId":Weapons.AIR_BLOCKER,
- "upgradeId":Weapons.AIR_BLOCKER_UPG_1,
- "reagents":new <QuantitativeItem>[new QuantitativeItem(1,30),new QuantitativeItem(22,20),new QuantitativeItem(43,12)],
- "requiredLevel":20,
- "level":1
- },{
- "id":115,
- "description":"GUARDING_BOT.DISTINCT.U1B",
- "prevUpgradeId":Weapons.GUARDING_BOT,
- "upgradeId":Weapons.GUARDING_BOT_UPG_1B,
- "reagents":new <QuantitativeItem>[new QuantitativeItem(2,20),new QuantitativeItem(10,30),new QuantitativeItem(40,10)],
- "requiredLevel":28,
- "level":1
- },{
- "id":116,
- "description":"BOULDER.DISTINCT.U2",
- "prevUpgradeId":Weapons.BOULDER_UPG_1,
- "upgradeId":Weapons.BOULDER_UPG_2,
- "reagents":new <QuantitativeItem>[new QuantitativeItem(3,20),new QuantitativeItem(24,20),new QuantitativeItem(43,8)],
- "requiredLevel":24,
- "level":2
- },{
- "id":117,
- "description":"FREEZER.DISTINCT.U2A",
- "prevUpgradeId":Weapons.FREEZING_BAZOOKA_UPG1A,
- "upgradeId":Weapons.FREEZING_BAZOOKA_UPG2A,
- "reagents":new <QuantitativeItem>[new QuantitativeItem(20,15),new QuantitativeItem(26,20),new QuantitativeItem(44,12)],
- "requiredLevel":20,
- "level":2
- },{
- "id":118,
- "description":"FREEZER.DISTINCT.U1B",
- "prevUpgradeId":Weapons.FREEZING_BAZOOKA,
- "upgradeId":Weapons.FREEZING_BAZOOKA_UPG1B,
- "reagents":new <QuantitativeItem>[new QuantitativeItem(9,25),new QuantitativeItem(24,15),new QuantitativeItem(40,10)],
- "requiredLevel":14,
- "level":1
- },{
- "id":119,
- "description":"FREEZER.DISTINCT.U2B",
- "prevUpgradeId":Weapons.FREEZING_BAZOOKA_UPG1B,
- "upgradeId":Weapons.FREEZING_BAZOOKA_UPG2B,
- "reagents":new <QuantitativeItem>[new QuantitativeItem(20,20),new QuantitativeItem(22,15),new QuantitativeItem(43,12)],
- "requiredLevel":20,
- "level":2
- },{
- "id":120,
- "description":"GAS_GRENADE.DISTINCT.U1B",
- "prevUpgradeId":Weapons.GAS_GRENADE,
- "upgradeId":Weapons.GAS_GRENADE_UPG_1B,
- "reagents":new <QuantitativeItem>[new QuantitativeItem(6,30),new QuantitativeItem(21,15),new QuantitativeItem(41,10)],
- "requiredLevel":20,
- "level":1
- },{
- "id":121,
- "description":"SPIDER.DISTINCT.U1B",
- "prevUpgradeId":Weapons.SPIDER,
- "upgradeId":Weapons.SPIDER_UPG_1B,
- "reagents":new <QuantitativeItem>[new QuantitativeItem(0,25),new QuantitativeItem(4,25),new QuantitativeItem(42,5)],
- "requiredLevel":26,
- "level":1
- },{
- "id":122,
- "description":"HOLY_GRENADE.DISTINCT.U2B",
- "prevUpgradeId":Weapons.HOLY_GRENADE_UPG_1,
- "upgradeId":Weapons.HOLY_GRENADE_UPG_2B,
- "reagents":new <QuantitativeItem>[new QuantitativeItem(23,20),new QuantitativeItem(24,15),new QuantitativeItem(26,15)],
- "requiredLevel":24,
- "level":2
- },{
- "id":123,
- "description":"AIR_BLOCKER.DISTINCT.U1B",
- "prevUpgradeId":Weapons.AIR_BLOCKER,
- "upgradeId":Weapons.AIR_BLOCKER_UPG_1B,
- "reagents":new <QuantitativeItem>[new QuantitativeItem(10,30),new QuantitativeItem(22,20),new QuantitativeItem(44,10)],
- "requiredLevel":20,
- "level":1
- },{
- "id":124,
- "description":"SOUL_GUN.DISTINCT.U1",
- "prevUpgradeId":Weapons.SOUL_GUN,
- "upgradeId":Weapons.SOUL_GUN_UPG_1,
- "reagents":new <QuantitativeItem>[new QuantitativeItem(9,10),new QuantitativeItem(23,10),new QuantitativeItem(43,15)],
- "requiredLevel":20,
- "level":1
- },{
- "id":125,
- "description":"SOUL_GUN.DISTINCT.U2A",
- "prevUpgradeId":Weapons.SOUL_GUN_UPG_1,
- "upgradeId":Weapons.SOUL_GUN_UPG_2A,
- "reagents":new <QuantitativeItem>[new QuantitativeItem(1,35),new QuantitativeItem(20,15),new QuantitativeItem(42,10)],
- "requiredLevel":24,
- "level":2
- },{
- "id":126,
- "description":"SOUL_GUN.DISTINCT.U2B",
- "prevUpgradeId":Weapons.SOUL_GUN_UPG_1,
- "upgradeId":Weapons.SOUL_GUN_UPG_2B,
- "reagents":new <QuantitativeItem>[new QuantitativeItem(9,30),new QuantitativeItem(21,20),new QuantitativeItem(40,8)],
- "requiredLevel":24,
- "level":2
- },{
- "id":127,
- "description":"BAT.DISTINCT.U2A",
- "prevUpgradeId":Weapons.BAT_UPG_1,
- "upgradeId":Weapons.BAT_UPG_2A,
- "reagents":new <QuantitativeItem>[new QuantitativeItem(6,40),new QuantitativeItem(23,20),new QuantitativeItem(41,5)],
- "requiredLevel":26,
- "level":2
- },{
- "id":128,
- "description":"BAT.DISTINCT.U2B",
- "prevUpgradeId":Weapons.BAT_UPG_1,
- "upgradeId":Weapons.BAT_UPG_2B,
- "reagents":new <QuantitativeItem>[new QuantitativeItem(2,30),new QuantitativeItem(22,15),new QuantitativeItem(44,12)],
- "requiredLevel":26,
- "level":2
- },{
- "id":129,
- "description":"AK_47.DISTINCT.U1B",
- "prevUpgradeId":Weapons.AK_47,
- "upgradeId":Weapons.AK_47_UPG_1B,
- "reagents":new <QuantitativeItem>[new QuantitativeItem(3,35),new QuantitativeItem(21,20),new QuantitativeItem(42,10)],
- "requiredLevel":18,
- "level":1
- },{
- "id":130,
- "description":"AK_47.DISTINCT.U2B",
- "prevUpgradeId":Weapons.AK_47_UPG_1B,
- "upgradeId":Weapons.AK_47_UPG_2B,
- "reagents":new <QuantitativeItem>[new QuantitativeItem(10,30),new QuantitativeItem(20,25),new QuantitativeItem(40,20)],
- "requiredLevel":26,
- "level":2
- },{
- "id":131,
- "description":"GRAVITY_GUN.DISTINCT.U3",
- "prevUpgradeId":Weapons.GRAVITY_GUN_UPG_2,
- "upgradeId":Weapons.GRAVITY_GUN_UPG_3,
- "reagents":new <QuantitativeItem>[new QuantitativeItem(1,40),new QuantitativeItem(23,20),new QuantitativeItem(44,15)],
- "requiredLevel":24,
- "level":3
- },{
- "id":132,
- "description":"EMERGENCY_TELEPORT.DISTINCT.U3B",
- "prevUpgradeId":Weapons.EMERGENCY_TELEPORT_UPG_2,
- "upgradeId":Weapons.EMERGENCY_TELEPORT_UPG_3B,
- "reagents":new <QuantitativeItem>[new QuantitativeItem(4,50),new QuantitativeItem(40,30),new QuantitativeItem(42,20)],
- "requiredLevel":30,
- "level":3
- },{
- "id":133,
- "description":"GROUNDBREAKER.DISTINCT.U1",
- "prevUpgradeId":Weapons.GROUND_BREAKER,
- "upgradeId":Weapons.GROUND_BREAKER_UPG_1,
- "reagents":new <QuantitativeItem>[new QuantitativeItem(0,40),new QuantitativeItem(26,30),new QuantitativeItem(41,20)],
- "requiredLevel":30,
- "level":1
- },{
- "id":134,
- "description":"BOULDER.DISTINCT.U3",
- "prevUpgradeId":Weapons.BOULDER_UPG_2,
- "upgradeId":Weapons.BOULDER_UPG_3,
- "reagents":new <QuantitativeItem>[new QuantitativeItem(3,50),new QuantitativeItem(23,20),new QuantitativeItem(41,5)],
- "requiredLevel":28,
- "level":3
- },{
- "id":135,
- "description":"ENERGY_RIFLE.DISTINCT.U1",
- "prevUpgradeId":Weapons.ENERGY_RIFLE,
- "upgradeId":Weapons.ENERGY_RIFLE_UPG_1,
- "reagents":new <QuantitativeItem>[new QuantitativeItem(6,20),new QuantitativeItem(24,15),new QuantitativeItem(41,10)],
- "requiredLevel":26,
- "level":1
- },{
- "id":136,
- "description":"ENERGY_RIFLE.DISTINCT.U2",
- "prevUpgradeId":Weapons.ENERGY_RIFLE_UPG_1,
- "upgradeId":Weapons.ENERGY_RIFLE_UPG_2,
- "reagents":new <QuantitativeItem>[new QuantitativeItem(0,25),new QuantitativeItem(21,20),new QuantitativeItem(42,15)],
- "requiredLevel":28,
- "level":2
- },{
- "id":137,
- "description":"ENERGY_RIFLE.DISTINCT.U3",
- "prevUpgradeId":Weapons.ENERGY_RIFLE_UPG_2,
- "upgradeId":Weapons.ENERGY_RIFLE_UPG_3,
- "reagents":new <QuantitativeItem>[new QuantitativeItem(9,30),new QuantitativeItem(24,25),new QuantitativeItem(43,20)],
- "requiredLevel":30,
- "level":3
- },{
- "id":138,
- "description":"SNIPER_RIFLE.DISTINCT.U3A",
- "prevUpgradeId":Weapons.SNIPER_RIFLE_UPG_2A,
- "upgradeId":Weapons.SNIPER_RIFLE_UPG_3A,
- "reagents":new <QuantitativeItem>[new QuantitativeItem(4,40),new QuantitativeItem(20,30),new QuantitativeItem(43,20)],
- "requiredLevel":26,
- "level":3
- },{
- "id":139,
- "description":"SNIPER_RIFLE.DISTINCT.U3B",
- "prevUpgradeId":Weapons.SNIPER_RIFLE_UPG_2B,
- "upgradeId":Weapons.SNIPER_RIFLE_UPG_3B,
- "reagents":new <QuantitativeItem>[new QuantitativeItem(10,40),new QuantitativeItem(26,30),new QuantitativeItem(44,20)],
- "requiredLevel":22,
- "level":3
- },{
- "id":140,
- "description":"GAS_GRENADE.DISTINCT.U2A",
- "prevUpgradeId":Weapons.GAS_GRENADE_UPG_1,
- "upgradeId":Weapons.GAS_GRENADE_UPG_2A,
- "reagents":new <QuantitativeItem>[new QuantitativeItem(0,30),new QuantitativeItem(22,25),new QuantitativeItem(41,20)],
- "requiredLevel":28,
- "level":2
- },{
- "id":141,
- "description":"GAS_GRENADE.DISTINCT.U2B",
- "prevUpgradeId":Weapons.GAS_GRENADE_UPG_1B,
- "upgradeId":Weapons.GAS_GRENADE_UPG_2B,
- "reagents":new <QuantitativeItem>[new QuantitativeItem(6,30),new QuantitativeItem(24,25),new QuantitativeItem(44,20)],
- "requiredLevel":28,
- "level":2
- },{
- "id":142,
- "description":"FIREWORK.DISTINCT.U1",
- "prevUpgradeId":Weapons.FIREWORK,
- "upgradeId":Weapons.FIREWORK_UPG_1,
- "reagents":new <QuantitativeItem>[new QuantitativeItem(9,30),new QuantitativeItem(21,25),new QuantitativeItem(43,20)],
- "requiredLevel":26,
- "level":1
- },{
- "id":143,
- "description":"FIREWORK.DISTINCT.U2",
- "prevUpgradeId":Weapons.FIREWORK_UPG_1,
- "upgradeId":Weapons.FIREWORK_UPG_2,
- "reagents":new <QuantitativeItem>[new QuantitativeItem(1,40),new QuantitativeItem(23,30),new QuantitativeItem(40,20)],
- "requiredLevel":30,
- "level":2
- },{
- "id":144,
- "description":"PUPPET.DISTINCT.U1",
- "prevUpgradeId":Weapons.PUPPET,
- "upgradeId":Weapons.PUPPET_U1,
- "reagents":new <QuantitativeItem>[new QuantitativeItem(9,30),new QuantitativeItem(21,25),new QuantitativeItem(43,20)],
- "requiredLevel":26,
- "level":1
- },{
- "id":145,
- "description":"PUPPET.DISTINCT.U2A",
- "prevUpgradeId":Weapons.PUPPET_U1,
- "upgradeId":Weapons.PUPPET_U2A,
- "reagents":new <QuantitativeItem>[new QuantitativeItem(0,40),new QuantitativeItem(26,30),new QuantitativeItem(41,20)],
- "requiredLevel":30,
- "level":2
- },{
- "id":146,
- "description":"PUPPET.DISTINCT.U2B",
- "prevUpgradeId":Weapons.PUPPET_U1,
- "upgradeId":Weapons.PUPPET_U2B,
- "reagents":new <QuantitativeItem>[new QuantitativeItem(1,40),new QuantitativeItem(23,30),new QuantitativeItem(40,20)],
- "requiredLevel":30,
- "level":2
- },{
- "id":147,
- "description":"THEIF_ATTACK.DISTINCT.U1",
- "prevUpgradeId":Weapons.THEIF_ATTACK,
- "upgradeId":Weapons.THEIF_ATTACK_U1,
- "reagents":new <QuantitativeItem>[new QuantitativeItem(2,30),new QuantitativeItem(22,25),new QuantitativeItem(44,20)],
- "requiredLevel":26,
- "level":1
- },{
- "id":148,
- "description":"THEIF_ATTACK.DISTINCT.U2A",
- "prevUpgradeId":Weapons.THEIF_ATTACK_U1,
- "upgradeId":Weapons.THEIF_ATTACK_U2A,
- "reagents":new <QuantitativeItem>[new QuantitativeItem(3,40),new QuantitativeItem(24,30),new QuantitativeItem(42,20)],
- "requiredLevel":30,
- "level":2
- },{
- "id":149,
- "description":"THEIF_ATTACK.DISTINCT.U2B",
- "prevUpgradeId":Weapons.THEIF_ATTACK_U1,
- "upgradeId":Weapons.THEIF_ATTACK_U2B,
- "reagents":new <QuantitativeItem>[new QuantitativeItem(10,40),new QuantitativeItem(20,30),new QuantitativeItem(41,20)],
- "requiredLevel":30,
- "level":2
- },{
- "id":150,
- "description":"CIRCUS_CANNON.DISTINCT.U1",
- "prevUpgradeId":Weapons.CIRCUS_CANNON,
- "upgradeId":Weapons.CIRCUS_CANNON_U1,
- "reagents":new <QuantitativeItem>[new QuantitativeItem(6,8),new QuantitativeItem(21,4),new QuantitativeItem(5,1)],
- "requiredLevel":6,
- "level":1
- },{
- "id":151,
- "description":"DISC_LAUNCHER.DISTINCT.U1",
- "prevUpgradeId":Weapons.DISC_LAUNCHER,
- "upgradeId":Weapons.DISC_LAUNCHER_U1,
- "reagents":new <QuantitativeItem>[new QuantitativeItem(4,8),new QuantitativeItem(26,4),new QuantitativeItem(7,1)],
- "requiredLevel":6,
- "level":1
- },{
- "id":152,
- "description":"HELICOPTER.DISTINCT.U1",
- "prevUpgradeId":§8"u§.HELICOPTER,
- "upgradeId":§8"u§.HELICOPTER_U1,
- "reagents":new <QuantitativeItem>[new QuantitativeItem(43,20),new QuantitativeItem(42,20),new QuantitativeItem(25,20)],
- "requiredLevel":30,
- "level":1
- },{
- "id":153,
- "description":"HELICOPTER.DISTINCT.U2",
- "prevUpgradeId":§8"u§.HELICOPTER,
- "upgradeId":§8"u§.HELICOPTER_U2,
- "reagents":new <QuantitativeItem>[new QuantitativeItem(4,60),new QuantitativeItem(44,20),new QuantitativeItem(8,20)],
- "requiredLevel":30,
- "level":1
- },{
- "id":154,
- "description":"VACUUM_GRENADE.DISTINCT.U1",
- "prevUpgradeId":§8"u§.VACUUM_GRENADE,
- "upgradeId":§8"u§.§'%Z§,
- "reagents":new <QuantitativeItem>[new QuantitativeItem(10,70),new QuantitativeItem(21,20),new QuantitativeItem(40,10)],
- "requiredLevel":30,
- "level":1
- },{
- "id":155,
- "description":"CANNON.DISTINCT.U3A",
- "prevUpgradeId":§8"u§.CANNON_UPG_2,
- "upgradeId":§8"u§.CANNON_UPG_3A,
- "reagents":new <QuantitativeItem>[new QuantitativeItem(2,60),new QuantitativeItem(24,35),new QuantitativeItem(43,10)],
- "requiredLevel":28,
- "level":3
- },{
- "id":156,
- "description":"CANNON.DISTINCT.U3B",
- "prevUpgradeId":§8"u§.CANNON_UPG_2,
- "upgradeId":§8"u§.CANNON_UPG_3B_STICKY,
- "reagents":new <QuantitativeItem>[new QuantitativeItem(3,80),new QuantitativeItem(23,25),new QuantitativeItem(44,10)],
- "requiredLevel":28,
- "level":3
- },{
- "id":901,
- "prevUpgradeId":Weapons.ELECTRO_BUOY,
- "upgradeId":Weapons.ELECTRO_BUOY_CRAFT,
- "reagents":new <QuantitativeItem>[new QuantitativeItem(6,10),new QuantitativeItem(5,5),new QuantitativeItem(50,1)],
- "count":5,
- "requiredLevel":12,
- "level":1
- },{
- "id":902,
- "prevUpgradeId":Weapons.POISON_BOBBER,
- "upgradeId":Weapons.POISON_BOBBER_CRAFT,
- "reagents":new <QuantitativeItem>[new QuantitativeItem(9,10),new QuantitativeItem(7,5),new QuantitativeItem(50,1)],
- "count":5,
- "requiredLevel":12,
- "level":1
- }
- """
- # Define regular expressions to extract data from the text
- id_pattern = r'"id":(\d+),'
- reagents_pattern = r'new QuantitativeItem\((\d+),(\d+)\)'
- # Map IDs to constant names
- REAGENTS_NAMES = {
- v: k for k, v in ReagentsConfig.__dict__.items() if not k.startswith('_')
- }
- # Initialize the dictionary to store weapon upgrades
- recipes_tree = {}
- json_blocks = re.findall(r'{(.*?)}', text, re.DOTALL)
- # Loop through each recipe in the text
- for i, recipe_data in enumerate(json_blocks):
- # Extract ID, description, reagents, and requiredLevel using regex
- recipe_id = int(re.search(id_pattern, recipe_data).group(1))
- reagents_matches = re.findall(reagents_pattern, recipe_data)
- required_level = int(re.search(r'"requiredLevel":(\d+),', recipe_data).group(1))
- # Create QuantitativeItemStructure instances with names of constants
- reagents_arr: List[QuantitativeItemStructure] = []
- for item in reagents_matches:
- p_id, p_quantity = item
- p_id = int(p_id)
- p_quantity = int(p_quantity)
- if p_id in REAGENTS_NAMES:
- reagents_arr.append(QuantitativeItemStructure(f"ReagentsConfig.{REAGENTS_NAMES[p_id]}", p_quantity))
- # Create a dictionary to map constant names to values based on test_id
- result = {f"RecipesConfig.{attr}": getattr(RecipesConfig, attr) for attr in dir(RecipesConfig) if not attr.startswith('_') and getattr(RecipesConfig, attr) == recipe_id}
- # Map the recipe ID to the corresponding recipe in RECIPES array
- recipe = next(iter(result))
- # Add the weapon upgrade to the WEAPONS_UPGRADES dictionary
- recipes_tree[recipe] = {"reagents": reagents_arr, "required_level": required_level}
- recipes_tree_str = str(recipes_tree)
- # Remove single quotes around RecipesConfig items
- recipes_tree_str = recipes_tree_str.replace("'", "")
- # Remove p_id= and keep only the ReagentsConfig item
- recipes_tree_str = recipes_tree_str.replace("p_id=", "")
- # Remove p_quantity= and keep only the quantity
- recipes_tree_str = recipes_tree_str.replace("p_quantity=", "")
- # Change ' to " for reagents and requiredLevel
- recipes_tree_res = recipes_tree_str.replace("reagents", '"reagents"').replace("requiredLevel", '"requiredLevel"')
- # Split the text by '}, '
- blocks = recipes_tree_res.split('}, ')
- # Iterate through each block and add a new line at the end
- recipes_tree_res = ""
- for block in blocks:
- recipes_tree_res += block + '},\n'
- # Print the result
- print(recipes_tree_res)
- if __name__ == "__main__":
- main()
Add Comment
Please, Sign In to add comment