Ir para conteúdo

[Encerrado] [Pokemon] Dúvidas? - Pda


lucashgas

Posts Recomendados

@eduardobean

talvez eles estejam usando uma function, ou sei la oq eh aquelo, igual o OTclient... ;x la no otclient se tu por por exemplo..

tr("Hello")

o client vai traduzir essa msg para a lingua q tiver ativa no client ^^

 

@PkNfan

eh tinha esquecido desse detalhe ^^ vlw ae

Link para o comentário
Compartilhar em outros sites

@eduardobean

eu soh esqueci de por pra caso o poke esteja pra fora quando for heala ele atualizar a barra.. se o poke tiver pra dentro e ele heala e depois por o poke pra fora a barra vai vir zerada certinhu... ;x

e ja tem isso..

function cdBar.cleanEvents(button)

para zerar a barra.... ^^

 

@off

ae galera o edubart atualizo o orClient la e pos scrollBar na janela la q nos usa pra pokedex \o/

vao em modules/game_textwindow/

abram o arquivo textwindow.lua, apaguem oq tem dentro e colem isso..

 

function init()

g_ui.importStyle('textwindow.otui')

 

connect(g_game, { onEditText = onGameEditText,

onEditList = onGameEditList,

onGameEnd = destroy })

end

 

function terminate()

disconnect(g_game, { onEditText = onGameEditText,

onEditList = onGameEditList,

onGameEnd = destroy })

 

destroy()

end

 

function destroy()

if textWindow then

textWindow:destroy()

textWindow = nil

end

end

 

function getCursorPosByNewLine(str, count)

local i = 0

for n = 1, count-1 do

local tPos = string.find(str, '\n', i)

if tPos then

i = tPos+1

end

end

 

return i - 1

end

 

function onGameEditText(id, itemId, maxLength, text, writter, time)

if textWindow then return end

textWindow = g_ui.createWidget('TextWindow', rootWidget)

 

local writeable = (maxLength ~= #text) and maxLength > 0

local textItem = textWindow:getChildById('textItem')

local description = textWindow:getChildById('description')

local textEdit = textWindow:getChildById('text')

local okButton = textWindow:getChildById('okButton')

local cancelButton = textWindow:getChildById('cancelButton')

 

local textScroll = textWindow:getChildById('textScroll')

 

textItem:setItemId(itemId)

textEdit:setMaxLength(maxLength)

textEdit:setText(text)

textEdit:setEnabled(writeable)

 

local desc = ''

if #writter > 0 then

desc = tr('You read the following, written by \n%s\n', writter)

if #time > 0 then

desc = desc .. tr('on %s.\n', time)

end

elseif #time > 0 then

desc = tr('You read the following, written on \n%s.\n', time)

end

 

if #text == 0 and not writeable then

desc = tr("It is empty.")

elseif writeable then

desc = desc .. tr('You can enter new text.')

end

 

local lines = #{string.find(desc, '\n')}

if lines < 2 then desc = desc .. '\n' end

 

description:setText(desc)

 

if not writeable then

textWindow:setText(tr('Show Text'))

--textEdit:wrapText()

cancelButton:hide()

cancelButton:setWidth(0)

okButton:setMarginRight(0)

else

textWindow:setText(tr('Edit Text'))

end

 

local doneFunc = function()

if writeable then

g_game.editText(id, textEdit:getText())

end

destroy()

end

 

local _, newLineCount = string.gsub(text, '\n', '\n')

if(newLineCount >= 9) then

textScroll:setMaximum(newLineCount-9)

end

 

local _prev, _next, _current = 0, 11, 0

local onValueChange = function()

local diff = textScroll:getValue() - _current

 

if(diff > 0) then

textEdit:setCursorPos(getCursorPosByNewLine(text, _next+(diff-1)))

else

textEdit:setCursorPos(getCursorPosByNewLine(text, _prev+(diff+1)))

end

 

_current = textScroll:getValue()

_next = _next + diff

_prev = _prev + diff

end

 

textScroll.onValueChange = onValueChange

g_keyboard.bindKeyPress("Up", function() textScroll:setValue(textScroll:getValue()-1) end, textWindow, 400)

g_keyboard.bindKeyPress("Down", function() textScroll:setValue(textScroll:getValue()+1) end, textWindow, 400)

 

if(not writeable) then

textEdit:setCursorPos(0)

else

textScroll:setValue(textScroll:getMaximum())

textEdit:setCursorPos(text:len())

end

 

okButton.onClick = doneFunc

cancelButton.onClick = destroy

--textWindow.onEnter = doneFunc -- this should be '\n'

textWindow.onEscape = destroy

end

 

function onGameEditList(id, doorId, text)

if textWindow then return end

textWindow = g_ui.createWidget('TextWindow', rootWidget)

 

local textEdit = textWindow:getChildById('text')

local description = textWindow:getChildById('description')

local okButton = textWindow:getChildById('okButton')

local cancelButton = textWindow:getChildById('cancelButton')

 

textEdit:setMaxLength(8192)

textEdit:setText(text)

textEdit:setEnabled(true)

description:setText(tr('Enter one name per line.'))

textWindow:setText(tr('Edit List'))

 

doneFunc = function()

g_game.editList(id, doorId, textEdit:getText())

destroy()

end

 

okButton.onClick = doneFunc

textWindow.onEnter = doneFunc

textWindow.onEscape = destroy

end

 

 

function onGameEditList(id, doorId, text)

if textWindow then return end

textWindow = g_ui.createWidget('TextWindow', rootWidget)

 

local textEdit = textWindow:getChildById('text')

local description = textWindow:getChildById('description')

local okButton = textWindow:getChildById('okButton')

local cancelButton = textWindow:getChildById('cancelButton')

 

textEdit:setMaxLength(8192)

textEdit:setText(text)

textEdit:setEnabled(true)

description:setText(tr('Enter one name per line.'))

textWindow:setText(tr('Edit List'))

 

doneFunc = function()

g_game.editList(id, doorId, textEdit:getText())

destroy()

end

 

okButton.onClick = doneFunc

textWindow.onEnter = doneFunc

textWindow.onEscape = destroy

end

 

 

depois abram o arquivo textwindow.otui, apaguem oq tem dentro e colem isso..

 

TextScrollbar < VerticalScrollBar

 

TextWindow < MainWindow

id: textWindow

size: 280 280

@onEscape: self:destroy()

 

UIItem

id: textItem

virtual: true

size: 32 32

anchors.top: parent.top

anchors.left: parent.left

 

Label

id: description

anchors.top: parent.top

anchors.left: textItem.right

anchors.right: parent.right

anchors.bottom: text.top

text-align: left

margin-left: 8

margin-bottom: 10

 

MultilineTextEdit

id: text

anchors.fill: parent

anchors.top: textItem.bottom

margin-right: 10

margin-top: 30

margin-bottom: 30

 

TextScrollbar

id: textScroll

anchors.left: prev.right

anchors.top: prev.top

anchors.bottom: prev.bottom

minimum: 0

maximum: 0

step: 1

value: 0

pixels-scroll: true

 

Button

id: cancelButton

!text: tr('Cancel')

anchors.top: next.top

anchors.right: next.left

margin-right: 8

width: 60

@onClick: self:getParent():destroy()

 

Button

id: okButton

!text: tr('Ok')

anchors.top: text.bottom

anchors.right: text.right

margin-top: 10

width: 60

 

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

@Slicer

 

Vi que um dos meus sistemas está em sua versão. Vlw ai cara...

 

@Edit

 

To fazendo o WordTrade e Torneio, quando eu terminar eu posto aqui pra vocês...

 

@Minha opnião

Esse ot cliente não me atraiu muito. Ele usa a linguagem JAVA??

Se for java é meio limitado pra fazer as funções que tem na PXG. Se alguem que saiba mexer com C/C++ quiser me ajudar podemos fazer um projeto de igualar esse PDA atual com o PXG sem tirar nenhum sistema deles. Se eles conseguiram porque nós não??

Link para o comentário
Compartilhar em outros sites

@SmiX

^^

o otclient, aparentemente, eh feito em c++ sim, e chama modulos em .lua... ;x ta dando pra fazer bastante coisa com ele hehe

o torneio eh foda, muitas 'possiveis variaveis' para levar em conta hehe... se vc conseguir vai ser um grande passo ^^ good luck o/

Link para o comentário
Compartilhar em outros sites

Gente alguem pode me ajudar? tipo o meu Ot inteiro as interfaces são de tibia, enves de mostrar as pokebolas mostra a MP, e enves de mostrar o sekissu dos pokemons mostra Skulls, isso começou a acontecer a pouco tempo, nao sei o erro, mas aconteceu depois que mechi em meu client coloquei sprites sinnoh(algumas apenas) ai vai ss:

 

EDIT -- até mesmo na ball fica uma bota

 

 

semttulopah.png

 

Uploaded with ImageShack.us

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

Valeu slicer deu certo agora, mas eu queria mudar a imagem de fundo do client, eu botei com o pic editor e diz wrong image size q tem q ser 640x480 e eu botei uma bem certinho esse tamanho e da isso igual de to rep+ se conseguir me ajudar ta ae o link da img http://imageshack.us/photo/my-images/341/27645410.png/

Link para o comentário
Compartilhar em outros sites

Visitante
Este tópico está impedido de receber novos posts.
×
×
  • Criar Novo...