package characters import "time" // Character is a struct that holds info on a character type Character struct { Name string `json:"name"` Skin Skin `json:"skin"` Level int `json:"level"` Xp int `json:"xp"` MaxXp int `json:"max_xp"` TotalXp int `json:"total_xp"` Gold int `json:"gold"` Speed int `json:"speed"` MiningLevel int `json:"mining_level"` MiningXp int `json:"mining_xp"` MiningMaxXp int `json:"mining_max_xp"` WoodcuttingLevel int `json:"woodcutting_level"` WoodcuttingXp int `json:"woodcutting_xp"` WoodcuttingMaxXp int `json:"woodcutting_max_xp"` FishingLevel int `json:"fishing_level"` FishingXp int `json:"fishing_xp"` FishingMaxXp int `json:"fishing_max_xp"` WeaponcraftingLevel int `json:"weaponcrafting_level"` WeaponcraftingXp int `json:"weaponcrafting_xp"` WeaponcraftingMaxXp int `json:"weaponcrafting_max_xp"` GearcraftingLevel int `json:"gearcrafting_level"` GearcraftingXp int `json:"gearcrafting_xp"` GearcraftingMaxXp int `json:"gearcrafting_max_xp"` JewelrycraftingLevel int `json:"jewelrycrafting_level"` JewelrycraftingXp int `json:"jewelrycrafting_xp"` JewelrycraftingMaxXp int `json:"jewelrycrafting_max_xp"` CookingLevel int `json:"cooking_level"` CookingXp int `json:"cooking_xp"` CookingMaxXp int `json:"cooking_max_xp"` Hp int `json:"hp"` Haste int `json:"haste"` CriticalStrike int `json:"critical_strike"` Stamina int `json:"stamina"` AttackFire int `json:"attack_fire"` AttackEarth int `json:"attack_earth"` AttackWater int `json:"attack_water"` AttackAir int `json:"attack_air"` DmgFire int `json:"dmg_fire"` DmgEarth int `json:"dmg_earth"` DmgWater int `json:"dmg_water"` DmgAir int `json:"dmg_air"` ResFire int `json:"res_fire"` ResEarth int `json:"res_earth"` ResWater int `json:"res_water"` ResAir int `json:"res_air"` X int `json:"x"` Y int `json:"y"` Cooldown int `json:"cooldown"` CooldownExpiration time.Time `json:"cooldown_expiration"` WeaponSlot string `json:"weapon_slot"` ShieldSlot string `json:"shield_slot"` HelmetSlot string `json:"helmet_slot"` BodyArmorSlot string `json:"body_armor_slot"` LegArmorSlot string `json:"leg_armor_slot"` BootsSlot string `json:"boots_slot"` Ring1Slot string `json:"ring1_slot"` Ring2Slot string `json:"ring2_slot"` AmuletSlot string `json:"amulet_slot"` Artifact1Slot string `json:"artifact1_slot"` Artifact2Slot string `json:"artifact2_slot"` Artifact3Slot string `json:"artifact3_slot"` Consumable1Slot string `json:"consumable1_slot"` Consumable1SlotQuantity int `json:"consumable1_slot_quantity"` Consumable2Slot string `json:"consumable2_slot"` Consumable2SlotQuantity int `json:"consumable2_slot_quantity"` InventorySlot1 string `json:"inventory_slot1"` InventorySlot1Quantity int `json:"inventory_slot1_quantity"` InventorySlot2 string `json:"inventory_slot2"` InventorySlot2Quantity int `json:"inventory_slot2_quantity"` InventorySlot3 string `json:"inventory_slot3"` InventorySlot3Quantity int `json:"inventory_slot3_quantity"` InventorySlot4 string `json:"inventory_slot4"` InventorySlot4Quantity int `json:"inventory_slot4_quantity"` InventorySlot5 string `json:"inventory_slot5"` InventorySlot5Quantity int `json:"inventory_slot5_quantity"` InventorySlot6 string `json:"inventory_slot6"` InventorySlot6Quantity int `json:"inventory_slot6_quantity"` InventorySlot7 string `json:"inventory_slot7"` InventorySlot7Quantity int `json:"inventory_slot7_quantity"` InventorySlot8 string `json:"inventory_slot8"` InventorySlot8Quantity int `json:"inventory_slot8_quantity"` InventorySlot9 string `json:"inventory_slot9"` InventorySlot9Quantity int `json:"inventory_slot9_quantity"` InventorySlot10 string `json:"inventory_slot10"` InventorySlot10Quantity int `json:"inventory_slot10_quantity"` InventorySlot11 string `json:"inventory_slot11"` InventorySlot11Quantity int `json:"inventory_slot11_quantity"` InventorySlot12 string `json:"inventory_slot12"` InventorySlot12Quantity int `json:"inventory_slot12_quantity"` InventorySlot13 string `json:"inventory_slot13"` InventorySlot13Quantity int `json:"inventory_slot13_quantity"` InventorySlot14 string `json:"inventory_slot14"` InventorySlot14Quantity int `json:"inventory_slot14_quantity"` InventorySlot15 string `json:"inventory_slot15"` InventorySlot15Quantity int `json:"inventory_slot15_quantity"` InventorySlot16 string `json:"inventory_slot16"` InventorySlot16Quantity int `json:"inventory_slot16_quantity"` InventorySlot17 string `json:"inventory_slot17"` InventorySlot17Quantity int `json:"inventory_slot17_quantity"` InventorySlot18 string `json:"inventory_slot18"` InventorySlot18Quantity int `json:"inventory_slot18_quantity"` InventorySlot19 string `json:"inventory_slot19"` InventorySlot19Quantity int `json:"inventory_slot19_quantity"` InventorySlot20 string `json:"inventory_slot20"` InventorySlot20Quantity int `json:"inventory_slot20_quantity"` InventoryMaxItems int `json:"inventory_max_items"` Task string `json:"task"` TaskType string `json:"task_type"` TaskProgress int `json:"task_progress"` TaskTotal int `json:"task_total"` } // Skin is a custom type used for the allowed skins type Skin string // allowed skins const ( Man1 Skin = "men1" Man2 Skin = "men2" Man3 Skin = "men3" Woman1 Skin = "women1" Woman2 Skin = "women2" Woman3 Skin = "women3" ) // CharacterMovement is a struct that holds info on the movement of a character type CharacterMovement struct { Cooldown Cooldown Destination Destination Character Character } // Cooldown is a struct that holds info on the remaining time for a given action type Cooldown struct { TotalSeconds int `json:"totalSeconds"` RemainingSeconds int `json:"remainingSeconds"` Expiration time.Time `json:"expiration"` Reason string `json:"reason"` } // Destination is a struct that holds info on a map tile type Destination struct { Name string `json:"name"` X int `json:"x"` Y int `json:"y"` Content any `json:"content"` }