Jump to content

Recommended Posts

Obrigado por contribuir com o fórum, isso vai ajudar muitos donos de otservs.

 

 

 

 

 

                                                                                                                                                     tumblr_nwmv2z4VEM1ujiquxo1_100.gif.2db64bb36f0f565e68ff2a90cb98f439.gif.59f4c4cf234d2f6906621cac0553a862.gif

https://github.com/italoxxx1

 

Link to post
Share on other sites

Obrigado pela contribuição.

 

Eu já sacava desse bug, para resolver eu fiz aquela porta que teleporta para o outro lado, é algo bem simples isso mas muita gente desconhece.

 

Link to post
Share on other sites

5 minutos atrás, esnio12 disse:

Obrigado pela contribuição.

 

Eu já sacava desse bug, para resolver eu fiz aquela porta que teleporta para o outro lado, é algo bem simples isso mas muita gente desconhece.

 

 

1 hora atrás, RicK Sanchez disse:

Obrigado por contribuir com o fórum, isso vai ajudar muitos donos de otservs.

Por nada meus amigos, eu que agradeço! A propósito @esnio12, eu estava justamente atrás dessa porta, esse script solucionou meu problema kkkk, em fim, ta ae! ;)

Link to post
Share on other sites

  • Director

@H. Gaudard obrigado por compartilhar essa solução, muitos preferem se beneficiar de um bug como esses mas a sua atitude é muito nobre! Rep+

Tutoriais, lives, suporte, desafios, classificados e freelancer você encontra na Academia de Otserver.

separa10.png

 

Conheça nossos grupos:

 

academiaicone1.png                        academiaicone2.png

Academia de Mapping!        Academia de Coding!

 

academiaicone3.png

Academia de Design!

---------------------------------------------

 

 

Precisando de Sprites?

 

 

Academia de Spriting

Academia de Spriting - Baixe Sprites gratuitas (FREE) em nosso blog!

 

 

---------------------------

« Mapas do Nolis »

 

 

 

 

Link to post
Share on other sites

  • 2 weeks later...
Em 06/07/2020 em 12:57, Nolis disse:

@H. Gaudard obrigado por compartilhar essa solução, muitos preferem se beneficiar de um bug como esses mas a sua atitude é muito nobre! Rep+

Muito obrigado! Agradeço imensamente pelo reconhecimento!

Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

  • Similar Content

    • By xWhiteWolf
      Fala galera do TK, criei esse anelzinho pra servers que procuram inovar.. 
      bom, oque ele faz??
      Simples, ele torna o usuário invisível.
      aff, mas já existe o stealth ring que faz isso!
      Sim mas dessa vez eu digo invisível mesmo, nenhum monstro ou players conseguirá te ver.
      que lixo, assim qualquer player vai poder ficar invisível e passar no meio dos monstros e players.. vai estragar o server
      Aí é que vc se engana porque o anel vem uma maldição, quem usar ele vai perdendo 3% de vida por segundo (ajustável) e só vai estragar o server se vc sair distribuindo o anel pra todos os players haha

      O anel em si possui duas versões, na primeira ele retira 3% de vida por segundo, na segunda ele adiciona uma condição que te deixa perdendo uma quantidade fixa de vida, CONTUDO, na segunda versão aparece uma poça de sangue cada vez que toma o dano então dá pros players te pegarem caso vc coloque o anel e resolva fugir kkkkk
      Vou chamar aqui de versão 1 e 2 respectivamente.
      OBS: ISSO É EM MOVEMENTS!

       
       
      1ª versão (sem sangue mas que tira 3% de vida por segundo):
      local invisible = createConditionObject(CONDITION_GAMEMASTER, -1, false, GAMEMASTER_INVISIBLE) local outfit = createConditionObject(CONDITION_INVISIBLE, -1, false) local percent = 3 local tempo = 1 -- em segundos function onEquip(cid, item, slot) doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "By using this ring you will become fully invisible and lose health over time because of it's curse.") function lifesteal(cid) steal = addEvent(lifesteal, 1000*tempo, cid) if isCreature(cid) then doSendAnimatedText(getCreaturePos(cid), "-"..math.floor((getCreatureMaxHealth(cid) * (percent/100))), 144, cid) doCreatureAddHealth(cid, -math.floor(getCreatureMaxHealth(cid) * (percent/100))) end end lifesteal(cid) doAddCondition(cid, invisible) doAddCondition(cid, outfit) doSendMagicEffect(getCreaturePos(cid), 12) return true end function onDeEquip(cid, item, slot) doTransformItem(item.uid, 2165) doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "You're no longer receiving the special bonus..") stopEvent(steal) doRemoveCondition(cid, CONDITION_INVISIBLE) doSendMagicEffect(getCreaturePos(cid), 12) doRemoveCondition(cid, CONDITION_GAMEMASTER, GAMEMASTER_INVISIBLE) return true end   2ª versão (a cada 1,5 segundos ele te tira um dano configurado e deixa uma poça de sangue embaixo de vc facilitando que te identifiquem mesmo estando invisivel):
      local invisible = createConditionObject(CONDITION_GAMEMASTER, -1, false, GAMEMASTER_INVISIBLE) local outfit = createConditionObject(CONDITION_INVISIBLE, -1, false) local condition = createConditionObject(CONDITION_PHYSICAL) setConditionParam(condition, CONDITION_PARAM_DELAYED, TRUE) addDamageCondition(condition, -1, 1500, -500) function onEquip(cid, item, slot) doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "By using this ring you will become fully invisible and lose health over time because of it's curse.") doAddCondition(cid, condition) doAddCondition(cid, invisible) doAddCondition(cid, outfit) doSendMagicEffect(getCreaturePos(cid), 12) return true end function onDeEquip(cid, item, slot) doTransformItem(item.uid, 2165) doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "You're no longer receiving the special bonus..") doRemoveCondition(cid, CONDITION_PHYSICAL) doRemoveCondition(cid, CONDITION_INVISIBLE) doSendMagicEffect(getCreaturePos(cid), 12) doRemoveCondition(cid, CONDITION_GAMEMASTER, GAMEMASTER_INVISIBLE) return true end Agora edite no items.xml o stealth ring pra que ele seja infinito:
      <item id="2202" article="a" name="stealth ring"> <attribute key="weight" value="100" /> <attribute key="slotType" value="ring" /> <attribute key="transformDeEquipTo" value="2165" /> </item> e em movements.xml adicione essas linhas:
      <movevent type="Equip" itemid="2202" slot="ring" event="script" value="stealth.lua"/> <movevent type="DeEquip" itemid="2202" slot="ring" event="script" value="stealth.lua"/> Editando:
      Na primeira versão vc pode alterar as seguintes coisas que estão em colorido:
      local invisible = createConditionObject(CONDITION_GAMEMASTER, -1, false, GAMEMASTER_INVISIBLE)
      local outfit = createConditionObject(CONDITION_INVISIBLE, -1, false)
      local percent = 3
      local tempo = 1 -- em segundos
       
      em vermelho é o tempo que dura a invisibilidade... -1 é infinito
      em azul é a porcentagem de vida que perde por tempo
      em verde é o tempo em que se perde vida.. nesse caso a cada 1 segundo perde 3%
       
      Na segunda versão vc pode editar as mesmas coisas do primeiro só que o tempo e o dano pelo tempo estão na condition:
       
      local condition = createConditionObject(CONDITION_PHYSICAL)
      setConditionParam(condition, CONDITION_PARAM_DELAYED, TRUE)
      addDamageCondition(condition, -1, 1500, -500)
       
      em vermelho é o numero de vezes que vai tirar vida. Mais uma vez -1 significa infinito (infinito até remover o anel)
      em azul é o dano que vc toma a cada tempo (lembre-se de deixar sempre um - na frente se não ele vai adicionar vida)
      em verde é o tempo em que se perde vida.. nesse caso a cada 1 segundo e meio retira 500 de vida
       
       
      Bom, é isso.. um script simples mas que vai ajudar muita gente pelo fato de usar conditions não tão comuns e de uma forma diferente haha
    • By .HuRRiKaNe
      O script determina quantos jogadores podem utilizar uma área por vez!
       
      Preview:

       
      m data/movements/scripts crie um arquivo com o nome tplimit.lua e dentro coloque:
      local c = { limit = 5, -- Limite de jogadores msgCancel = 'Tp bloqueado. Maximo de jogadores atingido', -- Mensagem quando o limite de jogadores estiver atingido area = { From = {x = 1069, y = 1027, z = 6}, -- Coordenada maxima superior esquerda To = {x = 1071, y = 1030, z = 7}, -- Coordenada minima inferior direita }, pos = {x = 1070, y = 1030, z = 7}, -- Coordenada onde será teletransportado local function getPlayersInArea(fromPos, toPos) local t = {} for _, cid in ipairs(getPlayersOnline()) do if isInRange(getThingPos(cid), fromPos, toPos) then table.insert(t, cid) end end return t end function onStepIn(cid, item, fromPos, toPos) if isPlayer(cid) then if table.getn(getPlayersInArea(c.area.From, c.area.To)) < c.limit then doSendMagicEffect(fromPos, CONST_ME_TELEPORT) doTeleportThing(cid, c.pos) doSendMagicEffect(getThingPos(cid), CONST_ME_TELEPORT) else doPlayerSendCancel(cid, c.msgCancel) doTeleportThing(cid, toPos, false) end end return true end  
      Em movements.xml adicione a tag:
      <movevent type="StepIn" uniqueid="ID" event="script" value="tplimit.lua"/>  
      Créditos:
      Belerofonte
  • Recently Browsing   0 members

    No registered users viewing this page.


×
×
  • Create New...

Important Information

Confirmação de Termo