DuuhCarvalho 327 Postado Novembro 28, 2016 Share Postado Novembro 28, 2016 (editado) Eae pessoal, Fiz esse script apenas para ajudar um membro, porém nunca vi nada parecido aqui, resolvi postar. É bem simples, mas da para fazer muita coisa legal. Quem quiser qualquer alteração como condição para usar, mudar para talkactions, etc... é só pedir no tópico. Basicamente é só dá use no item, que você fica invisível para players e monsters, por determinado tempo. Vamos usar CONDITION, porém só funciona se o player que usar o item, tiver group id maior que os outros, para que fique invisível. Mas nosso amigo @caotic vai nos ensinar a mudar isso: Em 25/11/2016 at 13:19, caotic disse: Em player.cpp procure void Player::sendCreatureChangeVisible(const Creature* creature, Visible_t visible) Abaixo retira a seguinte condição: if(player == this || (player && (visible < VISIBLE_GHOST_APPEAR || getGhostAccess() >= player->getGhostAccess())) || (!player && canSeeInvisibility())) sendCreatureChangeOutfit(creature, creature->getCurrentOutfit()); E substitua por : if(player == this || (!player && canSeeInvisibility())) sendCreatureChangeOutfit(creature, creature->getCurrentOutfit()); Depois procure bool Player::canSeeCreature(const Creature* creature) const em player.cpp E retire essa linha: if(const Player* player = creature->getPlayer()) return !player->isGhost() || getGhostAccess() >= player->getGhostAccess(); E coloque essa no lugar: if(const Player* player = creature->getPlayer()) return !player->isGhost(); Faça isso e independente do seu grupo você vai fica invisível para todos. agora vá em data/actions/scripts e crie uma arquivo.lua, e cole isso dentro: local tempo = 1 -- tempo que o player vai ficar invisivel em segundos. local ghost = createConditionObject(CONDITION_GAMEMASTER, 1000*tempo, false, GAMEMASTER_INVISIBLE) local outfit = createConditionObject(CONDITION_INVISIBLE, 1000*tempo, false) function onUse(cid, item) if not isPlayerGhost(cid) then doRemoveItem(item.uid, 1) doSendMagicEffect(getCreaturePosition(cid), 12) doPlayerSendTextMessage(cid, MESSAGE_EVENT_ADVANCE, "Você está invisivel, agora ninguem pode te ver.") doAddCondition(cid, ghost) doAddCondition(cid, outfit) else doPlayerSendCancel(cid, "Você já está invisivel.") doSendMagicEffect(getCreaturePosition(cid), 2) end return true end depois vá em data/actions/actions.xml e adicione a tag: <action itemid="IDdoITEM" script="NomeDoArquivo.lua"/> pronto. Como falei é bem simples, qualquer coisa é só pedir... Editado Novembro 28, 2016 por DuuhCarvalho Link para o comentário Compartilhar em outros sites More sharing options...
gabriel28 60 Postado Novembro 28, 2016 Share Postado Novembro 28, 2016 Essa modificação na source é em qual TFS? Link para o comentário Compartilhar em outros sites More sharing options...
DuuhCarvalho 327 Postado Novembro 29, 2016 Autor Share Postado Novembro 29, 2016 (editado) 1 hora atrás, gabriel28 disse: Essa modificação na source é em qual TFS? o meu é 0.3.6. Mas acredito que funciona nos demais. Editado Novembro 29, 2016 por DuuhCarvalho Link para o comentário Compartilhar em outros sites More sharing options...
Deadpool 862 Postado Novembro 29, 2016 Share Postado Novembro 29, 2016 Muito bom @DuuhCarvalho, curti muito. rep+ (Bem criativo quem pediu kk) Link para o comentário Compartilhar em outros sites More sharing options...
DuuhCarvalho 327 Postado Novembro 29, 2016 Autor Share Postado Novembro 29, 2016 15 horas atrás, Deadpool disse: Muito bom @DuuhCarvalho, curti muito. rep+ (Bem criativo quem pediu kk) é sim 'rsrs. Até coloquei no meu serve, só que no meu é um colar que deixa invisível. Link para o comentário Compartilhar em outros sites More sharing options...
Sirarcken 52 Postado Novembro 29, 2016 Share Postado Novembro 29, 2016 cara, parabéns muito bom. Link para o comentário Compartilhar em outros sites More sharing options...
sexosix 0 Postado Novembro 29, 2016 Share Postado Novembro 29, 2016 (editado) Valeu pela ajuda cara... Agora deu certo eu criar uma capa de invisibilidade, tem como arrumar para min? poder usar apenas se estiver sem BATTLE? E tambem tem o npc la depois da uma olhada VLWS <3 REP+ Editado Novembro 29, 2016 por sexosix Link para o comentário Compartilhar em outros sites More sharing options...
DuuhCarvalho 327 Postado Novembro 29, 2016 Autor Share Postado Novembro 29, 2016 (editado) 1 hora atrás, sexosix disse: Valeu pela ajuda cara... Agora deu certo eu criar uma capa de invisibilidade, tem como arrumar para min? poder usar apenas se estiver sem BATTLE? E tambem tem o npc la depois da uma olhada VLWS <3 REP+ é apenas para adicionar a condição de battle? local tempo = 1 -- tempo que o player vai ficar invisivel em segundos.local ghost = createConditionObject(CONDITION_GAMEMASTER, 1000*tempo, false, GAMEMASTER_INVISIBLE)local outfit = createConditionObject(CONDITION_INVISIBLE, 1000*tempo, false)function onUse(cid, item)if not isPlayerGhost(cid) then if getCreatureCondition(cid, CONDITION_INFIGHT) == FALSE then doRemoveItem(item.uid, 1) doSendMagicEffect(getCreaturePosition(cid), 12) doPlayerSendTextMessage(cid, MESSAGE_EVENT_ADVANCE, "Você está invisivel, agora ninguem pode te ver.") doAddCondition(cid, ghost) doAddCondition(cid, outfit) else doPlayerSendCancel(cid, "Voce esta com Battle.") doSendMagicEffect(getCreaturePosition(cid), 2) endelsedoPlayerSendCancel(cid, "Voce ja está invisivel.")doSendMagicEffect(getCreaturePosition(cid), 2)endreturn trueend vou ver lá o npc. Editado Novembro 29, 2016 por DuuhCarvalho Link para o comentário Compartilhar em outros sites More sharing options...
sexosix 0 Postado Novembro 30, 2016 Share Postado Novembro 30, 2016 4 horas atrás, DuuhCarvalho disse: é apenas para adicionar a condição de battle? local tempo = 1 -- tempo que o player vai ficar invisivel em segundos.local ghost = createConditionObject(CONDITION_GAMEMASTER, 1000*tempo, false, GAMEMASTER_INVISIBLE)local outfit = createConditionObject(CONDITION_INVISIBLE, 1000*tempo, false)function onUse(cid, item)if not isPlayerGhost(cid) then if getCreatureCondition(cid, CONDITION_INFIGHT) == FALSE then doRemoveItem(item.uid, 1) doSendMagicEffect(getCreaturePosition(cid), 12) doPlayerSendTextMessage(cid, MESSAGE_EVENT_ADVANCE, "Você está invisivel, agora ninguem pode te ver.") doAddCondition(cid, ghost) doAddCondition(cid, outfit) else doPlayerSendCancel(cid, "Voce esta com Battle.") doSendMagicEffect(getCreaturePosition(cid), 2) endelsedoPlayerSendCancel(cid, "Voce ja está invisivel.")doSendMagicEffect(getCreaturePosition(cid), 2)endreturn trueend vou ver lá o npc. Obrigado... o item agora esta perfeito <3 Link para o comentário Compartilhar em outros sites More sharing options...
Posts Recomendados