Ir para conteúdo

tibiavnn

Membro
  • Registro em

  • Última visita

Tudo que tibiavnn postou

  1. i can't add premium time to my gamestore please help my ....\data\modules\scripts\gamestore\gamestore.lua -- Parser dofile('data/modules/scripts/gamestore/init.lua') -- Config GameStore.Categories = { { name = "Mounts", state = GameStore.States.STATE_NEW, icons = {"Category_Mounts.png"}, offers = { -- Mount Example : thingId = mountId {name = "Widow Queen", thingId = 1, type = GameStore.OfferTypes.OFFER_TYPE_MOUNT, price = 5, icons = {"o368.png"}, description = "This mount looks so hot!"}, -- Mount Example : thingId = mountId {name = "Racing Bird", thingId = 2, type = GameStore.OfferTypes.OFFER_TYPE_MOUNT, price = 5, icons = {"o369.png"}, description = "This mount looks so hot!"}, -- Mount Example : thingId = mountId {name = "War Bear", thingId = 3, type = GameStore.OfferTypes.OFFER_TYPE_MOUNT, price = 5, icons = {"o370.png"}, description = "This mount looks so hot!"}, -- Mount Example : thingId = mountId {name = "Black Sheep", thingId = 4, type = GameStore.OfferTypes.OFFER_TYPE_MOUNT, price = 5, icons = {"o371.png"}, description = "This mount looks so hot!"}, -- Mount Example : thingId = mountId {name = "Midnight Panther", thingId = 5, type = GameStore.OfferTypes.OFFER_TYPE_MOUNT, price = 5, icons = {"o372.png"}, description = "This mount looks so hot!"}, -- Mount Example : thingId = mountId {name = "Draptor", thingId = 6, type = GameStore.OfferTypes.OFFER_TYPE_MOUNT, price = 5, icons = {"o373.png"}, description = "This mount looks so hot!"}, -- Mount Example : thingId = mountId {name = "Titanica", thingId = 7, type = GameStore.OfferTypes.OFFER_TYPE_MOUNT, price = 5, icons = {"o374.png"}, description = "This mount looks so hot!"}, -- Mount Example : thingId = mountId {name = "Tin Lizzard", thingId = 8, type = GameStore.OfferTypes.OFFER_TYPE_MOUNT, price = 5, icons = {"o375.png"}, description = "This mount looks so hot!"}, -- Mount Example : thingId = mountId {name = "Blazebringer", thingId = 9, type = GameStore.OfferTypes.OFFER_TYPE_MOUNT, price = 5, icons = {"o376.png"}, description = "This mount looks so hot!"}, -- Mount Example : thingId = mountId {name = "Rapid Boar", thingId = 10, type = GameStore.OfferTypes.OFFER_TYPE_MOUNT, price = 5, icons = {"o377.png"}, description = "This mount looks so hot!"}, -- Mount Example : thingId = mountId {name = "Stampor", thingId = 11, type = GameStore.OfferTypes.OFFER_TYPE_MOUNT, price = 5, icons = {"o378.png"}, description = "This mount looks so hot!"}, -- Mount Example : thingId = mountId {name = "Undead Cavebear", thingId = 12, type = GameStore.OfferTypes.OFFER_TYPE_MOUNT, price = 5, icons = {"o379.png"}, description = "This mount looks so hot!"}, -- Mount Example : thingId = mountId {name = "Donkey", thingId = 13, type = GameStore.OfferTypes.OFFER_TYPE_MOUNT, price = 5, icons = {"o387.png"}, description = "This mount looks so hot!"}, -- Mount Example : thingId = mountId {name = "Tiger Slug", thingId = 14, type = GameStore.OfferTypes.OFFER_TYPE_MOUNT, price = 5, icons = {"o388.png"}, description = "This mount looks so hot!"}, -- Mount Example : thingId = mountId {name = "Uniwheel", thingId = 15, type = GameStore.OfferTypes.OFFER_TYPE_MOUNT, price = 5, icons = {"o389.png"}, description = "This mount looks so hot!"}, -- Mount Example : thingId = mountId {name = "Crystal Wolf", thingId = 16, type = GameStore.OfferTypes.OFFER_TYPE_MOUNT, price = 5, icons = {"o390.png"}, description = "This mount looks so hot!"}, -- Mount Example : thingId = mountId {name = "Brown War Horse", thingId = 17, type = GameStore.OfferTypes.OFFER_TYPE_MOUNT, price = 5, icons = {"o392.png"}, description = "This mount looks so hot!"}, -- Mount Example : thingId = mountId {name = "Kingly Deer", thingId = 18, type = GameStore.OfferTypes.OFFER_TYPE_MOUNT, price = 5, icons = {"o401.png"}, description = "This mount looks so hot!"}, -- Mount Example : thingId = mountId {name = "Tamed Panda", thingId = 19, type = GameStore.OfferTypes.OFFER_TYPE_MOUNT, price = 5, icons = {"o402.png"}, description = "This mount looks so hot!"}, -- Mount Example : thingId = mountId {name = "Dromedary", thingId = 20, type = GameStore.OfferTypes.OFFER_TYPE_MOUNT, price = 5, icons = {"o405.png"}, description = "This mount looks so hot!"}, -- Mount Example : thingId = mountId {name = "King Scorpion", thingId = 21, type = GameStore.OfferTypes.OFFER_TYPE_MOUNT, price = 5, icons = {"o406.png"}, description = "This mount looks so hot!"}, -- Mount Example : thingId = mountId {name = "Rented Horse", thingId = 22, type = GameStore.OfferTypes.OFFER_TYPE_MOUNT, price = 5, icons = {"o421.png"}, description = "This mount looks so hot!"}, -- Mount Example : thingId = mountId {name = "Armoured War Horse", thingId = 23, type = GameStore.OfferTypes.OFFER_TYPE_MOUNT, price = 5, icons = {"o426.png"}, description = "This mount looks so hot!"}, -- Mount Example : thingId = mountId {name = "Shadow Draptor", thingId = 24, type = GameStore.OfferTypes.OFFER_TYPE_MOUNT, price = 5, icons = {"o427.png"}, description = "This mount looks so hot!"}, -- Mount Example : thingId = mountId {name = "Rented Horse", thingId = 25, type = GameStore.OfferTypes.OFFER_TYPE_MOUNT, price = 5, icons = {"o437.png"}, description = "This mount looks so hot!"}, -- Mount Example : thingId = mountId {name = "Rented Horse", thingId = 26, type = GameStore.OfferTypes.OFFER_TYPE_MOUNT, price = 5, icons = {"o438.png"}, description = "This mount looks so hot!"}, -- Mount Example : thingId = mountId {name = "Ladybug", thingId = 27, type = GameStore.OfferTypes.OFFER_TYPE_MOUNT, price = 5, icons = {"o447.png"}, description = "This mount looks so hot!"}, -- Mount Example : thingId = mountId {name = "Manta", thingId = 28, type = GameStore.OfferTypes.OFFER_TYPE_MOUNT, price = 5, icons = {"o450.png"}, description = "This mount looks so hot!"}, -- Mount Example : thingId = mountId {name = "Ironblight", thingId = 29, type = GameStore.OfferTypes.OFFER_TYPE_MOUNT, price = 5, icons = {"o502.png"}, description = "This mount looks so hot!"}, -- Mount Example : thingId = mountId {name = "Magma Crawler", thingId = 30, type = GameStore.OfferTypes.OFFER_TYPE_MOUNT, price = 5, icons = {"o503.png"}, description = "This mount looks so hot!"}, -- Mount Example : thingId = mountId {name = "Dragonling", thingId = 31, type = GameStore.OfferTypes.OFFER_TYPE_MOUNT, price = 5, icons = {"o506.png"}, description = "This mount looks so hot!"}, -- Mount Example : thingId = mountId {name = "Gnarlhound", thingId = 32, type = GameStore.OfferTypes.OFFER_TYPE_MOUNT, price = 5, icons = {"o515.png"}, description = "This mount looks so hot!"}, -- Mount Example : thingId = mountId {name = "Crimson Ray", thingId = 33, type = GameStore.OfferTypes.OFFER_TYPE_MOUNT, price = 5, icons = {"o521.png"}, description = "This mount looks so hot!"}, -- Mount Example : thingId = mountId {name = "Steelbeak", thingId = 34, type = GameStore.OfferTypes.OFFER_TYPE_MOUNT, price = 5, icons = {"o522.png"}, description = "This mount looks so hot!"}, -- Mount Example : thingId = mountId {name = "Water Buffalo", thingId = 35, type = GameStore.OfferTypes.OFFER_TYPE_MOUNT, price = 5, icons = {"o526.png"}, description = "This mount looks so hot!"}, -- Mount Example : thingId = mountId {name = "Armoured Scorpion", thingId = 36, type = GameStore.OfferTypes.OFFER_TYPE_MOUNT, price = 5, icons = {"o546.png"}, description = "This mount looks so hot!"}, -- Mount Example : thingId = mountId {name = "Armoured Dragonling", thingId = 37, type = GameStore.OfferTypes.OFFER_TYPE_MOUNT, price = 5, icons = {"o547.png"}, description = "This mount looks so hot!"}, -- Mount Example : thingId = mountId {name = "Armoured Cavebear", thingId = 38, type = GameStore.OfferTypes.OFFER_TYPE_MOUNT, price = 5, icons = {"o548.png"}, description = "This mount looks so hot!"}, -- Mount Example : thingId = mountId {name = "The Hellgrip", thingId = 39, type = GameStore.OfferTypes.OFFER_TYPE_MOUNT, price = 5, icons = {"o559.png"}, description = "This mount looks so hot!"}, -- Mount Example : thingId = mountId {name = "Lion", thingId = 40, type = GameStore.OfferTypes.OFFER_TYPE_MOUNT, price = 5, icons = {"o571.png"}, description = "This mount looks so hot!"}, -- Mount Example : thingId = mountId {name = "Golden Lion", thingId = 41, type = GameStore.OfferTypes.OFFER_TYPE_MOUNT, price = 5, icons = {"o572.png"}, description = "This mount looks so hot!"}, -- Mount Example : thingId = mountId {name = "Shock Head", thingId = 42, type = GameStore.OfferTypes.OFFER_TYPE_MOUNT, price = 5, icons = {"o580.png"}, description = "This mount looks so hot!"}, -- Mount Example : thingId = mountId {name = "Dominus Draptor", thingId = 43, type = GameStore.OfferTypes.OFFER_TYPE_MOUNT, price = 5, icons = {"o596.png"}, description = "This mount looks so hot!"}, -- Mount Example : thingId = mountId {name = "Walker", thingId = 44, type = GameStore.OfferTypes.OFFER_TYPE_MOUNT, price = 5, icons = {"o606.png"}, description = "This mount looks so hot!"}, -- Mount Example : thingId = mountId {name = "Azudocus", thingId = 45, type = GameStore.OfferTypes.OFFER_TYPE_MOUNT, price = 5, icons = {"o621.png"}, description = "This mount looks so hot!"}, -- Mount Example : thingId = mountId {name = "Carpacosaurus", thingId = 46, type = GameStore.OfferTypes.OFFER_TYPE_MOUNT, price = 5, icons = {"o622.png"}, description = "This mount looks so hot!"}, -- Mount Example : thingId = mountId {name = "Death Crawler", thingId = 47, type = GameStore.OfferTypes.OFFER_TYPE_MOUNT, price = 5, icons = {"o624.png"}, description = "This mount looks so hot!"}, -- Mount Example : thingId = mountId {name = "Flamesteed", thingId = 48, type = GameStore.OfferTypes.OFFER_TYPE_MOUNT, price = 5, icons = {"o626.png"}, description = "This mount looks so hot!"}, -- Mount Example : thingId = mountId {name = "Jade Lion", thingId = 49, type = GameStore.OfferTypes.OFFER_TYPE_MOUNT, price = 5, icons = {"o627.png"}, description = "This mount looks so hot!"}, -- Mount Example : thingId = mountId {name = "Jade Pincer", thingId = 50, type = GameStore.OfferTypes.OFFER_TYPE_MOUNT, price = 5, icons = {"o628.png"}, description = "This mount looks so hot!"}, -- Mount Example : thingId = mountId {name = "Nethersteed", thingId = 51, type = GameStore.OfferTypes.OFFER_TYPE_MOUNT, price = 5, icons = {"o629.png"}, description = "This mount looks so hot!"}, -- Mount Example : thingId = mountId {name = "Tempest", thingId = 52, type = GameStore.OfferTypes.OFFER_TYPE_MOUNT, price = 5, icons = {"o630.png"}, description = "This mount looks so hot!"}, -- Mount Example : thingId = mountId {name = "Winter King", thingId = 53, type = GameStore.OfferTypes.OFFER_TYPE_MOUNT, price = 5, icons = {"o631.png"}, description = "This mount looks so hot!"}, -- Mount Example : thingId = mountId {name = "Doombringer", thingId = 54, type = GameStore.OfferTypes.OFFER_TYPE_MOUNT, price = 5, icons = {"o644.png"}, description = "This mount looks so hot!"}, -- Mount Example : thingId = mountId {name = "Woodland Prince", thingId = 55, type = GameStore.OfferTypes.OFFER_TYPE_MOUNT, price = 5, icons = {"o647.png"}, description = "This mount looks so hot!"}, -- Mount Example : thingId = mountId {name = "Hailtorm Fury", thingId = 56, type = GameStore.OfferTypes.OFFER_TYPE_MOUNT, price = 5, icons = {"o648.png"}, description = "This mount looks so hot!"}, -- Mount Example : thingId = mountId {name = "Siegebreaker", thingId = 57, type = GameStore.OfferTypes.OFFER_TYPE_MOUNT, price = 5, icons = {"o649.png"}, description = "This mount looks so hot!"}, -- Mount Example : thingId = mountId {name = "Poisonbane", thingId = 58, type = GameStore.OfferTypes.OFFER_TYPE_MOUNT, price = 5, icons = {"o650.png"}, description = "This mount looks so hot!"}, -- Mount Example : thingId = mountId {name = "Blackpelt", thingId = 59, type = GameStore.OfferTypes.OFFER_TYPE_MOUNT, price = 5, icons = {"o651.png"}, description = "This mount looks so hot!"}, -- Mount Example : thingId = mountId {name = "Golden Dragonfly", thingId = 60, type = GameStore.OfferTypes.OFFER_TYPE_MOUNT, price = 5, icons = {"o669.png"}, description = "This mount looks so hot!"}, -- Mount Example : thingId = mountId {name = "Steel Bee", thingId = 61, type = GameStore.OfferTypes.OFFER_TYPE_MOUNT, price = 5, icons = {"o670.png"}, description = "This mount looks so hot!"}, -- Mount Example : thingId = mountId {name = "Copper Fly", thingId = 62, type = GameStore.OfferTypes.OFFER_TYPE_MOUNT, price = 5, icons = {"o671.png"}, description = "This mount looks so hot!"}, -- Mount Example : thingId = mountId {name = "Tundra Rambler", thingId = 63, type = GameStore.OfferTypes.OFFER_TYPE_MOUNT, price = 5, icons = {"o672.png"}, description = "This mount looks so hot!"}, -- Mount Example : thingId = mountId {name = "Highland Yak", thingId = 64, type = GameStore.OfferTypes.OFFER_TYPE_MOUNT, price = 5, icons = {"o673.png"}, description = "This mount looks so hot!"}, -- Mount Example : thingId = mountId {name = "Glacier Vagabond", thingId = 65, type = GameStore.OfferTypes.OFFER_TYPE_MOUNT, price = 5, icons = {"o674.png"}, description = "This mount looks so hot!"}, -- Mount Example : thingId = mountId {name = "Flying Divan", thingId = 66, type = GameStore.OfferTypes.OFFER_TYPE_MOUNT, price = 5, icons = {"o688.png"}, description = "This mount looks so hot!"}, -- Mount Example : thingId = mountId {name = "Magic Carpet", thingId = 67, type = GameStore.OfferTypes.OFFER_TYPE_MOUNT, price = 5, icons = {"o689.png"}, description = "This mount looks so hot!"}, -- Mount Example : thingId = mountId {name = "Floating Kashmir", thingId = 68, type = GameStore.OfferTypes.OFFER_TYPE_MOUNT, price = 5, icons = {"o690.png"}, description = "This mount looks so hot!"}, -- Mount Example : thingId = mountId {name = "Ringtail Waccoon", thingId = 69, type = GameStore.OfferTypes.OFFER_TYPE_MOUNT, price = 5, icons = {"o691.png"}, description = "This mount looks so hot!"}, -- Mount Example : thingId = mountId {name = "Night Waccoon", thingId = 70, type = GameStore.OfferTypes.OFFER_TYPE_MOUNT, price = 5, icons = {"o692.png"}, description = "This mount looks so hot!"}, -- Mount Example : thingId = mountId {name = "Emerald Waccoon", thingId = 71, type = GameStore.OfferTypes.OFFER_TYPE_MOUNT, price = 5, icons = {"o693.png"}, description = "This mount looks so hot!"}, -- Mount Example : thingId = mountId {name = "Glooth Glider", thingId = 72, type = GameStore.OfferTypes.OFFER_TYPE_MOUNT, price = 5, icons = {"o682.png"}, description = "This mount looks so hot!"}, -- Mount Example : thingId = mountId {name = "Shadow Hart", thingId = 73, type = GameStore.OfferTypes.OFFER_TYPE_MOUNT, price = 5, icons = {"o685.png"}, description = "This mount looks so hot!"}, -- Mount Example : thingId = mountId {name = "Black Stag", thingId = 74, type = GameStore.OfferTypes.OFFER_TYPE_MOUNT, price = 5, icons = {"o686.png"}, description = "This mount looks so hot!"}, -- Mount Example : thingId = mountId {name = "Emperor Deer", thingId = 75, type = GameStore.OfferTypes.OFFER_TYPE_MOUNT, price = 5, icons = {"o687.png"}, description = "This mount looks so hot!"}, -- Mount Example : thingId = mountId {name = "Flitterkatzen", thingId = 76, type = GameStore.OfferTypes.OFFER_TYPE_MOUNT, price = 5, icons = {"o726.png"}, description = "This mount looks so hot!"}, -- Mount Example : thingId = mountId {name = "Venompaw", thingId = 77, type = GameStore.OfferTypes.OFFER_TYPE_MOUNT, price = 5, icons = {"o727.png"}, description = "This mount looks so hot!"}, -- Mount Example : thingId = mountId {name = "Batcat", thingId = 78, type = GameStore.OfferTypes.OFFER_TYPE_MOUNT, price = 5, icons = {"o728.png"}, description = "This mount looks so hot!"}, -- Mount Example : thingId = mountId {name = "Sea Devil", thingId = 79, type = GameStore.OfferTypes.OFFER_TYPE_MOUNT, price = 5, icons = {"o734.png"}, description = "This mount looks so hot!"}, -- Mount Example : thingId = mountId {name = "Coralripper", thingId = 80, type = GameStore.OfferTypes.OFFER_TYPE_MOUNT, price = 5, icons = {"o735.png"}, description = "This mount looks so hot!"}, -- Mount Example : thingId = mountId {name = "Plumfish", thingId = 81, type = GameStore.OfferTypes.OFFER_TYPE_MOUNT, price = 5, icons = {"o736.png"}, description = "This mount looks so hot!"}, -- Mount Example : thingId = mountId {name = "Gorongra", thingId = 82, type = GameStore.OfferTypes.OFFER_TYPE_MOUNT, price = 5, icons = {"o738.png"}, description = "This mount looks so hot!"}, -- Mount Example : thingId = mountId {name = "Noctungra", thingId = 83, type = GameStore.OfferTypes.OFFER_TYPE_MOUNT, price = 5, icons = {"o739.png"}, description = "This mount looks so hot!"}, -- Mount Example : thingId = mountId {name = "Silverneck", thingId = 84, type = GameStore.OfferTypes.OFFER_TYPE_MOUNT, price = 5, icons = {"o740.png"}, description = "This mount looks so hot!"}, -- Mount Example : thingId = mountId {name = "Slagsnare", thingId = 85, type = GameStore.OfferTypes.OFFER_TYPE_MOUNT, price = 5, icons = {"o761.png"}, description = "This mount looks so hot!"}, -- Mount Example : thingId = mountId {name = "Nightstinger", thingId = 86, type = GameStore.OfferTypes.OFFER_TYPE_MOUNT, price = 5, icons = {"o762.png"}, description = "This mount looks so hot!"}, -- Mount Example : thingId = mountId {name = "Razorcreep", thingId = 87, type = GameStore.OfferTypes.OFFER_TYPE_MOUNT, price = 5, icons = {"o763.png"}, description = "This mount looks so hot!"}, -- Mount Example : thingId = mountId {name = "Rift Runner", thingId = 88, type = GameStore.OfferTypes.OFFER_TYPE_MOUNT, price = 5, icons = {"o848.png"}, description = "This mount looks so hot!"}, -- Mount Example : thingId = mountId {name = "Nightdweller", thingId = 89, type = GameStore.OfferTypes.OFFER_TYPE_MOUNT, price = 5, icons = {"o849.png"}, description = "This mount looks so hot!"}, -- Mount Example : thingId = mountId {name = "Frostflare", thingId = 90, type = GameStore.OfferTypes.OFFER_TYPE_MOUNT, price = 5, icons = {"o850.png"}, description = "This mount looks so hot!"}, -- Mount Example : thingId = mountId {name = "Cinderhoof", thingId = 91, type = GameStore.OfferTypes.OFFER_TYPE_MOUNT, price = 5, icons = {"o851.png"}, description = "This mount looks so hot!"}, -- Mount Example : thingId = mountId {name = "Moldpincer", thingId = 92, type = GameStore.OfferTypes.OFFER_TYPE_MOUNT, price = 5, icons = {"o868.png"}, description = "This mount looks so hot!"}, -- Mount Example : thingId = mountId {name = "Bloodcurl", thingId = 93, type = GameStore.OfferTypes.OFFER_TYPE_MOUNT, price = 5, icons = {"o869.png"}, description = "This mount looks so hot!"}, -- Mount Example : thingId = mountId {name = "Leafscuttler", thingId = 94, type = GameStore.OfferTypes.OFFER_TYPE_MOUNT, price = 5, icons = {"o870.png"}, description = "This mount looks so hot!"}, -- Mount Example : thingId = mountId {name = "Sparkion", thingId = 95, type = GameStore.OfferTypes.OFFER_TYPE_MOUNT, price = 5, icons = {"o883.png"}, description = "This mount looks so hot!"}, -- Mount Example : thingId = mountId {name = "Swamp Nnapper", thingId = 96, type = GameStore.OfferTypes.OFFER_TYPE_MOUNT, price = 5, icons = {"o886.png"}, description = "This mount looks so hot!"}, -- Mount Example : thingId = mountId {name = "Mould Shell", thingId = 97, type = GameStore.OfferTypes.OFFER_TYPE_MOUNT, price = 5, icons = {"o887.png"}, description = "This mount looks so hot!"}, -- Mount Example : thingId = mountId {name = "Reed Lurker", thingId = 98, type = GameStore.OfferTypes.OFFER_TYPE_MOUNT, price = 5, icons = {"o888.png"}, description = "This mount looks so hot!"}, -- Mount Example : thingId = mountId {name = "Neon Sparkid", thingId = 99, type = GameStore.OfferTypes.OFFER_TYPE_MOUNT, price = 5, icons = {"o889.png"}, description = "This mount looks so hot!"}, -- Mount Example : thingId = mountId {name = "Vortexion", thingId = 100, type = GameStore.OfferTypes.OFFER_TYPE_MOUNT, price = 5, icons = {"o890.png"}, description = "This mount looks so hot!"}, } }, { name = "Outfits", state = GameStore.States.STATE_NEW, icons = {"Category_Outfits.png"}, offers = { -- Addon Example : thingId = lookType, addon = ( 1 = addon 1, 2 = addon 2, 3 = both addons) {name = "Citizen Addon", thingId = {male=128,female=136}, addon = 3, type = GameStore.OfferTypes.OFFER_TYPE_OUTFIT_ADDON, price = 5, icons = {"o128.png", "o136.png"}}, -- Addon Example : thingId = lookType, addon = ( 1 = addon 1, 2 = addon 2, 3 = both addons) {name = "Hunter Addon", thingId = {male=129,female=137}, addon = 3, type = GameStore.OfferTypes.OFFER_TYPE_OUTFIT_ADDON, price = 5, icons = {"o129.png", "o137.png"}}, -- Addon Example : thingId = lookType, addon = ( 1 = addon 1, 2 = addon 2, 3 = both addons) {name = "Mage Addon", thingId = {male=130,female=138}, addon = 3, type = GameStore.OfferTypes.OFFER_TYPE_OUTFIT_ADDON, price = 5, icons = {"o130.png", "o138.png"}}, -- Addon Example : thingId = lookType, addon = ( 1 = addon 1, 2 = addon 2, 3 = both addons) {name = "Knight Addon", thingId = {male=131,female=139}, addon = 3, type = GameStore.OfferTypes.OFFER_TYPE_OUTFIT_ADDON, price = 5, icons = {"o131.png", "o139.png"}}, -- Addon Example : thingId = lookType, addon = ( 1 = addon 1, 2 = addon 2, 3 = both addons) {name = "Nobleman Addon", thingId = {male=132,female=140}, addon = 3, type = GameStore.OfferTypes.OFFER_TYPE_OUTFIT_ADDON, price = 5, icons = {"o132.png", "o140.png"}}, -- Addon Example : thingId = lookType, addon = ( 1 = addon 1, 2 = addon 2, 3 = both addons) {name = "Summoner Addon", thingId = {male=133,female=141}, addon = 3, type = GameStore.OfferTypes.OFFER_TYPE_OUTFIT_ADDON, price = 5, icons = {"o133.png", "o141.png"}}, -- Addon Example : thingId = lookType, addon = ( 1 = addon 1, 2 = addon 2, 3 = both addons) {name = "Warrior Addon", thingId = {male=134,female=142}, addon = 3, type = GameStore.OfferTypes.OFFER_TYPE_OUTFIT_ADDON, price = 5, icons = {"o134.png", "o142.png"}}, -- Addon Example : thingId = lookType, addon = ( 1 = addon 1, 2 = addon 2, 3 = both addons) {name = "Barbarian Addon", thingId = {male=143,female=147}, addon = 3, type = GameStore.OfferTypes.OFFER_TYPE_OUTFIT_ADDON, price = 5, icons = {"o143.png", "o147.png"}}, -- Addon Example : thingId = lookType, addon = ( 1 = addon 1, 2 = addon 2, 3 = both addons) {name = "Druid Addon", thingId = {male=144,female=148}, addon = 3, type = GameStore.OfferTypes.OFFER_TYPE_OUTFIT_ADDON, price = 5, icons = {"o144.png", "o148.png"}}, -- Addon Example : thingId = lookType, addon = ( 1 = addon 1, 2 = addon 2, 3 = both addons) {name = "Wizard Addon", thingId = {male=145,female=149}, addon = 3, type = GameStore.OfferTypes.OFFER_TYPE_OUTFIT_ADDON, price = 5, icons = {"o145.png", "o149.png"}}, -- Addon Example : thingId = lookType, addon = ( 1 = addon 1, 2 = addon 2, 3 = both addons) {name = "oriental Addon", thingId = {male=146,female=150}, addon = 3, type = GameStore.OfferTypes.OFFER_TYPE_OUTFIT_ADDON, price = 5, icons = {"o146.png", "o150.png"}}, -- Addon Example : thingId = lookType, addon = ( 1 = addon 1, 2 = addon 2, 3 = both addons) {name = "Pirate Addon", thingId = {male=151,female=155}, addon = 3, type = GameStore.OfferTypes.OFFER_TYPE_OUTFIT_ADDON, price = 5, icons = {"o151.png", "o155.png"}}, -- Addon Example : thingId = lookType, addon = ( 1 = addon 1, 2 = addon 2, 3 = both addons) {name = "Assassin Addon", thingId = {male=152,female=156}, addon = 3, type = GameStore.OfferTypes.OFFER_TYPE_OUTFIT_ADDON, price = 5, icons = {"o152.png", "o156.png"}}, -- Addon Example : thingId = lookType, addon = ( 1 = addon 1, 2 = addon 2, 3 = both addons) {name = "Beggar Addon", thingId = {male=153,female=157}, addon = 3, type = GameStore.OfferTypes.OFFER_TYPE_OUTFIT_ADDON, price = 5, icons = {"o153.png", "o157.png"}}, -- Addon Example : thingId = lookType, addon = ( 1 = addon 1, 2 = addon 2, 3 = both addons) {name = "Shaman Addon", thingId = {male=154,female=158}, addon = 3, type = GameStore.OfferTypes.OFFER_TYPE_OUTFIT_ADDON, price = 5, icons = {"o154.png", "o158.png"}}, -- Addon Example : thingId = lookType, addon = ( 1 = addon 1, 2 = addon 2, 3 = both addons) {name = "Norseman Addon", thingId = {male=251,female=252}, addon = 3, type = GameStore.OfferTypes.OFFER_TYPE_OUTFIT_ADDON, price = 5, icons = {"o251.png", "o252.png"}}, -- Addon Example : thingId = lookType, addon = ( 1 = addon 1, 2 = addon 2, 3 = both addons) {name = "Nightmare Addon", thingId = {male=268,female=269}, addon = 3, type = GameStore.OfferTypes.OFFER_TYPE_OUTFIT_ADDON, price = 5, icons = {"o268.png", "o269.png"}}, -- Addon Example : thingId = lookType, addon = ( 1 = addon 1, 2 = addon 2, 3 = both addons) {name = "Jester Addon", thingId = {male=273,female=270}, addon = 3, type = GameStore.OfferTypes.OFFER_TYPE_OUTFIT_ADDON, price = 5, icons = {"o273.png", "o270.png"}}, -- Addon Example : thingId = lookType, addon = ( 1 = addon 1, 2 = addon 2, 3 = both addons) {name = "Brotherhood Addon", thingId = {male=278,female=279}, addon = 3, type = GameStore.OfferTypes.OFFER_TYPE_OUTFIT_ADDON, price = 5, icons = {"o278.png", "o279.png"}}, -- Addon Example : thingId = lookType, addon = ( 1 = addon 1, 2 = addon 2, 3 = both addons) {name = "Demonhunter Addon", thingId = {male=289,female=288}, addon = 3, type = GameStore.OfferTypes.OFFER_TYPE_OUTFIT_ADDON, price = 5, icons = {"o289.png", "o288.png"}}, -- Addon Example : thingId = lookType, addon = ( 1 = addon 1, 2 = addon 2, 3 = both addons) {name = "Yalaharian Addon", thingId = {male=325,female=324}, addon = 3, type = GameStore.OfferTypes.OFFER_TYPE_OUTFIT_ADDON, price = 5, icons = {"o325.png", "o324.png"}}, -- Addon Example : thingId = lookType, addon = ( 1 = addon 1, 2 = addon 2, 3 = both addons) {name = "Warmaster Addon", thingId = {male=335,female=336}, addon = 3, type = GameStore.OfferTypes.OFFER_TYPE_OUTFIT_ADDON, price = 5, icons = {"o335.png", "o336.png"}}, -- Addon Example : thingId = lookType, addon = ( 1 = addon 1, 2 = addon 2, 3 = both addons) {name = "Wayfarer Addon", thingId = {male=367,female=366}, addon = 3, type = GameStore.OfferTypes.OFFER_TYPE_OUTFIT_ADDON, price = 5, icons = {"o367.png", "o366.png"}}, -- Addon Example : thingId = lookType, addon = ( 1 = addon 1, 2 = addon 2, 3 = both addons) {name = "Afflicted Addon", thingId = {male=430,female=431}, addon = 3, type = GameStore.OfferTypes.OFFER_TYPE_OUTFIT_ADDON, price = 5, icons = {"o430.png", "o431.png"}}, -- Addon Example : thingId = lookType, addon = ( 1 = addon 1, 2 = addon 2, 3 = both addons) {name = "Elementalist Addon", thingId = {male=432,female=433}, addon = 3, type = GameStore.OfferTypes.OFFER_TYPE_OUTFIT_ADDON, price = 5, icons = {"o432.png", "o433.png"}}, -- Addon Example : thingId = lookType, addon = ( 1 = addon 1, 2 = addon 2, 3 = both addons) {name = "Deepling Addon", thingId = {male=463,female=464}, addon = 3, type = GameStore.OfferTypes.OFFER_TYPE_OUTFIT_ADDON, price = 5, icons = {"o463.png", "o464.png"}}, -- Addon Example : thingId = lookType, addon = ( 1 = addon 1, 2 = addon 2, 3 = both addons) {name = "Insectoid Addon", thingId = {male=465,female=466}, addon = 3, type = GameStore.OfferTypes.OFFER_TYPE_OUTFIT_ADDON, price = 5, icons = {"o465.png", "o466.png"}}, -- Addon Example : thingId = lookType, addon = ( 1 = addon 1, 2 = addon 2, 3 = both addons) {name = "Entrepreneur Addon", thingId = {male=472,female=471}, addon = 3, type = GameStore.OfferTypes.OFFER_TYPE_OUTFIT_ADDON, price = 5, icons = {"o472.png", "o471.png"}}, -- Addon Example : thingId = lookType, addon = ( 1 = addon 1, 2 = addon 2, 3 = both addons) {name = "Crystal Warlord Addon", thingId = {male=512,female=513}, addon = 3, type = GameStore.OfferTypes.OFFER_TYPE_OUTFIT_ADDON, price = 5, icons = {"o512.png", "o513.png"}}, -- Addon Example : thingId = lookType, addon = ( 1 = addon 1, 2 = addon 2, 3 = both addons) {name = "Soil Guardian Addon", thingId = {male=516,female=514}, addon = 3, type = GameStore.OfferTypes.OFFER_TYPE_OUTFIT_ADDON, price = 5, icons = {"o516.png", "o514.png"}}, -- Addon Example : thingId = lookType, addon = ( 1 = addon 1, 2 = addon 2, 3 = both addons) {name = "Demon Addon", thingId = {male=541,female=542}, addon = 3, type = GameStore.OfferTypes.OFFER_TYPE_OUTFIT_ADDON, price = 5, icons = {"o541.png", "o542.png"}}, -- Addon Example : thingId = lookType, addon = ( 1 = addon 1, 2 = addon 2, 3 = both addons) {name = "Cave Explorer Addon", thingId = {male=544,female=575}, addon = 3, type = GameStore.OfferTypes.OFFER_TYPE_OUTFIT_ADDON, price = 5, icons = {"o544.png", "o575.png"}}, -- Addon Example : thingId = lookType, addon = ( 1 = addon 1, 2 = addon 2, 3 = both addons) {name = "Dream Warden Addon", thingId = {male=577,female=578}, addon = 3, type = GameStore.OfferTypes.OFFER_TYPE_OUTFIT_ADDON, price = 5, icons = {"o577.png", "o578.png"}}, -- Addon Example : thingId = lookType, addon = ( 1 = addon 1, 2 = addon 2, 3 = both addons) {name = "Glooth Engineer Addon", thingId = {male=610,female=618}, addon = 3, type = GameStore.OfferTypes.OFFER_TYPE_OUTFIT_ADDON, price = 5, icons = {"o610.png", "o618.png"}}, -- Addon Example : thingId = lookType, addon = ( 1 = addon 1, 2 = addon 2, 3 = both addons) {name = "Champion Addon", thingId = {male=633,female=632}, addon = 3, type = GameStore.OfferTypes.OFFER_TYPE_OUTFIT_ADDON, price = 5, icons = {"o633.png", "o632.png"}}, -- Addon Example : thingId = lookType, addon = ( 1 = addon 1, 2 = addon 2, 3 = both addons) {name = "Conjurer Addon", thingId = {male=634,female=635}, addon = 3, type = GameStore.OfferTypes.OFFER_TYPE_OUTFIT_ADDON, price = 5, icons = {"o634.png", "o635.png"}}, -- Addon Example : thingId = lookType, addon = ( 1 = addon 1, 2 = addon 2, 3 = both addons) {name = "Beastmaster Addon", thingId = {male=637,female=636}, addon = 3, type = GameStore.OfferTypes.OFFER_TYPE_OUTFIT_ADDON, price = 5, icons = {"o637.png", "o636.png"}}, -- Addon Example : thingId = lookType, addon = ( 1 = addon 1, 2 = addon 2, 3 = both addons) {name = "Chaos Acolyte Addon", thingId = {male=665,female=664}, addon = 3, type = GameStore.OfferTypes.OFFER_TYPE_OUTFIT_ADDON, price = 5, icons = {"o665.png", "o664.png"}}, -- Addon Example : thingId = lookType, addon = ( 1 = addon 1, 2 = addon 2, 3 = both addons) {name = "Death Herald Addon", thingId = {male=667,female=666}, addon = 3, type = GameStore.OfferTypes.OFFER_TYPE_OUTFIT_ADDON, price = 5, icons = {"o667.png", "o666.png"}}, -- Addon Example : thingId = lookType, addon = ( 1 = addon 1, 2 = addon 2, 3 = both addons) {name = "Ranger Addon", thingId = {male=684,female=683}, addon = 3, type = GameStore.OfferTypes.OFFER_TYPE_OUTFIT_ADDON, price = 5, icons = {"o684.png", "o683.png"}}, -- Addon Example : thingId = lookType, addon = ( 1 = addon 1, 2 = addon 2, 3 = both addons) {name = "Ceremonial Garb Addon", thingId = {male=695,female=694}, addon = 3, type = GameStore.OfferTypes.OFFER_TYPE_OUTFIT_ADDON, price = 5, icons = {"o695.png", "o694.png"}}, -- Addon Example : thingId = lookType, addon = ( 1 = addon 1, 2 = addon 2, 3 = both addons) {name = "Puppeteer Addon", thingId = {male=697,female=696}, addon = 3, type = GameStore.OfferTypes.OFFER_TYPE_OUTFIT_ADDON, price = 5, icons = {"o697.png", "o696.png"}}, -- Addon Example : thingId = lookType, addon = ( 1 = addon 1, 2 = addon 2, 3 = both addons) {name = "Spirit Caller Addon", thingId = {male=699,female=698}, addon = 3, type = GameStore.OfferTypes.OFFER_TYPE_OUTFIT_ADDON, price = 5, icons = {"o699.png", "o698.png"}}, -- Addon Example : thingId = lookType, addon = ( 1 = addon 1, 2 = addon 2, 3 = both addons) {name = "Evoker Addon", thingId = {male=725,female=724}, addon = 3, type = GameStore.OfferTypes.OFFER_TYPE_OUTFIT_ADDON, price = 5, icons = {"o725.png", "o724.png"}}, -- Addon Example : thingId = lookType, addon = ( 1 = addon 1, 2 = addon 2, 3 = both addons) {name = "Seaweaver Addon", thingId = {male=733,female=732}, addon = 3, type = GameStore.OfferTypes.OFFER_TYPE_OUTFIT_ADDON, price = 5, icons = {"o733.png", "o732.png"}}, -- Addon Example : thingId = lookType, addon = ( 1 = addon 1, 2 = addon 2, 3 = both addons) {name = "Recruiter Addon", thingId = {male=746,female=745}, addon = 3, type = GameStore.OfferTypes.OFFER_TYPE_OUTFIT_ADDON, price = 5, icons = {"o746.png", "o745.png"}}, -- Addon Example : thingId = lookType, addon = ( 1 = addon 1, 2 = addon 2, 3 = both addons) {name = "Sea Dog Addon", thingId = {male=750,female=749}, addon = 3, type = GameStore.OfferTypes.OFFER_TYPE_OUTFIT_ADDON, price = 5, icons = {"o750.png", "o749.png"}}, -- Addon Example : thingId = lookType, addon = ( 1 = addon 1, 2 = addon 2, 3 = both addons) {name = "Royal Pumpkin Addon", thingId = {male=760,female=759}, addon = 3, type = GameStore.OfferTypes.OFFER_TYPE_OUTFIT_ADDON, price = 5, icons = {"o760.png", "o759.png"}}, -- Addon Example : thingId = lookType, addon = ( 1 = addon 1, 2 = addon 2, 3 = both addons) {name = "Rift Warrior Addon", thingId = {male=846,female=845}, addon = 3, type = GameStore.OfferTypes.OFFER_TYPE_OUTFIT_ADDON, price = 5, icons = {"o846.png", "o845.png"}}, -- Addon Example : thingId = lookType, addon = ( 1 = addon 1, 2 = addon 2, 3 = both addons) {name = "Winter Warden Addon", thingId = {male=853,female=852}, addon = 3, type = GameStore.OfferTypes.OFFER_TYPE_OUTFIT_ADDON, price = 5, icons = {"o853.png", "o852.png"}}, -- Addon Example : thingId = lookType, addon = ( 1 = addon 1, 2 = addon 2, 3 = both addons) {name = "Philosopher Addon", thingId = {male=874,female=873}, addon = 3, type = GameStore.OfferTypes.OFFER_TYPE_OUTFIT_ADDON, price = 5, icons = {"o874.png", "o873.png"}}, -- Addon Example : thingId = lookType, addon = ( 1 = addon 1, 2 = addon 2, 3 = both addons) {name = "Arena Champion Addon", thingId = {male=884,female=885}, addon = 3, type = GameStore.OfferTypes.OFFER_TYPE_OUTFIT_ADDON, price = 5, icons = {"o884.png", "o885.png"}}, } }, { name = "Items", state = GameStore.States.STATE_NEW, icons = {"Category_Items.png"}, offers = { -- Item Example : thingId = itemId {name = "Yalahari Mask", thingId = 9778, count = 1, type = GameStore.OfferTypes.OFFER_TYPE_ITEM, price = 8, icons = {"9778.png"}, description = "Become rich!"}, {name = "Goldem Helmet", thingId = 2471, count = 1, type = GameStore.OfferTypes.OFFER_TYPE_ITEM, price = 10, icons = {"2471.png"}, description = "Become rich!"}, {name = "Prismatic Helmet", thingId = 18403, count = 1, type = GameStore.OfferTypes.OFFER_TYPE_ITEM, price = 8, icons = {"18403.png"}, description = "Become rich!"}, {name = "Gill Gugel", thingId = 18398, count = 1, type = GameStore.OfferTypes.OFFER_TYPE_ITEM, price = 8, icons = {"18398.png"}, description = "Become rich!"}, {name = "Elite Draken Helmet", thingId = 12645, count = 1, type = GameStore.OfferTypes.OFFER_TYPE_ITEM, price = 8, icons = {"12645.png"}, description = "Become rich!"}, {name = "Werewolf Helmet", thingId = 24718, count = 1, type = GameStore.OfferTypes.OFFER_TYPE_ITEM, price = 8, icons = {"24718.png"}, description = "Become rich!"}, {name = "Depth Galea", thingId = 15408, count = 1, type = GameStore.OfferTypes.OFFER_TYPE_ITEM, price = 8, icons = {"15408.png"}, description = "Become rich!"}, --Armorid-- {name = "Demon Armor", thingId = 2494, count = 1, type = GameStore.OfferTypes.OFFER_TYPE_ITEM, price = 5, icons = {"2494.png"}, description = "Become rich!"}, {name = "Fire Born Giant Armor", thingId = 8881, count = 1, type = GameStore.OfferTypes.OFFER_TYPE_ITEM, price = 5, icons = {"8881.png"}, description = "Become rich!"}, {name = "Royal Draken Mail", thingId = 12642, count = 1, type = GameStore.OfferTypes.OFFER_TYPE_ITEM, price = 5, icons = {"12642.png"}, description = "Become rich!"}, {name = "Gill Coat", thingId = 18399, count = 1, type = GameStore.OfferTypes.OFFER_TYPE_ITEM, price = 5, icons = {"18399.png"}, description = "Become rich!"}, {name = "Depth Lorica", thingId = 15407, count = 1, type = GameStore.OfferTypes.OFFER_TYPE_ITEM, price = 10, icons = {"15407.png"}, description = "Become rich!"}, {name = "Furios Frock", thingId = 21725, count = 1, type = GameStore.OfferTypes.OFFER_TYPE_ITEM, price = 10, icons = {"21725.png"}, description = "Become rich!"}, {name = "Ornate Chestplate", thingId = 15406, count = 1, type = GameStore.OfferTypes.OFFER_TYPE_ITEM, price = 10, icons = {"15406.png"}, description = "Become rich!"}, {name = "Earthborn Titan Armor", thingId = 8882, count = 1, type = GameStore.OfferTypes.OFFER_TYPE_ITEM, price = 5, icons = {"8882.png"}, description = "Become rich!"}, {name = "Wind Born Colossus Armor", thingId = 8883, count = 1, type = GameStore.OfferTypes.OFFER_TYPE_ITEM, price = 5, icons = {"8883.png"}, description = "Become rich!"}, {name = "Master Acher's Armor", thingId = 8888, count = 1, type = GameStore.OfferTypes.OFFER_TYPE_ITEM, price = 5, icons = {"8888.png"}, description = "Become rich!"}, --Legsid-- {name = "Demon Legs", thingId = 2495, count = 1, type = GameStore.OfferTypes.OFFER_TYPE_ITEM, price = 5, icons = {"2495.png"}, description = "Become rich!"}, {name = "Grasshopper Legs", thingId = 15490, count = 1, type = GameStore.OfferTypes.OFFER_TYPE_ITEM, price = 5, icons = {"15490.png"}, description = "Become rich!"}, {name = "Depth Ocrea", thingId = 15409, count = 1, type = GameStore.OfferTypes.OFFER_TYPE_ITEM, price = 5, icons = {"15409.png"}, description = "Become rich!"}, {name = "Primatic Legs", thingId = 18405, count = 1, type = GameStore.OfferTypes.OFFER_TYPE_ITEM, price = 5, icons = {"18405.png"}, description = "Become rich!"}, {name = "Gill Legs", thingId = 18400, count = 1, type = GameStore.OfferTypes.OFFER_TYPE_ITEM, price = 10, icons = {"18400.png"}, description = "Become rich!"}, {name = "Ornate Legs", thingId = 15412, count = 1, type = GameStore.OfferTypes.OFFER_TYPE_ITEM, price = 8, icons = {"15412.png"}, description = "Become rich!"}, {name = "Ornate Chestplate", thingId = 15406, count = 1, type = GameStore.OfferTypes.OFFER_TYPE_ITEM, price = 10, icons = {"15406.png"}, description = "Become rich!"}, {name = "Dwarven Legs", thingId = 2504, count = 1, type = GameStore.OfferTypes.OFFER_TYPE_ITEM, price = 8, icons = {"2504.png"}, description = "Become rich!"}, {name = "Icy Culotte", thingId = 21700, count = 1, type = GameStore.OfferTypes.OFFER_TYPE_ITEM, price = 10, icons = {"21700.png"}, description = "Become rich!"}, --Bootsid-- {name = "Boots of Haste", thingId = 2195, count = 1, type = GameStore.OfferTypes.OFFER_TYPE_ITEM, price = 2, icons = {"2195.png"}, description = "Become rich!"}, {name = "Golden Boots", thingId = 2646, count = 1, type = GameStore.OfferTypes.OFFER_TYPE_ITEM, price = 5, icons = {"2646.png"}, description = "Become rich!"}, {name = "Pair Soft Boots", thingId = 2640, count = 1, type = GameStore.OfferTypes.OFFER_TYPE_ITEM, price = 10, icons = {"2640.png"}, description = "Become rich!"}, --Shieldid-- {name = "Depth Scutum", thingId = 15411, count = 1, type = GameStore.OfferTypes.OFFER_TYPE_ITEM, price = 5, icons = {"15411.png"}, description = "Become rich!"}, {name = "Shield of Corruption", thingId = 12644, count = 1, type = GameStore.OfferTypes.OFFER_TYPE_ITEM, price = 6, icons = {"12644.png"}, description = "Become rich!"}, {name = "Prismatic Shield", thingId = 18410, count = 1, type = GameStore.OfferTypes.OFFER_TYPE_ITEM, price = 5, icons = {"18410.png"}, description = "Become rich!"}, {name = "Ornate Shield", thingId = 15413, count = 1, type = GameStore.OfferTypes.OFFER_TYPE_ITEM, price = 5, icons = {"15413.png"}, description = "Become rich!"}, {name = "Spelbook of Vigilance", thingId = 18401, count = 1, type = GameStore.OfferTypes.OFFER_TYPE_ITEM, price = 10, icons = {"18401.png"}, description = "Become rich!"}, {name = "Spellbook of Ancient Arcana ", thingId = 16112, count = 1, type = GameStore.OfferTypes.OFFER_TYPE_ITEM, price = 10, icons = {"16112.png"}, description = "Become rich!"}, {name = "Umbral spellbook", thingId = 22423, count = 1, type = GameStore.OfferTypes.OFFER_TYPE_ITEM, price = 10, icons = {"22423.png"}, description = "Become rich!"}, {name = "Umbral Master Spellbook", thingId = 22424, count = 1, type = GameStore.OfferTypes.OFFER_TYPE_ITEM, price = 15, icons = {"22424.png"}, description = "Become rich!"}, {name = "Earthborn Titan Armor", thingId = 8882, count = 1, type = GameStore.OfferTypes.OFFER_TYPE_ITEM, price = 5, icons = {"8882.png"}, description = "Become rich!"}, {name = "Great Shield", thingId = 2522, count = 1, type = GameStore.OfferTypes.OFFER_TYPE_ITEM, price = 15, icons = {"2522.png"}, description = "Become rich!"}, {name = "Blessed Shield", thingId = 2523, count = 1, type = GameStore.OfferTypes.OFFER_TYPE_ITEM, price = 15, icons = {"2523.png"}, description = "Become rich!"}, } }, { name = "Sorcerer", state = GameStore.States.STATE_NEW, icons = {"Category_Sorc.png"}, offers = { -- Item Example : thingId = itemId {name = "Thundermind Raiment", thingId = 25192, count = 1, type = GameStore.OfferTypes.OFFER_TYPE_ITEM, price = 12, icons = {"25192.png"}, description = "Become rich!"}, {name = "Frostmind Raiment", thingId = 25193, count = 1, type = GameStore.OfferTypes.OFFER_TYPE_ITEM, price = 12, icons = {"25193.png"}, description = "Become rich!"}, {name = "Earthmind Raiment", thingId = 25191, count = 1, type = GameStore.OfferTypes.OFFER_TYPE_ITEM, price = 12, icons = {"25191.png"}, description = "Become rich!"}, {name = "Firemind Raiment", thingId = 25190, count = 1, type = GameStore.OfferTypes.OFFER_TYPE_ITEM, price = 12, icons = {"25190.png"}, description = "Become rich!"}, {name = "Wand of Defiance", thingId = 18390, count = 1, type = GameStore.OfferTypes.OFFER_TYPE_ITEM, price = 6, icons = {"18390.png"}, description = "Become rich!"}, {name = "Spelbook of Dark Mysteries", thingId = 8918, count = 1, type = GameStore.OfferTypes.OFFER_TYPE_ITEM, price = 5, icons = {"8918.png"}, description = "Become rich!"}, {name = "Wand of Everblazing", thingId = 18409, count = 1, type = GameStore.OfferTypes.OFFER_TYPE_ITEM, price = 6, icons = {"18409.png"}, description = "Become rich!"}, } }, { name = "Knight", state = GameStore.States.STATE_NEW, icons = {"Category_Knight.png"}, offers = { -- Item Example : thingId = itemId {name = "Earthmind Raiment", thingId = 25191, count = 1, type = GameStore.OfferTypes.OFFER_TYPE_ITEM, price = 12, icons = {"25191.png"}, description = "Become rich!"}, {name = "Earthheart Platemail", thingId = 25179, count = 1, type = GameStore.OfferTypes.OFFER_TYPE_ITEM, price = 12, icons = {"25179.png"}, description = "Become rich!"}, {name = "Earthheart Hauberk", thingId = 25178, count = 1, type = GameStore.OfferTypes.OFFER_TYPE_ITEM, price = 12, icons = {"25178.png"}, description = "Become rich!"}, {name = "Frostheart Platemail", thingId = 25185, count = 1, type = GameStore.OfferTypes.OFFER_TYPE_ITEM, price = 12, icons = {"25185.png"}, description = "Become rich!"}, {name = "Frostheart Hauberk", thingId = 25184, count = 1, type = GameStore.OfferTypes.OFFER_TYPE_ITEM, price = 12, icons = {"25184.png"}, description = "Become rich!"}, {name = "Frostheart Cuirass", thingId = 25183, count = 1, type = GameStore.OfferTypes.OFFER_TYPE_ITEM, price = 12, icons = {"25183.png"}, description = "Become rich!"}, {name = "Thunderheart Platemail", thingId = 25182, count = 1, type = GameStore.OfferTypes.OFFER_TYPE_ITEM, price = 12, icons = {"25182.png"}, description = "Become rich!"}, {name = "Thunderheart Hauberk", thingId = 25181, count = 1, type = GameStore.OfferTypes.OFFER_TYPE_ITEM, price = 12, icons = {"25181.png"}, description = "Become rich!"}, {name = "Thunderheart Cuirass", thingId = 25180, count = 1, type = GameStore.OfferTypes.OFFER_TYPE_ITEM, price = 12, icons = {"25180.png"}, description = "Become rich!"}, {name = "Fireheart Platemail", thingId = 25176, count = 1, type = GameStore.OfferTypes.OFFER_TYPE_ITEM, price = 12, icons = {"25176.png"}, description = "Become rich!"}, {name = "Fireheart Hauberk", thingId = 25175, count = 1, type = GameStore.OfferTypes.OFFER_TYPE_ITEM, price = 12, icons = {"25175.png"}, description = "Become rich!"}, {name = "Fireheart Cuirass", thingId = 25174, count = 1, type = GameStore.OfferTypes.OFFER_TYPE_ITEM, price = 12, icons = {"25174.png"}, description = "Become rich!"}, {name = "Shiny Blade", thingId = 18465, count = 1, type = GameStore.OfferTypes.OFFER_TYPE_ITEM, price = 6, icons = {"18465.png"}, description = "Become rich!"}, {name = "Crystaline Axe ", thingId = 18451, count = 1, type = GameStore.OfferTypes.OFFER_TYPE_ITEM, price = 6, icons = {"18451.png"}, description = "Become rich!"}, {name = "Mycological Mace", thingId = 18452, count = 1, type = GameStore.OfferTypes.OFFER_TYPE_ITEM, price = 6, icons = {"18452.png"}, description = "Become rich!"}, {name = "Umbral Blade", thingId = 22399, count = 1, type = GameStore.OfferTypes.OFFER_TYPE_ITEM, price = 8, icons = {"22399.png"}, description = "Become rich!"}, {name = "Umbral Masterblade", thingId = 22400, count = 1, type = GameStore.OfferTypes.OFFER_TYPE_ITEM, price = 12, icons = {"22400.png"}, description = "Become rich!"}, {name = "umbral Slayer", thingId = 22402, count = 1, type = GameStore.OfferTypes.OFFER_TYPE_ITEM, price = 8, icons = {"22402.png"}, description = "Become rich!"}, {name = "Umbral Hammer", thingId = 22414, count = 1, type = GameStore.OfferTypes.OFFER_TYPE_ITEM, price = 8, icons = {"22414.png"}, description = "Become rich!"}, {name = "Umbral Master Hammer", thingId = 22415, count = 1, type = GameStore.OfferTypes.OFFER_TYPE_ITEM, price = 12, icons = {"22415.png"}, description = "Become rich!"}, {name = "Umbral Mace", thingId = 22411, count = 1, type = GameStore.OfferTypes.OFFER_TYPE_ITEM, price = 8, icons = {"22411.png"}, description = "Become rich!"}, {name = "Umbral master Chopper", thingId = 22409, count = 1, type = GameStore.OfferTypes.OFFER_TYPE_ITEM, price = 12, icons = {"22409.png"}, description = "Become rich!"}, {name = "Umbral Mater Axe", thingId = 22406, count = 1, type = GameStore.OfferTypes.OFFER_TYPE_ITEM, price = 12, icons = {"22406.png"}, description = "Become rich!"}, {name = "Umbral Axe", thingId = 22405, count = 1, type = GameStore.OfferTypes.OFFER_TYPE_ITEM, price = 8, icons = {"22405.png"}, description = "Become rich!"}, {name = "Umbral Master Slayer", thingId = 22403, count = 1, type = GameStore.OfferTypes.OFFER_TYPE_ITEM, price = 12, icons = {"22403.png"}, description = "Become rich!"}, {name = "Umbral Chopper", thingId = 22408, count = 1, type = GameStore.OfferTypes.OFFER_TYPE_ITEM, price = 8, icons = {"22408.png"}, description = "Become rich!"}, } }, { name = "Paladin", state = GameStore.States.STATE_NEW, icons = {"Category_Pally.png"}, offers = { -- Item Example : thingId = itemId {name = "Firesoul Tabard", thingId = 25186, count = 1, type = GameStore.OfferTypes.OFFER_TYPE_ITEM, price = 12, icons = {"25186.png"}, description = "Become rich!"}, {name = "Frostsoul Tabard", thingId = 25189, count = 1, type = GameStore.OfferTypes.OFFER_TYPE_ITEM, price = 12, icons = {"25189.png"}, description = "Become rich!"}, {name = "Thundersoul Tabard", thingId = 25188, count = 1, type = GameStore.OfferTypes.OFFER_TYPE_ITEM, price = 12, icons = {"25188.png"}, description = "Become rich!"}, {name = "Earthsoul Tabard", thingId = 25187, count = 1, type = GameStore.OfferTypes.OFFER_TYPE_ITEM, price = 12, icons = {"25187.png"}, description = "Become rich!"}, {name = "Crystal Crossbow", thingId = 18453, count = 1, type = GameStore.OfferTypes.OFFER_TYPE_ITEM, price = 6, icons = {"18453.png"}, description = "Become rich!"}, {name = "Mycological Bow", thingId = 18454, count = 1, type = GameStore.OfferTypes.OFFER_TYPE_ITEM, price = 6, icons = {"18454.png"}, description = "Become rich!"}, {name = "Umbral bow", thingId = 22417, count = 1, type = GameStore.OfferTypes.OFFER_TYPE_ITEM, price = 6, icons = {"22417.png"}, description = "Become rich!"}, {name = "Umbral Master bow", thingId = 22418, count = 1, type = GameStore.OfferTypes.OFFER_TYPE_ITEM, price = 10, icons = {"22418.png"}, description = "Become rich!"}, {name = "Umbral Crossbow", thingId = 22420, count = 1, type = GameStore.OfferTypes.OFFER_TYPE_ITEM, price = 8, icons = {"22420.png"}, description = "Become rich!"}, {name = "Umbral Master Crossbow", thingId = 22421, count = 1, type = GameStore.OfferTypes.OFFER_TYPE_ITEM, price = 10, icons = {"22421.png"}, description = "Become rich!"}, } }, { name = "Druid", state = GameStore.States.STATE_NEW, icons = {"Category_Druid.png"}, offers = { -- Item Example : thingId = itemId {name = "Thundermind Raiment", thingId = 25192, count = 1, type = GameStore.OfferTypes.OFFER_TYPE_ITEM, price = 12, icons = {"25192.png"}, description = "Become rich!"}, {name = "Frostmind Raiment", thingId = 25193, count = 1, type = GameStore.OfferTypes.OFFER_TYPE_ITEM, price = 12, icons = {"25193.png"}, description = "Become rich!"}, {name = "Earthmind Raiment", thingId = 25191, count = 1, type = GameStore.OfferTypes.OFFER_TYPE_ITEM, price = 12, icons = {"25191.png"}, description = "Become rich!"}, {name = "Firemind Raiment", thingId = 25190, count = 1, type = GameStore.OfferTypes.OFFER_TYPE_ITEM, price = 12, icons = {"25190.png"}, description = "Become rich!"}, {name = "Glacial Rod", thingId = 18412, count = 1, type = GameStore.OfferTypes.OFFER_TYPE_ITEM, price = 6, icons = {"18412.png"}, description = "Become rich!"}, {name = "Muck Rod", thingId = 18411, count = 1, type = GameStore.OfferTypes.OFFER_TYPE_ITEM, price = 4, icons = {"18411.png"}, description = "Become rich!"}, {name = "Spelbook of Dark Mysteries", thingId = 8918, count = 1, type = GameStore.OfferTypes.OFFER_TYPE_ITEM, price = 150, icons = {"8918.png"}, description = "Become rich!"}, } }, { name = "Items Extra", state = GameStore.States.STATE_NEW, icons = {"Category_Gold.png"}, offers = { -- Item Example : thingId = itemId {name = "Crystal Coin", thingId = 2160, count = 100, type = GameStore.OfferTypes.OFFER_TYPE_STACKABLE, price = 2, icons = {"Product_CrystalCoin.png"}, description = "Become rich!"}, -- Item Example : thingId = itemId {name = "Crystal Coin", thingId = 2160, count = 1000, type = GameStore.OfferTypes.OFFER_TYPE_STACKABLE, price = 15, icons = {"Product_CrystalCoin.png"}, description = "Become rich!"}, -- Item Example : thingId = itemId {name = "Blood Herbs", thingId = 2798, count = 10, type = GameStore.OfferTypes.OFFER_TYPE_STACKABLE, price = 4, icons = {"2798.png"}, description = "Become rich!"}, -- Item Example : thingId = itemId {name = "Zaoan Chess Box", thingId = 20620, count = 1, type = GameStore.OfferTypes.OFFER_TYPE_ITEM, price = 4, icons = {"20620.png"}, description = "Become rich!"}, -- Item Example : thingId = itemId {name = "Skull Remover", thingId = 11076, count = 1, type = GameStore.OfferTypes.OFFER_TYPE_STACKABLE, price = 10, icons = {"23806.png"}, description = "Become rich!"}, -- Item Example : thingId = itemId {name = "Stamina Refiller", thingId = 12544, count = 1, type = GameStore.OfferTypes.OFFER_TYPE_STACKABLE, price = 12, icons = {"12544.png"}, description = "Become rich!"}, -- Item Example : thingId = itemId {name = "Claw of The Noxiuos Spawn", thingId = 10309, count = 1, type = GameStore.OfferTypes.OFFER_TYPE_ITEM, price = 8, icons = {"10309.png"}, description = "Become rich!"}, } }, { name = "Extra Services", state = GameStore.States.STATE_NEW, icons = {"Category_ExtraServices.png"}, offers = { -- NameChange example {name = "Character Name Change", type = GameStore.OfferTypes.OFFER_TYPE_NAMECHANGE, price = 20, icons = {"Product_CharacterNameChange.png"}}, -- Sexchange example {name = "Character Sex Change", type = GameStore.OfferTypes.OFFER_TYPE_SEXCHANGE, price = 5, icons = {"Product_CharacterSexChange.png"}}, -- Promotion example -- {name = "First Promotion", thingId = 1--[[ed/ms/rp/ek]], type = GameStore.OfferTypes.OFFER_TYPE_PROMOTION, price = 5, icons = {"Product_FirstPromotion.png"}}, {name = "30 Days of Premium Time", price = 250, state = GameStore.States.STATE_NEW, validUntil = 30, thingId = 30, type = GameStore.OfferTypes.OFFER_TYPE_PREMIUM, icons = {"Product_PremiumTime30.png"}, description = "Premium Account for 30 days."}, {name = "90 Days of Premium Time", price = 400, state = GameStore.States.STATE_NEW, validUntil = 30, thingId = 90, type = GameStore.OfferTypes.OFFER_TYPE_PREMIUM, icons = {"Product_PremiumTime90.png"}, description = "Premium Account for 90 days."}, {name = "180 Days of Premium Time", price = 700, state = GameStore.States.STATE_NEW, validUntil = 30, thingId = 180, type = GameStore.OfferTypes.OFFER_TYPE_PREMIUM, icons = {"Product_PremiumTime180.png"}, description = "Premium Account for 180 days."}, {name = "360 Days of Premium Time", price = 1000, state = GameStore.States.STATE_NEW, validUntil = 30, thingId = 360, type = GameStore.OfferTypes.OFFER_TYPE_PREMIUM, icons = {"Product_PremiumTime360.png"}, description = "Premium Account for 180 days."} } }, } -- For Explanation and information -- view the readme.md file in github or via markdown viewer. -- Non-Editable local runningId = 1 for k, category in ipairs(GameStore.Categories) do if category.offers then for m, offer in ipairs(category.offers) do offer.id = runningId runningId = runningId + 1 if not offer.type then offer.type = GameStore.OfferTypes.OFFER_TYPE_NONE end end end end how can i repair my init.lua for take premium time accept this is my ...data\modules\scripts\gamestore\init.lua -- Please don't edit those information! GameStore = { ModuleName = "GameStore", Developer = "OTX TEAM", Version = "0.3", LastUpdated = "24-09-2016 07:15PM" } --== Enums ==-- GameStore.OfferTypes = { OFFER_TYPE_NONE = 0, -- (this will disable offer) OFFER_TYPE_ITEM = 1, OFFER_TYPE_STACKABLE = 2, OFFER_TYPE_OUTFIT = 3, OFFER_TYPE_OUTFIT_ADDON = 4, OFFER_TYPE_MOUNT = 5, OFFER_TYPE_NAMECHANGE = 6, OFFER_TYPE_SEXCHANGE = 7, OFFER_TYPE_PROMOTION = 8 } GameStore.ClientOfferTypes = { CLIENT_STORE_OFFER_OTHER = 0, CLIENT_STORE_OFFER_NAMECHANGE = 1 } GameStore.HistoryTypes = { HISTORY_TYPE_NONE = 0, HISTORY_TYPE_GIFT = 1, HISTORY_TYPE_REFUND = 2 } GameStore.States = { STATE_NONE = 0, STATE_NEW = 1, STATE_SALE = 2, STATE_TIMED = 3 } GameStore.StoreErrors = { STORE_ERROR_PURCHASE = 0, STORE_ERROR_NETWORK = 1, STORE_ERROR_HISTORY = 2, STORE_ERROR_TRANSFER = 3, STORE_ERROR_INFORMATION = 4 } GameStore.ServiceTypes = { SERVICE_STANDERD = 0, SERVICE_OUTFITS = 3, SERVICE_MOUNTS = 4 } GameStore.SendingPackets = { S_CoinBalance = 0xDF, -- 223 S_StoreError = 0xE0, -- 224 S_RequestPurchaseData = 0xE1, -- 225 S_CoinBalanceUpdating = 0xF2, -- 242 S_OpenStore = 0xFB, -- 251 S_StoreOffers = 0xFC, -- 252 S_OpenTransactionHistory = 0xFD, -- 253 S_CompletePurchase = 0xFE -- 254 } GameStore.RecivedPackets = { C_StoreEvent = 0xE9, -- 233 C_TransferCoins = 0xEF, -- 239 C_OpenStore = 0xFA, -- 250 C_RequestStoreOffers = 0xFB, -- 251 C_BuyStoreOffer = 0xFC, -- 252 C_OpenTransactionHistory = 0xFD, -- 253 C_RequestTransactionHistory = 0xFE, -- 254 } GameStore.DefaultValues = { DEFAULT_VALUE_ENTRIES_PER_PAGE = 16 } GameStore.DefaultDescriptions = { OUTFIT = {"This outfit looks nice. Only high-class people are able to wear it!", "An outfit that was created to suit you. We are sure you'll like it.", "Legend says only smart people should wear it, otherwise you will burn!"}, MOUNT = {"This is a fantastic mount that helps to become faster, try it!", "The first rider of this mount became the leader of his country! legends say that."}, NAMECHANGE = {"Are you hunted? Tired of that? Get a new name, a new life!", "A new name to suit your needs!"}, SEXCHANGE = {"Bored of your character's sex? Get a new sex for him now!!"} } --==Parsing==-- GameStore.isItsPacket = function(byte) for k, v in pairs(GameStore.RecivedPackets) do if v == byte then return true end end return false end function onRecvbyte(player, msg, byte) if byte == GameStore.RecivedPackets.C_StoreEvent then -- Not Used! elseif byte == GameStore.RecivedPackets.C_TransferCoins then parseTransferCoins(player, msg) elseif byte == GameStore.RecivedPackets.C_OpenStore then parseOpenStore(player, msg) elseif byte == GameStore.RecivedPackets.C_RequestStoreOffers then parseRequestStoreOffers(player, msg) elseif byte == GameStore.RecivedPackets.C_BuyStoreOffer then parseBuyStoreOffer(player, msg) elseif byte == GameStore.RecivedPackets.C_OpenTransactionHistory then parseOpenTransactionHistory(player, msg) elseif byte == GameStore.RecivedPackets.C_RequestTransactionHistory then parseRequestTransactionHistory(player, msg) end return true end function parseTransferCoins(player, msg) local reciver = msg:getString() local amount = msg:getU32() if reciver:lower() == player:getName():lower() then return addPlayerEvent(sendStoreError, 350, player, GameStore.StoreErrors.STORE_ERROR_TRANSFER, "You can't transfer coins to yourself.") end local resultId = db.storeQuery("SELECT `account_id` FROM `players` WHERE `name` = " .. db.escapeString(reciver:lower()) .. "") if not resultId then return addPlayerEvent(sendStoreError, 350, player, GameStore.StoreErrors.STORE_ERROR_TRANSFER, "We couldn't find that player.") end local accountId = result.getDataInt(resultId, "account_id") if accountId == player:getAccountId() then return addPlayerEvent(sendStoreError, 350, player, GameStore.StoreErrors.STORE_ERROR_TRANSFER, "You cannot transfer coin to a character in the same account.") end db.asyncQuery("UPDATE `accounts` SET `premium_points` = `premium_points` + " .. amount .. " WHERE `id` = " .. accountId) player:removeCoinsBalance(amount) addPlayerEvent(sendStorePurchaseSuccessful, 550, player, "You have transfered " .. amount .. " coins to " .. reciver .. " successfully") -- Adding history for both reciver/sender GameStore.insertHistory(accountId, GameStore.HistoryTypes.HISTORY_TYPE_NONE, player:getName() .. " transfered you this amount.", amount) GameStore.insertHistory(player:getAccountId(), GameStore.HistoryTypes.HISTORY_TYPE_NONE, "You transfered this amount to " .. reciver, -1 * amount) -- negative end function parseOpenStore(player, msg) openStore(player) local serviceType = msg:getByte() local category = GameStore.Categories and GameStore.Categories[1] or nil if serviceType == GameStore.ServiceTypes.SERVICE_OUTFITS then category = GameStore.getCategoryByName("outfits") elseif serviceType == GameStore.ServiceTypes.SERVICE_MOUNTS then category = GameStore.getCategoryByName("mounts") end if category then addPlayerEvent(sendShowStoreOffers, 350, player, category) end end function parseRequestStoreOffers(player, msg) local serviceType = GameStore.ServiceTypes.SERVICE_STANDERD if player:getClient().version >= 1092 then serviceType = msg:getByte() end local categoryName = msg:getString() local category = GameStore.getCategoryByName(categoryName) if category then addPlayerEvent(sendShowStoreOffers, 350, player, category) end end function parseBuyStoreOffer(player, msg) local offerId = msg:getU32() local productType = msg:getByte() local offer = GameStore.getOfferById(offerId) if offer then -- If we don't add type, or offer type is fake if not offer.type or offer.type == GameStore.OfferTypes.OFFER_TYPE_NONE then return addPlayerEvent(sendStoreError, 250, player, GameStore.StoreErrors.STORE_ERROR_NETWORK, "The offer is either fake or corrupt.") end -- If no thing id, if offer.type ~= GameStore.OfferTypes.OFFER_TYPE_NAMECHANGE and offer.type ~= GameStore.OfferTypes.OFFER_TYPE_SEXCHANGE and not offer.thingId then return addPlayerEvent(sendStoreError, 250, player, GameStore.StoreErrors.STORE_ERROR_NETWORK, "The offer is either fake or corrupt.") end -- We remove coins before doing everything, if it fails, we add coins back! if not player:canRemoveCoins(offer.price) then return addPlayerEvent(sendStoreError, 250, player, GameStore.StoreErrors.STORE_ERROR_NETWORK, "We couldn't remove coins from your account, try again later.") end -- count is used in type(item), so we need to show (i.e 10x crystal coins) local offerCountStr = offer.count and (offer.count .. "x ") or "" -- The message which we will send to player! local message = "You have purchased " .. offerCountStr .. offer.name .. " for " .. offer.price .. " coins." -- If offer is item. if offer.type == GameStore.OfferTypes.OFFER_TYPE_ITEM then local inbox = player:getSlotItem(CONST_SLOT_STORE_INBOX) if inbox and inbox:getEmptySlots() > offer.count then for t = 1,offer.count do inbox:addItem(offer.thingId, offer.count or 1) end else return addPlayerEvent(sendStoreError, 250, player, GameStore.StoreErrors.STORE_ERROR_NETWORK, "Please make sure you have free slots in your store inbox.") end -- If offer is Stackable. elseif offer.type == GameStore.OfferTypes.OFFER_TYPE_STACKABLE then local inbox = player:getSlotItem(CONST_SLOT_STORE_INBOX) if inbox and inbox:getEmptySlots() > 0 then local parcel = inbox:addItem(2596, 1) local packagename = ''.. offer.count..'x '.. offer.name ..' package.' if parcel then parcel:setAttribute(ITEM_ATTRIBUTE_NAME, packagename) for e = 1,offer.count do parcel:addItem(offer.thingId, 1) end end else return addPlayerEvent(sendStoreError, 250, player, GameStore.StoreErrors.STORE_ERROR_NETWORK, "Please make sure you have free slots in your store inbox.") end -- If offer is outfit/addon elseif offer.type == GameStore.OfferTypes.OFFER_TYPE_OUTFIT or offer.type == GameStore.OfferTypes.OFFER_TYPE_OUTFIT_ADDON then local outfitLookType if player:getSex() == PLAYERSEX_MALE then outfitLookType = offer.thingId.male else outfitLookType = offer.thingId.female end if not outfitLookType then return addPlayerEvent(sendStoreError, 250, player, GameStore.StoreErrors.STORE_ERROR_NETWORK, "This outfit seems not to suit your sex, we are sorry for that!") end player:addOutfitAddon(outfitLookType, offer.addon or 0) -- If offer is mount elseif offer.type == GameStore.OfferTypes.OFFER_TYPE_MOUNT then player:addMount(offer.thingId) -- If offer is name change elseif offer.type == GameStore.OfferTypes.OFFER_TYPE_NAMECHANGE then -- If player typed name yet! if productType == GameStore.ClientOfferTypes.CLIENT_STORE_OFFER_NAMECHANGE then local newName = msg:getString() local resultId = db.storeQuery("SELECT * FROM `players` WHERE `name` = " .. db.escapeString(newName) .. "") if resultId ~= false then return addPlayerEvent(sendStoreError, 650, player, GameStore.StoreErrors.STORE_ERROR_NETWORK, "This name is already used, please try again!") end local result = GameStore.canChangeToName(newName) if not result.ability then return addPlayerEvent(sendStoreError, 650, player, GameStore.StoreErrors.STORE_ERROR_NETWORK, result.reason) end newName = newName:lower():gsub("(%l)(%w*)", function(a, b) return string.upper(a) .. b end) db.asyncQuery("UPDATE `players` SET `name` = " .. db.escapeString(newName) .. " WHERE `id` = " .. player:getGuid()) message = "You have successfully changed you name, you must relog to see changes." -- If not, we ask him to do! else return addPlayerEvent(sendRequestPurchaseData, 250, player, offer.id, GameStore.ClientOfferTypes.CLIENT_STORE_OFFER_NAMECHANGE) end -- If offer is sex change elseif offer.type == GameStore.OfferTypes.OFFER_TYPE_SEXCHANGE then player:toggleSex() -- If offer is promotion elseif offer.type == GameStore.OfferTypes.OFFER_TYPE_PROMOTION then if not GameStore.addPromotionToPlayer(player, offer.thingId) then return false end -- You can add whatever offer types to suit your needs! else -- ToDo :: implement purchase function return addPlayerEvent(sendStoreError, 250, player, GameStore.StoreErrors.STORE_ERROR_NETWORK, "This offer is fake, please contact admin.") end -- Removing coins player:removeCoinsBalance(offer.price) -- We add this purchase to history! GameStore.insertHistory(player:getAccountId(), GameStore.HistoryTypes.HISTORY_TYPE_NONE, offerCountStr .. offer.name, offer.price * -1) -- Send to client that purchase is successful! return addPlayerEvent(sendStorePurchaseSuccessful, 650, player, message) end -- If we didn't found the offer or error happened addPlayerEvent(sendStoreError, 350, player, GameStore.StoreErrors.STORE_ERROR_INFORMATION, "We couldn't locate this offer, please try again later.") end -- Both functions use same formula! function parseOpenTransactionHistory(player, msg) local page = 1 GameStore.DefaultValues.DEFAULT_VALUE_ENTRIES_PER_PAGE = msg:getByte() sendStoreTransactionHistory(player, page, GameStore.DefaultValues.DEFAULT_VALUE_ENTRIES_PER_PAGE) end function parseRequestTransactionHistory(player, msg) local page = msg:getU32() sendStoreTransactionHistory(player, page, GameStore.DefaultValues.DEFAULT_VALUE_ENTRIES_PER_PAGE) end --==Sending==-- function openStore(player) if not GameStore.Categories then return false end local msg = NetworkMessage() msg:addByte(GameStore.SendingPackets.S_OpenStore) msg:addByte(0x00) msg:addU16(#GameStore.Categories) for k, category in ipairs(GameStore.Categories) do msg:addString(category.name) msg:addString(category.description) if player:getClient().version >= 1093 then msg:addByte(category.state or GameStore.States.STATE_NONE) end msg:addByte(#category.icons) for m, icon in ipairs(category.icons) do msg:addString(icon) end msg:addString(category.parentCategory) end msg:sendToPlayer(player) sendCoinBalanceUpdating(player, true) end function sendShowStoreOffers(player, category) local msg = NetworkMessage() msg:addByte(GameStore.SendingPackets.S_StoreOffers) msg:addString(category.name) msg:addU16(category.offers and #category.offers or 0x00) if category.offers then for k, offer in ipairs(category.offers) do msg:addU32(offer.id and offer.id or 0xFFFF) -- we later detect this number! local name = "" if offer.type == GameStore.OfferTypes.OFFER_TYPE_ITEM and offer.count then name = offer.count .. "x " end if offer.type == GameStore.OfferTypes.OFFER_TYPE_STACKABLE and offer.count then name = offer.count .. "x " end name = name .. (offer.name or "Something Special") msg:addString(name) msg:addString(offer.description or GameStore.getDefaultDescription(offer.type)) msg:addU32(offer.price and offer.price or 0xFFFF) msg:addByte(offer.state or GameStore.States.STATE_NONE) -- default is none local disabled, disabledReason = 0, "" if offer.disabled == true or not offer.type then disabled = 1 end if offer.type ~= GameStore.OfferTypes.OFFER_TYPE_NAMECHANGE and offer.type ~= GameStore.OfferTypes.OFFER_TYPE_SEXCHANGE and not offer.thingId then disabled = 1 end if disabled == 1 and offer.disabledReason then -- dynamic disable disabledReason = offer.disabledReason end if disabled ~= 1 then if offer.type == GameStore.OfferTypes.OFFER_TYPE_OUTFIT or offer.type == GameStore.OfferTypes.OFFER_TYPE_OUTFIT_ADDON then local outfitLookType if player:getSex() == PLAYERSEX_MALE then outfitLookType = offer.thingId.male else outfitLookType = offer.thingId.female end if outfitLookType then if offer.type == GameStore.OfferTypes.OFFER_TYPE_OUTFIT and player:hasOutfit(outfitLookType) then disabled = 1 disabledReason = "You already have this outfit." elseif offer.type == GameStore.OfferTypes.OFFER_TYPE_OUTFIT_ADDON then if player:hasOutfit(outfitLookType) then if player:hasOutfit(outfitLookType, offer.addon) then disabled = 1 disabledReason = "You already have this addon." end else disabled = 1 disabledReason = "You don't have the outfit, you can't buy the addon." end end else disabled = 1 disabledReason = "The offer is fake." end elseif offer.type == GameStore.OfferTypes.OFFER_TYPE_MOUNT then local hasMount = player:hasMount(offer.thingId) if hasMount == true then disabled = 1 disabledReason = "You already have this mount." end elseif offer.type == GameStore.OfferTypes.OFFER_TYPE_PROMOTION then if GameStore.canAddPromotionToPlayer(player, offer.thingId).ability == false then disabled = 1 disabledReason = "You can't get this promotion" end end end msg:addByte(disabled) if disabled == 1 and player:getClient().version >= 1093 then msg:addString(disabledReason) end msg:addByte(#offer.icons) for k, icon in ipairs(offer.icons) do msg:addString(icon) end msg:addU16(0) -- We still don't support SubOffers! end end msg:sendToPlayer(player) end function sendStoreTransactionHistory(player, page, entriesPerPage) local entries = GameStore.retrieveHistoryEntries(player:getAccountId()) -- this makes everything easy! if #entries == 0 then return addPlayerEvent(sendStoreError, 250, player, GameStore.StoreErrors.STORE_ERROR_HISTORY, "You don't have any entries yet.") end local toSkip = (page - 1) * entriesPerPage for i = 1, toSkip do table.remove(entries, 1) -- we remove first! end local msg = NetworkMessage() msg:addByte(GameStore.SendingPackets.S_OpenTransactionHistory) msg:addU32(page) msg:addU32(#entries > entriesPerPage and 0x01 or 0x00) msg:addByte(#entries >= entriesPerPage and entriesPerPage or #entries) for k, entry in ipairs(entries) do if k >= entriesPerPage then break end msg:addU32(entry.time) msg:addByte(entry.mode) msg:addU32(entry.amount) msg:addString(entry.description) end msg:sendToPlayer(player) end function sendStorePurchaseSuccessful(player, message) local msg = NetworkMessage() msg:addByte(GameStore.SendingPackets.S_CompletePurchase) msg:addByte(0x00) msg:addString(message) msg:addU32(player:getCoinsBalance()) msg:addU32(player:getCoinsBalance()) msg:sendToPlayer(player) end function sendStoreError(player, errorType, message) local msg = NetworkMessage() msg:addByte(GameStore.SendingPackets.S_StoreError) msg:addByte(errorType) msg:addString(message) msg:sendToPlayer(player) end function sendCoinBalanceUpdating(player, updating) local msg = NetworkMessage() msg:addByte(GameStore.SendingPackets.S_CoinBalanceUpdating) msg:addByte(0x00) msg:sendToPlayer(player) if updating == true then sendUpdateCoinBalance(player) end end function sendUpdateCoinBalance(player) local msg = NetworkMessage() msg:addByte(GameStore.SendingPackets.S_CoinBalanceUpdating) msg:addByte(0x01) msg:addByte(GameStore.SendingPackets.S_CoinBalance) msg:addByte(0x01) msg:addU32(player:getCoinsBalance()) msg:addU32(player:getCoinsBalance()) msg:sendToPlayer(player) end function sendRequestPurchaseData(player, offerId, type) local msg = NetworkMessage() msg:addByte(GameStore.SendingPackets.S_RequestPurchaseData) msg:addU32(offerId) msg:addByte(type) msg:sendToPlayer(player) end --==GameStoreFunctions==-- GameStore.getCategoryByName = function(name) for k, category in ipairs(GameStore.Categories) do if category.name:lower() == name:lower() then return category end end return nil end GameStore.getOfferById = function(id) for Cat_k, category in ipairs(GameStore.Categories) do if category.offers then for Off_k, offer in ipairs(category.offers) do if offer.id == id then return offer end end end end return nil end GameStore.insertHistory = function(accountId, mode, description, amount) return db.asyncQuery(string.format("INSERT INTO `store_history`(`account_id`, `mode`, `description`, `coin_amount`, `time`) VALUES (%s, %s, %s, %s, %s)", accountId, mode, db.escapeString(description), amount, os.time())) end GameStore.retrieveHistoryEntries = function(accountId) local entries = {} local resultId = db.storeQuery("SELECT * FROM `store_history` WHERE `account_id` = " .. accountId .. " ORDER BY `time` DESC LIMIT 15;") if resultId ~= false then repeat local entry = { mode = result.getDataInt(resultId, "mode"), description = result.getDataString(resultId, "description"), amount = result.getDataInt(resultId, "coin_amount"), time = result.getDataInt(resultId, "time"), } table.insert(entries, entry) until not result.next(resultId) result.free(resultId) end return entries end GameStore.getDefaultDescription = function(offerType) local t, descList = GameStore.OfferTypes if offerType == t.OFFER_TYPE_OUTFIT or offerType == t.OFFER_TYPE_OUTFIT_ADDON then descList = GameStore.DefaultDescriptions.OUTFIT elseif offerType == t.OFFER_TYPE_MOUNT then descList = GameStore.DefaultDescriptions.MOUNT elseif offerType == t.OFFER_TYPE_NAMECHANGE then descList = GameStore.DefaultDescriptions.NAMECHANGE elseif offerType == t.OFFER_TYPE_SEXCHANGE then descList = GameStore.DefaultDescriptions.SEXCHANGE else return "" end return descList[math.floor(math.random(1, #descList))] or "" end GameStore.canChangeToName = function(name) local result = { ability = false } if name:len() < 3 or name:len() > 14 then result.reason = "Your new name's length should be lower than 3 or higher than 14." return result end -- just copied from znote aac. local words = {"owner", "gamemaster", "hoster", "admin", "staff", "tibia", "account", "god", "anal", "ass", "fuck", "sex", "hitler", "pussy", "dick", "rape", "cm", "gm", "tutor", "counsellor"} local split = name:split(" ") for k, word in ipairs(words) do for k, nameWord in ipairs(split) do if nameWord:lower() == word then result.reason = "You can't use word \"" .. word .. "\" in your new name." return result end end end if MonsterType(name) then result.reason = "Your new name \"" .. name .. "\" can't be a monster's name." return result elseif Npc(name) then result.reason = "Your new name \"" .. name .. "\" can't be a npc's name." return result end local letters = "{}|_*+-=<>0123456789@#%^&()/*\\.,:;~!\"$" for i = 1, letters:len() do local c = letters:sub(i, i) for i = 1, name:len() do local m = name:sub(i, i) if m == c then result.reason = "You can't use this letter \"" .. c .. "\" in your new name." return result end end end result.ability = true return result end GameStore.canAddPromotionToPlayer = function(player, promotion, send) local result = { ability = true } local vocation = player:getVocation() -- Working -- local vocationCopy, baseVocation = vocation, vocation vocation = vocation:getDemotion() while vocation do baseVocation = vocation vocation = vocation:getDemotion() end local baseVocationsCount = GameStore.BaseVocationsCount or 4 local newVocId = (baseVocationsCount * promotion) + baseVocation:getId() if not Vocation(newVocId) then if send then addPlayerEvent(sendStoreError, 350, player, GameStore.StoreErrors.STORE_ERROR_NETWORK, "The offer is fake, please report it!") end result.ability = false return result end -- If promotion is less than player's voc, or player don't have previous promotion if newVocId <= vocationCopy:getId() then if send then addPlayerEvent(sendStoreError, 350, player, GameStore.StoreErrors.STORE_ERROR_NETWORK, "You already have this promotion!") end result.ability = false return result end if (newVocId - baseVocationsCount) ~= vocationCopy:getId() then if send then addPlayerEvent(sendStoreError, 350, player, GameStore.StoreErrors.STORE_ERROR_NETWORK, "You need higher promotion to get his one.") end result.ability = false return result end result.vocId = newVocId return result end GameStore.addPromotionToPlayer = function(player, promotion) local result = GameStore.canAddPromotionToPlayer(player, promotion, true) if result.ability == false then return false end local basics = { health = 185, mana = 40, cap = 500 } player:setVocation(result.vocId) local newVoc = player:getVocation() player:setMaxHealth(basics.health + (newVoc:getHealthGain() * player:getLevel())) player:setMaxMana(basics.mana + (newVoc:getManaGain() * player:getLevel())) player:setCapacity(basics.cap + (newVoc:getCapacityGain() * player:getLevel())) player:addHealth(player:getMaxHealth()) player:addMana(player:getMaxMana()) player:sendTextMessage(MESSAGE_INFO_DESCR, "You have been promoted to " .. newVoc:getName()) return true end --==Player==-- function Player.getCoinsBalance(self) resultId = db.storeQuery("SELECT `premium_points` FROM `accounts` WHERE `id` = " .. self:getAccountId()) if not resultId then return 0 end return result.getDataInt(resultId, "premium_points") end function Player.setCoinsBalance(self, coins) db.asyncQuery("UPDATE `accounts` SET `premium_points` = " .. coins .. " WHERE `id` = " .. self:getAccountId()) return true end function Player.canRemoveCoins(self, coins) if self:getCoinsBalance() < coins then return false end return true end function Player.removeCoinsBalance(self, coins) if self:canRemoveCoins(coins) then return self:setCoinsBalance(self:getCoinsBalance() - coins) end return false end function Player.addCoinsBalance(self, coins, update) self:setCoinsBalance(self:getCoinsBalance() + coins) if update then sendCoinBalanceUpdating(self, true) end return true end function Player.toggleSex(self) local currentSex = self:getSex() local playerOutfit = self:getOutfit() if currentSex == PLAYERSEX_FEMALE then self:setSex(PLAYERSEX_MALE) playerOutfit.lookType = 128 else self:setSex(PLAYERSEX_FEMALE) playerOutfit.lookType = 136 end self:setOutfit(playerOutfit) end
  2. how can i add ORIstore.xml to store.xml when i copy ORIstore and pasted to store.xml then login tibia click store in game tibia crash o.0 how can i fix it ?
  3. i unzip but still killed but i can't log in new account with website gesior >.< i made account test but i can't log in i was trying set chmod all folder >.< please fix it
  4. i am using linux i dont know i can't create a new account in gesior website >.< please help i turn on /var/www/ chmod html -R but i dont know why i can't create a new account other account manager account i still login game but can't create a new account >.< thank so much thank i make this file for this version i can login acount manager but when i create a new account subtopic=createaccount&action=saveaccount in webs is ok but i can't log in a new account then i check in phpmyadmin in account have not any new account >.< please help .fs i created account but i can't log in >.< who know what happan with gesior bug ? i search in tibiaking have someone said that fix change : $finishedAuctionChar = new OTS_Player(); for $finishedAuctionChar = new Player(); i was trying search where is is this *.php anyone can help me thank so much

Informação Importante

Confirmação de Termo