Ir para conteúdo

LuckOake

Marquês
  • Total de itens

    1104
  • Registro em

  • Última visita

  • Dias Ganhos

    20

Tudo que LuckOake postou

  1. Comandos: /openvote pergunta -- Abre a votação /closevote -- Fecha a votação !vote yes/no -- Vota
  2. Uh, maneiro, bem legal isso ai Só que faltou um daqueles POGs sinistros ai hihi
  3. Olá galera Já viram aqueles scripts antigos, lá de 2006, 2007 ~~ 2011, que são totalmente bagunçados e é um saco pra configurar e/ou adicionar coisas novas? Pois é, eu tive a ideia de refazê-los para melhorar sua formatação e aprimorar suas funcionalidades. O que é: É um pacote que conta atualmente com 13 scripts (actions e talks) de scripts antigos que foram refeitos por mim. Download está no fim da mensagem, no anexo. Ou se quiserem, podem pegar algum script sozinho aqui no tópico, que jájá vou editar e colocar isso. Actions: - Absorb Rune - Bread System - Future Orb - Trash Lever - Multifunctional Rune - Present Box - Steal Rune - Teleport Rune - Vocation Chest - Vocation Door Talks: - AFK - Change Status - Terror - Vote System Scripts: OBS: Caso encontre algum bug, avise aqui no tópico. OBS²: Caso tenha algum outro script antigo que você gostaria que eu refizesse, poste aqui no tópico. OBS³: Sim, eu sei que tem poucos scripts ainda, mas é por isso que eu quero que vocês peçam mais scripts antigos, como no OBS². Remakes.rar
  4. Tópico movido para a seção de dúvidas e pedidos resolvidos.
  5. É, realmente. function onLook(cid, thing, position, lookDistance) local vocs = { [1] = getPlayerSex(cid) == PLAYERSEX_MALE and "He's Feiticeiro" or "He's Feiticeira", [2] = getPlayerSex(cid) == PLAYERSEX_MALE and "He's Mago" or "He's Maga", } local table = vocs[getPlayerStorageValue(cid, 222)] if not table then return true end if isPlayer(thing.uid) then doPlayerSetSpecialDescription(thing.uid, "\n[Promotion: " .. table .."]") end return true end Dei uma arrumada no script.
  6. Cara, é claro que vai dar erro, a tabela tá com dois index iguais .-. Troca o 222 de um desses dois aqui: [222] = getPlayerSex(cid) == PLAYERSEX_MALE and "He's Feiticeiro" or "He's Feiticeira", [222] = getPlayerSex(cid) == PLAYERSEX_MALE and "He's Mago" or "He's Maga" Além do que a variável table tá com o mesmo nome da table .-.
  7. Nossa cara, nem dá vontade de ler esse script. Já leu o tutorial do Skyen sobre elegância nos códigos? Além do que pra dar erro é fácil. Aconselharia até fazer o player escolher quantos dias quer, e não ficar essa coisa já programada. function onSay(cid, words, param) local day_price = 10000 -- Quantos gold coins vão custar 1 dia de premium if not param then doPlayerSendCancel(cid, "Escolha quantos dias de premium você quer.") return true elseif not doPlayerRemoveMoney(cid, day_price*param) then doPlayerSendCancel(cid, "Você não possui dinheiro suficiente.") return true end doPlayerAddPremiumDays(cid, param) doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "Você comprou "..param.." dias de premium por "..(day_price*param).." gold coins.") return true end
  8. Tópico movido para a seção de dúvidas e pedidos resolvidos.
  9. Tópico movido para a seção de dúvidas e pedidos resolvidos.
  10. O brun123 tinha feito um fix uma vez, tá ai: local blockDoubleExecution = {} function onEquip(cid, item, slot) if blockDoubleExecution[cid] then blockDoubleExecution[cid] = nil return true else blockDoubleExecution[cid] = true end local forc = getPlayerStorageValue(cid, 23222) setPlayerStorageValue(cid, 23222, forc + 1) return true end function onDeEquip(cid, item, slot) local forc = getPlayerStorageValue(cid, 23222) setPlayerStorageValue(cid, 23222, forc - 2) return true end
  11. Não cara, você não entendeu. Eu disse que entendi a LÓGICA da programção, não disse em momento nenhum que aprendi a programar. O máximo que ainda consigo fazer é algumas funções simples como um sistema de banco, por exemplo. Pra prosseguir, eu preciso aprender meta tabelas e meta métodos, sem isso eu não aprendo OOP de maneira eficiente.
  12. Eu já li esse tutorial mas não explicou nada. Eu quero é a explicação de um scripter de uma maneira mais clara.
  13. Olá galera Recentemente eu consegui entender a lógica da Programação Orientada a Objetos, mas não consegui compreender o uso de meta-tabelas e meta-métodos. Então a dúvida é a seguinte: Como funcionam meta-tabelas e meta-métodos? Obrigado
  14. Cara, eu fiz esse script quando eu ainda nem tinha noção de Lua direito, é claro que dá pra melhorar e muito esse script. Sobre não poder usar attacks e spells, é só fazer uma verificação num onAttack e num onCast (ou num onCombat).
  15. Tópico movido para a seção de dúvidas e pedidos resolvidos.
  16. Cara, segunda vez que te vejo floodando só hoje, seu comentário é totalmente desnecessário, não ajudou em nada no tópico e ainda zoou com a pessoa. REP-. Na próxima é alerta.
  17. Beleza, funcionou, só que aqui moveu alguns scripts que estavam registrados, o bug é por que o seu script está como case sensitive, o script tava registrado como teste mas o arquivo tava como Teste. E tinha umas pastas a mais aqui na minha data que tinham uns arquivos.xml, o programa abriu essa pasta e deu erro: :121: attempt to index local 'xml' (a nil value) Anyway, legal o programa
  18. Entendi a Programação Orientada a Objetos, me sinto com poder .-.
    1. Oneshot

      Oneshot

      parabeemmss kra

  19. Se quiser em action, tó: actions.xml: <action actionid="11696" script="efeitoforever.lua"/> Substitua o xxxx por um action id que desejar. efeitoforever.lua: function eff(id, pos) doSendMagicEffect(pos, id) addEvent(eff, 1000, id, pos) end function onUse(cid, item) local efeito = 10 -- ID do efeito eff(efeito, getThingPos(item.uid)) return true end
  20. Movement, no caso, seria se o player pisasse num lugar? Sim, tem: movements.xml: <movevent type="StepIn" actionid="xxxx" script="efeitoforever.lua"/> Substitua o xxxx por um action id que desejar. efeitoforever.lua: function eff(id, pos) doSendMagicEffect(pos, id) addEvent(eff, 1000, id, pos) end function onStepIn(cid, item) local efeito = 10 -- ID do efeito eff(efeito, getThingPos(item.uid)) return true end Configure aqui: local efeito = 10 -- ID do efeito
  21. Wow, legal, REP+. Poderia fazer um que usa o sistema do example82.lua, ao invés de XML.
  22. LuckOake

    A arte da POG

    Olá Antes de mais nada, quero informar que este tutorial é apenas para descontração, e que não seja levado a sério, por favor. Não, é sério mesmo, não leve isso a sério ou você pode acabar com sua reputação. ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ Introdução 1) O que é POG? POG, ou Programação Orientada a Gambiarras, é o modo de programar que faz um usuário chegar à um resultado de uma maneira extremamente nada convencional, tendo vários motivos, como a preguiça. É o ápice da carreira de um programador, em que ele se torna um gambiarrizador. O primeiro POG conhecido foi feito em 1582 d.C. Atualmente, este POG é chamado de "Ano Bissexto", criado pelo Papa Gregório XIII. Este POG foi aplicado quando descoberto que a Terra leva 365 dias e 6 horas para dar uma volta no Sol, sendo que nosso calendário tem apenas 365 dias, fazendo com que tenhamos 6 horas a menos no ano. Ao invés de corrigir o sistema para que não houvesse essa diferença, a solução adotada pelo Papa foi: "A cada quatro anos, é só colocar mais um dia". E então foi criado o primeiro POG de que se tem notícia. Por causa desse fato, dia 29 de fevereiro ficou conhecido como "Dia Internacional da POG", instituído em 1930. 2) POGs Conhecidas - Windows - Qt - Universo - MacGyver - Scripts do Caotic Sendo um POGger Antes de se tornar um POGger, há alguns requisitos básicos: - Preguiça - Final de semana - Véspera de feriado ou feriado - Windows - Imaginação Após ter esses requisitos, você pode começar a ser o mestre dos mestres, o gambiarrizador. O tipo de programador que consegue fazer o confuso ficar complexo. Comecemos com um script básico, que soma 3 com 50. local a = 3 local b = a + 50 local c = b print(c) E um script que diz sim se a = b. local a = 3 local b = 2 if b == a then print("Sim") end if b ~= a then print("Não") end Ou então, para gerar um número aleatório. function generateRandomNumber() return 4 end (OBS: A melhor parte é teimar que o número é aleatório) E até mesmo pra saber se o número é par: function isPar(number) local x = {1, 3, 5, 7 , 9} local number = tostring(number) local a = string.sub(number, #number) local a = tonumber(a) for i =1, #x do if a == x[i] then return false end end return true end Para descobrir se alguém está online também: function isOnline(cid) local player = {} for a, b in ipairs(getPlayersOnline()) do if b == cid then table.insert(player, cid) end end if #player > 0 then return true else return false end end Ou montando frases: function pogeandoComCaotic(array) -- Quem precisa de table.concat? k = 1 while k < #array+1 do x = ""..(x or "").." "..array[k].."" k = k+1 end return x end local a = {"usar","table","concat","e","para","os","fracos"} print(pogeandoComCaotic(a)) Afinal, pra quê table.concat quando se tem um caotic? - POGs falhos Só vale lembrar que nem sempre um POG vai funcionar, muitas vezes ele vai acabar explodindo o PC da pessoa dando erro. local a = 3 while a ~= 100 do if a then os.execute("ECHO "..a.."") local a = a + 1 end end Final Como já dizem os grandes programadores gambiarrizadores: "Não importa a gambiarra, o que importa é o resultado final". Felizmente, ninguém escapa do POG. Programador que não usa POG é poser. ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ É isso galera, obrigado e NÃO SEJAM POGGERS Créditos: - LuckOake -- Pelo "tutorial" e scripts - Caotic -- Por alguns POGs - Slicer -- Por ajudar com um POG - Desciclopédia -- Por algumas informações
  • Quem Está Navegando   0 membros estão online

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