Ola amigos, gostaria de mutar a cor do nick dos npcs no otcliente, mas não faço a minima ideia em qual arquivo esta essa config, alguem poderia me dar uma luz?
[Encerrado] [OTcliente]Como mudar a cor do nome dos NPCs

Créditos: BananaFight.
Creature.cpp procure por:
if(healthPercent > 92)
Embaixo você muda para:
if (m_name == "Banana Fight"){ m_informationColor = Color(0xB2, 0x22, 0x22); }else{ m_informationColor = Color(0x00, 0xBC, 0x00); }
Adicionando Nomes:
Isto representa o nome do monstro/player que terá a cor do nome alterada. (Sim, vai ter que cadastrar nome por nome nesse sistema.)
if (m_name == "Banana Fight")
Para adicionar mais nomes é só seguindo a logica:
if (m_name == "Banana Fight"){ m_informationColor = Color(0xB2, 0x22, 0x22); }else if (m_name == "Demon"){ m_informationColor = Color(0xFF, 0xFF, 0xFF); }else{ m_informationColor = Color(0x00, 0xBC, 0x00); }
E para colorir o resto das porcentagens a mesma coisa:
else if(healthPercent > 60) if (m_name == "Banana Fight"){ m_informationColor = Color(0xB2, 0x22, 0x22); }else{ m_informationColor = Color(0x50, 0xA1, 0x50);}
Só recomendo que não mecha no ultimo, pois se não souber mexer pode dar erro.
else m_informationColor = Color(0x85, 0x0C, 0x0C);
Adicionando Cores:
Isto representa a porcentagem de hp que o player ou monstro vai estar
m_informationColor = Color(0x00, 0xBC, 0x00);
Para mudar a cor você edita aqui :
Color(0x00, 0xBC, 0x00)
As cores funcionam da seguinte maneira (RGB), tabela: http://shibolete.tripod.com/RGB.html
Você tem que pegar a cor hexadecimal e dividir em 3 partes (#FFFF00 > FF FF 00), ai é só você preencher, Color(0xFF, 0xFF, 0x00) com cada letra/numero.
Exemplo Final:
void Creature::setHealthPercent(uint8 healthPercent){ if(healthPercent > 92) if (m_name == "Banana Fight"){ m_informationColor = Color(0xB2, 0x22, 0x22); }else{ m_informationColor = Color(0x00, 0xBC, 0x00); } else if(healthPercent > 60) if (m_name == "Banana Fight"){ m_informationColor = Color(0xB2, 0x22, 0x22); }else{ m_informationColor = Color(0x50, 0xA1, 0x50); } else if(healthPercent > 30) if (m_name == "Banana Fight"){ m_informationColor = Color(0xB2, 0x22, 0x22); }else{ m_informationColor = Color(0xA1, 0xA1, 0x00); } else if(healthPercent > 8) if (m_name == "Banana Fight"){ m_informationColor = Color(0xB2, 0x22, 0x22); }else{ m_informationColor = Color(0xBF, 0x0A, 0x0A); } else if(healthPercent > 3) if (m_name == "Banana Fight"){ m_informationColor = Color(0xB2, 0x22, 0x22); }else{ m_informationColor = Color(0x91, 0x0F, 0x0F); } else m_informationColor = Color(0x85, 0x0C, 0x0C); m_healthPercent = healthPercent; callLuaField("onHealthPercentChange", healthPercent); if(healthPercent <= 0) onDeath();}
"O fracasso é a oportunidade de se começar de novo inteligentemente"
vem ca mais isto é nas sources? Eu lembro de uma vez ter modificado em algum arquivo do otc sem ser nas sources.
Fã page:
29 minutos atrás, Taiger disse:vem ca mais isto é nas sources? Eu lembro de uma vez ter modificado em algum arquivo do otc sem ser nas sources.
Sim, essas modificações são feitas pela source.
Não é do meu conhecimento a existência de algum sistema externo que possibilite a modificação como você citou... mas acredito que seja possível cria-lo.
"O fracasso é a oportunidade de se começar de novo inteligentemente"
33 minutos atrás, Stigal disse:Créditos: BananaFight.
Creature.cpp procure por:
if(healthPercent > 92)
Embaixo você muda para:
if (m_name == "Banana Fight"){ m_informationColor = Color(0xB2, 0x22, 0x22); }else{ m_informationColor = Color(0x00, 0xBC, 0x00); }
Adicionando Nomes:
Isto representa o nome do monstro/player que terá a cor do nome alterada. (Sim, vai ter que cadastrar nome por nome nesse sistema.)
if (m_name == "Banana Fight")
Para adicionar mais nomes é só seguindo a logica:
if (m_name == "Banana Fight"){ m_informationColor = Color(0xB2, 0x22, 0x22); }else if (m_name == "Demon"){ m_informationColor = Color(0xFF, 0xFF, 0xFF); }else{ m_informationColor = Color(0x00, 0xBC, 0x00); }
E para colorir o resto das porcentagens a mesma coisa:
else if(healthPercent > 60) if (m_name == "Banana Fight"){ m_informationColor = Color(0xB2, 0x22, 0x22); }else{ m_informationColor = Color(0x50, 0xA1, 0x50);}
Só recomendo que não mecha no ultimo, pois se não souber mexer pode dar erro.
else m_informationColor = Color(0x85, 0x0C, 0x0C);
Adicionando Cores:
Isto representa a porcentagem de hp que o player ou monstro vai estar
m_informationColor = Color(0x00, 0xBC, 0x00);
Para mudar a cor você edita aqui :
Color(0x00, 0xBC, 0x00)
As cores funcionam da seguinte maneira (RGB), tabela: http://shibolete.tripod.com/RGB.html
Você tem que pegar a cor hexadecimal e dividir em 3 partes (#FFFF00 > FF FF 00), ai é só você preencher, Color(0xFF, 0xFF, 0x00) com cada letra/numero.
Exemplo Final:
void Creature::setHealthPercent(uint8 healthPercent){ if(healthPercent > 92) if (m_name == "Banana Fight"){ m_informationColor = Color(0xB2, 0x22, 0x22); }else{ m_informationColor = Color(0x00, 0xBC, 0x00); } else if(healthPercent > 60) if (m_name == "Banana Fight"){ m_informationColor = Color(0xB2, 0x22, 0x22); }else{ m_informationColor = Color(0x50, 0xA1, 0x50); } else if(healthPercent > 30) if (m_name == "Banana Fight"){ m_informationColor = Color(0xB2, 0x22, 0x22); }else{ m_informationColor = Color(0xA1, 0xA1, 0x00); } else if(healthPercent > 8) if (m_name == "Banana Fight"){ m_informationColor = Color(0xB2, 0x22, 0x22); }else{ m_informationColor = Color(0xBF, 0x0A, 0x0A); } else if(healthPercent > 3) if (m_name == "Banana Fight"){ m_informationColor = Color(0xB2, 0x22, 0x22); }else{ m_informationColor = Color(0x91, 0x0F, 0x0F); } else m_informationColor = Color(0x85, 0x0C, 0x0C); m_healthPercent = healthPercent; callLuaField("onHealthPercentChange", healthPercent); if(healthPercent <= 0) onDeath();}
na verdade, isso é mais para monstros/players. Sendo assim, teria de colocar npc por npc, e mesmo assim fazer umas modificações rs
Mas, existe uma maneira de deixar todos os npcs em azul.
vai em:
\src\client\game.cpp
procura por:
enableFeature(Otc::GameAccountNames);
e adiciona em baixo:
enableFeature(Otc::GameBlueNpcNameColor);
Só compilar e fim, ou você pode fazer por lua..
Em modules/game_things em things.lua, depois de:
if version >= 840 then
só adiciona:
g_game.enableFeature(GameBlueNpcNameColor)
Fim.
Não respondo PMs solicitando suporte. Já existem seções no fórum para isto.
DICA
Utilize botão @UP, no início de seu tópico, para atualizar o destaque de seu tópico em "Tópicos Recentes" na index, fará com que mais pessoas o vejam.
13 minutos atrás, Deadpool disse:na verdade, isso é mais para monstros/players. Sendo assim, teria de colocar npc por npc, e mesmo assim fazer umas modificações rs
Mas, existe uma maneira de deixar todos os npcs em azul.
vai em:
\src\client\game.cpp
procura por:
enableFeature(Otc::GameAccountNames);
e adiciona em baixo:
enableFeature(Otc::GameBlueNpcNameColor);
Só compilar e fim, ou você pode fazer por lua..
Em modules/game_things em things.lua, depois de:
if version >= 840 then
só adiciona:
g_game.enableFeature(GameBlueNpcNameColor)
Fim.
Se eu quiser colocar de outra cor, pode ? tipo amarelo
Agora, Henrique Gomes disse:Se eu quiser colocar de outra cor, pode ? tipo amarelo
Se você quiser fazer isso, vai ter de fazer o que o @Stigal citou la em cima. E colocar nome de npc por npc.
Não respondo PMs solicitando suporte. Já existem seções no fórum para isto.
DICA
Utilize botão @UP, no início de seu tópico, para atualizar o destaque de seu tópico em "Tópicos Recentes" na index, fará com que mais pessoas o vejam.
Agora, Deadpool disse:Se você quiser fazer isso, vai ter de fazer o que o @Stigal citou la em cima. E colocar nome de npc por npc.
Pensando bem, Azul é uma cor muita bonita...
Tipow, o meu cliente esta azul o nome dos npcs, queria deixar original verde.
Fã page:
1 hora atrás, Taiger disse:Tipow, o meu cliente esta azul o nome dos npcs, queria deixar original verde.
Desfaz oque o deadpool falou
-.-
Eu fiz e não funcionou por isso perguntei.
Fã page:
Agora, Taiger disse:-.-
Eu fiz e não funcionou por isso perguntei.
Tendeu
Entao po, me manda seu things.lua, pra eu olhar, as vezes mudam. Ja viu a sourcce?
Não respondo PMs solicitando suporte. Já existem seções no fórum para isto.
DICA
Utilize botão @UP, no início de seu tópico, para atualizar o destaque de seu tópico em "Tópicos Recentes" na index, fará com que mais pessoas o vejam.
filename = nilloaded = falsefunction init() connect(g_game, { onProtocolVersionChange = load })endfunction terminate() disconnect(g_game, { onProtocolVersionChange = load })endfunction setFileName(name) filename = nameendfunction isLoaded() return loadedendfunction load() local version = g_game.getProtocolVersion() g_game.enableFeature(GameSpritesU32) local datPath, sprPath if filename then datPath = resolvepath('/things/' .. filename) sprPath = resolvepath('/things/' .. filename) else datPath = resolvepath('/things/' .. version .. '/Tibia') sprPath = resolvepath('/things/' .. version .. '/Tibia') end local errorMessage = '' if not g_things.loadDat(datPath) then errorMessage = errorMessage .. tr("Unable to load dat file, please place a valid dat in '%s'", datPath) .. '\n' end if not g_sprites.loadSpr(sprPath) then errorMessage = errorMessage .. tr("Unable to load spr file, please place a valid spr in '%s'", sprPath) end loaded = (errorMessage:len() == 0) if errorMessage:len() > 0 then local messageBox = displayErrorBox(tr('Error'), errorMessage) addEvent(function() messageBox:raise() messageBox:focus() end) disconnect(g_game, { onProtocolVersionChange = load }) g_game.setProtocolVersion(0) connect(g_game, { onProtocolVersionChange = load }) end g_game.enableFeature(GameBlueNpcNameColor)end
Fã page:
9 minutos atrás, Taiger disse:filename = nilloaded = falsefunction init() connect(g_game, { onProtocolVersionChange = load })endfunction terminate() disconnect(g_game, { onProtocolVersionChange = load })endfunction setFileName(name) filename = nameendfunction isLoaded() return loadedendfunction load() local version = g_game.getProtocolVersion() g_game.enableFeature(GameSpritesU32) local datPath, sprPath if filename then datPath = resolvepath('/things/' .. filename) sprPath = resolvepath('/things/' .. filename) else datPath = resolvepath('/things/' .. version .. '/Tibia') sprPath = resolvepath('/things/' .. version .. '/Tibia') end local errorMessage = '' if not g_things.loadDat(datPath) then errorMessage = errorMessage .. tr("Unable to load dat file, please place a valid dat in '%s'", datPath) .. '\n' end if not g_sprites.loadSpr(sprPath) then errorMessage = errorMessage .. tr("Unable to load spr file, please place a valid spr in '%s'", sprPath) end loaded = (errorMessage:len() == 0) if errorMessage:len() > 0 then local messageBox = displayErrorBox(tr('Error'), errorMessage) addEvent(function() messageBox:raise() messageBox:focus() end) disconnect(g_game, { onProtocolVersionChange = load }) g_game.setProtocolVersion(0) connect(g_game, { onProtocolVersionChange = load }) end g_game.enableFeature(GameBlueNpcNameColor)end
Isso >>
g_game.enableFeature(GameBlueNpcNameColor)
Ta no lugar errado no arquivo é logo abaixo dá função load:
function load() local version = g_game.getProtocolVersion() g_game.enableFeature(GameSpritesU32) //-coloque aqui-//
Espero ter ajudado.