Ir para conteúdo

Featured Replies

Postado

seu servidor o global? vai nas storages na pasta lib e ve se existe a storage combatProtectionStorage, eu não investiguei se é direto na source ou por script esse sistema mas não achei script dele, teste e veja se funciona assim e se caso não funcione eu procuro onde o sistema funciona e te passo.

 

Spoiler

local function onMovementRemoveProtection(cid, oldPosition, time)
	local player = Player(cid)
	if not player then
		return true
	end

	local playerPosition = player:getPosition()
	if (playerPosition.x ~= oldPosition.x or playerPosition.y ~= oldPosition.y or playerPosition.z ~= oldPosition.z) or player:getTarget() then
		player:setStorageValue(50722, 0)
		return true
	end

	addEvent(onMovementRemoveProtection, 1000, cid, oldPosition, time - 1)
end

function onLogin(cid)
    local player = Player(cid)
    local loginStr = 'Welcome to ' .. configManager.getString(configKeys.SERVER_NAME) .. ' World, if you are not a Premium Account, see the benefits on our website and become a player with more advantages!'
    if player:getLastLoginSaved() <= 0 then
        loginStr = loginStr .. ' Please choose your outfit.'
        player:sendTutorial(1)
    else
        if loginStr ~= '' then
            player:sendTextMessage(MESSAGE_STATUS_DEFAULT, loginStr)
        end
        loginStr = string.format("Your last visit was on %s.", os.date("%a %b %d %X %Y", player:getLastLoginSaved()))
    end
    player:sendTextMessage(MESSAGE_STATUS_DEFAULT, loginStr)
    
    local mensagem_premium = "You have "..player:getPremiumDays().." Premium Days and 20% more experience with full stamina."
    if isPremium(cid) then
        player:sendTextMessage(MESSAGE_EVENT_ADVANCE, mensagem_premium)
    end
    -- Stamina
    nextUseStaminaTime[player.uid] = 0
    
-- Promotion
    local vocation = player:getVocation()
    local promotion = vocation:getPromotion()
    local value = player:getStorageValue(STORAGEVALUE_PROMOTION)
    if not promotion and value ~= 1 then
        player:setStorageValue(STORAGEVALUE_PROMOTION, 1)
    elseif value == 1 then
        player:setVocation(promotion)
    end
local defaultTown = "Intiri" -- default town where player is teleported if his home town is in premium area
local freeTowns = {"Intiri", "Ald'ruhn", "Skyrim", "Ithilien", "Ascal", "Avendale"} -- towns in free account area
if player:getPremiumDays() <= 0 and player:getStorageValue(998899) == 1 then
    local town = player:getTown()
    town = isInArray(freeTowns, town:getName()) and town or Town(defaultTown)
    player:teleportTo(town:getTemplePosition())
    player:sendTextMessage(MESSAGE_EVENT_ADVANCE, "Your Premium Time has expired.")
    player:setStorageValue(998899, 0)
end
    -- Events
    player:registerEvent("PlayerDeath")
    player:registerEvent("Tasks")
    player:registerEvent("TaskLorelei")
    player:registerEvent("TopFrags")
    player:registerEvent("killingInTheNameOfQuestKills")
    player:registerEvent("inquisitionQuestBosses")
    player:registerEvent("inquisitionQuestUngreez")
    player:registerEvent("IconMap")
    player:registerEvent("Vermush")
    player:registerEvent("lookreset")
    player:registerEvent("Recompensavoc")
    player:registerEvent("Recompensa")
    player:registerEvent("Login")
    player:registerEvent("SvargrondArenaKill")
    player:registerEvent("Pythius")
    player:registerEvent("ModalWindowHelper")
    player:registerEvent("AnunciarMortes")
    player:registerEvent("AutoLoot")
    player:registerEvent("Yalahar")
    player:registerEvent("BlessProtect")
    player:registerEvent("Shang")
    player:registerEvent("BeastEnergyElemental")
    player:registerEvent("BeastFireElemental")
    player:registerEvent("DropLoot")

	if player:getStorageValue(50722) <= os.time() then
		player:setStorageValue(50722, os.time() + 10)
		onMovementRemoveProtection(playerId, player:getPosition(), 10)
	end
    return true
end

 

 

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

Ajudei? REP+

gLpfVZ6.png.1639daf943fbd385c7ba030675b6ffc0.png

DotA Event (TFS 1.x) => Clique Aqui

Skype: rike.sexy

  • Respostas 6
  • Visualizações 856
  • Created
  • Última resposta

Top Posters In This Topic

Postado
  • Autor
1 hora atrás, CirocReturn disse:

seu servidor o global? vai nas storages na pasta lib e ve se existe a storage combatProtectionStorage, eu não investiguei se é direto na source ou por script esse sistema mas não achei script dele, teste e veja se funciona assim e se caso não funcione eu procuro onde o sistema funciona e te passo.

 

  Mostrar conteúdo oculto


local function onMovementRemoveProtection(cid, oldPosition, time)
	local player = Player(cid)
	if not player then
		return true
	end

	local playerPosition = player:getPosition()
	if (playerPosition.x ~= oldPosition.x or playerPosition.y ~= oldPosition.y or playerPosition.z ~= oldPosition.z) or player:getTarget() then
		player:setStorageValue(50722, 0)
		return true
	end

	addEvent(onMovementRemoveProtection, 1000, cid, oldPosition, time - 1)
end

function onLogin(cid)
    local player = Player(cid)
    local loginStr = 'Welcome to ' .. configManager.getString(configKeys.SERVER_NAME) .. ' World, if you are not a Premium Account, see the benefits on our website and become a player with more advantages!'
    if player:getLastLoginSaved() <= 0 then
        loginStr = loginStr .. ' Please choose your outfit.'
        player:sendTutorial(1)
    else
        if loginStr ~= '' then
            player:sendTextMessage(MESSAGE_STATUS_DEFAULT, loginStr)
        end
        loginStr = string.format("Your last visit was on %s.", os.date("%a %b %d %X %Y", player:getLastLoginSaved()))
    end
    player:sendTextMessage(MESSAGE_STATUS_DEFAULT, loginStr)
    
    local mensagem_premium = "You have "..player:getPremiumDays().." Premium Days and 20% more experience with full stamina."
    if isPremium(cid) then
        player:sendTextMessage(MESSAGE_EVENT_ADVANCE, mensagem_premium)
    end
    -- Stamina
    nextUseStaminaTime[player.uid] = 0
    
-- Promotion
    local vocation = player:getVocation()
    local promotion = vocation:getPromotion()
    local value = player:getStorageValue(STORAGEVALUE_PROMOTION)
    if not promotion and value ~= 1 then
        player:setStorageValue(STORAGEVALUE_PROMOTION, 1)
    elseif value == 1 then
        player:setVocation(promotion)
    end
local defaultTown = "Intiri" -- default town where player is teleported if his home town is in premium area
local freeTowns = {"Intiri", "Ald'ruhn", "Skyrim", "Ithilien", "Ascal", "Avendale"} -- towns in free account area
if player:getPremiumDays() <= 0 and player:getStorageValue(998899) == 1 then
    local town = player:getTown()
    town = isInArray(freeTowns, town:getName()) and town or Town(defaultTown)
    player:teleportTo(town:getTemplePosition())
    player:sendTextMessage(MESSAGE_EVENT_ADVANCE, "Your Premium Time has expired.")
    player:setStorageValue(998899, 0)
end
    -- Events
    player:registerEvent("PlayerDeath")
    player:registerEvent("Tasks")
    player:registerEvent("TaskLorelei")
    player:registerEvent("TopFrags")
    player:registerEvent("killingInTheNameOfQuestKills")
    player:registerEvent("inquisitionQuestBosses")
    player:registerEvent("inquisitionQuestUngreez")
    player:registerEvent("IconMap")
    player:registerEvent("Vermush")
    player:registerEvent("lookreset")
    player:registerEvent("Recompensavoc")
    player:registerEvent("Recompensa")
    player:registerEvent("Login")
    player:registerEvent("SvargrondArenaKill")
    player:registerEvent("Pythius")
    player:registerEvent("ModalWindowHelper")
    player:registerEvent("AnunciarMortes")
    player:registerEvent("AutoLoot")
    player:registerEvent("Yalahar")
    player:registerEvent("BlessProtect")
    player:registerEvent("Shang")
    player:registerEvent("BeastEnergyElemental")
    player:registerEvent("BeastFireElemental")
    player:registerEvent("DropLoot")

	if player:getStorageValue(50722) <= os.time() then
		player:setStorageValue(50722, os.time() + 10)
		onMovementRemoveProtection(playerId, player:getPosition(), 10)
	end
    return true
end

 

 

 

eu andei procurando aqui e nada, baixei umas datapack que tem aqui atual do fórum e mesclei pra ver, mas nada adiantou, presumo que seja em source e se for não posso compilar 

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

Quem Está Navegando 0

  • Nenhum usuário registrado visualizando esta página.

Estatísticas dos Fóruns

  • Tópicos 96.9k
  • Posts 519.7k

Informação Importante

Confirmação de Termo