Ir para conteúdo

SkyDangerous

Lorde
  • Total de itens

    2098
  • Registro em

  • Última visita

  • Dias Ganhos

    16

Tudo que SkyDangerous postou

  1. Alguém pode dar arrumada no meu script, eu sei que ele ta muito pogzado, ultimamente não tenho querendo pensar em usar tabelas e for ;D Ai eu faço da maneira que eu encontrar mais facil e pensar menos ;D Quando eu falo hi , sword , yes .. ele só aceita o sword e não fala nada no yes. local keywordHandler = KeywordHandler:new() local npcHandler = NpcHandler:new(keywordHandler) NpcSystem.parseParameters(npcHandler) local talkState = {} function onCreatureAppear(cid) npcHandler:onCreatureAppear(cid) end function onCreatureDisappear(cid) npcHandler:onCreatureDisappear(cid) end function onCreatureSay(cid, type, msg) npcHandler:onCreatureSay(cid, type, msg) end function onThink() npcHandler:onThink() end local config = { skills = {club = 1, sword = 2, axe = 3, distance = 4, shield = 5}, item = 9971, count = 1 } function creatureSayCallback(cid, type, msg) if(not npcHandler:isFocused(cid)) then return false end local talkUser = NPCHANDLER_CONVBEHAVIOR == CONVERSATION_DEFAULT and 0 or cid if msgcontains(msg, 'sword') then if isInArray({4,8},getPlayerVocation(cid)) then selfSay('You want to buy a skill sword for 1 gold ingot.?', cid) talkState[talkUser] = 1 else selfSay('Only knight and elite knight can buy sword fighting.', cid) end elseif msgcontains(msg, 'club') then if isInArray({4,8},getPlayerVocation(cid)) then selfSay('You want to buy a skill club for 1 gold ingot?', cid) talkState[talkUser] = 2 else selfSay('Only knight and elite knight can buy club fighting.', cid) end elseif msgcontains(msg, 'mace') then if isInArray({4,8},getPlayerVocation(cid)) then selfSay('You want to buy a skill mace for 1 gold ingot.?', cid) talkState[talkUser] = 3 else selfSay('Only knight and elite knight can buy mace fighting.', cid) end elseif msgcontains(msg, 'axe') then if isInArray({4,8},getPlayerVocation(cid)) then selfSay('You want to buy a skill axe for 1 gold ingot.?', cid) talkState[talkUser] = 4 else selfSay('Only knight and elite knight can buy axe fighting.', cid) end elseif msgcontains(msg, 'shield') then if isInArray({4,3,7,8},getPlayerVocation(cid)) then selfSay('You want to buy a skill distance for 1 gold ingot.?', cid) talkState[talkUser] = 5 else selfSay('Only paladins ,royal paladins, knight and elite knight can buy shield fighting.', cid) end elseif msgcontains(msg, 'distance') then if isInArray({3,7},getPlayerVocation(cid)) then selfSay('You want to buy a skill distance for 1 gold ingot.?', cid) talkState[talkUser] = 6 else selfSay('Only paladins and royal paladins can buy distance fighting.', cid) end elseif msgcontains(msg, 'info')then selfSay('Você deseja ver suas informações?', cid) talkState[talkUser] = 7 elseif talkState[talkUser] == 1 then if msgcontains(msg, 'yes') then if doPlayerRemoveItem(cid,config.item,item.count) then doPlayerAddSkill(cid,config.skills.sword,1) selfSay('You bought a sword skill.', cid) talkState[talkUser] = 0 else selfSay('You do not have the needed item', cid) end elseif talkState[talkUser] == 3 then if msgcontains(msg, 'yes') then if doPlayerRemoveItem(cid,config.item,item.count) then doPlayerAddSkill(cid,config.skills.mace,1) selfSay('You bought a mace skill.', cid) talkState[talkUser] = 0 else selfSay('You do not have the needed item', cid) end elseif talkState[talkUser] == 4 then if msgcontains(msg, 'yes') then if doPlayerRemoveItem(cid,config.item,item.count) then doPlayerAddSkill(cid,config.skills.axe,1) selfSay('You bought a axe skill.', cid) talkState[talkUser] = 0 else selfSay('You do not have the needed item', cid) end elseif talkState[talkUser] == 5 then if msgcontains(msg, 'yes') then if doPlayerRemoveItem(cid,config.item,item.count) then doPlayerAddSkill(cid,config.skills.shield,1) selfSay('You bought a shield skill.', cid) talkState[talkUser] = 0 else selfSay('You do not have the needed item', cid) end elseif talkState[talkUser] == 6 then if msgcontains(msg, 'yes') then if doPlayerRemoveItem(cid,config.item,item.count) then doPlayerAddSkill(cid,config.skills.distance,1) selfSay('You bought a distance skill.', cid) talkState[talkUser] = 0 else selfSay('You do not have the needed item', cid) end elseif talkState[talkUser] == 7 then if msgcontains(msg, 'yes') then if isInArray({4,8},getPlayerVocation(cid)) then doShowTextDialog(cid, 5958, "•Skill Information:" .. "\n¤Sword: " .. getPlayerSkillLevel(cid, config.skills.sword) .. "\n¤Mace: " .. getPlayerSkillLevel(cid, config.skills.mace) .. "\n¤Axe: " .. getPlayerSkillLevel(cid, config.skills.axe) .. "\n¤Shield: " .. getPlayerSkillLevel(cid, config.skills.shield) .. "" ) talkState[talkUser] = 0 elseif isInArray({3,7},getPlayerVocation(cid)) then doSowTextDialog(cid, 5958, "•Skill Information:" .. "\n¤Distance: " .. getPlayerSkillLevel(cid, config.skills.distance) .. "\n¤Shield: " .. getPlayerSkillLevel(cid, config.skills.shield) .. "" ) end end end end end end end end end npcHandler:setCallback(CALLBACK_MESSAGE_DEFAULT, creatureSayCallback) npcHandler:addModule(FocusModule:new()) Sempre tive dificuldade nisso ;D
  2. Já existe um digimon. Onde eu tenho certeza que ninguém irá competir, pois é um dos melhores projetos. Acho melhor criar outro tipo de tibia , minha sugestão.
  3. @vodkart Sim, mas era do jeito que o oneshot meu amiguinho postou. UHhua...
  4. vlw. economizei 8 minutos do meu tempo a fazer o código. CTRL + C e CTRL + V. xD, ZUERA REP +
  5. Alguem pode me passar a função que faz com que adicione nome na tabela? Exemplo: tabela = [] player: hi player: join npc: ok tabela = [skydangerous] Queria isso ;D
  6. vdd. eu acho que não terminei de escrever ;D Vou conferir denovo o tutorial, e ver o que posso mudar.....
  7. Como ja tinha visto no outro fórum e comentado e irei dizer as mesmas palavras. Excelente, código limpo, simples e muito eficiente. Quem sabe os servidores já iram lançar com esse sistema ;D
  8. estamos discutindo algo legal. vender coisas open source.. é um assunto muito polêmico .. eu gostaria que alguem que intendesse poderia demostrar algumas regras .. eu ja li .. mas não tudo
  9. eu voto. para banir e dar ataque ddos no site dele.
  10. opa, deve ser o subwat. o noobzinho que vende coisas open source, que eu denunciei pra hospedagem, se ela não tirar .. irei conversar particularmente com os developers do tfs e meus amigos donos de alguns scripts que ele está vendendo. ai vai ver a ficha criminal dele subindo ;D
  11. carai, quero saber quem é tu na realidade. como tu me conheceu .. sabe meu nick .. e criou um tópico com meu nick?
  12. quero saber quem é tu ,, o.0'
  13. a pasta data do servidor sem as dlls e executavel.
  14. Erro: newLevel == 500 then Seria newLevel >= 500 then
  15. @Piabeta Você bate com dano físico, começa a rancar sangue.. só que toda hora que você bate sai .. é que não tem muita utilidade, a não ser que você use para bater em um animal .. sair o coro dele, sair a pele ou um sangue verde sei lá.. @Voad irei ver com essa função ;D @EDITR VOAD SÓ QUE ESSA FUNÇÃO FUNCIONA PARA TODOS OS ELEMENTOS .. EARH , DEATH .. ELE QUERIA FÍSICO HAUH'.
  16. bom, a pessoa que me pediu .. queria danos físicos.. ai eu fiz usando physicaldamage , sei lá .. resolvi postar só pra dar volume ;D
  17. cria um arquivo chamado sangue.lua em creaturescript/scripts e coloque o código function onStatsChange(cid, attacker, type, combat, value) local pos = getCreaturePosition(attacker) local blood = {{x = pos.x, y = pos.y - 1, z = pos.z},{x = pos.x, y = pos.y + 1, z = pos.z},{x = pos.x+1, y = pos.y, z = pos.z} ,{x = pos.x-1, y = pos.y, z = pos.z}} local item = 1903 if type == COMBAT_PHYSICALDAMAGE and isPlayer(attacker) then doCreateItem(item,1,blood[math.random(1,#blood)]) return TRUE end end depois disso em cole a tag em creaturescripts.xml <event type="statschange" name="Sangue" event="script" value="sangue.lua"/> em login.lua adiciona um evento registerCreatureEvent(cid, "Death") Pronto, ai edita do seu jeito, se quiser sair sangue, ou sair algum item.. use a criatividade.
  18. Dois tópicos iguais. Não é permitido no fórum. Outro tópico: http://www.xtibia.com/forum/topic/182161-tfs04-svn-bug/page__p__1214081#entry1214081
  19. Nossa tu errou feio meu nome em Eu não estou no meu computador, não tenho certeza se está certo. isso são tags você deve por no items.xml no ring que você quer. <attribute key="duration" value="480"/> <attribute key="healthGain" value="20"/> <attribute key="healthTicks" value="1000"/> <attribute key="manaGain" value="20"/> <attribute key="manaTicks" value="1000"/> <attribute key="showduration" value="1"/> Duration- Duração do item HealthGain- Quanto de vida ganha HealthTicks- Acho que é o tempo ManaGain- Quanto de mana ganha ManTicks- Acho que é o tempo showduration- 1 - TRUE mostra o tempo de duração
  20. eu perguntei se você sabia, pq .. nao tem muita haver com yakuza sua história. ela ta muito simples, não vi emoção na história. poderia fazer suspense, um clima de dúvidas e mistérios.
  21. tú sabe pelo menos o que é yakuza?
  • Quem Está Navegando   0 membros estão online

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