Evolução de Classe
+5
Guardian
Thales12
SrLoks~
KURIZZARD²
Eduardo
9 participantes
Página 1 de 1
Evolução de Classe
Bom eu vi o tópico do thales , e achei vergonhoso , então fiz um melhor
Cliente~side , na frmMain crie : 1 label , um com nome de "lblConfirmar" , caption = "Mudar Classe" , dnv na frmMain crie : 1 label , um com nome de "lblTClasse", caption = "Cancelar em: 60" , agora crie um combobox tbm na frmMain : nome "cmbTClasse" , coloque tudo dentro de uma picture tbm criada por você.
clique duas vezes no frmMain e coloque:
Procure por:
Abaixo coloque:
Procure por:
Abaixo coloque:
Procure por:
Abaixo coloque:
No final da modHandleData coloque:
Procure por:
Abaixo coloque:
Procure por:
Mude toda para:
Server~side , no final da modHandleData coloque:
Procure por:
Abaixo coloque:
Procure por:
Abaixo coloque:
Procure por:
Abaixo coloque:
No final do modServerTCP coloque:
No final da modPlayer coloque:
Troque toda a Sub CheckPlayerLevelUp(ByVal index As Long) por:
Creditos: Eduardo
Cliente~side , na frmMain crie : 1 label , um com nome de "lblConfirmar" , caption = "Mudar Classe" , dnv na frmMain crie : 1 label , um com nome de "lblTClasse", caption = "Cancelar em: 60" , agora crie um combobox tbm na frmMain : nome "cmbTClasse" , coloque tudo dentro de uma picture tbm criada por você.
clique duas vezes no frmMain e coloque:
- Código:
Private Sub Label2_MouseMove(Index As Integer, Button As Integer, Shift As Integer, x As Single, y As Single)
' If debug mode, handle error then exit out
If Options.Debug = 1 Then On Error GoTo errorhandler
Label2.ForeColor = &HFFFF&
' Error handler
Exit Sub
errorhandler:
HandleError "Label2_MouseMove", "frmMain", Err.Number, Err.Description, Err.Source, Err.HelpContext
Err.Clear
Exit Sub
End Sub
Private Sub lblConfirmar_Click()
SendTrocarClasse cmbTClasse.ListIndex + 1
End Sub
Private Sub picTClasse_mousemove(Index As Integer, Button As Integer, Shift As Integer, x As Single, y As Single)
' If debug mode, handle error then exit out
If Options.Debug = 1 Then On Error GoTo errorhandler
Label2.ForeColor = &H808080
' Error handler
Exit Sub
errorhandler:
HandleError "picTClasse_mousemove", "frmMain", Err.Number, Err.Description, Err.Source, Err.HelpContext
Err.Clear
Exit Sub
End Sub
Procure por:
- Código:
Sub SendDeclineParty()
Dim Buffer As clsBuffer
' If debug mode, handle error then exit out
If Options.Debug = 1 Then On Error GoTo errorhandler
Set Buffer = New clsBuffer
Buffer.WriteLong CDeclineParty
SendData Buffer.ToArray()
Set Buffer = Nothing
' Error handler
Exit Sub
errorhandler:
HandleError "SendDeclineParty", "modClientTCP", Err.Number, Err.Description, Err.Source, Err.HelpContext
Err.Clear
Exit Sub
End Sub
Abaixo coloque:
- Código:
Sub SendTrocarClasse(Classe As Long)
Dim Buffer As clsBuffer
' If debug mode, handle error then exit out
If Options.Debug = 1 Then On Error GoTo errorhandler
Set Buffer = New clsBuffer
Buffer.WriteLong CTClasse
Buffer.WriteLong Classe
SendData Buffer.ToArray()
Set Buffer = Nothing
' Error handler
Exit Sub
errorhandler:
HandleError "SendTrocarClasse", "modClientTCP", Err.Number, Err.Description, Err.Source, Err.HelpContext
Err.Clear
Exit Sub
End Sub
Procure por:
- Código:
CPartyLeave
Abaixo coloque:
- Código:
CTClasse
Procure por:
- Código:
SPartyVitals
Abaixo coloque:
- Código:
STClasse
No final da modHandleData coloque:
- Código:
Private Sub HandleTClasse(ByVal Index As Long, ByRef Data() As Byte, ByVal StartAddr As Long, ByVal ExtraVar As Long)
' If debug mode, handle error then exit out
If Options.Debug = 1 Then On Error GoTo errorhandler
Set Buffer = New clsBuffer
Buffer.WriteBytes Data()
frmMain.picTClasse.Visible = True
lblTClasse.Caption = "Cancelar em: 60"
TempoTClasse = 60
frmMain.cmbTClasse.Clear
frmMain.cmbTClasse.ListIndex = 0
For i = 1 To Max_Classes
cmbTClasse.AddItem "Id: " & i & " - " & Trim$(Class(i).Name)
Next
' Error handler
Exit Sub
errorhandler:
HandleError "HandleTClasse", "modHandleData", Err.Number, Err.Description, Err.Source, Err.HelpContext
Err.Clear
Exit Sub
End Sub
Procure por:
- Código:
Public ReInitSurfaces As Boolean
Abaixo coloque:
- Código:
' Trocar Classe
Public TempoTClasse As Long
Procure por:
- Código:
' Calculate fps
If TickFPS < Tick Then
GameFPS = FPS
TickFPS = Tick + 1000
FPS = 0
Else
FPS = FPS + 1
End If
Mude toda para:
- Código:
' Calculate fps
If TickFPS < Tick Then
GameFPS = FPS
TickFPS = Tick + 1000
FPS = 0
' Trocar Classe
If TempoTClasse > 0 Then
TempoTClasse = TempoTClasse - 1
frmMain.lblTClasse.Caption = "Cancelar em: " & TempoTClasse
Else
picTClasse.Visible = False
End If
Else
FPS = FPS + 1
End If
Server~side , no final da modHandleData coloque:
- Código:
Sub HandleTClasse(ByVal index As Long, ByRef Data() As Byte, ByVal StartAddr As Long, ByVal ExtraVar As Long)
Dim Buffer As clsBuffer
Dim Slot As Long
Set Buffer = New clsBuffer
Buffer.WriteBytes Data()
Slot = Buffer.ReadLong
Set Buffer = Nothing
Player(index).Class = Slot
Select Case Player(index).Sex
Case SEX_MALE
Player(index).Sprite = Class(GetPlayerClass(index)).MaleSprite(0)
Case SEX_FEMALE
Player(index).Sprite = Class(GetPlayerClass(index)).FemaleSprite(0)
Case Else
Exit Sub
End Select
PlayerMsg index, "Você trocou de personagem para: " & Trim$(Class(GetPlayerClass(index)).Name), BrightCyan
SendActionMsg GetPlayerMap(index), Yellow, "Change Visual", GetPlayerX(index) * 32, GetPlayerY(index) * 32
SendPlayerData index
End Sub
Procure por:
- Código:
HandleDataSub(CPartyLeave) = GetAddress(AddressOf HandlePartyLeave)
Abaixo coloque:
- Código:
HandleDataSub(CTClasse) = GetAddress(AddressOf HandleTClasse)
Procure por:
- Código:
CPartyLeave
Abaixo coloque:
- Código:
CTClasse
Procure por:
- Código:
SPartyVitals
Abaixo coloque:
- Código:
STClasse
No final do modServerTCP coloque:
- Código:
Sub SendTrocarClasse(ByVal index As Long)
Dim Buffer As clsBuffer
Set Buffer = New clsBuffer
Buffer.WriteLong STClasse
SendDataTo index, Buffer.ToArray()
Set Buffer = Nothing
End Sub
No final da modPlayer coloque:
- Código:
Private Sub CheckTClasse(index As Long)
If GetPlayerLevel(index) = 2 Then ' Level nescessario para trocar a classe
SendTrocarClasse index
End If
End Sub
Troque toda a Sub CheckPlayerLevelUp(ByVal index As Long) por:
- Código:
Sub CheckPlayerLevelUp(ByVal index As Long)
Dim i As Long
Dim expRollover As Long
Dim level_count As Long
level_count = 0
Do While GetPlayerExp(index) >= GetPlayerNextLevel(index)
expRollover = GetPlayerExp(index) - GetPlayerNextLevel(index)
' can level up?
If Not SetPlayerLevel(index, GetPlayerLevel(index) + 1) Then
Exit Sub
End If
Call SetPlayerPOINTS(index, GetPlayerPOINTS(index) + 3)
Call SetPlayerExp(index, expRollover)
level_count = level_count + 1
Loop
If level_count > 0 Then
If level_count = 1 Then
'singular
GlobalMsg GetPlayerName(index) & " has gained " & level_count & " level!", Brown
Else
'plural
GlobalMsg GetPlayerName(index) & " has gained " & level_count & " levels!", Brown
End If
SendEXP index
SendPlayerData index
SendCheckTClasse index
End If
End Sub
Creditos: Eduardo
Eduardo- Membro Veterano
- Mensagens : 1178
Re: Evolução de Classe
Amigo eduardo qual a diferença do seu para o do thales? sertamente o codigo do thales esta certo e bem mais facil ja o seu é bem mais dificil porem eu prefiro o do thales
é so a minha opniao
é so a minha opniao
KURIZZARD²- Membro
- Mensagens : 238
Re: Evolução de Classe
What? Créditos Eduardo ?
Vééy esses códigos não foram feitos pelo thales, entao deveria colocar Colocar créditos thales --'
Vééy esses códigos não foram feitos pelo thales, entao deveria colocar Colocar créditos thales --'
Re: Evolução de Classe
KURIZZARD² obrigado pelo apoio
SrLoks~ obrigado pelo apoio tbm
meu caro ex-amigo eduardo, qual a nescessidade de vc ter postado este topico ? se eu ja fiz o sistema e postei ? ( ta com inveja ai foi e fez outro e posto ? )
se queria fazer e postar, tinha feito isso antes de mim, so fez pq eu fiz, ta com inveja de mim ou raiva ? eduardo vc se rebaixou tanto..
o sistema q eu fiz ta funcionando perfeitamente
ja falei ponha-o na engine e teste-o e o senhor veràs, mais eduardo um conselho de ex-amigo nao seja tão invejoso assim tio, q inveja mata..
bom mais como diz o ditado Noob é foda ;D
SrLoks~ obrigado pelo apoio tbm
meu caro ex-amigo eduardo, qual a nescessidade de vc ter postado este topico ? se eu ja fiz o sistema e postei ? ( ta com inveja ai foi e fez outro e posto ? )
se queria fazer e postar, tinha feito isso antes de mim, so fez pq eu fiz, ta com inveja de mim ou raiva ? eduardo vc se rebaixou tanto..
o sistema q eu fiz ta funcionando perfeitamente
ja falei ponha-o na engine e teste-o e o senhor veràs, mais eduardo um conselho de ex-amigo nao seja tão invejoso assim tio, q inveja mata..
bom mais como diz o ditado Noob é foda ;D
Re: Evolução de Classe
Thales seus códigos estão mal feitos , não sou ex-amigo de ninguém , simplismente não gosto de gente , que come feijão com arroz e arrota caviar , aiii por créditos do thales? , não tem nada do thales aiii , os códigos deles estão ridiculos. Aii vai os erros.
- Código:
ele envia o nome do jogador por packet , sendo q o index do jogador vai pro servidor.
- Código:
[b]Ele colocou Player(n).Sprite = i , o mesmo valor da classe vai ser o da sprite.[/b]
Existem varios outros erros no tópico dele , não vou citar todos, póis esses já bastam. Mais pra quem não sabe programar , e comenta uma merda dessas , ta pedindo pra passar vergonha , se vocês querem apoiar ele, pelo menos entendam de códigos de programação do VB6 primeiro.
Última edição por Eduardo em Qua 07 Ago 2013, 22:19, editado 4 vez(es)
Eduardo- Membro Veterano
- Mensagens : 1178
Re: Evolução de Classe
"Come feijão com arroz e arrota caviar ?" kkkkkkkkkkk'
Essa foi ótima, mas enfim... Vim só acabar com essa discussão.
Li o código tanto do Thales como do Eduardo.
Thales12 deu sua palavra que seu sistema é funcional, eu não só duvidei, como provei que não é funcional.
Direi tudo que você errou Thales :
1 - Primeiramente, este código :
Como assim ? A classe e a sprite vira o mesmo número ? Hã ?
2 - Segundo, explique este código :
PicOi ? Você não pediu pra criar nenhuma PicOi e não falou nada sobre.
3 - 2 Timers em um sistema ? Isso é uma espécie de Suicidio ? Pelo amor de deus, utilize o Loop do jogo.
4 - Quarto, explique isso :
Quer dizer então que se eu deixar atacando e for ali beber água e pegar level 20. Dai aparece a Imagem, mas dai passa o tempo (que eu achei inútil) e a imagem some. E agora ? Eu perdi minha evolução de classe ?
5 - Quinto, hã ?
Pra que isso no menu ? o.O
6 - Explica uma coisa só... Isso :
Você envia o Nome do player pra achar o Index dele sendo que já existe o Index pra você usar ? o.O
E você nem mandou criar o txtAName. Entendi nada dessa parte. kkkk'
Acho que isso tudo já deu... Provado que o sistema não ta completo.
Quanto ao Eduardo, também repito, esse tempo pra sumir a imagem é ridículo. E cabe o Item 4 ai também.
E agora pros 2, porque não fazer uma evolução de classe por Quest ? Beeeeeem melhor!
Cada sistema deve ter seus respectivos créditos. Os dois estão muito diferentes.
Essa foi ótima, mas enfim... Vim só acabar com essa discussão.
Li o código tanto do Thales como do Eduardo.
Thales12 deu sua palavra que seu sistema é funcional, eu não só duvidei, como provei que não é funcional.
Direi tudo que você errou Thales :
1 - Primeiramente, este código :
- Código:
Player(n).Class = i
Player(n).Sprite = i
Como assim ? A classe e a sprite vira o mesmo número ? Hã ?
2 - Segundo, explique este código :
- Código:
picOi.Visible = True
If Time = 0 Then
Timer2.Enabled = False
picOi.top = 600
End If
PicOi ? Você não pediu pra criar nenhuma PicOi e não falou nada sobre.
3 - 2 Timers em um sistema ? Isso é uma espécie de Suicidio ? Pelo amor de deus, utilize o Loop do jogo.
4 - Quarto, explique isso :
- Código:
If GetPlayerLevel = 20 Then ' 20 e o level q vai aparecer a pic para vc escolher sua classe
frmMain.Timer2.Enabled = True
End If
Quer dizer então que se eu deixar atacando e for ali beber água e pegar level 20. Dai aparece a Imagem, mas dai passa o tempo (que eu achei inútil) e a imagem some. E agora ? Eu perdi minha evolução de classe ?
5 - Quinto, hã ?
- Código:
cmbClass.ListIndex = 0
Pra que isso no menu ? o.O
6 - Explica uma coisa só... Isso :
- Código:
n = FindPlayer(Buffer.ReadString)
i = Buffer.ReadLong
Set Buffer = Nothing
Você envia o Nome do player pra achar o Index dele sendo que já existe o Index pra você usar ? o.O
E você nem mandou criar o txtAName. Entendi nada dessa parte. kkkk'
Acho que isso tudo já deu... Provado que o sistema não ta completo.
Quanto ao Eduardo, também repito, esse tempo pra sumir a imagem é ridículo. E cabe o Item 4 ai também.
E agora pros 2, porque não fazer uma evolução de classe por Quest ? Beeeeeem melhor!
Cada sistema deve ter seus respectivos créditos. Os dois estão muito diferentes.
Guardian- Membro de Honra
- Mensagens : 781
Re: Evolução de Classe
Guardian So acho que cada um tem seus codigos mais e dai que ele fes aquilo? pelo menos funciona ja o eduardo ele que se achar mt pois ésse cara eu tenho no msn e sei mt bem como ele é Mlk se acha mt
KURIZZARD²- Membro
- Mensagens : 238
Re: Evolução de Classe
KURIZZARD² escreveu:Guardian So acho que cada um tem seus codigos mais e dai que ele fes aquilo? pelo menos funciona ja o eduardo ele que se achar mt pois ésse cara eu tenho no msn e sei mt bem como ele é Mlk se acha mt
Por favor, escreva direito. Chega dói ler um texto assim como o seu.
KURIZZARD, o Guardian falou, no fim do tópico exatamente isso.
Ele falou: cada um deve ter seus respectivos créditos. Os dois estão muito diferentes.
O Eduardo não quer se achar, pelo menos não nesse caso (não sei de outros, nunca o vi se achando), ele simplesmente falou aquilo no tópico do Thales12, na tentativa de ajudar a concertar um erro. Quem não aceitou foi o Thales.
Acredito que pelo motivo dele não ter aceitado a ajuda de Eduardo, ele criou um tópico com o sistema, concertado, para depois não ver outros usuários vindo falar de erro, de que não funcionou, e tal e tal.
O fato dele ele ter falado daquele jeito (que pra deixar claro, não estava se achando), foi porque as pessoas não estavam reconhecendo o erro ao mesmo tempo que não estavam reconhecendo ele, que concertou o mesmo.
E outra, isso deveria ser considerado flood, só acho.
----------------------
Enfim, a ideia do sistema que o Thales teve foi boa! Mas como o Guardian falou, esse negócio de tempo é ilógico...
Agradeço pelo Eduardo por concertar o "erro" (:
Todos os dois vão receber créditos de minha parte.
MrMota- Membro Veterano
- Mensagens : 918
Re: Evolução de Classe
eu so digo uma coisa, eu fiz e postei e funciona, nao da erro neen nada.
o eduardo quiz fazer melhor por inveja, nao venha falar q e para ajudar e concertar nao, pq ele ta numa quinzumba cmg do krl, mais neen ligo, o meu funciona, o do eduardo eu nao sei, mais provavelmente tbm funcione, a pessoa usa a q ela achar melhor
o eduardo quiz fazer melhor por inveja, nao venha falar q e para ajudar e concertar nao, pq ele ta numa quinzumba cmg do krl, mais neen ligo, o meu funciona, o do eduardo eu nao sei, mais provavelmente tbm funcione, a pessoa usa a q ela achar melhor
Re: Evolução de Classe
A diferença do código dele pra o do thales?KURIZZARD² escreveu:Amigo eduardo qual a diferença do seu para o do thales? sertamente o codigo do thales esta certo e bem mais facil ja o seu é bem mais dificil porem eu prefiro o do thales
é so a minha opniao
Essa pergunta é séria?
Re: Evolução de Classe
Só venho passar para avisar que se não parar com os floods no tópico irei trancar.
Obrigado por compartilhar conosco Eduardo testarei para ver se funfa, no entanto + 1 crédito pela iniciativa!
Obrigado por compartilhar conosco Eduardo testarei para ver se funfa, no entanto + 1 crédito pela iniciativa!
Frozen- Membro Veterano
- Mensagens : 1339
Re: Evolução de Classe
Só pra avisar: eles fizeram o sistema com tempo, porque foi a pedido de um usuário.
Shihatzu- Membro
- Mensagens : 157
Tópicos semelhantes
» Evolução de Classe
» Evolução de Classe
» Evolução Classe
» [ALL]Evolução de classe
» [EE][ES]Evolução de Classe por Level
» Evolução de Classe
» Evolução Classe
» [ALL]Evolução de classe
» [EE][ES]Evolução de Classe por Level
Página 1 de 1
Permissões neste sub-fórum
Não podes responder a tópicos
Dom 08 Abr 2018, 18:40 por JorgeZinhoo002
» Ojkjeeeee
Seg 10 Out 2016, 23:19 por Frozen
» Naruto Great Ninja Batle
Dom 09 Out 2016, 14:29 por GuiinhoLP
» Recrutamento de um Designer para jogo de CDZ.
Sex 23 Set 2016, 18:37 por newbie123
» Serviços de suporte maker( Programação , Design , PixelArt ) E Vendas de Jogos
Qui 22 Set 2016, 20:11 por Eduardo
» Serviços de suporte maker( Programação , Design , PixelArt ) E Vendas de Jogos
Qui 22 Set 2016, 20:11 por Eduardo
» Serviços de suporte maker( Programação , Design , PixelArt ) E Vendas de Jogos
Qui 22 Set 2016, 20:09 por Eduardo
» Projeto Dbz
Qua 31 Ago 2016, 23:46 por 157
» Avaliação - Sprites Naruto
Qua 31 Ago 2016, 17:09 por 157
» [Sprites] DBZ (Plix)
Qua 31 Ago 2016, 14:13 por 157
» Super Pack - Bleach V.2
Qua 31 Ago 2016, 13:02 por 157
» [PEDIDO][PROJETO][RECRUTAMENTO] DYNISTYGAMES
Ter 30 Ago 2016, 10:04 por 157
» [PEDIDO][PROJETO][RECRUTAMENTO] DYNISTYGAMES
Ter 30 Ago 2016, 10:03 por 157
» [PEDIDO][PROJETO][RECRUTAMENTO] DYNISTYGAMES
Ter 30 Ago 2016, 10:02 por 157
» [Pedido] Contador de resets na FrmMain
Sáb 13 Ago 2016, 17:45 por killers97
» [Recrutamento]
Qua 10 Ago 2016, 23:09 por Monsters
» Ajuda erro no Cliente e Servidor do EEB 2.6!
Qua 20 Jul 2016, 19:53 por Binholx
» Como criar tilesets para Eclipse Origins 3.0 (POKÉMON)
Qua 29 Jun 2016, 19:46 por Sir Aaron
» Recursos Pokemons
Qua 29 Jun 2016, 19:34 por Sir Aaron
» erro frm flash
Qua 25 maio 2016, 13:51 por vava123
» Pedido - Pack de star wars
Qui 19 maio 2016, 05:06 por edsonpet
» [Ajuda] Sobre como por o servidor on por ip fixo
Ter 17 maio 2016, 16:14 por vava123
» Illusion Dimension - O Misterio do ID: BETA TESTE ONLINE
Sex 06 maio 2016, 20:02 por LksFlorencio
» [NSME] Naruto Shinobi Maker Engine
Qua 23 Mar 2016, 15:11 por luana1457
» Script /base,/casa Igual DBZ Forces
Dom 21 Fev 2016, 07:34 por JorgeZinhoo002
» [Pedido]Colar Tsunade item sprite eclipse origin
Qui 21 Jan 2016, 07:38 por lawllietbr
» [Pedido] Elysium
Sáb 19 Dez 2015, 11:31 por luana1457
» Naruto - Recruta
Ter 15 Dez 2015, 18:40 por Uchiha ~
» [Avaliação] - Kirito from Sword Art Online; Red and Pikachu from Pokemon.
Qua 25 Nov 2015, 13:43 por Thanakii
» [Avaliação] - Kenpachi Zaraki from Bleach; Libra Shiryu From Saint Seiya.
Qua 25 Nov 2015, 12:55 por Thanakii
» Demonstração de Sprites (Á VENDA!)
Qua 25 Nov 2015, 12:40 por Thanakii
» [Sistema de Reset]Para Eclipse .
Ter 24 Nov 2015, 16:51 por VithorUchi
» Cada Guild Nascer em Certo Mapa
Qui 12 Nov 2015, 06:13 por fabiofeijó_HIT
» Dragon Ball z Fusion A Grande Volta
Qui 29 Out 2015, 15:17 por fabiofeijó_HIT
» Ajuda com Ip fixo
Seg 26 Out 2015, 16:07 por GalaxyHells15
» Como Fazer um GUI no Eclipse Origins
Dom 18 Out 2015, 22:10 por Jeanleee
» Shisui Susanoo
Dom 18 Out 2015, 20:23 por Jeanleee
» Fantasy Art Online
Dom 18 Out 2015, 16:41 por daviih123
» Ajuda !!
Seg 05 Out 2015, 12:13 por andersonzika
» como passar o usuário e senha para o MainMenu?
Seg 28 Set 2015, 22:03 por Bëzerk
» Ru time ero 13 Type mismatch
Seg 28 Set 2015, 09:08 por andredarle
» Jarvis 1.3 Download
Qua 23 Set 2015, 18:42 por soares125
» [Avaliação/Disponibilização]Árvore 64x64
Qua 23 Set 2015, 15:15 por Over~
» Mlk's Zikas Signatures
Ter 22 Set 2015, 21:15 por Aikawa Reborn'
» Pedido de Sistemas
Dom 20 Set 2015, 18:05 por cleyton_05
» [AjudaEEB]Gerador de EXP
Qua 16 Set 2015, 14:04 por Over~
» [Avaliar] Base, Humano e Goblin.
Seg 14 Set 2015, 22:51 por .iBlaz3.
» Fabrica do Tio Cronos!
Dom 13 Set 2015, 21:31 por [ADM]Cronos
» [PixelArt] Minion - Meu malvado favorito
Dom 13 Set 2015, 12:51 por [ADM]Cronos
» [Avaliar] Goku Dragon Ball Z
Qua 05 Ago 2015, 21:36 por Setrux