MMORPG Brasil
Ola, visitante! Agradecemos sua visita, para ter acesso a todo nosso conteúdo recomendamos que faça um cadastro no fórum, com ele você pode participar de tópicos e ter acesso a todas áreas da comunidade!

Participe do fórum, é rápido e fácil

MMORPG Brasil
Ola, visitante! Agradecemos sua visita, para ter acesso a todo nosso conteúdo recomendamos que faça um cadastro no fórum, com ele você pode participar de tópicos e ter acesso a todas áreas da comunidade!
MMORPG Brasil
Gostaria de reagir a esta mensagem? Crie uma conta em poucos cliques ou inicie sessão para continuar.

[EO]Shen Long[Tutorial]

+2
Valentine
guifs
6 participantes

Ir para baixo

[EO]Shen Long[Tutorial] Empty [EO]Shen Long[Tutorial]

Mensagem por guifs Dom 21 Jul 2013, 11:14

Bom essa é a versão 1.0,bom eu n coloquei os bonus pq n sei os sistemas presentes no projeto de cada um,mais vamos lá.(Demorei postar pois estava viajando,vou voltar a postar os sistemas pedidos na fábrica)

Client~

Primeiro crie uma form com as seguintes propriedades:
Nome:frmshenlong
Caption:ShenLong

Dentro dessa mesma frm crie um timer com as seguintes configurações:
name:timer1
interval:30000

Depois na frmMain crie uma picture com as seguintes configurações:
Name:picsl
Borderstile:none
width:259
heigth:193

Agora vamos aos codigos '0':
Dê 2 clicks no timer1 da frmshenlong e dentro dele coloque:

Código:
frmShenlong.Visible = False
MsgBox ("Infelismente se você não escolheu o seu pedido a tempo,as esferas acabamde se espalhar,fica para proxima")


Dê 2 clicks na picsl e dentro adicione:
Código:
shenlong

Procure por:
Código:
frmMain.picHotbar.Picture = LoadPicture(App.Path & "\data files\graphics\gui\main\hotbar.jpg")

Abaixo adicione:
Código:
frmMain.picsl.Picture = LoadPicture(App.Path & "\data files\graphics\gui\main\slong.jpg")

Depois procure por:
Código:
' Make sure SMSG_COUNT is below everything else

Acima adicione:
Código:
SShenlong

Depois procure por:
Código:
' Make sure CMSG_COUNT is below everything else

Acima adicione:
Código:
CShenlong

Depois procure por:
Código:
HandleDataSub(SPartyVitals) = GetAddress(AddressOf HandlePartyVitals)

Abaixo adicione:
Código:
HandleDataSub(SShenlong) = GetAddress(AddressOf HandleShenlong)

Depois  no final da modhandledata adicione:
Código:
Private Sub HandleShenlong(ByVal Index As Long, ByRef Data() As Byte, ByVal StartAddr As Long, ByVal ExtraVar As Long)
    frmShenlong.Show vbModal
End Sub


Agora no final da clienttcp adicione:
Código:
Public Sub shenlong()
Dim shenlongs 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 CShenlong
    Buffer.WriteLong shenlongs
    SendData Buffer.ToArray()
    Set Buffer = Nothing
    
    ' Error handler
    Exit Sub
errorhandler:
    HandleError "shenlong", "modClientTCP", Err.Number, Err.Description, Err.Source, Err.HelpContext
    Err.Clear
    Exit Sub
End Sub


Servidor~:

procure por:
Código:
handleDataSub(CPartyLeave) = GetAddress(AddressOf HandlePartyLeave)

abaixo adicione:
Código:
HandleDataSub(Cshenlong) = GetAddress(AddressOf HandleShenlong)

agora no final da modhandledata adicione:
Código:
Sub HandleShenlong(ByVal index As Long, ByRef Data() As Byte, ByVal StartAddr As Long, ByVal ExtraVar As Long)
    Dim i As Byte
    Dim Buffer As clsBuffer
    Set Buffer = New clsBuffer
    Buffer.WriteBytes Data()

' Aqui checaremos se o player tem ou não as esferas

'1 estrela
If GetPlayerInvItemValue(index, 1) < 1 Then
PlayerMsg index, "Você não tem a esfera de 1 estrela.", Yellow
Exit Sub
End If
'2 estrela
If GetPlayerInvItemValue(index, 2) < 1 Then
PlayerMsg index, "Você não tem a esfera de 2 estrela.", Yellow
Exit Sub
End If
'3 estrela
If GetPlayerInvItemValue(index, 3) < 1 Then
PlayerMsg index, "Você não tem a esfera de 3 estrela.", Yellow
Exit Sub
End If
'4 estrela
If GetPlayerInvItemValue(index, 4) < 1 Then
PlayerMsg index, "Você não tem a esfera de 4 estrela.", Yellow
Exit Sub
End If
'5 estrela
If GetPlayerInvItemValue(index, 5) < 1 Then
PlayerMsg index, "Você não tem a esfera de 5 estrela.", Yellow
Exit Sub
End If
'6 estrela
If GetPlayerInvItemValue(index, 6) < 1 Then
PlayerMsg index, "Você não tem a esfera de 6 estrela.", Yellow
Exit Sub
End If
'7 estrela
If GetPlayerInvItemValue(index, 7) < 1 Then
PlayerMsg index, "Você não tem a esfera de 7 estrela.", Yellow
Exit Sub
End If

'Aqui retiraremos as esferas os invetários dos players

'1 estrela
For i = 1 To MAX_INV
If GetPlayerInvItemNum(index, i) = 1 Then
TakeInvItem index, 1, 1
End If
Next
'2 estrelas
For i = 1 To MAX_INV
If GetPlayerInvItemNum(index, i) = 1 Then
TakeInvItem index, 2, 1
End If
Next
'3 estrelas
For i = 1 To MAX_INV
If GetPlayerInvItemNum(index, i) = 1 Then
TakeInvItem index, 3, 1
End If
Next
'4 estrelas
For i = 1 To MAX_INV
If GetPlayerInvItemNum(index, i) = 1 Then
TakeInvItem index, 4, 1
End If
Next
'5 estrelas
For i = 1 To MAX_INV
If GetPlayerInvItemNum(index, i) = 1 Then
TakeInvItem index, 5, 1
End If
Next
'6 estrelas
For i = 1 To MAX_INV
If GetPlayerInvItemNum(index, i) = 1 Then
TakeInvItem index, 6, 1
End If
Next
'7 estrelas
For i = 1 To MAX_INV
If GetPlayerInvItemNum(index, i) = 1 Then
TakeInvItem index, 7, 1
End If
Next

    Call PlayerMsg(index, "É chegado a hora de fazer 1 pedido,as esferas se uniram,você tem 30 segundos antes que as esferas se espalhem novamente.", BrightBlue)
    Call Shenllong(index)
End Sub

obs:no codigo acima eu deixei descrições e obs caso quiserem adc alguma coisa
obs²:é requerido no mínimo ter 7 itens no editor de item prontos.

agora no final do servertcp adicione:
Código:
Sub Shenllong(ByVal index As Long)
Dim Buffer As clsBuffer
    Set Buffer = New clsBuffer
    Buffer.WriteLong SShenlong
    Buffer.WriteLong index
    
    SendDataTo index, Buffer.ToArray()
    Set Buffer = Nothing
End Sub

Agora procure por:
Código:
' Make sure SMSG_COUNT is below everything else

Acima adicione:
Código:
SShenlong

Depois procure por:
Código:
' Make sure CMSG_COUNT is below everything else


Acima adicione:
Código:
cshenlong


Agora baixe:
Slong

Depois coloque o arquivo acima em gui>main

dentro da gui da main do seu game.

Fim

Creditos:
Eu(tutorial/sistema/explicação/imagem)
RenanR(por me ajudar a enviar uma packting(sshenlong))
guifs
guifs
Membro Vitalicio
Membro Vitalicio

Mensagens : 561

Ir para o topo Ir para baixo

[EO]Shen Long[Tutorial] Empty Re: [EO]Shen Long[Tutorial]

Mensagem por Valentine Dom 21 Jul 2013, 15:31

O que esse sistema faz?
avatar
Valentine
Membro de Honra
Membro de Honra

Mensagens : 472

http://www.aldeiarpgbr.com

Ir para o topo Ir para baixo

[EO]Shen Long[Tutorial] Empty Re: [EO]Shen Long[Tutorial]

Mensagem por Kooringa Dom 21 Jul 2013, 16:03

Valentine escreveu:O que esse sistema faz?

 Chama o Shenlog, mais eu tb n entendi direito como ele vai pegar as esferas
Kooringa
Kooringa
Banido
Banido

Mensagens : 1361

Ir para o topo Ir para baixo

[EO]Shen Long[Tutorial] Empty Re: [EO]Shen Long[Tutorial]

Mensagem por Kuroko Dom 21 Jul 2013, 16:16

Valentine escreveu:
O que esse sistema faz?

 Se você tiver as 7 esferas, você pode clicar em uma picture, que irá retirar as suas esferas, sendo assim irá abrir uma nova picture com outras pictures que ao clicar lhe dará um prêmio rs
Kuroko
Kuroko
Membro Junior
Membro Junior

Mensagens : 88

Ir para o topo Ir para baixo

[EO]Shen Long[Tutorial] Empty Re: [EO]Shen Long[Tutorial]

Mensagem por guifs Dom 21 Jul 2013, 17:42

Valentine escreveu:O que esse sistema faz?

 se você tiver as 7 esferas (não nescessáriamente esferas mais sim 7 itens com o id 1 2 3 4 5 6 e 7),ao clicar na picture abrirá uma form e dentro dela tu poem oq tu querer de recompensa para os players,tanto aumento de status,exp,lv,etc.
guifs
guifs
Membro Vitalicio
Membro Vitalicio

Mensagens : 561

Ir para o topo Ir para baixo

[EO]Shen Long[Tutorial] Empty Re: [EO]Shen Long[Tutorial]

Mensagem por guifs Dom 21 Jul 2013, 17:43

Kooringa escreveu:
Valentine escreveu:O que esse sistema faz?

 Chama o Shenlog, mais eu tb n entendi direito como ele vai pegar as esferas

 ela pega as esferas pelo seguinte código :

Código:
Sub HandleShenlong(ByVal index As Long, ByRef Data() As Byte, ByVal StartAddr As Long, ByVal ExtraVar As Long)[color=#2e8b57][font=Courier][/font][/color]
    Dim i As Byte[color=#2e8b57][font=Courier][/font][/color]
    Dim Buffer As clsBuffer[color=#2e8b57][font=Courier][/font][/color]
    Set Buffer = New clsBuffer[color=#2e8b57][font=Courier][/font][/color]
    Buffer.WriteBytes Data()[color=#2e8b57][font=Courier][/font][/color]
[color=#2e8b57][font=Courier][/font][/color]
' Aqui checaremos se o player tem ou não as esferas[color=#2e8b57][font=Courier][/font][/color]
[color=#2e8b57][font=Courier][/font][/color]
'1 estrela[color=#2e8b57][font=Courier][/font][/color]
If GetPlayerInvItemValue(index, 1) < 1 Then[color=#2e8b57][font=Courier][/font][/color]
PlayerMsg index, "Você não tem a esfera de 1 estrela.", Yellow[color=#2e8b57][font=Courier][/font][/color]
Exit Sub[color=#2e8b57][font=Courier][/font][/color]
End If[color=#2e8b57][font=Courier][/font][/color]
'2 estrela[color=#2e8b57][font=Courier][/font][/color]
If GetPlayerInvItemValue(index, 2) < 1 Then[color=#2e8b57][font=Courier][/font][/color]
PlayerMsg index, "Você não tem a esfera de 2 estrela.", Yellow[color=#2e8b57][font=Courier][/font][/color]
Exit Sub[color=#2e8b57][font=Courier][/font][/color]
End If[color=#2e8b57][font=Courier][/font][/color]
'3 estrela[color=#2e8b57][font=Courier][/font][/color]
If GetPlayerInvItemValue(index, 3) < 1 Then[color=#2e8b57][font=Courier][/font][/color]
PlayerMsg index, "Você não tem a esfera de 3 estrela.", Yellow[color=#2e8b57][font=Courier][/font][/color]
Exit Sub[color=#2e8b57][font=Courier][/font][/color]
End If[color=#2e8b57][font=Courier][/font][/color]
'4 estrela[color=#2e8b57][font=Courier][/font][/color]
If GetPlayerInvItemValue(index, 4) < 1 Then[color=#2e8b57][font=Courier][/font][/color]
PlayerMsg index, "Você não tem a esfera de 4 estrela.", Yellow[color=#2e8b57][font=Courier][/font][/color]
Exit Sub[color=#2e8b57][font=Courier][/font][/color]
End If[color=#2e8b57][font=Courier][/font][/color]
'5 estrela[color=#2e8b57][font=Courier][/font][/color]
If GetPlayerInvItemValue(index, 5) < 1 Then[color=#2e8b57][font=Courier][/font][/color]
PlayerMsg index, "Você não tem a esfera de 5 estrela.", Yellow[color=#2e8b57][font=Courier][/font][/color]
Exit Sub[color=#2e8b57][font=Courier][/font][/color]
End If[color=#2e8b57][font=Courier][/font][/color]
'6 estrela[color=#2e8b57][font=Courier][/font][/color]
If GetPlayerInvItemValue(index, 6) < 1 Then[color=#2e8b57][font=Courier][/font][/color]
PlayerMsg index, "Você não tem a esfera de 6 estrela.", Yellow[color=#2e8b57][font=Courier][/font][/color]
Exit Sub[color=#2e8b57][font=Courier][/font][/color]
End If[color=#2e8b57][font=Courier][/font][/color]
'7 estrela[color=#2e8b57][font=Courier][/font][/color]
If GetPlayerInvItemValue(index, 7) < 1 Then[color=#2e8b57][font=Courier][/font][/color]
PlayerMsg index, "Você não tem a esfera de 7 estrela.", Yellow[color=#2e8b57][font=Courier][/font][/color]
Exit Sub[color=#2e8b57][font=Courier][/font][/color]
End If[color=#2e8b57][font=Courier][/font][/color]
[color=#2e8b57][font=Courier][/font][/color]
'Aqui retiraremos as esferas os invetários dos players[color=#2e8b57][font=Courier][/font][/color]
[color=#2e8b57][font=Courier][/font][/color]
'1 estrela[color=#2e8b57][font=Courier][/font][/color]
For i = 1 To MAX_INV[color=#2e8b57][font=Courier][/font][/color]
If GetPlayerInvItemNum(index, i) = 1 Then[color=#2e8b57][font=Courier][/font][/color]
TakeInvItem index, 1, 1[color=#2e8b57][font=Courier][/font][/color]
End If[color=#2e8b57][font=Courier][/font][/color]
Next[color=#2e8b57][font=Courier][/font][/color]
'2 estrelas[color=#2e8b57][font=Courier][/font][/color]
For i = 1 To MAX_INV[color=#2e8b57][font=Courier][/font][/color]
If GetPlayerInvItemNum(index, i) = 1 Then[color=#2e8b57][font=Courier][/font][/color]
TakeInvItem index, 2, 1[color=#2e8b57][font=Courier][/font][/color]
End If[color=#2e8b57][font=Courier][/font][/color]
Next[color=#2e8b57][font=Courier][/font][/color]
'3 estrelas[color=#2e8b57][font=Courier][/font][/color]
For i = 1 To MAX_INV[color=#2e8b57][font=Courier][/font][/color]
If GetPlayerInvItemNum(index, i) = 1 Then[color=#2e8b57][font=Courier][/font][/color]
TakeInvItem index, 3, 1[color=#2e8b57][font=Courier][/font][/color]
End If[color=#2e8b57][font=Courier][/font][/color]
Next[color=#2e8b57][font=Courier][/font][/color]
'4 estrelas[color=#2e8b57][font=Courier][/font][/color]
For i = 1 To MAX_INV[color=#2e8b57][font=Courier][/font][/color]
If GetPlayerInvItemNum(index, i) = 1 Then[color=#2e8b57][font=Courier][/font][/color]
TakeInvItem index, 4, 1[color=#2e8b57][font=Courier][/font][/color]
End If[color=#2e8b57][font=Courier][/font][/color]
Next[color=#2e8b57][font=Courier][/font][/color]
'5 estrelas[color=#2e8b57][font=Courier][/font][/color]
For i = 1 To MAX_INV[color=#2e8b57][font=Courier][/font][/color]
If GetPlayerInvItemNum(index, i) = 1 Then[color=#2e8b57][font=Courier][/font][/color]
TakeInvItem index, 5, 1[color=#2e8b57][font=Courier][/font][/color]
End If[color=#2e8b57][font=Courier][/font][/color]
Next[color=#2e8b57][font=Courier][/font][/color]
'6 estrelas[color=#2e8b57][font=Courier][/font][/color]
For i = 1 To MAX_INV[color=#2e8b57][font=Courier][/font][/color]
If GetPlayerInvItemNum(index, i) = 1 Then[color=#2e8b57][font=Courier][/font][/color]
TakeInvItem index, 6, 1[color=#2e8b57][font=Courier][/font][/color]
End If[color=#2e8b57][font=Courier][/font][/color]
Next[color=#2e8b57][font=Courier][/font][/color]
'7 estrelas[color=#2e8b57][font=Courier][/font][/color]
For i = 1 To MAX_INV[color=#2e8b57][font=Courier][/font][/color]
If GetPlayerInvItemNum(index, i) = 1 Then[color=#2e8b57][font=Courier][/font][/color]
TakeInvItem index, 7, 1[color=#2e8b57][font=Courier][/font][/color]
End If[color=#2e8b57][font=Courier][/font][/color]
Next[color=#2e8b57][font=Courier][/font][/color]
[color=#2e8b57][font=Courier][/font][/color]
    Call PlayerMsg(index, "É chegado a hora de fazer 1 pedido,as esferas se uniram,você tem 30 segundos antes que as esferas se espalhem novamente.", BrightBlue)[color=#2e8b57][font=Courier][/font][/color]
    Call Shenllong(index)[color=#2e8b57][font=Courier][/font][/color]
End Sub
guifs
guifs
Membro Vitalicio
Membro Vitalicio

Mensagens : 561

Ir para o topo Ir para baixo

[EO]Shen Long[Tutorial] Empty Re: [EO]Shen Long[Tutorial]

Mensagem por Kooringa Dom 21 Jul 2013, 18:33

guifs escreveu:
Kooringa escreveu:
Valentine escreveu:O que esse sistema faz?

 Chama o Shenlog, mais eu tb n entendi direito como ele vai pegar as esferas

 ela pega as esferas pelo seguinte código :

Código:
Sub HandleShenlong(ByVal index As Long, ByRef Data() As Byte, ByVal StartAddr As Long, ByVal ExtraVar As Long)[color=#2e8b57][font=Courier][/font][/color]
    Dim i As Byte[color=#2e8b57][font=Courier][/font][/color]
    Dim Buffer As clsBuffer[color=#2e8b57][font=Courier][/font][/color]
    Set Buffer = New clsBuffer[color=#2e8b57][font=Courier][/font][/color]
    Buffer.WriteBytes Data()[color=#2e8b57][font=Courier][/font][/color]
[color=#2e8b57][font=Courier][/font][/color]
' Aqui checaremos se o player tem ou não as esferas[color=#2e8b57][font=Courier][/font][/color]
[color=#2e8b57][font=Courier][/font][/color]
'1 estrela[color=#2e8b57][font=Courier][/font][/color]
If GetPlayerInvItemValue(index, 1) < 1 Then[color=#2e8b57][font=Courier][/font][/color]
PlayerMsg index, "Você não tem a esfera de 1 estrela.", Yellow[color=#2e8b57][font=Courier][/font][/color]
Exit Sub[color=#2e8b57][font=Courier][/font][/color]
End If[color=#2e8b57][font=Courier][/font][/color]
'2 estrela[color=#2e8b57][font=Courier][/font][/color]
If GetPlayerInvItemValue(index, 2) < 1 Then[color=#2e8b57][font=Courier][/font][/color]
PlayerMsg index, "Você não tem a esfera de 2 estrela.", Yellow[color=#2e8b57][font=Courier][/font][/color]
Exit Sub[color=#2e8b57][font=Courier][/font][/color]
End If[color=#2e8b57][font=Courier][/font][/color]
'3 estrela[color=#2e8b57][font=Courier][/font][/color]
If GetPlayerInvItemValue(index, 3) < 1 Then[color=#2e8b57][font=Courier][/font][/color]
PlayerMsg index, "Você não tem a esfera de 3 estrela.", Yellow[color=#2e8b57][font=Courier][/font][/color]
Exit Sub[color=#2e8b57][font=Courier][/font][/color]
End If[color=#2e8b57][font=Courier][/font][/color]
'4 estrela[color=#2e8b57][font=Courier][/font][/color]
If GetPlayerInvItemValue(index, 4) < 1 Then[color=#2e8b57][font=Courier][/font][/color]
PlayerMsg index, "Você não tem a esfera de 4 estrela.", Yellow[color=#2e8b57][font=Courier][/font][/color]
Exit Sub[color=#2e8b57][font=Courier][/font][/color]
End If[color=#2e8b57][font=Courier][/font][/color]
'5 estrela[color=#2e8b57][font=Courier][/font][/color]
If GetPlayerInvItemValue(index, 5) < 1 Then[color=#2e8b57][font=Courier][/font][/color]
PlayerMsg index, "Você não tem a esfera de 5 estrela.", Yellow[color=#2e8b57][font=Courier][/font][/color]
Exit Sub[color=#2e8b57][font=Courier][/font][/color]
End If[color=#2e8b57][font=Courier][/font][/color]
'6 estrela[color=#2e8b57][font=Courier][/font][/color]
If GetPlayerInvItemValue(index, 6) < 1 Then[color=#2e8b57][font=Courier][/font][/color]
PlayerMsg index, "Você não tem a esfera de 6 estrela.", Yellow[color=#2e8b57][font=Courier][/font][/color]
Exit Sub[color=#2e8b57][font=Courier][/font][/color]
End If[color=#2e8b57][font=Courier][/font][/color]
'7 estrela[color=#2e8b57][font=Courier][/font][/color]
If GetPlayerInvItemValue(index, 7) < 1 Then[color=#2e8b57][font=Courier][/font][/color]
PlayerMsg index, "Você não tem a esfera de 7 estrela.", Yellow[color=#2e8b57][font=Courier][/font][/color]
Exit Sub[color=#2e8b57][font=Courier][/font][/color]
End If[color=#2e8b57][font=Courier][/font][/color]
[color=#2e8b57][font=Courier][/font][/color]
'Aqui retiraremos as esferas os invetários dos players[color=#2e8b57][font=Courier][/font][/color]
[color=#2e8b57][font=Courier][/font][/color]
'1 estrela[color=#2e8b57][font=Courier][/font][/color]
For i = 1 To MAX_INV[color=#2e8b57][font=Courier][/font][/color]
If GetPlayerInvItemNum(index, i) = 1 Then[color=#2e8b57][font=Courier][/font][/color]
TakeInvItem index, 1, 1[color=#2e8b57][font=Courier][/font][/color]
End If[color=#2e8b57][font=Courier][/font][/color]
Next[color=#2e8b57][font=Courier][/font][/color]
'2 estrelas[color=#2e8b57][font=Courier][/font][/color]
For i = 1 To MAX_INV[color=#2e8b57][font=Courier][/font][/color]
If GetPlayerInvItemNum(index, i) = 1 Then[color=#2e8b57][font=Courier][/font][/color]
TakeInvItem index, 2, 1[color=#2e8b57][font=Courier][/font][/color]
End If[color=#2e8b57][font=Courier][/font][/color]
Next[color=#2e8b57][font=Courier][/font][/color]
'3 estrelas[color=#2e8b57][font=Courier][/font][/color]
For i = 1 To MAX_INV[color=#2e8b57][font=Courier][/font][/color]
If GetPlayerInvItemNum(index, i) = 1 Then[color=#2e8b57][font=Courier][/font][/color]
TakeInvItem index, 3, 1[color=#2e8b57][font=Courier][/font][/color]
End If[color=#2e8b57][font=Courier][/font][/color]
Next[color=#2e8b57][font=Courier][/font][/color]
'4 estrelas[color=#2e8b57][font=Courier][/font][/color]
For i = 1 To MAX_INV[color=#2e8b57][font=Courier][/font][/color]
If GetPlayerInvItemNum(index, i) = 1 Then[color=#2e8b57][font=Courier][/font][/color]
TakeInvItem index, 4, 1[color=#2e8b57][font=Courier][/font][/color]
End If[color=#2e8b57][font=Courier][/font][/color]
Next[color=#2e8b57][font=Courier][/font][/color]
'5 estrelas[color=#2e8b57][font=Courier][/font][/color]
For i = 1 To MAX_INV[color=#2e8b57][font=Courier][/font][/color]
If GetPlayerInvItemNum(index, i) = 1 Then[color=#2e8b57][font=Courier][/font][/color]
TakeInvItem index, 5, 1[color=#2e8b57][font=Courier][/font][/color]
End If[color=#2e8b57][font=Courier][/font][/color]
Next[color=#2e8b57][font=Courier][/font][/color]
'6 estrelas[color=#2e8b57][font=Courier][/font][/color]
For i = 1 To MAX_INV[color=#2e8b57][font=Courier][/font][/color]
If GetPlayerInvItemNum(index, i) = 1 Then[color=#2e8b57][font=Courier][/font][/color]
TakeInvItem index, 6, 1[color=#2e8b57][font=Courier][/font][/color]
End If[color=#2e8b57][font=Courier][/font][/color]
Next[color=#2e8b57][font=Courier][/font][/color]
'7 estrelas[color=#2e8b57][font=Courier][/font][/color]
For i = 1 To MAX_INV[color=#2e8b57][font=Courier][/font][/color]
If GetPlayerInvItemNum(index, i) = 1 Then[color=#2e8b57][font=Courier][/font][/color]
TakeInvItem index, 7, 1[color=#2e8b57][font=Courier][/font][/color]
End If[color=#2e8b57][font=Courier][/font][/color]
Next[color=#2e8b57][font=Courier][/font][/color]
[color=#2e8b57][font=Courier][/font][/color]
    Call PlayerMsg(index, "É chegado a hora de fazer 1 pedido,as esferas se uniram,você tem 30 segundos antes que as esferas se espalhem novamente.", BrightBlue)[color=#2e8b57][font=Courier][/font][/color]
    Call Shenllong(index)[color=#2e8b57][font=Courier][/font][/color]
End Sub

 Legal, mais que nome eu coloco no item pra fazer isso? 1, 2, 3, 4,5 ,6 e 7?
Kooringa
Kooringa
Banido
Banido

Mensagens : 1361

Ir para o topo Ir para baixo

[EO]Shen Long[Tutorial] Empty Re: [EO]Shen Long[Tutorial]

Mensagem por guifs Dom 21 Jul 2013, 20:19

Kooringa escreveu:
guifs escreveu:
Kooringa escreveu:
Valentine escreveu:O que esse sistema faz?

 Chama o Shenlog, mais eu tb n entendi direito como ele vai pegar as esferas

 ela pega as esferas pelo seguinte código :

Código:
Sub HandleShenlong(ByVal index As Long, ByRef Data() As Byte, ByVal StartAddr As Long, ByVal ExtraVar As Long)[color=#2e8b57][font=Courier][/font][/color]
    Dim i As Byte[color=#2e8b57][font=Courier][/font][/color]
    Dim Buffer As clsBuffer[color=#2e8b57][font=Courier][/font][/color]
    Set Buffer = New clsBuffer[color=#2e8b57][font=Courier][/font][/color]
    Buffer.WriteBytes Data()[color=#2e8b57][font=Courier][/font][/color]
[color=#2e8b57][font=Courier][/font][/color]
' Aqui checaremos se o player tem ou não as esferas[color=#2e8b57][font=Courier][/font][/color]
[color=#2e8b57][font=Courier][/font][/color]
'1 estrela[color=#2e8b57][font=Courier][/font][/color]
If GetPlayerInvItemValue(index, 1) < 1 Then[color=#2e8b57][font=Courier][/font][/color]
PlayerMsg index, "Você não tem a esfera de 1 estrela.", Yellow[color=#2e8b57][font=Courier][/font][/color]
Exit Sub[color=#2e8b57][font=Courier][/font][/color]
End If[color=#2e8b57][font=Courier][/font][/color]
'2 estrela[color=#2e8b57][font=Courier][/font][/color]
If GetPlayerInvItemValue(index, 2) < 1 Then[color=#2e8b57][font=Courier][/font][/color]
PlayerMsg index, "Você não tem a esfera de 2 estrela.", Yellow[color=#2e8b57][font=Courier][/font][/color]
Exit Sub[color=#2e8b57][font=Courier][/font][/color]
End If[color=#2e8b57][font=Courier][/font][/color]
'3 estrela[color=#2e8b57][font=Courier][/font][/color]
If GetPlayerInvItemValue(index, 3) < 1 Then[color=#2e8b57][font=Courier][/font][/color]
PlayerMsg index, "Você não tem a esfera de 3 estrela.", Yellow[color=#2e8b57][font=Courier][/font][/color]
Exit Sub[color=#2e8b57][font=Courier][/font][/color]
End If[color=#2e8b57][font=Courier][/font][/color]
'4 estrela[color=#2e8b57][font=Courier][/font][/color]
If GetPlayerInvItemValue(index, 4) < 1 Then[color=#2e8b57][font=Courier][/font][/color]
PlayerMsg index, "Você não tem a esfera de 4 estrela.", Yellow[color=#2e8b57][font=Courier][/font][/color]
Exit Sub[color=#2e8b57][font=Courier][/font][/color]
End If[color=#2e8b57][font=Courier][/font][/color]
'5 estrela[color=#2e8b57][font=Courier][/font][/color]
If GetPlayerInvItemValue(index, 5) < 1 Then[color=#2e8b57][font=Courier][/font][/color]
PlayerMsg index, "Você não tem a esfera de 5 estrela.", Yellow[color=#2e8b57][font=Courier][/font][/color]
Exit Sub[color=#2e8b57][font=Courier][/font][/color]
End If[color=#2e8b57][font=Courier][/font][/color]
'6 estrela[color=#2e8b57][font=Courier][/font][/color]
If GetPlayerInvItemValue(index, 6) < 1 Then[color=#2e8b57][font=Courier][/font][/color]
PlayerMsg index, "Você não tem a esfera de 6 estrela.", Yellow[color=#2e8b57][font=Courier][/font][/color]
Exit Sub[color=#2e8b57][font=Courier][/font][/color]
End If[color=#2e8b57][font=Courier][/font][/color]
'7 estrela[color=#2e8b57][font=Courier][/font][/color]
If GetPlayerInvItemValue(index, 7) < 1 Then[color=#2e8b57][font=Courier][/font][/color]
PlayerMsg index, "Você não tem a esfera de 7 estrela.", Yellow[color=#2e8b57][font=Courier][/font][/color]
Exit Sub[color=#2e8b57][font=Courier][/font][/color]
End If[color=#2e8b57][font=Courier][/font][/color]
[color=#2e8b57][font=Courier][/font][/color]
'Aqui retiraremos as esferas os invetários dos players[color=#2e8b57][font=Courier][/font][/color]
[color=#2e8b57][font=Courier][/font][/color]
'1 estrela[color=#2e8b57][font=Courier][/font][/color]
For i = 1 To MAX_INV[color=#2e8b57][font=Courier][/font][/color]
If GetPlayerInvItemNum(index, i) = 1 Then[color=#2e8b57][font=Courier][/font][/color]
TakeInvItem index, 1, 1[color=#2e8b57][font=Courier][/font][/color]
End If[color=#2e8b57][font=Courier][/font][/color]
Next[color=#2e8b57][font=Courier][/font][/color]
'2 estrelas[color=#2e8b57][font=Courier][/font][/color]
For i = 1 To MAX_INV[color=#2e8b57][font=Courier][/font][/color]
If GetPlayerInvItemNum(index, i) = 1 Then[color=#2e8b57][font=Courier][/font][/color]
TakeInvItem index, 2, 1[color=#2e8b57][font=Courier][/font][/color]
End If[color=#2e8b57][font=Courier][/font][/color]
Next[color=#2e8b57][font=Courier][/font][/color]
'3 estrelas[color=#2e8b57][font=Courier][/font][/color]
For i = 1 To MAX_INV[color=#2e8b57][font=Courier][/font][/color]
If GetPlayerInvItemNum(index, i) = 1 Then[color=#2e8b57][font=Courier][/font][/color]
TakeInvItem index, 3, 1[color=#2e8b57][font=Courier][/font][/color]
End If[color=#2e8b57][font=Courier][/font][/color]
Next[color=#2e8b57][font=Courier][/font][/color]
'4 estrelas[color=#2e8b57][font=Courier][/font][/color]
For i = 1 To MAX_INV[color=#2e8b57][font=Courier][/font][/color]
If GetPlayerInvItemNum(index, i) = 1 Then[color=#2e8b57][font=Courier][/font][/color]
TakeInvItem index, 4, 1[color=#2e8b57][font=Courier][/font][/color]
End If[color=#2e8b57][font=Courier][/font][/color]
Next[color=#2e8b57][font=Courier][/font][/color]
'5 estrelas[color=#2e8b57][font=Courier][/font][/color]
For i = 1 To MAX_INV[color=#2e8b57][font=Courier][/font][/color]
If GetPlayerInvItemNum(index, i) = 1 Then[color=#2e8b57][font=Courier][/font][/color]
TakeInvItem index, 5, 1[color=#2e8b57][font=Courier][/font][/color]
End If[color=#2e8b57][font=Courier][/font][/color]
Next[color=#2e8b57][font=Courier][/font][/color]
'6 estrelas[color=#2e8b57][font=Courier][/font][/color]
For i = 1 To MAX_INV[color=#2e8b57][font=Courier][/font][/color]
If GetPlayerInvItemNum(index, i) = 1 Then[color=#2e8b57][font=Courier][/font][/color]
TakeInvItem index, 6, 1[color=#2e8b57][font=Courier][/font][/color]
End If[color=#2e8b57][font=Courier][/font][/color]
Next[color=#2e8b57][font=Courier][/font][/color]
'7 estrelas[color=#2e8b57][font=Courier][/font][/color]
For i = 1 To MAX_INV[color=#2e8b57][font=Courier][/font][/color]
If GetPlayerInvItemNum(index, i) = 1 Then[color=#2e8b57][font=Courier][/font][/color]
TakeInvItem index, 7, 1[color=#2e8b57][font=Courier][/font][/color]
End If[color=#2e8b57][font=Courier][/font][/color]
Next[color=#2e8b57][font=Courier][/font][/color]
[color=#2e8b57][font=Courier][/font][/color]
    Call PlayerMsg(index, "É chegado a hora de fazer 1 pedido,as esferas se uniram,você tem 30 segundos antes que as esferas se espalhem novamente.", BrightBlue)[color=#2e8b57][font=Courier][/font][/color]
    Call Shenllong(index)[color=#2e8b57][font=Courier][/font][/color]
End Sub

 Legal, mais que nome eu coloco no item pra fazer isso? 1, 2, 3, 4,5 ,6 e 7?

 Bom observe que abaixo da cada observação das estrelas tem a seguinte linha:
Código:
If GetPlayerInvItemValue(index, 1) < 1 Then
EU peguei a da 1 estrela note que dentro do () tem (index, 1) você altera o 1 para o numero do id do seu item esfera,agora quando você alterar no:
Código:
If GetPlayerInvItemValue(index, 1) < 1 Then

Você terá que alterar tbm no :
Código:
'Aqui retiraremos as esferas os invetários dos players[color=#2e8b57][font=Courier][/font][/color]
[color=#2e8b57][font=Courier][/font][/color]
'1 estrela[color=#2e8b57][font=Courier][/font][/color]
For i = 1 To MAX_INV[color=#2e8b57][font=Courier][/font][/color]
If GetPlayerInvItemNum(index, i) = 1 Then[color=#2e8b57][font=Courier][/font][/color]
TakeInvItem index, 1, 1[color=#2e8b57][font=Courier][/font][/color]
End If[color=#2e8b57][font=Courier][/font][/color]
Next

Ali no:
Código:
If GetPlayerInvItemNum(index, i) = 1 Then

E tbm no:
Código:
TakeInvItem index, 1, 1 '1 é  numero da esfera o outro 1 é o tanto que vai retirar 
guifs
guifs
Membro Vitalicio
Membro Vitalicio

Mensagens : 561

Ir para o topo Ir para baixo

[EO]Shen Long[Tutorial] Empty Re: [EO]Shen Long[Tutorial]

Mensagem por Gu1lh3rm3 Dom 21 Jul 2013, 22:01

so mais fazer por DirectDraw '-', fica mais show, quem ta no mapa consegue ver o shenlong tbm, mais nao pode fazer o desejo XD
Gu1lh3rm3
Gu1lh3rm3
Membro de Honra
Membro de Honra

Mensagens : 1232

http://www.extremedbz.eu5.org

Ir para o topo Ir para baixo

[EO]Shen Long[Tutorial] Empty Re: [EO]Shen Long[Tutorial]

Mensagem por guifs Dom 21 Jul 2013, 22:13

Gu1lh3rm3 escreveu:so mais fazer por DirectDraw '-', fica mais show, quem ta no mapa consegue ver o shenlong tbm, mais nao pode fazer o desejo XD

Guilher acha que vale o trabalho de fazer algo desenhado na tela e tão trabalhoso quanto mecher com dx para os menbrus?eu acho que n
guifs
guifs
Membro Vitalicio
Membro Vitalicio

Mensagens : 561

Ir para o topo Ir para baixo

[EO]Shen Long[Tutorial] Empty Re: [EO]Shen Long[Tutorial]

Mensagem por gagabenito Seg 22 Jul 2013, 07:47

trabalhoso mexer no dx? kkkkkkkkkk eu que não curto programar faço isso brincando.
gagabenito
gagabenito
Membro Vitalicio
Membro Vitalicio

Mensagens : 554

http://fairytailadventure.forumeiros.com

Ir para o topo Ir para baixo

[EO]Shen Long[Tutorial] Empty Re: [EO]Shen Long[Tutorial]

Mensagem por guifs Seg 22 Jul 2013, 09:45

gagabenito escreveu:trabalhoso mexer no dx? kkkkkkkkkk eu que não curto programar faço isso brincando.

gagabenito acha mesmo que vale fazer isso para postar?Bom talvez mais tarde posto so pq ceis tão enchendo o saco >.<"
guifs
guifs
Membro Vitalicio
Membro Vitalicio

Mensagens : 561

Ir para o topo Ir para baixo

[EO]Shen Long[Tutorial] Empty Re: [EO]Shen Long[Tutorial]

Mensagem por Conteúdo patrocinado


Conteúdo patrocinado


Ir para o topo Ir para baixo

Ir para o topo

- Tópicos semelhantes

 
Permissões neste sub-fórum
Não podes responder a tópicos