Histórico de Curtidas
-
Delaks recebeu reputação de morxx em Subwat Kamikaze V27Pessoal estou ressuscitando meu último mapa, e a última versão do Subwat Kamikaze V27.
Estou sem imagens e estou sem informações do mapa,pois deixei em um fórum,no qual o mesmo fechou inesperadamente,postei o mapa aproximadamente 7 mesês,me desculpem. Estou sem o RME tambêm porém vou deixar o link para baixarem.
Qualquer coisa Administradores ou Players me mandem um PM por aqui, obrigado.
Subwat Kamikaze V27: http://www.4shared.com/rar/0Wbu6pwj/subwat_kamikaze_v27.html?
-
Delaks recebeu reputação de Yuri Trigger em [Monster] Cientista MalucoOi gente do Tibia King vim aqui postar o [Monster] Cientista Maluco.
Vá na pasta data/monsters/bosses crie um arquivo chamado cientistamaluco.lua e coloque:
<?xml version="1.0" encoding="UTF-8"?> <monster name="Cientista Maluco" nameDescription="a cientista maluco" race="blood" experience="2050000" speed="500" manacost="0"> <health now="5000000000" max="5000000000"/> <look type="133" head="97" body="0" legs="38" feet="97" addons="3" corpse="6080"/> <targetchange interval="5000" chance="30"/> <strategy attack="100" defense="0"/> <flags> <flag summonable="0"/> <flag attackable="1"/> <flag hostile="1"/> <flag illusionable="0"/> <flag convinceable="0"/> <flag pushable="0"/> <flag canpushitems="1"/> <flag canpushcreatures="1"/> <flag targetdistance="1"/> <flag staticattack="90"/> <flag runonhealth="0"/> <flag skull="4" /> </flags> <attacks> <attack name="melee" interval="2000" skill="25" attack="20"/> <attack name="drown" interval="2000" chance="8" range="7" radius="3" min="-40000000" max="-60000000"> <attribute key="shootEffect" value="energy"/> <attribute key="areaEffect" value="poff"/> </attack> <attack name="energy" interval="2000" chance="10" range="7" target="1" min="-20000000" max="-36000000"> <attribute key="shootEffect" value="energyball"/> <attribute key="areaEffect" value="energy"/>[/font][/color] </attack> <attack name="speed" interval="2000" chance="7" range="7" target="1" speedchange="-300"> <attribute key="areaEffect" value="redshimmer"/> </attack> </attacks> <defenses armor="15" defense="20"> <defense name="healing" interval="2000" chance="12" min="40000000" max="60000000"> <attribute key="areaEffect" value="blueshimmer"/> </defense> </defenses> <elements> <element firePercent="10"/> <element earthPercent="20"/> <element energyPercent="20"/> <element icePercent="10"/> <element holyPercent="20"/> <element deathPercent="-5"/> </elements> <immunities> <immunity invisible="1"/> </immunities> <voices interval="3000" chance="10"> <voice sentence="Die in the name of Science!"/> <voice sentence="You will regret interrupting my studies!"/> <voice sentence="Let me test this!"/> <voice sentence="I will study your corpse!"/> </voices> <loot> <item id="7620" chance="20350" /><!-- mana potion --> <item id="2148" countmax="100" chance="19550" /><!-- gold coin --> <item id="2148" countmax="12" chance="19550" /><!-- gold coin --> <item id="7618" chance="22100" /><!-- health potion --> <item id="2803" chance="6975" /><!-- powder herb --> <item id="2162" chance="2875" /><!-- magic light wand --> <item id="2177" chance="2525" /><!-- life crystal --> <item id="1987" chance="100000"><!-- bag --> <inside> <item id="2787" countmax="3" chance="5825" /><!-- white mushroom --> <item id="2687" countmax="5" chance="1225" /><!-- cookie --> <item id="6394" chance="1250" /><!-- cream cake --> <item id="7762" chance="1150" /><!-- small enchanted amethyst --> <item id="7440" chance="575" /><!-- mastermind potion --> </inside> </item> </loot> </monster> Agora vá em monsters.xml e adicione: <monster name="Cientista Maluco" file="bosses/cientistamaluco.xml"/>
Créditos:Delaks e Ropp Xeys.
Comentem.
-
Delaks recebeu reputação de sviniciusimoes em [NPC] Vip Coin SellerPessoal vim trazer o script npc vendedor de vip coin ID: 11192.
Vá em data/npcs e crie um arquivo chamado Vip Coin.lua e coloque:
<?xml version="1.0" encoding="UTF-8"?>
<npc name="Vip Coin Seller" script="data/npc/scripts/default.lua" walkinterval="2000" floorchange="0">
<health now="100" max="100"/>
<look type="302" head="0" body="114" legs="94" feet="0" addons="3"/>
<parameters>
<parameter key="module_shop" value="1"/>
<parameter key="message_greet" value="Ola |PLAYERNAME|. Eu vendo Vip Coins. Diga {trade}."/>
<parameter key="shop_buyable" value="vip coin,11192,100000"/>
</parameters>
</npc>
Vermelho --> Nome do item
Verde --> ID do item
Azul --> Preço do item
Laranja --> Nome do Npc
Roxo --> Outfit do Npc
Comentem e de um rep+ ae.
Npc criado por min!
-
Delaks recebeu reputação de ThiagoBeltramello10 em Subwat Kamikaze V27Pessoal estou ressuscitando meu último mapa, e a última versão do Subwat Kamikaze V27.
Estou sem imagens e estou sem informações do mapa,pois deixei em um fórum,no qual o mesmo fechou inesperadamente,postei o mapa aproximadamente 7 mesês,me desculpem. Estou sem o RME tambêm porém vou deixar o link para baixarem.
Qualquer coisa Administradores ou Players me mandem um PM por aqui, obrigado.
Subwat Kamikaze V27: http://www.4shared.com/rar/0Wbu6pwj/subwat_kamikaze_v27.html?
-
Delaks recebeu reputação de Bucker25 em Subwat Kamikaze V27Pessoal estou ressuscitando meu último mapa, e a última versão do Subwat Kamikaze V27.
Estou sem imagens e estou sem informações do mapa,pois deixei em um fórum,no qual o mesmo fechou inesperadamente,postei o mapa aproximadamente 7 mesês,me desculpem. Estou sem o RME tambêm porém vou deixar o link para baixarem.
Qualquer coisa Administradores ou Players me mandem um PM por aqui, obrigado.
Subwat Kamikaze V27: http://www.4shared.com/rar/0Wbu6pwj/subwat_kamikaze_v27.html?
-
Delaks recebeu reputação de adryelle em Subwat Kamikaze V27Pessoal estou ressuscitando meu último mapa, e a última versão do Subwat Kamikaze V27.
Estou sem imagens e estou sem informações do mapa,pois deixei em um fórum,no qual o mesmo fechou inesperadamente,postei o mapa aproximadamente 7 mesês,me desculpem. Estou sem o RME tambêm porém vou deixar o link para baixarem.
Qualquer coisa Administradores ou Players me mandem um PM por aqui, obrigado.
Subwat Kamikaze V27: http://www.4shared.com/rar/0Wbu6pwj/subwat_kamikaze_v27.html?
-
Delaks recebeu reputação de CH Cheetos em Subwat Kamikaze V27Pessoal estou ressuscitando meu último mapa, e a última versão do Subwat Kamikaze V27.
Estou sem imagens e estou sem informações do mapa,pois deixei em um fórum,no qual o mesmo fechou inesperadamente,postei o mapa aproximadamente 7 mesês,me desculpem. Estou sem o RME tambêm porém vou deixar o link para baixarem.
Qualquer coisa Administradores ou Players me mandem um PM por aqui, obrigado.
Subwat Kamikaze V27: http://www.4shared.com/rar/0Wbu6pwj/subwat_kamikaze_v27.html?
-
Delaks recebeu reputação de Fuck Ya em Subwat Kamikaze V27Pessoal estou ressuscitando meu último mapa, e a última versão do Subwat Kamikaze V27.
Estou sem imagens e estou sem informações do mapa,pois deixei em um fórum,no qual o mesmo fechou inesperadamente,postei o mapa aproximadamente 7 mesês,me desculpem. Estou sem o RME tambêm porém vou deixar o link para baixarem.
Qualquer coisa Administradores ou Players me mandem um PM por aqui, obrigado.
Subwat Kamikaze V27: http://www.4shared.com/rar/0Wbu6pwj/subwat_kamikaze_v27.html?
-
Delaks recebeu reputação de victortopzika em Subwat Kamikaze V27Pessoal estou ressuscitando meu último mapa, e a última versão do Subwat Kamikaze V27.
Estou sem imagens e estou sem informações do mapa,pois deixei em um fórum,no qual o mesmo fechou inesperadamente,postei o mapa aproximadamente 7 mesês,me desculpem. Estou sem o RME tambêm porém vou deixar o link para baixarem.
Qualquer coisa Administradores ou Players me mandem um PM por aqui, obrigado.
Subwat Kamikaze V27: http://www.4shared.com/rar/0Wbu6pwj/subwat_kamikaze_v27.html?
-
Delaks deu reputação a Skyligh em Concurso TirinhaIaê galera tive uma ideia aqui bem legal
de um concurso de tirinha a pessoa que for indo criando a melhor ira ganhar 1 rep nela .
ira ser desse jeito
2 Membros Postaram suas tirinhas o que chegar ate 5 primeiro
E O Vencedor ira receber 2 reps.
ai o próximo membro que postar denovo aquele que venceu ainda ira continuar ate perde
o certo sera só poder postar apos acabar uma votação e o membro vencedor sempre continuara.
Irei Ser bem grato para ajudar a todos
Entrem Nesse link
http://builder.cheez...om/builder/rage
e crie sua tirinha
Lembrando-se só vale tirinha criada por si mesmo e feita pelo Cheezburger caso alcontrario ira ser desclassificado e recebera
rep -
Isto não e injustiça porem isso você esta participando por quer você vai querer.
Organizadores
Skyligh
Jamers Rodrigues
Sua reputação sera dada por nos 2 se você vencer mesmo assim se você perde e eu e o jamers tivermos gostado da sua tirinha voce sera reputado.
-
Delaks deu reputação a Skyligh em [ACTIONS] Tm System -Olá pessoal, venho hoje aqui para postar um sistema de pokemon muito procurado, o famoso, Tm System. Siga o tutorial a risca ou seu trabalho será invão.
Quote
Seu Funcionameto: Basícamente funciona assim; ele adiciona um "Attack" novo a um pokemon ou substitui um existente, dependendo da vontado do player.
Versões testadas: Qualquer derivado do PDA
http://www.havencrest.co.uk/images/page-divider 2.jpg
Vamos ao que interessa, vá em actions.xml e cole a seguinte tag:
<action itemid="id do item que será usado" event="script" value="tmSystem.lua"/> Atenção o item que será usado no system, não deve ter o attributo "Usable" ou você terá erros. Agora crie um arquivo em {data/actions/scripts} chamado tmSystem.lua e cole o seguinte script dentro:
function onUse(cid, item, frompos, item2, topos) local tm = tmabilities local pokemon = getCreatureSummons(cid)[1] local slotball = getPlayerSlotItem(cid, 8).uid local tmname = getItemNameById(item2.itemid) local i = item2.itemid if #getCreatureSummons(cid) == 0 then return doPlayerSendCancel(cid, "Need pokemon to learn a "..tmname..".") end if getItemAttribute(slotball, "TM") == tmname then return doPlayerSendCancel(cid, "Your pokemon was learned this TM.") end if isInArray(tm[""..tmname..""], getPokemonName(pokemon)) then doPlayerSetVocation(cid, 49) openChannelDialog(cid) else doPlayerSendCancel(cid, "This TM not compatible in your pokemon.") end return true end http://www.havencrest.co.uk/images/page-divider 2.jpg Agora vamos em {creaturescripts.xml} e colaremos a seguinte tag:
<event type="joinchannel" name="TmChoose" event="script" value="tmsys.lua"/> Agora crie o arquivo tmsys.lua em {creaturescripts/scripts} e cole isso dentro:
[CODE] function onJoinChannel(cid, channelId, users, isTv) if getPlayerVocation(cid) == 49 then else return true end local summon = getCreatureSummons(cid)[1] local moves = movestable[getCreatureName(summon)] local n = 1 for a = 1, 12 do local b = getNewMoveTable(moves, a) if b then n = n + 1 end end for b = 13, 23 do if channelId == b then local tm = tmabilities local pokemon = getCreatureSummons(cid)[1] local slotball = getPlayerSlotItem(cid, 8).uid local slotm = getPlayerSlotItem(cid, 9) local tmname = getItemNameById(slotm.itemid) if n >= channelId - 11 then doPlayerSendTextMessage(cid, 27, "Congralutions! Your "..getPokemonName(pokemon).." learn a new TM ("..tmname..").") doItemSetAttribute(slotball, "TM", tmname) doItemSetAttribute(slotball, "TMN", channelId - 11) doSendMagicEffect(getThingPosition(pokemon), 28) doSendMagicEffect(getThingPosition(pokemon), 29) doRemoveItem(slotm.uid) if useKpdoDlls then doUpdateMoves(cid) end else doPlayerSendCancel(cid, "Put tm on at last empty slot.") end return false end end return true end http://www.havencrest.co.uk/images/page-divider 2.jpgNesta parte você precisa de muita atenção, você terá que criar 10 channels como no modelo abaixo:
<channel id="13" name="[Put on M1]"> <vocation id="49"/> </channel> <channel id="14" name="[Put on M2]"> <vocation id="49"/> </channel> Em channel id você seguira a ordem 13 a 23, em vocations id pode deixar do jeito que esta. Agora crie uma vocation com o id 49 ou cole a seguinte tag no vocations.xml:
<vocation id="49" name="TM" description="pokemon trainer" needpremium="0" gaincap="0" gainhp="55" gainmana="0" gainhpticks="0" gainhpamount="0" gainmanaticks="0" gainmanaamount="0" manamultiplier="1.1" attackspeed="-1" soulmax="251" gainsoulticks="-1" fromvoc="1" lessloss="0"> <formula meleeDamage="1.0" distDamage="1.0" wandDamage="1.0" magDamage="1.0" magHealingDamage="1.0" defense="1.0" magDefense="1.0" armor="1.0"/> <skill fist="2" club="2" sword="2" axe="2" distance="2" shielding="2" fishing="2" experience="1.1"/> </vocation> Imagem Postada http://www.havencrest.co.uk/images/page-divider 2.jpgAgora vamos em {data/lib} e crie um arquivo chamado tmSystem.lua e cole as seguintes linhas nele:
tmabilities = { ["Solar Beam"] = {"Blastoise", "Venusaur", "Charizard"}, ["Fire Blast"] = {"Blastoise", "Venusaur", "Charizard"}, } Nesta parte você edita, para cada magia[""] = nome dos pokemons que poderam ter essa magia por tm. Tipo do jeito que esta ai, se você for tentar colocar um fire blast em um bulba não vai pegar.. Para adicionar mais magias, basta copiar a linha e colocar o nome da magia nova e seus respectivos pokemons. http://www.havencrest.co.uk/images/page-divider 2.jpg Preste atenção, para cada magia feita, terá que haver um item com o nome da magia. E o id deste item deve ser colocado na tag da actions. ou seja(exemplo): abra o item.xml pegue o item que deseje usar e coloque o nome "Solar Beam"(do mesmo jeito da lib), pegue o id dele e cole na tag da actions. Espero que tenham intendido está parte. http://www.havencrest.co.uk/images/page-divider 2.jpg A ultima parte da instalção, vamos em {data/talkactions/scripts} e abra o arquivo move1.lua e substitua a parte de "if it = 1" até o ultimo "end" antes da parte "if not move then":
local msgs = {"use ", ""} function doAlertReady(cid, id, movename, n, cd) if not isCreature(cid) then return true end local myball = getPlayerSlotItem(cid, 8) if myball.itemid > 0 and getItemAttribute(myball.uid, cd) == "cd:"..id.."" then doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, getPokeballName(myball.uid).." - "..movename.." (m"..n..") is ready!") return true end local p = getPokeballsInContainer(getPlayerSlotItem(cid, 3).uid) if not p or #p <= 0 then return true end for a = 1, #p do if getItemAttribute(p[a], cd) == "cd:"..id.."" then doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, getPokeballName(p[a]).." - "..movename.." (m"..n..") is ready!") return true end end end function onSay(cid, words, param, channel) if param ~= "" then return true end if string.len(words) > 3 then return true end if #getCreatureSummons(cid) == 0 then doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "You need a pokemon to use moves.") return 0 end --alterado v1.5 local mypoke = getCreatureSummons(cid)[1] if getCreatureCondition(cid, CONDITION_EXHAUST) then return true end if getCreatureName(mypoke) == "Evolution" then return true end if getCreatureName(mypoke) == "Ditto" or getCreatureName(mypoke) == "Shiny Ditto" then name = getPlayerStorageValue(mypoke, 1010) --edited else name = getCreatureName(mypoke) end --local name = getCreatureName(mypoke) == "Ditto" and getPlayerStorageValue(mypoke, 1010) or getCreatureName(mypoke) local it = string.sub(words, 2, 3) local move = movestable[name].move1 local cdzin = "move"..it.."" local slotball = getPlayerSlotItem(cid, 8).uid local tmname = getItemAttribute(slotball, "TM") if it == "2" then if getItemAttribute(slotball, "TMN") == 2 then move = {name = ""..tmname.."", level = 0, cd = 12, dist = 0, target = 0} else move = movestable[name].move2 end elseif it == "3" then if getItemAttribute(slotball, "TMN") == 3 then move = {name = ""..tmname.."", level = 0, cd = 12, dist = 0, target = 0} else move = movestable[name].move3 end elseif it == "4" then if getItemAttribute(slotball, "TMN") == 4 then move = {name = ""..tmname.."", level = 0, cd = 12, dist = 0, target = 0} else move = movestable[name].move4 end elseif it == "5" then if getItemAttribute(slotball, "TMN") == 5 then move = {name = ""..tmname.."", level = 0, cd = 12, dist = 0, target = 0} else move = movestable[name].move5 end elseif it == "6" then if getItemAttribute(slotball, "TMN") == 6 then move = {name = ""..tmname.."", level = 0, cd = 12, dist = 0, target = 0} else move = movestable[name].move6 end elseif it == "7" then if getItemAttribute(slotball, "TMN") == 7 then move = {name = ""..tmname.."", level = 0, cd = 12, dist = 0, target = 0} else move = movestable[name].move7 end elseif it == "8" then if getItemAttribute(slotball, "TMN") == 8 then move = {name = ""..tmname.."", level = 0, cd =15, dist = 0, target = 0} else move = movestable[name].move8 end elseif it == "9" then if getItemAttribute(slotball, "TMN") == 9 then move = {name = ""..tmname.."", level = 0, cd = 12, dist = 0, target = 0} else move = movestable[name].move9 end elseif it == "10" then if getItemAttribute(slotball, "TMN") == 10 then move = {name = ""..tmname.."", level = 0, cd = 12, dist = 0, target = 0} else move = movestable[name].move10 end elseif it == "11" then if getItemAttribute(slotball, "TMN") == 11 then move = {name = ""..tmname.."", level = 0, cd = 12, dist = 0, target = 0} else move = movestable[name].move11 end elseif it == "12" then if getItemAttribute(slotball, "TMN") == 12 then move = {name = ""..tmname.."", level = 0, cd = 12, dist = 0, target = 0} else move = movestable[name].move12 end end if not move then doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "Your pokemon doesn't recognize this move.") return true end if getPlayerLevel(cid) < move.level then doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "You need be atleast level "..move.level.." to use this move.") return true end if getCD(getPlayerSlotItem(cid, 8).uid, cdzin) > 0 and getCD(getPlayerSlotItem(cid, 8).uid, cdzin) < (move.cd + 2) then doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "You have to wait "..getCD(getPlayerSlotItem(cid, 8).uid, cdzin).." seconds to use "..move.name.." again.") return true end if getTileInfo(getThingPos(mypoke)).protection then doPlayerSendCancel(cid, "Your pokemon cannot use moves while in protection zone.") return true end if getPlayerStorageValue(mypoke, 3894) >= 1 then return doPlayerSendCancel(cid, "You can't attack because you is with fear") --alterado v1.3 end --alterado v1.6 if (move.name == "Team Slice" or move.name == "Team Claw") and #getCreatureSummons(cid) < 2 then doPlayerSendCancel(cid, "Your pokemon need be in a team for use this move!") return true end --alterado v1.6 if isCreature(getCreatureTarget(cid)) and isInArray(specialabilities["evasion"], getCreatureName(getCreatureTarget(cid))) and math.random(1, 100) <= 10 then local target = getCreatureTarget(cid) if isCreature(getMasterTarget(target)) then --alterado v1.6 doSendMagicEffect(getThingPos(target), 211) doSendAnimatedText(getThingPos(target), "TOO BAD", 215) doTeleportThing(target, getClosestFreeTile(target, getThingPos(mypoke)), false) doSendMagicEffect(getThingPos(target), 211) doFaceCreature(target, getThingPos(mypoke)) return true --alterado v1.6 end end if move.target == 1 then if not isCreature(getCreatureTarget(cid)) then doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "You don\'t have any targets.") return 0 end if getCreatureCondition(getCreatureTarget(cid), CONDITION_INVISIBLE) then return 0 end if getCreatureHealth(getCreatureTarget(cid)) <= 0 then doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "Your have already defeated your target.") return 0 end if not isCreature(getCreatureSummons(cid)[1]) then return true end if getDistanceBetween(getThingPos(getCreatureSummons(cid)[1]), getThingPos(getCreatureTarget(cid))) > move.dist then doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "Get closer to the target to use this move.") return 0 end if not isSightClear(getThingPos(getCreatureSummons(cid)[1]), getThingPos(getCreatureTarget(cid)), false) then return 0 end end local newid = 0 if isSleeping(mypoke) or isSilence(mypoke) then --alterado v1.5 doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "Sorry you can't do that right now.") return 0 else newid = setCD(getPlayerSlotItem(cid, 8).uid, cdzin, move.cd) end doCreatureSay(cid, ""..getPokeName(mypoke)..", "..msgs[math.random(#msgs)]..""..move.name.."!", TALKTYPE_SAY) local summons = getCreatureSummons(cid) --alterado v1.6 addEvent(doAlertReady, move.cd * 1000, cid, newid, move.name, it, cdzin) for i = 2, #summons do if isCreature(summons[i]) and getPlayerStorageValue(cid, 637501) >= 1 then docastspell(summons[i], move.name) --alterado v1.6 end end docastspell(mypoke, move.name) doCreatureAddCondition(cid, playerexhaust) if useKpdoDlls then doUpdateCooldowns(cid) end return 0 end Até que enfim.. Se fizeram tudo certo o sistema vai funcionar se não.... Caso não itendam alguma parte da explicação podem me perguntar por aqui...
Creditos
Smix
-
Delaks deu reputação a Mozark em Ajuda para editar vips do charBom,amigo primeiramente existe dois modo acredite eu.
O primeiro é você ajeitando para quando um player criar conta,ja vir com tal dias vips.Isso pode ser feito no inicio do config.lua do seu server.
O segundo para dar vip,em um char você precisa dar vip na conta do jogador,para isso va na tabela accounts,e procure a conta do jogador,e procura a caixa de vip e edita la.
Obrigado,Mozark.
-
Delaks deu reputação a Skyligh em Logica da programação luaOla galera do tk
muitos como eu tem um problema na logica da programação lua como eu mais andei lendo uns texto da programação e estou entendendo melhor então vou explica-los +- o resumo dela
O que é Lua?
Quais as origens de Lua?
Como contribuir para a comunidade Lua?
Por que escolher Lua?
Lua é rápida
Lua é portátil
Lua é embutível
Lua é poderosa (e simples)
Lua é pequena
Incluir Lua numa aplicação não aumenta quase nada o seu tamanho. O pacote de Lua 5.2.1, contendo o código fonte e a documentação, ocupa 245K comprimido e 960K descompactado. O fonte contém cerca de 20000 linhas de C. No Linux, o interpretador Lua contendo todas as bibliotecas padrões de Lua ocupa 182K e a biblioteca Lua ocupa 243K.
Lua é livre
Lua tem importância global
Créditos
LuaOrg (Pelo Texto)
Skyligh (Pela Postagem)
-
Delaks deu reputação a Skyligh em [Resolvido]Script de Aol Infinito, problema com Red Skull@Fortation acho que não ira funcionar assim se não ira dropar para todos os players também
editei o script.
function onPrepareDeath(cid, lastHitKiller, mostDamageKiller) if isPlayer(cid) == true then if (getPlayerSlotItem(cid, 2).itemid == 10219) then doCreatureSetDropLoot(cid, false) doSendMagicEffect(getCreaturePosition(cid), CONST_ME_HOLYAREA) return TRUE end if getPlayerSkullType(cid) < 5 then doCreatureSetDropLoot(cid, true) return true end end end
-
Delaks deu reputação a Skyligh em [Resolvido]Script de Aol Infinito, problema com Red Skullduvida sanada
reportado
-
Delaks deu reputação a thiagobji em (RESOLVIDO) [AJUDA] Hollister Baiak crash reconectEu aconselho baixar essa e testar pra ver se o erro saiu.
-
Delaks deu reputação a Skyligh em Evil SpritEvil Spirit
Olá, venho trazer esta spell Evil Spirit, que fiz baseada na magia do MuOnline.
-- SPELL EVIL SPIRIT BY: XOTSERVX -- local min, max = 100, 200 -- dano function isWalkable(pos, creature, proj, pz)-- by Nord if getTileThingByPos({x = pos.x, y = pos.y, z = pos.z, stackpos = 0}).itemid == 0 then return false end if getTopCreature(pos).uid > 0 and creature then return false end if getTileInfo(pos).protection and pz then return false, true end local n = not proj and 3 or 2 for i = 0, 255 do pos.stackpos = i local tile = getTileThingByPos(pos) if tile.itemid ~= 0 and not isCreature(tile.uid) then if hasProperty(tile.uid, n) or hasProperty(tile.uid, 7) then return false end end end return true end function getPosDirs(p, dir) return dir == 1 and {x=p.x-1, y=p.y, z=p.z} or dir == 2 and {x=p.x-1, y=p.y+1, z=p.z} or dir == 3 and {x=p.x, y=p.y+1, z=p.z} or dir == 4 and {x=p.x+1, y=p.y+1, z=p.z} or dir == 5 and {x=p.x+1, y=p.y, z=p.z} or dir == 6 and {x=p.x+1, y=p.y-1, z=p.z} or dir == 7 and {x=p.x, y=p.y-1, z=p.z} or dir == 8 and {x=p.x-1, y=p.y-1, z=p.z} end function posIgual(pos1, pos2) return pos1.x == pos2.x and pos1.y == pos2.y and pos1.z == pos2.z and true or false end effect = 62 distance = 31 damage = COMBAT_DEATHDAMAGE evilspirit = { walk = function (cid, min, max, pos, rounds, ultimapos) if rounds == 0 then return true end if not isCreature(cid) then return true end posdisp = {} for _, dir in pairs({1, 5, 7, 3}) do if isWalkable(getPosDirs(pos, dir)) and not posIgual(getPosDirs(pos, dir), getThingPos(cid)) and not posIgual(getPosDirs(pos, dir), ultimapos) then table.insert(posdisp, getPosDirs(pos, dir)) end end if #posdisp < 1 then return true end posesc = posdisp[math.random(1, #posdisp)] ultimapos = pos doSendDistanceShoot(pos, posesc, distance) doAreaCombatHealth(cid, damage, posesc, 0, -min, -max, effect) addEvent(evilspirit.walk, 140, cid, -min, -max, posesc, rounds - 1, ultimapos) end } function onUse(cid,item,item2,frompos,pos,topos) evilspirit.walk(cid, 10, 20, getThingPos(cid), 40, {x=1, y=1, z=1}) for i = 1, 13 do addEvent(evilspirit.walk, i * math.random(300, 500), cid, min, max, getThingPos(cid), 40, {x=1, y=1, z=1}) end return true end
créditos
Xotserv
As configurações está no script, vcs montam a tag agora. Ai vai um video paraver como tá:
-
Delaks deu reputação a Skyligh em Sistema De AdvertênciaOlá pessoal, venho lhes trazer um sistema, que por minha parte achei legal, feito por mim ele se chama Advertence System.
Funciona basicamente em cima de advertências; que o player poderá receber caso uma ocasião aconteça. Só existem duas ocasiões até o momento, porque fiquei sem ideias de mais. Vamos ver(ler) um exemplo:
Quote
Um player coloca PremiumAccount em um ot(o seu ot), após o login dele ele recebera um item que terá uma imagem de uma Exclamação.
Quando ele clicar nesse item(com o botão direito) será enviada uma mensagem para ele com a Advertência "Parabéns, você agora é premium account.".
Há mais um ocasião em que o player pode e recebera uma advertência; quando ele for FreeAccount.
Chega de Delongas e vamos ao que interessa.
Crie um arquivo no diretório data/actions/scripts chamado(nomeado) advertenciaSystemAction.lua abra-o e cole o seguinte código dentro:
function onUse(cid, item, fromPosition, itemEx, toPosition) if getPlayerStorageValue(cid, advertenceStorage) == 1 then doPlayerPopupFYI(cid, advertencia_Premium) doRemoveItem(item.uid, 1) elseif getPlayerStorageValue(cid, advertenceStorage) == 2 then doPlayerPopupFYI(cid, msgNotIsPremium) doRemoveItem(item.uid, 1) end end Agora abra o arquivo actions.XML encontrado no diretório data/actions e cole a tag a seguir: <action itemid="" script="advertenciaSystemAction.lua"/> Agora vamos em data/creaturescript/script e em seguida crie um arquivo chamado(nomeado) advertenciaSystemCreatureScript.lua e cole o seguinte código dentro: function onLogin(cid) doPlayerSendIconAdvertencia(cid, premium) doPlayerSendIconAdvertencia(cid, notpremium) return true end Agora vamos abrir o arquivo creaturescript.XML e colaremos a tag abaixo: <event type="login" name="advertenciaSystem" event="script" value="advertenciaSystemCreatureScript.lua"/> Agora vamos a parte final dos scripts, vá até a pasta data/lib e crie um arquivo chamado(nomeado) advertenciaSystemLib.lua e cole o seguinte código dentro: ----------- Mensagens de Advertencias ----------- advertencia_Premium = "Congrulations, you now is a player Premium." msgNotIsPremium = ""..getCreatureName(cid)..", you dont have a premium. You need buy! /n Go to WebSite this ot for more informations." ----------- Mensagens de Advertencias ----------- ----------- Configuração Gerais ----------- iconAdvertence = advertenceStorage = 8274 ----------- Configuração Gerais ----------- --[[ Tabela dos Tipos de Advertencias contidos nesta Versão 1.0 types = { ["premium"] ["notpremium"] } ]]-- function doPlayerSendIconAdvertencia(cid, type) if type == "premium" and getPlayerPremiumDays(cid) > 0 then doPlayerAddItem(cid, iconAdvertence, 1) setPlayerStorageValue(cid, advertenceStorage, 1) elseif type == "notpremium" and getPlayerPremiumDays(cid) < 1 then doPlayerAddItem(cid, iconAdvertence, 1) setPlayerStorageValue(cid, advertenceStorage, 2) end end end
Agora vamos colocar a imagem do Ícone de Advertência em seu cliente.
Programas necessários:
Quote
DatEditor 8.54-8.60
ItemOtEditor 8.54-8.60
Imagem do Icone.png
Siga o tutorial abaixo a risca caso contrário será inútil sua tentativa.
Abra o DatEditor com o seu cliente como na imagem abaixo:
Depois de feito vá ate o botão no “FILE->New->Item” como na imagem abaixo:
Anote o itemtype do novo item:
Agora vá ao botão “Import->Sprites” e procure a imagem do Ícone que você salvou.
Agora aperte a tecla “INSERT” do seu teclado e a sua imagem irá aparecer deste lado <<:
Agora aperte “CTRL+S” para salvar e pronto a 1ª parte de adicionar o item ao seu ot esta completa. Vamos agora introduzir o item no item.XML, abra o ItemOtEditor com o item.OTB do seu ot. Após feito isso vá a “Other” e procure qualquer um dos últimos itens da mesma lista e selecione-o.
Em “sid” você colocara o “itemtype” do DatEditor que lhe mandei gravar. Agora marque a opção “Pickupable” agora salve e pronto.
Abra seu item.XML e cole a seguinte linha:
<item id="idDoItemDaListaOther" article="a" name="Advertence Icon"></item>
idDoItemDaListaOther = Nesta parte você coloca o id do item da lista other que você selecionou. Pegue este mesmo id e vá na lib colocalo lá.
Uffffa Terminou...
Espero que gostem, façam criticas e reportem bugs. Mais por favor reportem bugs e não erro de instalação. Quem quiser postar mais advertências podem me dizer que eu faço...
Créditos:
Formatação: SmiX
Scripts: SmiX
Tutorial: SmiX
-
Delaks recebeu reputação de rakamiro em Subwat Kamikaze V23 AtualizadoBeleza galera,estou aqui postando a nova versão Subwat Kamikaze V23.Agora com muitas coisas novas!
ATUALIZAÇÔES SUBWAT KAMIKAZE V23
Novas houses com o teleport no templo.
Novas hunts com o telport no templo.
Novos monsters.
Retirado alguns bugs.
Reformado os lugares dos itens no templo.
Retirado todo o gelo.
Colocado grama na city principal e com mais natureza.
Novo piso na área de eventos.
Novo piso na Super Vip.
Reformado o piso do templo.
Novas spells
IMAGENS
TEMPLO
SUPER VIP
TELEPORTS
NOVOS TELEPORTS
DOWNLOAD SEM ERRO: http://www.4shared.c...aze_V23_3.html?
SCAN:https://www.virustot...sis/1346091759/
Intão é isso galera,comentem com o que voces acharam,e sempre estou trazedo atualizações!Obrigado,de um rep se puder.Flw.
-
Delaks recebeu reputação de ADMDestroyer em Subwat Kamikaze V23 AtualizadoBeleza galera,estou aqui postando a nova versão Subwat Kamikaze V23.Agora com muitas coisas novas!
ATUALIZAÇÔES SUBWAT KAMIKAZE V23
Novas houses com o teleport no templo.
Novas hunts com o telport no templo.
Novos monsters.
Retirado alguns bugs.
Reformado os lugares dos itens no templo.
Retirado todo o gelo.
Colocado grama na city principal e com mais natureza.
Novo piso na área de eventos.
Novo piso na Super Vip.
Reformado o piso do templo.
Novas spells
IMAGENS
TEMPLO
SUPER VIP
TELEPORTS
NOVOS TELEPORTS
DOWNLOAD SEM ERRO: http://www.4shared.c...aze_V23_3.html?
SCAN:https://www.virustot...sis/1346091759/
Intão é isso galera,comentem com o que voces acharam,e sempre estou trazedo atualizações!Obrigado,de um rep se puder.Flw.
-
Delaks deu reputação a MatheusVidaLoka em [Actions] Novo goldFala galera do Tibia King, hoje venho trazer um actions a vocês, queria dizer que essa action já é velha, mas dei uma olhada no TK e não vi nada a respeito da action, então decidi postar para vocês.
Qual a função da Action?
É um novo tipo de gold que cada um vale 1kk, funcionando normal nas compras e vendas de itens em npcs, e nas trocas de crystal coin para o golda nugget (novo gold).
Bom vamos ao script.
Vá em data/actions/scripts e abra o arquivo crystal.lua, apague tudo o que está dentro, logo em seguida cole o script abaixo:
Traduzindo:
Vermelho: É o id da crystal coin, e a quantidade a ser trocada por 1 gold nugget (Novo Gold).
Azul: É o id da gold nugget, e a quantidade de gold nugget.
Logo em seguida, vá novamente em data/actions/scripts copie qualquer arquivo.lua e cole, em seguida renomeie-o para "goldnuggets" sem aspas, abra-o, apague tudo, e cole o script abaixo.
Traduzindo:
Laranja: É o que vai dizer quando o player trocar 1 gold nugget por 100 crystal coins.
Verde: É o id da crystal coin, e a quantidade equivalente a 1 gold nugget.
Logo em seguida, abra data/actions/actions.xml e adicione a tag abaixo.
Traduzindo:
Rosa: É o id do gold nuggets.
Azul: O nome do arquivo.lua que você salvou.
Depois disso abra data/items/items.xml, aperte CTRL + F, e digite 2157, ai você vai achar o item Gold Nugget que vai estar assim:
Substitua tudo por isso:
<item id="2157" article="a" name="gold nugget" plural="gold nuggets">
<attribute key="weight" value="10"/>
<attribute key="worth" value="1000000" />
Traduzindo:
Vermelho: Peso do gold nugget.
Azul: Valor do item (como 1 crystal coin = 10k , 1 gold nugget = 1kk)
Logo depois vá data/actions/scripts/other e abra o arquivo changegold.lua, susbistitua tudo oque está la dentro por esse script a seguir, e salve:
-- By MatheusVidaLoka
local coins = {
[iTEM_GOLD_COIN] = {
to = ITEM_PLATINUM_COIN, effect = TEXTCOLOR_YELLOW
},
[iTEM_PLATINUM_COIN] = {
from = ITEM_GOLD_COIN, to = ITEM_CRYSTAL_COIN, effect = TEXTCOLOR_LIGHTBLUE
},
[iTEM_CRYSTAL_COIN] = {
from = ITEM_PLATINUM_COIN, to = 2157, effect = TEXTCOLOR_LIGHTBLUE
},
[2157] = {
from = ITEM_CRYSTAL_COIN, effect = TEXTCOLOR_TEAL
}
}
function onUse(cid, item, fromPosition, itemEx, toPosition)
if(getPlayerFlagValue(cid, PLAYERFLAG_CANNOTPICKUPITEM)) then
return false
end
local coin = coins[item.itemid]
if(not coin) then
return false
end
if(coin.to ~= nil and item.type == ITEMCOUNT_MAX) then
doChangeTypeItem(item.uid, item.type - item.type)
doPlayerAddItem(cid, coin.to, 1)
doSendAnimatedText(fromPosition, "$$$", coins[coin.to].effect)
elseif(coin.from ~= nil) then
doChangeTypeItem(item.uid, item.type - 1)
doPlayerAddItem(cid, coin.from, ITEMCOUNT_MAX)
doSendAnimatedText(fromPosition, "$$$", coins[coin.from].effect)
end
return true
end
Traduzindo:
Vermelho: É o id do Gold Nugget.
Por fim vá em data/actions/actions.xml, pule uma linha qualquer e cole isso, e salve:
<action itemid="2157" event="script" value="other/changegold.lua"/>
Traduzindo:
Azul: É o id do gold nugget.
Verde: O nome do arquivo que você salvou.
Server testado em Ot 8.60 e funcionou corretamente.
Creditos:
MatheusVidaLoka
JFLNT
Se enfringi alguma regra do TK por favor me reporte.
Desculpe-me pelos mal usos das ferramentas do TK (quotes,spoiler,CODES,etc) pois estou com certos problemas.
-
Delaks recebeu reputação de Cat em [Talkaction] !letterEai pessoal vim aqui postar a talkaction !letter
Vá em data/talkactions/scripts e crie uma arquivo chamado letter.lua e coloque:
Agora vá em data/talkactions/talkaction.xml e adicione:
Quando o player falar !letter,uma carta vai automaticamente para a bag dele.
Comentem.De um rep.
-
Delaks recebeu reputação de Lord Ownz em [NPC] Vip Coin SellerPessoal vim trazer o script npc vendedor de vip coin ID: 11192.
Vá em data/npcs e crie um arquivo chamado Vip Coin.lua e coloque:
<?xml version="1.0" encoding="UTF-8"?>
<npc name="Vip Coin Seller" script="data/npc/scripts/default.lua" walkinterval="2000" floorchange="0">
<health now="100" max="100"/>
<look type="302" head="0" body="114" legs="94" feet="0" addons="3"/>
<parameters>
<parameter key="module_shop" value="1"/>
<parameter key="message_greet" value="Ola |PLAYERNAME|. Eu vendo Vip Coins. Diga {trade}."/>
<parameter key="shop_buyable" value="vip coin,11192,100000"/>
</parameters>
</npc>
Vermelho --> Nome do item
Verde --> ID do item
Azul --> Preço do item
Laranja --> Nome do Npc
Roxo --> Outfit do Npc
Comentem e de um rep+ ae.
Npc criado por min!
-
Delaks recebeu reputação de 3visan em [NPC] Vip Coin SellerPessoal vim trazer o script npc vendedor de vip coin ID: 11192.
Vá em data/npcs e crie um arquivo chamado Vip Coin.lua e coloque:
<?xml version="1.0" encoding="UTF-8"?>
<npc name="Vip Coin Seller" script="data/npc/scripts/default.lua" walkinterval="2000" floorchange="0">
<health now="100" max="100"/>
<look type="302" head="0" body="114" legs="94" feet="0" addons="3"/>
<parameters>
<parameter key="module_shop" value="1"/>
<parameter key="message_greet" value="Ola |PLAYERNAME|. Eu vendo Vip Coins. Diga {trade}."/>
<parameter key="shop_buyable" value="vip coin,11192,100000"/>
</parameters>
</npc>
Vermelho --> Nome do item
Verde --> ID do item
Azul --> Preço do item
Laranja --> Nome do Npc
Roxo --> Outfit do Npc
Comentem e de um rep+ ae.
Npc criado por min!