Postado Outubro 11, 2016 8 anos Iae galera do TK. Queria exp bonus para quem for dono do castle. Se alguém puder me ajudar pf, pq não to conseguindo por o storage certo se alguem puder me ajudar agradeço desde de ja Uso esse script de Castle 24Hr Actions.XML<!-- Castle 24Hrs --> <action actionid="9999" event="script" value="castlewar1.lua"/> <action actionid="4538" event="script" value="castledoor1.lua"/> castledoor1.LUAfunction onUse(cid, item, frompos, item2, topos) local config = { STORAGE_GUILD = 123123, -- A 3ª storage configurada em Castle.lua MSG_WELCOME = "Seja bem vindo a vosso castelo!", MSG_FAIL = "Este castelo nao pertence a sua guild" } if getPlayerGuildId(cid) == getGlobalStorageValue(config.STORAGE_GUILD) then doTeleportThing(cid,getThingPos(item.uid)) doTransformItem(item.uid, 1230) doPlayerSendTextMessage(cid, 22, config.MSG_WELCOME) else doPlayerSendTextMessage(cid, 22, config.MSG_FAIL) end return true endcastlelever.LUAfunction onUse(cid, item, fromPosition, itemEx, toPosition) if(item.actionid == 4850) then doTeleportThing(getTopCreature({x=329,y=118,z=5}).uid, {x=329,y=118,z=3}) elseif (item.actionid == 4851) then doTeleportThing(getTopCreature({x=329,y=118,z=3}).uid, {x=329,y=118,z=5}) end return true end castlewar1.LUA----------------------------------- ---------SCRIPT por PC98------------ NAO REMOVA OS CREDITOS ----------------------------------- function onUse(cid, item, frompos, item2, topos) ------------------ Inicio das Config ------------ local castle_one_name = "Castle24h" -- 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 = 0 -- Premio por vezes de conquista de castelo. (1) = Ativo (0) = Desativa. local premio_vezes = 15 -- Caso ativo, a quantidade de conquista que o player tem, para ganhar PREMIO. local premio = 2157 -- ID do Premio local premio_cont = 100 -- Quantidade do Premio local premio_reset = 0 -- 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 movements.XML <movevent type="StepIn" actionid="9998" event="script" value="castlewar2.lua"/> <movevent type="StepIn" actionid="9995" event="script" value="level.lua"/> castlewar2.luafunction onStepIn(cid, item, position, fromPosition) local castle_one_name = "Castle24H" -- Nome do castelo 1 local storages = {154154,54321,123123} -- Storages ( se vc eh iniciante, deixe como está...) 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 doBroadcastMessage("O(a) Jogador "..getCreatureName(cid)..". Esta Tentando Invadir O "..castle_one_name.." Da Guild \""..guildname..". Aviso Donos Atuais", 22) else doPlayerSendCancel(cid,"Avance") end else doPlayerSendCancel(cid,"Avance") end else doPlayerSendCancel(cid,"Avance") end return true end function isPlayerGuild(cid) if getPlayerGuildName(cid) ~= "" then return TRUE else return FALSE end end
Postado Outubro 15, 2016 8 anos faz o seguinte coloca no respawn do castle bichos diferentes, ai tu altera a xp deles baseada no 10% msm, por script eu não achei pelo q eu vi, quem domina o castle pode setar 3 storage diferentes local storages = {154154,54321,123123} OT PURA DIVERSÃO | IP: otfun.servegame.com | 8.60 | Port: 7171
Postado Outubro 18, 2016 8 anos DATA/CREATURESCRIPTS/SCRIPTS castlelogin.lua function onLogin(cid) local config = { STORAGE_GUILD = 123123, -- A 3ª storage configurada em Castle.lua RATE_EXP = 1.2, -- 20% DE EXP EXTRA MSG = "Por dominar o castelo você recebeu "..((config.RATE_EXP - 1)*100).."% a + de experiência" -- Mensagem que aparece no chat } if getPlayerGuildId(cid) == getGlobalStorageValue(config.STORAGE_GUILD) then doPlayerSetExperienceRate(cid, config.RATE_EXP) doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, config.MSG) end return TRUE end DATA/CREATURESCRIPTS/CREATUERSCRIPTS.XML <event type="login" name="castlelogin" script="castlelogin.lua"/> DATA/CREATURESCRIPTS/SCRIPTS/LOGIN.LUA registerCreatureEvent(cid, "castlelogin")
Postado Outubro 18, 2016 8 anos quando domina o castle pega uma dessas tres storages, num pega só uma local storages = {154154,54321,123123} 6 horas atrás, Noynac disse: DATA/CREATURESCRIPTS/SCRIPTS castlelogin.lua function onLogin(cid) local config = { STORAGE_GUILD = 123123, -- A 3ª storage configurada em Castle.lua RATE_EXP = 1.2, -- 20% DE EXP EXTRA MSG = "Por dominar o castelo você recebeu "..((config.RATE_EXP - 1)*100).."% a + de experiência" -- Mensagem que aparece no chat } if getPlayerGuildId(cid) == getGlobalStorageValue(config.STORAGE_GUILD) then doPlayerSetExperienceRate(cid, config.RATE_EXP) doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, config.MSG) end return TRUE end DATA/CREATURESCRIPTS/CREATUERSCRIPTS.XML <event type="login" name="castlelogin" script="castlelogin.lua"/> DATA/CREATURESCRIPTS/SCRIPTS/LOGIN.LUA registerCreatureEvent(cid, "castlelogin") OT PURA DIVERSÃO | IP: otfun.servegame.com | 8.60 | Port: 7171
Postado Outubro 18, 2016 8 anos Não, essa storage STORAGE_GUILD = 123123 verifica quem é dono, as outras eu não vi pra que são, mas provavelmente são storages so pra aparecer a msg no broadcaster ^^
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.