Ir para conteúdo

Vodkart

Herói
  • Total de itens

    3406
  • Registro em

  • Última visita

  • Dias Ganhos

    113

Tudo que Vodkart postou

  1. Vodkart

    Npc Special Item

    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 function creatureSayCallback(cid, type, msg) if(not npcHandler:isFocused(cid)) then return false end local talkUser = NPCHANDLER_CONVbehavior == CONVERSATION_DEFAULT and 0 or cid local msg = string.lower(msg) local moeda,str = 6527,"" local t = { ["boots of haste"] = {15, 2195}, ["demon helmet"] = {25, 2493}, ["frozen starlight"] = {30, 2361}, ["royal crossbow"] = {20, 8851}, ["solar axe"] = {30, 8925}, ["soft boots"] = {50, 2640}, ["demon armor"] = {100, 2494}, ["firewalker boots"] = {50, 9932}, ["magic plate armor"] = {70, 2472}, ["flame blade"] = {100, 8931} } if isInArray({"trade","special items","special item","items","special"}, msg) then str = str .. "Eu vendo estes items: " for name, pos in pairs(t) do str = str.." {"..name.."} = "..pos[1].." Moedas /" end str = str .. "." npcHandler:say(str, cid) elseif t[msg] then if doPlayerRemoveItem(cid,moeda,t[msg][1]) then doPlayerAddItem(cid,t[msg][2],1) npcHandler:say("Aqui está seu ".. getItemNameById(t[msg][2]) .."!", cid) else npcHandler:say("você não tem "..t[msg][1].." ".. getItemNameById(moeda), cid) end end return TRUE end npcHandler:setCallback(CALLBACK_MESSAGE_DEFAULT, creatureSayCallback) npcHandler:addModule(FocusModule:new()) ["boots of haste"] = {15, 2195}, ["item name"] = {QUANTAS MOEDAS, ID DO ITEM QUE SERÁ VENDIDO}
  2. ainda não, ninguém testou manda seu msn ai pra vc testar
  3. eu tinha feito essa função mas não postei ontem porque ficou dando apagão aqui ._. function TransformTiles() for x = 100, 150 do for y = 100, 150 do local m,n = getTileItemById({x=x, y=y, z=7}, 405),getTileItemById({x=x, y=y, z=7}, 406) if m.uid > 0 then doTransformItem(m.uid, 406) elseif n.uid > 0 then doTransformItem(n.uid, 405) end end end return true end
  4. Amigo, não sei como e nem porque mas esses BUGS só estão acontecendo com você, se fosse o caso já teriam me reportado o bug no tópico ._. e já fiz o outro sistema sem precisar de query '-'
  5. e porque não usa a função 'doTransformItem' ao invés de ficar removendo e criando?
  6. ai é só usar a função onPrepareDeath ao invés de onDeath
  7. @UP tenta trocar essa linha: if isMonster(target) and not isSummon(target) then por essa: if isMonster(target) then
  8. Não leu o tópico? "foi feito por mim". Ele não é ripping, deveria conhecer a pessoa antes de pedir tal coisa.
  9. ? não tem nada a ver com o script esse erro, você usa algum red skull amulet ou outro script que onDeath/onPrepareDeath ?
  10. Não fiz tile mano, mas se quiser só pedir rsrs eu no caso fiz uma door, ai vc coloca no ACTIONID da door 84005 e sobre o Honor_Storage é só uma variável pra contar qnto de honra o jogador tem n precisa mexer
  11. se eu não me engano teria que mudar nas source em player.cpp procure: bool Player::isMuted(uint16_t channelId, SpeakClasses type, uint32_t& time) { time = 0; if(hasFlag(PlayerFlag_CannotBeMuted)) return false; int32_t muteTicks = 0; for(ConditionList::iterator it = conditions.begin(); it != conditions.end(); ++it) { if((*it)->getType() == CONDITION_MUTED && (*it)->getSubId() == 0 && (*it)->getTicks() > muteTicks) muteTicks = (*it)->getTicks(); } time = (uint32_t)muteTicks / 1000; return time > 0 && type != SPEAK_PRIVATE_PN && (type != SPEAK_CHANNEL_Y || (channelId != CHANNEL_GUILD && !g_chat.isPrivateChannel(channelId))); } e troque por bool Player::isMuted(uint16_t channelId, SpeakClasses type, uint32_t& time) { time = 0; if(hasFlag(PlayerFlag_CannotBeMuted)) return false; int32_t muteTicks = 0; for(ConditionList::iterator it = conditions.begin(); it != conditions.end(); ++it) { if((*it)->getType() == CONDITION_MUTED && (*it)->getSubId() == 0 && (*it)->getTicks() > muteTicks) muteTicks = (*it)->getTicks(); } time = (uint32_t)muteTicks / 1000; return time > 0 && type != SPEAK_PRIVATE_PN && (type != SPEAK_CHANNEL_Y || (channelId != CHANNEL_GUILD && channelId != CHANNEL_DEFAULT && !g_chat.isPrivateChannel(channelId))); } obs: não tenho certeza se vai funcionar caso não funcione, desta maneira tenho ctz que vai:
  12. Vodkart

    Beeki, No Style Emo;

    esse fórum só da baitola agr esse beeki nunca me enganou sempre achei que ele molhava a rosca num todynho
  13. magnifica gif, nunca tinha visto ela amigo... até salvei aqui para mostrar para todos os meus amigos, e quem sabe eu faça um trabalho na faculdade e coloque ela num projetor para toda classe ver, receberei a maior nota por tal ato
  14. poxa mano, faz um favor pra mim? acorda amanha bem cedinho e morre pf obrigado
  15. Não é por nada não, mas quando for criar um tópico com algum código adicione o nome do autor, mesmo que você não souber quem criou coloque: Autor: desconhecido ou Autor: fulano e ciclano isso evita que te reportem por ripping, e n queremos isso né amg?
  16. a função n precisa mais da variável "x" function Wall() local B = { {1056,{x=1041, y=1051, z=15, stackpos = 1}}, -- id da parede e pos da parede {1056,{x=1041, y=1052, z=15, stackpos = 1}}, {1056,{x=1041, y=1053, z=15, stackpos = 1}}, {1056,{x=1041, y=1054, z=15, stackpos = 1}} } for i = 1, #B do if getTileItemById(B[i][2], B[i][1]).uid == 0 then doCreateItem(B[i][1], 1, B[i][2]) else doRemoveItem(getThingfromPos(B[i][2]).uid,1) end end end
  17. então da uma olhada aqui: http://www.xtibia.co...sente-de-natal/ e compara com o seu items = { [0] = {id = 7735, count = 1, chance = 2}, [1] = {id = 7735, count = 1, chance = 5}, [2] = {id = 7735, count = 1, chance = 10}, [3] = {id = 7735, count = 1, chance = 15}, [4] = {id = 7735, count = 1, chance = 30}, [4] = {id = 7735, count = 1, chance = 30}, [5] = {id = 7735, count = 1, chance = 100} } function onUse(cid, item, fromPos, itemEx, toPos) for i = 0, #items do if (items[i].chance > math.random(1, 100)) then doPlayerAddItem(cid, items[i].id, items[i].count) doRemoveItem(item.uid, 1) return doCreatureSay(cid, 'Wow Você Ganho! Seu Item e '..getItemNameById(items[i].id)..'!', TALKTYPE_MONSTER) end end doRemoveItem(item.uid, 1) return doCreatureSay(cid, 'Não ganhei nada!', TALKTYPE_MONSTER) end
  18. @UP quem disse que isso é um bug? isso é uma configuração que eu fiz, mas altere aqui: `group_id` < 2 para `group_id` < 3 se eu não em engano é: 0 = player 1 = tutor 2 = senior tutor 3 = GM 4 = CM 5/6 = GOD
  19. beleza, irei refazer o sistema e talvez ainda hoje ou amanhã eu poste! abraços
  20. estranho, tenta assim: events = {} local config = {tempo = 15,storage = 20000} function doKickPlayer(cid) if not isCreature(cid) then return LUA_ERROR end if getPlayerStorageValue(cid, config.storage) >= 1 then setPlayerStorageValue(cid, config.storage, -1) doTeleportThing(cid, getTownTemplePosition(getPlayerTown(cid))) end return true end function onStepIn(cid, item, frompos, topos) if isPlayer(cid) and getPlayerStorageValue(cid, config.storage) <= 0 then doPlayerSendTextMessage(cid, 22, "[Trainer]: Movimente-se a cada " .. config.tempo .. " minutos, caso contrário, seu char será levado ao templo.") setPlayerStorageValue(cid, config.storage, 1) events[getPlayerGUID(cid)] = addEvent(doKickPlayer, config.tempo*60*1000, cid) end return true end function onStepOut(cid, item, frompos, topos) if isPlayer(cid) and getPlayerStorageValue(cid, config.storage) >= 1 then setPlayerStorageValue(cid, config.storage, -1) doPlayerSendTextMessage(cid, 23, "System kick off!") stopEvent(events[getPlayerGUID(cid)]) end return true end
  21. se quer arrumar o script começa estudando um pouco do básico de LUA, porque sabendo o básico já saberia que essa coisa lamentável não existe: and getPlayerVocation(cid) == 4, 8, 12 then usa "array" ou "or" and isInArray({4,8,12}, getPlayerVocation(cid)) then
  22. qual versão do servidor testada? me diz oq está acontecendo com o jogador...
  • Quem Está Navegando   0 membros estão online

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