001rafa
-
Total de itens
49 -
Registro em
-
Última visita
Histórico de Reputação
-
001rafa deu reputação a dalvorsn em Como faz para lockar/travar o modulo ?
Falei merda, sorry
Tu deve usar o attribute draggable no otui
basta um:
draggable: false
-
001rafa deu reputação a dalvorsn em Como faz para lockar/travar o modulo ?
Dentro da classe UIWidget existem dois metodos para essa função:
widget:lock() e widget:unlock()
Voce pode usá-los dentro da função init, ou qualquer outra que tenha acesso a variavel que salva o widget principal do modulo. Infelizmente não há(ou pelo menos eu não encontrei nada relativo a isso nas sources do otclient) como fazer isso pelo otui.
Exemplo:
Travar o entergame
-
001rafa deu reputação a dalvorsn em Como removo as skills que não vou utilizar?
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.
-
001rafa deu reputação a dalvorsn em Como removo as skills que não vou utilizar?
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
-
001rafa deu reputação a dalvorsn em OTC Erro ERROR: invalid skill at
O servidor ta enviando mais skills que as existentes no otc.
Qual distro usada? O usual é o byte 0xA1 para as skills, a função no tfs 0.37 é assim:
#protocolgame.cpp
void ProtocolGameAddPlayerSkills(NetworkMessage_ptr msg){ msg->put<char>(0xA1); for(uint8_t i = 0; i <= SKILL_LAST; ++i) { msg->put<char>(player->getSkill((skills_t)i, SKILL_LEVEL)); msg->put<char>(player->getSkill((skills_t)i, SKILL_PERCENT)); }} Você precisa checar o enum das skills, para ver se existem que o numero normal. O enum dessas skills fica em const.h.
Vera algo similar a isso:
#const.h
enum skills_t{ SKILL_NONE = -1, SKILL_FIRST = 0, SKILL_FIST = SKILL_FIRST, SKILL_CLUB, SKILL_SWORD, SKILL_AXE, SKILL_DIST, SKILL_SHIELD, SKILL_FISH, SKILL__MAGLEVEL, SKILL__LEVEL, SKILL__EXPERIENCE, SKILL_LAST = SKILL_FISH, SKILL__LAST = SKILL__EXPERIENCE}; Poste esses dois trechos do seu codigo fonte para que possamos analisar o real problema.
-
Quem Está Navegando 0 membros estão online
- Nenhum usuário registrado visualizando esta página.