Universo Games
Ola , Convidado

[ALL]Memorize Spell Logo1110

Você ainda não e cadastrado então cadastre-se e veja todas as atualizações no Mundo RPG!!!
Universo Games
Gostaria de reagir a esta mensagem? Crie uma conta em poucos cliques ou inicie sessão para continuar.
Universo Games

Suporte e Desenvolvimento só no Universo Games
 
InícioInício  PortalPortal  EventosEventos  PublicaçõesPublicações  Últimas imagensÚltimas imagens  RegistarRegistar  EntrarEntrar  
Ola Convidado, Seja Bem vindo a equipe lhe deseja boa sorte no seu projeto!

 

 [ALL]Memorize Spell

Ir para baixo 
AutorMensagem
Lucas Roberto
Administrador
Administrador
Lucas Roberto


Mensagens : 711

[ALL]Memorize Spell Empty
MensagemAssunto: [ALL]Memorize Spell   [ALL]Memorize Spell EmptySex 03 Jun 2011, 14:35

Memorize Spell

aew galera tudo que eu fiz nesse sistema foi add um complemento para salvar as spells memorizadas na pasta cliente, alguns ja devem ter percebido ao memorizar a spell no antigo sistema, ela ficava memorizada somente enquanto o player estava online, agora ela continua memorizada mesmo que o player saia do jogo, fazendo com que seja salvo todos os possiveis éfis(F) dentro da pasta cliente xD

abaixo segue o tutorial do Heavy Metal Smile para quem não tem o sistema de memorizar spell ainda basta seguir as cordenadas abaixo, quando for para implementar o sistema que desenvolvi eu avisarei Smile

Na frmMirage, procure por:

Código:
Option Explicit

Abaixo adicione:

Código:
Dim SpellMemorized As Long
Dim SpellMemorized2 As Long
Dim SpellMemorized3 As Long

Procure por:

Código:
If KeyCode = vbKeyF1 Then

Mude para:

Código:
If KeyCode = vbKeyF6 Then

Procure por:

Código:
If KeyCode = vbKeyF2 Then

Mude para:

Código:
If KeyCode = vbKeyF7 Then

Procure por:

Código:
If KeyCode = vbKeyF3 Then

Mude para:

Código:
If KeyCode = vbKeyF8 Then

Com isso acima mudamos o Painel de admin para F6, Pot de HP para F7 e Pot de MP para F8

Procure por:

Código:
    If KeyCode = vbKeyF12 Then
        ScreenShot.Picture = CaptureArea(frmMirage, picScreen.Left, picScreen.Top, picScreen.Width, picScreen.Height)

        Do
            If FileExists("Screenshot_" & ScreenID & ".bmp") Then
                ScreenID = ScreenID  1
            Else
                Call SavePicture(ScreenShot.Picture, App.Path & "\Screenshot_" & ScreenID & ".bmp")
                Exit Do
            End If
        Loop
    End If

Abaixo adicione:

Código:
If KeyCode = vbKeyF1 Then
        If SpellMemorized > 0 Then
            If GetTickCount > Player(MyIndex).AttackTimer  1000 Then
                If Player(MyIndex).Moving = 0 Then
                    Call SendData("cast" & SEP_CHAR & SpellMemorized & SEP_CHAR & END_CHAR)
                    Player(MyIndex).Attacking = 1
                    Player(MyIndex).AttackTimer = GetTickCount
                    Player(MyIndex).CastedSpell = YES
                Else
                    Call AddText("Você não pode soltar magia enquanto anda!", BRIGHTRED)
                End If
            End If
        Else
            Call AddText("Não há magia memorizada.", BRIGHTRED)
        End If
    Else
        Call CheckInput(0, KeyCode, Shift)
    End If
   
        If KeyCode = vbKeyF2 Then
        If SpellMemorized > 0 Then
            If GetTickCount > Player(MyIndex).AttackTimer  1000 Then
                If Player(MyIndex).Moving = 0 Then
                    Call SendData("cast" & SEP_CHAR & SpellMemorized2 & SEP_CHAR & END_CHAR)
                    Player(MyIndex).Attacking = 1
                    Player(MyIndex).AttackTimer = GetTickCount
                    Player(MyIndex).CastedSpell = YES
                Else
                    Call AddText("Você não pode soltar magia enquanto anda!", BRIGHTRED)
                End If
            End If
        Else
            Call AddText("Não há magia memorizada.", BRIGHTRED)
        End If
    Else
        Call CheckInput(0, KeyCode, Shift)
    End If
   
        If KeyCode = vbKeyF3 Then
        If SpellMemorized > 0 Then
            If GetTickCount > Player(MyIndex).AttackTimer  1000 Then
                If Player(MyIndex).Moving = 0 Then
                    Call SendData("cast" & SEP_CHAR & SpellMemorized3 & SEP_CHAR & END_CHAR)
                    Player(MyIndex).Attacking = 1
                    Player(MyIndex).AttackTimer = GetTickCount
                    Player(MyIndex).CastedSpell = YES
                Else
                    Call AddText("Você não pode soltar magia enquanto anda!", BRIGHTRED)
                End If
            End If
        Else
            Call AddText("Não há magia memorizada.", BRIGHTRED)
        End If
    Else
        Call CheckInput(0, KeyCode, Shift)
    End If

Agora abra a frmMirage em forma de frm, puxe as "abinhas" de inventário, stats e etc até aparecer a "abinha" de spells, cria uma label e coloque a caption de sua preferencia, de 2 clicks na label e adicione:
Código:
Call SendData("spells" & SEP_CHAR & END_CHAR)
picSpells2.Visible = True

Agora em qualquer lugar da frmMirage cria uma picture com o nome de picSpells2, nas propriedades mude Visible, de True para False.
Na picSpells2 crie 3 labels e 3 comboBox para ficar dessa maneira:
[Tens de ter uma conta e sessão iniciada para poderes visualizar esta imagem]
OBS.:Não liguem pro kidou, meu projeto é de bleach ;D

Coloque na caption das labels e das comboBox oque quiser, no nome das comboBox coloque: cmbSpells , cmbSpells2 e cmbSpells3.
Na picSpells2 criei 2 commandButton, no 1º coloco o nome de cmdSalvar e a caption Salvar, de 2 clicks nele e adicione:

Código:
Private Sub cmdSalvar_Click()
If Player(MyIndex).Spell(cmbSpells.ListIndex  1) > 0 Then
        SpellMemorized = cmbSpells.ListIndex  1
    Else
        Call AddText("Se você não pós nenhuma Magia aqui o sistema memoriza sua primeira magia no F1.", BRIGHTRED)
    End If
   
    If Player(MyIndex).Spell(cmbSpells2.ListIndex  1) > 0 Then
        SpellMemorized2 = cmbSpells2.ListIndex  1
    Else
        Call AddText("Se você não pós nenhuma Magia aqui o sistema memoriza sua primeira magia no F2.", BRIGHTRED)
    End If
   
    If Player(MyIndex).Spell(cmbSpells3.ListIndex  1) > 0 Then
        SpellMemorized3 = cmbSpells3.ListIndex  1
    Else
        Call AddText("Se você não pós nenhuma Magia aqui o sistema memoriza sua primeira magia no F3.", BRIGHTRED)
    End If

picSpells2.Visible = False

No 2º commandButton coloque o nome de cmdCancels e a caption Cancel, de 2 clicks e adicione:

Código:
picSpells2.Visible = False

Agora no modHandleData procure por:

Código:

' :::::::::::::::::::
' :: Spells packet ::
' :::::::::::::::::::

Substitua todo Spells packet por:

Código:
    ' :::::::::::::::::::
    ' :: Spells packet ::
    ' :::::::::::::::::::
    If (casestring = "spells") Then
       
        frmMirage.picPlayerSpells.Visible = True
        frmMirage.lstSpells.Clear
       
' Put spells known in player record
        For I = 1 To MAX_PLAYER_SPELLS
            Player(MyIndex).Spell(I) = Val#(parse$(I))
            If Player(MyIndex).Spell(I) <> 0 Then
                frmMirage.lstSpells.addItem I & ": " & Trim$(Spell(Player(MyIndex).Spell(I)).Name)
                frmMirage.cmbSpells.addItem I & ": " & Trim$(Spell(Player(MyIndex).Spell(I)).Name)
                frmMirage.cmbSpells2.addItem I & ": " & Trim$(Spell(Player(MyIndex).Spell(I)).Name)
                frmMirage.cmbSpells3.addItem I & ": " & Trim$(Spell(Player(MyIndex).Spell(I)).Name)
            Else
                frmMirage.lstSpells.addItem "--- Slot Free ---"
                frmMirage.cmbSpells.addItem "--- Slot Free ---"
                frmMirage.cmbSpells2.addItem "--- Slot Free ---"
                frmMirage.cmbSpells3.addItem "--- Slot Free ---"
            End If
        Next I
       
        frmMirage.lstSpells.ListIndex = 0
        frmMirage.cmbSpells.ListIndex = 0
        frmMirage.cmbSpells2.ListIndex = 0
        frmMirage.cmbSpells3.ListIndex = 0
            End If

E pronto Very Happy

-Obs.:
-Agora o Painel de GMs aparece quando o F6 é pressionado.
-A Pot de HP é usada com F7 e a de MP com F8
-Se quiser adicionar mais comboBox, tem que prestar atenção, pois quase todas as keys de F1 á F12 já estão sendo usadas

Citação :
Sistema do P- agora

vamos começar, Smile baixe o arquivo .dat que hospedei, que esta no link abaixo Smile

  • DOWNLOAD ¬¬
agora vamo explicar Smile
descompacte o arquivo .dat para a pasta do seu cliente, abra o arquivo com o bloco de notas, e verifique se os dados do arquivo estão de acordo com as spells memorizadas Smile
o conteudo do mesmo é identico ao codigo abaixo
Código:
[CONFIG]
SpellM1=1
SpellM2=1
SpellM3=1

se você tiver mais de uma spell memorizada basta seguir o exemplo citado acima e ir add. SpellM#=1
Citação :
ex.:
SpellM4=1
SpellM5=1
SpellM6=1
SpellM7=1...

Abra o cliente pelo vb, e ja na frmStable ou frmMirage, crie um timer com o nome: tmrGameConstante. Peço esse nome pois trabalharemos muito com esse timer em outros sistemas meus Smile ... deixe o timer com enable = true e um intervalo de 50 milesimos

add o seguinte código dentro do timer Smile

Código:
'::::::::::::::::::::::::::
'::::::::Spell Memo::::::::
'::::::::::::::::::::::::::

    SpellMemorized = ReadINI("CONFIG", "SpellM1", App.Path & "\SpellMemorized.dat")
    SpellMemorized2 = ReadINI("CONFIG", "SpellM2", App.Path & "\SpellMemorized.dat")
    SpellMemorized3 = ReadINI("CONFIG", "SpellM3", App.Path & "\SpellMemorized.dat")
    'segue aki mais o mesmo esquema de cima caso haja mais de 3 spellmemorized  :)

agora peço que volte ao cmdSalvar do picSpells2 e substitua todo o conteudo da sub por este Smile

Código:
If Player(MyIndex).Spell(cmbSpells.ListIndex  1) > 0 Then
        SpellMemorized = cmbSpells.ListIndex  1
                Call WriteINI("CONFIG", "SpellM1", cmbSpells.ListIndex  1, App.Path & "\SpellMemorized.dat")
    Else
        Call AddText("Se você não pos nenhuma Magia aqui o sistema memoriza sua primeira magia no F1.", BRIGHTRED)
    End If
 
    If Player(MyIndex).Spell(cmbSpells2.ListIndex  1) > 0 Then
        SpellMemorized2 = cmbSpells2.ListIndex  1
                Call WriteINI("CONFIG", "SpellM2", cmbSpells2.ListIndex  1, App.Path & "\SpellMemorized.dat")
    Else
        Call AddText("Se você não pos nenhuma Magia aqui o sistema memoriza sua primeira magia no F2.", BRIGHTRED)
    End If
 
    If Player(MyIndex).Spell(cmbSpells3.ListIndex  1) > 0 Then
        SpellMemorized3 = cmbSpells3.ListIndex  1
                Call WriteINI("CONFIG", "SpellM3", cmbSpells3.ListIndex  1, App.Path & "\SpellMemorized.dat")
    Else
        Call AddText("Se você não pos nenhuma Magia aqui o sistema memoriza sua primeira magia no F3.", BRIGHTRED)
    End If

'se ouver  de 3 spellsmemorized siga o exemplo de cima :)


  • SpellMemorized.dat
Creditos: Sr. P- Very Happy

[Tens de ter uma conta e sessão iniciada para poderes visualizar esta imagem][By: P-]
Ir para o topo Ir para baixo
https://universogamesmmo.forumeiros.com
 
[ALL]Memorize Spell
Ir para o topo 
Página 1 de 1
 Tópicos semelhantes
-
» [ALL]Spell Memorized
» Transformação por Spell
» Spell Linear
»  Spell que Persegue
» Spell Linear 100%

Permissões neste sub-fórumNão podes responder a tópicos
Universo Games :: Criação de Jogos :: Eclipse :: Tutoriais-
Ir para: