Makers Brasil
Bem Vindos a Maker´s Brasil (um forum para criação de servidores 2D e 3D)Nos desejamos boa sorte no seu projeto!


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

Makers Brasil
Bem Vindos a Maker´s Brasil (um forum para criação de servidores 2D e 3D)Nos desejamos boa sorte no seu projeto!
Makers Brasil
Gostaria de reagir a esta mensagem? Crie uma conta em poucos cliques ou inicie sessão para continuar.

Craft,Blacksmith,Alquemia

3 participantes

Ir para baixo

Craft,Blacksmith,Alquemia Empty Craft,Blacksmith,Alquemia

Mensagem por Dracolas Ter Jun 14, 2011 7:06 pm

Craft,Blacksmith,Alquemia

•É um sistema para o Eclipse Origins com cuja função de Craft exemplo Espada + Diamante = Espada Divina

Vamos ao que importa Uu

No Server~Side

No modTypes procure por:

Código:
 Private Type ItemRec

e add no fundo dela antes do End Type

Código:
Tool As Long
    ToolReq As Long

Depois va em ModConstant procure por:

Código:
Public Const ITEM_TYPE_SPELL As Byte = 13

e logo embaixo coloque:

Código:
Public Const ITEM_TYPE_RECIPE As Byte = 14

Logo em seguida va em modHandleData e procure por:

Código:
 sub HandleUseItem

e embaixo de :

Código:
Set Buffer = Nothing

Adicione:

Código:
Dim Item1 As Long
Dim Item2 As Long
Dim Result As Long

e antes de End Select adicione

Código:
Case ITEM_TYPE_RECIPE
' Get the recipe information
Item1 = Item(GetPlayerInvItemNum(Index, InvNum)).Data1
Item2 = Item(GetPlayerInvItemNum(Index, InvNum)).Data2
Result = Item(GetPlayerInvItemNum(Index, InvNum)).Data3

' Perform Recipe checks
If Item1 <= 0 Then
Call PlayerMsg(Index, "Esta incompleto o recipe...", White)
Exit Sub
End If

If Item2 <= 0 Then
Call PlayerMsg(Index, "Esta incompleto o recipe...", White)
Exit Sub
End If

If Result <= 0 Then
Call PlayerMsg(Index, "Esta incompleto o recipe...", White)
Exit Sub
End If

If GetPlayerEquipment(Index, Weapon) <= 0 Then
Call PlayerMsg(Index, "Não pode usar item que esta Equipado!", White)
Exit Sub
End If

If Item(GetPlayerEquipment(Index, Weapon)).Tool = Item(GetPlayerInvItemNum(Index, InvNum)).ToolReq Then
' Give the resulting item
If HasItem(Index, Item1) Then
If HasItem(Index, Item2) Then
Call TakeInvItem(Index, Item1, 1)
Call TakeInvItem(Index, Item2, 1)
Call GiveInvItem(Index, Result, 1)
Call TakeInvItem(Index, GetPlayerInvItemNum(Index, InvNum), 0)
Call PlayerMsg(Index, "Teve sucesso em criar o item " & Trim(Item(Result).Name) & ".", White)
Else
Call PlayerMsg(Index, "Falta Itens para o Crafts.", White)
Exit Sub
End If
Else
Call PlayerMsg(Index, "Falta Itens para o Craft.", White)
Exit Sub
End If
Else
Call PlayerMsg(Index, "Você não tem o recipe.", White)
Exit Sub
End If

Fim Server~Side

No Client~Side va em modTypes e procure por:

Código:
Private Type ItemRec

e antes de End Type adicone:

Código:
Tool As Long
ToolReq As Long

Agora va em modConstants procure por:

Código:
 Public Const ITEM_TYPE_SPELL As Byte = 13

embaixo coloque:

Código:
Public Const ITEM_TYPE_RECIPE As Byte = 14

Logo em seguida va em modGameEditors e procure por:

Código:
If (frmEditor_Item.cmbType.ListIndex = ITEM_TYPE_SPELL) Then
frmEditor_Item.fraSpell.Visible = True
frmEditor_Item.scrlSpell.Value = .Data1
Else
frmEditor_Item.fraSpell.Visible = False
End If

e embaixo adicione:

Código:
If (frmEditor_Item.cmbType.ListIndex = ITEM_TYPE_RECIPE) Then
frmEditor_Item.fraRecipe.Visible = True
frmEditor_Item.scrlItem1.Value = .Data1
frmEditor_Item.scrlItem2.Value = .Data2
frmEditor_Item.scrlResult.Value = .Data3
frmEditor_Item.cmbCToolReq.ListIndex = .ToolReq
Else
frmEditor_Item.fraRecipe.Visible = False
End If

Agora va em modGameLogic e procure por:

Código:
UpdateDescWindow

e em baixo de Dim Name As String adicione:

Código:
Dim Item1 As Long
Dim Item2 As Long


e ainda dentro da sub procure por:

Código:
' Currency

e adicione em cima:

Código:
If Item(itemnum).Type = ITEM_TYPE_WEAPON Then
.lblItemDescStats.Caption = "Damage: " & Item(itemnum).Data2
Select Case Item(itemnum).Tool
Case 0
.lblItemDescType = "None."
Case 1
.lblItemDescType = "Crafting Tool"
Case 2
.lblItemDescType = "Alchemy Tool"
End Select
End If

If Item(itemnum).Type = ITEM_TYPE_RECIPE Then
.lblItemDescStats.Caption = "A " & Trim$(Item(Item1).Name) & " and " & Trim$(Item(Item2).Name)
Select Case Item(itemnum).ToolReq
Case 0
.lblItemDescType = "No tool required."
Case 1
.lblItemDescType = "Crafting Tool"
Case 2
.lblItemDescType = "Alchemy Tool"
End Select
End If


Client Finalizado apenas baixe as duas ferramentas nescessarias abaixo:

You are not allowed to view links. Register or Login
You are not allowed to view links. Register or Login


@Edit By Thales12/ Concertei o tutorial tava todo bagunçado e sem código, da proxima vez vc levara Warn ! --'
e ainda ta faltando o download das duas ferramenstas necessarias!
Dracolas
Dracolas
Sentinela
Sentinela

Mensagens : 16
Estrelas Makers : 93
Creditos : 7
Data de inscrição : 21/01/2011
Idade : 27
Localização : Vitória da Conquista/BA

Ir para o topo Ir para baixo

Craft,Blacksmith,Alquemia Empty Re: Craft,Blacksmith,Alquemia

Mensagem por Ricardo XD Qua Jun 15, 2011 5:10 am

Use [*code]codigo aqui[*/code
Ricardo XD
Ricardo XD
Sentinela
Sentinela

Mensagens : 29
Estrelas Makers : 139
Creditos : 19
Data de inscrição : 19/03/2011
Idade : 25
Localização : Minha Casa

Ir para o topo Ir para baixo

Craft,Blacksmith,Alquemia Empty Re: Craft,Blacksmith,Alquemia

Mensagem por spectrus Qua Jun 15, 2011 7:39 am

Fora o probleminha do codigo o tutorial esta otimo!
+ 1 CRED
spectrus
spectrus
Administrador
Administrador

Mensagens : 299
Estrelas Makers : 1466
Creditos : 49
Data de inscrição : 01/01/2011
Idade : 30
Localização : V.da conquista bahia

Ir para o topo Ir para baixo

Craft,Blacksmith,Alquemia Empty Re: Craft,Blacksmith,Alquemia

Mensagem por Conteúdo patrocinado


Conteúdo patrocinado


Ir para o topo Ir para baixo

Ir para o topo


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