SO

[Pedido] Transparencia

Por SosFirexd, 19 de mai. de 2015 em Archived

32
4.1k
22 de maio de 2015 às 12:24

Ai não é comigo...



XywuLaR.png



é assim que fica depois de criado


BrunoB
22 de maio de 2015 às 13:34

 

Bruno Minervino, deixando sua ironia de lado, esse é o sistema de transparência usando Alpha nas sprites, Ou seja, você cria as sprites com alpha e elas irão automaticamente ficar transparente no jogo, sem precisar de nem um tipo de lista.

Esse código habilita o cliente de ler spr com alpha.

 

Eu não fui irônico, "A ta, blz" isso é uma expressão, fiquei com dúvida da mesma forma que os outros membros, agora entendi!

Obrigado :)

nao funciono deste jeito novo se funcionar e bem melhor que editar as imagens?

Tenta assim no module:

filename = nil
loaded = false

function init()
	connect(g_game, { onProtocolVersionChange = load })
	connect(g_game, {onClientVersionChange = onClientVersionChange})
end

function terminate()
	disconnect(g_game, { onProtocolVersionChange = load })
end

function setFileName(name)
	filename = name
end

function isLoaded()
	return loaded
end

function onClientVersionChange(version)
	g_things.loadOtml('/things/things.otml')
end

function load()
	local version = g_game.getClientVersion()

	g_game.enableFeature(GameSpritesU32)
	g_game.enableFeature(GameSpritesAlphaChannel)
	g_game.enableFeature(GameMagicEffectU16)

	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
end
nociamN
22 de maio de 2015 às 14:27

E como eu testo? Tem alguma sprite ai pra test manim?

se compila com objectbuild no modo trasparencia se ativar o extended se pode colocar bastante sprites tb

 

hcCIhhd.png

 

Eu não fui irônico, "A ta, blz" isso é uma expressão, fiquei com dúvida da mesma forma que os outros membros, agora entendi!

Obrigado :)

Tenta assim no module:

filename = nil
loaded = false

function init()
	connect(g_game, { onProtocolVersionChange = load })
	connect(g_game, {onClientVersionChange = onClientVersionChange})
end

function terminate()
	disconnect(g_game, { onProtocolVersionChange = load })
end

function setFileName(name)
	filename = name
end

function isLoaded()
	return loaded
end

function onClientVersionChange(version)
	g_things.loadOtml('/things/things.otml')
end

function load()
	local version = g_game.getClientVersion()

	g_game.enableFeature(GameSpritesU32)
	g_game.enableFeature(GameSpritesAlphaChannel)
	g_game.enableFeature(GameMagicEffectU16)

	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
end

continua o erro gostaria de saber como funciona desse jeito porque e muito melhor.

 

ERROR: invalid thing type client id 622 in category 0

Editado Maio 22 por nociam

xSONYxX
22 de maio de 2015 às 17:46

Eu fiz tudo, tava até falando com o Baxnie, mas mesmo assim não funciona, eu ativei a feature, ativei a transparencia do client, coloquei até uma imagem com alpha e mesmo assim não funcionou

XxhadesXxX
22 de maio de 2015 às 18:10

Erro ao tentar ter transparência ao Cliente
WpaI5fN.png

 

2Fxyg6z.png

JG6J
22 de maio de 2015 às 18:20

Erro ao tentar ter transparência ao Cliente

WpaI5fN.png

 

2Fxyg6z.png

tenta desativar o extendido e abre

xSONYxX
22 de maio de 2015 às 18:25

Ja fiz o processo completo, ativei tudo e tal, mas chega dentro do game ele não reconhece a transparencia

JG6J
22 de maio de 2015 às 18:26

ativou no things.lua?

xSONYxX
22 de maio de 2015 às 18:32

Sim sim, ativei, ativei tbm transparencia no cliente, tudo certin mas eu boto a sprite transparente ai no game ela nao transparece nada

JG6J
22 de maio de 2015 às 18:36

diminuiu a opacidade dela?

xSONYxX
22 de maio de 2015 às 19:42

Sim mano, ja fiz isso tudo

 

---- ENFIM CONSEGUI OBRIGADO PELA AJUDA DE TODOS

Editado Maio 22 por xSONYx

XxhadesXxX
23 de maio de 2015 às 14:45

tenta desativar o extendido e abre

Eu recebo o mesmo erro :(

nociamN
26 de maio de 2015 às 17:16

solucao? ERROR: invalid thing type client id 622 in category 0

xSONYxX
26 de maio de 2015 às 20:58

Vocês ainda tão falando disso? Já fiz um tutorial e já postei no forum gente, o.O

 

http://www.xtibia.com/forum/topic/234058-tutorial-transparencia/

nociamN
27 de maio de 2015 às 09:03

Vocês ainda tão falando disso? Já fiz um tutorial e já postei no forum gente, o.O

 

http://www.xtibia.com/forum/topic/234058-tutorial-transparencia/

Antes de falar besteira leia um pouco o tópico amigo eu não quero desse jeito quero saber como funciona do outro jeito na próxima vez pelo menos leia o que se vai responder.