Ir para conteúdo
  • Cadastre-se

Sitema%2525252FMod [System] Anti-Cloner - Gesior


Posts Recomendados

Olá, freqüentemente vários donos de servidores tem este problema de cloners em seu server, tanto é com quedas do Servidor, ou outras coisas relacionadas, vou hoje mostrar a vocês um sistema muito interessante que encontrei na web.

Comprado no shop só pode ser usado pelo dono assim impedindo que se clone e seja repassado os

item para outros players.

* Cada item comprado no shop recebe o nome do player na descrição.

* Não esqueça de em movements.xml copiar as tags e trocar o "itemid" para funcionar em todos os items que

ali você selecionar.

•1° Siga a linha de comando : Data>Movements>Scripts.

Crie um Arquivo chamado: equipvip.lua

Neste mesmo arquivo coloque:

Código PHP:

function onEquip(cid, item, slot)

local f = getItemAttribute(item.uid, 'description')

if f then

doPlayerSendTextMessage(cid, MESSAGE_INFO_DESCR, 'Esse item pertence ao player '..f..'!')

doRemoveItem(item.uid)

end

return TRUE

end 
-IDDOITEM = Aqui você coloca o id do item vip, caso você queira que somente quem comprou no shop do site, possa usar. •3° Siga a linha de comando: Data/Globalevents/scripts Crie um arquivo chamado : shop.lua No mesmo, insira: Código PHP:
local SHOP_MSG_TYPE = MESSAGE_EVENT_ORANGE

local SQL_interval = 30


function onThink(interval, lastExecution)

local result_plr = db.getResult("SELECT * FROM z_ots_comunication WHERE `type` = 'login';")

if result_plr:getID() ~= -1 then

	 while true do

		 local id = tonumber(result_plr:getDataInt("id"))

		 local action = tostring(result_plr:getDataString("action"))

		 local delete = tonumber(result_plr:getDataInt("delete_it"))

		 local cid = getCreatureByName(tostring(result_plr:getDataStrin g("name")))

		 if isPlayer(cid) then

			 local bp = getPlayerSlotItem(cid, CONST_SLOT_BACKPACK).uid

			 local add_item_name = tostring(result_plr:getDataString("param6"))

			 if bp ~= 0 then

				 local itemtogive_id = tonumber(result_plr:getDataInt("param1"))

				 local itemtogive_count = tonumber(result_plr:getDataInt("param2"))

				 local container_id = tonumber(result_plr:getDataInt("param3"))

				 local container_count = tonumber(result_plr:getDataInt("param4"))

				 local add_item_type = tostring(result_plr:getDataString("param5"))

				 local received_item = 0

				 local full_weight = 0

				 if add_item_type == 'container' then

					 container_weight = getItemWeightById(container_id, 1)

					 if isItemRune(itemtogive_id) == TRUE then

						 items_weight = container_count * getItemWeightById(itemtogive_id, 1)

					 else

						 items_weight = container_count * getItemWeightById(itemtogive_id, itemtogive_count)

					 end

					 full_weight = items_weight + container_weight

				 else

					 full_weight = getItemWeightById(itemtogive_id, itemtogive_count)

					 if isItemRune(itemtogive_id) == TRUE then

						 full_weight = getItemWeightById(itemtogive_id, 1)

					 else

						 full_weight = getItemWeightById(itemtogive_id, itemtogive_count)

					 end

				 end

				 local free_cap = getPlayerFreeCap(cid)

				 if full_weight <= free_cap then

					 if add_item_type == 'container' then

						 local new_container = doCreateItemEx(container_id, 1)

						 local iter = 0

						 while iter ~= container_count do

							 doAddContainerItem(new_container, itemtogive_id, itemtogive_count)

							 iter = iter + 1

						 end


						 received_item = doAddContainerItemEx(bp, new_container)

					 else

						 local new_item = doCreateItemEx(itemtogive_id, itemtogive_count)

						 doItemSetAttribute(new_item, 'description', getPlayerName(cid))

						 received_item = doAddContainerItemEx(bp, new_item)

					 end

					 if received_item == RETURNVALUE_NOERROR then

						 doPlayerSendTextMessage(cid, SHOP_MSG_TYPE, 'You received >> '.. add_item_name ..' << from OTS shop.')

						 db.executeQuery("DELETE FROM `z_ots_comunication` WHERE `id` = " .. id .. ";")

						 db.executeQuery("UPDATE `z_shop_history_item` SET `trans_state`='realized', `trans_real`=" .. os.time() .. " WHERE id = " .. id .. ";")

					 else

						 doPlayerSendTextMessage(cid, SHOP_MSG_TYPE, '>> '.. add_item_name ..' << from OTS shop is waiting for you. Please make place for this item in your backpack and wait about '.. SQL_interval ..' seconds to get it.')

					 end

				 else

					 doPlayerSendTextMessage(cid, SHOP_MSG_TYPE, '>> '.. add_item_name ..' << from OTS shop is waiting for you. It weight is '.. full_weight ..' oz., you have only '.. free_cap ..' oz. free capacity. Put some items in depot and wait about '.. SQL_interval ..' seconds to get it.')

				 end

			 else

				 doPlayerSendTextMessage(cid, SHOP_MSG_TYPE, '>> '.. add_item_name ..' << from OTS shop is waiting for you, but you don\'t have a backpack.')

			 end

		 end

		 if not result_plr:next() then

			 break

		 end

	 end

	 result_plr:free()

end

return true

end 

Observações:

1° Eu não testei o script, então não sei se funciona.

2° Créditos ao script, do blogdogiroba.

Recomendo!

Créditos:

GodMarini - Tópico

Chaitosoft - Criador do Sistema

Blogdogiroba - Fornecer o sistema.

Editado por Matheus (veja o histórico de edições)

Contato;

6yonKDJ.png god.marinii

TaxNfhb.png

Link para o post
Compartilhar em outros sites
  • 1 month later...
  • 3 weeks later...

Créditos errado, o tópico está igual do outro fórum.

Créditos do Tópico não é seu e sim do: Falling

Editado por thiagobji (veja o histórico de edições)

horizontallogowhite1.png

Link para o post
Compartilhar em outros sites

é um script bom, porem comercio de item vips tchau tbm!

Mais tem outras maneiras de verificar esse clone items!

Link para o post
Compartilhar em outros sites

Participe da conversa

Você pode postar agora e se cadastrar mais tarde. Se você tem uma conta, faça o login para postar com sua conta.

Visitante
Responder

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emojis são permitidos.

×   Seu link foi automaticamente incorporado.   Mostrar como link

×   Seu conteúdo anterior foi restaurado.   Limpar o editor

×   Não é possível colar imagens diretamente. Carregar ou inserir imagens do URL.

  • Quem Está Navegando   0 membros estão online

    Nenhum usuário registrado visualizando esta página.

  • Conteúdo Similar

    • Por Vodkart
      Mapa BattleField Feito Por AnneMotta :

      Mapa Battlefield.rar

      Scan: https://www.virustot...sis/1346548669/


      Imagens do mapa



      Descrição:

      - O evento é automático e acontece em determinado dia e hora da semana
      - Logo após é aberto um teleport então apenar um número limitado de players entra no evento
      - São formados por dois times, os "Black Assassins" e os "Red Barbarians"
      - Os times são balanceados automaticamente, quando o último jogador entra, esse teleport é fechado e depois de 5 minutos o evento começa, os 5 minutos são para os players ter tempo de planejar um ataque.
      - O sistema tem por finalidade matar todos do time inimigo, e os players que sobreviverem recebem um prêmio.

      Bônus:

      - Durante o evento é mostrado na tela somente dos jogadores que estão no evento um placar de times.

      - Até o último player entrar no evento, ficam mandando broadcast dizendo quanto players faltam para dar inicio ao jogo.

      - Se o evento abrir e não atingir a meta de players colocada, o evento é finalizado e os players voltam para o templo.




      Lembre-se:

      - De colocar Pvp Tool na área
      - De colocar área NoLogout


      Imagens:




      Instalação:

       
      Data > Lib       Data > CreatureScript > Script     Data > GlobalEvents > Scripts       Data > Movements > Script             Configurações do evento
×
×
  • Criar Novo...

Informação Importante

Confirmação de Termo