Ir para conteúdo
  • Cadastre-se

Suporte Utevo Lux automático somente para Premium


Posts Recomendados

Uso TFS 1.2 downgrade para 8.0 e Otclient V8... Estou tentando botar mais luz padrão do personagem somente para premium account, porém quero que essa luz extra só apareça para a pessoa e não para todos ao redor, por isso estou modificando pelo Otclient. Tentei fazer desse jeito mas não deu certo, nada acontece.. Alguém tem alguma ideia?

 

 

creature.cpp

// local player always have a minimum light in complete darkness
    if (isLocalPlayer()) {
        LocalPlayerPtr player = g_game.getLocalPlayer();
        if (player->isPremium() == true)
        {
            light.intensity = std::max<uint8>(light.intensity, 6);
        }
        else {
            light.intensity = std::max<uint8>(light.intensity, 2);
        }
        if (light.color == 0 || light.color > 215)
            light.color = 215;
    } 

 

 

teste_luz.thumb.png.aaada981bc616fbc41ebf5aa7d0decae.png

Link para o post
Compartilhar em outros sites
// local player always has a minimum light in complete darkness
if (isLocalPlayer()) {
    LocalPlayerPtr player = g_game.getLocalPlayer();
    if (player->isPremium()) {
        light.intensity = std::max<uint8>(light.intensity, 6);
    } else {
        light.intensity = std::max<uint8>(light.intensity, 2);
    }
    if (light.color == 0 || light.color > 215) {
        light.color = 215;
    }

    // Apply the light only to the local player
    g_map.setLight(player->getPosition(), light);
}

testa ai pra ver se funciona ou nao

Link para o post
Compartilhar em outros sites
1 hora atrás, Vortex disse:

// local player always has a minimum light in complete darkness
if (isLocalPlayer()) {
    LocalPlayerPtr player = g_game.getLocalPlayer();
    if (player->isPremium()) {
        light.intensity = std::max<uint8>(light.intensity, 6);
    } else {
        light.intensity = std::max<uint8>(light.intensity, 2);
    }
    if (light.color == 0 || light.color > 215) {
        light.color = 215;
    }

    // Apply the light only to the local player
    g_map.setLight(player->getPosition(), light);
}

testa ai pra ver se funciona ou nao

Mas ai tem a parte de diferenciar de um player free pra premium que não funcionou nesse if (player->isPremium() ) q eu coloquei.. ficou light.intensity, 2 pra todos

Link para o post
Compartilhar em outros sites
if (isLocalPlayer()) {
    LocalPlayerPtr player = g_game.getLocalPlayer();

    if (player->isPremium()) {
        light.intensity = std::max<uint8>(light.intensity, 6);
        if (light.color == 0 || light.color > 215) {
            light.color = 215;
        }
    } else {
        light.intensity = std::max<uint8>(light.intensity, 2);
    }

    g_map.setLight(player->getPosition(), light);
}

creio que vai funcionar!

Editado por Vortex (veja o histórico de edições)
Link para o post
Compartilhar em outros sites
54 minutos atrás, Vortex disse:

if (isLocalPlayer()) {
    LocalPlayerPtr player = g_game.getLocalPlayer();

    if (player->isPremium()) {
        light.intensity = std::max<uint8>(light.intensity, 6);
        if (light.color == 0 || light.color > 215) {
            light.color = 215;
        }
    } else {
        light.intensity = std::max<uint8>(light.intensity, 2);
    }

    g_map.setLight(player->getPosition(), light);
}

creio que vai funcionar!

Essa função setLight n recebe 2 argumentos e ainda o personagem free account ficou sem a luz com intensidade 2, e ainda por cima a luz intensidade 6 pegou no personagem premium mas aparece para outra pessoa na tela também

9 minutos atrás, Jordan422 disse:

Essa função setLight n recebe 2 argumentos e ainda o personagem free account ficou sem a luz com intensidade 2, e ainda por cima a luz intensidade 6 pegou no personagem premium mas aparece para outra pessoa na tela também

Eu tava enganado.. ainda nao funcionou o if  isPremium, então talvez tenho q fazer outra verificação para verificar se tem premium na Acc e não no player

Link para o post
Compartilhar em outros sites

Bom dia amigo, pode ser por lua... é uma alternativa. Pareceu-me que checar o jogador se possui premium vai proporcionar uma iluminação melhor do que a free, assim como feito no CreatureScript. Dá uma olhada

 

local condition = Condition(CONDITION_LIGHT)
condition:setParameter(CONDITION_PARAM_LIGHT_LEVEL, 11)
condition:setParameter(CONDITION_PARAM_LIGHT_COLOR, 215)
condition:setParameter(CONDITION_PARAM_TICKS, -1)

function onLogin(player)
    if player:isPremium() then
        player:addCondition(condition)
    end

    return true
end

Adicione uma linha em xml para login aqui
data/creaturescripts/creaturescripts.xml
<event type="login" name="Premium_Login_Light" script="premium_login_light.lua" />

Coloque o script acima na pasta script, como um .luaarquivo.
data/creaturescripts/scripts/premium_login_light.lua

 

 

Este script apaga a luz por menos de 3 segundos. Caso queira aumentar o tempo, basta alterar esta linha para um valor maior ou definir um tempo permanente.

mude -1 para qualquer valor que você gostaria que a duração fosse, por exemplo 600000

 

espero que funcione!

Editado por Vortex (veja o histórico de edições)
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 braianlomas
      Como faço para corrigir esse problema para meu cliente, eu uso o tfs 0.3.6  
      Quero resolver esse problema que tenho no meu cliente, como e onde posso resolver?  
      Eu uso o tfs 0.3.6, não tenho as fontes do cliente, se você puder me dar eu vou amá-las para sempre  
       

       
    • Por A.Mokk
      Ola pessoal, estou tentando compilar o TFS 1.5 Downgrade para 8.60 atraves do MSVC 2022, ao tentar compilar da o seguinte erro:
       
       
      Fiz o download do MSVC, GitDash, TFS-SDK-3.2, e de varios boosts que tentei, ao fazer o seguinte procedimento no GitDash:
       
      Ao chegar em ./bootstrap-vcpkg.bat o GitDash nao consegue realizar o procedimento corretamente, alguem poderia me ajudar ?

      Tentei de diversas formas mas o mesmo erro sempre persiste, atualmente meu servidor utiliza TFS 0.4, consigo compilar sem nenhum problema no MSVC 2010, porem, as limitações do TFS 0.4 estão me fazendo precisar atualizar, se alguem souber como corrigir esses erros eu agradeço !

      Tutoriais utilizados :
      Compiling on Windows (vcpkg) · otland/forgottenserver Wiki · GitHub
      Compiling on Windows · otland/forgottenserver Wiki · GitHub
      Compilando TFS 1.3 com vídeo-aula - Tutoriais Infraestrutura & Proteção - Tibia King - Tudo sobre Tibia, OTServ e Bots!
      Compilar TFS 1.3 Vcpkg - Tutoriais Infraestrutura & Proteção - Tibia King - Tudo sobre Tibia, OTServ e Bots!
       
      O que acontece no Powershell:
       
    • Por thunmin
      .Qual servidor ou website você utiliza como base? 
      Canary 2.3.6
      Qual o motivo deste tópico? 
      Queria fazer com que os players não pudessem mexer no aleta sio, pois, agora os mesmos estão conseguindo mexer nos itens
      Está surgindo algum erro? Se sim coloque-o aqui. 
       
      Você tem o código disponível? Se tiver publique-o aqui: 
         
      Você tem alguma imagem que possa auxiliar no problema? Se sim, coloque-a aqui. 
       
    • Por thunmin
      .Qual servidor ou website você utiliza como base? 
      canary para o cliente 13.16
      Qual o motivo deste tópico? 
      Não consigo encontrar onde ajusta
      to com o problema no 13.16  o exausted, por exemplo os kinas era pra combar exori, erori gran e exori min, porém não ta indo ta dando exausted o char ta soltando magia ou runa e não consegue usar as potions
      Está surgindo algum erro? Se sim coloque-o aqui. 
       
      Você tem o código disponível? Se tiver publique-o aqui: 
         
      Você tem alguma imagem que possa auxiliar no problema? Se sim, coloque-a aqui. 
       
    • Por Andersontatuador
      Olá galera da TK, me chamo Anderson estou procurando alguém profissional em otservs e site.
      Já tenho um servidor o site e o cliente preciso só de uma pessoal competente, que esteja empenhado a trabalhar,
      não quero nada de graça, pois nessa onda fui mais roubado do quer eu pagar um profissional.
      caso alguém se interesse entrar em contato comigo através do whatsapp
      82 9 9304-9462
       
      Está surgindo algum erro? Se sim coloque-o aqui. 
       
      Você tem o código disponível? Se tiver publique-o aqui: 
         
      Você tem alguma imagem que possa auxiliar no problema? Se sim, coloque-a aqui. 
       
×
×
  • Criar Novo...

Informação Importante

Confirmação de Termo