Ganhar Item Em Certo Level v1.2
5 participantes
Página 1 de 1
Ganhar Item Em Certo Level v1.2
Bom pessoal , é o meu primeiro tuto , na
verdade não é um tutorial , e sim uma pequena modificação no sistema de
thales , em q vc pode setar as classes q irão ganhar o item por lv ,
vamos lá.
Requerimento:Vb6.0 e http://www.mmorpgbr.com/t14053-ganhar-item-em-certo-levelvel
quando acabar o tuto só vc editar esse code :
Pronto , compile e seja feliz !
verdade não é um tutorial , e sim uma pequena modificação no sistema de
thales , em q vc pode setar as classes q irão ganhar o item por lv ,
vamos lá.
Requerimento:Vb6.0 e http://www.mmorpgbr.com/t14053-ganhar-item-em-certo-levelvel
quando acabar o tuto só vc editar esse code :
- Código:
Public Sub GanharItem(ByVal Index As Long)
If GetPlayerLevel(Index) = 2 Then
If
GetPlayerClass(Index) = 1 Or 2 Or 3 Then ' obs: as classes que ganharão
os itens serão 1,2,3 altere para as q vc quiser , e seja feliz :D
Call GiveInvItem(Index, 1, 2) ' obs: o 1 e o numero do item e o 2 e a quantidade de item q vai [url=http://www.aldeiarpgbr.com/t8475-item-por-lv-12#]receber[/url]
Call PlayerMsg(Index, " Você Recebeu o Item ThalesÉLindo ", Blue)
End If
End If
End Sub
Pronto , compile e seja feliz !
guifs- Membro Vitalicio
- Mensagens : 561
Re: Ganhar Item Em Certo Level v1.2
- Código:
Public Sub GanharItem(ByVal Index As Long)
If GetPlayerLevel(Index) = 2 Then
If GetPlayerClass(Index) = 1 Or 2 Or 3 Then ' obs: as classes que ganharão
os itens serão 1,2,3 altere para as q vc quiser , e seja feliz :D
Call GiveInvItem(Index, 1, 2) ' obs: o 1 e o numero do item e o 2 e a
quantidade de item q vai receber
Call PlayerMsg(Index, " Você Recebeu o Item ... ", BrightRed)
End If
End If
End Sub
Para Ganhar Outro Tipo de item
- Código:
Public Sub GanharItem2(ByVal Index As Long)
If GetPlayerLevel(Index) = 2 Then ' onde esta 2 é o level para receber.
If GetPlayerClass(Index) = 1 Or 2 Or 3 Then ' obs: as classes que ganharão
os itens serão 1,2,3 altere para as q vc quiser , e seja feliz :D
Call GiveInvItem(Index, 1, 2) ' obs: o 1 e o numero do item e o 2 e a
quantidade de item q vai receber
Call PlayerMsg(Index, " Você Recebeu o Item ... ", BrightRed)
End If
End If
End Sub
Última edição por kauee em Sáb 23 Mar 2013, 20:08, editado 1 vez(es)
Monotoshi- Membro Vitalicio
- Mensagens : 591
Re: Ganhar Item Em Certo Level v1.2
me explica o motivo de usar dua condições em um unico getplayer '-.-
@edit
e para fazr um GanharItem2 é preciso adc tbm um GanharItem2 antes da end sub no CheckPlayerLevelUp
@edit
e para fazr um GanharItem2 é preciso adc tbm um GanharItem2 antes da end sub no CheckPlayerLevelUp
guifs- Membro Vitalicio
- Mensagens : 561
Re: Ganhar Item Em Certo Level v1.2
Achei mais 1 erro no seu codigo,editei e arrumei
Monotoshi- Membro Vitalicio
- Mensagens : 591
Re: Ganhar Item Em Certo Level v1.2
kaue num tem erro nenhum , vc q ta vendo erros onde num tem , testa o sistema primeiro antes de falar q tem erro '-.-
guifs- Membro Vitalicio
- Mensagens : 561
Re: Ganhar Item Em Certo Level v1.2
Ai que os 2 se enganam...
No mesmo código daria para fazer tudo isso ohwait
No mesmo código daria para fazer tudo isso ohwait
KazutooBanido- Mensagens : 121
Re: Ganhar Item Em Certo Level v1.2
Bem, é realmente um bom código, mas vamos pensar em várias situações...uma delas e a principal seria:
- E se a mochila estiver cheia ??
Claro, que se a mochila estiver cheia dá problema no servidor("Subscript Out Of Range") , então o tutorial está 100% codificado, mas não quer dizer que esteja 100% livre de erros...Sem contar que podemos optimizar...
Mas vamos parar de falar e corrigir o código e optimizá-lo...Simplesmente troque a "SUB" que o Guifs disponibilizou, por esta:
E pronto, isto vai checar se você tem espaço na mochila, senão o item será dropado avisando o mesmo que foi dropado....E o código foi melhorado somente pelo caso de eu adicionar "Cases" pra ficar melhor o manuseio dos items que cada classe irá ganhar....e é isto aí, créditos do Guifs !!!
- E se a mochila estiver cheia ??
Claro, que se a mochila estiver cheia dá problema no servidor("Subscript Out Of Range") , então o tutorial está 100% codificado, mas não quer dizer que esteja 100% livre de erros...Sem contar que podemos optimizar...
Mas vamos parar de falar e corrigir o código e optimizá-lo...Simplesmente troque a "SUB" que o Guifs disponibilizou, por esta:
- Código:
Public Sub GanharItem(ByVal Index As Long)
Dim n As Long
n = FindOpenInvSlot(Index, 1) ' 1 = Número do Item
If GetPlayerLevel(Index) = 2 Then ' Check for Player Level
If n > 0 Then ' Check for inv space
Select Case GetPlayerClass(Index)
Case 0 ' Classe 0
Call GiveInvItem(Index, 1, 1)
Call PlayerMsg(Index, " Você Recebeu o Item: " & Trim$(Item(1).Name) & ".", Blue)
Case 1 ' Classe 1
Call GiveInvItem(Index, 1, 1)
Call PlayerMsg(Index, " Você Recebeu o Item: " & Trim$(Item(1).Name) & ".", Blue)
Case 2 ' Classe 2
Call GiveInvItem(Index, 1, 1)
Call PlayerMsg(Index, " Você Recebeu o Item: " & Trim$(Item(1).Name) & ".", Blue)
Case 3 ' Classe 3
Call GiveInvItem(Index, 1, 1)
Call PlayerMsg(Index, " Você Recebeu o Item: " & Trim$(Item(1).Name) & ".", Blue)
Case 4 ' Classe 4
Call GiveInvItem(Index, 1, 1)
Call PlayerMsg(Index, " Você Recebeu o Item: " & Trim$(Item(1).Name) & ".", Blue)
Case Else
Call GiveInvItem(Index, 1, 1)
Call PlayerMsg(Index, " Você Recebeu o Item: " & Trim$(Item(1).Name) & ".", Blue)
End Select
End If
Else
Call SpawnItem(1, 1, GetPlayerMap(Index), GetPlayerX(Index), GetPlayerY(Index))
Call PlayerMsg(Index, "Mochila Cheia! Item: " & Trim$(Item(1).Name) & " dropado no chão!", Blue)
End If
End Sub
E pronto, isto vai checar se você tem espaço na mochila, senão o item será dropado avisando o mesmo que foi dropado....E o código foi melhorado somente pelo caso de eu adicionar "Cases" pra ficar melhor o manuseio dos items que cada classe irá ganhar....e é isto aí, créditos do Guifs !!!
lucas100vzs- Membro Sênior
- Mensagens : 396
Re: Ganhar Item Em Certo Level v1.2
lucas tem um pequeno erro no seu tuto , hj quando eu ui testar do seu modo , toda vez q upa de lv ganhar o item numero 1 no meu caso a espada iniciante , e ele ñ está fazendo a verificação no inv , ele dps q da o item umas vez , mesmo se tiver livre o invo ele dropa no chão falando q o invi ta cheio , mesmo q ele esteja totalmente livre , por isso eu aconselho a usar na forma original do tuto , e quem tiver com a bag full se fode.
obs: algum fpd mecheu no meu tuto , aki novamente está da forma q postei :
primeiro faça:http://www.aldeiarpgbr.com/t4424-ganhar-item-em-certo-nivel
e dps substitua a public sub ganharitem por essa :
obs: algum fpd mecheu no meu tuto , aki novamente está da forma q postei :
primeiro faça:http://www.aldeiarpgbr.com/t4424-ganhar-item-em-certo-nivel
e dps substitua a public sub ganharitem por essa :
- Código:
Public Sub GanharItem(ByVal index As Long)
If GetPlayerLevel(index) = 20 Then
If GetPlayerClass(index) = 1 Or 2 Or 3 Then (troque o 1 2 e 3 por as suas classes desejadas e seja feliz)
Call GiveInvItem(index, 1, 2) ' obs: o 1 e o numero do item e o 2 e a quantidade de item q vai receber
Call PlayerMsg(index, " Você Recebeu o Item ThalesÉLindo ", Blue)
End If
End If
End Sub
guifs- Membro Vitalicio
- Mensagens : 561
Re: Ganhar Item Em Certo Level v1.2
Bem, primeiramente venho pedir desculpas, pois estava com pressa e postei um código sem testar....enfim, não estou com pressa agora...e nem ocupado...
Então, o problema Guifs que quem está com mochila cheia não se "fu.." é você que se "fu..."...porque dá erro no servidor, e não no cliente da pessoa....E é simples, você quer também uma checagem, e o código completo, aí está ele sem erros, e com manuseio mais fácil ainda:
- Código:
Public Sub GanharItem(ByVal Index As Long)
Dim ItemNum As Long
Dim ItemVal As Long
Dim Weapon As Long
Dim n As Long
' Declare the value and the ItemNum
ItemNum = 1 ' Item Number
ItemVal = 1 ' Item Value
' Watch out with the limit or sub-limit!
If ItemNum > MAX_ITEMS Or ItemNum < 0 Then Exit Sub
If ItemVal > MAX_LONG Or ItemVal < 0 Then Exit Sub
' Makes more easy, if player has ItemNum exit the code
If HasItem(Index, ItemNum) Then Exit Sub
n = FindOpenInvSlot(Index, ItemNum) ' 1 = Número do Item
If n > 0 Then ' Check for inv space
If GetPlayerLevel(Index) = 2 Then ' Check for Player Level
Select Case GetPlayerClass(Index)
Case 0 ' Classe 0
Call GiveInvItem(Index, ItemNum, ItemVal)
Call PlayerMsg(Index, " Você Recebeu o Item: " & Trim$(Item(ItemNum).Name) & ".", Blue)
Case 1 ' Classe 1
Call GiveInvItem(Index, ItemNum, ItemVal)
Call PlayerMsg(Index, " Você Recebeu o Item: " & Trim$(Item(ItemNum).Name) & ".", Blue)
Case 2 ' Classe 2
Call GiveInvItem(Index, ItemNum, ItemVal)
Call PlayerMsg(Index, " Você Recebeu o Item: " & Trim$(Item(ItemNum).Name) & ".", Blue)
Case 3 ' Classe 3
Call GiveInvItem(Index, ItemNum, ItemVal)
Call PlayerMsg(Index, " Você Recebeu o Item: " & Trim$(Item(ItemNum).Name) & ".", Blue)
Case 4 ' Classe 4
Call GiveInvItem(Index, ItemNum, ItemVal)
Call PlayerMsg(Index, " Você Recebeu o Item: " & Trim$(Item(ItemNum).Name) & ".", Blue)
Case Else
Call GiveInvItem(Index, ItemNum, ItemVal)
Call PlayerMsg(Index, " Você Recebeu o Item: " & Trim$(Item(ItemNum).Name) & ".", Blue)
End Select
End If
Else
Select Case GetPlayerClass(Index)
Case 0 ' Classe 0
Call SpawnItem(ItemNum, ItemVal, GetPlayerMap(Index), GetPlayerX(Index), GetPlayerY(Index))
Call PlayerMsg(Index, "Mochila Cheia! Item: " & Trim$(Item(ItemNum).Name) & " dropado no chão!", Blue)
Case 1 ' Classe 1
Call SpawnItem(ItemNum, ItemVal, GetPlayerMap(Index), GetPlayerX(Index), GetPlayerY(Index))
Call PlayerMsg(Index, "Mochila Cheia! Item: " & Trim$(Item(ItemNum).Name) & " dropado no chão!", Blue)
Case 2 ' Classe 2
Call SpawnItem(ItemNum, ItemVal, GetPlayerMap(Index), GetPlayerX(Index), GetPlayerY(Index))
Call PlayerMsg(Index, "Mochila Cheia! Item: " & Trim$(Item(ItemNum).Name) & " dropado no chão!", Blue)
Case 3 ' Classe 3
Call SpawnItem(ItemNum, ItemVal, GetPlayerMap(Index), GetPlayerX(Index), GetPlayerY(Index))
Call PlayerMsg(Index, "Mochila Cheia! Item: " & Trim$(Item(ItemNum).Name) & " dropado no chão!", Blue)
Case 4 ' Classe 4
Call SpawnItem(ItemNum, ItemVal, GetPlayerMap(Index), GetPlayerX(Index), GetPlayerY(Index))
Call PlayerMsg(Index, "Mochila Cheia! Item: " & Trim$(Item(ItemNum).Name) & " dropado no chão!", Blue)
Case Else
Call SpawnItem(ItemNum, ItemVal, GetPlayerMap(Index), GetPlayerX(Index), GetPlayerY(Index))
Call PlayerMsg(Index, "Mochila Cheia! Item: " & Trim$(Item(ItemNum).Name) & " dropado no chão!", Blue)
End Select
End If
End Sub
Lembrando que:
-Ele dropa o item no chão, caso esteja com a mochila cheia.
-Ele checa se o player tem o item, se tiver, ele não dá e nem dropa, ele sai do código.
OBS: para retirar esta função apenas retire este código:
- Código:
' Makes more easy, if player has ItemNum exit the code
If HasItem(Index, ItemNum) Then Exit Sub
-Agora você não precisa ficar colocando o "1" e "2" para número do item e quantidade em toda a linha....basta colocar o código, e configurar esta parte:
- Código:
' Declare the value and the ItemNum
ItemNum = 1 ' Item Number/Número do item
ItemVal = 1 ' Item Value/Valor(quantidade) do item
E para aqueles que não tem este código na parte do servidor, no fim do "ModConstants" adicione:
- Código:
' values
Public Const MAX_BYTE As Byte = 255
Public Const MAX_INTEGER As Integer = 32767
Public Const MAX_LONG As Long = 2147483647
E pronto....algum erro?
lucas100vzs- Membro Sênior
- Mensagens : 396
Re: Ganhar Item Em Certo Level v1.2
bom vou testar aki lucas , mais 1 so por ter falado isso , pelo ou menos agora eu ahco q sei fazer uma checagem de tal coisa e.e , mt obg +1
guifs- Membro Vitalicio
- Mensagens : 561
Tópicos semelhantes
» Ganhar Item Em Certo Level
» Ganhar Item ao matar Player
» Ganhar Item em certo nivel v2 kk
» [PEDIDO]Sistema de ganhar item ao clicar num item
» Como Colocar Som Ao Ganhar Level
» Ganhar Item ao matar Player
» Ganhar Item em certo nivel v2 kk
» [PEDIDO]Sistema de ganhar item ao clicar num item
» Como Colocar Som Ao Ganhar 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