Ir para conteúdo

Erinn

Campones
  • Total de itens

    8
  • Registro em

  • Última visita

1 Seguidor

Sobre Erinn

Informações

  • Forma que conheci o xTibia
    Sites de Busca
  • Sou
    OT-Admin

Erinn's Achievements

  1. Bom dia, Estou com um problema em um novo servidor PDA 8.54 que estou abrindo, no qual eu tento colocar ele em modo pvp e não estou conseguindo, mesmo configurando o config.lua corretamente o server não fica em modo pvp, ao que me parece existe algum script com alguma função que não deixa os players se atacarem. Achei uma tag no creaturescripts.xml com nome de wildattack, que usa o script PlayerAttack.lua, e ao retirar essa tag os players puderam marcar outros players e usar ataques neles, porém não causa nenhum dano, nem no player, nem no pokemon. Achei alguns scripts que vou postar abaixo, pois acho que possa ser algum deles: Espero que possam me ajudar, grata Erinn Achei essa parte aki no script some functions.lua, em data/lib: function canAttackOther(cid, pid) --Function q verifica se um poke/player pode atacar outro poke/player if not isCreature(cid) or not isCreature(pid) then return "Cant" end local master1 = isSummon(cid) and getCreatureMaster(cid) or cid local master2 = isSummon(pid) and getCreatureMaster(pid) or pid ---- if getPlayerStorageValue(master1, 6598754) >= 5 and getPlayerStorageValue(master2, 6598754) >= 5 then if getPlayerStorageValue(master1, 6598754) ~= getPlayerStorageValue(master2, 6598754) then if isDuelingAgainst(master1, master2) then --alterado v1.8 if isSummon(cid) and isPlayer(pid) then return "Can" else return "Cant" end end end end E achei essa parte aki n o script exp.lua em data/creaturescript: if isPlayer(attacker) then local valor = value if valor > getCreatureHealth(cid) then valor = getCreatureHealth(cid) end if combat == COMBAT_PHYSICALDAMAGE then return false end if combat == PHYSICALDAMAGE then doSendMagicEffect(getThingPos(cid), 3) doSendAnimatedText(getThingPos(cid), valor, races[getMonsterInfo(getCreatureName(cid)).race].cor) end if combats[damageCombat] and not isInArray(fixdmgs, damageCombat) then doSendAnimatedText(getThingPos(cid), valor, combats[damageCombat].cor) end Primeiro script chama-se PlayerAttack.lua local fightcondition = createConditionObject(CONDITION_INFIGHT) setConditionParam(fightcondition, CONDITION_PARAM_TICKS, 12 * 1000) function fightCondic(cid) if not isCreature(cid) then return true end if not isCreature(getCreatureTarget(cid)) then return true end doAddCondition(cid, fightcondition) addEvent(fightCondic, 1000, cid) end function onTarget(cid, target) if isPlayer(target) then if canAttackOther(cid, target) == "Cant" then return false elseif isPlayer(target) and #getCreatureSummons(target) >= 1 and canAttackOther(cid, target) == "Can" then return false end end if getPlayerStorageValue(target, 201) ~= -1 then for a, b in pairs(ginasios) do if getPlayerStorageValue(target, ginasios[getPlayerStorageValue(target, 201)].storage) == 1 then if getPlayerStorageValue(cid, ginasios[getPlayerStorageValue(target, 201)].storage) ~= 1 then doPlayerSendCancel(cid, "You can't attack this pokemon.") return false end end end end if isSummon(target) then if canAttackOther(cid, target) == "Cant" then return false end end return TRUE end Segundo script chama-se login.lua local config = { loginMessage = getConfigValue('loginMessage'), useFragHandler = getBooleanFromString(getConfigValue('useFragHandler')) } function onLogin(cid) if getPlayerLevel(cid) >= 1 and getPlayerLevel(cid) <= 10 then --alterado v1.8 doPlayerSetLossPercent(cid, PLAYERLOSS_EXPERIENCE, 0) else doPlayerSetLossPercent(cid, PLAYERLOSS_EXPERIENCE, (getPlayerLevel(cid) >= 200 and 100 or math.floor(getPlayerLevel(cid)/2)) ) end doCreatureSetDropLoot(cid, false) local accountManager = getPlayerAccountManager(cid) if(accountManager == MANAGER_NONE) then local lastLogin, str = getPlayerLastLoginSaved(cid), config.loginMessage if(lastLogin > 0) then doPlayerSendTextMessage(cid, MESSAGE_STATUS_DEFAULT, str) str = "Your last visit was on " .. os.date("%a %b %d %X %Y", lastLogin) .. "." else str = str end sendMsgToPlayer(cid, 20, "Bem-Vindo ao PokeDash.") doPlayerSendTextMessage(cid, MESSAGE_STATUS_DEFAULT, str) elseif(accountManager == MANAGER_NAMELOCK) then doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_ORANGE, "Hello, it appears that your character has been namelocked, what would you like as your new name?") elseif(accountManager == MANAGER_ACCOUNT) then doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_ORANGE, "Hello, type 'account' to manage your account and if you want to start over then type 'cancel'.") else doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_ORANGE, "Hello, type 'account' to create an account or type 'recover' to recover an account.") end if getCreatureName(cid) == "Account Manager" then local outfit = {} if accountManagerRandomPokemonOutfit then outfit = {lookType = getPokemonXMLOutfit(oldpokedex[math.random(151)][1])} else outfit = accountManagerOutfit end doSetCreatureOutfit(cid, outfit, -1) return true end if(not isPlayerGhost(cid)) then doSendMagicEffect(getCreaturePosition(cid), CONST_ME_TELEPORT) end local outfit = {} if getPlayerVocation(cid) == 0 then doPlayerSetMaxCapacity(cid, 0) doPlayerSetVocation(cid, 1) setCreatureMaxMana(cid, 6) doPlayerAddSoul(cid, -getPlayerSoul(cid)) setPlayerStorageValue(cid, 19898, 0) if getCreatureOutfit(cid).lookType == 128 then outfit = {lookType = 510, lookHead = math.random(0, 132), lookBody = math.random(0, 132), lookLegs = math.random(0, 132), lookFeet = math.random(0, 132)} elseif getCreatureOutfit(cid).lookType == 136 then outfit = {lookType = 511, lookHead = math.random(0, 132), lookBody = math.random(0, 132), lookLegs = math.random(0, 132), lookFeet = math.random(0, 132)} end doCreatureChangeOutfit(cid, outfit) end registerCreatureEvent(cid, "dropStone") registerCreatureEvent(cid, "ShowPokedex") registerCreatureEvent(cid, "ClosePokedex") registerCreatureEvent(cid, "WatchTv") registerCreatureEvent(cid, "StopWatchingTv") registerCreatureEvent(cid, "WalkTv") registerCreatureEvent(cid, "RecordTv") registerCreatureEvent(cid, "PlayerLogout") registerCreatureEvent(cid, " ") registerCreatureEvent(cid, "Idle") registerCreatureEvent(cid, "EffectOnAdvance") registerCreatureEvent(cid, "GeneralConfiguration") registerCreatureEvent(cid, "SaveReportBug") registerCreatureEvent(cid, "LookSystem") registerCreatureEvent(cid, "T1") registerCreatureEvent(cid, "T2") registerCreatureEvent(cid, "task_count") if getPlayerStorageValue(cid, 99284) == 1 then setPlayerStorageValue(cid, 99284, -1) end if getPlayerStorageValue(cid, 6598754) >= 1 or getPlayerStorageValue(cid, 6598755) >= 1 then setPlayerStorageValue(cid, 6598754, -1) setPlayerStorageValue(cid, 6598755, -1) doRemoveCondition(cid, CONDITION_OUTFIT) --alterado v1.9 \/ doTeleportThing(cid, posBackPVP, false) doCreatureAddHealth(cid, getCreatureMaxHealth(cid)) end doChangeSpeed(cid, -(getCreatureSpeed(cid))) --///////////////////////////////////////////////////////////////////////////-- local storages = {17000, 63215, 17001, 13008, 5700} for s = 1, #storages do if not tonumber(getPlayerStorageValue(cid, storages)) then if s == 3 then setPlayerStorageValue(cid, storages, 1) elseif s == 4 then setPlayerStorageValue(cid, storages, -1) else if isBeingUsed(getPlayerSlotItem(cid, 8).itemid) then setPlayerStorageValue(cid, storages, 1) else setPlayerStorageValue(cid, storages, -1) end end doPlayerSendTextMessage(cid, 27, "Sorry, but a problem occurred on the server, but now it's alright") end end --/////////////////////////////////////////////////////////////////////////-- if getPlayerStorageValue(cid, 17000) >= 1 then -- fly local item = getPlayerSlotItem(cid, 8) local poke = getItemAttribute(item.uid, "poke") doChangeSpeed(cid, getPlayerStorageValue(cid, 54844)) doRemoveCondition(cid, CONDITION_OUTFIT) doSetCreatureOutfit(cid, {lookType = flys[poke][1] + 351}, -1) local apos = getFlyingMarkedPos(cid) apos.stackpos = 0 if getTileThingByPos(apos).itemid <= 2 then doCombatAreaHealth(cid, FIREDAMAGE, getFlyingMarkedPos(cid), 0, 0, 0, CONST_ME_NONE) doCreateItem(460, 1, getFlyingMarkedPos(cid)) end doTeleportThing(cid, apos, false) if getItemAttribute(item.uid, "boost") and getItemAttribute(item.uid, "boost") >= 50 and getPlayerStorageValue(cid, 42368) >= 1 then sendAuraEffect(cid, auraSyst[getItemAttribute(item.uid, "aura")]) --alterado v1.8 end local posicao = getTownTemplePosition(getPlayerTown(cid)) markFlyingPos(cid, posicao) elseif getPlayerStorageValue(cid, 63215) >= 1 then -- surf local item = getPlayerSlotItem(cid, 8) local poke = getItemAttribute(item.uid, "poke") doSetCreatureOutfit(cid, {lookType = surfs[poke].lookType + 351}, -1) --alterado v1.6 doChangeSpeed(cid, getPlayerStorageValue(cid, 54844)) if getItemAttribute(item.uid, "boost") and getItemAttribute(item.uid, "boost") >= 50 and getPlayerStorageValue(cid, 42368) >= 1 then sendAuraEffect(cid, auraSyst[getItemAttribute(item.uid, "aura")]) --alterado v1.8 end elseif getPlayerStorageValue(cid, 17001) >= 1 then -- ride local item = getPlayerSlotItem(cid, 8) local poke = getItemAttribute(item.uid, "poke") if rides[poke] then doChangeSpeed(cid, getPlayerStorageValue(cid, 54844)) doRemoveCondition(cid, CONDITION_OUTFIT) doSetCreatureOutfit(cid, {lookType = rides[poke][1] + 351}, -1) if getItemAttribute(item.uid, "boost") and getItemAttribute(item.uid, "boost") >= 50 and getPlayerStorageValue(cid, 42368) >= 1 then sendAuraEffect(cid, auraSyst[getItemAttribute(item.uid, "aura")]) --alterado v1.8 end else setPlayerStorageValue(cid, 17001, -1) doRegainSpeed(cid) end local posicao2 = getTownTemplePosition(getPlayerTown(cid)) markFlyingPos(cid, posicao2) elseif getPlayerStorageValue(cid, 13008) >= 1 then -- dive if not isInArray({5405, 5406, 5407, 5408, 5409, 5410}, getTileInfo(getThingPos(cid)).itemid) then setPlayerStorageValue(cid, 13008, 0) doRegainSpeed(cid) doRemoveCondition(cid, CONDITION_OUTFIT) return true end if getPlayerSex(cid) == 1 then doSetCreatureOutfit(cid, {lookType = 1034, lookHead = getCreatureOutfit(cid).lookHead, lookBody = getCreatureOutfit(cid).lookBody, lookLegs = getCreatureOutfit(cid).lookLegs, lookFeet = getCreatureOutfit(cid).lookFeet}, -1) else doSetCreatureOutfit(cid, {lookType = 1035, lookHead = getCreatureOutfit(cid).lookHead, lookBody = getCreatureOutfit(cid).lookBody, lookLegs = getCreatureOutfit(cid).lookLegs, lookFeet = getCreatureOutfit(cid).lookFeet}, -1) end doChangeSpeed(cid, 800) elseif getPlayerStorageValue(cid, 5700) > 0 then --bike doChangeSpeed(cid, -getCreatureSpeed(cid)) doChangeSpeed(cid, getPlayerStorageValue(cid, 5700)) --alterado v1.8 if getPlayerSex(cid) == 1 then doSetCreatureOutfit(cid, {lookType = 1394}, -1) else doSetCreatureOutfit(cid, {lookType = 1393}, -1) end elseif getPlayerStorageValue(cid, 75846) >= 1 then --alterado v1.9 \/ doTeleportThing(cid, getTownTemplePosition(getPlayerTown(cid)), false) setPlayerStorageValue(cid, 75846, -1) sendMsgToPlayer(cid, 20, "You have been moved to your town!") else doRegainSpeed(cid) end if getPlayerStorageValue(cid, 22545) >= 1 then setPlayerStorageValue(cid, 22545, -1) doTeleportThing(cid, getClosestFreeTile(cid, posBackGolden), false) setPlayerRecordWaves(cid) end if useKpdoDlls then doUpdateMoves(cid) doUpdatePokemonsBar(cid) end return true end
  2. Bom dia a todos, Meu servidor é dash advanced versão 8.54 com lvl, gostaria de saber como fazer para limitar a quantidade de pokemons pescados, exemplo: 1 player pesca 4 pokemons e, após isso, aparece uma mensagem informando que ele precisa matar os pokemons pescados antes de poder usar a vara pra pescar novamente. Desde já agradeço pela ajuda. Erin
  3. Achei esse aki, fica faltando somente a restrição caso já tenha um player no game (snake), pra que outro não consiga usar o teleport e receba a mensagem que já tem uma pessoa nakele jogo. Ou caso vc saiba como fazer isso, deixar tipo o da pxg mesmo, onde ao clickar no item, ao invés de ser teleportado direto, ele abre uma janela com as opções de salas de jogos, onde ao escolher e pressionar "ok", ele é transportado pra sala escolhida caso esteja vazia, eu vou fazer umas 6 salas de snake pro povão XDDD. Muito obrigada pela ajuda, Erinn Vá em actions/scripts é copia um arquivo.lua é mude o nome do arquivo para "teleport_statue" é cole isso dentro: function onUse(cid, item, fromPosition, itemEx, toPosition) local axe = {x=516,y=544,z=8} if itemEx.itemid == 9751 and item.actionid == 668 then doTeleportThing(cid, axe) doSendMagicEffect(getPlayerPosition(cid), 38) end end . Agora vá em actions é adicione essa tag: <action actionid="668" event="script" value="teleport_statue.lua"/> Está Pronto Agora Vamos Ver Como Configurar: local axe = {x=516,y=544,z=8} --- Local Para aonde o player vai cair if itemEx.itemid == 9751 -- id da statua ou id de outro Item item.actionid == 668 then --- "668" action id que você quiser doSendMagicEffect(getPlayerPosition(cid), 38) ----- efeito que vai aparece quando o player se teleportar
  4. Bom dia a todos, Gostaria de uma pequena ajuda, alguém poderia me passar um script de teleport no estilo pxg para jogos, tipo, eu adicionei um jogo (cobrinha) dentro do pda e gostaria que 1 player por vez pudesse jogar ele (sendo teleportado para o jogo) quando usar um determinado item (videogame), e se alguém tentar usar esse mesmo item recebesse a mensagem de que precisa aguardar pois tem um player no game. Desde já agradeço a ajuda de todos, Erinn
  5. Bom dia a todos, Gostaria de saber como se chama e onde fica (localização no servidor) o movimento que faz os pokemons tipo fantasma atravessarem paredes, etc, como adicionar novos pokemons fantasma para fazerem isso, etc? Estou com um servidor PDA. Sei que não fica apenas no configuration, mas são tantos arquivos que não consigo encontrar, uma vez que nem o nome eu sei XD. Obrigada desde já. Erin
  6. Nossa, muito obrigada slicer, ficou muito bom do jeito que eu queria mesmo, funcionando perfeitamente. rep+++++++
  7. Bom dia galerinha, Será que alguém tem ou pode fazer pra mim um script que teria a seguinte funcionalidade: * Uma porta de lvl, porém ela tem que restringir lvl máximo e não mínimo como na maioria dos scripts existentes aki pelo fórum, ex.: porta onde somente players de lvl 30 menos possam entrar. * Nessa mesma porta gostaria também de restringir entrada de determinado item, forçando o player a deixar no centro pokemon o item proibido para acesso a porta, ex.: Player mesmo tendo lvl para passar pela porta, porém está com rare candy na bag e é proibido esse item na bag, ele não passa pela porta e aparece a mensagem que ele precisa deixar o item proibido no centro pokemon. Em geral somando os 2 exemplos ficaria uma porta onde somente players de lvl 30 menos, sem rare candy na bag podem passar pela porta. Grata Erinn
  8. Erinn

    retirado

    Desculpem, postei em local errado e nao sei como deletar o post, por favor moderadores, apaguem aki.
  • Quem Está Navegando   0 membros estão online

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