OT
pedido

Problema Com "doshowtextdialog()"!

Por othereality, 10 de jul. de 2012 em Scripts

9
1.2k
otherealityO
10 de julho de 2012 às 23:21

Galera eu queria fazer uma tabelinha parecida com a do Spellbook, o que eu quero escrever é:

 

 

Cooker

 

PODE COLHER

 

bla bla

bla

bla bla bla

 

PODE FAZER

 

bla bla - bla bla

bla - bla bla bla

bla bla bla - bla bla

 

Em vermelho o titulo, que é o nome da profissão.

Em azul os items que podem ser coletados, em forma de lista um em baixo do outro.

Em verde os items que podem ser feitos, também uma lista, só que como comando do lado.

 

Espero ajuda de vocês, obrigado! =D

EskyloE
11 de julho de 2012 às 00:17

Básico dá pra fazer assim

 

local itemid = 2175
local text = [[Cooker
PODE COLHER
bla bla
bla
bla bla bla
PODE FAZER
bla bla - bla bla
bla - bla bla bla
bla bla bla - bla bla
]]
function onSay(cid)
doShowTextDialog(cid, itemid, text)
return true
end

 

ou vc qr q o player só veja o q ele pode fazer(q ele tem lv pra fazer)?

otherealityO
11 de julho de 2012 às 00:48

Ahh pode cre.. eu tinha tentando igual mas com aspas.. dai não pode ir pra outra linha :/

Vai aparecer de acordo com o level, mas isso eu consigo fazer aqui :D

obrigado pela ajuda.

 

EDIT:

 

só pra confirmar, funcionando direitinho.

Editado Julho 11 por OtheReality

EskyloE
12 de julho de 2012 às 17:27

tipo pra vc fazer pular linha com aspas é só colocar \n ex:

 

 

"linha1\nlinha2"

resultado:

 

linha1
linha2

Editado Julho 12 por Eskylo

otherealityO
12 de julho de 2012 às 23:56

Ahh pode cre.. eu tentei isso mas eu escrevi /n pq sou mto burro :D

aehauehaue

ErimythE
17 de julho de 2012 às 14:41

Duvida Sanada.

Movido.

otherealityO
20 de julho de 2012 às 14:49

Eskylo!

preciso de mais um ajudinha...

 

Eu queria fazer uma coisa =- assim:

 

 

local cooklv = getPlayerStorageValue(cid, 10100)

local text = [[
 Cooker
Seu level é 'cooklv'

PODE COLHER
bla bla
bla
bla bla bla

PODE FAZER
bla bla - bla bla
bla - bla bla bla
bla bla bla - bla bla
]]

function onSay(cid)
doShowTextDialog(cid, itemid, text)
return true
end

 

Tem como? ou eu tenho que fazer pela função e ai eu ponho um text2 caso a pessoa tenha storage x ou y..

Editado Julho 20 por OtheReality

EskyloE
20 de julho de 2012 às 15:44

tipo oq define o cid é a função principal (vamos chamar assim pra facilitar), q no caso é function onSay(cid) antes dessa o função o script nao sabe quem é cid

 

então tipo vc tem q por local cooklv = getPlayerStorageValue(cid, 10100) depois do function onSay(cid) pq senao nao vai reconhecer o cid pra pegar o storage

 

pra misturar uma variavel com string, vc fecha a string , poe 2 pontos, poe a variavel

 

 

function onSay(cid)
local cooklv = getPlayerStorageValue(cid, 10100)
local text = [[
	 Cooker
Seu level é: ]]..cooklv..[[
PODE COLHER
bla bla
bla
bla bla bla
PODE FAZER
bla bla - bla bla
bla - bla bla bla
bla bla bla - bla bla
]]
doShowTextDialog(cid, itemid, text)
return true
end

 

vc salva em alguma storage a profissao do player, se sim, veja se ajuda:

 

 

local prof = {
[1] = [[
  Cooker
  Seu level é: level_aqui
  PODE COLHER
  bla bla
  bla
  bla bla bla
  PODE FAZER
  bla bla - bla bla
  bla - bla bla bla
  bla bla bla - bla bla
 ]],
[2] = [[
  Prof2
  Seu level é: level_aqui
  PODE COLHER
  bla bla
  bla
  bla bla bla
  PODE FAZER
  bla bla - bla bla
  bla - bla bla bla
  bla bla bla - bla bla
 ]],
[3] = [[
  Prof3
  Seu level é: level_aqui
  PODE COLHER
  bla bla
  bla
  bla bla bla
  PODE FAZER
  bla bla - bla bla
  bla - bla bla bla
  bla bla bla - bla bla
 ]],
}
function onSay(cid)
local player_prof = getPlayerStorageValue(cid, XXX) --storage com a prof do player
local player_prof_level = getPlayerStorageValue(cid, XXX2) --storage com o level da prof do plater

local text = string.gsub (prof[player_prof], "level_aqui", player_prof_level)
doShowTextDialog(cid, itemid, text)

return true
end

 

tipo nos textos la vc poe de acordo com o id da profissao (vc salva o id da prof do player num storage? pq nesse script vc colocaria a storage no XXX)

 

nesse segundo script eu uso uma função pra substituir onde eu escrevi level_aqui pela storage com o lv

Editado Julho 20 por Eskylo

otherealityO
21 de julho de 2012 às 13:15

Eu entendi, mas eu não salvo as profissões em um único storage, cada uma tem um storage diferente e ai eu já salvo o level na mesma storage.

Mas ma ajudou bastante vlw :D

Eu vou fazer o script que eu não tava conseguindo aqui e te mostro depois!