Ir para conteúdo

f55felipe

Campones
  • Total de itens

    10
  • Registro em

  • Última visita

Sobre f55felipe

Informações

  • Forma que conheci o xTibia
    Otservs
  • Sou
    OT-Admin

Últimos Visitantes

636 visualizações

f55felipe's Achievements

  1. Arrumei ja vlw pela tentativa de me ajudar , nao vou mecher ja tenho tdos os scripts feitos.
  2. Opa eu consigui, ti, essa parte eu resolvi com string.len() ai nao da mais erro quando do string.match(). Estou com um problema ve se voce consegue me ajudar, tenho essa script aqui que muda de voc conforme a arma nao mao so que se o player morrer com ela ele volta para lv 1 e perde a voc os items tbm e bug mana e vida. queria que isso nao acontecesse. local effect = 30 -- Efeito que vai usar local delay = 5000 -- em ms if not setItemName then function setItemName(uid,name) return doItemSetAttribute(uid,'name',name) end end function onLogin(cid) SendEffect(cid) return true end function SendEffect(cid) if not isCreature(cid) then return end if (isItemEquipped(cid, CONST_SLOT_LEFT, 10223) == TRUE) then local name = getItemAttribute(getPlayerSlotItem(cid, CONST_SLOT_LEFT).uid, "name") name = tostring(name) local verify = string.len(name) if verify == 3 or verify == 34 or verify == 26 then doPlayerSendCancel(cid, "sua arma e lv 0") else local lvl = string.match(name,'%s%+(%d+)%s*') local lvnumero = tonumber(lvl) + 5 doSendAnimatedText(getPlayerPosition(cid), "ARMA+".. tonumber(lvl) .."" , TEXTCOLOR_RED) doSendMagicEffect(getThingPos(cid), effect) doPlayerSetVocation(cid, lvnumero) doCreatureSetDropLoot(cid, false) doPlayerSetLossPercent(cid, PLAYERLOSS_ITEMS, 0) doPlayerSetLossPercent(cid, PLAYERLOSS_CONTAINERS, 0) end end if (isItemEquipped(cid, CONST_SLOT_LEFT, 10223) == FALSE) then doPlayerSendCancel(cid, "o item não 10223 está em suas mãos.") doPlayerSetVocation(cid, 2) registerCreatureEvent(cid, "BlessedPlayer") end addEvent(SendEffect, delay, cid) end
  3. Sim , mas aquela me atende bem tbm mas vlw porem , tipo estou com um problema aqui, estou usando essa funcao string.match(name,'sword') porem se ela nao acha oque eu quero ela retorna value nil e da erra na distro, tem algum jeito que quando ela retornase nil value nao desse o erro? mesmo com if varias condicoes ela retorna o mesmo erro acho que e a funcao mesmo que nao pode retorna valor nulo.
  4. Fala estou com uma duvida acho que simples so que nao estou conseguindo resolver, vamos la estou usando essa linha de codigo local name = getPlayerSlotItem(cid, CONST_SLOT_LEFT).itemid doPlayerSendCancel(cid, tostring(name)) So que eu queria pegar o nome do item, eu ja tentei itemname, item.name e etc, esse ai ta pegando o id dele. consegui ja, podem deletar local name = getItemAttribute(getPlayerSlotItem(cid, CONST_SLOT_LEFT).uid, "name")
  5. tenta entrar com seu ip de maquina, o 192.168.0.2 ou algo de genero
  6. Obrigado por responder e desculpa a demora, peguei o seu script e modifiquei para ele fazer teleport radom, VLW pela ajuda REP+ , falta so arrumar as pessoas ele sempre teleporta todas indepentes se tem 1 so na sala. __________________________________ local Config = { PosTPSpawn = {x=32991, y=32416, z=7}, -- pos que o tp vai manda PosPlayerTP = {x=32962, y=32077, z=7}, -- pos que o tp irá aparecer Tempo = 30, -- Tempo em segundos que o TP ficará no local até desaparecer e o tempo que irá teleportar os players da sala templo = {x=32957, y=32076, z=7}, AreaDe = {x=32989, y=32415, z=7}, AreaAte = {x=32993, y=32419, z=7}, from = {x = 32989, y = 32405, z = 8}, -- Posicao da topo esquerdo to = {x = 33003, y = 32419, z = 8}, -- posicao da base direita } function onThink(interval, lastExecution, thinkInterval) doCreateTeleport(1387, Config.PosTPSpawn, Config.PosPlayerTP) doBroadcastMessage("O portal para o evento foi aberto e se fexará em 30 segundos.") addEvent(function() deleteTp() end, ((Config.Tempo * 1000)*1)) addEvent(function() mover() end, ((Config.Tempo * 1000)*1)) addEvent(function() doBroadcastMessage("O portal do evento foi fexado. Próximo evento em 1 horas.", 25) end, ((Config.Tempo * 1000)*1)) return true end function deleteTp() local delete = getTileItemById(Config.PosPlayerTP, 1387) doRemoveItem(delete.uid, 1) doSendMagicEffect(positioni, CONST_ME_TELEPORT) end function mover() local PlayersArea = RetornarPlayersArea(Config.AreaDe, Config.AreaAte) local TpTemplo = false if #PlayersArea > 3 then TpTemplo = true end for i = 1, #PlayersArea do if TpTemplo == true then local p = {x = math.random(Config.from.x, Config.to.x), y = math.random(Config.from.y, Config.to.y), z = math.random(Config.from.z, Config.to.z)} doTeleportThing(PlayersArea, p) doSendMagicEffect(p, CONST_ME_TELEPORT) doPlayerSendTextMessage(PlayersArea, MESSAGE_STATUS_WARNING, "Comecssssou!") else doTeleportThing(PlayersArea, config.templo) doPlayerSendTextMessage(PlayersArea, MESSAGE_STATUS_WARNING, "sem Pessoas suficentes, menos que 3.") end end return true end function RetornarPlayersArea(PosIn, PosFn) playersInArea = {} for _, pid in ipairs(getPlayersOnline()) do local Pos = getCreaturePosition(pid) if PosIn.x <= Pos.x and PosIn.y <= Pos.y and PosIn.z == Pos.z then if PosFn.x >= Pos.x and PosFn.y >= Pos.y and PosFn.z == Pos.z then table.insert(playersInArea, pid) end end end return playersInArea end
  7. Va em data\weapons\scripts cria um arquivo wand.lua e coloque --------------------------------------- w = { [1] = {ef = 17, sh = 31, dmg = COMBAT_HOLYDAMAGE} } function onUseWeapon(cid, var) min, max = 350000 , 559000 -- dano minimo e maximo target = getCreatureTarget(cid) if target ~= 0 then wx = w[math.random(1, #w)] doSendDistanceShoot(getThingPos(cid), getThingPos(target), wx.sh) addEvent(doAreaCombatHealth, 100, cid, wx.dmg, getThingPos(target), 0, -min, -max, wx.ef) end return true end -------- va em data\weapons.xml e adicone </wand> <wand id="IDDOITEM" level="0" mana="0" min="7000" max="12000" type="physical" event="script" value="wand.lua"> <vocation name="Sorcerer"/> <vocation name="Master Sorcerer"/> <vocation name="Druid"/> <vocation name="Elder Druid"/> se esses nao forem os efeitos certos , pocure na pasta data\libs\contant
  8. Tudo beleza, estou com uma duvida em uma script que fiz, vamos la: queria que em2h em 2h abri-se o portal e leva-se tudos pra uma sala de espera depois de 5 minutos o portal fechava, ai se tivesse mais que 5 players nessa sala ele teleportaria todos para area diferentes no mapa se tivesse menos que 5 players jogava todos para o templo. comecei fazer um, so que nao consigo continuar porque sou bem ruim em lua. vo postar aq. local positioni = x=XXX, y=XXX, z=XXX} function onThink(interval, lastExecution, thinkInterval) local time = 5 doCreateTeleport(1387, {x=XXX, y=XXX, z=XXX}, positioni) doBroadcastMessage("O portal para o evento foi aberto e se fexará em 5 minutos.") addEvent(deleteTp, time*60) addEvent(mover, (time+1)*60) addEvent(doBroadcastMessage, time*100*60, "O portal do evento foi fexado. Próximo evento em 2 horas.") end function deleteTp() local delete = getTileItemById(positioni, 1387) doRemoveItem(delete.uid, 1) doSendMagicEffect(positioni, CONST_ME_TELEPORT) end function mover() local frompos,topos = {x=xxx, y=yyy, z=z}, {x=xxx, y=yyy, z=z} area = {x = 1017, y = 1026, z = 7} for a,b in pairs(getPlayersOnline()) do if isInArea(getThingPos(b),frompos, topos) then doTeleportThing(b, area) end return true end ---------------- desde ja obrigado e agradeco
  9. Opa tudo bem pessoal, estou como uma duvida nas mensagens de broadcast, as mensagens brancas e vermelhas que aparece no meu servidor. Entao, ja fui no creaturescripts e globalevents e nao tem nenhum script rodando la , alguem sabe onde pode estar rodando essa script? me ajudem ai nao sei mais oque fazer. Obrigado
  • Quem Está Navegando   0 membros estão online

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