Postado Abril 23, 2014 11 anos Então queria algum script que checasse se tal player tivesse a storage ele continuaria no local se não tivesse ele seria teleportado para o templo, poderia ser ao player logar ou então em movements quando ele pisasse em tal tile se ele não tivesse a storage ele iria para o templo. Pois no Castle quando alguém conquista e tem acesso a ele e outra guild conquista o players que conquistou anteriormente ainda irá continuar dentro a não ser que morra. IMAGEM DA ÁREA DO CASTLE: Ou se alguém souber editar esse script que vou deixar abaixo, quando o cara clicar na porta e não for da guild que conquistou teleportar ele pro templo ou qualquer posição que eu definir:SCRIPT: --------------- -----BY PC98------- --------------- function onUse(cid, item, frompos, item2, topos) -------------------------Config----------------------------------------------------------------- door_opened = 1230 -- ID da porta aberta storage_guild = getGlobalStorageValue(123123) -- A 3ª storage configurada em Castle.lua guarda_ativ = 0 -- Caso um invasor tente abrir a porta, sumonar o Monstro "Guarda"?? | (1) = SIM (0) = NAO guarda_cont = 2 -- Caso ativo: a quantidade de guardas a sumonar guarda_pos = {x=530,y=127,y=7} -- Posiçao a ser sumonada os guardas! -------------------------Fim de Config----------------------------------------------------------- if getPlayerGuildId(cid) == storage_guild then doTeleportThing(cid,getThingPos(item.uid)) doTransformItem(item.uid, door_opened) doPlayerSendTextMessage(cid, 22, "Seja bem vindo a vosso castelo!") return TRUE else if guarda_ativ == 1 then doPlayerSendTextMessage(cid, 22, "Guaaaardas, tirem esses invasores daqui!!") for i=1, guarda_cont do doSummonCreature("Guarda", guarda_pos) end return FALSE else doPlayerSendTextMessage(cid, 22, "Este castelo nao pertence a sua guild") return FALSE end end end Editado Abril 23, 2014 11 anos por tiago.bordin1988 (veja o histórico de edições) [url=http://imageshack.us]
Postado Abril 23, 2014 11 anos Tenta essa aqui amigo ... -- <movevent type="StepIn" actionid="20001" script="tile-castelo.lua" desc="Tile que verifica acesso ao castelo" /> function onUse(cid, item, fromPosition, itemEx, toPosition) local pos_principal = {x=141, y=150, z=7} -- posição quer será teleportado if item.actionid == 20001 then -- 20001 = VALOR DA ACTIONID if getPlayerStorageValue(cid, 30001) == -1 then -- 30001 = VALOR DA STORAGE QUE TEM QUE TER doTeleportThing(cid, pos_principal) doPlayerSendTextMessage(cid, MESSAGE_EVENT_ADVANCE, 'Você não tem acesso ao castelo.') -- MSG QUE O PLAYER RECEBERA AO SER TELEPORTADO PARA FORA! end else return false end return true end Espero ter ajudado. STYLLER OT 2022
Postado Abril 23, 2014 11 anos Autor Tenta essa aqui amigo ... -- <movevent type="StepIn" actionid="20001" script="tile-castelo.lua" desc="Tile que verifica acesso ao castelo" /> function onUse(cid, item, fromPosition, itemEx, toPosition) local pos_principal = {x=141, y=150, z=7} -- posição quer será teleportado if item.actionid == 20001 then -- 20001 = VALOR DA ACTIONID if getPlayerStorageValue(cid, 30001) == -1 then -- 30001 = VALOR DA STORAGE QUE TEM QUE TER doTeleportThing(cid, pos_principal) doPlayerSendTextMessage(cid, MESSAGE_EVENT_ADVANCE, 'Você não tem acesso ao castelo.') -- MSG QUE O PLAYER RECEBERA AO SER TELEPORTADO PARA FORA! end else return false end return true end Espero ter ajudado. Então eu não sei qual storage eu tenho que colocar vou postar o script que uso. ----------------------------------- ---------SCRIPT por PC98------------ NAO REMOVA OS CREDITOS ----------------------------------- function onUse(cid, item, frompos, item2, topos) ------------------ Inicio das Config ------------ local castle_one_name = "Ratim Bum" -- Nome do castelo 1 local storages = {154154,54321,123123} -- Storages ( se vc eh iniciante, deixe como está...) -------PREMIOs I N D I V I D U A L --------- local premio_por_vezes = 1 -- Premio por vezes de conquista de castelo. (1) = Ativo (0) = Desativa. local premio_vezes = 13 -- Caso ativo, a quantidade de conquista que o player tem, para ganhar PREMIO. local premio = 2472 -- ID do Premio local premio_cont = 1 -- Quantidade do Premio local premio_reset = 1 -- Resetar o contador do premio depois que atingir a meta?? (1) = SIM (0) = NAO -------FIM PREMIOs I N D I V I D U A L --------- ----------------- FIM DAS CONFIG ----------------- local sto_ativ = getGlobalStorageValue(storages[2]) position = getCreaturePosition(cid) if isPlayerGuild(cid) == TRUE then if sto_ativ == 1 or sto_ativ == -1 then guildname = getPlayerGuildName(cid) guild = getPlayerGuildId(cid) guild_sto = getGlobalStorageValue(storages[3]) if guild ~= guild_sto then setPlayerStorageValue(cid,guild_sto,guild) if getPlayerStorageValue(cid,storages[1]) == -1 then setPlayerStorageValue(cid,storages[1],0) end sto_vezes = getPlayerStorageValue(cid,storages[1]) setGlobalStorageValue(storages[3],getPlayerGuildId(cid)) setPlayerStorageValue(cid,storages[1], sto_vezes + 1) sto_vezes_total = getPlayerStorageValue(cid,storages[1]) doBroadcastMessage("O(a) "..getCreatureName(cid).." acabou de conquistar o castelo "..castle_one_name.." para a guild \""..guildname.."\" pela "..sto_vezes_total.."ª vez(s).", 22) doSendMagicEffect(position, 39) if premio_por_vezes == 1 then if getPlayerStorageValue(cid,storages[1]) == premio_vezes then if getItemWeightById(premio,1) <= getPlayerFreeCap(cid) then doBroadcastMessage("O "..getCreatureName(cid).." ganhou uma(o) "..getItemNameById(premio).." como recompensa das suas "..premio_vezes.." conquistas!", 21) doPlayerAddItem(cid, premio,premio_cont) doPlayerSendTextMessage(cid, 18, "Voce recebeu o(a) "..getItemNameById(premio).." como recompensa das suas "..premio_vezes.." conquistas!") ----------------------------------------------- -- if premio_reset == 1 then -- setPlayerStorageValue(cid,storages[1],0) -- Resetar a contagem end -- ----------------------------------------------- -- else doPlayerSendTextMessage(cid, 18, "Voce nao tem capacidade para ganhar o item. Vamos verificar novamente em 10 segundos!") addEvent(additem,10000,cid,premio,premio_cont,premio_reset) end end end else doPlayerSendCancel(cid,"Este castelo ja foi conquistado pela sua guild!") doSendMagicEffect(position, 2) end else doPlayerSendCancel(cid,"O sistema está desativado") end else doPlayerSendCancel(cid,"É nescessario ter guild para dominar o castelo!") doSendMagicEffect(position, 2) end end ------------------------- por pc98 function additem(cid,premio,premio_cont,premio_reset) if getItemWeightById(premio,1) <= getPlayerFreeCap(cid) then doPlayerAddItem(cid, premio,premio_cont) doPlayerSendTextMessage(cid, 18, "Voce recebeu o(a) "..getItemNameById(premio).." como recompensa das suas "..premio_vezes.." conquistas!") if premio_reset == 1 then setPlayerStorageValue(cid,storages[1],0) end stopEvent(additem) else doPlayerSendTextMessage(cid, 18, "Voce nao tem capacidade para ganhar o item. Verificando novamente em 10 segundos!") addEvent(additem,10000,cid) end end ------------------------- por pc98 function isPlayerGuild(cid) if getPlayerGuildName(cid) ~= "" then return TRUE else return FALSE end end Outro: --------------- -----BY PC98------- --------------- function onUse(cid, item, frompos, item2, topos) -------------------------Config----------------------------------------------------------------- door_opened = 1230 -- ID da porta aberta storage_guild = getGlobalStorageValue(123123) -- A 3ª storage configurada em Castle.lua guarda_ativ = 0 -- Caso um invasor tente abrir a porta, sumonar o Monstro "Guarda"?? | (1) = SIM (0) = NAO guarda_cont = 2 -- Caso ativo: a quantidade de guardas a sumonar guarda_pos = {x=530,y=127,y=7} -- Posiçao a ser sumonada os guardas! -------------------------Fim de Config----------------------------------------------------------- if getPlayerGuildId(cid) == storage_guild then doTeleportThing(cid,getThingPos(item.uid)) doTransformItem(item.uid, door_opened) doPlayerSendTextMessage(cid, 22, "Seja bem vindo a vosso castelo!") return TRUE else if guarda_ativ == 1 then doPlayerSendTextMessage(cid, 22, "Guaaaardas, tirem esses invasores daqui!!") for i=1, guarda_cont do doSummonCreature("Guarda", guarda_pos) end return FALSE else doPlayerSendTextMessage(cid, 22, "Este castelo nao pertence a sua guild") return FALSE end end end [url=http://imageshack.us]
Postado Abril 23, 2014 11 anos cara eu tenho esse msm script a storage usada é a 123123 O sexo é bom o amor, melhor, os dois então perfeito ♫
Postado Abril 23, 2014 11 anos Autor cara eu tenho esse msm script a storage usada é a 123123 então coloquei desse jeito em em movements.xml add a tag: <movevent type="StepIn" actionid="20001" event="script" value="tile-castelo.lua"/> e na pasta Script no arquivo tile-castelo.lua coloquei a storage 123123 e add no map editor actionid 20001 no tile, mais quando pisa no tile não acontece nada e não aparece erro no distro. Max, você poderia me passar o seu que você usa o script e a tag, pra min testar aqui? [url=http://imageshack.us]
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.