Ir para conteúdo

96736649

Artesão
  • Total de itens

    109
  • Registro em

  • Última visita

Tudo que 96736649 postou

  1. [23/06/2012 07:22:43] [Error - CreatureScript Interface] [23/06/2012 07:22:43] In a timer event called from: [23/06/2012 07:22:43] data/creaturescripts/scripts/spawn.lua:onSpawn [23/06/2012 07:22:43] Description: [23/06/2012 07:22:43] data/lib/level system.lua:590: attempt to index field '?' (a nil value) [23/06/2012 07:22:43] stack traceback: [23/06/2012 07:22:43] data/lib/level system.lua:590: in function 'setWildPokemonLevel' [23/06/2012 07:22:43] data/creaturescripts/scripts/spawn.lua:22: in function <data/creaturescripts/scripts/spawn.lua:19> script: local shinys = { "Bulbasaur", "Ivysaur", "Venusaur", "Charmander", "Charmeleon", "Charizard", "Squirtle", "Wartortle", "Blastoise", "Caterpie", "Metapod", "Butterfree", "Weedle", "Kakuna", "Beedrill", "Pidgey", "Pidgeotto", "Pidgeot", "Rattata", "Raticate", "Spearow", "Fearow", "Ekans", "Arbok", "Pikachu", "Raichu", "Sandshrew", "Sandslash", "Nidoran Female", "Nidorina", "Nidoqueen", "Nidoran Male", "Nidorino", "Nidoking", "Clefairy", "Clefable", "Vulpix", "Ninetales", "Jigglytuff", "Wigglytuff", "Zubat", "Golbat", "Odish", "Gloom", "Vileplume", "Paras", "Parasect", "Venonat", "Venomoth", "Diglett", "Dugtrio", "Mewoth", "Persian", "Psyduck", "Golduck", "Mankey", "Primeape", "Growlithe", "Arcanine", "Poliwag", "Poliwhirl", "Poliwrath", "Abra", "Kadabra", "Alakazam", "Machop", "Machoke", "Machamp", "Bellsprout", "Weepinbell", "Victreebel", "Tentacool", "Tentacruel", "Geodude", "Graveler", "Golem", "Ponyta", "Rapidash", "Slowpoke", "Slowbro", "Magnamite", "Magneton", "Farfetch'd", "Doduo", "Dodrio", "Seel", "Dewgong", "Grimer", "Muk", "Shellder", "Cloyster", "Gastly", "Haunter", "Gengar", "Onix", "Drowzee", "Hypno", "Krabby", "Kingler", "Voltorb", "Electrode", "Exeggcute", "Exeggutor", "Cubone", "Marowak", "Hitmonlee", "Hitmonchan", "Lickitung", "Koffing", "Weezing", "Rhyhorn", "Rhydon", "Chansey", "Tangela", "Kangaskhan", "Horsea", "Seadra", "Goldeen", "Seaking", "Staryu", "Starmie", "Mr. Mime", "Scyther", "Jynx", "Electabuzz", "Magmar", "Pinsir", "Tauros", "Magikarp", "Gyarados", "Lapras", "Ditto", "Eevee", "Vaporeon", "Jolteon", "Flareon", "Porygon", "Omanyte", "Omastar", "Kabuto", "Kabutops", "Snorlax", "Porygo Z", "Dragonair", "Dratini", "Absol", "Altaria", "Baltoy", "Claydol", "Buneary", "Beldum", "Metang", "Metagross", "Camerupt", "Carnivine", "Carvanha", "Sharpedo", "Croagunk", "Toxicroak", "Buizel", "Floatzel", "Gabite", "Gible", "Gliscor", "Honchkrow", "Luxray", "Mamoswine", "Pachirisu", "Plusle", "Minun", "Probopass", "Purugly", "Froslass", "Glalie", "Snorunt", "Lunatone", "Solrock", "Staraptor", "Tropius", "Yanmega", "Zangoose", "Rhyperior", "Gastrodon" } local raros = {"Articuno", "Zapdos", "Moltreas", "Mew", "Mewtwo", "Dragonite", "Aerodactyl"} local function doPokemonRegisterLevel(cid) if not isCreature(cid) then return true end if getWildPokemonLevel(cid) == -1 then setWildPokemonLevel(cid) end end local function doSetRandomGender(cid) if not isCreature(cid) then return true end local gender = 0 local name = getCreatureName(cid) if not newpokedex[name] then return true end local rate = newpokedex[name].gender if rate == 0 then gender = 3 elseif rate == 1000 then gender = 4 elseif rate == -1 then gender = 0 elseif math.random(1, 1000) <= rate then gender = 4 else gender = 3 end doCreatureSetSkullType(cid, gender) end local function doShiny(cid) if isCreature(cid) then if isSummon(cid) then return true end if getPlayerStorageValue(cid, 74469) >= 1 then return true end if isInArray(shinys, getCreatureName(cid)) then transform = math.random(1, 100) --100% chance elseif isInArray(raros, getCreatureName(cid)) then transform = math.random(1, 1000) --100% chance elseif not isInArray(raros, getCreatureName(cid)) and not isInArray(shinys, getCreatureName(cid)) then return true end if transform == 1 then doSendMagicEffect(getThingPos(cid), 18) local shi = doCreateMonster("Shiny ".. getCreatureName(cid) .."", getThingPos(cid)) setPlayerStorageValue(shi, 74469, 1) setPlayerStorageValue(cid, 74469, 1) doRemoveCreature(cid) else setPlayerStorageValue(cid, 74469, 1) end else return true end end function onSpawn(cid) registerCreatureEvent(cid, "GeneralConfiguration") registerCreatureEvent(cid, "DirectionSystem") registerCreatureEvent(cid, "CastSystem") if isSummon(cid) then registerCreatureEvent(cid, "SummonDeath") return true end registerCreatureEvent(cid, "Experience") addEvent(doPokemonRegisterLevel, 5, cid) addEvent(doSetRandomGender, 5, cid) addEvent(doShiny, 10, cid) return true end
  2. local shinys = { "Bulbasaur", "Ivysaur", "Venusaur", "Charmander", "Charmeleon", "Charizard", "Squirtle", "Wartortle", "Blastoise", "Caterpie", "Metapod", "Butterfree", "Weedle", "Kakuna", "Beedrill", "Pidgey", "Pidgeotto", "Pidgeot", "Rattata", "Raticate", "Spearow", "Fearow", "Ekans", "Arbok", "Pikachu", "Raichu", "Sandshrew", "Sandslash", "Nidoran Female", "Nidorina", "Nidoqueen", "Nidoran Male", "Nidorino", "Nidoking", "Clefairy", "Clefable", "Vulpix", "Ninetales", "Jigglytuff", "Wigglytuff", "Zubat", "Golbat", "Odish", "Gloom", "Vileplume", "Paras", "Parasect", "Venonat", "Venomoth", "Diglett", "Dugtrio", "Mewoth", "Persian", "Psyduck", "Golduck", "Mankey", "Primeape", "Growlithe", "Arcanine", "Poliwag", "Poliwhirl", "Poliwrath", "Abra", "Kadabra", "Alakazam", "Machop", "Machoke", "Machamp", "Bellsprout", "Weepinbell", "Victreebel", "Tentacool", "Tentacruel", "Geodude", "Graveler", "Golem", "Ponyta", "Rapidash", "Slowpoke", "Slowbro", "Magnamite", "Magneton", "Farfetch'd", "Doduo", "Dodrio", "Seel", "Dewgong", "Grimer", "Muk", "Shellder", "Cloyster", "Gastly", "Haunter", "Gengar", "Onix", "Drowzee", "Hypno", "Krabby", "Kingler", "Voltorb", "Electrode", "Exeggcute", "Exeggutor", "Cubone", "Marowak", "Hitmonlee", "Hitmonchan", "Lickitung", "Koffing", "Weezing", "Rhyhorn", "Rhydon", "Chansey", "Tangela", "Kangaskhan", "Horsea", "Seadra", "Goldeen", "Seaking", "Staryu", "Starmie", "Mr. Mime", "Scyther", "Jynx", "Electabuzz", "Magmar", "Pinsir", "Tauros", "Magikarp", "Gyarados", "Lapras", "Ditto", "Eevee", "Vaporeon", "Jolteon", "Flareon", "Porygon", "Omanyte", "Omastar", "Kabuto", "Kabutops", "Snorlax", "Porygo Z", "Dragonair", "Dratini", "Absol", "Altaria", "Baltoy", "Claydol", "Buneary", "Beldum", "Metang", "Metagross", "Camerupt", "Carnivine", "Carvanha", "Sharpedo", "Croagunk", "Toxicroak", "Buizel", "Floatzel", "Gabite", "Gible", "Gliscor", "Honchkrow", "Luxray", "Mamoswine", "Pachirisu", "Plusle", "Minun", "Probopass", "Purugly", "Froslass", "Glalie", "Snorunt", "Lunatone", "Solrock", "Staraptor", "Tropius", "Yanmega", "Zangoose", "Rhyperior", "Gastrodon" } local raros = {"Articuno", "Zapdos", "Moltreas", "Mew", "Mewtwo", "Dragonite", "Aerodactyl"}[/i][/b] local function doPokemonRegisterLevel(cid) if not isCreature(cid) then return true end if getWildPokemonLevel(cid) == -1 then setWildPokemonLevel(cid) end end local function doSetRandomGender(cid) if not isCreature(cid) then return true end local gender = 0 local name = getCreatureName(cid) if not newpokedex[name] then return true end local rate = newpokedex[name].gender if rate == 0 then gender = 3 elseif rate == 1000 then gender = 4 elseif rate == -1 then gender = 0 elseif math.random(1, 1000) <= rate then gender = 4 else gender = 3 end doCreatureSetSkullType(cid, gender) end local function doShiny(cid) if isCreature(cid) then if getCreatureMaster(cid) and getCreatureMaster(cid) ~= cid then return trueend if getPlayeStorageValue(cid, 74469) >= 1 then return true end if isInArray(shinys, getCreatureName(cid)) then transform = math.random(1, 100) --100% chance elseif isInArray(raros, getCreatureName(cid)) then transform = math.random(1, 1000) --100% chance elseif not isInArray(raros, getCreatureName(cid)) and not isInArray(shinys, getCreatureName(cid)) then return true end if transform == 1 then doSendMagicEffect(getThingPos(cid), 18) local shi = doCreateMonster("Shiny ".. getCreatureName(cid) .."", getThingPos(cid)) setPlayerStorageValue(shi, 74469, 1) setPlayerStorageValue(cid, 74469, 1) doRemoveCreature(cid) else setPlayerStorageValue(cid, 74469, 1) end else return true end end function onSpawn(cid) registerCreatureEvent(cid, "GeneralConfiguration") registerCreatureEvent(cid, "DirectionSystem") registerCreatureEvent(cid, "CastSystem") if isSummon(cid) then registerCreatureEvent(cid, "SummonDeath") return true end registerCreatureEvent(cid, "Experience") addEvent(doPokemonRegisterLevel, 5, cid) addEvent(doSetRandomGender, 5, cid) addEvent(doShiny, 10, cid) return true end
  3. return true?
  4. ERRO ANEXADO AO TÓPICO EM IMAGENS. SCRIPT DO ERRO: local shinys = { "Bulbasaur", "Ivysaur", "Venusaur", "Charmander", "Charmeleon", "Charizard", "Squirtle", "Wartortle", "Blastoise", "Caterpie", "Metapod", "Butterfree", "Weedle", "Kakuna", "Beedrill", "Pidgey", "Pidgeotto", "Pidgeot", "Rattata", "Raticate", "Spearow", "Fearow", "Ekans", "Arbok", "Pikachu", "Raichu", "Sandshrew", "Sandslash", "Nidoran Female", "Nidorina", "Nidoqueen", "Nidoran Male", "Nidorino", "Nidoking", "Clefairy", "Clefable", "Vulpix", "Ninetales", "Jigglytuff", "Wigglytuff", "Zubat", "Golbat", "Odish", "Gloom", "Vileplume", "Paras", "Parasect", "Venonat", "Venomoth", "Diglett", "Dugtrio", "Mewoth", "Persian", "Psyduck", "Golduck", "Mankey", "Primeape", "Growlithe", "Arcanine", "Poliwag", "Poliwhirl", "Poliwrath", "Abra", "Kadabra", "Alakazam", "Machop", "Machoke", "Machamp", "Bellsprout", "Weepinbell", "Victreebel", "Tentacool", "Tentacruel", "Geodude", "Graveler", "Golem", "Ponyta", "Rapidash", "Slowpoke", "Slowbro", "Magnamite", "Magneton", "Farfetch'd", "Doduo", "Dodrio", "Seel", "Dewgong", "Grimer", "Muk", "Shellder", "Cloyster", "Gastly", "Haunter", "Gengar", "Onix", "Drowzee", "Hypno", "Krabby", "Kingler", "Voltorb", "Electrode", "Exeggcute", "Exeggutor", "Cubone", "Marowak", "Hitmonlee", "Hitmonchan", "Lickitung", "Koffing", "Weezing", "Rhyhorn", "Rhydon", "Chansey", "Tangela", "Kangaskhan", "Horsea", "Seadra", "Goldeen", "Seaking", "Staryu", "Starmie", "Mr. Mime", "Scyther", "Jynx", "Electabuzz", "Magmar", "Pinsir", "Tauros", "Magikarp", "Gyarados", "Lapras", "Ditto", "Eevee", "Vaporeon", "Jolteon", "Flareon", "Porygon", "Omanyte", "Omastar", "Kabuto", "Kabutops", "Snorlax", "Porygo Z", "Dragonair", "Dratini", "Absol", "Altaria", "Baltoy", "Claydol", "Buneary", "Beldum", "Metang", "Metagross", "Camerupt", "Carnivine", "Carvanha", "Sharpedo", "Croagunk", "Toxicroak", "Buizel", "Floatzel", "Gabite", "Gible", "Gliscor", "Honchkrow", "Luxray", "Mamoswine", "Pachirisu", "Plusle", "Minun", "Probopass", "Purugly", "Froslass", "Glalie", "Snorunt", "Lunatone", "Solrock", "Staraptor", "Tropius", "Yanmega", "Zangoose", "Rhyperior", "Gastrodon" } local raros = {"Articuno", "Zapdos", "Moltreas", "Mew", "Mewtwo", "Dragonite", "Aerodactyl"}[/i][/b] [b][i]local function doPokemonRegisterLevel(cid) if not isCreature(cid) then return true end if getWildPokemonLevel(cid) == -1 then setWildPokemonLevel(cid) end end[/i][/b] [b][i]local function doSetRandomGender(cid) if not isCreature(cid) then return true end local gender = 0 local name = getCreatureName(cid) if not newpokedex[name] then return true end local rate = newpokedex[name].gender if rate == 0 then gender = 3 elseif rate == 1000 then gender = 4 elseif rate == -1 then gender = 0 elseif math.random(1, 1000) <= rate then gender = 4 else gender = 3 end doCreatureSetSkullType(cid, gender) end[/i][/b] [b][i]local function doShiny(cid) if isCreature(cid) then if isSummon(cid) then return true end if getPlayerStorageValue(cid, 74469) >= 1 then return true end if isInArray(shinys, getCreatureName(cid)) then transform = math.random(1, 100) --100% chance elseif isInArray(raros, getCreatureName(cid)) then transform = math.random(1, 1000) --100% chance elseif not isInArray(raros, getCreatureName(cid)) and not isInArray(shinys, getCreatureName(cid)) then return true end if transform == 1 then doSendMagicEffect(getThingPos(cid), 18) local shi = doCreateMonster("Shiny ".. getCreatureName(cid) .."", getThingPos(cid)) setPlayerStorageValue(shi, 74469, 1) setPlayerStorageValue(cid, 74469, 1) doRemoveCreature(cid) else setPlayerStorageValue(cid, 74469, 1) end else return true end end[/i][/b] [b][i]function onSpawn(cid)[/i][/b] [b][i]registerCreatureEvent(cid, "GeneralConfiguration") registerCreatureEvent(cid, "DirectionSystem") registerCreatureEvent(cid, "CastSystem")[/i][/b] [b][i]if isSummon(cid) then registerCreatureEvent(cid, "SummonDeath") return true end[/i][/b] [b][i]registerCreatureEvent(cid, "Experience")[/i][/b] [b][i]addEvent(doPokemonRegisterLevel, 5, cid) addEvent(doSetRandomGender, 5, cid) addEvent(doShiny, 10, cid)[/i][/b] [b][i]return true end
  5. obrigado, problema resolvido. podem fechar o topico.
  6. MENTIRA QUE ESSE BUG TA NO MEU SERVIDOR 2 NADA RELACIONADO COM O "SERVER QUE EU ROUBEI"
  7. ERRO: [21/06/2012 15:23:23] [Error - CreatureScript Interface] [21/06/2012 15:23:23] data/creaturescripts/scripts/look.lua:onLook [21/06/2012 15:23:23] Description: [21/06/2012 15:23:23] data/lib/050-function.lua:107: attempt to index local 'str' (a nil value) [21/06/2012 15:23:23] stack traceback: [21/06/2012 15:23:23] data/lib/050-function.lua:107: in function 'getArticle' [21/06/2012 15:23:23] data/creaturescripts/scripts/look.lua:16: in function <data/creaturescripts/scripts/look.lua:1> SCRIPT: function onLook(cid, thing, position, lookDistance) local str = ""if not isCreature(thing.uid) then local iname = getItemInfo(thing.itemid) if isPokeball(thing.itemid) then local owner = getItemAttribute(thing.uid, "firstpoke") local pokename = getItemAttribute(thing.uid, "poke") local item = getItemInfo(thing.itemid) str = "You see "..item.article.." "..item.name..".\n" str = str.."It contains "..getArticle(pokename).." "..pokename.." [level "..getItemAttribute(thing.uid, "level").."].\n" if owner and owner ~= getCreatureName(cid) then str = str.."It belongs to "..owner..".\nIt is a unique item." doPlayerSendTextMessage(cid, MESSAGE_INFO_DESCR, str) return false end local boost = getItemAttribute(thing.uid, "boost") or 0 local boostshow = "" if boost > 0 then str = str.."Boost level: +"..boost..".\n" end if getItemAttribute(thing.uid, "nick") then str = str.."It's nickname is: "..getItemAttribute(thing.uid, "nick")..".\n" end if getItemAttribute(thing.uid, "gender") == SEX_MALE then str = str.."It is male." elseif getItemAttribute(thing.uid, "gender") == SEX_FEMALE then str = str.."It is female." else str = str.."It is genderless." end str = str.."\n--- Status ---" str = str.."\nOffense: "..math.floor(getItemAttribute(thing.uid, "offense")).." Defense: "..math.floor(getItemAttribute(thing.uid, "defense")).."\n" str = str.."Agility: "..math.floor(getItemAttribute(thing.uid, "speed")).." Sp. Attack: "..math.floor(getItemAttribute(thing.uid, "specialattack")).."\n" str = str.."Vitality: "..math.floor(getItemAttribute(thing.uid, "vitality")).."" doPlayerSendTextMessage(cid, MESSAGE_INFO_DESCR, str) return false elseif string.find(iname.name, "fainted") or string.find(iname.name, "defeated") then str = "You see a "..string.lower(iname.name).." ["..getItemAttribute(thing.uid, "level").."].\n" if getItemAttribute(thing.uid, "gender") == SEX_MALE then str = str.."It is male." elseif getItemAttribute(thing.uid, "gender") == SEX_FEMALE then str = str.."It is female." else str = str.."It is genderless." end doPlayerSendTextMessage(cid, MESSAGE_INFO_DESCR, str) return false else return true end endlocal npcname = getCreatureName(thing.uid) local l = string.len(npcname) if not isPlayer(thing.uid) and not isMonster(thing.uid) then --string.sub(npcname, l - 1, l) == " " then local article = getPlayerStorageValue(thing.uid, 9891) == 1 and "He is" or "She is" local nname = string.sub(npcname, 1, l - 2) if nname == getCreatureName(cid) then nname = "yourself" article = "You are" end str = "You see "..nname..". "..article.." a pokemon trainer." doPlayerSendTextMessage(cid, MESSAGE_INFO_DESCR, str) return false end if not isMonster(thing.uid) then return true endif getCreatureName(thing.uid) == "Evolution" then return false end if not isSummon(thing.uid) then local str = "You see a wild "..string.lower(getCreatureName(thing.uid)).." [level "..getPokemonLevel(thing.uid).."].\n" if getPokemonGender(thing.uid) == SEX_MALE then str = str.."It is male." elseif getPokemonGender(thing.uid) == SEX_FEMALE then str = str.."It is female." else str = str.."It is genderless." end doPlayerSendTextMessage(cid, MESSAGE_INFO_DESCR, str) return false elseif isSummon(thing.uid) and not isPlayer(thing.uid) then local boostlevel = getItemAttribute(getPlayerSlotItem(getCreatureMaster(thing.uid), 8).uid, "boost") or 0 local boostshow = " + "..boostlevel.."]" if showBoostSeparated then boostshow = "] [+"..boostlevel.."]" end local levelinfo = "["..getPokemonLevel(thing.uid)..""..boostshow.."" if getCreatureMaster(thing.uid) == cid then local myball = getPlayerSlotItem(cid, 8).uid local nexp = getItemAttribute(myball, "nextlevelexp") local string = "You see your "..string.lower(getCreatureName(thing.uid)).." "..levelinfo.."." string = string.."\nHit points: "..getCreatureHealth(thing.uid).."/"..getCreatureMaxHealth(thing.uid).."." string = string.."\n"..getPokemonHappinessDescription(thing.uid) if getItemAttribute(myball, "level") <= 99 then string = string.."\nExperience needed to level up: "..nexp.."." end doPlayerSendTextMessage(cid, MESSAGE_INFO_DESCR, string) else doPlayerSendTextMessage(cid, MESSAGE_INFO_DESCR, "You see a "..string.lower(getCreatureName(thing.uid)).." "..levelinfo..".\nIt belongs to "..getCreatureName(getCreatureMaster(thing.uid))..".") end return false end return true end FUNÇÃO EM LIB: function doPlayerGiveItem(cid, itemid, amount, subType) local item = 0 if(isItemStackable(itemid)) then item = doCreateItemEx(itemid, amount) if(doPlayerAddItemEx(cid, item, true) ~= RETURNVALUE_NOERROR) then return false end else for i = 1, amount do item = doCreateItemEx(itemid, subType) if(doPlayerAddItemEx(cid, item, true) ~= RETURNVALUE_NOERROR) then return false end end end return true endfunction doPlayerGiveItemContainer(cid, containerid, itemid, amount, subType) for i = 1, amount do local container = doCreateItemEx(containerid, 1) for x = 1, getContainerCapById(containerid) do doAddContainerItem(container, itemid, subType) end if(doPlayerAddItemEx(cid, container, true) ~= RETURNVALUE_NOERROR) then return false end endreturn true end function doPlayerTakeItem(cid, itemid, amount) return getPlayerItemCount(cid, itemid) >= amount and doPlayerRemoveItem(cid, itemid, amount) endfunction doPlayerBuyItem(cid, itemid, count, cost, charges) return doPlayerRemoveMoney(cid, cost) and doPlayerGiveItem(cid, itemid, count, charges) end function doPlayerBuyItemContainer(cid, containerid, itemid, count, cost, charges) return doPlayerRemoveMoney(cid, cost) and doPlayerGiveItemContainer(cid, containerid, itemid, count, charges) endfunction doPlayerSellItem(cid, itemid, count, cost) if(not doPlayerTakeItem(cid, itemid, count)) then return false end if(not doPlayerAddMoney(cid, cost)) then error('[doPlayerSellItem] Could not add money to: ' .. getPlayerName(cid) .. ' (' .. cost .. 'gp).') endreturn true end function doPlayerWithdrawMoney(cid, amount) if(not getBooleanFromString(getConfigInfo('bankSystem'))) then return false endlocal balance = getPlayerBalance(cid) if(amount > balance or not doPlayerAddMoney(cid, amount)) then return false end doPlayerSetBalance(cid, balance - amount) return true endfunction doPlayerDepositMoney(cid, amount) if(not getBooleanFromString(getConfigInfo('bankSystem'))) then return false end if(not doPlayerRemoveMoney(cid, amount)) then return false enddoPlayerSetBalance(cid, getPlayerBalance(cid) + amount) return true end function isPremium(cid) return (isPlayer(cid) and (getPlayerPremiumDays(cid) > 0 or getBooleanFromString(getConfigInfo('freePremium')))) endfunction getMonthDayEnding(day) if(day == "01" or day == "21" or day == "31") then return "st" elseif(day == "02" or day == "22") then return "nd" elseif(day == "03" or day == "23") then return "rd" end return "th" endfunction getMonthString(m) return os.date("%B", os.time{year = 1970, month = m, day = 1}) end function getArticle(str) return str:find("[AaEeIiOoUuYy]") == 1 and "an" or "a" endfunction isNumber(str) return tonumber(str) ~= nil end function doPlayerAddAddons(cid, addon) for i = 0, table.maxn(maleOutfits) do doPlayerAddOutfit(cid, maleOutfits[i], addon) endfor i = 0, table.maxn(femaleOutfits) do doPlayerAddOutfit(cid, femaleOutfits[i], addon) end end function doPlayerWithdrawAllMoney(cid) return doPlayerWithdrawMoney(cid, getPlayerBalance(cid)) endfunction doPlayerDepositAllMoney(cid) return doPlayerDepositMoney(cid, getPlayerMoney(cid)) end function doPlayerTransferAllMoneyTo(cid, target) return doPlayerTransferMoneyTo(cid, target, getPlayerBalance(cid)) endfunction playerExists(name) return getPlayerGUIDByName(name) ~= 0 end function getTibiaTime() local minutes = getWorldTime() local hours = 0 while (minutes > 60) do hours = hours + 1 minutes = minutes - 60 endreturn {hours = hours, minutes = minutes} end function doWriteLogFile(file, text) local f = io.open(file, "a+") if(not f) then return false endf:write("[" .. os.date("%d/%m/%Y %H:%M:%S") .. "] " .. text .. "\n") f:close() return true end function getExperienceForLevel(lv) lv = lv - 1 return ((50 * lv * lv * lv) - (150 * lv * lv) + (400 * lv)) / 3 endfunction doMutePlayer(cid, time) local condition = createConditionObject(CONDITION_MUTED) setConditionParam(condition, CONDITION_PARAM_TICKS, time * 1000) return doAddCondition(cid, condition) end function getPlayerGroupName(cid) return getGroupInfo(getPlayerGroupId(cid)).name endfunction getPlayerVocationName(cid) return getVocationInfo(getPlayerVocation(cid)).name end function getPromotedVocation(vid) return getVocationInfo(vid).promotedVocation endfunction doPlayerRemovePremiumDays(cid, days) return doPlayerAddPremiumDays(cid, -days) end function getPlayerMasterPos(cid) return getTownTemplePosition(getPlayerTown(cid)) endfunction getHouseOwner(houseId) return getHouseInfo(houseId).owner end function getHouseName(houseId) return getHouseInfo(houseId).name endfunction getHouseEntry(houseId) return getHouseInfo(houseId).entry end function getHouseRent(houseId) return getHouseInfo(houseId).rent endfunction getHousePrice(houseId) return getHouseInfo(houseId).price end function getHouseTown(houseId) return getHouseInfo(houseId).town endfunction getHouseTilesCount(houseId) return getHouseInfo(houseId).tiles end function getItemNameById(itemid) return getItemDescriptionsById(itemid).name endfunction getItemPluralNameById(itemid) return getItemDescriptionsById(itemid).plural end function getItemArticleById(itemid) return getItemDescriptionsById(itemid).article endfunction getItemName(uid) return getItemDescriptions(uid).name end function getItemPluralName(uid) return getItemDescriptions(uid).plural endfunction getItemArticle(uid) return getItemDescriptions(uid).article end function getItemText(uid) return getItemDescriptions(uid).text endfunction getItemSpecialDescription(uid) return getItemDescriptions(uid).special end function getItemWriter(uid) return getItemDescriptions(uid).writer endfunction getItemDate(uid) return getItemDescriptions(uid).date end function getTilePzInfo(pos) return getTileInfo(pos).protection endfunction getTileZoneInfo(pos) local tmp = getTileInfo(pos) if(tmp.pvp) then return 2 end if(tmp.nopvp) then return 1 endreturn 0 end function doShutdown() return doSetGameState(GAMESTATE_SHUTDOWN) endfunction doSummonCreature(name, pos, displayError) local displayError, cid = displayError or true, doCreateMonster(name, pos, displayError) if(not cid) then cid = doCreateNpc(name, pos, displayError) end return cid endfunction getOnlinePlayers() local tmp = getPlayersOnline() local players = {} for i, cid in ipairs(tmp) do table.insert(players, getCreatureName(cid)) end return players endfunction getPlayerByName(name) local cid = getCreatureByName(name) return isPlayer(cid) and cid or nil end function isPlayer(cid) return isCreature(cid) and cid >= AUTOID_PLAYERS and cid < AUTOID_MONSTERS endfunction isPlayerGhost(cid) if(not isPlayer(cid)) then return false end return getCreatureCondition(cid, CONDITION_GAMEMASTER, GAMEMASTER_INVISIBLE) or getPlayerFlagValue(cid, PLAYERFLAG_CANNOTBESEEN) endfunction isMonster(cid) return isCreature(cid) and cid >= AUTOID_MONSTERS and cid < AUTOID_NPCS end function isNpc(cid) return isCreature(cid) and cid >= AUTOID_NPCS endfunction doPlayerSetExperienceRate(cid, value) return doPlayerSetRate(cid, SKILL__LEVEL, value) end function doPlayerSetMagicRate(cid, value) return doPlayerSetRate(cid, SKILL__MAGLEVEL, value) endfunction doPlayerAddLevel(cid, amount, round) local experience, level = 0, getPlayerLevel(cid) if(amount > 0) then experience = getExperienceForLevel(level + amount) - (round and getPlayerExperience(cid) or getExperienceForLevel(level)) else experience = -((round and getPlayerExperience(cid) or getExperienceForLevel(level)) - getExperienceForLevel(level + amount)) end return doPlayerAddExperience(cid, experience) endfunction doPlayerAddMagLevel(cid, amount) for i = 1, amount do doPlayerAddSpentMana(cid, (getPlayerRequiredMana(cid, getPlayerMagLevel(cid, true) + 1) - getPlayerSpentMana(cid)) / getConfigInfo('rateMagic')) end return true end function doPlayerAddSkill(cid, skill, amount, round) if(skill == SKILL__LEVEL) then return doPlayerAddLevel(cid, amount, round) elseif(skill == SKILL__MAGLEVEL) then return doPlayerAddMagLevel(cid, amount) endreturn doPlayerAddSkillTry(cid, skill, (getPlayerRequiredSkillTries(cid, skill, getPlayerSkillLevel(cid, skill) + 1) - getPlayerSkillTries(cid, skill)) / getConfigInfo('rateSkill')) end function getPartyLeader(cid) local party = getPartyMembers(cid) if(type(party) ~= 'table') then return 0 endreturn party[1] end function isInParty(cid) return type(getPartyMembers(cid)) == 'table' endfunction isPrivateChannel(channelId) return channelId >= CHANNEL_PRIVATE end function doPlayerResetIdleTime(cid) return doPlayerSetIdleTime(cid, 0) endfunction doBroadcastMessage(text, class) local class = class or MESSAGE_STATUS_WARNING if(type(class) == 'string') then local className = MESSAGE_TYPES[class] if(className == nil) then return false end class = className elseif(class < MESSAGE_FIRST or class > MESSAGE_LAST) then return false endlocal players = getPlayersOnline() for _, pid in ipairs(players) do doPlayerSendTextMessage(pid, class, text) end print("> Broadcasted message: \"" .. text .. "\".") return true endfunction doPlayerBroadcastMessage(cid, text, class, checkFlag, ghost) local checkFlag, ghost, class = checkFlag or true, ghost or false, class or TALKTYPE_BROADCAST if(checkFlag and not getPlayerFlagValue(cid, PLAYERFLAG_CANBROADCAST)) then return false end if(type(class) == 'string') then local className = TALKTYPE_TYPES[class] if(className == nil) then return false end class = className elseif(class < TALKTYPE_FIRST or class > TALKTYPE_LAST) then return false end local players = getPlayersOnline() for _, pid in ipairs(players) do doCreatureSay(cid, text, class, ghost, pid) endprint("> " .. getCreatureName(cid) .. " broadcasted message: \"" .. text .. "\".") return true end function getBooleanFromString(input) local tmp = type(input) if(tmp == 'boolean') then return input endif(tmp == 'number') then return input > 0 end local str = string.lower(tostring(input)) return (str == "yes" or str == "true" or (tonumber(str) ~= nil and tonumber(str) > 0)) endfunction doCopyItem(item, attributes) local attributes = attributes or false local ret = doCreateItemEx(item.itemid, item.type) if(attributes) then if(item.actionid > 0) then doItemSetAttribute(ret, "aid", item.actionid) end endif(isContainer(item.uid)) then for i = (getContainerSize(item.uid) - 1), 0, -1 do local tmp = getContainerItem(item.uid, i) if(tmp.itemid > 0) then doAddContainerItemEx(ret, doCopyItem(tmp, true).uid) end end end return getThing(ret) endfunction doRemoveThing(uid) if(isCreature(uid)) then return doRemoveCreature(uid) end return doRemoveItem(uid) endfunction setAttackFormula(combat, type, minl, maxl, minm, maxm, min, max) local min, max = min or 0, max or 0 return setCombatFormula(combat, type, -1, 0, -1, 0, minl, maxl, minm, maxm, min, max) end function setHealingFormula(combat, type, minl, maxl, minm, maxm, min, max) local min, max = min or 0, max or 0 return setCombatFormula(combat, type, 1, 0, 1, 0, minl, maxl, minm, maxm, min, max) endfunction doChangeTypeItem(uid, subtype) local thing = getThing(uid) if(thing.itemid < 100) then return false end local subtype = subtype or 1 return doTransformItem(thing.uid, thing.itemid, subtype) endfunction doSetItemText(uid, text, writer, date) local thing = getThing(uid) if(thing.itemid < 100) then return false end doItemSetAttribute(uid, "text", text) if(writer ~= nil) then doItemSetAttribute(uid, "writer", tostring(writer)) if(date ~= nil) then doItemSetAttribute(uid, "date", tonumber(date)) end endreturn true end function getFluidSourceType(itemid) local item = getItemInfo(itemid) return item and item.fluidSource or false endfunction getDepotId(uid) return getItemAttribute(uid, "depotid") or false end function getItemDescriptions(uid) local thing = getThing(uid) if(thing.itemid < 100) then return false endlocal item = getItemInfo(thing.itemid) return { name = getItemAttribute(uid, "name") or item.name, plural = getItemAttribute(uid, "pluralname") or item.plural, article = getItemAttribute(uid, "article") or item.article, special = getItemAttribute(uid, "description") or "", text = getItemAttribute(uid, "text") or "", writer = getItemAttribute(uid, "writer") or "", date = getItemAttribute(uid, "date") or 0 } end function getItemWeightById(itemid, count, precision) local item, count, precision = getItemInfo(itemid), count or 1, precision or false if(not item) then return false endif(count > 100) then -- print a warning, as its impossible to have more than 100 stackable items without "cheating" the count print('[Warning] getItemWeightById', 'Calculating weight for more than 100 items!') end local weight = item.weight * count --[[if(precision) then return weight endlocal t = string.explode(tostring(weight), ".") if(table.maxn(t) == 2) then return tonumber(t[1] .. "." .. string.sub(t[2], 1, 2)) end]]-- return weight endfunction getItemWeaponType(uid) local thing = getThing(uid) if(thing.itemid < 100) then return false end return getItemInfo(thing.itemid).weaponType endfunction getItemRWInfo(uid) local thing = getThing(uid) if(thing.itemid < 100) then return false end local item, flags = getItemInfo(thing.itemid), 0 if(item.readable) then flags = 1 endif(item.writable) then flags = flags + 2 end return flags endfunction getItemLevelDoor(itemid) local item = getItemInfo(itemid) return item and item.levelDoor or false end function isItemStackable(itemid) local item = getItemInfo(itemid) return item and item.stackable or false endfunction isItemRune(itemid) local item = getItemInfo(itemid) return item and item.clientCharges or false end function isItemDoor(itemid) local item = getItemInfo(itemid) return item and item.type == 5 or false endfunction isItemContainer(itemid) local item = getItemInfo(itemid) return item and item.group == 2 or false end function isItemFluidContainer(itemid) local item = getItemInfo(itemid) return item and item.group == 12 or false endfunction isItemMovable(itemid) local item = getItemInfo(itemid) return item and item.movable or false end function isCorpse(uid) local thing = getThing(uid) if(thing.itemid < 100) then return false endlocal item = getItemInfo(thing.itemid) return item and item.corpseType ~= 0 or false end function getContainerCapById(itemid) local item = getItemInfo(itemid) if(not item or item.group ~= 2) then return false endreturn item.maxItems end function getMonsterAttackSpells(name) local monster = getMonsterInfo(name) return monster and monster.attacks or false endfunction getMonsterHealingSpells(name) local monster = getMonsterInfo(name) return monster and monster.defenses or false end function getMonsterLootList(name) local monster = getMonsterInfo(name) return monster and monster.loot or false endfunction getMonsterSummonList(name) local monster = getMonsterInfo(name) return monster and monster.summons or false end
  8. GALERA, ONDE FICA LOCALIZADO O LEVEL MAXIMO QUE MODE CHEGAR CADA POKEMON? ESTOU UTILIZANDO O LUNUSOT AJUDA AE
  9. ERRO: [20/06/2012 19:24:39] [Error - Action Interface] [20/06/2012 19:24:39] data/actions/scripts/pokedex.lua:onUse [20/06/2012 19:24:39] Description: [20/06/2012 19:24:40] data/actions/scripts/pokedex.lua:44: attempt to index a boolean value [20/06/2012 19:24:40] stack traceback: [20/06/2012 19:24:40] data/actions/scripts/pokedex.lua:44: in function <data/actions/scripts/pokedex.lua:3> SCRIPT: local rate = 20 function onUse(cid, item, fromPos, item2, toPos) if not isCreature(item2.uid) then return true end local poke = getCreatureName(item2.uid) if isMonster(item2.uid) then local this = newpokedex[getCreatureName(item2.uid)] local leveltable = getPokemonExperienceTable(getCreatureName(item2.uid)) local myball = 0 if isSummon(item2.uid) then myball = getPlayerSlotItem(getCreatureMaster(item2.uid), 8) end if not getPlayerInfoAboutPokemon(cid, poke).dex then local exp = this.level * rate doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "You have unlocked "..getCreatureName(item2.uid).." in your pokedex!") doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "You have gained "..exp.." experience points.") doSendMagicEffect(getThingPos(cid), 210) doPlayerAddExperience(cid, exp) doAddPokemonInDexList(cid, poke) else doShowPokedexRegistration(cid, item2, myball, leveltable) end return true end if not isPlayer(item2.uid) then return true end local unlock = 0 for i = 1, #oldpokedex do if getPlayerInfoAboutPokemon(item2.uid, oldpokedex[i][1]).dex then unlock = unlock + 1 end end local str = "" local lnl = 0 local poks = "" local player = getRecorderPlayer(toPos, cid) for x = 1001, 1251 do local y = tonumber(x - 1000) if getPlayerInfoAboutPokemon(player, oldpokedex[y][1]).dex then if isPokemonInOwnList(player, oldpokedex[y][1]) then str = str.."\n["..threeNumbers(y).."] - "..oldpokedex[y][1].." (•)" lnl = lnl + 1 else str = str.."\n["..threeNumbers(y).."] - "..oldpokedex[y][1].."" end else str = str.."\n["..threeNumbers(y).."] - ?" end end if cid == player then doPlayerSendTextMessage(cid, 27, "You can open a pokedex entry by typing \"/dex <name>\". Example: \"/dex Pikachu\".") str = "Pokédex Information:\n\n- Unlocked pokémon species: "..unlock.."\n- Pokémon species that you own: "..lnl.."\n\n(•) means that you have already used that pokémon species.\n\nPokémon Database:\n"..str.."" if string.len(str) <= 8192 then doShowTextDialog(cid, 2382, str) end else doPlayerSendTextMessage(cid, 27, getPlayerName(player).." has unlocked "..unlock.."/251 pokémons already, and has captured "..lnl.." pokemons until now.") end return true end
  10. GALERA AJUDA AE =) ERRO: [20/06/2012 19:36:27] [Error - MoveEvents Interface] [20/06/2012 19:36:27] data/movements/scripts/portrait.lua:onEquip [20/06/2012 19:36:27] Description: [20/06/2012 19:36:27] (luaDoTransformItem) Item not found SCRIPT: function onEquip (cid, item, slot) if not cid then return true end if item.uid <= 0 then return true end if not getItemAttribute(item.uid, "poke") then return true end for i, x in pairs(fotos) do if string.lower(getItemAttribute(item.uid, "poke")) == string.lower(i) then doTransformItem(getPlayerSlotItem(cid, 7).uid, fotos[i]) return true end end end function onDeEquip(cid, item, slot) if not cid then return true end if item.uid <= 0 then return true end if not getItemAttribute(item.uid, "poke") then return true end doTransformItem(getPlayerSlotItem(cid, CONST_SLOT_LEGS).uid, 2395) end
  11. GALERA, GOSTARIA DE SABER SE TEM COMO ADICIONAR UM NOVO MUNDO NO WEBSITE PARA QUE QUANDO O PLAYER CRIASSE O CHARACTER ELE ESCOLHERIA O MUNDO EM QUE QUER RESIDIR. ESTOU UTILIZANDO O MODERN AAC. QUANDO CRIA UM CHARACTER SÓ TEM UMA OPÇÃO DE MUNDO TERIA COMO ADICIONAR OUTRA?
  12. TERIA COMO FAZER SEM ELE ESTAR NO PZ E SEM BATTLE. MAIORIA DAS VEZES BUGA EM MONTANHAS AI FICA POKEMON PERTO E NÃO SAI NUNCA
  13. olha no bug que enviei add nova msg eu digito o comando e nao muda nada ;s nao quando eu do o comando ele nao vai e nem da erro tem como coloca por coordenadas
  14. [20/06/2012 14:20:37] [Error - TalkAction Interface] [20/06/2012 14:20:37] data/talkactions/scripts/desbugar.lua:onSay [20/06/2012 14:20:37] Description: [20/06/2012 14:20:38] data/talkactions/scripts/desbugar.lua:11: attempt to call global 'getTownPosition' (a nil value) [20/06/2012 14:20:38] stack traceback: [20/06/2012 14:20:38] data/talkactions/scripts/desbugar.lua:11: in function <data/talkactions/scripts/desbugar.lua:1> COLOCA A POSIÇAO DO TEMPLO MESMO: 1052, 1050, 7
  15. NÃO SERIA 3600 O TEMPO EM SEGUNDOS?
  16. GALERA, É O SEGUINTE. COMO NÃO ACHEI UMA OPÇÃO DE DESBUGAR CHAR PARA SITE ENTÃO RESOLVI ADAPTAR UM SCRIPT TENHO ESSE SCRIPT QUE QUANDO O PLAYER FALA !templo ELE VAI PARA O TEMPLO. TERIA COMO COLOCAR PRA USAR ESSA TALK DE 1 EM 1 HORA? function onSay(cid, position) if getCreatureCondition(cid, CONDITION_INFIGHT) == TRUE then doPlayerSendCancel(cid,"Espere seu Battle sair.") end if getTilePzInfo(getCreaturePosition(cid)) == TRUE and getPlayerLevel(cid) >= 1 then doTeleportThing(cid,getTownPosition(getPlayerTown(cid))) return TRUE end end
  17. Pedido Relacionado. Pedi um script ou correção. VALEW CAOTIC, SÓ TEM UMA COISINHA UM "D" A MAIS NA LINHA 230 SE VC QUISER ARRUMAR PRA QUEM LER O TOPICO. JA ARRUMEI AQUI. VLWZAO EIN
  18. TEM COMO DEIXAR O RIDE FREE?
  19. Local errado? to pedindo ajuda no local certo. ajuda não tem 1 agora pra enche o saco tem um monte desculpe as palavras de baixo calão mais é assim que trato imprestáveis.
  20. continua montando no fly Fly ou Surf Quer dize o surf nao monta mais o fly monta ;s
  21. você deixou tudo para premium ou apenas fly e ride?
  22. ERRO. NAO DA PRA USAR O BOTAO ORDER ERRO LOG: [20/06/2012 11:50:22] [Error - Action Interface] [20/06/2012 11:50:22] data/actions/scripts/order.lua:onUse [20/06/2012 11:50:22] Description: [20/06/2012 11:50:22] attempt to index a nil value [20/06/2012 11:50:22] stack traceback: [20/06/2012 11:50:22] [C]: in function 'doTeleportThing' [20/06/2012 11:50:22] data/actions/scripts/order.lua:46: in function <data/actions/scripts/order.lua:28>
  23. MAIS NO CASI SE MUDAR O ORDER, DEIXARIA TODOS OS POKEMONS PARA PREMIUM USER MAIS TODO CASO TA AE: local skills = specialabilities local surfborders = {4644, 4645, 4646, 4647, 4648, 4649, 4650, 4651, 4652, 4653, 4654, 4655, 4656, 4657, 4658, 4659, 4660, 4661, 4662, 4663} local txt = { ["rock smash"] = {"break that rock!", "smash that rock!", "destroy that rock!", "smash it!", "break it!", "destroy it!"}, ["cut"] = {"cut that bush!", "cut it down!", "cut it off!", "cut off that bush!", "cut down that bush!", "cut that bush down!"}, ["move"] = {"move!", "move there!", "go there!", "walk there!"}, ["light"] = {"flash!", "light!", "flash this place!", "light up this place!"}, ["dig"] = {"open that hole!", "dig that hole!", "open it!", "dig it!"}, ["blink"] = {"teleport there!", "blink there!", "blink!", "teleport!"}, ["ride"] = {"let me ride you!", "let's ride!", "let me mount you!", "let me get on you!"}, ["fly"] = {"let's fly!", "let me get on you!"} , ["untransform"] = {"go back to normal!", "transform into yourself again!", "stop transformation!"}, } -- NAME OUTFIT SPEED local flys = { ["Moltres"] = {229, 2300}, -- moltres ["Articuno"] = {230, 2100}, -- artic ["Zapdos"] = {224, 2600}, -- zapdos ["Mew"] = {232, 2200}, -- 1000 ["Mewtwo"] = {233, 2200},-- two ["Dragonite"] = {221, 1300},-- nite ["Pidgeot"] = {222, 900}, -- geot ["Fearow"] = {226, 800}, -- fearow ["Aerodactyl"] = {227, 1100}, -- aero ["Charizard"] = {216, 1000}, -- chari ["Porygon"] = {316, 600}, -- porygon } function onUse(cid, item, frompos, item2, topos) local checkpos = topos checkpos.stackpos = 0 if getTileThingByPos(checkpos).uid <= 0 then return true end --------END FLY/RIDE -------- if getCreatureCondition(cid, CONDITION_OUTFIT) and (item2.uid == cid or getRecorderPlayer(topos) == cid) and (getPlayerStorageValue(cid, 17000) >= 1 or getPlayerStorageValue(cid, 17001) >= 1) then if isInArray({460, 11675, 11676, 11677}, getTileInfo(getThingPos(cid)).itemid) then doPlayerSendCancel(cid, "You can\'t stop flying at this height!") return true end local item = getPlayerSlotItem(cid, 8) local pokemon = getItemAttribute(item.uid, "poke") local x = pokes[pokemon] if getTileInfo(getThingPos(cid)).itemid >= 4820 and getTileInfo(getThingPos(cid)).itemid <= 4825 then doPlayerSendCancel(cid, "You can\'t stop flying above the water!") return true end doSummonMonster(cid, pokemon) local pk = getCreatureSummons(cid)[1] if not isCreature(pk) then pk = doCreateMonster(pokemon, backupPos) if not isCreature(pk) then doPlayerSendCancel(cid, "You can't stop flying/riding here.") return true end doConvinceCreature(cid, pk) end doTeleportThing(pk, getThingPos(cid), false) doCreatureSetLookDir(pk, getCreatureLookDir(cid)) adjustStatus(pk, item.uid, true, false, true) doPlayerSay(cid, ""..getPokeName(getCreatureSummons(cid)[1])..", let me get down!", 1) doChangeSpeed(cid, - getCreatureSpeed(cid)) doChangeSpeed(cid, PlayerSpeed) doRemoveCondition(cid, CONDITION_OUTFIT) setPlayerStorageValue(cid, 17000, -1) setPlayerStorageValue(cid, 17001, -1) return true end ----------------------------- if #getCreatureSummons(cid) == 0 then return doPlayerSendCancel(cid, "You need a pokemon to use order!") end if getCreatureNoMove(getCreatureSummons(cid)[1]) then return true end markLP(getCreatureSummons(cid)[1], -1) if getMarkedPos(getCreatureSummons(cid)[1]).x == topos.x and getMarkedPos(getCreatureSummons(cid)[1]).y == topos.y then return true end local unfix = {x = 1, y = 1, z = 1} local thisball = getPlayerSlotItem(cid, 8) local mysum = getCreatureSummons(cid)[1] local sid = mysum or cid local maxMoveDist = getDistanceBetween(getThingPos(sid), topos) * 2 + 1 markPos(mysum, topos) markOwnerPos(mysum, getThingPos(cid)) -------- ROCK SMASH --------- if item2.itemid == 1285 and isInArray(skills["rock smash"], getPokemonName(mysum)) then doPlayerSay(cid, ""..getPokeName(mysum)..", "..txt["rock smash"][math.random(1, #txt["rock smash"])].."", 1) addEvent(goThere, 500, mysum, topos, "rock smash", isCreature(getCreatureTarget(cid))) return true end ----------------------------- -------- CUT ---------------- if item2.itemid == 2767 and isInArray(skills["cut"], getPokemonName(mysum)) then doPlayerSay(cid, ""..getPokeName(mysum)..", "..txt["cut"][math.random(1, #txt["cut"])].."", 1) addEvent(goThere, 500, mysum, topos, "cut", isCreature(getCreatureTarget(cid))) return true end ----------------------------- -------- TRANSFORM ---------- if getCreatureName(mysum) == "Ditto" and isMonster(item2.uid) then if item2.uid == mysum then if isTransformed(mysum) then deTransform(mysum, getItemAttribute(thisball.uid, "transTurn")) markPos(mysum, unfix) doPlayerSay(cid, ""..getPokeName(mysum)..", "..txt["untransform"][math.random(1, #txt["untransform"])].."", 1) return true end doPlayerSendCancel(cid, "Your ditto is not transformed.") markPos(mysum, unfix) return true end if getCreatureName(item2.uid) == "Ditto" then doPlayerSendCancel(cid, "Your ditto can't transform into another ditto.") markPos(mysum, unfix) return true end if getCreatureName(item2.uid) == getPlayerStorageValue(mysum, 1010) then doPlayerSendCancel(cid, "Your ditto is already transformed into that pokemon.") markPos(mysum, unfix) return true end local cd = getCD(thisball.uid, "trans", 40) if cd > 0 then doPlayerSendCancel(cid, "Your pokemon is too tired to transform again. Cooldown: ("..getStringmytempo(cd)..")") return true end if getHappiness(mysum) <= 50 then doSendMagicEffect(getThingPos(mysum), happinessRate[1].effect) markPos(mysum, unfix) return true end local turn = getItemAttribute(thisball.uid, "transTurn") if not turn or turn > 10 then doItemSetAttribute(thisball.uid, "transTurn", 0) else doItemSetAttribute(thisball.uid, "transTurn", turn + 1) end local time = 140 + 2 * getPokemonLevel(mysum) turn = getItemAttribute(thisball.uid, "transTurn") markPos(mysum, unfix) setPlayerStorageValue(mysum, 1010, getCreatureName(item2.uid)) doSetCreatureOutfit(mysum, getCreatureOutfit(item2.uid), -1) addEvent(deTransform, time * 1000, mysum, turn) doSendMagicEffect(getThingPos(mysum), 184) doCreatureSay(mysum, "TRANSFORM!", TALKTYPE_MONSTER) local name = getCreatureName(item2.uid) setCD(thisball.uid, "trans", 40) doItemSetAttribute(thisball.uid, "transBegin", os.clock()) doSetItemAttribute(thisball.uid, "transLeft", time) doSetItemAttribute(thisball.uid, "transOutfit", getCreatureOutfit(item2.uid).lookType) doSetItemAttribute(thisball.uid, "transName", getCreatureName(item2.uid)) doFaceCreature(mysum, getThingPos(item2.uid)) doPlayerSay(cid, ""..getPokeName(mysum)..", transform into "..getArticle(name).." "..name.."!", 1) if dittoCopiesStatusToo then doSetItemAttribute(thisball.uid, "boffense", dittoBonus * getOffense(item2.uid)) doSetItemAttribute(thisball.uid, "bdefense", dittoBonus * getDefense(item2.uid)) doSetItemAttribute(thisball.uid, "bsattack", dittoBonus * getSpecialAttack(item2.uid)) doSetItemAttribute(thisball.uid, "bagility", dittoBonus * getSpeed(item2.uid)) adjustStatus(mysum, thisball.uid) end return true end ----------------------------- -------- LIGHT -------------- if isMonster(item2.uid) and getCreatureMaster(item2.uid) == cid then markPos(mysum, unfix) if not isInArray(skills["light"], getPokemonName(item2.uid)) then doPlayerSendCancel(cid, "Your pokemon can't use flash.") return true end local cd = getCD(thisball.uid, "light", 30) if cd > 0 then doPlayerSendCancel(cid, "Your pokemon is too tired to use flash. Cooldown: ("..getStringmytempo(cd)..")") return true end doPlayerSay(cid, ""..getPokeName(mysum)..", "..txt["light"][math.random(1, #txt["light"])].."", 1) doCreatureSay(mysum, "FLASH!", TALKTYPE_MONSTER) doSendMagicEffect(getThingPos(mysum), 28) local size = 5 size = size + math.floor(getSpecialAttack(mysum) / 60) size = size + math.ceil(getPokemonLevel(mysum) / 60) if size > 11 then size = 11 end doSetCreatureLight(mysum, size, 215, 600*1000) local delay = math.floor(30 - getPokemonLevel(mysum) / 4) if delay > 0 then setCD(thisball.uid, "light", delay) end return true end ----------------------------- -------- DIG ---------------- if isInArray(skills["digholes"], item2.itemid) and isInArray(skills["dig"], getPokemonName(mysum)) then doPlayerSay(cid, ""..getPokeName(mysum)..", "..txt["dig"][math.random(1, #txt["dig"])].."", 1) addEvent(goThere, 500, mysum, topos, "dig", isCreature(getCreatureTarget(cid))) return true end ----------------------------- -------- BLINK / MOVE ------- if not isCreature(item2.uid) and isInArray(skills["blink"], getPokemonName(mysum)) then local cd = getCD(thisball.uid, "blink", 170) if cd > 0 or not canWalkOnPos(topos, false, false, true, true, true) then doPlayerSendCancel(cid, "Blink cooldown: ("..getStringmytempo(cd)..")") doPlayerSay(cid, ""..getPokeName(mysum)..", "..txt["move"][math.random(1, #txt["move"])].."", 1) addEvent(goThere, 500, mysum, topos, "move", isCreature(getCreatureTarget(cid)), maxMoveDist) return true end local distance = getDistanceBetween(getThingPos(mysum), topos) markPos(mysum, unfix) setCD(thisball.uid, "blink", distance * 12) doPlayerSay(cid, ""..getPokeName(mysum)..", "..txt["blink"][math.random(1, #txt["blink"])].."", 1) doSendDistanceShoot(getThingPos(mysum), topos, 39) doSendMagicEffect(getThingPos(mysum), 211) doTeleportThing(mysum, topos, false) doSendMagicEffect(topos, 134) doCreatureSay(mysum, "BLINK!", TALKTYPE_MONSTER) goThere(mysum, topos, "move", isCreature(getCreatureTarget(cid))) return true end ----------------------------- ----START FLYorRIDE --------- if (item2.uid == cid or getRecorderPlayer(topos) == cid) and (isInArray(skills["fly"], getPokemonName(mysum)) or isInArray(skills["ride"], getPokemonName(mysum))) then --if not isPremium(cid) then --doPlayerSendCancel(cid, "Only premium members are allowed to fly or ride.") --return true --end local pct = getCreatureHealth(mysum) / getCreatureMaxHealth(mysum) doItemSetAttribute(getPlayerSlotItem(cid, 8).uid, "hp", 1 - pct) if isInArray(skills["fly"], getPokemonName(mysum)) then doPlayerSay(cid, ""..getPokeName(mysum)..", "..txt["fly"][math.random(1, #txt["fly"])].."", 1) addEvent(goThere, 500, mysum, topos, "fly", isCreature(getCreatureTarget(cid))) else doPlayerSay(cid, ""..getPokeName(mysum)..", "..txt["ride"][math.random(1, #txt["ride"])].."", 1) addEvent(goThere, 500, mysum, topos, "ride", isCreature(getCreatureTarget(cid))) end return true end ----------------------------- -------- MOVE / END --------- local onlyWater = false if isWater(getTileThingByPos(checkpos).itemid) then onlyWater = true for checkwater = 0, 7 do if not isWater(getTileThingByPos(getPosByDir(checkpos, checkwater)).itemid) then onlyWater = false end end end if onlyWater then doPlayerSendCancel(cid, "Destination is not reachable.") return true end doPlayerSay(cid, ""..getPokeName(mysum)..", "..txt["move"][math.random(1, #txt["move"])].."", 1) if isCreature(getCreatureTarget(cid)) then goThere(mysum, topos, "move", isCreature(getCreatureTarget(cid)), maxMoveDist) else addEvent(goThere, 500, mysum, topos, "move", isCreature(getCreatureTarget(cid)), maxMoveDist) end return true end -----------------------------
  24. do geito que eu deixei o script o player consegue montar, mais nao consegue usar h1 nem h2 se ele for frre gostaria de mudar pra ele nao conseguir montar se for free storage usei: if not isPremium(cid) then
  25. SCRIPT: function onStepIn(cid, item, position, fromPosition) local tileConfig = { kickPos = 1052,1050,7 kickEffect = CONST_ME_POFF, kickMsg = "You need to be a vip to access this area.", enterMsg = "Welcome to vip area. Enjoy!", enterEffect = CONST_ME_MAGIC_BLUE, vipStorage = 13540, } if not isPremium(cid) then doTeleportThing(cid, tileConfig.kickPos) doSendMagicEffect(tileConfig.kickPos, tileConfig.kickEffect) doPlayerSendCancel(cid, tileConfig.kickMsg) return end doPlayerSendTextMessage(cid, 25, tileConfig.enterMsg) doSendMagicEffect(position, tileConfig.enterEffect) return true end
  • Quem Está Navegando   0 membros estão online

    • Nenhum usuário registrado visualizando esta página.
×
×
  • Criar Novo...