Ir para conteúdo
  • 0

Como removo as skills que não vou utilizar?


001rafa

Pergunta

Fala galera blz?

Gostaria de saber como faço para remover as skills bars e  skills lvls que não vou utilizar em meu servidor no otclient

Por exemplo: Fishing, distance, first, essas coisas...

Como faço para remover ou esconder estes nomes e levels :D

Pois quando tento remover ou tento utilizar alguma função tipo phantom ou visible; false

ele me retorna este erro:

ERROR: Unable to load module 'game_skills': LUA ERROR:/game_skills/skills.lua:102: attempt to index local 'skill' (a nil value)stack traceback:    [C]: ?    /game_skills/skills.lua:102: in function 'setSkillValue'    /game_skills/skills.lua:377: in function 'onSkillChange'    /game_skills/skills.lua:208: in function 'refresh'    /game_skills/skills.lua:34: in function 'init'    /game_skills/skills.otmod:8:[@onLoad]:1: in main chunk    [C]: in function 'reloadModules'    /client_modulemanager/modulemanager.lua:149: in function 'reloadAllModules'    ...ient_modulemanager/modulemanager.otui:75: [@onClick]:2: in function <...ient_modulemanager/modulemanager.otui:75: [@onClick]:1>

E no arquivo Skills.lua linha 102 tenho este código:

function setSkillValue(id, value)  local skill = skillsWindow:recursiveGetChildById(id)  local widget = skill:getChildById('value')  widget:setText(value)end

Quem puder me ajudar, estarei muito agradecido!

Link para o comentário
Compartilhar em outros sites

11 respostass a esta questão

Posts Recomendados

  • 1

Ignora as que não for usar:

local ignoredSkills = {3,6}-- [...]function onSkillChange(localPlayer, id, level, percent)  if table.contains(ignoredSkills, id) then return end    setSkillValue('skillId' .. id, level)  setSkillPercent('skillId' .. id, percent, tr('You have %s percent to go', 100 - percent))  onBaseSkillChange(localPlayer, id, localPlayer:getSkillBaseLevel(id))endfunction onBaseSkillChange(localPlayer, id, baseLevel)  if table.contains(ignoredSkills, id) then return end  setSkillBase('skillId'..id, localPlayer:getSkillLevel(id), baseLevel)end

 

Link para o comentário
Compartilhar em outros sites

  • 1
3 hours ago, 001rafa said:

Vlwzão mano, aproveitando o topico poderia me dizer como faço para poder acrescentar textos ? no modulo de skills ?

por exemplo um texto com alinhamento centralizado... pq tentei fazer igual em css só q ele deu mó bug ;/:

 

O otui apesar da similaridade com o css, ele trabalha com um metodo diferente de posicionamento, ele usa de anchoramentos. Para voce posicionar um elemento no painel, voce precisa de pelo menos duas orientações anchors.top/anchors.bottom e anchors.left/anchors.right

E para acertos mais precisos, tu usa o margin, se tu definiu orientação anchors.top tu deve usar margin-top e assim em diante

O otui(otml em geral) usa o conceito de parent através da identação(espaçamento), a cada dois espaços(space) é considerado um novo nivel de parentesco ou quando não for uma classe ele vai ter um attribute do parent.

Eu sei que parece muita coisa, mas não é tão complexo, é so tu ler o que eu escrevi e ler alguns codes do proprio otc que vai entender.

Além disso, ainda falando de posicionamento, existe a referencia simbolica no ancoramente, que são basicamente parent, prev, next. Diferente do css, a posição em que eles estao escritos é muito importante, prev é o elemento anterior que estiver no mesmo nivel hierarquico, next é o posterior, e parent é o que está acima. E pode-se ainda referenciar pelo id do elemento.

Alguns exemplos praticos:

 

MiniWindow // primeiro nivel hierarquico  id: newWindow  MiniWindowContents //segundo nivel    UIWidget // terceiro nivel      id: otoWidget      size: 11 11      !text: 'Algo'      background-color: #505050      anchors.top: parent.top // ancora o topo do widget atual no top do parent (MiniWindow)      anchors.right: parent.right      margin-right: 36      margin-top: 7    Button // terceiro nivel, irmao de otoWidget      !text: 'Botao'      width: 80      anchors.left: otoWidget.right      anchors.bottom: prev.bottom      margin-bottom: 10      margin-left: 10

 

E lembre, sempre com o espaçamento de dois spaces

 

As classes que me refiro são por exemplo 'Button', UIWidget e etc, que alem disso ainda tem um parentesco de classes igual o c++, tu pode ver melhor eles em styles la na pasta data, a maioria deles estão declarados la.

Tu pode ainda criar classes Attribuindo com o seguinte sinal '<', porém isso deve ser feito previamente, antes do Widget pai(MiniWindow) no caso.

Eu acho que exagerei nas informações, talvez tenha sido muito pra pouco tempo, mas qualquer duvida pode perguntar.

Link para o comentário
Compartilhar em outros sites

  • 0

Vá em modules/game_skills/skills.otui

 

 

E procure pelos skills que não irá usar exemplo

 

 

     SkillButton	      id: skillId6	      SkillNameLabel	        !text: tr('Fishing')	      SkillValueLabel	      SkillPercentPanel 

 

 

 

Ai então basta adicionar mais uma pequena tag para que a skill fique invisível que é:

 

 

 visible: false 

 

 

Ficando assim:

 

 

     SkillButton
      id: skillId6
      SkillNameLabel
        !text: tr('Fishing')


      SkillValueLabel
      SkillPercentPanel

Link para o comentário
Compartilhar em outros sites

  • 0
1 minuto atrás, Lordbaxx disse:

Vá em modules/game_skills/skills.otui

 

 

E procure pelos skills que não irá usar exemplo

 

 

     SkillButton	      id: skillId6	      SkillNameLabel	        !text: tr('Fishing')	      SkillValueLabel	      SkillPercentPanel 

 

 

 

Ai então basta adicionar mais uma pequena tag para que a skill fique invisível que é:

 

 

 visible: false 

 

 

Ficando assim:

 

 

     SkillButton	      id: skillId6	      SkillNameLabel	        !text: tr('Fishing')

 

      SkillValueLabel

      SkillPercentPanel

Já tentei fazer isto amigo, só que ele da um erro que não consegue ler a skill... Da o mesmo erro que mostra lá no topo da postagem

Link para o comentário
Compartilhar em outros sites

  • 0

O erro ocorre pq você utiliza a tecla "space bar" ou "barra de espaço" quando pula a linha, recomendo que copie uma linha anterior e só mude o nome ou utilize tab para a formatação do código. Mas não dê espaço dentro do código.

Editado por Lordbaxx
Link para o comentário
Compartilhar em outros sites

  • 0
3 minutos atrás, Lordbaxx disse:

O erro ocorre pq você utiliza a tecla "space bar" ou "barra de espaço" quando pula a linha, recomendo que copie uma linha anterior e só mude o nome ou utilize tab para a formatação do código. Mas não dê espaço dentro do código.

Fiz o teste e dá o mesmo erro, axo que não seja por causa de identação, até por que o erro que da é este:

 

attempt to index local 'skill' (a nil value)stack traceback:

Não de identation...

:thinking: Isto está me deixando com a pulga atrás da orelha :thinking:

Link para o comentário
Compartilhar em outros sites

  • 0

Vlwzão mano, aproveitando o topico poderia me dizer como faço para poder acrescentar textos ? no modulo de skills ?

por exemplo um texto com alinhamento centralizado... pq tentei fazer igual em css só q ele deu mó bug ;/:

Link para o comentário
Compartilhar em outros sites

  • 0
12 horas atrás, dalvorsn disse:

 

O otui apesar da similaridade com o css, ele trabalha com um metodo diferente de posicionamento, ele usa de anchoramentos. Para voce posicionar um elemento no painel, voce precisa de pelo menos duas orientações anchors.top/anchors.bottom e anchors.left/anchors.right

E para acertos mais precisos, tu usa o margin, se tu definiu orientação anchors.top tu deve usar margin-top e assim em diante

O otui(otml em geral) usa o conceito de parent através da identação(espaçamento), a cada dois espaços(space) é considerado um novo nivel de parentesco ou quando não for uma classe ele vai ter um attribute do parent.

Eu sei que parece muita coisa, mas não é tão complexo, é so tu ler o que eu escrevi e ler alguns codes do proprio otc que vai entender.

Além disso, ainda falando de posicionamento, existe a referencia simbolica no ancoramente, que são basicamente parent, prev, next. Diferente do css, a posição em que eles estao escritos é muito importante, prev é o elemento anterior que estiver no mesmo nivel hierarquico, next é o posterior, e parent é o que está acima. E pode-se ainda referenciar pelo id do elemento.

Alguns exemplos praticos:

 

MiniWindow // primeiro nivel hierarquico  id: newWindow  MiniWindowContents //segundo nivel    UIWidget // terceiro nivel      id: otoWidget      size: 11 11      !text: 'Algo'      background-color: #505050      anchors.top: parent.top // ancora o topo do widget atual no top do parent (MiniWindow)      anchors.right: parent.right      margin-right: 36      margin-top: 7    Button // terceiro nivel, irmao de otoWidget      !text: 'Botao'      width: 80      anchors.left: otoWidget.right      anchors.bottom: prev.bottom      margin-bottom: 10      margin-left: 10

 

E lembre, sempre com o espaçamento de dois spaces

 

As classes que me refiro são por exemplo 'Button', UIWidget e etc, que alem disso ainda tem um parentesco de classes igual o c++, tu pode ver melhor eles em styles la na pasta data, a maioria deles estão declarados la.

Tu pode ainda criar classes Attribuindo com o seguinte sinal '<', porém isso deve ser feito previamente, antes do Widget pai(MiniWindow) no caso.

Eu acho que exagerei nas informações, talvez tenha sido muito pra pouco tempo, mas qualquer duvida pode perguntar.

Eu entendi perfeitamente hehe...

Obrigadão!

No caso aki eu coloquei um margin left e fui colocando de acordo com q eu queria... acrecentou informações a mais que eu n sabia... muito obrigado =): reputado again!

Uma dica se puder depois faça um tutorzim pra galera de como mexer com modulo, criar mods e tal... vai ajudar mta gente inclusive eu =):

Obrigado pelo help

Podem dar close no topico

Grato!

Link para o comentário
Compartilhar em outros sites

  • -1
6 minutos atrás, Lordbaxx disse:

O erro ocorre pq você utiliza a tecla "space bar" ou "barra de espaço" quando pula a linha, recomendo que copie uma linha anterior e só mude o nome ou utilize tab para a formatação do código. Mas não dê espaço dentro do código.

 

Link para o comentário
Compartilhar em outros sites

  • Quem Está Navegando   0 membros estão online

    • Nenhum usuário registrado visualizando esta página.
×
×
  • Criar Novo...